. * * File: tarifs.php * controleur de gestion des tarifs. */ include ('./application/libraries/Gvv_Controller.php'); class Tarifs extends Gvv_Controller { protected $controller = 'tarifs'; protected $model = 'tarifs_model'; protected $rules = array (); /** * Constructor * * Affiche header et menu */ function __construct() { parent::__construct(); $this->load->model('comptes_model'); $this->load->model('types_ticket_model'); } /** * Génération des éléments à passer au formulaire en cas de création, * modification ou réaffichage après erreur. */ function form_static_element($action) { parent::form_static_element($action); $this->data ['tarif_selector'] = $this->gvv_model->selector(); $this->data ['saisie_par'] = $this->dx_auth->get_username(); $where = array ( "codec >=" => "7", 'codec <' => "8" ); $this->gvvmetadata->set_selector('compte_selector', $this->comptes_model->selector($where)); $this->gvvmetadata->set_selector('ticket_selector', $this->types_ticket_model->selector_with_null()); } /** * Active ou désactive le filtrage des tarifs */ function filterValidation() { $button = $this->input->post('button'); if ($button == "Afficher tout") { gvv_debug("filterValidation tout"); $session ['filter_tarif_tout'] = true; $session ['filter_tarif_date'] = ''; $session ['filter_tarif_public'] = 0; $this->session->set_userdata($session); } else { $session ['filter_tarif_tout'] = false; $session ['filter_tarif_date'] = $this->input->post('filter_tarif_date'); $session ['filter_tarif_public'] = $this->input->post('filter_tarif_public'); $this->session->set_userdata($session); gvv_debug("filterValidation selection " . $session ['filter_tarif_date'] . ", public=" . $session ['filter_tarif_public']); } redirect($this->controller . '/page'); } /** * Affiche une page d'éléments * * @param $premier élément * à afficher * @param * message message à afficher */ function page($premier = 0, $message = '') { $this->data ['select_result'] = $this->gvv_model->select_page(PER_PAGE, $premier); $this->data ['kid'] = $this->kid; $this->data ['controller'] = $this->controller; $this->data ['count'] = $this->gvv_model->count(); $this->data ['premier'] = $premier; $this->data ['message'] = $message; $this->data ['has_modification_rights'] = (! isset($this->modification_level) || $this->dx_auth->is_role($this->modification_level, true, true)); if ($this->session->userdata('filter_tarif_tout')) { $this->data ['filter_tarif_date'] = ""; $this->data ['filter_tarif_public'] = 0; } else { if ($this->session->userdata('filter_tarif_date')) { $this->data ['filter_tarif_date'] = $this->session->userdata('filter_tarif_date'); } else { $this->data ['filter_tarif_date'] = ""; } $this->data ['filter_tarif_public'] = $this->session->userdata('filter_tarif_public'); } $this->push_return_url("Tarifs"); return load_last_view($this->table_view, $this->data, $this->unit_test); } /** * Duplique un tarif à la date courante */ function clone_elt($id) { $data = $this->gvv_model->get_by_id('id', $id); unset($data ['id']); $data ['date'] = date('Y-m-d'); $this->gvv_model->create($data); redirect(controller_url("tarifs/page")); } /** * Test unitaire */ function test($format = "html") { // parent::test($format); $this->unit_test = TRUE; $this->load->library('unit_test'); $this->unit->run(true, true, "Tests $this->controller"); $this->tests_results($format); } }