예제 #1
0
 public function save($params = '*', $tsl_params = '*')
 {
     $db = Zend_Registry::get('db');
     $mapper = new SxModule_Eyecatchers_Mapper();
     $data = $mapper->toArray($this, 'item');
     $tslData = $mapper->toArray($this, 'tsl');
     if (is_array($params)) {
         $data = $mapper->fromInput($data, $params);
     }
     if (is_array($tsl_params)) {
         $tslData = $mapper->fromInput($tslData, $tsl_params);
     }
     if ($this->getId()) {
         $data['date_updated'] = new Zend_Db_Expr('NOW()');
         $db->update('Eyecatchers', $data, 'id = ' . (int) $this->getId());
         $db->update('EyecatchersTsl', $tslData, 'e_id = ' . (int) $this->getId() . ' AND lng = ' . $db->quote($this->getLng()));
     } else {
         $data['date_created'] = new Zend_Db_Expr('NOW()');
         $data['date_updated'] = '0000-00-00 00:00:00';
         $db->insert('Eyecatchers', $data);
         $this->setId($db->lastInsertId());
         $config = Zend_Registry::get('config');
         foreach ($config->system->language as $lng => $slng) {
             $tslData['lng'] = $lng;
             $tslData['e_id'] = (int) $this->getId();
             $db->insert('EyecatchersTsl', $tslData);
         }
     }
     return $this;
 }