Home
openMairie Framework Documentation Version 4.4
Contents
1. le 22 11 2013 1 informatique liste courrier DATEENVOI OBJETCOURR IER J EMETTEUR REGISTRE voi de devis pour 2013 11 21 a a T dupont pierre 2013 1 Vous avez de nombreux exemples d utilisation d tat et de sous tat dans les applications openMairie Une utilisation originale a t faite pour le Cerfa du recensement dans openRecensement o la place du logo il a t mis une image du Cerfa On ne peut cependant pas faire tous les tats et il est fort possible que vous ayez des tats sp cifiques Vous avez des exemples d utilisation sp cifique des m thodes de fpdf dans openElec carte lectorale liste lectorale Vous pouvez compl ter votre information avec le chapitre framework edition et regarder les possibilit s de para m trage du g n rateur generateur parametrage pour la r alisation d tat customis Vous avez maintenant termin l exemple d utilisation du Framework le chapitre suivant a pour but de vous infor mer de mani re compl te sur ce dernier 1 1 Tutoriel Cr er une application 21 openMairie Framework Documentation Version 4 4 22 Chapitre 1 Tutoriel Cr er une application CHAPITRE 2 Le framework 2 1 Le framework openMairie_exemple est le framework de base dans lequel vous pouvez d velopper votre propre application openMairie_exemple est t l chargeable sur le site de l adullact Il est propos ici de d crire le fonctionnement du
2. file f gt storage gt get Sfic Scripts permettant de visualiser d acc der au fichier 2 1 17 3 3 1 spg filephp Le script permet de t l charger le fichier Le code pour composer le lien vers ce script est le suivant lt php file_download_link spg file php if obj amp amp Schamp amp amp Sid file download link obj ob j amp amp champ champ amp amp id id else Sfile download_ link uid fic pa 2 1 17 3 3 2 spg voir php Le script permet de visualiser le fichier lt php file voir link spg voir php if ob amp amp Schamp amp amp Sid Sfile voir link obj ob j amp amp champ champ amp amp id id else file voir link uid fic gt 82 Chapitre 2 Le framework CHAPITRE 3 Le g n rateur 3 1 Le g n rateur Pr cision sur le vocabulaire utilis dans cette documentation Mod le de donn es En informatique un mod le de donn es est un mod le qui d crit de fa on abstraite comment sont repr sent es les donn es dans une organisation m tier un syst me d information ou une base de donn es cf Wikip dia Article Mod le de donn es Dans la documentation suivante le terme mod le de donn es est utilis pour d signer les classes m tier d open Mairie ainsi que les formulaires qu elles repr sentent Objet Le mot objet fait
3. httpclick lien Password Mot de passe Pagehtml Textearea pour affichage html Textdisabled Text non modifiable Selectdisabled Select non modifiable Textreadonly Text non modifiable Hidden champ cach Checkbox case a cocher oui non Upload chargement d un fichier voir voir un fichier t l charg Rvb choisir une couleur rvn avec la Palette de couleur voir framework formulaire 3 1 7 3 Les tats Seul l tat pdf est g n r par le g n rateur Dans le menu gen generateur les tats sont g n r s automatiquement avec un assistant Cet assistant vous permet de construire un tat en choisissant une table de la base en choisissant les champs mettre dans l tat L etat est enregistr dans la table om_ etat et peut tre modifi menu gt administration gt etat De la m me mani re il est possible de cr er un sous etat Il est possible de choisir le champ qui sera la cl secondaire en lien avec la table m re Le sousetat est enregistr dans la table om_sousetat et peut tre modifi 92 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 menu gt administration gt sousetat Le calcul de la largeur des colonnes est automatique dans les sous tats et l tat pdf Attention les champs blob ne sont pas pris en compte dans les ditions 3 1 7 4 les requ tes m moris es
4. 1 1 4 4 Les surcharges d openCimetiere Vous pouvez utiliser openCimetiere actuellement version 3 0 0 a5 dev qui est t l chargeable au lien suivant svn scm adullact net scmrepos svn opencimetiere trunk La base de donn es d openCimetiere est plus complexe Si les surcharges qui ont t faites dans notre exemple sont celles d openCourrier il y a d autre surcharges dans le script courrier class php d openCimetiere Les m thodes setLib setGroupe et setRegroupe permettent une pr sentation en fieldset du courrier utilisation des champs vide 1 5 voir sgl pgsql courrier form inc Il y a d autres objets m tier qui ont des surcharges int ressantes par exemple l objet obj dossier class php o vous avez un upload pour t l charger des fichiers Vous pouvez regarder galement l application openCourrier mais attention la base de donn es qui est en MySQL openCourrier fonctionne avec des restrictions d acc s par service et les m thodes de login ont t modifi es dans obj utils class php ainsi qu utilisateur class php qui a dans openCourrier un champ service l objet obj tachenonsolde class php est un exemple de surcharge de tache class php qui affiche que les t ches non sold es 1 1 Tutoriel Cr er une application 17 openMairie Framework Documentation Version 4 4 vous pouvez aussi regarder deux scripts de traitement trt num_registre php qui remet 0 le num ro de
5. BB choix des champs Utilisez ctri key pour choix multiple courrier courrier ourrier dateenvoi ourrier objetcourrier ourrier emetteur choisir la cl de s lection courrier service Import courrier dans la base openExemple Version 4 4 0 dev Documentation openMairie org En cliquant sur Import courrier dans la base vous cr ez un enregistrement ayant pour identifiant courrier service dans la table om_sousetat SELECT FROM om_sousetat LIMIT 50 E3 Modifier C modifier om_sousetat om_collectivite id libelle actif amp P 1 1 om_parametre om_collectivite gen le 12 11 2010 t 7 2 1 courrier service gen le 22 11 2013 f 1 1 5 3 Associer le sous tat courrier l tat service Vous devez rendre d abord votre sous tat courrier service actif pour pouvoir l associer Allez dans l option Sous Etat du menu Param trage 1 1 Tutoriel Cr er une application 19 openMairie Framework Documentation Version 4 4 Recherchez le sous tat courrier service et modifiez le en cochant actif premier fieldset collectivit Il vous faut maintenant associer le sous tat courrier service l tat service Allez dans l option Etat du menu Param trage Modifiez l tat service et dans le fieldset d plier Sous fat s apr s l avoir coch actif s lectionnez le sous tat courrier service Sous tat s Choisir sous tat om_parametre om_collectivite gen le 12 11 2010
6. blob texte geom geometry pour postgres 3 1 6 1 Type de champs la champ String est du type openMairie m thode setType text dans le cas g n ral hiddenstatic si modification pour cl primaire select pour cl secondaire Le champ date est du type openMairie date avec calendrier et java script de contr le de saisie de date La date est au format fran ais JJMM A AAA le champ Int est du type openMairie methode setType hidden si cl primaire en ajout hiddenstatic si cl primaire en modification text avec contr le num rique en javascript select pour cl secondaire Le champ Blob est du type openMairie textarea La longueur et la largeur sont d finis en fichier de param trage form inc La taille n est pas pris en compte dans la longueur d enregistrement Les param tres de dyn form inc permettent d tablir la longueur et la largeur d affichage d un blob max 6 nombre de ligne blob S Staille 80 taille du blob Les champs de type geometry sont des champs geom acc s a la fenetre tab_sig php 3 1 Le g n rateur 89 openMairie Framework Documentation Version 4 4 3 1 6 2 Equivalence type pgsql type openMairie L information fournie par postgresql est moins compl te que celle de mysql surtout au niveau de la longueur des champs string o il est fourni la longueur de stockage qui est gal 1 quand le stockage est variable type pgsql
7. define PATH_OPENMAIRIE getcwd core openmairie Par d faut les librairies sont incluses dans openmairie_exemple lib contient les librairies javascript php contient les librairies php 2 1 3 6 Le mode DEBUG Dans le code pour logger une information il suffit de d utiliser la ligne suivante this gt addToLog requete sig_interne maj parcelle inexistante sql EXTRA_VERBOSE_MODE Les diff rents modes DEBUG pr sents dans l application sont d finis dans le fichier core om_debug inc php EXTRA_VERBOSE_MODE mode tr s bavard affiche tous les messages VERBOSE_MODE mode bavard affiche tous les messages d erreur ainsi que toutes les requ tes ex cut es DEBUG_MODE mode debug affiche tous les messages d erreur PRODUCTION_MODE mode production il n y a pas de message Dans l applicatif on peut param trer le mode DEBUG gr ce au fichier dyn debug inc php suivant Il suffit de commenter d commenter l instruction define souhait e lt php Jx Ce fichier contient le parametrage pour le mode debug package openmairie exempl version SVN Id debug inc php 2198 2013 03 28 17 08 33Z fmichon Jx x x defined PATH_ OPENMAIRIE define PATH OPENMAIRIE require once PATH_OPENMAIRIE om_ debug inc php Jx x define DEBUG EXTRA VERBO
8. om_requete om_sig_wms om_widget om_sig_map om_etat Table courrier cl N cl automatique courrier longueur enregistrement 65 Champs courrier 11 int dateenvoi 12 date objetcourrier 5 blob emetteur 11 int service 11 int registre 20 string Sous formulaire Cl secondaire emetteur service Le g n rateur a donc d tect 2 cl s secondaires et aucun sous formulaire C est pour cela qu il propose 3 reqmo 1 reqmo global et 2 reqmos suivant la cl secondaire Par d faut seules les options du formulaire sont coch es Si vous le refaites plus tard seules celles frabriqu es par le g n rateur seront coch es Cochez les toutes courrier inc php courrier inc php courrier form inc php courrier form inc php courrier class php courrier class php courrier pdf inc php courrier reqgmo inc php courrier_emetteurregmo inc php courrier_service reqmo inc php courrier import inc php En cliquant sur valider vous avez le message 6 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 Le param trage utilis est le param trage standard Vous pouvez le modifier voir g n rateur param trage L affichage par colone est ok ce qui veut dire que la taille des colones dans le fichier pdf sera complet attention le script ne prend pas le champ blob 1 1 2 2 G n rer l
9. Les requ tes param tr es sont cr es suivant le principe suivant une requ te globale une requ te avec un champ select pour chaque cl secondaire il est possible de s lectionner la requ te g n rer Les autres champs sont s lectionn s l affichage Les requ tes sont accessibles dans l option du menu gt export 3 1 7 5 les imports Un script d import des donn es est g n r suivant le principe suivant si la cl est automatique g n ration du compteur tous les champs sont import s v rification de l existence de la cl secondaire chaque enregistrement Les tables avec cl s secondaires doivent donc tre import es en dernier 3 1 8 Param trage g n rateur Le g n rateur fonctionne de mani re autonome sans fichier de param trage Il est tout de m me possible de param trer certains l ments gr ce des fichiers de param trage d pos s dans le dossier gen dyn Il n est pas n cessaire de personnaliser toutes les variables du fichier Il est recommand de d clarer uniquement les param tres souhait es Par d faut le g n rateur prend les param tres inclus dans la classe gen 3 1 8 1 gen dyn gen inc php Il permet de d finir des param tres g n raux pouvant tre utilis s partout dans le g n rateur lt php Jxxx Mode de g n ration pour la gestion des identifiants et des r f rences Permet de choisir par quel moyen sont r cup
10. Sform gt setBloc format F Sform gt setBloc footerfont D group Sform gt setBloc footertaille F Sform gt setBloc logo D group Sform gt setBloc logotop F Sform gt setFieldset logotop F Sform gt setBloc logotop F Ouverture d un div de largeur maximum sur un seul champ Sfor gt setBIloe titre DE pT Teol 12 Ouverture d un div de largeur maximum 2 1 Le framework 49 openMairie Framework Documentation Version 4 4 Sform gt setBloc titreleft D eol 12 Sform gt setFieldset titreleft D _ Parametres du titre du document MstartClosed form gt setBloc titreleft D group Sform gt setBloc titrehauteur F form gt setBloc titrefont D group Sform gt setBloc titrealign F Sform gt setFieldset titrealign F Sform gt setBloc titrealign F Ouverture d un div de largeur maximum sur un seul champ STorm gt setBloc corps DE pt col 12 Ouverture d un div de largeur maximum Sform gt setBloc corpsleft D col_ 12 Sform gt setFieldset corpsleft D _ Parametres du corps du document MstartClosed Sform gt setBloc corpsleft D group Sform gt setBloc corpshauteur F Sform gt setBloc corpsfont D n group Sform gt se
11. gt Pour surcharger l action modifier il faut maintenant surcharger tab_actions left modifier et non plus Shref 1 lt php tab_actions left modifier array lien gt form php obj obj amp amp action 1 amp amp idx id gt amp amp premier premier amp amp advs_id advs_id amp amp recherche Srecherchel lib gt lt span class om icon om icon 16 om icon fix edit 16 title _ Modifier rights gt array list gt array obj obj _ modifier operator gt OR ordre gt 20 gt Pour surcharger l action de contenu il faut maintenant surcharger tab_actions content et non plus Shref 1 lt php tab_actions content tab_actions left modifier l l gt Pour surcharger l action supprimer il faut maintenant surcharger tab_actions left supprimer et non plus href 2 lt php Stab_actions left supprimer array lien gt form php obj obj amp amp action 26amp idx id gt amp amp premier premier amp amp advs_id advs_id amp amp recherche Srecherchel lib gt lt span class om icon om icon 16 om icon fix delete 16 title Supprimer rights gt array list gt array obj obj _ supprimer operator gt OR ordre gt 30 p gt 5
12. isError res die res gt getMessage erreur sql else this gt msg this gt msg amp nbsp _ le point trouv par l API est sauvegard amp nbsp this gt table amp nbsp id 4 1 7 data_sig ce chapitre propose de d crire la r cup ration de donn es SIG n cessaires la mise en oeuvre des scripts SIG internes openMairie 4 1 7 1 Saisir le p rim tre de sa commune Il s agit d adapter ses cartes au p rim tre de sa commune Aller sur openstreetMap http www openstreetmap org Chercher la ville exemple Gr asque Ajuster la carte aux fronti res communales Aller dans 1 onglet export et noter les coordonn es g ographiques zone exporter 4 1 L information g ographique 111 openMairie Framework Documentation Version 4 4 OpenStreetMap OpenStreetMap Recherche O suis4e armpies O Trie Grente HZY 1C6 ou post office near errples Aigar sAutres an OpenStreetMap est une carte du monde entier bbrement modfiable fate par des gens comme vous OpenStreetMap vous permet de voir modifier et utiliser des donn es g ographiques de n importe quel endroit dans te monde Historique Exporter Traces GPS journaux Zone exporter 43 4426 5 5017 E59 19 S lectionner manuellement une autre zone Format exporter gt Donn es XML d OpenStreetMap image de Mapnik 2 image d Osmarender HTML incorporable Options
13. Le message pourra tre Tag openmairie lt NOUVELLE_VERSIONS Ensuite il faut changer les EXTERNALS txt On remplace dans le fichier php EXTERNALS txt le trunk par la nouvelle version vim php EXTERNALS txt created by svn propset svn externals F EXTERNALS txt openmairie svn scm adullact net svnroot openmairie openmairie tags lt NOUVELLE VERSION gt fpdf svn scm adullact net svnroot openmairie externals fpdf tags 1 6 min pear http svn php net repository pear pear core tags PEAR 1 9 1 db http svn php net repository pear packages DB tags RELEASE 17 _13 Ensuite on applique le nouveau propset externals une fois plac dans le dossier php Attention de ne pas oublier le dans la commande svn propset cd php svn propset svn externals F EXTERNALS txt svn up Ici en faisant un svn info sur le dossier openmairie nous devons obtenir une URL comme ceci svn info openmairie URL svn scm adullact net svnroot openmairie openmairie tags lt NOUVELLE VERSION gt Si tout est ok nous pouvons valider nos modifications puis passer la publication de l application svn ci Ici on fait une copie du trunk vers le dossier tags de l application openmairie_exemple T svn cp svn ssh lt NOM_DU_DEV svn ssh lt NOM DU_DEV OPPEUR gt scm adullact net openmairie openmairie _exemple trunk OPPEUR
14. d r suppression de l identifiant existant x Exportation m mes options que cvs check out Pour exporter les sources du projet en vue d une livraison pas de r pertoires CVS dans l arborescence cd lt r pertoire d sir gt cvs export r lt nom du tag gt D lt date d sir e gt lt arborescence gt cvs export Les fichiers cvsignore sont export s et apparaissent dans l arborescence contrairement aux r pertoires CVS Des probl mes apparaissent lors d export de fichiers binaires sur plateformes h t rog nes Par exemple un export sur PC transforme les retours chariots n gt r n 7 1 2 6 Import requete cvs cvs d pserver user cvs mpl ird fr projet login 1 2 3 4 R pertoire du SERVEUR contenant les sources racine 7 1 Outils 131 openMairie Framework Documentation Version 4 4 adresse du SERVEUR CVS A Votre login vous sur le SERVEUR F le type d authentification 7 1 2 7 checkout Pour r cup rer les sources du projet en local cd lt r pertoire d sir gt cvs checkout lt arborescence gt 7 1 2 8 Divers aide cvs H nomdecommande log des commit Pour obtenir l historique d une arborescence cd lt r pertoire d sir gt cvs log lt arborescence gt L historique affiche les diff rents identifiants ou tag et les diff rent
15. des donn es dans la base dbform triggersupprimer id amp db NULL val array DEBUG false Permet d effectuer des actions avant la modification des donn es dans la base dbform triggersupprimerapres id amp db NULL val array DEBUG false Permet d effectuer des actions apr s la modification des donn es dans la base 2 1 6 4 Description de la classe formulaire class formulaire unused NULL validation maj champs array val array max array Cette classe permet une gestion compl te de l affichage d un formulaire Les m thodes de core om_formulaire class php peuvent tre surcharg es dans obj om_formulaire class php 2 1 Le framework 51 openMairie Framework Documentation Version 4 4 M thodes d affichage de widgets Les widgets sont des l ments de formulaire ils sont compos s d un ou plusieurs champs Chaque m thode permet d afficher un seul widget formulaire text champ texte format standard formulaire hidden champ non visible avec valeur conserv e formulaire password champ password formulaire textdisabled champ texte non modifiable gris formulaire textreadonly champ texte non modifiable formulaire hiddenstatic champ non modifiable la valeur est r cup r par le formulaire Fformulaire hiddenstaticnum champ num rique non modifiable et valeur r cup rer formulaire statiq Valeur affich e et non modifiable
16. description _ Cette page vous permet de remettre a 0 le numero de registre Ce traitement est a faire en debut d annee Sf gt displayDescription description TEST VALIDATION SI 0 affichage du numero de registr SI 1 mise 0 du registre et affichage du r sultat if validation 0 Svalidation 1 REQUETE DU REGISTRE sql select id from registre _seq Sres1i f gt db gt getOne sql Sf gt isDatabaseError resl AFFICHAGE DANS UN FIELDSET echo lt fieldset class cadre ui corner all ui widget content gt n echo t lt legend class ui corner all ui widget content ui state active gt echo _ Registre lt legend gt if res1 0 echo lt br gt _ le dernier no du registre est amp nbsp amp nbsp S resl amp nbsp enbsp else echo lt br gt _ vous avez deja fait une remise a 0 lt br gt echo lt form method POST action num registre php validation Svalidation name f1 gt echo lt fieldset gt BOUTON DE VALIDATION echo t lt div class formControls gt echo lt input type submit value remise a 0 du registre M amp enbsp gt echo lt div gt echo lt form gt T else validation 1 T VALORISATION DE valF valF array valF id 0 REQUETE MISE A JOUR avec autoExecute
17. format A4 footer etat footerfont helvetica etat footerattribut I etat f otertaille 87 logo etat logo lLogopdf png etat logoleft 58 Setat logotop 7 titre Setat titreleft 41 Setat titretop 36 Setat titrelargeur 130 Setat titrehauteur 10 Setat titrefont helvetica Setat titreattribut B Setat titretaille 15 3 1 Le g n rateur 95 openMairie Framework Documentation Version 4 4 e e e e e e e e e e e e eirt tit rps us et s se rebordure 0 realign C corpsleft 7 corpstop 57 corpslargeur 195 corpshauteur 5 corpsfont helvetica corpsattribut corpstaille 10 corpsbordure 0 corpsalign J at font helvetica _margeleft 8 _margetop 5 _margeright 5 a E a dt to tt tt dt tt dt Oo Ur Ur tn S S S 3 1 8 6 gen parametres longueurt variable paramet titre sousetat sousetat sousetat sousetat sousetat sousetat sousetat sousetat sousetat interva Ssousetat Ssousetat entete Ssousetat Ssousetat couleurtexte 0 0 0 dyn sousetat inc php ableau 195 f
18. gt G n rateur Vous devez avoir 3 nouveaux boutons courrier service et emetteur Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 G n ration objet openexemple pgsql e G n rer tous les objets z courrier amp om_dashboard 3 6 emetteur I 07 20 K E om requete X JE 0m sig map_wms x le om_utilisateur amp om_collectivite LA l om_etat lt om_parametre v CA om_lettretype K e om_profil CA om_sig_map_comp CA om_sig_map amp om_sig_wms 4 CA om_widget amp om_sousetat La amp service 3e x De De pe x De De Le 1x EERE Avant de commencer l utilisateur apache www data doit avoir les droits d criture dans les repertoires gen sql et obj 1 1 2 1 G n rer les formulaires et dition du courrier En appuyant sur le bouton de courrier vous avez les choix de g n ration Choix des fichiers g n rer Selection Nom Fichier Generer formulaire g courrier inc php gen sql pgsql courrier inc php Le fichier n existe pas ou n est pas accessible g courrier inc php sql pgsql courrierinc php Le fichier n existe pas ou n est pas accessible g courrier form inc php gen sql pgsql courrier form inc php Le fichier n existe pas ou n est pas accessible g courrier form inc php sql pgsql cou
19. res2 f gt db gt autoExecute registre_seq valF DB_AUTOQUERY_UPDAT f gt isDatabaseError res2 Ra AFFICHAGE DU RESULTAT AVEC UN FIELDSET echo lt fieldset class cadre ui corner all ui widget content gt n echo t lt legend class ui corner all ui widget content ui state active gt echo _ Registre lt legend gt echo lt center gt lt b gt _ remise a 0 du registre reussie lt b gt lt center gt echo lt fieldset gt 2 1 Le framework 75 openMairie Framework Documentation Version 4 4 validation Notes Registre _ texte permet l utilisation de poedit pour la traduction de texte class cadre ui corner all ui widget content suivant css de jquery 2 1 15 Importer des donn es en csv Il est possible d importer des donn es suivant des scripts pr param tr s mais qui sont modifiables Pour lancer le menu import prenez l option administration gt import import_script php permet les imports dans la base de donnees de fichier au format csv au moyen d un formulaire de chargement de fichier Exemple de format de fichier importer utilisateur txt nom login pwd profil Georges DANDIN Georges 21232f297a57a5a743894a0e4a801fc3 3 Raymond DAVOS Raymond fe0lce2a7fbac8fafaed7c982a04e229 3 Albert DUPONT Albert O0O5c 7e24700502a079cdd8801
20. taille gt Array om_ parametre gt 11 libelle gt 20 valeur gt 50 om_collectivite gt 11 max gt Array om_ parametre gt 11 2 1 Le framework 59 openMairie Framework Documentation Version 4 4 libelle gt 20 valeur gt 50 om_collectivite gt 11 lib gt Array om parametre gt Om parametre libelle gt Libell valeur gt Valeur om_collectivite gt Om collectivite groupe gt Array om_ parametre gt libelle gt valeur gt om_collectivite gt select gt Array om_parametre gt Array 0 gt 1 gt libelle gt Array 0 gt 1 gt 1 gt valeur gt Array 0 gt I om_collectivite gt Array onchange gt Array om_parametre gt libelle gt valeur gt om_collectivite gt onkeyup gt Array om_parametre gt libelle gt valeur gt om_collectivite gt onclick gt Array om_parametre gt libelle gt valeur gt om_collectivite gt regroupe gt correct gt 2 1 9 Les ditions openMairie permet d effectuer des ditions au format PDF Ces ditions sont param tr es depuis l interface du logiciel Pour chaque dition PDF des champs de fusion permettent de r cup rer dynamiquement les donn es imprimer Les ditions sont accessibles dans le menu par parametrag gt etat parametrag gt
21. v nement onkeyup formulaire setOnclick permet de d finir des actions sur l v nement onclick 54 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 formulaire setvalF permet de traiter les donn es avant insert update dans la base de donn es formulaire setGroupe obsol te depuis 4 3 0 formulaire setRegroupe obsol te depuis 4 3 0 formulaire setBloc champ contenu libelle style permet d ouvrir fermer contenu D F DF une balise div sur un champ champ avec un libell libelle et un attribut class style formulaire setFieldset champ contenu libelle style permet d ouvrir fermer contenu D F DF un fieldset sur un champ champ avec une l gende libelle et un attribut class style 2 1 7 Les actions vers formulaires Les liens vers les formulaires sont principalement dans les tableaux et formulaires de consultation d objets 2 1 7 1 Actions des tableaux La surcharge des actions de tableaux se fait via les scripts sql sgbd objet inc php L ajout d actions se pr sente de cette fa on lt php Actions en coin corner ajouter tab_actions corner ajouter array lien gt form php obj obj amp amp action 0 id gt amp amp advs_id S Sadvs_id amp amp itricol tricol l amp amp valide
22. Administration Choisir alors SVN puis cliquer sur le bouton Mettre jour Il faut ensuite attendre le temps d attente est variable entre 30 minutes et plusieurs heures que le d p t subversion soit activ Etape 3 Cr er la structure du d p t Ici nous allons cr er la structure standard d un d p t Subversion trunk tags branches svn mkdir svn ssh lt NOM DU DEVELOPPEUR gt scm adullact net svnroot lt NOM DU PROJET gt trunk svn ssh Etape 4 Importer le code sur le nouveau d p t Subversion 7 12 9 5 1 Cas1 Si lapplication doit tre utilis e telle qu elle a t r cup r e sur le CVS alors nous allons l importer directement dans le dossier trunk svn import lt NOM DU _MODULE gt svn ssh lt NOM DU_DEVELOPPEUR gt scm adullact net svnroot lt NOM_DU_PROJET 7 1 2 9 5 2 Cas2 Dans le cas de figure o l application va tre migr e vers OM4 nous allons placer le code r cup r sur le CVS dans une branche du d p t correspondant sa version svn import lt NOM DU _MODULE gt svn ssh lt NOM DU_DEVELOPPEUR gt scm adullact net svnroot lt NOM_DU_PROJET Dans ce cas il faut donc importer le nouveau code dans le dossier trunk Soit le d veloppement du projet n a pas encore commenc et il suffit de suivre le tutorial versions svn Importer un nouveau projet Soit le d veloppement
23. Cette page vous permet de visualiser les ditions disponibles dans l application E Choix de l dition courrier emetteur collectivit param tre s service openExemple Version 4 4 0 dev Documentation openMairie org Recherche 1 1 Tutoriel Cr er une application 11 openMairie Framework Documentation Version 4 4 pour en savoir plus voir framework edition Export gt Requ tes M moris es Cette option affiche les requ tes m moris es Export Requ tes m moris es Les requ tes m moris es permettent d exporter des donn es de la base de donn es pour une utilisation externe l application Veuillez cliquer sur l objet exporter pour acc der un formulaire vous permettant de choisir les param tres de l export E Choix de la requ te m moris e courrier courrier_emetteur courrier_service emetteur collectivit droit param tre Param tres d une collectivit profil utilisateur service openExemple Version 4 4 0 dev Documentation openMairie org pour en savoir plus voir framework regmo Vous pouvez acc der aux ditions en appuyant dans le formulaire d affichage sur l imprimante Vous pouvez acc der au fichiers d import Administration gt Import Cette option affiche les scripts d imports Import Cette page vous permet d importer des donn es au format CSV directement dans la base de donn es BB Choix de la table d import Table courri
24. Le framework 65 openMairie Framework Documentation Version 4 4 Utilisateur idutilisateur int8 automatique L nom var30 proifil int2 login var30 libelle profil var30 pwd var100 ajouter profil int2 nodifier ajouter supprimer modifier formulaire supprimer formulaire droit var30 profil int2 ajouter modifier supprimer formulaire 2 1 11 2 Les r gles Le droit sur un objet porte le nom de l objet pour chaque objet il existe deux types de droits g n raux il n est compos que du nom de l objet et permet d acc der toutes les actions sur celui ci sp cifique il se compose du nom de l objet puis d un suffixe D tails des suffixes de droits _tab permet d acc der au tableau _ajouter permet d ajouter un objet _modifier permet de modifier l objet _supprimer permet de supprimer l objet _consulter permet de consulter l objet 2 1 11 3 La multi collectivit Les collectivit s peuvent tre de niveau 1 ou de niveau 2 Les utilisateurs de chaque collectivit h ritent de ce niveau Les utilisateurs de niveau 1 n ont acc s qu leur collectivit tandis que les utilisateurs de niveau 2 ont acc s toutes les collectivit s disponibles Lors de la conception de la base de donn es un champ om_collectivite peut tre ajout chaque table ayant besoin d un filtrage par coll
25. Outils CHAPITRE 8 Contributeurs par ordre alphab tique atReal Thierry Benita Romain Beylerian Nicolas Haye Nicolas Meucci Florent Michon Virginie Pihour Francois Raynaud Sofien Timezouaght 139
26. faut ce fichier installe la base de donn es et les donn es n cessaires aux trois environnements suivants l environnement de d veloppement l environnement de d monstration l environnement de tests Note Ce fichier comporte l initialisation des commandes postgis par d faut pour la derni re version de postgis Les commandes pour l ancienne version sont pr sentes et comment es dans ce m me fichier 2 1 2 2 Param trage de la connexion la base de donn es Le param trage de la connexion la base de donn es se fait dans le fichier dyn database inc php Note Dans le framework le sch ma utilis par d faut est openexemple dans les applicatifs c est normalement le nom de l applicatif lt APPLICATIF gt par exemple openelec opencimetiere lt php ET Ce fichier permet le param trage de la connexion la base de donn es chaque entr e du tableau correspond une base diff rente Attention l index du tableau conn repr sente l identifiant du dossier dans lequel seront stock s les fichiers propres a cette base dans l application package openmairie exempl version SVN Id database inc php 2302 2013 05 23 1870437222 fmichon PostGresSQOL conn 1 array openExemple Titre pgsql Type de base pgsql Type de base postgres Login postgres Mot de passe tcp Protocole de connexion localhost N
27. form maj Permet de d finir l attribut onkeyup sur chaque champ form setOnclick amp form maj Permet de d finir l attribut onclick sur chaque champ form setGroupe amp form maj Permet d aligner plusieurs champs obsol te depuis la version 4 3 0 form setRegroupe amp form maj Permet de regrouper les champs dans des fieldset obsol te depuis la version 4 3 0 48 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 dbform setLayout amp form maj M thode de mise en page elle permet de g rer la hi rarchie d ouverture et fermeture des balises div et fieldset avec les m thodes formulaire setBloc champ contenu libelle style permet d ouvrir fermer contenu D F une balise div sur un champ champ avec un libell libelle et un attribut class style une liste de classes css pour fieldset est disponible group permet une mise en ligne des champs contenu dans le div et col_1 col_12 permet une mise en page simplifi e par exemple col_ 1 permet de d finir une taille dynamique de 1 12 me de la page col_6 correspond 6 12 soit 50 de l espace disponible il est possible de cr er et ajouter des classes css aux diff rents div afin d obtenir une mise en page personnalis formulaire setFieldset champ contenu libelle style permet d ouvrir fermer contenu D F un field
28. rateur Nous allons dans le prochain chapitre modifier la base et reg n rer les crans sans mettre en danger votre person nalisation 1 1 4 Modifier la base et reg n rer Le framework openMairie permet de modifier la base et prendre en compte ces modifications en reg n rant les scripts sans mettre en p ril la personnalisation que vous avez effectu e Nous vous proposons de rajouter un champ registre dans la table courrier et de rajouter l adresse dans la table emetteur 1 1 Tutoriel Cr er une application 15 openMairie Framework Documentation Version 4 4 1 1 4 1 Rajouter un champ registre dans courrier Il est propos de rajouter un champ registre dans le courrier dont le but est de stocker le num ro de registre du courrier sous la forme annee_numero_d_ordre Nous allons d abord cr er un champ registre dans la table courrier de la mani re suivante ALTER TABLE courrier ADD registre VARCHAR 20 Vous devez reg n rer votre application courrier dans l option du menu Administration gt G n rateur gt Cour rier et laisser coch es les options par d faut gen obj courrier class php gen sql pgsql courrier inc php gen sql pgsql courrier form inc php Validez l op ration Vous pouvez remarquer si vous allez sur le formulaire d ajout qu il y a un nouveau champ registre Votre person nalisation n est pas affect e Nous voulons que le num ro de registre se mette en ajout
29. thodes sp cifiques l application sont dans obj utils class php qui h ritent de la class om_application class php d openmairie Vous pouvez surcharger les classes d om_application class php dans utils class php Exemple surcharge de la m thode login pour conserver le service d un utilisateur en variable session dans openCourrier Ces classes contiennent les m thodes utilis es par le framework mais qui peuvent vous aider d velopper les scripts compl mentaires de votre application Les scripts compl mentaires sont mis en r pertoire app et peuvent tre cr er pour faire un traitement remise 0 d un registre archivage export faire un sous programme sp cifique appell par un formulaire bible php dans openCourrier faire une recherche avec un affichage particulier Les scripts javascripts sont mis dans le fichier app js script js Les images sp cifiques sont stock es dans app img 2 1 14 1 R aliser un script complementaire Il est propos ici de vous montrer comment r aliser ce script compl mentaire Le script commence obligatoirement par un appel la biblioth que utils class php et la creation d un objet f require_once obj utils class php f new utils NULL courrier _ recherche ico_recherche png recherche Les parametres de l objet sont les suivants flag si flag Null affichage complete nonhtml pas d affichage htmlonly tout les elements
30. 1 2 2 3 5 Les actions personnalis es Red finir les actions avec la nouvelle mani re Les actions personnalis es doivent tre d fini selon la nouvelle mani re Exemple lt php tab_actions left edition array lien gt pdf pdfetat php obj om collectivite amp amp idx eid gt lib gt lt span class om icon om icon 16 om icon fix pdf 16 title _ Edition gt Ei lajax gt false ordre gt 21 gt 5 1 2 2 3 6 D finition de l action La premi re cl de tab_actions permet choisir la position d affichage corner pour les actions en coin left pour les actions de gauche 5 1 Historique amp Mises niveau 119 openMairie Framework Documentation Version 4 4 La seconde cl de tab_actions permet de d finir la nouvelle action Cette cl doit tre diff rente de ajouter consulter modifieret supprimer Les cl s lien idet lib s utilise de la m me mani re qu avant 5 1 2 2 3 7 D finition du mode d affichage en sous tableau La cl ajax permet d indiquer si l action doit tre affich e en ajax ou non dans les sous tableaux true l action utilisera la fonction ajaxIt false l action n utilisera pas la fonction a jaxIt 5 1 2 2 3 8 D finition de l ordre d affichage La cl ordre permet de d terminer l odre d affichage par rap port aux autres actions Chaque action dispose d
31. DEBUG false Cette m thode permet la modification de donn es dans la base elle appelle toutes les m thodes 50 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 de traitement et v rification des donn es retourn es par le formulaire dbform supprimer val array amp db NULL DEBUG false Cette m thode permet la suppression de donn es dans la base elle appelle toutes les m thodes de traitement et v rification des donn es retourn es par le formulaire Gestion des transactions lors de l appel aux m thodes d actions Afin de verifier les erreurs de base de donn es la m thode isError est appel e si la valeur true lui est pass e en second param tre elle ne stop pas l execution mais retour true ou false Cela dans le but d appeler ces m thodes sur des objets m tier instanci s manuellement dans des contextes qui n utilise pas la classe formulaire Exemple lors de la cr ation d un web service qui instancierait une classe si une erreur de base de donn es se produit le script s arr te et aucun message ne peut tre transmis au client du web service ce qui ne se produit pas si le second param tre est d fini true Il est important d instancier un objet m tier et d appeler les m thodes ajouter modifier ou supprimer pour effectuer un changement sur celui ci car toutes les m thodes de trigger seront appel es M thodes appel es lors de la validation dbfor
32. F htaccess D pgsql app Contient tout les scripts sp cifiques l applicatif que ce soit des javascripts ou des images ou des scripts PHP D app D css os D img D js dyn Contient les fichiers de param trage de l applicatif D dyn F htaccess gen Contient les scripts obj et requ tes sql g n r s par le g n rateur D gen F htaccess D dyn D inc D obj D sql D pgsql 24 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 locales Contient les fichiers de traduction de l applicatif D locales F htaccess obj Contient les objets m tiers surchargeant les objets g n r s D obj F htaccess sql Contient les scripts sql surchargeant les scripts g n r s D sal F htaccess I D pgsql tests Contient les jeux de tests unitaires et fonctionnels de l applicatif D tests F htaccess tmp Contient les fichiers temporaires cr s par l applicatif D tmp F htaccess trs Contient les fichiers stock s par l applicatif D trs F htaccess I D 1 2 1 Le framework 25 openMairie Framework Documentation Version 4 4 2 1 1 2 Les r pertoires du framework Ces r pertoires sont ceux qui sont issus du framework c est dire qu ils ne sont pas dans l applicatif lui m me Par exe
33. Format PNG 2 chelle 1 27500 max 1 13500 OpenStreetMap est gracieusement h berg par the UCL VR Centre imperial College London et Bytemark Hosting D autres sponsors du projet sont list s dans les wiki Taille de l image 1304 x 687 Dans le fichier dyn var_sig inc modifier le tableau de variables avec les coordonn es de la mani re suivante Scontenu_etendu contenu_etendu 0 array 5 5155 43 4081 5 5781 43 4426 1 array greasque Modifier les cartes de om_sig_point 4 1 7 2 R cup rer les donn es de l IGN Les bases suivantes sont fournies gratuitement aux collectivit s base topographique base parcellaire base adresse L application openReferentiel Vitrolles permet de cr er un r f rentiel local sur la collectivit Les donn es sont fournies par d partement Il faut r cup rer les fichiers shape dans une base IGN puis ensuite construire le r f rentiel de la commune avec openReferentiel 4 1 7 3 Recup rer des donn es shape Il est propos un exemple de r cup ration de donn es parcelle Les donn es de l IGN sont fournies aux communes par d partement Ins rer le fichier parcelle dans la base exemple IGN shp2pgsql s 2154 I D W LATIN1 PARCELLE SHE psql ign Il est cr er dans la base ign une table parcelle d crite ci dessous 112 Chapitre 4 L information g ographique openMairie Framework Documentation V
34. Pour changer votre configuration d commenter la ligne et modifier les extensions avec des comme s parateur Sconfig upload_extension gif jpg jpeg png txt pdf csv La configuration de la taille maximale des fichiers dans le module upload php Pour changer votre configuration d commenter la ligne et modifier la taille La taille maximale est en mo Sconfigl upload_ taille max str_replace M ini _ get upload_ max_filesize x 1024 Le th me de l application A partir de la version 3 1 0 le theme n est plus g r dans config inc php Il est initialis dans EXTERNALS TXT du repertoire om theme version 4 2 0 exemple pour om ui _darkness om_theme svn scm adullact net svnroot openmairie externals jquery ui theme om_ui darkness tags 1 8 14 2 1 3 5 Le Parametrage des librairies Le param trage de l acc s aux librairies se fait dans dyn include inc php Ce fichier permet de configurer les paths en fonction de la directive include_path du fichier php ini Vous pouvez aussi modifier ces chemins avec vos propres valeurs si vous voulez personnaliser votre installation PEAR array_push include getcwd php pear DB 36 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 array_push include getcwd php db FPDF array_push include getcwd php fpdf OPENMAIRIE dans CORE depuis la version 4 2 0
35. avoir une cl primaire compos e d une seule colonne ou une colonne portant le m me nom que la table les cl s trang res doivent r f rencer des tables remplissant la condition ci dessus Si l une de ces conditions n est pas satisfaite les interfaces de g n ration affichent une erreur 3 1 3 2 Contraintes du syst me de fichiers Le g n rateur cr e les classes m tier de l application ainsi que les fichiers de surcharge Pour pouvoir cr er ces fichiers le serveur web PHP doit avoir les droits d criture dans les dossiers suivants gen obj gen sql pgsql gen sql mysql obj sql pgsql sql mysql Si des droits sont manquants les scripts genauto et gensup ne permettent pas de g n rer ces fichiers que le serveur ne peut pas crire le script genful1l quant lui affiche des messages apr s la g n ration indiquants quels fichiers ne sont pas accessibles ces fichiers ne sont bien entendu pas g n r s 3 1 4 D finition des mod les de donn es 3 1 4 1 L identifiant Chaque mod le de donn es doit avoir un champ destin contenir l identifiant des objets Sans ce champ il n est pas possible de cr er un mod le 3 1 Le g n rateur 85 openMairie Framework Documentation Version 4 4 D finition de l identifiant Il suffit d ajouter la contrainte SQL PRIMARY KEY une colonne d une table pour cr er un champ identifiant Il sera ensuite automa
36. classes openMairie Il vaut mieux utiliser le g n rateur pour initialiser les classes m tiers Le g n rateur surcharge la classe om_dbformdyn class php par rapport aux informations de la base classe abstraite lt classe m tier g n r e lt classe m tier 1 lt classe m tier 2 openMairie depuis la base om_dbformdyn class php lt gen obj nom_ objet class php lt obj nom_ objet class php Exemple avec concession d openCimetiere om_dbformdyn class php lt gen obj emplacement class php lt obj emplacement class php lt obj concession class php La classe dbformdyn class php fait appel la classe formulaire dyn class php pour afficher le formulaire Il est cr 2 objets un objet db qui fait la connexion avec la base un objet form qui d crit le formulaire 2 1 8 2 L objet db db est l objet de connexion a la base dont les propri t s sont les suivantes DB_pgsql Object phptype gt pgsql dbsyntax gt pgsql features gt Array limit gt alter new_link gt 4 3 0 numrows gt 1 pconnect gt 1 prepare gt ssl gt 1 transactions gt 1 errorcode_map gt Array connection gt Resource id 19 dsn gt Array phptype gt pgsql dbsyntax gt pgsql username gt postgres password gt postgres protocol gt tcp hostspec gt localhost port gt 5432 socket gt 58 Chapitre 2 Le framework openMai
37. de fusion peuvent tre mis en majucule ou en minuscule selon les besoins gr ce aux balises lt MAJ gt lt MAJ gt et lt min gt lt min gt EX Requ te SQL SELECT nom as nom FROM A Cette phrase dans un PDF Lorem nom dolor sit amet lt MAJ gt nom lt MAJ gt adipiscing elit Curabitur feugiat deviendra Lorem nom dolor sit amet NOM adipiscing elit Curabitur feugiat Les variables commen ant par amp sont celles d finies dans dyn varpdf inc exemple amp aujourdhui et dans la table om_ parametre 2 1 9 3 Param trer des sous tats Il est conseill d utiliser l assistant sous etat du g n rateur Les param tres sont les suivants texte et caract ristique du Titre Intervalle avant et apr s le tableau Ent te de tableau nom de colonne caract ristique du tableau caract ristique des cellules total moyenne nombre requ te SOL Pour le titre les zones entre crochets sont les champs de fusion s lectionn s par la requ te Les variables commen ant par amp sont celles d finies dans dyn varpdf inc exemple amp aujourdhui et dans la table om_ parametre 2 1 Le framework 61 openMairie Framework Documentation Version 4 4 2 1 9 4 Param trer des lettres type Il est conseill d utiliser l assistant lettre type du g n rateur Les param tres sont les suivants orientation portrait ou paysage format A4 A3 position et nom du logo titre de la let
38. de mani re automatique une fois le formulaire valid Il faut donc surcharger les m thodes suivantes dans obj courrierclass php pour que registre ne soit pas modifiable function setType amp S Sform maj parent setType form maj form gt setType registre hiddenstatic pour la mise jour de la s quence avant l ajout de 1 enregistrement function triggerajouter id amp Sdb val SDEBUG prochain numero de registr fonction DB pear temp db gt nextId registre fabrication du numero annee_no_d_ordre temp date Y Stemp Sthis gt valF registre temp Si vous souhaitez que registre apparaisse dans l affichage de la table vous devez aussi modifier la variable cham pAffiche de sql pgsql courrier inc de la mani re suivante SchampAffiche array courrier courrier as _ courrier fto_char courrier dateenvoi DD MM YYYY as _ dateenvoi concat emetteur nom emetteur prenom as _ emetteur service libelle as service registre Votre affichage de la table courrier est modifi 1 1 4 2 Rajouter l adresse dans emetteur Il est propos de rajouter l adresse de l emetteur savoir le libell le code postal et la ville La requ te est la suivante ALTER TABLE emetteur ADD adresse VARCHAR 40 ADD cp VARCHAR 5 A
39. du projet a d j commenc et il suffit d importer le dossier en cours de d veloppement attention il ne faut pas que des dossiers svn soient pr sents dans ce dossier et il faut prendre soin de supprimer les dossiers r cup r s depuis les EXTERNALS avant l import svn import lt NOM_DU_DOSSIER gt svn ssh lt NOM DU_DEVELOPPEUR gt scm adullact net svnroot lt NOM_ DU_PRO Il faut bien sur valider les EXTERNALS pour r cup rer les librairies externes 7 1 3 GIT Site officiel du projet GIT 7 1 4 Meld Site officiel du projet Meld exemple d utilisation meld openmairie_recensement svn openmairtrunck trunk 7 1 Outils 133 openMairie Framework Documentation Version 4 4 7 1 5 POEdit POEdit est un diteur de traductions de cha nes en plusieurs langues Les cha nes pr sentes dans l interface des applications openMairie sont celles pr sentes dans le code Elles ne peuvent pas comporter d accent Les tapes sont les suivantes 1 avoir dans le code php les cha nes traduire en texte sans accent ni caract res sp ciaux 2 pr parer les dossiers de traductions dans le dossier de locales 3 avoir pr alablement install et configur POEdit 4 configurer le projet dans POEdit et effectuer scan du code afin de d tecter les cha nes traduire 5 traduire les cha nes dans POEdit et sauvegarder 7 1 5 1 Sp cification dans le code des cha nes traduire Les cha nes p
40. du widget Upload 2 1 17 3 1 1 Contraintes Les contraintes sont rajouter dans la classe m tier de l objet concern dans la m thode setSelect Exemple de configuration de l ajout de contraintes de contr les de la taille maximale et de l extension lors de l upload de fichier lt php params array constraint gt array size_max gt 2 extension gt pdf txt odt F gt La taille maximale est en mo et la liste des extensions est une cha ne de caract res 2 1 17 3 1 2 M tadonn es Il y a des m tadonn es globales et sp cifiques Les globales sont d finies dans obj om_db_ form class php dans l attribut metadata_global Exemple de configuration lt php var metadata_ global array metadonnel gt m thodeQuiRetourneLaBonneValeurl Mmetadonne2 gt m thodeQuiRetourneLaBonneValeur2 2e Les specifiques sont ajouter en attribut de la classe m tier de l objet concern Exemple de configuration de l ajout de m tadonn es lt php var metadata array champ gt array Mmetadonnel gt m thodeQuiRetourneLaBonneValeur1 metadonne2 gt m thodeQuiRetourneLaBonneValeur2 2 Les cl s de ces tableaux sont les noms des m tadonn es les valeurs associ es sont les noms des m thodes qui retournent les m tadonn es 2 1 Le framework 81 openMairie Framework Documentation Version 4 4 R cup ration du fichier
41. est param tr de la mani re suivante lt php Soptions array type gt wildcard left gt 7 right gt gt left d termine dans la requ te SQL de recherche le caract re ajout au d but gauche de la valeur recher ch e right d termine dans la requ te SQL de recherche le caract re ajout en fin droite de la valeur recherch e Avec cette configuration lorsque le mot admin est recherch dans une colonne toutes les valeurs contenant admin sont retourn es En modifiant la configuration de cette mani re lt php Soptions array type gt wildcard left gt right gt gt Seules les valeurs commen ant par admin seront retourn es Enfin avec 42 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 lt php Soptions array type gt wildcard left gt right gt 2 gt Seules les valeurs gales exactement admin seront retourn es 2 1 5 3 Configuration des crit res de recherche La recherche avanc e ne fonctionnera pas tant que la liste des champs du formulaire multi crit res n aura pas t cr e Ces champs sont appel s ici des crit res de recherche Configuration simple Un crit re de recherche est repr sent par un tableau PHP contenant sa configuration lt php Schamps identifiant u
42. externes html avec body vide right droit g r en om_droit vide ne verifie pas title titre affich icon icone affich help aide affich utils class php fait la Verification si 1 utilisateur est authentifi et si 1 utilisateur a le droit util class surcharge core om_application class php qui contient les scripts de base du framework Si le param tre right est vide vous pouvez faire appel aux m thodes suivantes 72 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 isAccredited a le droit ou pas isAuthentified si non authentifi il est rejet f gt setRight obj affecte un droit d acces f gt isAuthorized verification que 1 utilisateur acc de Affectation des variables en dehors du constructeur f gt setTitle ent f gt setIicon Sico Sf gt setHelp obj f gt setFlag NULL affichage Sf gt display Pour executer une requ te dans un fichier sql vous devez stocker votre requ te dans le r pertoire sql type de_sgbd nom_de_requete inc afin de pr server la portabilit de vos travaux sur d autres sgbd appel au fichier requ te include sql f gt phptype courrier_scr inc lancement de la requete sql_ courrier et test erreur res f gt db gt query sql_ courrier f gt isDatabaseError res Pour parcourir les enregistrements vous utilisez les m thodes dbpear suivantes du debut la fi
43. framework En programmation orient e objet un framework est typiquement compos de classes m res qui seront d riv es et tendues par h ritage en fonction des besoins sp cifiques chaque logiciel qui utilise le framework http fr wikipedia org wiki Framework Dans un environnement LAMP WAMP le framework openMairie int gre des composants au travers de classes qui permettent de cr er des formulaires et des tats Ces classes sont surcharg es par les objets m tier cr er openMairie int gre de nombreux composants DBPEAR et FPDF dans toutes les applications mais aussi ARTI SHOW pour les graphes JQUERY pour l ergonomie OPENLAYERS pour l interface SIG DBPEAR est un abstracteur de base de donn es qui permet d utiliser diverses bases de donn es notamment MYSQL ou POSTGRESQL FPDF est le composant qui permet de g rer le PDF Le d veloppement consiste cr er des objets m tier qui surchargent la classe abstraite om_dbformdyn class php composant openMairie De base les donn es de la base de donn es sont r cup r es pour le formulaire longueur max nom om_dbformdyn class php assure la liaison entre le formulaire et la base de donn es om_formulaire class php rassemble toutes les m thodes permettant de construire des formulaires Ce chapitre propose de vous d crire les outils de base du framework de la mani re suivante le param trage g n ral du framework en dyn l
44. g om tries avec om_sig form_sig_update inc php form_sig_delete inc php 2 1 4 Afficher les tables Il est d crit dans ce paragraphe l utilisation et la configuration des tableaux d enregistrements issus de la base de donn es admin Ville d ARLES Mot de passe D connexion Open MAIRIE Tableau de bord gt e oa Administration Param tre Param trage Administration PRE Collectivit ibue 5 racterte nn Dee en 1 2 enregistrement s sur 2 Profil Droit param tre 2 libell 2 gt valeur Utilisateur F E DE Tableaux De Bord S ik Widget N 2 ville Ville d ARLES Sig Om_sig_map Om_sig_wms openExemple Version 4 3 0 dev Documentation openMairie org Options Avancees Import G n rateur La gestion des tableaux se base sur le fichier core om_table class php classe table Pour chaque affichage de tableau le script sql DBTYPE objet inc php correspondant est appel Il permet de stocker le d tail des requ tes n cessaires l affichage du contenu Les tableaux sont construits lors de l appel aux scripts scr tab php et scr soustab php 2 1 4 1 Les script scr tab php et scr soustab php L appel ces scripts permet d afficher un tableau d enregistrements de l objet pass en param tre Liste des param tres pass s Purl obj nom de l objet pour lequel on souhaite afficher le tableau premier num ro de la premi re ligne affich e dans le tabl
45. gt Om_sig_wms gt 3 LOTISSEMENT Om_sig_wms om_sig_wms 3 libell foissement Collectivit ARLES zj id fparcelle_lot chemin url Jhttp localhost cgi bin qgis_mapserv fcgi SERVICE WMS amp VERSION 1 3 08 amp map fvarwwwlopentonciertrunk app qgis openfoncier qgs couches s par es parcelle_lot par es il faut saisir libelle du champ la collectivit l identifiant il doit tre unique pour chaque couche wms le lien de la couche http les layers de la couches s par s par une virgule Exemple de lien avec qgis serveur http localhost cgi bin qgis mapserv fcgi SERVICE WMS amp VERSION 1 3 0 amp map var www openfoncier trunk app qgis openfoncier qgs L affectation des flux wms dans une carte est saisi dans om_sig_map_wms Il est saisi le nom du flux wms nom du layer sur la carte l ordre d affichage la visibilit par d faut case cocher 4 1 L information g ographique 103 openMairie Framework Documentation Version 4 4 Administration gt Om_sig map 3 DOSSIER Administration p Om sig map wms p 12 am_sig_map_wra 12 Mems parcelle E nom map OpenLayer paese orra E veste pai d bat z panier nom du panier farce couche parcata ETT pavele Champ encapsuiston LEA select astext st_union geom as geom trom amp DE_FREFIXEpwcele where parcelle n lst raqam 4S1 type de geometne
46. gt scm adullact net openmairie openmairie _exemple tags lt NOUV T ti nl svn utilisation il est propose dans ce chapitre de lister quelques commandes utiles en cas de conflit test es en svn type de fichier A Ajout de nouveaux l ments la version locale M l ments modifi s localement par rapport la version de SVN l ments inconnus de SVN non pr sents dans la version de SVN U pour les l ments modifi s dans SVN par rapport la version locale C pour les l ments diff rents entre les versions locale et SVN et qui posent un conflit r gle D fichier supprim s a verifier revert et diff svn revert nomfichier remet dans le dernier etat du svn soit pas del so svn diff nomdossier ou nomfichier affiche les modifications r r au dernier svn up resolution de conflit svn st l C openmairi xemple trunk authors txt gt local dition suppression entrante sur mis jour svn revert openmairie_exemple trunk authors txt openmairie_exemple trunk authors txt r initialis 128 Chapitre 7 Outils openMairie Framework Documentation Version 4 4 deplacer un dossier sur le svn gt commande mv Exemple on a cr trunk trunk dossiers_ source D abord on renomme le premier dossier trunk en dossier branches gt svn mv svntssh fraynaud scm adullact net scmrepos svn openboisson trunk svn ssh fraynaud scm adullact n
47. idx idxformulaire retourformulaire typefor mulaire objsf tricolsf retour actions array M thode d initialisation de l affichage de sous formulaire Ces m thodes instancient un objet formulaire et initialisent certains de ses attributs via les m thodes suivantes db db db db db db db db db db db db form setVal amp form maj validation amp db SDEBUG false Permet de d finir les valeurs des champs form setType amp form maj Permet de d finir le type des champs form setLib amp form maj Permet de d finir le libell des champs form setTaille amp form maj Permet de d finir la taille des champs form setMax amp form maj Permet de d finir le nombre de caract res maximum des champs form setSelect amp form maj db DEBUG false M thode qui effectue les requ tes de configuration des champs form init_select amp form null amp db null maj debug field sql sql _by_id om_validite false multiple false M thode qui permet la configuration des select et select multiple elle effectue les requ tes et met en forme le tableau des valeurs afficher Il est possible de d finir si le champ li est affect par une date de validit ou de configurer l affichage de select_multiple form setOnchange amp form maj Permet de d finir l attribut onchange sur chaque champ form setOnkeyup amp
48. information g ographique 4 1 L information g ographique Il est necessaire que l APT openLayers soit dans le framework lib openlayers 4 1 1 Principe Il est propos dans ce chapitre de decrire le module tab_sig php qui permet la geo localisation d objet dans open Mairie A partir de la version 4 4 0 l acc s au module g ographique se fait en mettant l option localisation d om_param tre la valeur sig_interne L objectif de tab_sig_map est de permettre une saisie le plus souvent automatique par un point ligne multiligne polygone multipolygone Cette saisie est stock e dans la base m tier postgresql Elle est affich e sur des fonds existants sur internet google sat openStretmap ou bing pour 1 instant en utilisant le composant javascript openLayers Il n est donc pas n cessaire de disposer d un SIG pour utiliser tab_sig php Le format de stockage des donn es pgsql est celui de OGC et il est accessible aux clients libres o propri taires qui respectent ce format QGIS GRASS VEREMAP pour les clients libres 4 1 1 1 G o localisation automatique L enjeu est de limiter au maximum la g o localisation manuelle d s qu il y a une possibilit de g o localisation automatique Elle se fait au travers de 2 programmes voir paragraphe sur le geocodage adresse_postale php positionnement suivant le numero et rue adresse_postale_google php positionnement suivant le numero et r
49. map gt 3 DOSSIER man es on a on om_sy_ ma 3 Collecte ARLES z Bue 16 f ozser Itciie czsier aw g D on zoom If osm amp bing sat layer ino ndue agglom ston x projection lamb ess x Tanaidossier php meru Oak ur Ralact astextigaam as gaam parcella as titra dassierf Tidamandeur_nam as description doaslar as Idx mam ADR_ORFAXFdnssier anier tig gaam de siar requ te sul ma B E cmens FM SEcmetre Pore E fer chamo geom Feu EE php tobt Den ane Ao Il est possible de copier une carte et de param trer les champs suivants id identifiant unique obligatoire libelle fonds a afficher et data osm bing sat google tendu t epsg voir siqg var_sig_point inc url qui pointe sur la fiche ou le formulaire de saisie requete sql qui affiche les donn es json et qui doit d sign le titre la description 1 idx la mise a jour si oui le champ g ometrique et la table maj le type de g ometri t le nom de la couche openLayers version 4 2 0 le retour de la carte Dans tab_sig php il y a 3 types de layers les fonds de cartes existants sur internet base layers les donn es issus de postgresql overlays les donn es wms overlay 4 1 3 1 Les fonds Il est propos les fonds suivants osm openstreetmap sat satelite google bing satellite microsoft 4 1 3 2 Les datas Information de la c
50. mapquest php 4 1 L information g ographique 109 openMairie Framework Documentation Version 4 4 http focahost openmairie o p trunk scformphprobi odpatricolstide 18idr DES CHAMPS Apr emie G recherches amp selectioncols c 8 a e Mshare apo BMaroue pages s Wie d ARLES Met de pare QD Creme Tob son de dard perce 31 EP Dom voter sere cron or cammen a ie Deer 21 R DELA REPUBLIQUE JAD 5 ser Oi me Google Maps woe unk pye masene gt 0008 APE 1e p u choux aanse Modus larreguereerens se ia udin Osy 8 Retour opanedp Version 1 2 Date Ooeurmeniaiinn noertdaase arp Il est appel depuis la classe m tier suivant l exemple suivant Exemple de openmairie_domainepublic objet odp dans sql pgsql odp form inc le champ adressepostale est implement comme un champ vide champs array odp 77 as adresse _ postale specific dans obj odp class php dans la methode setType le champ adresse postale est du type httpclick function setType amp form maj parent setType form maj Sform gt setType adresse_postale httpclick avec la methode setVal valoriser par d faut l acc s au script adresse_postale app js script js function setVal amp form maj validation amp db DEBUG nul1l1 bouton adresse postale Sform gt setVal adresse _ postale adresse_postale f1 f1 l1ibelle voie value fl numero_ voie value Init
51. message explicite de la modification lt arborescence gt cvs ci m ajout des fichiers avec message cvs ci module name dans la branche principale cvs ci d branch_ name module name dans une branche cvs ci r tag module_name depuis un tag cvs ci r 3 0 changer la r vision doit tre plus grand que tous les num ros existants Add cd lt r pertoire d sir gt cvs add m message explicite de l ajout lt arborescence gt cvs add filel file2 cvs add data pgsqlx tous les fichiers du repertoire L ajout d un fichier n est possible que depuis le r pertoire le contenant Les fichiers d un r pertoire non ajout ne sont pas visibles par CVS lors de l affichage des dif L ajout d l ments est effectif dans CVSROOT uniquement apr s la mise jour de la version de CVS Im Pour supprimer des l ments la version locale afin de les supprimer ensuite d finitivement de cd lt r pertoire d sir gt cvs remove f lt arborescence gt f pour effacer le fichier avant de le supprimer Il faut d abord supprimer le fichier du r pertoir rm filel file2 cvs rm filel file2 cvs ci m suppression des fichiers Supprimer un r pertoire n est pas possible directement il faut aller le supprimer dans le serveu 7 1 2 3 local Suppression d une copie locale pour viter d effacer un checkout en oubliant nos modifications Pour
52. openMairie afin de permettre l utilisateur de d finir des mises en forme complexes tinymce 2 1 9 8 Les scripts PDF Les scripts sont dans le r pertoire pdf et sont appel s par le framework sous la forme pdfetat php obj nom_etat amp idx enregistrement_a_editer les scripts sont les suivants 62 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 pdfetat php tat et sous tat pdf php dition PDF pdfetiquette php tiquette pdflettretype php pdfEtiquette sera repris dans une prochaine version d openMairie specifique openCourrier pour ecriture sur pdf fpdf_tpl php fpdi php fpdi2tcpdf_bridge php fpdi_pdf_parser php histo htm pdf_context php pdf_parser php testfpdi php Il n est pas pr vu d int gration dans la prochaine version 2 1 9 9 Composants core Les scripts ci dessous sont les classes qui interfacent openmairie avec fpdf fpdf_etat php fpdf_etiquette php db_fpdf php php pdf A ce niveau se situe le composant fpdf 2 1 10 Les requ tes memoris es les requ tes m moris es permettent au d veloppeur de fournir un ensemble de requ tes m moris es accessible dans le menu export gt requ tes param trables par l utilisateur permettant un affichage html en tableau ou un transfert au format csv sur tableur choix du s parateur 1 utilisateur menu export gt requete 2 1 Le framework 63 openMairie Framework
53. ourrier service gen le 22 11 2013 sous tat se_font helvetica se_margeleft 8 se_margetop 5 se_margeright 5 se_couleurtexte 000000 mi Vous avez d sormais un tat des courriers par service Param trage gt Service gt Edition PDF application service service 1 2 enregistrement s sur 2 Tous Recherche service 2 libell 2 E 1 informatique 12 2 telephonie openExemple Version 4 4 0 dev Documentation openMairie org nMairie le 22 11 2013 1 informatique liste courrier DATEENVOI OBJETCOURRIER EMETTEUR REGISTRE Proposition de fournitures de voi de devis pour 2013 11 21 tomaton opermame 1 2152 20 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 1 1 5 4 Mettre le nom et le pr nom de l emetteur dans le sous tat Nous souhaitons mettre le nom et le pr nom de l emetteur la place de la cl secondaire Vous devez modifier la requ te sql du sous tat courrier service dans la table om_sousetat de la mani re suivante select courrier dateenvoi as dateenvoi courrier objetcourrier as objetcourrier concat emetteur nom emetteur prenom as emetteur courrier registre as registr from amp DB_PREFIXEcourrier LEFT JOIN amp DB_PREFIXEemetteur on emetteur emetteur courrier emetteur where courrier service amp idx Votre nouvel tat a la forme suivante
54. peuvent tre rajout s dans le tableau de bord Ces scripts sont conserv s dans la table om_widget Chaque utilisateur param tre son tableau de bord le tableau de bord param trable Chaque utilisateur choisit ses widgets parmi ceux propos s dans l application par l administrateur Il peut placer ses widgets o il veut dans son tableau de bord Le param trage est conserv dans la table om_tdb 2 1 12 2 widget Le widget est un petit script qui s ex cute dans le tableau de bord dans une fen tre normalis e Le script peut faire appel l application en cours ou a une application externe Nous avons mis quelques exemples dans les deux derniers paragraphes Il est propos d abord de vous aider cr er les widgets la cr ation de widget La saisie des widget se fait dans administration gt om_widget La grille de saisie est la suivante libell du widget qui apparaitra 1 adition du widget dans le tableau de bord lien qui sera impl ment pas de lien texte texte du widget iframe javascript ajax profil profil autoris pour le tableau de bord 2 1 Le framework 67 openMairie Framework Documentation Version 4 4 Lererte gt Mes tache non sohimes en jscritab phpobrtachenonsotje Sc type eee Pa ATEN B gt texte type GET u Atad nat Gg cache taie dma obptachenoagile serveer Prot UTILISATEUR X LS openCourrier Version 3 0 1 beta Documentation openMairie or
55. poedit 134 Chapitre 7 Outils openMairie Framework Documentation Version 4 4 Gestion de plusieurs langues Une fois install il faut s assurer que les locales fichiers de d finition de langues sont correctement install s sur le syst me Sous Linux Ubuntu pour ajouter une locale il faut ajouter sa d finition dans le fichier de pays cor respondant exemple var l1ib locales supported d fr puis lancer la commande en root dpkg reconfigure locales Cela ne sera n cessaire que pour ajouter la prise en charge d une nouvelle langue 7 1 5 4 Configuration d un projet dans POEdit Cliquer sur le bouton Cr er un nouveau projet de traduction m me si le projet comporte d j une traduction Saisir le nom du projet et le chemin complet du dossier contenant le projet chemin complet permettant d aller la racine du logiciel openMairie Valider Cela cr e le projet Les fichiers po existants sont automatiquement d tect s Cliquer alors sur le bouton Mettre jour tous les catalogues du projet Un scan de code est alors effectu par POEdit Cela va parcourir tous les fichiers php du dossier afin de d tecter toutes les cha nes encadr es par _ Le scan peut comporter des erreurs en g n ral des accents dans les cha nes traduire des accents dans les commentaires du code des cha nes traduire vides etc Dans ce cas le fichier et la ligne concern e sont indiqu s dans le r
56. ralisable 6 1 3 Documentation Ce paragraphe vise regrouper les bonnes pratiques qui permettent toute la communaut openMairie de tra vailler sur les m mes bases et avec les m mes r f rences concernant les outils de r daction et de publication de documentation afin de faciliter la contribution et d obtenir un rendu homog ne Voici les postulats chaque logiciel application poss de une seule documentation Sphinx qui contient un manuel d utilisation et un guide technique biens s par s le code source de la documentation doit tre d pos dans un d p t GIT sur github com la g n ration de la documentation est g r e de mani re automatique par readthedocs org docs openmairie org est l unique interface d acc s pour toutes les documentations un lien dans le footer de chaque application permet d acc der la version de l application du manuel d utilisa teur sur le site docs openmairie org 124 Chapitre 6 R gles CHAPITRE 7 Outils 7 1 Outils Cette section vise rassembler des liens des informations des tutoriels sur des outils qui ne font pas partie du Framework mais qui sont utilis s par la communaut 7 1 1 Apache Subversion SVN Site officiel du projet SVN 7 1 1 1 Pr requis Installer subversion http subversion apache org packages html Il existe galement des outils graphiques comme TortoiseSVN Windows 7 1 1 2 L arborescence Voici l arborescence st
57. registre trt archivage php qui tranfere en archive les courriers avant une date Vous avez galement des d tails sur les traitements dans le chapitre framework util notament sur la mise jour du registre 1 1 5 Cr er ses tats Il vous est propos de cr er un tat des courriers par service Il sera utilis dans ce chapitre l assistant tat et sous tat du g n rateur Quittez le projet openCimetiere et revenez openExemple 1 1 5 1 Cr er l tat service Nous allons utiliser l assistant tat du g n rateur dans le menu Administration gt G n rateur gt Assistants Choisir Cr ation d tat puis choisir dans le select l option service Ensuite avec la touche CTRL s lectionner les champs service service et service libell Cliquer ensuite sur Import service dans la base Administration G n rateur tat cet assistant vous permet de cr er des tats directement partir de vos tables BB Choix table fichier service r M choix des champs Utilisez ctri key pour choix multiple service service Service libelle Import service dans la base openExemple Version 4 4 0 dev Documentation openMairie org Un message appara t service enregistr Vous avez cr un enregistrement qui a pour identifiant service dans la table om_ etat SELECT FROM om etat LIMIT 50 E3 Modifier modifier om_etat om _collectivite id libelle actif E P 1 1 om_collectivite om
58. stocker les m tadonn es d trois informations obligatoires ces commentaires ne doivent pas appara tre dans le fichier in filename plop pdf mimetype application pdf size 124541 m tadonn es suppl mentaires facultatives ces commentaires ne doivent pas appara tre dans le fi proprietel valeurl propriete2 valeur2 252ece72d4c0f88782d49fd6b99f43dfd lock Les fichiers _lock sont l pour servir de marqueur et ind Exemple d arborescence de stockage repertoire de stockage 25 252e 252ece72d44c0f88782d49fd6b99f43qafd repertoire de stockage 25 252e 252ece7244c0f88782d49fd6b99f43dfd info repertoire de stockage 25 252e 252ece7244c0f88782d49fd6b99f43dfd_ lock repertoire de stockage 25 252e 252eacd35ef547dabl2ded6b99f43dqfd repertoire de stockage 25 252e 252eacd35ef547dabl2ded6b99f43dfd info repertoire de stockage 25 252e 252eacd35ef547dabl2ded6b99f43dfd_lock repertoire de stockage 12 123a 123aacd35ef547dabl2ded6b99f43dqfd repertoire de stockage 12 123a 123aacd35ef547dabl2ded6b99f43dfd info repertoire de stockage 12 123a 123aacd35ef547dabl2ded6b99f43dfd_lock M thode pour g n rer les uuid function generate_uuid prefix return md5 uniqid prefix true Description du connecteur filetransferprotocol core om_filestorage_filetransferprotocol class php Ce fichier permet de d clarer la classe sp cialis e pour stocker les fichiers sur un FTP ce fichier n existe pas il
59. tables ou de champs vitez les termes SQL match table index type len ou openMairie objet pour les noms de champs ou table 3 1 7 Les fichiers g n r s Les fichiers g n r s concernent les formulaires les requ tes m moris es le script d import de donn es 3 1 7 1 Les formulaires Les formulaires sont g n r s suivant le nom de la table dans le r pertoire sql sous repertoire portant le nom de la base pour r gler le probl me de compatibilit SQL concat nation extraction Deux types de formulaire sont g n r s type table type form 90 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 Param tres de type table gen sql basededonnees nom_table inc sql basededonnees nom_table inc Par d faut tri en affichage vide champ de recherche avec les champs string pas d affichage de champ blog rattachement de sous formulaire affichage de l dition de la table Dans le fichier param tres form inc serie nombre d enregistrement par page ico ic ne par defaut Param tres de type Form gen sql basededonnees nom_table form inc sql basededonnees nom_table form inc Dans le fichier param tres form inc ico ic ne par defaut Par d faut tous les champs sont affich s les uns en dessous des autres 3 1 7 2 Les Objets m tier L objet m tier g n r est stock en gen obj nom_table class php Ce
60. thodes de la classe filestorage La classe filestorage contient des m thodes de gestion des fichiers filestorage create data metadonnees mode from_content Permet de cr er un fichier sur le filestorage data contenu du fichier metadonnees tableau contenant la liste des m tadonn es cle gt valeur mode from_content from_path 78 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 from_content data contient le contenu du fichier from_temporary data luid d un fichier enregistr sur le filesystem temporary from_path data contient le chemin du fichier enregistrer Cette m thode retourne l UUID du fichier enregistr filestorage update uid data metadonnees mode from_content Permet de mettre jour un fichier sur le filestorage data contenu du fichier metadonnees tableau contenant la liste des m tadonn es cle gt valeur mode from_content from_path from_content data contient le contenu du fichier from_temporary data luid d un fichier enregistr sur le filesystem temporary from_path data contient le chemin du fichier enregistrer Cette m thode retourne l UUID du fichier enregistr filestorage get uid Cette m thode retourne le contenu et les m tadonn es d un fichier en fonction de l UUID pass en para m tre filestorage delete uid
61. tre appliqu es pour qu un projet puisse int grer la distribution openMairie car l ob jectif est de faciliter la lisibilit et la maintenance du code ainsi que la prise en main par les collectivit s Bonne lecture Table des mati res 1 openMairie Framework Documentation Version 4 4 2 Table des mati res CHAPITRE 1 Tutoriel Cr er une application 1 1 Tutoriel Cr er une application Ce chapitre vous propose de cr er une application de gestion de courrier pas pas 1 1 1 Cr er la base de donn es Vous devez au pr alable r cup rer le framework Dans le repertoire www de votre serveur apache svn checkout svn scm adullact net scmrepos svn openmairie openmairie Il vous est propos de cr er la base de donn es sous PostgreSQL Cr er les tables n cessaires au framework openMairie cd data pgsql sudo su postgres dropdb openexemple amp amp createdb op Cr er les tables n cessaires notre exemple table courrier courrier int 8 cle dateenvoi date objetcourrier text emetteur int cle service int cle table emetteur emetteur int 8 cle nom prenom table service service libelle varchar 20 varchar 20 int 8 varchar 20 Cr ation des s quences CREATE SEQU ENC START WITH INCREMENT B NO MINVALUE NO MAXVALUE CACHE 1 1 Y 1 E emetteur_seq xemple trunk openE
62. une valeur num rique permettant de d finir sa place au sein d une position L action num ro 1 s affichera en premier l action num ro 10 s affichera apr s les actions de num ro inf rieur etc Ordre des actions par d faut d openMairie ajouter pour ordre 10 dans la position corner consulter pour ordre 10 dans la position left Si la position corner est s lectionn e 9 l action s affichera avant l action ajouter 11 l action s affichera apr s l action ajouter Si la position left est s lectionn e 9 l action s affichera avant l action consulter 11 l action s affichera apr s l action consulter 5 1 2 2 39 D finition des droits d affichage La cl rights permet de d finir le ou les droits n cessaire l utilisateur pour visualiser cette action Cette cl est optionnelle Si rights n existe pas tous les utilisateurs pourront visualiser cette action s ils peuvent visualiser le tableau correspondant La cl 1ist permet de d finir le tableau des droits n cessaire La cl operator permet de d finir l op rateur utilis pour pour v rifier les droits de la liste list OR l utilisateur doit avoir au moins un droit AND l utilisateur doit avoir tous les droits Les erreurs connues 5 1 3 La version 4 2 5 1 3 1 Les nouveaut s de la version 4 2 5 1 3 2 Mettre niveau depuis openMairie 4 1 vers 4 2 La version 4 2 0 du fra
63. 1 affiche le formulaire de modification 2 affiche le formulaire de suppression 3 affiche le formulaire de consultation Les autres param tres pass s permettent de conserver la configuration du tableau d origine 2 1 Le framework 47 openMairie Framework Documentation Version 4 4 2 1 6 3 Description de la classe dbform class dbform id amp db SDEBUG false Cette classe est centrale dans l application Elle est la classe parente de chaque objet m tier Elle comprend des m thodes de gestion initialisation traitement v rification trigger des valeurs du formulaire Elle fait le lien entre la base de donn es et le formulaire Elle contient les actions possibles sur les objets ajout modification suppression consultation Pr sentation des m thodes de la classe Les m thodes de dbform peuvent tre surcharg es dans obj om_dbform class php ainsi que dans toutes les classes m tier M thodes d initialisation de l affichage du formulaire dbform formulaire enteteTab validation maj amp db postVar aff SDEBUG false idx premier 0 recherche tricol idz selectioncol advs_id valide retour actions array extra_parameters array M thode d initialisation de l affichage de formulaire dbform sousformulaire enteteTab validation maj amp db postVar premiersf DEBUG
64. 2b5a76d3 6 La description du transfert se fait dans le fichier extension import_nomobjet inc dans sql exemple import_script php obj utilisateur Dans utilisateur import inc il est defini le message affich en import Simport Insert utilisateur Message la table cible de l import table utilisateur la cl primaire si elle est automatique mis n place d une s quence ce champ est vide sinon id utilisateur Le verrouillage de la base de donn es Sverrou 1 mise jour de la base 0 pas de mise jour pour une phase de test Le mode d bug SDEBUG 1 affichage des enregistrements l ecran 0 pas d affichage La mise en place d un fichier d erreur Sfic_erreur 1 fichier erreur 0 pas de fichier d erreur La mise en place d un fichier de rejet reprenant les enregistrements csv rejet s ce fichier contient les enregistrements en erreur et permet de relancer 1l traitement apr s correction manuelle fic_rejet 1 fichier de rejet pour relance traitement 0 pas de fichier rejet La premi re ligne affiche le nom des champs lignel 1 la premi re ligne contient les noms de champs 0 sinon Les zones obligatoires tableau Sobligatoire obligatoire nom 1 obligatoire 1 76 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 obligatoire login 1 obligatoire 1 les tests d existence d un cl secondai
65. 4 2 0 tab_sig permet aussi l affichage de flux wms et wfs getmap et de recuperer les donn es getfeature la collation de g om trie dans un pannier et son enregistrement en multi g om tries 4 1 1 3 Param trage de la carte Le param trage g n ral contenu dans scr tab_sig php des cartes est modifiable dans dyn var_sig inc xxx parametre de tab_sig php xxx generer une cle pour le site http code google com intl fr apis maps signup htnl Scle_ google Sfichier_jsons json_points php obj Sfichier_wkt wkt_ point php zoom par couche zoom standard permettant un passage de zoom a l autre zoom_osm_maj 18 zoom_osm 14 zoom_sat_ma 8 zoom_sat 4 zoom_ bing_maj 8 Szoom_bing 4 popup data contenuHTML width_popup 200 cadre_popup 1 Scouleurcadre_popup black Sfontsize_ popup 12 Scouleurtitre popup black Sweightitre_popup bold Sfond_popup yellow Sopacity_popup 0 7 image localisation maj ou consultation img_maj img punaise png img_maj_hover img punaise _hover png img_consult img punaise_ point png img_consult_hover img punaise point _hover png Simg_w 14 Simg_h 32 Simg_click 1 3 multiplication hauteur et largeur image cliquee xxx parametres d om _sig_map class php om sig_wms class php Scontenu_etendue 0 array 4 5868 43 6518 4 6738 43 7018 14 701 43 3966 4 7636 43 4298 14 71417 43 64 4 72994
66. 43 65166 14 72345 43 55348 4 73134 43 55932 15 2094 43 4136 5 3345 43 4759 Scontenu_etendue 1 array agglomeration 100 Chapitre 4 L information g ographique openMairie Framework Documentation Version 4 4 salin de giraud raphele Mas thibert fvitrolles Scontenu_epsg 0 array EPSG 2154 EPSG 27563 Scontenu_epsg 1 array choisir la projection lambert93 lambertSud La version 4 4 0 contient les tendues des communes des bouches du rh ne 4 1 2 objet map ce chapitre propose de d crire l utilisation de l objet map d openLayers dans tab_sig php Cet objet permet de d finir le div ou la carte sera affich e dans tab_sig php la carte s affiche avec le div map Id les options de la carte et les controles affich s 4 1 3 afficher les layers ce chapitre propose de d crire l utilisation de l objet layers d openLayers dans tab_sig php dossier PCO1R002101 poin z ee A w Data KJ IE Dans le lien il est possible de d finir la carte a afficher suivant l id obj Obligatoire le fond affichable par d faut sat bing osm amp fond l tendue amp etendue l enregistrement modifier amp idx Les cartes sont param tr es dans om_sig_map menu administration 4 1 L information g ographique 101 openMairie Framework Documentation Version 4 4 Administration gt Om_sig
67. AU_PROJET gt On se positionne dans le dossier php de l application pour appliquer les externals cd lt NOUVEAU_PROJET gt php svn propset svn externals F EXTERNALS txt svn up syn ci Publier une nouvelle version Ce tutorial contient certains pr requis comme le fait d avoir un utilisateur avec les droits corrects sur le projet ou conna tre comment incr menter le num ro de version de l application publier Avant de publier une application il faut v rifier que l EXTERNALS de la librairie openMairie ne pointe pas vers le trunk Pour cela less php EXTERNALS txt created by svn propset svn externals F EXTERNALS txt openmairie svn scm adullact net svnroot openmairie openmairie trunk fpdf svn scm adullact net svnroot openmairie externals fpdf tags 1 6 min pear http svn php net repository pear pear core tags PEAR 1 9 1 db http svn php net repository pear packages DB tags RELEASE 17 _13 Ici on voit que openmairie pointe vers le trunk Nous devons d abord publier la librairie ZT svn cp svn ssh lt NOM_DU_DEV svn ssh lt NOM DU_DEV OPPEUR gt scm adullact net openmairie openmairie trunk OPPEUR gt scm adullact net openmairie openmairie tags lt NOUVELLE VERSI z 7 1 Outils 127 openMairie Framework Documentation Version 4 4
68. B SCifond2 255 couleur fond R SC2fond2 255 couleur fond V C3fond2 255 couleur fond B spe openelec Sflagsessionliste 0 1 gt affichage session liste ou 0 gt pas d affichage titre Sbordertitre 0 1 gt bordure 0 gt pas de bordure aligntitre L L C R heightitre 10 hauteur ligne titre grastitre B gras B gt BOLD OU gras fondtitre 0 0 gt FOND transparent 1 gt fond Cltitrefond 181 couleur fond R C2titrefond 182 couleur fond vV C3titrefond 188 couleur fond B Cltitre 75 couleur texte R C2titre 79 couleur texte V C3titre 81 couleur texte B sizetitre 15 entete colonne flag_entete 1 entete colonne 0 gt non affichage 1 gt affichage fondentete 1 0 gt FOND transparent 1 gt fond Sheightentete 10 hauteur ligne entete colonne SCilfondentete 210 couleur fond R SC2fondentete 216 couleur fond V SC3fondentete 249 couleur fond B Clentetetxt 0 couleur texte R C2entetetxt 0 couleur texte V C3entetetxt 0 couleur texte B SCiborder 159 couleur texte R SC2border 160 couleur texte V SC3border 167 couleur texte B Sbt 1 border ler t derniere lign du tableau par page gt 0 ou 1 3 1 8 5 gen dyn etat inc php parametres variable amp nouveau parametres etat orientation P etat
69. Cette m thode supprime un fichier en fonction de l UUID pass en param tre filestorage create temporary data metadonnees mode from_content Permet de cr er un fichier sur le filestorage temporaire data contenu du fichier metadonnees tableau contenant la liste des m tadonn es cle gt valeur mode from_content from_path from_content utilisation normale de la m thode create data contient le contenu du fichier from_path data contient le chemin du fichier enregistrer Cette m thode retourne l UUID du fichier enregistr temporairement filestorage get_temporary uid Cette m thode retourne le contenu et les m tadonn es d un fichier enregistr temporairement en fonction de l UUID pass en param tre filestorage delete_ temporary uid Cette m thode supprime un fichier temporaire en fonction de l UUID pass en param tre L appel aux m thodes temporary se fait sur une instance de filesystem d fini dans le param trage Ces m thodes sont impl ment s dans la classe de base contrairement aux autres m thodes elle peuvent toutefois tre surcharg es dans les classes de connecteurs sp cifiques Description du connecteur depredacted core om_filestorage_deprecated class php Cette classe est une classe de stockage sp cifique aussi appel e plugin de stockage pour le syst me d abstraction de stockage des fichiers Le principe de ce plug
70. DD ville VARCHAR 40 16 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 Vous devez reg n rer votre application courrier en allant dans l option du menu administration gt generateur gt emetteur et laisser coch es les options par d faut gen obj emetteur class php gen sql pgsql emetteur inc php gen sql pgsql emetteur form inc php Validez l op ration N ayant pas modifi sgl pgsql emetteurinc le framework fonctionne avec le code g n r 1 1 4 3 Am liorer la pr sentation du formulaire emetteur Nous pouvons continuer am liorer les pr sentations de nos formulaires en utilisant les m thodes setGroupe et setRegroupe dans le script obj emetteur class php Il vous est propos d ins rer dans votre script obj emetteur class php le code suivant function setLayout amp Sform maj Sform gt setFieldset nom D _ nom collapsible Sform gt setFieldset prenom F Sform gt setFieldset adresse D _ adresse startClosed Sform gt setFieldset ville F Le fieldset nom est affich par d faut pas celui de l adresse emetteur 1 nom nom dupont prenom pierre adresse Vos formulaires sont maintenant au point Le paragraphe suivant vous indique les surcharges d openCimetiere que vous pouvez int grer dans votre exemple maintenant que vous avez la m thode
71. Documentation Version 4 4 gt Applications Raccourcis Syst me E demo accm sur mysql A Les requetes memonisees permettent d exporter des donnees de la base de donnees pour une utilisattion externe a l application Veuillez chquer sur l objet a exporter pour atteindre un formulaire vous permettant de choisir les parametres de l export Choix de la requete memorisee amp om parametre om_prof 2 om _sousetat om _utilisateur openExemple Version 4 0 0 dev Documentation openMairie org 2 1 10 1 Description du parametrage Les parametres de reqmo sont reqmo libelle contient le lib ll affich en haut reqmol sql contient la requete SQL Dans la requete les param tres sont mis entre et ils sont d finis en dessous sous la forme regmo parametre checked la colonne est affich ou non un tableau array a b et le choix a ou b est donn 1 utilisateur de requete une requete sql le choix se fait dans la table du select La requete execut e est celle qui est reconstitu e avec les zones sasisies par l utilisateur Enfin l utilisateur choisit soit un affichage soit en tableau soit en csv avec un choix de s parateur Il n y a pas d outil de fabrication de requ te part l option du g n rateur voir chapitre sur le g n rateur 2 1 10 2 Exemple voies sous openCimetiere Sregmo libelle Voies par cimetiere Sregmo sql sel
72. S _MODE define DEBUG VERBOSE MODE define DEBUG DEBUG MODE define DEBUG PRODUCTION MODE gt Dans le dossier tmp error_log txt les messages de logs de niveau DEBUG MODE sont crits quelque soit le mode d finit 2 1 3 7 La version de votre application Vous devez mettre le num ro de version et la date de votre application dans dyn version inc Voir le versionage des applications 2 1 Le framework 37 openMairie Framework Documentation Version 4 4 2 1 3 8 Les informations generales Les fichiers textes d information g n rale sont la racine de l application README txt ce fichier peut contenir entre autre la liste des auteurs ayant particip au projet HISTORY txt information sur chaque version les et les bugs corrig s app SPECIFIC txt Ici vous d crivez la specificite de 1 application courante par rapport au framework LICENCE txt licence libre de 1 application TODO txt feuille de route roadmap INSTALL txt installation de 1 application 2 1 3 9 L installation automatique Lun fichier data sql install sql permet d installer rapidemment et data sql make_init sh permet de constituer rapi demment des scripts sql d installation 2 1 3 10 Les param tres des combos Les param tres des combos sont param tr s dans les fichiers suivants type de contr le de formulaire comboD et comboG pour formulaire ou comboD2 et comboG2 pour sous formulair
73. _collectivite gen le 12 11 2010 t Dr 2 1 service service gen le 22 11 2013 f Vous devez rendre d abord votre tat service actif pour pouvoir y acc der 18 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 Il faut maintenant permettre l acc s dans l affichage du service Ouvrir le fichier sgl pgsql service inc php Ajouter le script suivant Shref 3 array lien gt pdf pdfetat php obj obj samp idx ig gt lib gt lt img src om theme img pdf 16x16 png alt _ Edition PDF title _ Edition PDF gt Nous rajoutons la ligne 3 dans le tableau href Vous avez un tat li l affichage du service Il y a des exemples d utilisation de href dans om_collectivit om_etat om_utilisateur 1 1 5 2 Cr er le sous tat courrier Nous allons utiliser l assistant sous tat du g n rateur dans le menu Administration gt G n rateur gt Assistants gt Cr ation sous tat Nous choisissons la table courrier et nous surlignons les champs courrier dateenvoi courrier objetcourrier cour rieremetteur et courrier registre Nous choisissons courrierservice comme cl secondaire pour faire le lien avec service Administration G n rateur Sous tat cet assistant vous permet de cr er des sous tats directement partir de vos tables r D Choix table fichier courrier
74. act res dans args 0 et pas seulement des valeurs bool ennes Attention Cette recherche n est pas sensible la casse Plusieurs fonctions de formatage sont appel es sur user is_admin avant de tester l galit 2 1 5 3 2 3 Tester si une donn e est pr sente ou non dans un groupe de donn es Exemple recherche des utilisateurs administrateurs Dans cet exemple l information se trouve non pas dans la table utilisateur mais dans la table administrateur disposant d une colonne user_id cl trang re Il nous faut utiliser une sous requ te pour r cup rer l ensemble des identifiants de la table administrateur afin de tester si un identifiant utilisateur est effectivement pr sent dans cette liste lt php soit user une table contenant pas la colonne is_ admin soit admin une table contenant une colonne user_id args array Sargs 0 array true false args 1 array _ Tous _ Administrateurs Utilisateurs simples subquery SELECT user_id FROM admin champs administrator array colonne gt id table gt user libelle gt _ Administrateur Frtype gt 1 Select y subtype gt manualselect where gt insubquery largs gt args subquery gt Ssubquery gt Cette configuration permet de cr er un champ HTML de type select avec trois choix T
75. als om theme kinosura tags 1 0 0 Deux r pertoires sont remarquables core contient maintenant la librairie openMairie 4 2 0 om _ theme est le theme de l application Les dossiers suivant sont sp cifiques l application elle m me app scripts sp cifiques de l application noter dans specific txt les sp cificit s data scripts SQL d initialisation de la base de donn es dyn param trage de l application gen fichiers g n r s de l application obj surcharge des objets g n r s dans gen ob j surcharge du core d openMairie om dbformdyn om_formulaire 4 2 0 om application util sql requ tes SQL surchargeant les fichiers de gen sql tmp fichiers temporaires de l application ajouter les droits d criture pour le serveur web trs fichiers upload s par l application ajouter les droits d criture pour le serveur web Regenerer les tables avec genfull php Ajouter les droits d criture www data dans gen sudo chmod R 777 gen Modifier les param tres dyn locales inc php charset include inc php core Dans ob Ajouter om table class php om_ dbform class php etom_ formulaire class php Evolution om_sig_point vers om_sig_map om_sig_map est le nouvel outil SIG d openMairie Ne concerne que PostgresSQL Executer le script data pgsql ver4 2 0 sql Reg n rer les 4 nouvelles tables Ajouter les scripts sp cifiques dans o
76. amp nouveau res titrehauteur 10 titrefont helvetica titreattribut B titretaille 10 titrebordure 0 titrealign L titrefond 0 titrefondcouleur 255 255 255 CicE xtecouleur 0 0 0 lle intervalle debut 0 intervalle _fin 5 i f f f entete_flag 1 entete_fond 1 Ssousetat Ssousetat entete_hauteur 7 entete_fondcouleur 255 255 255 Ssousetat tableau Ssousetat Ssousetat bordure Ssousetat sous et Ssousetat Ssousetat cellule Ssousetat Ssousetat entete_textecouleur 0 0 0 tableau_bordure 1 tableau_fontaille 10 bordure _ couleur 0 0 0 at fond se_fond1l 243 246 246 se_fond2 255 255 255 cellule _fond 1 cellule hauteur 7 total Ssousetat Ssousetat cellule fond _ total 1 cellule fontaille total 10 Ssousetat cellule hauteur _ total 15 96 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 sousetat cellule fondcouleur _ total 255 255 255 moyenne sousetat cellule_fond_ moyenne 1 Ssousetat cellule_fontaille moyenne Ssousetat cellule_hauteur_ moyenne 5 10 Ssousetat cellule_fondcouleur_ moyenne nombre d enregistrement Ssousetat c
77. andard d un projet versionn sur un SVN trunk tags branches trunk la version en cours de d veloppement tags les diff rentes versions publi es Les dossiers dans tags sont des copies du dossier trunk a un instant pr cis Ils permettent de fixer une version pour la publier Il est interdit d effectuer une modification dans un de ces dossiers la bonne m thode tant de faire la modification dans le trunk et de faire une nouvelle version dans le dossier tags branches 7 1 1 3 Les r gles d or Ne jamais commiter dans un tag Ne jamais commiter sans message de commit Ne jamais tagger une version qui contient des externals vers un trunk 125 openMairie Framework Documentation Version 4 4 7 1 1 4 Les commandes basiques conna tre R cup rer une copie locale svn co svn tssh nom du d veloppeur scm adullact net openmairie openmairie exemple trunk openmairie _exempl Mettre jour sa copie locale svn up Voir l tat de sa copie locale svn st Voir la diff rence entre sa copie locale et le d p t svn diff svn ci 7 1 1 5 Externals C est une propri t sur le d p t SVN permettant d importer du code provenant d un d p t diff rent Le fichier EXTERNALS txt created by svn propset svn externals F EXTERNALS txt core svn scm adullact net
78. ans github vim authors transform txt tape 3 V rification de l intervalle export REVS tail n2 LOG head n1 awk print 1 sed s r head n2 LOG tail n1l echo SREVS tape 4 R cup ration de tous les commits tr s long svn2git authors authors transform txt revision REVS v svn scm adullact net scmrepos sv tape 5 Import du code sur github git remote add origin git github com openmairie S NEWPRODUCTNAME documentation git git push u al1l git push tags tape 6 Suppression de l ancien d p t de documentation sur l adullact pour que personne ne committe dessus 136 Chapitre 7 Outils openMairie Framework Documentation Version 4 4 svn del m D placement de la documentation vers Github svn ssh ADULLACTUSER scm adullact n echo Documentation d plac e vers https github com openmairie S NEWPRODUCTNAME documentation svn import m D placement de la documentation vers Github MOVED TO GITHUB txt svn ssh ADI 7 1 7 3 Faire l import initial d un projet sphinx Public s concern s Administrateur de projet openMairie 7 1 7 4 Contribuer une documentation Public s concern s Contributeur membre du projet openMairie 7 1 8 readthedocs org readthedocs org est un site qui h berge de la documentation la rendant accessible et facile trouver Il est pos sible d importer les documentations s
79. apport d erreur Il est recommand de corriger l erreur et recommencer la mise jour Le rapport affiche les cha nes d su tes celles qui ne figurent plus dans le code et les nouvelles cha nes Les cha nes d su tes sont alors comment es dans le fichier po et n apparaissent plus dans l interface de traduction 7 1 5 5 Traduction des cha nes Depuis l cran du projet dans POEdit double cliquer sur le fichier de la langue concern e La liste des cha nes traduire appara t alors Les nouvelles cha nes sont en premier les cha nes modifi es en second et les autres cha nes ensuite Il suffit de cliquer sur une cha ne et entrer la traduction dans le bloc de texte inf rieur A chaque sauvegarde le fichier est compil en un fichier mo L affichage de l application affiche alors les cha nes traduites la place des libell s originaux Attention sur certaines configurations un red marrage du serveur web peut tre n cessaire pour que les traduc tions soient mises jour 7 1 6 Sphinx Site officiel du projet Sphinx 7 1 7 Github com Pour pouvoir g rer un projet sur ce site il faut avoir un utilisateur le bouton Sign up de la page d acucueil permet d obtenir un compte utilisateur tr s facilement L objectif d utiliser ce site est donc de faciliter la contribution la documentation gr ce l diteur en ligne et au syst me de Pull Request et de d clencher simplement la reg n
80. ar utilisateur acc s au tableau de bord Le param trage se fait en cliquant sur le lien param trer son tableau de bord Il apparait alors un plus pour ajouter un widget pour une colone une croix pour supprimer un widget Le d placement du w a Souris idget de haut en bas ou de gauche droite se fait par copier glisser avec 1 J a openMaire openFoncier 38 Es http focalhost opermairie fonciesftrunk ser dathboerd pho c 4 a Bmaines Bopenmairie file juss share appl ff Most Vistede Classeur fle Jus share sppl A Samples amp Demos E openMairie opent Dresser ce uen ne EPST RES SAR ET OR PE Pt mue M CO ESA fais Dern ton je Ro po Serene oeno dara vone meieau a bord paramesanie en chiqar ici 2 aum 4 ageda Oa EUR a A IUN 28 16 201r Manie t2 Mmao ron Premier DO LLIT Pression 10105 e siata En cliquant sur il est possible de rajouter des widgets dans son tableau de bord 70 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 http focalhost openmairie fonciesftrunk scr deshboard pho edition 1 4 a Mairie Bopenmairie fle ffuss share sppl Most Vistede Classeur file uss share sppi Samples Demos E openMairie opent Ji 1 OI E Ent prener wi ie parrres Oe RAPMELE Acceder m ien Aesan 20 LITE Mes
81. arte layer_info Cette couche fait appel sig_json php Il est possible de faire appel a un autre script voir dyn var_sig inc La requ te pgsql est param tr e dans la table om_sig_map et doit d finir les champs geom titre description et texte 102 Chapitre 4 L information g ographique openMairie Framework Documentation Version 4 4 c openMairie openFoncier Mozilla Firefox C SA collectionlibre arg al 02e 1 localhost opentomcier trunk app dossierphp menu 0kid PC11R0165 admin Arles 7 Mat de passe E Diconnexior blem de bort tubes bomi douar Parrin de Coneinsrh Mo 28 WA NEALE ASe k at EMULE moes SCI LE CH TEMI SUISSES ven na Vermon 11900 Arian sue M MAL AUS FEL GILLES EN CELME ae da tone 23 tue aa anses ISU Aka CLR teser nam Armmapemen sende caroctarteryua sho Ome ston 33 m Anaw ve waans roetan da vama Etat bratrarnon Abde kuverte rode Divani v 0 Dase de maades du d s dx hu des de pde FAOUT FIMIN MINT cer ons cherie 23062011 ce nen sereaer aae corset z lt E E Ra T a D URSS sig_json php pr sente tous les enregistrements d un m me point m me g om sur un seul popup En effet il est constitu un popup lorsque 1 on clique sur 1 objet et donne la possibilit un acc s URL parametr e dans om_sig_map 4 1 3 3 Les flux wms Le param trage des flux wms est saisi dans om_sig_wms Administration
82. ation Il faut donc supprimer la contrainte NOT NULL des colonnes qui ne sont pas r ellement requises par l application ou ajouter une valeur par defaut avec la clause DEFAULT Concernant les champs requis par l application Il n est plus n cessaire de surcharger la m thode verifier des mod les pour g rer ce type de champ Il faudra nettoyer les surcharges de verifier en supprimant la v rification manuelle des champs requis et les remplacer par des contraintes NOT NULL sans clause DEFAULT dans la base de donn es Important Vous pouvez g n rer nouveau l application partir d ici tape 3 mettre jour les fichiers de surcharge du r pertoire sq1 5 1 2 2 3 1 Alias des tables trang res Prefixer le nom des colonnes trang res par l alias g n r dans gen sq l Le g n rateur peut donner une table trang re un alias unique Cela permet d effectuer plusieurs jointures sur une m me table sans avoir d erreur d ambigu t avec les nom des colonnes Pour cela dans les fichiers du r pertoire sql contenant plusieurs r f rence vers une m me table trang re les noms des colonnes provenant de ces tables trang res devront tre pr fix s par l alias ad quat Cet alias appara t dans la d finition de la variable table dans les fichiers g n r s du r pertoire gen sql 5 1 2 2 3 2 La clause ORDER BY Supprimer les surcharges de la variable tri ORDER BY libelle ce tri e
83. b et sql pgsql 5 1 Historique amp Mises niveau 121 openMairie Framework Documentation Version 4 4 122 Chapitre 5 Historique amp Mises niveau CHAPITRE 6 R gles 6 1 R gles 6 1 1 Convention de codage La convention de codage openMairie s applique tout le code qui fait partie de la distribution officielle d open Mairie ainsi qu aux applicatifs de la gamme La convention de codage permet de conserver un code consistant et de le rendre lisible et maintenable facilement par les d veloppeurs openMairie 6 1 1 1 L indentation du code Pour am liorer la lisibilit il faut utiliser une indentation de 4 espaces et non pas des tabulations En effet les diteurs de texte interpr tent diff remment les tabulations alors que les espaces sont tous interpr t s de la m me fa on De plus lors de commit les historiques des gestionnaires de versions CVS ou SVN sont fauss s par ces caract res Il est recommand que la longueur des lignes ne d passe pas 75 85 caract res 6 1 1 2 Encodage des fichiers L encodage des fichiers doit tre UTF 8 6 1 1 3 Tags dans le code PHP Il faut utiliser toujours lt php gt pour d limiter du code PHP et non la version abr g e lt gt Cela est la m thode la plus portable pour inclure du code PHP sur des syst mes d exploitations disposant de configurations diff rentes 6 1 1 4 HTML Valide et W3C Le Code HTML rendu doit tre vali
84. base sur la derni re version tagg e d openmairie_ exemple Ce tutorial contient certains pr requis comme la cr ation du projet sur la forge le fait d avoir un utilisateur avec les droits corrects sur le projet le fait d avoir consulter la derni re version tagg e d openmairie_exemple On se positionne dans la dossier tmp pour r cup rer la derni re version d openmairie_exemple cd tmp svn export ignor xternals svn scm adullact net svnroot openmairie openmairie_exemple tags lt DERNIERE_ VERSION OPENMAIRIE EXEMPLE gt openexemple On cr l arborescence standard sur le d p t svn mkdir svn ssh lt NOM DU_DEVELOPPEUR gt scm adullact net scmrepos svn lt NOUVEAU_PROJET gt trunk svn mkdir svn ssh lt NOM DU_ DEVELOPPEUR gt scm adullact net scmrepos svn lt NOUVEAU_PROJET gt tags svn mkdir svn ssh lt NOM DU_DEVELOPPEUR gt scm adullact net scmrepos svn lt NOUVEAU_PROJET gt branches On se positionne dans le dossier pr c demment import pour importer sur le d p t son contenu cd openexemple svn import svn ssh lt NOM DU_DEVELOPPEUR gt scm adullact net svnroot lt NOUVEAU_PROJET gt trunk On se positionne dans son dossier de d veloppement pour cr er la copie locale du projet cd public_html svn co svn ssh lt NOM_ DU _DEVELOPPEUR gt scm adullact net scmrepos svn lt NOUVEAU_PROJET gt trunk lt NOUVE
85. ble de s quences INSERT INTO courrier courrier dateenvoi objetcourrier metteur service VALUES nextval courrier_seq 2010 12 01 Proposition de fourniture de service 1 1 nextval courrier_seq 2010 12 02 Envoi de devis pour formation openMairie 2 1 1 1 3 1 Faire un affichage courrier plus convivial L affichage des courriers se fait avec des libell s g n r s automatiquement Ainsi dans le fichier gen sql pgsql courrier inc php qui est inclus dans le fichier sql pgsql courrier inc php que vous pourrez modifier vous avez la variable champAffiche Vu que ce fichier a t cr par le g n rateur et est en lecture seule et vu que nous souhaitons modifier la variable pour par exemple avoir le nom et le pr nom de l emetteur au lieu de simplement son nom il nous faut ouvrir le fichier sgl pgsql courrierinc php o nous allons apr s l include r affecter la variable champAffiche la valeur suivante SchampAffiche array courrier courrier as _ courrier fto_char courrier dateenvoi DD MM YYYY as _ dateenvoi concat emetteur nom emetteur prenom as _ emetteur service libelle as service Il est possible que l op ration vous soit refus e seul www data ayant les droits d criture Si tel est le cas ch ant il faudra se rajouter les permissions Le r sultat est
86. bleau de la classe om_collectivite unecran php s lectionnera l entr e d s lors que le script unecran php est appel quelque soit la classe obj Les actions personnelles Le but de cette zone de navigation est de regrouper des liens vers des fonctions qui concernent les informations de connexion de l utilisateur Elle se situe dans le coin en haut droite de l cran et est visible uniquement lorsque l utilisateur est authentifi admin LIBREVILLE Mot de passe D connexion Tableau de bord 32 Chapitre 2 Le framework openMairie Framewo rk Documentation Version 4 4 Par d faut les actions personnelles sont compos es de quatre l ments le login de l utilisateur le libell de la collectivit un lien vers la page de modification du mot de passe un lien vers la page de d connexion du logiciel de la classe Le login de l utilisateur est r cup r par la m thode displayActionLogin Lication Cette m thode peut tre surcharg e dans la classe ut il om_appl S Le libell de la collectivit est r cup r par la m thode displayActio om_appl Lication Cette m thode peut tre surcharg e dans la classe ut il nCollectivite de la classe s La configuration des liens se fait dans le fichier dyn actions inc php Ce fichier de param trage n est pas obligatoire Si il n existe pas aucun lien n est affich Ce fichier de param tra
87. blic puisque les projets openMairie sont publics Initialize this repository with a README ne pas cocher la case Puis il suffit de cliquer sur le bouton Create repository 7 1 7 2 Importer la documentation depuis un projet subversion de l adullact Public s concern s Administrateur de projet openMairie Les pr requis sont le projet doit d j tre cr sur github com tre dans un terminal pour saisir les commandes suivantes les commandes svn svn2git et git doivent tre install es tape 0 Modifier et d finir les variables utilis es dans les commandes suivantes export OLDPRODUCTNAME openfoncier export NEWPRODUCTNAME openads export ADULLACTUSER fmichon tape 1 R cup ration des logs mkdir p NEWPRODUCTNAME documentation S NEWPRODUCTNAME documentation amp amp cd NEWPRODUCTNAME svn log q svn scm adullact net scmrepos svn OLDPRODUCTNAME documentation gt LOG Cab 4YE0G Awk PIN TAn ESub MS M MR S2 SUb M ST MN Sa prine S2 S27 KMSAUSNET cat authors transform txt tape 2 MANUEL Modification des auteurs gt Il faut faire la correspondance entre les utilisateurs de l adullact et ceux de github gt exemple fmichon Florent Michon lt fmichon atreal fr gt gt fmichon login de l addulact gt Florent Michon nom complet du contributeur gt fmichon atreal fr mail r f renc d
88. cessaire de mettre dans l ent te des fichiers init sql la commande ou les instructions qui ont permis de g n rer ou de composer le fichier en question 2 1 2 1 1 1 Le fichier init sql Ce fichier contient les instructions de base du framework Il permet de cr er les tables et les s quences du framework celles qui commencent par om_ Il est g n r gr ce la commande pg_dump s 0O n lt SCHEMA gt T lt SCHEMA gt om_ lt DATABASE gt Dans les applicatifs ce fichier est sens tre directement copi depuis le framework 2 1 Le framework 27 openMairie Framework Documentation Version 4 4 2 1 2 1 12 Les fichiers init metierx sql Ces fichiers contiennent les instructions de base de l applica tif Le fichier init_metier sql permet de modifier si besoin le mod le de donn es du framework et de cr er les tables et les s quences de l applicatif celles qui ne commencent par om_ Il est g n r gr ce la commande pg_dump s 0 n lt SCHEMA gt t lt SCHEMA gt om_ x lt DATABASE gt Dans le framework ce fichier est vide Le fichier init _ metier _sig sql permet de modifier le mod le de donn es cr pr c demment pour y ajouter des champs de type geom pour la gestion du SIG Le fichier init _ metier _vue sql permet de modifier le mod le de donn es cr pr c demment pour y remplacer une table par une vue vers la table d un autre sch ma ou d u
89. d et correspondre aux standards W3C 6 1 1 5 Les commentaires dans le code Tous les fichiers PHP doivent avoir un ent te de ce style lt php x x x Courte description du fichier x Description plus d taill e du fichier si besoin en est 123 openMairie Framework Documentation Version 4 4 x package openmairie x version SVN Id x 2 gt 6 1 1 6 Images Les fichiers images ajout s dans les applications openMairie doivent tre au format PNG Portable Network Gra phics Ce format permet d obtenir des images de qualit avec des propri t s de transparence 6 1 2 Versionnage 6 1 2 1 Convention de num rotation des versions Cette convention concerne le framework et les applications Il est convenu de num roter les versions sur 3 chiffres s par s par des points exemple openMairie 4 0 0 Le premier chiffre repr sente une version majeure Le deuxi me chiffre est une volution mineure Le troisi me chiffre est une correction de bug Les versions beta sont indiqu s en fin de num rotation et ne sont jamais maintenues openmairie exemple_4 0 0beta Seule la derni re version op rationnelle est maintenu Exemple de versionning compl ment de la r union dev openMairie du 13 juin 2012 4 2 0alphal premi re version non test e 4 2 0betal premi re version test e par le d veloppeur 4 2 0rc1 premi re version test e en production 1 site 4 2 0 premi re version stable g n
90. d un m me mod le d avoir la m me valeur pour ce champ Un mod le de donn es g n r peut galement contenir au plus un groupe de champs unique Cette fois c est la combinaison des valeurs de ces champs qui ne pourra exister qu une seule fois D finition des champs uniques Il suffit de d finir une contrainte SQL UNIQUE sur une colonne ou un groupe de colonnes pour cr er respective ment un ou plusieurs champs uniques Fonctionnement interne du g n rateur Comment ces champs sont d termin s lors de la g n ration d un mod le L abstracteur de base de donn es d openMairie peut en analysant une table r cup rer la liste de ses colonnes uniques Affichage dans les formulaires Comment ces champs sont repr sent s dans les formulaires Ces champs sont affich s indiff remment des champs sans contrainte Lors de la validation d un formulaire une v rification est faite pour chaque champ unique ainsi que pour un ventuel groupe de champs uniques Si une valeur ou combinaison est d j pr sente dans la base de donn es un message d erreur est affich et la base de donn es n est pas modifi e 3 1 4 4 Les champs requis Un mod le de donn es peut contenir un ou plusieurs champs requis D finition des champs requis Il suffit de d finir une contrainte SQL NOT NULL sans clause DEFAULT sur une colonne pour cr er un champ requis Attention En ajoutant une clause DEFAULT a
91. e comboaffichage inc php param tre de l affichage dans la fen tre combo php comboparametre inc php affecte des valeus sp cifiques au formulaire parent si il y a plusieurs nregistrement en lien choix en affichage comboretour inc php meme chose que comboparametre inc si il n y a qu un enregistrement en lien pas d affichage de la fenetre Voir chapitre framework formulaire sous programme g n rique combo php 2 1 3 11 Les param tres ditions Les variables dans les ditions sont param tr es dans varpdf inc pour les pdf varetatpdf inc pour les tats et les sous tats varlettretypepdf inc pour les lettres typ Voir chapitre framework dition 2 1 3 12 Les param tres om_sig var_sig php les param tres sont les suivants 38 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Scontenu_etendue 0 array 4 5868 43 6518 4 6738 43 7018 Scontenu_etendue 1 array vitrolles Scontenu_epsg 0 array EPSG 2154 EPSG 27563 Scontenu_epsg 1l array choisir la projection lambert93 lambertSud Stype_geometrie 0 array point line polygon Stype_geometrie 1 array choisir le type de g om trie point ligne polygone ces param tres sont utilis s pour la saisie de carte voir chapitre sig Les post traitements de form_sig permettent de faire des traitement apres saisie de
92. e d finir le type de l option Pour une recherche il faut saisir search La cl display est obligatoire Elle permet d afficher ou non la recherche tout en conservant sa configuration true permet d afficher la recherche false permet de masquer la recherche La cl advanced est obligatoire pour la recherche avanc e Elle permet de pr ciser que le formulaire de re cherche est un formulaire de recherche avanc e et non simple Cette cl doit contenir le tableau des champs configur s pour la recherche voir plus bas pour la configuration des champs La cl default_formest optionnelle Elle permet de choisir quel formulaire de recherche est ouvert par d faut La valeur advanced permet d afficher le formulaire multi crit res Les autres valeurs ou si default_form n est pas configur affichent le formulaire mono crit re La cl absolute_object est obligatoire Elle permet de sp cifier openMairie le nom du mod le l objet recherch Ce nom est celui du fichier dans obj ici om utilisateur class php sans son extension Autres param tres Wildcard Le wildcard permet de rendre la recherche stricte ou approximative Cette option peut se configurer pour un ou plusieurs mod les particuliers dans les fichiers correspondants du r pertoire sql de l application Elle peut galement tre configur e de mani re globale pour l ensemble dans mod le partir du fichier dyn tab inc php Par d faut il
93. e doit contenir la d claration d un tableau de tableaux associatifs dans la variable shortlinks Chaque tableau associatif repr sente un lien 2 1 Le framework 33 openMairie Framework Documentation Version 4 4 lt php On initialise le tableau conteneur Sshortlinks array On ajoute au tableau conteneur un tableau associatif repr sentant un lien r p ter autant de fois que n cessaire shortlinks array title gt _ Link description gt _ Description href gt scr link php target gt _ blank folass gt faction link ight gt iink gt Param tre Requis Description title O Texte description N Texte qui s affiche au survol de l l ment href N Contenu du lien href target N Attribut pour ouvrir le lien dans une nouvelle fen tre class N Classe CSS qui s affiche sur l l ment right N Permission n cessaire l utilisateur pour visualiser l l ment Les actions globales Le but de cette zone de navigation est de repr senter la section propos du logiciel Elle se situe en bas de l cran juste au dessous du contenu de la page et est visible lorsque l utilisateur est authentifi ou non openExemple Version 4 3 0 Documentation openMairie org Par d faut les actions globales sont compos es de trois l ments le nom du logiciel ainsi que son num ro de version un lien
94. e en ajax ou non dans les sous tableaux true l action utilisera la fonction ajaxIt false l action n utilisera pas la fonction ajaxIt 2 1 7 1 2 3 D finition de l ordre d affichage La cl ordre permet de d terminer l ordre d affichage par rapport aux autres actions Chaque action dispose d une valeur num rique permettant de d finir sa place au sein d une position L action num ro 1 s affichera en premier l action num ro 10 s affichera apr s les actions de num ro inf rieur etc Ordre des actions par d faut d openMairie ajouter pour ordre 10 dans la position corner consulter pour ordre 10 dans la position left Si la position corner est s lectionn e 9 l action s affichera avant l action ajouter 11 l action s affichera apr s l action ajouter Si la position left est s lectionn e 9 l action s affichera avant l action consulter 11 l action s affichera apr s l action consulter 2 1 7 1 2 4 D finition des droits d affichage La cl rights permet de d finir le ou les droits n cessaires l utilisateur pour visualiser cette action Cette cl est optionnelle Si rights n existe pas tous les utilisateurs pourront visualiser cette action s ils peuvent visualiser le tableau correspondant La cl 1ist permet de d finir le tableau des droits n cessaire La cl operator permet de d finir l op rateur uti
95. e_alfresco class php x D dyn F filestorage inc php D core F om filestorage class php F F Fr F x ce fichier n exist pas i L l est l titre d illustration de ce qu syst m st capable de f 2 1 Le framework 77 openMairie Framework Documentation Version 4 4 2 1 17 2 Fonctionnement Description de l abstracteur core om_filestorage class php Ce fichier est compos de deux classes la classe d abstraction la classe de base pour les classes sp cialis es La classe filestorage est une classe d abstraction de stockage de fichiers C est cette classe qui est instanci e et utilis e par d autres scripts pour g rer la cr ation r cup ration suppression de fichiers et ce peu importe le stockage utilis Son objectif est d instancier la classe de stockage sp cifique aussi appel e plugin de stockage correspondant au param trage s lectionn Cette classe de stockage sp cifique h rite de la classe filestorage_base qui lui sert de mod le Description du fichier de configuration dyn filestorage inc php Ce fichier de configuration doit permettre le param trage du stockage dans chacune des applications Par exemple il permet dans une installation d openElec de stocker les fichiers en utilisant le connecteur filesystem dans le path var openelec data sur le syst me de fichiers et dans une autre installation d openElec de stocker les f
96. eau recherche cha ne de caract res recherch e depuis le modules de recherche selectioncol num ro de la colonne s lectionn e dans le module de recherche tricol num ro de colonne et orientation du tri du tableau valide true false affiche ou non les enregistrements non valide L appel ser soustab php est fait en javascript depuis un formulaire afin d afficher les informations li es l enre gistrement en cours d dition 2 1 Le framework 39 openMairie Framework Documentation Version 4 4 2 1 4 2 La requ te SQL d affichage Elle se trouve dans sq DBTYPE objet inc php Les param tres sont les suivants pour om_parametre inc php lt php Nombre d enregistrements par page Sserie 15 Icone affich XXX voir deprecated ico img ico application png Titre du tableau Sent _ option gt _ om parametre Table de r f rence il peut y avoir une ou plusieurs jointure Stable DB_PREFIXE om parametre Liste des champs du tableau SchampAffiche array om parametre libelle valeur om_collectivite Champs pour la recherche SchampRecherche array libelle valeur Crit re de tri par d faut Stri dition PDF Sedition om parametre sous formulaire s associ s Ssousformulaire array autre exemple de sous formulaire avec om collectivite inc php Ssousformulaire array om e
97. ect voie voietype voielib zonetype zonelib cimetierelib from voie inner join zone on voie zone zone zon inner join cimetiere on zone cimetiere cimetiere cimetier where cimetiere cimetiere cimetiere order by tri Sregmo tri array voielib 64 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 zonelib Sreqmo zonetype checked Sreqmo zonelib checked Sreqmo cimetierelib checked reqmo cimetiere select cimetiere concat cimetiere cimetierelib from cimetiere 2 1 11 La gestion des acc s Le framework fournit un gestionnaire d acc s configurable dans les menus administration gt profil administration gt droit administration gt utilisateur Les acc s sont conserv s dans les tables du m me nom 2 1 11 1 Les tables La gestion des acc s est g r e avec 3 tables om_profil gestion par d faut de 5 profils administrateur 5 super utilisateur 4 utilisateur 3 utilisateur limit 2 consultation 1 Les profils sont hi rarchiques le profil 5 tant le plus lev il a acc s toutes les actions des profils inf rieurs om_droit chaque profil est affect un ou plusieurs droits om_utilisateur cette table permet de donner un login un mot de passe et un profil chaque utilisateur Diagramme de classe 2 1
98. ectivit Les utilisateurs de niveau 1 ne verront aucune notion de collectivit et n auront acc s qu aux l ments li s leur propre collectivit 2 1 11 4 Les login et logout Le login se fait par le script scr login php login php valorise les variables sessions permettant la gestion des acc s et s curit s lt php _SESSION profil Sprofil _SESSION nom nom _SESSION login login gt 66 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 La d connexion se fait avec le script scr logout php Le changement de mot de passe se fait avec le script scr password php L acc s au changement de mot de passe se fait par d faut dans le menu haut voir framework param trage 2 1 11 5 Les utilitaires La gestion des droits d acc s se fait dans les m thodes des utilitaires php openmairie om application class php composant openMairie obj utils class php voir framework utilitaire 2 1 12 Tableau de bord et widgets 2 1 12 1 principe Il est propos dans ce chapitre de d crire le tableau de bord param trable pour les utilisateurs param trage l acc s au tableau de bord param trable dyn dashboard inc php voir framework param trage Par d faut le tableau de bord param trable est activ il peut tre d connect en enlevant le commentaire die les widgets Les widgets sont des liens et ou de petits scripts param trables qui
99. eenvoi lors d un ajout de courrier Nous allons surcharger la methode setVal dans obj courrier class php de la mani re suivante function setVal amp S form S maj validation amp S db SDEBUG null parent setVal form maj validation db S SDEBUG null r if validation 0 if maj 0 Sform gt setVal dateenvoi date Y m d Le champ dateenvoi contiendra la date syst me date Y_m d si la validation est gale 0 ce qui signifie que le formulaire n a pas t valid et si maj est gal 0 ce qui signifie qu il s agit d un ajout Les autres valeurs que peut prendre maj sont 1 modifier 2 supprimer 3 consulter 1 1 3 4 Mettre en majuscule un champ Nous souhaitons maintenant mettre en majuscule le champ nom de la table emetteur Nous allons surcharger la m thode setOnchange dans obj emetteur class php de la mani re suivante function setOnchange amp form maj parent setOnchange form maj Sform gt setOnchange nom this value this value toUpperCase A la saisie ou la modification du nom le champ se mettra en majuscule 1 1 3 5 Principe retenir Voila quelques exemples des possibilit s de modification dans les fichiers sql r pertoire sgl et dans les m thodes de l objet repertoire obj En aucun cas il ne faut modifier les fichiers dans gen qui est l espace de travail propre au g n
100. effacer les sources pr sentes sur le poste local et faire confiance au repository cd lt r pertoire d sir gt cvs release d lt arborescence gt x d pour effacer d finitivement l arborescence cvs release d module status 130 Chapitre 7 Outils openMairie Framework Documentation Version 4 4 Pour obtenir le d tail statut de la version locale d une arborescenc cd lt r pertoire d sir gt cvs status lt arborescence gt vs st gt stat s diff log cvs diff cvs log lt nomfichier gt cvs diff lt nomfichier gt local differentiel cvs diff r 1 5 r 1 6 nomfichier entre 2 versions 7 1 2 4 export exemple opencimetiere_facture se mettre dans le repertoire openmairie_cimetiere_ facture taguer la version cvs tag version 2 03 commence par une lettre pas de point faire l export cvs export r version_2 03 d version opencimetiere_ facture 2 03 openmairie cimetiere_ facture version repertoire export module 7 1 2 5 tag Les identifiants logiques noms donn s une version par un utilisateur sont diff rents des identifiants CVS du type 1 1 2 1 La gestion d identifiant ou tag d une arborescence se fait ainsi cd lt r pertoire d sir gt cvs tag R d r lt nom de l identifiant gt lt arborescence gt cvs tag tag_ name creer un tag R commande appliqu e r cursivement sur les sous r pertoires
101. ell d un mod le il faut la nommer libelle Si cette colonne n existe pas le g n rateur consid re la deuxi me colonne de la table comme tant un libell ce syst me tait celui utilis dans les versions d openMairie 4 2 0 et inf rieures Enfin s il n existe pas de seconde colonne la cl primaire de la table est utilis 3 1 5 Fonctionnalit s avanc es 3 1 5 1 Ajouter une date de validit un mod le Description Le g n rateur permet de cr er des objets qui seront consid r s comme valides seulement pendant une p riode donn e Qu est ce qu un objet date de validit Un objet date de validit est un objet contenant deux champs sp cifiques om_validite debut d terminant la date de d but de validit om_validite fin d terminant la date de fin de validit Un objet valide se comporte comme un objet traditionnel Par contre lorsqu il arrive expiration l objet n appara t plus dans les tableaux les sous tableaux et les champs de s lection sauf s il est actuellement valeur de l un de ses champs Un tel objet est valide lorsque sa date de d but de validit est nulle ET sa date de fin de validit est nulle OU sa date de fin de validit est strictement sup rieure la date actuelle OU sa date de d but de validit est inf rieure ou gale la date actuelle ET sa date de fin de validit est nulle OU sa date de fin de validit est st
102. ellule_fond_nbr 1 sousetat cellule fontaille nbr 10 Ssousetat cellule hauteur _nbr 7 212 219 220 sousetat cellule fondcouleur_nbr 255 255 2551 3 1 8 7 gen dyn lettretype inc php parametres general variable amp nouveau variable chr 163 compatibilite openmairie lt 4 parametres lettretypel orientation P lettretypel format A4 logo lettretype logo logopdf png Slettretypel logoleft 58 Slettretypel logotop 7 titre Slettretypel titreleft 41 Slettretypel titretop 36 lettretypel titrelargeur 130 Slettretypel titrehauteur 10 Slettretypel titrefont helvetica Slettretypel titreattribut B lettretypel titretaille 15 lettretype titrebordure 0 Slettretypel titrealign C corps Slettretypel corpsleft 7 Slettretypel corpstop 57 Slettretypel corpslargeur 195 Slettretypel corpshauteur 5 Slettretypel corpsfont helvetica Slettretypel corpsattribut Slettretypel corpstaille 10 Slettretypel corpsbordure 0 Slettretypel corpsalign J 3 1 Le g n rateur 97 openMairie Framework Documentation Version 4 4 98 Chapitre 3 Le g n rateur CHAPITRE 4 L
103. ement sur le m tier et de faire valider par l utilisateur les volutions successives Si vous d butez il est pr f rable de commencer par le chapitre cr er une application qui permet de prendre en main facilement le g n rateur et le framework openMairie en vous guidant pas pas dans le mise en place d une gestion de courrier Le chapitre sur le framework compl te l exemple ci dessus en vous d crivant le param trage les classes for mulaires et ditions du framework Il a pour but de vous informer de mani re compl te sur le fonctionnement du framework Le chapitre consacr au g n rateur d crit dans le d tail le fonctionnement de cet outil et de ses assistants Cet outil permet de fabriquer la maquette La version 4 1 0 permet de construire des applications composites ou mash up en int grant des contenus venant d application externes Cela permet de construire rapidement une application faible co t gr ce la fusion de multiple service internet Le chapitre consacr a l information g ographique d crit dans le d tail le fonctionnement SIG interne d open Mairie combinant les API d internet avec le framework La version 4 2 0 am liore l interface avec l int gration de web service Enfin ce document rassemble toutes les r gles de codage du projet openMairie ainsi que des outils pour aider et guider les d veloppeurs de la communaut Les r gles indiqu es doivent
104. emple Version 4 0 0 dev Documentation openMairie org 3 1 2 1 Analyse de la base Le programme propose une analyse de la base en cours liste des tables de la base l information sur la cl primaire de la table 84 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 la longueur de l enregistrement de la table les informations sur les champs nom type et longueur les cl s secondaires exemple table om_colllectivite les sous formulaires associer A partir de la version 4 2 0 il n y a plus de choix de param trage dans l cran 3 1 2 2 Les fichiers g n rer Il est propos une liste de case cocher La case est coch e sur le fichier correspondant n existe pas colonne de droite Le formulaire m tier auto g n r table inc tableform inc est toujours coch fichiers en gen gen obj table class php gen sql basededonnees table inc gen sql basededonnees table form inc La g n ration de ces 3 fichiers ne met pas en p ril votre programmation qui est en obj table class php sql basededonnees table inc sql basededonnees table form inc basededonnees mysql ou pgsql 3 1 3 Conditions de g n ration 3 1 3 1 Contraintes de la base de donn es Pour qu un mod le de donn es puisse tre g n r il faut que la table de base de donne s qui le repr sente remplisse les conditions suivantes la table doit
105. er BB import du fichier CSV Fichier 2 0 S parateur point virgule Importer le fichier dans la table courrier Retour openExemple Version 4 4 0 dev Documentation openMairie org Pour en savoir plus voir framework import 1 1 3 Personnaliser son application Nous allons maintenant personnaliser notre application Pour ce faire nous allons saisir un jeu de donn es Vous pouvez le faire avec les formulaires l incr mentation des s quences tant faite par le framework Tout comme la cr ation des tables stockant les s quences m thode ser d des objets metier Sinon ex cutez la requ te PostgreSQL suivante 12 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 cr ation des tables de s quence d j faite insertion de deux metteurs avec r cup ration et incr mentation de la table de s quences INSERT INTO emetteur emetteur nom prenom VALUES nextval emetteur_seq dupont pierre nextval emetteur_seq durant jacques insertion de deux services avec r cup ration et incr mentation de la table de s quences INSERT INTO service service libelle VALU nextval service _seq informatique nextval service seq telephonie Ed uv insertion de deux courriers avec r cup ration et incr mentation de la ta
106. ers t l chargeables se fait dans la classe m tier de l objet spg rvb php et js rvb js Ce script est associ au champ rvb et affiche une palette de couleur pour r cup rer un code rvb Les m thodes de construction et d affichage Le formulaire est constitu de div fieldset et de champs les m thodes suivantes permettent une mise en page structur e formulaire entete ouverture du conteneur du formulaire formulaire enpied fermeture du conteneur du formulaire formulaire afficher affichage des champs appelle les m thodes suivante formulaire debutFieldset ouverture de fieldset formulaire finFieldset fermeture de fieldset formulaire debutBloc ouverture de div formulaire finBloc fermeture de div formulaire afficherChamp affichage de champ Les m thodes assesseurs changent les valeurs des attributs de l objet formulaire Ces m thodes sont appel es depuis les classes m tier elles permettent la configuration du formulaire formulaire setType type de champ formulaire setVal valeur du champ formulaire setLib libell du champ formulaire setSelect permet de remplir les champs select avec la table li e formulaire setTaille taille du champ formulaire setMax nombre de caract res maximum accept s formulaire setOnchange permet de d finir des actions sur l v nement onchange formulaire setKeyup permet de d finir des actions sur l
107. ersion 4 4 gid serial NOT NULL numero character varying 4 feuille smallint section character varying 2 code_dep character varying 2 nom_com character varying 45 code_com character varying 3 com_abs character varying 3 code_arr character varying 3 the_geom geometry ainsi qu un enregistrement parcelle dans g ometry_columns postgis est obligatoire dans la base et un index Selectionner les parcelles de la commune concern e et inserer les dans une nouvelle table insert into parcelle _greasque parcelle section commune geom select section numero section code _ depl code com the_geom from parcelle where code com 046 Pour mettre jour le champ surface de parcelle dans openfoncier update parcelle set surface round cast area2d geom as numeric 2 4 1 7 4 Recup ration des donn es de la DGI Les fichiers textes de la DGI sont dans un format r cup r dans le cadre de 1 application openCadastre qui recons titue des tables postgresql Les fichiers g m triques au format EDIGEO ne sont pas r cup r s compte tenu de son format non standard et il est pr f r utiliser les formats shape de 1 IGN L application openCadastre permet de r cup rer les donn es texte 4 1 L information g ographique 113 openMairie Framework Documentation Version 4 4 114 Chapitre 4 L information g ographique CHAPITRE 5 Historique amp Mises niveau 5 1 Historique a
108. es formulaires et dition de l emetteur Nous allons proc der de la m me mani re avec le bouton emetteur L analyse de la base de donn es est la suivante analyse Analyse de la base de donn es pgsql gt openexemple openexemple Elements Infos Tables de la base om_lettretype om_profil om_collectivite om_sousetat om_logo om_utilisateur de donn es om_parametre om_dashboard om_sig_map_comp courrier om_droit service om_sig_map_wms om_requete om_sig_wms om_widget om_sig_map om_etat Table emetteur cl N cl automatique emetteur longueur enregistrement 136 Champs emetteur 11 int nom 20 string prenom 20 string adresse 40 string cp 5 string ville 40 string Sous formulaire courrier Cl secondaire Le g n rateur rep re un sous formulaire courrier Effectivement il y a une relation de un plusieurs entre emetteur et courrier un emetteur peut avoir 0 plusieurs courriers En cliquant sur toutes les options puis en validant vous avez le message suivant 1 1 Tutoriel Cr er une application 7 openMairie Framework Documentation Version 4 4 Table emetteur Aucun changement de gen sql pgsql emetteur inc php Aucun changement de sql pgsal emetteurinc php Aucun changement de gen sql pgsql emetteurform inc php Aucun changement de sql pgsql emetteurform inc php Aucun changemen
109. es m thodes pour construire des formulaires avec le framework les outils d dition du framework outil de requ te param trable du framework la gestion des acc s du framework ainsi que la gestion multi collectivite l ergonomie int grant jquery la gestion de traitement et la construction de programme sp cifiques avec les utilitaires l import des donn es CSV du framework 2 1 1 Arborescence Cette rubrique vise d crire bri vement l arborescence du framework pour comprendre l objectif de chaque r pertoire Elle est divis e en deux parties les r pertoires sp cifiques l applicatif qui sont modifi s lors du d ve loppement de l applicatif et les r pertoires du framework qui sont r cup r s tel quel dans le framework F htaccess dans les descriptions de r pertoires ci dessous repr sente des fichiers htaccess emp chant l acc s dans les r pertoires en question qui ne doivent pas tre accessibles depuis l interface par l utilisateur 23 openMairie Framework Documentation Version 4 4 2 1 1 1 Les r pertoires sp cifiques l applicatif Ces r pertoires sont ceux qui font l applicatif Par exemple sur un applicatif comme openCimeti re ce sont les r pertoires qui vont se trouver dans le gestionnaire de fichiers que l on appelle les r pertoires sp cifiques data Contient tous les fichiers d initialisation de la base de donn es de l applicatif D data
110. es versions de l arborescence concern e sous CVS L historique sur un r pertoire affiche r cursivement les historiques des fichiers le composant Cvsignore La pr sence de fichier s cvsignore dans un r pertoire permet de dire CVS d ignorer certains types de fichiers cd lt r pertoire d sir gt cat cvsignore 3jpg x htm 7 1 2 9 Changer le syst me de gestion des version de CVS vers SVN sur la forge de l adullact Le but de ce tutorial est de changer le syst me de gestion de version sur un projet existant sur la forge de l adullact Pr requis Le projet sur l adullact en CVS lt NOM_DU_PROJET gt Le nom du module r cup rer lt NOM_DU_MODULE gt Les droits d administration sur le projet lt NOM_DU_DEVELOPPEUR gt Etape 1 R cup rer le code du CVS cvs d pserver anonymous scm adullact net cvsroot lt NOM DU_PROJET gt login cvs d pserver anonymous scm adullact net cvsroot lt NOM_ DU_PROJET gt export DNOW lt NOM_DU_MODULE gt Important si un mot de passe est demand un mot de passe vide fera l affaire A cette tape il est recommand de faire une archive du dossier lt NOM_DU_MODULE gt qui vient d tre export pour le sauvegarder 132 Chapitre 7 Outils openMairie Framework Documentation Version 4 4 Etape 2 Changer le type de d p t En tant qu administrateur aller dans l onglet Sources puis cliquer sur le lien
111. est l titre d illustration de ce que le syst me est capable de faire Description du connecteur alfresco core om_filestorage_alfresco class php Ce fichier permet de d clarer la classe sp cialis e pour stocker les fichiers sur Alfresco ce fichier n existe pas il est l titre d illustration de ce que le syst me est capable de faire 2 1 17 3 Utilisation Les m thodes de la classe d abstraction sont d sormais utilis es dans la classe upload et dans les widgets upload file du formulaire 80 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Il est possible de param trer une liste de m tadonn es d un champ upload certains champs de ce formulaire pouvant contenir certaines informations ajouter aux informations du fichier upload il est necessaire de cr er le fichier lors de la validation du formulaire Pour ce faire le fichier upload sera enregistr temporairement sur le filestorage d fini pour les fichiers temporaires puis enregistr sur le filestorage d finitif lors de la validation du formulaire Hors formulaire la m thode create peut tre utlis e de 3 fa ons en lui passant le chemin du fichier dans data et avec le mode d fini from_path en lui passant le contenu du fichier dans data fonctionnement existant avant modification en lui passant l UUID d un fichier temporaire avec le mode d fini from_temporary Configuration
112. et scmrepos svn openboisson branches cela fait branches trunk dossiers_souce Ensuite on d place le dossier trunk qui se trouve maintenant dans branches la racine du d p t gt svn mv svntssh fraynaud scm adullact net scmrepos svn openboisson branches trunk svn ssh fraynaud scm adullact net scmrepos svn openboisson trunk cela fait trunk dossiers_source creer deplacer autre exemple detruire un repertoire sur svn creer un dossier documentation sur svn depuis une copie loacl svn import documentation svn ssh fraynaud scm adullact net scmrepos svn opencimetiere documenta renomer renommer sur le svn trunk en temp svn rename svn ssh fraynaud scm adullact net scmrepos svn opencimetiere documentation trunk svn ssh fraynaud scm adullact net scmrepos svn opencimetiere documentation temp move deplacer le dossier temp trunk vers trunk svn mv svn tssh fraynaud scm adullact net scmrepos svn opencimetiere documentation temp trunk svn ssh fraynaud scm adullact net scmrepos svn opencimetiere documentation trunk delet detruire le repertoire temp svn del svn tssh fraynaud scm adullact net scmrepos svn opencimetiere documentation temp Creation d une nouvelle version Copie en tag de la version svn cp svn tssh fraynaud scm adullact net scmrepos svn openboisson trunk svn ssh fraynaud scm adullact net scmrepos svn openboisson tags 1 0 0beta export dans un repertoire local ope
113. ettres type tape 4 syst me de stockage des fichiers Le syst me de stockage de fichier ayant t mis jour le syst me utilis conserve la compatibilit avec les fichiers existant Les erreurs connues 5 1 2 La version 4 3 5 1 2 1 Les nouveaut s de la version 4 3 5 1 2 2 Mettre niveau depuis openMairie 4 2 vers 4 3 Cette proc dure permet de mettre niveau une application utilisant openMairie version 4 2 0 vers openMairie 4 3 0 Pour conserver une application fonctionnelle tout au long de la mise niveau il est vivement conseill de suivre les tapes de cette proc dure dans l ordre ne pas utiliser le g n rateur lorsque ce n est pas indiqu Consultez la section sur les erreurs connues si des erreurs persistent apr s la mise niveau tape 1 mettre jour les surcharges du framework 5 1 2 2 1 1 Classe application Supprimer l utilisation de l attribut lt php var permission_ if right does not _exist true gt S il est utilis dans une surchage il doit tre remplac e par lt php Sthis gt configl permission_if_ right does _not_exist 2 gt Les m thodes surcharg s de la classe om_application doivent tre mises jour avec leur nouvelle impl men tation 5 1 2 2 1 2 Classe dbForm Les m thodes surcharg s de la classe dbForm doivent tre mises jour avec leur nouvelle impl mentation 5 1 2 2 1 3 Classe formulaire Les m thodes s
114. eur pour visualiser l l ment 2 1 3 2 Le tableau de bord Le tableau de bord se param tre dans le fichier dyn dashboard inc Ce fichier est appell par le script scr dashboard php Pour avoir son propre tableau de bord il suffit de decommenter la ligne die et on acc de plus au widget Voir chapitre widget et tableau de bord param trable 2 1 3 3 Les variables locales et la langue Les variables locales sont param tr es dans le fichier dyn locales inc php Ce fichier contient le param trage du codage des caracteres ISO 8859 1 ou UTF8 DEPRECATED define CHARSET ISO 8859 1 ou define CHARSET UTF8 Dans la version 4 2 0 il y a 2 param tres pour la base DB_CHARSET pour apache HTTP_CHARSET Ces 2 param tres remplacent CHARSET Note Dans apache il est possible de modifiet l encodage dans etc apache2 apache2 conf commenter AddDefaultCharset ISO 8859 1 relancer ensuite apache etc apache2 init d apache2 reload A partir de la version 3 0 1 l imcompatibilit utf8 de la bibliotheque fpdf est trait e le dossier ou sont install es les variables du systeme define LOCALE fr_FR Le dossier contenant les locales et les fichiers de traduction define LOCALES _ DIRECTORY locales Le domaine de traduction define DOMAIN openmairie Les zones tradui
115. euvent tre traduites soit en fran ais accentu soit dans d autres langues Pour cela il est n cessaires qu elles soient pr sentes dans les fichiers php en respectant la syntaxe suivante VA _ Ma chaine a traduire sans accent Toutes les cha nes de caract res correspondant aux noms de tables et de champs sont g n r es par le g n rateur et sont ainsi directement disponibles 7 1 5 2 Pr paration des dossiers de locales Chaque application openMairie comporte la racine un dossier appel locales Ce dossier comporte une structure de type locales fr_FR LC_MESSAGES openmairie po openmairie mo Il est n cessaire de cr er un dossier de langue par exemple en_US avec son sous dossier LC_MESSAGES pour chaque langue suppl mentaire Le fichier po contient les d finitions de traductions il peut tre modifi au moyen de POEdit ou directement depuis un diteur de texte simple Le fichier mo contient les traductions sous une forme compil e Il est g n r par POEdit automatiquement lors de chaque sauvegarde des traductions 7 1 5 3 Installation et configuration de POEdit Installation POEdit est disponible nativement dans la plupart des syst mes linux Il est possible de le t l charger depuis le site officiel pour tous Linux Windows et Mac OSX http www poedit net download php Sous Linux Ubuntu ou Debian il faut en root ex cuter la commande apt get install
116. externe dsn_externe array title gt base locale des adresses de l IGN phptype gt pgsql dbsyntax gt pgsql username gt postgres password gt postgres protocol gt tcp lhostspec gt localhost port gt 5432 socket gt database gt ignlocal formatdate gt AAAA MM JU schema gt public prefixe gt db_option_externe array debug gt 2 portability gt DB_ PORTABILITY_ ALL G olocalisation par acc s un API externe variables par defaut cp et ville si non renseign es dans le formulaire pour recherche Scp 13200 Sville Arles pays a voir epsg de transformation pt adresse postale dans la base en cours Sepsg EPSG 27563 acces au script adresse postale externe Sadresse_interne Oui Sgoogle Oui google bing Oui bing osm Oui mapquest le parametre adresse_interne Oui permet de consulter une adresse stiock e dans le r seau interne sur la m me base ou sur une base diff rente voir plus haut Ensuite 3 API peuvent tre initialis s google bing et mapquest 4 1 6 2 Mise en oeuvre dans un formulaire d un bouton de la geolocalisation La g olocalisation se fait sur la base du script sig adresse_postale php qui fait appel suivant le param trage adresse_postale bing php adresse_ postale _google php adresse_postale
117. ffiche la valeur de la table li e non modifiable ainsi que la valeur dans un champ hidden formulaire select multiple affiche un select multiple les valeurs pass es au formulaires doivent tre s par es par une vir gule formulaire select multiple static affiche seulement les valeurs d un select multiple les valeurs pass es au formulaires doivent tre s par es par une virgule formulaire comboG permet d effectuer une corr lation entre un groupe de champ et un identifiant dans les formu laires formulaire comboG2 permet d effectuer une corr lation entre un groupe de champ et un identifiant dans les sous formulaires formulaire comboD permet d effectuer une corr lation entre un groupe de champ et un identifiant dans les formu laires formulaire comboD2 permet d effectuer une corr lation entre un groupe de champ et un identifiant dans les sous formulaires formulaire upload fait appel spg upload php pour t l charger un fichier formulaire upload2 fait appel spg upload php pour t l charger un fichier dans un sous formulaire formulaire voir fait appel spg voir php pour visualiser un fichier formulaire voir2 fait appel spg voir php pour visualiser un fichier depuis un sous formulaire formulaire localisation fait appel spg localisation php formulaire localisation2 fait appel spg localisation php formulaire rvb fait appel spg rvb php pour af
118. fficher plusieurs champs de type texte nombre date ou liste choix il permet pour chaque tableau de configurer la liste des champs affich s il permet pour chaque champ de rechercher des valeurs strictes ou approximatives par d faut approximatives il permet pour chaque champ de rechercher des valeurs dans des tables et des colonnes qui ne sont pas affi ch es il conserve les valeurs recherch es apr s la r alisation d une action ajout modification etc il dispose d un bouton Vider le formulaire permettant de vider les champs il dispose d un bouton permettant de basculer sur le formulaire mono crit re 2 1 5 2 Configuration de la recherche avanc e Activation Exemple avec le mod le om utilisateur Pour activer la recherche avanc e rendez vous dans le fichier sql sgbd om utilisateur inc phpet ajoutez la configuration suivante au tableau d options lt php Soptions array type gt search display gt true advanced gt champs default_form gt advanced 2 1 Le framework 41 openMairie Framework Documentation Version 4 4 absolute _ object gt om utilisateur gt Note A partir de la version 4 3 0 d openMairie le tableau options est disponible dans les fichiers sal de l application Il n est plus n cessaire de le d clarer manuellement La cl t ype est obligatoire Elle permet d
119. fichage de la palette couleur formulaire rvb2 fait appel spg rvb php pour affichage de la palette couleur formulaire geom ouvre une fen tre tab_sig php pour visualiser ou saisir une g om trie selon l action la carte est d finie en setSelect Les widgets comboG comboD date upload voir et localisation sont mettre dans les formulaires Les contr le comboG 2 comboD date2 upload2 voir et localisation sont mettre dans les sous formulaires Les widgets font appel des scripts d aide la saisie stock s dans le r pertoire spg ils sont appel s par js script js Ce script peut tre surcharg dans app js script js spg combo php Ce programme est appel par le champ comboD comboG comboD2 comboG le param trage se fait dans les fichiers dyn comboparametre inc php dyn comboretour inc php dyn comboaffichage inc php spg localisation php et js localisation js ce programme est li e au champ formulaire localisation spg voir php Ce script est associ au champ upload 2 1 Le framework 53 openMairie Framework Documentation Version 4 4 Ce sous programme permet de visualiser un fichier t l charg sur le serveur pdf ou image spg upload php Ce script utilise la classe core upload class php composant openMairie Le param trage des extensions t l chargeables se fait dans dyn config inc php Le param trage de la taille maxi male des fichi
120. formulaire affichepdf r cup re un nom d objet un scan pdf formulaire checkbox case cocher valeurs possibles True ou False formulaire checkboxstatic affiche Oui Non non modifiable mode consultation formulaire checkboxnun coch e 1 non coch e 0 formulaire http lien http avec target _blank affichage dans une autre fen tre formulaire httpclick lien avec affichage dans la m me fen tre formulaire date date modifiable avec affichage de calendrier jquery formulaire date2 date modifiable avec affichage de calendrier jquery pour les sous formulaires formulaire hiddenstaticdate date non modifiable Valeur r cup r par le formulaire formulaire datestatic affiche la date format e non modifiable mode consultation formulaire textarea affichage d un textarea formulaire textareamulti textarea qui r cup re plusieurs valeurs d un select formulaire textareahiddenstatic affichage non modifiable d un textarea et r cup ration de la valeur formulaire pagehtml affichage d un textarea et transforme les retours charriot en lt br gt formulaire select champ select formulaire selectdisabled champ select non modifiable formulaire selectstatic affiche la valeur de la table li e non modifiable mode consultation 52 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 formulaire selecthiddenstatic a
121. g Le tableau de bord peut g rer toutes sortes d informations internes ou externes l application les taches non soldees pour openCourrier les appels la maintenance l horoscope la m t o une vid o des photos Les widgets internes les liens sur les cartes mettre danbs le champ lien la carte de raphele avec tab_sig_point php scr tab_sig_point_db php obj raphele 1 amp zoom 6 celle de mas thibert scr tab_sig_point php obj odp_6 amp zoom 7 les acc s personnalis s ajax au travers de son code utilisateur dans openCourrier lt script type text javascript gt ajax type GET url app tab wid php cache false data amp obj tachenonsolde_ service success function html f aff3 append html lt script gt lt div id aff3 gt lt div gt Ce code lance dans le widget app tab_wid php obj tachenonsolde_service tachenonsolde_ service est initialis dans sql mysql tachenonsolde_service inc Il ne s affichera que la premi re page param trer serie pour le nombre d enregistrement affich s Attention si vous affichez plusieurs widgets openmairie mettre un id different pour chaque div ici aff3 Les widgets externes Les autres applications openMairie peuvent aussi tre accessibles par widget de la m me mani re que le para graphe ci dessus D autres widgets externes sont accessibles en mettant dans le champ
122. ge doit contenir la d claration d un tableau de tableaux associatifs dans la variable actions Chaque tableau associatif repr sente un lien lt php ei Sactions array Sactions array title _ Link description gt _ Description thref gt scr link php target gt _ blank folass gt faction link right gt link P gt Description de chaque param tre du tableau associatif Param tre Requis Description title O Texte description N Texte qui s affiche au survol de l l ment href N Contenu du lien href target N Attribut pour ouvrir le lien dans une nouvelle fen tre class N Classe CSS qui s affiche sur l l ment right N Permission n cessaire l utilisateur pour visualiser l l ment Les raccourcis Le but de cette zone de navigation est de regrouper des liens vers des fonctions pr cises utilis es tr s souvent Elle se situe en haut droite de l cran juste au dessous des actions personnelles et est visible uniquement lorsque l utilisateur est authentifi admin LIBREVILLE Mot de passe 6 D connexion Tableau de bord Par d faut les raccourcis contiennent uniquement un lien vers le tableau de bord La configuration des liens se fait dans le fichier dyn shortlinks inc php Ce fichier de param trage n est pas obligatoire Si il n existe pas aucun lien n est affich Ce fichier de param trag
123. gt lt font face Verdana size 2 gt lt b gt afficher l horoscope du jour lt b gt lt font gt lt a gt lt iframe gt lt noscript gt lt a href http www astroo com horoscope php target _blank gt horoscope lt a gt lt noscript gt lt FIN CODE ASTROO gt Acces un fil rss avec un module ajax google lt script src http www gmodules com ig ifr url http www ajaxgaier com iGoogle rss reader 2B xml amp up_title Actualit C3 5A9s 20atReal amp up_feed http 3A 2F 2Fwww atreal fr 2Fatreal 2Fcommunaute 2Factualites atreal 2FRSsS amp up_contentnr 9a amp up_fontsize 9eup_lineheight 70 amp up_titlelink amp up bullet 1 amp up_reload_feed 0 amp up_reload_fqcy 0 amp up_hl_background FFFFFF amp synd open amp w 2008 amp h 100 amp title amp border 23ffffff6 7C3px 2Clpx solid 23999999soutput js gt lt script gt Affichage de photos avec flick r appel javascript lt table gt lt tr gt lt div class flick_r gt lt script type text javascript src http www flickr com badge code _v 2 qgne count 3 amp display latest amp size s amp layout h amp source user amp user 27995901 40N03 gt lt script gt 2 1 Le framework 69 openMairie Framework Documentation Version 4 4 lt div gt lt tr gt lt table gt 2 1 12 3 le tableau de bord param trable ce paragraphe propose de d crire l utilisation du tableau de bord param trable p
124. gt service Il faut galement bien placer le code c est dire dans la bonne rubrique pr cis e en commentaire apr s links array et avant Srubrik links links Enfin pour y acc der il faut soit donner les droits via le menu framework soit et c est en l occurrence le cas dans le fichier config inc php option utilis e que pour le d veloppement d commenter la ligne Sconfigl permission_if_ right _does_not_exist true Vous pouvez maintenant acc der vos formulaires par le menu 1 1 2 5 Menu Application gt Courrier Cette op ration affiche la table courrier 1 1 Tutoriel Cr er une application 9 openMairie Framework Documentation Version 4 4 application courrier courrier 1 0 enregistrement s sur 0 Tous i Recherche courrier 2 dateenvoi emetteur 2 service 2 Aucun enregistrement openExemple Version 4 4 0 dev Documentation openMairie org On acc de en appuyant sur au formulaire d insertion o les champs sont la date du courrier avec calendrier l objet du courrier dans un champ textarea deux contr les select pour le service et 1 emetteur application courrier courrier Retour dateenvoi E objetcourrier emetteur Choisir emetteur service Choisir service Ajouter l enregistrement de la table courrier a Retour openExemple Version 4 4 0 dev Documentation openMair
125. ialiser une variable globale gale 0 et qui prend la valeur 1 si la zone geometrique est au format wkt En effet le point ramen par 1l API externe est au format geographique lattitude longitude en wl il commence par POINT x y et il convient de le mettre dans la projection de la zone g ometrique class odp extends odp_gen var S Swkt 0 dans la methode setValF rep rer une valeur wkt if substr Sval geom 0 5 POINT 110 Chapitre 4 L information g ographique openMairie Framework Documentation Version 4 4 Sthis gt wkt 1 Sthis gt valF geom null utiliser les methodes de mise jour apr s saisie pour la geometrie function triggermodifierapres id amp db S val SDEBUG if this gt wkt 1 Sthis gt sig_wkt id amp db val SDEBUG function triggerajouterapres id e amp S db S val SDEBUG id this gt valF odp id n est pas valorise en ajout 1 this gt wkt 1 this gt sig_wkt id amp db val SDEBUG function sig_wkt id amp db val DEBUG si wkt gt saisie en format binaire wkb pour postgre Sprojection db gt getOne select srid from geometry_columns where f_table _name this gt table sql update this gt table set geom geometryfromtext Svall l geom Sprojection where S this gt table iq res db gt query sql if DB
126. ible de supprimer un enregistrement si des enregistrements sont li s la cl primaire Il est v rifier l unicit de la cl si elle n est pas automatique version 4 2 0 Les libell s sont les noms des champs Ce module sert pour le formulaire et le s sous formulaire s 3 1 Le g n rateur 91 openMairie Framework Documentation Version 4 4 Les m thodes qui peuvent tre impl ment s dans obj nom_table class php sont les suivantes verifier regroupe et groupe pour modifier les pr sentations deprecated utiliser setLayout trigger avant ou apr s l enregistrement triggerajouter triggermodifier triggersupprimer triggerajouterapres triggermodifierapres triggersupprimerapres Les m thodes de l objet g n r en gen obj peuvent tre surcharg es totalement ou partiellement Exemple om_profil class php surcharge des m thodes setValFAjout setld verifierAjout et setType car la cl primaire est num riqu t non automatique om_utilisateur class php champ pwd pour mot de pass methode partiellement surcharg es parent setvalF Sval setvalF setType setValsousformulare surcharge avec un javascript de mise en majuscule du nom Enfin il est possible de mettre en place d autres type de champs disponible dans openMairie en surchargeant la m thode setType ComboG combo gauche comboD combo droit Localisation geolocalisation en x y http lien
127. ichiers dans alfresco sur un autre serveur Il doit permettre de s lectionner le stockage utiliser ainsi que le param trage sp cifique chacun des connecteurs Par exemple pour le stockage filesystem il doit tre possible de param trer le r pertoire dans lequel vont tre stock s les fichiers pour le stockage alfresco il doit tre possible de param trer l adresse de l h te l identifiant et le mot de passe de connexion Il permet aussi de stocker la configuration du stockage de fichier temporaire Ce fichier s inspire des autres fichiers de configuration mail inc php directory inc php Il doit contenir un tableau associatif Sfilestorage array Exemple d un param trage la cl filestorage default doit tre rajout e dans une des valeurs du param trage du fichier database inc php comme l est mail default ou directory default Sfilestorage filestorage default array storage gt filesystem l attribut storage est obligatoire storage _ path gt l attribut storage path n est pas obligatoire path gt var www openfoncier data temporary gt array storage gt filesystem l attribut storage est obligatoire path gt Etmp le repertoire de stockage Si aucun filestorage n est param tr le filestorage deprecated sera instanci et le filestorage temporaire sera le filesystem Description des m
128. icon om icon 16 om icon fix delete 16 title Consulter gt _ Consulter lt span gt 2 1 Le framework 55 openMairie Framework Documentation Version 4 4 rights gt array list gt array obj obj _ consulter operator gt OR ordre gt 10 gt Plusieurs emplacements d actions existent corner actions dans la premi re cellule du tableau left action situ es dans la premi re colonne disponibles pour chaque l ment du tableau content action sur le contenu du tableau onanifin nantant antinn ous nna nalanna da nantan du tahlaan admin Ville d ARLES Mot de passe D connexion a ES Administration Utilisateur Param trage Utilisateur v Administration Corner specific_content Collectivit l r Forte Vies 1 2 enregistrement s sur 2 Tous 4 Recherche a i vutilisateur 2 gt nom 2 r erail 2 login profil Profil Droit content mie 2 D monstration confact openmairie org demo ADMINISTRATEUR Utilisateur n 1 Administrateur contact openmairie org admin ADMINISTRATEUR Tableaux De Bord Widget Sig left openExemple Version 4 3 0 dev Documentation openMairie org Om_sig_map Om_sig_wms Options Avancees Import G n rateur Les actions par d faut Par d faut seules les actions ajouter et consulter sont disponibles depuis les tableaux Cr er de nouvelles actions La cr ati
129. ie org Param trage gt Emetteur Cette operation affiche la table emetteur application emetteur emetteur 1 0 enregistrement s sur 0 Tous emetteur 2 gt nom 2 gt prenom 2 Aucun enregistrement openExemple Version 4 4 0 dev Documentation openMairie org En appuyant sur on acc de la saisie L onglet courrier est inactif tant que l emetteur n est pas saisi et valid a Recherche 10 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 application emetteur emetteur lt Retour nom prenom Ajouter l enregistrement de la table emetteur Ea Retour openExemple Version 4 4 0 dev Documentation openMairie org Param trage gt Service Cette op ration affiche la table service application service service 1 0 enregistrement s sur 0 Tous service gt libell Aucun enregistrement openExemple Version 4 4 0 dev Documentation openMairie org En appuyant sur on acc de la saisie L onglet courrier est inactif tant que le service n est pas saisi application service service La Retour libell Ajouter l enregistrement de la table service A Retour openExemple Version 4 4 0 dev Documentation openMairie org Vous pouvez acc der aux ditions et requ tes m moris es Export gt Edition Cet option affiche l ensemble des ditions pdf Export dition
130. ies compl mentaires Il peut y avoir plusieurs g om tries pour un m me objet Elles sont saisies dans om_sig_map_comp 106 Chapitre 4 L information g ographique openMairie Framework Documentation Version 4 4 titre polygone nom de la nouvelle g om tri ordre d affichage I ordre d affichage dans le select actif coch activ la nouvelle g om tri Mise a jour coch autoris la mise jour type de g om tri polygone polygone point ligne table dossier table du champ g om trique champ geom1 champ g ometrique concern Administration gt Om_sig_map gt 3 DOSSIER lt p Administration Om_sig map_comp 1 om_sig_map_comp om_sig_map Titre Ordre d affichage Actif Mis jour Type de g om trie Table Dans 1 exemple pr c dent il apparait une fen tre select ou 1 utilisateur a le choix entre une g om trie point et une g om trie polygone du fait de la mise en place d une g om trie compl mentaire 4 1 4 installation d om_ sig _ map Pour faire fonctionner tab_sig php il faut installer postgis sous postgres openlayers qui est de base dans le framework lib openlayers 4 1 4 1 optimisation composant openLayers construire un OpenLayers js compresse dans le repertoire build cd buill python build py le fichier fait 800 ko au lieu de 3 Mo compression lite python build py lite cfg le fichier fait 120 ko regarder dan
131. iger les labels tronqu s Attention les temps de r ponses peuvent s allonger car il n y a pas de cache 4 1 3 4 La notion de pannier Le pannier permet de pouvoir stocker des g om tries au travers de flux wms mais attention la g om trie est r cup r e dans une table ou une vue postgis c est pour l instant une limite de la version 4 2 0 exemple openFoncier carte dossier Il est propos dans ce cas de stocker des polygones dans le pannier et de sauvegarder un multipolygone constitu de ces polygones r cup r s dans le pannier Choisir dans le select polygone L etat est dessinner Il apparait le pannier parcelle S lectionner les parcelles en cliquant dessus elles sont vertes Appuyer sur enregistrer l tat devient enregistrer 4 1 L information g ographique 105 openMairie Framework Documentation Version 4 4 admin Arles Motde passe H D cormexio _ Tab ais de bor openMairie openFoncier Mozilla Fire 2 SAVE Re SE SES I Hocathost openfoncier trunk ser form_sig php ob i F Fi Enregistrer TIPOLYGON 831145 6800800064 6287958 969999987 811149 6200880692 6287959 739999986 6287959 719999989 831 Cliquer sur le jeu de parcelles de votre choix ce jeu devient vert clair Il peut y avoir un ou plusieurs panniers exemple parcelle batiment par contre la g om trie r cup r e ne concerne qu une seule couche
132. in est de stocker tous les fichiers plat selon la m thode utilis e avant la cr ation du syst me de stockage Ce plugin a t cr uniquement dans un soucis de garder la compatibilit pour les applications existantes Description du connecteur filesystem core om _filestorage_filesystem class php Cette classe est une classe de stockage sp cifique aussi appel e plugin de stockage pour le syst me d abstraction de stockage des fichiers Le principe de ce plugin est de stocker tous les fichiers en renommant le fichier avec un UUID identifiant unique et en cr ant une arborescence deux niveaux Le premier est compos des deux premiers caract res de l UUID du fichier et le second niveau des quatre premiers caract res de 1 UUID du fichier Un fichier avec l extension info permet de stocker les informations de base du fichier ainsi que des m tadonn es 2 1 Le framework 79 openMairie Framework Documentation Version 4 4 Sch ma du stockage repertoire de stockage 25 252e 252ece72d44c0f88782d49fd6b99f43dafd repertoire de stockage 25 Le premier niveau des dossiers contenant les deux premiers caract res de l uuid du fichier 252e Le second niveau des dossiers contenant les 4 premiers caract res de l uuid du fichier 252ece72d4c0f88782d9fd6b99f43dfd Le fichier est stock avec pour nom un uuid sans extension la 252ece72d4c0f88782d9fd6b99f43dfd info Les fichiers info sont l pour
133. ion qui se d compose en une analyse de la base de donn e en cours et de la table choisie un tat des fichiers existants ou non lac antionc da m n ratinn demo acem sur mysql A Tableau de bord analyse bdd mysql openmairie table bdd em_collecthte om_droi om_etat om_lettretype om_profill om_sousetat om_utilisateur om parametre cle N cle aromarique longueur enregistrement 92 charo em_parametre 11 int libelle 20 string valeur 50 string om_collectivke 11 rt sousformiaire clesecandaire am_callectmta chain parametrege GIE generation formulaire tableinc om_parametre inc php tablene om_parametre nc tableforminc om_parametre form inc php tableforminc om_parametre form inc obj om_osrametre class php obj om_perametre class php generation edition 1 om_parametre pdf inc generation regmo T om_parametre reqmo inc I om parametre _om_collectivite reqmo inc generation divers I sal mysqlom_parametre mport Inc sqlmysoom psrametrelnc php existant fsaVmysqlem_parametre inc existant sqlmysorom osrametre forminc php existant fsaVmysqlem_ parametre form ine existant objom_parametre class php existant fobj om_parametre class phe existant fsaVmysqlem_parametre pdf ine non existant fsaVmysqlem_parametre regmoinc existant fsaqvmysqlom_ parametre _om_collectivtte regmo inc non existant fsqlmysqlom_ parametre moortinc estant openEx
134. ire pour le tableau du mod le om_ utilisateur lt php Schamps array Schamps login array table gt om utilisateur colonne gt login type gt text libelle gt _ Login 2 1 Le framework 43 openMairie Framework Documentation Version 4 4 Schamps email array table gt om utilisateur colonne gt email type gt text flibelle gt _ E mail Schamps om profil array table gt om utilisateur colonne gt Tom profil type gt select libelle gt _ Profil Soptions array type gt search display gt true advanced gt Schamps default_form gt advanced absolute _ object gt om_ utilisateur gt Configuration avanc e 2 1 5 3 2 1 Cr er un intervalle de date Exemple recherche des utilisateurs cr es entre telle et telle date lt php Schamps date_de_creation array colonne gt creation_ date Ttable gt user libelle gt _ Date de creation type gt date where gt intervaldate 2 gt Cette configuration permet de cr er deux champs HTML datepicker date_de_creation_min permettra de saisir une date minimale date_de_creation_max permettra de saisir une date maximale Ces champs permettent de rechercher les utilisateurs don
135. la g n ration d un mod le Le g n rateur conserve une liste des colonnes qui donneront apr s g n ration des champs r f rences Pour cr er cette liste il suit la proc dure suivante avec PostgresSQL le g n rateur peut interroger les tables du syst me contenant la liste des cl s trang res d une table particuli re ainsi que les tables trang res r f renc es par ces cl s dans un second temps indiff remment du SGBD il ajoute a la liste des cl s trang res le nom des colonnes portant le m me nom que d autres tables La liste ainsi form e permettra au g n rateur de cr er des champs de type r f rence dans les mod les de donn es Affichage dans les formulaires Comment ces champs sont repr sent s dans les formulaires Depuis le formulaire de l objet faisant r f rence ces champs sont repr sent s par des balises HTML lt select gt L ensemble des objets pouvant tre r f renc s sont list s sous la forme d options 86 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 Depuis le formulaire de l objet r f renc un onglet appara t pour chaque mod le diff rent faisant r f rence cet objet Chaque onglet liste l ensemble des objets faisant r f rence l objet pr sent en formulaire 3 1 4 3 Les champs uniques Un mod le de donn es peut contenir un ou plusieurs champs uniques Il n est pas possible pour plusieurs objets
136. la gestion de pannier se fait dans om_sig_map_wms panier option pannier activ Oui non Exemple dossier openFoncier pa_nom nom du pannier parcelle pa_layer nom du layer pannier parcelle pa_attribut attribut de la couche r cup rer parcelle pa_encaps caract re d encapsuation la 4 pa sql requ te de r cup ration select astext st_union geom as geom from amp DB_PREFIXEparcelle where parcelle i pa_type_geometrie type de g om tri polygone le script de gestion de pannier est scr sig_pannier php 4 1 3 5 La g om trie modifier couche vectors Le chargement de la couche vectors se fait si dans la table om_sig_map la case maj est activ e La g om trie est r cup r e par le script sig_wkt php appel a un script param trable dans var_sig inc et la carte est centr e sur la g om true Il est possible de positionner manellement la g om trie d placer la g om trie enregistrer la g ometrie selectionner la g om trie le programme form_sig php est charg en fenetre et permet de supprimer la g om trie champ geometrique null ou modifier cette g om trie Les fonctions javascript et les controles sont activ es suivant chaque tat Dans dyn form_sig_update inc php il est possible de param trer des post traitements de saisie Dans dyn form_sig_delete inc php il est possible de param trer des post traitements de suppression 4 1 3 6 Les g om tr
137. le suivant Courrier Dateenvoi Emetteur Service 1 01 12 2010 dupont pierre informatique 2 02 12 2010 durant jacques informatique De la m me mani re toujours dans le m me fichier vous pouvez changer les options de la zone de recherche en r affectant la variable champRecherche Actuellement on peut en plus de Tous faire une recherche sur courrier emetteur et service C est parce qu l orgine dans le fichier g n r champRecherche avait t affect e comme telle SchampRecherche array courrier courrier as _ courrier emetteur nom as emetteur service libelle as _ service Supprimez un ou plusieurs l ment s du tableau et il dispara tra de la zone de recherche Par exemple 1 1 Tutoriel Cr er une application 13 openMairie Framework Documentation Version 4 4 SchampRecherche array emetteur nom as _ emetteur ur donnera Recherche Tous service registre telephonie 2013 3 informatique 2013 1 Nous souhaitons maintenant avoir les derniers courriers au d but de la page affich e Nous n avons pas besoin d aller r crire la requ te il existe une variable texte comprenant l instruction de tri R affectez cette variable tri dans votre courrier inc php de la mani re suivante Stri order by dateenvoi desc Le r sultat est le suivant dateenvol emetteur A 02 12 2010 du
138. lis pour pour v rifier les droits de la liste list OR l utilisateur doit avoir au moins un droit AND l utilisateur doit avoir tous les droits 2 1 7 2 Actions du menu contextuel de la consultation La configuration des actions du menu contextuel des formulaires en consultation se fait via les scripts sql sgbd objet form inc php Dans ces scripts peuvent tre surcharg s la liste des champs ordre ou champs affich s requ tes sql permettant de remplir les widget de formulaires ainsi que les actions du menu contextuel L ajout d une action se pr sente de cette fa on lt php Sportlet_actions edition array llien gt pdf pdflettretype php obj om_utilisateur amp amp idx niae gt Ilib gt lt span class om prev icon om icon 16 om icon fix pdf 16 title _ Edition gt _ Edition lt span gt ajax gt false ordre gt 21 gt 2 1 Le framework 57 openMairie Framework Documentation Version 4 4 2 1 8 La m thode Le d veloppement consiste cr er des objets m tier obj qui surchargent la classe abstraite om_dbformdyn class php et modifier les valeurs par d faut des variables dans les fichiers sql nom_objet inc et nom_objet form inc Voir aussi le g n rateur pour automatiser les scripts m tier Il est d crit ensuite les 2 objets objet de connexion db et l objet formulaire form 2 1 8 1 Surcharger les
139. longueur type tableinfo si different gt type openMairie Bigint 8 int8 gt int Smallint 2 Int2 gt Int Integer 4 Int4 gt Int Real 4 Float4 gt Int Doubleprecision 8 Float8 gt Int Numeric 20 Numeric gt JC Money 8 Money gt Int Char 1 Char gt String Quelque soit la longueur 1 Character 1 Bpchar gt String Utilisation de la longueur d affichage Character varying 1 Varchar gt String Utilisation de la longueur d affichage Text 1 text gt blob Utilisation des param tres de form inc Date 4 Date gt Date Utilisation des param tres de form inc pgsql_longueur_date geometry 5 gt geom boleen bolean gt checkbox Pour postgresql il est propos dans form inc 2 variables qui sont avec la version 4 2 0 inutiles car les longueurs sont g r es par le g n rateur valeurs n gatives pgsql_taille_defaut 20 taille du champ par d faut si retour pg_field_prtlen 0 pgsql_taille_minimum 10 taille minimum d affichage d un champ Attention pour les champs geom il faut g rer la carte chercher pour 1 affichage de la carte en fen tre exemple de surcharge de la m thode setSelect pour afficher la carte dossier de la table om sig m if maj 1 modification contenu array Scontenu 0 array dossier S this gt getParameter idx Sform gt setSelect geom contenu 3 1 6 3 Nom de champ et nom de table Attention au nom de
140. m setValFAjout val array M thode de traitement des donn es retourn es par le formulaire utilis lors de l ajout dbform setvalF val array M thode de traitement des donn es retourn es par le formulaire dbform verifier val array amp db NULL DEBUG false M thode de v rification des donn es et de retour d erreurs dbform verifierAjout val array amp db NULL M thode de v rification des donn es et de retour d erreurs utilis lors de l ajout dbform setId amp db NULL Initialisation de la cl primaire si cl automatique lors de l ajout dbform cleSecondaire id amp db NULL val array DEBUG false Cette m thode est appel e lors de la suppression d un objet elle permet de v rifier si l objet supprim n est pas li une autre table pour en emp cher la suppression dbform triggerajouter id amp db NULL val array DEBUG false Permet d effectuer des actions avant l insertion des donn es dans la base dbform triggerajouterapres id amp db NULL val array SDEBUG false Permet d effectuer des actions apr s l insertion des donn es dans la base dbform triggermodifier id amp db NULL val array SDEBUG false Permet d effectuer des actions avant la modification des donn es dans la base dbform triggermodifierapres id amp db NULL val array SDEBUG alse Permet d effectuer des actions pan odifientio
141. mework prend en charge plus de fonctionnalit s et donne toutes possibilit de surcharge aux applications surcharge des objets g n res par le generateur surcharge des composants de base openMairie stock dans core surcharge de la pr sentation de base dans img et css des th mes om theme dans app css app img surcharge du javascript de base app js script js 120 Chapitre 5 Historique amp Mises niveau openMairie Framework Documentation Version 4 4 EXTERNALS txt Vider les 9 repertoires concern s avant de lancer externals Appliquer le fichier EXTERNALS txt d openmairie core svn scm adullact net svnroot openmairie openmairie exemple tags 4 2 0 core spg svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 spg scr svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 scr lib svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 lib css svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 css js svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 js img svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 img pdf svn scm adullact net svnroot openmairie openmairie exemple tags 4 2 0 pdf php svn scm adullact net svnroot openmairie openmairie _exemple tags 4 2 0 php om theme svn scm adullact net svnroot openmairie extern
142. mp Mises niveau 5 1 1 La version 4 4 5 1 1 1 Les nouveaut s de la version 4 4 5 1 1 2 Mettre niveau depuis openMairie 4 3 vers 4 4 Cette proc dure permet de mettre niveau une application utilisant openMairie version 4 3 0 vers openMairie 4 4 0 Pour conserver une application fonctionnelle tout au long de la mise niveau il est vivement conseill de suivre les tapes de cette proc dure dans l ordre ne pas utiliser le g n rateur lorsque ce n est pas indiqu Consultez la section sur les erreurs connues si des erreurs persistent apr s la mise niveau tape 1 mettre jour la base de donn es 5 1 1 2 1 1 La structure La structure de la base de donn es d openMairie a chang e sensiblement depuis la version 4 3 0 Pour mettre jour la base de donn es depuis cette version il faudra ex cuter le script SQL ver_4 4 0 sql Pour PostgresSQL data pgsql ver_4 4 0 sql Important Le support de mysql t abandonn R g n rer les fichiers via le g n rateur V rifier les surcharges des objets obj et sql tape 2 mise jour du menu Suite l ajout d une table contenant les logos et une autre contenant les requ tes les entr es correspondantes dans le menu devraient tres ajout es 115 openMairie Framework Documentation Version 4 4 tape 3 v rification des requ tes et logos V rifier que les logos et requ tes sont dans les bons tat l
143. mple sur un applicatif comme openCimeti re ce sont les r pertoires qui vont tre r cup r s par une pro pri t externals sur le gestionnaire de versions que l on appelle les r pertoires du framework php Contient les librairies PHP utilis es par le framework comme dbpear phpmailer ou fpdf D php F htaccess core Contient les classes de la librairie du framework D core F htaccess css Contient les feuilles de style de base du framework img Contient les images du framework D img js Contient les javascripts de base du framework lib Contient les librairies javascripts utilis es par le framework comme openLayers ou jquery D lib 26 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 pd f Contient les scripts d dition du framework D pdf scr Contient les scripts d affichage du framework spg Contient les sous programmes g n riques du framework D spg 2 1 2 Initialisation de la base de donn es 2 1 2 1 Description du dossier data pgsql Il est n cessaire de positionner l ent te de fichier suivant pour chacun des fichiers sql de ce dossier Description succinte de l utilit du fichier Informations n cessaires la g n ration ou la composition du fichier package lt APPLICATIF gt version SVN Id Description de tous les fichiers init sql Il s av re n
144. n Collectivit Param tre Utilisateur 1 Modifier Gestion Des Utilisateurs nom Administrateur Profil email contact openmairie org Supprimer Droit login admin T dition Utilisateur mot de passe Tableaux De Bord Profil ADMINISTRATEUR a Widget Actions contextuelles Sig a Retour Om_sig_map Om_sig_wms Options Avancees openExemple Version 4 3 0 dev Documentation openMairie org Import G n rateur Ajout L ajout permet l ditions de donn es Lors de la validation un traitement sp cifique des donn es est effectu Si la cl primaire de la table est automatique alors elle est g n r e Modification L ouverture d un l ment en modification permet l ditions de donn es d j existantes lors de la validation du formulaire les donn es sont trait es v rifi es puis envoy es dans la base 46 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 admin Ville d ARLES Mot de passe D connexion Open MAIRIE Tableau de bord gt ERN Administration Utilisateur 1 Param trage Administration nr Collectivit Param tre Utilisateur 1 Gestion Des Utilisateurs nom Administrateur Profil email contact openmairie org 2 login admin Utilisateur mot de pase FREE Tableaux De Bord Profil ADMINISTRATEUR Widget ni cmt mem Vi Sig Om_sig_map Modifier l enregistrement de la table Utilisateur a Retour Om_sig_wms Options Ava
145. n de la requ te whil row amp res gt fetchRow DB_FETCHMODE_ASSOC j affiche le champ courrier echo rowl courrier l Pour ecrire dans la base vous pouvez utiliser les m thodes insert ou update mais vous pouvez utilisez la m thode autoexecute sp cifique db pear requ te sql Ssql INSERT INTO Sres2 f gt db gt query sql f gt isDatabaseError res2 ou avec un tableau valF obj table valF obj f gt db gt nextId DB_PREFIXE Sobj Sresl f gt db gt autoExecute DB_PREFIXE o0obj valF DB_AUTOQUERY_INSERT f gt isDatabaseError res1 Vous pouvez faire une Description du role de la page de la mani re suivante description _ Cette page vous permet de Sf gt displayDescription description Un message d erreur s affiche suivant class qui est la classe css qui s affiche sur l element et qui peut tre 2 1 Le framework 73 openMairie Framework Documentation Version 4 4 error pour le message erreur valid pour le message de validation le code est le suivant message _ Mot de passe actuel incorrect Sf gt displayMessage class message Pour afficher un fieldset le code est le suivant echo lt fieldset class cadre ui corner all ui widget content gt n echo t lt legend class ui corner all ui widget con
146. ncees Import openExemple Version 4 3 0 dev Documentation openMairie org G n rateur Suppression Accessible depuis la liste des actions contextuelles une confirmation est demand e pour chaque suppression Acc s L acc s aux formulaires se fait depuis un tableau d l ments ou depuis la consultation d un l ment via le menu contextuel Par d faut depuis les tableaux les actions d ajout et consultation sont disponible 2 1 6 2 Description technique La gestion des formulaires se base sur deux classes formulaire core om_formulaire class php dbform core om_dbform class php La classe formulaire permet la gestion de l affichage et dbform g re le traitement des donn es et la liaison la base de donn es scr form php et scr sousform php Ces scripts sont appel s pour afficher un formulaire Ils instancient l objet et appellent la m thode formulaire de celui ci Ces scripts prennent plusieurs param tres obj nom de la classe pour laquelle on souhaite afficher le formulaire action type d action ajout modification suppression consultation idx identifiant dans la base de donn es de l l ment sur lequel on souhaite effectuer l action retour deux valeurs possible tab ou form selon l origine de l action Le param tre action peut prendre 4 valeurs 0 affiche un formulaire d ajout le param tre idx n est donc pas n cessaire
147. ne autre base de donn es 2 1 2 1 13 Les fichiers init parametragex sql Ces fichiers contiennent l initialisation du param trage c est dire les donn es n cessaires l utilisation de l application Ils sont g n r s g n ralement gr ce la commande pg_dump a t lt SCHEMA gt lt TABLE1 gt t lt SCHEMA gt lt TABLE2 gt lt DATABASE gt Le fichier init _parametrage sql permet d initialiser par exemple la ou les collectivit s de base ainsi que les profils et l utilisateur admin Dans certains applicatifs simple ce fichier peut tre unique et tout le param trage contenu dans ce dernier Le fichier init_parametrage permissions sql permet d initialiser les permissions de l applicatif Cette initialisation se trouve dans un fichier s par pour appr hender plus facilement le param trage des per missions et ventuellement la mise jour de ce param trage Le fichier init parametrage editions sql permet d initialiser les editions de base g n rique de l aplicatif Cette initialisation se trouve dans un fichier s par pour appr hender plus facilement le param trage des ditions et ventuellement la mise jour de ce param trage Le fichier init _parametrage _ x sq1 peut permettre de d couper encore l initialisation pour appr hender plus facilement le param trage et ventuellement la mise jour de ce param trage 2 1 2 1 14 Le fichier init da
148. nmairie debitboisson_ 1 0 0beta sans les repertoires svn svn export svntssh fraynaud scm adullact net scmrepos svn openboisson tags 1 0 0beta openmairie _debitboisson_1 0 0beta 7 1 2 Concurrent versions system CVS Site officiel du projet CVS Il est not dans ce chapitre les commandes de bases de cvs titre d indicatif Les d veloppeurs d openMairie souhaitent s orienter sur SVN qui est plus facile dans la gestion des r pertoires notament la suppression et dans la mise en place de composants externes externals 7 1 2 1 forge gt local update cvs up cvs up A depuis la branche principale cvs up r branch_name depuis une branche cvs up r tag_ name depuis un tag 7 1 Outils 129 openMairie Framework Documentation Version 4 4 cvs up d creer sur le poste local les nouveaux repertoires cvs up C Annulation des modifications locales gt les fichiers remplac s sont sauv s en fi message A Ajout de nouveaux l ments la version locale M l ments modifi s localement par rapport la version de CVS l ments inconnus de CVS non pr sents dans la version de CVS U pour les l ments modifi s dans CVS par rapport la version locale C pour les l ments diff rents entre les versions locale et CVS et qui posent un conflit r gle D fichier supprim s 7 1 2 2 local gt forge commit cd lt r pertoire d sir gt cvs commit m
149. nt un tableau de tableaux associatifs chacun repr sentant un lien Les caracteristiques de ce tableau sont les suivantes tableau rubrik title obligatoire description texte qui s affiche au survol de la rubrique href contenu du lien href class classe css qui s affiche sur la rubrique right droit que l utilisateur doit avoir pour visionner cette rubrique links obligatoire open crit res de pr ouverture de cette rubrique du menu tableau links title obligatoire href obligatoire contenu du lien href class classe css qui s affiche sur l element right droit que l utilisateur doit avoir pour visionner cet element target pour ouvrir le lien dans une nouvelle fenetre open crit res de pr ouverture de la rubrique du menu dans laquelle est ce lien et s lection de ce lien en lien actif L entr e open sert marquer une entr e de menu comme active La rubrique contenant cette entr e est ouverte d s l affichage de la page et l entr e active est mise en vidence L entr e open peut contenir soit une cha ne soit un array comportant plusieurs cha nes Chaque cha ne est cr e selon la syntaxe script phplobj chacune des deux parties tant optionnelle Le caract re s parateur est obligatoire Exemple om_ collectivite s lectionnera entr e pour toutes les url ayant obj om collectivite ftab phplom collectivite s lectionnera l entr e pour l affichage du ta
150. obligatoire pour le bon fonctionnement du framework Il est inutile de faire apparaitre ici la colonne om collectivite Cette colonne appara tra d office si la colonne est dans la table 3 1 8 3 gen dyn form inc php Voici les param tres pour la g n ration de formulaire Sserie 15 nombre d enregistrement par page ico img ico_application png icone DEPRECATED Smax 6 nb de ligne blob taille 80 taille du blob Spgsaql_longueur_date 12 taille d affichage de la date xxx deprecated Spgsql_taille defaut 20 taille du champ par defaut si retour pq_field prtlen 0 Spgsql_taille minimum 10 taille minimum d affichage d un champ x xx 3 1 8 4 gen dyn pdf inc php Parametres longueurtableau 280 orientation L orientation P gt portrait L gt paysage format A4 format A3 A4 A5 police arial margeleft 10 marge gauche margetop 5 marge haut margeright 5 marge droite Sborder 1 1 gt bordure 0 gt pas de bordure C1 0 couleur texte R C2 0 couleur texte V C3 0 couleur texte B size 10 taille POLICE height 4 6 hauteur ligne tableau align L fond 2 couleurs 94 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 fond 1 0 gt FOND transparent 1 gt fond SCifondi 234 couleur fond R SC2fond1 240 couleur fond V SC3fondi 245 couleur fond
151. om d bote 5432 Port du serveur 1 Socket openexemple Nom de la base AAAA MM JJ Format de la date openexemple Nom du sch ma MW 7 prefixe NULL Param trage pour l annuaire LDAP mail default Param targe pour le serveur de mail filestorage default Param trage pour le stockage des fichiers gt La documentation de DB PEAR qui est le module d abstraction utilis par le framework donne plus d informations sur les param tres 2 1 3 Param trage du framework Le param trage de l application se fait dans le r pertoire dyn Il est propos dans ce chapitre de d crire les diff rents fichiers de param trage 2 1 Le framework 29 openMairie Framework Documentation Version 4 4 Pour le fichier dyn database inc php voir Param trage de la connexion la base de donn es Les fichiers de param trage sont les suivants dyn menu inc php menu principal gauche dyn action inc menu haut dyn shortslink inc lien sous menu haut dyn dashboard inc php tableau de bord dyn locales inc application dyn config inc php application dyn include inc php chemin d acc s aux librairies dyn debug inc php mode debug dyn version inc param trage de la version dyn var_sig inc param trage sig dyn form_sig_update inc php parametrage sig dyn form_sig_delete inc php parametrage sig dyn var_adresse_postale inc parametrage sig dyn files
152. on d actions pour un tableau particulier se fait depuis le r pertoire sql sgbd Les actions doivent se d finir dans les fichier objet inc php de la mani re suivante lt php tab_actions left modifier array lien gt form php obj obj amp amp action 1 amp amp idx E id gt amp amp premier premier amp amp advs_id advs_id amp amp recherche Srecherchel lib gt lt span class om icon om icon 16 om icon fix edit 16 title _ Modifier rights gt array list gt array obj obj modifier operator gt OR ordre gt 20 gt 2 1 7 1 2 1 D finition de l action La premi re cl de tab_actions permet choisir la position d affichage corner pour les actions en coin left pour les actions de gauche Note Depuis la version 4 3 0 d openMairie il est d sormais possible d afficher plusieurs actions dans le coin du tableau au niveau de l action ajouter La seconde cl de Stab_actions permet de d finir la nouvelle action Cette cl doit tre diff rente de ajouter consulter modifieret supprimer 56 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Les cl s lien idet lib s utilise de la m me mani re qu avant 2 1 7 1 2 2 D finition du mode d affichage en sous tableau La cl ajax permet d indiquer si l action doit tre affich
153. on est de rassembler les liens vers toutes les fonctions du logiciel regroup es par rubrique et cat gorie Elle se situe gauche du contenu et est visible uniquement lorsque l utilisateur est authentifi Export Param trage Editions tat Sous tat Lettre Type Administration Par d faut le menu est compos de la mani re suivante application vide par d faut contient l acc s votre application export contient le script edition qui reprend les ditions pdf des tables contient le menu reqmo qui reprend les requ tes 2 1 Le framework 31 openMairie Framework Documentation Version 4 4 m moris es traitement vide par d faut cet option contient les scripts de traitements parametrage Cette option contient vos tables de param trag fonctionnel Par d faut il contient le param trage des tats sous tats lettres type administration Cette option contient les fonctions de configuration de l administrateur technique Cela comprend notamment le param trage de la collectivit om sig et la gestion des droits d acc s La configuration des liens se fait dans le fichier dyn menu inc php Ce fichier de param trage n est pas obligatoire Si il n existe pas aucun lien n est affich Ce fichier de param trage doit contenir la d claration d un tableau de tableaux associatifs dans la variable menu Chaque tableau associatif repr sente une rubrique Chaque rubrique contie
154. openMairie Framework Documentation Version 4 4 openMairie 08 04 2014 Table des mati res openMairie Framework Documentation Version 4 4 Note Cette cr ation est mise disposition selon le Contrat Paternit Partage des Conditions Initiales l Identique 2 0 France disponible en ligne http creativecommons org licenses by sa 2 0 fr ou par courrier postal Creative Commons 171 Second Street Suite 300 San Francisco California 94105 USA Ce document a pour but de guider les d veloppeurs dans la mise en uvre d un projet openMairie Avec plus de 30 applications d velopp es pour les collectivit s locales accessibles sur le site http openmai rie org nous souhaitons au travers de ce guide diffuser notre exp rience aupr s des collectivit s et des acteurs conomiques du libre qui les accompagnent C est donc une m thode con ue au fur mesure de nos d veloppements que nous vous proposons de parta ger et toutes remarques sont les bienvenues alors n h sitez pas nous en faire part l adresse mail suivante contact openmairie org Nous avons con u openMairie pour fabriquer une maquette le plus en amont possible en s appuyant sur le mod le de donn es cr dans la base de donn es et en int grant les composants standards du monde libre Cette maquette permet tr s rapidement d engager un dialogue participatif avec les utilisateurs de concentrer le d veloppeur uniqu
155. ous valeur Administrateurs valeur true Utilisateurs simples valeur false 2 1 Le framework 45 openMairie Framework Documentation Version 4 4 Le tableau args 0 contient les valeurs associ es aux choix La valeur t rue indique que les identifiants des utilisateurs doivent se trouver dans la sous requ te La valeur false indique qu ils ne doivent pas se trouver dans la sous requ te Contrairement l exemple Cr er un champ de recherche avec menu d roulant personnalis les valeurs ne seront pas recherch es telles quelles dans la base de donn es et ne doivent surtout pas tre modifi es En s lectionnant Administrateurs la requ te SQL de recherche sera construite comme suit WHERE user id IN SELECT user_id FROM admin 2 1 6 Les formulaires Les formulaires openMairie sont une visualisation d un objet d une classe m tier 2 1 6 1 Introduction Les formulaires permettent la consultation l ajout la modification et la suppression d enregistrements des tables de la base de donn es Consultation La consultation d un l ment est construite de la m me fa on qu un formulaire Elle contient une liste d actions contextuelles configurable Les donn es ne sont pas ditables admin Ville d ARLES Mot de passe D connexion Open MAIRIE Tableau de bord gt Ent Administration Utilisateur 1 ADMINISTRATEUR Param trage Administration aa
156. pgsql service form inc php Aucun changement de sql pagsal service form inc php Aucun changement de gen obj service class php Aucun changement de obj service class php affichage colone ok 9 0322580645161 gt 2 5 Aucun changement de sql pagsal service pdf inc php Aucun changement de sql pgsql service regmo inc php Aucun changement de sql pgsal service import inc php 8 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 1 1 2 4 Int grer les formulaires dans le menu Pour acc der nos formulaires nous allons les int grer dans le menu voir framework parametrage menu gauche Nous allons appeller le formulaire depuis le menu option Application gt tab php obj courrier option Param trage gt tab php obj emetteur option Param trage gt tab php obj service Il faut ouvrir avec un diteur le fichier dyn menu inc php et ins rer le code suivant Rubrique APPLICATION Slinks array href gt scr tab php obj courrier class gt courrier title gt _ courrier right gt courrier Rubrique PARAMETRAGE Slinks array href gt scr tab php obj emetteur class gt emetteur title gt _ emetteur right gt emetteur Slinks array href gt scr tab php obj service class gt service title gt _ service right
157. php 4 1 6 1 var adresse postale inc param trage g n ral longueurRecherche l1 adresse postale stock e sur une base dans le r seau interne table et champs de la requete adresse postale ou l information doit etre recupere t adresse_ postale table adresse postale t voies rivoli code adresse t_numero num_ voi numero dans la voie t_complement suf_voi suffixe bis ter t_geom the_geom geometry point X Y t_adresse typevoie nomvoie libelle de 1 adresse t_quartier id parc xxx a voir t_cp nom champ cp t_ville nom champ ville t_insee nom champ insee champ du formulaire ou 1 adresse est saisi pour retour du point de geolocalisation Sf_numero numero_voie nom champ du numero dans la voie f_voie voie nom champ du code de la voie rivoli f_complement complement nom champ du complement de numero f_geom geom nom champ geometrique point X Y Sf_libelle libelle_ voie nom champ libelle de la voie xxx a voir Sf_cp nom champ cp 108 Chapitre 4 L information g ographique openMairie Framework Documentation Version 4 4 Sf_ville nom champ ville Sf_insee nom champ insee Cas ou la table d adresse est stock es dans une autre base voir parametrage framework de database inc php db_externe Oui Oui base
158. place des noms de table en tant que nom de colonne 5 1 2 2 2 4 FOREIGN KEY PostgresSOL Ajouter la contrainte SQL FOREING KEY Le g n rateur g re galement les cl s trang res des bases PostgresSQL Pour cr er des r f rences il faudra utiliser la contrainte FOREIGN KEY la place des noms de table trang res en tant que nom de colonne 5 1 2 2 2 5 UNIQUE Ajouter la contrainte SQL UNIQUE Mettre a jour les fichiers de surcharge du r pertoire obj La contrainte UNIQUE permet maintenant de g rer automatiquement les champs uniques Il n est plus n cessaire de surcharger la m thode verifier des mod les pour g rer ce type de champ Il faudra nettoyer les surcharges de verifier en supprimant la v rification manuelle des champs requis et les remplacer par des contraintes UNIQUE dans la base de donn es 5 1 Historique amp Mises niveau 117 openMairie Framework Documentation Version 4 4 5 1 2 2 2 6 NOT NULL Ajouter la contrainte NOT NULL aux champs requis Supprimer la clause DEFAULT des champs requis Supprimer la contrainte NOT NULL des champs non requis ou ajouter la clause DEFAULT en fonction du besoin Mettre a jour les fichiers de surcharge du r pertoire obj G n rer Toutes les colonnes NOT NULL g n reront des champs requis Des champs qui n taient pas requis dans la version 4 2 0 peuvent donc l tre dans la version 4 3 0 apr s une g n r
159. porgune amea A ea Sur la carte ci dessous le flux wms est activ et affiche le lotissement getMap En cliquant sur le lotissement il est possible d acc der aux donn es getFeature version 4 4 0 Trois nouveaux param tres sont disponnibles sqlfilter possibilit de filtre du flux wms attribut FILTER compl ter la zone avec une requ te SQL qui va g n r le filtre syntaxe suivant le serveur WMS exemple d un filtre pour produire le filtre suivant layer1 champ1 valeurl layer2 champ2 valeur2 il faut entrer la requ te suivante pour selectionner les electeurs d un bureau select electeur bureau bureau bureau l as buffer from amp DB_PREFIXEbureau where bureau select electeur bureau amp idx as buffer from amp DB_PREFIXEbureau where bureau amp idx 2 caract re utilis pour les doubles quotes concatenation sql 11 permet d echapper la simple quote 7 sql remplace les deux quotes par une quote caractere quote le filtre final appliqu au flux wms est electeur bureau 04 pour le bureau 04 base_layers possibilit d utiliser le flux wms comme base layers au m me niveau qu OSM 104 Chapitre 4 L information g ographique openMairie Framework Documentation Version 4 4 single_tile ram ne le flux wms en une seule image pour la fen tre et non en imagette permet de corr
160. proxima tives afficher un formulaire de recherche multi crit res permettant d effectuer des recherches strictes ou approxima tives rechercher des valeurs dans des tables et des colonnes qui ne sont pas affich es 2 1 5 1 2 1 Recherche avanc e mono crit re Le formulaire de recherche mono crit re est un formulaire ne s affichant que si la recherche avanc e est activ e Il permet aux utilisateurs de basculer sur un formulaire similaire celui de recherche simple lorsque la recherche avanc e est activ e Ce formulaire se comporte de la m me mani re que celui de recherche simple avec quelques diff rences il permet de rechercher des valeurs strictes ou approximatives par d faut approximatives il recherche dans toutes les colonnes propos es par la recherche simple il conserve les valeurs recherch es apr s la r alisation d une action ajout modification etc il dispose d un bouton Vider le formulaire permettant de vider les champs il dispose d un bouton permettant de basculer sur le formulaire multi crit res 2 1 5 1 2 2 Recherche avanc e multi crit res Le formulaire de recherche multi crit res est un formulaire ne s affichant que si la recherche avanc e est activ e Il permet aux utilisateurs de b n ficier de plusieurs champs et ainsi effectuer des recherches plus pr cise qu avec le formulaire de recherche simple Description du formulaire il peut a
161. puisque le d p t est sur github com Description Le nom du logiciel avec accents avec espaces et avec la casse par exemple openElec ou open R sultat Language French puisque la documentation est francophone URL Projet http www openmairie org Canonical URL laissons vide pour le moment Single version ne pas cocher la case Etiquettes openmairie Puis il suffit de cliquer sur le bouton Cr er Si la cr ation du projet s est bien pass e une version de la documentation a du tre g n r e celle ci est disponible en cliquant sur le bouton Afficher les docs sur la page du projet nouvellement cr 7 1 8 2 Param trer une nouvelle version d un projet existant Public s concern s Administrateur de projet openMairie Par d faut un projet sur readthedocs org g re uniquement la derni re version de la cocumentation latest en r cup rant la branche par d faut de la documentation sur github com master 7 1 Outils 137 openMairie Framework Documentation Version 4 4 Il est possible de g rer plusieurs versions de la documentation pour obtenir des URL du style http omframework readthedocs org fr 4 2 http omframework readthedocs org fr 4 4 http omframework readthedocs org fr latest Chaque version dans readthedocs org correspond une branche dans le d p t du projet sur github com 138 Chapitre 7
162. r es les cl s primaires et les cl s trang res constraints gt en interrogeant les contraintes de la base de donn es postulate gt par les postulats _ le nom d un champ cl primaire a pour nom le nom de la table _ le nom d un champ cl trang re a pour nom le nom de la table vers laquelle elle fait r f rence et fait r f rence au champ ci primaire de cette table Default Skey_ constraints mode constraints key_constraints_mode postulate 2 gt lt php Jxxx Liste des tables ne pas g n rer Permet de lister les tables dont la g n ration n est pas souhaitable Ces tables n apparaissent donc plus dans le menu de g n ration ni dans la g n ration compl te 3 1 Le g n rateur 93 openMairie Framework Documentation Version 4 4 Default tables to avoid array tables_to_avoid array om_version spatial ref sys gt 3 1 8 2 gen dyn tab inc php Ce fichier de param trage permet de lister pour chaque table la liste des colonnes positionner dans la variable champAffiche lors de la g n ration des fichiers gen sql lt OM DB_PHPTYPE gt lt TAB gt inc php lt php Table om utilisateur Som utilisateur array nom email login om profil gt Il est inutile de faire apparaitre ici la colonne portant la contrainte PRIMARY KEY Cette colonne est
163. r f rence aux instances des classes d openMairie et par extension aux enregistrements en base de donn es qui les repr sentent 3 1 1 Introduction Le g n rateur permet de construire des applications partir de l analyse d un sch ma d une base de don n es Les informations r cup r es dans le sch ma sont les suivantes la liste des tables le nom le type et les contraintes de chaque colonne Sur cette analyse le g n rateur cr e les mod les de donn es openMairie g re les cl s primaires mono colonne les cl s trang res la multi collectivit selon la pr sence d un champ om collectivite Le g n rateur contient galement des assistants permettant de cr er facilement des tats associ s des collectivit s Attention la version mysql est abandonn e 3 1 2 L interface Le menu generateur est le suivant 83 openMairie Framework Documentation Version 4 4 demo acem sur mysql A AU Tableau de bord documentation x Es om_atat X om _lertretype om parametre generation objet openmaine mysql x om _collectinte 3 om dor Assistants openmane mysal E Import version lt 4 E5 creation etat creation sousetat F5 creation lettretype L a openExemple Version 4 0 0 dev Documentation openMairie org En appuyant sur la touche generation on acc de l cran de g n rat
164. rant 01 12 2010 dupont Pour en savoir plus sur ces variables voir framework affichage 1 1 3 2 Rendre obligatoire des champs Nous avons affich le courrier avec une jointure de type LEFT JOIN ce qui ne rend pas obligatoire la saisie de l emetteur et du service auquel le courrier est affect Nous devons surcharger la m thode verifier Dans obj courrier class php la m thode ins rer apr s le constructeur est celle ci function verifier val amp db DEBUG parent verifier val db DEBUG Les champs servic t emetteur sont obligatoires if this gt valF service this gt correct False this gt addToMessage _ service amp nbsp _ obligatoire amp nbsp if this gt valF emetteur this gt correct False Sthis gt addToMessage _ emetteur amp nbsp _ obligatoire amp enbsp l Par d faut le premier champ ici dateenvoi est obligatoire cette option est modifiable dans le g n rateur La commande parent verifier val db DEBUG permet de ne pas neutraliser la fonction surcharg e ici dans gen obj courrier class php Pour plus d informations voir framework methode 14 Chapitre 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 1 1 3 3 Valoriser un champ par d faut Pour simplifier la saisie nous souhaitons mettre la date du jour dans le champ dat
165. ration des documentations gr ce au lien automatique avec readthedocs org 7 1 7 1 Cr er un projet Public s concern s Administrateur de projet openMairie Il s agit ici de cr er un nouveau repository sur github com dans l organisation openmairie Le projet doit s appeler openlogiciel documentation par exemple pour le logiciel openElec openelec documentation et pour le logiciel openR sultat openresultat documentation Ne rien faire d autre dans ce repository 7 1 Outils 135 openMairie Framework Documentation Version 4 4 Depuis le tableau de bord de github com un clic sur le bouton puis New repository en haut droite de l cran c t du login de l utilisateur permet d acc der au formulaire de cr ation d un d p t Voici les informations saisir Owner s lectionner openmairie pour une meilleure lisibilit du projet tous les d p ts doivent tre cr s dans cette organisation Repository name le nom doit tre logiciel documentation sans accents sans espaces en minuscules par exemple pour le logiciel openElec openelec documentation et pour le logiciel openR sultat openresultat documentation Description pour que le d p t sorte correctement dans les recherches il faut saisir Documentation Logiciel Sphinx par exemple pour openCimeti re Documentation openCimeti re Sphinx Public ou Private s lectionner Pu
166. re exit profil 1 gt O non I1 oui Ssql_exist profil s lect profil froc profil cherre profil liste des champs ins rer faut m zone zone zone zone valeur effet E D Sdefaut profil 5 CCE n commentaire les zones non trait es nom 0 gt la 1 re zone contient le nom login 1 gt la 2 me zone contient le login pwd 2 gt la 3 me zone contient le mot de passe crypt profil 3 gt la 4 me zone contient le profil par d faut si zonel profil on peut d finir un profil par d faut Le profil par d faut sera 5 2 1 16 Abstraction du layout ergonomie Warning Cette rubrique est en cours de r daction 2 1 17 Abstraction du filestorage stockage des fichiers Cette rubrique est en cours de r daction 2 1 17 1 Principe g n ral L objectif de cette rubrique est de g rer le stockage des fichiers dans les applications Ce stockage permet d avoir des stockages complexes Termes abstracteur classe d abstraction c est elle qui est instanci e et qui instancie les classes sp cialis es en fonction des crit res connecteur classe sp cialis e Description des fichiers permettant de g rer le filestorage om_filestorage_ deprecated class php om_filestorage_filesystem class php om_filestorage_filetransferprotocol class php x om_filestorag
167. re sont sous le format _ zone a traduire Voir le chapitre sur les outils poEdit 2 1 Le framework 35 openMairie Framework Documentation Version 4 4 2 1 3 4 Le param trage de application metier L application m tier est param tr e dans dyn varinc Ce script contient les param tres globaux de I application Attention les param tres s appliquent toutes les bases de l application Le param trage sp cifique par collectivit doit se faire dans la table om_parametre La configuration g n rale de l application se fait aussi dans dyn config inc php Les param tres sont r cup r s avec la cr ation d un objet utils par f gt config nom_du_parametre Voir framework utilitaire Exemple de param trage avec openCourrier Sconfigl application _ openCourrier Sconfigl title _ openMairie _ openCourrier Sconfigl session_name openCourrier le mode demonstration de l application se param tre avec config demo Ce mode permet de pre remplir le formulaire de login avec l identifiant demo et le mot de passe demo Sconfigl demo false l application n est pas en mode d mo true l application est en mode d mo Attention pour emp cher de changer le mot de passe il faut param trer l acc s dans la table om droit password La configuration des extensions autorisees dans le module upload php 52 9
168. rictement sup rieure la date actuelle A l inverse il est consid r comme non valide expir lorsque il west pas valide Est il possible de consulter la liste des objets expir s d un mod le donn Oui Le tableau du mod le dispose d un bouton Afficher les l ments expir s permettant d afficher en plus des objets valides les objets expir s Lorsque les l ments expir s sont affich s bouton devient Masquer les l ments expir s 88 Chapitre 3 Le g n rateur openMairie Framework Documentation Version 4 4 D finition des dates de validit Pour que le g n rateur consid re un mod le comme date de validit il faut que sa table de base de donn es contienne les deux colonnes suivantes om validite debut DATE om validite fin DATE Important Il ne faut surtout pas d finir de contrainte NULL ou DEFAULT sur ces deux colonnes sinon ces champs seront obligatoires chaque validation de formulaire Affichage dans les formulaires Ces champs apparaissent dans les formulaires sous la forme de datepicker comme des champs de type date classiques 3 1 6 L analyse de la base Les informations de la base sont analys es par la m thode constructeur de gen class php La construction des formulaires se fait suivant 5 types de champs reconnus par le g n rateur string cha ne de caract re int nombre entier ou d cimal date
169. rie Framework Documentation Version 4 4 database gt sig title gt Openmairie Exemple PostGreSQOL schema SIG formatdate gt AAAA MM JJ schema gt openmairi autocommit gt 1 transaction_opcount gt 0 affected gt 0 row gt Array 20 gt 10 _num_rows gt Array 20 gt 10 fetchmode gt 1 fetchmode_object_class gt stdClass was_connected gt last_query gt select x from openmairie om parametre where om_collectivite 2 options gt Array result_buffering gt 500 persistent gt ssl gt debug gt 2 seqname_format gt s_seq autofree gt portability gt 63 optimize gt performance last_parameters gt Array prepare_tokens gt Array prepare types gt Array prepared_ queries gt Array _last_query_manip gt _next_query_manip gt _debug gt _default_error mode gt _default_error_ options gt _default_error_handler gt _error_class gt DB_Error _expected_errors gt Array 2 1 8 3 L objet form form est l objet formulaire dont les propri t s sont les suivantes formulaire Object enteteTab gt val gt Array om_parametre gt 1 libelle gt mair valeur gt O PENMAIRIE om_collectivite gt 1 type gt Array om_ parametre gt text libelle gt text valeur gt text om_collectivite gt text
170. rrier form inc php Le fichier n existe pas ou n est pas accessible g courrier class php gen obj courrier class php Le fichier n existe pas ou n est pas accessible g courrier class php obj courrier class php Le fichier n existe pas ou n est pas accessible courrier pdf inc php courrier regmo inc php dition sql pgsql courrierpdf inc php Le fichier n existe pas ou n est pas accessible reqmo sql pgsql courrier regmo inc php Le fichier n existe pas ou n est pas accessible courrier_emetteurreqmo inc php sql pgsql courrier_emetteur regmo inc php Le fichier n existe pas ou n est courrier_service reqmo inc php courrier import inc php pas accessible sql pgsql courrier_service regmo inc php Le fichier n existe pas ou n est pas accessible divers sql pgsql courrier import inc php Le fichier n existe pas ou n est pas accessible G n rer les fichiers de la table courrier Retour Au pr alable le g n rateur a fait une analyse de la base de donn es 1 1 Tutoriel Cr er une application openMairie Framework Documentation Version 4 4 analyse Analyse de la base de donn es pgsql L openexemple openexemple Elements Infos Tables de la base om_lettretype om_ profil om_collectivite om_sousetat om_logo om_utilisateur de donn es om_parametre om_dashboard om_sig_map_comp emetteur om_ droit service om_sig_map_wms
171. s le fichier lite les fichiers qui sont inclus t ventuellement le compl ter 4 1 5 postgis ce chapitre propose de d crire les possibilit s d utilisation de postgis dans openMairie 4 1 L information g ographique 107 openMairie Framework Documentation Version 4 4 4 1 5 1 principes Il est propos un renvoi sur la documentation fran aise http postgis refractions net documentation manual 1 3 ch06 html ou sur le projet p dagogique postgis conf rence avec documentation et nombreux exemples https adullact net projects postgis Les requ tes utilisant des fonctions potgis peuvent tre impl ment es dans reqmo Il sera propos un lien sur un tutorial utilisant les fonctions postgis 4 1 5 2 base et sch ma Il est not que les applications openMairie peuvent s installer dans un sch ma Les tables et fonctions postgis sont alors accessible dans le sch ma public 4 1 6 geocodage Ce chapitre est consacr au probl me de g ocodage Il est propose un g ocodage interne sgbd adresse en reseau interne ou un geocodage externe Il convient de regarder les termes de licences concernant les API externes non libres mapquest osm afin de s assurer de bien respecter les obligations de l autorisation gratuite Un document d crivant les contraintes juridiques et techniques de l utilisation des APT est accessible via ce lien Le parametrage se fait dans le fichier sig var_adresse_postale
172. script ne doit pas tre modifi car il est reconstitu chaque g n ration Cela permet de pouvoir modifier la base de donn es ajout modification ou suppression de champs et de reg n rer tout ou partie de l application Un second script h ritant de l objet g n r permet de surcharger les m thodes et de personnalis l objet m tier Toutes les modifications doivent tre faites dans ce script soit en h ritant de la m thode soit en surchargeant la m thode L objet personnaliser est stock en obj nom_table class php Les m thodes g n r s dans l objet m tier gen obj nom_table class php sont par d faut les suivantes Le type de champs est cach hidden en ajout pour la cl primaire automatique modifiable en ajout si la cl primaire n est pas automatique l unicit de la cl primaire est v rifi e si elle est modifiable version 4 2 0 la cl primaire est visible sans possibilit de modifier en modification la cl secondaire n est pas modifiable en sous formulaire si c est la cl primaire du formulaire la cl secondaire est un champ select qui reprend les informations de la table li e la date est au format fran ais geom si ce champ est g om trique version 4 2 0 La longueur d affichage et le maximum autoris la saisie est celle contenu dans la base d origine Le contr le des cl s secondaires des autres tables est g n r il n est pas poss
173. sen 10 20m nn tt la table om_tdb La table om_tbd comprend les champs suivants om_tdb int 8 NOT NULL numero d ordre login varchar 40 NOT NULL login de l utilisateur bloc varchar 10 NOT NULL bloc ou colone c1 ou c2 ou c3 position int 8 position dans la colone om_widget int 8 NOT NULL numero de widget dans om_ widget Attention en cas de changement de login un utilisateur perd ses param tres 2 1 13 L ergonomie Depuis la version openMairie 4 il est utilis l ergonomie de jquery 2 1 13 1 Le composant jquery Les skins jquery peuvent tre rajout s dans le r pertoire om_theme Il est possible de g n rer un nouveau th me directement depuis le site de Jquery UI http jqueryui com download pour t l charger un th me standard http jqueryui com themeroller pour cr er un th me personnalis Le changement de th me peut se faire dans le fichier EXTERNALS txt voir framework param trage 2 1 Le framework 71 openMairie Framework Documentation Version 4 4 2 1 13 2 Les feuilles de style Les feuilles de style sont stock es dans le repertoire css et sont cascadables main css feuille de style principale openMairie om theme om css suivant la feuille de style jquery voir EXTERNALS txt app css surcharge sp cifique a l application exemple le logo de l application 2 1 14 Les scripts specifiques de l application Les m
174. set sur un champ champ avec une l gende libelle et un attribut class style une liste de classes css pour fieldset est disponible collapsible ajoute un bouton sur la l gende jQuery afin de refermer le fieldset et startClosed idem la diff rence que le fieldset est ferm au chargement de la page exemple d impl mentation de la m thode setLayout sans utiliser les m thodes set Groupe et setRegroupe lt php function setLayout amp form maj Ouverture d un div sur une colonne de 1 2 6 12 de la largeur du conteneur parent Sform gt setBloc om collectivite D col 6 Ouverture d un fieldset Sform gt setFieldset om collectivite D _ om collectivite ollapsible Ouverture d un div les champs compris entre om_collectivite et actif la classe group permet d afficher les champs en ligne Sform gt setBloc om_ collectivite D group Fermeture du groupe Sform gt setBloc actif F Fermeture du fieldset Sform gt setFieldset actif Fr Fermeture du div de 50 Sform gt setBloc actif r Ouverture d un div sur une colonne de 1 2 de la largeur du conteneur parent Sform gt setBloc orientation D col_ 6 Sform gt setFieldset orientation D _ Parametres generaux du document MstartClosed Sform gt setBloc orientation D group
175. sousetat parametrag gt lettretyp Depuis la version 4 d openMairie les ditions sont conserv es dans 3 tables om etat pour les tats om_sousetat pour les sous tats om_lettretype pour les lettres types Contrairement aux tats et aux lettres types les tableaux de bord PDF sont stock s dans un fichier nom_ objet pdf inc 2 1 9 1 Actif non actif Les sous etats sont li s a un ou plusieurs tat 60 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Les tats sous tats et lettre type peuvent tre actif ou non actif Par d faut sont pris en compte 1 l dition actif de la collectivit 2 l dition actif de la multicollectivit 3 l dition non actif de la multicollectivit Les ditions d une collectivit ayant le statut non actif ne sont pas prises en compte 2 1 9 2 Param trer des tats Il est conseill d utiliser l assistant tat du g n rateur Les param tres sont les suivants orientation portrait ou paysage format A4 A3 position et nom du logo titre de 1 tat position et caract ristiques du titre corps de 1 tat position et caract ristiques du corps la requ te SQL les sous tats associ s et les caract ristiques Pour le corps et le titre les zones entre crochets exemple nom sont les champs de fusion s lectionn s par la requ te SQL Ces champs
176. st g n r par d faut Le g n rateur cr e maintenant une clause SQL ORDER BY pour chaque mod le Le tri par d faut se fait sur une ventuelle colonne libelle Si elle n existe pas la deuxi me colonne de la table est utilis e sinon la cl primaire Note Dans le cas o la deuxi me colonne d une table est utilis e comme libell si cette colonne est une cl trang re alors le tri se fera sur le libell de la table trang re 5 1 2 2 3 3 Les actions du tableau 5 1 2 2 3 4 Les actions d openMairie Remplacer href 0 par tab_actions corner ajouter Remplacer href 1 par tab_actions left modifier Remplacer href 2 par tab_actions left supprimer Pour surcharger l action ajouter il faut maintenant surcharger tab_actions corner ajouter et non plus href 0 lt php Stab_actions corner ajouter array lien gt form php obj obj s amp amp action 0 id gt amp amp advs_id advs_id amp amp tricol tricol amp amp valide valide amp amp rei lib gt lt span class om icon om icon 16 om icon fix add 16 title _ Ajouter gt rights gt array list gt array obj obj _ajouter operator gt OR 118 Chapitre 5 Historique amp Mises niveau openMairie Framework Documentation Version 4 4 ordre gt 10
177. svnroot openmairie openmairie exemple tags 4 2 0 core spg svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 spg scr svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 scr lib svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 lib css svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 css js svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 js img svn scm adullact net svnroot openmairie openmairie_exemple tags 4 2 0 img pdf svn scm adullact net svnroot openmairie openmairie exemple tags 4 2 0 pdf php svn scm adullact net svnroot openmairie openmairie _exemple tags 4 2 0 php om theme svn scm adullact net svnroot openmairie externals om theme kinosura tags 1 0 0 Appliquer les propri t s externals svn propset svn externals F EXTERNALS txt svn up svn ci attention le repertoire ne doit pas etre existant copie de travail verouill e 7 1 1 6 Keywords 7 1 1 7 Les clients graphiques Il est recommand de savoir utiliser et d utiliser subversion en ligne de commande mais il existe quelques clients graphiques qui permettent de r aliser certaines op rations d une mani re plus conviviale Meld TortoiseSVN 126 Chapitre 7 Outils openMairie Framework Documentation Version 4 4 7 1 1 8 Tutoriaux Importer un nouveau projet Un nouveau projet est une nouvelle application qui se
178. t de gen obj emetteur class php G n ration de obj emetteur class php affichage colone incomplet 2 0588235294118 lt 2 5 G n ration de sql pgsql emetteur pdf inc php G n ration de sal pgsql emetteur regmo inc php G n ration de sql pgsql emetteur import inc php 1 1 2 3 G n rer les formulaires et dition de service Nous allons proc der de la m me mani re avec le bouton service L analyse de la base de donn es est la suivante analyse Analyse de la base de donn es pgsql L openexemple openexemple Elements Infos Tables de la base om_lettretype om_ profil om_collectivite om_sousetat om_logo om_utilisateur de donn es om_parametre om_dashboard om_sig_map_comp emetteur courrier om_droit om_sig_map_wms om_requete om_sig_wms om_widget om_sig_map om_etat Table service cl N cl automatique service longueur enregistrement 31 Champs service 11 int libelle 20 string Sous formulaire courrier Cl secondaire Le g n rateur rep re un sous formulaire courrier Effectivement il y a une relation de un plusieurs entre service et courrier un service peut avoir 0 plusieurs courriers En cliquant sur toutes les options vous avez le message suivant Table service G n ration de gen sal pgsqal service inc php Aucun changement de sql pgsql service inc php Aucun changement de gen sql
179. t la date de cr ations est incluse dans l intervalle saisi bornes comprises Il est possible de ne saisir qu une seule date afin de rechercher les utilisateurs ayant t cr s avant ou apr s une date particuli re 2 1 5 3 2 2 Cr er un champ de recherche avec menu d roulant personnalis Exemple recherche des uti lisateurs administrateurs Dans cet exemple l information se trouve directement dans la table interrog e lt php soit user une table contenant une colonne is admin args array args 0 array true false args 1 array _ T us y _ Oui _ Non Schamps administrator array colonne gt is admin table gt user libelle gt _ Administrateur type gt select 44 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 subtype gt manualselect args gt args 2 gt Cette configuration permet de cr er un champ HTML de type select avec trois choix Tous valeur Oui valeur true Non valeur false Le tableau args 0 contient les valeurs associ es aux choix Elles seront recherch es telles quelles dans la base de donn es En s lectionnant Oui la requ te SQL de recherche sera construite comme suit PostgresSOL WHERE user is_admin varchar like true Il est possible de saisir n importe quelle cha ne de car
180. tBloc corpsalign F Sform gt setFieldset corpsalign F Sform gt setBloc corpsalign F Ouverture d un div de largeur maximum sur un seul champ form gt setBloc om sgl DF M M l 12 Ouverture d un div de 1 2 de la largeur du conteneur parent Sform gt setBloc om sousetat D col 6 Sform gt setFieldset om sousetat D _ Sous etat s selection MstartClosed Sform gt setBloc om_sousetat D group Sform gt setBloc sousetat F Sform gt setFieldset sousetat F Sform gt setBloc sousetat F Ouverture d un div de 1 2 de la largeur du conteneur parent Sform gt setBloc se font D col 6 Sform gt setFieldset se font D _ Sous etat s police marges couleur MstartClosed form gt setBloc se_font D group Sform gt setBloc se couleurtexte F Sform gt setFieldset se couleurtexte F Sform gt setBloc se couleurtexte F 22 M thodes d actions Ces m thodes sont appel es lors de la validation du formulaire dbform ajouter val amp db NULL DEBUG false Cette m thode permet l insertion de donn es dans la base elle appelle toutes les m thodes de traitement v rification et m thodes sp cifiques l ajout dbform modifier val array amp db NULL
181. ta sql Ce fichier contient l initialisation d un jeu de donn es destination de trois environnements distincts l environnement de d veloppement l environnement de d monstration l environnement de tests Description des fichiers vX X X sql OU ver X X X sql Ces fichiers permettent de mettre jour les applicatifs d une version vers la version sup rieure Le X X X corres pond au num ro de version vers lequel la mise jour se fait et depuis la version juste pr c dente Lorsque le framework ou l applicatif est en d veloppement ce fichier peut tre suffix par dev et indique qu il n a pas encore t int gr aux diff rents fichiers init sql Juste avant une nouvelle version du framework les fichiers init sql doivent tre reg n r s pour int gr s les derni res modifications et ce fichier renomm avec son nom vX X X sqlouver_X X X sql standard Description du fichier update _sequences sql Ce fichier permet de cr er une fonction capable de mettre jour toutes les s quences correctement li es aux champs auxquels elles se rattachent en fonction de la derni re valeur du champ dans la table En plus de la cr ation de la fonction ce script ex cute la fonction 28 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Description du fichier install sql Ce fichier permet d initialiser tous les fichiers qui sont d crits ci dessus dans le bon ordre Par d
182. tat om_lettretype om parametre om_sousetat om utilisateur 2 gt Il est possible de surcharger les liens du tableau voir la configuration des actions 2 1 4 3 Le composant openMairie tab php utilise les m thodes d om_table class php qui est une classe d openMairie core om_table class php Les m thodes de ce composant peuvent tre surcharg es dans obj om_table class php 2 1 5 La recherche avanc e 2 1 5 1 Les diff rents types de recherche Recherche simple Cette recherche est celle disponible par d faut sur les tableaux d openMairie Elle permet de rechercher une valeur dans une colonne parmi toutes celles affich es rechercher une valeur dans toutes les colonnes affich es rechercher des valeurs approximatives 40 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Note Il est possible de modifier la liste des colonnes dans laquelle est effectu e la recherche Cette liste ne correspond pas forc ment aux colonnes affich es Elle correspond seulement par d faut c est dire lorsqu aucune surcharge ne modifie les fichiers g n r s dans gen sql Recherche avanc e Cette recherche est une fonctionnalit qui peut tre activ e et configur e manuellement pour un ou plusieurs tableaux donn s Elle permet de afficher un formulaire de recherche mono crit re permettant d effectuer des recherches strictes ou ap
183. tent ui state active gt echo _ Courrier lt legend gt eoho lt ficidsets il peut tre par d faut ouvert echo lt fieldset class collapsible gt n ou il peut tre ferm echo lt fieldset startClosed gt n Vous pouvez faire appel a des scripts js complementaires en utilisant la m thode f gt addHTMLHeadyJs array js formulairedyn js js onglet js Pour la gestion des accents il est conseill de ne pas mettre d accent dans le code utf8 au lieu de latin1 iso8859 1 et de mettre les accents dans la traduction Pour d finir le chemin par d faut pour l upload de fichier il faut utiliser la m thode Spath f gt getPathFolderTrs 2 1 14 2 Exemple Il est propos de prendre l exemple du traitement de la remise du registre a 0 dans openCourrier ENTETE NORMALISEE xx x Cette page permet de remettre a 0 le registr x package openmairie_exempl x version SVN Id xxxx php 311 2010 12 06 11 43 36 xxxxx CREATION DE L OBJET f require_once obj utils class php f new utils NULL traitement _ remise a 0 du registre ico_registre png recherche get if isset _GET validation validation _GET validation else validation 0 74 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 xx x Description de la page
184. texte les scripts suivants 68 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Acces une video externe avec un iframe lt iframe width 200 height 150 src http www youtube com embed gS5B4Llaqkfl frameborder 0 allowfullscreen gt lt iframe gt La meteo grace un javascript du site tameteo com lt div id cont_f5089b722555454d41872b91f52beafd4 gt lt h2 id h_f5089b722555454d41872b91f52beafd4 gt lt a href http www tameteo com title M t o gt M t o lt a gt lt h2 gt lt a id a_f5089b722555454d41872b91f52beafd4 href http www tameteo com meteo_Arles Europe France Bouches du Rhone 1 25772 html target _blank title M t o Arles style color 666666 font family l1 font size 14px gt lt a gt lt script type text javascript src http www tameteo com wid_loader f5089b722555454d41872b91f52beaf fd4 gt lt script gt lt div gt Horoscope au travers d un iframe qui pointe sr astroo com lt DEBUT CODE ASTROO gt lt debut code perso gt lt iframe width 232 height 302 marginheight 0 marginwidth 0 frameborder 0 align center src http www astroo com horoscope htm name astroo allowtransparency true gt lt fin code perso gt lt a href http www astroo com horoscope php target _top title Cliquez ici pour afficher l horoscope quotidien
185. tilisateur array colonne gt om utilisateur table gt om_ utilisateur type gt text libelle gt _ Identifiant taille gt 10 max gt 8 2 gt La cl identifiant_utilisateur est le nom du champ HTML qui sera affich sur le formulaire La cl colonne est obligatoire Elle contient le nom de la colonne de la base de donn es qui sera interrog e si la variable _POST contient la cl identifiant _ utilisateur La cl table est obligatoire Elle contient le nom de la table de la base de donn es qui sera interrog e si la variable _POST contient la cl identifiant _ utilisateur La cl type est obligatoire Elle contient le type du champ HTML afficher Cela peut tre date text select ou tout autre m thode de la classe formulaire Pour les champs de type select le nom du champ HTML doit tre le m me que le nom de la colonne La cl 1ibelle est obligatoire Elle contient le libell qui sera affich c t du champ dans le formulaire de recherche La cl taille est optionnelle Elle contient la taille du champ HTML attribut HTML size La cl max est optionnelle Elle contient la longueur maximale de la valeur du champ HTML attribut HTML maxlength Une fois tous les crit res de recherche configur s il faudra simplement v rifier que le tableau des crit res est bien utilis par l option de type search Exemple de formula
186. tiquement g r par openMairie lors de l ajout la modification et la suppression d enregistre ments Fonctionnement interne du g n rateur Comment ce champ est d termin lors de la g n ration d un mod le Le g n rateur suit la proc dure suivante il utilise la colonne ayant la contrainte PRIMARY KEY si elle existe sinon il utilise la colonne ayant le m me nom que la table S il n existe ni contrainte ni colonne ayant le m me nom que la table le mod le ne peut pas tre cr Note Le fait d utiliser une colonne ayant le m me nom que la table pour d terminer le champ identifiant est l pour une raison de r tro compatibilit Les versions d openMairie ant rieures 4 3 0 n utilisaient pas encore la contrainte PRIMARY KEY Est il possible d utiliser une cl primaire compos e de plusieurs colonnes Non et c est bien mieux comme a 3 1 4 2 Les r f rences vers d autres objets Un mod le de donn es peut contenir un ou plusieurs champs faisant r f rence d autres objets Ces objets pouvant tre de mod le diff rent D finition des r f rences La m thode pour cr er des r f rences diff re en fonction du SGBD 3 1 4 2 1 1 Avec PostgresSQL Il suffit d ajouter la contrainte SQL FOREIGN KEY des colonnes pour cr er des champs de type r f rence Fonctionnement interne du g n rateur Comment ces champs sont d termin s lors de
187. torage inc php filestorage dyn footer inc php enpieds dyn tab inc php variable specifique passer dans l url pour tab php dyn soustab php variable specifique passer dans l url pour soustab php dyn form php variable specifique passer dans l url pour form php dyn sousform php variable specifique passer dans l url pour sous php dyn var inc variable application deprecated pr f rez om parametre dyn varetatpdf inc variabl tat et sousetat pdf dyn varlettretypepdf inc varaible lettre type dyn varsousform get specific inc php variable sp cifique sousform dyn directory inc php connexions a des annuaires LDAP dyn comboaffichage inc php param trage combo dyn comboparametre inc php parametrage combo dyn comboretour inc php param trage combo README txt fichiers textes HISTORY Ext ICENCE Etxt TODO txt INSTALL txt app SPECIFIC txt explication sur la partie sp cifique de 1 application 2 1 3 1 Les zones de navigation Quatre zones de navigation diff rentes sont disponibles dans le framework 30 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Actions personnelles admin LIBREVILLE Mot de passe D connexion Raccourcis Tableau de bord JERS Tableau De Bord Param trage Editions Etat Sous tat Lettre Type Administration Menu Actions globales openExemple Version 4 3 0 Documentation openMairie org Le menu Le but de cette zone de navigati
188. tr position et caract ristiques du titre corps de la lettre position et caract ristiques du corps la requ te SQL Pour le corps et le titre les zones entre crochets sont les champs de fusion s lectionn s par la requ te Les variables commen ant par amp sont celles d finies dans dyn varlettretypepdf inc exemple amp aujourdhui et dans la table om_parametre 2 1 9 5 Param trer des dition PDF Un tat PDF peut tre g n r par le g n rateur option L dition est param tr e dans un fichier sql sgbd nom_ objet pdf inc et dans la Les param tres sont les suivants texte et caract ristique du Titre Ent te de tableau nom de colonne caract ristique du tableau caract ristique des cellules total moyenne nombre requ te SQL Pour le titre les zones entre crochets sont les champs de fusion s lectionn s par la requ te Les variables commen ant par amp sont celles d finies dans dyn varpdf inc exemple amp aujourdhui et dans la table om_parametre 2 1 9 6 Param trer les tiquettes Les zones entre crochets sont les champs de fusion s lectionn s par la requ te Les variables exemple amp aujourd hui sont celles d finies dans dyn varetiquettepdf inc et dans la table om_parametre Il y aura une integration depuis l utilisation d openPersonnalite dans une prochaine version openMairie 2 1 9 7 L diteur WYSIWYG Un diteur avanc a t mis en place dans cette version
189. ue avec google adresse_postale_bing php positionnement suivant le numero et rue avec bing adresse_postale_mapquest php positionnement suivant le numero et rue avec mapquest La g olocalisation automatique peut se faire sur une base externe postgresql eventuellement via une vue le script tab_sig php permet de saisir manuellement le point 4 1 1 2 Affichage de carte L affichage se fait avec openLayers dont le composant est de base dans le framework openMairie lib openLayers le composant est install de mani re a tre optimis avec une css openmairie La librairie proj4 inclus dans lib openLayers permet de pouvoir utiliser les projections lambert sud et lambert 93 99 openMairie Framework Documentation Version 4 4 La projection g ographique et Mercator est de base dans openLayers L enjeu est donc de projeter les donn es stock es dans la base m tier postgresql postgis les communes devant utiliser le lambert93 en mercator pour tre lisible avec les cartes accessibles sur internet L affichage des datas est fait au travers d une requ te postgresql qui alimente un tableau json lu comme une couche openLayers La data modifier est fourni par requete postgresql au format wkt openLayers voir paragraphe layers tab_sig php permet 1 affichage de des fonds l affichage de donn es data l affichage du geom tries qui peut tre cr ou d plac couche wkt dans la version
190. une contrainte NOT NULL nous indiquons clairement au g n rateur que le champ n est pas requis La valeur par d faut permet l utilisateur de laisser le champ vide lors d une validation de formulaire Le SGBD se charge alors d ajouter lui m me cette valeur Fonctionnement interne du g n rateur Comment ces champs sont d termin s lors de la g n ration d un mod le L abstracteur de base de donn es d openMairie peut en analysant une table r cup rer la liste de ses colonnes requises n ayant pas de valeur par d faut 3 1 Le g n rateur 87 openMairie Framework Documentation Version 4 4 Affichage dans les formulaires Comment ces champs sont repr sent s dans les formulaires Ces champs sont affich s avec un marqueur c t de leur libell indiquant qu ils sont requis Par d faut open Mairie utilise le caract re pour indiquer les champs requis Si ces champs ne sont pas remplis lors de la validation d un formulaire un message d erreur est affich pour chaque champ requis non compl t et la base de donn es n est pas modifi e 3 1 4 5 Le champ libell Pour repr senter des objets dans des champs de type lt select gt le g n rateur utilise un champ textuel particulier appel libell Ce champ est galement utilis pour ordonner les l ments d un tableau de mani re croissante D finition du libell Pour d finir explicitement une colonne comme lib
191. ur ce site depuis les syst me de gestion de version tel que Subversion Git ou d autres Ce site permet de g rer la mise jour automatique des documentations chaque commit dans ces syst mes de gestion de version Le site supporte galement le support des versions mais seulement pour Git et non pas pour Subversion l heure o cette documentation est r dig e L objectif d utiliser ce site est donc de ne pas avoir se soucier de la g n ration des documentations C est ReadTheDcs org qui s en occupe et dans tous les formats html pdf epub Pour pouvoir g rer un projet sur ce site il faut avoir un utilisateur le bouton Inscription en haut droite de la page d acucueil permet d obtenir un compte utilisateur tr s facilement 7 1 8 1 Importer un nouveau projet sur RTD Public s concern s Administrateur de projet openMairie Depuis le tableau de bord de readthedocs org un clic sur le bouton Importer permet d acc der au formulaire de cr ation d un projet sphinx existant Voici les informations saisir Nom le nom du logiciel sans accents sans espaces en minuscules par exemple openelec ou openresultat Repo l URL de githubcom o est stock e le code de la documentation par exemple https github com openmairie openelec documentation git pour openelec ou https github com openmairie openresultat documentation git pour openresultat Type de d p t Git
192. urcharg s de la classe formulaire doivent tre mises jour avec leur nouvelle impl mentation 116 Chapitre 5 Historique amp Mises niveau openMairie Framework Documentation Version 4 4 5 1 2 2 14 Classe table Les m thodes surcharg s de la classe table doivent tre mises jour avec leur nouvelle impl mentation Supprimer l utilisation de la m thode lt php function countHrefColumns href array 2 gt Si elle est utilis e dans une surchage elle doit tre remplac e par lt php function countActions actions gt tape 2 mettre jour la base de donn es 5 1 2 2 2 1 La structure La structure de la base de donn es d openMairie a chang e sensiblement depuis la version 4 2 0 Pour mettre jour la base de donn es depuis cette version il faudra ex cuter le script SQL ver_4 3 0 sql Pour MySQL data mysql ver_4 3 0 sql Pour PostgresSQL data pgsql ver_4 3 0 sql 5 1 2 2 2 2 Les tables m tier Le g n rateur g re maintenant plusieurs contraintes PRIMARY KEY FOREIGN KEY UNIQUE NOT NULL En fonction de ces contraintes les fichiers de l application sont g n r s diff remment par rapport openMairie version 4 2 0 CO e 5 1 2 2 2 3 PRIMARY KEY Ajouter la contrainte SQL PRIMARY KEY Le g n rateur peut maintenant utiliser les cl s primaires Pour cr er le champ identifiant il faudra utiliser la contrainte PRIMARY KEY la
193. valide amp amp retour tab lib gt lt span class om icon om icon 16 om icon fix add 16 title _ Ajouter gt _ Ajouter lt span gt rights gt array list gt array obj obj _ajouter operator gt OR ordre gt 10 Actions gauche left consulter stab actions left consulter array lien gt form php obj obj amp amp action 3 amp amp idx id gt amp amp premier premier amp amp advs_id advs_id gamp recherche recherche1 amp amp tricol tricol gamp selectioncol selectioncol amp amp valide valide amp amp retour tab rib gt lt span class om icon om icon 16 m i c n fix consult 16 titles _ fConsulter msr _ Consulter lt span gt rights gt array list gt array obj obj _ consulter operator gt OR ordre gt 10 Action sur la cinqui me colonne de contenu tab_actions specific_ content 4 array lien gt form php obj obj amp amp action 2 amp amp idx id gt amp amp premier premier amp amp advs_id advs_id gamp recherche recherche1 amp amp tricol tricol gamp selectioncol selectioncol gamp valide valide amp amp retour tab Lib gt lt span class om
194. vers la documentation du site openMairie un lien vers le site openMairie Le nom du logiciel est r cup r de la variable config application pr sente dans le fichier dyn config inc php La version est r cup r e de la variable version pr sente dans le fichier dyn version inc php La configuration des liens se fait dans le fichier dyn footer inc php Ce fichier de param trage n est pas obligatoire Si il n existe pas aucun lien n est affich Ce fichier de param trage doit contenir la d claration d un tableau de tableaux associatifs dans la variable footer Chaque tableau associatif repr sente un lien lt php On initialise le tableau conteneur Sfooter array On ajoute au tableau conteneur un tableau associatif repr sentant un lien r p ter autant de fois que n cessaire Sfooter array Mtitle gt _ Link description gt Description hirefpt gt scr link php target gt _ blank class gt action link eight gt trink gt 34 Chapitre 2 Le framework openMairie Framework Documentation Version 4 4 Param tre Requis Description title O Texte description N Texte qui s affiche au survol de l l ment href N Contenu du lien href target N Attribut pour ouvrir le lien dans une nouvelle fen tre class N Classe CSS qui s affiche sur l l ment right N Permission n cessaire l utilisat
195. xemple nexemple amp amp psql openexemple f install sql primaire secondaire secondaire primaire cle primaire La requ te correspondante en PostgreSQL est la suivante openMairie Framework Documentation Version 4 4 CREATE SEQUENCE service _seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1 CREATE SEQUENCE courrier_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1 Cr ation des tables CREATE TABLE emetteur emetteur nom prenom CREATE TABLE service service libelle CREATE TABLE courrier courrier dateenvoi objetcourrier emetteur service int PRIMARY KEY cl primaire varchar 20 varchar 20 int PRIMARY KEY cl primaire varchar 20 int PRIMARY KEY cl primaire date text int REFERENCES emetteur cl trang r int REFERENCES servic cl trang r Modifier le param trage openMairie pour faire un acc s la base cr e dyn database inc php voir framework parametrage Acc der avec votre navigateur sur openExemple login demo mot de passe demo 1 1 2 Cr er les formulair es Nous allons maintenant cr er les formulaires l aide du g n rateur Pour cela il faut aller dans le menu Administration
Download Pdf Manuals
Related Search
Related Contents
XL Go™ VideoProbe® 8月号(NO.1089) Samsung CT-29M21FQ User Manual VoiceLive 3 - TC Installation and user manual - Side Copyright © All rights reserved.
Failed to retrieve file