OpenRésultat
Révision datée du 3 mars 2010 à 12:28 par imported>SylvainBeucler (Si vous voulez décrire les régionales, faites une nouvelle section)
Logiciel de gestion d'élections.
Documentation de base:
- Configuration initiale: http://adullact.net/docman/view.php/322/683/initialisation_election.pdf (sauter la partie initialisation SQL)
- Quelques détails de configuration pour scrutins municipaux: http://adullact.net/docman/view.php/322/836/liste_municipale.pdf
- Une vidéo de présentation (nécessite Java): http://demo.openmairie.org/openvideo/openresultat_presentation.html
Déroulement d'une élection avec OpenRésultat
- Fonctionne pour une et une seule collectivité
- La collectivité peut s'étendre sur un ou plusieurs cantons
- Chaque canton dispose de bureaux de vote rattachés à la collectivité
- Les élections sont créées au moment où commence l'élection officielle
- À la création, une copie de la configuration (candidats, bureaux de vote...) est effectuée - plus de changement possible! (Cela est nécessaire pour pouvoir archiver l'élection.)
- On remplit d'une part la participation par tranche horaire
- On remplit d'autre part les résultats du scrutin
- La première centaine peut être saisie à part pour des premières statistiques
- Pendant la saisie, un module de visualisation affiche les statistiques en cours
- La page web de visualisation est conçue pour être rétro-projetée
Élection municipale
Les champs à saisir
Une élection:
- contient des bureaux de votes
- répartis sur des cantons
- présente des choix de votes ("candidats")
- attachés à un parti
- attachés à un groupe
- les listes municipales ont un age moyen
- a un nombre fixé choix de votes / candidats
- contient des regroupements (pour comparer avec d'autres villes)
Ordre de saisie
Il faut donc entrer dans l'ordre:
- Nom de la collectivité (Paramétrage -> Collectivité)
- Les cantons (Paramétrage -> Cantons)
- Les bureaux de vote (Paramétrage -> Bureaux de vote)
- Les partis (Paramétrage -> Partis politiques)
- Les groupes (Paramétrage -> Groupes politiques)
- Les listes (Paramétrage -> Candidats)
- L'age moyen des listes (Paramétrage -> Listes municipales) (facultatif)
- Les autre villes (Saisie -> Regroupements) (facultatif)
Une fois cela fait, et pas avant, vous pouvez lancer une élection
- L'élection elle-même (Configuration -> Election(s) en cours)
- Les candidats de l'élection (Configuration -> Config Election -> config_candidat)
- Le nombre d'inscrits dans chaque bureau de vote (Configuration -> Config Election -> config_bureau)
Ensuite les résultats, au fur et à mesure:
- Première centaine
- Résultats définitifs
- Participation par bureau de vote
Du point de vue de l'installateur
Installation automatique
- Version 1.07
- Réalisée sous Debian GNU/Linux, version Etch (4.0)
## Installation des fichiers OpenRésultat wget http://adullact.net/frs/download.php/2511/openmairie_resultat_1.07.zip unzip openmairie_resultat_1.07.zip ln -sf openmairie_resultat_1.07 openmairie_resultat # Donner des droits d'écriture à Apache pour enregistrer certains fichiers (photos, plans...) cd /var/www/openmairie_resultat/ chgrp -R www-data aff/ pdf/ tmp/ trs/ web/ chmod -R g=rwX aff/ pdf/ tmp/ trs/ web/ ## Dépendences aptitude install php-db # Installe le paquet Debian php-fpdf, en forçant php5 (et non pas php4): aptitude install php5 php-fpdf mkdir /var/www/libs pushd /var/www/libs # OpenMairie: wget http://adullact.net/frs/download.php/2369/openmairie_1.19.zip unzip openmairie_1.19.zip ln -s openmairie_1.19 openmairie # Artichow: aptitude install php5-gd # dépendence d'Artichow wget http://www.artichow.org/data/Artichow-1.1.0-php4+5.tar.gz tar xzf Artichow-1.1.0-php4+5.tar.gz ln -s Artichow-php4+5 artichow # TODO: autres patches Artichow comme expliqué dans la doc OpenRésultat # Contourne le problème "missing imageantialias() function" cat <<EOF > artichow.diff --- php5/inc/drivers/gd.class.php~ 2006-12-15 18:25:10.000000000 +0100 +++ php5/inc/drivers/gd.class.php 2008-03-03 19:57:48.000000000 +0100 @@ -159,8 +159,10 @@ imageantialias($this->resource, (bool)$bool); $this->antiAliasing = (bool)$bool; - } else { + } else if ($bool == TRUE) { awImage::drawErrorFile('missing-anti-aliasing'); + } else { + $this->antiAliasing = FALSE; } } EOF patch -p0 < artichow.diff popd # Dire à PHP où les trouver: cat <<EOF > /etc/php5/conf.d/openresultat.ini include_path = ".:/usr/share/php:/var/www/libs/openmairie:/usr/share/php/fpdf:/var/www/libs/artichow" EOF ## Base de données mysqladmin create openresultat mysql openresultat < data/mysql/init.sql # Each entry in '$conn' will be shown in the frontpage pass=`pwgen -s1` mysql -e "GRANT ALL PRIVILEGES ON openresultat.* TO 'openresultat' IDENTIFIED BY '$pass';" cat <<'EOF' > dyn/base.php <?php $conn[1] = array ( 'OpenResultat sur MySQL', // Titre sur la page index.php 'mysql', // Phptype '', // Dbsyntax 'openresultat', // Utilisateur 'CHANGETHEPASSWORD', // Mot de passe '', // Protocole 'localhost', // Hote '', // Port '', // Socket 'openresultat', // Nom de la base de données 'AAAA-MM-JJ' // Format date de la base ); EOF sed -i -e "s/CHANGETHEPASSWORD/$pass/" dyn/base.php
Apache config (forcer l'encodage latin-1):
<VirtualHost ...> AddDefaultCharset ISO-8859-1 ... </VirtualHost ...>
Archive
Installation des fichiers 1.06 + patches
wget http://adullact.net/frs/download.php/2373/openmairie_resultat_1.06.zip wget http://adullact.net/frs/download.php/2429/patch_1.06-1.zip wget http://adullact.net/frs/download.php/2436/patch_1.06_2.zip unzip openmairie_resultat_1.06.zip unzip patch_1.06-1.zip unzip patch_1.06_2.zip cp patch_1.06-1/sieges_elu.php openmairie_resultat/trt/sieges_elu.php cp patch_1.06-1/dbform_saisie.class.php openmairie_resultat/obj/dbform_saisie.class.php cp patch_1.06-1/var.inc openmairie_resultat/aff/dyn/var.inc cp patch_1.06-1/mysql/init.sql openmairie_resultat/data/mysql/ cp patch_1.06-1/pgsql/liste.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/liste.form.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/regroupement_en_cours.reqmo.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/regroupement.form.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/saisie_regroupement.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/collectivite.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/collectivite.form.inc openmairie_resultat/sql/pgsql/ cp patch_1.06-1/pgsql/init.sql openmairie_resultat/data/pgsql/ cp patch_1.06-1/pgsql/ver1.06.sql openmairie_resultat/data/pgsql/ cp patch_1.06_2/commune.inc openmairie_resultat/sql/pgsql/ cp patch_1.06_2/commune.form.inc openmairie_resultat/sql/pgsql/ # (ouf!)
Notes sur la version CVS
La version CVS (vers 2008-01) ne contient pas les patches patch_1.06-1.zip et patch_1.06-2.zip mais contient également d'autres modifications plus récentes.
cvs -d:pserver:anonymous@cvs.adullact.net:/cvsroot/openresultat co openmairie_resultat
Pour faire un diff avec la version CVS (c'est à dire convertir la version 1.06 en copie de travail CVS à peu près correcte):
find -name "Root" | while read file; do echo ":pserver:anonymous@cvs.adullact.net:/cvsroot/openresultat" > $file; done find -name "Repository" | xargs dos2unix find -name "*.php" -o -name "*.inc" -o -name "*.css" -o -name "*.sql" -o -name "*.html" -o -name "*.js" | xargs dos2unix