summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2016-06-12 14:03:27 +0200
committerLudovic Pouzenc <ludovic@pouzenc.fr>2016-06-12 14:03:27 +0200
commit94a42b092b0b365730b681855dd19d1f05f73a42 (patch)
treeedafa05ab22808d429e88dd3af1e358b19b00e65
parent696c23fd29b75f02567ccb56a9930a3823688e04 (diff)
downloadchd_gestion-94a42b092b0b365730b681855dd19d1f05f73a42.zip
chd_gestion-94a42b092b0b365730b681855dd19d1f05f73a42.tar.gz
chd_gestion-94a42b092b0b365730b681855dd19d1f05f73a42.tar.bz2
Equipement/edit : make uplink links sorted by IP + minor refactorings.
-rw-r--r--generator/after-bake/src/Controller/EquipementsController.php16
-rw-r--r--generator/after-bake/src/Template/Equipements/add.ctp9
-rw-r--r--generator/after-bake/src/Template/Equipements/edit.ctp32
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>