Reviews::edit PHP Method

edit() public method

public edit ( )
    public function edit()
    {
        $review_info = $this->Reviews_model->getReview((int) $this->input->get('id'));
        if ($review_info) {
            $review_id = $review_info['review_id'];
            $data['_action'] = site_url('reviews/edit?id=' . $review_id);
        } else {
            $review_id = is_numeric($this->input->get('id')) and $this->validateForm();
            $data['_action'] = site_url('reviews/edit');
        }
        $title = isset($review_info['location_name']) ? $review_info['location_name'] : $this->lang->line('text_new');
        $this->template->setTitle(sprintf($this->lang->line('text_edit_heading'), $title));
        $this->template->setHeading(sprintf($this->lang->line('text_edit_heading'), $title));
        $this->template->setButton($this->lang->line('button_save'), array('class' => 'btn btn-primary', 'onclick' => '$(\'#edit-form\').submit();'));
        $this->template->setButton($this->lang->line('button_save_close'), array('class' => 'btn btn-default', 'onclick' => 'saveClose();'));
        $this->template->setButton($this->lang->line('button_icon_back'), array('class' => 'btn btn-default', 'href' => site_url('reviews')));
        if ($this->input->post() and $review_id = $this->_saveReview()) {
            if ($this->input->post('save_close') === '1') {
                redirect('reviews');
            }
            redirect('reviews/edit?id=' . $review_id);
        }
        $data['review_id'] = $review_info['review_id'];
        $data['location_id'] = $review_info['location_id'];
        $data['sale_id'] = $review_info['sale_id'];
        $data['sale_type'] = $review_info['sale_type'];
        $data['customer_id'] = $review_info['customer_id'];
        $data['author'] = $review_info['author'];
        $data['quality'] = $review_info['quality'];
        $data['delivery'] = $review_info['delivery'];
        $data['service'] = $review_info['service'];
        $data['review_text'] = $review_info['review_text'];
        $data['date_added'] = $review_info['date_added'];
        $data['review_status'] = $review_info['review_status'];
        $ratings = $this->config->item('ratings');
        $data['ratings'] = $ratings['ratings'];
        $this->load->model('Locations_model');
        $data['locations'] = array();
        $results = $this->Locations_model->getLocations();
        foreach ($results as $result) {
            $data['locations'][] = array('location_id' => $result['location_id'], 'location_name' => $result['location_name']);
        }
        $this->template->render('reviews_edit', $data);
    }