示例#1
0
 public function create()
 {
     $this->load->model('Deck');
     $this->form_validation->set_rules('num', 'Number', 'required|integer|is_unique[deck.num]');
     $this->form_validation->set_rules('name', 'Name', 'required');
     $this->layout->add_basic_assets()->menu();
     if ($this->form_validation->run() === false) {
         $default_num = Deck::get_max_num() + 1;
         $data = array('num' => $default_num, 'name' => '');
         $create_edit = $this->layout->views('controllers/Deck/actions/create_edit', $data, array(), true);
         $this->layout->action_view(array('create_edit' => $create_edit));
     } else {
         $result = Deck::insert((int) $this->input->post('num'), $this->input->post('name'));
         if ($result === true) {
             $this->layout->view('others/form_success');
         } elseif ($result instanceof Standard_error) {
             $this->layout->views('others/form_failure', array('message' => $result->message));
             $data = array('num' => $this->input->post('num'), 'name' => $this->input->post('name'));
             $create_edit = $this->layout->views('controllers/Deck/actions/create_edit', $data, array(), true);
             $this->layout->action_view(array('create_edit' => $create_edit));
         }
     }
 }