FuelPHP Bin
<?php namespace Metadata; class Controller_Admin_Metadata extends \Controller_Admin { public function action_createtree() { if (\Input::method() == 'POST') { $val = \Metadata\Model_Tree::validate('create'); if ($val->run()) { $tree = \Metadata\Model_Tree::forge(); $tree->name = \Input::post('name'); $tree->tree_new_root(); if ($tree and $tree->save()) { \Messages::success(__('save_success')); \Response::redirect('admin/metadata/createtree'); } else { \Messages::error(__('save_error')); } } else { \Messages::error($val->error()); } } // Reading out all tree roots (left_id=1) #$data['metatrees'] = ''; $data['metatrees'] = \Perfectum::objectToArrayWithKey(\Metadata\Model_Tree::find('all', array('where' => array(array('left_id', 1),))),'name'); return \Theme::instance() ->get_template() ->set( 'content', \Theme::instance()->view('admin/meta/createtree', $data) ); } 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_tree_id(\Session::get('tree_id'))->tree_select(); $child = \Metadata\Model_Tree::forge(); $child->tree_id = \Session::get('tree_id'); $child->name = \Input::post('name'); $child->tree_new_first_child_of($parent); if ($child and $child->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'); \Debug::dump($data['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),))),'name', true); return \Theme::instance() ->get_template() ->set('content', \Theme::instance()->view('admin/meta/createcategory', $data)); } }