/**
  * retrieve the main atto (portante)
  *
  * @param Criteria $c 
  * @return OppAtto
  * @author Guglielmo Celata
  */
 public function getAttoPortante(Criteria $c = null)
 {
     if (is_null($c)) {
         $c = new Criteria();
     }
     $c->add(OppAttoHasEmendamentoPeer::PORTANTE, 1);
     $c->add(OppAttoHasEmendamentoPeer::EMENDAMENTO_ID, $this->getId());
     $c->addJoin(OppAttoHasEmendamentoPeer::ATTO_ID, OppAttoPeer::ID);
     return OppAttoPeer::doSelectOne($c);
 }
Пример #2
0
 public function getAllSucc()
 {
     $allSucc = array();
     $atto = $this;
     $succ = $atto->getSucc();
     while ($succ != '' && $succ != NULL) {
         $c = new Criteria();
         $c->add(OppAttoPeer::ID, $atto->getId());
         $result = OppAttoPeer::doSelectOne($c);
         if ($result->getSucc() != '' && $result->getSucc() != NULL) {
             $atto = OppAttoPeer::retrieveByPk($result->getSucc());
             $succ = $atto->getId();
             $allSucc[] = $atto;
         } else {
             $succ = '';
         }
     }
     return $allSucc;
 }
 public function executeStatoAttoNonLegislativo()
 {
     $c = new Criteria();
     $c->add(OppAttoPeer::ID, $this->ddl->getPred(), Criteria::EQUAL);
     $this->ultimo_atto = OppAttoPeer::doSelectOne($c);
 }
 public static function getRelazioni($id)
 {
     $relazioni = array();
     // testo unificato o assorbito
     $c = new Criteria();
     $c->add(OppRelazioneAttoPeer::ATTO_FROM_ID, $id);
     $c->add(OppRelazioneAttoPeer::TIPO_RELAZIONE_ID, array(1, 2, 4), Criteria::IN);
     $unificati = OppRelazioneAttoPeer::doSelect($c);
     foreach ($unificati as $unificato) {
         array_push($relazioni, array($unificato->getAttoToId(), $unificato->getOppTipoRelazione()->getDenominazione(), $unificato->getDescrizione(), 0));
     }
     // stralcio FROM
     $c = new Criteria();
     $c->add(OppRelazioneAttoPeer::ATTO_FROM_ID, $id);
     $c->add(OppRelazioneAttoPeer::TIPO_RELAZIONE_ID, 3);
     $from_stralci = OppRelazioneAttoPeer::doSelect($c);
     foreach ($from_stralci as $from_stralcio) {
         array_push($relazioni, array($from_stralcio->getAttoToId(), $from_stralcio->getOppTipoRelazione()->getDenominazione(), $from_stralcio->getDescrizione(), 1));
     }
     // stralcio TO
     $c = new Criteria();
     $c->add(OppRelazioneAttoPeer::ATTO_TO_ID, $id);
     $c->add(OppRelazioneAttoPeer::TIPO_RELAZIONE_ID, 3);
     $to_stralci = OppRelazioneAttoPeer::doSelect($c);
     foreach ($to_stralci as $to_stralcio) {
         $c = new Criteria();
         $c->add(OppAttoPeer::ID, $to_stralcio->getAttoFromId());
         $rs = OppAttoPeer::doSelectOne($c);
         $sigla = $rs->getRamo() . "." . $rs->getNumfase();
         array_push($relazioni, array($to_stralcio->getAttoFromId(), $to_stralcio->getOppTipoRelazione()->getDenominazione(), $sigla, 2));
     }
     // abbinato FROM
     $c = new Criteria();
     $c->add(OppRelazioneAttoPeer::ATTO_FROM_ID, $id);
     $c->add(OppRelazioneAttoPeer::TIPO_RELAZIONE_ID, 5);
     $from_abbs = OppRelazioneAttoPeer::doSelect($c);
     foreach ($from_abbs as $from_abb) {
         array_push($relazioni, array($from_abb->getAttoToId(), $from_abb->getOppTipoRelazione()->getDenominazione(), $from_abb->getDescrizione(), 0));
     }
     return $relazioni;
 }
$t->diag('Tests beginning');
// clean the database
$t->diag('Cleaning previously created test records');
$c = new Criteria();
$c->add(OppAttoPeer::PARLAMENTO_ID, 999999);
$existing_records = OppAttoPeer::doSelect($c);
foreach ($existing_records as $rec) {
    $t->diag('Cleaning record ' . $rec->getId());
    $rec->delete();
}
$t->diag('Preparing a longvarchar variable');
$longvarchar = '';
for ($i = 0; $i < 15000; $i++) {
    $longvarchar .= 'pippo ';
}
$var_length = strlen($longvarchar);
$t->diag('Long variable created: length=' . $var_length);
$t->diag('Create the test OppAtto object');
$obj = new OppAtto();
$obj->setTipoAttoId(1);
$obj->setParlamentoId(999999);
$obj->setDescrizione($longvarchar);
$obj->save();
$c = new Criteria();
$c->add(OppAttoPeer::PARLAMENTO_ID, 999999);
$read_obj = OppAttoPeer::doSelectOne($c);
$read_var = $read_obj->getDescrizione();
$read_length = strlen($read_var);
$t->diag('Long variable read from DB: length=' . $read_length);
$t->ok($read_var == $longvarchar, 'the variable was set correctly');
$t->ok($read_length == $var_length, 'the length is ok');
 /**
  * Executes protected method
  * for ALL succ
  * (only for ddl) 
  */
 protected function getTuttiSucc($succ)
 {
     $all_succ = array();
     while ($succ != '') {
         $c = new Criteria();
         $c->add(OppAttoPeer::ID, $succ, Criteria::EQUAL);
         $ddl_succ = OppAttoPeer::doSelectOne($c);
         if ($ddl_succ->getSucc()) {
             array_push($all_succ, $ddl_succ->getSucc());
             $succ = $ddl_succ->getSucc();
         } else {
             return $all_succ;
         }
     }
     return $all_succ;
 }