* Copyright 2016 Nicolas Goaziou * * This file is part of CHD Gestion. * * CHD Gestion is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * CHD Gestion is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with CHD Gestion. If not, see . **/ namespace App\Controller; use App\Controller\AppController; /** * Ippubliques Controller * * @property \App\Model\Table\IppubliquesTable $Ippubliques */ class IppubliquesController extends AppController { public function initialize() { parent::initialize(); if ($this->request->action === 'index') { $this->loadComponent('Paginator', [ 'limit' => 63 ]); $this->loadComponent('Search.Prg'); } } /** * Index method * * @return void */ public function index() { $this->paginate = [ 'contain' => ['Secteurs', 'Services'] ]; $query = $this->Ippubliques ->find('search', $this->Ippubliques->filterParams($this->request->query)); $expr1 = $query->newExpr()->add(['ISNULL(secteur_id)']); $expr2 = $query->newExpr()->add(['INET_ATON(ip4)']); $query = $query->order($expr1)->order($expr2); $this->set('ippubliques', $this->paginate($query)); $this->set('_serialize', ['ippubliques']); $this->loadModel('Secteurs'); $this->set('secteurs', $this->Secteurs->find('list')->toArray()); } /** * View method * * @param string|null $id Ippublique id. * @return void * @throws \Cake\Network\Exception\NotFoundException When record not found. */ public function view($id = null) { $ippublique = $this->Ippubliques->get($id, [ 'contain' => ['Secteurs', 'Services' => ['Adherents', 'ServiceTypes', 'ServiceStatuts'] ] ]); $this->set('ippublique', $ippublique); $this->set('_serialize', ['ippublique']); } }