?>
Form->control('date_acquisition', [
//echo $this->Form->date('date_acquisition', [
'type' => 'text',
'label' => 'Date commande (BC)',
'class' => 'datepicker',
'placeholder' => $comment,
// ADD only
//'default' => $Date_acquisition
//'default' => $materiel->date_acquisition,
'default' => date("d/m/Y"),
// A CAUSE DE CE FICHU PHP5 ET VIEUX MYSQL !!!, INUTILE EN PHP7 !!
// Affichage dd/mm/yy
//'value' => $materiel->date_acquisition->format('d/m/y'),
// Affichage dd/mm/yyyy
'value' => $IS_ADD ? null : $materiel->date_acquisition->format('d/m/Y'),
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('date_acquisition', $myReadonlyFields)
]);
// - Date réception
$value_edit = null;
if ($IS_EDIT && $materiel->date_reception) $value_edit = $materiel->date_reception->format('d/m/Y');
echo $this->Form->control('date_reception', [
'type' => 'text',
'label' => 'Date de réception',
'class' => 'datepicker',
'placeholder' => $comment,
'empty' => true,
// ADD only
//'default' => $Date_reception
'default' => $materiel->date_reception,
// php5...
'value' => $IS_ADD ? null : $value_edit,
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('date_reception', $myReadonlyFields)
]);
// - Durée garantie
echo '
';
echo '';
echo $this->Form->control('duree_garantie',
[
'type' => 'text',
'label' => 'Durée garantie',
//'style' => 'width: 100px',
'templates' => [
'inputContainer' => ' {{content}} '
],
'placeholder' => ''
]);
echo ' | ';
echo '';
echo $this->Form->control('unite_duree_garantie', [
'label' => false,
'style' => 'width: 100px',
'templates' => [
//'inputContainer' => ' {{content}} '
'inputContainer' => '{{content}} '
],
'options' => [
'Mois' => 'Mois',
'Ans' => 'Ans'
],
'default' => 'Ans'
]);
echo ' | ';
echo '
';
// - Date fin garantie
echo $this->Form->control('date_fin_garantie', [
'type' => 'text',
'label' => 'Date fin de garantie',
'placeholder' => $comment,
'class' => 'datepicker',
'default' => NULL,
// php5...
//'value' => $IS_ADD ? null : $materiel->date_fin_garantie->format('d/m/Y'),
]);
// EDIT only
// - Statut
if ($IS_EDIT && $USER_IS_ADMINPLUS_OR_MORE) {
/*
* if (in_array($role, [
* 'Administration Plus',
* 'Super Administrateur'
* ])) {
*/
echo $this->Form->control('status', [
'label' => 'Statut',
'options' => [
'CREATED' => 'CREATED',
'VALIDATED' => 'VALIDATED',
'TOBEARCHIVED' => 'TOBEARCHIVED',
'ARCHIVED' => 'ARCHIVED'
]
]);
}
// - Num série
echo $this->Form->control('numero_serie', [
'label' => 'Numéro de série',
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('numero_serie', $myReadonlyFields)
]);
// - Groupe thématique
echo $this->Form->control('groupes_thematique_id', [
'label' => $configuration->nom_groupe_thematique,
'empty' => 'N/A',
'options' => $groupesThematiques,
//'default' => $Groupes_thematique_id
//'default' => $IS_ADD ? $materiel->groupes_thematique_id : 1,
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('groupes_thematique_id', $myReadonlyFields),
]);
// - Groupe métier
echo $this->Form->control('groupes_metier_id', [
'label' => $configuration->nom_groupe_metier,
'empty' => 'N/A',
'options' => $groupesMetiers,
//'default' => $Groupes_metier_id
//'default' => $IS_ADD ? $materiel->groupes_metier_id : 1,
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('groupes_metier_id', $myReadonlyFields),
]);
// - Nom utilisateur (responsable du matériel)
/*
$fieldType = $USER_IS_UTILISATEUR ? 'hidden' : 'input';
echo $this->Form->$fieldType('nom_responsable', [
*/
$readonly = $USER_IS_UTILISATEUR ? TRUE : FALSE;
echo $this->Form->control('nom_responsable', [
'label' => "Nom de l'utilisateur",
'empty' => 'Choisir un utilisateur',
'default' => $username,
//'options' => $utilisateurs
'options' => $users_option_list,
'readonly' => $IS_EDIT ? false : $readonly,
]);
// EDIT only
// - Nom ancien utilisateur
if ($IS_EDIT) {
if (isset($nom_ancien_responsable)) {
echo $this->Form->control('nom_ancien_responsable', [
'label' => 'Nom ancien utilisateur',
'readonly' => true,
'default' => $nom_ancien_responsable
]);
}
}
// - Email utilisateur
echo $this->Form->control('email_responsable', [
'label' => "Email de l'utilisateur",
'readonly' => true,
// ADD only (Quand je crée une fiche, la personne responsable par défaut, c'est moi...)
'default' => $mail_responsable
]);
// (EP) Attention, était désactivé (commenté) pour ADD mais pas pour EDIT
// (EP) TODO: Pour Javascript only (bidouille sale à éviter...)
// Ssi le user courant est un gestionnaire, on récupère tous ses attributs
// pour pouvoir le mettre comme gestionnaire par défaut de ce matériel
$gestionnaire = TableRegistry::getTableLocator()->get('Users')
->find()
->where([
'username' => $username,
'role' => 'Administration'
])
->first();
/*
$administrateurs = TableRegistry::get('Users')->find('list', [
'keyField' => 'id',
'valueField' => 'nom'
])
->where([
'role =' => 'Administration'
])
->toArray();
*/
// - Nom du gestionnaire de ref
echo $this->Form->control('gestionnaire_id', [
'label' => 'Nom gestionnaire de référence',
'empty' => 'Choisir un gestionnaire',
'default' => $_SESSION['Auth']['User']['sn'][0],
'options' => $administrateurs
]);
// - Fournisseur (+ ajout possible)
//nouveau champ de saisie de Fournisseur, il ne se saisissait pas à l'ajout
//echo '
';
//echo $this->Form->control('fournisseur_id', [
/* Cette ligne...
echo $this->Form->control('fournisseur.name');
// ... produit ce résultat :
*/
$fournisseurs = $fournisseurs->toArray();
/*
debug($entity->fournisseur_orig);
debug($entity->fournisseur_id);
debug($entity->fournisseur);
//debug($entity);
//debug($value);
*/
$value_old = $entity->fournisseur_id ? $fournisseurs[$entity->fournisseur_id] : '';
if (isset($entity->fournisseur->name) && $entity->fournisseur->name!='')
// nouveau fournisseur
$value = $entity->fournisseur->name;
else
// ancien fournisseur
$value = $value_old;
//debug($value);
$values = array_values($fournisseurs);
// Sauvegarde de la valeur d'origine (pour voir plus tard si elle a été modifiée ou pas)
//echo $this->Form->hidden('fournisseur_orig', ['value' => $value]);
echo $this->Form->hidden('fournisseur_orig', ['value' => $value_old]);
//debug($values);
?>
Form->control('fournisseur_id');
/*
echo $this->Form->control('fournisseur_id', [
//echo $this->Form->control('fournisseur.name', [
'label' => 'Fournisseur',
'options' => $fournisseurs,
//'style' => 'width: 380px',
'empty' => 'Choisir un fournisseur',
// EDIT only
'disabled' => $IS_ADD ? false : $USER_IS_UTILISATEUR
/S
in_array($role, [
'Utilisateur'
])
S/
]);
*/
/*
echo $this->Html->link("Ajouter un fournisseur", [
'controller' => 'Fournisseurs',
'action' => 'add',
]);
*/
// Ajouter un nouveau fournisseur
/*
echo $this->Html->link(__('
Ajouter un fournisseur'), [
'controller' => 'Fournisseurs',
'action' => 'add',
$IS_ADD ? 'NEW' : $materiel->id
], [
'escape' => false,
'onclick' => 'return true;'
]);
echo '
';
*/
// - Organisme
echo $this->Form->control('organisme_id', [
'options' => $organismes,
//'style' => 'width: 380px',
'empty' => 'Choisir un organisme',
// ADD only
//'default' => $Organisme_id
'default' => $materiel->organisme_id,
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('organisme_id', $myReadonlyFields)
]);
// - Prix HT
echo $this->Form->control('prix_ht', [
'label' => 'Prix HT (€)',
// ADD only
//'default' => $Prix_ht
'default' => $materiel->prix_ht,
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('prix_ht', $myReadonlyFields)
]);
/*
* ************************************************************************************
* PARTIE ADMINISTRATIVE (tout le monde peut la voir, mais seul un ADMIN peut l'éditer)
* ************************************************************************************
*/
if ($IS_EDIT || ($IS_ADD && $USER_IS_ADMIN_OR_MORE)) {
$DISABLED = $IS_ADD ? false : !$USER_IS_ADMIN_OR_MORE;
echo '
Partie administrative';
//(EDIT only)
/* (EP) A quoi ca sert ce truc ???
echo $this->Form->checkbox('adminEdit', [
'label' => 'Editer la partie administrative',
'onchange' => 'changeAdminEdit();',
'default' => false
]);
*/
// - Centre financier (eotp)
/*
* if (in_array($role, [
* 'Administration',
* 'Administration Plus',
* 'Super Administrateur'
* ])) {
*/
echo $this->Form->control('eotp', [
'label' => 'Centre financier/EOTP',
// EDIT only
'disabled' => $DISABLED
]);
// - Numéro BC
// On peut entrer le numero bon commande si le materiel est technique et qu'on est responsable du groupe
$BC_DISABLED = $DISABLED;
if ($IS_EDIT && $USER_IS_RESPONSABLE_AND_SAME_GROUP_AS_MATERIEL && $materiel->materiel_administratif==0) $BC_DISABLED = False;
echo $this->Form->control('numero_commande', [
'label' => 'Numéro de commande',
// EDIT only
'disabled' => $BC_DISABLED
]);
// - Code comptable
echo $this->Form->control('code_comptable', [
'label' => 'Code comptable',
// EDIT only
'disabled' => $DISABLED
]);
// - Numéro labo
//(EP) NON, on ne doit pas pouvoir modifier ce numéro, non mais !!!
if ($IS_EDIT)
echo $this->Form->control('numero_laboratoire', [
'label' => 'Numéro de laboratoire',
'id' => 'num_labo',
'disabled' => true
]);
// Num inventaire organisme
echo $this->Form->control('numero_inventaire_organisme', [
'label' => 'N° inventaire organisme',
// EDIT only
'disabled' => $DISABLED
]);
// Num inventaire (ancien)
echo $this->Form->control('numero_inventaire_old', [
'label' => 'Ancien N° inventaire',
// EDIT only
'disabled' => $DISABLED
]);
echo '
';
}
/*
* ************************************************************************************
* (EDIT ONLY) PARTIE ADMINISTRATIVE AVANCÉE (superadmin only)
* ************************************************************************************
*/
// if ($role == 'Super Administrateur') {
if ($IS_EDIT && $USER_IS_SUPERADMIN) {
/*
*/
echo '
Partie administrative avancée';
/*echo $this->Form->checkbox('adminEditPlus', [
'label' => 'Editer la partie administrative avancée',
'onchange' => 'changeAdminPlus();',
'default' => false
]);*/
// - Nom créateur de la fiche
echo $this->Form->control('nom_createur', [
'label' => 'Nom créateur de cette fiche',
'disabled' => true,
//'options' => $utilisateurs
'options' => $users_option_list
]);
// - Date création
echo $this->Form->control('created', [
'type' => 'text',
'label' => 'Date de création',
//'class' => 'datepicker',
//'placeholder' => 'Cliquez pour sélectionner une date',
//'disabled' => $isReadonlyField('date_acquisition', $myReadonlyFields)
'disabled' => true
]);
// - Nom modificateur
echo $this->Form->control('nom_modificateur', [
'label' => 'Nom du modificateur',
'default' => $username,
'disabled' => true
]);
// - Date modif
echo $this->Form->control('modified', [
'type' => 'text',
'label' => 'Date de modification',
//'class' => 'datepicker',
'disabled' => true
]);
echo '
'; //
} // if superadmin
// (hidden) nom du créateur (ADD) ou du modificateur (EDIT) (sert à quoi ?)
$f = $IS_ADD ? 'nom_createur' : 'nom_modificateur';
echo $this->Form->hidden($f, [
'value' => $username
]);
?>
=$echoSubmitButtons($this, $redirect_action, $materiel->id);?>
=$this->Form->end()?>
value = TOUS, select = "choisir" (ADD) ou data (EDIT)
* - categ ==> value = TOUTES (ADD) ou from domaine (EDIT), select = "choisir" (ADD) ou data (EDIT)
* - scateg ==> value = Aucune (ADD) ou from categ (EDIT), select = "choisir" (ADD) ou data (EDIT)
* Event domaine change :
* - si select <> "choisir" ==> categ value = from domaine (select="choisir"), et vider scateg
* - si select = "choisir" ==> categ value = TOUTES (select="choisir"), et vider scateg
* Event categ change :
* - si select <> "choisir" ==> domaine select = from categ, et scateg values = from categ
* - si select = "choisir" ==> vider scateg
* Event scateg change : RIEN A FAIRE
* ************************************************************************************
*/
?>
du site...
// Et bien entendu c'est pas pris en compte ici...
//echo $this->Html->script('jquery-1.8.12');
//echo $this->Html->script('script');
//echo $this->Html->script('DatepickerConfig');
echo $this->Html->script('Verifications_dates_materiels.js');
?>