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); } }
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); } }