From 3d1a980f2df71569baec113008c35d281872ed9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Thu, 2 Jan 2014 15:49:49 +0100 Subject: [PATCH 01/90] Logging error when no poll was found in opensurveysondage.class.php --- htdocs/opensurvey/class/opensurveysondage.class.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index cde370edd03..b0895e466f4 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -229,7 +230,13 @@ class Opensurveysondage extends CommonObject $this->date_m = $this->db->jdate($obj->tls); $ret=1; } - else $ret=0; + else + { + $sondage = ($id ? 'id='.$id : 'sondageid='.$numsurvey); + $this->error='Fetch no poll found for '.$sondage; + dol_syslog($this->error, LOG_ERR); + $ret = 0; + } $this->db->free($resql); } From c35a704875a4ad120b264e1b5b97549a7879aab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Thu, 2 Jan 2014 15:54:17 +0100 Subject: [PATCH 02/90] Printing opensurveysondage.class.php error instead of a non-translated error --- htdocs/opensurvey/adminstuds.php | 3 +-- htdocs/opensurvey/adminstuds_preview.php | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 39d804ee578..099d3090f7e 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -156,8 +156,7 @@ $form=new Form($db); $result=$object->fetch(0,$numsondage); if ($result <= 0) { - print $langs->trans("ErrorRecordNotFound"); - llxFooter(); + dol_print_error($db,$object->error); exit; } diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 62fbadda1ac..4445ed8c538 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -382,8 +382,7 @@ $form=new Form($db); $result=$object->fetch(0,$numsondage); if ($result <= 0) { - print $langs->trans("ErrorRecordNotFound"); - llxFooter(); + dol_print_error($db,$object->error); exit; } From 048ea8062a9b9481a4f7c87e81b9ff2194d7b728 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Thu, 2 Jan 2014 16:32:11 +0100 Subject: [PATCH 03/90] Modified GET param of poll id to accept standard ID --- COPYRIGHT | 3 +++ htdocs/opensurvey/adminstuds.php | 34 +++++++++--------------- htdocs/opensurvey/adminstuds_preview.php | 17 ++++++------ htdocs/opensurvey/list.php | 2 +- 4 files changed, 26 insertions(+), 30 deletions(-) diff --git a/COPYRIGHT b/COPYRIGHT index db0cb532478..799e49cd60b 100644 --- a/COPYRIGHT +++ b/COPYRIGHT @@ -50,6 +50,9 @@ http://www.fsf.org/licensing/licenses/index_html Copyright --------- +Copyright (C) 2014 +- Marcos García + Copyright (C) 2013 - Christophe Battarel - Laurent Destailleur diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 099d3090f7e..c6fc44e0025 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -35,18 +36,10 @@ if (!$user->admin) accessforbidden(); // Initialisation des variables $action=GETPOST('action'); $numsondage = $numsondageadmin = ''; -if (GETPOST('sondage')) -{ - if (strlen(GETPOST('sondage')) == 24) // recuperation du numero de sondage admin (24 car.) dans l'URL - { - $numsondageadmin=GETPOST("sondage",'alpha'); - $numsondage=substr($numsondageadmin, 0, 16); - } - else - { - $numsondageadmin=''; - $numsondage=GETPOST("sondage",'alpha'); - } + +if (GETPOST('id')) { + $numsondageadmin = GETPOST('id', 'alpha'); + $numsondage = substr($numsondageadmin, 0, 16); } $object=new Opensurveysondage($db); @@ -128,7 +121,7 @@ if (GETPOST('ajoutcomment')) $comment_user = GETPOST('commentuser'); $sql = "INSERT INTO ".MAIN_DB_PREFIX."opensurvey_comments (id_sondage, comment, usercomment)"; - $sql.= " VALUES ('".$db->escape($numsondage)."','".$db->escape($comment)."','".$db->escape($comment_user)."')"; + $sql.= " VALUES ('".$db->escape($object->id_sondage)."','".$db->escape($comment)."','".$db->escape($comment_user)."')"; $resql = $db->query($sql); dol_syslog("sql=".$sql); if (! $resql) @@ -153,7 +146,7 @@ if ($idcomment) $form=new Form($db); -$result=$object->fetch(0,$numsondage); +$result=$object->fetch(0, $numsondageadmin); if ($result <= 0) { dol_print_error($db,$object->error); @@ -177,7 +170,7 @@ $toutsujet=str_replace("@","
",$toutsujet); $toutsujet=str_replace("°","'",$toutsujet); -print '
'."\n"; +print ''."\n"; print ''; $head = array(); @@ -271,7 +264,7 @@ $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($ $urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file //$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current -$url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/studs.php',1).'?sondage='.$numsondage; +$url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/studs.php',1).'?sondage='.$object->id_sondage; $urllink=''.$url.''; print $urllink; @@ -289,15 +282,15 @@ dol_fiche_end(); */ print '
'; -if ($action != 'edit') print ''.$langs->trans("Modify") . ''; +if ($action != 'edit') print ''.$langs->trans("Modify") . ''; -if ($action != 'edit') print ''.$langs->trans('Delete').''; +if ($action != 'edit') print ''.$langs->trans('Delete').''; print '
'; if ($action == 'delete') { - print $form->formconfirm($_SERVER["PHP_SELF"].'?&sondage='.$numsondageadmin, $langs->trans("RemovePoll"), $langs->trans("ConfirmRemovalOfPoll",$id), 'delete_confirm', '', '', 1); + print $form->formconfirm($_SERVER["PHP_SELF"].'?&id='.$numsondageadmin, $langs->trans("RemovePoll"), $langs->trans("ConfirmRemovalOfPoll",$id), 'delete_confirm', '', '', 1); } @@ -312,7 +305,6 @@ print_fiche_titre($langs->trans("CommentsOfVoters"),'',''); // Comment list $sql = 'SELECT id_comment, usercomment, comment'; $sql.= ' FROM '.MAIN_DB_PREFIX.'opensurvey_comments'; -$sql.= " WHERE id_sondage='".$db->escape($numsondage)."'"; $sql.= " ORDER BY id_comment"; $resql = $db->query($sql); $num_rows=$db->num_rows($resql); @@ -322,7 +314,7 @@ if ($num_rows > 0) while ( $i < $num_rows) { $obj=$db->fetch_object($resql); - print ' '.img_picto('', 'delete.png').' '; + print ' '.img_picto('', 'delete.png').' '; print $obj->usercomment.' : '.dol_nl2br($obj->comment)."
"; $i++; } diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 4445ed8c538..f0b29720bbb 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -35,7 +36,7 @@ if (!$user->admin) accessforbidden(); // Init vars $action=GETPOST('action'); -$numsondageadmin=GETPOST("sondage"); +$numsondageadmin=GETPOST("id"); $numsondage=substr($numsondageadmin, 0, 16); $object=new Opensurveysondage($db); @@ -471,7 +472,7 @@ if (GETPOST('ajoutsujet')) { //on recupere les données et les sujets du sondage print ''."\n"; - print ''; + print ''; print ''; print '
'."\n"; @@ -586,7 +587,7 @@ print '
'."\n"; $nbcolonnes=substr_count($object->sujet,',')+1; print ''."\n"; -print ''; +print ''; print '
'."\n"; print '
'."\n"; @@ -643,7 +644,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; @@ -669,7 +670,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; @@ -693,7 +694,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; print ''."\n"; //affichage des horaires @@ -711,7 +712,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; print ''."\n"; } } @@ -728,7 +729,7 @@ else print ''.$tmp[0].''."\n"; } - print ''.img_picto('',dol_buildpath('/opensurvey/img/add-16.png',1),'',1).''."\n"; + print ''.img_picto('',dol_buildpath('/opensurvey/img/add-16.png',1),'',1).''."\n"; print ''."\n"; } diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 908a01db8fd..0248e2402c9 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -113,7 +113,7 @@ while ($i < min($num,$limit)) $var=!$var; print ''; print ''; - print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; + print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; print ''; $type=($obj->format=='A' || $obj->format=='A+')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); From 5f3d2aea51a9e9b08f4fc4d26db43ce533c6fb48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Thu, 2 Jan 2014 16:32:48 +0100 Subject: [PATCH 04/90] Opensurvey polls tab cards can now be extended from external modules --- ChangeLog | 2 +- dev/skeletons/modMyModule.class.php | 1 + htdocs/opensurvey/adminstuds.php | 12 +-------- htdocs/opensurvey/adminstuds_preview.php | 12 +-------- htdocs/opensurvey/fonctions.php | 34 ++++++++++++++++++++++++ 5 files changed, 38 insertions(+), 23 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4bfb6e73595..e85b76eaebc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -16,7 +16,7 @@ For developers: - New: Add path file of trigger into admin trigger list page. - New: More phpunit tests. - New: Payments and supplier payment pages tabs can now be extended from modules. - +- New: Opensurvey polls tab cards can now be extended from external modules. ***** ChangeLog for 3.5 compared to 3.4.* ***** diff --git a/dev/skeletons/modMyModule.class.php b/dev/skeletons/modMyModule.class.php index deeb34caa66..224798a2fd2 100644 --- a/dev/skeletons/modMyModule.class.php +++ b/dev/skeletons/modMyModule.class.php @@ -134,6 +134,7 @@ class modMyModule extends DolibarrModules // 'payment' to add a tab in payment view // 'payment_supplier' to add a tab in supplier payment view // 'categories_x' to add a tab in category view (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member) + // 'opensurveypoll' to add a tab in opensurvey poll view $this->tabs = array(); // Dictionnaries diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index c6fc44e0025..6a0eda17148 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -173,17 +173,7 @@ $toutsujet=str_replace("°","'",$toutsujet); print ''."\n"; print ''; -$head = array(); - -$head[0][0] = ''; -$head[0][1] = $langs->trans("Card"); -$head[0][2] = 'general'; -$h++; - -$head[1][0] = 'adminstuds_preview.php?sondage='.$object->id_sondage_admin; -$head[1][1] = $langs->trans("SurveyResults").'/'.$langs->trans("Preview"); -$head[1][2] = 'preview'; -$h++; +$head = opensurvey_prepare_head($object); print dol_get_fiche_head($head,'general',$langs->trans("Survey"),0,dol_buildpath('/opensurvey/img/object_opensurvey.png',1),1); diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index f0b29720bbb..de1658b80ea 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -406,17 +406,7 @@ $toutsujet=str_replace("°","'",$toutsujet); print ''."\n"; -$head = array(); - -$head[0][0] = 'adminstuds.php?sondage='.$object->id_sondage_admin; -$head[0][1] = $langs->trans("Card"); -$head[0][2] = 'general'; -$h++; - -$head[1][0] = 'adminstuds_preview.php?sondage='.$object->id_sondage_admin; -$head[1][1] = $langs->trans("SurveyResults").'/'.$langs->trans("Preview"); -$head[1][2] = 'preview'; -$h++; +$head = opensurvey_prepare_head($object); print dol_get_fiche_head($head,'preview',$langs->trans("Survey"),0,dol_buildpath('/opensurvey/img/object_opensurvey.png',1),1); diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 9dcc398fa3a..78cb13732dc 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -21,7 +22,40 @@ * \brief Functions for module */ +/** + * Returns an array with the tabs for the "Opensurvey poll" section + * It loads tabs from modules looking for the entity Opensurveyso + * + * @param Opensurveysondage $object Current viewing poll + * @return array Tabs for the opensurvey section + */ +function opensurvey_prepare_head(Opensurveysondage $object) { + + global $langs, $conf; + + $h = 0; + $head = array(); + $head[0][0] = 'adminstuds.php?id='.$object->id_sondage_admin; + $head[0][1] = $langs->trans("Card"); + $head[0][2] = 'general'; + $h++; + + $head[1][0] = 'adminstuds_preview.php?id='.$object->id_sondage_admin; + $head[1][1] = $langs->trans("SurveyResults").'/'.$langs->trans("Preview"); + $head[1][2] = 'preview'; + $h++; + + // Show more tabs from modules + // Entries must be declared in modules descriptor with line + // $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab + // $this->tabs = array('entity:-tabname); to remove a tab + complete_head_from_modules($conf,$langs,$object,$head,$h,'opensurveypoll'); + + complete_head_from_modules($conf,$langs,$object,$head,$h,'opensurveypoll', 'remove'); + + return $head; +} /** * Show header for new member From 694fd5810aa22d7b51afaafc934f35d4f0d202e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 00:44:56 +0100 Subject: [PATCH 05/90] Removed unuseful opensurvey admin page --- htdocs/core/modules/modOpenSurvey.class.php | 3 - htdocs/opensurvey/admin/index.php | 66 --------------------- 2 files changed, 69 deletions(-) delete mode 100644 htdocs/opensurvey/admin/index.php diff --git a/htdocs/core/modules/modOpenSurvey.class.php b/htdocs/core/modules/modOpenSurvey.class.php index 34c3e90e54d..23452107958 100644 --- a/htdocs/core/modules/modOpenSurvey.class.php +++ b/htdocs/core/modules/modOpenSurvey.class.php @@ -74,9 +74,6 @@ class modOpenSurvey extends DolibarrModules //$this->dirs[0] = DOL_DATA_ROOT.'/mymodule; //$this->dirs[1] = DOL_DATA_ROOT.'/mymodule/temp; - // Config pages. Put here list of php page names stored in admin directory used to setup module - $this->config_page_url = array("index.php@opensurvey"); - // Dependencies $this->depends = array(); // List of modules id that must be enabled if this module is enabled $this->requiredby = array(); // List of modules id to disable if this one is disabled diff --git a/htdocs/opensurvey/admin/index.php b/htdocs/opensurvey/admin/index.php deleted file mode 100644 index d22c3f03cde..00000000000 --- a/htdocs/opensurvey/admin/index.php +++ /dev/null @@ -1,66 +0,0 @@ - - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -/** - * \file htdocs/opensurvey/admin/index.php - * \ingroup opensurvey - * \brief Setup page of opensurvey - */ - -require_once('../../main.inc.php'); -require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); -require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); -require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); - -// Security check -if (!$user->admin) accessforbidden(); - -$langs->load("admin"); -$langs->load("other"); - - -/* - * View - */ - -$langs->load("opensurvey"); - -llxHeader(); - -$linkback=''.$langs->trans("BackToModuleList").''; -print_fiche_titre($langs->trans("OpenSurveyArea"),$linkback,'setup'); -print '
'; - -echo $langs->trans("OpenSurveyNothingToSetup").'

'."\n"; - -// Link -print img_picto('','object_globe.png').' '.$langs->trans("PublicLinkToCreateSurvey").':
'; - -// Define $urlwithroot -$urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); -$urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file -//$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current - -$url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/index.php',1); -$urllink=''.$url.''; -print $urllink; - - -llxFooter(); - -$db->close(); -?> \ No newline at end of file From 0b551817762aca5ec19fa88b1d8c00d1a48a5c75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 13:59:13 +0100 Subject: [PATCH 06/90] Little changes to improve listing of surveys --- htdocs/opensurvey/list.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 0248e2402c9..d3739418822 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -77,7 +77,7 @@ if ($action == 'delete') // tableau qui affiche tous les sondages de la base print ''."\n"; -print ''."\n"; +print ''."\n"; $sql = "SELECT id_sondage, id_sondage_admin, mail_admin, format, origin, date_fin, titre, nom_admin"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as p"; @@ -114,11 +114,11 @@ while ($i < min($num,$limit)) print ''; print ''; + print ''; print ''."\n"; + print ''."\n"; } print ''."\n"; @@ -560,7 +560,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) && (!issetAndNoEmpty('choixheur //si un seul jour et aucunes horaires choisies, : message d'erreur if ((GETPOST('choixheures') || GETPOST('choixheures_x')) && (count($_SESSION["totalchoixjour"])=="1" && $_POST["horaires0"][0]=="" && $_POST["horaires0"][1]=="" && $_POST["horaires0"][2]=="" && $_POST["horaires0"][3]=="" && $_POST["horaires0"][4]=="")) { - print '
'. $langs->trans("Survey").''. $langs->trans("Type") .''. $langs->trans("Title") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .' 
'. $langs->trans("Ref").''. $langs->trans("Title") .''. $langs->trans("Type") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .' 
'; print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; - print ''; + print ''.$obj->titre.''; $type=($obj->format=='A' || $obj->format=='A+')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); print ' '.$langs->trans($type=='classic'?"TypeClassic":"TypeDate"); - print ''.$obj->titre.''.$obj->nom_admin.''.$obj->nom_admin.''.dol_print_date($db->jdate($obj->date_fin),'day'); if ($db->jdate($obj->date_fin) < time()) { print ' '.img_warning(); } From 6965d88cb59a7621f8c4b5c5961d21e0605362c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 13:59:30 +0100 Subject: [PATCH 07/90] Removed unused global vars in function llxHeaderSurvey --- htdocs/opensurvey/fonctions.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 78cb13732dc..1f3d9d459f4 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -70,8 +70,6 @@ function opensurvey_prepare_head(Opensurveysondage $object) { */ function llxHeaderSurvey($title, $head="", $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='') { - global $user, $conf, $langs, $mysoc; - top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss); // Show html headers print ''; From 93fb104077363228e87cc409b36a6b793f6ac4ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 13:59:57 +0100 Subject: [PATCH 08/90] Image alternative text was empty in creation page of surveys --- htdocs/opensurvey/public/index.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/public/index.php index 2c78a86cb9d..4d722e703b9 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/public/index.php @@ -53,8 +53,8 @@ print '
print $langs->trans("OrganizeYourMeetingEasily").'

-
-
+
+
'; From 05ab8334efed68fe5ff93b1b603bc30ad2707369 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 14:00:48 +0100 Subject: [PATCH 09/90] Missing copyright info --- htdocs/opensurvey/list.php | 1 + htdocs/opensurvey/public/index.php | 1 + 2 files changed, 2 insertions(+) diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index d3739418822..49fa1da6149 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/public/index.php index 4d722e703b9..95519ba7278 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/public/index.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From 2e995fc20b71fca94fa74b8ff9819918a434fd4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 14:42:39 +0100 Subject: [PATCH 10/90] Unwanted removal of query filter in poll card --- htdocs/opensurvey/adminstuds.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 6a0eda17148..2ab74e99922 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -295,6 +295,7 @@ print_fiche_titre($langs->trans("CommentsOfVoters"),'',''); // Comment list $sql = 'SELECT id_comment, usercomment, comment'; $sql.= ' FROM '.MAIN_DB_PREFIX.'opensurvey_comments'; +$sql.= " WHERE id_sondage='".$db->escape($numsondage)."'"; $sql.= " ORDER BY id_comment"; $resql = $db->query($sql); $num_rows=$db->num_rows($resql); From 7a1af8656a004d57cfed726b932cba3d6457649b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 14:52:31 +0100 Subject: [PATCH 11/90] Removed duplicate code --- htdocs/opensurvey/adminstuds.php | 23 ++++++----------- .../class/opensurveysondage.class.php | 25 +++++++++++++++++++ htdocs/opensurvey/public/studs.php | 17 ++++--------- 3 files changed, 37 insertions(+), 28 deletions(-) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 2ab74e99922..0d84caeeb7b 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -293,21 +293,12 @@ print '
'."\n"; print_fiche_titre($langs->trans("CommentsOfVoters"),'',''); // Comment list -$sql = 'SELECT id_comment, usercomment, comment'; -$sql.= ' FROM '.MAIN_DB_PREFIX.'opensurvey_comments'; -$sql.= " WHERE id_sondage='".$db->escape($numsondage)."'"; -$sql.= " ORDER BY id_comment"; -$resql = $db->query($sql); -$num_rows=$db->num_rows($resql); -if ($num_rows > 0) -{ - $i = 0; - while ( $i < $num_rows) - { - $obj=$db->fetch_object($resql); - print ' '.img_picto('', 'delete.png').' '; - print $obj->usercomment.' : '.dol_nl2br($obj->comment)."
"; - $i++; +$comments = $object->getComments(); + +if ($comments) { + foreach ($comments as $comment) { + print ' '.img_picto('', 'delete.png').' '; + print $comment->usercomment.': '.dol_nl2br($comment->comment)."
"; } } else @@ -320,7 +311,7 @@ print '
'; // Add comment print $langs->trans("AddACommentForPoll") . '
'; print '
'."\n"; -print $langs->trans("Name") .' :
'."\n"; +print $langs->trans("Name") .':
'."\n"; print '
'."\n"; if (isset($erreur_commentaire_vide) && $erreur_commentaire_vide=="yes") { print "" . $langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Name")) . ""; diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index b0895e466f4..870fd17ce76 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -517,5 +517,30 @@ class Opensurveysondage extends CommonObject $this->canedit=0; } + /** + * Returns all comments for the current opensurvey poll + * + * @return Object[] + */ + public function getComments() { + + $sql = 'SELECT id_comment, usercomment, comment'; + $sql.= ' FROM '.MAIN_DB_PREFIX.'opensurvey_comments'; + $sql.= " WHERE id_sondage='".$this->db->escape($this->id_sondage)."'"; + $sql.= " ORDER BY id_comment"; + $resql = $this->db->query($sql); + + $num_rows=$this->db->num_rows($resql); + + $comments = array(); + + if ($num_rows > 0) { + while ($obj = $this->db->fetch_object($resql)) { + $comments[] = $obj; + } + } + + return $comments; + } } ?> diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 62e78f172ee..fb01e43c8d0 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -697,23 +697,16 @@ print '
'; // Comment list -$sql = 'SELECT id_comment, usercomment, comment'; -$sql.= ' FROM '.MAIN_DB_PREFIX.'opensurvey_comments'; -$sql.= " WHERE id_sondage='".$db->escape($numsondage)."'"; -$sql.= " ORDER BY id_comment"; -$resql = $db->query($sql); -$num_rows=$db->num_rows($resql); -if ($num_rows > 0) +$comments = $object->getComments(); + +if ($comments) { - $i = 0; print "
" . $langs->trans("CommentsOfVoters") . " :
\n"; - while ( $i < $num_rows) - { - $obj=$db->fetch_object($resql); + + foreach ($comments as $obj) { print '
'; if (in_array($obj->usercomment, $listofvoters)) print ' '.img_picto('', 'delete.png').' '; print $obj->usercomment.' : '.dol_nl2br($obj->comment)."
"; - $i++; } } From 32ca1b8881a644b754b2325e647bb9f93d2b8990 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 14:59:59 +0100 Subject: [PATCH 12/90] Corrected broken links --- htdocs/opensurvey/fonctions.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 1f3d9d459f4..ae3e9800d92 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -195,7 +195,7 @@ function issetAndNoEmpty($name, $tableau = null) function getUrlSondage($id, $admin = false) { if ($admin === true) { - $url = get_server_name().'adminstuds_preview.php?sondage='.$id; + $url = get_server_name().'adminstuds_preview.php?id='.$id; } else { $url = get_server_name().'/public/studs.php?sondage='.$id; } @@ -267,7 +267,7 @@ function ajouter_sondage($origin) dol_syslog($sql); $resql=$db->query($sql); - if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/adminstuds_preview.php',1).'?sondage='.$sondage_admin; + if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/adminstuds_preview.php',1).'?id='.$sondage_admin; else { // Define $urlwithroot From dd7be996c21dfee44a9beeb1281c50035c84271d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 15:27:26 +0100 Subject: [PATCH 13/90] Improved translation of opensurvey module --- htdocs/langs/en_US/errors.lang | 3 ++- htdocs/langs/en_US/opensurvey.lang | 8 ++++++++ htdocs/opensurvey/public/choix_autre.php | 12 ++++++------ htdocs/opensurvey/public/choix_date.php | 10 +++++----- htdocs/opensurvey/public/create_survey.php | 13 +++++++------ 5 files changed, 28 insertions(+), 18 deletions(-) diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index ac4d439a208..8eb265013c5 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -127,6 +127,7 @@ ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setu ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! # Warnings WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined @@ -143,4 +144,4 @@ WarningUntilDirRemoved=All security warnings (visible by admin users only) will WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). -WarningNotRelevant=Irrelevant operation for this dataset +WarningNotRelevant=Irrelevant operation for this dataset \ No newline at end of file diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 1e1900296dd..db1140097a7 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -44,6 +44,8 @@ PourContreList=List (empty/for/against) AddNewColumn=Add new column TitleChoice=Choice label InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. +InfoExpiration=Your poll will be automatically removed after 6 months.
You can fix another removal date for it. +RemovalDate=Removal date (optional) ExportSpreadsheet=Export result spreadsheet ExpireDate=Limit date NbOfVoters=Nb of voters @@ -67,3 +69,9 @@ CanEditVotes=Can change vote of others SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. BackToCurrentMonth=Back to current month PublicLinkToCreateSurvey=Public link to allow everybody to create a survey +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY +ErrorOpenSurveyInvalidChars=Characters \" < and > are not permitted +MoreChoices=Enter more choices for the voters +AfterCreationInfo=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
Then, you will receive quickly an email contening the link to your poll for sending it to the voters. \ No newline at end of file diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index e120bd7ec20..622c1c02f06 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -125,7 +125,7 @@ llxHeaderSurvey($langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); if (empty($_SESSION['titre']) || empty($_SESSION['nom']) || empty($_SESSION['adresse'])) { - dol_print_error('',"You haven't filled the first section of the poll creation"); + dol_print_error('', $langs->trans('ErrorOpenSurveyFillFirstSection')); llxFooterSurvey(); exit; } @@ -179,25 +179,25 @@ for ($i=0;$i<$_SESSION["nbrecases"];$i++) //message d'erreur si aucun champ renseigné if ($testremplissage != "ok" && (isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"]))) { - print "
" . $langs->trans("Enter at least one choice") . "

"."\n"; + print "
" . $langs->trans("ErrorOpenSurveyOneChoice") . "

"."\n"; $erreur = true; } //message d'erreur si mauvaise date if ($testdate === false) { - print "
" . _("Date must be have the format DD/MM/YYYY") . "

"."\n"; + print "
" . $langs->trans("ErrorOpenSurveyDateFormat") . "

"."\n"; } if ($erreur_injection) { - print "" . _("Characters \" < and > are not permitted") . "

\n"; + print "" . $langs->trans("ErrorOpenSurveyInvalidChars") . "

\n"; } if ((isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"])) && !$erreur && !$erreur_injection) { //demande de la date de fin du sondage print '
'."\n"; print '
'."\n"; - print '
'. _("Your poll will be automatically removed after 6 months.
You can fix another removal date for it.") .'

'."\n"; - print _("Removal date (optional)") .' : '. _("(DD/MM/YYYY)") ."\n"; + print '
'. $langs->trans("InfoExpiration") .'

'."\n"; + print $langs->trans("RemovalDate") .' : DD/MM/YYYY'; print '
'."\n"; print '
'."\n"; print ''. $langs->trans("InfoAfterCreate") .''."\n"; diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index f651a91899d..6f0ca322d53 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -86,7 +86,7 @@ if (GETPOST('reset')) { if (! isset($_SESSION['nom']) && ! isset($_SESSION['adresse']) && ! isset($_SESSION['commentaires']) && ! isset($_SESSION['mail'])) { - dol_print_error('',"You haven't filled the first section of the poll creation"); + dol_print_error('', $langs->trans('ErrorOpenSurveyFillFirstSection')); exit; } @@ -542,7 +542,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) && (!issetAndNoEmpty('choixheur } if ($affichageerreurfindeligne) { - print '
'. _("Bad format!") .''. $langs->trans("ErrorBadFormat") .'
'. _("Enter more choices for the voters") .'
'."\n"; + print '
'. $langs->trans("MoreChoices") .'
'."\n"; $erreur=true; } } @@ -574,14 +574,14 @@ if (!$erreur && (GETPOST('choixheures') || GETPOST('choixheures_x'))) { print '
'. $langs->trans("PollWillExpire",2) .'
'. $langs->trans("RemovalDate") .' : '.$date_fin.'
'."\n"; print '
'."\n"; print '
'."\n"; - print ''. _("Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
Then, you will receive quickly an email contening the link to your poll for sending it to the voters.") .'
'."\n"; + print ''. $langs->trans("AfterCreationInfo") .''."\n"; print'
'."\n"; // print'

'."\n"; // print 'Pour finir la création du sondage, cliquez sur le bouton ajout ci-dessous'."\n"; // print '

'."\n"; print ''."\n"; print ''."\n"; - print''."\n"; + print''."\n"; print '
'. $langs->trans("BackToHoursSetup") .'
'. $langs->trans("CreatePoll") .'
'. $langs->trans("CreatePoll") .'
'."\n"; } diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index f601602144c..bc6b9df5f67 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -147,7 +147,8 @@ if (!$_SESSION["adresse"] && (GETPOST('creation_sondage_date') || GETPOST('creat print "" .$langs->trans("FieldMandatory") . " "."\n"; } elseif ($erreur_adresse && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) { - print "" . _("The address is not correct! (You should enter a valid email address in order to receive the link to your poll)") . ""."\n"; + $langs->load('errors'); + print "" . $langs->trans("ErrorBadEMail", $adresse) . ""."\n"; } print ''."\n"; @@ -180,11 +181,11 @@ if (GETPOST('choix_sondage')) else { //affichage des boutons pour choisir sondage date ou autre - print '
'."\n"; - print ' '."\n"; - print ''."\n"; - print ' '."\n"; - print ''."\n"; + print '
'. _("Schedule an event") .'
'. _("Make a choice") .'
'."\n"; + print ' '."\n"; + print ''."\n"; + print ' '."\n"; + print ''."\n"; print '
'. $langs->trans("CreateSurveyDate") .'
'. $langs->trans("CreateSurveyStandard") .'
'."\n"; } print '


'."\n"; From e0dd3d5bc938bea3045af86f6f944d6c84893bae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 15:31:29 +0100 Subject: [PATCH 14/90] Added missing copyright info --- htdocs/opensurvey/public/choix_autre.php | 1 + htdocs/opensurvey/public/create_survey.php | 1 + htdocs/opensurvey/public/studs.php | 1 + 3 files changed, 3 insertions(+) diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index 622c1c02f06..5d10ad9792f 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index bc6b9df5f67..2706081b091 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index fb01e43c8d0..e2241482ac4 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From cf3ac246bfea245459dbcfbff25b22f4952c8514 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 15:35:12 +0100 Subject: [PATCH 15/90] Moved exportcsv.php out of public folder as it should only be accesible for Dolibarr users --- htdocs/opensurvey/adminstuds_preview.php | 2 +- htdocs/opensurvey/{public => }/exportcsv.php | 20 +++++--------------- 2 files changed, 6 insertions(+), 16 deletions(-) rename htdocs/opensurvey/{public => }/exportcsv.php (84%) diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index de1658b80ea..04a3ed62b86 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -449,7 +449,7 @@ print ''."\n"; print ''; diff --git a/htdocs/opensurvey/public/exportcsv.php b/htdocs/opensurvey/exportcsv.php similarity index 84% rename from htdocs/opensurvey/public/exportcsv.php rename to htdocs/opensurvey/exportcsv.php index 5fded4f5d32..49d982f5721 100644 --- a/htdocs/opensurvey/public/exportcsv.php +++ b/htdocs/opensurvey/exportcsv.php @@ -16,33 +16,23 @@ */ /** - * \file htdocs/opensurvey/public/exportcsv.php + * \file htdocs/opensurvey/exportcsv.php * \ingroup opensurvey * \brief Page to list surveys */ -define("NOLOGIN",1); // This means this output page does not require to be logged. -define("NOCSRFCHECK",1); // We accept to go on this page from external web site. -require_once('../../main.inc.php'); +require_once('../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/class/opensurveysondage.class.php"); $action=GETPOST('action'); $numsondage = $numsondageadmin = ''; -if (GETPOST('sondage')) +if (GETPOST('id')) { - if (strlen(GETPOST('sondage')) == 24) // recuperation du numero de sondage admin (24 car.) dans l'URL - { - $numsondageadmin=GETPOST("sondage",'alpha'); - $numsondage=substr($numsondageadmin, 0, 16); - } - else - { - $numsondageadmin=''; - $numsondage=GETPOST("sondage",'alpha'); - } + $numsondageadmin=GETPOST("id",'alpha'); + $numsondage=substr($numsondageadmin, 0, 16); } $object=new Opensurveysondage($db); From 8727daeb7737dc8502d4e6573eacab17d42d1b16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 16:38:02 +0100 Subject: [PATCH 16/90] Unified comment addition in OpenSurveySondage::addComment and removed duplicate code --- htdocs/opensurvey/adminstuds.php | 26 +++++++------------ .../class/opensurveysondage.class.php | 21 +++++++++++++++ htdocs/opensurvey/public/studs.php | 15 ++--------- 3 files changed, 32 insertions(+), 30 deletions(-) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 0d84caeeb7b..2700ea5c518 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -44,6 +44,13 @@ if (GETPOST('id')) { $object=new Opensurveysondage($db); +$result=$object->fetch(0, $numsondageadmin); +if ($result <= 0) +{ + dol_print_error($db,$object->error); + exit; +} + $expiredate=dol_mktime(0, 0, 0, GETPOST('expiremonth'), GETPOST('expireday'), GETPOST('expireyear')); @@ -74,12 +81,6 @@ if ($action == 'update') $action = 'edit'; } - if (! $error) - { - $res=$object->fetch(0,$numsondageadmin); - if ($res < 0) dol_print_error($db,$object->error); - } - if (! $error) { $object->titre = GETPOST('nouveautitre'); @@ -120,10 +121,8 @@ if (GETPOST('ajoutcomment')) $comment = GETPOST("comment"); $comment_user = GETPOST('commentuser'); - $sql = "INSERT INTO ".MAIN_DB_PREFIX."opensurvey_comments (id_sondage, comment, usercomment)"; - $sql.= " VALUES ('".$db->escape($object->id_sondage)."','".$db->escape($comment)."','".$db->escape($comment_user)."')"; - $resql = $db->query($sql); - dol_syslog("sql=".$sql); + $resql = $object->addComment($comment, $comment_user); + if (! $resql) { $err |= COMMENT_INSERT_FAILED; @@ -146,13 +145,6 @@ if ($idcomment) $form=new Form($db); -$result=$object->fetch(0, $numsondageadmin); -if ($result <= 0) -{ - dol_print_error($db,$object->error); - exit; -} - $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); llxHeader('',$object->titre, 0, 0, 0, 0, $arrayofjs, $arrayofcss); diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 870fd17ce76..6db64139971 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -542,5 +542,26 @@ class Opensurveysondage extends CommonObject return $comments; } + + /** + * Adds a comment to the poll + * + * @param string $comment Comment content + * @param string $comment_user Comment author + * @return boolean False in case of the query fails, true if it was successful + */ + public function addComment($comment, $comment_user) { + + $sql = "INSERT INTO ".MAIN_DB_PREFIX."opensurvey_comments (id_sondage, comment, usercomment)"; + $sql.= " VALUES ('".$this->db->escape($this->id_sondage)."','".$this->db->escape($comment)."','".$this->db->escape($comment_user)."')"; + $resql = $this->db->query($sql); + dol_syslog("sql=".$sql); + + if (!$resql) { + return false; + } + + return true; + } } ?> diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index e2241482ac4..2c84dead099 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -84,10 +84,8 @@ if (GETPOST('ajoutcomment')) $comment = GETPOST("comment"); $comment_user = GETPOST('commentuser'); - $sql = "INSERT INTO ".MAIN_DB_PREFIX."opensurvey_comments (id_sondage, comment, usercomment)"; - $sql.= " VALUES ('".$db->escape($numsondage)."','".$db->escape($comment)."','".$db->escape($comment_user)."')"; - $resql = $db->query($sql); - dol_syslog("sql=".$sql); + $resql = $object->addComment($comment, $comment_user); + if (! $resql) dol_print_error($db); } } @@ -227,15 +225,6 @@ if ($idcomment) */ $form=new Form($db); -$object=new OpenSurveySondage($db); - -$result=$object->fetch(0,$numsondage); -if ($result <= 0) -{ - print $langs->trans("ErrorRecordNotFound"); - llxFooterSurvey(); - exit; -} $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); From 8b781e46c64e51ca0eaf0678293e8c2dfca2fedc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 16:43:34 +0100 Subject: [PATCH 17/90] Added missing copyright info --- htdocs/opensurvey/exportcsv.php | 1 + htdocs/opensurvey/public/choix_date.php | 1 + 2 files changed, 2 insertions(+) diff --git a/htdocs/opensurvey/exportcsv.php b/htdocs/opensurvey/exportcsv.php index 49d982f5721..3cf0fe944e9 100644 --- a/htdocs/opensurvey/exportcsv.php +++ b/htdocs/opensurvey/exportcsv.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index 6f0ca322d53..d90fbb680d9 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -1,5 +1,6 @@ + * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From a5b9122e98fd889bfff88c4225b540b802ecdc33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 17:44:42 +0100 Subject: [PATCH 18/90] Allow to disable poll comments --- .../install/mysql/migration/3.5.0-3.6.0.sql | 1 + .../mysql/tables/llx_opensurvey_sondage.sql | 1 + htdocs/langs/en_US/opensurvey.lang | 1 + htdocs/opensurvey/adminstuds.php | 24 ++++++++++++++----- .../class/opensurveysondage.class.php | 18 +++++++++----- htdocs/opensurvey/fonctions.php | 6 +++-- htdocs/opensurvey/public/create_survey.php | 10 ++++++++ htdocs/opensurvey/public/studs.php | 16 +++++++------ 8 files changed, 56 insertions(+), 21 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 53d6198a849..3d82a6cb1c0 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -18,3 +18,4 @@ -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); ALTER TABLE llx_bookmark ADD COLUMN entity integer DEFAULT 1 NOT NULL; +ALTER TABLE `llx_opensurvey_sondage` ADD `allow_comments` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER `canedit` ; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index f66fbcf5e79..476b3d9fb40 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -27,6 +27,7 @@ CREATE TABLE llx_opensurvey_sondage ( mailsonde varchar(2) DEFAULT '0', survey_link_visible integer DEFAULT 1, canedit integer DEFAULT 0, + allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, origin VARCHAR(64), tms TIMESTAMP, sujet TEXT diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index db1140097a7..88308711fc6 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -66,6 +66,7 @@ AddEndHour=Add end hour votes=vote(s) NoCommentYet=No comments have been posted for this poll yet CanEditVotes=Can change vote of others +CanComment=Users can comment in the poll SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. BackToCurrentMonth=Back to current month PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 2700ea5c518..c98b3ad376e 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -89,6 +89,7 @@ if ($action == 'update') $object->date_fin = $expiredate; $object->survey_link_visible = GETPOST('survey_link_visible')=='on'?1:0; $object->canedit = GETPOST('canedit')=='on'?1:0; + $object->allow_comments = GETPOST('cancomment') == 'on' ? true : false; $res=$object->update($user); if ($res < 0) @@ -231,6 +232,15 @@ if ($action == 'edit') else print yn($object->canedit); print ''; +// Users can comment +print ''.$langs->trans('CanComment').''; +if ($action == 'edit') +{ + print 'allow_comments?' checked="true"':'').'">'; +} +else print yn($object->allow_comments); +print ''; + // Expire date print ''.$langs->trans('ExpireDate').''; if ($action == 'edit') print $form->select_date($expiredate?$expiredate:$object->date_fin,'expire'); @@ -301,12 +311,14 @@ else print '
'; // Add comment -print $langs->trans("AddACommentForPoll") . '
'; -print '
'."\n"; -print $langs->trans("Name") .':
'."\n"; -print '
'."\n"; -if (isset($erreur_commentaire_vide) && $erreur_commentaire_vide=="yes") { - print "" . $langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Name")) . ""; +if ($object->allow_comments) { + print $langs->trans("AddACommentForPoll") . '
'; + print '
'."\n"; + print $langs->trans("Name") .':
'."\n"; + print '
'."\n"; + if (isset($erreur_commentaire_vide) && $erreur_commentaire_vide=="yes") { + print "" . $langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Name")) . ""; + } } print ''; diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 6db64139971..9e40f254021 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -54,8 +54,11 @@ class Opensurveysondage extends CommonObject var $survey_link_visible; var $canedit; - - + /** + * Allow comments on this poll + * @var bool + */ + public $allow_comments; /** * Constructor @@ -196,6 +199,7 @@ class Opensurveysondage extends CommonObject $sql.= " t.mailsonde,"; $sql.= " t.survey_link_visible,"; $sql.= " t.canedit,"; + $sql.= " t.allow_comments,"; $sql.= " t.sujet,"; $sql.= " t.tms"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as t"; @@ -225,6 +229,7 @@ class Opensurveysondage extends CommonObject $this->mailsonde = $obj->mailsonde; $this->survey_link_visible = $obj->survey_link_visible; $this->canedit = $obj->canedit; + $this->allow_comments = $obj->allow_comments; $this->sujet = $obj->sujet; $this->date_m = $this->db->jdate($obj->tls); @@ -274,8 +279,8 @@ class Opensurveysondage extends CommonObject if (isset($this->format)) $this->format=trim($this->format); if (isset($this->mailsonde)) $this->mailsonde=trim($this->mailsonde); if (isset($this->survey_link_visible)) $this->survey_link_visible=trim($this->survey_link_visible); - if (isset($this->canedit)) $this->canedit=trim($this->canedit); - + $this->canedit = $this->canedit ? 1 : 0; + $this->allow_comments = $this->allow_comments ? 1 : 0; // Check parameters // Put here code to add a control on parameters values @@ -293,8 +298,9 @@ class Opensurveysondage extends CommonObject $sql.= " format=".(isset($this->format)?"'".$this->db->escape($this->format)."'":"null").","; $sql.= " mailsonde=".(isset($this->mailsonde)?$this->db->escape($this->mailsonde):"null").","; $sql.= " survey_link_visible=".(isset($this->survey_link_visible)?$this->db->escape($this->survey_link_visible):"null").","; - $sql.= " canedit=".(isset($this->canedit)?$this->db->escape($this->canedit):"null").""; - + $sql.= " canedit=".$this->db->escape($this->canedit).","; + $sql.= " allow_comments=".$this->db->escape($this->allow_comments); + //$sql.= " WHERE rowid=".$this->id; $sql.= " WHERE id_sondage_admin='".$this->db->escape($this->id_sondage_admin)."'"; diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index ae3e9800d92..7f3ecb5f36e 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -255,13 +255,14 @@ function ajouter_sondage($origin) $date_fin = time()+15552000; } $canedit=empty($_SESSION['formatcanedit'])?'0':'1'; + $allow_comments = empty($_SESSION['allow_comments']) ? 0 : 1; // Insert survey $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'opensurvey_sondage'; - $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, id_sondage_admin, date_fin, format, mailsonde, canedit, origin, sujet)'; + $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, id_sondage_admin, date_fin, format, mailsonde, canedit, allow_comments, origin, sujet)'; $sql.= " VALUES ('".$db->escape($sondage)."', '".$db->escape($_SESSION['commentaires'])."', '".$db->escape($_SESSION['adresse'])."', '".$db->escape($_SESSION['nom'])."',"; $sql.= " '".$db->escape($_SESSION['titre'])."', '".$sondage_admin."', '".$db->idate($date_fin)."', '".$_SESSION['formatsondage']."', '".$db->escape($_SESSION['mailsonde'])."',"; - $sql.= " '".$canedit."', '".$db->escape($origin)."',"; + $sql.= " '".$canedit."', '".$allow_comments."', '".$db->escape($origin)."',"; $sql.= " '".$db->escape($_SESSION['toutchoix'])."'"; $sql.= ")"; dol_syslog($sql); @@ -288,6 +289,7 @@ function ajouter_sondage($origin) unset($_SESSION["commentaires"]); unset($_SESSION["canedit"]); unset($_SESSION["mailsonde"]); + unset($_SESSION['allow_comments']); header("Location: ".$urlback); exit(); diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index 2706081b091..9e33933b4ae 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -74,6 +74,12 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET } else { $_SESSION["mailsonde"] = false; } + + if (GETPOST('allow_comments') == 'on') { + $_SESSION['allow_comments'] = true; + } else { + $_SESSION['allow_comments'] = false; + } if (! isValidEmail($adresse)) $erreur_adresse = true; @@ -172,6 +178,10 @@ if ($_SESSION["mailsonde"]) $cochemail="checked"; print ' '. $langs->trans("ToReceiveEMailForEachVote") .'
'."\n"; +if ($_SESSION['allow_comments']) $allow_comments = "checked"; + +print ' '.$langs->trans('CanComment').'
'."\n"; + if (GETPOST('choix_sondage')) { if (GETPOST('choix_sondage') == 'date') print ''; diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 2c84dead099..dec1d8f6d22 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -701,15 +701,17 @@ if ($comments) } // Form to add comment -print '
' .$langs->trans("AddACommentForPoll") . "
\n"; +if ($object->allow_comments) { + print '
' .$langs->trans("AddACommentForPoll") . "
\n"; -print '
'."\n"; -print $langs->trans("Name") .' : '; -print '   '."\n"; -print '
'."\n"; -print ''."\n"; + print '
'."\n"; + print $langs->trans("Name") .' : '; + print '   '."\n"; + print '
'."\n"; + print ''."\n"; -print '
'."\n"; // div add comment + print '
'."\n"; // div add comment +} print '

'; From 1a038fac06bd3d4c17587dfce703031f1104fb43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 22:13:15 +0100 Subject: [PATCH 19/90] Removed the use of id_sondage_admin and survey_link_visible fields of llx_opensurvey_sondage --- .../install/mysql/migration/3.5.0-3.6.0.sql | 5 ++- .../tables/llx_opensurvey_sondage.key.sql | 1 - .../mysql/tables/llx_opensurvey_sondage.sql | 2 -- htdocs/opensurvey/adminstuds.php | 22 ++++++------- htdocs/opensurvey/adminstuds_preview.php | 19 ++++++----- .../class/opensurveysondage.class.php | 32 +++---------------- htdocs/opensurvey/exportcsv.php | 5 ++- htdocs/opensurvey/fonctions.php | 11 +++---- htdocs/opensurvey/list.php | 10 +++--- htdocs/opensurvey/public/studs.php | 13 ++------ 10 files changed, 42 insertions(+), 78 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 3d82a6cb1c0..c900b9d7374 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -18,4 +18,7 @@ -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); ALTER TABLE llx_bookmark ADD COLUMN entity integer DEFAULT 1 NOT NULL; -ALTER TABLE `llx_opensurvey_sondage` ADD `allow_comments` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER `canedit` ; \ No newline at end of file +ALTER TABLE `llx_opensurvey_sondage` ADD `allow_comments` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER `canedit` ; +ALTER TABLE `llx_opensurvey_sondage` DROP `survey_link_visible` ; +ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; +ALTER TABLE `llx_opensurvey_sondage` DROP `id_sondage_admin` ; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.key.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.key.sql index 3bf5771811e..ec10e64ac07 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.key.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.key.sql @@ -15,5 +15,4 @@ -- along with this program. If not, see . -- ============================================================================ -ALTER TABLE llx_opensurvey_sondage ADD INDEX idx_id_sondage_admin (id_sondage_admin); ALTER TABLE llx_opensurvey_sondage ADD INDEX idx_date_fin (date_fin); diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index 476b3d9fb40..ae06605ec67 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -17,7 +17,6 @@ CREATE TABLE llx_opensurvey_sondage ( id_sondage VARCHAR(16) PRIMARY KEY, - id_sondage_admin VARCHAR(24), commentaires text, mail_admin VARCHAR(128), nom_admin VARCHAR(64), @@ -25,7 +24,6 @@ CREATE TABLE llx_opensurvey_sondage ( date_fin DATETIME, format VARCHAR(2), mailsonde varchar(2) DEFAULT '0', - survey_link_visible integer DEFAULT 1, canedit integer DEFAULT 0, allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, origin VARCHAR(64), diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index c98b3ad376e..705f668ae8b 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -35,16 +35,15 @@ if (!$user->admin) accessforbidden(); // Initialisation des variables $action=GETPOST('action'); -$numsondage = $numsondageadmin = ''; +$numsondage = ''; if (GETPOST('id')) { - $numsondageadmin = GETPOST('id', 'alpha'); - $numsondage = substr($numsondageadmin, 0, 16); + $numsondage = GETPOST('id', 'alpha'); } $object=new Opensurveysondage($db); -$result=$object->fetch(0, $numsondageadmin); +$result=$object->fetch(0, $numsondage); if ($result <= 0) { dol_print_error($db,$object->error); @@ -63,7 +62,7 @@ $expiredate=dol_mktime(0, 0, 0, GETPOST('expiremonth'), GETPOST('expireday'), GE // Delete if ($action == 'delete_confirm') { - $result=$object->delete($user,'',$numsondageadmin); + $result=$object->delete($user,'',$numsondage); header('Location: '.dol_buildpath('/opensurvey/list.php',1)); exit(); @@ -87,7 +86,6 @@ if ($action == 'update') $object->commentaires = GETPOST('nouveauxcommentaires'); $object->mail_admin = GETPOST('nouvelleadresse'); $object->date_fin = $expiredate; - $object->survey_link_visible = GETPOST('survey_link_visible')=='on'?1:0; $object->canedit = GETPOST('canedit')=='on'?1:0; $object->allow_comments = GETPOST('cancomment') == 'on' ? true : false; @@ -163,7 +161,7 @@ $toutsujet=str_replace("@","
",$toutsujet); $toutsujet=str_replace("°","'",$toutsujet); -print '
'."\n"; +print ''."\n"; print ''; $head = opensurvey_prepare_head($object); @@ -178,7 +176,7 @@ $linkback = ''.$langs->tra // Ref print ''.$langs->trans('Ref').''; print ''; -print $form->showrefnav($object, 'sondage', $linkback, 1, 'id_sondage_admin', 'id_sondage_admin'); +print $form->showrefnav($object, 'sondage', $linkback, 1, 'id_sondage', 'id_sondage'); print ''; print ''; @@ -274,15 +272,15 @@ dol_fiche_end(); */ print '
'; -if ($action != 'edit') print ''.$langs->trans("Modify") . ''; +if ($action != 'edit') print ''.$langs->trans("Modify") . ''; -if ($action != 'edit') print ''.$langs->trans('Delete').''; +if ($action != 'edit') print ''.$langs->trans('Delete').''; print '
'; if ($action == 'delete') { - print $form->formconfirm($_SERVER["PHP_SELF"].'?&id='.$numsondageadmin, $langs->trans("RemovePoll"), $langs->trans("ConfirmRemovalOfPoll",$id), 'delete_confirm', '', '', 1); + print $form->formconfirm($_SERVER["PHP_SELF"].'?&id='.$numsondage, $langs->trans("RemovePoll"), $langs->trans("ConfirmRemovalOfPoll",$id), 'delete_confirm', '', '', 1); } @@ -299,7 +297,7 @@ $comments = $object->getComments(); if ($comments) { foreach ($comments as $comment) { - print ' '.img_picto('', 'delete.png').' '; + print ' '.img_picto('', 'delete.png').' '; print $comment->usercomment.': '.dol_nl2br($comment->comment)."
"; } } diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 04a3ed62b86..481912c5fbd 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -36,8 +36,7 @@ if (!$user->admin) accessforbidden(); // Init vars $action=GETPOST('action'); -$numsondageadmin=GETPOST("id"); -$numsondage=substr($numsondageadmin, 0, 16); +$numsondage= GETPOST("id"); $object=new Opensurveysondage($db); $result=$object->fetch(0,$numsondage); @@ -418,7 +417,7 @@ $linkback = ''.$langs->trans('Ref').''; print ''; -print $form->showrefnav($object, 'sondage', $linkback, 1, 'id_sondage_admin', 'id_sondage_admin'); +print $form->showrefnav($object, 'sondage', $linkback, 1, 'id_sondage', 'id_sondage'); print ''; print ''; @@ -462,7 +461,7 @@ if (GETPOST('ajoutsujet')) { //on recupere les données et les sujets du sondage print ''."\n"; - print ''; + print ''; print ''; print '
'."\n"; @@ -577,7 +576,7 @@ print '
'."\n"; $nbcolonnes=substr_count($object->sujet,',')+1; print ''."\n"; -print ''; +print ''; print '
'."\n"; print '
'."\n"; @@ -634,7 +633,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print '
id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; @@ -660,7 +659,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; @@ -684,7 +683,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; print ''."\n"; //affichage des horaires @@ -702,7 +701,7 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage_admin.'">'.$langs->trans("Add").''."\n"; + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; print ''."\n"; } } @@ -719,7 +718,7 @@ else print ''.$tmp[0].''."\n"; } - print ''.img_picto('',dol_buildpath('/opensurvey/img/add-16.png',1),'',1).''."\n"; + print ''.img_picto('',dol_buildpath('/opensurvey/img/add-16.png',1),'',1).''."\n"; print ''."\n"; } diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 9e40f254021..61c65a62441 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -47,11 +47,9 @@ class Opensurveysondage extends CommonObject var $mail_admin; var $nom_admin; var $titre; - var $id_sondage_admin; var $date_fin=''; var $format; var $mailsonde; - var $survey_link_visible; var $canedit; /** @@ -91,10 +89,8 @@ class Opensurveysondage extends CommonObject if (isset($this->mail_admin)) $this->mail_admin=trim($this->mail_admin); if (isset($this->nom_admin)) $this->nom_admin=trim($this->nom_admin); if (isset($this->titre)) $this->titre=trim($this->titre); - if (isset($this->id_sondage_admin)) $this->id_sondage_admin=trim($this->id_sondage_admin); if (isset($this->format)) $this->format=trim($this->format); if (isset($this->mailsonde)) $this->mailsonde=trim($this->mailsonde); - if (isset($this->survey_link_visible)) $this->survey_link_visible=trim($this->survey_link_visible); if (isset($this->canedit)) $this->canedit=trim($this->canedit); @@ -110,11 +106,9 @@ class Opensurveysondage extends CommonObject $sql.= "mail_admin,"; $sql.= "nom_admin,"; $sql.= "titre,"; - $sql.= "id_sondage_admin,"; $sql.= "date_fin,"; $sql.= "format,"; $sql.= "mailsonde,"; - $sql.= "survey_link_visible,"; $sql.= "canedit"; $sql.= ") VALUES ("; @@ -123,11 +117,9 @@ class Opensurveysondage extends CommonObject $sql.= " ".(! isset($this->mail_admin)?'NULL':"'".$this->db->escape($this->mail_admin)."'").","; $sql.= " ".(! isset($this->nom_admin)?'NULL':"'".$this->db->escape($this->nom_admin)."'").","; $sql.= " ".(! isset($this->titre)?'NULL':"'".$this->db->escape($this->titre)."'").","; - $sql.= " ".(! isset($this->id_sondage_admin)?'NULL':"'".$this->db->escape($this->id_sondage_admin)."'").","; $sql.= " ".(! isset($this->date_fin) || dol_strlen($this->date_fin)==0?'NULL':$this->db->idate($this->date_fin)).","; $sql.= " ".(! isset($this->format)?'NULL':"'".$this->db->escape($this->format)."'").","; $sql.= " ".(! isset($this->mailsonde)?'NULL':"'".$this->db->escape($this->mailsonde)."'").","; - $sql.= " ".(! isset($this->survey_link_visible)?'NULL':"'".$this->db->escape($this->survey_link_visible)."'").","; $sql.= " ".(! isset($this->canedit)?'NULL':"'".$this->db->escape($this->canedit)."'").""; $sql.= ")"; @@ -193,19 +185,16 @@ class Opensurveysondage extends CommonObject $sql.= " t.mail_admin,"; $sql.= " t.nom_admin,"; $sql.= " t.titre,"; - $sql.= " t.id_sondage_admin,"; $sql.= " t.date_fin,"; $sql.= " t.format,"; $sql.= " t.mailsonde,"; - $sql.= " t.survey_link_visible,"; $sql.= " t.canedit,"; $sql.= " t.allow_comments,"; $sql.= " t.sujet,"; $sql.= " t.tms"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as t"; if ($id > 0) $sql.= " WHERE t.rowid = ".$this->db->escape($id); - else if (strlen($numsurvey) == 16) $sql.= " WHERE t.id_sondage = '".$this->db->escape($numsurvey)."'"; - else $sql.= " WHERE t.id_sondage_admin = '".$this->db->escape($numsurvey)."'"; + else $sql.= " WHERE t.id_sondage = '".$this->db->escape($numsurvey)."'"; dol_syslog(get_class($this)."::fetch sql=".$sql, LOG_DEBUG); $resql=$this->db->query($sql); @@ -216,18 +205,15 @@ class Opensurveysondage extends CommonObject $obj = $this->db->fetch_object($resql); //$this->id = $obj->rowid; - $this->ref = $obj->id_sondage_admin; $this->id_sondage = $obj->id_sondage; $this->commentaires = $obj->commentaires; $this->mail_admin = $obj->mail_admin; $this->nom_admin = $obj->nom_admin; $this->titre = $obj->titre; - $this->id_sondage_admin = $obj->id_sondage_admin; $this->date_fin = $this->db->jdate($obj->date_fin); $this->format = $obj->format; $this->mailsonde = $obj->mailsonde; - $this->survey_link_visible = $obj->survey_link_visible; $this->canedit = $obj->canedit; $this->allow_comments = $obj->allow_comments; $this->sujet = $obj->sujet; @@ -275,10 +261,8 @@ class Opensurveysondage extends CommonObject if (isset($this->mail_admin)) $this->mail_admin=trim($this->mail_admin); if (isset($this->nom_admin)) $this->nom_admin=trim($this->nom_admin); if (isset($this->titre)) $this->titre=trim($this->titre); - if (isset($this->id_sondage_admin)) $this->id_sondage_admin=trim($this->id_sondage_admin); if (isset($this->format)) $this->format=trim($this->format); if (isset($this->mailsonde)) $this->mailsonde=trim($this->mailsonde); - if (isset($this->survey_link_visible)) $this->survey_link_visible=trim($this->survey_link_visible); $this->canedit = $this->canedit ? 1 : 0; $this->allow_comments = $this->allow_comments ? 1 : 0; @@ -293,16 +277,14 @@ class Opensurveysondage extends CommonObject $sql.= " mail_admin=".(isset($this->mail_admin)?"'".$this->db->escape($this->mail_admin)."'":"null").","; $sql.= " nom_admin=".(isset($this->nom_admin)?"'".$this->db->escape($this->nom_admin)."'":"null").","; $sql.= " titre=".(isset($this->titre)?"'".$this->db->escape($this->titre)."'":"null").","; - $sql.= " id_sondage_admin=".(isset($this->id_sondage_admin)?"'".$this->db->escape($this->id_sondage_admin)."'":"null").","; $sql.= " date_fin=".(dol_strlen($this->date_fin)!=0 ? "'".$this->db->idate($this->date_fin)."'" : 'null').","; $sql.= " format=".(isset($this->format)?"'".$this->db->escape($this->format)."'":"null").","; $sql.= " mailsonde=".(isset($this->mailsonde)?$this->db->escape($this->mailsonde):"null").","; - $sql.= " survey_link_visible=".(isset($this->survey_link_visible)?$this->db->escape($this->survey_link_visible):"null").","; $sql.= " canedit=".$this->db->escape($this->canedit).","; $sql.= " allow_comments=".$this->db->escape($this->allow_comments); //$sql.= " WHERE rowid=".$this->id; - $sql.= " WHERE id_sondage_admin='".$this->db->escape($this->id_sondage_admin)."'"; + $sql.= " WHERE id_sondage='".$this->db->escape($this->id_sondage)."'"; $this->db->begin(); @@ -350,16 +332,14 @@ class Opensurveysondage extends CommonObject * * @param User $user User that deletes * @param int $notrigger 0=launch triggers after, 1=disable triggers - * @param string $numsondageadmin Num sondage admin to delete + * @param string $numsondage Num sondage admin to delete * @return int <0 if KO, >0 if OK */ - function delete($user, $notrigger, $numsondageadmin) + function delete($user, $notrigger, $numsondage) { global $conf, $langs; $error=0; - $numsondage=substr($numsondageadmin, 0, 16); - $this->db->begin(); if (! $error) @@ -389,7 +369,7 @@ class Opensurveysondage extends CommonObject $resql=$this->db->query($sql); $sql = "DELETE FROM ".MAIN_DB_PREFIX."opensurvey_sondage"; - $sql.= " WHERE id_sondage_admin = '".$this->db->escape($numsondageadmin)."'"; + $sql.= " WHERE id_sondage = '".$this->db->escape($numsondage)."'"; dol_syslog(get_class($this)."::delete sql=".$sql); $resql = $this->db->query($sql); @@ -515,11 +495,9 @@ class Opensurveysondage extends CommonObject $this->mail_admin=''; $this->nom_admin=''; $this->titre=''; - $this->id_sondage_admin=''; $this->date_fin=''; $this->format=''; $this->mailsonde=''; - $this->survey_link_visible=''; $this->canedit=0; } diff --git a/htdocs/opensurvey/exportcsv.php b/htdocs/opensurvey/exportcsv.php index 3cf0fe944e9..12e5fbb0489 100644 --- a/htdocs/opensurvey/exportcsv.php +++ b/htdocs/opensurvey/exportcsv.php @@ -29,11 +29,10 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/class/opensurveysondage.class.php"); $action=GETPOST('action'); -$numsondage = $numsondageadmin = ''; +$numsondage = ''; if (GETPOST('id')) { - $numsondageadmin=GETPOST("id",'alpha'); - $numsondage=substr($numsondageadmin, 0, 16); + $numsondage=GETPOST("id",'alpha'); } $object=new Opensurveysondage($db); diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 7f3ecb5f36e..8876ef6e1aa 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -36,12 +36,12 @@ function opensurvey_prepare_head(Opensurveysondage $object) { $h = 0; $head = array(); - $head[0][0] = 'adminstuds.php?id='.$object->id_sondage_admin; + $head[0][0] = 'adminstuds.php?id='.$object->id_sondage; $head[0][1] = $langs->trans("Card"); $head[0][2] = 'general'; $h++; - $head[1][0] = 'adminstuds_preview.php?id='.$object->id_sondage_admin; + $head[1][0] = 'adminstuds_preview.php?id='.$object->id_sondage; $head[1][1] = $langs->trans("SurveyResults").'/'.$langs->trans("Preview"); $head[1][2] = 'preview'; $h++; @@ -232,7 +232,6 @@ function ajouter_sondage($origin) global $conf, $db; $sondage=dol_survey_random(16); - $sondage_admin=$sondage.dol_survey_random(8); if ($_SESSION["formatsondage"]=="A"||$_SESSION["formatsondage"]=="A+") { //extraction de la date de fin choisie @@ -259,16 +258,16 @@ function ajouter_sondage($origin) // Insert survey $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'opensurvey_sondage'; - $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, id_sondage_admin, date_fin, format, mailsonde, canedit, allow_comments, origin, sujet)'; + $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, date_fin, format, mailsonde, canedit, allow_comments, origin, sujet)'; $sql.= " VALUES ('".$db->escape($sondage)."', '".$db->escape($_SESSION['commentaires'])."', '".$db->escape($_SESSION['adresse'])."', '".$db->escape($_SESSION['nom'])."',"; - $sql.= " '".$db->escape($_SESSION['titre'])."', '".$sondage_admin."', '".$db->idate($date_fin)."', '".$_SESSION['formatsondage']."', '".$db->escape($_SESSION['mailsonde'])."',"; + $sql.= " '".$db->escape($_SESSION['titre'])."', '".$db->idate($date_fin)."', '".$_SESSION['formatsondage']."', '".$db->escape($_SESSION['mailsonde'])."',"; $sql.= " '".$canedit."', '".$allow_comments."', '".$db->escape($origin)."',"; $sql.= " '".$db->escape($_SESSION['toutchoix'])."'"; $sql.= ")"; dol_syslog($sql); $resql=$db->query($sql); - if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/adminstuds_preview.php',1).'?id='.$sondage_admin; + if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/adminstuds_preview.php',1).'?id='.$sondage; else { // Define $urlwithroot diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 49fa1da6149..90071466dd4 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -28,7 +28,7 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); $action=GETPOST('action'); $id=GETPOST('id'); -$numsondage=substr($id, 0, 16); +$numsondage= $id; if (! $sortorder) $sortorder="ASC"; if (! $sortfield) $sortfield="p.titre"; @@ -49,7 +49,7 @@ if ($action == 'delete_confirm') $object=new Opensurveysondage($db); - $result=$object->delete($user,'',$numsondageadmin); + $result=$object->delete($user,'',$numsondage); $db->commit(); } @@ -80,7 +80,7 @@ if ($action == 'delete') print ''."\n"; print ''."\n"; -$sql = "SELECT id_sondage, id_sondage_admin, mail_admin, format, origin, date_fin, titre, nom_admin"; +$sql = "SELECT id_sondage, mail_admin, format, origin, date_fin, titre, nom_admin"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as p"; // Count total nb of records $nbtotalofrecords = 0; @@ -114,7 +114,7 @@ while ($i < min($num,$limit)) $var=!$var; print ''; print ''; print''."\n"; - print ''."\n"; + print ''."\n"; print ''."\n"; $i++; diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index dec1d8f6d22..a8968987f83 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -33,19 +33,10 @@ require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); // Init vars $action=GETPOST('action'); -$numsondage = $numsondageadmin = ''; +$numsondage = ''; if (GETPOST('sondage')) { - if (strlen(GETPOST('sondage')) == 24) // recuperation du numero de sondage admin (24 car.) dans l'URL - { - $numsondageadmin=GETPOST("sondage",'alpha'); - $numsondage=substr($numsondageadmin, 0, 16); - } - else - { - $numsondageadmin=''; - $numsondage=GETPOST("sondage",'alpha'); - } + $numsondage = GETPOST('sondage', 'alpha'); } $object=new Opensurveysondage($db); From 2b01981213f0ea7bd5774f36b44cfb380f20b26d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 22:29:40 +0100 Subject: [PATCH 20/90] There is no rowid in llx_opensurvey_sondage table --- htdocs/opensurvey/class/opensurveysondage.class.php | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 61c65a62441..84c08a2e125 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -179,7 +179,6 @@ class Opensurveysondage extends CommonObject global $langs; $sql = "SELECT"; - //$sql.= " t.rowid,"; $sql.= " t.id_sondage,"; $sql.= " t.commentaires,"; $sql.= " t.mail_admin,"; @@ -193,8 +192,7 @@ class Opensurveysondage extends CommonObject $sql.= " t.sujet,"; $sql.= " t.tms"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as t"; - if ($id > 0) $sql.= " WHERE t.rowid = ".$this->db->escape($id); - else $sql.= " WHERE t.id_sondage = '".$this->db->escape($numsurvey)."'"; + $sql.= " WHERE t.id_sondage = '".$this->db->escape($numsurvey)."'"; dol_syslog(get_class($this)."::fetch sql=".$sql, LOG_DEBUG); $resql=$this->db->query($sql); @@ -204,8 +202,6 @@ class Opensurveysondage extends CommonObject { $obj = $this->db->fetch_object($resql); - //$this->id = $obj->rowid; - $this->id_sondage = $obj->id_sondage; $this->commentaires = $obj->commentaires; $this->mail_admin = $obj->mail_admin; @@ -283,7 +279,6 @@ class Opensurveysondage extends CommonObject $sql.= " canedit=".$this->db->escape($this->canedit).","; $sql.= " allow_comments=".$this->db->escape($this->allow_comments); - //$sql.= " WHERE rowid=".$this->id; $sql.= " WHERE id_sondage='".$this->db->escape($this->id_sondage)."'"; $this->db->begin(); From 13d4ea4c3829ec1fa24faa3c74447d4ff88eb7bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 23:30:15 +0100 Subject: [PATCH 21/90] =?UTF-8?q?Added=20a=20new=20feature=20to=20disable?= =?UTF-8?q?=20spying=20other=20users=E2=80=99=20vote?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../install/mysql/migration/3.5.0-3.6.0.sql | 7 +- .../mysql/tables/llx_opensurvey_sondage.sql | 1 + htdocs/langs/en_US/opensurvey.lang | 5 +- htdocs/opensurvey/adminstuds.php | 12 +- .../class/opensurveysondage.class.php | 14 +- htdocs/opensurvey/fonctions.php | 10 +- htdocs/opensurvey/public/create_survey.php | 10 + htdocs/opensurvey/public/studs.php | 298 +++++++++--------- 8 files changed, 198 insertions(+), 159 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index c900b9d7374..41209d68cd2 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -18,7 +18,8 @@ -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); ALTER TABLE llx_bookmark ADD COLUMN entity integer DEFAULT 1 NOT NULL; -ALTER TABLE `llx_opensurvey_sondage` ADD `allow_comments` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER `canedit` ; -ALTER TABLE `llx_opensurvey_sondage` DROP `survey_link_visible` ; +ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_comments` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER `canedit` ; +ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `survey_link_visible` ; ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; -ALTER TABLE `llx_opensurvey_sondage` DROP `id_sondage_admin` ; \ No newline at end of file +ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `id_sondage_admin` ; +ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index ae06605ec67..111519ce901 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -26,6 +26,7 @@ CREATE TABLE llx_opensurvey_sondage ( mailsonde varchar(2) DEFAULT '0', canedit integer DEFAULT 0, allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, + allow_spy TINYINT(1) unsigned NOT NULL DEFAULT 1, origin VARCHAR(64), tms TIMESTAMP, sujet TEXT diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 88308711fc6..8125589d105 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -27,7 +27,7 @@ SelectedDays=Selected days TheBestChoice=The best choice currently is TheBestChoices=The best choices currently are with=with -OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you (without paying attention to the choices of the other voters) and validate with the plus button at the end of the line. +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. InitiatorOfPoll=Initiator of the poll CommentsOfVoters=Comments of voters ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) @@ -66,7 +66,8 @@ AddEndHour=Add end hour votes=vote(s) NoCommentYet=No comments have been posted for this poll yet CanEditVotes=Can change vote of others -CanComment=Users can comment in the poll +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. BackToCurrentMonth=Back to current month PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 705f668ae8b..9433ea6a250 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -88,6 +88,7 @@ if ($action == 'update') $object->date_fin = $expiredate; $object->canedit = GETPOST('canedit')=='on'?1:0; $object->allow_comments = GETPOST('cancomment') == 'on' ? true : false; + $object->allow_spy = GETPOST('canseeothersvote') == 'on' ? true : false; $res=$object->update($user); if ($res < 0) @@ -176,7 +177,7 @@ $linkback = ''.$langs->tra // Ref print '
'; print ''; print ''; @@ -239,6 +240,15 @@ if ($action == 'edit') else print yn($object->allow_comments); print ''; +// Users can see others vote +print ''; + // Expire date print ''."\n"; - - // ligne d'un usager pré-authentifié - $mod_ok = ($object->canedit || (! empty($nombase) && in_array($nombase, $listofvoters))); - - // Name - $nombase=str_replace("°","'",$obj->nom); - print ''."\n"; - - // si la ligne n'est pas a changer, on affiche les données - if (! $testligneamodifier) +if ($object->allow_spy) { + $sumfor = array(); + $sumagainst = array(); + $compteur = 0; + $sql ="SELECT id_users, nom, id_sondage, reponses"; + $sql.=" FROM ".MAIN_DB_PREFIX."opensurvey_user_studs"; + $sql.=" WHERE id_sondage = '".$db->escape($numsondage)."'"; + dol_syslog('sql='.$sql); + $resql=$db->query($sql); + if (! $resql) { - for ($i = 0; $i < $nbcolonnes; $i++) - { - $car = substr($ensemblereponses, $i, 1); - //print 'xx'.$i."-".$car.'-'.$listofanswers[$i]['format'].'zz'; - - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) - { - if (((string) $car) == "1") print ''."\n"; - else print ''."\n"; - // Total - if (! isset($sumfor[$i])) $sumfor[$i] = 0; - if (((string) $car) == "1") $sumfor[$i]++; - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') - { - if (((string) $car) == "1") print ''."\n"; - else if (((string) $car) == "0") print ''."\n"; - else print ''."\n"; - // Total - if (! isset($sumfor[$i])) $sumfor[$i] = 0; - if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; - if (((string) $car) == "1") $sumfor[$i]++; - if (((string) $car) == "0") $sumagainst[$i]++; - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') - { - if (((string) $car) == "1") print ''."\n"; - else if (((string) $car) == "0") print ''."\n"; - else print ''."\n"; - // Total - if (! isset($sumfor[$i])) $sumfor[$i] = 0; - if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; - if (((string) $car) == "1") $sumfor[$i]++; - if (((string) $car) == "0") $sumagainst[$i]++; - } - } + dol_print_error($db); + exit; } - else + $num=$db->num_rows($resql); + while ($compteur < $num) { - //sinon on remplace les choix de l'utilisateur par une ligne de checkbox pour recuperer de nouvelles valeurs - if ($compteur == $ligneamodifier) - { - for ($i = 0; $i < $nbcolonnes; $i++) - { - $car = substr($ensemblereponses, $i, 1); - print ''."\n"; - } - } - else + $obj=$db->fetch_object($resql); + + $ensemblereponses = $obj->reponses; + + print ''."\n"; + + // ligne d'un usager pré-authentifié + $mod_ok = ($object->canedit || (! empty($nombase) && in_array($nombase, $listofvoters))); + + // Name + $nombase=str_replace("°","'",$obj->nom); + print ''."\n"; + + // si la ligne n'est pas a changer, on affiche les données + if (! $testligneamodifier) { for ($i = 0; $i < $nbcolonnes; $i++) { $car = substr($ensemblereponses, $i, 1); + //print 'xx'.$i."-".$car.'-'.$listofanswers[$i]['format'].'zz'; + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) { if (((string) $car) == "1") print ''."\n"; @@ -477,8 +413,8 @@ while ($compteur < $num) } if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') { - if (((string) $car) == "1") print ''."\n"; - else if (((string) $car) == "0") print ''."\n"; + if (((string) $car) == "1") print ''."\n"; + else if (((string) $car) == "0") print ''."\n"; else print ''."\n"; // Total if (! isset($sumfor[$i])) $sumfor[$i] = 0; @@ -499,31 +435,97 @@ while ($compteur < $num) } } } - } - - // Button edit at end of line - if ($compteur != $ligneamodifier && $mod_ok) - { - print ''."\n"; - } - - //demande de confirmation pour modification de ligne - for ($i=0; $i<$nblignes; $i++) - { - if (isset($_POST["modifierligne".$i])) + else { - if ($compteur == $i) + //sinon on remplace les choix de l'utilisateur par une ligne de checkbox pour recuperer de nouvelles valeurs + if ($compteur == $ligneamodifier) { - print ''."\n"; + for ($i = 0; $i < $nbcolonnes; $i++) + { + $car = substr($ensemblereponses, $i, 1); + print ''."\n"; + } + } + else + { + for ($i = 0; $i < $nbcolonnes; $i++) + { + $car = substr($ensemblereponses, $i, 1); + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) + { + if (((string) $car) == "1") print ''."\n"; + else print ''."\n"; + // Total + if (! isset($sumfor[$i])) $sumfor[$i] = 0; + if (((string) $car) == "1") $sumfor[$i]++; + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') + { + if (((string) $car) == "1") print ''."\n"; + else if (((string) $car) == "0") print ''."\n"; + else print ''."\n"; + // Total + if (! isset($sumfor[$i])) $sumfor[$i] = 0; + if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; + if (((string) $car) == "1") $sumfor[$i]++; + if (((string) $car) == "0") $sumagainst[$i]++; + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') + { + if (((string) $car) == "1") print ''."\n"; + else if (((string) $car) == "0") print ''."\n"; + else print ''."\n"; + // Total + if (! isset($sumfor[$i])) $sumfor[$i] = 0; + if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; + if (((string) $car) == "1") $sumfor[$i]++; + if (((string) $car) == "0") $sumagainst[$i]++; + } + } } } - } - $compteur++; - print ''."\n"; + // Button edit at end of line + if ($compteur != $ligneamodifier && $mod_ok) + { + print ''."\n"; + } + + //demande de confirmation pour modification de ligne + for ($i=0; $i<$nblignes; $i++) + { + if (isset($_POST["modifierligne".$i])) + { + if ($compteur == $i) + { + print ''."\n"; + } + } + } + + $compteur++; + print ''."\n"; + } } // Add line to add new record @@ -589,39 +591,41 @@ for ($i=0; $i < $nbcolonnes; $i++) } } -// Show line total -print ''."\n"; -print ''."\n"; -for ($i = 0; $i < $nbcolonnes; $i++) -{ - $showsumfor = isset($sumfor[$i])?$sumfor[$i]:''; - $showsumagainst = isset($sumagainst[$i])?$sumagainst[$i]:''; - if (empty($showsumfor)) $showsumfor = 0; - if (empty($showsumagainst)) $showsumagainst = 0; - - print ''."\n"; -} -print ''; -// Show picto winner -if ($nbofcheckbox >= 2) -{ +if ($object->allow_spy) { + // Show line total print ''."\n"; - print ''."\n"; - for ($i=0; $i < $nbcolonnes; $i++) + print ''."\n"; + for ($i = 0; $i < $nbcolonnes; $i++) { - //print 'xx'.(! empty($listofanswers[$i]['format'])).'-'.$sumfor[$i].'-'.$meilleurecolonne; - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst')) && isset($sumfor[$i]) && isset($meilleurecolonne) && $sumfor[$i] == $meilleurecolonne) - { - print ''."\n"; - } else { - print ''."\n"; - } + $showsumfor = isset($sumfor[$i])?$sumfor[$i]:''; + $showsumagainst = isset($sumagainst[$i])?$sumagainst[$i]:''; + if (empty($showsumfor)) $showsumfor = 0; + if (empty($showsumagainst)) $showsumagainst = 0; + + print ''."\n"; + } + print ''; + // Show picto winner + if ($nbofcheckbox >= 2) + { + print ''."\n"; + print ''."\n"; + for ($i=0; $i < $nbcolonnes; $i++) + { + //print 'xx'.(! empty($listofanswers[$i]['format'])).'-'.$sumfor[$i].'-'.$meilleurecolonne; + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst')) && isset($sumfor[$i]) && isset($meilleurecolonne) && $sumfor[$i] == $meilleurecolonne) + { + print ''."\n"; + } else { + print ''."\n"; + } + } + print ''."\n"; } - print ''."\n"; } print '
'. $langs->trans("Ref").''. $langs->trans("Title") .''. $langs->trans("Type") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .' 
'; - print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; + print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; print ''.$obj->titre.''; $type=($obj->format=='A' || $obj->format=='A+')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); @@ -126,7 +126,7 @@ while ($i < min($num,$limit)) print ''.$nbuser.''.img_picto('', 'delete.png').''.img_picto('', 'delete.png').'
'.$langs->trans('Ref').''; -print $form->showrefnav($object, 'sondage', $linkback, 1, 'id_sondage', 'id_sondage'); +print $form->showrefnav($object, 'id', $linkback, 1, 'id_sondage', 'id_sondage'); print '
'.$langs->trans('CanSeeOthersVote').''; +if ($action == 'edit') +{ + print 'allow_spy?' checked="true"':'').'">'; +} +else print yn($object->allow_spy); +print '
'.$langs->trans('ExpireDate').''; if ($action == 'edit') print $form->select_date($expiredate?$expiredate:$object->date_fin,'expire'); diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 84c08a2e125..fe20979ff4a 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -57,6 +57,12 @@ class Opensurveysondage extends CommonObject * @var bool */ public $allow_comments; + + /** + * Allow users see others vote + * @var bool + */ + public $allow_spy; /** * Constructor @@ -121,7 +127,7 @@ class Opensurveysondage extends CommonObject $sql.= " ".(! isset($this->format)?'NULL':"'".$this->db->escape($this->format)."'").","; $sql.= " ".(! isset($this->mailsonde)?'NULL':"'".$this->db->escape($this->mailsonde)."'").","; $sql.= " ".(! isset($this->canedit)?'NULL':"'".$this->db->escape($this->canedit)."'").""; - + $sql.= ")"; $this->db->begin(); @@ -189,6 +195,7 @@ class Opensurveysondage extends CommonObject $sql.= " t.mailsonde,"; $sql.= " t.canedit,"; $sql.= " t.allow_comments,"; + $sql.= " t.allow_spy,"; $sql.= " t.sujet,"; $sql.= " t.tms"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as t"; @@ -212,6 +219,7 @@ class Opensurveysondage extends CommonObject $this->mailsonde = $obj->mailsonde; $this->canedit = $obj->canedit; $this->allow_comments = $obj->allow_comments; + $this->allow_spy = $obj->allow_spy; $this->sujet = $obj->sujet; $this->date_m = $this->db->jdate($obj->tls); @@ -261,6 +269,7 @@ class Opensurveysondage extends CommonObject if (isset($this->mailsonde)) $this->mailsonde=trim($this->mailsonde); $this->canedit = $this->canedit ? 1 : 0; $this->allow_comments = $this->allow_comments ? 1 : 0; + $this->allow_spy = $this->allow_spy ? 1 : 0; // Check parameters // Put here code to add a control on parameters values @@ -277,7 +286,8 @@ class Opensurveysondage extends CommonObject $sql.= " format=".(isset($this->format)?"'".$this->db->escape($this->format)."'":"null").","; $sql.= " mailsonde=".(isset($this->mailsonde)?$this->db->escape($this->mailsonde):"null").","; $sql.= " canedit=".$this->db->escape($this->canedit).","; - $sql.= " allow_comments=".$this->db->escape($this->allow_comments); + $sql.= " allow_comments=".$this->db->escape($this->allow_comments).","; + $sql.= " allow_spy=".$this->db->escape($this->allow_spy); $sql.= " WHERE id_sondage='".$this->db->escape($this->id_sondage)."'"; diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 8876ef6e1aa..3be543a96fd 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -229,7 +229,7 @@ function dol_survey_random($car) */ function ajouter_sondage($origin) { - global $conf, $db; + global $db; $sondage=dol_survey_random(16); @@ -255,13 +255,14 @@ function ajouter_sondage($origin) } $canedit=empty($_SESSION['formatcanedit'])?'0':'1'; $allow_comments = empty($_SESSION['allow_comments']) ? 0 : 1; - + $allow_spy = empty($_SESSION['allow_spy']) ? 0 : 1; + // Insert survey $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'opensurvey_sondage'; - $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, date_fin, format, mailsonde, canedit, allow_comments, origin, sujet)'; + $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, date_fin, format, mailsonde, canedit, allow_comments, allow_spy, origin, sujet)'; $sql.= " VALUES ('".$db->escape($sondage)."', '".$db->escape($_SESSION['commentaires'])."', '".$db->escape($_SESSION['adresse'])."', '".$db->escape($_SESSION['nom'])."',"; $sql.= " '".$db->escape($_SESSION['titre'])."', '".$db->idate($date_fin)."', '".$_SESSION['formatsondage']."', '".$db->escape($_SESSION['mailsonde'])."',"; - $sql.= " '".$canedit."', '".$allow_comments."', '".$db->escape($origin)."',"; + $sql.= " '".$canedit."', '".$allow_comments."', '".$allow_spy."', '".$db->escape($origin)."',"; $sql.= " '".$db->escape($_SESSION['toutchoix'])."'"; $sql.= ")"; dol_syslog($sql); @@ -289,6 +290,7 @@ function ajouter_sondage($origin) unset($_SESSION["canedit"]); unset($_SESSION["mailsonde"]); unset($_SESSION['allow_comments']); + unset($_SESSION['allow_spy']); header("Location: ".$urlback); exit(); diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index 9e33933b4ae..fee80200fb0 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -80,6 +80,12 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET } else { $_SESSION['allow_comments'] = false; } + + if (GETPOST('allow_spy') == 'on') { + $_SESSION['allow_spy'] = true; + } else { + $_SESSION['allow_spy'] = false; + } if (! isValidEmail($adresse)) $erreur_adresse = true; @@ -182,6 +188,10 @@ if ($_SESSION['allow_comments']) $allow_comments = "checked"; print ' '.$langs->trans('CanComment').'
'."\n"; +if ($_SESSION['allow_spy']) $allow_spy = "checked"; + +print ' '.$langs->trans('CanSeeOthersVote').'
'."\n"; + if (GETPOST('choix_sondage')) { if (GETPOST('choix_sondage') == 'date') print ''; diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index a8968987f83..a0cce7067ad 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -365,108 +365,44 @@ else // Loop on each answer -$sumfor = array(); -$sumagainst = array(); -$compteur = 0; -$sql ="SELECT id_users, nom, id_sondage, reponses"; -$sql.=" FROM ".MAIN_DB_PREFIX."opensurvey_user_studs"; -$sql.=" WHERE id_sondage = '".$db->escape($numsondage)."'"; -dol_syslog('sql='.$sql); -$resql=$db->query($sql); -if (! $resql) -{ - dol_print_error($db); - exit; -} -$num=$db->num_rows($resql); -while ($compteur < $num) -{ - $obj=$db->fetch_object($resql); - - $ensemblereponses = $obj->reponses; - - print '
'.$nombase.'OKKO'.$langs->trans("Yes").''.$langs->trans("No").' '.$langs->trans("For").''.$langs->trans("Against").' '; - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) - { - print ''; - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') - { - $arraychoice=array('2'=>' ','0'=>$langs->trans("No"),'1'=>$langs->trans("Yes")); - print $form->selectarray("choix".$i, $arraychoice, $car); - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') - { - $arraychoice=array('2'=>' ','0'=>$langs->trans("Against"),'1'=>$langs->trans("For")); - print $form->selectarray("choix".$i, $arraychoice, $car); - } - print '
'.$nombase.'OK'.$langs->trans("For").''.$langs->trans("Against").''.$langs->trans("Yes").''.$langs->trans("No").' '; - print ''; - print ''; - print ''; + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) + { + print ''; + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') + { + $arraychoice=array('2'=>' ','0'=>$langs->trans("No"),'1'=>$langs->trans("Yes")); + print $form->selectarray("choix".$i, $arraychoice, $car); + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') + { + $arraychoice=array('2'=>' ','0'=>$langs->trans("Against"),'1'=>$langs->trans("For")); + print $form->selectarray("choix".$i, $arraychoice, $car); + } + print 'OKKO'.$langs->trans("For").''.$langs->trans("Against").' '.$langs->trans("For").''.$langs->trans("Against").' 
'; + print ''; + print ''; + print '
'. $langs->trans("Total") .''; - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) print $showsumfor; - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') print $langs->trans("Yes").': '.$showsumfor.'
'.$langs->trans("No").': '.$showsumagainst; - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') print $langs->trans("For").': '.$showsumfor.'
'.$langs->trans("Against").': '.$showsumagainst; - print '
'. $langs->trans("Total") .''; + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) print $showsumfor; + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') print $langs->trans("Yes").': '.$showsumfor.'
'.$langs->trans("No").': '.$showsumagainst; + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') print $langs->trans("For").': '.$showsumfor.'
'.$langs->trans("Against").': '.$showsumagainst; + print '
'."\n"; print '
'."\n"; From b9ec6ad6379927267780b3d090f347e0d30c6036 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Jan 2014 23:58:44 +0100 Subject: [PATCH 22/90] Removed unused function opensurveysondage::createFromClone --- .../class/opensurveysondage.class.php | 57 ------------------- 1 file changed, 57 deletions(-) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index fe20979ff4a..6d4baf7568b 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -85,7 +85,6 @@ class Opensurveysondage extends CommonObject */ function create($user, $notrigger=0) { - global $conf, $langs; $error=0; // Clean parameters @@ -182,8 +181,6 @@ class Opensurveysondage extends CommonObject */ function fetch($id,$numsurvey='') { - global $langs; - $sql = "SELECT"; $sql.= " t.id_sondage,"; $sql.= " t.commentaires,"; @@ -431,60 +428,6 @@ class Opensurveysondage extends CommonObject return $this->lines; } - /** - * Load an object from its id and create a new one in database - * - * @param int $fromid Id of object to clone - * @return int New id of clone - */ - function createFromClone($fromid) - { - global $user,$langs; - - $error=0; - - $object=new Opensurveysondage($this->db); - - $this->db->begin(); - - // Load source object - $object->fetch($fromid); - $object->id=0; - $object->statut=0; - - // Clear fields - // ... - - // Create clone - $result=$object->create($user); - - // Other options - if ($result < 0) - { - $this->error=$object->error; - $error++; - } - - if (! $error) - { - - - } - - // End - if (! $error) - { - $this->db->commit(); - return $object->id; - } - else - { - $this->db->rollback(); - return -1; - } - } - - /** * Initialise object with example values * Id must be 0 if object instance is a specimen From 3590e3d7b6845e958d6ed67bf051a6b412e2997b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 15:42:44 +0100 Subject: [PATCH 23/90] Moved creation of surveys to the function Opensurveysondage::create --- .../class/opensurveysondage.class.php | 57 +++++++++++-------- htdocs/opensurvey/fonctions.php | 31 ++++++---- 2 files changed, 53 insertions(+), 35 deletions(-) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 6d4baf7568b..22f66a2c2a4 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -51,6 +51,9 @@ class Opensurveysondage extends CommonObject var $format; var $mailsonde; var $canedit; + + public $origin; + public $sujet; /** * Allow comments on this poll @@ -89,16 +92,18 @@ class Opensurveysondage extends CommonObject // Clean parameters - if (isset($this->id_sondage)) $this->id_sondage=trim($this->id_sondage); - if (isset($this->commentaires)) $this->commentaires=trim($this->commentaires); - if (isset($this->mail_admin)) $this->mail_admin=trim($this->mail_admin); - if (isset($this->nom_admin)) $this->nom_admin=trim($this->nom_admin); - if (isset($this->titre)) $this->titre=trim($this->titre); - if (isset($this->format)) $this->format=trim($this->format); - if (isset($this->mailsonde)) $this->mailsonde=trim($this->mailsonde); - if (isset($this->canedit)) $this->canedit=trim($this->canedit); - - + $this->id_sondage = trim($this->id_sondage); + $this->commentaires = trim($this->commentaires); + $this->mail_admin = trim($this->mail_admin); + $this->nom_admin = trim($this->nom_admin); + $this->titre = trim($this->titre); + $this->format = trim($this->format); + $this->mailsonde = ($this->mailsonde ? 1 : 0); + $this->canedit = ($this->canedit ? 1 : 0); + $this->allow_comments = ($this->allow_comments ? 1 : 0); + $this->allow_spy = ($this->allow_spy ? 1 : 0); + $this->origin = trim($this->origin); + $this->sujet = trim($this->sujet); // Check parameters // Put here code to add control on parameters values @@ -114,21 +119,29 @@ class Opensurveysondage extends CommonObject $sql.= "date_fin,"; $sql.= "format,"; $sql.= "mailsonde,"; - $sql.= "canedit"; + $sql.= "canedit,"; + $sql.= "allow_comments,"; + $sql.= "allow_spy,"; + $sql.= "origin,"; + $sql.= "sujet"; $sql.= ") VALUES ("; - $sql.= " ".(! isset($this->id_sondage)?'NULL':"'".$this->db->escape($this->id_sondage)."'").","; - $sql.= " ".(! isset($this->commentaires)?'NULL':"'".$this->db->escape($this->commentaires)."'").","; - $sql.= " ".(! isset($this->mail_admin)?'NULL':"'".$this->db->escape($this->mail_admin)."'").","; - $sql.= " ".(! isset($this->nom_admin)?'NULL':"'".$this->db->escape($this->nom_admin)."'").","; - $sql.= " ".(! isset($this->titre)?'NULL':"'".$this->db->escape($this->titre)."'").","; - $sql.= " ".(! isset($this->date_fin) || dol_strlen($this->date_fin)==0?'NULL':$this->db->idate($this->date_fin)).","; - $sql.= " ".(! isset($this->format)?'NULL':"'".$this->db->escape($this->format)."'").","; - $sql.= " ".(! isset($this->mailsonde)?'NULL':"'".$this->db->escape($this->mailsonde)."'").","; - $sql.= " ".(! isset($this->canedit)?'NULL':"'".$this->db->escape($this->canedit)."'").""; + $sql.= "'".$this->db->escape($this->id_sondage)."',"; + $sql.= " ".(empty($this->commentaires)?'NULL':"'".$this->db->escape($this->commentaires)."'").","; + $sql.= " ".(empty($this->mail_admin)?'NULL':"'".$this->db->escape($this->mail_admin)."'").","; + $sql.= " '".$this->db->escape($this->nom_admin)."',"; + $sql.= " '".$this->db->escape($this->titre)."',"; + $sql.= " '".$this->db->idate($this->date_fin)."',"; + $sql.= " '".$this->db->escape($this->format)."',"; + $sql.= " ".$this->db->escape($this->mailsonde).","; + $sql.= " ".$this->db->escape($this->canedit).","; + $sql.= " ".$this->db->escape($this->allow_comments).","; + $sql.= " ".$this->db->escape($this->allow_spy).","; + $sql.= " '".$this->db->escape($this->origin)."',"; + $sql.= " '".$this->db->escape($this->sujet)."'"; $sql.= ")"; - + $this->db->begin(); dol_syslog(get_class($this)."::create sql=".$sql, LOG_DEBUG); @@ -137,8 +150,6 @@ class Opensurveysondage extends CommonObject if (! $error) { - $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."opensurvey_sondage"); - if (! $notrigger) { // Uncomment this and change MYOBJECT to your own tag if you diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 3be543a96fd..bbd2a478817 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -230,6 +230,8 @@ function dol_survey_random($car) function ajouter_sondage($origin) { global $db; + + require_once DOL_DOCUMENT_ROOT.'/opensurvey/class/opensurveysondage.class.php'; $sondage=dol_survey_random(16); @@ -253,20 +255,27 @@ function ajouter_sondage($origin) if (is_numeric($date_fin) === false) { $date_fin = time()+15552000; } - $canedit=empty($_SESSION['formatcanedit'])?'0':'1'; + $canedit=empty($_SESSION['caneditsondage']) ? 0 : 1; $allow_comments = empty($_SESSION['allow_comments']) ? 0 : 1; $allow_spy = empty($_SESSION['allow_spy']) ? 0 : 1; // Insert survey - $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'opensurvey_sondage'; - $sql.= '(id_sondage, commentaires, mail_admin, nom_admin, titre, date_fin, format, mailsonde, canedit, allow_comments, allow_spy, origin, sujet)'; - $sql.= " VALUES ('".$db->escape($sondage)."', '".$db->escape($_SESSION['commentaires'])."', '".$db->escape($_SESSION['adresse'])."', '".$db->escape($_SESSION['nom'])."',"; - $sql.= " '".$db->escape($_SESSION['titre'])."', '".$db->idate($date_fin)."', '".$_SESSION['formatsondage']."', '".$db->escape($_SESSION['mailsonde'])."',"; - $sql.= " '".$canedit."', '".$allow_comments."', '".$allow_spy."', '".$db->escape($origin)."',"; - $sql.= " '".$db->escape($_SESSION['toutchoix'])."'"; - $sql.= ")"; - dol_syslog($sql); - $resql=$db->query($sql); + $opensurveysondage = new Opensurveysondage($db); + $opensurveysondage->id_sondage = $sondage; + $opensurveysondage->commentaires = $_SESSION['commentaires']; + $opensurveysondage->mail_admin = $_SESSION['adresse']; + $opensurveysondage->nom_admin = $_SESSION['nom']; + $opensurveysondage->titre = $_SESSION['titre']; + $opensurveysondage->date_fin = $date_fin; + $opensurveysondage->format = $_SESSION['formatsondage']; + $opensurveysondage->mailsonde = $_SESSION['mailsonde']; + $opensurveysondage->canedit = $canedit; + $opensurveysondage->allow_comments = $allow_comments; + $opensurveysondage->allow_spy = $allow_spy; + $opensurveysondage->origin = $origin; + $opensurveysondage->sujet = $_SESSION['toutchoix']; + + $opensurveysondage->create(null); if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/adminstuds_preview.php',1).'?id='.$sondage; else @@ -279,8 +288,6 @@ function ajouter_sondage($origin) $url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/studs.php',1).'?sondage='.$sondage; $urlback=$url; - - //var_dump($urlback);exit; } unset($_SESSION["titre"]); From efba39310e2efe5d48ed8edfca3521662b13b743 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 15:47:47 +0100 Subject: [PATCH 24/90] Some session variables were not properly unset --- htdocs/opensurvey/fonctions.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index bbd2a478817..d3f1069babb 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -298,6 +298,10 @@ function ajouter_sondage($origin) unset($_SESSION["mailsonde"]); unset($_SESSION['allow_comments']); unset($_SESSION['allow_spy']); + unset($_SESSION['toutchoix']); + unset($_SESSION['caneditsondage']); + unset($_SESSION['totalchoixjour']); + unset($_SESSION['champdatefin']); header("Location: ".$urlback); exit(); From 57a18ba4afd03f8703e91be1ba120d2d01175c96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 15:56:37 +0100 Subject: [PATCH 25/90] Unified duplicate code that cleaned Opensurveysondage parameters into Opensurveysondage::cleanParameters --- .../class/opensurveysondage.class.php | 42 ++++++++----------- 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 22f66a2c2a4..80bb57dddfa 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -91,19 +91,7 @@ class Opensurveysondage extends CommonObject $error=0; // Clean parameters - - $this->id_sondage = trim($this->id_sondage); - $this->commentaires = trim($this->commentaires); - $this->mail_admin = trim($this->mail_admin); - $this->nom_admin = trim($this->nom_admin); - $this->titre = trim($this->titre); - $this->format = trim($this->format); - $this->mailsonde = ($this->mailsonde ? 1 : 0); - $this->canedit = ($this->canedit ? 1 : 0); - $this->allow_comments = ($this->allow_comments ? 1 : 0); - $this->allow_spy = ($this->allow_spy ? 1 : 0); - $this->origin = trim($this->origin); - $this->sujet = trim($this->sujet); + $this->cleanParameters(); // Check parameters // Put here code to add control on parameters values @@ -267,17 +255,7 @@ class Opensurveysondage extends CommonObject $error=0; // Clean parameters - - if (isset($this->id_sondage)) $this->id_sondage=trim($this->id_sondage); - if (isset($this->commentaires)) $this->commentaires=trim($this->commentaires); - if (isset($this->mail_admin)) $this->mail_admin=trim($this->mail_admin); - if (isset($this->nom_admin)) $this->nom_admin=trim($this->nom_admin); - if (isset($this->titre)) $this->titre=trim($this->titre); - if (isset($this->format)) $this->format=trim($this->format); - if (isset($this->mailsonde)) $this->mailsonde=trim($this->mailsonde); - $this->canedit = $this->canedit ? 1 : 0; - $this->allow_comments = $this->allow_comments ? 1 : 0; - $this->allow_spy = $this->allow_spy ? 1 : 0; + $this->cleanParameters(); // Check parameters // Put here code to add a control on parameters values @@ -506,5 +484,21 @@ class Opensurveysondage extends CommonObject return true; } + + private function cleanParameters() { + + $this->id_sondage = trim($this->id_sondage); + $this->commentaires = trim($this->commentaires); + $this->mail_admin = trim($this->mail_admin); + $this->nom_admin = trim($this->nom_admin); + $this->titre = trim($this->titre); + $this->format = trim($this->format); + $this->mailsonde = ($this->mailsonde ? 1 : 0); + $this->canedit = ($this->canedit ? 1 : 0); + $this->allow_comments = ($this->allow_comments ? 1 : 0); + $this->allow_spy = ($this->allow_spy ? 1 : 0); + $this->origin = trim($this->origin); + $this->sujet = trim($this->sujet); + } } ?> From 11dc75686f349035b488665b53ee110d443b3ec3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 15:57:07 +0100 Subject: [PATCH 26/90] Mailsonde Opensurvey function can now be modified --- htdocs/opensurvey/adminstuds.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 9433ea6a250..32465058912 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -89,6 +89,7 @@ if ($action == 'update') $object->canedit = GETPOST('canedit')=='on'?1:0; $object->allow_comments = GETPOST('cancomment') == 'on' ? true : false; $object->allow_spy = GETPOST('canseeothersvote') == 'on' ? true : false; + $object->mailsonde = GETPOST('mailsonde') == 'on' ? true : false; $res=$object->update($user); if ($res < 0) @@ -222,6 +223,15 @@ if ($action == 'edit') else print dol_print_email($object->mail_admin); print ''; +// Receive an email with each vote +print ''.$langs->trans('ToReceiveEMailForEachVote').''; +if ($action == 'edit') +{ + print 'mailsonde?' checked="true"':'').'">'; +} +else print yn($object->mailsonde); +print ''; + // Can edit other votes print ''.$langs->trans('CanEditVotes').''; if ($action == 'edit') From a40286f2fcc693a500ed855a8e473621e818dfb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 17:17:25 +0100 Subject: [PATCH 27/90] Added missing function comment --- htdocs/opensurvey/class/opensurveysondage.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 80bb57dddfa..7a7f9e8530a 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -485,6 +485,9 @@ class Opensurveysondage extends CommonObject return true; } + /** + * Cleans all the class variables before doing an update or an insert + */ private function cleanParameters() { $this->id_sondage = trim($this->id_sondage); From c197fbd4362c9983ef0fc0eb82b2e86b080cc331 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 18:01:55 +0100 Subject: [PATCH 28/90] Removed unused images --- .../public/images/logo_uds_bandeau.gif | Bin 3391 -> 0 bytes .../public/images/logo_uds_lettre.jpg | Bin 23051 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100755 htdocs/opensurvey/public/images/logo_uds_bandeau.gif delete mode 100755 htdocs/opensurvey/public/images/logo_uds_lettre.jpg diff --git a/htdocs/opensurvey/public/images/logo_uds_bandeau.gif b/htdocs/opensurvey/public/images/logo_uds_bandeau.gif deleted file mode 100755 index 3132c13a75a91be0d8a555378ddcd370e6828b29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3391 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 >b8vY=(IPpDf^πLu6f#KcpaWJR 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 Date: Sat, 4 Jan 2014 19:51:44 +0100 Subject: [PATCH 29/90] =?UTF-8?q?Removed=20=E2=80=9Cstupid=E2=80=9D=20feat?= =?UTF-8?q?ure=20to=20allow=20voters=20edit=20other=20users=E2=80=99=20vot?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/install/mysql/migration/3.5.0-3.6.0.sql | 1 + .../install/mysql/tables/llx_opensurvey_sondage.sql | 1 - htdocs/opensurvey/adminstuds.php | 10 ---------- htdocs/opensurvey/class/opensurveysondage.class.php | 8 -------- htdocs/opensurvey/fonctions.php | 4 ---- htdocs/opensurvey/public/choix_autre.php | 1 - htdocs/opensurvey/public/choix_date.php | 1 - htdocs/opensurvey/public/create_survey.php | 11 ++--------- htdocs/opensurvey/public/studs.php | 2 +- 9 files changed, 4 insertions(+), 35 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 41209d68cd2..ffd906c0299 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -22,4 +22,5 @@ ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_comments` TINYINT( 1 ) U ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `survey_link_visible` ; ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `id_sondage_admin` ; +ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `canedit` ; ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index 111519ce901..b697b0bc4ff 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -24,7 +24,6 @@ CREATE TABLE llx_opensurvey_sondage ( date_fin DATETIME, format VARCHAR(2), mailsonde varchar(2) DEFAULT '0', - canedit integer DEFAULT 0, allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, allow_spy TINYINT(1) unsigned NOT NULL DEFAULT 1, origin VARCHAR(64), diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index 32465058912..bb31acf0d99 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -86,7 +86,6 @@ if ($action == 'update') $object->commentaires = GETPOST('nouveauxcommentaires'); $object->mail_admin = GETPOST('nouvelleadresse'); $object->date_fin = $expiredate; - $object->canedit = GETPOST('canedit')=='on'?1:0; $object->allow_comments = GETPOST('cancomment') == 'on' ? true : false; $object->allow_spy = GETPOST('canseeothersvote') == 'on' ? true : false; $object->mailsonde = GETPOST('mailsonde') == 'on' ? true : false; @@ -232,15 +231,6 @@ if ($action == 'edit') else print yn($object->mailsonde); print ''; -// Can edit other votes -print ''.$langs->trans('CanEditVotes').''; -if ($action == 'edit') -{ - print 'canedit?' checked="true"':'').'">'; -} -else print yn($object->canedit); -print ''; - // Users can comment print ''.$langs->trans('CanComment').''; if ($action == 'edit') diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 7a7f9e8530a..b7f83470cec 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -50,7 +50,6 @@ class Opensurveysondage extends CommonObject var $date_fin=''; var $format; var $mailsonde; - var $canedit; public $origin; public $sujet; @@ -107,7 +106,6 @@ class Opensurveysondage extends CommonObject $sql.= "date_fin,"; $sql.= "format,"; $sql.= "mailsonde,"; - $sql.= "canedit,"; $sql.= "allow_comments,"; $sql.= "allow_spy,"; $sql.= "origin,"; @@ -122,7 +120,6 @@ class Opensurveysondage extends CommonObject $sql.= " '".$this->db->idate($this->date_fin)."',"; $sql.= " '".$this->db->escape($this->format)."',"; $sql.= " ".$this->db->escape($this->mailsonde).","; - $sql.= " ".$this->db->escape($this->canedit).","; $sql.= " ".$this->db->escape($this->allow_comments).","; $sql.= " ".$this->db->escape($this->allow_spy).","; $sql.= " '".$this->db->escape($this->origin)."',"; @@ -189,7 +186,6 @@ class Opensurveysondage extends CommonObject $sql.= " t.date_fin,"; $sql.= " t.format,"; $sql.= " t.mailsonde,"; - $sql.= " t.canedit,"; $sql.= " t.allow_comments,"; $sql.= " t.allow_spy,"; $sql.= " t.sujet,"; @@ -213,7 +209,6 @@ class Opensurveysondage extends CommonObject $this->date_fin = $this->db->jdate($obj->date_fin); $this->format = $obj->format; $this->mailsonde = $obj->mailsonde; - $this->canedit = $obj->canedit; $this->allow_comments = $obj->allow_comments; $this->allow_spy = $obj->allow_spy; $this->sujet = $obj->sujet; @@ -271,7 +266,6 @@ class Opensurveysondage extends CommonObject $sql.= " date_fin=".(dol_strlen($this->date_fin)!=0 ? "'".$this->db->idate($this->date_fin)."'" : 'null').","; $sql.= " format=".(isset($this->format)?"'".$this->db->escape($this->format)."'":"null").","; $sql.= " mailsonde=".(isset($this->mailsonde)?$this->db->escape($this->mailsonde):"null").","; - $sql.= " canedit=".$this->db->escape($this->canedit).","; $sql.= " allow_comments=".$this->db->escape($this->allow_comments).","; $sql.= " allow_spy=".$this->db->escape($this->allow_spy); @@ -435,7 +429,6 @@ class Opensurveysondage extends CommonObject $this->date_fin=''; $this->format=''; $this->mailsonde=''; - $this->canedit=0; } /** @@ -497,7 +490,6 @@ class Opensurveysondage extends CommonObject $this->titre = trim($this->titre); $this->format = trim($this->format); $this->mailsonde = ($this->mailsonde ? 1 : 0); - $this->canedit = ($this->canedit ? 1 : 0); $this->allow_comments = ($this->allow_comments ? 1 : 0); $this->allow_spy = ($this->allow_spy ? 1 : 0); $this->origin = trim($this->origin); diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index d3f1069babb..9e7bcf5f511 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -255,7 +255,6 @@ function ajouter_sondage($origin) if (is_numeric($date_fin) === false) { $date_fin = time()+15552000; } - $canedit=empty($_SESSION['caneditsondage']) ? 0 : 1; $allow_comments = empty($_SESSION['allow_comments']) ? 0 : 1; $allow_spy = empty($_SESSION['allow_spy']) ? 0 : 1; @@ -269,7 +268,6 @@ function ajouter_sondage($origin) $opensurveysondage->date_fin = $date_fin; $opensurveysondage->format = $_SESSION['formatsondage']; $opensurveysondage->mailsonde = $_SESSION['mailsonde']; - $opensurveysondage->canedit = $canedit; $opensurveysondage->allow_comments = $allow_comments; $opensurveysondage->allow_spy = $allow_spy; $opensurveysondage->origin = $origin; @@ -294,12 +292,10 @@ function ajouter_sondage($origin) unset($_SESSION["nom"]); unset($_SESSION["adresse"]); unset($_SESSION["commentaires"]); - unset($_SESSION["canedit"]); unset($_SESSION["mailsonde"]); unset($_SESSION['allow_comments']); unset($_SESSION['allow_spy']); unset($_SESSION['toutchoix']); - unset($_SESSION['caneditsondage']); unset($_SESSION['totalchoixjour']); unset($_SESSION['champdatefin']); diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index 5d10ad9792f..ccb50a899f0 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -102,7 +102,6 @@ if (isset($_POST["confirmecreation"]) || isset($_POST["confirmecreation_x"])) { //format du sondage AUTRE $_SESSION["formatsondage"]="A"; - $_SESSION["caneditsondage"]=$_SESSION["canedit"]; // Add into database ajouter_sondage($origin); diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index d90fbb680d9..4e51a91450b 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -207,7 +207,6 @@ $premierjourmois = date("N", mktime(0, 0, 0, $_SESSION["mois"], 1, $_SESSION["an //le format du sondage est DATE $_SESSION["formatsondage"] = "D"; -$_SESSION["formatcanedit"] = $_SESSION["canedit"]; //traduction de la valeur du mois if (is_integer($_SESSION["mois"]) && $_SESSION["mois"] > 0 && $_SESSION["mois"] < 13) diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index fee80200fb0..f0f99fe7659 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -36,14 +36,14 @@ $origin=GETPOST('origin','alpha'); // On teste toutes les variables pour supprimer l'ensemble des warnings PHP // On transforme en entites html les données afin éviter les failles XSS -$post_var = array('titre', 'nom', 'adresse', 'commentaires', 'canedit', 'mailsonde', 'creation_sondage_date', 'creation_sondage_date_x', 'creation_sondage_autre', 'creation_sondage_autre_x'); +$post_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde', 'creation_sondage_date', 'creation_sondage_date_x', 'creation_sondage_autre', 'creation_sondage_autre_x'); foreach ($post_var as $var) { $$var = GETPOST($var); } // On initialise egalement la session car sinon bonjour les warning :-) -$session_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde', 'canedit'); +$session_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde'); foreach ($session_var as $var) { if (isset($_SESSION[$var])) $_SESSION[$var] = null; @@ -65,9 +65,6 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET $_SESSION["adresse"] = $adresse; $_SESSION["commentaires"] = $commentaires; - unset($_SESSION["canedit"]); - $_SESSION["canedit"] = $canedit; - unset($_SESSION["mailsonde"]); if ($mailsonde !== null) { $_SESSION["mailsonde"] = true; @@ -175,10 +172,6 @@ print ''."\n"; print '
'."\n"; // Check or not -$cocheplus=''; -if ($_SESSION["canedit"]) $cocheplus="checked"; - -print ' '. $langs->trans("VotersCanModify") .'
'."\n"; if ($_SESSION["mailsonde"]) $cochemail="checked"; diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index a0cce7067ad..812555e83e5 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -389,7 +389,7 @@ if ($object->allow_spy) { print ''."\n"; // ligne d'un usager pré-authentifié - $mod_ok = ($object->canedit || (! empty($nombase) && in_array($nombase, $listofvoters))); + $mod_ok = (! empty($nombase) && in_array($nombase, $listofvoters)); // Name $nombase=str_replace("°","'",$obj->nom); From 7fccefd620f69b8dd11509e74ce8e3b6655fcff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 4 Jan 2014 20:05:18 +0100 Subject: [PATCH 30/90] Fixed code quality problem --- htdocs/opensurvey/class/opensurveysondage.class.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index b7f83470cec..92dfdd54685 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -480,6 +480,8 @@ class Opensurveysondage extends CommonObject /** * Cleans all the class variables before doing an update or an insert + * + * @return void */ private function cleanParameters() { From 45da8eb44640756650b5e8590dfd66ec8c1f9f19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 04:50:37 +0100 Subject: [PATCH 31/90] Fixed fatal error when deleting a poll --- htdocs/opensurvey/list.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 90071466dd4..b0502707669 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -45,6 +45,8 @@ $offset = $limit * $page; if ($action == 'delete_confirm') { + require_once DOL_DOCUMENT_ROOT.'/opensurvey/class/opensurveysondage.class.php'; + $db->begin(); $object=new Opensurveysondage($db); From d23a8ea788b866a2542559a4d415f181ab5ea92e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 04:50:54 +0100 Subject: [PATCH 32/90] Fixed big XSS problems in open survey module --- htdocs/opensurvey/adminstuds.php | 12 ++++++------ htdocs/opensurvey/adminstuds_preview.php | 15 +++++++-------- htdocs/opensurvey/public/studs.php | 13 ++++++------- 3 files changed, 19 insertions(+), 21 deletions(-) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/adminstuds.php index bb31acf0d99..1f107a7e1af 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/adminstuds.php @@ -193,24 +193,24 @@ $adresseadmin=$object->mail_admin; print $langs->trans("Title") .''; if ($action == 'edit') { - print ''; + print ''; } -else print $object->titre; +else print htmlentities($object->titre); print ''; // Auteur print ''; print $langs->trans("Author") .''; -print $object->nom_admin; +print htmlentities($object->nom_admin); print ''; // Description print ''.$langs->trans("Description") .''; if ($action == 'edit') { - print ''."\n"; + print ''."\n"; } -else print dol_nl2br($object->commentaires); +else print dol_nl2br(htmlentities($object->commentaires)); print ''; // EMail @@ -308,7 +308,7 @@ $comments = $object->getComments(); if ($comments) { foreach ($comments as $comment) { print '
'.img_picto('', 'delete.png').' '; - print $comment->usercomment.': '.dol_nl2br($comment->comment)."
"; + print htmlentities($comment->usercomment).': '.dol_nl2br(htmlentities($comment->comment))."
"; } } else diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 481912c5fbd..6e8210a21af 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -556,16 +556,16 @@ print '
'."\n"; //affichage du titre du sondage $titre=str_replace("\\","",$object->titre); -print ''.$titre.'
'."\n"; +print ''.htmlentities($titre).'
'."\n"; //affichage du nom de l'auteur du sondage -print $langs->trans("InitiatorOfPoll") .' : '.$object->nom_admin.'
'."\n"; +print $langs->trans("InitiatorOfPoll") .' : '.htmlentities($object->nom_admin).'
'."\n"; //affichage des commentaires du sondage if ($object->commentaires) { print '
'.$langs->trans("Description") .' :
'."\n"; - $commentaires=dol_nl2br($object->commentaires); + $commentaires=dol_nl2br(htmlentities($object->commentaires)); print $commentaires; print '
'."\n"; } @@ -695,7 +695,7 @@ if ($object->format=="D"||$object->format=="D+") for ($i = 0; isset($toutsujet[$i]); $i++) { $heures=explode('@', $toutsujet[$i]); if (isset($heures[1])) { - print ''.$heures[1].''."\n"; + print ''.htmlentities($heures[1]).''."\n"; } else { print ''."\n"; } @@ -748,8 +748,7 @@ while ($compteur < $num) print ''."\n"; // Name - $nombase=str_replace("°","'",$obj->nom); - print ''.$nombase.''."\n"; + print ''.htmlentities($obj->nom).''."\n"; // si la ligne n'est pas a changer, on affiche les données if (! $testligneamodifier) @@ -1045,9 +1044,9 @@ if ($nbofcheckbox >= 2) print '

'."\n"; if (isset($meilleurecolonne) && $compteursujet == "1") { - print " " . $langs->trans('TheBestChoice') . " : $meilleursujet " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; + print " " . $langs->trans('TheBestChoice') . " : ".htmlentities($meilleursujet)." " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; } elseif (isset($meilleurecolonne)) { - print " " . $langs->trans('TheBestChoices') . " : $meilleursujet " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; + print " " . $langs->trans('TheBestChoices') . " : ".htmlentities($meilleursujet)." " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; } print '


'."\n"; } diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 812555e83e5..f31fd86b124 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -240,16 +240,16 @@ print '
'."\n"; //affichage du titre du sondage $titre=str_replace("\\","",$object->titre); -print ''.$titre.'
'."\n"; +print ''.htmlentities($titre).'
'."\n"; //affichage du nom de l'auteur du sondage -print $langs->trans("InitiatorOfPoll") .' : '.$object->nom_admin.'
'."\n"; +print $langs->trans("InitiatorOfPoll") .' : '.htmlentities($object->nom_admin).'
'."\n"; //affichage des commentaires du sondage if ($object->commentaires) { print '
'.$langs->trans("Description") .' :
'."\n"; - $commentaires=dol_nl2br($object->commentaires); + $commentaires=dol_nl2br(htmlentities($object->commentaires)); print $commentaires; print '
'."\n"; } @@ -339,7 +339,7 @@ if ($object->format=="D"||$object->format=="D+") for ($i=0; isset($toutsujet[$i]); $i++) { $heures=explode('@',$toutsujet[$i]); if (isset($heures[1])) { - print ''.$heures[1].''."\n"; + print ''.htmlentities($heures[1]).''."\n"; } else { print ''."\n"; } @@ -392,8 +392,7 @@ if ($object->allow_spy) { $mod_ok = (! empty($nombase) && in_array($nombase, $listofvoters)); // Name - $nombase=str_replace("°","'",$obj->nom); - print ''.$nombase.''."\n"; + print ''.htmlentities($obj->nom).''."\n"; // si la ligne n'est pas a changer, on affiche les données if (! $testligneamodifier) @@ -691,7 +690,7 @@ if ($comments) foreach ($comments as $obj) { print '
'; if (in_array($obj->usercomment, $listofvoters)) print ' '.img_picto('', 'delete.png').' '; - print $obj->usercomment.' : '.dol_nl2br($obj->comment)."
"; + print htmlentities($obj->usercomment).' : '.dol_nl2br(htmlentities($obj->comment))."
"; } } From dd8d8e8e4224b7a2f81aef19730a670ec7cc11ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 04:59:15 +0100 Subject: [PATCH 33/90] Removed unused translation strings --- htdocs/langs/ar_SA/opensurvey.lang | 1 - htdocs/langs/bg_BG/opensurvey.lang | 1 - htdocs/langs/ca_ES/opensurvey.lang | 1 - htdocs/langs/cs_CZ/opensurvey.lang | 1 - htdocs/langs/da_DK/opensurvey.lang | 1 - htdocs/langs/de_DE/opensurvey.lang | 1 - htdocs/langs/el_GR/opensurvey.lang | 1 - htdocs/langs/en_US/opensurvey.lang | 1 - htdocs/langs/es_ES/opensurvey.lang | 1 - htdocs/langs/et_EE/opensurvey.lang | 1 - htdocs/langs/fa_IR/opensurvey.lang | 1 - htdocs/langs/fi_FI/opensurvey.lang | 1 - htdocs/langs/fr_FR/opensurvey.lang | 1 - htdocs/langs/he_IL/opensurvey.lang | 1 - htdocs/langs/hu_HU/opensurvey.lang | 1 - htdocs/langs/is_IS/opensurvey.lang | 1 - htdocs/langs/it_IT/opensurvey.lang | 1 - htdocs/langs/ja_JP/opensurvey.lang | 1 - htdocs/langs/ko_KR/opensurvey.lang | 1 - htdocs/langs/lv_LV/opensurvey.lang | 1 - htdocs/langs/nb_NO/opensurvey.lang | 1 - htdocs/langs/nl_NL/opensurvey.lang | 1 - htdocs/langs/pl_PL/opensurvey.lang | 1 - htdocs/langs/pt_BR/opensurvey.lang | 1 - htdocs/langs/pt_PT/opensurvey.lang | 1 - htdocs/langs/ro_RO/opensurvey.lang | 1 - htdocs/langs/ru_RU/opensurvey.lang | 1 - htdocs/langs/sk_SK/opensurvey.lang | 1 - htdocs/langs/sl_SI/opensurvey.lang | 1 - htdocs/langs/sv_SE/opensurvey.lang | 1 - htdocs/langs/tr_TR/opensurvey.lang | 1 - htdocs/langs/uz_UZ/opensurvey.lang | 1 - htdocs/langs/vi_VN/opensurvey.lang | 1 - htdocs/langs/zh_CN/opensurvey.lang | 1 - htdocs/langs/zh_TW/opensurvey.lang | 1 - 35 files changed, 35 deletions(-) diff --git a/htdocs/langs/ar_SA/opensurvey.lang b/htdocs/langs/ar_SA/opensurvey.lang index b51aaef6ac1..2b6ee6afeee 100644 --- a/htdocs/langs/ar_SA/opensurvey.lang +++ b/htdocs/langs/ar_SA/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/bg_BG/opensurvey.lang b/htdocs/langs/bg_BG/opensurvey.lang index 2c7ca69a593..27ba95a817a 100644 --- a/htdocs/langs/bg_BG/opensurvey.lang +++ b/htdocs/langs/bg_BG/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/ca_ES/opensurvey.lang b/htdocs/langs/ca_ES/opensurvey.lang index 5efed00a277..d45c99ca2b9 100644 --- a/htdocs/langs/ca_ES/opensurvey.lang +++ b/htdocs/langs/ca_ES/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Crear enquesta PollTitle=Títol de l'enquesta OpenSurveyYourName=El seu nom OpenSurveyYourEMail=La seva adreça de correu electrònic -VotersCanModify=Els votants poden modificar el vot d'altres ToReceiveEMailForEachVote=Per rebre un email per cada vot TypeDate=Tipus de data TypeClassic=Tipus estándar diff --git a/htdocs/langs/cs_CZ/opensurvey.lang b/htdocs/langs/cs_CZ/opensurvey.lang index e7f5271a367..90922d793d7 100644 --- a/htdocs/langs/cs_CZ/opensurvey.lang +++ b/htdocs/langs/cs_CZ/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Vytvoření ankety PollTitle=Anketa titul OpenSurveyYourName=Vaše jméno OpenSurveyYourEMail=Vaše e-mailová adresa -VotersCanModify=Voliči mohou změnit hlas ostatních ToReceiveEMailForEachVote=Chcete-li obdržet e-mail pro každé hlasování TypeDate=Zadejte datum TypeClassic=Typ standardní diff --git a/htdocs/langs/da_DK/opensurvey.lang b/htdocs/langs/da_DK/opensurvey.lang index c4433d302a4..dae592158b3 100644 --- a/htdocs/langs/da_DK/opensurvey.lang +++ b/htdocs/langs/da_DK/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/de_DE/opensurvey.lang b/htdocs/langs/de_DE/opensurvey.lang index cea800aa7ad..6501ba2f820 100644 --- a/htdocs/langs/de_DE/opensurvey.lang +++ b/htdocs/langs/de_DE/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Abstimmung erstellen PollTitle=Abstimmungstitel OpenSurveyYourName=Ihr Name OpenSurveyYourEMail=Ihre E-Mail-Adresse -VotersCanModify=Wähler können Stimmen von Anderen verändern ToReceiveEMailForEachVote=EMail für jede Stimme erhalten TypeDate=Typ Datum TypeClassic=Typ Standard diff --git a/htdocs/langs/el_GR/opensurvey.lang b/htdocs/langs/el_GR/opensurvey.lang index c07d6c55970..f495fb5f677 100644 --- a/htdocs/langs/el_GR/opensurvey.lang +++ b/htdocs/langs/el_GR/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Δημιουργία δημοσκόπησης PollTitle=Τίτλος δημοσκόπησης OpenSurveyYourName=Το όνομά σας OpenSurveyYourEMail=Η διεύθυνση email σας -VotersCanModify=Οι ψηφοφόροι μπορούν να τροποποιήσουν την ψήφο των άλλων ToReceiveEMailForEachVote=Να λαμβάνετε ένα μήνυμα ηλεκτρονικού ταχυδρομείου για κάθε ψηφοφορία TypeDate=Ημερομηνία TypeClassic=Πρότυπο diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 8125589d105..f29dade011c 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Create poll PollTitle=Poll title OpenSurveyYourName=Your name OpenSurveyYourEMail=Your email address -VotersCanModify=Voters can modify vote of others ToReceiveEMailForEachVote=To receive an email for each vote TypeDate=Type date TypeClassic=Type standard diff --git a/htdocs/langs/es_ES/opensurvey.lang b/htdocs/langs/es_ES/opensurvey.lang index 454fcbd45b4..5bc9b379690 100644 --- a/htdocs/langs/es_ES/opensurvey.lang +++ b/htdocs/langs/es_ES/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Crear encuesta PollTitle=Título de la encuesta OpenSurveyYourName=Su nombre OpenSurveyYourEMail=Su dirección de correo electrónico -VotersCanModify=Los votantes pueden modificar el voto de otros ToReceiveEMailForEachVote=Para recibir un email por cada voto TypeDate=Tipo fecha TypeClassic=Tipo estándar diff --git a/htdocs/langs/et_EE/opensurvey.lang b/htdocs/langs/et_EE/opensurvey.lang index 3d7177305e1..f1751801423 100644 --- a/htdocs/langs/et_EE/opensurvey.lang +++ b/htdocs/langs/et_EE/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Loo küsitlus PollTitle=Küsitluse pealkiri OpenSurveyYourName=Sinu nimi OpenSurveyYourEMail=Sinu e-posti aadress -VotersCanModify=Hääletajad saavad teiste hääli muuta ToReceiveEMailForEachVote=Iga hääle kohta saadetakse e-kiri TypeDate=Liik: kuupäev TypeClassic=Liik: standardne diff --git a/htdocs/langs/fa_IR/opensurvey.lang b/htdocs/langs/fa_IR/opensurvey.lang index b51aaef6ac1..2b6ee6afeee 100644 --- a/htdocs/langs/fa_IR/opensurvey.lang +++ b/htdocs/langs/fa_IR/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/fi_FI/opensurvey.lang b/htdocs/langs/fi_FI/opensurvey.lang index ef9cf6c9d78..a18e50a8c41 100644 --- a/htdocs/langs/fi_FI/opensurvey.lang +++ b/htdocs/langs/fi_FI/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/fr_FR/opensurvey.lang b/htdocs/langs/fr_FR/opensurvey.lang index 19565c52265..69e6bd8caa5 100644 --- a/htdocs/langs/fr_FR/opensurvey.lang +++ b/htdocs/langs/fr_FR/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Créer sondage PollTitle=Titre sondage OpenSurveyYourName=Votre nom OpenSurveyYourEMail=Votre adresse email -VotersCanModify=Les votants peuvent modifier les votes des autres ToReceiveEMailForEachVote=Pour recevoir un email à chaque vote TypeDate=Type date TypeClassic=Type classique diff --git a/htdocs/langs/he_IL/opensurvey.lang b/htdocs/langs/he_IL/opensurvey.lang index 409a43f09cf..ae138fd831a 100644 --- a/htdocs/langs/he_IL/opensurvey.lang +++ b/htdocs/langs/he_IL/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/hu_HU/opensurvey.lang b/htdocs/langs/hu_HU/opensurvey.lang index 83389798df4..be7af7bacd3 100644 --- a/htdocs/langs/hu_HU/opensurvey.lang +++ b/htdocs/langs/hu_HU/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/is_IS/opensurvey.lang b/htdocs/langs/is_IS/opensurvey.lang index 42b395a7616..6fe17b81714 100644 --- a/htdocs/langs/is_IS/opensurvey.lang +++ b/htdocs/langs/is_IS/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/it_IT/opensurvey.lang b/htdocs/langs/it_IT/opensurvey.lang index aa587bc00fb..79172d479fd 100644 --- a/htdocs/langs/it_IT/opensurvey.lang +++ b/htdocs/langs/it_IT/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Crea sondaggio PollTitle=Titolo del sondaggio OpenSurveyYourName=Il tuo nome OpenSurveyYourEMail=Il tuo indirizzo email -VotersCanModify=I votanti possono modificare il voto degli altri ToReceiveEMailForEachVote=Per ricevere un'email per ogni voto TypeDate=Digita data TypeClassic=Tipo standard diff --git a/htdocs/langs/ja_JP/opensurvey.lang b/htdocs/langs/ja_JP/opensurvey.lang index bc15d390aed..83f887b5226 100644 --- a/htdocs/langs/ja_JP/opensurvey.lang +++ b/htdocs/langs/ja_JP/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/ko_KR/opensurvey.lang b/htdocs/langs/ko_KR/opensurvey.lang index 409a43f09cf..ae138fd831a 100644 --- a/htdocs/langs/ko_KR/opensurvey.lang +++ b/htdocs/langs/ko_KR/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/lv_LV/opensurvey.lang b/htdocs/langs/lv_LV/opensurvey.lang index d50ec464b14..f45fe2ba7cb 100644 --- a/htdocs/langs/lv_LV/opensurvey.lang +++ b/htdocs/langs/lv_LV/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Izveidot aptauju PollTitle=Aptauja virsraksts OpenSurveyYourName=Jūsu vārds OpenSurveyYourEMail=Jūsu e-pasta adrese -VotersCanModify=Vēlētāji var mainīt balsojumu par citiem ToReceiveEMailForEachVote=Lai saņemtu e-pastu par katru balsojumu TypeDate=Tipa datums TypeClassic=Tipa standarts diff --git a/htdocs/langs/nb_NO/opensurvey.lang b/htdocs/langs/nb_NO/opensurvey.lang index 6f5416b45ec..89cd1c48130 100644 --- a/htdocs/langs/nb_NO/opensurvey.lang +++ b/htdocs/langs/nb_NO/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/nl_NL/opensurvey.lang b/htdocs/langs/nl_NL/opensurvey.lang index 324cacea4dc..e11f3c97315 100644 --- a/htdocs/langs/nl_NL/opensurvey.lang +++ b/htdocs/langs/nl_NL/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/pl_PL/opensurvey.lang b/htdocs/langs/pl_PL/opensurvey.lang index 34c13419d06..f50f750ea1a 100644 --- a/htdocs/langs/pl_PL/opensurvey.lang +++ b/htdocs/langs/pl_PL/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/pt_BR/opensurvey.lang b/htdocs/langs/pt_BR/opensurvey.lang index 8dcae1a6640..5a92414f588 100644 --- a/htdocs/langs/pt_BR/opensurvey.lang +++ b/htdocs/langs/pt_BR/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Criar uma enquete PollTitle=Titulo enquete OpenSurveyYourName=Seu nome OpenSurveyYourEMail=Seu endereço e-mail -VotersCanModify=Votantes podem modificar voto de outros ToReceiveEMailForEachVote=Para receber um e-mail por cada voto TypeDate=Tipo data TypeClassic=Tipo estandard diff --git a/htdocs/langs/pt_PT/opensurvey.lang b/htdocs/langs/pt_PT/opensurvey.lang index 214d6b2f581..f2078e5b3ee 100644 --- a/htdocs/langs/pt_PT/opensurvey.lang +++ b/htdocs/langs/pt_PT/opensurvey.lang @@ -11,7 +11,6 @@ AddComment=Adicionar comentário # PollTitle=Poll title OpenSurveyYourName=O seu nome OpenSurveyYourEMail=O seu endereço de email -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote TypeDate=Tipo de data # TypeClassic=Type standard diff --git a/htdocs/langs/ro_RO/opensurvey.lang b/htdocs/langs/ro_RO/opensurvey.lang index c3a83fe6e7a..2d2ee60b7c7 100644 --- a/htdocs/langs/ro_RO/opensurvey.lang +++ b/htdocs/langs/ro_RO/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Creaţi sondaj PollTitle=Titlu sondaj OpenSurveyYourName=Numele dvs. OpenSurveyYourEMail=Adresa dvs de email -VotersCanModify=Votanţii pot modifica zotul celorlarţi ToReceiveEMailForEachVote=Primirea unui email pentru fiecare vot TypeDate=Tip dată TypeClassic=Tip standard diff --git a/htdocs/langs/ru_RU/opensurvey.lang b/htdocs/langs/ru_RU/opensurvey.lang index 2124efd63ce..6c1313da6e5 100644 --- a/htdocs/langs/ru_RU/opensurvey.lang +++ b/htdocs/langs/ru_RU/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/sk_SK/opensurvey.lang b/htdocs/langs/sk_SK/opensurvey.lang index fe26c643c55..e652d947091 100644 --- a/htdocs/langs/sk_SK/opensurvey.lang +++ b/htdocs/langs/sk_SK/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Vytvorenie ankety PollTitle=Anketa titul OpenSurveyYourName=Vaše meno OpenSurveyYourEMail=Vaša e-mailová adresa -VotersCanModify=Voliči môžu zmeniť hlas ostatných ToReceiveEMailForEachVote=Ak chcete dostať e-mail pre každé hlasovanie TypeDate=Zadajte dátum TypeClassic=Typ štandardné diff --git a/htdocs/langs/sl_SI/opensurvey.lang b/htdocs/langs/sl_SI/opensurvey.lang index a985d34ebba..e23feea5e1d 100644 --- a/htdocs/langs/sl_SI/opensurvey.lang +++ b/htdocs/langs/sl_SI/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/sv_SE/opensurvey.lang b/htdocs/langs/sv_SE/opensurvey.lang index 982dddf9b53..f6d87a57ca0 100644 --- a/htdocs/langs/sv_SE/opensurvey.lang +++ b/htdocs/langs/sv_SE/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/tr_TR/opensurvey.lang b/htdocs/langs/tr_TR/opensurvey.lang index e16a96fb10b..0ea8a37e208 100644 --- a/htdocs/langs/tr_TR/opensurvey.lang +++ b/htdocs/langs/tr_TR/opensurvey.lang @@ -11,7 +11,6 @@ CreatePoll=Anket oluştur PollTitle=Anket başlığı OpenSurveyYourName=Adınız OpenSurveyYourEMail=Eposta adresiniz -VotersCanModify=Oy kullananlar başkalarının oylarını değiştirebilir ToReceiveEMailForEachVote=Her oy için bir eposta almak için TypeDate=Tarih türü TypeClassic=Standart tür diff --git a/htdocs/langs/uz_UZ/opensurvey.lang b/htdocs/langs/uz_UZ/opensurvey.lang index 409a43f09cf..ae138fd831a 100644 --- a/htdocs/langs/uz_UZ/opensurvey.lang +++ b/htdocs/langs/uz_UZ/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/vi_VN/opensurvey.lang b/htdocs/langs/vi_VN/opensurvey.lang index 409a43f09cf..ae138fd831a 100644 --- a/htdocs/langs/vi_VN/opensurvey.lang +++ b/htdocs/langs/vi_VN/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/zh_CN/opensurvey.lang b/htdocs/langs/zh_CN/opensurvey.lang index e48fcc63432..fb5a33eb567 100644 --- a/htdocs/langs/zh_CN/opensurvey.lang +++ b/htdocs/langs/zh_CN/opensurvey.lang @@ -11,7 +11,6 @@ NewSurvey=新的调查 # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard diff --git a/htdocs/langs/zh_TW/opensurvey.lang b/htdocs/langs/zh_TW/opensurvey.lang index 5c35deb6004..2ba8e9fba39 100644 --- a/htdocs/langs/zh_TW/opensurvey.lang +++ b/htdocs/langs/zh_TW/opensurvey.lang @@ -11,7 +11,6 @@ # PollTitle=Poll title # OpenSurveyYourName=Your name # OpenSurveyYourEMail=Your email address -# VotersCanModify=Voters can modify vote of others # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard From 89c6aa2d87cb1446e41f3c9b7767d283c6c600d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 05:04:41 +0100 Subject: [PATCH 34/90] Removed unused/unuseful injection checks on open survey creation --- htdocs/langs/en_US/opensurvey.lang | 1 - htdocs/opensurvey/public/choix_autre.php | 7 +------ htdocs/opensurvey/public/create_survey.php | 7 +------ 3 files changed, 2 insertions(+), 13 deletions(-) diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index f29dade011c..82126d16ef8 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -73,6 +73,5 @@ PublicLinkToCreateSurvey=Public link to allow everybody to create a survey ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation ErrorOpenSurveyOneChoice=Enter at least one choice ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY -ErrorOpenSurveyInvalidChars=Characters \" < and > are not permitted MoreChoices=Enter more choices for the voters AfterCreationInfo=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
Then, you will receive quickly an email contening the link to your poll for sending it to the voters. \ No newline at end of file diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index ccb50a899f0..4785a2b6e28 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -42,7 +42,6 @@ $origin=GETPOST('origin','alpha'); */ // Set session vars -$erreur_injection = false; if (isset($_SESSION["nbrecases"])) { for ($i = 0; $i < $_SESSION["nbrecases"]; $i++) { if (isset($_POST["choix"][$i])) { @@ -188,11 +187,7 @@ if ($testdate === false) { print "
" . $langs->trans("ErrorOpenSurveyDateFormat") . "

"."\n"; } -if ($erreur_injection) { - print "" . $langs->trans("ErrorOpenSurveyInvalidChars") . "

\n"; -} - -if ((isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"])) && !$erreur && !$erreur_injection) { +if ((isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"])) && !$erreur) { //demande de la date de fin du sondage print '
'."\n"; print '
'."\n"; diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index f0f99fe7659..505adbee1d3 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -51,9 +51,6 @@ foreach ($session_var as $var) // On initialise également les autres variables $erreur_adresse = false; -$erreur_injection_titre = false; -$erreur_injection_nom = false; -$erreur_injection_commentaires = false; $cocheplus = ''; $cochemail = ''; @@ -86,9 +83,7 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET if (! isValidEmail($adresse)) $erreur_adresse = true; - //var_dump($titre.' - '.$nom.' - '.$adresse.' - '.!$erreur_adresse.' - '.! $erreur_injection_titre.' - '.! $erreur_injection_commentaires.' - '.! $erreur_injection_nom.' - '.$creation_sondage_date.' - '.$creation_sondage_autre); exit; - - if ($titre && $nom && $adresse && !$erreur_adresse && ! $erreur_injection_titre && ! $erreur_injection_commentaires && ! $erreur_injection_nom) + if ($titre && $nom && $adresse && !$erreur_adresse) { if (! empty($creation_sondage_date)) { From a8a2613c4a58e4f553c3a31340196b11278f3b70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 05:25:32 +0100 Subject: [PATCH 35/90] =?UTF-8?q?Date=20combo=20selector=20wasn=E2=80=99t?= =?UTF-8?q?=20translating=20month=20names?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/opensurvey/adminstuds_preview.php | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 6e8210a21af..9307add0f94 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -481,6 +481,9 @@ if (GETPOST('ajoutsujet')) } else { + require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; + + $formother=new FormOther($db); //ajout d'une date avec creneau horaire //print _("You can add a new scheduling date to your poll.
If you just want to add a new hour to an existant date, put the same date and choose a new hour.") .'

'."\n"; print $langs->trans("AddADate") .' :

'."\n"; @@ -491,22 +494,12 @@ if (GETPOST('ajoutsujet')) } print ''."\n"; - print ''."\n"; + print $formother->select_month('', 'nouveaumois', 1); + + print ' '; + + print $formother->select_year('', 'nouvelleannee', 1, 0, 5, 0, 1); - - print ''."\n"; print '

'. $langs->trans("AddStartHour") .' :

'."\n"; print ''; @@ -542,8 +560,9 @@ if (GETPOST('ajoutsujet')) exit; } - -print $langs->trans("PollAdminDesc",img_picto('','cancel.png@opensurvey'),img_picto('','add-16.png@opensurvey')).'

'; +if ($user->rights->opensurvey->write) { + print $langs->trans("PollAdminDesc",img_picto('','cancel.png@opensurvey'),img_picto('','add-16.png@opensurvey')).'

'; +} print '
'."\n"; @@ -586,8 +605,11 @@ print ''."\n"; print ''."\n"; //boucle pour l'affichage des boutons de suppression de colonne -for ($i = 0; isset($toutsujet[$i]); $i++) { - print ''."\n"; +if ($user->rights->opensurvey->write) { + for ($i = 0; isset($toutsujet[$i]); $i++) { + + print ''."\n"; + } } print ''."\n"; @@ -626,7 +648,11 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + if ($user->rights->opensurvey->write) { + print ''; + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + } + print ''."\n"; print ''."\n"; print ''."\n"; @@ -652,7 +678,10 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + if ($user->rights->opensurvey->write) { + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + } + print ''."\n"; print ''."\n"; print ''."\n"; @@ -676,7 +705,9 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + if ($user->rights->opensurvey->write) { + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + } print ''."\n"; //affichage des horaires @@ -694,7 +725,10 @@ if ($object->format=="D"||$object->format=="D+") } } - print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + if ($user->rights->opensurvey->write) { + print 'id_sondage.'">'.$langs->trans("Add").''."\n"; + } + print ''."\n"; } } @@ -737,11 +771,14 @@ while ($compteur < $num) $ensemblereponses = $obj->reponses; - print ''."\n"; - print ''."\n"; - + print ''."\n"; + + if ($user->rights->opensurvey->write) { + print ''."\n"; + } + // Name - print ''.htmlentities($obj->nom).''."\n"; + print ''.htmlentities($obj->nom).''."\n"; // si la ligne n'est pas a changer, on affiche les données if (! $testligneamodifier) @@ -851,7 +888,7 @@ while ($compteur < $num) } // Button edit at end of line - if ($compteur != $ligneamodifier) + if ($compteur != $ligneamodifier && ($user->rights->opensurvey->write)) { print ''."\n"; } diff --git a/htdocs/opensurvey/index.php b/htdocs/opensurvey/index.php index a7f88631dd8..47beea912c0 100644 --- a/htdocs/opensurvey/index.php +++ b/htdocs/opensurvey/index.php @@ -25,7 +25,8 @@ require_once('../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); - +// Security check +if (!$user->rights->opensurvey->read) accessforbidden(); /* * View diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 1ecd93265de..8450b82ea3e 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -26,6 +26,9 @@ require_once('../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); +// Security check +if (!$user->rights->opensurvey->read) accessforbidden(); + $action=GETPOST('action'); $id=GETPOST('id'); $numsondage= $id; From 426ccb4056356bf9783221150fde96d9e80e5f68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 06:25:47 +0100 Subject: [PATCH 38/90] Fixed another XSS in public poll vote page --- htdocs/opensurvey/public/studs.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index f31fd86b124..55763007643 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -669,9 +669,9 @@ if ($nbofcheckbox >= 2) print '

'."\n"; if (isset($meilleurecolonne) && $compteursujet == "1") { - print ' ' . $langs->trans('TheBestChoice') . ": $meilleursujet " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; + print ' ' . $langs->trans('TheBestChoice') . ": ".htmlentities($meilleursujet)." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; } elseif (isset($meilleurecolonne)) { - print ' ' . $langs->trans('TheBestChoices') . ": $meilleursujet " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; + print ' ' . $langs->trans('TheBestChoices') . ": ".htmlentities($meilleursujet)." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; } print '


'."\n"; From 67077338a051ae3da8a9ad2d92c77eadca45e4ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 06:37:08 +0100 Subject: [PATCH 39/90] Improved translation of opensurvey module --- htdocs/langs/en_US/errors.lang | 3 ++- htdocs/opensurvey/adminstuds_preview.php | 19 +++---------------- htdocs/opensurvey/public/studs.php | 2 +- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index 8eb265013c5..0fec31bebdd 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -37,6 +37,7 @@ ErrorBadParameters=Bad parameters ErrorBadValueForParameter=Wrong value '%s' for parameter incorrect '%s' ErrorBadImageFormat=Image file has not a supported format ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! ErrorFailedToWriteInDir=Failed to write in directory %s ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) ErrorUserCannotBeDelete=User can not be deleted. May be it is associated on Dolibarr entities. @@ -63,7 +64,7 @@ ErrorNoValueForRadioType=Please fill value for radio list ErrorBadFormatValueList=The list value cannot have more than one come : %s, but need at least one: llave,valores ErrorFieldCanNotContainSpecialCharacters=Field %s must not contains special characters. ErrorNoAccountancyModuleLoaded=No accountancy module activated -ErrorExportDuplicateProfil=This profil name already exists for this export set. +ErrorExportDuplicateProfil=This profile name already exists for this export set. ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "statut not started" if field "done by" is also filled. diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index d103f75fddb..1bbf65ff457 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -503,7 +503,6 @@ if (GETPOST('ajoutsujet')) $formother=new FormOther($db); //ajout d'une date avec creneau horaire - //print _("You can add a new scheduling date to your poll.
If you just want to add a new hour to an existant date, put the same date and choose a new hour.") .'

'."\n"; print $langs->trans("AddADate") .' :

'."\n"; print ''; print '
'."\n"; -print '
'."\n"; // Start to show survey result print ''."\n"; diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 9e7bcf5f511..7c98ed0e15c 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -42,7 +42,7 @@ function opensurvey_prepare_head(Opensurveysondage $object) { $h++; $head[1][0] = 'adminstuds_preview.php?id='.$object->id_sondage; - $head[1][1] = $langs->trans("SurveyResults").'/'.$langs->trans("Preview"); + $head[1][1] = $langs->trans("SurveyResults"); $head[1][2] = 'preview'; $h++; From b699133357510a8cc20e5c296a570a0f8c1dc9f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 06:50:56 +0100 Subject: [PATCH 42/90] Restricting deletion of polls in poll list --- htdocs/opensurvey/list.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 8450b82ea3e..de53147a66e 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -48,6 +48,9 @@ $offset = $limit * $page; if ($action == 'delete_confirm') { + // Security check + if (!$user->rights->opensurvey->write) accessforbidden(); + require_once DOL_DOCUMENT_ROOT.'/opensurvey/class/opensurveysondage.class.php'; $db->begin(); @@ -131,7 +134,13 @@ while ($i < min($num,$limit)) print ''; print''."\n"; - print ''."\n"; + print ''."\n"; print ''."\n"; $i++; From abf0ec1d6a61c4267ed51c263902139c4f40141a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 06:59:38 +0100 Subject: [PATCH 43/90] Removed unnecesary form ID --- htdocs/opensurvey/adminstuds_preview.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index a9e791228e6..8e330caace6 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -475,8 +475,7 @@ if (GETPOST('ajoutsujet')) if (!$user->rights->opensurvey->write) accessforbidden(); //on recupere les données et les sujets du sondage - print ''."\n"; - print ''; + print ''."\n"; print ''; print '
'."\n"; @@ -562,8 +561,7 @@ if ($user->rights->opensurvey->write) { $nbcolonnes=substr_count($object->sujet,',')+1; -print ''."\n"; -print ''; +print ''."\n"; print '
'."\n"; From b2c0463cd95abb1a2405f734726918d2596f34ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 07:03:51 +0100 Subject: [PATCH 44/90] Corrected little problem with XSS fix --- htdocs/opensurvey/adminstuds_preview.php | 6 +++--- htdocs/opensurvey/public/studs.php | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 8e330caace6..4cdb4329f9b 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -1017,7 +1017,7 @@ for ($i = 0; $i < $nbcolonnes; $i++) { else { $tmps=explode('@',$toutsujet[$i]); - $meilleursujet .= $tmps[0]; + $meilleursujet .= htmlentities($tmps[0]); } $compteursujet++; @@ -1034,9 +1034,9 @@ if ($nbofcheckbox >= 2) print '

'."\n"; if (isset($meilleurecolonne) && $compteursujet == "1") { - print " " . $langs->trans('TheBestChoice') . " : ".htmlentities($meilleursujet)." " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; + print " " . $langs->trans('TheBestChoice') . " : ".$meilleursujet." " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; } elseif (isset($meilleurecolonne)) { - print " " . $langs->trans('TheBestChoices') . " : ".htmlentities($meilleursujet)." " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; + print " " . $langs->trans('TheBestChoices') . " : ".$meilleursujet." " . $langs->trans("with") . " $meilleurecolonne " . $vote_str . ".\n"; } print '


'."\n"; } diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 1cdcefd6c2b..0620c2070b4 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -651,7 +651,7 @@ for ($i = 0; $i < $nbcolonnes; $i++) { else { $tmps=explode('@',$toutsujet[$i]); - $meilleursujet .= $tmps[0]; + $meilleursujet .= htmlentities($tmps[0]); } $compteursujet++; @@ -669,9 +669,9 @@ if ($nbofcheckbox >= 2) print '

'."\n"; if (isset($meilleurecolonne) && $compteursujet == "1") { - print ' ' . $langs->trans('TheBestChoice') . ": ".htmlentities($meilleursujet)." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; + print ' ' . $langs->trans('TheBestChoice') . ": ".$meilleursujet." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; } elseif (isset($meilleurecolonne)) { - print ' ' . $langs->trans('TheBestChoices') . ": ".htmlentities($meilleursujet)." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; + print ' ' . $langs->trans('TheBestChoices') . ": ".$meilleursujet." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; } print '


'."\n"; From 08560cbc5ff500998830e8e90671bb2e5a08abac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 07:05:04 +0100 Subject: [PATCH 45/90] Little spacing improvement --- htdocs/opensurvey/adminstuds_preview.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/adminstuds_preview.php index 4cdb4329f9b..fba4e679b4c 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/adminstuds_preview.php @@ -556,7 +556,7 @@ if (GETPOST('ajoutsujet')) } if ($user->rights->opensurvey->write) { - print $langs->trans("PollAdminDesc",img_picto('','cancel.png@opensurvey'),img_picto('','add-16.png@opensurvey')).'

'; + print '
'.$langs->trans("PollAdminDesc",img_picto('','cancel.png@opensurvey'),img_picto('','add-16.png@opensurvey')).'
'; } $nbcolonnes=substr_count($object->sujet,',')+1; From cf092834cdc2a51d9e32d098dc325714473ee5df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 07:08:37 +0100 Subject: [PATCH 46/90] Renamed some file names from french to english --- htdocs/opensurvey/{adminstuds.php => card.php} | 4 ++-- htdocs/opensurvey/fonctions.php | 8 ++++---- htdocs/opensurvey/list.php | 2 +- htdocs/opensurvey/{adminstuds_preview.php => results.php} | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) rename htdocs/opensurvey/{adminstuds.php => card.php} (97%) rename htdocs/opensurvey/{adminstuds_preview.php => results.php} (99%) diff --git a/htdocs/opensurvey/adminstuds.php b/htdocs/opensurvey/card.php similarity index 97% rename from htdocs/opensurvey/adminstuds.php rename to htdocs/opensurvey/card.php index 4f93bdff8d5..48a537b25e9 100644 --- a/htdocs/opensurvey/adminstuds.php +++ b/htdocs/opensurvey/card.php @@ -17,7 +17,7 @@ */ /** - * \file htdocs/opensurvey/adminstuds.php + * \file htdocs/opensurvey/card.php * \ingroup opensurvey * \brief Page to edit survey */ @@ -327,7 +327,7 @@ $comments = $object->getComments(); if ($comments) { foreach ($comments as $comment) { if ($user->rights->opensurvey->write) { - print ' '.img_picto('', 'delete.png').' '; + print ' '.img_picto('', 'delete.png').' '; } print htmlentities($comment->usercomment).': '.dol_nl2br(htmlentities($comment->comment))."
"; diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 7c98ed0e15c..5c001030e4e 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -36,12 +36,12 @@ function opensurvey_prepare_head(Opensurveysondage $object) { $h = 0; $head = array(); - $head[0][0] = 'adminstuds.php?id='.$object->id_sondage; + $head[0][0] = 'card.php?id='.$object->id_sondage; $head[0][1] = $langs->trans("Card"); $head[0][2] = 'general'; $h++; - $head[1][0] = 'adminstuds_preview.php?id='.$object->id_sondage; + $head[1][0] = 'results.php?id='.$object->id_sondage; $head[1][1] = $langs->trans("SurveyResults"); $head[1][2] = 'preview'; $h++; @@ -195,7 +195,7 @@ function issetAndNoEmpty($name, $tableau = null) function getUrlSondage($id, $admin = false) { if ($admin === true) { - $url = get_server_name().'adminstuds_preview.php?id='.$id; + $url = get_server_name().'results.php?id='.$id; } else { $url = get_server_name().'/public/studs.php?sondage='.$id; } @@ -275,7 +275,7 @@ function ajouter_sondage($origin) $opensurveysondage->create(null); - if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/adminstuds_preview.php',1).'?id='.$sondage; + if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/results.php',1).'?id='.$sondage; else { // Define $urlwithroot diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index de53147a66e..73442d3cf6d 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -122,7 +122,7 @@ while ($i < min($num,$limit)) $var=!$var; print '
'; print ''."\n"; print ''; - $affichageerreurfindeligne=false; - //affichage des cases d'horaires for ($j=0;$j<$_SESSION["nbrecaseshoraires"];$j++) { //si on voit une erreur, le fond de la case est rouge if (isset($errheure[$i][$j]) && $errheure[$i][$j]) { print ''."\n"; - $affichageerreurfindeligne=true; } else { //sinon la case est vide normalement - if (issetAndNoEmpty('horaires'.$i, $_SESSION) === false || issetAndNoEmpty($j, $_SESSION['horaires'.$i]) === false) { - if (issetAndNoEmpty('horaires'.$i, $_SESSION) === true) { - $_SESSION["horaires$i"][$j] = ''; - } else { - $_SESSION["horaires$i"] = array(); - $_SESSION["horaires$i"][$j] = ''; - } - } - + print ''."\n"; } } - - if ($affichageerreurfindeligne) { - print ''."\n"; - } - print ''."\n"; } @@ -550,27 +536,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) && (!issetAndNoEmpty('choixheur print ''."\n"; print ''."\n"; print''."\n"; - print ''."\n"; - print '
'.$nbuser.''.img_picto('', 'delete.png').''; + + if ($user->rights->opensurvey->write) { + print ''.img_picto('', 'delete.png').''; + } + + print '
'; - print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; + print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; print ''.htmlentities($obj->titre).''; $type=($obj->format=='A' || $obj->format=='A+')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); diff --git a/htdocs/opensurvey/adminstuds_preview.php b/htdocs/opensurvey/results.php similarity index 99% rename from htdocs/opensurvey/adminstuds_preview.php rename to htdocs/opensurvey/results.php index fba4e679b4c..eadb4d26f17 100644 --- a/htdocs/opensurvey/adminstuds_preview.php +++ b/htdocs/opensurvey/results.php @@ -17,7 +17,7 @@ */ /** - * \file htdocs/opensurvey/adminstuds_preview.php + * \file htdocs/opensurvey/results.php * \ingroup opensurvey * \brief Page to preview votes of a survey */ From f8268c60d4049c02e9db06f091941686b1d3d428 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 07:16:36 +0100 Subject: [PATCH 47/90] Removed OpenSurvey legend from public poll voting page --- htdocs/opensurvey/fonctions.php | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 5c001030e4e..5106242963a 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -103,28 +103,22 @@ function llxFooterSurvey() */ function showlogo() { - global $user, $conf, $langs, $mysoc; + global $conf, $mysoc; // Print logo - $urllogo=DOL_URL_ROOT.'/theme/login_logo.png'; - - if (! empty($mysoc->logo_small) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_small)) - { - $urllogo=DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=companylogo&file='.urlencode('thumbs/'.$mysoc->logo_small); + if ($mysoc->logo) { + if (file_exists($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_small)) { + $urllogo=DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=companylogo&file=thumbs/'.urlencode($mysoc->logo_small); + } } - elseif (! empty($mysoc->logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$mysoc->logo)) - { - $urllogo=DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=companylogo&file='.urlencode($mysoc->logo); - $width=128; - } - elseif (is_readable(DOL_DOCUMENT_ROOT.'/theme/dolibarr_logo.png')) + + if (!$urllogo && (is_readable(DOL_DOCUMENT_ROOT.'/theme/dolibarr_logo.png'))) { $urllogo=DOL_URL_ROOT.'/theme/dolibarr_logo.png'; } - print '
'; - print 'Logo
'; - print ''.$langs->trans("OpenSurvey").''; - print '

'; + + print '
Logo
'; + print '
'; } From fba3c630506e09edf2356211a2e6567d58d32676 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 07:22:45 +0100 Subject: [PATCH 48/90] Starting to make survey creation a user-only access page --- htdocs/langs/ar_SA/opensurvey.lang | 3 --- htdocs/langs/bg_BG/opensurvey.lang | 3 --- htdocs/langs/ca_ES/opensurvey.lang | 3 --- htdocs/langs/cs_CZ/opensurvey.lang | 3 --- htdocs/langs/da_DK/opensurvey.lang | 3 --- htdocs/langs/de_DE/opensurvey.lang | 3 --- htdocs/langs/el_GR/opensurvey.lang | 3 --- htdocs/langs/en_US/opensurvey.lang | 3 --- htdocs/langs/es_ES/opensurvey.lang | 3 --- htdocs/langs/et_EE/opensurvey.lang | 3 --- htdocs/langs/fa_IR/opensurvey.lang | 3 --- htdocs/langs/fi_FI/opensurvey.lang | 3 --- htdocs/langs/fr_FR/opensurvey.lang | 3 --- htdocs/langs/he_IL/opensurvey.lang | 3 --- htdocs/langs/hu_HU/opensurvey.lang | 3 --- htdocs/langs/is_IS/opensurvey.lang | 3 --- htdocs/langs/it_IT/opensurvey.lang | 3 --- htdocs/langs/ja_JP/opensurvey.lang | 3 --- htdocs/langs/ko_KR/opensurvey.lang | 3 --- htdocs/langs/lv_LV/opensurvey.lang | 3 --- htdocs/langs/nb_NO/opensurvey.lang | 3 --- htdocs/langs/nl_NL/opensurvey.lang | 3 --- htdocs/langs/pl_PL/opensurvey.lang | 3 --- htdocs/langs/pt_BR/opensurvey.lang | 3 --- htdocs/langs/pt_PT/opensurvey.lang | 3 --- htdocs/langs/ro_RO/opensurvey.lang | 3 --- htdocs/langs/ru_RU/opensurvey.lang | 3 --- htdocs/langs/sk_SK/opensurvey.lang | 3 --- htdocs/langs/sl_SI/opensurvey.lang | 3 --- htdocs/langs/sv_SE/opensurvey.lang | 3 --- htdocs/langs/tr_TR/opensurvey.lang | 3 --- htdocs/langs/uz_UZ/opensurvey.lang | 3 --- htdocs/langs/vi_VN/opensurvey.lang | 3 --- htdocs/langs/zh_CN/opensurvey.lang | 3 --- htdocs/langs/zh_TW/opensurvey.lang | 3 --- htdocs/opensurvey/index.php | 15 --------------- htdocs/opensurvey/public/index.php | 7 ++----- 37 files changed, 2 insertions(+), 125 deletions(-) diff --git a/htdocs/langs/ar_SA/opensurvey.lang b/htdocs/langs/ar_SA/opensurvey.lang index 2b6ee6afeee..52216944ea0 100644 --- a/htdocs/langs/ar_SA/opensurvey.lang +++ b/htdocs/langs/ar_SA/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=الحد من التاريخ # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/bg_BG/opensurvey.lang b/htdocs/langs/bg_BG/opensurvey.lang index 27ba95a817a..99c7d3b791c 100644 --- a/htdocs/langs/bg_BG/opensurvey.lang +++ b/htdocs/langs/bg_BG/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Крайната дата # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/ca_ES/opensurvey.lang b/htdocs/langs/ca_ES/opensurvey.lang index d45c99ca2b9..d4a965d7bbc 100644 --- a/htdocs/langs/ca_ES/opensurvey.lang +++ b/htdocs/langs/ca_ES/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tipus de data TypeClassic=Tipus estándar YouAreInPollCreateArea=Està a la secció de creació d'enquestes FieldMandatory=Camp obligatori -OpenSurveyDesc=Servei online per planificar una cita o elaborar una enquesta de forma fàcil i ràpida -OpenSurveyNoRegistration=SSense registre requerit. OpenSurveyStep2=Seleccioneu les dates entre els dies lliures (verds). Els dies seleccionats són de color blau. Pot seleccionar un dia prèviament seleccionat fent clic de nou en ell RemoveAllDays=Eliminar tots els dies CopyHoursOfFirstDay=Copia hores del primer dia @@ -65,4 +63,3 @@ NoCommentYet=Cap comentari ha estat publicat per a aquesta enquesta CanEditVotes=Podeu canviar el vot d'altres SelectDayDesc=Per a cada dia seleccionat, pot triar, o no, les hores de reunió en el següent format:
- buit,
- "8h", "8H" o "8:00" per proporcionar una hora d'inici de la reunió,
- "8-11", "8h-11h", "8H-11H" o "8:00-11:00" per proporcionar una hora d'inici i de fi de la reunió,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" per el mateix però amb minuts. BackToCurrentMonth=Tornar al mes actual -PublicLinkToCreateSurvey=Enllaç públic que permet a qualsevol crear una enquesta diff --git a/htdocs/langs/cs_CZ/opensurvey.lang b/htdocs/langs/cs_CZ/opensurvey.lang index 90922d793d7..07fd01d95c8 100644 --- a/htdocs/langs/cs_CZ/opensurvey.lang +++ b/htdocs/langs/cs_CZ/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Zadejte datum TypeClassic=Typ standardní YouAreInPollCreateArea=Nacházíte se v sekci pro vytvoření hlasování FieldMandatory=Pole povinné -OpenSurveyDesc=Online služby naplánovat rendez-vous nebo udělat průzkum snadno a rychle. -OpenSurveyNoRegistration=Ne nutná registrace. OpenSurveyStep2=Zvolte termín Vašeho amoung volné dny (zelená). Vybrané dny jsou v modré barvě. Můžete zrušit výběr den předem zvolenou opětovným kliknutím na něj RemoveAllDays=Odstraňte všechny dny CopyHoursOfFirstDay=Kopírování hodin prvního dne @@ -65,4 +63,3 @@ NoCommentYet=Žádné komentáře byly zveřejněny na tuto anketu ještě CanEditVotes=Může změnit hlas ostatních SelectDayDesc=Pro každý vybraný den, můžete si vybrat, zda se mají splnit hodin v následujícím formátu:
- Prázdné,
- "8h", "8H" nebo "8:00" dát schůzku v úvodní hodinu,
- "8-11", "8h-11h", "8H-11H" nebo "08:00-11:00" dát schůzku je začátek a konec hodiny,
- "8h15-11h15", "8H15-11h15" nebo "08:15-11:15" to samé, ale v minutách. BackToCurrentMonth=Zpět na aktuální měsíc -PublicLinkToCreateSurvey=Veřejné odkaz dovolit každý vytvořit průzkum diff --git a/htdocs/langs/da_DK/opensurvey.lang b/htdocs/langs/da_DK/opensurvey.lang index dae592158b3..bec2838bf6b 100644 --- a/htdocs/langs/da_DK/opensurvey.lang +++ b/htdocs/langs/da_DK/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Limit dato # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/de_DE/opensurvey.lang b/htdocs/langs/de_DE/opensurvey.lang index 6501ba2f820..e74d4af1b1a 100644 --- a/htdocs/langs/de_DE/opensurvey.lang +++ b/htdocs/langs/de_DE/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Typ Datum TypeClassic=Typ Standard YouAreInPollCreateArea=Du bist im Abschnitt "Abstimmung erstellen" FieldMandatory=Feld zwingend nötig -OpenSurveyDesc=Online-Service um eine Verabredung oder eine Umfrage schnell und einfach zu erstellen -OpenSurveyNoRegistration=Keine Registrierung benötigt. OpenSurveyStep2=Wähle Deine Daten unter den freien Tagen (grün). Die ausgewählten Tage erscheinen blau. Du kannst einen bereits ausgewählten Tag durch anklicken wieder abwählen. RemoveAllDays=Alle Tage entfernen CopyHoursOfFirstDay=Stunden vom ersten Tag kopieren @@ -65,4 +63,3 @@ NoCommentYet=Bisher gibt es keine Kommentare für diese Abstimmung CanEditVotes=Kann Stimmen von Anderen verändern SelectDayDesc=Für jeden ausgewählen Tag kann man die Besprechungszeiten im folgenden Format auswählen:
- leer,
- "8h", "8H" oder "8:00" für eine Besprechungs-Startzeit,
- "8-11", "8h-11h", "8H-11H" oder "8:00-11:00" für eine Besprechungs-Start und -Endzeit,
- "8h15-11h15", "8H15-11H15" oder "8:15-11:15" für das Gleiche aber mit Minuten. BackToCurrentMonth=Zurück zum aktuellen Monat -PublicLinkToCreateSurvey=Öffentlicher Link mit dem Jeder eine Umfrage erstellen kann diff --git a/htdocs/langs/el_GR/opensurvey.lang b/htdocs/langs/el_GR/opensurvey.lang index f495fb5f677..4b7a6ff7a65 100644 --- a/htdocs/langs/el_GR/opensurvey.lang +++ b/htdocs/langs/el_GR/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Ημερομηνία TypeClassic=Πρότυπο YouAreInPollCreateArea=Βρίσκεστε στο τμήμα δημιουργίας δημοσκόπηση FieldMandatory=Υποχρεωτικό πεδίο -OpenSurveyDesc=On-line υπηρεσία για να προγραμματίσετε ένα ραντεβού ή να κάνετε μια έρευνα γρήγορα και εύκολα. -OpenSurveyNoRegistration=Δεν απαιτείται εγγραφή. OpenSurveyStep2=Επιλέξτε τις ημερομηνίες σας ανάμεσα στις ελεύθερες ημέρες (πράσινο). Οι επιλεγμένες ημέρες είναι σε μπλε χρώμα. Μπορείτε να ακυρώσετε μια μέρα προηγουμένως επιλεγεί κάνοντας κλικ ξανά πάνω του RemoveAllDays=Αφαιρέστε όλες τις ημέρες CopyHoursOfFirstDay=Αντιγραφή ωρών της πρώτης ημέρας @@ -65,4 +63,3 @@ NoCommentYet=Δεν έχουν αναρτηθεί σχόλια για αυτή CanEditVotes=Μπορεί να αλλάξει την ψήφο των άλλων SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. BackToCurrentMonth=Πίσω στον τρέχοντα μήνα -PublicLinkToCreateSurvey=Κοινόχρηστους σύνδεσμος για να επιτρέπει σε όλους να δημιουργούν μια έρευνα diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 82126d16ef8..7cdadc308a0 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Type date TypeClassic=Type standard YouAreInPollCreateArea=You are in the poll creation section FieldMandatory=Field mandatory -OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -OpenSurveyNoRegistration=No registration required. OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it RemoveAllDays=Remove all days CopyHoursOfFirstDay=Copy hours of first day @@ -69,7 +67,6 @@ CanComment=Voters can comment in the poll CanSeeOthersVote=Voters can see other people's vote SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. BackToCurrentMonth=Back to current month -PublicLinkToCreateSurvey=Public link to allow everybody to create a survey ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation ErrorOpenSurveyOneChoice=Enter at least one choice ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY diff --git a/htdocs/langs/es_ES/opensurvey.lang b/htdocs/langs/es_ES/opensurvey.lang index 5bc9b379690..af28b1e0b2b 100644 --- a/htdocs/langs/es_ES/opensurvey.lang +++ b/htdocs/langs/es_ES/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tipo fecha TypeClassic=Tipo estándar YouAreInPollCreateArea=Está en la sección de creación de encuestas FieldMandatory=Campo obligatorio -OpenSurveyDesc=Servicio online para planificar una cita o elaborar una encuesta de forma fácil y rápida. -OpenSurveyNoRegistration=Sin registro requerido. OpenSurveyStep2=Seleccione sus fechas de entre los días libres (verdes). Los días seleccionados son de color azul. Puede seleccionar un día previamente seleccionado haciendo click de nuevo en él RemoveAllDays=Eliminar todos los días CopyHoursOfFirstDay=Copiar horas del primer día @@ -65,4 +63,3 @@ NoCommentYet=Ningún comentario ha sido publicado todavía para esta encuesta CanEditVotes=Puede cambiar el voto de otros SelectDayDesc=Para cada día seleccionado, puede elegir, o no, las horas de reunión en el siguiente formato:
- vacío,
- "8h", "8H" o "8:00" para proporcionar una hora de inicio de la reunión,
- "8-11", "8h-11h", "8H-11H" o "8:00-11:00" para proporcionar una hora de inicio y de fin de la reunión,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" para lo mismo pero con minutos. BackToCurrentMonth=Volver al mes actual -PublicLinkToCreateSurvey=Enlace público que permite a cualquiera crear una encuesta diff --git a/htdocs/langs/et_EE/opensurvey.lang b/htdocs/langs/et_EE/opensurvey.lang index f1751801423..bcab21d0795 100644 --- a/htdocs/langs/et_EE/opensurvey.lang +++ b/htdocs/langs/et_EE/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Liik: kuupäev TypeClassic=Liik: standardne YouAreInPollCreateArea=Oled küsitluse loomise sektsioonis FieldMandatory=Kohustuslik väli -OpenSurveyDesc=Online teenus kohtumise planeerimiseks või kiiresti ja lihtsalt uuringu läbi viimiseks. -OpenSurveyNoRegistration=Registreerimine pole nõutud. OpenSurveyStep2=Vali kuupäevad vabade päevade seas (rohelised). Valitud päevad on märgitud sinisega. Eelnevalt valitud päevalt saab valiku maha võtta sellel klõpsates RemoveAllDays=Eemalda kõik päevad CopyHoursOfFirstDay=Kopeeri esimese päeva tunnid @@ -65,4 +63,3 @@ NoCommentYet=Sellele küsitlusel ei ole veel ühtki kommentaari CanEditVotes=Saab teiste hääli muuta SelectDayDesc=Iga valitud päeva kohta võid, aga ei pea, lisada sobivaid kellaaegasid järgnevas formaadis::
- tühi,
- "8h", "8H" või "8:00" kohtumise alustamise kellaajaks,
- "8-11", "8h-11h", "8H-11H" või "8:00-11:00" kohtumise alustamise ja lõpu kellaajaks,
- "8h15-11h15", "8H15-11H15" või "8:15-11:15" on sama, mis eelmine, aga minutitega. BackToCurrentMonth=Tagasi praegusesse kuusse -PublicLinkToCreateSurvey=Avalik link, mis võimaldab igaühel uuringut luua diff --git a/htdocs/langs/fa_IR/opensurvey.lang b/htdocs/langs/fa_IR/opensurvey.lang index 2b6ee6afeee..52216944ea0 100644 --- a/htdocs/langs/fa_IR/opensurvey.lang +++ b/htdocs/langs/fa_IR/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=الحد من التاريخ # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/fi_FI/opensurvey.lang b/htdocs/langs/fi_FI/opensurvey.lang index a18e50a8c41..105db3b15ee 100644 --- a/htdocs/langs/fi_FI/opensurvey.lang +++ b/htdocs/langs/fi_FI/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Raja-päivämäärä # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/fr_FR/opensurvey.lang b/htdocs/langs/fr_FR/opensurvey.lang index 69e6bd8caa5..2e282b58041 100644 --- a/htdocs/langs/fr_FR/opensurvey.lang +++ b/htdocs/langs/fr_FR/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Type date TypeClassic=Type classique YouAreInPollCreateArea=Vous êtes dans l'espace de création de sondage FieldMandatory=Champ obligatoire -OpenSurveyDesc=Service en ligne permettant de planifier un rendez-vous ou réaliser un sondage rapidement et simplement. -OpenSurveyNoRegistration=Aucune inscription préalable n'est nécessaire. OpenSurveyStep2=Sélectionner les dates parmi les jours libres (en vert). Les jours sélectionné sont bleus. Vous pouvez désélectionner un jour en cliquant à nouveau dessus. RemoveAllDays=Efface tous les jours CopyHoursOfFirstDay=Copier heures du premier jour @@ -65,4 +63,3 @@ NoCommentYet=Pas de commentaires laissés pour le moment sur ce sondage CanEditVotes=Modification des votes des autres autorisés SelectDayDesc=Pour chaque jour, vous pouvez choisir, ou pas, les heures au format suivant :
- laisser vide,
- "8h", "8H" ou "8:00" pour définir uniquement une heure de début,
- "8-11", "8h-11h", "8H-11H" ou "8:00-11:00" pour définir une heure de début et de fin,
- "8h15-11h15", "8H15-11H15" ou "8:15-11:15" pour définir une heure de début et fin avec précision sur les minutes. BackToCurrentMonth=Retour au mois en cours -PublicLinkToCreateSurvey=Lien publique pour permettre à tout le monde de créer un sondage diff --git a/htdocs/langs/he_IL/opensurvey.lang b/htdocs/langs/he_IL/opensurvey.lang index ae138fd831a..4f892f47a4d 100644 --- a/htdocs/langs/he_IL/opensurvey.lang +++ b/htdocs/langs/he_IL/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/hu_HU/opensurvey.lang b/htdocs/langs/hu_HU/opensurvey.lang index be7af7bacd3..b854e201153 100644 --- a/htdocs/langs/hu_HU/opensurvey.lang +++ b/htdocs/langs/hu_HU/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Dátum korlást # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/is_IS/opensurvey.lang b/htdocs/langs/is_IS/opensurvey.lang index 6fe17b81714..36d821869c4 100644 --- a/htdocs/langs/is_IS/opensurvey.lang +++ b/htdocs/langs/is_IS/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Takmarka dagsetningu # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/it_IT/opensurvey.lang b/htdocs/langs/it_IT/opensurvey.lang index 79172d479fd..868a65108d0 100644 --- a/htdocs/langs/it_IT/opensurvey.lang +++ b/htdocs/langs/it_IT/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Digita data TypeClassic=Tipo standard YouAreInPollCreateArea=Sei nella sezione di creazione sondaggi FieldMandatory=Campo obbligatorio -OpenSurveyDesc=Servizio online per pianificare incontri o fare indagini velocemente e con facilità. -OpenSurveyNoRegistration=La registrazione non è necessaria OpenSurveyStep2=Scegli le date fra i giorni liberi (in verde). I giorni selezionati sono in blu. Puoi deselezionare un giorno precedentemente selezionato cliccandoci di nuovo sopra. RemoveAllDays=Cancella tutti i giorni CopyHoursOfFirstDay=Copia le ore del primo giorno @@ -65,4 +63,3 @@ NoCommentYet=Non è ancora stato inserito alcun commento su questo sondaggio CanEditVotes=Puoi cambiare il voto degli altri SelectDayDesc=Per ogni giorno selezionato, puoi scegliere o no, le ore di riunione nel formato seguente:
-vuoto,
-"8h", "8H" o "8:00"per definire un orario di inizio,
-"8-11", "8h-11h", "8H-11H" o "8:00-11:00" per fornire un orario di inizio e fine,
- "8h15-11h15", "8H15-11H15" o "8:15-11:15"la stessa cosa ma con i minuti. BackToCurrentMonth=Torna al mese in corso -PublicLinkToCreateSurvey=Link pubblico per permettere a tutti di creare un'indagine diff --git a/htdocs/langs/ja_JP/opensurvey.lang b/htdocs/langs/ja_JP/opensurvey.lang index 83f887b5226..664f9717222 100644 --- a/htdocs/langs/ja_JP/opensurvey.lang +++ b/htdocs/langs/ja_JP/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=日付を制限する # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/ko_KR/opensurvey.lang b/htdocs/langs/ko_KR/opensurvey.lang index ae138fd831a..4f892f47a4d 100644 --- a/htdocs/langs/ko_KR/opensurvey.lang +++ b/htdocs/langs/ko_KR/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/lv_LV/opensurvey.lang b/htdocs/langs/lv_LV/opensurvey.lang index f45fe2ba7cb..5480c7947a4 100644 --- a/htdocs/langs/lv_LV/opensurvey.lang +++ b/htdocs/langs/lv_LV/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tipa datums TypeClassic=Tipa standarts YouAreInPollCreateArea=Jūs esat pieres daļā radīšanas sadaļā FieldMandatory=Lauks obligāts -OpenSurveyDesc=Tiešsaistes pakalpojumu, lai plānotu Rendez-vous vai veikt aptauju ātri un viegli. -OpenSurveyNoRegistration=Nav nepieciešama reģistrācija. OpenSurveyStep2=Izvēlieties datumus amoung bezmaksas dienas (zaļā krāsā). Izvēlētās dienas ir zilā krāsā. Jūs varat noņemsiet dienu iepriekš izvēlēto noklikšķinot vēlreiz uz tā RemoveAllDays=Noņemt visas dienas CopyHoursOfFirstDay=Kopēt stundas pirmajā dienā @@ -65,4 +63,3 @@ NoCommentYet=Nav komentāri ir ievietojis šajā aptaujā vēl CanEditVotes=Var mainīt balsojumu citiem SelectDayDesc=Attiecībā uz katru izvēlēto dienu, jūs varat izvēlēties, vai ne, tiekoties stundas šādā formātā:
- Tukša,
- "8h", "8H" vai "08:00", lai sniegtu tikšanos s starta stundu,
- "8-11", "8h-11h", "8H-11H" vai "8:00-11:00", lai sniegtu sanāksmi sākuma un beigu stundu,
- "8h15-11h15", "8H15-11H15" vai "8:15-11:15" par to pašu, bet ar minūtes. BackToCurrentMonth=Atpakaļ uz tekošā mēneša -PublicLinkToCreateSurvey=Sabiedrības saites, lai ļautu ikvienam izveidot aptauju diff --git a/htdocs/langs/nb_NO/opensurvey.lang b/htdocs/langs/nb_NO/opensurvey.lang index 89cd1c48130..e7da7887e8b 100644 --- a/htdocs/langs/nb_NO/opensurvey.lang +++ b/htdocs/langs/nb_NO/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Limit date # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/nl_NL/opensurvey.lang b/htdocs/langs/nl_NL/opensurvey.lang index e11f3c97315..f7dbffb030f 100644 --- a/htdocs/langs/nl_NL/opensurvey.lang +++ b/htdocs/langs/nl_NL/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Termijn # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/pl_PL/opensurvey.lang b/htdocs/langs/pl_PL/opensurvey.lang index f50f750ea1a..7db10839fb8 100644 --- a/htdocs/langs/pl_PL/opensurvey.lang +++ b/htdocs/langs/pl_PL/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Limit daty # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/pt_BR/opensurvey.lang b/htdocs/langs/pt_BR/opensurvey.lang index 5a92414f588..adade08db90 100644 --- a/htdocs/langs/pt_BR/opensurvey.lang +++ b/htdocs/langs/pt_BR/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tipo data TypeClassic=Tipo estandard YouAreInPollCreateArea=Voce esta na seçao de criaçao da enquete FieldMandatory=Campo obrigatorio -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -OpenSurveyNoRegistration=Nao e preciso se registrar. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it RemoveAllDays=Remover todos os dias CopyHoursOfFirstDay=Copiar horarios do primeiro dia @@ -65,4 +63,3 @@ ExpireDate=Data Límite # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/pt_PT/opensurvey.lang b/htdocs/langs/pt_PT/opensurvey.lang index f2078e5b3ee..27959f709ff 100644 --- a/htdocs/langs/pt_PT/opensurvey.lang +++ b/htdocs/langs/pt_PT/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tipo de data # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ votes=Voto(s) # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/ro_RO/opensurvey.lang b/htdocs/langs/ro_RO/opensurvey.lang index 2d2ee60b7c7..c68eb13e392 100644 --- a/htdocs/langs/ro_RO/opensurvey.lang +++ b/htdocs/langs/ro_RO/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tip dată TypeClassic=Tip standard YouAreInPollCreateArea=Sunteţi în secţiunea creare sondaj FieldMandatory=Câmp obligatoriu -OpenSurveyDesc=Serviciul online pentru planificarea unei întâlniri sau de a face un sondaj rapid și ușor. -OpenSurveyNoRegistration=Nu necesită înregistrare. OpenSurveyStep2=Selectati datele între zilele libere (verde). Zilele selectate sunt în albastru. Puteți deselecta o zi selectată anterior, făcând clic din nou pe ea RemoveAllDays=Elimină toate zilele CopyHoursOfFirstDay=Copiază orelele ale primei zile @@ -65,4 +63,3 @@ NoCommentYet=Niciun comentariu nu a fost postat încă pentru acest sondaj CanEditVotes=Puteţi schimba votul altora SelectDayDesc=Pentru fiecare zi selectată, puteți alege, sau nu, orele întălnirii în următorul format:
- gol,
- "8h", "8H" or "8:00" pentru a da ora de start a întâlnirii,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" pentru a da startul și ora finală,
- ""8h15-11h15", "8H15-11H15" or "8:15-11:15" pentru același lucru, dar cu minute. BackToCurrentMonth=Înapoi la luna curentă -PublicLinkToCreateSurvey=Link public pentru a permite oricărui să creeze un sondaj diff --git a/htdocs/langs/ru_RU/opensurvey.lang b/htdocs/langs/ru_RU/opensurvey.lang index 6c1313da6e5..b4f0db0ae60 100644 --- a/htdocs/langs/ru_RU/opensurvey.lang +++ b/htdocs/langs/ru_RU/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Дата лимита # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/sk_SK/opensurvey.lang b/htdocs/langs/sk_SK/opensurvey.lang index e652d947091..76cb7af9870 100644 --- a/htdocs/langs/sk_SK/opensurvey.lang +++ b/htdocs/langs/sk_SK/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Zadajte dátum TypeClassic=Typ štandardné YouAreInPollCreateArea=Nachádzate sa v sekcii pre vytvorenie hlasovanie FieldMandatory=Pole povinné -OpenSurveyDesc=Online služby naplánovať rendez-vous alebo urobiť prieskum ľahko a rýchlo. -OpenSurveyNoRegistration=Nie nutná registrácia. OpenSurveyStep2=Zvoľte termín Vášho amoung voľné dni (zelená). Vybrané dni sú v modrej farbe. Môžete zrušiť výber deň vopred zvolenú opätovným kliknutím na neho RemoveAllDays=Odstráňte všetky dni CopyHoursOfFirstDay=Kopírovanie hodín prvého dňa @@ -65,4 +63,3 @@ NoCommentYet=Žiadne komentáre boli zverejnené na túto anketu ešte CanEditVotes=Môže zmeniť hlas ostatných SelectDayDesc=Pre každý vybraný deň, môžete si vybrať, či sa majú splniť hodín v nasledujúcom formáte:
- Prázdne,
- "8h", "8H" alebo "8:00" dať schôdzku v úvodnej hodinu,
- "8-11", "8h-11h", "8H-11H" alebo "08:00-11:00" dať schôdzku je začiatok a koniec hodiny,
- "8h15-11h15", "8H15-11h15" alebo "08:15-11:15" to isté, ale v minútach. BackToCurrentMonth=Späť na aktuálny mesiac -PublicLinkToCreateSurvey=Verejné odkaz dovoliť každý vytvoriť prieskum diff --git a/htdocs/langs/sl_SI/opensurvey.lang b/htdocs/langs/sl_SI/opensurvey.lang index e23feea5e1d..060de054e3d 100644 --- a/htdocs/langs/sl_SI/opensurvey.lang +++ b/htdocs/langs/sl_SI/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Omejitveni datum # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/sv_SE/opensurvey.lang b/htdocs/langs/sv_SE/opensurvey.lang index f6d87a57ca0..e7fb2806092 100644 --- a/htdocs/langs/sv_SE/opensurvey.lang +++ b/htdocs/langs/sv_SE/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=Begränsa datum # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/tr_TR/opensurvey.lang b/htdocs/langs/tr_TR/opensurvey.lang index 0ea8a37e208..398025bcc77 100644 --- a/htdocs/langs/tr_TR/opensurvey.lang +++ b/htdocs/langs/tr_TR/opensurvey.lang @@ -16,8 +16,6 @@ TypeDate=Tarih türü TypeClassic=Standart tür YouAreInPollCreateArea=Anket oluşturma bölümündesiniz FieldMandatory=Zorunlu alan -OpenSurveyDesc=Bir randevu planlamak ya da hızlıca ve kolayca bir araştırma yapmak için çevrimiçi servis. -OpenSurveyNoRegistration=Kayıt gerekmez. OpenSurveyStep2=Boş günler arasından tarihlerinizi seçin (yeşil). Seçilen günler mavidir. Daha önceden seçtiğiniz günü tıklayarak seçimi kaldırabilirsiniz RemoveAllDays=Bütün günleri kaldır CopyHoursOfFirstDay=İlk günün saatlerini kopyala @@ -65,4 +63,3 @@ NoCommentYet=Bu anket için henüz gönderilen açıklama yok CanEditVotes=Başkalarını oyu değiştirilebilir SelectDayDesc=Seçilen her gün için, toplantı saatlerini aşağıdaki biçimde seçebilir ya da seçmeyebilirsiniz :
- boş,
- "8h", "8H" or "8:00" toplantı başlama saatleri için,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" ttoplantı başlama ve bitiş saatleri için,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" aynı şeyler için ama dakika olarak. BackToCurrentMonth=Geçerli aya geri dön -PublicLinkToCreateSurvey=Herkesin bir araştırma oluşturmasını sağlayan genel bağlantı diff --git a/htdocs/langs/uz_UZ/opensurvey.lang b/htdocs/langs/uz_UZ/opensurvey.lang index ae138fd831a..4f892f47a4d 100644 --- a/htdocs/langs/uz_UZ/opensurvey.lang +++ b/htdocs/langs/uz_UZ/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/vi_VN/opensurvey.lang b/htdocs/langs/vi_VN/opensurvey.lang index ae138fd831a..4f892f47a4d 100644 --- a/htdocs/langs/vi_VN/opensurvey.lang +++ b/htdocs/langs/vi_VN/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/zh_CN/opensurvey.lang b/htdocs/langs/zh_CN/opensurvey.lang index fb5a33eb567..b40b30c5dc1 100644 --- a/htdocs/langs/zh_CN/opensurvey.lang +++ b/htdocs/langs/zh_CN/opensurvey.lang @@ -16,8 +16,6 @@ NewSurvey=新的调查 # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ SurveyResults=结果 # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/langs/zh_TW/opensurvey.lang b/htdocs/langs/zh_TW/opensurvey.lang index 2ba8e9fba39..d7bce2f9596 100644 --- a/htdocs/langs/zh_TW/opensurvey.lang +++ b/htdocs/langs/zh_TW/opensurvey.lang @@ -16,8 +16,6 @@ # TypeClassic=Type standard # YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory -# OpenSurveyDesc=Online service to plan a rendez-vous or do a survey quickly and easily. -# OpenSurveyNoRegistration=No registration required. # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days # CopyHoursOfFirstDay=Copy hours of first day @@ -65,4 +63,3 @@ ExpireDate=極限日期 # CanEditVotes=Can change vote of others # SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format :
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. # BackToCurrentMonth=Back to current month -# PublicLinkToCreateSurvey=Public link to allow everybody to create a survey diff --git a/htdocs/opensurvey/index.php b/htdocs/opensurvey/index.php index 47beea912c0..0f809f8e52f 100644 --- a/htdocs/opensurvey/index.php +++ b/htdocs/opensurvey/index.php @@ -50,21 +50,6 @@ print_fiche_titre($langs->trans("OpenSurveyArea")); echo $langs->trans("NoSurveysInDatabase",$nbsondages).'

'."\n"; - -// Link -print img_picto('','object_globe.png').' '.$langs->trans("PublicLinkToCreateSurvey").':
'; - -// Define $urlwithroot -$urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); -$urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file -//$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current - -$url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/index.php',1); -$urllink=''.$url.''; -print $urllink; - - - llxFooter(); $db->close(); diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/public/index.php index 95519ba7278..f78a40fa351 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/public/index.php @@ -47,11 +47,8 @@ llxHeaderSurvey($langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); print '
- -
-

'.$langs->trans("OpenSurveyDesc").' '.$langs->trans("OpenSurveyNoRegistration").'

-

'; -print $langs->trans("OrganizeYourMeetingEasily").' +'; +print '

'.$langs->trans("OrganizeYourMeetingEasily").'


From c86130e81313ac5554aaff6c58e43e7967e47628 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 08:03:50 +0100 Subject: [PATCH 49/90] Fixed navigation arrows in poll card --- htdocs/opensurvey/class/opensurveysondage.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 92dfdd54685..e67591ffa61 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -202,6 +202,9 @@ class Opensurveysondage extends CommonObject $obj = $this->db->fetch_object($resql); $this->id_sondage = $obj->id_sondage; + //For compatibility + $this->ref = $this->id_sondage; + $this->commentaires = $obj->commentaires; $this->mail_admin = $obj->mail_admin; $this->nom_admin = $obj->nom_admin; From 8d966756073a158859b8c4ef8c46b99930a8e178 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 09:08:42 +0100 Subject: [PATCH 50/90] Force logged user to create surveys and applied Dolibarr style to poll creation wizard --- htdocs/core/modules/modOpenSurvey.class.php | 6 +++--- htdocs/install/mysql/migration/3.5.0-3.6.0.sql | 3 ++- .../mysql/tables/llx_opensurvey_sondage.sql | 1 - .../class/opensurveysondage.class.php | 4 ---- htdocs/opensurvey/fonctions.php | 17 ++--------------- htdocs/opensurvey/public/choix_autre.php | 14 ++++---------- htdocs/opensurvey/public/choix_date.php | 13 ++++--------- htdocs/opensurvey/public/create_survey.php | 13 ++++--------- htdocs/opensurvey/public/index.php | 8 ++------ 9 files changed, 21 insertions(+), 58 deletions(-) diff --git a/htdocs/core/modules/modOpenSurvey.class.php b/htdocs/core/modules/modOpenSurvey.class.php index cb174d2df9e..98830509bd7 100644 --- a/htdocs/core/modules/modOpenSurvey.class.php +++ b/htdocs/core/modules/modOpenSurvey.class.php @@ -157,12 +157,12 @@ class modOpenSurvey extends DolibarrModules 'titre'=>'NewSurvey', 'mainmenu'=>'opensurvey', 'leftmenu'=>'opensurvey_new', - 'url'=>'/opensurvey/public/index.php?origin=dolibarr', + 'url'=>'/opensurvey/public/index.php', 'langs'=>'opensurvey', 'position'=>210, 'enabled'=>'$conf->opensurvey->enabled', // Define condition to show or hide menu entry. Use '$conf->NewsSubmitter->enabled' if entry must be visible if module is enabled. - 'perms'=>'', - 'target'=>'_blank', + 'perms'=>'$user->rights->opensurvey->write', + 'target'=>'', 'user'=>0); $r++; diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index ffd906c0299..4d85adb9782 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -23,4 +23,5 @@ ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `survey_link_visible` ; ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `canedit` ; -ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; \ No newline at end of file +ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; +ALTER TABLE `llx_opensurvey_sondage` DROP `origin` ; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index b697b0bc4ff..ce4add9e9f5 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -26,7 +26,6 @@ CREATE TABLE llx_opensurvey_sondage ( mailsonde varchar(2) DEFAULT '0', allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, allow_spy TINYINT(1) unsigned NOT NULL DEFAULT 1, - origin VARCHAR(64), tms TIMESTAMP, sujet TEXT ) ENGINE=InnoDB; diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index e67591ffa61..5d532fead5b 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -51,7 +51,6 @@ class Opensurveysondage extends CommonObject var $format; var $mailsonde; - public $origin; public $sujet; /** @@ -108,7 +107,6 @@ class Opensurveysondage extends CommonObject $sql.= "mailsonde,"; $sql.= "allow_comments,"; $sql.= "allow_spy,"; - $sql.= "origin,"; $sql.= "sujet"; $sql.= ") VALUES ("; @@ -122,7 +120,6 @@ class Opensurveysondage extends CommonObject $sql.= " ".$this->db->escape($this->mailsonde).","; $sql.= " ".$this->db->escape($this->allow_comments).","; $sql.= " ".$this->db->escape($this->allow_spy).","; - $sql.= " '".$this->db->escape($this->origin)."',"; $sql.= " '".$this->db->escape($this->sujet)."'"; $sql.= ")"; @@ -497,7 +494,6 @@ class Opensurveysondage extends CommonObject $this->mailsonde = ($this->mailsonde ? 1 : 0); $this->allow_comments = ($this->allow_comments ? 1 : 0); $this->allow_spy = ($this->allow_spy ? 1 : 0); - $this->origin = trim($this->origin); $this->sujet = trim($this->sujet); } } diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 5106242963a..437f851d67b 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -218,7 +218,6 @@ function dol_survey_random($car) /** * Add a poll * - * @param string $origin Origin of poll creation * @return void */ function ajouter_sondage($origin) @@ -264,24 +263,10 @@ function ajouter_sondage($origin) $opensurveysondage->mailsonde = $_SESSION['mailsonde']; $opensurveysondage->allow_comments = $allow_comments; $opensurveysondage->allow_spy = $allow_spy; - $opensurveysondage->origin = $origin; $opensurveysondage->sujet = $_SESSION['toutchoix']; $opensurveysondage->create(null); - if ($origin == 'dolibarr') $urlback=dol_buildpath('/opensurvey/results.php',1).'?id='.$sondage; - else - { - // Define $urlwithroot - $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); - $urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file - //$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current - - $url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/studs.php',1).'?sondage='.$sondage; - - $urlback=$url; - } - unset($_SESSION["titre"]); unset($_SESSION["nom"]); unset($_SESSION["adresse"]); @@ -292,6 +277,8 @@ function ajouter_sondage($origin) unset($_SESSION['toutchoix']); unset($_SESSION['totalchoixjour']); unset($_SESSION['champdatefin']); + + $urlback=dol_buildpath('/opensurvey/card.php',1).'?id='.$sondage; header("Location: ".$urlback); exit(); diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index 4785a2b6e28..d28f0621f8a 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -22,8 +22,6 @@ * \brief Page to create a new survey (choice selection) */ -define("NOLOGIN",1); // This means this output page does not require to be logged. -define("NOCSRFCHECK",1); // We accept to go on this page from external web site. require_once('../../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); @@ -33,9 +31,6 @@ $erreur = false; $testdate = true; $date_selected = ''; -$origin=GETPOST('origin','alpha'); - - /* * Action @@ -103,7 +98,7 @@ if (isset($_POST["confirmecreation"]) || isset($_POST["confirmecreation_x"])) $_SESSION["formatsondage"]="A"; // Add into database - ajouter_sondage($origin); + ajouter_sondage(); } else { $_POST["fin_sondage_autre"] = 'ok'; } @@ -120,7 +115,7 @@ $form=new Form($db); $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); -llxHeaderSurvey($langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); +llxHeader('', $langs->trans("OpenSurvey"), "", '', 0, 0, $arrayofjs, $arrayofcss); if (empty($_SESSION['titre']) || empty($_SESSION['nom']) || empty($_SESSION['adresse'])) { @@ -134,9 +129,8 @@ if (empty($_SESSION['titre']) || empty($_SESSION['nom']) || empty($_SESSION['adr //On prépare les données pour les inserer dans la base print ''."\n"; -print ''; -print '
'. $langs->trans("CreatePoll")." (2 / 2)" .'
'."\n"; +print_fiche_titre($langs->trans("CreatePoll").' (2 / 2)'); print '
'."\n"; print '
'. $langs->trans("PollOnChoice") .'

'."\n"; @@ -211,7 +205,7 @@ print ''."\n"; print '


'."\n"; print '
'."\n"; -llxFooterSurvey(); +llxFooter(); $db->close(); ?> \ No newline at end of file diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index 4e51a91450b..a60d7af6ca6 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -22,15 +22,11 @@ * \brief Page to create a new survey (date selection) */ -define("NOLOGIN",1); // This means this output page does not require to be logged. -define("NOCSRFCHECK",1); // We accept to go on this page from external web site. require_once('../../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); -$origin=GETPOST('origin','alpha'); - /* * Actions @@ -63,7 +59,7 @@ if (GETPOST('confirmation') || GETPOST('confirmation_x')) else dol_print_error('','array not defined'); $_SESSION["toutchoix"]=substr("$choixdate",1); - ajouter_sondage($origin); + ajouter_sondage(); } // Reset days @@ -93,7 +89,7 @@ if (! isset($_SESSION['nom']) && ! isset($_SESSION['adresse']) && ! isset($_SESS $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); -llxHeaderSurvey($langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); +llxHeader('', $langs->trans("OpenSurvey"), "", '', 0, 0, $arrayofjs, $arrayofcss); //nombre de cases par défaut if (! isset($_SESSION["nbrecaseshoraires"])) @@ -221,9 +217,8 @@ else //Debut du formulaire et bandeaux de tete print ''."\n"; -print ''; -print '
'. $langs->trans("CreatePoll")." (2 / 2)" .'
'."\n"; +print_fiche_titre($langs->trans("CreatePoll").' (2 / 2)'); //affichage de l'aide pour les jours print '
'."\n"; @@ -594,7 +589,7 @@ print ''."\n"; print '



'."\n"; print '
'."\n"; -llxFooterSurvey(); +llxFooter(); $db->close(); ?> \ No newline at end of file diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index 505adbee1d3..850a87b9dbd 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -22,8 +22,6 @@ * \brief Page to create a new survey */ -define("NOLOGIN",1); // This means this output page does not require to be logged. -define("NOCSRFCHECK",1); // We accept to go on this page from external web site. require_once('../../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); @@ -108,21 +106,18 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); -llxHeaderSurvey($langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); - - -print '
'. $langs->trans("CreatePoll").' (1 / 2)' .'
'."\n"; +llxHeader('', $langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); +print_fiche_titre($langs->trans("CreatePoll").' (1 / 2)'); //debut du formulaire print '
'."\n"; print ''; print '
'."\n"; -print '
'. $langs->trans("YouAreInPollCreateArea") .'

'."\n"; //Affichage des différents champs textes a remplir -print ''."\n"; +print '
'."\n"; print ''."\n"; if (! $_SESSION["titre"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) @@ -201,7 +196,7 @@ print '


'."\n"; print ''."\n"; print ''."\n"; -llxFooterSurvey(); +llxFooter(); $db->close(); ?> diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/public/index.php index f78a40fa351..cc4693c76a3 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/public/index.php @@ -22,11 +22,7 @@ //if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC','1'); //if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1'); if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL','1'); -if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU','1'); // If there is no menu to show -if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML','1'); // If we don't need to load the html.form.class.php if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1'); -define("NOLOGIN",1); // This means this output page does not require to be logged. -define("NOCSRFCHECK",1); // We accept to go on this page from external web site. require_once('../../main.inc.php'); require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); @@ -43,7 +39,7 @@ $langs->load("opensurvey"); $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); -llxHeaderSurvey($langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); +llxHeader('', $langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); print '
@@ -56,7 +52,7 @@ print '

'.$langs->trans("OrganizeYourMeetingEasily").'

'; -llxFooterSurvey(); +llxFooter(); $db->close(); ?> From 4f57e8297537e66163142f2385826436cdbcd503 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 09:14:12 +0100 Subject: [PATCH 51/90] Removed odd messages --- htdocs/langs/ar_SA/opensurvey.lang | 3 --- htdocs/langs/bg_BG/opensurvey.lang | 3 --- htdocs/langs/ca_ES/opensurvey.lang | 3 --- htdocs/langs/cs_CZ/opensurvey.lang | 3 --- htdocs/langs/da_DK/opensurvey.lang | 3 --- htdocs/langs/de_DE/opensurvey.lang | 3 --- htdocs/langs/el_GR/opensurvey.lang | 3 --- htdocs/langs/en_US/opensurvey.lang | 8 +------- htdocs/langs/es_ES/opensurvey.lang | 3 --- htdocs/langs/et_EE/opensurvey.lang | 3 --- htdocs/langs/fa_IR/opensurvey.lang | 3 --- htdocs/langs/fi_FI/opensurvey.lang | 3 --- htdocs/langs/fr_FR/opensurvey.lang | 3 --- htdocs/langs/he_IL/opensurvey.lang | 3 --- htdocs/langs/hu_HU/opensurvey.lang | 3 --- htdocs/langs/is_IS/opensurvey.lang | 3 --- htdocs/langs/it_IT/opensurvey.lang | 3 --- htdocs/langs/ja_JP/opensurvey.lang | 3 --- htdocs/langs/ko_KR/opensurvey.lang | 3 --- htdocs/langs/lv_LV/opensurvey.lang | 3 --- htdocs/langs/nb_NO/opensurvey.lang | 3 --- htdocs/langs/nl_NL/opensurvey.lang | 3 --- htdocs/langs/pl_PL/opensurvey.lang | 3 --- htdocs/langs/pt_BR/opensurvey.lang | 3 --- htdocs/langs/pt_PT/opensurvey.lang | 3 --- htdocs/langs/ro_RO/opensurvey.lang | 3 --- htdocs/langs/ru_RU/opensurvey.lang | 3 --- htdocs/langs/sk_SK/opensurvey.lang | 3 --- htdocs/langs/sl_SI/opensurvey.lang | 3 --- htdocs/langs/sv_SE/opensurvey.lang | 3 --- htdocs/langs/tr_TR/opensurvey.lang | 3 --- htdocs/langs/uz_UZ/opensurvey.lang | 3 --- htdocs/langs/vi_VN/opensurvey.lang | 3 --- htdocs/langs/zh_CN/opensurvey.lang | 3 --- htdocs/langs/zh_TW/opensurvey.lang | 3 --- htdocs/opensurvey/public/choix_autre.php | 3 --- htdocs/opensurvey/public/choix_date.php | 6 ------ 37 files changed, 1 insertion(+), 118 deletions(-) diff --git a/htdocs/langs/ar_SA/opensurvey.lang b/htdocs/langs/ar_SA/opensurvey.lang index 52216944ea0..109ed7caf28 100644 --- a/htdocs/langs/ar_SA/opensurvey.lang +++ b/htdocs/langs/ar_SA/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=الحد من التاريخ # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=الحد من التاريخ # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/bg_BG/opensurvey.lang b/htdocs/langs/bg_BG/opensurvey.lang index 99c7d3b791c..0cccd93ec28 100644 --- a/htdocs/langs/bg_BG/opensurvey.lang +++ b/htdocs/langs/bg_BG/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Крайната дата # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Крайната дата # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/ca_ES/opensurvey.lang b/htdocs/langs/ca_ES/opensurvey.lang index d4a965d7bbc..e00fb8efc9d 100644 --- a/htdocs/langs/ca_ES/opensurvey.lang +++ b/htdocs/langs/ca_ES/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=La seva adreça de correu electrònic ToReceiveEMailForEachVote=Per rebre un email per cada vot TypeDate=Tipus de data TypeClassic=Tipus estándar -YouAreInPollCreateArea=Està a la secció de creació d'enquestes FieldMandatory=Camp obligatori OpenSurveyStep2=Seleccioneu les dates entre els dies lliures (verds). Els dies seleccionats són de color blau. Pot seleccionar un dia prèviament seleccionat fent clic de nou en ell RemoveAllDays=Eliminar tots els dies @@ -40,7 +39,6 @@ YesNoList=Llista (buit/sí/no) PourContreList=Llista (buit/a favor/en contra) AddNewColumn=Afegir nova columna TitleChoice=Títol de l'opció -InfoAfterCreate=Un cop hagi confirmat la creació de la seva enquesta, passareu automàticament a la pàgina de la seva enquesta.
També rebrà un email amb un enllaç a la seva enquesta per enviar als votants. ExportSpreadsheet=Exportar resultats a un full de càlcul ExpireDate=Data límit NbOfVoters=Núm. de votants @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Aquest nom ja havia estat usat per a aquesta enquesta ErrorPollDoesNotExists=Error, l'enquesta %s no existeix. OpenSurveyNothingToSetup=No hi ha una configuració específica que fer. PollWillExpire=La seva enquesta expirarà automàticament %s dies després de l'última data de la seva enquesta. -RemovalDate=Data d'eliminació AddADate=Afegir una data AddStartHour=Afegir hora d'inici AddEndHour=Afegir hora de fi diff --git a/htdocs/langs/cs_CZ/opensurvey.lang b/htdocs/langs/cs_CZ/opensurvey.lang index 07fd01d95c8..450c28d0306 100644 --- a/htdocs/langs/cs_CZ/opensurvey.lang +++ b/htdocs/langs/cs_CZ/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Vaše e-mailová adresa ToReceiveEMailForEachVote=Chcete-li obdržet e-mail pro každé hlasování TypeDate=Zadejte datum TypeClassic=Typ standardní -YouAreInPollCreateArea=Nacházíte se v sekci pro vytvoření hlasování FieldMandatory=Pole povinné OpenSurveyStep2=Zvolte termín Vašeho amoung volné dny (zelená). Vybrané dny jsou v modré barvě. Můžete zrušit výběr den předem zvolenou opětovným kliknutím na něj RemoveAllDays=Odstraňte všechny dny @@ -40,7 +39,6 @@ YesNoList=List (prázdný / ano / ne) PourContreList=List (prázdný / pro / proti) AddNewColumn=Přidat nový sloupec TitleChoice=Volba štítek -InfoAfterCreate=Poté, co jste potvrdili vytvoření vašeho hlasování, budete automaticky přesměrováni na stránku vašeho hlasování.
Také byste měli obdržet e-mail s odkazem na vaše hlasování pro odeslání do voličů. ExportSpreadsheet=Export výsledků tabulku ExpireDate=Omezit datum NbOfVoters=Nb voličů @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Tento název již byl použit při tomto hlasování ErrorPollDoesNotExists=Chyba hlasování %s neexistuje. OpenSurveyNothingToSetup=Neexistuje žádné specifické nastavení dělat. PollWillExpire=Váš průzkum skončí automaticky %s dní po posledním dni svého hlasování. -RemovalDate=Odstranění data AddADate=Přidat datum AddStartHour=Přidat začít hodinu AddEndHour=Přidat end hodinu diff --git a/htdocs/langs/da_DK/opensurvey.lang b/htdocs/langs/da_DK/opensurvey.lang index bec2838bf6b..febbb811efb 100644 --- a/htdocs/langs/da_DK/opensurvey.lang +++ b/htdocs/langs/da_DK/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Limit dato # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Limit dato # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/de_DE/opensurvey.lang b/htdocs/langs/de_DE/opensurvey.lang index e74d4af1b1a..d77dae1b03f 100644 --- a/htdocs/langs/de_DE/opensurvey.lang +++ b/htdocs/langs/de_DE/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Ihre E-Mail-Adresse ToReceiveEMailForEachVote=EMail für jede Stimme erhalten TypeDate=Typ Datum TypeClassic=Typ Standard -YouAreInPollCreateArea=Du bist im Abschnitt "Abstimmung erstellen" FieldMandatory=Feld zwingend nötig OpenSurveyStep2=Wähle Deine Daten unter den freien Tagen (grün). Die ausgewählten Tage erscheinen blau. Du kannst einen bereits ausgewählten Tag durch anklicken wieder abwählen. RemoveAllDays=Alle Tage entfernen @@ -40,7 +39,6 @@ YesNoList=Liste (leer/ja/nein) PourContreList=Liste (leer/dafür/dagegen) AddNewColumn=Neue Spalte hinzufügen TitleChoice=Beschreibung wählen -InfoAfterCreate=Nach der Bestätigungen zum Erstellen der Abstimmung wirst Du automatisch auf die Seite mit der Abstimmung weitergeleitet.
Du solltest auch ein Email mit einem Link zur Abstimmung erhalten, welches Du an die Wähler schicken kannst. ExportSpreadsheet=Exportiere Resultattabelle ExpireDate=Frist NbOfVoters=Anzahl Wähler @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Dieser Name wurde für diese Abstimmung schon benutzt ErrorPollDoesNotExists=Fehler, Umfrage %s existiert nicht. OpenSurveyNothingToSetup=Es gibt nichts Spezielles zu konfigurieren. PollWillExpire=Deine Abstimmung endet automatisch nach %s Tagen nach dem letzten Abstimmungstag. -RemovalDate=Entferndatum AddADate=Datum hinzufügen AddStartHour=Startzeit hinzufügen AddEndHour=Endzeit hinzufügen diff --git a/htdocs/langs/el_GR/opensurvey.lang b/htdocs/langs/el_GR/opensurvey.lang index 4b7a6ff7a65..0ffe0175384 100644 --- a/htdocs/langs/el_GR/opensurvey.lang +++ b/htdocs/langs/el_GR/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Η διεύθυνση email σας ToReceiveEMailForEachVote=Να λαμβάνετε ένα μήνυμα ηλεκτρονικού ταχυδρομείου για κάθε ψηφοφορία TypeDate=Ημερομηνία TypeClassic=Πρότυπο -YouAreInPollCreateArea=Βρίσκεστε στο τμήμα δημιουργίας δημοσκόπηση FieldMandatory=Υποχρεωτικό πεδίο OpenSurveyStep2=Επιλέξτε τις ημερομηνίες σας ανάμεσα στις ελεύθερες ημέρες (πράσινο). Οι επιλεγμένες ημέρες είναι σε μπλε χρώμα. Μπορείτε να ακυρώσετε μια μέρα προηγουμένως επιλεγεί κάνοντας κλικ ξανά πάνω του RemoveAllDays=Αφαιρέστε όλες τις ημέρες @@ -40,7 +39,6 @@ YesNoList=Λίστα (άδειο/ναι/όχι) PourContreList=Λίστα (άδειο/για/από) AddNewColumn=Προσθέσετε νέα στήλη TitleChoice=Επιλέξτε ετικέτα -InfoAfterCreate=Αφού έχετε επιβεβαιώσει τη δημιουργία της δημοσκόπησης σας, θα μεταφερθείτε αυτόματα στη σελίδα της δημοσκόπησης σας.
Θα πρέπει επίσης να λάβετε ένα μήνυμα ηλεκτρονικού ταχυδρομείου με το σύνδεσμο στο δικό σας δημοψήφισμα για την αποστολή τους στους ψηφοφόρους. ExportSpreadsheet=Εξαγωγή αποτελεσμάτων σε υπολογιστικό φύλλο ExpireDate=Όριο ημερομηνίας NbOfVoters=Αριθμός ψηφοφόρων @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Το όνομα αυτό χρησιμοποιείται ή ErrorPollDoesNotExists=Σφάλμα, δημοσκόπησης %s δεν υπάρχει. OpenSurveyNothingToSetup=Δεν υπάρχει συγκεκριμένη ρύθμιση να κάνετε. PollWillExpire=Δημοσκόπηση σας θα λήξει αυτόματα %s ημέρες μετά την τελευταία ημέρα της δημοσκόπησης σας. -RemovalDate=Ημερομηνία αφαίρεσης AddADate=Προσθέσετε μια ημερομηνία AddStartHour=Προσθέσετε ώρα έναρξη AddEndHour=Προσθέσετε ώρα λήξης diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 7cdadc308a0..9f9f3fe3abc 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Your email address ToReceiveEMailForEachVote=To receive an email for each vote TypeDate=Type date TypeClassic=Type standard -YouAreInPollCreateArea=You are in the poll creation section FieldMandatory=Field mandatory OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it RemoveAllDays=Remove all days @@ -40,9 +39,6 @@ YesNoList=List (empty/yes/no) PourContreList=List (empty/for/against) AddNewColumn=Add new column TitleChoice=Choice label -InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. -InfoExpiration=Your poll will be automatically removed after 6 months.
You can fix another removal date for it. -RemovalDate=Removal date (optional) ExportSpreadsheet=Export result spreadsheet ExpireDate=Limit date NbOfVoters=Nb of voters @@ -56,7 +52,6 @@ VoteNameAlreadyExists=This name was already used for this poll ErrorPollDoesNotExists=Error, poll %s does not exists. OpenSurveyNothingToSetup=There is no specific setup to do. PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -RemovalDate=Removal date AddADate=Add a date AddStartHour=Add start hour AddEndHour=Add end hour @@ -70,5 +65,4 @@ BackToCurrentMonth=Back to current month ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation ErrorOpenSurveyOneChoice=Enter at least one choice ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY -MoreChoices=Enter more choices for the voters -AfterCreationInfo=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
Then, you will receive quickly an email contening the link to your poll for sending it to the voters. \ No newline at end of file +MoreChoices=Enter more choices for the voters \ No newline at end of file diff --git a/htdocs/langs/es_ES/opensurvey.lang b/htdocs/langs/es_ES/opensurvey.lang index af28b1e0b2b..b0c2806f262 100644 --- a/htdocs/langs/es_ES/opensurvey.lang +++ b/htdocs/langs/es_ES/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Su dirección de correo electrónico ToReceiveEMailForEachVote=Para recibir un email por cada voto TypeDate=Tipo fecha TypeClassic=Tipo estándar -YouAreInPollCreateArea=Está en la sección de creación de encuestas FieldMandatory=Campo obligatorio OpenSurveyStep2=Seleccione sus fechas de entre los días libres (verdes). Los días seleccionados son de color azul. Puede seleccionar un día previamente seleccionado haciendo click de nuevo en él RemoveAllDays=Eliminar todos los días @@ -40,7 +39,6 @@ YesNoList=Lista (vacío/sí/no) PourContreList=Lista (vacío/a favor/en contra) AddNewColumn=Añadir nueva columna TitleChoice=Título de la opción -InfoAfterCreate=Una vez haya confirmado la creación de su encuesta, será redirigido automáticamente a la página de su encuesta.
También recibirá un email con un enlace a su encuesta para enviárselo a los votantes. ExportSpreadsheet=Exportar resultados a una hoja de cálculo ExpireDate=Fecha límite NbOfVoters=Núm. de votantes @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Este nombre ya había sido usado para esta encuesta ErrorPollDoesNotExists=Error, la encuesta %s no existe. OpenSurveyNothingToSetup=No hay una configuración específica que hacer. PollWillExpire=Su encuesta expirará automáticamente %s días después de la última fecha de su encuesta. -RemovalDate=Fecha de eliminación AddADate=Añadir una fecha AddStartHour=Añadir hora de inicio AddEndHour=Añadir hora de fin diff --git a/htdocs/langs/et_EE/opensurvey.lang b/htdocs/langs/et_EE/opensurvey.lang index bcab21d0795..4beac93c766 100644 --- a/htdocs/langs/et_EE/opensurvey.lang +++ b/htdocs/langs/et_EE/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Sinu e-posti aadress ToReceiveEMailForEachVote=Iga hääle kohta saadetakse e-kiri TypeDate=Liik: kuupäev TypeClassic=Liik: standardne -YouAreInPollCreateArea=Oled küsitluse loomise sektsioonis FieldMandatory=Kohustuslik väli OpenSurveyStep2=Vali kuupäevad vabade päevade seas (rohelised). Valitud päevad on märgitud sinisega. Eelnevalt valitud päevalt saab valiku maha võtta sellel klõpsates RemoveAllDays=Eemalda kõik päevad @@ -40,7 +39,6 @@ YesNoList=Nimekiri (tühi/jah/ei) PourContreList=Nimekiri (tühi/poolt/vastu) AddNewColumn=Lisa uus veerg TitleChoice=Valiku silt -InfoAfterCreate=Pärast küsitluse loomise kinnitamist suunatakse Sind automaatselt küsitluse lehele.
Samuti peaks Sinuni jõudma e-kiri lingiga küsitlusele, et küsitlust teistele jagada. ExportSpreadsheet=Ekspordi tulemuste tabel ExpireDate=Piira kuupäevaga NbOfVoters=Hääletajaid @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Sellele küsitlusele vastamiseks on seda nime juba kasutat ErrorPollDoesNotExists=Viga: küsitlust nimega %s ei ole OpenSurveyNothingToSetup=Pole erilist seadistust, mida teha. PollWillExpire=Sinu küsitlus aegub automaatselt %s päeva pärast viimast vastust. -RemovalDate=Kustutamise kuupäev AddADate=Lisa kuupäev AddStartHour=Lisa alustamise kellaaeg AddEndHour=Lisa lõpetamise kellaaeg diff --git a/htdocs/langs/fa_IR/opensurvey.lang b/htdocs/langs/fa_IR/opensurvey.lang index 52216944ea0..109ed7caf28 100644 --- a/htdocs/langs/fa_IR/opensurvey.lang +++ b/htdocs/langs/fa_IR/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=الحد من التاريخ # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=الحد من التاريخ # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/fi_FI/opensurvey.lang b/htdocs/langs/fi_FI/opensurvey.lang index 105db3b15ee..6cfaf5b4970 100644 --- a/htdocs/langs/fi_FI/opensurvey.lang +++ b/htdocs/langs/fi_FI/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Raja-päivämäärä # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Raja-päivämäärä # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/fr_FR/opensurvey.lang b/htdocs/langs/fr_FR/opensurvey.lang index 2e282b58041..93cc778adcd 100644 --- a/htdocs/langs/fr_FR/opensurvey.lang +++ b/htdocs/langs/fr_FR/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Votre adresse email ToReceiveEMailForEachVote=Pour recevoir un email à chaque vote TypeDate=Type date TypeClassic=Type classique -YouAreInPollCreateArea=Vous êtes dans l'espace de création de sondage FieldMandatory=Champ obligatoire OpenSurveyStep2=Sélectionner les dates parmi les jours libres (en vert). Les jours sélectionné sont bleus. Vous pouvez désélectionner un jour en cliquant à nouveau dessus. RemoveAllDays=Efface tous les jours @@ -40,7 +39,6 @@ YesNoList=Liste (vide/oui/non) PourContreList=Liste (vide/pour/contre) AddNewColumn=Ajouter nouvelle colonne TitleChoice=Libellé du choix -InfoAfterCreate=Une fois la confirmation de la création de votre sondage réalisée, vous serez redirigé vers la page de vote du sondage.
Vous devriez de plus recevoir un email avec le lien de la page sondage pour diffusion auprès des votants. ExportSpreadsheet=Exporter feuille de résultats ExpireDate=Date expiration NbOfVoters=Nombre de votants @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Ce nom a déjà été utilisé pour ce vote ErrorPollDoesNotExists=Erreur, le sondage %s n'existe pas. OpenSurveyNothingToSetup=Aucune configuration particulière n'est requise. PollWillExpire=Ce sondage expirera automatiquement %s jours après la date de dernier choix. -RemovalDate=Date de retrait AddADate=Ajouter une date AddStartHour=Ajouter heure de début AddEndHour=Ajouter heure de fin diff --git a/htdocs/langs/he_IL/opensurvey.lang b/htdocs/langs/he_IL/opensurvey.lang index 4f892f47a4d..5b437693696 100644 --- a/htdocs/langs/he_IL/opensurvey.lang +++ b/htdocs/langs/he_IL/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet # ExpireDate=Limit date # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/hu_HU/opensurvey.lang b/htdocs/langs/hu_HU/opensurvey.lang index b854e201153..b6d41207ec6 100644 --- a/htdocs/langs/hu_HU/opensurvey.lang +++ b/htdocs/langs/hu_HU/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Dátum korlást # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Dátum korlást # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/is_IS/opensurvey.lang b/htdocs/langs/is_IS/opensurvey.lang index 36d821869c4..1d4f44ab550 100644 --- a/htdocs/langs/is_IS/opensurvey.lang +++ b/htdocs/langs/is_IS/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Takmarka dagsetningu # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Takmarka dagsetningu # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/it_IT/opensurvey.lang b/htdocs/langs/it_IT/opensurvey.lang index 868a65108d0..eb05f88aa99 100644 --- a/htdocs/langs/it_IT/opensurvey.lang +++ b/htdocs/langs/it_IT/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Il tuo indirizzo email ToReceiveEMailForEachVote=Per ricevere un'email per ogni voto TypeDate=Digita data TypeClassic=Tipo standard -YouAreInPollCreateArea=Sei nella sezione di creazione sondaggi FieldMandatory=Campo obbligatorio OpenSurveyStep2=Scegli le date fra i giorni liberi (in verde). I giorni selezionati sono in blu. Puoi deselezionare un giorno precedentemente selezionato cliccandoci di nuovo sopra. RemoveAllDays=Cancella tutti i giorni @@ -40,7 +39,6 @@ YesNoList=Lista (vuota/sì/no) PourContreList=Elenco (vuota/a favore/contro) AddNewColumn=Aggiungi una colonna TitleChoice=Scegli l'etichetta -InfoAfterCreate=Una volta convalidata la creazione del sondaggio, sarai reindirizzato automaticamente alla pagina del sondaggio.
Dovresti anche ricevere una email con il link del sondaggio da mandare ai votanti. ExportSpreadsheet=Esporta su foglio elettronico ExpireDate=Data limite NbOfVoters=Num votanti @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Questo nome è già stato usato in questo sondaggio ErrorPollDoesNotExists=Errore, il sondaggio %snon esiste. OpenSurveyNothingToSetup=Non ci sono configurazioni da fare. PollWillExpire=Il sondaggio scadrà automaticamente%sgiorni dopo la sua data finale. -RemovalDate=Data di cancellazione AddADate=Aggiungi una data AddStartHour=Aggiungi un'ora di partenza AddEndHour=Aggiungi un'ora di fine diff --git a/htdocs/langs/ja_JP/opensurvey.lang b/htdocs/langs/ja_JP/opensurvey.lang index 664f9717222..af5612cb974 100644 --- a/htdocs/langs/ja_JP/opensurvey.lang +++ b/htdocs/langs/ja_JP/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=日付を制限する # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=日付を制限する # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/ko_KR/opensurvey.lang b/htdocs/langs/ko_KR/opensurvey.lang index 4f892f47a4d..5b437693696 100644 --- a/htdocs/langs/ko_KR/opensurvey.lang +++ b/htdocs/langs/ko_KR/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet # ExpireDate=Limit date # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/lv_LV/opensurvey.lang b/htdocs/langs/lv_LV/opensurvey.lang index 5480c7947a4..464856c10c5 100644 --- a/htdocs/langs/lv_LV/opensurvey.lang +++ b/htdocs/langs/lv_LV/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Jūsu e-pasta adrese ToReceiveEMailForEachVote=Lai saņemtu e-pastu par katru balsojumu TypeDate=Tipa datums TypeClassic=Tipa standarts -YouAreInPollCreateArea=Jūs esat pieres daļā radīšanas sadaļā FieldMandatory=Lauks obligāts OpenSurveyStep2=Izvēlieties datumus amoung bezmaksas dienas (zaļā krāsā). Izvēlētās dienas ir zilā krāsā. Jūs varat noņemsiet dienu iepriekš izvēlēto noklikšķinot vēlreiz uz tā RemoveAllDays=Noņemt visas dienas @@ -40,7 +39,6 @@ YesNoList=Saraksts (tukšs/jā/nē) PourContreList=Saraksts (tukšs/par/pret) AddNewColumn=Pievienot jaunu kolonnu TitleChoice=Izvēlies nosaukumu -InfoAfterCreate=Kad esat apstiprinājuši izveidot savu aptauju, jums tiks automātiski novirzīts uz lapu jūsu aptaujā.
Jums vajadzētu saņemt arī e-pastu ar saiti uz jūsu aptauju, lai nosūtītu to uz vēlētājiem. ExportSpreadsheet=Eksporta rezultātu izklājlapu ExpireDate=Ierobežot datumu NbOfVoters=Balsotāju skaits @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Šis nosaukums jau tika izmantots šajā aptaujā ErrorPollDoesNotExists=Kļūda, aptauja %s neeksistē. OpenSurveyNothingToSetup=Nav īpašas uzstādīšanas darīt. PollWillExpire=Jūsu aptauja beigsies automātiski %s pēc pēdējās dienas, kad balsošanas datums beigsies. -RemovalDate=Noņemšanas datums AddADate=Pievienot datumu AddStartHour=Pievienot sākuma stundu AddEndHour=Pievienot beigu stundu diff --git a/htdocs/langs/nb_NO/opensurvey.lang b/htdocs/langs/nb_NO/opensurvey.lang index e7da7887e8b..daecee4ffd1 100644 --- a/htdocs/langs/nb_NO/opensurvey.lang +++ b/htdocs/langs/nb_NO/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Limit date # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Limit date # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/nl_NL/opensurvey.lang b/htdocs/langs/nl_NL/opensurvey.lang index f7dbffb030f..aa84c1516f3 100644 --- a/htdocs/langs/nl_NL/opensurvey.lang +++ b/htdocs/langs/nl_NL/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Termijn # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Termijn # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/pl_PL/opensurvey.lang b/htdocs/langs/pl_PL/opensurvey.lang index 7db10839fb8..6ea6a710268 100644 --- a/htdocs/langs/pl_PL/opensurvey.lang +++ b/htdocs/langs/pl_PL/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Limit daty # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Limit daty # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/pt_BR/opensurvey.lang b/htdocs/langs/pt_BR/opensurvey.lang index adade08db90..042fd02327c 100644 --- a/htdocs/langs/pt_BR/opensurvey.lang +++ b/htdocs/langs/pt_BR/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Seu endereço e-mail ToReceiveEMailForEachVote=Para receber um e-mail por cada voto TypeDate=Tipo data TypeClassic=Tipo estandard -YouAreInPollCreateArea=Voce esta na seçao de criaçao da enquete FieldMandatory=Campo obrigatorio # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it RemoveAllDays=Remover todos os dias @@ -40,7 +39,6 @@ SelectedDays=Dias selecionados # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Data Límite # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Data Límite # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/pt_PT/opensurvey.lang b/htdocs/langs/pt_PT/opensurvey.lang index 27959f709ff..66f13a08096 100644 --- a/htdocs/langs/pt_PT/opensurvey.lang +++ b/htdocs/langs/pt_PT/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=O seu endereço de email # ToReceiveEMailForEachVote=To receive an email for each vote TypeDate=Tipo de data # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ SelectedDays=Dias selecionados # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Data Limite # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ SurveyResults=Resultados # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/ro_RO/opensurvey.lang b/htdocs/langs/ro_RO/opensurvey.lang index c68eb13e392..735f9feb322 100644 --- a/htdocs/langs/ro_RO/opensurvey.lang +++ b/htdocs/langs/ro_RO/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Adresa dvs de email ToReceiveEMailForEachVote=Primirea unui email pentru fiecare vot TypeDate=Tip dată TypeClassic=Tip standard -YouAreInPollCreateArea=Sunteţi în secţiunea creare sondaj FieldMandatory=Câmp obligatoriu OpenSurveyStep2=Selectati datele între zilele libere (verde). Zilele selectate sunt în albastru. Puteți deselecta o zi selectată anterior, făcând clic din nou pe ea RemoveAllDays=Elimină toate zilele @@ -40,7 +39,6 @@ YesNoList=Listă (goală/da/nu) PourContreList=Listă (goală/pentru/impotrivă) AddNewColumn=Adaugă coloană nouă TitleChoice=Etichetă Alegere -InfoAfterCreate=După ce ați confirmat crearea de sondajului, veți fi redirecționat automat la pagina sondajului.
Ar trebui să primiţi, de asemenea, un e-mail cu link-ul sondajului pentru a trimite-l la votanţi. ExportSpreadsheet=Exportă rezultatul în foaie de calcul ExpireDate=Data limită NbOfVoters=Nr-ul voturilor @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Acest nume a fost deasemenea folosit pentru acest sondaj ErrorPollDoesNotExists=Eroare, sondajul %s nu există. OpenSurveyNothingToSetup=Nu există setări specifice de făcut. PollWillExpire=Sondajul dvs. va expira în mod automat în % s zile de la ultima data a sondajului. -RemovalDate=Data eliminare AddADate=Adaugă o dată AddStartHour=Adaugă o oră de start AddEndHour=Adaugă o oră de final diff --git a/htdocs/langs/ru_RU/opensurvey.lang b/htdocs/langs/ru_RU/opensurvey.lang index b4f0db0ae60..28e64b72c7e 100644 --- a/htdocs/langs/ru_RU/opensurvey.lang +++ b/htdocs/langs/ru_RU/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Дата лимита # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Дата лимита # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/sk_SK/opensurvey.lang b/htdocs/langs/sk_SK/opensurvey.lang index 76cb7af9870..3938e4a8b4d 100644 --- a/htdocs/langs/sk_SK/opensurvey.lang +++ b/htdocs/langs/sk_SK/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Vaša e-mailová adresa ToReceiveEMailForEachVote=Ak chcete dostať e-mail pre každé hlasovanie TypeDate=Zadajte dátum TypeClassic=Typ štandardné -YouAreInPollCreateArea=Nachádzate sa v sekcii pre vytvorenie hlasovanie FieldMandatory=Pole povinné OpenSurveyStep2=Zvoľte termín Vášho amoung voľné dni (zelená). Vybrané dni sú v modrej farbe. Môžete zrušiť výber deň vopred zvolenú opätovným kliknutím na neho RemoveAllDays=Odstráňte všetky dni @@ -40,7 +39,6 @@ YesNoList=List (prázdny / áno / nie) PourContreList=List (prázdny / pre / proti) AddNewColumn=Pridať nový stĺpec TitleChoice=Voľba štítok -InfoAfterCreate=Potom, čo ste potvrdili vytvorenie vášho hlasovania, budete automaticky presmerovaní na stránku vášho hlasovania.
Tiež by ste mali dostať e-mail s odkazom na vaše hlasovanie pre odoslanie do voličov. ExportSpreadsheet=Export výsledkov tabuľku ExpireDate=Obmedziť dátum NbOfVoters=Nb voličov @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Tento názov už bol použitý pri tomto hlasovaní ErrorPollDoesNotExists=Chyba hlasovania %s neexistuje. OpenSurveyNothingToSetup=Neexistuje žiadne špecifické nastavenia robiť. PollWillExpire=Váš prieskum skončí automaticky %s dní po poslednom dni svojho hlasovania. -RemovalDate=Odstránenie dáta AddADate=Pridať dátum AddStartHour=Pridať začať hodinu AddEndHour=Pridať end hodinu diff --git a/htdocs/langs/sl_SI/opensurvey.lang b/htdocs/langs/sl_SI/opensurvey.lang index 060de054e3d..33411fbeacd 100644 --- a/htdocs/langs/sl_SI/opensurvey.lang +++ b/htdocs/langs/sl_SI/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Omejitveni datum # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Omejitveni datum # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/sv_SE/opensurvey.lang b/htdocs/langs/sv_SE/opensurvey.lang index e7fb2806092..31cbcaf29db 100644 --- a/htdocs/langs/sv_SE/opensurvey.lang +++ b/htdocs/langs/sv_SE/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=Begränsa datum # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=Begränsa datum # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/tr_TR/opensurvey.lang b/htdocs/langs/tr_TR/opensurvey.lang index 398025bcc77..0aceb11e1db 100644 --- a/htdocs/langs/tr_TR/opensurvey.lang +++ b/htdocs/langs/tr_TR/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Eposta adresiniz ToReceiveEMailForEachVote=Her oy için bir eposta almak için TypeDate=Tarih türü TypeClassic=Standart tür -YouAreInPollCreateArea=Anket oluşturma bölümündesiniz FieldMandatory=Zorunlu alan OpenSurveyStep2=Boş günler arasından tarihlerinizi seçin (yeşil). Seçilen günler mavidir. Daha önceden seçtiğiniz günü tıklayarak seçimi kaldırabilirsiniz RemoveAllDays=Bütün günleri kaldır @@ -40,7 +39,6 @@ YesNoList=Liste (boş/evet/hayır) PourContreList=Liste (boş, uygun/karşı) AddNewColumn=Yeni sütun ekle TitleChoice=Seçim etiketi -InfoAfterCreate=Anketinizin oluşturulmasını onayladığınızda, otomatik olarak anket sayfanıza yönlendirileceksiniz.
Oylayıcılara göndermek üzere anketinizin bağlantısı olan bir eposta da alacaksınız. ExportSpreadsheet=Sonuçları hesap tablosuna aktar ExpireDate=Sınır tarihi NbOfVoters=Oylayıcı sayısı @@ -54,7 +52,6 @@ VoteNameAlreadyExists=Bu isim bu anket için zaten kullanılmış ErrorPollDoesNotExists=Hata, anket %s mevcut değil. OpenSurveyNothingToSetup=Yapılacak özel ayar yok. PollWillExpire=Anketiniz, son tarihinden %s gün sonra kendiliğinden sona erecektir. -RemovalDate=Kaldırılma tarihi AddADate=Bir tarih ekle AddStartHour=Başlangıç saati ekle AddEndHour=Bitiş saati ekle diff --git a/htdocs/langs/uz_UZ/opensurvey.lang b/htdocs/langs/uz_UZ/opensurvey.lang index 4f892f47a4d..5b437693696 100644 --- a/htdocs/langs/uz_UZ/opensurvey.lang +++ b/htdocs/langs/uz_UZ/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet # ExpireDate=Limit date # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/vi_VN/opensurvey.lang b/htdocs/langs/vi_VN/opensurvey.lang index 4f892f47a4d..5b437693696 100644 --- a/htdocs/langs/vi_VN/opensurvey.lang +++ b/htdocs/langs/vi_VN/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet # ExpireDate=Limit date # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/zh_CN/opensurvey.lang b/htdocs/langs/zh_CN/opensurvey.lang index b40b30c5dc1..613f1869ca7 100644 --- a/htdocs/langs/zh_CN/opensurvey.lang +++ b/htdocs/langs/zh_CN/opensurvey.lang @@ -14,7 +14,6 @@ NewSurvey=新的调查 # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ CreateSurveyStandard=创建一个标准的调查 # PourContreList=List (empty/for/against) # AddNewColumn=Add new column TitleChoice=选择标签 -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=极限日期 # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ SurveyResults=结果 # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/langs/zh_TW/opensurvey.lang b/htdocs/langs/zh_TW/opensurvey.lang index d7bce2f9596..0b0b7e0adf2 100644 --- a/htdocs/langs/zh_TW/opensurvey.lang +++ b/htdocs/langs/zh_TW/opensurvey.lang @@ -14,7 +14,6 @@ # ToReceiveEMailForEachVote=To receive an email for each vote # TypeDate=Type date # TypeClassic=Type standard -# YouAreInPollCreateArea=You are in the poll creation section # FieldMandatory=Field mandatory # OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it # RemoveAllDays=Remove all days @@ -40,7 +39,6 @@ # PourContreList=List (empty/for/against) # AddNewColumn=Add new column # TitleChoice=Choice label -# InfoAfterCreate=Once you have confirmed the creation of your poll, you will be automatically redirected on the page of your poll.
You should also receive an email with link to your poll for sending it to the voters. # ExportSpreadsheet=Export result spreadsheet ExpireDate=極限日期 # NbOfVoters=Nb of voters @@ -54,7 +52,6 @@ ExpireDate=極限日期 # ErrorPollDoesNotExists=Error, poll %s does not exists. # OpenSurveyNothingToSetup=There is no specific setup to do. # PollWillExpire=Your poll will expire automatically %s days after the last date of your poll. -# RemovalDate=Removal date # AddADate=Add a date # AddStartHour=Add start hour # AddEndHour=Add end hour diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index d28f0621f8a..5a49562989c 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -188,9 +188,6 @@ if ((isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"])) print '
'. $langs->trans("InfoExpiration") .'

'."\n"; print $langs->trans("RemovalDate") .' : DD/MM/YYYY'; print ''."\n"; - print '
'."\n"; - print ''. $langs->trans("InfoAfterCreate") .''."\n"; - print '
'."\n"; print '
'."\n"; print '
'. $langs->trans("PollTitle") .'
'."\n"; print ''."\n"; diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index a60d7af6ca6..8afb1477303 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -568,12 +568,6 @@ if (!$erreur && (GETPOST('choixheures') || GETPOST('choixheures_x'))) { print '
'. $langs->trans("PollWillExpire",2) .'
'."\n"; print '
'. $langs->trans("CreatePoll") .'

'. $langs->trans("RemovalDate") .' : '.$date_fin.'
'."\n"; print ''."\n"; - print '
'."\n"; - print ''. $langs->trans("AfterCreationInfo") .''."\n"; - print'
'."\n"; - // print'

'."\n"; - // print 'Pour finir la création du sondage, cliquez sur le bouton ajout ci-dessous'."\n"; - // print '

'."\n"; print ''."\n"; print ''."\n"; print''."\n"; From 97bd5df4983e23a9220c4cc85768d3a5fb4a7794 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:40:53 +0100 Subject: [PATCH 52/90] Moved poll expiration date to first form and removed odd forms --- htdocs/opensurvey/fonctions.php | 24 +- htdocs/opensurvey/public/choix_autre.php | 73 +----- htdocs/opensurvey/public/choix_date.php | 282 +++++++++------------ htdocs/opensurvey/public/create_survey.php | 45 +++- 4 files changed, 178 insertions(+), 246 deletions(-) diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index 437f851d67b..b3aa1c15cfc 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -220,7 +220,7 @@ function dol_survey_random($car) * * @return void */ -function ajouter_sondage($origin) +function ajouter_sondage() { global $db; @@ -228,26 +228,6 @@ function ajouter_sondage($origin) $sondage=dol_survey_random(16); - if ($_SESSION["formatsondage"]=="A"||$_SESSION["formatsondage"]=="A+") { - //extraction de la date de fin choisie - if ($_SESSION["champdatefin"]) { - if ($_SESSION["champdatefin"]>time()+250000) { - $date_fin=$_SESSION["champdatefin"]; - } - } else { - $date_fin=time()+15552000; - } - } - - if ($_SESSION["formatsondage"]=="D"||$_SESSION["formatsondage"]=="D+") { - //Calcul de la date de fin du sondage - $taille_tableau=count($_SESSION["totalchoixjour"])-1; - $date_fin=$_SESSION["totalchoixjour"][$taille_tableau]+200000; - } - - if (is_numeric($date_fin) === false) { - $date_fin = time()+15552000; - } $allow_comments = empty($_SESSION['allow_comments']) ? 0 : 1; $allow_spy = empty($_SESSION['allow_spy']) ? 0 : 1; @@ -258,7 +238,7 @@ function ajouter_sondage($origin) $opensurveysondage->mail_admin = $_SESSION['adresse']; $opensurveysondage->nom_admin = $_SESSION['nom']; $opensurveysondage->titre = $_SESSION['titre']; - $opensurveysondage->date_fin = $date_fin; + $opensurveysondage->date_fin = $_SESSION['champdatefin']; $opensurveysondage->format = $_SESSION['formatsondage']; $opensurveysondage->mailsonde = $_SESSION['mailsonde']; $opensurveysondage->allow_comments = $allow_comments; diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index 5a49562989c..1037be6f714 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -27,11 +27,6 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); -$erreur = false; -$testdate = true; -$date_selected = ''; - - /* * Action */ @@ -71,36 +66,26 @@ if (isset($_POST["confirmecreation"]) || isset($_POST["confirmecreation_x"])) $toutchoix=substr("$toutchoix",1); $_SESSION["toutchoix"]=$toutchoix; - if (GETPOST('champdatefin')) + //test de remplissage des cases + $testremplissage = ''; + for ($i=0;$i<$_SESSION["nbrecases"];$i++) { - $registredate=explode("/",$_POST["champdatefin"]); - if (is_array($registredate) === false || count($registredate) !== 3) { - $testdate = false; - $date_selected = $_POST["champdatefin"]; - } else { - $time = mktime(0,0,0,$registredate[1],$registredate[0],$registredate[2]); - if ($time === false || date('d/m/Y', $time) !== $_POST["champdatefin"]) { - $testdate = false; - $date_selected = $_POST["champdatefin"]; - } else { - if (mktime(0,0,0,$registredate[1],$registredate[0],$registredate[2]) > time() + 250000) { - $_SESSION["champdatefin"]=mktime(0,0,0,$registredate[1],$registredate[0],$registredate[2]); - } - } + if (isset($_POST["choix"][$i])) + { + $testremplissage="ok"; } - } else { - $_SESSION["champdatefin"]=time()+15552000; } - if ($testdate === true) - { + //message d'erreur si aucun champ renseigné + if ($testremplissage != "ok") { + setEventMessage($langs->trans("ErrorOpenSurveyOneChoice"), 'errors'); + } else { + //format du sondage AUTRE $_SESSION["formatsondage"]="A"; // Add into database ajouter_sondage(); - } else { - $_POST["fin_sondage_autre"] = 'ok'; } } @@ -157,43 +142,9 @@ print '
'. $langs->trans("BackToHoursSetup") .'
'. $langs->trans("CreatePoll") .'
'."\n"; print'
'."\n"; print ''."\n"; -print ''."\n"; +print ''."\n"; print '
'."\n"; -//test de remplissage des cases -$testremplissage = ''; -for ($i=0;$i<$_SESSION["nbrecases"];$i++) -{ - if (isset($_POST["choix"][$i])) - { - $testremplissage="ok"; - } -} - -//message d'erreur si aucun champ renseigné -if ($testremplissage != "ok" && (isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"]))) { - print "
" . $langs->trans("ErrorOpenSurveyOneChoice") . "

"."\n"; - $erreur = true; -} - -//message d'erreur si mauvaise date -if ($testdate === false) { - print "
" . $langs->trans("ErrorOpenSurveyDateFormat") . "

"."\n"; -} - -if ((isset($_POST["fin_sondage_autre"]) || isset($_POST["fin_sondage_autre_x"])) && !$erreur) { - //demande de la date de fin du sondage - print '
'."\n"; - print '
'."\n"; - print '
'. $langs->trans("InfoExpiration") .'

'."\n"; - print $langs->trans("RemovalDate") .' : DD/MM/YYYY'; - print '
'."\n"; - print '
'."\n"; - print ''."\n"; - print ''."\n"; - print '
'. $langs->trans("CreatePoll") .'
'."\n"; -} - //fin du formulaire et bandeau de pied print ''."\n"; diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index 8afb1477303..b2c8f998351 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -27,19 +27,115 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); +//le format du sondage est DATE +$_SESSION["formatsondage"] = "D"; + +//traitement de l'entrée des heures dans les cases texte +$erreur = false; /* * Actions */ // Insert survey -if (GETPOST('confirmation') || GETPOST('confirmation_x')) +if (GETPOST('confirmation')) { - if (is_array($_SESSION['totalchoixjour'])) + + //On sauvegarde les heures deja entrées + if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true && issetAndNoEmpty('nbrecaseshoraires', $_SESSION) === true) { $nbofchoice=count($_SESSION["totalchoixjour"]); - for ($i = 0; $i < $nbofchoice; $i++) - { + + for ($i = 0; $i < $nbofchoice; $i++) { + //affichage des 5 cases horaires + for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) { + + $_SESSION["horaires$i"][$j] = $_POST["horaires$i"][$j]; + + $case = $j + 1; + + if (isset($_POST['horaires'.$i]) === false || isset($_POST['horaires'.$i][$j]) === false) { + $errheure[$i][$j]=true; + $erreur=true; + continue; + } + + //si c'est un creneau type 8:00-11:00 + if (preg_match("/(\d{1,2}:\d{2})-(\d{1,2}:\d{2})/", $_POST["horaires$i"][$j], $creneaux)) { + //on recupere les deux parties du preg_match qu'on redécoupe autour des ":" + $debutcreneau=explode(":", $creneaux[1]); + $fincreneau=explode(":", $creneaux[2]); + + //comparaison des heures de fin et de debut + //si correctes, on entre les données dans la variables de session + if ($debutcreneau[0] < 24 && $fincreneau[0] < 24 && $debutcreneau[1] < 60 && $fincreneau[1] < 60 && ($debutcreneau[0] < $fincreneau[0] || ($debutcreneau[0] == $fincreneau[0] && $debutcreneau[1] < $fincreneau[1]))) { + $_SESSION["horaires$i"][$j] = $creneaux[1].'-'.$creneaux[2]; + } else { //sinon message d'erreur et nettoyage de la case + $errheure[$i][$j]=true; + $erreur=true; + } + } elseif (preg_match(";^(\d{1,2}h\d{0,2})-(\d{1,2}h\d{0,2})$;i", $_POST["horaires$i"][$j], $creneaux)) { //si c'est un creneau type 8h00-11h00 + //on recupere les deux parties du preg_match qu'on redécoupe autour des "H" + $debutcreneau=preg_split("/h/i", $creneaux[1]); + $fincreneau=preg_split("/h/i", $creneaux[2]); + + //comparaison des heures de fin et de debut + //si correctes, on entre les données dans la variables de session + if ($debutcreneau[0] < 24 && $fincreneau[0] < 24 && $debutcreneau[1] < 60 && $fincreneau[1] < 60 && ($debutcreneau[0] < $fincreneau[0] || ($debutcreneau[0] == $fincreneau[0] && $debutcreneau[1] < $fincreneau[1]))) { + $_SESSION["horaires$i"][$j] = $creneaux[1].'-'.$creneaux[2]; + } else { //sinon message d'erreur et nettoyage de la case + $errheure[$i][$j]=true; + $erreur=true; + } + } elseif (preg_match(";^(\d{1,2}):(\d{2})$;", $_POST["horaires$i"][$j], $heures)) { //si c'est une heure simple type 8:00 + //si valeures correctes, on entre les données dans la variables de session + if ($heures[1] < 24 && $heures[2] < 60) { + $_SESSION["horaires$i"][$j] = $heures[0]; + } else { //sinon message d'erreur et nettoyage de la case + $errheure[$i][$j]=true; + $erreur=true; + } + } elseif (preg_match(";^(\d{1,2})h(\d{0,2})$;i", $_POST["horaires$i"][$j], $heures)) { //si c'est une heure encore plus simple type 8h + //si valeures correctes, on entre les données dans la variables de session + if ($heures[1] < 24 && $heures[2] < 60) { + $_SESSION["horaires$i"][$j] = $heures[0]; + } else { //sinon message d'erreur et nettoyage de la case + $errheure[$i][$j]=true; + $erreur=true; + } + } elseif (preg_match(";^(\d{1,2})-(\d{1,2})$;", $_POST["horaires$i"][$j], $heures)) { //si c'est un creneau simple type 8-11 + //si valeures correctes, on entre les données dans la variables de session + if ($heures[1] < $heures[2] && $heures[1] < 24 && $heures[2] < 24) { + $_SESSION["horaires$i"][$j] = $heures[0]; + } else { //sinon message d'erreur et nettoyage de la case + $errheure[$i][$j]=true; + $erreur=true; + } + } elseif (preg_match(";^(\d{1,2})h-(\d{1,2})h$;", $_POST["horaires$i"][$j], $heures)) { //si c'est un creneau H type 8h-11h + //si valeures correctes, on entre les données dans la variables de session + if ($heures[1] < $heures[2] && $heures[1] < 24 && $heures[2] < 24) { + $_SESSION["horaires$i"][$j] = $heures[0]; + } else { //sinon message d'erreur et nettoyage de la case + $errheure[$i][$j]=true; + $erreur=true; + } + } elseif ($_POST["horaires$i"][$j]=="") { //Si la case est vide + unset($_SESSION["horaires$i"][$j]); + } else { //pour tout autre format, message d'erreur + $errheure[$i][$j]=true; + $erreur=true; + } + + if (issetAndNoEmpty('horaires'.$i, $_SESSION) === false || issetAndNoEmpty($j, $_SESSION['horaires'.$i]) === false) { + if (issetAndNoEmpty('horaires'.$i, $_SESSION) === true) { + $_SESSION["horaires$i"][$j] = ''; + } else { + $_SESSION["horaires$i"] = array(); + $_SESSION["horaires$i"][$j] = ''; + } + } + } + if ($_SESSION["horaires$i"][0] == "" && $_SESSION["horaires$i"][1] == "" && $_SESSION["horaires$i"][2] == "" && $_SESSION["horaires$i"][3] == "" && $_SESSION["horaires$i"][4] == "") { $choixdate.=","; $choixdate .= $_SESSION["totalchoixjour"][$i]; @@ -55,11 +151,22 @@ if (GETPOST('confirmation') || GETPOST('confirmation_x')) } } } + + if (isset($errheure)) { + setEventMessage($langs->trans("ErrorBadFormat"), 'errors'); + } } - else dol_print_error('','array not defined'); - $_SESSION["toutchoix"]=substr("$choixdate",1); - ajouter_sondage(); + //If just one day and no other time options, error message + if (count($_SESSION["totalchoixjour"])=="1" && $_POST["horaires0"][0]=="" && $_POST["horaires0"][1]=="" && $_POST["horaires0"][2]=="" && $_POST["horaires0"][3]=="" && $_POST["horaires0"][4]=="") { + setEventMessage($langs->trans("MoreChoices"), 'errors'); + $erreur=true; + } + + if (!$erreur) { + $_SESSION["toutchoix"]=substr("$choixdate",1); + ajouter_sondage(); + } } // Reset days @@ -96,7 +203,7 @@ if (! isset($_SESSION["nbrecaseshoraires"])) { $_SESSION["nbrecaseshoraires"]=5; } -elseif ((GETPOST('ajoutcases') || GETPOST('ajoutcases_x')) && $_SESSION["nbrecaseshoraires"] == 5) +elseif (GETPOST('ajoutcases') && $_SESSION["nbrecaseshoraires"] == 5) { $_SESSION["nbrecaseshoraires"]=10; } @@ -112,14 +219,14 @@ if (! isset($_SESSION['mois'])) $_SESSION['mois']= date('n'); if (! isset($_SESSION['annee'])) $_SESSION['annee']= date('Y'); //mise a jour des valeurs de session si bouton retour a aujourd'hui -if ((!issetAndNoEmpty('anneeavant_x') && !issetAndNoEmpty('anneeapres_x') && !issetAndNoEmpty('moisavant_x') && !issetAndNoEmpty('moisapres_x') && !issetAndNoEmpty('choixjourajout')) && !issetAndNoEmpty('choixjourretrait') || (issetAndNoEmpty('retourmois') || issetAndNoEmpty('retourmois_x'))){ +if ((!issetAndNoEmpty('choixjourajout')) && !issetAndNoEmpty('choixjourretrait') || issetAndNoEmpty('retourmois')){ $_SESSION["jour"]=date("j"); $_SESSION["mois"]=date("n"); $_SESSION["annee"]=date("Y"); } //mise a jour des valeurs de session si mois avant -if (issetAndNoEmpty('moisavant') || issetAndNoEmpty('moisavant_x')) { +if (issetAndNoEmpty('moisavant')) { if ($_SESSION["mois"] == 1) { $_SESSION["mois"] = 12; $_SESSION["annee"] = $_SESSION["annee"]-1; @@ -141,7 +248,7 @@ if (issetAndNoEmpty('moisavant') || issetAndNoEmpty('moisavant_x')) { } //mise a jour des valeurs de session si mois apres -if (issetAndNoEmpty('moisapres') || issetAndNoEmpty('moisapres_x')) { +if (issetAndNoEmpty('moisapres')) { if ($_SESSION["mois"] == 12) { $_SESSION["mois"] = 1; $_SESSION["annee"] += 1; @@ -164,7 +271,7 @@ if (issetAndNoEmpty('moisapres') || issetAndNoEmpty('moisapres_x')) { } //mise a jour des valeurs de session si annee avant -if (issetAndNoEmpty('anneeavant') || issetAndNoEmpty('anneeavant_x')) { +if (issetAndNoEmpty('anneeavant')) { $_SESSION["annee"] -= 1; //On sauvegarde les heures deja entrées @@ -181,7 +288,7 @@ if (issetAndNoEmpty('anneeavant') || issetAndNoEmpty('anneeavant_x')) { } //mise a jour des valeurs de session si annee apres -if (issetAndNoEmpty('anneeapres') || issetAndNoEmpty('anneeapres_x')) { +if (issetAndNoEmpty('anneeapres')) { $_SESSION["annee"] += 1; //On sauvegarde les heures deja entrées @@ -201,9 +308,6 @@ if (issetAndNoEmpty('anneeapres') || issetAndNoEmpty('anneeapres_x')) { $nbrejourmois = date("t", mktime(0, 0, 0, $_SESSION["mois"], 1, $_SESSION["annee"])); $premierjourmois = date("N", mktime(0, 0, 0, $_SESSION["mois"], 1, $_SESSION["annee"])) - 1; -//le format du sondage est DATE -$_SESSION["formatsondage"] = "D"; - //traduction de la valeur du mois if (is_integer($_SESSION["mois"]) && $_SESSION["mois"] > 0 && $_SESSION["mois"] < 13) { @@ -380,113 +484,10 @@ print '
'."\n"; print '
'."\n"; -//traitement de l'entrée des heures dans les cases texte -$errheure = $erreur = false; -if (issetAndNoEmpty('choixheures') || issetAndNoEmpty('choixheures_x')) { - //On sauvegarde les heures deja entrées - if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true && issetAndNoEmpty('nbrecaseshoraires', $_SESSION) === true) - { - $nbofchoice=count($_SESSION["totalchoixjour"]); - for ($i = 0; $i < $nbofchoice; $i++) { - //affichage des 5 cases horaires - for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) { - $_SESSION["horaires$i"][$j] = $_POST["horaires$i"][$j]; - } - } - } - - //affichage des horaires - if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true && issetAndNoEmpty('nbrecaseshoraires', $_SESSION) === true) - { - $nbofchoice=count($_SESSION["totalchoixjour"]); - for ($i = 0; $i < $nbofchoice; $i++) { - //affichage des 5 cases horaires - for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) { - $case = $j + 1; - - if (isset($_POST['horaires'.$i]) === false || isset($_POST['horaires'.$i][$j]) === false) { - $errheure[$i][$j]=true; - $erreur=true; - $_SESSION["horaires$i"][$j]=$_POST["horaires$i"][$j]; - continue; - } - - //si c'est un creneau type 8:00-11:00 - if (preg_match("/(\d{1,2}:\d{2})-(\d{1,2}:\d{2})/", $_POST["horaires$i"][$j], $creneaux)) { - //on recupere les deux parties du preg_match qu'on redécoupe autour des ":" - $debutcreneau=explode(":", $creneaux[1]); - $fincreneau=explode(":", $creneaux[2]); - - //comparaison des heures de fin et de debut - //si correctes, on entre les données dans la variables de session - if ($debutcreneau[0] < 24 && $fincreneau[0] < 24 && $debutcreneau[1] < 60 && $fincreneau[1] < 60 && ($debutcreneau[0] < $fincreneau[0] || ($debutcreneau[0] == $fincreneau[0] && $debutcreneau[1] < $fincreneau[1]))) { - $_SESSION["horaires$i"][$j] = $creneaux[1].'-'.$creneaux[2]; - } else { //sinon message d'erreur et nettoyage de la case - $errheure[$i][$j]=true; - $erreur=true; - } - } elseif (preg_match(";^(\d{1,2}h\d{0,2})-(\d{1,2}h\d{0,2})$;i", $_POST["horaires$i"][$j], $creneaux)) { //si c'est un creneau type 8h00-11h00 - //on recupere les deux parties du preg_match qu'on redécoupe autour des "H" - $debutcreneau=preg_split("/h/i", $creneaux[1]); - $fincreneau=preg_split("/h/i", $creneaux[2]); - - //comparaison des heures de fin et de debut - //si correctes, on entre les données dans la variables de session - if ($debutcreneau[0] < 24 && $fincreneau[0] < 24 && $debutcreneau[1] < 60 && $fincreneau[1] < 60 && ($debutcreneau[0] < $fincreneau[0] || ($debutcreneau[0] == $fincreneau[0] && $debutcreneau[1] < $fincreneau[1]))) { - $_SESSION["horaires$i"][$j] = $creneaux[1].'-'.$creneaux[2]; - } else { //sinon message d'erreur et nettoyage de la case - $errheure[$i][$j]=true; - $erreur=true; - } - } elseif (preg_match(";^(\d{1,2}):(\d{2})$;", $_POST["horaires$i"][$j], $heures)) { //si c'est une heure simple type 8:00 - //si valeures correctes, on entre les données dans la variables de session - if ($heures[1] < 24 && $heures[2] < 60) { - $_SESSION["horaires$i"][$j] = $heures[0]; - } else { //sinon message d'erreur et nettoyage de la case - $errheure[$i][$j]=true; - $erreur=true; - } - } elseif (preg_match(";^(\d{1,2})h(\d{0,2})$;i", $_POST["horaires$i"][$j], $heures)) { //si c'est une heure encore plus simple type 8h - //si valeures correctes, on entre les données dans la variables de session - if ($heures[1] < 24 && $heures[2] < 60) { - $_SESSION["horaires$i"][$j] = $heures[0]; - } else { //sinon message d'erreur et nettoyage de la case - $errheure[$i][$j]=true; - $erreur=true; - } - } elseif (preg_match(";^(\d{1,2})-(\d{1,2})$;", $_POST["horaires$i"][$j], $heures)) { //si c'est un creneau simple type 8-11 - //si valeures correctes, on entre les données dans la variables de session - if ($heures[1] < $heures[2] && $heures[1] < 24 && $heures[2] < 24) { - $_SESSION["horaires$i"][$j] = $heures[0]; - } else { //sinon message d'erreur et nettoyage de la case - $errheure[$i][$j]=true; - $erreur=true; - } - } elseif (preg_match(";^(\d{1,2})h-(\d{1,2})h$;", $_POST["horaires$i"][$j], $heures)) { //si c'est un creneau H type 8h-11h - //si valeures correctes, on entre les données dans la variables de session - if ($heures[1] < $heures[2] && $heures[1] < 24 && $heures[2] < 24) { - $_SESSION["horaires$i"][$j] = $heures[0]; - } else { //sinon message d'erreur et nettoyage de la case - $errheure[$i][$j]=true; - $erreur=true; - } - } elseif ($_POST["horaires$i"][$j]=="") { //Si la case est vide - unset($_SESSION["horaires$i"][$j]); - } else { //pour tout autre format, message d'erreur - //$errheure[$i][$j]=true; - //$erreur=true; - $_SESSION["horaires$i"][$j] = $_POST["horaires$i"][$j]; - } - } - } - } -} - print '
'."\n"; // affichage de tous les jours choisis -if (issetAndNoEmpty('totalchoixjour', $_SESSION) && (!issetAndNoEmpty('choixheures_x') || $erreur)) -//if (1==1 || GETPOST($_SESSION['totalchoixjour']) && (! GETPOST('choixheures_x') || $erreur)) +if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) { //affichage des jours print '
'."\n"; @@ -509,37 +510,22 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) && (!issetAndNoEmpty('choixheur //affichage de la liste des jours choisis $nbofchoice=count($_SESSION["totalchoixjour"]); + for ($i=0; $i<$nbofchoice; $i++) { print '
'.dol_print_date($_SESSION["totalchoixjour"][$i], 'daytext').' ('.dol_print_date($_SESSION["totalchoixjour"][$i], '%A').')'. $langs->trans("ErrorBadFormat") .'


'."\n"; - - //si un seul jour et aucunes horaires choisies, : message d'erreur - if ((GETPOST('choixheures') || GETPOST('choixheures_x')) && (count($_SESSION["totalchoixjour"])=="1" && $_POST["horaires0"][0]=="" && $_POST["horaires0"][1]=="" && $_POST["horaires0"][2]=="" && $_POST["horaires0"][3]=="" && $_POST["horaires0"][4]=="")) { - print '
'. $langs->trans("MoreChoices") .'
'."\n"; - $erreur=true; - } -} - -//s'il n'y a pas d'erreur et que le bouton de creation est activé, on demande confirmation -if (!$erreur && (GETPOST('choixheures') || GETPOST('choixheures_x'))) { - $taille_tableau=count($_SESSION["totalchoixjour"])-1; - $jour_arret = $_SESSION["totalchoixjour"][$taille_tableau]+200000; - $date_fin=dol_print_date($jour_arret, 'dayhourtext'); - - print '
'. $langs->trans("PollWillExpire",2) .'
'. $langs->trans("RemovalDate") .' : '.$date_fin.'
'."\n"; - print '
'."\n"; - print ''."\n"; - print ''."\n"; - print''."\n"; + print ''."\n"; print '
'. $langs->trans("BackToHoursSetup") .'
'. $langs->trans("CreatePoll") .'
'."\n"; } diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index 850a87b9dbd..9a178b280ee 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -78,10 +78,32 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET } else { $_SESSION['allow_spy'] = false; } + + $testdate = false; + + if (GETPOST('champdatefin')) + { + $registredate=explode("/",$_POST["champdatefin"]); + if (is_array($registredate) && count($registredate) === 3) { + $time = mktime(0,0,0,$registredate[1],$registredate[0],$registredate[2]); + + if ($time !== false && date('d/m/Y', $time) === $_POST["champdatefin"]) { + //Expire date is not before today + if ($time - dol_now() > 0) { + $testdate = true; + $_SESSION['champdatefin'] = $time; + } + } + } + } + + if (!$testdate) { + setEventMessage($langs->trans('ErrorOpenSurveyDateFormat'), 'errors'); + } if (! isValidEmail($adresse)) $erreur_adresse = true; - if ($titre && $nom && $adresse && !$erreur_adresse) + if ($titre && $nom && $adresse && !$erreur_adresse && $testdate) { if (! empty($creation_sondage_date)) { @@ -104,6 +126,8 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GET * View */ +$form = new Form($db); + $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); llxHeader('', $langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); @@ -122,7 +146,7 @@ print ''."\n"; print ''."\n"; if (! $_SESSION["titre"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) { - print ""."\n"; + setEventMessage($langs->trans("FieldMandatory"), 'errors'); } print ''."\n"; @@ -134,7 +158,7 @@ print '" . $langs->trans("FieldMandatory") . ""."\n"; + setEventMessage($langs->trans("FieldMandatory"), 'errors'); } print ''."\n"; @@ -144,13 +168,24 @@ print '" .$langs->trans("FieldMandatory") . " "."\n"; + setEventMessage($langs->trans("FieldMandatory"), 'errors'); } elseif ($erreur_adresse && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) { $langs->load('errors'); - print ""."\n"; + setEventMessage($langs->trans("ErrorBadEMail", $adresse), 'errors'); } +print ''."\n"; print '
'. $langs->trans("PollTitle") .'" . $langs->trans("FieldMandatory") . "
" . $langs->trans("ErrorBadEMail", $adresse) . "
'. $langs->trans("ExpireDate") .''; + +if (!GETPOST('champdatefin')) { + //172800 = 48 hours + $champdatefin = time() + 172800; +} else { + $champdatefin = -1; +} + +print $form->select_date($champdatefin,'champdatefin','','','',"add",1,1); + print '
'."\n"; From 832fc8e0f33073afe7750e98c31fe26088dad1fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:42:08 +0100 Subject: [PATCH 53/90] Renamed NextStep button to CreatePoll --- htdocs/opensurvey/public/choix_autre.php | 4 ++-- htdocs/opensurvey/public/choix_date.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index 1037be6f714..0d156b751b7 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -45,12 +45,12 @@ if (isset($_SESSION["nbrecases"])) { $_SESSION["nbrecases"]=5; } -if (isset($_POST["ajoutcases"]) || isset($_POST["ajoutcases_x"])) { +if (isset($_POST["ajoutcases"])) { $_SESSION["nbrecases"]=$_SESSION["nbrecases"]+5; } // Create survey into database -if (isset($_POST["confirmecreation"]) || isset($_POST["confirmecreation_x"])) +if (isset($_POST["confirmecreation"])) { //recuperation des données de champs textes $toutchoix = ''; diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index b2c8f998351..d6708b3f902 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -536,7 +536,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) print ''."\n"; print ''."\n"; print'

'."\n"; - print ''."\n"; + print ''."\n"; print ''."\n"; } From acd847c4199db41ee6400abe187793608acceb9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:42:30 +0100 Subject: [PATCH 54/90] Fixed SQL error in opensurvey poll list --- htdocs/opensurvey/list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 73442d3cf6d..745bee3a22c 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -88,7 +88,7 @@ if ($action == 'delete') print ''."\n"; print ''."\n"; -$sql = "SELECT id_sondage, mail_admin, format, origin, date_fin, titre, nom_admin"; +$sql = "SELECT id_sondage, mail_admin, format, date_fin, titre, nom_admin"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as p"; // Count total nb of records $nbtotalofrecords = 0; From 33ec2814249a63a7202e36fde7434d00332f3fff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:44:19 +0100 Subject: [PATCH 55/90] Removed unexisting input checks in poll creation --- htdocs/opensurvey/public/create_survey.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index 9a178b280ee..f3851648d25 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -34,7 +34,7 @@ $origin=GETPOST('origin','alpha'); // On teste toutes les variables pour supprimer l'ensemble des warnings PHP // On transforme en entites html les données afin éviter les failles XSS -$post_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde', 'creation_sondage_date', 'creation_sondage_date_x', 'creation_sondage_autre', 'creation_sondage_autre_x'); +$post_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde', 'creation_sondage_date', 'creation_sondage_autre'); foreach ($post_var as $var) { $$var = GETPOST($var); @@ -53,7 +53,7 @@ $cocheplus = ''; $cochemail = ''; // Jump to correct page -if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre") || GETPOST("creation_sondage_date_x") || GETPOST("creation_sondage_autre_x")) +if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre")) { $_SESSION["titre"] = $titre; $_SESSION["nom"] = $nom; @@ -144,7 +144,7 @@ print '
'."\n"; print '
'. $langs->trans("Ref").''. $langs->trans("Title") .''. $langs->trans("Type") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .' 
'."\n"; print ''."\n"; -if (! $_SESSION["titre"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) +if (! $_SESSION["titre"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) { setEventMessage($langs->trans("FieldMandatory"), 'errors'); } @@ -156,7 +156,7 @@ print ''."\n"; -if (! $_SESSION["nom"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) +if (! $_SESSION["nom"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) { setEventMessage($langs->trans("FieldMandatory"), 'errors'); } @@ -166,10 +166,10 @@ print ''."\n"; -if (!$_SESSION["adresse"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) +if (!$_SESSION["adresse"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) { setEventMessage($langs->trans("FieldMandatory"), 'errors'); -} elseif ($erreur_adresse && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre') || GETPOST('creation_sondage_date_x') || GETPOST('creation_sondage_autre_x'))) +} elseif ($erreur_adresse && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) { $langs->load('errors'); setEventMessage($langs->trans("ErrorBadEMail", $adresse), 'errors'); From adcc4090b07ac32bbc2beb7cacbf906a91cfa90f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:46:04 +0100 Subject: [PATCH 56/90] =?UTF-8?q?Removed=20=E2=80=9Ctoday=E2=80=9D=20butto?= =?UTF-8?q?n=20of=20expire=20date=20input=20in=20poll=20creation=20form?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/opensurvey/public/create_survey.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index f3851648d25..3cf7aea6a74 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -184,7 +184,7 @@ if (!GETPOST('champdatefin')) { $champdatefin = -1; } -print $form->select_date($champdatefin,'champdatefin','','','',"add",1,1); +print $form->select_date($champdatefin,'champdatefin','','','',"add",1,0); print ''."\n"; print '
'. $langs->trans("PollTitle") .'
'. $langs->trans("OpenSurveyYourName") .'
'. $langs->trans("OpenSurveyYourEMail") . print '
'."\n"; From 4cdafba7a287af869917152b5ff3704fbbd3f45f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:49:49 +0100 Subject: [PATCH 57/90] =?UTF-8?q?Removed=20=E2=80=9Corigin=E2=80=9D=20inpu?= =?UTF-8?q?t=20use=20in=20poll=20creation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/opensurvey/public/create_survey.php | 7 ++----- htdocs/opensurvey/public/index.php | 5 +---- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index 3cf7aea6a74..e9df55effd8 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -29,8 +29,6 @@ require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); $langs->load("opensurvey"); -$origin=GETPOST('origin','alpha'); - // On teste toutes les variables pour supprimer l'ensemble des warnings PHP // On transforme en entites html les données afin éviter les failles XSS @@ -107,13 +105,13 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre")) { if (! empty($creation_sondage_date)) { - header("Location: choix_date.php".($origin?'?origin='.$origin:'')); + header("Location: choix_date.php"); exit(); } if (! empty($creation_sondage_autre)) { - header("Location: choix_autre.php".($origin?'?origin='.$origin:'')); + header("Location: choix_autre.php"); exit(); } } @@ -136,7 +134,6 @@ print_fiche_titre($langs->trans("CreatePoll").' (1 / 2)'); //debut du formulaire print '
'."\n"; -print ''; print '
'."\n"; diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/public/index.php index cc4693c76a3..80bf73707d0 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/public/index.php @@ -28,8 +28,6 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); -$origin=GETPOST('origin','alpha'); - $langs->load("opensurvey"); @@ -42,8 +40,7 @@ $arrayofcss=array('/opensurvey/css/style.css'); llxHeader('', $langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); print '
- -'; +'; print '

'.$langs->trans("OrganizeYourMeetingEasily").'


From a5a0962dab9047e98544de370dfd2cbb250b05c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 18:55:56 +0100 Subject: [PATCH 58/90] Fixed JS errors and little style changes --- htdocs/opensurvey/public/choix_autre.php | 6 ++++-- htdocs/opensurvey/public/choix_date.php | 2 +- htdocs/opensurvey/public/create_survey.php | 7 ++----- htdocs/opensurvey/public/index.php | 4 +++- htdocs/opensurvey/public/studs.php | 2 +- htdocs/opensurvey/results.php | 2 +- 6 files changed, 12 insertions(+), 11 deletions(-) diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/public/choix_autre.php index 0d156b751b7..41467471340 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/public/choix_autre.php @@ -113,12 +113,14 @@ if (empty($_SESSION['titre']) || empty($_SESSION['nom']) || empty($_SESSION['adr //partie creation du sondage dans la base SQL //On prépare les données pour les inserer dans la base -print ''."\n"; +print ''."\n"; print_fiche_titre($langs->trans("CreatePoll").' (2 / 2)'); -print '
'."\n"; + print '
'. $langs->trans("PollOnChoice") .'

'."\n"; + +print '
'."\n"; print ''."\n"; //affichage des cases texte de formulaire diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/public/choix_date.php index d6708b3f902..7a67c313739 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/public/choix_date.php @@ -320,7 +320,7 @@ else //Debut du formulaire et bandeaux de tete -print ''."\n"; +print ''."\n"; print_fiche_titre($langs->trans("CreatePoll").' (2 / 2)'); diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/public/create_survey.php index e9df55effd8..43d77593313 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/public/create_survey.php @@ -128,14 +128,12 @@ $form = new Form($db); $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); -llxHeader('', $langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); +llxHeader('', $langs->trans("OpenSurvey"), '', "", 0, 0, $arrayofjs, $arrayofcss); print_fiche_titre($langs->trans("CreatePoll").' (1 / 2)'); //debut du formulaire -print ''."\n"; - -print '
'."\n"; +print ''."\n"; //Affichage des différents champs textes a remplir print '
'."\n"; @@ -225,7 +223,6 @@ else print '
'."\n"; } print '


'."\n"; -print '
'."\n"; print ''."\n"; llxFooter(); diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/public/index.php index 80bf73707d0..f070a2f6f12 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/public/index.php @@ -37,7 +37,9 @@ $langs->load("opensurvey"); $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); -llxHeader('', $langs->trans("OpenSurvey"), "", 0, 0, $arrayofjs, $arrayofcss); +llxHeader('', $langs->trans("OpenSurvey"), '', "", 0, 0, $arrayofjs, $arrayofcss); + +print_fiche_titre($langs->trans("CreatePoll")); print '
'; diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 0620c2070b4..80d210d167c 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -256,7 +256,7 @@ if ($object->commentaires) print '
'."\n"; -print ''."\n"; +print ''."\n"; print ''; print '
'."\n"; diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index eadb4d26f17..cac6f7a4a9e 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -418,7 +418,7 @@ $toutsujet=str_replace("@","
",$toutsujet); $toutsujet=str_replace("°","'",$toutsujet); -print ''."\n"; +print ''."\n"; $head = opensurvey_prepare_head($object); From 2393e7c73291ef7480cc4aa6c2b2b61a31db4a83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 19:03:33 +0100 Subject: [PATCH 59/90] Moved creation poll wizard out of public folder --- htdocs/core/modules/modOpenSurvey.class.php | 2 +- htdocs/opensurvey/{public/images => img}/date.png | Bin .../opensurvey/{public/images => img}/sondage2.png | Bin .../opensurvey/{public => wizard}/choix_autre.php | 6 +++--- htdocs/opensurvey/{public => wizard}/choix_date.php | 12 ++++++------ .../opensurvey/{public => wizard}/create_survey.php | 8 ++++---- htdocs/opensurvey/{public => wizard}/index.php | 4 ++-- 7 files changed, 16 insertions(+), 16 deletions(-) rename htdocs/opensurvey/{public/images => img}/date.png (100%) rename htdocs/opensurvey/{public/images => img}/sondage2.png (100%) rename htdocs/opensurvey/{public => wizard}/choix_autre.php (96%) rename htdocs/opensurvey/{public => wizard}/choix_date.php (98%) rename htdocs/opensurvey/{public => wizard}/create_survey.php (96%) rename htdocs/opensurvey/{public => wizard}/index.php (90%) diff --git a/htdocs/core/modules/modOpenSurvey.class.php b/htdocs/core/modules/modOpenSurvey.class.php index 98830509bd7..6743d415ff1 100644 --- a/htdocs/core/modules/modOpenSurvey.class.php +++ b/htdocs/core/modules/modOpenSurvey.class.php @@ -157,7 +157,7 @@ class modOpenSurvey extends DolibarrModules 'titre'=>'NewSurvey', 'mainmenu'=>'opensurvey', 'leftmenu'=>'opensurvey_new', - 'url'=>'/opensurvey/public/index.php', + 'url'=>'/opensurvey/wizard/index.php', 'langs'=>'opensurvey', 'position'=>210, 'enabled'=>'$conf->opensurvey->enabled', // Define condition to show or hide menu entry. Use '$conf->NewsSubmitter->enabled' if entry must be visible if module is enabled. diff --git a/htdocs/opensurvey/public/images/date.png b/htdocs/opensurvey/img/date.png similarity index 100% rename from htdocs/opensurvey/public/images/date.png rename to htdocs/opensurvey/img/date.png diff --git a/htdocs/opensurvey/public/images/sondage2.png b/htdocs/opensurvey/img/sondage2.png similarity index 100% rename from htdocs/opensurvey/public/images/sondage2.png rename to htdocs/opensurvey/img/sondage2.png diff --git a/htdocs/opensurvey/public/choix_autre.php b/htdocs/opensurvey/wizard/choix_autre.php similarity index 96% rename from htdocs/opensurvey/public/choix_autre.php rename to htdocs/opensurvey/wizard/choix_autre.php index 41467471340..aec26c5ca48 100644 --- a/htdocs/opensurvey/public/choix_autre.php +++ b/htdocs/opensurvey/wizard/choix_autre.php @@ -17,7 +17,7 @@ */ /** - * \file htdocs/opensurvey/public/choix_autre.php + * \file htdocs/opensurvey/wizard/choix_autre.php * \ingroup opensurvey * \brief Page to create a new survey (choice selection) */ @@ -139,12 +139,12 @@ print ''."\n"; //ajout de cases supplementaires print ''."\n"; -print ''."\n"; +print ''."\n"; print '
'. $langs->trans("5MoreChoices") .''. $langs->trans("5MoreChoices") .'
'."\n"; print'
'."\n"; print ''."\n"; -print ''."\n"; +print ''."\n"; print '
'."\n"; //fin du formulaire et bandeau de pied diff --git a/htdocs/opensurvey/public/choix_date.php b/htdocs/opensurvey/wizard/choix_date.php similarity index 98% rename from htdocs/opensurvey/public/choix_date.php rename to htdocs/opensurvey/wizard/choix_date.php index 7a67c313739..606b1ecf873 100644 --- a/htdocs/opensurvey/public/choix_date.php +++ b/htdocs/opensurvey/wizard/choix_date.php @@ -17,7 +17,7 @@ */ /** - * \file htdocs/opensurvey/public/choix_date.php + * \file htdocs/opensurvey/wizard/choix_date.php * \ingroup opensurvey * \brief Page to create a new survey (date selection) */ @@ -320,7 +320,7 @@ else //Debut du formulaire et bandeaux de tete -print ''."\n"; +print ''."\n"; print_fiche_titre($langs->trans("CreatePoll").' (2 / 2)'); @@ -332,11 +332,11 @@ print '
'."\n"; //debut du tableau qui affiche le calendrier print '
'."\n"; print ''."\n"; -print ''; +print ''; print ''; -print ''; +print ''."\n"; print '
'.$motmois.' '.$_SESSION["annee"].'
'; print ''; -print '
'; +print ''; print '
'."\n"; print ''."\n"; @@ -503,7 +503,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) } if ($_SESSION["nbrecaseshoraires"] < 10) { - print ''."\n"; + print ''."\n"; } print ''."\n"; diff --git a/htdocs/opensurvey/public/create_survey.php b/htdocs/opensurvey/wizard/create_survey.php similarity index 96% rename from htdocs/opensurvey/public/create_survey.php rename to htdocs/opensurvey/wizard/create_survey.php index 43d77593313..cad66b34d4a 100644 --- a/htdocs/opensurvey/public/create_survey.php +++ b/htdocs/opensurvey/wizard/create_survey.php @@ -17,7 +17,7 @@ */ /** - * \file htdocs/opensurvey/public/create_survey.php + * \file htdocs/opensurvey/wizard/create_survey.php * \ingroup opensurvey * \brief Page to create a new survey */ @@ -133,7 +133,7 @@ llxHeader('', $langs->trans("OpenSurvey"), '', "", 0, 0, $arrayofjs, $arrayofcss print_fiche_titre($langs->trans("CreatePoll").' (1 / 2)'); //debut du formulaire -print ''."\n"; +print ''."\n"; //Affichage des différents champs textes a remplir print '
'."\n"; @@ -217,9 +217,9 @@ else //affichage des boutons pour choisir sondage date ou autre print '
'."\n"; print ' '."\n"; - print ''."\n"; + print ''."\n"; print ' '."\n"; - print ''."\n"; + print ''."\n"; print '
'. $langs->trans("CreateSurveyDate") .'
'. $langs->trans("CreateSurveyStandard") .'
'."\n"; } print '


'."\n"; diff --git a/htdocs/opensurvey/public/index.php b/htdocs/opensurvey/wizard/index.php similarity index 90% rename from htdocs/opensurvey/public/index.php rename to htdocs/opensurvey/wizard/index.php index f070a2f6f12..6bb6403ff72 100644 --- a/htdocs/opensurvey/public/index.php +++ b/htdocs/opensurvey/wizard/index.php @@ -46,8 +46,8 @@ print '
print '

'.$langs->trans("OrganizeYourMeetingEasily").'


-
-
+
+
'; From 044d81b0a56af053982b7fab51a6407db39809ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 19:04:32 +0100 Subject: [PATCH 60/90] Removed unused images --- htdocs/opensurvey/img/accept-32.png | Bin 2449 -> 0 bytes htdocs/opensurvey/img/add.png | Bin 2017 -> 0 bytes htdocs/opensurvey/img/back-32.png | Bin 2026 -> 0 bytes htdocs/opensurvey/img/csv.png | Bin 804 -> 0 bytes htdocs/opensurvey/img/ical.png | Bin 829 -> 0 bytes htdocs/opensurvey/img/info.png | Bin 777 -> 0 bytes htdocs/opensurvey/img/next-32.png | Bin 2017 -> 0 bytes htdocs/opensurvey/img/opensurvey_logo.png | Bin 37593 -> 0 bytes htdocs/opensurvey/img/reload.png | Bin 1544 -> 0 bytes htdocs/opensurvey/public/images/accept-24.png | Bin 1696 -> 0 bytes htdocs/opensurvey/public/images/accept-32.png | Bin 2449 -> 0 bytes htdocs/opensurvey/public/images/accept.png | Bin 901 -> 0 bytes htdocs/opensurvey/public/images/add-16.png | Bin 845 -> 0 bytes htdocs/opensurvey/public/images/add-24.png | Bin 1393 -> 0 bytes htdocs/opensurvey/public/images/add.png | Bin 2017 -> 0 bytes htdocs/opensurvey/public/images/back-32.png | Bin 2026 -> 0 bytes htdocs/opensurvey/public/images/calendar-32.png | Bin 2155 -> 0 bytes htdocs/opensurvey/public/images/cancel.png | Bin 587 -> 0 bytes htdocs/opensurvey/public/images/chart-32.png | Bin 2059 -> 0 bytes htdocs/opensurvey/public/images/csv.png | Bin 804 -> 0 bytes htdocs/opensurvey/public/images/fforward.png | Bin 1359 -> 0 bytes htdocs/opensurvey/public/images/ical.png | Bin 829 -> 0 bytes htdocs/opensurvey/public/images/info.png | Bin 777 -> 0 bytes htdocs/opensurvey/public/images/medaille.png | Bin 753 -> 0 bytes htdocs/opensurvey/public/images/next-32.png | Bin 2017 -> 0 bytes htdocs/opensurvey/public/images/next.png | Bin 1349 -> 0 bytes htdocs/opensurvey/public/images/previous.png | Bin 1388 -> 0 bytes htdocs/opensurvey/public/images/reload.png | Bin 1544 -> 0 bytes htdocs/opensurvey/public/images/rewind.png | Bin 1364 -> 0 bytes 29 files changed, 0 insertions(+), 0 deletions(-) delete mode 100755 htdocs/opensurvey/img/accept-32.png delete mode 100755 htdocs/opensurvey/img/add.png delete mode 100755 htdocs/opensurvey/img/back-32.png delete mode 100755 htdocs/opensurvey/img/csv.png delete mode 100755 htdocs/opensurvey/img/ical.png delete mode 100755 htdocs/opensurvey/img/info.png delete mode 100755 htdocs/opensurvey/img/next-32.png delete mode 100644 htdocs/opensurvey/img/opensurvey_logo.png delete mode 100755 htdocs/opensurvey/img/reload.png delete mode 100755 htdocs/opensurvey/public/images/accept-24.png delete mode 100755 htdocs/opensurvey/public/images/accept-32.png delete mode 100755 htdocs/opensurvey/public/images/accept.png delete mode 100755 htdocs/opensurvey/public/images/add-16.png delete mode 100755 htdocs/opensurvey/public/images/add-24.png delete mode 100755 htdocs/opensurvey/public/images/add.png delete mode 100755 htdocs/opensurvey/public/images/back-32.png delete mode 100644 htdocs/opensurvey/public/images/calendar-32.png delete mode 100755 htdocs/opensurvey/public/images/cancel.png delete mode 100644 htdocs/opensurvey/public/images/chart-32.png delete mode 100755 htdocs/opensurvey/public/images/csv.png delete mode 100755 htdocs/opensurvey/public/images/fforward.png delete mode 100755 htdocs/opensurvey/public/images/ical.png delete mode 100755 htdocs/opensurvey/public/images/info.png delete mode 100755 htdocs/opensurvey/public/images/medaille.png delete mode 100755 htdocs/opensurvey/public/images/next-32.png delete mode 100755 htdocs/opensurvey/public/images/next.png delete mode 100755 htdocs/opensurvey/public/images/previous.png delete mode 100755 htdocs/opensurvey/public/images/reload.png delete mode 100755 htdocs/opensurvey/public/images/rewind.png diff --git a/htdocs/opensurvey/img/accept-32.png b/htdocs/opensurvey/img/accept-32.png deleted file mode 100755 index c94c066edee91b802be27455483a21113fd1c1eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2449 zcmV;C32yd@P)C<8Gin2@9e$F=FSqrnGlo`JVpdmsEW|4K(!#YA}!Fd6{il2ma)P#jMUc7w4P{H z)PmzdYVCjuBD7S3SPrQH$+4ScvuCo|Z1((j|Gxhpj;thzewjaCCg1Tq-}}7Z`@SE8 z%WR%550grzr%Soq9FF7aAxYIN!x|+T%Vx7tiIG}GF?)<*nY}8t>Tq@C80m8MWxi=b zTW7m5lT5GHX>==%Mx#rk(SYZ9Wh|2FS9-JBM0_NOqKJ4rj=o4=`(QHuyr5P+J+XRx z^g9!1X+3?PNo&|_wOZ{WlSR{4`|y72L44{xfsTkDS!w8y9K)c>RD`Qa>u_uJHCRwH z3#GaP<7@lBk-!;Gn^VmQyPZzw zl!HA-vF!cF&=m`#P;Y@hRN>9m+ZC>}vzun%Q=8@A1V3^N?HaC_XxlgP}g zA7AGil>q5&QZd4Q8T_v&cjD(CZGoOnTVZlS#h(RcrID#i=RQX1)7cC>{XPt);&}F^ zU*nz$x1pn>{dfxE%;A>E+or?Qv9q+ebm7ZiHsSt{of zh!9Eg@g09beZg3?d)+I}Ii|8lm#^EX;Z&_^qt;&g`V#bsanx8!p(PYO`I(wP1qGZ= z&&n2%l!eS$9~dIQC?xKgyd3i?Z&Zi{6A}FC-&@cU@!(8fH_V(4CztL(*c%Kbq*V39 zF%zN+0e7c+U5T@#@pqqZ#p9p9jHxyk?1BI-Cn={_k?y=qfE_abIVpzwpbS2}=vw@= zc2%Bh45SCKc-LC^Qc)ZawPVAypWxxzWpvZp)=!yKx0&$={UkBlsx|3cm9Nc*O;BUJ z(GHD#aspOSFPsJE37J(smPjyp5}4Iitev(IT3(k&;F%Lmc;?tkC@(OgWgvt|It9DAnj{_=h2$r(6?Q^1uU#s18B zN4mH6K?+7SdEiF^r*ZeLhj3M)38^fDXhuXw>@3KT2Okk*&2~gZcj(k2R@W*R5pxxcRo(Tp5+iiCHlDY3Jz-(tPESf@`8qg7#pny-X z)}c2M#9*c$DRR!Vm>^*By!kB}2OgU7BuS;oBd~Js7NpWA;M57o&L+#HKVPqt(gf0 zgDrdkH-6E3H{iAkD|9M@vdN&RM~!U(Zgwp>>&*lB+sQvraOt3{I7FbvdL=_a-MHW-RrgKrxlLS#5@I~?Nf@V24G&A9FXuHK? zU9x)5?WocPVbj_WNpw+qjY2CF;>T0A!KojU2b7a<#ZyhV0nE_Z-+|`NO{lXZN1bCKYq|$wC^gQ-s=7zu>2$A`2{c$NmP3aF`>_4X-=aht zB?qv%o1luxBZ5 zDUIM#ElWXjAX|*USBhI+-3!aOkoswRjW$N+n+kT7V-2!2uxx`a|)~h zi)vrQ81t1%C46(!1GvJt8+v~9DtzelI=W#qu(shTL_+oqZ;JJw3;>RFqbhyGAZb&ysKwiQO`Z9?IPZI=4|_c~nWGELr1HM5MFjnJ5XQ zw+m$jQwe+-WyG-v`28~Yyo$1_(aZ7+B>X1Ib+4GsmW5ela5A_DE#ZBXh}tMA^-x;w zqlMZ0qLjo^^A^e-#dPX1m|&ZQTE`7!3Rd2)iDX<}URL?d50l}|PmZb4=r-&1dV5x) zIzM_0K1xKPLKr{oN|u@vKtYA5X4DvFpBP+_bmYw_rhL_+c8;JS+Ps&Dr+8{Wcn zMKc+3H9bmKYPC9-{4ka40Qm|gvoU3khBGMt%jI&&WHN}wV(rOf;(0;EKkY0k`RU}uW#Ng84APnrGsmdkD+t12hokVap6CAuvts8*RzbkI P00000NkvXXu0mjfpFpSJ diff --git a/htdocs/opensurvey/img/add.png b/htdocs/opensurvey/img/add.png deleted file mode 100755 index 7409ef332d2435c3fb43c879a80c9fcb5820f796..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2017 zcmV<72Oju|P)h@HZ0;rAVR0}k zN|%}V@?{*#?f~YON|>7~f@Kv9d3jvv;Lv`S!Nt!dw4Y3f@u2c4efJXaf4(VzBI4K5 za`{yi>m5wR3KMd&WVq5rWIGdZIV3o&lI9^8;SeD91$p>FJVwV@ockn!bMJ?hkVia1 zejX?8{W<{FFg)HWUX_`-pxS{fmx$7WD2nsqa60s$35g+Q4gZ43AROf|?&IJcHDTP( zp`|{A&U(L35tT>DZ~bfl)bQ!t>+?6y<>r=|uxz0p-z^WqW|1caoErSb=V+Y8;IIk( zZVNo^BHI7#k;H(c&cqw30Q`t^^6wP=tcd;g0tt_<7{=UeAw{6+gHM+ELsT0bHVk$t z=zhIl7X9KTigRc>02PdxJw4~A^K8qO3wV6(Ab4IeIFE}gB2gAGfrUuZEz7zKg?=Ua zPslWKnWa>)20*HP>m?g{niY6zd!mXUFQre;PX@pdpGm7KxV>^chhIJ1Z^*OiU@X9E z`BjwEOGZ^kL=Izu39$r$P{9x|fu1k4+R**4Fan3&O=NbrihBaUX135#yI^ZRUVW?+ zCe!tik5Oe`^_gh2#%vWkzK1)rw`$L4NB5#9^qD~~6B2L4jFG6>Fp$P3JKVLskov+k zWLBqoWr^Et8*VAx_gfE2@?*&lhQ`T(-!x^E*_KjlntuWuW7gg!MZke8%P|`7m}2V< zo6#SzCez`knLKk?LFC=eOQbGW0aPN#di79Mq_<>l@QOipWMCVbM&F*XE}A{*@I`sezgozR`+Sg25ARk1oVe@hynBAP^J)^|B?=yj zaWfX$o!OhPy3h#VaQ`-{g#$Bw8MwP+9g+aMc>byH#XB;WhStmqg{)8d4Dv^i{R zO)yl-%E2BhY<9iXUKn&B7}ux&zPuV#7d}TAXHG{dk`)Q{{kw2%s8&w{&F)v-P7Qz< z2YQ~k2!=C3IoN9j!|TiB%l-@q^lxG;`2AfiuyFQo6nui>QUu$-T8M-a*P7Ai9T|EZ z2!Q(+EnrwG%>A8Ko;B<3^HgsJBx*Wl)`r)Xw15=<7XVSFwtjjc1UX923{JMY^qrGt zz`Ol|*4{jOnrwNFIh>|AO*0TDAZispod0W7&94E&%;wxOl@waXN3PW3-ND~ztvyaN z@ZS!nHc-JQV*J?_uj={u_V=unw=Okl0GfuJ7?0`QPl+oiH!nrLy~NzEcyWaVID0#X%N*7sw0H(zRM?7&F)n{H$T1d39E*z(`QGQ z-!^F&*LV`Gym!uu7|Kl92dWBwh;8N18)UDvK1<#3FDcRiw0GJOj_Hjk_G&8>PqZ?*8ErX~ zURtn7Ps909Cx)Wd8J$%Z{s6yRxXU2h-SQkQx%X%MCJ^B0bY#|7KvxLj8|}%>NTtms zi}~73bs2h-Nbor2&4Q>*UwjW0t;aJJI}NfIns?&Ez7M9gm&oTpuUR{$X+5B}9q0;f zCe@o05qRP=Yo1SERQ8}vGx9_&IOlUsn~K}a3-H&K2dP1^+PkdCSa)HB!9 z@+aE+%MJT+IPno!)70SM5eAW{MbF%Y+5AYn&D=8=k6Nd^~@AV(DaJg5fm4MRC}Swt|gg-q%u+t1YE z*3xwDFW=~L6<50`QP+>*0g=bJWY&NP3ah1uk*@_#$e_-vHJXWjFCHHPK68)Jx$P0? zcSg(xfJ(*0`|SCqmGjnRGFeN~A#q&FJAybNqx1-k6!Vxzq5b${=vT98FRQa@^7j+( z;M3R#Tz5D)`)z4371+SIED%*d)VvZ=1@RFPLSGb#jv&M~zlf-G6#C_~A(iv5v&$3` zuY!I(|Bm*~GwJ%RL9{vSdkELp_tTd$a$4 z&-eZ3od2BvXE1k}M|vM=HR)1@K{>C1SsoCQ2uc!$=E}j zF*TK|HT>e$92PAHZm$$!Efv7B65JjhS9&;fpJj0IGZEb_Ng*DTKBo8fkbd(25-2DA zQ%)&gyYwLwv$RHoqJk7GxdIB!NmxuGOnOnV5R7mLkotl=d?6kaUKZy*Oybb0M&W&*fgaz0S&67iqBiEQ zOBi^`krMpEBZSjD8-b;amTfKm@vVl{YZBP{;0SnL$}k=mSVW>MVhI)kxjU6oO-S@9 z(swdND^IZ$3O0j~JiqI*0rv9}T#fdqlt@+4D;?7baHOYm?wkMB>W4Ty^?gT1oMi*v z0I$SXlCp0Zc{n0)@Fp~fC5ePghKMET`9hZg1OE&o@Sd}srhQH3Jw>37U0`Zl@)H|g zc&rZ^&9#+#DYM6X8d_~;v~0$eq<6y^J_%R!%nTwaV&aKtF&@=sETpa72xsFU#G&vO zn${#+Wl1j?9=@%zVYdqlZL#zV?nyG>*UT{fm4eM!YuyWm;Rr~?k-_g_AoQm&# z;Rxu{;qa3uProN2@@C&<8eS|Ds78_g*mw68WBW#D8hq5JRR~-!%M0rW{8<8L)4z3i z-@pgX?KcdG!>`A%Uzg5{zAHM|pYMk>9$O<5c%ENXw(HP4J``D!%A^3ry4Pi#5$}~n zkK$h2?=rw;`N;VsPK`HZ&5QG{T==5AVqZ?=wgw->*3su=0-vsUqU`I>{(3CU@G^mi zVqAuis^WTl+x8m*&&-AM6Nhosv4eI&Dr<83V?5f2bJG~TA1B~@ZQ!_UZS=7tg(df| z4X809mX}71m|DC%VNK~))YyJG1N_|BVZ7sb9Kz>-Pf6R58QzFSAu-k`!TC(Livi1s zFLs#Ng$v>e0sDjjF8{UIf77}R>ugWY06*nEh$D`tATV<;X*VzHc+Fz|JLqn*n~aB9q@@_Aw~4e`0m+LvdEmc2W@VuX zpMc3CxmcAZ;MRex!N7tC)RD#E6nN zriP(o!VGs*KkaRxBx*&&+Sg&r%Oo*DBjAW@> zxRP&tq$y7=5=kB>JO#9mnT!>bgl*Vg(}Y{{%QK9>Inazf7kA$fTqK*rgIeX7rqqDO zZlFI{M?=F-Wg;MQER|qR|W2<)|W?Or`9>4f~2% zeW{uc-nbT>;XH&>ncXq&lE6oF5OU(smCaHull146kcg=jRvb@2YPuxCpV&mBZ%s{` ztt%H=t?pZ-yZ9V-t!251Gkz%tn)wDW7K*=2h>BM-Dj_~DATbn0vL^`Pl3zen`~d3Z z^msPoH`8kukk&%Io_|^SpJ#H_TZt5)&#CMA@vE*LnTyf?0mRz>H4w9t8vpmbpQb1@7I~O+ue5CWtZi#AZox@gcwb{Xkx^Rf;Ty8yn6DWhJV4kC*wg94<7Vt zlteKm5+jKLV^qM1yt2HO4YZw^&a^Wfzb_m+@y40e_0^+M6ajz$03Zl}fU=sqfA9W} z@#^~O(a%3QB{YI^J_A4y)M^1_vjjn1H`Mc5t@6>y50A!C6seTL>`UqQ7p$DgY@K|> zQm^as;HM{#Qwj<3}(>R-AM4&+cd0t49%y2X`UaCBJg8YmB)K#uA{Z>9n zOp8>WCg#&r06`o8oz6gaIn`fY2FR)ssCr@3rc|5f%`bIJO$zbt__PK3gH51Sff`H}0ZWac9&q~*( zO@qNscV0VSU%X#sYO9)Qx4M=(eR(m}UFhondELHSnO2hr&mMO3 zv6gmw!P2y#u0c!?LPO88NyxOTj>XWm>*77F&55fo9Z?)iynObdfA;SdwVRl$W~G3* zEGt!2+1T-%ja32&!XdoMS_mM#IQK#{6D_nvjYu`GlvO3XdE)qYJJ;7ocW)c+jOW~JAFIgF1o0T4m{`Me0Ihhnq8)+Ikio?}&cs%LUgQ}P7&W|_$6rf8V4wuF1uIBp>J(ogED1)JBC6~kD zP&5UGq9EYXkjBMfez<4nQ*XPTaCRaB5|PMofXCxHNJYiiKkd>_VaBl7d|p-?2UwsUiH`)6im z?yv$yMMbG9rD{AmB{|(-FhHl*V`yjy3kxpvJ?q7jZYx$-R}l;bVS8$YTrNjPXQ#Wf zqaz%{6L!FlkB`6CL3SG&?$SP=k3DR$SYWf+NL2-PcXv@=Umwm7tyT-C(}}{u!g6wU z{OlqLYieu14BGA5qoX4Pi2c^qRumT(~!u^5Y?}wKVy~N$&;UT#MG=j?2u{vCRsT!qzu8H?ctwUf0&vu#sL z`${Uzkw_m%Q)kJMMFRidrcptD(PKhdAeUsCe7gvI{~G7tEBZ7YHBni200000NkvXX Hu0mjf!zXq{ diff --git a/htdocs/opensurvey/img/info.png b/htdocs/opensurvey/img/info.png deleted file mode 100755 index 4c665a4f0a10633d475480553f673bceb10f594a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 777 zcmV+k1NQuhP)2Rxem5IpiJG?3n;E5IYLG=}N_7!xQP~$15m*-)L}4Iw6GYKXN|*+M zrQQg2;YafWLX*(SCOWm5Ij3$qx3%qkdz?+|5kZ3BwVCn0t=d9> zXg}b{sq^mi!mCn2wiO<)hvb8p@nGcH=i{+zX0?nEnUu=nz%QHewz+DC05N_*@yYT* zU2a)gtS$o!HXcD@K&oKykY9lpz`5Xu5Yb=8#9%K*3^knu$O)8CrQMcVnOAbz-!{7& zSfB+lb%E{?5i}=eYtMzFuD3qA1IPT-bpqTA0KzF7^#$j`)A#LyOvYey3RDW6PG!iY z1S8P=BGA>`3R7PrWRtyl4L#%S8z0gkN-aC`%DA-LZ0NNNQ4$8)2kVl6&Pia{@Crsl zBjhFna^kG$`iMPs1J=Ivr%aFolxjoN8ck$eDpZ@c_%CnCV#3_S5LRZ4keT}-ag5&YGbu)2kHks7bO=lgU1AuDDys3k>KYjSBeJ)s zauOp}+N0$R`|Cd8#ba3%?*>FV*vg00000NkvXX Hu0mjf>jh(& diff --git a/htdocs/opensurvey/img/next-32.png b/htdocs/opensurvey/img/next-32.png deleted file mode 100755 index 934a254f307b0d140219e13c723a4fc6836ed881..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2017 zcmV<72Oju|P)t&MbGtffxkXglqcc4|fH zfYbqN;)o+m?eyWGbQEE%1Ox<3c!Usw33=__%_iCG`+4u)o_jA@ve~eN`Xy)g?)RO0 z&hIPIY0^>Q5w@)EFRi^#XeVY5iE7$sGLKg7XD>Im9NUpowvqEUYYea`p zFNd~+0dyVodSp?4lH?wo3V^5iY;N!Dx?-+)t`3X8<;C}^{4g03;}oVVpZFY(vTzLQ z&~GUaya9@hP7@s6 zGOq9KPl#S|Bk4IX8Gvd=&z>%Ps=~B*X$;S-b%5vP6yZ^kMJUW75@R8fxf2OZgiN0j zea92D^8`z-U{e4o{Owmw=(#9EXzU5gvBV;J<-&LX9MRdVm8IWV_6Ua;9_vr>vm(Il z<5mC4a^@qWEQdr6?wAgdIDt^W5U?0MUurku`q3bKAKF`q?Op}<7=Svq%+fgT=QFT# zOBZyyn>%+?WDj|CwA=J>DK;%cN!B7bLSGP_Nm)w}5?4r%;jlhsBQ33F*c*Ex^#z|M zwkAa?OLWEb=-rij{v=@5j7ahY=O_vA>L%T3h2?%cbl2a(GKy6s92M$u!M!hy&lS|8 z-)Bs^!%LPt`=N}`-@2~Sa+LyL848TY9^PGuU#znyl@EIKDu7#!6(z6Xp1dF5G`*Z4 z5HFx*q$$lM{azymyoO|4bbVz&&nw-Kha*cB0I%@1MGgD^?LmPpt}^+^*VhDdMt|27 z)ZvFE+f$Vhh$D_)apwc$Jg~ zB3#B`^xrp$XIJX!~`lRB;)iNUk)db0vxaLfDo(|+`T zPxBF>yy7t9Ho>kAo#Ur&+K(r1M`q*Fl*b;+=A>kt@!T%X&B&cQ5IPryUP;kouW z1CEjR_ZVR^YpM2Z{&Q6MCmZ0rBU{Yta=rrzWG%J9D%+ zhynIrwt-6+o-giqVLc{jAX(EU^6mdd`$lNr`n9R#rZh=B|;D6WdO$ zhn?-wVj#$)ttShjQlL5m2=2LdLV08Rs;&CxS3GM}k#%{@==P3Nc$@QBYOcUb3*JS( zG1XE-K>;r|KMq0Hmn?a9mjMGVgVrw`b|U_XV~4V|bjDn^x&8yI>LXv2$0=v-l=48i zWj1zvcOUW$g(>rb-;Vmvo`6%|pH!}7)s8MRf)OndMRvAB7Q)Mt#c1<^?8?&lnj0>R zSm6vCZ?p3!%g*(TU+Gmjfx06G_ zubndS%Msw8-7U0IgK-UsGUn^En3In-<(aH^>C{ffPHt!mKJv(;DZK;<|qus6GX-7-z_5+(K4(w9E03+MS?fBfmYueW1Gy$o6QC6 zU+&vhz~#&_-styP3`9*Bh?@~g@EL=Xl@j1W5)vU<>jxF(y+Ozau8Hu+Hxo-r$8xJE zTg&S3cGU)(t$dA*9Cfn|_lZ14CA|tHMwL);50ki|IG#X)a=bX!Nh{CCoWQ4cHzZjp zmxm@Q%2a8}iT0Rh=vGv$%VqLvvmtR@#yf&IHWvY6Eu`}^LB>e*187&XNiVBYDRuV~ zHSk&N1GWVg&iu_R=t@msY~*_d5GAj8SVnYMM6552c&8uY6|ab}^f9!{X>%swcT#K1 zh*m+no_|~Y%`@5Btwi?G=h*eU`G%<-QxW<<^yct2s{bAa00000NkvXXu0mjfHOJ}V diff --git a/htdocs/opensurvey/img/opensurvey_logo.png b/htdocs/opensurvey/img/opensurvey_logo.png deleted file mode 100644 index eb266ae05cf56559595b9580f33aeb9f4c4fced1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37593 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 Td-d diff --git a/htdocs/opensurvey/img/reload.png b/htdocs/opensurvey/img/reload.png deleted file mode 100755 index 9a2b2e82d365739d12d026dba599afa059bf2486..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1544 zcmV+j2KV`iP)7u0}Ark%-ooabuhQJ(6X(Mb?y4Px9#=sEtCO8Px2={|2_Zr{pWw3GW_>? zndEI=iQ?>hR+O17WinDY+L*J=ESbUrF4Oin$<5~hu;=JUDtK%!cwJL6vQ))}6$5>< zMdYLl;5Z4b9V%E`m8iY~{CQfG?p_N19t~qH*;W1@fr4a9=FpUNBNrOEfrSwa&hw*3 zdKf$}Asl58!U}{){2>M09uBQ`6Pgs$s3HD@^=B$`JpT~z&Tfr-( z1ZYrHAV3}qB9jS4x=AQPdYOnNZd7MVL0!2Yj`G&MgtwwQ!Bq8-^fS}f>)DFg)obXn?7IpjWQt+m`l#ZNZa%eQ%tyebZ74H1Fg@VWA z!#1Z19v}ZWIZO$IvXA`RD_Rki#KgBwBDm+#$OHj$rs}!|ma;|@f{~YE1f|L`S*H&k z_o7cvK?ZMb)4&(tWaBh-KfIRp83v@5LZ#5fJ&*d(=sAO{?c3lEHOo2=-NaaQ=soV+7Yar)#Tige+Gc>$WbF3EeF zM~y~Diky>%>r~FW8V@mO`TDX7UEz!U{P2?3bygiD2}oDxVacH1pymt|=X<#PU@Mxt zuE;?B^b=6rYXgj`TuQbV`x+*qBV?xHp}w#f;STWV=-|=tNyBZX?yC(PzZKC$C5C2) z2CbcO?`P-j#ONOL=;}7?tDl07u>A?|)A^oQQgi{Ss@|w{e2-tut7W~#r9nfRPOd!D z`W8RSAEA`K{xx1THC6+Bp?K^!5352N8JC+s$Hlh&NkjBT_F~M;+X6Q^vAJeMya0j} z|0bgxChPVlu%dAaY0F8KthjDA$|Wi{#i#~ocs+L4y#tfyYEptBX_K(5=qU9?2+Jz^ z%epZ2$7NGmya9I;LBVk5+k94=5>s3?rzHqR873h|(;sK;2dO1v#mg`udoDbp6E&`j z@|m}Cmt#);8rc12tgf2ykbvRpLjq^nogg!0pl(-mBBA3+LnYoKFzhDD7 zAYk5=A;{A9#n#~`pjW2hOv?crZrLiI^HYfaYBb0l?%w#fDdz6MjTiI_GxB-dcIt88 zt9b@|MCN$P$pLVTL!+w}*IXB<2o@1|tYRGa=vpZ{B$s@)-K9j6jhfCTAh4tEaExHu zl%?u3la{Bz6;R?vTly2=y;Az(yRj#zi;d3^JACa}cWp85L`(_Y-DWLK01m-(HbgEy zkQ+3g;mvC5{A)$1fQM7!LPLgr_8Y{uaq6^M!?bT*ytt3cME2vB34!R z16s5QI{2gUsmjynE-}1{>w#)?rTCyAV%8Ob*af*P!qu%`$*~hMy^vUeL#we87 zo;BW3oH5SGR0TSSRHEIVOCbOR8+`~>xuj@~>k@_WQ?jdi8t8chkJfOKxr}GU%ATr0 u3O%10rI8u&hMf_IP*0$b{o4#nw+)L=LtgAcxO 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 P00000NkvXXu0mjfpFpSJ diff --git a/htdocs/opensurvey/public/images/accept.png b/htdocs/opensurvey/public/images/accept.png deleted file mode 100755 index ada57a9ae60ebccf4cf8f4fcb9523cffbc6c51d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 901 zcmV;01A6?4P)dCy7H)TT{LFKH{8ZL@ZD61C8Mkl_ujB9adZqJv$Wvbir}b(lh?Vj@yy zDnk@6=ob|fyNMvPxT#26S7&h_#@ZFqW~3%<(zI#pN#FFGvo{Bgm-o}*egDtz{BIA3 z_fBYJ*hNHfhb+r0HC=NVmpVd9M){3WdZE6yKJ<1x_xfWbJRe9DU?H*mDuKLMu!}dV|-2 z45dgg;18dCg;ra0C(CAY4q}9iMqdPei9Yrn>bnGIu^lD>ka-;?R*t=c9xG1%eKlLHJi06p~{2TaLg&ig2L! z6s`_-;ojO)S(C!Mxp*QTI6iRR_bl3v@&dwwIF^9`!V3(*8-ULmze9s9r&2v_z1v!>vKds9;V5t*Gna;{QRw;{mX?1CZ~d1BsJ;6n(zDN4 zc@z_~3WA>Vz1-CFWc2&)^<^GA6Y6#NdhtQr{O25oll>@?i?P#l6lP+<-QjNB9{dTF z7Bd{C1fGtKBe3jN%mDbGtS@USwZm;&i{&-ng3TWfMy{jWQjJFYawKP`ao|xKD&z<& zFAAI4iRXzp{GQGjmrkd9I{LS_SjiY>XcFFr(`c}-X6ft3{5aN!;2$Tz(QB-%DWepN z>_D74u&0rgkeo~g?nW;AhT>=0*i|MFvB~`-njGtl;OFrnoPFwr)11j~pQ;O}weP}; z(k(%5e0J`}e@s+Ipl8rHU zIgy+Q49)cUejW0$fT>py9`r+6Ldk{IAM8gZzo;{l$!xBvS)k_4l!HhTIjoV)zP}S)WN_kl zq-G<=TaoNUed!7`l&s2XirA5*)L&Iy^TteXpIlD}Av;8oFgvS;ojIKg(JVFWTv1W^ bj-CGpV^3H~a~vrn00000NkvXXu0mjfc^9ui diff --git a/htdocs/opensurvey/public/images/add-16.png b/htdocs/opensurvey/public/images/add-16.png deleted file mode 100755 index 23d5bed776023cee0402e7c0b1649d57704e36d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 845 zcmV-T1G4;yP)|8WvWN;ij47sw?j7x|_Q?^be&3;f({(`?mg#x_uO;8OYpDlu%$EA zuI)_08kf3~5Dg=PhA~gC`Z^j=n`pc{F_|RbG;;=ff73Dh!F}Z_$ypIYvPFd)CkRH8 zFyS|%$E|674QDu1^om z4GRUdj@Jnc>8AE0x1B{bB>{*sgK2u=tYCmbPggZiClKOvf8L1Mc>^Ueqwlh>BOZwD zULZKQ<^0mts}}=$(CartQV3YWp={MNy}cH11r$v{jFOCmID|zO@7e(0U2iENX=Zoh zdqYWPs)R2-D`K>R1zT#_fa=^%9XAc{#FW^thTMNd>FUGgcaDkycR~r z0*-aUZOXa`9)tk2x67Y+FPAjnZVL=n#> zu3=(+9KBy0`0;ciK$fj#+;uPQB_I8E_=Vpypih@;Uyp`uE&B5G+cFGC1{PHlj<6W= zS`fYFY15za#6x?lbsdLZJ{6kwE6L?phe!F%I z+R$Fnl(x$&CBqZ7>xuLdc(S!g$4B2)LxiB?XpkT@#XxEBw1XG-{E>2I)@D;z{)O~B zo)&%;Y?xJ9D8FjJasZ=fh|j2)3u;gve;dR|q;OHnzb)OmjBRvPr4=V{w2_c(#EhJz z3nwlCl1SzJDWWMa$6FDKo&5VVC0d~|m964j)&k-*X3JE*Qa~D$hiALAh`ey8p2Xyz X@8?yrXY&hd00000NkvXXu0mjf$sm%K diff --git a/htdocs/opensurvey/public/images/add-24.png b/htdocs/opensurvey/public/images/add-24.png deleted file mode 100755 index c63af7f39062ad0d5b9f1c5f9afa617e7ada0d5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1393 zcmV-%1&;cOP)6#sqq-gdW-t$P6jF>D#QF+f0xI6@`_MgoI~JVHX0#Az@Rd1!=13>pF5Wz9XWWc(0uI%Mny0zW9+x2yOZ?9i(N7-nn;Up(HJ?A^;_ucdQ zO7P$GBIWg*1|<`6$@HuVN*19CS1)n*b}1G~#C7_!hVs3!0+2EE^B4}5`LFSd=ap&6 zoDyL2gfMb4M6j#^$AA_#hX!~50PdU*D{WVUzeglgP`}&%2f$F?mo;1e$-HtCJFQSg z(G)+jGbC`F0x3cuN(@4j{UHV(frZ1VMQ0nq?c;*%yzBpx`hP|_k_>>Qd~)Kd?2U8Q z7_hR~jTfE|(4f(PPXa&Y*l(iBeQpkI?L3-medsyo`T+{wq_O0u0ghyru4^f1@@;i`2UrSZ0n1X!LjE91h--A1x) zjV+!E!Ovnq;1Cj-q=ga{27@98Aw9gL2)qgqpqFW=?#))e1j$R(V06Xfo>+{Yc*SJWPJBO~JrsIuKc7cA0#c5DM25Ir@j|vcP z^_4{ds+S$edAnkZQ%y^^D+NwLn~;w3slQ^PevT?X@;9Q|x+LL@T}Xk|rB`dxT1VUY zptYJn$F)?|8wzLS`QfFvHrotPl*D|$S8xTBh5_sp;M>-v31^~ice+jR1UL)~aA^Ig zwV9+$)&**sWIm!0bhvmp1`}@|r4I@(W3pkkD);#A;Tub7(sSMYJX(7VYUf#Yclt^0 z%NphIl~~s_+EU>Qv6z}xjE#ARVdS#ojvT{-A+c_XC=uFe!MJTma^Y0R4p@acc!Ml3f z+xxRlA64A!N>>3k=O4ntNo$`8;D-GSjy?R40ubCB25?vX9VDrlFdu9*7Ks$O-e!U? zOvgepU|IGiq-nF_0T$)Gj&xltWuAZw*E-IPXi+yVxlSU;`QWE1`pcTCPPk{!1530` zkMFr`EYHm4(Cjv%$IFjyi(xu4|13@0%;9u2VSD|EIT*2U`ua6!x6`4siwNvDpNN`P zlx|76uw<(q{Q(Vb^=2eZ!Lj1gC@{qUS_hl3xo%zZT6E~>24E4qXovjUBX!VNoryH< zxR_qZ=vdtEH^JuT6CA%=_#=waXQ*<1%cSAh|-GL ztNHV#pQaH%t-)<~1_Vhn%DEzc7s_XCRORXir%?Iut5NoF2yogs1nDl4PIoG3aIT>0 zUq-I$uNUo1+gh;7s1~|WFu^UQJSoQzi)H%Qa9#3W1~JNUTO^>s=OnSnp zB+X|us2smAwIp+aiD>f;2orYHb14RZpw)*^L%$Mf?7s?G*+u;to(?n?z+;+Ac^%PS8~fPv4sYG{I}))SONY8M7L~y&{-FO00000NkvXXu0mjf-!+?f diff --git a/htdocs/opensurvey/public/images/add.png b/htdocs/opensurvey/public/images/add.png deleted file mode 100755 index 7409ef332d2435c3fb43c879a80c9fcb5820f796..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2017 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 Hu0mjf!zXq{ diff --git a/htdocs/opensurvey/public/images/info.png b/htdocs/opensurvey/public/images/info.png deleted file mode 100755 index 4c665a4f0a10633d475480553f673bceb10f594a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 777 zcmV+k1NQuhP)2Rxem5IpiJG?3n;E5IYLG=}N_7!xQP~$15m*-)L}4Iw6GYKXN|*+M zrQQg2;YafWLX*(SCOWm5Ij3$qx3%qkdz?+|5kZ3BwVCn0t=d9> zXg}b{sq^mi!mCn2wiO<)hvb8p@nGcH=i{+zX0?nEnUu=nz%QHewz+DC05N_*@yYT* zU2a)gtS$o!HXcD@K&oKykY9lpz`5Xu5Yb=8#9%K*3^knu$O)8CrQMcVnOAbz-!{7& zSfB+lb%E{?5i}=eYtMzFuD3qA1IPT-bpqTA0KzF7^#$j`)A#LyOvYey3RDW6PG!iY z1S8P=BGA>`3R7PrWRtyl4L#%S8z0gkN-aC`%DA-LZ0NNNQ4$8)2kVl6&Pia{@Crsl zBjhFna^kG$`iMPs1J=Ivr%aFolxjoN8ck$eDpZ@c_%CnCV#3_S5LRZ4keT}-ag5&YGbu)2kHks7bO=lgU1AuDDys3k>KYjSBeJ)s zauOp}+N0$R`|Cd8#ba3%?*>FV*vg00000NkvXX Hu0mjf>jh(& diff --git a/htdocs/opensurvey/public/images/medaille.png b/htdocs/opensurvey/public/images/medaille.png deleted file mode 100755 index 97a22b72eea2e8d65655993c68a9e03f6a40aa9e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 753 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 diff --git a/htdocs/opensurvey/public/images/next.png b/htdocs/opensurvey/public/images/next.png deleted file mode 100755 index 24d94e830a33157c791a714ab60565f9aebf0d6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1349 zcmV-L1-kl)P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igW1 z5hpUz)>8fe00hNJL_t(Y$BmXrY+OYUhQIE9%e?W79pfwxORy4$m?T&sL1aOg9fCLj zVmSbU2ysD3zzKwekPrwFaRG!7%LNhO64na{5MqgR~3P>KRv+y>qK7QzA9w{sEjCZIv>H#~45ati_dLTsgtUF*b^@afC}s1eG>S9HCi`HZo8pNMcO68$YuDY#H6V z6&Q4YBP_pFU3>Se8OxRwo{3<>5F15c45)$}A*vYXaBXF94yn}(Z;}{|=9tFrEh~`x z84Iip=dbB&?_b&i$2nj!496j^oDj~Q*)m?5dm`Z}EBk=UEO1TRic4_iQUMPC&cO27 z3D2(W<>GnmXr3KYda4073J5yeQ4vhwDD|!axW*E-tuCLo1Vm5~)C-#XmVv7m&g9bh zT|9S19~-V*!onG)qdfTOz*yl)rHpYF6(O8G55n>)>#DPQf{tndo_jRU(L5&~87UG) zwU~|J+*3Pw=ceU6c>V%9LetXyS3IsQLA_w25L-T>$GS?j)Fg4LGC+1<7*r0+#K2nC zEkBu$Z(GGp{c~IU&2uIUix7)ohSzcgxk01MUD3IF0PqTe{76&s=1{BS*g48fP z%7c;G1dqM3jTb%}!bf2X&^IznSa>Y;2@oMaxDQRowm2ZSrOJ(Q&lyFYH5Eo{$oK@a z+hWc;eJ&f`|CV)6f57J7Mp0v0L>?X*!5^xjxhLKA5&3~1?>B%mN%gz#JD=|}VM2bW zhNKNN_n7)PT2644GBS}K%|m@0lY6L?!CJJDA+>QNtugxcLp!ulU+MrQZ|s)Z$PIDt z*~U0qfO&x+00m96Vtu4oSLldBo+INEs0ia=PbYk z0h%@nKANHUFYz92G{6h#;3m?Y?>`AVb!0zyFa7b$MJ7y^hTXj_(lnb)ykh~YVnk8z zQ4!MbKV*FS8?OMjAFJUg@Oootdzc>>S`*IcwYF5jMj-@6bu~rJz!-xuwy5MH__1N? zTVKx8!A%bXcTH`X(>48-xL|$UyLzCsaFq#WEdb*VOCrru^8JIPL!WEo=Py1){5`-I z$NQ>ijx&L4vB7|ApS8%ul`a%y;?S^+{ka3lo6nYSrUUo~KxWuI!U%fE00000NkvXX Hu0mjfSMp}6 diff --git a/htdocs/opensurvey/public/images/previous.png b/htdocs/opensurvey/public/images/previous.png deleted file mode 100755 index b4b79aeec517f11788920581a3b6044a2bf80930..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1388 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 Date: Sun, 5 Jan 2014 19:09:20 +0100 Subject: [PATCH 61/90] Removed odd html attributes --- htdocs/opensurvey/wizard/choix_autre.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/opensurvey/wizard/choix_autre.php b/htdocs/opensurvey/wizard/choix_autre.php index aec26c5ca48..fb869d65c69 100644 --- a/htdocs/opensurvey/wizard/choix_autre.php +++ b/htdocs/opensurvey/wizard/choix_autre.php @@ -139,12 +139,12 @@ print ''."\n"; //ajout de cases supplementaires print ''."\n"; -print ''."\n"; +print ''."\n"; print '
'. $langs->trans("5MoreChoices") .''. $langs->trans("5MoreChoices") .'
'."\n"; print'
'."\n"; print ''."\n"; -print ''."\n"; +print ''."\n"; print '
'."\n"; //fin du formulaire et bandeau de pied From 0a3a6c0f88790863f87fabb7074eac7842b477d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 19:13:12 +0100 Subject: [PATCH 62/90] Restricted survey creation to $user->rights->opensurvey->write --- htdocs/opensurvey/wizard/choix_autre.php | 3 +++ htdocs/opensurvey/wizard/choix_date.php | 3 +++ htdocs/opensurvey/wizard/create_survey.php | 4 +++- htdocs/opensurvey/wizard/index.php | 4 +++- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/htdocs/opensurvey/wizard/choix_autre.php b/htdocs/opensurvey/wizard/choix_autre.php index fb869d65c69..302cbfccf6a 100644 --- a/htdocs/opensurvey/wizard/choix_autre.php +++ b/htdocs/opensurvey/wizard/choix_autre.php @@ -27,6 +27,9 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); +// Security check +if (!$user->rights->opensurvey->write) accessforbidden (); + /* * Action */ diff --git a/htdocs/opensurvey/wizard/choix_date.php b/htdocs/opensurvey/wizard/choix_date.php index 606b1ecf873..25f6ddc2453 100644 --- a/htdocs/opensurvey/wizard/choix_date.php +++ b/htdocs/opensurvey/wizard/choix_date.php @@ -27,6 +27,9 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); +// Security check +if (!$user->rights->opensurvey->write) accessforbidden (); + //le format du sondage est DATE $_SESSION["formatsondage"] = "D"; diff --git a/htdocs/opensurvey/wizard/create_survey.php b/htdocs/opensurvey/wizard/create_survey.php index cad66b34d4a..a8169d9d5da 100644 --- a/htdocs/opensurvey/wizard/create_survey.php +++ b/htdocs/opensurvey/wizard/create_survey.php @@ -27,8 +27,10 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); -$langs->load("opensurvey"); +// Security check +if (!$user->rights->opensurvey->write) accessforbidden (); +$langs->load("opensurvey"); // On teste toutes les variables pour supprimer l'ensemble des warnings PHP // On transforme en entites html les données afin éviter les failles XSS diff --git a/htdocs/opensurvey/wizard/index.php b/htdocs/opensurvey/wizard/index.php index 6bb6403ff72..fab1a86320d 100644 --- a/htdocs/opensurvey/wizard/index.php +++ b/htdocs/opensurvey/wizard/index.php @@ -28,8 +28,10 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); -$langs->load("opensurvey"); +// Security check +if (!$user->rights->opensurvey->write) accessforbidden (); +$langs->load("opensurvey"); /* * View From f5201b97a54ebd9a7449adc0483a38594e239a6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 19:15:48 +0100 Subject: [PATCH 63/90] The voter does not have to know which user created the poll --- htdocs/opensurvey/public/studs.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 80d210d167c..4ac633e52f8 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -242,13 +242,9 @@ print '
'."\n"; $titre=str_replace("\\","",$object->titre); print ''.htmlentities($titre).'
'."\n"; -//affichage du nom de l'auteur du sondage -print $langs->trans("InitiatorOfPoll") .' : '.htmlentities($object->nom_admin).'
'."\n"; - //affichage des commentaires du sondage if ($object->commentaires) { - print '
'.$langs->trans("Description") .' :
'."\n"; $commentaires=dol_nl2br(htmlentities($object->commentaires)); print $commentaires; print '
'."\n"; From f7809906d91daf62445ed38e9d08a8b4f5571e25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 19:38:39 +0100 Subject: [PATCH 64/90] Removed massive deletion feature of polls as it is not a common case --- htdocs/opensurvey/list.php | 38 +------------------------------------- 1 file changed, 1 insertion(+), 37 deletions(-) diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 745bee3a22c..53a200b2d65 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -42,28 +42,6 @@ $limit = $conf->liste_limit; $offset = $limit * $page; -/* - * Actions - */ - -if ($action == 'delete_confirm') -{ - // Security check - if (!$user->rights->opensurvey->write) accessforbidden(); - - require_once DOL_DOCUMENT_ROOT.'/opensurvey/class/opensurveysondage.class.php'; - - $db->begin(); - - $object=new Opensurveysondage($db); - - $result=$object->delete($user,'',$numsondage); - - $db->commit(); -} - - - /* * View */ @@ -77,16 +55,9 @@ print '
'."\n"; print_fiche_titre($langs->trans("OpenSurveyArea")); - -if ($action == 'delete') -{ - print $form->formconfirm($_SERVER["PHP_SELF"].'?&id='.$id, $langs->trans("RemovePoll"), $langs->trans("ConfirmRemovalOfPoll",$id), 'delete_confirm', '', '', 1); -} - - // tableau qui affiche tous les sondages de la base print ''."\n"; -print ''."\n"; +print ''."\n"; $sql = "SELECT id_sondage, mail_admin, format, date_fin, titre, nom_admin"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as p"; @@ -134,13 +105,6 @@ while ($i < min($num,$limit)) print ''; print''."\n"; - print ''."\n"; print ''."\n"; $i++; From c891f4afc486d05fccaa4018e847fd88bb3be758 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 19:40:49 +0100 Subject: [PATCH 65/90] Fixed coding standard problems --- htdocs/opensurvey/wizard/choix_autre.php | 2 +- htdocs/opensurvey/wizard/choix_date.php | 2 +- htdocs/opensurvey/wizard/create_survey.php | 2 +- htdocs/opensurvey/wizard/index.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/opensurvey/wizard/choix_autre.php b/htdocs/opensurvey/wizard/choix_autre.php index 302cbfccf6a..092aa2d9535 100644 --- a/htdocs/opensurvey/wizard/choix_autre.php +++ b/htdocs/opensurvey/wizard/choix_autre.php @@ -28,7 +28,7 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); // Security check -if (!$user->rights->opensurvey->write) accessforbidden (); +if (!$user->rights->opensurvey->write) accessforbidden(); /* * Action diff --git a/htdocs/opensurvey/wizard/choix_date.php b/htdocs/opensurvey/wizard/choix_date.php index 25f6ddc2453..4783e461a07 100644 --- a/htdocs/opensurvey/wizard/choix_date.php +++ b/htdocs/opensurvey/wizard/choix_date.php @@ -28,7 +28,7 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); // Security check -if (!$user->rights->opensurvey->write) accessforbidden (); +if (!$user->rights->opensurvey->write) accessforbidden(); //le format du sondage est DATE $_SESSION["formatsondage"] = "D"; diff --git a/htdocs/opensurvey/wizard/create_survey.php b/htdocs/opensurvey/wizard/create_survey.php index a8169d9d5da..2bef67552c9 100644 --- a/htdocs/opensurvey/wizard/create_survey.php +++ b/htdocs/opensurvey/wizard/create_survey.php @@ -28,7 +28,7 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); // Security check -if (!$user->rights->opensurvey->write) accessforbidden (); +if (!$user->rights->opensurvey->write) accessforbidden(); $langs->load("opensurvey"); diff --git a/htdocs/opensurvey/wizard/index.php b/htdocs/opensurvey/wizard/index.php index fab1a86320d..87852231f80 100644 --- a/htdocs/opensurvey/wizard/index.php +++ b/htdocs/opensurvey/wizard/index.php @@ -29,7 +29,7 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php"); // Security check -if (!$user->rights->opensurvey->write) accessforbidden (); +if (!$user->rights->opensurvey->write) accessforbidden(); $langs->load("opensurvey"); From b32fafef17b0b84470ecda7c0f4ce4328c26153b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:10:39 +0100 Subject: [PATCH 66/90] Fixed problem with visualization of previous votes in poll voting page --- htdocs/opensurvey/public/studs.php | 247 +++++++++++++++-------------- 1 file changed, 125 insertions(+), 122 deletions(-) diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 4ac633e52f8..96aa63104eb 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -361,43 +361,112 @@ else // Loop on each answer -if ($object->allow_spy) { - $sumfor = array(); - $sumagainst = array(); - $compteur = 0; - $sql ="SELECT id_users, nom, id_sondage, reponses"; - $sql.=" FROM ".MAIN_DB_PREFIX."opensurvey_user_studs"; - $sql.=" WHERE id_sondage = '".$db->escape($numsondage)."'"; - dol_syslog('sql='.$sql); - $resql=$db->query($sql); - if (! $resql) - { - dol_print_error($db); - exit; +$sumfor = array(); +$sumagainst = array(); +$compteur = 0; +$sql ="SELECT id_users, nom, id_sondage, reponses"; +$sql.=" FROM ".MAIN_DB_PREFIX."opensurvey_user_studs"; +$sql.=" WHERE id_sondage = '".$db->escape($numsondage)."'"; +dol_syslog('sql='.$sql); +$resql=$db->query($sql); +if (! $resql) +{ + dol_print_error($db); + exit; +} +$num=$db->num_rows($resql); +while ($compteur < $num) +{ + $obj=$db->fetch_object($resql); + + $ensemblereponses = $obj->reponses; + + // ligne d'un usager pré-authentifié + $mod_ok = (in_array($obj->nom, $listofvoters)); + + if (!$mod_ok && !$object->allow_spy) { + $compteur++; + continue; } - $num=$db->num_rows($resql); - while ($compteur < $num) + + print ''."\n"; + + // Name + print ''."\n"; + + // si la ligne n'est pas a changer, on affiche les données + if (! $testligneamodifier) { - $obj=$db->fetch_object($resql); + for ($i = 0; $i < $nbcolonnes; $i++) + { + $car = substr($ensemblereponses, $i, 1); + //print 'xx'.$i."-".$car.'-'.$listofanswers[$i]['format'].'zz'; - $ensemblereponses = $obj->reponses; - - print ''."\n"; - - // ligne d'un usager pré-authentifié - $mod_ok = (! empty($nombase) && in_array($nombase, $listofvoters)); - - // Name - print ''."\n"; - - // si la ligne n'est pas a changer, on affiche les données - if (! $testligneamodifier) + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) + { + if (((string) $car) == "1") print ''."\n"; + else print ''."\n"; + // Total + if (! isset($sumfor[$i])) $sumfor[$i] = 0; + if (((string) $car) == "1") $sumfor[$i]++; + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') + { + if (((string) $car) == "1") print ''."\n"; + else if (((string) $car) == "0") print ''."\n"; + else print ''."\n"; + // Total + if (! isset($sumfor[$i])) $sumfor[$i] = 0; + if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; + if (((string) $car) == "1") $sumfor[$i]++; + if (((string) $car) == "0") $sumagainst[$i]++; + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') + { + if (((string) $car) == "1") print ''."\n"; + else if (((string) $car) == "0") print ''."\n"; + else print ''."\n"; + // Total + if (! isset($sumfor[$i])) $sumfor[$i] = 0; + if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; + if (((string) $car) == "1") $sumfor[$i]++; + if (((string) $car) == "0") $sumagainst[$i]++; + } + } + } + else + { + //sinon on remplace les choix de l'utilisateur par une ligne de checkbox pour recuperer de nouvelles valeurs + if ($compteur == $ligneamodifier) + { + for ($i = 0; $i < $nbcolonnes; $i++) + { + $car = substr($ensemblereponses, $i, 1); + print ''."\n"; + } + } + else { for ($i = 0; $i < $nbcolonnes; $i++) { $car = substr($ensemblereponses, $i, 1); - //print 'xx'.$i."-".$car.'-'.$listofanswers[$i]['format'].'zz'; - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) { if (((string) $car) == "1") print ''."\n"; @@ -408,8 +477,8 @@ if ($object->allow_spy) { } if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') { - if (((string) $car) == "1") print ''."\n"; - else if (((string) $car) == "0") print ''."\n"; + if (((string) $car) == "1") print ''."\n"; + else if (((string) $car) == "0") print ''."\n"; else print ''."\n"; // Total if (! isset($sumfor[$i])) $sumfor[$i] = 0; @@ -430,97 +499,31 @@ if ($object->allow_spy) { } } } - else - { - //sinon on remplace les choix de l'utilisateur par une ligne de checkbox pour recuperer de nouvelles valeurs - if ($compteur == $ligneamodifier) - { - for ($i = 0; $i < $nbcolonnes; $i++) - { - $car = substr($ensemblereponses, $i, 1); - print ''."\n"; - } - } - else - { - for ($i = 0; $i < $nbcolonnes; $i++) - { - $car = substr($ensemblereponses, $i, 1); - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) - { - if (((string) $car) == "1") print ''."\n"; - else print ''."\n"; - // Total - if (! isset($sumfor[$i])) $sumfor[$i] = 0; - if (((string) $car) == "1") $sumfor[$i]++; - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') - { - if (((string) $car) == "1") print ''."\n"; - else if (((string) $car) == "0") print ''."\n"; - else print ''."\n"; - // Total - if (! isset($sumfor[$i])) $sumfor[$i] = 0; - if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; - if (((string) $car) == "1") $sumfor[$i]++; - if (((string) $car) == "0") $sumagainst[$i]++; - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') - { - if (((string) $car) == "1") print ''."\n"; - else if (((string) $car) == "0") print ''."\n"; - else print ''."\n"; - // Total - if (! isset($sumfor[$i])) $sumfor[$i] = 0; - if (! isset($sumagainst[$i])) $sumagainst[$i] = 0; - if (((string) $car) == "1") $sumfor[$i]++; - if (((string) $car) == "0") $sumagainst[$i]++; - } - } - } - } - - // Button edit at end of line - if ($compteur != $ligneamodifier && $mod_ok) - { - print ''."\n"; - } - - //demande de confirmation pour modification de ligne - for ($i=0; $i<$nblignes; $i++) - { - if (isset($_POST["modifierligne".$i])) - { - if ($compteur == $i) - { - print ''."\n"; - } - } - } - - $compteur++; - print ''."\n"; } + + // Button edit at end of line + if ($compteur != $ligneamodifier && $mod_ok) + { + print ''."\n"; + } + + //demande de confirmation pour modification de ligne + for ($i=0; $i<$nblignes; $i++) + { + if (isset($_POST["modifierligne".$i])) + { + if ($compteur == $i) + { + print ''."\n"; + } + } + } + + $compteur++; + print ''."\n"; } // Add line to add new record From 0f08fd3f06bd1864bba6e783ea70e8cc905faa5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:18:02 +0100 Subject: [PATCH 67/90] Replaced usage of htmlentities with dol_htmlentities --- htdocs/opensurvey/card.php | 12 ++++++------ htdocs/opensurvey/list.php | 4 ++-- htdocs/opensurvey/public/studs.php | 12 ++++++------ htdocs/opensurvey/results.php | 8 ++++---- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php index 48a537b25e9..c1515267c83 100644 --- a/htdocs/opensurvey/card.php +++ b/htdocs/opensurvey/card.php @@ -207,24 +207,24 @@ $adresseadmin=$object->mail_admin; print $langs->trans("Title") .''; // Auteur print ''; // Description print ''; // EMail @@ -330,7 +330,7 @@ if ($comments) { print ' '.img_picto('', 'delete.png').' '; } - print htmlentities($comment->usercomment).': '.dol_nl2br(htmlentities($comment->comment))."
"; + print dol_htmlentities($comment->usercomment).': '.dol_nl2br(dol_htmlentities($comment->comment))."
"; } } else diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 53a200b2d65..26754dcebac 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -94,11 +94,11 @@ while ($i < min($num,$limit)) print ''; print ''; + print ''; print ''."\n"; + print ''."\n"; } else { print ''."\n"; } @@ -392,7 +392,7 @@ while ($compteur < $num) print ''."\n"; // Name - print ''."\n"; + print ''."\n"; // si la ligne n'est pas a changer, on affiche les données if (! $testligneamodifier) @@ -650,7 +650,7 @@ for ($i = 0; $i < $nbcolonnes; $i++) { else { $tmps=explode('@',$toutsujet[$i]); - $meilleursujet .= htmlentities($tmps[0]); + $meilleursujet .= dol_htmlentities($tmps[0]); } $compteursujet++; @@ -689,7 +689,7 @@ if ($comments) foreach ($comments as $obj) { print '
'; if (in_array($obj->usercomment, $listofvoters)) print ' '.img_picto('', 'delete.png').' '; - print htmlentities($obj->usercomment).' : '.dol_nl2br(htmlentities($obj->comment))."
"; + print dol_htmlentities($obj->usercomment).' :'.dol_nl2br(dol_htmlentities($obj->comment)).""; } } diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index cac6f7a4a9e..fe4c53d3390 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -691,7 +691,7 @@ if ($object->format=="D"||$object->format=="D+") for ($i = 0; isset($toutsujet[$i]); $i++) { $heures=explode('@', $toutsujet[$i]); if (isset($heures[1])) { - print ''."\n"; + print ''."\n"; } else { print ''."\n"; } @@ -714,7 +714,7 @@ else for ($i = 0; isset($toutsujet[$i]); $i++) { $tmp=explode('@',$toutsujet[$i]); - print ''."\n"; + print ''."\n"; } print ''."\n"; @@ -750,7 +750,7 @@ while ($compteur < $num) } // Name - print ''."\n"; + print ''."\n"; // si la ligne n'est pas a changer, on affiche les données if (! $testligneamodifier) @@ -1017,7 +1017,7 @@ for ($i = 0; $i < $nbcolonnes; $i++) { else { $tmps=explode('@',$toutsujet[$i]); - $meilleursujet .= htmlentities($tmps[0]); + $meilleursujet .= dol_htmlentities($tmps[0]); } $compteursujet++; From b68f5b62516e7d1c0f47168cbabfa4a2a4984fa9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:21:06 +0100 Subject: [PATCH 68/90] Removed unexisting input checks --- htdocs/opensurvey/results.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index fe4c53d3390..ad424dd20df 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -52,7 +52,7 @@ $nblignes=count($object->fetch_lines()); $nbcolonnes = substr_count($object->sujet, ',') + 1; // Add vote -if (isset($_POST["boutonp"]) || isset($_POST["boutonp_x"])) +if (isset($_POST["boutonp"])) { if (GETPOST('nom')) { @@ -275,7 +275,7 @@ if (isset($_POST["ajoutercolonne"]) && ($object->format == "D" || $object->forma // Delete line for ($i = 0; $i < $nblignes; $i++) { - if (isset($_POST["effaceligne$i"]) || isset($_POST['effaceligne'.$i.'_x'])) + if (isset($_POST["effaceligne$i"])) { // Security check if (!$user->rights->opensurvey->write) accessforbidden(); @@ -310,7 +310,7 @@ for ($i = 0; $i < $nblignes; $i++) // Delete column for ($i = 0; $i < $nbcolonnes; $i++) { - if ((isset($_POST["effacecolonne$i"]) || isset($_POST['effacecolonne'.$i.'_x'])) && $nbcolonnes > 1) + if (isset($_POST["effacecolonne$i"]) && $nbcolonnes > 1) { // Security check if (!$user->rights->opensurvey->write) accessforbidden(); @@ -979,7 +979,7 @@ if ($nbofcheckbox >= 2) } // S'il a oublié de remplir un nom -if ((isset($_POST["boutonp"]) || isset($_POST["boutonp_x"])) && $_POST["nom"] == "") { +if (isset($_POST["boutonp"]) && $_POST["nom"] == "") { setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Name")), 'errors'); } From ef44db8bd86828aa1e6c896ca17afc1aae845c13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:28:32 +0100 Subject: [PATCH 69/90] Removed unused constants & functions and added new comment insert error message --- htdocs/langs/en_US/opensurvey.lang | 1 + htdocs/opensurvey/card.php | 2 +- htdocs/opensurvey/fonctions.php | 32 ------------------------------ htdocs/opensurvey/public/studs.php | 2 +- htdocs/opensurvey/results.php | 2 +- 5 files changed, 4 insertions(+), 35 deletions(-) diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 9f9f3fe3abc..5c24f982aba 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -65,4 +65,5 @@ BackToCurrentMonth=Back to current month ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation ErrorOpenSurveyOneChoice=Enter at least one choice ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY +ErrorInsertingComment=There was an error while inserting your comment MoreChoices=Enter more choices for the voters \ No newline at end of file diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php index c1515267c83..83e14232e8f 100644 --- a/htdocs/opensurvey/card.php +++ b/htdocs/opensurvey/card.php @@ -130,7 +130,7 @@ if (GETPOST('ajoutcomment')) if (! $resql) { - $err |= COMMENT_INSERT_FAILED; + setEventMessage($langs->trans('ErrorInsertingComment'), 'errors'); } } } diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index b3aa1c15cfc..be7b25005c2 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -144,24 +144,6 @@ function get_server_name() return $url; } - -/** - * is_error - * - * @param unknown_type $cerr error number - * @return boolean Error key found or not - */ -function is_error($cerr) -{ - global $err; - if ( $err == 0 ) { - return false; - } - - return (($err & $cerr) != 0 ); -} - - /** * Fonction vérifiant l'existance et la valeur non vide d'une clé d'un tableau * @@ -264,18 +246,4 @@ function ajouter_sondage() exit(); } - - -define('COMMENT_EMPTY', 0x0000000001); -define('COMMENT_USER_EMPTY', 0x0000000010); -define('COMMENT_INSERT_FAILED', 0x0000000100); -define('NAME_EMPTY', 0x0000001000); -define('NAME_TAKEN', 0x0000010000); -define('NO_POLL', 0x0000100000); -define('NO_POLL_ID', 0x0001000000); -define('INVALID_EMAIL', 0x0010000000); -define('TITLE_EMPTY', 0x0100000000); -define('INVALID_DATE', 0x1000000000); -$err = 0; - ?> diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 3a4b92e7337..2b8e02c31e0 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -546,7 +546,7 @@ if ($ligneamodifier < 0 && (! isset($_SESSION['nom']))) if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) { print ' Date: Sun, 5 Jan 2014 20:30:53 +0100 Subject: [PATCH 70/90] Removed space before colon --- htdocs/opensurvey/public/studs.php | 6 +++--- htdocs/opensurvey/results.php | 12 ++++++------ htdocs/opensurvey/wizard/choix_autre.php | 2 +- htdocs/opensurvey/wizard/choix_date.php | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 2b8e02c31e0..ec3d50b2026 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -684,12 +684,12 @@ $comments = $object->getComments(); if ($comments) { - print "
" . $langs->trans("CommentsOfVoters") . " :
\n"; + print "
" . $langs->trans("CommentsOfVoters") . ":
\n"; foreach ($comments as $obj) { print '
'; if (in_array($obj->usercomment, $listofvoters)) print ' '.img_picto('', 'delete.png').' '; - print dol_htmlentities($obj->usercomment).' : '.dol_nl2br(dol_htmlentities($obj->comment))."
"; + print dol_htmlentities($obj->usercomment).': '.dol_nl2br(dol_htmlentities($obj->comment)).""; } } @@ -698,7 +698,7 @@ if ($object->allow_comments) { print '
' .$langs->trans("AddACommentForPoll") . "
\n"; print '
'."\n"; - print $langs->trans("Name") .' : '; + print $langs->trans("Name") .': '; print '   '."\n"; print '
'."\n"; print ''."\n"; diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index cf5086907e6..cf8488474a5 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -484,7 +484,7 @@ if (GETPOST('ajoutsujet')) // Add new column if ($object->format=="A"||$object->format=="A+") { - print $langs->trans("AddNewColumn") .' :

'; + print $langs->trans("AddNewColumn") .':

'; print $langs->trans("Title").'
'; $tmparray=array('checkbox'=>$langs->trans("CheckBox"),'yesno'=>$langs->trans("YesNoList"),'foragainst'=>$langs->trans("PourContreList")); print $langs->trans("Type").' '.$form->selectarray("typecolonne", $tmparray, GETPOST('typecolonne')).'

'; @@ -499,7 +499,7 @@ if (GETPOST('ajoutsujet')) $formother=new FormOther($db); //ajout d'une date avec creneau horaire - print $langs->trans("AddADate") .' :

'."\n"; + print $langs->trans("AddADate") .':

'."\n"; print ' '."\n"; print ''."\n"; for ($i = 0; $i < 24; $i++) { @@ -527,7 +527,7 @@ if (GETPOST('ajoutsujet')) print ''."\n"; print ''."\n"; print ''."\n"; - print '

'. $langs->trans("AddEndHour") .' :

'."\n"; + print '

'. $langs->trans("AddEndHour") .':

'."\n"; print '
'."\n"; diff --git a/htdocs/opensurvey/wizard/choix_date.php b/htdocs/opensurvey/wizard/choix_date.php index 4783e461a07..0d78e5969b0 100644 --- a/htdocs/opensurvey/wizard/choix_date.php +++ b/htdocs/opensurvey/wizard/choix_date.php @@ -494,7 +494,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) { //affichage des jours print '
'."\n"; - print ''. $langs->trans("SelectedDays") .' :'."
\n"; + print ''. $langs->trans("SelectedDays") .':'."
\n"; print $langs->trans("SelectDayDesc")."
\n"; print '
'. $langs->trans("Ref").''. $langs->trans("Title") .''. $langs->trans("Type") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .' 
'. $langs->trans("Ref").''. $langs->trans("Title") .''. $langs->trans("Type") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .''.$nbuser.''; - - if ($user->rights->opensurvey->write) { - print ''.img_picto('', 'delete.png').''; - } - - print '
'.htmlentities($obj->nom).'
'.htmlentities($obj->nom).'OKKO'.$langs->trans("Yes").''.$langs->trans("No").' '.$langs->trans("For").''.$langs->trans("Against").' '; + if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) + { + print ''; + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') + { + $arraychoice=array('2'=>' ','0'=>$langs->trans("No"),'1'=>$langs->trans("Yes")); + print $form->selectarray("choix".$i, $arraychoice, $car); + } + if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') + { + $arraychoice=array('2'=>' ','0'=>$langs->trans("Against"),'1'=>$langs->trans("For")); + print $form->selectarray("choix".$i, $arraychoice, $car); + } + print 'OK'.$langs->trans("Yes").''.$langs->trans("No").''.$langs->trans("For").''.$langs->trans("Against").' '; - if (empty($listofanswers[$i]['format']) || ! in_array($listofanswers[$i]['format'],array('yesno','foragainst'))) - { - print ''; - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') - { - $arraychoice=array('2'=>' ','0'=>$langs->trans("No"),'1'=>$langs->trans("Yes")); - print $form->selectarray("choix".$i, $arraychoice, $car); - } - if (! empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') - { - $arraychoice=array('2'=>' ','0'=>$langs->trans("Against"),'1'=>$langs->trans("For")); - print $form->selectarray("choix".$i, $arraychoice, $car); - } - print 'OKKO'.$langs->trans("For").''.$langs->trans("Against").' '.$langs->trans("For").''.$langs->trans("Against").' '; - print ''; - print ''; - print '
'; + print ''; + print ''; + print '
'; if ($action == 'edit') { - print ''; + print ''; } -else print htmlentities($object->titre); +else print dol_htmlentities($object->titre); print '
'; print $langs->trans("Author") .''; -print htmlentities($object->nom_admin); +print dol_htmlentities($object->nom_admin); print '
'.$langs->trans("Description") .''; if ($action == 'edit') { - print ''."\n"; + print ''."\n"; } -else print dol_nl2br(htmlentities($object->commentaires)); +else print dol_nl2br(dol_htmlentities($object->commentaires)); print '
'; print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; - print ''.htmlentities($obj->titre).''; + print ''.dol_htmlentities($obj->titre).''; $type=($obj->format=='A' || $obj->format=='A+')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); print ' '.$langs->trans($type=='classic'?"TypeClassic":"TypeDate"); - print ''.htmlentities($obj->nom_admin).''.dol_htmlentities($obj->nom_admin).''.dol_print_date($db->jdate($obj->date_fin),'day'); if ($db->jdate($obj->date_fin) < time()) { print ' '.img_warning(); } diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 96aa63104eb..3a4b92e7337 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -240,12 +240,12 @@ print '
'."\n"; //affichage du titre du sondage $titre=str_replace("\\","",$object->titre); -print ''.htmlentities($titre).'
'."\n"; +print ''.dol_htmlentities($titre).'
'."\n"; //affichage des commentaires du sondage if ($object->commentaires) { - $commentaires=dol_nl2br(htmlentities($object->commentaires)); + $commentaires=dol_nl2br(dol_htmlentities($object->commentaires)); print $commentaires; print '
'."\n"; } @@ -335,7 +335,7 @@ if ($object->format=="D"||$object->format=="D+") for ($i=0; isset($toutsujet[$i]); $i++) { $heures=explode('@',$toutsujet[$i]); if (isset($heures[1])) { - print '
'.htmlentities($heures[1]).''.dol_htmlentities($heures[1]).'
'.htmlentities($obj->nom).''.dol_htmlentities($obj->nom).' '.htmlentities($heures[1]).''.dol_htmlentities($heures[1]).''.htmlentities($tmp[0]).''.dol_htmlentities($tmp[0]).''.img_picto('',dol_buildpath('/opensurvey/img/add-16.png',1),'',1).''.htmlentities($obj->nom).''.dol_htmlentities($obj->nom).'
'. $langs->trans("TitleChoice") .' '.$j.' : '; + print '
'. $langs->trans("TitleChoice") .' '.$j.': '; $tmparray=array('checkbox'=>$langs->trans("CheckBox"),'yesno'=>$langs->trans("YesNoList"),'foragainst'=>$langs->trans("PourContreList")); print '   '.$langs->trans("Type").' '.$form->selectarray("typecolonne[]", $tmparray, $_SESSION["typecolonne$i"]); print '
'."\n"; print ''."\n"; From 1afdce2c16b84982c23d8402b97929563f202ecc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:34:43 +0100 Subject: [PATCH 71/90] Cancel button when adding a new poll column was not working --- htdocs/opensurvey/results.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index cf8488474a5..cf403949994 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -49,6 +49,12 @@ $nblignes=count($object->fetch_lines()); * Actions */ +//Return to the results +if (GETPOST('retoursondage')) { + header('Location: results.php?id='.$_GET['id']); + die; +} + $nbcolonnes = substr_count($object->sujet, ',') + 1; // Add vote @@ -467,7 +473,6 @@ print ''.$langs print ''; - // Add form to add a field if (GETPOST('ajoutsujet')) { From 60cff505a71f243df38af0c4521121c543069b4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:36:40 +0100 Subject: [PATCH 72/90] Fixed always-checked mail when a new person votes feature --- htdocs/opensurvey/wizard/create_survey.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/htdocs/opensurvey/wizard/create_survey.php b/htdocs/opensurvey/wizard/create_survey.php index 2bef67552c9..ad849ded5bb 100644 --- a/htdocs/opensurvey/wizard/create_survey.php +++ b/htdocs/opensurvey/wizard/create_survey.php @@ -60,8 +60,7 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre")) $_SESSION["adresse"] = $adresse; $_SESSION["commentaires"] = $commentaires; - unset($_SESSION["mailsonde"]); - if ($mailsonde !== null) { + if (GETPOST('mailsonde') == 'on') { $_SESSION["mailsonde"] = true; } else { $_SESSION["mailsonde"] = false; From a15806715015f2cb323574550f93df86eb1095c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:39:53 +0100 Subject: [PATCH 73/90] Improved error feedback when empty required inputs are submitted --- htdocs/langs/en_US/opensurvey.lang | 1 - htdocs/opensurvey/wizard/create_survey.php | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index 5c24f982aba..ce6987f4bac 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -14,7 +14,6 @@ OpenSurveyYourEMail=Your email address ToReceiveEMailForEachVote=To receive an email for each vote TypeDate=Type date TypeClassic=Type standard -FieldMandatory=Field mandatory OpenSurveyStep2=Select your dates amoung the free days (green). The selected days are in blue. You can unselect a day previously selected by clicking again on it RemoveAllDays=Remove all days CopyHoursOfFirstDay=Copy hours of first day diff --git a/htdocs/opensurvey/wizard/create_survey.php b/htdocs/opensurvey/wizard/create_survey.php index ad849ded5bb..6e1927b7f2b 100644 --- a/htdocs/opensurvey/wizard/create_survey.php +++ b/htdocs/opensurvey/wizard/create_survey.php @@ -142,7 +142,7 @@ print '
'."\n"; print ''."\n"; if (! $_SESSION["titre"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) { - setEventMessage($langs->trans("FieldMandatory"), 'errors'); + setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("PollTitle")), 'errors'); } print ''."\n"; @@ -154,7 +154,7 @@ print 'trans("FieldMandatory"), 'errors'); + setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("OpenSurveyYourName")), 'errors'); } print ''."\n"; @@ -164,7 +164,7 @@ print 'trans("FieldMandatory"), 'errors'); + setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("OpenSurveyYourEMail")), 'errors'); } elseif ($erreur_adresse && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) { $langs->load('errors'); From 291267953a2c3e9bb1f0c480205edd5070c7edbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:46:45 +0100 Subject: [PATCH 74/90] =?UTF-8?q?Added=20a=20new=20check=20to=20don?= =?UTF-8?q?=E2=80=99t=20allow=20users=20create=20standard=20polls=20withou?= =?UTF-8?q?t=20any=20option?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/opensurvey/wizard/choix_autre.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/opensurvey/wizard/choix_autre.php b/htdocs/opensurvey/wizard/choix_autre.php index d388e60c111..c02fe4822db 100644 --- a/htdocs/opensurvey/wizard/choix_autre.php +++ b/htdocs/opensurvey/wizard/choix_autre.php @@ -80,7 +80,7 @@ if (isset($_POST["confirmecreation"])) } //message d'erreur si aucun champ renseigné - if ($testremplissage != "ok") { + if ($testremplissage != "ok" || (!$toutchoix)) { setEventMessage($langs->trans("ErrorOpenSurveyOneChoice"), 'errors'); } else { From 1e6c0c0b1a557e6b189c54bf813594d208d75a44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:48:20 +0100 Subject: [PATCH 75/90] There is no poll format A+ or D+ --- htdocs/opensurvey/card.php | 2 +- htdocs/opensurvey/exportcsv.php | 2 +- htdocs/opensurvey/list.php | 2 +- htdocs/opensurvey/public/studs.php | 4 ++-- htdocs/opensurvey/results.php | 12 ++++++------ 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php index 83e14232e8f..ca43feb70a2 100644 --- a/htdocs/opensurvey/card.php +++ b/htdocs/opensurvey/card.php @@ -196,7 +196,7 @@ print ''; print ''; // Type -$type=($object->format=="A"||$object->format=="A+")?'classic':'date'; +$type=($object->format=="A")?'classic':'date'; print ''; diff --git a/htdocs/opensurvey/exportcsv.php b/htdocs/opensurvey/exportcsv.php index 12e5fbb0489..ec48b65ce17 100644 --- a/htdocs/opensurvey/exportcsv.php +++ b/htdocs/opensurvey/exportcsv.php @@ -59,7 +59,7 @@ $toutsujet=explode(",",$object->sujet); $input.=$langs->trans("Name").";"; for ($i=0;$toutsujet[$i];$i++) { - if ($object->format=="D"||$object->format=="D+") + if ($object->format=="D") { $input.=''.dol_print_date($toutsujet[$i],'dayhour').';'; } else { diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index 26754dcebac..d5554315194 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -95,7 +95,7 @@ while ($i < min($num,$limit)) print ''; diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index ec3d50b2026..a8274ddeb79 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -262,7 +262,7 @@ print '

'."\n"; print '
'. $langs->trans("PollTitle") .'
'.$langs->trans("Type").''; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); print ' '.$langs->trans($type=='classic'?"TypeClassic":"TypeDate").'
'; print ''.img_picto('','object_opensurvey').' '.$obj->id_sondage.''; print ''.dol_htmlentities($obj->titre).''; - $type=($obj->format=='A' || $obj->format=='A+')?'classic':'date'; + $type=($obj->format=='A')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); print ' '.$langs->trans($type=='classic'?"TypeClassic":"TypeDate"); print ''.dol_htmlentities($obj->nom_admin).'
'."\n"; // Show choice titles -if ($object->format=="D"||$object->format=="D+") +if ($object->format=="D") { //affichage des sujets du sondage print ''."\n"; @@ -637,7 +637,7 @@ $meilleursujet = ''; for ($i = 0; $i < $nbcolonnes; $i++) { if (isset($sumfor[$i]) && isset($meilleurecolonne) && $sumfor[$i] == $meilleurecolonne) { $meilleursujet.=", "; - if ($object->format=="D"||$object->format=="D+") { + if ($object->format=="D") { $meilleursujetexport = $toutsujet[$i]; if (strpos($toutsujet[$i], '@') !== false) { diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index cf403949994..2d6796024af 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -157,7 +157,7 @@ if ($testmodifier) } // Add column (not for date) -if (GETPOST("ajoutercolonne") && GETPOST('nouvellecolonne') && ($object->format == "A" || $object->format == "A+")) +if (GETPOST("ajoutercolonne") && GETPOST('nouvellecolonne') && ($object->format == "A")) { // Security check if (!$user->rights->opensurvey->write) accessforbidden(); @@ -178,7 +178,7 @@ if (GETPOST("ajoutercolonne") && GETPOST('nouvellecolonne') && ($object->format } // Add column (with format date) -if (isset($_POST["ajoutercolonne"]) && ($object->format == "D" || $object->format == "D+")) +if (isset($_POST["ajoutercolonne"]) && ($object->format == "D")) { // Security check if (!$user->rights->opensurvey->write) accessforbidden(); @@ -443,7 +443,7 @@ print ''; print ''; // Type -$type=($object->format=="A"||$object->format=="A+")?'classic':'date'; +$type=($object->format=="A")?'classic':'date'; print ''; @@ -487,7 +487,7 @@ if (GETPOST('ajoutsujet')) print "

"."\n"; // Add new column - if ($object->format=="A"||$object->format=="A+") + if ($object->format=="A") { print $langs->trans("AddNewColumn") .':

'; print $langs->trans("Title").'
'; @@ -593,7 +593,7 @@ print ''."\n"; // Show choice titles -if ($object->format=="D"||$object->format=="D+") +if ($object->format=="D") { //affichage des sujets du sondage print '
'."\n"; @@ -1009,7 +1009,7 @@ for ($i = 0; $i < $nbcolonnes; $i++) { if (isset($sumfor[$i]) === true && isset($meilleurecolonne) === true && $sumfor[$i] == $meilleurecolonne) { $meilleursujet.=", "; - if ($object->format == "D" || $object->format == "D+") { + if ($object->format == "D") { $meilleursujetexport = $toutsujet[$i]; if (strpos($toutsujet[$i], '@') !== false) { From 224208c9bbbbc3d4db09d9d833fb5166795f3800 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 20:58:27 +0100 Subject: [PATCH 76/90] Unified comment deletion in Opensurveysondage::deleteComment --- htdocs/opensurvey/card.php | 3 +-- .../class/opensurveysondage.class.php | 17 +++++++++++++++++ htdocs/opensurvey/public/studs.php | 3 +-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php index ca43feb70a2..474d7db85f4 100644 --- a/htdocs/opensurvey/card.php +++ b/htdocs/opensurvey/card.php @@ -142,8 +142,7 @@ if ($idcomment) // Security check if (!$user->rights->opensurvey->write) accessforbidden(); - $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'opensurvey_comments WHERE id_comment = '.$idcomment; - $resql = $db->query($sql); + $resql = $object->deleteComment($idcomment); } if ($action == 'edit') { diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 5d532fead5b..45c58688969 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -478,6 +478,23 @@ class Opensurveysondage extends CommonObject return true; } + /** + * Deletes a comment of the poll + * + * @param int $id_comment Id of the comment + * @return boolean False in case of the query fails, true if it was successful + */ + public function deleteComment($id_comment) { + $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'opensurvey_comments WHERE id_comment = '.$id_comment.' AND id_sondage = '.$this->id_sondage; + $resql = $this->db->query($sql); + + if (!$resql) { + return false; + } + + return true; + } + /** * Cleans all the class variables before doing an update or an insert * diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index a8274ddeb79..6042aafd37b 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -205,8 +205,7 @@ if ($testmodifier) $idcomment=GETPOST('deletecomment','int'); if ($idcomment) { - $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'opensurvey_comments WHERE id_comment = '.$idcomment; - $resql = $db->query($sql); + $resql = $object->deleteComment($idcomment); } From b12b7d965a9dcf1e21c4a63dd98d548504112bf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 21:00:54 +0100 Subject: [PATCH 77/90] =?UTF-8?q?Fixed=20=E2=80=9Ccancel=E2=80=9D=20button?= =?UTF-8?q?=20on=20creation=20in=20new=20column=20of=20standard=20poll=20t?= =?UTF-8?q?ype?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/opensurvey/results.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index 2d6796024af..81242a56ae1 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -495,7 +495,7 @@ if (GETPOST('ajoutsujet')) print $langs->trans("Type").' '.$form->selectarray("typecolonne", $tmparray, GETPOST('typecolonne')).'

'; print ''; print '     '; - print ''; + print ''; print '

'."\n"; } else From 45aa6767e0f503b6728da1f7d67f20ea176cffd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 21:20:08 +0100 Subject: [PATCH 78/90] Return back to the results page when a new column is created --- htdocs/opensurvey/results.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index 81242a56ae1..769eb3e2d51 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -175,6 +175,9 @@ if (GETPOST("ajoutercolonne") && GETPOST('nouvellecolonne') && ($object->format dol_syslog("sql=".$sql); $resql = $db->query($sql); if (! $resql) dol_print_error($db); + else { + header('Location: results.php?id='.$object->id_sondage); + } } // Add column (with format date) @@ -267,6 +270,9 @@ if (isset($_POST["ajoutercolonne"]) && ($object->format == "D")) dol_syslog("sql=".$sql); $resql = $db->query($sql); if (! $resql) dol_print_error($db); + else { + header('Location: results.php?id='.$object->id_sondage); + } } } From aa25d2cb8123df5ad6ba855286abfe23ab6fa573 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 21:23:00 +0100 Subject: [PATCH 79/90] End date of the survey was altered when creating a new column in date poll format --- htdocs/opensurvey/results.php | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index 769eb3e2d51..365ea3cd9e3 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -260,19 +260,8 @@ if (isset($_POST["ajoutercolonne"]) && ($object->format == "D")) dol_syslog("sql=".$sql); $resql = $db->query($sql); if (! $resql) dol_print_error($db); - - if ($nouvelledate > strtotime($object->date_fin)) - { - $date_fin=$nouvelledate+200000; - $sql = 'UPDATE '.MAIN_DB_PREFIX.'opensurvey_sondage'; - $sql.= " SET date_fin = '".$db->escape($date_fin)."'"; - $sql.= " WHERE id_sondage = '".$db->escape($numsondage)."'"; - dol_syslog("sql=".$sql); - $resql = $db->query($sql); - if (! $resql) dol_print_error($db); - else { - header('Location: results.php?id='.$object->id_sondage); - } + else { + header('Location: results.php?id='.$object->id_sondage); } } From ff7e4e49f3a517c1662f8986c1adfdffed99c601 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 21:54:12 +0100 Subject: [PATCH 80/90] Limiting the voting time of the survey --- htdocs/langs/en_US/opensurvey.lang | 3 ++- htdocs/opensurvey/public/studs.php | 23 ++++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index ce6987f4bac..d598a385f00 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -65,4 +65,5 @@ ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll ErrorOpenSurveyOneChoice=Enter at least one choice ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY ErrorInsertingComment=There was an error while inserting your comment -MoreChoices=Enter more choices for the voters \ No newline at end of file +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The voting time of this poll has expired. \ No newline at end of file diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 6042aafd37b..9eac7face2c 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -45,6 +45,9 @@ if ($result <= 0) dol_print_error('','Failed to get survey id '.$numsondage); $nblignes=count($object->fetch_lines()); +//If the survey has not yet finished, then it can be modified +$canbemodified = ($object->date_fin > dol_now()); + /* * Actions @@ -57,6 +60,8 @@ $listofvoters=explode(',',$_SESSION["savevoter"]); // Add comment if (GETPOST('ajoutcomment')) { + if (!$canbemodified) accessforbidden(); + $error=0; if (! GETPOST('comment')) @@ -82,8 +87,10 @@ if (GETPOST('ajoutcomment')) } // Add vote -if (isset($_POST["boutonp"]) || isset($_POST["boutonp_x"])) +if (isset($_POST["boutonp"])) { + if (!$canbemodified) accessforbidden(); + //Si le nom est bien entré if (GETPOST('nom')) { @@ -190,6 +197,8 @@ if ($testmodifier) $nouveauchoix.="0"; } } + + if (!$canbemodified) accessforbidden(); $idtomodify=$_POST["idtomodify".$modifier]; $sql = 'UPDATE '.MAIN_DB_PREFIX."opensurvey_user_studs"; @@ -205,6 +214,8 @@ if ($testmodifier) $idcomment=GETPOST('deletecomment','int'); if ($idcomment) { + if (!$canbemodified) accessforbidden(); + $resql = $object->deleteComment($idcomment); } @@ -251,6 +262,16 @@ if ($object->commentaires) print ''."\n"; +//The survey has expired, users can't vote or do any action +if (!$canbemodified) { + + print '

'.$langs->trans('SurveyExpiredInfo').'

'; + llxFooterSurvey(); + + $db->close(); + die; +} + print '
'."\n"; print ''; From b8b7dbbed4a65575351acdf43468c4090022242d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 5 Jan 2014 22:05:56 +0100 Subject: [PATCH 81/90] Created triggers OPENSURVEY_CREATE and OPENSURVEY_DELETE --- ChangeLog | 2 +- .../class/opensurveysondage.class.php | 22 +++++++------------ 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index e85b76eaebc..7f320073bed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -17,7 +17,7 @@ For developers: - New: More phpunit tests. - New: Payments and supplier payment pages tabs can now be extended from modules. - New: Opensurvey polls tab cards can now be extended from external modules. - +- New: Triggers OPENSURVEY_CREATE, OPENSURVEY_DELETE ***** ChangeLog for 3.5 compared to 3.4.* ***** For users: diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 45c58688969..7630cb39e8e 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -134,14 +134,11 @@ class Opensurveysondage extends CommonObject { if (! $notrigger) { - // Uncomment this and change MYOBJECT to your own tag if you - // want this action calls a trigger. - //// Call triggers - //include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; - //$interface=new Interfaces($this->db); - //$result=$interface->run_triggers('MYOBJECT_CREATE',$this,$user,$langs,$conf); - //if ($result < 0) { $error++; $this->errors=$interface->errors; } + include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; + $interface=new Interfaces($this->db); + $result=$interface->run_triggers('OPENSURVEY_CREATE',$this,$user,$langs,$conf); + if ($result < 0) { $error++; $this->errors=$interface->errors; } //// End call triggers } } @@ -331,14 +328,11 @@ class Opensurveysondage extends CommonObject { if (! $notrigger) { - // Uncomment this and change MYOBJECT to your own tag if you - // want this action calls a trigger. - //// Call triggers - //include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; - //$interface=new Interfaces($this->db); - //$result=$interface->run_triggers('MYOBJECT_DELETE',$this,$user,$langs,$conf); - //if ($result < 0) { $error++; $this->errors=$interface->errors; } + include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; + $interface=new Interfaces($this->db); + $result=$interface->run_triggers('OPENSURVEY_DELETE',$this,$user,$langs,$conf); + if ($result < 0) { $error++; $this->errors=$interface->errors; } //// End call triggers } } From e0c7eb545c79fcaffb1775477e92a6f13ad0d62c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:08:42 +0100 Subject: [PATCH 82/90] Email and poll author are now retrieved from the logged user --- .../install/mysql/migration/3.5.0-3.6.0.sql | 3 +- .../mysql/tables/llx_opensurvey_sondage.sql | 1 + htdocs/opensurvey/card.php | 26 ++++++++---- .../class/opensurveysondage.class.php | 18 +++++--- htdocs/opensurvey/fonctions.php | 8 +++- htdocs/opensurvey/list.php | 18 +++++++- htdocs/opensurvey/public/studs.php | 42 ++++++++----------- htdocs/opensurvey/wizard/choix_autre.php | 2 +- htdocs/opensurvey/wizard/choix_date.php | 2 +- htdocs/opensurvey/wizard/create_survey.php | 33 ++------------- 10 files changed, 78 insertions(+), 75 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 4d85adb9782..6a189c4c756 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -24,4 +24,5 @@ ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `canedit` ; ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; -ALTER TABLE `llx_opensurvey_sondage` DROP `origin` ; \ No newline at end of file +ALTER TABLE `llx_opensurvey_sondage` DROP `origin` ; +ALTER TABLE `llx_opensurvey_sondage` ADD `fk_user_creat` INT( 11 ) UNSIGNED NOT NULL AFTER `nom_admin` ; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index ce4add9e9f5..db1231588f3 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -20,6 +20,7 @@ CREATE TABLE llx_opensurvey_sondage ( commentaires text, mail_admin VARCHAR(128), nom_admin VARCHAR(64), + fk_user_creat INT(11) UNSIGNED NOT NULL, titre TEXT, date_fin DATETIME, format VARCHAR(2), diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php index 474d7db85f4..1fac0c16ed8 100644 --- a/htdocs/opensurvey/card.php +++ b/htdocs/opensurvey/card.php @@ -211,10 +211,17 @@ if ($action == 'edit') else print dol_htmlentities($object->titre); print '
'; -// Auteur +// Author print ''; // Description @@ -227,13 +234,16 @@ else print dol_nl2br(dol_htmlentities($object->commentaires)); print ''; // EMail -print ''; } -else print dol_print_email($object->mail_admin); -print ''; // Receive an email with each vote print ''; print ''; // Users can comment From fc7d3d47713ffd7cc3d47cea85ca1c274ec03fd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:39:22 +0100 Subject: [PATCH 89/90] Modified migration script to not remove columns --- .../install/mysql/migration/3.5.0-3.6.0.sql | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 01fbbd4ddeb..4e0b0192d79 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -18,15 +18,15 @@ -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); ALTER TABLE llx_bookmark ADD COLUMN entity integer DEFAULT 1 NOT NULL; -ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_comments` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER `canedit` ; -ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `survey_link_visible` ; -ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; -ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `id_sondage_admin` ; -ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `canedit` ; -ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; -ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `origin` ; -ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `fk_user_creat` INT( 11 ) UNSIGNED NOT NULL AFTER `nom_admin` ; -ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `mailsonde` `mailsonde` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'; -ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `titre` `titre` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; -ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `date_fin` `date_fin` DATETIME NOT NULL; -ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `format` `format` VARCHAR( 2 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; \ No newline at end of file +ALTER TABLE llx_opensurvey_sondage ADD COLUMN allow_comments TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT 1 AFTER canedit ; +-- ALTER TABLE llx_opensurvey_sondage DROP COLUMN survey_link_visible ; +ALTER TABLE llx_opensurvey_sondage DROP INDEX idx_id_sondage_admin ; +-- ALTER TABLE llx_opensurvey_sondage DROP COLUMN id_sondage_admin ; +-- ALTER TABLE llx_opensurvey_sondage DROP COLUMN canedit ; +ALTER TABLE llx_opensurvey_sondage ADD COLUMN allow_spy TINYINT( 1 ) UNSIGNED NOT NULL AFTER allow_comments ; +-- ALTER TABLE llx_opensurvey_sondage DROP COLUMN origin ; +ALTER TABLE llx_opensurvey_sondage ADD COLUMN fk_user_creat INT( 11 ) UNSIGNED NOT NULL AFTER nom_admin ; +ALTER TABLE llx_opensurvey_sondage CHANGE COLUMN mailsonde mailsonde TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'; +ALTER TABLE llx_opensurvey_sondage CHANGE COLUMN titre titre TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; +ALTER TABLE llx_opensurvey_sondage CHANGE COLUMN date_fin date_fin DATETIME NOT NULL; +ALTER TABLE llx_opensurvey_sondage CHANGE COLUMN format format VARCHAR( 2 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; \ No newline at end of file From 2313ea01dda16f3dc73c718bee2bf1c38291fa49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:46:47 +0100 Subject: [PATCH 90/90] Updated changelog --- ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/ChangeLog b/ChangeLog index 7f320073bed..15e06d16728 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,6 +8,7 @@ For users: - New: Add graph stats for suppliers orders in tab "stats" on products. - New: Add option MAIN_HIDE_INACTIVETAB_ON_PRINT to hide inactive tabs when you use the "print" view on screen. +- New: Improved Opensurvey module and added options to disable comments and disable public votes For translators: - Update language files.
'.$langs->trans("Type").''; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); print ' '.$langs->trans($type=='classic'?"TypeClassic":"TypeDate").'
'; print $langs->trans("Author") .''; -print dol_htmlentities($object->nom_admin); +if ($object->fk_user_creat) { + $userstatic = new User($db); + $userstatic->fetch($object->fk_user_creat); + + print $userstatic->getLoginUrl(1); +} else { + print dol_htmlentities($object->nom_admin); +} print '
'.$langs->trans("EMail") .''; -if ($action == 'edit') -{ - print ''; +//If linked user, then emails are going to be sent to users' email +if (!$object->fk_user_creat) { + print '
'.$langs->trans("EMail") .''; + if ($action == 'edit') + { + print ''; + } + else print dol_print_email($object->mail_admin); + print '
'.$langs->trans('ToReceiveEMailForEachVote').''; diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index 7630cb39e8e..a4f81ced81c 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -44,8 +44,16 @@ class Opensurveysondage extends CommonObject var $id_sondage; var $commentaires; + var $mail_admin; var $nom_admin; + + /** + * Id of user author of the poll + * @var int + */ + public $fk_user_creat; + var $titre; var $date_fin=''; var $format; @@ -99,8 +107,7 @@ class Opensurveysondage extends CommonObject $sql.= "id_sondage,"; $sql.= "commentaires,"; - $sql.= "mail_admin,"; - $sql.= "nom_admin,"; + $sql.= "fk_user_creat,"; $sql.= "titre,"; $sql.= "date_fin,"; $sql.= "format,"; @@ -112,8 +119,7 @@ class Opensurveysondage extends CommonObject $sql.= "'".$this->db->escape($this->id_sondage)."',"; $sql.= " ".(empty($this->commentaires)?'NULL':"'".$this->db->escape($this->commentaires)."'").","; - $sql.= " ".(empty($this->mail_admin)?'NULL':"'".$this->db->escape($this->mail_admin)."'").","; - $sql.= " '".$this->db->escape($this->nom_admin)."',"; + $sql.= " ".$user->id.","; $sql.= " '".$this->db->escape($this->titre)."',"; $sql.= " '".$this->db->idate($this->date_fin)."',"; $sql.= " '".$this->db->escape($this->format)."',"; @@ -142,7 +148,7 @@ class Opensurveysondage extends CommonObject //// End call triggers } } - + // Commit or rollback if ($error) { @@ -176,6 +182,7 @@ class Opensurveysondage extends CommonObject $sql.= " t.commentaires,"; $sql.= " t.mail_admin,"; $sql.= " t.nom_admin,"; + $sql.= " t.fk_user_creat,"; $sql.= " t.titre,"; $sql.= " t.date_fin,"; $sql.= " t.format,"; @@ -209,6 +216,7 @@ class Opensurveysondage extends CommonObject $this->allow_comments = $obj->allow_comments; $this->allow_spy = $obj->allow_spy; $this->sujet = $obj->sujet; + $this->fk_user_creat = $obj->fk_user_creat; $this->date_m = $this->db->jdate($obj->tls); $ret=1; diff --git a/htdocs/opensurvey/fonctions.php b/htdocs/opensurvey/fonctions.php index be7b25005c2..c3c80a59b86 100644 --- a/htdocs/opensurvey/fonctions.php +++ b/htdocs/opensurvey/fonctions.php @@ -204,7 +204,7 @@ function dol_survey_random($car) */ function ajouter_sondage() { - global $db; + global $db, $user; require_once DOL_DOCUMENT_ROOT.'/opensurvey/class/opensurveysondage.class.php'; @@ -227,7 +227,11 @@ function ajouter_sondage() $opensurveysondage->allow_spy = $allow_spy; $opensurveysondage->sujet = $_SESSION['toutchoix']; - $opensurveysondage->create(null); + $res = $opensurveysondage->create($user); + + if ($res < 0) { + dol_print_error($db); + } unset($_SESSION["titre"]); unset($_SESSION["nom"]); diff --git a/htdocs/opensurvey/list.php b/htdocs/opensurvey/list.php index d5554315194..a9b36ca7a1c 100644 --- a/htdocs/opensurvey/list.php +++ b/htdocs/opensurvey/list.php @@ -59,8 +59,9 @@ print_fiche_titre($langs->trans("OpenSurveyArea")); print ''."\n"; print ''."\n"; -$sql = "SELECT id_sondage, mail_admin, format, date_fin, titre, nom_admin"; +$sql = "SELECT id_sondage, fk_user_creat, u.login, format, date_fin, titre, nom_admin"; $sql.= " FROM ".MAIN_DB_PREFIX."opensurvey_sondage as p"; +$sql.= " LEFT OUTER JOIN ".MAIN_DB_PREFIX."user u ON u.rowid = p.fk_user_creat"; // Count total nb of records $nbtotalofrecords = 0; if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) @@ -98,7 +99,20 @@ while ($i < min($num,$limit)) $type=($obj->format=='A')?'classic':'date'; print img_picto('',dol_buildpath('/opensurvey/img/'.($type == 'classic'?'chart-32.png':'calendar-32.png'),1),'width="16"',1); print ' '.$langs->trans($type=='classic'?"TypeClassic":"TypeDate"); - print ''; + print ''; print ''."\n"; print ''."\n"; print ''."\n"; -print ''."\n"; - -if (! $_SESSION["nom"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) -{ - setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("OpenSurveyYourName")), 'errors'); -} - -print ''."\n"; -print ''."\n"; - -if (!$_SESSION["adresse"] && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) -{ - setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("OpenSurveyYourEMail")), 'errors'); -} elseif ($erreur_adresse && (GETPOST('creation_sondage_date') || GETPOST('creation_sondage_autre'))) -{ - $langs->load('errors'); - setEventMessage($langs->trans("ErrorBadEMail", $adresse), 'errors'); -} print '
'. $langs->trans("Ref").''. $langs->trans("Title") .''. $langs->trans("Type") .''. $langs->trans("Author") .''. $langs->trans("ExpireDate") .''. $langs->trans("NbOfVoters") .''.dol_htmlentities($obj->nom_admin).''; + + // Author + if ($obj->fk_user_creat) { + $userstatic = new User($db); + $userstatic->id = $obj->fk_user_creat; + $userstatic->login = $obj->login; + + print $userstatic->getLoginUrl(1); + } else { + print dol_htmlentities($obj->nom_admin); + } + + print ''.dol_print_date($db->jdate($obj->date_fin),'day'); if ($db->jdate($obj->date_fin) < time()) { print ' '.img_warning(); } diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 9eac7face2c..162643cf149 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -133,18 +133,25 @@ if (isset($_POST["boutonp"])) $_SESSION["savevoter"]=$nom.','.(empty($_SESSION["savevoter"])?'':$_SESSION["savevoter"]); // Save voter $listofvoters=explode(',',$_SESSION["savevoter"]); - if (! empty($object->mailsonde)) + if ($object->mailsonde) { - include_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $cmailfile=new CMailFile("[".MAIN_APPLICATION_TITLE."] ".$langs->trans("Poll").': '.$object->titre, $object->mail_admin, $conf->global->MAIN_MAIL_EMAIL_FROM, $nom." has filled a line.\nYou can find your poll at the link:\n".getUrlSondage($numsondage)); - $result=$cmailfile->sendfile(); - if ($result) - { - + if ($object->fk_user_creat) { + $userstatic = new User($db); + $userstatic->fetch($object->fk_user_creat); + + $email = $userstatic->email; + } else { + $email = $object->mail_admin; } - else - { - + + //Linked user may not have an email set + if ($email) { + include_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; + + $body = $langs->trans('EmailSomeoneVoted', $nom, getUrlSondage($numsondage, true)); + + $cmailfile=new CMailFile("[".MAIN_APPLICATION_TITLE."] ".$langs->trans("Poll").': '.$object->titre, $email, $conf->global->MAIN_MAIL_EMAIL_FROM, $body); + $result=$cmailfile->sendfile(); } } } @@ -728,21 +735,6 @@ if ($object->allow_comments) { print '

'; -/* -// Define $urlwithroot -$urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); -$urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file -//$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current - -$message=''; -$url=$urlwithouturlroot.dol_buildpath('/opensurvey/public/studs.php',1).'?sondage='.$numsondage; -$urlvcal=''.$url.''; -$message.=img_picto('','object_globe.png').' '.$langs->trans("UrlForSurvey").': '.$urlvcal; - -print '
'.$message.'
'; -*/ - - print ''."\n"; llxFooterSurvey(); diff --git a/htdocs/opensurvey/wizard/choix_autre.php b/htdocs/opensurvey/wizard/choix_autre.php index c02fe4822db..c00ddf38384 100644 --- a/htdocs/opensurvey/wizard/choix_autre.php +++ b/htdocs/opensurvey/wizard/choix_autre.php @@ -105,7 +105,7 @@ $arrayofjs=array(); $arrayofcss=array('/opensurvey/css/style.css'); llxHeader('', $langs->trans("OpenSurvey"), "", '', 0, 0, $arrayofjs, $arrayofcss); -if (empty($_SESSION['titre']) || empty($_SESSION['nom']) || empty($_SESSION['adresse'])) +if (empty($_SESSION['titre'])) { dol_print_error('', $langs->trans('ErrorOpenSurveyFillFirstSection')); llxFooterSurvey(); diff --git a/htdocs/opensurvey/wizard/choix_date.php b/htdocs/opensurvey/wizard/choix_date.php index 0d78e5969b0..3de7d10f8a1 100644 --- a/htdocs/opensurvey/wizard/choix_date.php +++ b/htdocs/opensurvey/wizard/choix_date.php @@ -191,7 +191,7 @@ if (GETPOST('reset')) { * View */ -if (! isset($_SESSION['nom']) && ! isset($_SESSION['adresse']) && ! isset($_SESSION['commentaires']) && ! isset($_SESSION['mail'])) +if (! isset($_SESSION['commentaires']) && ! isset($_SESSION['mail'])) { dol_print_error('', $langs->trans('ErrorOpenSurveyFillFirstSection')); exit; diff --git a/htdocs/opensurvey/wizard/create_survey.php b/htdocs/opensurvey/wizard/create_survey.php index 6e1927b7f2b..26411fa18b5 100644 --- a/htdocs/opensurvey/wizard/create_survey.php +++ b/htdocs/opensurvey/wizard/create_survey.php @@ -34,21 +34,20 @@ $langs->load("opensurvey"); // On teste toutes les variables pour supprimer l'ensemble des warnings PHP // On transforme en entites html les données afin éviter les failles XSS -$post_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde', 'creation_sondage_date', 'creation_sondage_autre'); +$post_var = array('titre', 'commentaires', 'mailsonde', 'creation_sondage_date', 'creation_sondage_autre'); foreach ($post_var as $var) { $$var = GETPOST($var); } // On initialise egalement la session car sinon bonjour les warning :-) -$session_var = array('titre', 'nom', 'adresse', 'commentaires', 'mailsonde'); +$session_var = array('titre', 'commentaires', 'mailsonde'); foreach ($session_var as $var) { if (isset($_SESSION[$var])) $_SESSION[$var] = null; } // On initialise également les autres variables -$erreur_adresse = false; $cocheplus = ''; $cochemail = ''; @@ -56,8 +55,6 @@ $cochemail = ''; if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre")) { $_SESSION["titre"] = $titre; - $_SESSION["nom"] = $nom; - $_SESSION["adresse"] = $adresse; $_SESSION["commentaires"] = $commentaires; if (GETPOST('mailsonde') == 'on') { @@ -100,9 +97,7 @@ if (GETPOST("creation_sondage_date") || GETPOST("creation_sondage_autre")) setEventMessage($langs->trans('ErrorOpenSurveyDateFormat'), 'errors'); } - if (! isValidEmail($adresse)) $erreur_adresse = true; - - if ($titre && $nom && $adresse && !$erreur_adresse && $testdate) + if ($titre && $testdate) { if (! empty($creation_sondage_date)) { @@ -148,28 +143,6 @@ if (! $_SESSION["titre"] && (GETPOST('creation_sondage_date') || GETPOST('creati print '
'. $langs->trans("Description") .'
'. $langs->trans("OpenSurveyYourName") .''; - -print '
'. $langs->trans("OpenSurveyYourEMail") .''; - -print '
'. $langs->trans("ExpireDate") .''; From dafe05d15d4a59eabd0fa920e5e5806f2f20122f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:09:17 +0100 Subject: [PATCH 83/90] Fixed a problem with open survey creation trigger --- htdocs/opensurvey/class/opensurveysondage.class.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/htdocs/opensurvey/class/opensurveysondage.class.php index a4f81ced81c..862381d2322 100644 --- a/htdocs/opensurvey/class/opensurveysondage.class.php +++ b/htdocs/opensurvey/class/opensurveysondage.class.php @@ -140,6 +140,8 @@ class Opensurveysondage extends CommonObject { if (! $notrigger) { + global $langs, $conf; + //// Call triggers include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; $interface=new Interfaces($this->db); From e09af20899d1853b2732438d1fb1d74b7c23dcb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:09:36 +0100 Subject: [PATCH 84/90] Removed unused translations from opensurvey.lang --- htdocs/langs/en_US/opensurvey.lang | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/htdocs/langs/en_US/opensurvey.lang b/htdocs/langs/en_US/opensurvey.lang index d598a385f00..a7b865454c6 100644 --- a/htdocs/langs/en_US/opensurvey.lang +++ b/htdocs/langs/en_US/opensurvey.lang @@ -9,8 +9,6 @@ AddACommentForPoll=You can add a comment into survey... AddComment=Add comment CreatePoll=Create poll PollTitle=Poll title -OpenSurveyYourName=Your name -OpenSurveyYourEMail=Your email address ToReceiveEMailForEachVote=To receive an email for each vote TypeDate=Type date TypeClassic=Type standard @@ -23,14 +21,11 @@ TheBestChoice=The best choice currently is TheBestChoices=The best choices currently are with=with OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. -InitiatorOfPoll=Initiator of the poll CommentsOfVoters=Comments of voters ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) RemovePoll=Remove poll -PollManagement=Polls management -BackToHoursSetup=Back to hours setup UrlForSurvey=URL to communicate to get a direct access to survey -PollOnChoice=Your are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: CreateSurveyDate=Create a date survey CreateSurveyStandard=Create a standard survey CheckBox=Simple checkbox @@ -66,4 +61,5 @@ ErrorOpenSurveyOneChoice=Enter at least one choice ErrorOpenSurveyDateFormat=Date must be have the format DD/MM/YYYY ErrorInsertingComment=There was an error while inserting your comment MoreChoices=Enter more choices for the voters -SurveyExpiredInfo=The voting time of this poll has expired. \ No newline at end of file +SurveyExpiredInfo=The voting time of this poll has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \n%s \ No newline at end of file From c2c97ec82a5837a57a299d556ad9ddfdb81bc4ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:12:47 +0100 Subject: [PATCH 85/90] Mailsonde should not be a varchar --- htdocs/install/mysql/migration/3.5.0-3.6.0.sql | 5 +++-- htdocs/install/mysql/tables/llx_opensurvey_sondage.sql | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 6a189c4c756..65f8064f366 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -24,5 +24,6 @@ ALTER TABLE `llx_opensurvey_sondage` DROP INDEX `idx_id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `id_sondage_admin` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `canedit` ; ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; -ALTER TABLE `llx_opensurvey_sondage` DROP `origin` ; -ALTER TABLE `llx_opensurvey_sondage` ADD `fk_user_creat` INT( 11 ) UNSIGNED NOT NULL AFTER `nom_admin` ; \ No newline at end of file +ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `origin` ; +ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `fk_user_creat` INT( 11 ) UNSIGNED NOT NULL AFTER `nom_admin` ; +ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `mailsonde` `mailsonde` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index db1231588f3..6301c22a2b3 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -24,7 +24,7 @@ CREATE TABLE llx_opensurvey_sondage ( titre TEXT, date_fin DATETIME, format VARCHAR(2), - mailsonde varchar(2) DEFAULT '0', + mailsonde TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0', allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, allow_spy TINYINT(1) unsigned NOT NULL DEFAULT 1, tms TIMESTAMP, From c245e86b604edd55d29ce8e4174ef0b6c934f019 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:17:02 +0100 Subject: [PATCH 86/90] Little changes to the opensurvey_sondage table definition --- htdocs/install/mysql/migration/3.5.0-3.6.0.sql | 5 ++++- htdocs/install/mysql/tables/llx_opensurvey_sondage.sql | 8 ++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 65f8064f366..01fbbd4ddeb 100755 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -26,4 +26,7 @@ ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `canedit` ; ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `allow_spy` TINYINT( 1 ) UNSIGNED NOT NULL AFTER `allow_comments` ; ALTER TABLE `llx_opensurvey_sondage` DROP COLUMN `origin` ; ALTER TABLE `llx_opensurvey_sondage` ADD COLUMN `fk_user_creat` INT( 11 ) UNSIGNED NOT NULL AFTER `nom_admin` ; -ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `mailsonde` `mailsonde` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'; \ No newline at end of file +ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `mailsonde` `mailsonde` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'; +ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `titre` `titre` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; +ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `date_fin` `date_fin` DATETIME NOT NULL; +ALTER TABLE `llx_opensurvey_sondage` CHANGE COLUMN `format` `format` VARCHAR( 2 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql index 6301c22a2b3..a8ee5031dc5 100644 --- a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql +++ b/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql @@ -21,12 +21,12 @@ CREATE TABLE llx_opensurvey_sondage ( mail_admin VARCHAR(128), nom_admin VARCHAR(64), fk_user_creat INT(11) UNSIGNED NOT NULL, - titre TEXT, - date_fin DATETIME, - format VARCHAR(2), + titre TEXT NOT NULL, + date_fin DATETIME NOT NULL, + format VARCHAR(2) NOT NULL, mailsonde TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0', allow_comments TINYINT(1) unsigned NOT NULL DEFAULT 1, allow_spy TINYINT(1) unsigned NOT NULL DEFAULT 1, tms TIMESTAMP, sujet TEXT -) ENGINE=InnoDB; +) ENGINE=InnoDB; \ No newline at end of file From 2c816e09a5d380313472bb38a61c5f3ecd20862c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:20:08 +0100 Subject: [PATCH 87/90] If no spy option is enabled, users should not now which is the most voted option --- htdocs/opensurvey/public/studs.php | 80 +++++++++++++++--------------- 1 file changed, 41 insertions(+), 39 deletions(-) diff --git a/htdocs/opensurvey/public/studs.php b/htdocs/opensurvey/public/studs.php index 162643cf149..3467988f99a 100644 --- a/htdocs/opensurvey/public/studs.php +++ b/htdocs/opensurvey/public/studs.php @@ -655,52 +655,54 @@ if ($object->allow_spy) { print '
'."\n"; print ''."\n"; -$toutsujet=explode(",",$object->sujet); -$toutsujet=str_replace("°","'",$toutsujet); +if ($object->allow_spy) { + $toutsujet=explode(",",$object->sujet); + $toutsujet=str_replace("°","'",$toutsujet); -$compteursujet=0; -$meilleursujet = ''; + $compteursujet=0; + $meilleursujet = ''; -for ($i = 0; $i < $nbcolonnes; $i++) { - if (isset($sumfor[$i]) && isset($meilleurecolonne) && $sumfor[$i] == $meilleurecolonne) { - $meilleursujet.=", "; - if ($object->format=="D") { - $meilleursujetexport = $toutsujet[$i]; + for ($i = 0; $i < $nbcolonnes; $i++) { + if (isset($sumfor[$i]) && isset($meilleurecolonne) && $sumfor[$i] == $meilleurecolonne) { + $meilleursujet.=", "; + if ($object->format=="D") { + $meilleursujetexport = $toutsujet[$i]; - if (strpos($toutsujet[$i], '@') !== false) { - $toutsujetdate = explode("@", $toutsujet[$i]); - $meilleursujet .= dol_print_date($toutsujetdate[0],'daytext'). ' ('.dol_print_date($toutsujetdate[0],'%A').')' . ' - ' . $toutsujetdate[1]; - } else { - $meilleursujet .= dol_print_date($toutsujet[$i],'daytext'). ' ('.dol_print_date($toutsujet[$i],'%A').')'; + if (strpos($toutsujet[$i], '@') !== false) { + $toutsujetdate = explode("@", $toutsujet[$i]); + $meilleursujet .= dol_print_date($toutsujetdate[0],'daytext'). ' ('.dol_print_date($toutsujetdate[0],'%A').')' . ' - ' . $toutsujetdate[1]; + } else { + $meilleursujet .= dol_print_date($toutsujet[$i],'daytext'). ' ('.dol_print_date($toutsujet[$i],'%A').')'; + } } + else + { + $tmps=explode('@',$toutsujet[$i]); + $meilleursujet .= dol_htmlentities($tmps[0]); + } + + $compteursujet++; } - else - { - $tmps=explode('@',$toutsujet[$i]); - $meilleursujet .= dol_htmlentities($tmps[0]); - } - - $compteursujet++; - } -} - -$meilleursujet=substr("$meilleursujet", 1); -$meilleursujet = str_replace("°", "'", $meilleursujet); - - -// Show best choice -if ($nbofcheckbox >= 2) -{ - $vote_str = $langs->trans('votes'); - print '

'."\n"; - - if (isset($meilleurecolonne) && $compteursujet == "1") { - print ' ' . $langs->trans('TheBestChoice') . ": ".$meilleursujet." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; - } elseif (isset($meilleurecolonne)) { - print ' ' . $langs->trans('TheBestChoices') . ": ".$meilleursujet." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; } - print '


'."\n"; + $meilleursujet=substr("$meilleursujet", 1); + $meilleursujet = str_replace("°", "'", $meilleursujet); + + + // Show best choice + if ($nbofcheckbox >= 2) + { + $vote_str = $langs->trans('votes'); + print '

'."\n"; + + if (isset($meilleurecolonne) && $compteursujet == "1") { + print ' ' . $langs->trans('TheBestChoice') . ": ".$meilleursujet." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; + } elseif (isset($meilleurecolonne)) { + print ' ' . $langs->trans('TheBestChoices') . ": ".$meilleursujet." " . $langs->trans('with') . " $meilleurecolonne " . $vote_str . ".\n"; + } + + print '


'."\n"; + } } print '
'; From 55014b3338d908b4ef48d112ff1b941ab1cf70d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 6 Jan 2014 05:29:07 +0100 Subject: [PATCH 88/90] =?UTF-8?q?If=20user=20does=20not=20have=20an=20emai?= =?UTF-8?q?l=20and=20option=20=E2=80=9CMailsonde=E2=80=9D=20is=20active,?= =?UTF-8?q?=20then=20we=20show=20a=20warning?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/opensurvey/card.php | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php index 1fac0c16ed8..7bd3471c825 100644 --- a/htdocs/opensurvey/card.php +++ b/htdocs/opensurvey/card.php @@ -156,6 +156,11 @@ if ($action == 'edit') { * View */ +if ($object->fk_user_creat) { + $userstatic = new User($db); + $userstatic->fetch($object->fk_user_creat); +} + $form=new Form($db); $arrayofjs=array(); @@ -215,9 +220,6 @@ print '
'; print $langs->trans("Author") .''; if ($object->fk_user_creat) { - $userstatic = new User($db); - $userstatic->fetch($object->fk_user_creat); - print $userstatic->getLoginUrl(1); } else { print dol_htmlentities($object->nom_admin); @@ -251,7 +253,16 @@ if ($action == 'edit') { print 'mailsonde?' checked="true"':'').'">'; } -else print yn($object->mailsonde); +else { + print yn($object->mailsonde); + + //If option is active and linked user does not have an email, we show a warning + if ($object->fk_user_creat && $object->mailsonde) { + if (!$userstatic->email) { + print ' '.img_warning($langs->trans('NoEMail')); + } + } +} print '