Пример #1
0
 public function saveEventWingsList($con = null)
 {
     if (!$this->isValid()) {
         throw $this->getErrorSchema();
     }
     if (!isset($this->widgetSchema['event_wings_list'])) {
         // somebody has unset this widget
         return;
     }
     if (is_null($con)) {
         $con = $this->getConnection();
     }
     $c = new Criteria();
     $c->add(EventWingsPeer::WING_ID, $this->object->getPrimaryKey());
     EventWingsPeer::doDelete($c, $con);
     $values = $this->getValue('event_wings_list');
     if (is_array($values)) {
         foreach ($values as $value) {
             $obj = new EventWings();
             $obj->setWingId($this->object->getPrimaryKey());
             $obj->setEventId($value);
             $obj->save();
         }
     }
 }
Пример #2
0
 protected function processForm(sfWebRequest $request, sfForm $form)
 {
     $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
     if ($form->isValid()) {
         $event = $form->save();
         $arr = $request->getParameter('event[wing_id]');
         $ew = EventWingsPeer::retrieveByEventId($request->getParameter('id'));
         if (is_array($ew)) {
             foreach ($ew as $eav) {
                 $eav->delete();
             }
         }
         foreach ($arr as $key => $val) {
             $ev = new EventWings();
             if ($request->getParameter('id') != '') {
                 $ev->setEventId($request->getParameter('id'));
             } else {
                 $ev->setEventId($form->getObject()->getId());
             }
             $ev->setWingId($val);
             $ev->save();
             unset($ev);
         }
         $this->redirect('/event');
     }
 }