Esempio n. 1
0
 public function __construct($prefixIdClass, $type = '', $oblig = false, $retour = '', $valeurParDefaut = '', $longueurMin = -1, $longueurMax = -1, $taille = -1, $tailleAuto = false, $unite = '', $info = '', $erreur = '', $formatValide = '', $min = NULL, $max = NULL, $niveau = '')
 {
     parent::__construct(BAL_DIV);
     GSession::PoidsJavascript(2);
     $this->AddClass('jq_fill');
     if ($oblig == true) {
         $this->AddClass('jq_input_form_oblig');
     }
     if ($tailleAuto === true) {
         $this->AddClass(INPUTTEXT_JQ_AUTOWIDTH);
     }
     $this->prefixIdClass = $prefixIdClass;
     switch ($type) {
         case INPUTTEXT_TYPE_NEW:
             $this->AddClass(INPUTNEWTEXT_JQ);
             break;
         case INPUTTEXT_TYPE_LISTE:
             $this->AddClass(LISTEINPUTTEXT_JQ);
             break;
         default:
             $this->AddClass(INPUTTEXT_JQ);
     }
     $elem = new SElement($this->prefixIdClass . INPUTTEXT . $niveau);
     $elem->AjouterClasse(INPUTTEXT . $niveau);
     $elem->AddClass(INPUTTEXT_JQ_EDIT);
     if ($type === INPUTTEXT_TYPE_PASSWORD) {
         $edit = new SInput('', 'password', '', $this->prefixIdClass . INPUTTEXT_VALEUREDIT);
     } else {
         if ($longueurMax === NULL && $formatValide !== INPUTTEXT_REGEXP_DECIMAL_FV) {
             $edit = new SText($this->prefixIdClass . INPUTTEXT_VALEUREDIT . $niveau, $valeurParDefaut);
         } else {
             $edit = new SInput('', 'text', '', $this->prefixIdClass . INPUTTEXT_VALEUREDIT . $niveau);
         }
     }
     $edit->AddClass(INPUTTEXT_VALEUREDIT . $niveau);
     $edit->AddClass(INPUTTEXT_JQ_EDITVAL);
     if ($valeurParDefaut !== '') {
         $edit->AddProp(PROP_VALUE, $valeurParDefaut);
     } else {
         $edit->AddProp(PROP_VALUE, '- null -');
     }
     if ($longueurMax !== NULL && $longueurMax > 0) {
         $edit->AddProp(PROP_MAXLENGTH, $longueurMax);
     }
     if ($taille !== NULL && $taille > 0) {
         if ($longueurMax === NULL && $formatValide !== INPUTTEXT_REGEXP_DECIMAL_FV) {
             $edit->AddProp(PROP_ROWS, $taille);
         } else {
             $edit->AddProp(PROP_SIZE, $taille);
         }
     } else {
         if ($tailleAuto === true && $taille <= 0) {
             $edit->AddProp(PROP_SIZE, '1');
         }
     }
     $org = NULL;
     if ($unite !== '') {
         $org = new SOrganiseur(1, 2);
         $org->AttacherCellule(1, 1, $edit);
         if ($taille === -1) {
             $org->SetCelluleDominante(1, 1);
         }
         $org->SetTexteCellule(1, 2, strval($unite));
     } else {
         $org = $edit;
     }
     $elem->Attach($org);
     $this->Attach($elem);
     // Format valide et caractères valides (min et max quand nécessaires).
     switch ($formatValide) {
         case INPUTTEXT_REGEXP_EMAIL_FV:
             $caracteresValides = INPUTTEXT_REGEXP_EMAIL_CV;
             break;
         case INPUTTEXT_REGEXP_DECIMAL_FV:
             $caracteresValides = INPUTTEXT_REGEXP_DECIMAL_CV;
             $this->AddClass(INPUTTEXT_JQ_DECIMAL);
             if ($min !== NULL) {
                 $divMin = new SBalise(BAL_DIV);
                 $divMin->SetText(strval($min));
                 $divMin->AddClass(INPUTTEXT_JQ_MIN);
                 $divMin->AddStyle('display:none;');
                 $this->Attach($divMin);
             }
             if ($max !== NULL) {
                 $divMax = new SBalise(BAL_DIV);
                 $divMax->SetText(strval($max));
                 $divMax->AddClass(INPUTTEXT_JQ_MAX);
                 $divMax->AddStyle('display:none;');
                 $this->Attach($divMax);
             }
             break;
         case INPUTTEXT_REGEXP_TOUT_FV:
         default:
             $formatValide = INPUTTEXT_REGEXP_TOUT_FV;
             $caracteresValides = INPUTTEXT_REGEXP_TOUT_CV;
             if ($longueurMin === NULL) {
                 $longueurMin = '';
             } else {
                 if ($longueurMin <= 0) {
                     $longueurMin = 1;
                 }
             }
             if ($longueurMax === NULL) {
                 $longueurMax = '';
             } else {
                 if ($longueurMax <= 0) {
                     $longueurMax = 1;
                 }
             }
             $formatValide = str_replace('min', strval($longueurMin), $formatValide);
             $formatValide = str_replace('max', strval($longueurMax), $formatValide);
             break;
     }
     $divFV = new SBalise(BAL_DIV);
     $divFV->SetText(strval($formatValide));
     $divFV->AddClass(INPUTTEXT_JQ_FV);
     $divFV->AddStyle('display:none;');
     $this->Attach($divFV);
     if ($caracteresValides !== '') {
         $divCA = new SBalise(BAL_DIV);
         $divCA->SetText(strval($caracteresValides));
         $divCA->AddClass(INPUTTEXT_JQ_CV);
         $divCA->AddStyle('display:none;');
         $this->Attach($divCA);
     }
     // Retour.
     if ($retour !== '') {
         $divRetour = new SBalise(BAL_DIV);
         $divRetour->SetText(strval($retour));
         $divRetour->AddClass(INPUTTEXT_JQ_RETOUR);
         $divRetour->AddStyle('display:none;');
         $this->Attach($divRetour);
     }
     // Info.
     if ($info !== '') {
         $divInfo = new SBalise(BAL_DIV);
         $elemInfo = new SElement(CLASSCADRE_INFO, false);
         $elemInfo->SetText($info);
         $divInfo->AddClass(INPUTTEXT_JQ_INFO);
         $divInfo->Attach($elemInfo);
         $divInfo->AddStyle('display:none;');
         $this->Attach($divInfo);
     }
     // Erreur.
     if ($erreur !== '') {
         $divErreur = new SBalise(BAL_DIV);
         $elemErreur = new SElement(CLASSCADRE_ERREUR, false);
         $elemErreur->SetText($erreur);
         $divErreur->AddClass(INPUTTEXT_JQ_ERREUR);
         $divErreur->Attach($elemErreur);
         $divErreur->AddStyle('display:none;');
         $this->Attach($divErreur);
     }
 }
Esempio n. 2
0
 public function __construct($prefixIdClass, $typeInput = '', $oblig = false, $retour = '', $info = '', $erreur = '', $type = '', $impact = '', $dependance = '', $rechargeFonc = '', $rechargeParam = '', $changeFonc = '', $changeParam = '', $niveau = '')
 {
     parent::__construct(BAL_DIV);
     GSession::PoidsJavascript(4);
     $this->currentCategorie == NULL;
     $this->nbElemCurCat = 0;
     $this->nbCat = 0;
     $this->prefixIdClass = $prefixIdClass;
     $this->niveau = $niveau;
     switch ($typeInput) {
         case INPUTSELECT_TYPE_FICHIER:
             $this->AddClass(INPUTFILESELECT_JQ);
             break;
         case INPUTSELECT_TYPE_NEW:
             $this->AddClass(INPUTNEWSELECT_JQ);
             break;
         case INPUTSELECT_TYPE_LISTE:
             $this->AddClass(LISTEINPUTSELECT_JQ);
             break;
         case INPUTSELECT_TYPE_LISTEFIND:
             $this->AddClass(INPUTSELECTFIND_JQ);
             $this->AddClass(LISTEINPUTSELECT_JQ);
             break;
         case INPUTSELECT_TYPE_FIND:
             $this->AddClass(INPUTSELECTFIND_JQ);
             $this->AddClass(INPUTSELECT_JQ);
             break;
         default:
             $this->AddClass(INPUTSELECT_JQ);
     }
     $this->AddClass('jq_fill');
     if ($oblig == true) {
         $this->AddClass('jq_input_form_oblig');
     }
     $elem = new SElement($this->prefixIdClass . INPUTSELECT . $this->niveau);
     $elem->AjouterClasse(INPUTSELECT . $this->niveau);
     $this->Attach($elem);
     $org = new SOrganiseur(2, 2, true);
     $elem->Attach($org);
     $org->FusionnerCellule(2, 1, 0, 1);
     //$org->SetCelluleDominante(1, 1);
     $org->SetLargeurCellule(1, 1, '100%');
     $org->SetLargeurCellule(1, 2, '0%');
     // Edit.
     $element = new SElement($this->prefixIdClass . INPUTSELECT_VALEUR . $this->niveau);
     //, true, '', '', false);
     $element->AjouterClasse(INPUTSELECT_VALEUR . $this->niveau);
     $edit = new SInput('', 'text', '', $this->prefixIdClass . INPUTSELECT_VALEUREDIT . $this->niveau);
     $edit->AddClass(INPUTSELECT_VALEUREDIT . $this->niveau);
     $edit->AddClass(INPUTSELECT_JQ_EDIT);
     $element->Attach($edit);
     $org->AttacherCellule(1, 1, $element);
     // Dérouleur.
     $element = new SElement($this->prefixIdClass . INPUTSELECT_DEROULEUR . $this->niveau);
     $element->AjouterClasse(INPUTSELECT_DEROULEUR . $this->niveau);
     $element->AddClass(INPUTSELECT_JQ_DEROULEUR);
     $org->AttacherCellule(1, 2, $element);
     // Liste.
     $div = new SBalise(BAL_DIV);
     $div->AddClass(INPUTSELECT_JQ_LISTE);
     $div->AddStyle('display:none;');
     $orgListe = new SOrganiseur(1, 2, true);
     $liste = new SElement($this->prefixIdClass . INPUTSELECT_LISTE . $this->niveau);
     $liste->AjouterClasse(INPUTSELECT_LISTE . $this->niveau);
     //$liste->AddClass(INPUTSELECT_JQ_ELEMENTS);
     $divElem = new SBalise(BAL_DIV);
     $divElem->AddClass(INPUTSELECT_JQ_ELEMENTS);
     $this->liste = new STableau(true);
     $divElem->Attach($this->liste);
     //$liste->Attach($this->liste);
     $liste->Attach($divElem);
     $orgListe->AttacherCellule(1, 1, $liste);
     // Barre de défilement.
     $elemDef = new SElement($this->prefixIdClass . INPUTSELECT_LISTE_BARDEF . $this->niveau);
     $elemDef->AjouterClasse(INPUTSELECT_LISTE_BARDEF . $this->niveau);
     $elemDef->AddClass(INPUTSELECT_JQ_BARREDEFILEMENT);
     $elemDefHaut = new SElement($this->prefixIdClass . INPUTSELECT_LISTE_BARDEF_HAUT . $this->niveau);
     $elemDefHaut->AjouterClasse(INPUTSELECT_LISTE_BARDEF_HAUT . $this->niveau);
     $elemDefHaut->AddClass(INPUTSELECT_JQ_BARREDEFILEMENT_HAUT);
     $elemDef->Attach($elemDefHaut);
     $divDefBarre = new SBalise(BAL_DIV);
     $elemDefBarre = new SElement($this->prefixIdClass . INPUTSELECT_LISTE_BARDEF_BARRE . $this->niveau);
     $elemDefBarre->AjouterClasse(INPUTSELECT_LISTE_BARDEF_BARRE . $this->niveau);
     $elemDefBarre->AddClass(INPUTSELECT_JQ_BARREDEFILEMENT_BARRE);
     $divDefBarre->Attach($elemDefBarre);
     $elemDef->Attach($divDefBarre);
     $elemDefBas = new SElement($this->prefixIdClass . INPUTSELECT_LISTE_BARDEF_BAS . $this->niveau);
     $elemDefBas->AjouterClasse(INPUTSELECT_LISTE_BARDEF_BAS . $this->niveau);
     $elemDefBas->AddClass(INPUTSELECT_JQ_BARREDEFILEMENT_BAS);
     $elemDef->Attach($elemDefBas);
     $orgListe->AttacherCellule(1, 2, $elemDef);
     $div->Attach($orgListe);
     $org->AttacherCellule(2, 1, $div);
     // Retour.
     if ($retour !== '') {
         $divRetour = new SBalise(BAL_DIV);
         $divRetour->SetText(strval($retour));
         $divRetour->AddClass(INPUTSELECT_JQ_RETOUR);
         $divRetour->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divRetour);
     }
     // Info.
     $divInfo = new SBalise(BAL_DIV);
     $elemInfo = new SElement(CLASSCADRE_INFO, false);
     $elemInfo->SetText($info);
     $divInfo->AddClass(INPUTSELECT_JQ_INFO);
     $divInfo->Attach($elemInfo);
     $divInfo->AddProp(PROP_STYLE, 'display:none');
     $this->Attach($divInfo);
     // Erreur.
     if ($erreur !== '') {
         $divErreur = new SBalise(BAL_DIV);
         $elemErreur = new SElement(CLASSCADRE_ERREUR, false);
         $elemErreur->SetText($erreur);
         $divErreur->AddClass(INPUTSELECT_JQ_ERREUR);
         $divErreur->Attach($elemErreur);
         $divErreur->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divErreur);
     }
     // Type.
     if ($type !== '') {
         $divType = new SBalise(BAL_DIV);
         $divType->SetText(strval($type));
         $divType->AddClass(INPUTSELECT_JQ_TYPE);
         $divType->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divType);
     }
     // Impact (Noms des différents types de select (séparés par des ',')
     // qui doivent se recharger si changement de celui-ci).
     if ($impact !== '') {
         $divImpact = new SBalise(BAL_DIV);
         $divImpact->SetText(to_html($impact));
         $divImpact->AddClass(INPUTSELECT_JQ_IMPACT);
         $divImpact->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divImpact);
     }
     // Dépendance (Noms des différents types de select (séparés par des ',')
     // dont la valeur est importante pour le rechargement de ce select).
     if ($dependance !== '') {
         $divDep = new SBalise(BAL_DIV);
         $divDep->SetText(to_html($dependance));
         $divDep->AddClass(INPUTSELECT_JQ_DEPENDANCE);
         $divDep->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divDep);
     }
     // RechargeFonc (Nom de la fonction Ajax de rechargement de la combobox).
     if ($rechargeFonc !== '') {
         $divRecFonc = new SBalise(BAL_DIV);
         $divRecFonc->SetText(strval($rechargeFonc));
         $divRecFonc->AddClass(INPUTSELECT_JQ_RECFONC);
         $divRecFonc->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divRecFonc);
     }
     // RechargeParam (Paramètres de la fonction Ajax de rechargement de la combobox).
     if ($rechargeParam !== '') {
         $divRecParam = new SBalise(BAL_DIV);
         $divRecParam->SetText(to_ajax($rechargeParam));
         $divRecParam->AddClass(INPUTSELECT_JQ_RECPARAM);
         $divRecParam->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divRecParam);
     }
     // ChangeFonc (Nom de la fonction Ajax qui est appelée quand la valeur de la combobox change).
     if ($changeFonc !== '') {
         $divChangeFonc = new SBalise(BAL_DIV);
         $divChangeFonc->SetText(strval($changeFonc));
         $divChangeFonc->AddClass(INPUTSELECT_JQ_CHANGEFONC);
         $divChangeFonc->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divChangeFonc);
     }
     // RechargeParam (Paramètres de la fonction Ajax qui est appelée quand la valeur de la combobox change).
     if ($changeParam !== '') {
         $divChangeParam = new SBalise(BAL_DIV);
         $divChangeParam->SetText(to_ajax($changeParam));
         $divChangeParam->AddClass(INPUTSELECT_JQ_CHANGEPARAM);
         $divChangeParam->AddProp(PROP_STYLE, 'display:none');
         $this->Attach($divChangeParam);
     }
 }