<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Music extends CI_Controller { public function __construct(){ parent::__construct(); $this->load->model('Model_music'); $this->load->library('pagination'); $this->load->library('session'); } public function index() { $genre = $this->input->get('genre'); $order = $this->input->get('order'); $artist = $this->input->get('artist'); $query = $this->input->get('query'); // Configuration de la pagination $config = array(); $config['base_url'] = site_url('music/index'); $config['total_rows'] = $this->Model_music->countAllMusics($genre, $artist, $query); $config['per_page'] = 16; $config['page_query_string'] = TRUE; $config['reuse_query_string'] = TRUE; $config['query_string_segment'] = 'page'; $config['full_tag_open'] = '<nav aria-label="Page navigation"><ul class="pagination">'; $config['full_tag_close'] = '</ul></nav>'; $config['first_link'] = 'First'; $config['last_link'] = 'Last'; $config['first_tag_open'] = '<li class="page-item">'; $config['first_tag_close'] = '</li>'; $config['prev_link'] = '«'; $config['prev_tag_open'] = '<li class="page-item">'; $config['prev_tag_close'] = '</li>'; $config['next_link'] = '»'; $config['next_tag_open'] = '<li class="page-item">'; $config['next_tag_close'] = '</li>'; $config['last_tag_open'] = '<li class="page-item">'; $config['last_tag_close'] = '</li>'; $config['cur_tag_open'] = '<li class="page-item active"><a href="#" class="page-link">'; $config['cur_tag_close'] = '</a></li>'; $config['num_tag_open'] = '<li class="page-item">'; $config['num_tag_close'] = '</li>'; $config['attributes'] = array('class' => 'page-link'); $this->pagination->initialize($config); $page = $this->input->get('page'); $page = ($page) ? $page : 0; $data = array( 'musics' => $this->Model_music->getMusics($genre, $order, $artist, $query, $config['per_page'], $page), 'genres' => $this->Model_music->researchtype(), 'artists' => $this->Model_music->nameArtist(), 'is_logged_in' => $this->session->userdata('logged_in'), 'pagination' => $this->pagination->create_links() ); $this->load->view('layout/header', $data); $this->load->view('layout/getter', $data); $this->load->view('musiques_list', $data); $this->load->view('layout/footer'); } public function view($songId) { $songData = $this->Model_music->getSongDetails($songId); if (!$songData) { show_404(); } $is_logged_in = $this->session->userdata('logged_in'); $data = array( 'song' => $songData, 'is_logged_in' => $is_logged_in ); $this->load->view('layout/header', $data); $this->load->view('song_details', $data); $this->load->view('layout/footer'); } }