Fix sondage date sans horaire + a11y studs/adminstuds + README Gitlab
This commit is contained in:
parent
0c868291d3
commit
a9c7914d31
85
README.md
85
README.md
@ -1,3 +1,12 @@
|
|||||||
|
[![](https://git.framasoft.org/assets/logo-black-f52905a40830b30aa287f784b537c823.png)](https://git.framasoft.org)
|
||||||
|
|
||||||
|
![English:](http://upload.wikimedia.org/wikipedia/commons/thumb/a/ae/Flag_of_the_United_Kingdom.svg/20px-Flag_of_the_United_Kingdom.svg.png) **Framasoft uses GitLab** for the development of its free softwares. Our Github repositories are only mirrors.
|
||||||
|
If you want to work with us, **fork us on [git.framasoft.org](https://git.framasoft.org)**. (no registration needed, you can sign in with your Github account)
|
||||||
|
|
||||||
|
![Français :](http://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Flag_of_France.svg/20px-Flag_of_France.svg.png) **Framasoft utilise GitLab** pour le développement de ses logiciels libres. Nos dépôts Github ne sont que des mirroirs.
|
||||||
|
Si vous souhaitez travailler avec nous, **forkez-nous sur [git.framasoft.org](https://git.framasoft.org)**. (l'inscription n'est pas nécessaire, vous pouvez vous connecter avec votre compte Github)
|
||||||
|
* * *
|
||||||
|
|
||||||
Framadate est un fork du projet STUdS : https://sourcesup.cru.fr/projects/studs/
|
Framadate est un fork du projet STUdS : https://sourcesup.cru.fr/projects/studs/
|
||||||
|
|
||||||
Framadate est le projet qui motorise framadate.org pour framasoft.org
|
Framadate est le projet qui motorise framadate.org pour framasoft.org
|
||||||
@ -54,89 +63,89 @@ Fichiers de l'application
|
|||||||
=============================================================================
|
=============================================================================
|
||||||
|
|
||||||
index.php
|
index.php
|
||||||
La page d'accueil de STUdS
|
La page d'accueil de STUdS
|
||||||
studs.php
|
studs.php
|
||||||
La page de présentation de sondage
|
La page de présentation de sondage
|
||||||
adminstuds.php
|
adminstuds.php
|
||||||
La page d'administration réservée à l'auteur du sondage
|
La page d'administration réservée à l'auteur du sondage
|
||||||
infos_sondage.php
|
infos_sondage.php
|
||||||
La page (1/2) de création de sondage récupérant les informations générales
|
La page (1/2) de création de sondage récupérant les informations générales
|
||||||
choix_date.php
|
choix_date.php
|
||||||
La page de création (2/2) pour un sondage pour déterminer une date
|
La page de création (2/2) pour un sondage pour déterminer une date
|
||||||
choix_autre.php
|
choix_autre.php
|
||||||
La page de création (2/2) pour un sondage sur un sujet quelconque
|
La page de création (2/2) pour un sondage sur un sujet quelconque
|
||||||
creation_sondage.php
|
creation_sondage.php
|
||||||
Le fichier qui récupérent les informations des pages précédentes pour procéder à l'insertion du nouveau sondage dans la base PostgreSQL
|
Le fichier qui récupérent les informations des pages précédentes pour procéder à l'insertion du nouveau sondage dans la base PostgreSQL
|
||||||
style.css
|
style.css
|
||||||
Le fichier CSS de style pour toute l'application
|
Le fichier CSS de style pour toute l'application
|
||||||
app/inc/constants.php
|
app/inc/constants.php
|
||||||
Le fichier contenant les constantes à changer en fonction de la machine locale
|
Le fichier contenant les constantes à changer en fonction de la machine locale
|
||||||
app/inc/functions.php
|
app/inc/functions.php
|
||||||
Le fichier contenant quelques fonctions récurrentes de l'application
|
Le fichier contenant quelques fonctions récurrentes de l'application
|
||||||
app/inc/i18n.php
|
app/inc/i18n.php
|
||||||
Le fichier contenant quelques fonctions récurrentes de l'application relatives à l'internationalisation
|
Le fichier contenant quelques fonctions récurrentes de l'application relatives à l'internationalisation
|
||||||
README
|
README
|
||||||
Ce fichier
|
Ce fichier
|
||||||
INSTALL
|
INSTALL
|
||||||
Le fichier contenant les informations d'installation sur l'application
|
Le fichier contenant les informations d'installation sur l'application
|
||||||
CHANGELOG
|
CHANGELOG
|
||||||
Le fichier contenant toutes les modifications de l'application entre les différentes versions
|
Le fichier contenant toutes les modifications de l'application entre les différentes versions
|
||||||
contacts.php
|
contacts.php
|
||||||
La page permettant aux usagers de poser une question à l'administrateur de l'application
|
La page permettant aux usagers de poser une question à l'administrateur de l'application
|
||||||
apropos.php
|
apropos.php
|
||||||
La page expliquant les détails techniques relatifs à l'application et les dernieres modifications et celles à venir sur l'application
|
La page expliquant les détails techniques relatifs à l'application et les dernieres modifications et celles à venir sur l'application
|
||||||
bandeaux.php
|
bandeaux.php
|
||||||
Le fichier contenant tous les bandeaux des pages PHP de l'application
|
Le fichier contenant tous les bandeaux des pages PHP de l'application
|
||||||
favicon.ico
|
favicon.ico
|
||||||
L'icone de favoris de l'application
|
L'icone de favoris de l'application
|
||||||
sources.php
|
sources.php
|
||||||
La page qui propose les sources de l'application
|
La page qui propose les sources de l'application
|
||||||
exportics.php
|
exportics.php
|
||||||
Le fichier d'export de la meilleure date au format iCAL (fichier .ICS)
|
Le fichier d'export de la meilleure date au format iCAL (fichier .ICS)
|
||||||
exportcsv.php
|
exportcsv.php
|
||||||
Le fichier d'export de tous le tableau des participants avec leurs réponses dans un tableur (format .CSV)
|
Le fichier d'export de tous le tableau des participants avec leurs réponses dans un tableur (format .CSV)
|
||||||
exportpdf.php
|
exportpdf.php
|
||||||
Le fichier d'export de la lettre de convocation que le créateur du sondage pourra envoyer aux participants (format .PDF)
|
Le fichier d'export de la lettre de convocation que le créateur du sondage pourra envoyer aux participants (format .PDF)
|
||||||
|
|
||||||
admin/
|
admin/
|
||||||
Le répertoire réservé à l'administrateur de l'application
|
Le répertoire réservé à l'administrateur de l'application
|
||||||
admin/.htaccess
|
admin/.htaccess
|
||||||
Le fichier gérant les droits restreints du répertoire ADMIN
|
Le fichier gérant les droits restreints du répertoire ADMIN
|
||||||
admin/.htpasswd
|
admin/.htpasswd
|
||||||
Le fichier contenant les passwd des logins ayant accès au répertoire ADMIN
|
Le fichier contenant les passwd des logins ayant accès au répertoire ADMIN
|
||||||
admin/index.php
|
admin/index.php
|
||||||
La page présentant tous les sondages actuellement dans la base à l'administrateur
|
La page présentant tous les sondages actuellement dans la base à l'administrateur
|
||||||
admin/log_studs.txt
|
admin/log_studs.txt
|
||||||
Le fichier contenant un historique de toutes les creations/suppressions de sondage dans la base
|
Le fichier contenant un historique de toutes les creations/suppressions de sondage dans la base
|
||||||
|
|
||||||
errors/
|
errors/
|
||||||
Le répertoire contenant toutes les pages d'erreurs
|
Le répertoire contenant toutes les pages d'erreurs
|
||||||
errors/error-forbidden.php
|
errors/error-forbidden.php
|
||||||
La page qui indique dans la charte graphique de l'application l'erreur "501 forbidden"
|
La page qui indique dans la charte graphique de l'application l'erreur "501 forbidden"
|
||||||
errors/maintenance.php
|
errors/maintenance.php
|
||||||
La page qui indique que l'application est en maintenance temporaire
|
La page qui indique que l'application est en maintenance temporaire
|
||||||
|
|
||||||
export/
|
export/
|
||||||
Le répertoire qui contient tous les exports ICS
|
Le répertoire qui contient tous les exports ICS
|
||||||
|
|
||||||
iCalcreator/
|
iCalcreator/
|
||||||
Le répertoire qui contient les librairies d'export en iCal
|
Le répertoire qui contient les librairies d'export en iCal
|
||||||
|
|
||||||
php2pdf/
|
php2pdf/
|
||||||
Le répertoire qui contient les librairies d'export en PDF
|
Le répertoire qui contient les librairies d'export en PDF
|
||||||
|
|
||||||
scripts/
|
scripts/
|
||||||
Le répertoire qui contient tous les scripts de l'application
|
Le répertoire qui contient tous les scripts de l'application
|
||||||
|
|
||||||
sources/
|
sources/
|
||||||
Le répertoire qui contient les sources de l'application disponible sur la page sources.php
|
Le répertoire qui contient les sources de l'application disponible sur la page sources.php
|
||||||
|
|
||||||
locale/
|
locale/
|
||||||
Le répertoire qui contient les fichiers de traduction modifiables (.po) et compilés (.mo)
|
Le répertoire qui contient les fichiers de traduction modifiables (.po) et compilés (.mo)
|
||||||
au format gettext
|
au format gettext
|
||||||
|
|
||||||
=============================================================================
|
=============================================================================
|
||||||
Validations des pages
|
Validations des pages
|
||||||
=============================================================================
|
=============================================================================
|
||||||
|
|
||||||
Toutes les pages de STUdS sont validées HTML 4.01 Strict.
|
Toutes les pages de STUdS sont validées HTML 4.01 Strict.
|
||||||
|
@ -149,7 +149,7 @@ $dsujet=$sujets->FetchObject(false);
|
|||||||
$dsondage=$sondage->FetchObject(false);
|
$dsondage=$sondage->FetchObject(false);
|
||||||
|
|
||||||
if (isset($_POST["ajoutsujet"])) {
|
if (isset($_POST["ajoutsujet"])) {
|
||||||
Utils::print_header('');
|
Utils::print_header( _("Add a column") .' - ' . stripslashes( $dsondage->titre ));
|
||||||
|
|
||||||
bandeau_titre(_("Make your polls"));
|
bandeau_titre(_("Make your polls"));
|
||||||
|
|
||||||
@ -206,7 +206,7 @@ if (isset($_POST["ajoutsujet"])) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_POST["suppressionsondage"])) {
|
if (isset($_POST["suppressionsondage"])) {
|
||||||
Utils::print_header('');
|
Utils::print_header( _("Confirm removal of your poll") .' - ' . stripslashes( $dsondage->titre ));
|
||||||
|
|
||||||
bandeau_titre(_("Confirm removal of your poll"));
|
bandeau_titre(_("Confirm removal of your poll"));
|
||||||
|
|
||||||
@ -241,7 +241,7 @@ if (isset($_POST["confirmesuppression"])) {
|
|||||||
_("Thanks for your confidence.") . "\n" . NOMAPPLICATION );
|
_("Thanks for your confidence.") . "\n" . NOMAPPLICATION );
|
||||||
|
|
||||||
//affichage de l'ecran de confirmation de suppression de sondage
|
//affichage de l'ecran de confirmation de suppression de sondage
|
||||||
Utils::print_header('');
|
Utils::print_header(_("Your poll has been removed!"));
|
||||||
|
|
||||||
bandeau_titre(_("Make your polls"));
|
bandeau_titre(_("Make your polls"));
|
||||||
|
|
||||||
@ -639,6 +639,11 @@ if (isset($erreur_ajout_date) && $erreur_ajout_date) {
|
|||||||
$errors .= '<li>' . _("The date is not correct !") . '</li>';
|
$errors .= '<li>' . _("The date is not correct !") . '</li>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Poll title, description and email values
|
||||||
|
$title = (isset($_POST["boutonnouveautitre"]) && Utils::issetAndNoEmpty('nouveautitre')) ? htmlentities(html_entity_decode($_POST['nouveautitre'], ENT_QUOTES, 'UTF-8'), ENT_QUOTES, 'UTF-8') : stripslashes( $dsondage->titre );
|
||||||
|
$description = (isset($_POST["nouveauxcommentaires"])) ? stripslashes(htmlentities(html_entity_decode($_POST['nouveauxcommentaires'], ENT_QUOTES, 'UTF-8'), ENT_QUOTES, 'UTF-8')) : stripslashes( $dsondage->commentaires );
|
||||||
|
$email_admin = (isset($_POST["boutonnouvelleadresse"]) && Utils::issetAndNoEmpty('nouvelleadresse')) ? htmlentities(html_entity_decode($_POST['nouvelleadresse'], ENT_QUOTES, 'UTF-8'), ENT_QUOTES, 'UTF-8') : stripslashes( $dsondage->mail_admin );
|
||||||
|
|
||||||
if ($errors!='') {
|
if ($errors!='') {
|
||||||
Utils::print_header(_("Error!"));
|
Utils::print_header(_("Error!"));
|
||||||
bandeau_titre(_("Error!"));
|
bandeau_titre(_("Error!"));
|
||||||
@ -646,17 +651,12 @@ if ($errors!='') {
|
|||||||
echo '<div class="alert alert-danger"><ul class="list-unstyled">'.$errors.'</ul></div>'."\n";
|
echo '<div class="alert alert-danger"><ul class="list-unstyled">'.$errors.'</ul></div>'."\n";
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
Utils::print_header('');
|
Utils::print_header(_('Poll administration').' - '.$title);
|
||||||
bandeau_titre(_("Make your polls"));
|
bandeau_titre(_("Make your polls"));
|
||||||
|
|
||||||
// session_unset();
|
// session_unset();
|
||||||
}
|
}
|
||||||
|
|
||||||
//Poll title, description and email values
|
|
||||||
$title = (isset($_POST["boutonnouveautitre"]) && Utils::issetAndNoEmpty('nouveautitre')) ? htmlentities(html_entity_decode($_POST['nouveautitre'], ENT_QUOTES, 'UTF-8'), ENT_QUOTES, 'UTF-8') : stripslashes( $dsondage->titre );
|
|
||||||
$description = (isset($_POST["nouveauxcommentaires"])) ? stripslashes(htmlentities(html_entity_decode($_POST['nouveauxcommentaires'], ENT_QUOTES, 'UTF-8'), ENT_QUOTES, 'UTF-8')) : stripslashes( $dsondage->commentaires );
|
|
||||||
$email_admin = (isset($_POST["boutonnouvelleadresse"]) && Utils::issetAndNoEmpty('nouvelleadresse')) ? htmlentities(html_entity_decode($_POST['nouvelleadresse'], ENT_QUOTES, 'UTF-8'), ENT_QUOTES, 'UTF-8') : stripslashes( $dsondage->mail_admin );
|
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<form name="formulaire4" action="' . Utils::getUrlSondage($numsondageadmin, true) . '" method="POST">
|
<form name="formulaire4" action="' . Utils::getUrlSondage($numsondageadmin, true) . '" method="POST">
|
||||||
<div class="jumbotron">
|
<div class="jumbotron">
|
||||||
@ -686,7 +686,7 @@ echo '
|
|||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<div class="form-group" >
|
<div class="form-group" >
|
||||||
<div id="author-form">
|
<div id="author-form">
|
||||||
<label class="control-label">'. _("Initiator of the poll") .'</label>
|
<h3 class="control-label">'. _("Initiator of the poll") .'</h3>
|
||||||
<p> '.stripslashes($dsondage->nom_admin).'</p>
|
<p> '.stripslashes($dsondage->nom_admin).'</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="email-form">
|
<div id="email-form">
|
||||||
@ -716,11 +716,11 @@ echo '
|
|||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="form-group col-md-5">
|
<div class="form-group col-md-5">
|
||||||
<label for="public-link">'._("Public link of the pool") .' <a href="' . Utils::getUrlSondage($dsondage->id_sondage) . '" class="glyphicon glyphicon-link"></a></label>
|
<label for="public-link"><a class="public-link" href="' . Utils::getUrlSondage($dsondage->id_sondage) . '">'._("Public link of the pool") .' <span class="btn-link glyphicon glyphicon-link"></span></a></label>
|
||||||
<input class="form-control" id="public-link" type="text" readonly="readonly" value="' . Utils::getUrlSondage($dsondage->id_sondage) . '" />
|
<input class="form-control" id="public-link" type="text" readonly="readonly" value="' . Utils::getUrlSondage($dsondage->id_sondage) . '" />
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-5">
|
<div class="form-group col-md-5">
|
||||||
<label for="admin-link">'._("Admin link of the pool") .' <a href="' . Utils::getUrlSondage($numsondageadmin, true) . '" class="glyphicon glyphicon-link"></a></label>
|
<label for="admin-link"><a class="admin-link" href="' . Utils::getUrlSondage($numsondageadmin, true) . '">'._("Admin link of the pool") .' <span class="btn-link glyphicon glyphicon-link"></span></a></label>
|
||||||
<input class="form-control" id="admin-link" type="text" readonly="readonly" value="' . Utils::getUrlSondage($numsondageadmin, true) . '" />
|
<input class="form-control" id="admin-link" type="text" readonly="readonly" value="' . Utils::getUrlSondage($numsondageadmin, true) . '" />
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-2">
|
<div class="form-group col-md-2">
|
||||||
@ -763,12 +763,12 @@ if ($dsondage->format=="D"||$dsondage->format=="D+") {
|
|||||||
|
|
||||||
for ($i = 0; $i < count($toutsujet); $i++) {
|
for ($i = 0; $i < count($toutsujet); $i++) {
|
||||||
|
|
||||||
$border[$i] = false;
|
|
||||||
$radio_title[$i] = strftime("%A %e %B %Y",$current);
|
|
||||||
|
|
||||||
// Current date
|
// Current date
|
||||||
$current = $toutsujet[$i];
|
$current = $toutsujet[$i];
|
||||||
|
|
||||||
|
$border[$i] = false;
|
||||||
|
$radio_title[$i] = strftime("%A %e %B %Y",$current);
|
||||||
|
|
||||||
// Months
|
// Months
|
||||||
$td_headers[$i] = 'M'.($i+1-$colspan_month);
|
$td_headers[$i] = 'M'.($i+1-$colspan_month);
|
||||||
|
|
||||||
@ -792,9 +792,9 @@ if ($dsondage->format=="D"||$dsondage->format=="D+") {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Hours
|
// Hours
|
||||||
if (strpos($dsujet->sujet,'@') !== false) {
|
$rbd = ($border[$i]) ? ' rbd' : '';
|
||||||
$rbd = ($border[$i]) ? ' rbd' : '';
|
if (strpos($current,'@') !== false) {
|
||||||
$hour = substr($toutsujet[$i], strpos($toutsujet[$i], '@')-count($toutsujet[$i])+2);
|
$hour = substr($current, strpos($current, '@')-count($current)+2);
|
||||||
|
|
||||||
if ($hour != "") {
|
if ($hour != "") {
|
||||||
$tr_hours .= '<th class="bg-info'.$rbd.'" id="H'.$i.'">'.$hour.'</th>';
|
$tr_hours .= '<th class="bg-info'.$rbd.'" id="H'.$i.'">'.$hour.'</th>';
|
||||||
@ -803,10 +803,12 @@ if ($dsondage->format=="D"||$dsondage->format=="D+") {
|
|||||||
} else {
|
} else {
|
||||||
$tr_hours .= '<th class="bg-info'.$rbd.'"></th>';
|
$tr_hours .= '<th class="bg-info'.$rbd.'"></th>';
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
$tr_hours .= '<th class="bg-info'.$rbd.'"></th>';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove col
|
// Remove col
|
||||||
$tr_add_remove_col .= '<td headers="'.$td_headers[$i].'"><button type="submit" name="effacecolonne'.$i.'" class="btn btn-link btn-sm" title="' . _('Remove the column') . ' ' .$radio_title[$i]. '"><span class="glyphicon glyphicon-remove text-danger"></span></button></td>';
|
$tr_add_remove_col .= (count($toutsujet) > 2 ) ? '<td headers="'.$td_headers[$i].'"><button type="submit" name="effacecolonne'.$i.'" class="btn btn-link btn-sm" title="' . _('Remove the column') . ' ' .$radio_title[$i]. '"><span class="glyphicon glyphicon-remove text-danger"></span></button></td>' : '<td role="presentation"></td>';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -860,6 +862,7 @@ echo '
|
|||||||
</div>
|
</div>
|
||||||
<div id="tableContainer" class="tableContainer">
|
<div id="tableContainer" class="tableContainer">
|
||||||
<table class="results">
|
<table class="results">
|
||||||
|
<caption>'._('Votes of the poll ').$title.'</caption>
|
||||||
<thead>'. $thead . '</thead>
|
<thead>'. $thead . '</thead>
|
||||||
<tbody>';
|
<tbody>';
|
||||||
|
|
||||||
@ -1012,7 +1015,7 @@ if (!$testligneamodifier=="true") {
|
|||||||
|
|
||||||
// Addition and Best choice
|
// Addition and Best choice
|
||||||
//affichage de la ligne contenant les sommes de chaque colonne
|
//affichage de la ligne contenant les sommes de chaque colonne
|
||||||
$tr_addition = '<tr><td align="right">'. _("Addition") .'</td>';
|
$tr_addition = '<tr><td>'. _("Addition") .'</td>';
|
||||||
$tr_bestchoice = '<tr><td></td>';
|
$tr_bestchoice = '<tr><td></td>';
|
||||||
$meilleurecolonne = 0;
|
$meilleurecolonne = 0;
|
||||||
|
|
||||||
@ -1032,25 +1035,23 @@ $tr_addition .= '<td></td></tr>';
|
|||||||
$toutsujet = explode(",", $dsujet->sujet);
|
$toutsujet = explode(",", $dsujet->sujet);
|
||||||
|
|
||||||
$compteursujet = 0;
|
$compteursujet = 0;
|
||||||
$meilleursujet = '';
|
$meilleursujet = '<ul style="list-style:none">';
|
||||||
for ($i = 0; $i < $nbcolonnes; $i++) {
|
for ($i = 0; $i < $nbcolonnes; $i++) {
|
||||||
|
|
||||||
if (isset($somme[$i]) && $somme[$i] > 0 && $somme[$i] == $meilleurecolonne){
|
if (isset($somme[$i]) && $somme[$i] > 0 && $somme[$i] == $meilleurecolonne){
|
||||||
$tr_bestchoice .= '<td><span class="glyphicon glyphicon-star text-warning"></span></td>';
|
$tr_bestchoice .= '<td><span class="glyphicon glyphicon-star text-warning"></span></td>';
|
||||||
|
|
||||||
$meilleursujet .= ', ';
|
|
||||||
|
|
||||||
if ($dsondage->format == "D" || $dsondage->format == "D+") {
|
if ($dsondage->format == "D" || $dsondage->format == "D+") {
|
||||||
$meilleursujetexport = $toutsujet[$i];
|
$meilleursujetexport = $toutsujet[$i];
|
||||||
|
|
||||||
if (strpos($toutsujet[$i], '@') !== false) {
|
if (strpos($toutsujet[$i], '@') !== false) {
|
||||||
$toutsujetdate = explode("@", $toutsujet[$i]);
|
$toutsujetdate = explode("@", $toutsujet[$i]);
|
||||||
$meilleursujet .= strftime(_("%A, den %e. %B %Y"),$toutsujetdate[0]). ' - ' . $toutsujetdate[1];
|
$meilleursujet .= '<li><b>'.strftime(_("%A, den %e. %B %Y"),$toutsujetdate[0]). ' - ' . $toutsujetdate[1].'</b></li>';
|
||||||
} else {
|
} else {
|
||||||
$meilleursujet .= strftime(_("%A, den %e. %B %Y"),$toutsujet[$i]);
|
$meilleursujet .= '<li><b>'.strftime(_("%A, den %e. %B %Y"),$toutsujet[$i]).'</b></li>';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$meilleursujet.=$toutsujet[$i];
|
$meilleursujet.= '<li><b>'.$toutsujet[$i].'</b></li>';
|
||||||
}
|
}
|
||||||
$compteursujet++;
|
$compteursujet++;
|
||||||
|
|
||||||
@ -1060,25 +1061,26 @@ for ($i = 0; $i < $nbcolonnes; $i++) {
|
|||||||
}
|
}
|
||||||
$tr_bestchoice .= '<td></td></tr>';
|
$tr_bestchoice .= '<td></td></tr>';
|
||||||
|
|
||||||
$meilleursujet = str_replace("°", "'", substr("$meilleursujet", 1));
|
$meilleursujet = str_replace("°", "'", $meilleursujet).'</ul>';
|
||||||
$vote_str = ($meilleurecolonne > 1) ? $vote_str = _('votes') : _('vote');
|
$vote_str = ($meilleurecolonne > 1) ? $vote_str = _('votes') : _('vote');
|
||||||
|
|
||||||
// Print Addition and Best choice
|
// Print Addition and Best choice
|
||||||
echo $tr_addition."\n".$tr_bestchoice.'
|
echo $tr_addition."\n".$tr_bestchoice.'
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
<div class="col-sm-4 col-sm-offset-4"><p>'."\n";
|
||||||
<p class="affichageresultats">'."\n";
|
|
||||||
|
|
||||||
if ($compteursujet == 1) {
|
if ($compteursujet == 1) {
|
||||||
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The best choice at this time is:") . ' <b>' . $meilleursujet . ' </b>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The best choice at this time is:") . '</p>' . $meilleursujet . '<p>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
||||||
} elseif ($compteursujet > 1) {
|
} elseif ($compteursujet > 1) {
|
||||||
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The bests choices at this time are:") . ' <b>' . $meilleursujet . ' </b>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The bests choices at this time are:") . '</p>' . $meilleursujet . '<p>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
echo '</p>
|
echo '
|
||||||
</form>
|
</p></div>
|
||||||
<hr />
|
</div>
|
||||||
|
|
||||||
|
<hr />
|
||||||
<form name="formulaire4" action="#bas" method="POST">'."\n";
|
<form name="formulaire4" action="#bas" method="POST">'."\n";
|
||||||
// Commments
|
// Commments
|
||||||
$sql = 'SELECT * FROM comments WHERE id_sondage='.$connect->Param('numsondage').' ORDER BY id_comment';
|
$sql = 'SELECT * FROM comments WHERE id_sondage='.$connect->Param('numsondage').' ORDER BY id_comment';
|
||||||
|
@ -49,14 +49,19 @@ if (!Utils::issetAndNoEmpty('nom', $_SESSION) && !Utils::issetAndNoEmpty('adress
|
|||||||
$choixdate='';
|
$choixdate='';
|
||||||
if (Utils::issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
if (Utils::issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
||||||
for ($i = 0; $i < count($_SESSION["totalchoixjour"]); $i++) {
|
for ($i = 0; $i < count($_SESSION["totalchoixjour"]); $i++) {
|
||||||
for ($j=0;$j< min(count($_SESSION['horaires'.$i]),12);$j++) {
|
if(count($_SESSION['horaires'.$i])!=0) {
|
||||||
if ($_SESSION['horaires'.$i][$j]!="") {
|
for ($j=0;$j< min(count($_SESSION['horaires'.$i]),12);$j++) {
|
||||||
array_push($temp_results, $_SESSION["totalchoixjour"][$i].'@'.$_SESSION['horaires'.$i][$j]);
|
if ($_SESSION['horaires'.$i][$j]!="") {
|
||||||
} else {
|
array_push($temp_results, $_SESSION["totalchoixjour"][$i].'@'.$_SESSION['horaires'.$i][$j]);
|
||||||
array_push($temp_results, $_SESSION["totalchoixjour"][$i]);
|
} else {
|
||||||
|
array_push($temp_results, $_SESSION["totalchoixjour"][$i]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
array_push($temp_results, $_SESSION["totalchoixjour"][$i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sort and remove doublons
|
// Sort and remove doublons
|
||||||
|
@ -86,13 +86,6 @@ div.calendrier td.choisi {
|
|||||||
}
|
}
|
||||||
/* </calendrier> */
|
/* </calendrier> */
|
||||||
|
|
||||||
/* Paragraphe sous le sondage */
|
|
||||||
p.affichageresultats{
|
|
||||||
text-align: center;
|
|
||||||
font-family:arial;
|
|
||||||
font-size:13px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Commentaires */
|
/* Commentaires */
|
||||||
div.comment{
|
div.comment{
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
@ -134,12 +127,32 @@ header .lead {
|
|||||||
#admin-link, #public-link {
|
#admin-link, #public-link {
|
||||||
cursor:text;
|
cursor:text;
|
||||||
}
|
}
|
||||||
|
.admin-link, .public-link,
|
||||||
|
.admin-link:hover, .public-link:hover {
|
||||||
|
color:#333;
|
||||||
|
text-decoration:none;
|
||||||
|
border:none;
|
||||||
|
}
|
||||||
|
|
||||||
.jumbotron h2, .jumbotron .js-title {
|
.jumbotron h2, .jumbotron .js-title {
|
||||||
margin-bottom:20px;
|
margin-bottom:20px;
|
||||||
margin-top:0px;
|
margin-top:0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h3.control-label {
|
||||||
|
display: inline-block;
|
||||||
|
max-width: 100%;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 14px;
|
||||||
|
line-height: 1.42857;
|
||||||
|
}
|
||||||
|
|
||||||
|
caption {
|
||||||
|
padding: 0 10px 10px;
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
|
||||||
/* adminstuds.php */
|
/* adminstuds.php */
|
||||||
#title-form h2 .btn-edit,
|
#title-form h2 .btn-edit,
|
||||||
#email-form .btn-edit,
|
#email-form .btn-edit,
|
||||||
|
53
studs.php
53
studs.php
@ -211,16 +211,16 @@ if($err != 0) {
|
|||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Utils::print_header($dsondage->titre);
|
Utils::print_header(_('Poll').' - '.$dsondage->titre);
|
||||||
bandeau_titre(_("Make your polls"));
|
bandeau_titre(_("Make your polls"));
|
||||||
}
|
}
|
||||||
|
|
||||||
$titre=str_replace("\\","",$dsondage->titre);
|
$title=stripslashes(str_replace("\\","",$dsondage->titre));
|
||||||
echo '
|
echo '
|
||||||
<div class="jumbotron">
|
<div class="jumbotron">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-7">
|
<div class="col-md-7">
|
||||||
<h2>'.stripslashes($titre).'</h2>
|
<h2>'.$title.'</h2>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<div class="btn-group pull-right">
|
<div class="btn-group pull-right">
|
||||||
@ -232,11 +232,11 @@ echo '
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="control-label">'. _("Initiator of the poll") .' :</label>
|
<h3 class="control-label">'. _("Initiator of the poll") .'</h3>
|
||||||
<p class="form-control-static"> '.stripslashes($dsondage->nom_admin).'</p>
|
<p class="form-control-static"> '.stripslashes($dsondage->nom_admin).'</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="public-link">'._("Public link of the pool") .' <a href="' . Utils::getUrlSondage($dsondage->id_sondage) . '" class="glyphicon glyphicon-link"></a> : </label>
|
<label for="public-link"><a class="public-link" href="' . Utils::getUrlSondage($dsondage->id_sondage) . '">'._("Public link of the pool") .' <span class="btn-link glyphicon glyphicon-link"></a></label>
|
||||||
<input class="form-control" id="public-link" type="text" readonly="readonly" value="' . Utils::getUrlSondage($dsondage->id_sondage) . '" />
|
<input class="form-control" id="public-link" type="text" readonly="readonly" value="' . Utils::getUrlSondage($dsondage->id_sondage) . '" />
|
||||||
</div>
|
</div>
|
||||||
</div>'."\n";
|
</div>'."\n";
|
||||||
@ -332,12 +332,12 @@ if ($dsondage->format=="D"||$dsondage->format=="D+") {
|
|||||||
|
|
||||||
for ($i = 0; $i < count($toutsujet); $i++) {
|
for ($i = 0; $i < count($toutsujet); $i++) {
|
||||||
|
|
||||||
$border[$i] = false;
|
|
||||||
$radio_title[$i] = strftime("%A %e %B %Y",$current);
|
|
||||||
|
|
||||||
// Current date
|
// Current date
|
||||||
$current = $toutsujet[$i];
|
$current = $toutsujet[$i];
|
||||||
|
|
||||||
|
$border[$i] = false;
|
||||||
|
$radio_title[$i] = strftime("%A %e %B %Y",$current);
|
||||||
|
|
||||||
// Months
|
// Months
|
||||||
$td_headers[$i] = 'M'.($i+1-$colspan_month);
|
$td_headers[$i] = 'M'.($i+1-$colspan_month);
|
||||||
|
|
||||||
@ -361,9 +361,9 @@ if ($dsondage->format=="D"||$dsondage->format=="D+") {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Hours
|
// Hours
|
||||||
if (strpos($dsondage->sujet,'@') !== false) {
|
$rbd = ($border[$i]) ? ' rbd' : '';
|
||||||
$rbd = ($border[$i]) ? ' rbd' : '';
|
if (strpos($current,'@') !== false) {
|
||||||
$hour = substr($toutsujet[$i], strpos($toutsujet[$i], '@')-count($toutsujet[$i])+2);
|
$hour = substr($current, strpos($current, '@')-count($current)+2);
|
||||||
|
|
||||||
if ($hour != "") {
|
if ($hour != "") {
|
||||||
$tr_hours .= '<th class="bg-info'.$rbd.'" id="H'.$i.'">'.$hour.'</th>';
|
$tr_hours .= '<th class="bg-info'.$rbd.'" id="H'.$i.'">'.$hour.'</th>';
|
||||||
@ -372,6 +372,8 @@ if ($dsondage->format=="D"||$dsondage->format=="D+") {
|
|||||||
} else {
|
} else {
|
||||||
$tr_hours .= '<th class="bg-info'.$rbd.'"></th>';
|
$tr_hours .= '<th class="bg-info'.$rbd.'"></th>';
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
$tr_hours .= '<th class="bg-info'.$rbd.'"></th>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -415,6 +417,7 @@ echo '
|
|||||||
</div>
|
</div>
|
||||||
<div id="tableContainer" class="tableContainer">
|
<div id="tableContainer" class="tableContainer">
|
||||||
<table class="results">
|
<table class="results">
|
||||||
|
<caption>'._('Votes of the poll ').$title.'</caption>
|
||||||
<thead>'. $thead . '</thead>
|
<thead>'. $thead . '</thead>
|
||||||
<tbody>';
|
<tbody>';
|
||||||
|
|
||||||
@ -559,7 +562,7 @@ if (( !(USE_REMOTE_USER && isset($_SERVER['REMOTE_USER'])) || !$user_mod) && $li
|
|||||||
|
|
||||||
// Addition and Best choice
|
// Addition and Best choice
|
||||||
//affichage de la ligne contenant les sommes de chaque colonne
|
//affichage de la ligne contenant les sommes de chaque colonne
|
||||||
$tr_addition = '<tr><td align="right">'. _("Addition") .'</td>';
|
$tr_addition = '<tr><td>'. _("Addition") .'</td>';
|
||||||
$tr_bestchoice = '<tr><td></td>';
|
$tr_bestchoice = '<tr><td></td>';
|
||||||
$meilleurecolonne = 0;
|
$meilleurecolonne = 0;
|
||||||
|
|
||||||
@ -579,25 +582,23 @@ $tr_addition .= '<td></td></tr>';
|
|||||||
$toutsujet = explode(",", $dsondage->sujet);
|
$toutsujet = explode(",", $dsondage->sujet);
|
||||||
|
|
||||||
$compteursujet = 0;
|
$compteursujet = 0;
|
||||||
$meilleursujet = '';
|
$meilleursujet = '<ul style="list-style:none">';
|
||||||
for ($i = 0; $i < $nbcolonnes; $i++) {
|
for ($i = 0; $i < $nbcolonnes; $i++) {
|
||||||
|
|
||||||
if (isset($somme[$i]) && $somme[$i] > 0 && $somme[$i] == $meilleurecolonne){
|
if (isset($somme[$i]) && $somme[$i] > 0 && $somme[$i] == $meilleurecolonne){
|
||||||
$tr_bestchoice .= '<td><span class="glyphicon glyphicon-star text-warning"></span></td>';
|
$tr_bestchoice .= '<td><span class="glyphicon glyphicon-star text-warning"></span></td>';
|
||||||
|
|
||||||
$meilleursujet .= ', ';
|
|
||||||
|
|
||||||
if ($dsondage->format == "D" || $dsondage->format == "D+") {
|
if ($dsondage->format == "D" || $dsondage->format == "D+") {
|
||||||
$meilleursujetexport = $toutsujet[$i];
|
$meilleursujetexport = $toutsujet[$i];
|
||||||
|
|
||||||
if (strpos($toutsujet[$i], '@') !== false) {
|
if (strpos($toutsujet[$i], '@') !== false) {
|
||||||
$toutsujetdate = explode("@", $toutsujet[$i]);
|
$toutsujetdate = explode("@", $toutsujet[$i]);
|
||||||
$meilleursujet .= strftime(_("%A, den %e. %B %Y"),$toutsujetdate[0]). ' - ' . $toutsujetdate[1];
|
$meilleursujet .= '<li><b>'.strftime(_("%A, den %e. %B %Y"),$toutsujetdate[0]). ' - ' . $toutsujetdate[1].'</b></li>';
|
||||||
} else {
|
} else {
|
||||||
$meilleursujet .= strftime(_("%A, den %e. %B %Y"),$toutsujet[$i]);
|
$meilleursujet .= '<li><b>'.strftime(_("%A, den %e. %B %Y"),$toutsujet[$i]).'</b></li>';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$meilleursujet.=$toutsujet[$i];
|
$meilleursujet.= '<li><b>'.$toutsujet[$i].'</b></li>';
|
||||||
}
|
}
|
||||||
$compteursujet++;
|
$compteursujet++;
|
||||||
|
|
||||||
@ -607,24 +608,26 @@ for ($i = 0; $i < $nbcolonnes; $i++) {
|
|||||||
}
|
}
|
||||||
$tr_bestchoice .= '<td></td></tr>';
|
$tr_bestchoice .= '<td></td></tr>';
|
||||||
|
|
||||||
$meilleursujet = str_replace("°", "'", substr("$meilleursujet", 1));
|
$meilleursujet = str_replace("°", "'", $meilleursujet).'</ul>';
|
||||||
$vote_str = ($meilleurecolonne > 1) ? $vote_str = _('votes') : _('vote');
|
$vote_str = ($meilleurecolonne > 1) ? $vote_str = _('votes') : _('vote');
|
||||||
|
|
||||||
// Print Addition and Best choice
|
// Print Addition and Best choice
|
||||||
echo $tr_addition."\n".$tr_bestchoice.'
|
echo $tr_addition."\n".$tr_bestchoice.'
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
<div class="col-sm-4 col-sm-offset-4"><p>'."\n";
|
||||||
<p class="affichageresultats">'."\n";
|
|
||||||
|
|
||||||
if ($compteursujet == 1) {
|
if ($compteursujet == 1) {
|
||||||
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The best choice at this time is:") . ' <b>' . $meilleursujet . ' </b>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The best choice at this time is:") . '</p>' . $meilleursujet . '<p>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
||||||
} elseif ($compteursujet > 1) {
|
} elseif ($compteursujet > 1) {
|
||||||
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The bests choices at this time are:") . ' <b>' . $meilleursujet . ' </b>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
echo '<span class="glyphicon glyphicon-star text-warning"></span> ' . _("The bests choices at this time are:") . '</p>' . $meilleursujet . '<p>' . _("with") . ' <b>' . $meilleurecolonne . '</b> ' . $vote_str . ".\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
echo '</p>
|
echo '
|
||||||
<hr />';
|
</p></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<hr />';
|
||||||
|
|
||||||
// Comments
|
// Comments
|
||||||
$sql = 'select * from comments where id_sondage='.$connect->Param('numsondage').' order by id_comment';
|
$sql = 'select * from comments where id_sondage='.$connect->Param('numsondage').' order by id_comment';
|
||||||
|
Loading…
Reference in New Issue
Block a user