Les formulaires sont essentiels dans un site internet. On en trouve sur toutes les pages, pour se connecter, créer un compte, laissez un email ...
Cet exemple montre comment utiliser le widget dans vos controlleurs
$itineraire = new Itineraire($this->Core);
if ($params != "") {
$itineraire = $itineraire->GetByCode($params);
}
//Formulaire du parametrage de l'itinéraire
$this->form = new ItineraireForm($this->Core);
$this->form->Load($itineraire);
$view->AddElement(new ElementView("itineraireForm", $this->form->Render()));
<div class='col-md-12' id='itineraireTool' style='display:none'>
{{itineraireForm}}
</div>
ItineraireForm.Init();
/**
* Sauvegarde un itinieraire
*/
function SaveItineraire() {
return ItineraireHelper::SaveItineraire($this->Core, Request::GetPosts());
}
/* * *
* Sauvegarde une itinéraire
*/
public static function SaveItineraire($core, $data) {
$iteneraireForm = new ItineraireForm($core, $data);
//On valide le formulaire
if ($iteneraireForm->Validate()) {
$itineraire = new Itineraire($core);
if (isset($data["Id"]) && $data["Id"] != "") {
$id = $data["Id"];
$itineraire->GetById($data["Id"]);
} else {
$itineraire->DateCreated->Value = Date::Now();
}
$itineraire->UserId->Value = $core->User->IdEntite;
$itineraire->Code->Value = Format::ReplaceForUrl($data["Name"]);
//Catégorie 1 pour commencer car les autres ne sont pas afficher pour l'instant
$itineraire->Status->Value = 1;
$iteneraireForm->Populate($itineraire);
//On sauvegarde
$itineraire->Save();
if ($id == "") {
$id = $core->Db->GetInsertedId();
}
return $iteneraireForm->Success(array("Id" => $id));
} else {
return $iteneraireForm->Error();
}
}