FuelPHP Bin
Sign in
Url:
Fork
Parent
<?php public function action_createcategory() { $btn_select = __('select'); $btn_save = __('save'); if (\Input::method() == 'POST') { if (\Input::post('submit') == $btn_select) { // Storing selected tree_id in Session for later use $session = \Session::instance(); \Session::set('tree_id', \Input::post('tree_id')); } elseif (\Input::post('submit') == $btn_save) { $val = \Metadata\Model_Tree::validate('create'); if ($val->run()) { $parent = \Metadata\Model_Tree::find_by_id(\Input::post('node_id')); $parent->root = $parent->tree_is_root(); $parent->depth = $parent->tree_depth(); $parent->treeid = $parent->tree_get_tree_id(); $parent->childcounter = $parent->tree_count_children(); $newnode = \Metadata\Model_Tree::forge(); $newnode->name = \Input::post('name'); if ($parent->root === true && $parent->childcounter == 0) { echo "I am root and have NO children"; #die; $newnode->tree_new_first_child_of($parent); } elseif ($parent->root === true && $parent->childcounter != 0) { echo "I am root and I have children"; #die; $newnode->tree_new_last_child_of($parent); } elseif ($parent->root === false && $parent->childcounter == 0) { echo "I am NOT root and I have NO children"; #die; $newnode->tree_new_first_child_of($parent); } else { echo "I am NOT root and I have children"; #die; $newnode->tree_new_last_child_of($parent); } if ($newnode and $newnode->save()) { \Messages::success(__('save_success')); \Response::redirect('admin/metadata/createcategory'); } else { \Messages::error(__('save_error')); } } else { \Messages::error($val->error()); } } else {} } // Reading out selected tree_id from Session $session = \Session::instance(); $data['tree_id'] = \Session::get('tree_id'); // Reading out all tree roots (left_id=1) $data['metatrees'] = \Perfectum::objectToArrayWithKey(\Metadata\Model_Tree::find('all', array('where' => array(array('left_id', 1),))),'id','name', true); //Reading out categories of current tree $data['metacategories'] = \Metadata\Model_Tree::find_by_id(\Session::get('tree_id'))->tree_select()->tree_dump_dropdown('name', false); return \Theme::instance() ->get_template() ->set('content', \Theme::instance()->view('admin/meta/createcategory', $data)); } ?>