Beispiel #1
0
 public function set_values(array $data)
 {
     if (!Valid::url($data['next_url'])) {
         $data['next_url'] = NULL;
     }
     $data['fields'] = array();
     if (!empty($data['field']) and is_array($data['field'])) {
         foreach ($data['field'] as $key => $values) {
             foreach ($values as $index => $value) {
                 if ($index == 0) {
                     continue;
                 }
                 if ($key == 'source') {
                     $value = URL::title($value, '_');
                 }
                 $data['fields'][$index][$key] = $value;
             }
         }
         $data['field'] = NULL;
     }
     $email_type_fields = array();
     foreach ($data['fields'] as $field) {
         $email_type_fields['key'][] = $field['id'];
         $email_type_fields['value'][] = !empty($field['name']) ? $field['name'] : Inflector::humanize($field['id']);
     }
     $this->create_email_type($email_type_fields);
     return parent::set_values($data);
 }
Beispiel #2
0
 public function set_values(array $data)
 {
     $data['remember'] = empty($data['remember']) ? FALSE : (bool) $data['remember'];
     if (empty($data['roles_redirect']) or !is_array($data['roles_redirect'])) {
         $data['roles_redirect'] = $this->get_default_roles();
     } else {
         $roles = array();
         foreach ($data['roles_redirect'] as $data) {
             if (empty($data['roles']) or empty($data['next_url'])) {
                 continue;
             }
             $roles[] = array('roles' => $data['roles'], 'next_url' => $data['next_url']);
         }
         if (empty($roles)) {
             $roles = $this->get_default_roles();
         }
         $data['roles_redirect'] = $roles;
     }
     return parent::set_values($data);
 }
Beispiel #3
0
 /**
  * 
  * @param array $data
  */
 public function set_values(array $data)
 {
     if (empty($data['ds_id']) or !Datasource_Data_Manager::exists($data['ds_id'])) {
         $data['ds_id'] = 0;
     }
     $this->doc_fields = array();
     parent::set_values($data);
     $this->auto_publish = (bool) Arr::get($data, 'auto_publish');
     $this->disable_update = (bool) Arr::get($data, 'disable_update');
     $this->data_source_prefix = URL::title(Arr::get($data, 'data_source_prefix'), '_');
     if ($this->ds_id > 0) {
         $email_type_fields = array('key' => array('header', 'meta_title', 'meta_keywords', 'meta_description'), 'value' => array(__('Header'), __('Meta title'), __('Meta keywords'), __('Meta description')));
         $ds_fields = DataSource_Hybrid_Field_Factory::get_section_fields($this->ds_id);
         foreach ($ds_fields as $field) {
             $email_type_fields['key'][] = $field->name;
             $email_type_fields['value'][] = $field->header;
         }
         $this->create_email_type($email_type_fields);
     }
     return $this;
 }