示例#1
0
 public function create()
 {
     $this->load->helper('form');
     $this->load->helper('htmlpurifier');
     $this->load->library('form_validation');
     $this->load->model('forums_m');
     $this->load->model('labels/labels_m');
     $this->form_validation->set_rules('name', 'Forum name', 'required|trim|htmlspecialchars|min_length[4]|xss_clean');
     $this->form_validation->set_rules('label', 'Label', 'required');
     if ($this->form_validation->run() == TRUE) {
         $name = $this->input->post('name');
         $data = array('name' => $name, 'label' => $this->input->post('label'), 'date' => date('Y-m-d H:i:s'), 'clan' => $this->input->post('clan'), 'private' => $this->input->post('private'), 'description' => html_purify($this->input->post('description'), 'description'));
         $this->forums_m->insert_forum($data);
         $forumID = $this->db->insert_id();
         // Insert slug
         $slug = makePageSlug($forumID . '-' . $name);
         $dataSlug = array('slug' => $slug);
         $this->forums_m->update_forum($forumID, $dataSlug);
         // Insert mods
         $mods = $this->input->post('mods');
         $this->forums_m->add_moderators($mods, $forumID);
         redirect('admin/forums');
     } else {
         $this->template->set('title', 'Create forum')->set('labels', $this->labels_m->get_all())->set('users', $this->ion_auth->users()->result())->build('admin/form');
     }
 }
示例#2
0
 public function create()
 {
     $this->load->helper('form');
     $this->load->helper('htmlpurifier');
     $this->load->library('form_validation');
     $this->load->library('upload');
     if ($this->form_validation->run('posts') == TRUE) {
         $next_id = $this->posts_m->get_next_id();
         $title = $this->input->post('title');
         $slug = makePageSlug($title);
         $file_data = NULL;
         if (!empty($_FILES['userfile']['name'])) {
             $config['upload_path'] = $this->folder_path;
             $config['allowed_types'] = 'gif|jpg|png|bmp|jpeg';
             $config['max_size'] = '0';
             $config['max_width'] = '0';
             $config['max_height'] = '0';
             $config['file_name'] = $next_id;
             $this->upload->initialize($config);
             if ($this->upload->do_upload('userfile')) {
                 $file_data = $this->upload->data();
             } else {
                 $this->session->set_flashdata('create_error', $this->upload->display_errors('', ''));
             }
         }
         $data = array('title' => $title, 'body' => html_purify($this->input->post('body'), 'wysiwyg'), 'date' => date('Y-m-d H:i:s'), 'teaser' => html_purify($this->input->post('teaser'), 'description'), 'author' => $this->user->user_id, 'label' => $this->input->post('label'), 'image' => $file_data['file_name'], 'featured' => $this->input->post('featured'), 'clan' => $this->input->post('clan'), 'slug' => $slug, 'state' => $this->input->post('state'));
         $this->posts_m->insert($data);
         redirect('admin/posts');
     } else {
         $this->load->model('labels/labels_m');
         $this->template->set('labels', $this->labels_m->get_all())->set('title', 'Create post')->build('admin/form');
     }
 }
示例#3
0
 public function edit($id = 0)
 {
     $this->load->helper('form');
     $this->load->helper('htmlpurifier');
     $this->load->library('form_validation');
     $this->template->append_metadata(Assets::adminJs('ckeditor', 'js/ckeditor'));
     $this->form_validation->set_rules('name', 'Name', 'required|trim|htmlspecialchars|min_length[4]|xss_clean');
     $this->form_validation->set_rules('slug', 'Page slug', 'required|max_length[30]|min_length[3]|is_unique[pages.slug]');
     $this->form_validation->set_rules('access', 'Access level', 'required');
     $this->form_validation->set_rules('navigation', 'Navigation link name', 'trim|required|min_length[4]|htmlspecialchars|max_length[20]|xss_clean');
     $this->form_validation->set_rules('content', 'Content', 'required');
     if ($this->form_validation->run() == TRUE) {
         $navLink = $this->input->post('navigation');
         $oldSlug = $this->pages_m->get($id)->slug;
         $slug = makePageSlug($this->input->post('slug'));
         $data = array('name' => $this->input->post('name'), 'description' => html_purify($this->input->post('description'), 'description'), 'slug' => $slug, 'content' => html_purify($this->input->post('content'), 'wysiwyg'), 'navigation' => $navLink, 'layout' => $this->input->post('layout'), 'date' => date('Y-m-d H:i'), 'access' => $this->input->post('access'));
         $this->pages_m->update($id, $data);
         // Edit navigation link
         $this->load->model('navigation/navigation_m');
         $this->navigation_m->delete_by(array('link' => $oldSlug));
         $dataNav = array('name' => $navLink, 'link' => $slug, 'type' => 'uri');
         $this->navigation_m->insert($dataNav);
         redirect('admin/pages');
     } else {
         $this->template->set('title', 'Edit page')->set('data', $this->pages_m->as_array()->get($id))->set('layouts', $this->template->get_theme_layouts($this->setting->theme))->build('admin/form');
     }
 }