public function bind(array $taintedValues = null, array $taintedFiles = null)
 {
     for ($idx = 1; $idx <= 5; $idx++) {
         $this->validatorSchema["enlace_n{$idx}"]['url'] = new sfVoValidatorUrl(array('required' => false), sfVoForm::getUrlMessages());
         $this->validatorSchema["enlace_n{$idx}"]['culture'] = new sfValidatorString(array('required' => false));
         if (is_null($taintedValues["enlace_n{$idx}"]['url'])) {
             unset($this->embeddedForms["enlace_n{$idx}"], $taintedValues["enlace_n{$idx}"]);
         } else {
             $enlace = $this->embeddedForms["enlace_n{$idx}"]->getObject();
             $taintedValues["enlace_n{$idx}"]['culture'] = sfContext::getInstance()->getUser()->getCulture();
         }
     }
     parent::bind($taintedValues, $taintedFiles);
 }
Пример #2
0
 public function bind(array $taintedValues = null, array $taintedFiles = null)
 {
     $vanity = isset($taintedValues['vanity']) ? $taintedValues['vanity'] : false;
     $titulo = isset($taintedValues['titulo']) ? $taintedValues['titulo'] : false;
     $descripcion = isset($taintedValues['descripcion']) ? $taintedValues['descripcion'] : false;
     $id = isset($taintedValues['id']) ? $taintedValues['id'] : false;
     if ($titulo) {
         $taintedValues['titulo'] = SfVoUtil::cutToLength($taintedValues['titulo'], 80);
     }
     if ($descripcion) {
         $taintedValues['descripcion'] = SfVoUtil::cutToLength($taintedValues['descripcion'], 600);
     }
     if ($vanity) {
         $taintedValues['vanity'] = SfVoUtil::fixVanityChars($vanity);
     } else {
         if (!$id) {
             $taintedValues['vanity'] = SfVoUtil::fixVanityChars($taintedValues['titulo']);
         }
     }
     if (!$this->isNew()) {
         if (isset($taintedValues['enlace'])) {
             if (is_null($taintedValues['enlace']['url']) || strlen($taintedValues['enlace']['url']) === 0) {
                 unset($this->embeddedForms['enlace'], $taintedValues['enlace']);
                 $this->validatorSchema['enlace'] = new sfValidatorPass();
             } else {
                 $this->embeddedForms['enlace']->getObject()->setPropuesta($this->getObject());
             }
         }
         if (isset($taintedValues['institucion'])) {
             if (is_null($taintedValues['institucion']['institucion_id']) || strlen($taintedValues['institucion']['institucion_id']) === 0) {
                 unset($this->embeddedForms['institucion'], $taintedValues['institucion']);
                 $this->validatorSchema['institucion'] = new sfValidatorPass();
             } else {
                 $this->embeddedForms['institucion']->getObject()->setPropuesta($this->getObject());
             }
         }
     }
     parent::bind($taintedValues, $taintedFiles);
 }