?>
date_acquisition);
$value = $IS_ADD ? null : ($materiel->date_acquisition ? $materiel->date_acquisition->format('d/m/Y') : null);
echo $this->MyHelper->control(
$IS_ADD, $readonlyFields, 'date_acquisition', 'Date commande (BC)',
null, date("d/m/Y"), 'text', 'datepicker', $comment, $value
);
/*
echo $this->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,
// (EP 20201125 date achat n'est plus obligatoire, mais c'est bien d'en mettre une par défaut quand même...)
'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 ? $materiel->date_acquisition->format('d/m/Y') : null),
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField('date_acquisition', $readonlyFields)
]);
*/
// - Date réception
$value_edit = null;
if ($IS_EDIT && $materiel->date_reception) $value_edit = $materiel->date_reception->format('d/m/Y');
// php5...
$value = $IS_ADD ? null : $value_edit;
echo $this->MyHelper->control(
$IS_ADD, $readonlyFields, 'date_reception', 'Date de livraison',
true, null, $type='text', $class='datepicker', $comment, $value
);
/*
echo $this->Form->control('date_reception', [
'type' => 'text',
'label' => 'Date de livraison',
'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', $readonlyFields)
]);
*/
// - Durée garantie
echo '
';
// - durée
echo '';
echo $this->Form->control('duree_garantie',
[
'type' => 'text',
'label' => 'Durée garantie',
//'style' => 'width: 100px',
'templates' => [
'inputContainer' => ' {{content}} '
],
'placeholder' => ''
]);
echo ' | ';
// - unité
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'),
]);
// - Statut
// EDIT only
//if ($IS_EDIT && $USER_IS_ADMINPLUS_OR_MORE) {
if ($IS_EDIT && $USER_IS_SUPERADMIN) {
/*
* if (in_array($role, [
* 'Administration Plus',
* 'Super Administrateur'
* ])) {
*/
echo $this->Form->control('status', [
'label' => 'Statut',
// inutile car automatique si le nom de la variable passée par le controleur respecte la norme
//'options' => $statuses,
/*
'options' => [
'CREATED' => 'CREATED',
'VALIDATED' => 'VALIDATED',
'TOBEARCHIVED' => 'TOBEARCHIVED',
'ARCHIVED' => 'ARCHIVED'
]
*/
]);
}
// - Num série
echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'numero_serie', 'Numéro de série');
/*
$f = 'numero_serie';
echo $this->Form->control($f, [
'label' => 'Numéro de série',
// EDIT only
//'disabled' => $IS_ADD ? false : $isReadonlyField($f, $readonlyFields)
'disabled' => $IS_ADD ? false : $isReadonlyField($f, $readonlyFields)
]);
*/
// - Nom utilisateur (ou destination du matériel)
//$readonly = $USER_IS_UTILISATEUR ? TRUE : FALSE;
echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'nom_user', "Nom de l'Utilisateur (ou destination du bien)");
/*
echo $this->Form->control('nom_user', [
'label' => "Nom de l'Utilisateur (ou destination du bien)",
//'empty' => 'Choisir une personne',
/////'empty' => $username,
//'default' => $username,
//'options' => $utilisateurs
//'options' => $users_option_list,
//'readonly' => $IS_EDIT ? false : $readonly,
]);
*/
// - Nom Acheteur (responsable du matériel) = celui qui crée la fiche (par défaut)
/*
$fieldType = $USER_IS_UTILISATEUR ? 'hidden' : 'input';
echo $this->Form->$fieldType('nom_responsable', [
*/
// Un role "Utilisateur" ne peut pas modifier l'acheteur, c'est forcément lui-même
/*
if ($USER_IS_UTILISATEUR) $readonlyFields[] = 'nom_responsable';
echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'nom_responsable', "Nom de l'Acheteur");
*/
$f = 'nom_responsable';
//$readonly = $USER_IS_UTILISATEUR ? TRUE : FALSE;
echo $this->Form->control($f, [
'label' => "Nom de l'Acheteur",
//'empty' => 'Choisir une personne',
//'empty' => $entity->nom_responsable,
//'default' => $entity->nom_responsable,
//'default' => $username,
'options' => $users_option_list,
//'options' => $utilisateurs
//'readonly' => $IS_EDIT ? false : $readonly,
//'readonly' => $readonly,
//'disabled' => $readonly || ( $IS_ADD ? false : $this->MyHelper->isReadonlyField($f, $readonlyFields) ),
'disabled' => $this->MyHelper->isReadonlyField($f, $readonlyFields),
]);
// EDIT only
// - Nom ancien responsable (acheteur)
if ($IS_EDIT) {
if (isset($nom_ancien_responsable)) {
echo $this->Form->control('nom_ancien_responsable', [
'label' => 'Nom ancien responsable (acheteur)',
'readonly' => true,
'default' => $nom_ancien_responsable
]);
}
}
// - Email utilisateur
echo $this->Form->control('email_responsable', [
'label' => "Email de l'Acheteur",
'readonly' => true,
// ADD only (Quand je crée une fiche, la personne responsable par défaut, c'est moi...)
'default' => $mail_responsable
]);
// - Nom Responsable du crédit
echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'resp_credit', "Responsable du crédit (par défaut l'acheteur)");
/*
$f = 'resp_credit';
echo $this->Form->control($f, [
//'label' => "Responsable du crédit (si différent de l'acheteur)",
'label' => "Responsable du crédit (par défaut l'acheteur)",
'disabled' => $IS_ADD ? false : $isReadonlyField($f, $readonlyFields)
]);
*/
// (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->MyHelper->control($IS_ADD, $readonlyFields, 'gestionnaire_id', "Nom gestionnaire de référence",
'Je ne sais pas qui choisir', $_SESSION['Auth']['User']['sn'][0]
);
/*
$f = 'gestionnaire_id';
echo $this->Form->control($f, [
// inutile car automatique si le nom de la variable passée par le controleur respecte la norme
//'options' => $gestionnaires,
//'options' => $administrateurs,
'label' => 'Nom gestionnaire de référence',
//'empty' => 'Choisir un gestionnaire',
'empty' => 'Je ne sais pas qui choisir',
// TODO: pas joli !
// ADD only
'default' => $_SESSION['Auth']['User']['sn'][0],
'disabled' => $IS_ADD ? false : $isReadonlyField($f, $readonlyFields)
]);
*/
/*
* - FOURNISSEUR (+ ajout possible)
*/
$f = 'fournisseur_id';
//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->$f ? $fournisseurs[$entity->$f] : '';
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);
/* field is disabled ?
- $disabled = 'disabled'; // disabled
- $disabled = ''; // enabled
*/
$disabled = ''; // enabled
if ( $IS_EDIT && $this->MyHelper->isReadonlyField($f, $readonlyFields) ) $disabled = 'disabled';
?>
value="=$value?>" list="fournisseurs" placeholder="choisir/ajouter un fournisseur" autocomplete="off"
>
'.$this->Html->link('Gérer les Fournisseurs', [
'controller' => 'Fournisseurs',
'action' => 'index'
]);
echo "
(CTRL-click pour ouvrir dans un nouvel onglet)";
}
?>
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->MyHelper->control($IS_ADD, $readonlyFields, 'organisme_id', null, 'Choisir un organisme');
/*
echo $this->Form->control('organisme_id', [
// inutile car automatique si le nom de la variable passée par le controleur respecte la norme
//'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', $readonlyFields)
]);
*/
// - Prix HT
echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'prix_ht', 'Prix HT (€)');
/*
$f = 'prix_ht';
echo $this->Form->control($f, [
'label' => 'Prix HT (€)',
// ADD only
//'default' => $Prix_ht
///////'default' => $materiel->prix_ht,
// EDIT only
'disabled' => $IS_ADD ? false : $isReadonlyField($f, $readonlyFields),
]);
*/
echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'budgets', 'Sur quel(s) budget(s) ?');
/*
$f = 'budgets';
echo $this->Form->control($f, [
'label' => 'Sur quel(s) budget(s) ?',
// EDIT only
'placeholder' => 'Si plusieurs, séparer avec virgule',
'disabled' => $IS_ADD ? false : $isReadonlyField($f, $readonlyFields),
]);
*/
/*
* ************************************************************************************
* PARTIE ADMINISTRATIVE (tout le monde peut la voir, mais seul un ADMIN peut l'éditer)
* ************************************************************************************
*/
// Section READONLY sauf pour ADMIN
//$READONLY = ! $USER_IS_ADMIN_OR_MORE;
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->MyHelper->control($IS_ADD, $readonlyFields, 'eotp', 'Entité(s) dépensière(s) (voir champ Budgets juste au-dessus)',
null, null, null, null, 'Si plusieurs, séparer avec virgule'
);
*/
$f = 'eotp';
echo $this->Form->control($f, [
'label' => 'Entité(s) dépensière(s) (voir champ Budgets juste au-dessus)',
//'label' => 'Entité(s) dépensière(s) (i.e. sur quel(s) budget(s) ?)',
//'label' => 'Centre(s) financier(s) / EOTP',
// EDIT only
//'disabled' => $DISABLED,
//'disabled' => $READONLY || ( $IS_ADD ? false : $this->MyHelper->isReadonlyField($f, $readonlyFields) ),
'disabled' => $this->MyHelper->isReadonlyField($f, $readonlyFields) && !empty($entity->$f),
'placeholder' => 'Si plusieurs, séparer avec virgule'
]);
// - Numéro BC
// On peut entrer le numero bon commande si le materiel est technique et qu'on est responsable du groupe
//echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'numero_commande', 'Numéro BC');
$fname = 'numero_commande';
//$BC_DISABLED = $DISABLED;
//$BC_DISABLED = $IS_ADD ? false : $this->MyHelper->isReadonlyField($fname, $readonlyFields);
if ($IS_EDIT && $USER_IS_RESPONSABLE_AND_SAME_GROUP_AS_MATERIEL && $materiel->materiel_administratif==0) $BC_DISABLED = False;
echo $this->Form->control($fname, [
'label' => 'Numéro BC',
// EDIT only
//'disabled' => $READONLY || $BC_DISABLED
'disabled' => $this->MyHelper->isReadonlyField($f, $readonlyFields),
]);
/* Champ désormais inutile
// - Code comptable
echo $this->Form->control('code_comptable', [
'label' => 'Code comptable',
// EDIT only
'disabled' => $DISABLED
]);
*/
// - Numéro labo
// EDIT only
// NON, on ne doit pas pouvoir modifier ce numéro, non mais !!!
if ($IS_EDIT)
echo $this->Form->control('numero_laboratoire', [
'label' => 'N° inventaire labo',
'id' => 'num_labo',
'disabled' => true
]);
// Num inventaire organisme
//echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'numero_inventaire_organisme', 'N° inventaire comptable/tutelles');
$f = 'numero_inventaire_organisme';
echo $this->Form->control($f, [
'label' => 'N° inventaire comptable/tutelles',
// EDIT only
//'disabled' => $DISABLED,
//'disabled' => $READONLY || ( $IS_ADD ? false : $this->MyHelper->isReadonlyField($f, $readonlyFields) ),
'disabled' => $this->MyHelper->isReadonlyField($f, $readonlyFields),
]);
// Num inventaire (ancien)
//echo $this->MyHelper->control($IS_ADD, $readonlyFields, 'numero_inventaire_old', 'Ancien N° inventaire');
$f = 'numero_inventaire_old';
echo $this->Form->control($f, [
'label' => 'Ancien N° inventaire',
// EDIT only
//'disabled' => $DISABLED,
//'disabled' => $READONLY || ( $IS_ADD ? false : $this->MyHelper->isReadonlyField($f, $readonlyFields) ),
'disabled' => $this->MyHelper->isReadonlyField($f, $readonlyFields),
]);
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', $readonlyFields)
'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');
?>