Example #1
0
 public function action_edit($id = null)
 {
     $post = Model_Post::find($id);
     $val = Model_Post::validate('edit');
     if ($val->run()) {
         $post->title = Input::post('title');
         //$post->slug = Input::post('slug');
         $post->summary = Input::post('summary');
         $post->body = Input::post('body');
         $post->user_id = Input::post('user_id');
         if ($post->save()) {
             Session::set_flash('success', 'Updated post #' . $id);
             Response::redirect('admin/posts');
         } else {
             Session::set_flash('error', 'Could not update post #' . $id);
         }
     } else {
         if (Input::method() == 'POST') {
             $post->title = $val->validated('title');
             $post->slug = $val->validated('slug');
             $post->summary = $val->validated('summary');
             $post->body = $val->validated('body');
             $post->user_id = $val->validated('user_id');
             Session::set_flash('error', $val->show_errors());
         }
         $this->template->set_global('post', $post, false);
     }
     $this->template->title = "Create Post";
     $view = View::forge('admin/posts/create');
     // Set some data
     $view->set_global('users', Arr::assoc_to_keyval(Model_User::find('all'), 'id', 'username'));
     $this->template->content = $view;
 }
Example #2
0
 /**
  * Tests Arr::assoc_to_keyval()
  *
  * @test
  */
 public function test_assoc_to_keyval()
 {
     $assoc = array(array('color' => 'red', 'rank' => 4, 'name' => 'Apple'), array('color' => 'yellow', 'rank' => 3, 'name' => 'Banana'), array('color' => 'purple', 'rank' => 2, 'name' => 'Grape'));
     $expected = array('red' => 'Apple', 'yellow' => 'Banana', 'purple' => 'Grape');
     $output = Arr::assoc_to_keyval($assoc, 'color', 'name');
     $this->assertEquals($expected, $output);
 }
Example #3
0
 public function action_edit($id = null)
 {
     is_null($id) and Response::redirect('Data_Supplier_List');
     $data_supplier_list = Model_Data_Supplier_List::find($id);
     $val = Model_Data_Supplier_List::validate('edit');
     if ($val->run()) {
         $data_supplier_list->data_supplier_id = Input::post('data_supplier_id');
         $data_supplier_list->title = Input::post('title');
         $data_supplier_list->datafile = Input::post('datafile');
         $data_supplier_list->cost = Input::post('cost');
         $data_supplier_list->total_leads = Input::post('total_leads');
         if ($data_supplier_list->save()) {
             Session::set_flash('success', 'Updated data_supplier_list #' . $id);
             Response::redirect('data/supplier/list');
         } else {
             Session::set_flash('error', 'Could not update data_supplier_list #' . $id);
         }
     } else {
         if (Input::method() == 'POST') {
             $data_supplier_list->data_supplier_id = $val->validated('data_supplier_id');
             $data_supplier_list->title = $val->validated('title');
             $data_supplier_list->datafile = $val->validated('datafile');
             $data_supplier_list->cost = $val->validated('cost');
             $data_supplier_list->total_leads = $val->validated('total_leads');
             Session::set_flash('error', $val->error());
         }
         $this->template->set_global('data_supplier_list', $data_supplier_list, false);
     }
     $this->template->set_global('data_suppliers', Arr::assoc_to_keyval(Model_Data_supplier::find('all'), 'id', 'company_name'), false);
     $this->template->title = "Data_supplier_lists";
     $this->template->content = View::forge('data/supplier/list/edit');
 }
Example #4
0
 /**
  * Gets all subjects as options used for forms
  *
  * @return array the subjects as assoc array ['id' => 'value']
  */
 public static function getSubjectOptions()
 {
     $where = [];
     if (!Model_User::is_current_user('admin')) {
         $where = ['user_id' => Auth::get('id')];
     }
     $subjects = static::find('all', ['where' => $where]);
     return Arr::assoc_to_keyval($subjects, 'id', 'subject_code');
 }
Example #5
0
 public static function items($type, $add_empty = true)
 {
     $ret = Arr::assoc_to_keyval(self::find('all', array('where' => array(array('type', $type)))), 'code', 'name');
     if ($add_empty) {
         $items[0] = '';
         $ret = array_merge($items, $ret);
     }
     return $ret;
 }
Example #6
0
 /**
  * Allow converting this object to an array
  *
  * @param bool $custom
  * @param bool $recurse
  * @param bool $eav
  *
  * @internal param \Orm\whether $bool or not to include the custom data array
  *
  * @return  array
  */
 public function to_array($custom = false, $recurse = false, $eav = false)
 {
     // storage for the result
     $array = array();
     // reset the references array on first call
     $recurse or static::$to_array_references = array(get_class($this));
     // make sure all data is scalar or array
     if ($custom) {
         foreach ($this->_custom_data as $key => $val) {
             if (is_object($val)) {
                 if (method_exists($val, '__toString')) {
                     $val = (string) $val;
                 } else {
                     $val = get_object_vars($val);
                 }
             }
             $array[$key] = $val;
         }
     }
     // make sure all data is scalar or array
     foreach ($this->_data as $key => $val) {
         if (is_object($val)) {
             if (method_exists($val, '__toString')) {
                 $val = (string) $val;
             } else {
                 $val = get_object_vars($val);
             }
         }
         $array[$key] = $val;
     }
     // convert relations
     foreach ($this->_data_relations as $name => $rel) {
         if (is_array($rel)) {
             $array[$name] = array();
             if (!empty($rel)) {
                 static::$to_array_references[] = get_class(reset($rel));
                 foreach ($rel as $id => $r) {
                     $array[$name][$id] = $r->to_array($custom, true, $eav);
                 }
             }
         } else {
             if (!in_array(get_class($rel), static::$to_array_references)) {
                 if (is_null($rel)) {
                     $array[$name] = null;
                 } else {
                     static::$to_array_references[] = get_class($rel);
                     $array[$name] = $rel->to_array($custom, true, $eav);
                 }
             }
         }
     }
     // get eav relations
     if ($eav and property_exists(get_called_class(), '_eav')) {
         // loop through the defined EAV containers
         foreach (static::$_eav as $rel => $settings) {
             // normalize the container definition, could be string or array
             if (is_string($settings)) {
                 $rel = $settings;
                 $settings = array();
             }
             // determine attribute and value column names
             $attr = \Arr::get($settings, 'attribute', 'attribute');
             $val = \Arr::get($settings, 'value', 'value');
             // check if relation is present
             if (array_key_exists($rel, $array)) {
                 // get eav properties
                 $container = \Arr::assoc_to_keyval($array[$rel], $attr, $val);
                 // merge eav properties to array without overwritting anything
                 $array = array_merge($container, $array);
                 // we don't need this relation anymore
                 unset($array[$rel]);
             }
         }
     }
     // strip any excluded values from the array
     foreach (static::$_to_array_exclude as $key) {
         if (array_key_exists($key, $array)) {
             unset($array[$key]);
         }
     }
     return $array;
 }
Example #7
0
 public function action_edit($id = null)
 {
     is_null($id) and Response::redirect('Dialler_Campaign');
     $dialler_campaign = Model_Dialler_Campaign::find($id);
     $val = Model_Dialler_Campaign::validate('edit');
     if ($val->run()) {
         $dialler_campaign->campaign_title = Input::post('campaign_title');
         $dialler_campaign->campaign_name = Input::post('campaign_name');
         $dialler_campaign->campaign_description = Input::post('campaign_description');
         $dialler_campaign->call_center_id = Input::post('call_center_id');
         if ($dialler_campaign->save()) {
             Session::set_flash('success', 'Updated dialler_campaign #' . $id);
             Response::redirect('dialler/campaign');
         } else {
             Session::set_flash('error', 'Could not update dialler_campaign #' . $id);
         }
     } else {
         if (Input::method() == 'POST') {
             $dialler_campaign->campaign_title = $val->validated('campaign_title');
             $dialler_campaign->campaign_name = $val->validated('campaign_name');
             $dialler_campaign->campaign_description = $val->validated('campaign_description');
             $dialler_campaign->call_center_id = $val->validated('call_center_id');
             Session::set_flash('error', $val->error());
         }
         $this->template->set_global('dialler_campaign', $dialler_campaign, false);
     }
     $this->template->set_global('call_centers', Arr::assoc_to_keyval(Model_Call_Center::find('all'), 'id', 'title'), false);
     $this->template->title = "Dialler_campaigns";
     $this->template->content = View::forge('dialler/campaign/edit');
 }
Example #8
0
<?php

$options = \Arr::assoc_to_keyval(\Novius\Partners\Model_Partner::find('all'), 'part_id', 'part_title');
return array('fieldset_fields' => array('group_id' => array('label' => '', 'form' => array('type' => 'hidden')), 'group_order' => array('label' => '', 'form' => array('type' => 'hidden')), 'group_title' => array('label' => __('Group title')), 'partners' => array('label' => __('Partners'), 'renderer' => 'Novius\\Renderers\\Renderer_Multiselect', 'renderer_options' => array('sortable' => true), 'form' => array('options' => $options), 'populate' => function ($item) {
    return array_keys($item->partners);
})));
Example #9
0
 protected static function findList($condition = null)
 {
     if (!is_array($condition) || \Arr::get($condition, 'select') === null) {
         $columns = static::getAttributes();
         $fields = array_splice($columns, 0, 2);
     } else {
         if (\Arr::get($condition, 'select') !== null) {
             $fields = count($condition['select']) == 2 ? $condition['select'] : array_splice($condition['select'], 0, 2);
         }
     }
     $condition = $condition ?: array();
     $rs = static::find('all', array_merge($condition, array('select' => $fields)));
     //$key = array_shift($fields);
     $key = current($fields);
     //$value = array_pop($fields);
     $value = next($fields);
     return \Arr::assoc_to_keyval($rs, $key, $value);
 }
Example #10
0
File: user.php Project: xXLXx/ddc
 /**
  * Get list of teachers
  *
  * @return array 
  */
 public static function get_list_of_teachers()
 {
     $users = [];
     if (!Model_User::is_current_user('teacher')) {
         $users = Model_User::find('all', array('where' => array('group' => '50')));
     } else {
     }
     return Arr::assoc_to_keyval($users, 'id', 'fullname');
 }
Example #11
0
File: type.php Project: xXLXx/ddc
 public static function getTypeOptions()
 {
     $types = static::find('all');
     return Arr::assoc_to_keyval($types, 'id', 'type_name');
 }
Example #12
0
File: course.php Project: xXLXx/ddc
 public static function getCoursesOptions()
 {
     $courses = static::find('all');
     return Arr::assoc_to_keyval($courses, 'id', 'course_name');
 }
Example #13
0
 public function action_edit($id = null)
 {
     is_null($id) and Response::redirect('Database_Query');
     $database_query = Model_Database_Query::find($id);
     $val = Model_Database_Query::validate('edit');
     if ($val->run()) {
         $database_query->title = Input::post('title');
         $database_query->description = Input::post('description');
         $database_query->query = Input::post('query');
         $database_query->cache_time = Input::post('cache_time');
         $database_query->database_server_id = Input::post('database_server_id');
         $database_query->database = Input::post('database');
         $database_query->username = Input::post('username');
         $database_query->password = Input::post('password');
         if ($database_query->save()) {
             Session::set_flash('success', 'Updated database_query #' . $id);
             Response::redirect('database/query');
         } else {
             Session::set_flash('error', 'Could not update database_query #' . $id);
         }
     } else {
         if (Input::method() == 'POST') {
             $database_query->title = $val->validated('title');
             $database_query->description = $val->validated('description');
             $database_query->query = $val->validated('query');
             $database_query->cache_time = $val->validated('cache_time');
             $database_query->database_server_id = $val->validated('database_server_id');
             $database_query->database = $val->validated('database');
             $database_query->username = $val->validated('username');
             $database_query->password = $val->validated('password');
             Session::set_flash('error', $val->error());
         }
         $this->template->set_global('database_query', $database_query, false);
     }
     $this->template->set_global('server_id', null, false);
     $this->template->set_global('database_servers', Arr::assoc_to_keyval(Model_Database_Server::find('all'), 'id', 'title'), false);
     $this->template->title = "Database_queries";
     $this->template->content = View::forge('database/query/edit');
 }