<?php
$atributos = new Produto_Model_Atributos();
$relacionados = $atributos->getAtributosRelacionados($this->grupo);
$rs = $atributos->getAtributos($this->tipo);
$children = array();
$parents = array();

foreach ($rs as $key => $row) {
    if ($row->id_parent) {
        $children[] = $row;
    } else {
        $parents[] = $row;
    }
}

$result = array();
foreach ($parents as $row) {
    $result[] = $row;
    foreach ($children as $row2) {
        if ($row2->id_parent == $row->id) {
            $result[] = $row2;
        }
    }
}

$rs = $result;
?>

<script>
  $(document).ready(function () {
    $('#formToAtributos').submit(function () {
      $(this).ajaxSubmit(
        {
          success: function (data) {
            let retorno = JSON.parse(data);
            alert(retorno.mensagem);
            $('#checkAtributos').dialog('close');
          },
          error: function (xhr, desc, er) {
            alert(xhr.responseText);
          }
        }
      );
      return false;
    });
  });
</script>
<form action="/produto/atributogrupo/saveatributos/grupo/<?= $this->grupo ?>/tipo/<?= $this->tipo ?>"
      id="formToAtributos" method="post">
    <?php
    $i = 0;
    if ($rs):
        ?>
      <table>
          <?php
          foreach ($rs as $row):
              $checked = (in_array($row->id, $relacionados) ? ' checked' : '');
              $cor = ($i % 2 == 0 ? '#FFFFFF' : '');
              ?>
            <tr>
              <td bgcolor="<?= $cor ?>" width="1%">
                  <?php
                  $prefix = ' - ';
                  if ($row->id_parent == ''):
                      $prefix = '';
                      ?>
                    <input type="checkbox" name="atributos[]" value="<?= $row->id ?>"
                           id="atributo_<?= $row->id ?>" <?= $checked ?> />
                  <?php
                  endif;
                  ?>
              </td>
              <td bgcolor="<?= $cor ?>">
                <label for="atributo_<?= $row->id ?>"><?= $prefix . $row->ds_descricao_atributo ?></label>
              </td>

                <?php
                if ($this->tipo == 'PROPRIEDADE'):
                    ?>
                  <td bgcolor="<?= $cor ?>" nowrap>
                      <?php
                      $value = $atributos->getAtributoValue($row->id, $this->grupo);

                      $atributosPlaceholderNumeroDias = [
                          Produto_Model_Atributos::ID_PROD_TIPO_FINAL_VIGENCIA,
                          Produto_Model_Atributos::ID_PROD_PERMITIR_SEGURO_AREA_SEMEADA_TRANSPLANTADA,
                      ];
                      $id = (int)$row->id;
                      $parametrosAdicionais = [];

                      if (in_array($id, $atributosPlaceholderNumeroDias)) {
                          $parametrosAdicionais['class'] = "integer";
                          $parametrosAdicionais['placeholder'] = "placeholder='Número de dias'";
                      }

                      if ($id === Produto_Model_Atributos::ID_PROD_TIPO_FINAL_VIGENCIA) {
                          $parametrosAdicionais['valuePadrao'] = "180";
                      }

                      echo $this->mountField(
                          "value_atributo[{$row->id}]",
                          $row->ds_chave_tipo_atributo,
                          $value,
                          $row->ds_valores_opcoes,
                          $row->ds_validar_campo,
                          $row->ds_validar_campo_valor,
                          $parametrosAdicionais
                      );
                      ?>
                  </td>
                <?php
                endif;
                ?>
            </tr>
              <?php
              $i++;
          endforeach;
          ?>
      </table>
    <?php
    endif;
    ?>
</form>