We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
  • Magari impostando dei valori di default sulle TV aggiri il problema,
    per fare qualche test ho impostato la tv di controllo su Radio Options (perchè con Checkbox mi dava problemi), quindi:

    tv con nome "conferma" e id =13,
    opzioni in ingresso: pubblicare==1||NON pubblicare==0
    valore default: 0

    plugin: (con evento onDocFormSave):

    <?php
    
    $tvtest = $modx->getObject('modTemplateVarResource', array(
                'contentid'=> $id, 
                'tmplvarid' => '13'
            ));
    
    $val = $resource->getTVValue('conferma');
    
    if(!$val){
    	$modx->log(modX::LOG_LEVEL_ERROR, "casella NON spuntata - valore: ".$val); 
    }else{
    	$modx->log(modX::LOG_LEVEL_ERROR, "casella spuntata - valore: ".$val); 
    }
    


    e il risultato viene stampato nei log di modx
      TilliLab | MODX Ambassador
      website
      • 20215
      • 144 Posts
      Si potrei provare con valori di default ma tu il problema mi pare di aver capito nn ce l'hai!?
        ----------------------------------
        canale irc Italiano #modx server: tophost.azzurra.org
      • Ce l'ho anche io smiley

        o meglio, ce l'ho se lascio attiva l'opzione "consenti vuoto" e non assegno alcun valore di default,
        in questo caso se non modifico io il valore della tv questa non viene popolata e non soddisfo mai la condizione if ($resource->getTVValue('nome_tv')){

        Non so come controllare se il campo sia popolato, ci vorrebbe un equivalente del php "isset" giusto?
          TilliLab | MODX Ambassador
          website
          • 37123
          • 186 Posts
          si è quello che pensavo io... Isset è una grande invenzione, ma te ne accorgi solo quando non lo hai disponibile.
          • se come dite voi l'istanza della classe modTemplateVar non viene registrata se non contiene alcun valore basterà fare un controllo del tipo if(empty($obj)) oppure if($obj instanceof modTemplateVar) per capire se tale Tv esiste ed è settata.
              Francesco Mussoni | MODX Ambassador | Skype: solidusite2 | Email: [email protected]