diff options
author | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2016-06-12 14:03:27 +0200 |
---|---|---|
committer | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2016-06-12 14:03:27 +0200 |
commit | 94a42b092b0b365730b681855dd19d1f05f73a42 (patch) | |
tree | edafa05ab22808d429e88dd3af1e358b19b00e65 /generator/after-bake/src | |
parent | 696c23fd29b75f02567ccb56a9930a3823688e04 (diff) | |
download | chd_gestion-94a42b092b0b365730b681855dd19d1f05f73a42.zip chd_gestion-94a42b092b0b365730b681855dd19d1f05f73a42.tar.gz chd_gestion-94a42b092b0b365730b681855dd19d1f05f73a42.tar.bz2 |
Equipement/edit : make uplink links sorted by IP + minor refactorings.
Diffstat (limited to 'generator/after-bake/src')
3 files changed, 43 insertions, 14 deletions
diff --git a/generator/after-bake/src/Controller/EquipementsController.php b/generator/after-bake/src/Controller/EquipementsController.php index a17a724..65260b5 100644 --- a/generator/after-bake/src/Controller/EquipementsController.php +++ b/generator/after-bake/src/Controller/EquipementsController.php @@ -126,15 +126,18 @@ class EquipementsController extends AppController $this->Flash->error(__('At least one Equipement is invalid. None Saved.')); } } - $equipements = $this->Equipements->Equipements->find('list')->order('mac'); + /* + $uplinks = $this->Equipements->find('list'); + $uplinks->order($uplinks->newExpr()->add(['INET_ATON(ipmgmt_id)'])); $services = $this->Equipements->Services->find('list')->order(['service_type_id', 'adherent_id', 'id']); + $relais = $this->Equipements->Relais->find('list'); + */ $ipmgmt = $this->Equipements->Ipmgmt->find('list')->notMatching('Equipements'); $ipmgmt->order($ipmgmt->newExpr()->add(['INET_ATON(ip4)'])); $equipementModeles = $this->Equipements->EquipementModeles->find('list'); $equipementModes = $this->Equipements->EquipementModes->find('list'); - $relais = $this->Equipements->Relais->find('list'); - $this->set(compact('equipement', 'equipements', 'services', 'ipmgmt', 'equipementModeles', 'equipementModes', 'relais')); - //$this->set(compact('entities')); + //$this->set(compact('equipement', 'uplinks', 'services', 'ipmgmt', 'equipementModeles', 'equipementModes', 'relais')); + $this->set(compact('equipement', 'ipmgmt', 'equipementModeles', 'equipementModes')); $this->set('_serialize', ['equipement']); } @@ -159,7 +162,8 @@ class EquipementsController extends AppController $this->Flash->error(__('The equipement could not be saved. Please, try again.')); } } - $equipements = $this->Equipements->Equipements->find('list', array('order' => array('mac' => 'asc'))); + $uplinks = $this->Equipements->find('list'); + $uplinks->order($uplinks->newExpr()->add(['INET_ATON(ipmgmt_id)'])); $services = $this->Equipements->Services->find('list'); // IPmgmt list : own IP + unused IP // XXX Cake bug ->orWhere(['Ipmgmt.ip4' => $equipement->ipmgmt_id]) does a AND WHERE after ->notMatching('Equipements') so forced to use leftJoinWith() @@ -169,7 +173,7 @@ class EquipementsController extends AppController $equipementModeles = $this->Equipements->EquipementModeles->find('list'); $equipementModes = $this->Equipements->EquipementModes->find('list'); $relais = $this->Equipements->Relais->find('list'); - $this->set(compact('equipement', 'equipements', 'services', 'ipmgmt', 'equipementModeles', 'equipementModes', 'relais')); + $this->set(compact('equipement', 'uplinks', 'services', 'ipmgmt', 'equipementModeles', 'equipementModes', 'relais')); $this->set('_serialize', ['equipement']); } } diff --git a/generator/after-bake/src/Template/Equipements/add.ctp b/generator/after-bake/src/Template/Equipements/add.ctp index c2516cd..388d624 100644 --- a/generator/after-bake/src/Template/Equipements/add.ctp +++ b/generator/after-bake/src/Template/Equipements/add.ctp @@ -2,16 +2,9 @@ <ul class="side-nav"> <li class="heading"><?= __('Actions') ?></li> <li><?= $this->Html->link(__('List Equipements'), ['action' => 'index']) ?></li> - <li><?= $this->Html->link(__('List Equipements'), ['controller' => 'Equipements', 'action' => 'index']) ?></li> - <li><?= $this->Html->link(__('New Equipement'), ['controller' => 'Equipements', 'action' => 'add']) ?></li> - <li><?= $this->Html->link(__('List Services'), ['controller' => 'Services', 'action' => 'index']) ?></li> - <li><?= $this->Html->link(__('New Service'), ['controller' => 'Services', 'action' => 'add']) ?></li> <li><?= $this->Html->link(__('List Equipement Modeles'), ['controller' => 'EquipementModeles', 'action' => 'index']) ?></li> - <li><?= $this->Html->link(__('New Equipement Modele'), ['controller' => 'EquipementModeles', 'action' => 'add']) ?></li> <li><?= $this->Html->link(__('List Ipmgmt'), ['controller' => 'Ipmgmt', 'action' => 'index']) ?></li> - <li><?= $this->Html->link(__('New Ipmgmt'), ['controller' => 'Ipmgmt', 'action' => 'add']) ?></li> <li><?= $this->Html->link(__('List Relais'), ['controller' => 'Relais', 'action' => 'index']) ?></li> - <li><?= $this->Html->link(__('New Relais'), ['controller' => 'Relais', 'action' => 'add']) ?></li> </ul> </nav> <div class="equipements form large-10 medium-9 columns content"> @@ -19,7 +12,7 @@ <fieldset> <legend><?= __('Add Equipement') ?></legend> <?php - //echo $this->Form->input('uplink_id', ['options' => $equipements, 'empty' => true]); + //echo $this->Form->input('uplink_id', ['options' => $uplinks, 'empty' => true]); //echo $this->Form->input('service_id', ['options' => $services, 'empty' => true]); //echo $this->Form->input('mac'); echo $this->Form->input('mac', ['type'=>'textarea', 'rows'=>10, 'maxlength'=>2000]); diff --git a/generator/after-bake/src/Template/Equipements/edit.ctp b/generator/after-bake/src/Template/Equipements/edit.ctp new file mode 100644 index 0000000..4d1a8f7 --- /dev/null +++ b/generator/after-bake/src/Template/Equipements/edit.ctp @@ -0,0 +1,32 @@ +<nav class="large-2 medium-3 columns" id="actions-sidebar"> + <ul class="side-nav"> + <li class="heading"><?= __('Actions') ?></li> + <li><?= $this->Html->link(__('List Equipements'), ['action' => 'index']) ?></li> + <li><?= $this->Html->link(__('List Services'), ['controller' => 'Services', 'action' => 'index']) ?></li> + <li><?= $this->Html->link(__('List Equipement Modeles'), ['controller' => 'EquipementModeles', 'action' => 'index']) ?></li> + <li><?= $this->Html->link(__('List Ipmgmt'), ['controller' => 'Ipmgmt', 'action' => 'index']) ?></li> + <li><?= $this->Html->link(__('List Relais'), ['controller' => 'Relais', 'action' => 'index']) ?></li> + </ul> +</nav> +<div class="equipements form large-10 medium-9 columns content"> + <?= $this->Form->create($equipement) ?> + <fieldset> + <legend><?= __('Edit Equipement') ?></legend> + <?php + echo $this->Form->input('mac',array('readonly' => 'readonly')); + echo $this->Form->input('hostname'); + echo $this->Form->input('equipement_modele_id', ['options' => $equipementModeles]); + echo $this->Form->input('ipmgmt_id', ['options' => $ipmgmt, 'empty' => true]); + echo $this->Form->input('uplink_id', ['options' => $uplinks, 'empty' => true]); + echo $this->Form->input('service_id', ['options' => $services, 'empty' => true]); + echo $this->Form->input('relais_id', ['options' => $relais, 'empty' => true]); + echo $this->Form->input('equipement_mode_id', ['options' => $equipementModes]); + echo $this->Form->input('description'); + echo $this->Form->input('date_achat', ['empty' => true, 'default' => '']); + echo $this->Form->input('date_hs', ['empty' => true, 'default' => '']); + echo $this->Form->input('notes'); + ?> + </fieldset> + <?= $this->Form->button(__('Submit')) ?> + <?= $this->Form->end() ?> +</div> |