jTable Mostra condicional \ ocultar botões de edição e exclusão com base no proprietário dos dados
Eu estou usando jTable para exibir informações de CDs e uma tabela filho para mostrar comentários desse CD. Eu quero ser capaz de mostrar apenas os botões edit \ delete nas linhas para o usuário que está logado. Eu tenho tentado seguir as sugestões feitas em:https://github.com/hikalkan/jtable/issues/113
https://github.com/hikalkan/jtable/issues/893
https://github.com/hikalkan/jtable/issues/620
Posso honestamente dizer que não estou tendo muita sorte com nenhum desses exemplos. Foi-nos dito que incluíssemos um pouco de jquery na nossa tarefa, por isso optei por usá-lo para os dados da minha tabela. Estou desejando agora id apenas feito algo muito básico!
Trabalhando jTable sem condição:
display: function (reviewData) {
//Create an image that will be used to open child table
var $img = $('<img class="child-opener-image" src="/Content/images/Misc/list_metro.png" title="List Reviews" />');
//Open child table when user clicks the image
$img.click(function () {
$('#ReviewTableContainer').jtable('openChildTable',
$img.closest('tr'),
{
title: "Your reviews on this album",
actions: {
listAction: 'childReviewActions.php?action=list&ID=' + reviewData.record.CDID,
deleteAction: 'childReviewActions.php?action=delete&ID=' + reviewData.record.CDID,
updateAction: 'childReviewActions.php?action=update&ID=' + reviewData.record.CDID
},
fields: {
userID: {
key: true,
create: false,
edit: false,
list: false
},
userName: {
title: 'User',
edit: false,
width: '20%'
},
reviewDate: {
title: 'Review date',
width: '20%',
type: 'date',
edit: false,
displayFormat: 'dd-mm-yy'
},
reviewText: {
title: 'Review',
type: 'textarea',
width: '40%'
}
},
Tentativa da edição 620:
actions: {
listAction: 'childReviewActions.php?action=list&ID=' + reviewData.record.CDID,
@if (reviewData.record.userID == <?php echo mysql_real_escape_string($_SESSION['ID']);?>)
{
deleteAction: 'childReviewActions.php?action=delete&ID=' + reviewData.record.CDID,
updateAction: 'childReviewActions.php?action=update&ID=' + reviewData.record.CDID
}
},
Desta forma, me dá erro de compilação: id de propriedade inválida na instrução IF. Se eu tirar o @ na instrução if eu recebo: missing: after id da propriedade.
Problema 113 e 893 tentativa:
actions: {
listAction: {
url:'http://localhost/childReviewActions.php?action=list&ID=' + reviewData.record.CDID
//updateAction: {
//url:'childReviewActions.php?action=update&ID=' + reviewData.record.CDID,
//enabled: function (data) {
//return data.record.userID = <?php echo mysql_real_escape_string($_SESSION['ID']);?>;
//}
//}
},
Nisto eu não consegui nem conseguir listar o conteúdo da tabela filho. Ele continua voltando com erro 404 não encontrado: O url / [objeto objeto] solicitado não foi encontrado neste servidor. Alguém tem alguma idéia de como obter esses exemplos trabalhando em ter um exemplo diferente de como obter a tabela para ativar \ ativar a edição, atualizar botões? Isso tudo é novo para mim, então peço desculpas agora