jqGrid: altera a cor de fundo da linha com base no valor da célula da linha pelo nome da coluna

coluna @jqGrid tem o nome Publicado. Ele pode ser posicionado em diferentes posições, dependendo de como a grade é configurada pelo cliente, mas é sempre enviad

Preciso alterar a cor de fundo das linhas se a coluna Publicado tiver o valor True

Tentei o colmodel abaixo, mas o alerta (rdata.Posted) é exibido sempre indefinid

Como alterar a cor de fundo da linha se a coluna Publicado nesta linha tiver valor true?

Examinei muitas das Oleg e outras soluções para alterar a cor do plano de fundo, mas elas estão usando o número da coluna codificad

colModel: [

{"cellattr":function(rowId, tv, rawObject, cm, rdata) {  
if (rdata.Posted)
    return 'class="jqgrid-readonlycolumn"';
    return '';
      }
  ,"label":"Klient","name":"Klient_nimi","classes":null,"hidden":false},


{"label":null,"name":"Posted","editable":true,"width":0,
"classes":null,"hidden":true}],
...

Atualiza

In update2 Oleg recomenda usar rowattr. Também preciso ocultar o botão de exclusão embutido e o botão de postagem personalizado na coluna de ações. Estou usando o código abaixo em loadComplete. Como implementar isso usando rowattr?

var LoadCompleteHandler = function () {
    var iCol = getColumnIndexByName($grid, 'Kinnitatud'),
      postedDateCol = getColumnIndexByName($grid, 'Kinkuup'),
      cRows = $grid[0].rows.length,
      iRow,
      row,
      className,
      isPosted,
      mycell,
      mycelldata,
      i, count,
      cm = $grid.jqGrid('getGridParam', 'colModel'),
      l,
      iActionsCol = getColumnIndexByName($grid, '_actions');
    l = cm.length;
    if (iCol > 0 || postedDateCol > 0) {
        for (iRow = 0; iRow < cRows; iRow = iRow + 1) {
            row = $grid[0].rows[iRow];
            className = row.className;
            isPosted = false;
            if ($.inArray('jqgrow', className.split(' ')) > 0) { // $(row).hasClass('jqgrow')
                if (iCol > 0) {
                    isPosted = $(row.cells[iCol]).find(">div>input:checked").length > 0;
                }
                if (postedDateCol > 0) {
                    mycell = row.cells[postedDateCol];
                    mycelldata = mycell.textContent || mycell.innerText;
                    isPosted = mycelldata.replace(/^\s+/g, "").replace(/\s+$/g, "") !== "";
                }

                if (isPosted) {
                    if ($.inArray('jqgrid-postedrow', className.split(' ')) === -1) {
                        row.className = className + ' jqgrid-postedrow';
                        $(row.cells[iActionsCol]).find(">div>div.ui-inline-del").hide();
                        $(row.cells[iActionsCol]).find(">div>div.ui-inline-post").hide();
                    }
                }
            }
        }
    }

questionAnswers(2)

yourAnswerToTheQuestion