/** * Populates the object using an array. * * This is particularly useful when populating an object from one of the * request arrays (e.g. $_POST). This method goes through the column * names, checking to see whether a matching key exists in populated * array. If so the setByName() method is called for that column. * * You can specify the key type of the array by additionally passing one * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. * The default key type is the column's phpname (e.g. 'AuthorId') * * @param array $arr An array to populate the object from. * @param string $keyType The type of keys the array uses. * @return void */ public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = TracPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setIdtrac($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setTitle($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setDescription($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setType($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setSolvedVersion($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setImportancy($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setUsuariId($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setSiteId($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setActiu($arr[$keys[8]]); } if (array_key_exists($keys[9], $arr)) { $this->setDate($arr[$keys[9]]); } }
public function executeGTrac(sfWebRequest $request) { $this->setLayout('gestio'); $this->IDS = $this->getUser()->getSessionPar('idS'); $this->IDU = $this->getUser()->getSessionPar('idU'); $this->IDT = $request->getParameter('idT', '0'); $this->accio = $request->getParameter('accio', 'C'); $PB = $this->getUser()->getSessionPar('PB'); $PU = $this->getUser()->getSessionPar('PU'); $PI = $this->getUser()->getSessionPar('PI'); //Primer carreguem el formulari per poder cercar en les actualitzacions //Després podem afegir una possible millora o bé afegir un error. //També sortirà un llistat per mostrar el que he corregit i la versió $this->LBUGS = TracPeer::getBugsList($PB); $this->LUPGRADES = TracPeer::getUpgradesList($PU); $this->LIMPROVEMENTS = TracPeer::getImprovementsList($PI); if ($request->hasParameter('BSAVEUPGRADE')) { $this->accio = 'SAVE_UPGRADE'; } if ($request->hasParameter('BDELETEUPGRADE')) { $this->accio = 'DELETE_UPGRADE'; } if ($request->hasParameter('BSAVEBUG')) { $this->accio = 'SAVE_BUG'; } if ($request->hasParameter('BDELETEBUG')) { $this->accio = 'DELETE_BUG'; } switch ($this->accio) { case 'EDIT_UPGRADE': $this->FUPGRADES = TracPeer::initialize($this->IDS, $this->IDU, TracPeer::TYPE_UPGRADE, $this->IDT); break; case 'EDIT_BUG': $this->FBUGS = TracPeer::initialize($this->IDS, $this->IDU, TracPeer::TYPE_BUG, $this->IDT); break; case 'EDIT_IMPROVEMENT': $this->FBUGS = TracPeer::initialize($this->IDS, $this->IDU, TracPeer::TYPE_IMPROVEMENT, $this->IDT); break; case 'SAVE_BUG': $RP = $request->getParameter('trac'); $FOT = TracPeer::initialize($this->IDS, $this->IDU, $RP['type'], $RP['idTrac']); $FOT->bind($RP); if ($FOT->isValid()) { $FOT->save(); $this->redirect('gestio/gTrac'); } else { $this->FBUGS = $FOT; } break; case 'DELETE_BUG': $RP = $request->getParameter('trac'); $FOT = TracPeer::initialize($this->IDS, $this->IDU, $RP['type'], $RP['idTrac']); $OT = $FOT->getObject(); $OT->setInactiu()->save(); $this->redirect('gestio/gTrac'); break; case 'SAVE_UPGRADE': $RP = $request->getParameter('trac'); $FOT = TracPeer::initialize($this->IDS, $this->IDU, $RP['type'], $RP['idTrac']); $FOT->bind($RP); if ($FOT->isValid()) { $FOT->save(); $this->redirect('gestio/gTrac'); } else { $this->FUPGRADES = $FOT; } break; case 'DELETE_UPGRADE': $RP = $request->getParameter('trac'); $FOT = TracPeer::initialize($this->IDS, $this->IDU, $RP['type'], $RP['idTrac']); $OT = $FOT->getObject(); $OT->setInactiu()->save(); $this->redirect('gestio/gTrac'); break; } }
/** * Retrieve multiple objects by pkey. * * @param array $pks List of primary keys * @param PropelPDO $con the connection to use * @throws PropelException Any exceptions caught during processing will be * rethrown wrapped into a PropelException. */ public static function retrieveByPKs($pks, PropelPDO $con = null) { if ($con === null) { $con = Propel::getConnection(TracPeer::DATABASE_NAME, Propel::CONNECTION_READ); } $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(TracPeer::DATABASE_NAME); $criteria->add(TracPeer::IDTRAC, $pks, Criteria::IN); $objs = TracPeer::doSelect($criteria, $con); } return $objs; }