Browse Source

code syntax public dir

Frédéric FRANCE 4 years ago
parent
commit
df6650241d

+ 151 - 63
htdocs/public/agenda/agendaexport.php

@@ -28,13 +28,27 @@
  *              &id=..., &idfrom=..., &idto=...
  */
 
-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');
-if (!defined('NOLOGIN'))        define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))    define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+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');
+}
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 
 // It's a wrapper, so empty header
@@ -61,39 +75,69 @@ function llxFooterVierge()
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
 
 // Security check
-if (empty($conf->agenda->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->agenda->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 // Not older than
-if (!isset($conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY)) $conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY = 100; // default limit
+if (!isset($conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY)) {
+	$conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY = 100; // default limit
+}
 
 // Define format, type and filter
 $format = 'ical';
 $type = 'event';
-if (GETPOST("format", 'alpha')) $format = GETPOST("format", 'apha');
-if (GETPOST("type", 'apha'))   $type = GETPOST("type", 'alpha');
+if (GETPOST("format", 'alpha')) {
+	$format = GETPOST("format", 'apha');
+}
+if (GETPOST("type", 'apha')) {
+	$type = GETPOST("type", 'alpha');
+}
 
 $filters = array();
-if (GETPOST("year", 'int')) 	      $filters['year'] = GETPOST("year", 'int');
-if (GETPOST("id", 'int'))             $filters['id'] = GETPOST("id", 'int');
-if (GETPOST("idfrom", 'int'))         $filters['idfrom'] = GETPOST("idfrom", 'int');
-if (GETPOST("idto", 'int'))           $filters['idto'] = GETPOST("idto", 'int');
-if (GETPOST("project", 'apha'))       $filters['project'] = GETPOST("project", 'apha');
-if (GETPOST("logina", 'apha'))        $filters['logina'] = GETPOST("logina", 'apha');
-if (GETPOST("logint", 'apha'))        $filters['logint'] = GETPOST("logint", 'apha');
-if (GETPOST("notactiontype", 'apha')) $filters['notactiontype'] = GETPOST("notactiontype", 'apha');
-if (GETPOST("actiontype", 'apha'))    $filters['actiontype'] = GETPOST("actiontype", 'apha');
-if (GETPOST("notolderthan", 'int'))   $filters['notolderthan'] = GETPOST("notolderthan", "int");
-else $filters['notolderthan'] = $conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY;
+if (GETPOST("year", 'int')) {
+	$filters['year'] = GETPOST("year", 'int');
+}
+if (GETPOST("id", 'int')) {
+	$filters['id'] = GETPOST("id", 'int');
+}
+if (GETPOST("idfrom", 'int')) {
+	$filters['idfrom'] = GETPOST("idfrom", 'int');
+}
+if (GETPOST("idto", 'int')) {
+	$filters['idto'] = GETPOST("idto", 'int');
+}
+if (GETPOST("project", 'apha')) {
+	$filters['project'] = GETPOST("project", 'apha');
+}
+if (GETPOST("logina", 'apha')) {
+	$filters['logina'] = GETPOST("logina", 'apha');
+}
+if (GETPOST("logint", 'apha')) {
+	$filters['logint'] = GETPOST("logint", 'apha');
+}
+if (GETPOST("notactiontype", 'apha')) {
+	$filters['notactiontype'] = GETPOST("notactiontype", 'apha');
+}
+if (GETPOST("actiontype", 'apha')) {
+	$filters['actiontype'] = GETPOST("actiontype", 'apha');
+}
+if (GETPOST("notolderthan", 'int')) {
+	$filters['notolderthan'] = GETPOST("notolderthan", "int");
+} else {
+	$filters['notolderthan'] = $conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY;
+}
 
 // Check config
-if (empty($conf->global->MAIN_AGENDA_XCAL_EXPORTKEY))
-{
+if (empty($conf->global->MAIN_AGENDA_XCAL_EXPORTKEY)) {
 	$user->getrights();
 
 	llxHeaderVierge();
@@ -131,25 +175,45 @@ if ($reshook < 0) {
 $shortfilename = 'dolibarrcalendar';
 $filename = $shortfilename;
 // Complete long filename
-foreach ($filters as $key => $value)
-{
+foreach ($filters as $key => $value) {
 	//if ($key == 'notolderthan')    $filename.='-notolderthan'.$value; This filter key is already added before and does not need to be in filename
-	if ($key == 'year')            $filename .= '-year'.$value;
-	if ($key == 'id')              $filename .= '-id'.$value;
-	if ($key == 'idfrom')          $filename .= '-idfrom'.$value;
-	if ($key == 'idto')            $filename .= '-idto'.$value;
-	if ($key == 'project')         $filename .= '-project'.$value;
-	if ($key == 'logina')	       $filename .= '-logina'.$value; // Author
-	if ($key == 'logint')	       $filename .= '-logint'.$value; // Assigned to
-	if ($key == 'notactiontype')   $filename .= '-notactiontype'.$value;
+	if ($key == 'year') {
+		$filename .= '-year'.$value;
+	}
+	if ($key == 'id') {
+		$filename .= '-id'.$value;
+	}
+	if ($key == 'idfrom') {
+		$filename .= '-idfrom'.$value;
+	}
+	if ($key == 'idto') {
+		$filename .= '-idto'.$value;
+	}
+	if ($key == 'project') {
+		$filename .= '-project'.$value;
+	}
+	if ($key == 'logina') {
+		$filename .= '-logina'.$value; // Author
+	}
+	if ($key == 'logint') {
+		$filename .= '-logint'.$value; // Assigned to
+	}
+	if ($key == 'notactiontype') {
+		$filename .= '-notactiontype'.$value;
+	}
 }
 // Add extension
-if ($format == 'vcal') { $shortfilename .= '.vcs'; $filename .= '.vcs'; }
-if ($format == 'ical') { $shortfilename .= '.ics'; $filename .= '.ics'; }
-if ($format == 'rss') { $shortfilename .= '.rss'; $filename .= '.rss'; }
+if ($format == 'vcal') {
+	$shortfilename .= '.vcs'; $filename .= '.vcs';
+}
+if ($format == 'ical') {
+	$shortfilename .= '.ics'; $filename .= '.ics';
+}
+if ($format == 'rss') {
+	$shortfilename .= '.rss'; $filename .= '.rss';
+}
 
-if ($shortfilename == 'dolibarrcalendar')
-{
+if ($shortfilename == 'dolibarrcalendar') {
 	$langs->load("main");
 	$langs->load("errors");
 	llxHeaderVierge();
@@ -161,34 +225,47 @@ if ($shortfilename == 'dolibarrcalendar')
 $agenda = new ActionComm($db);
 
 $cachedelay = 0;
-if (!empty($conf->global->MAIN_AGENDA_EXPORT_CACHE)) $cachedelay = $conf->global->MAIN_AGENDA_EXPORT_CACHE;
+if (!empty($conf->global->MAIN_AGENDA_EXPORT_CACHE)) {
+	$cachedelay = $conf->global->MAIN_AGENDA_EXPORT_CACHE;
+}
 
 $exportholidays = GETPOST('includeholidays', 'int');
 
 // Build file
-if ($format == 'ical' || $format == 'vcal')
-{
+if ($format == 'ical' || $format == 'vcal') {
 	$result = $agenda->build_exportfile($format, $type, $cachedelay, $filename, $filters, $exportholidays);
-	if ($result >= 0)
-	{
+	if ($result >= 0) {
 		$attachment = true;
-		if (isset($_GET["attachment"])) $attachment = $_GET["attachment"];
+		if (isset($_GET["attachment"])) {
+			$attachment = $_GET["attachment"];
+		}
 		//$attachment = false;
 		$contenttype = 'text/calendar';
-		if (isset($_GET["contenttype"])) $contenttype = $_GET["contenttype"];
+		if (isset($_GET["contenttype"])) {
+			$contenttype = $_GET["contenttype"];
+		}
 		//$contenttype='text/plain';
 		$outputencoding = 'UTF-8';
 
-		if ($contenttype)       header('Content-Type: '.$contenttype.($outputencoding ? '; charset='.$outputencoding : ''));
-		if ($attachment) 		header('Content-Disposition: attachment; filename="'.$shortfilename.'"');
+		if ($contenttype) {
+			header('Content-Type: '.$contenttype.($outputencoding ? '; charset='.$outputencoding : ''));
+		}
+		if ($attachment) {
+			header('Content-Disposition: attachment; filename="'.$shortfilename.'"');
+		}
 
-		if ($cachedelay) header('Cache-Control: max-age='.$cachedelay.', private, must-revalidate');
-		else header('Cache-Control: private, must-revalidate');
+		if ($cachedelay) {
+			header('Cache-Control: max-age='.$cachedelay.', private, must-revalidate');
+		} else {
+			header('Cache-Control: private, must-revalidate');
+		}
 
 		// Clean parameters
 		$outputfile = $conf->agenda->dir_temp.'/'.$filename;
 		$result = readfile($outputfile);
-		if (!$result) print 'File '.$outputfile.' was empty.';
+		if (!$result) {
+			print 'File '.$outputfile.' was empty.';
+		}
 
 		//header("Location: ".DOL_URL_ROOT.'/document.php?modulepart=agenda&file='.urlencode($filename));
 		exit;
@@ -199,32 +276,43 @@ if ($format == 'ical' || $format == 'vcal')
 	}
 }
 
-if ($format == 'rss')
-{
+if ($format == 'rss') {
 	$result = $agenda->build_exportfile($format, $type, $cachedelay, $filename, $filters, $exportholidays);
-	if ($result >= 0)
-	{
+	if ($result >= 0) {
 		$attachment = false;
-		if (isset($_GET["attachment"])) $attachment = $_GET["attachment"];
+		if (isset($_GET["attachment"])) {
+			$attachment = $_GET["attachment"];
+		}
 		//$attachment = false;
 		$contenttype = 'application/rss+xml';
-		if (isset($_GET["contenttype"])) $contenttype = $_GET["contenttype"];
+		if (isset($_GET["contenttype"])) {
+			$contenttype = $_GET["contenttype"];
+		}
 		//$contenttype='text/plain';
 		$outputencoding = 'UTF-8';
 
-		if ($contenttype)       header('Content-Type: '.$contenttype.($outputencoding ? '; charset='.$outputencoding : ''));
-		if ($attachment) 		header('Content-Disposition: attachment; filename="'.$filename.'"');
+		if ($contenttype) {
+			header('Content-Type: '.$contenttype.($outputencoding ? '; charset='.$outputencoding : ''));
+		}
+		if ($attachment) {
+			header('Content-Disposition: attachment; filename="'.$filename.'"');
+		}
 
 		// Ajout directives pour resoudre bug IE
 		//header('Cache-Control: Public, must-revalidate');
 		//header('Pragma: public');
-		if ($cachedelay) header('Cache-Control: max-age='.$cachedelay.', private, must-revalidate');
-		else header('Cache-Control: private, must-revalidate');
+		if ($cachedelay) {
+			header('Cache-Control: max-age='.$cachedelay.', private, must-revalidate');
+		} else {
+			header('Cache-Control: private, must-revalidate');
+		}
 
 		// Clean parameters
 		$outputfile = $conf->agenda->dir_temp.'/'.$filename;
 		$result = readfile($outputfile);
-		if (!$result) print 'File '.$outputfile.' was empty.';
+		if (!$result) {
+			print 'File '.$outputfile.' was empty.';
+		}
 
 		// header("Location: ".DOL_URL_ROOT.'/document.php?modulepart=agenda&file='.urlencode($filename));
 		exit;

+ 43 - 46
htdocs/public/cron/cron_run_jobs_by_url.php

@@ -23,21 +23,34 @@
  *  \ingroup    cron
  *  \brief      Execute pendings jobs
  */
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Disables token renewal
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1');
-if (!defined('NOREQUIREHTML'))  define('NOREQUIREHTML', '1');
-if (!defined('NOREQUIREAJAX'))  define('NOREQUIREAJAX', '1');
-if (!defined('NOLOGIN'))        define('NOLOGIN', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', '1'); // Disables token renewal
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1');
+}
+if (!defined('NOREQUIREHTML')) {
+	define('NOREQUIREHTML', '1');
+}
+if (!defined('NOREQUIREAJAX')) {
+	define('NOREQUIREAJAX', '1');
+}
+if (!defined('NOLOGIN')) {
+	define('NOLOGIN', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 // Error if CLI mode
-if (php_sapi_name() == "cli")
-{
+if (php_sapi_name() == "cli") {
 	echo "Error: This page can't be used as a CLI script. For the CLI version of script, launch cron_run_job.php available into scripts/cron/ directory.\n";
 	exit(-1);
 }
@@ -66,34 +79,29 @@ $now = dol_now();
 
 // Check the key, avoid that a stranger starts cron
 $key = GETPOST('securitykey', 'alpha');
-if (empty($key))
-{
+if (empty($key)) {
 	echo 'Securitykey is required. Check setup of cron jobs module.';
 	exit;
 }
-if ($key != $conf->global->CRON_KEY)
-{
+if ($key != $conf->global->CRON_KEY) {
 	echo 'Securitykey is wrong.';
 	exit;
 }
 // Check the key, avoid that a stranger starts cron
 $userlogin = GETPOST('userlogin', 'alpha');
-if (empty($userlogin))
-{
+if (empty($userlogin)) {
 	echo 'Userlogin is required.';
 	exit;
 }
 require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
 $user = new User($db);
 $result = $user->fetch('', $userlogin);
-if ($result < 0)
-{
+if ($result < 0) {
 	echo "User Error:".$user->error;
 	dol_syslog("cron_run_jobs.php:: User Error:".$user->error, LOG_ERR);
 	exit;
 } else {
-	if (empty($user->id))
-	{
+	if (empty($user->id)) {
 		echo " User login:".$userlogin." do not exists";
 		dol_syslog(" User login:".$userlogin." do not exists", LOG_ERR);
 		exit;
@@ -107,8 +115,7 @@ $object = new Cronjob($db);
 
 $filter = array();
 if (!empty($id)) {
-	if (!is_numeric($id))
-	{
+	if (!is_numeric($id)) {
 		echo "Error: Bad value for parameter job id";
 		dol_syslog("cron_run_jobs.php Bad value for parameter job id", LOG_WARNING);
 		exit;
@@ -117,17 +124,17 @@ if (!empty($id)) {
 }
 
 $result = $object->fetch_all('ASC,ASC,ASC', 't.priority,t.entity,t.rowid', 0, 0, 1, $filter, 0);
-if ($result < 0)
-{
+if ($result < 0) {
 	echo "Error: ".$object->error;
 	dol_syslog("cron_run_jobs.php fetch Error".$object->error, LOG_ERR);
 	exit;
 }
 
 $qualifiedjobs = array();
-foreach ($object->lines as $val)
-{
-	if (!verifCond($val->test)) continue;
+foreach ($object->lines as $val) {
+	if (!verifCond($val->test)) {
+		continue;
+	}
 	$qualifiedjobs[] = $val;
 }
 
@@ -138,19 +145,16 @@ $nbofjobs = count($qualifiedjobs);
 $nbofjobslaunchedok = 0;
 $nbofjobslaunchedko = 0;
 
-if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0))
-{
+if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0)) {
 	$savconf = dol_clone($conf);
 
 	// Loop over job
-	foreach ($qualifiedjobs as $line)
-	{
+	foreach ($qualifiedjobs as $line) {
 		dol_syslog("cron_run_jobs.php cronjobid: ".$line->id." priority=".$line->priority." entity=".$line->entity." label=".$line->label, LOG_DEBUG);
 		echo "cron_run_jobs.php cronjobid: ".$line->id." priority=".$line->priority." entity=".$line->entity." label=".$line->label;
 
 		// Force reload of setup for the current entity
-		if ($line->entity != $conf->entity)
-		{
+		if ($line->entity != $conf->entity) {
 			dol_syslog("cron_run_jobs.php we work on another entity so we reload user and conf", LOG_DEBUG);
 			echo " -> we change entity so we reload user and conf";
 
@@ -158,17 +162,14 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0))
 			$conf->setValues($db); // This make also the $mc->setValues($conf); that reload $mc->sharings
 
 			// Force recheck that user is ok for the entity to process and reload permission for entity
-			if ($conf->entity != $user->entity && $user->entity != 0)
-			{
+			if ($conf->entity != $user->entity && $user->entity != 0) {
 				$result = $user->fetch('', $userlogin, '', 0, $conf->entity);
-				if ($result < 0)
-				{
+				if ($result < 0) {
 					echo "\nUser Error: ".$user->error."\n";
 					dol_syslog("cron_run_jobs.php:: User Error:".$user->error, LOG_ERR);
 					exit(-1);
 				} else {
-					if ($result == 0)
-					{
+					if ($result == 0) {
 						echo "\nUser login: ".$userlogin." does not exists for entity ".$conf->entity."\n";
 						dol_syslog("User login:".$userlogin." does not exists", LOG_ERR);
 						exit(-1);
@@ -179,16 +180,14 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0))
 		}
 
 		//If date_next_jobs is less of current date, execute the program, and store the execution time of the next execution in database
-		if (($line->datenextrun < $now) && (empty($line->datestart) || $line->datestart <= $now) && (empty($line->dateend) || $line->dateend >= $now))
-		{
+		if (($line->datenextrun < $now) && (empty($line->datestart) || $line->datestart <= $now) && (empty($line->dateend) || $line->dateend >= $now)) {
 			echo " - qualified";
 
 			dol_syslog("cron_run_jobs.php line->datenextrun:".dol_print_date($line->datenextrun, 'dayhourrfc')." line->datestart:".dol_print_date($line->datestart, 'dayhourrfc')." line->dateend:".dol_print_date($line->dateend, 'dayhourrfc')." now:".dol_print_date($now, 'dayhourrfc'));
 
 			$cronjob = new Cronjob($db);
 			$result = $cronjob->fetch($line->id);
-			if ($result < 0)
-			{
+			if ($result < 0) {
 				echo "Error cronjobid: ".$line->id." cronjob->fetch: ".$cronjob->error."\n";
 				echo "Failed to fetch job ".$line->id."\n";
 				dol_syslog("cron_run_jobs.php::fetch Error".$cronjob->error, LOG_ERR);
@@ -196,8 +195,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0))
 			}
 			// Execute job
 			$result = $cronjob->run_jobs($userlogin);
-			if ($result < 0)
-			{
+			if ($result < 0) {
 				echo "Error cronjobid: ".$line->id." cronjob->run_job: ".$cronjob->error."\n";
 				echo "At least one job failed. Go on menu Home-Setup-Admin tools to see result for each job.\n";
 				echo "You can also enable module Log if not yet enabled, run again and take a look into dolibarr.log file\n";
@@ -211,8 +209,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0))
 
 			// We re-program the next execution and stores the last execution time for this job
 			$result = $cronjob->reprogram_jobs($userlogin, $now);
-			if ($result < 0)
-			{
+			if ($result < 0) {
 				echo "Error cronjobid: ".$line->id." cronjob->reprogram_job: ".$cronjob->error."\n";
 				echo "Enable module Log if not yet enabled, run again and take a look into dolibarr.log file\n";
 				dol_syslog("cron_run_jobs.php::reprogram_jobs Error".$cronjob->error, LOG_ERR);

+ 74 - 68
htdocs/public/demo/index.php

@@ -24,10 +24,18 @@
  *		\brief      Entry page to access demo
  */
 
-if (!defined('NOLOGIN'))        define('NOLOGIN', '1');
-if (!defined('NOCSRFCHECK'))    define('NOCSRFCHECK', '1');
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', 1);
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define('NOLOGIN', '1');
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1');
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', 1);
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 require '../../main.inc.php';
 require_once '../../core/lib/functions2.lib.php';
@@ -42,7 +50,9 @@ $conf->dol_use_jmobile = GETPOST('dol_use_jmobile', 'int');
 
 // Security check
 global $dolibarr_main_demo;
-if (empty($dolibarr_main_demo)) accessforbidden('Parameter dolibarr_main_demo must be defined in conf file with value "default login,default pass" to enable the demo entry page', 0, 0, 1);
+if (empty($dolibarr_main_demo)) {
+	accessforbidden('Parameter dolibarr_main_demo must be defined in conf file with value "default login,default pass" to enable the demo entry page', 0, 0, 1);
+}
 
 // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
 $res = $hookmanager->initHooks(array('demo'));
@@ -66,8 +76,7 @@ $parameters = array();
 $object = new stdClass();
 $reshook = $hookmanager->executeHooks('addDemoProfile', $parameters, $object, $tmpaction); // Note that $action and $object may have been modified by some hooks
 $error = $hookmanager->error; $errors = $hookmanager->errors;
-if (empty($reshook))
-{
+if (empty($reshook)) {
 	$demoprofiles = array(
 		array('default'=>'1', 'key'=>'profdemoservonly', 'label'=>'DemoCompanyServiceOnly',
 		'disablemodules'=>'adherent,barcode,bom,cashdesk,don,expedition,externalsite,ftp,incoterm,mailmanspip,margin,mrp,prelevement,product,productbatch,stock,takepos',
@@ -131,27 +140,21 @@ $dirmod = array();
 $i = 0; // is a sequencer of modules found
 $j = 0; // j is module number. Automatically affected if module number not defined.
 
-foreach ($modulesdir as $dir)
-{
+foreach ($modulesdir as $dir) {
 	// Charge tableaux modules, nom, numero, orders depuis repertoire dir
 	$handle = @opendir($dir);
-	if (is_resource($handle))
-	{
-		while (($file = readdir($handle)) !== false)
-		{
+	if (is_resource($handle)) {
+		while (($file = readdir($handle)) !== false) {
 			//print "$i ".$file."\n<br>";
-			if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, dol_strlen($file) - 10) == '.class.php')
-			{
+			if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, dol_strlen($file) - 10) == '.class.php') {
 				$modName = substr($file, 0, dol_strlen($file) - 10);
 
-				if ($modName)
-				{
+				if ($modName) {
 					try {
 						include_once $dir.$file;
 						$objMod = new $modName($db);
 
-						if ($objMod->numero > 0)
-						{
+						if ($objMod->numero > 0) {
 							$j = $objMod->numero;
 						} else {
 							$j = 1000 + $i;
@@ -161,11 +164,14 @@ foreach ($modulesdir as $dir)
 
 						// We discard modules according to features level (PS: if module is activated we always show it)
 						$const_name = 'MAIN_MODULE_'.strtoupper(preg_replace('/^mod/i', '', get_class($objMod)));
-						if ($objMod->version == 'development' && $conf->global->MAIN_FEATURES_LEVEL < 2 && empty($conf->global->$const_name)) $modulequalified = 0;
-						if ($objMod->version == 'experimental' && $conf->global->MAIN_FEATURES_LEVEL < 1 && empty($conf->global->$const_name)) $modulequalified = 0;
+						if ($objMod->version == 'development' && $conf->global->MAIN_FEATURES_LEVEL < 2 && empty($conf->global->$const_name)) {
+							$modulequalified = 0;
+						}
+						if ($objMod->version == 'experimental' && $conf->global->MAIN_FEATURES_LEVEL < 1 && empty($conf->global->$const_name)) {
+							$modulequalified = 0;
+						}
 
-						if ($modulequalified)
-						{
+						if ($modulequalified) {
 							$modules[$i] = $objMod;
 							$filename[$i] = $modName;
 							$orders[$i]  = $objMod->family."_".$j; // Tri par famille puis numero module
@@ -174,8 +180,7 @@ foreach ($modulesdir as $dir)
 							$j++;
 							$i++;
 						}
-					} catch (Exception $e)
-					{
+					} catch (Exception $e) {
 						dol_syslog("Failed to load ".$dir.$file." ".$e->getMessage(), LOG_ERR);
 					}
 				}
@@ -192,37 +197,34 @@ asort($orders);
  * Actions
  */
 
-if (GETPOST('action', 'aZ09') == 'gotodemo')     // Action run when we click on "Start" after selection modules
-{
+if (GETPOST('action', 'aZ09') == 'gotodemo') {     // Action run when we click on "Start" after selection modules
 	//print 'ee'.GETPOST("demochoice");
 	$disablestring = '';
 	// If we disable modules using a profile choice
-	if (GETPOST("demochoice"))
-	{
-		foreach ($demoprofiles as $profilearray)
-		{
-			if ($profilearray['key'] == GETPOST("demochoice"))
-			{
+	if (GETPOST("demochoice")) {
+		foreach ($demoprofiles as $profilearray) {
+			if ($profilearray['key'] == GETPOST("demochoice")) {
 				$disablestring = $profilearray['disablemodules'];
 				break;
 			}
 		}
 	}
 	// If we disable modules using personalized list
-	foreach ($modules as $val)
-	{
+	foreach ($modules as $val) {
 		$modulekeyname = strtolower($val->name);
-		if (empty($_POST[$modulekeyname]) && empty($val->always_enabled) && !in_array($modulekeyname, $alwayscheckedmodules))
-		{
+		if (empty($_POST[$modulekeyname]) && empty($val->always_enabled) && !in_array($modulekeyname, $alwayscheckedmodules)) {
 			$disablestring .= $modulekeyname.',';
-			if ($modulekeyname == 'propale') $disablestring .= 'propal,';
+			if ($modulekeyname == 'propale') {
+				$disablestring .= 'propal,';
+			}
 		}
 	}
 
 	// Do redirect to login page
-	if ($disablestring)
-	{
-		if (GETPOST('urlfrom')) $url .= (preg_match('/\?/', $url) ? '&amp;' : '?').'urlfrom='.urlencode(GETPOST('urlfrom', 'alpha'));
+	if ($disablestring) {
+		if (GETPOST('urlfrom')) {
+			$url .= (preg_match('/\?/', $url) ? '&amp;' : '?').'urlfrom='.urlencode(GETPOST('urlfrom', 'alpha'));
+		}
 		$url .= (preg_match('/\?/', $url) ? '&amp;' : '?').'disablemodules='.$disablestring;
 		//var_dump($url);exit;
 		header("Location: ".$url);
@@ -288,12 +290,12 @@ print '<div class="clearboth"></div>';
 print '<div class="demobanbox">';
 
 $i = 0;
-foreach ($demoprofiles as $profilearray)
-{
-	if ($profilearray['default'] >= 0)
-	{
+foreach ($demoprofiles as $profilearray) {
+	if ($profilearray['default'] >= 0) {
 		//print $profilearray['lang'];
-		if (!empty($profilearray['lang'])) $langs->load($profilearray['lang']);
+		if (!empty($profilearray['lang'])) {
+			$langs->load($profilearray['lang']);
+		}
 
 		$url = $_SERVER["PHP_SELF"].'?action=gotodemo';
 		$urlwithmod = $url.'&amp;demochoice='.$profilearray['key'];
@@ -303,18 +305,15 @@ foreach ($demoprofiles as $profilearray)
 		$urlfrom = preg_replace('/^'.preg_quote(DOL_URL_ROOT, '/').'/i', '', $_SERVER["PHP_SELF"]);
 		//print $urlfrom;
 
-		if (!empty($profilearray['url']))
-		{
+		if (!empty($profilearray['url'])) {
 			$urlwithmod = $profilearray['url'];
 			$urlwithmod = $urlwithmod.(preg_match('/\?/', $urlwithmod) ? '&amp;' : '?').'urlfrom='.urlencode($urlfrom);
-			if (!empty($profilearray['disablemodules']))
-			{
+			if (!empty($profilearray['disablemodules'])) {
 				  $urlwithmod = $urlwithmod.(preg_match('/\?/', $urlwithmod) ? '&amp;' : '?').'disablemodules='.$profilearray['disablemodules'];
 			}
 		}
 
-		if (empty($profilearray['url']))
-		{
+		if (empty($profilearray['url'])) {
 			print '<div class="clearboth"></div>';
 		}
 
@@ -350,8 +349,7 @@ foreach ($demoprofiles as $profilearray)
 
 
 		// Modules (a profile you must choose modules)
-		if (empty($profilearray['url']))
-		{
+		if (empty($profilearray['url'])) {
 			print '<div id="tr1'.$profilearray['key'].'" class="moduleline hidden" style="margin-left: 8px; margin-right: 8px; text-align: justify; font-size:14px; line-height: 130%; padding-bottom: 8px">';
 
 			print $langs->trans("ThisIsListOfModules").'<br><br>';
@@ -362,20 +360,26 @@ foreach ($demoprofiles as $profilearray)
 			$j = 0;
 			$nbcolsmod = empty($conf->dol_optimize_smallscreen) ? 4 : 3;
 			//var_dump($modules);
-			foreach ($orders as $index => $key) // Loop on qualified (enabled) modules
-			{
+			foreach ($orders as $index => $key) { // Loop on qualified (enabled) modules
 				//print $index.' '.$key;
 				$val = $modules[$index];
 				$modulekeyname = strtolower($val->name);
 
 				$modulequalified = 1;
-				if (!empty($val->always_enabled) || in_array($modulekeyname, $alwayshiddenuncheckedmodules)) $modulequalified = 0;
-				if ($val->version == 'development' && $conf->global->MAIN_FEATURES_LEVEL < 2 && !$conf->global->$const_name) $modulequalified = 0;
-				if ($val->version == 'experimental' && $conf->global->MAIN_FEATURES_LEVEL < 1 && !$conf->global->$const_name) $modulequalified = 0;
-				if (!$modulequalified) continue;
+				if (!empty($val->always_enabled) || in_array($modulekeyname, $alwayshiddenuncheckedmodules)) {
+					$modulequalified = 0;
+				}
+				if ($val->version == 'development' && $conf->global->MAIN_FEATURES_LEVEL < 2 && !$conf->global->$const_name) {
+					$modulequalified = 0;
+				}
+				if ($val->version == 'experimental' && $conf->global->MAIN_FEATURES_LEVEL < 1 && !$conf->global->$const_name) {
+					$modulequalified = 0;
+				}
+				if (!$modulequalified) {
+					continue;
+				}
 
-				if (in_array($modulekeyname, $alwayshiddencheckedmodules))
-				{
+				if (in_array($modulekeyname, $alwayshiddencheckedmodules)) {
 					print "\n".'<!-- Module '.$modulekeyname.' hidden and always checked -->';
 					print '<input type="hidden" name="'.$modulekeyname.'" value="1">';
 				} else {
@@ -384,8 +388,12 @@ foreach ($demoprofiles as $profilearray)
 					print '<!-- id='.$val->numero.' -->';
 					print '<div class="nowrap">';
 					print '<input type="checkbox" class="checkbox" id="id'.$modulekeyname.'" name="'.$modulekeyname.'" value="1" title="'.dol_escape_htmltag($val->getName()).'"';
-					if (in_array($modulekeyname, $alwaysuncheckedmodules)) print ' disabled';
-					if (!in_array($modulekeyname, $alwaysuncheckedmodules) && (!in_array($modulekeyname, $listofdisabledmodules) || in_array($modulekeyname, $alwayscheckedmodules))) print ' checked';
+					if (in_array($modulekeyname, $alwaysuncheckedmodules)) {
+						print ' disabled';
+					}
+					if (!in_array($modulekeyname, $alwaysuncheckedmodules) && (!in_array($modulekeyname, $listofdisabledmodules) || in_array($modulekeyname, $alwayscheckedmodules))) {
+						print ' checked';
+					}
 					print '> <label for="id'.$modulekeyname.'" class="inline-block demomaxoveflow" title="'.dol_escape_htmltag($val->getName()).'">'.$val->getName().'</label><br>';
 					print '</div>';
 					//if ($modulo == ($nbcolsmod - 1)) print '</tr>';
@@ -414,10 +422,8 @@ print '</div>';
 
 // TODO Replace this with a hook
 // Google Adsense (need Google module)
-if (!empty($conf->google->enabled) && !empty($conf->global->MAIN_GOOGLE_AD_CLIENT) && !empty($conf->global->MAIN_GOOGLE_AD_SLOT))
-{
-	if (empty($conf->dol_use_jmobile))
-	{
+if (!empty($conf->google->enabled) && !empty($conf->global->MAIN_GOOGLE_AD_CLIENT) && !empty($conf->global->MAIN_GOOGLE_AD_SLOT)) {
+	if (empty($conf->dol_use_jmobile)) {
 		print '<div align="center">'."\n";
 		print '<script><!--'."\n";
 		print 'google_ad_client = "'.$conf->global->MAIN_GOOGLE_AD_CLIENT.'";'."\n";

+ 19 - 13
htdocs/public/donations/donateurs_code.php

@@ -22,10 +22,18 @@
  *		\brief      Page to list donators
  */
 
-if (!defined('NOLOGIN'))        define('NOLOGIN', '1');
-if (!defined('NOCSRFCHECK'))    define('NOCSRFCHECK', '1');
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define('NOLOGIN', '1');
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1');
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 // C'est un wrapper, donc header vierge
 /**
@@ -51,7 +59,9 @@ require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
 
 // Security check
-if (empty($conf->don->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->don->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 $langs->load("donations");
@@ -68,11 +78,9 @@ $sql .= " FROM ".MAIN_DB_PREFIX."don as d";
 $sql .= " WHERE d.fk_statut in (2, 3) ORDER BY d.datedon DESC";
 
 $resql = $db->query($sql);
-if ($resql)
-{
+if ($resql) {
 	$num = $db->num_rows($resql);
-	if ($num)
-	{
+	if ($num) {
 		print "<table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"4\">";
 
 		print '<tr>';
@@ -81,13 +89,11 @@ if ($resql)
 		print '<td class="right">'.$langs->trans("Amount").'</td>';
 		print "</tr>\n";
 
-		while ($i < $num)
-		{
+		while ($i < $num) {
 			$objp = $db->fetch_object($resql);
 
 			print '<tr class="oddeven">';
-			if ($objp->public)
-			{
+			if ($objp->public) {
 				print "<td>".dolGetFirstLastname($objp->firstname, $objp->lastname)." ".dol_escape_htmltag($objp->societe)."</td>\n";
 			} else {
 				print "<td>".$langs->trans("Anonymous")."</td>\n";

+ 23 - 11
htdocs/public/emailing/mailing-read.php

@@ -25,13 +25,27 @@
  *      \brief      Script use to update mail status if destinaries read it (if images during mail read are display)
  */
 
-if (!defined('NOLOGIN'))        define('NOLOGIN', '1');
-if (!defined('NOCSRFCHECK'))    define('NOCSRFCHECK', '1');
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
-if (!defined('NOREQUIRETRAN'))  define('NOREQUIRETRAN', '1');
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Do not check anti POST attack test
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define('NOLOGIN', '1');
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1');
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
+if (!defined('NOREQUIRETRAN')) {
+	define('NOREQUIRETRAN', '1');
+}
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', '1'); // Do not check anti POST attack test
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 /**
  * Header empty
@@ -63,14 +77,12 @@ $securitykey = GETPOST('securitykey');
 
 dol_syslog("public/emailing/mailing-read.php : tag=".$tag." securitykey=".$securitykey, LOG_DEBUG);
 
-if ($securitykey != $conf->global->MAILING_EMAIL_UNSUBSCRIBE_KEY)
-{
+if ($securitykey != $conf->global->MAILING_EMAIL_UNSUBSCRIBE_KEY) {
 	print 'Bad security key value.';
 	exit;
 }
 
-if (!empty($tag))
-{
+if (!empty($tag)) {
 	$statut = '2';
 	$sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles SET statut=".$statut." WHERE tag='".$db->escape($tag)."'";
 	dol_syslog("public/emailing/mailing-read.php : Mail read : ".$sql, LOG_DEBUG);

+ 25 - 14
htdocs/public/emailing/mailing-unsubscribe.php

@@ -27,11 +27,21 @@
  *                  https://myserver/public/emailing/mailing-unsubscribe.php?unsuscrib=1&securitykey=securitykey&tag=abcdefghijklmn
  */
 
-if (!defined('NOLOGIN'))        define('NOLOGIN', '1');
-if (!defined('NOCSRFCHECK'))    define('NOCSRFCHECK', '1');
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define('NOLOGIN', '1');
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1');
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 /**
  * Header empty
@@ -69,15 +79,13 @@ $securitykey = GETPOST('securitykey');
 
 dol_syslog("public/emailing/mailing-read.php : tag=".$tag." securitykey=".$securitykey, LOG_DEBUG);
 
-if ($securitykey != $conf->global->MAILING_EMAIL_UNSUBSCRIBE_KEY)
-{
+if ($securitykey != $conf->global->MAILING_EMAIL_UNSUBSCRIBE_KEY) {
 	print 'Bad security key value.';
 	exit;
 }
 
 
-if (!empty($tag) && ($unsuscrib == '1'))
-{
+if (!empty($tag) && ($unsuscrib == '1')) {
 	dol_syslog("public/emailing/mailing-unsubscribe.php : Launch unsubscribe requests", LOG_DEBUG);
 
 	$sql = "SELECT mc.email, m.entity";
@@ -85,12 +93,13 @@ if (!empty($tag) && ($unsuscrib == '1'))
 	$sql .= " WHERE mc.fk_mailing = m.rowid AND mc.tag='".$db->escape($tag)."'";
 
 	$resql = $db->query($sql);
-	if (!$resql) dol_print_error($db);
+	if (!$resql) {
+		dol_print_error($db);
+	}
 
 	$obj = $db->fetch_object($resql);
 
-	if (empty($obj->email))
-	{
+	if (empty($obj->email)) {
 		print 'Email not found. No need to unsubscribe.';
 		exit;
 	}
@@ -100,7 +109,9 @@ if (!empty($tag) && ($unsuscrib == '1'))
 	$sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles SET statut=".$statut." WHERE tag='".$db->escape($tag)."'";
 
 	$resql = $db->query($sql);
-	if (!$resql) dol_print_error($db);
+	if (!$resql) {
+		dol_print_error($db);
+	}
 
 	/*
 	// Update status communication of thirdparty prospect (old usage)
@@ -109,7 +120,7 @@ if (!empty($tag) && ($unsuscrib == '1'))
 	$resql=$db->query($sql);
 	if (! $resql) dol_print_error($db);
 
-    // Update status communication of contact prospect (old usage)
+	// Update status communication of contact prospect (old usage)
 	$sql = "UPDATE ".MAIN_DB_PREFIX."socpeople SET no_email=1 WHERE rowid IN (SELECT source_id FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE tag = '".$db->escape($tag)."' AND source_type='contact' AND source_id is not null)";
 
 	$resql=$db->query($sql);

+ 16 - 16
htdocs/public/error-401.php

@@ -1,32 +1,32 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
   <head>
-    <title>Dolibarr 401 error page</title>
+	<title>Dolibarr 401 error page</title>
   </head>
 
   <body>
 
-    <div>
+	<div>
 
-    <!-- <div data-role="header" data-theme="b">
-            <h1>Introduction</h1>
-            <a href="../../" data-icon="home" data-iconpos="notext" data-direction="reverse" class="ui-btn-right jqm-home">Home</a>
-        </div>
-    -->
-    <div>
+	<!-- <div data-role="header" data-theme="b">
+			<h1>Introduction</h1>
+			<a href="../../" data-icon="home" data-iconpos="notext" data-direction="reverse" class="ui-btn-right jqm-home">Home</a>
+		</div>
+	-->
+	<div>
 
-    <h1>Error</h1>
+	<h1>Error</h1>
 
-    <br>
-    Sorry. You are not allowed to access this resource.
+	<br>
+	Sorry. You are not allowed to access this resource.
 
-    <br>
-    <?php print isset($_SERVER["HTTP_REFERER"]) ? 'You come from '.htmlentities($_SERVER["HTTP_REFERER"]).'.' : ''; ?>
+	<br>
+	<?php print isset($_SERVER["HTTP_REFERER"]) ? 'You come from '.htmlentities($_SERVER["HTTP_REFERER"]).'.' : ''; ?>
 
-    <hr>
+	<hr>
 
-    </div>
-    </div>
+	</div>
+	</div>
 
   </body>
 </html>

+ 16 - 16
htdocs/public/error-404.php

@@ -1,32 +1,32 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
   <head>
-    <title>Dolibarr 404 error page</title>
+	<title>Dolibarr 404 error page</title>
   </head>
 
   <body>
 
-    <div>
+	<div>
 
-    <!-- <div data-role="header" data-theme="b">
-            <h1>Introduction</h1>
-            <a href="../../" data-icon="home" data-iconpos="notext" data-direction="reverse" class="ui-btn-right jqm-home">Home</a>
-        </div>
-    -->
-    <div>
+	<!-- <div data-role="header" data-theme="b">
+			<h1>Introduction</h1>
+			<a href="../../" data-icon="home" data-iconpos="notext" data-direction="reverse" class="ui-btn-right jqm-home">Home</a>
+		</div>
+	-->
+	<div>
 
-    <h2>Error</h2>
+	<h2>Error</h2>
 
-    <br>
-    You requested a website or a page that does not exists.
+	<br>
+	You requested a website or a page that does not exists.
 
-    <br>
-    <?php print isset($_SERVER["HTTP_REFERER"]) ? 'You come from '.htmlentities($_SERVER["HTTP_REFERER"]).'.' : ''; ?>
+	<br>
+	<?php print isset($_SERVER["HTTP_REFERER"]) ? 'You come from '.htmlentities($_SERVER["HTTP_REFERER"]).'.' : ''; ?>
 
-    <hr>
+	<hr>
 
-    </div>
-    </div>
+	</div>
+	</div>
 
   </body>
 </html>

+ 76 - 28
htdocs/public/members/new.php

@@ -37,17 +37,29 @@
  *  MEMBER_NEWFORM_FORCECOUNTRYCODE     Force country
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
@@ -67,7 +79,9 @@ $action = GETPOST('action', 'aZ09');
 $langs->loadLangs(array("main", "members", "companies", "install", "other"));
 
 // Security check
-if (empty($conf->adherent->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->adherent->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 if (empty($conf->global->MEMBER_ENABLE_PUBLIC)) {
 	print $langs->trans("Auto subscription form for public visitors has not been enabled");
@@ -226,8 +240,11 @@ if (empty($reshook) && $action == 'add') {
 		}
 	}
 
-	if (GETPOSTISSET('public')) $public = 1;
-	else $public = 0;
+	if (GETPOSTISSET('public')) {
+		$public = 1;
+	} else {
+		$public = 0;
+	}
 
 	if (!$error) {
 		// email a peu pres correct et le login n'existe pas
@@ -259,7 +276,9 @@ if (empty($reshook) && $action == 'add') {
 		// Fill array 'array_options' with data from add form
 		$extrafields->fetch_name_optionals_label($adh->table_element);
 		$ret = $extrafields->setOptionalsFromPost(null, $adh);
-		if ($ret < 0) $error++;
+		if ($ret < 0) {
+			$error++;
+		}
 
 		$result = $adh->create($user);
 		if ($result > 0) {
@@ -285,7 +304,9 @@ if (empty($reshook) && $action == 'add') {
 				$arraydefaultmessage = null;
 				$labeltouse = $conf->global->ADHERENT_EMAIL_TEMPLATE_AUTOREGISTER;
 
-				if (!empty($labeltouse)) $arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse);
+				if (!empty($labeltouse)) {
+					$arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse);
+				}
 
 				if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) {
 					$subject = $arraydefaultmessage->topic;
@@ -303,9 +324,9 @@ if (empty($reshook) && $action == 'add') {
 					$result = $object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader);
 				}
 				/*if ($result < 0) {
-            		$error++;
-            		setEventMessages($object->error, $object->errors, 'errors');
-            	}*/
+					$error++;
+					setEventMessages($object->error, $object->errors, 'errors');
+				}*/
 			}
 
 			// Send email to the foundation to say a new member subscribed with autosubscribe form
@@ -316,8 +337,12 @@ if (empty($reshook) && $action == 'add') {
 				if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
 					$appli = $conf->global->MAIN_APPLICATION_TITLE;
 					if (preg_match('/\d\.\d/', $appli)) {
-						if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
-					} else $appli .= " ".DOL_VERSION;
+						if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) {
+							$appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
+						}
+					} else {
+						$appli .= " ".DOL_VERSION;
+					}
 				} else {
 					$appli .= " ".DOL_VERSION;
 				}
@@ -355,8 +380,12 @@ if (empty($reshook) && $action == 'add') {
 			if (!empty($conf->global->MEMBER_NEWFORM_PAYONLINE) && $conf->global->MEMBER_NEWFORM_PAYONLINE != '-1') {
 				if ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'all') {
 					$urlback = DOL_MAIN_URL_ROOT.'/public/payment/newpayment.php?from=membernewform&source=membersubscription&ref='.urlencode($adh->ref);
-					if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
-					if (GETPOST('email')) $urlback .= '&email='.urlencode(GETPOST('email'));
+					if (price2num(GETPOST('amount', 'alpha'))) {
+						$urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
+					}
+					if (GETPOST('email')) {
+						$urlback .= '&email='.urlencode(GETPOST('email'));
+					}
 					if (!empty($conf->global->PAYMENT_SECURITY_TOKEN)) {
 						if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) {
 							$urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2));
@@ -366,8 +395,12 @@ if (empty($reshook) && $action == 'add') {
 					}
 				} elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'paybox') {
 					$urlback = DOL_MAIN_URL_ROOT.'/public/paybox/newpayment.php?from=membernewform&source=membersubscription&ref='.urlencode($adh->ref);
-					if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
-					if (GETPOST('email')) $urlback .= '&email='.urlencode(GETPOST('email'));
+					if (price2num(GETPOST('amount', 'alpha'))) {
+						$urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
+					}
+					if (GETPOST('email')) {
+						$urlback .= '&email='.urlencode(GETPOST('email'));
+					}
 					if (!empty($conf->global->PAYMENT_SECURITY_TOKEN)) {
 						if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) {
 							$urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2));
@@ -377,8 +410,12 @@ if (empty($reshook) && $action == 'add') {
 					}
 				} elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'paypal') {
 					$urlback = DOL_MAIN_URL_ROOT.'/public/paypal/newpayment.php?from=membernewform&source=membersubscription&ref='.urlencode($adh->ref);
-					if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
-					if (GETPOST('email')) $urlback .= '&email='.urlencode(GETPOST('email'));
+					if (price2num(GETPOST('amount', 'alpha'))) {
+						$urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
+					}
+					if (GETPOST('email')) {
+						$urlback .= '&email='.urlencode(GETPOST('email'));
+					}
 					if (!empty($conf->global->PAYMENT_SECURITY_TOKEN)) {
 						if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) {
 							$urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2));
@@ -388,8 +425,12 @@ if (empty($reshook) && $action == 'add') {
 					}
 				} elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'stripe') {
 					$urlback = DOL_MAIN_URL_ROOT.'/public/stripe/newpayment.php?from=membernewform&source=membersubscription&ref='.$adh->ref;
-					if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
-					if (GETPOST('email')) $urlback .= '&email='.urlencode(GETPOST('email'));
+					if (price2num(GETPOST('amount', 'alpha'))) {
+						$urlback .= '&amount='.price2num(GETPOST('amount', 'alpha'));
+					}
+					if (GETPOST('email')) {
+						$urlback .= '&email='.urlencode(GETPOST('email'));
+					}
 					if (!empty($conf->global->PAYMENT_SECURITY_TOKEN)) {
 						if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) {
 							$urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2));
@@ -403,7 +444,9 @@ if (empty($reshook) && $action == 'add') {
 				}
 			}
 
-			if (!empty($entity)) $urlback .= '&entity='.$entity;
+			if (!empty($entity)) {
+				$urlback .= '&entity='.$entity;
+			}
 			dol_syslog("member ".$adh->ref." was created, we redirect to ".$urlback);
 		} else {
 			$error++;
@@ -572,7 +615,9 @@ if (!$country_id && !empty($conf->geoipmaxmind->enabled)) {
 	if ($country_code) {
 		$new_country_id = getCountry($country_code, 3, $db, $langs);
 		//print 'xxx'.$country_code.' - '.$new_country_id;
-		if ($new_country_id) $country_id = $new_country_id;
+		if ($new_country_id) {
+			$country_id = $new_country_id;
+		}
 	}
 }
 $country_code = getCountry($country_id, 2, $db, $langs);
@@ -581,8 +626,11 @@ print '</td></tr>';
 // State
 if (empty($conf->global->SOCIETE_DISABLE_STATE)) {
 	print '<tr><td>'.$langs->trans('State').'</td><td>';
-	if ($country_code) print $formcompany->select_state(GETPOST("state_id"), $country_code);
-	else print '';
+	if ($country_code) {
+		print $formcompany->select_state(GETPOST("state_id"), $country_code);
+	} else {
+		print '';
+	}
 	print '</td></tr>';
 }
 // EMail

+ 32 - 16
htdocs/public/members/public_card.php

@@ -25,16 +25,26 @@
  * 	\brief      File to show a public card of a member
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php';
@@ -42,7 +52,9 @@ require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent_type.class.php';
 require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
 
 // Security check
-if (empty($conf->adherent->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->adherent->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 $langs->loadLangs(array("main", "members", "companies", "other"));
@@ -66,24 +78,27 @@ $extrafields = new ExtraFields($db);
  */
 
 $morehead = '';
-if (!empty($conf->global->MEMBER_PUBLIC_CSS)) $morehead = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MEMBER_PUBLIC_CSS.'">';
-else $morehead = '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/eldy/style.css.php">';
+if (!empty($conf->global->MEMBER_PUBLIC_CSS)) {
+	$morehead = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MEMBER_PUBLIC_CSS.'">';
+} else {
+	$morehead = '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/eldy/style.css.php">';
+}
 
 llxHeaderVierge($langs->trans("MemberCard"), $morehead);
 
 // fetch optionals attributes and labels
 $extrafields->fetch_name_optionals_label($object->table_element);
 
-if ($id > 0)
-{
+if ($id > 0) {
 	$res = $object->fetch($id);
-	if ($res < 0) { dol_print_error($db, $object->error); exit; }
+	if ($res < 0) {
+		dol_print_error($db, $object->error); exit;
+	}
 	$res = $object->fetch_optionals();
 
 	print load_fiche_titre($langs->trans("MemberCard"), '', '');
 
-	if (empty($object->public))
-	{
+	if (empty($object->public)) {
 		 print $langs->trans("ErrorThisMemberIsNotPublic");
 	} else {
 		print '<table class="public_border" cellspacing="0" width="100%" cellpadding="3">';
@@ -100,8 +115,7 @@ if ($id > 0)
 		print '<tr><td>'.$langs->trans("EMail").'</td><td class="valeur">'.$object->email.'&nbsp;</td></tr>';
 		print '<tr><td>'.$langs->trans("Birthday").'</td><td class="valeur">'.dol_print_date($object->birth, 'day').'</td></tr>';
 
-		if (isset($object->photo) && $object->photo != '')
-		{
+		if (isset($object->photo) && $object->photo != '') {
 			$form = new Form($db);
 			print '<tr><td>URL Photo</td><td class="valeur">';
 			print $form->showphoto('memberphoto', $object, 64);
@@ -139,7 +153,9 @@ function llxHeaderVierge($title, $head = "")
 	print "<html>\n";
 	print "<head>\n";
 	print "<title>".$title."</title>\n";
-	if ($head) print $head."\n";
+	if ($head) {
+		print $head."\n";
+	}
 	print "</head>\n";
 	print '<body class="public_body">'."\n";
 }

+ 38 - 18
htdocs/public/members/public_list.php

@@ -24,21 +24,33 @@
  *  \brief      File sample to list members
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 
 // Security check
-if (empty($conf->adherent->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->adherent->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 $langs->loadLangs(array("main", "members", "companies", "other"));
@@ -59,7 +71,9 @@ function llxHeaderVierge($title, $head = "")
 	print "<html>\n";
 	print "<head>\n";
 	print "<title>".$title."</title>\n";
-	if ($head) print $head."\n";
+	if ($head) {
+		print $head."\n";
+	}
 	print "</head>\n";
 	print '<body class="public_body">'."\n";
 }
@@ -82,7 +96,9 @@ $sortfield = GETPOST("sortfield", 'alpha');
 $sortorder = GETPOST("sortorder", 'alpha');
 $limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit;
 $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
-if (empty($page) || $page == -1) { $page = 0; }     // If $page is not defined, or '' or -1
+if (empty($page) || $page == -1) {
+	$page = 0;
+}     // If $page is not defined, or '' or -1
 $offset = $limit * $page;
 $pageprev = $page - 1;
 $pagenext = $page + 1;
@@ -90,8 +106,12 @@ $pagenext = $page + 1;
 $filter = GETPOST('filter');
 $statut = GETPOST('statut');
 
-if (!$sortorder) {  $sortorder = "ASC"; }
-if (!$sortfield) {  $sortfield = "lastname"; }
+if (!$sortorder) {
+	$sortorder = "ASC";
+}
+if (!$sortfield) {
+	$sortfield = "lastname";
+}
 
 
 /*
@@ -101,8 +121,11 @@ if (!$sortfield) {  $sortfield = "lastname"; }
 $form = new Form($db);
 
 $morehead = '';
-if (!empty($conf->global->MEMBER_PUBLIC_CSS)) $morehead = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MEMBER_PUBLIC_CSS.'">';
-else $morehead = '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/eldy/style.css.php">';
+if (!empty($conf->global->MEMBER_PUBLIC_CSS)) {
+	$morehead = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MEMBER_PUBLIC_CSS.'">';
+} else {
+	$morehead = '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/eldy/style.css.php">';
+}
 
 llxHeaderVierge($langs->trans("ListOfValidatedPublicMembers"), $morehead);
 
@@ -119,8 +142,7 @@ $sql .= $db->plimit($conf->liste_limit + 1, $offset);
 //$sql .= " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit, $offset);
 
 $result = $db->query($sql);
-if ($result)
-{
+if ($result) {
 	$num = $db->num_rows($result);
 	$i = 0;
 
@@ -138,8 +160,7 @@ if ($result)
 	print_liste_field_titre("Photo", $_SERVER["PHP_SELF"], "", "", $param, '', $sortfield, $sortorder, 'public_');
 	print "</tr>\n";
 
-	while ($i < $num && $i < $conf->liste_limit)
-	{
+	while ($i < $num && $i < $conf->liste_limit) {
 		$objp = $db->fetch_object($result);
 
 		print '<tr class="oddeven">';
@@ -148,8 +169,7 @@ if ($result)
 		print '<td>'.$objp->email.'</td>'."\n";
 		print '<td>'.$objp->zip.'</td>'."\n";
 		print '<td>'.$objp->town.'</td>'."\n";
-		if (isset($objp->photo) && $objp->photo != '')
-		{
+		if (isset($objp->photo) && $objp->photo != '') {
 			print '<td>';
 			print $form->showphoto('memberphoto', $objp, 64);
 			print '</td>'."\n";

+ 21 - 9
htdocs/public/notice.php

@@ -24,11 +24,21 @@
  *                /public/notice.php?transphrase=url_encoded_sentence_to_show
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOSESSION'))		define('NOSESSION', '1');
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOSESSION')) {
+	define('NOSESSION', '1');
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 require '../main.inc.php';
 
@@ -37,13 +47,15 @@ require '../main.inc.php';
  * View
  */
 
-if (!GETPOST('transkey', 'alphanohtml') && !GETPOST('transphrase', 'alphanohtml'))
-{
+if (!GETPOST('transkey', 'alphanohtml') && !GETPOST('transphrase', 'alphanohtml')) {
 	print 'Sorry, it seems your internet connexion is off.<br>';
 	print 'You need to be connected to network to use this software.<br>';
 } else {
 	$langs->loadLangs(array("error", "other"));
 
-	if (GETPOST('transphrase', 'alphanohtml')) print dol_escape_htmltag(GETPOST('transphrase', 'alphanohtml'));
-	elseif (GETPOST('transkey', 'alphanohtml')) print dol_escape_htmltag($langs->trans(GETPOST('transkey', 'alphanohtml')));
+	if (GETPOST('transphrase', 'alphanohtml')) {
+		print dol_escape_htmltag(GETPOST('transphrase', 'alphanohtml'));
+	} elseif (GETPOST('transkey', 'alphanohtml')) {
+		print dol_escape_htmltag($langs->trans(GETPOST('transkey', 'alphanohtml')));
+	}
 }

+ 52 - 43
htdocs/public/onlinesign/newonlinesign.php

@@ -23,16 +23,26 @@
  *		\brief      File to offer a way to make an online signature for a particular Dolibarr entity
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
@@ -60,12 +70,12 @@ $suffix = GETPOST("suffix", 'aZ09');
 $source = GETPOST("source", 'alpha');
 $ref = $REF = GETPOST("ref", 'alpha');
 
-if (empty($source)) $source = 'proposal';
+if (empty($source)) {
+	$source = 'proposal';
+}
 
-if (!$action)
-{
-	if ($source && !$ref)
-	{
+if (!$action) {
+	if ($source && !$ref) {
 		print $langs->trans('ErrorBadParameters')." - ref missing";
 		exit;
 	}
@@ -81,23 +91,19 @@ $urlwithroot = DOL_MAIN_URL_ROOT; // This is to use same domain name than curren
 // Complete urls for post treatment
 $SECUREKEY = GETPOST("securekey"); // Secure key
 
-if (!empty($source))
-{
+if (!empty($source)) {
 	$urlok .= 'source='.urlencode($source).'&';
 	$urlko .= 'source='.urlencode($source).'&';
 }
-if (!empty($REF))
-{
+if (!empty($REF)) {
 	$urlok .= 'ref='.urlencode($REF).'&';
 	$urlko .= 'ref='.urlencode($REF).'&';
 }
-if (!empty($SECUREKEY))
-{
+if (!empty($SECUREKEY)) {
 	$urlok .= 'securekey='.urlencode($SECUREKEY).'&';
 	$urlko .= 'securekey='.urlencode($SECUREKEY).'&';
 }
-if (!empty($entity))
-{
+if (!empty($entity)) {
 	$urlok .= 'entity='.urlencode($entity).'&';
 	$urlko .= 'entity='.urlencode($entity).'&';
 }
@@ -112,8 +118,7 @@ $creditor = $mysoc->name;
  */
 
 
-if ($action == 'dosign')
-{
+if ($action == 'dosign') {
 	// TODO
 }
 
@@ -123,7 +128,9 @@ if ($action == 'dosign')
  */
 
 $head = '';
-if (!empty($conf->global->MAIN_SIGN_CSS_URL)) $head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MAIN_SIGN_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+if (!empty($conf->global->MAIN_SIGN_CSS_URL)) {
+	$head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MAIN_SIGN_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+}
 
 $conf->dol_hide_topmenu = 1;
 $conf->dol_hide_leftmenu = 1;
@@ -132,8 +139,7 @@ $replacemainarea = (empty($conf->dol_hide_leftmenu) ? '<div>' : '').'<div>';
 llxHeader($head, $langs->trans("OnlineSignature"), '', '', 0, 0, '', '', '', 'onlinepaymentbody', $replacemainarea, 1);
 
 // Check link validity for param 'source'
-if (!empty($source) && in_array($ref, array('member_ref', 'contractline_ref', 'invoice_ref', 'order_ref', '')))
-{
+if (!empty($source) && in_array($ref, array('member_ref', 'contractline_ref', 'invoice_ref', 'order_ref', ''))) {
 	$langs->load("errors");
 	dol_print_error_email('BADREFINONLINESIGNFORM', $langs->trans("ErrorBadLinkSourceSetButBadValueForRef", $source, $ref));
 	// End of page
@@ -161,24 +167,24 @@ print '<table id="dolpaymenttable" summary="Payment form" class="center">'."\n";
 $logosmall = $mysoc->logo_small;
 $logo = $mysoc->logo;
 $paramlogo = 'ONLINE_SIGN_LOGO_'.$suffix;
-if (!empty($conf->global->$paramlogo)) $logosmall = $conf->global->$paramlogo;
-elseif (!empty($conf->global->ONLINE_SIGN_LOGO)) $logosmall = $conf->global->ONLINE_SIGN_LOGO;
+if (!empty($conf->global->$paramlogo)) {
+	$logosmall = $conf->global->$paramlogo;
+} elseif (!empty($conf->global->ONLINE_SIGN_LOGO)) {
+	$logosmall = $conf->global->ONLINE_SIGN_LOGO;
+}
 //print '<!-- Show logo (logosmall='.$logosmall.' logo='.$logo.') -->'."\n";
 // Define urllogo
 $urllogo = '';
 $urllogofull = '';
-if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall))
-{
+if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/thumbs/'.$logosmall);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall);
-} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo))
-{
+} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/'.$logo);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo);
 }
 // Output html code for logo
-if ($urllogo)
-{
+if ($urllogo) {
 	print '<div class="backgreypublicpayment">';
 	print '<div class="logopublicpayment">';
 	print '<img id="dolpaymentlogo" src="'.$urllogo.'"';
@@ -192,16 +198,17 @@ if ($urllogo)
 
 // Output introduction text
 $text = '';
-if (!empty($conf->global->ONLINE_SIGN_NEWFORM_TEXT))
-{
+if (!empty($conf->global->ONLINE_SIGN_NEWFORM_TEXT)) {
 	$langs->load("members");
 	$reg = array();
-	if (preg_match('/^\((.*)\)$/', $conf->global->ONLINE_SIGN_NEWFORM_TEXT, $reg)) $text .= $langs->trans($reg[1])."<br>\n";
-	else $text .= $conf->global->ONLINE_SIGN_NEWFORM_TEXT."<br>\n";
+	if (preg_match('/^\((.*)\)$/', $conf->global->ONLINE_SIGN_NEWFORM_TEXT, $reg)) {
+		$text .= $langs->trans($reg[1])."<br>\n";
+	} else {
+		$text .= $conf->global->ONLINE_SIGN_NEWFORM_TEXT."<br>\n";
+	}
 	$text = '<tr><td align="center"><br>'.$text.'<br></td></tr>'."\n";
 }
-if (empty($text))
-{
+if (empty($text)) {
 	$text .= '<tr><td class="textpublicpayment"><br><strong>'.$langs->trans("WelcomeOnOnlineSignaturePage", $mysoc->name).'</strong></td></tr>'."\n";
 	$text .= '<tr><td class="textpublicpayment">'.$langs->trans("ThisScreenAllowsYouToSignDocFrom", $creditor).'<br><br></td></tr>'."\n";
 }
@@ -217,8 +224,7 @@ $error = 0;
 $var = false;
 
 // Payment on customer order
-if ($source == 'proposal')
-{
+if ($source == 'proposal') {
 	$found = true;
 	$langs->load("proposal");
 
@@ -226,8 +232,7 @@ if ($source == 'proposal')
 
 	$proposal = new Propal($db);
 	$result = $proposal->fetch('', $ref);
-	if ($result <= 0)
-	{
+	if ($result <= 0) {
 		$mesg = $proposal->error;
 		$error++;
 	} else {
@@ -258,9 +263,13 @@ if ($source == 'proposal')
 
 
 
-if (!$found && !$mesg) $mesg = $langs->transnoentitiesnoconv("ErrorBadParameters");
+if (!$found && !$mesg) {
+	$mesg = $langs->transnoentitiesnoconv("ErrorBadParameters");
+}
 
-if ($mesg) print '<tr><td align="center" colspan="2"><br><div class="warning">'.dol_escape_htmltag($mesg).'</div></td></tr>'."\n";
+if ($mesg) {
+	print '<tr><td align="center" colspan="2"><br><div class="warning">'.dol_escape_htmltag($mesg).'</div></td></tr>'."\n";
+}
 
 print '</table>'."\n";
 print "\n";

+ 221 - 178
htdocs/public/opensurvey/studs.php

@@ -22,10 +22,18 @@
  *	\brief      Page to list surveys
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php";
@@ -37,8 +45,7 @@ require_once DOL_DOCUMENT_ROOT."/opensurvey/fonctions.php";
 // Init vars
 $action = GETPOST('action', 'aZ09');
 $numsondage = '';
-if (GETPOST('sondage'))
-{
+if (GETPOST('sondage')) {
 	$numsondage = GETPOST('sondage', 'alpha');
 }
 
@@ -51,7 +58,9 @@ $nblines = $object->fetch_lines();
 $canbemodified = ((empty($object->date_fin) || $object->date_fin > dol_now()) && $object->status != Opensurveysondage::STATUS_CLOSED);
 
 // Security check
-if (empty($conf->opensurvey->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->opensurvey->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 /*
@@ -63,51 +72,49 @@ $nbcolonnes = substr_count($object->sujet, ',') + 1;
 $listofvoters = explode(',', $_SESSION["savevoter"]);
 
 // Add comment
-if (GETPOST('ajoutcomment', 'alpha'))
-{
-	if (!$canbemodified) accessforbidden('', 0, 0, 1);
+if (GETPOST('ajoutcomment', 'alpha')) {
+	if (!$canbemodified) {
+		accessforbidden('', 0, 0, 1);
+	}
 
 	$error = 0;
 
 	$comment = GETPOST("comment", 'restricthtml');
 	$comment_user = GETPOST('commentuser', 'nohtml');
 
-	if (!$comment)
-	{
+	if (!$comment) {
 		$error++;
 		setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Comment")), null, 'errors');
 	}
-	if (!$comment_user)
-	{
+	if (!$comment_user) {
 		$error++;
 		setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Name")), null, 'errors');
 	}
 
-	if (!in_array($comment_user, $listofvoters))
-	{
+	if (!in_array($comment_user, $listofvoters)) {
 		setEventMessages($langs->trans("UserMustBeSameThanUserUsedToVote"), null, 'errors');
 		$error++;
 	}
 
-	if (!$error)
-	{
+	if (!$error) {
 		$resql = $object->addComment($comment, $comment_user);
 
-		if (!$resql) dol_print_error($db);
+		if (!$resql) {
+			dol_print_error($db);
+		}
 	}
 }
 
 // Add vote
-if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x"))		// boutonp for chrome, boutonp_x for firefox
-{
-	if (!$canbemodified) accessforbidden('', 0, 0, 1);
+if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) {		// boutonp for chrome, boutonp_x for firefox
+	if (!$canbemodified) {
+		accessforbidden('', 0, 0, 1);
+	}
 
 	//Si le nom est bien entré
-	if (GETPOST('nom', 'nohtml'))
-	{
+	if (GETPOST('nom', 'nohtml')) {
 		$nouveauchoix = '';
-		for ($i = 0; $i < $nbcolonnes; $i++)
-		{
+		for ($i = 0; $i < $nbcolonnes; $i++) {
 			if (GETPOSTISSET("choix$i") && GETPOST("choix$i") == '1') {
 				$nouveauchoix .= "1";
 			} elseif (GETPOSTISSET("choix$i") && GETPOST("choix$i") == '2') {
@@ -124,11 +131,12 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x"))		// bout
 		$sql .= ' FROM '.MAIN_DB_PREFIX.'opensurvey_user_studs';
 		$sql .= " WHERE id_sondage='".$db->escape($numsondage)."' AND nom = '".$db->escape($nom)."' ORDER BY id_users";
 		$resql = $db->query($sql);
-		if (!$resql) dol_print_error($db);
+		if (!$resql) {
+			dol_print_error($db);
+		}
 
 		$num_rows = $db->num_rows($resql);
-		if ($num_rows > 0)
-		{
+		if ($num_rows > 0) {
 			setEventMessages($langs->trans("VoteNameAlreadyExists"), null, 'errors');
 			$error++;
 		} else {
@@ -136,14 +144,12 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x"))		// bout
 			$sql .= " VALUES ('".$db->escape($nom)."', '".$db->escape($numsondage)."','".$db->escape($nouveauchoix)."')";
 			$resql = $db->query($sql);
 
-			if ($resql)
-			{
+			if ($resql) {
 				// Add voter to session
 				$_SESSION["savevoter"] = $nom.','.(empty($_SESSION["savevoter"]) ? '' : $_SESSION["savevoter"]); // Save voter
 				$listofvoters = explode(',', $_SESSION["savevoter"]);
 
-				if ($object->mailsonde)
-				{
+				if ($object->mailsonde) {
 					if ($object->fk_user_creat) {
 						$userstatic = new User($db);
 						$userstatic->fetch($object->fk_user_creat);
@@ -166,7 +172,9 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x"))		// bout
 						$result = $cmailfile->sendfile();
 					}
 				}
-			} else dol_print_error($db);
+			} else {
+				dol_print_error($db);
+			}
 		}
 	} else {
 		setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Name")), null, 'errors');
@@ -178,28 +186,23 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x"))		// bout
 $testmodifier = false;
 $testligneamodifier = false;
 $ligneamodifier = -1;
-for ($i = 0; $i < $nblines; $i++)
-{
-	if (GETPOSTISSET('modifierligne'.$i))
-	{
+for ($i = 0; $i < $nblines; $i++) {
+	if (GETPOSTISSET('modifierligne'.$i)) {
 		$ligneamodifier = $i;
 		$testligneamodifier = true;
 	}
 
 	//test to see if a line is to be modified
-	if (GETPOSTISSET('validermodifier'.$i))
-	{
+	if (GETPOSTISSET('validermodifier'.$i)) {
 		$modifier = $i;
 		$testmodifier = true;
 	}
 }
 
-if ($testmodifier)
-{
+if ($testmodifier) {
 	//var_dump($_POST);exit;
 	$nouveauchoix = '';
-	for ($i = 0; $i < $nbcolonnes; $i++)
-	{
+	for ($i = 0; $i < $nbcolonnes; $i++) {
 		//var_dump($_POST["choix$i"]);
 		if (GETPOSTISSET("choix".$i) && GETPOST("choix".$i) == '1') {
 			$nouveauchoix .= "1";
@@ -210,7 +213,9 @@ if ($testmodifier)
 		}
 	}
 
-	if (!$canbemodified) accessforbidden('', 0, 0, 1);
+	if (!$canbemodified) {
+		accessforbidden('', 0, 0, 1);
+	}
 
 	$idtomodify = $_POST["idtomodify".$modifier];
 	$sql = 'UPDATE '.MAIN_DB_PREFIX."opensurvey_user_studs";
@@ -218,14 +223,17 @@ if ($testmodifier)
 	$sql .= " WHERE id_users = '".$db->escape($idtomodify)."'";
 
 	$resql = $db->query($sql);
-	if (!$resql) dol_print_error($db);
+	if (!$resql) {
+		dol_print_error($db);
+	}
 }
 
 // Delete comment
 $idcomment = GETPOST('deletecomment', 'int');
-if ($idcomment)
-{
-	if (!$canbemodified) accessforbidden('', 0, 0, 1);
+if ($idcomment) {
+	if (!$canbemodified) {
+		accessforbidden('', 0, 0, 1);
+	}
 
 	$resql = $object->deleteComment($idcomment);
 }
@@ -243,8 +251,7 @@ $arrayofcss = array('/opensurvey/css/style.css');
 
 llxHeaderSurvey($object->title, "", 0, 0, $arrayofjs, $arrayofcss, $numsondage);
 
-if (empty($object->ref))     // For survey, id is a hex string
-{
+if (empty($object->ref)) {     // For survey, id is a hex string
 	$langs->load("errors");
 	print $langs->trans("ErrorRecordNotFound");
 
@@ -257,8 +264,7 @@ if (empty($object->ref))     // For survey, id is a hex string
 // Define format of choices
 $toutsujet = explode(",", $object->sujet);
 $listofanswers = array();
-foreach ($toutsujet as $value)
-{
+foreach ($toutsujet as $value) {
 	$tmp = explode('@', $value);
 	$listofanswers[] = array('label'=>$tmp[0], 'format'=>($tmp[1] ? $tmp[1] : 'checkbox'));
 }
@@ -276,8 +282,7 @@ $titre = str_replace("\\", "", $object->title);
 print '<strong>'.dol_htmlentities($titre).'</strong><br><br>'."\n";
 
 // show description of survey
-if ($object->description)
-{
+if ($object->description) {
 	print dol_htmlentitiesbr($object->description);
 	print '<br>'."\n";
 }
@@ -300,8 +305,7 @@ print '<br><br>'."\n";
 print '<table class="resultats">'."\n";
 
 // Show choice titles
-if ($object->format == "D")
-{
+if ($object->format == "D") {
 	//display of survey topics
 	print '<tr>'."\n";
 	print '<td></td>'."\n";
@@ -309,8 +313,7 @@ if ($object->format == "D")
 	//display of years
 	$colspan = 1;
 	$nbofsujet = count($toutsujet);
-	for ($i = 0; $i < $nbofsujet; $i++)
-	{
+	for ($i = 0; $i < $nbofsujet; $i++) {
 		if (isset($toutsujet[$i + 1]) && date('Y', intval($toutsujet[$i])) == date('Y', intval($toutsujet[$i + 1]))) {
 			$colspan++;
 		} else {
@@ -386,8 +389,7 @@ if ($object->format == "D")
 	print '<tr>'."\n";
 	print '<td></td>'."\n";
 
-	for ($i = 0; isset($toutsujet[$i]); $i++)
-	{
+	for ($i = 0; isset($toutsujet[$i]); $i++) {
 		$tmp = explode('@', $toutsujet[$i]);
 		print '<td class="sujet">'.dol_escape_htmltag($tmp[0]).'</td>'."\n";
 	}
@@ -404,14 +406,12 @@ $sql = "SELECT id_users, nom as name, id_sondage, reponses";
 $sql .= " FROM ".MAIN_DB_PREFIX."opensurvey_user_studs";
 $sql .= " WHERE id_sondage = '".$db->escape($numsondage)."'";
 $resql = $db->query($sql);
-if (!$resql)
-{
+if (!$resql) {
 	dol_print_error($db);
 	exit;
 }
 $num = $db->num_rows($resql);
-while ($compteur < $num)
-{
+while ($compteur < $num) {
 	$obj = $db->fetch_object($resql);
 
 	$ensemblereponses = $obj->reponses;
@@ -430,121 +430,167 @@ while ($compteur < $num)
 	print '<td class="nom">'.dol_htmlentities($obj->name).'</td>'."\n";
 
 	// si la ligne n'est pas a changer, on affiche les données
-	if (!$testligneamodifier)
-	{
-		for ($i = 0; $i < $nbcolonnes; $i++)
-		{
+	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 '<td class="ok">OK</td>'."\n";
-				else print '<td class="non">KO</td>'."\n";
+			if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst'))) {
+				if (((string) $car) == "1") {
+					print '<td class="ok">OK</td>'."\n";
+				} else {
+					print '<td class="non">KO</td>'."\n";
+				}
 				// Total
-				if (!isset($sumfor[$i])) $sumfor[$i] = 0;
-				if (((string) $car) == "1") $sumfor[$i]++;
+				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 '<td class="ok">'.$langs->trans("Yes").'</td>'."\n";
-				elseif (((string) $car) == "0") print '<td class="non">'.$langs->trans("No").'</td>'."\n";
-				else print '<td class="vide">&nbsp;</td>'."\n";
+			if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') {
+				if (((string) $car) == "1") {
+					print '<td class="ok">'.$langs->trans("Yes").'</td>'."\n";
+				} elseif (((string) $car) == "0") {
+					print '<td class="non">'.$langs->trans("No").'</td>'."\n";
+				} else {
+					print '<td class="vide">&nbsp;</td>'."\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 (!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 '<td class="ok">'.$langs->trans("For").'</td>'."\n";
-				elseif (((string) $car) == "0") print '<td class="non">'.$langs->trans("Against").'</td>'."\n";
-				else print '<td class="vide">&nbsp;</td>'."\n";
+			if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') {
+				if (((string) $car) == "1") {
+					print '<td class="ok">'.$langs->trans("For").'</td>'."\n";
+				} elseif (((string) $car) == "0") {
+					print '<td class="non">'.$langs->trans("Against").'</td>'."\n";
+				} else {
+					print '<td class="vide">&nbsp;</td>'."\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 (!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++)
-			{
+		if ($compteur == $ligneamodifier) {
+			for ($i = 0; $i < $nbcolonnes; $i++) {
 				$car = substr($ensemblereponses, $i, 1);
 				print '<td class="vide">';
-				if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst')))
-				{
+				if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst'))) {
 					print '<input type="checkbox" name="choix'.$i.'" value="1" ';
-					if ($car == '1') print 'checked';
+					if ($car == '1') {
+						print 'checked';
+					}
 					print '>';
 				}
-				if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno')
-				{
+				if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') {
 					$arraychoice = array('2'=>'&nbsp;', '0'=>$langs->trans("No"), '1'=>$langs->trans("Yes"));
 					print $form->selectarray("choix".$i, $arraychoice, $car);
 				}
-				if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst')
-				{
+				if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') {
 					$arraychoice = array('2'=>'&nbsp;', '0'=>$langs->trans("Against"), '1'=>$langs->trans("For"));
 					print $form->selectarray("choix".$i, $arraychoice, $car);
 				}
 				print '</td>'."\n";
 			}
 		} else {
-			for ($i = 0; $i < $nbcolonnes; $i++)
-			{
+			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 '<td class="ok">OK</td>'."\n";
-					else print '<td class="non">KO</td>'."\n";
+				if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst'))) {
+					if (((string) $car) == "1") {
+						print '<td class="ok">OK</td>'."\n";
+					} else {
+						print '<td class="non">KO</td>'."\n";
+					}
 					// Total
-					if (!isset($sumfor[$i])) $sumfor[$i] = 0;
-					if (((string) $car) == "1") $sumfor[$i]++;
+					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 '<td class="ok">'.$langs->trans("For").'</td>'."\n";
-					elseif (((string) $car) == "0") print '<td class="non">'.$langs->trans("Against").'</td>'."\n";
-					else print '<td class="vide">&nbsp;</td>'."\n";
+				if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') {
+					if (((string) $car) == "1") {
+						print '<td class="ok">'.$langs->trans("For").'</td>'."\n";
+					} elseif (((string) $car) == "0") {
+						print '<td class="non">'.$langs->trans("Against").'</td>'."\n";
+					} else {
+						print '<td class="vide">&nbsp;</td>'."\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 (!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 '<td class="ok">'.$langs->trans("For").'</td>'."\n";
-					elseif (((string) $car) == "0") print '<td class="non">'.$langs->trans("Against").'</td>'."\n";
-					else print '<td class="vide">&nbsp;</td>'."\n";
+				if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') {
+					if (((string) $car) == "1") {
+						print '<td class="ok">'.$langs->trans("For").'</td>'."\n";
+					} elseif (((string) $car) == "0") {
+						print '<td class="non">'.$langs->trans("Against").'</td>'."\n";
+					} else {
+						print '<td class="vide">&nbsp;</td>'."\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 (!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)
-	{
+	if ($compteur != $ligneamodifier && $mod_ok) {
 		print '<td class="casevide"><input type="submit" class="button smallpaddingimp" name="modifierligne'.$compteur.'" value="'.dol_escape_htmltag($langs->trans("Edit")).'"></td>'."\n";
 	}
 
 	//demande de confirmation pour modification de ligne
-	for ($i = 0; $i < $nblines; $i++)
-	{
-		if (GETPOSTISSET("modifierligne".$i))
-		{
-			if ($compteur == $i)
-			{
+	for ($i = 0; $i < $nblines; $i++) {
+		if (GETPOSTISSET("modifierligne".$i)) {
+			if ($compteur == $i) {
 				print '<td class="casevide">';
 				print '<input type="hidden" name="idtomodify'.$compteur.'" value="'.$obj->id_users.'">';
 				print '<input type="submit" class="button button-save" name="validermodifier'.$compteur.'" value="'.dol_escape_htmltag($langs->trans("Save")).'">';
@@ -558,12 +604,10 @@ while ($compteur < $num)
 }
 
 // Add line to add new record
-if ($ligneamodifier < 0 && (!isset($_SESSION['nom'])))
-{
+if ($ligneamodifier < 0 && (!isset($_SESSION['nom']))) {
 	print '<tr>'."\n";
 	print '<td class="nom">'."\n";
-	if (isset($_SESSION['nom']))
-	{
+	if (isset($_SESSION['nom'])) {
 		print '<input type=hidden name="nom" value="'.$_SESSION['nom'].'">'.$_SESSION['nom']."\n";
 	} else {
 		print '<input type="text" name="nom" placeholder="'.dol_escape_htmltag($langs->trans("Name")).'" maxlength="64" size="24">'."\n";
@@ -571,24 +615,20 @@ if ($ligneamodifier < 0 && (!isset($_SESSION['nom'])))
 	print '</td>'."\n";
 
 	// affichage des cases de formulaire checkbox pour un nouveau choix
-	for ($i = 0; $i < $nbcolonnes; $i++)
-	{
+	for ($i = 0; $i < $nbcolonnes; $i++) {
 		print '<td class="vide">';
-		if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst')))
-		{
+		if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst'))) {
 			print '<input type="checkbox" name="choix'.$i.'" value="1"';
 			if (GETPOSTISSET('choix'.$i) && GETPOST('choix'.$i) == '1') {
 				print ' checked';
 			}
 			print '>';
 		}
-		if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno')
-		{
+		if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'yesno') {
 			$arraychoice = array('2'=>'&nbsp;', '0'=>$langs->trans("No"), '1'=>$langs->trans("Yes"));
 			print $form->selectarray("choix".$i, $arraychoice, GETPOST('choix'.$i));
 		}
-		if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst')
-		{
+		if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') {
 			$arraychoice = array('2'=>'&nbsp;', '0'=>$langs->trans("Against"), '1'=>$langs->trans("For"));
 			print $form->selectarray("choix".$i, $arraychoice, GETPOST('choix'.$i));
 		}
@@ -602,18 +642,15 @@ if ($ligneamodifier < 0 && (!isset($_SESSION['nom'])))
 
 // Select value of best choice (for checkbox columns only)
 $nbofcheckbox = 0;
-for ($i = 0; $i < $nbcolonnes; $i++)
-{
-	if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst')))
-	$nbofcheckbox++;
-	if (isset($sumfor[$i]))
-	{
-		if ($i == 0)
-		{
+for ($i = 0; $i < $nbcolonnes; $i++) {
+	if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst'))) {
+		$nbofcheckbox++;
+	}
+	if (isset($sumfor[$i])) {
+		if ($i == 0) {
 			$meilleurecolonne = $sumfor[$i];
 		}
-		if (!isset($meilleurecolonne) || $sumfor[$i] > $meilleurecolonne)
-		{
+		if (!isset($meilleurecolonne) || $sumfor[$i] > $meilleurecolonne) {
 			$meilleurecolonne = $sumfor[$i];
 		}
 	}
@@ -623,30 +660,36 @@ if ($object->allow_spy) {
 	// Show line total
 	print '<tr>'."\n";
 	print '<td class="center">'.$langs->trans("Total").'</td>'."\n";
-	for ($i = 0; $i < $nbcolonnes; $i++)
-	{
+	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;
+		if (empty($showsumfor)) {
+			$showsumfor = 0;
+		}
+		if (empty($showsumagainst)) {
+			$showsumagainst = 0;
+		}
 
 		print '<td>';
-		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.'<br>'.$langs->trans("No").': '.$showsumagainst;
-		if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') print $langs->trans("For").': '.$showsumfor.'<br>'.$langs->trans("Against").': '.$showsumagainst;
+		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.'<br>'.$langs->trans("No").': '.$showsumagainst;
+		}
+		if (!empty($listofanswers[$i]['format']) && $listofanswers[$i]['format'] == 'foragainst') {
+			print $langs->trans("For").': '.$showsumfor.'<br>'.$langs->trans("Against").': '.$showsumagainst;
+		}
 		print '</td>'."\n";
 	}
 	print '</tr>';
 	// Show picto winner
-	if ($nbofcheckbox >= 2)
-	{
+	if ($nbofcheckbox >= 2) {
 		print '<tr>'."\n";
 		print '<td class="somme"></td>'."\n";
-		for ($i = 0; $i < $nbcolonnes; $i++)
-		{
+		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)
-			{
+			if (empty($listofanswers[$i]['format']) || !in_array($listofanswers[$i]['format'], array('yesno', 'foragainst')) && isset($sumfor[$i]) && isset($meilleurecolonne) && $sumfor[$i] == $meilleurecolonne) {
 				print '<td class="somme"><img src="'.dol_buildpath('/opensurvey/img/medaille.png', 1).'"></td>'."\n";
 			} else {
 				print '<td class="somme"></td>'."\n";
@@ -691,8 +734,7 @@ if ($object->allow_spy) {
 
 
 	// Show best choice
-	if ($nbofcheckbox >= 2)
-	{
+	if ($nbofcheckbox >= 2) {
 		$vote_str = $langs->trans('votes');
 		print '<p class="affichageresultats">'."\n";
 
@@ -712,8 +754,7 @@ print '<br>';
 // Comment list
 $comments = $object->getComments();
 
-if ($comments)
-{
+if ($comments) {
 	print '<br><u><span class="bold opacitymedium">'.$langs->trans("CommentsOfVoters").':</span></u><br>'."\n";
 
 	foreach ($comments as $obj) {
@@ -721,7 +762,9 @@ if ($comments)
 		//$mod_ok = (in_array($obj->name, $listofvoters));
 
 		print '<div class="comment"><span class="usercomment">';
-		if (in_array($obj->usercomment, $listofvoters)) print '<a href="'.$_SERVER["PHP_SELF"].'?deletecomment='.$obj->id_comment.'&sondage='.$numsondage.'"> '.img_picto('', 'delete.png', '', false, 0, 0, '', 'nomarginleft').'</a> ';
+		if (in_array($obj->usercomment, $listofvoters)) {
+			print '<a href="'.$_SERVER["PHP_SELF"].'?deletecomment='.$obj->id_comment.'&sondage='.$numsondage.'"> '.img_picto('', 'delete.png', '', false, 0, 0, '', 'nomarginleft').'</a> ';
+		}
 		//else print img_picto('', 'ellipsis-h', '', false, 0, 0, '', 'nomarginleft').' ';
 		print dol_htmlentities($obj->usercomment).':</span> <span class="comment">'.dol_nl2br(dol_htmlentities($obj->comment))."</span></div>";
 	}

File diff suppressed because it is too large
+ 246 - 239
htdocs/public/payment/newpayment.php


+ 78 - 53
htdocs/public/payment/paymentko.php

@@ -25,45 +25,57 @@
  *                  This token can be used to get more informations.
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and this test must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['e']) ? (int) $_GET['e'] : (!empty($_POST['e']) ? (int) $_POST['e'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
 
-if (!empty($conf->paypal->enabled))
-{
+if (!empty($conf->paypal->enabled)) {
 	require_once DOL_DOCUMENT_ROOT.'/paypal/lib/paypal.lib.php';
 	require_once DOL_DOCUMENT_ROOT.'/paypal/lib/paypalfunctions.lib.php';
 }
 
 $langs->loadLangs(array("main", "other", "dict", "bills", "companies", "paybox", "paypal", "stripe"));
 
-if (!empty($conf->paypal->enabled))
-{
+if (!empty($conf->paypal->enabled)) {
 	$PAYPALTOKEN = GETPOST('TOKEN');
-	if (empty($PAYPALTOKEN)) $PAYPALTOKEN = GETPOST('token');
+	if (empty($PAYPALTOKEN)) {
+		$PAYPALTOKEN = GETPOST('token');
+	}
 	$PAYPALPAYERID = GETPOST('PAYERID');
-	if (empty($PAYPALPAYERID)) $PAYPALPAYERID = GETPOST('PayerID');
+	if (empty($PAYPALPAYERID)) {
+		$PAYPALPAYERID = GETPOST('PayerID');
+	}
 }
-if (!empty($conf->paybox->enabled))
-{
+if (!empty($conf->paybox->enabled)) {
 }
-if (!empty($conf->stripe->enabled))
-{
+if (!empty($conf->stripe->enabled)) {
 }
 
 $FULLTAG = GETPOST('FULLTAG');
-if (empty($FULLTAG)) $FULLTAG = GETPOST('fulltag');
+if (empty($FULLTAG)) {
+	$FULLTAG = GETPOST('fulltag');
+}
 
 $suffix = GETPOST("suffix", 'aZ09');
 
@@ -71,12 +83,10 @@ $suffix = GETPOST("suffix", 'aZ09');
 // Detect $paymentmethod
 $paymentmethod = '';
 $reg = array();
-if (preg_match('/PM=([^\.]+)/', $FULLTAG, $reg))
-{
+if (preg_match('/PM=([^\.]+)/', $FULLTAG, $reg)) {
 	$paymentmethod = $reg[1];
 }
-if (empty($paymentmethod))
-{
+if (empty($paymentmethod)) {
 	dol_print_error(null, 'The back url does not contains a parameter fulltag that should help us to find the payment method used');
 	exit;
 } else {
@@ -85,13 +95,21 @@ if (empty($paymentmethod))
 
 
 $validpaymentmethod = array();
-if (!empty($conf->paypal->enabled)) $validpaymentmethod['paypal'] = 'paypal';
-if (!empty($conf->paybox->enabled)) $validpaymentmethod['paybox'] = 'paybox';
-if (!empty($conf->stripe->enabled)) $validpaymentmethod['stripe'] = 'stripe';
+if (!empty($conf->paypal->enabled)) {
+	$validpaymentmethod['paypal'] = 'paypal';
+}
+if (!empty($conf->paybox->enabled)) {
+	$validpaymentmethod['paybox'] = 'paybox';
+}
+if (!empty($conf->stripe->enabled)) {
+	$validpaymentmethod['stripe'] = 'stripe';
+}
 
 
 // Security check
-if (empty($validpaymentmethod)) accessforbidden('', 0, 0, 1);
+if (empty($validpaymentmethod)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 $object = new stdClass(); // For triggers
@@ -111,12 +129,13 @@ $object = new stdClass(); // For triggers
 dol_syslog("Callback url when an online payment is refused or canceled. query_string=".(empty($_SERVER["QUERY_STRING"]) ? '' : $_SERVER["QUERY_STRING"])." script_uri=".(empty($_SERVER["SCRIPT_URI"]) ? '' : $_SERVER["SCRIPT_URI"]), LOG_DEBUG, 0, '_payment');
 
 $tracepost = "";
-foreach ($_POST as $k => $v) $tracepost .= "{$k} - {$v}\n";
+foreach ($_POST as $k => $v) {
+	$tracepost .= "{$k} - {$v}\n";
+}
 dol_syslog("POST=".$tracepost, LOG_DEBUG, 0, '_payment');
 
 
-if (!empty($_SESSION['ipaddress']))      // To avoid to make action twice
-{
+if (!empty($_SESSION['ipaddress'])) {      // To avoid to make action twice
 	// Get on url call
 	$fulltag            = $FULLTAG;
 	$onlinetoken        = empty($PAYPALTOKEN) ? $_SESSION['onlinetoken'] : $PAYPALTOKEN;
@@ -132,20 +151,20 @@ if (!empty($_SESSION['ipaddress']))      // To avoid to make action twice
 	if (is_object($object) && method_exists($object, 'call_trigger')) {
 		// Call trigger
 		$result = $object->call_trigger('PAYMENTONLINE_PAYMENT_KO', $user);
-		if ($result < 0) $error++;
+		if ($result < 0) {
+			$error++;
+		}
 		// End call triggers
 	}
 
 	// Send an email
 	$sendemail = '';
-   	if (!empty($conf->global->ONLINE_PAYMENT_SENDEMAIL))
-   	{
+	if (!empty($conf->global->ONLINE_PAYMENT_SENDEMAIL)) {
 		$sendemail = $conf->global->ONLINE_PAYMENT_SENDEMAIL;
 	}
 
 	// Send warning of error to administrator
-	if ($sendemail)
-	{
+	if ($sendemail) {
 		$companylangs = new Translate('', $conf);
 		$companylangs->setDefaultLang($mysoc->default_lang);
 		$companylangs->loadLangs(array('main', 'members', 'bills', 'paypal', 'paybox'));
@@ -155,14 +174,18 @@ if (!empty($_SESSION['ipaddress']))      // To avoid to make action twice
 
 		// Define link to login card
 		$appli = constant('DOL_APPLICATION_TITLE');
-		if (!empty($conf->global->MAIN_APPLICATION_TITLE))
-		{
+		if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
 			$appli = $conf->global->MAIN_APPLICATION_TITLE;
-			if (preg_match('/\d\.\d/', $appli))
-			{
-				if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
-			} else $appli .= " ".DOL_VERSION;
-		} else $appli .= " ".DOL_VERSION;
+			if (preg_match('/\d\.\d/', $appli)) {
+				if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) {
+					$appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
+				}
+			} else {
+				$appli .= " ".DOL_VERSION;
+			}
+		} else {
+			$appli .= " ".DOL_VERSION;
+		}
 
 		$urlback = $_SERVER["REQUEST_URI"];
 		$topic = '['.$appli.'] '.$companylangs->transnoentitiesnoconv("NewOnlinePaymentFailed");
@@ -183,8 +206,7 @@ if (!empty($_SESSION['ipaddress']))      // To avoid to make action twice
 		$mailfile = new CMailFile($topic, $sendto, $from, $content, array(), array(), array(), '', '', 0, $ishtml);
 
 		$result = $mailfile->sendfile();
-		if ($result)
-		{
+		if ($result) {
 			dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0, '_payment');
 		} else {
 			dol_syslog("Failed to send EMail to ".$sendto, LOG_ERR, 0, '_payment');
@@ -195,7 +217,9 @@ if (!empty($_SESSION['ipaddress']))      // To avoid to make action twice
 }
 
 $head = '';
-if (!empty($conf->global->ONLINE_PAYMENT_CSS_URL)) $head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->ONLINE_PAYMENT_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+if (!empty($conf->global->ONLINE_PAYMENT_CSS_URL)) {
+	$head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->ONLINE_PAYMENT_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+}
 
 $conf->dol_hide_topmenu = 1;
 $conf->dol_hide_leftmenu = 1;
@@ -213,25 +237,25 @@ print '<div id="dolpaymentdiv" align="center">'."\n";
 $logosmall = $mysoc->logo_small;
 $logo = $mysoc->logo;
 $paramlogo = 'ONLINE_PAYMENT_LOGO_'.$suffix;
-if (!empty($conf->global->$paramlogo)) $logosmall = $conf->global->$paramlogo;
-elseif (!empty($conf->global->ONLINE_PAYMENT_LOGO)) $logosmall = $conf->global->ONLINE_PAYMENT_LOGO;
+if (!empty($conf->global->$paramlogo)) {
+	$logosmall = $conf->global->$paramlogo;
+} elseif (!empty($conf->global->ONLINE_PAYMENT_LOGO)) {
+	$logosmall = $conf->global->ONLINE_PAYMENT_LOGO;
+}
 //print '<!-- Show logo (logosmall='.$logosmall.' logo='.$logo.') -->'."\n";
 // Define urllogo
 $urllogo = '';
 $urllogofull = '';
-if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall))
-{
+if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/thumbs/'.$logosmall);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall);
-} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo))
-{
+} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/'.$logo);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo);
 }
 
 // Output html code for logo
-if ($urllogo)
-{
+if ($urllogo) {
 	print '<div class="backgreypublicpayment">';
 	print '<div class="logopublicpayment">';
 	print '<img id="dolpaymentlogo" src="'.$urllogo.'"';
@@ -250,14 +274,15 @@ print '<br><br>';
 print $langs->trans("YourPaymentHasNotBeenRecorded")."<br><br>";
 
 $key = 'ONLINE_PAYMENT_MESSAGE_KO';
-if (!empty($conf->global->$key)) print $conf->global->$key;
+if (!empty($conf->global->$key)) {
+	print $conf->global->$key;
+}
 
 $type = GETPOST('s', 'alpha');
 $ref = GETPOST('ref', 'alphanohtml');
 $tag = GETPOST('tag', 'alpha');
 require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
-if ($type || $tag)
-{
+if ($type || $tag) {
 	$urlsubscription = getOnlinePaymentUrl(0, ($type ? $type : 'free'), $ref, $FinalPaymentAmt, $tag);
 
 	print $langs->trans("ClickHereToTryAgain", $urlsubscription);

+ 279 - 204
htdocs/public/payment/paymentok.php

@@ -25,23 +25,32 @@
  *                  This token can be used to get more informations.
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['e']) ? (int) $_GET['e'] : (!empty($_POST['e']) ? (int) $_POST['e'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
 
-if (!empty($conf->paypal->enabled))
-{
+if (!empty($conf->paypal->enabled)) {
 	require_once DOL_DOCUMENT_ROOT.'/paypal/lib/paypal.lib.php';
 	require_once DOL_DOCUMENT_ROOT.'/paypal/lib/paypalfunctions.lib.php';
 }
@@ -49,29 +58,46 @@ if (!empty($conf->paypal->enabled))
 $langs->loadLangs(array("main", "other", "dict", "bills", "companies", "paybox", "paypal"));
 
 // Clean parameters
-if (!empty($conf->paypal->enabled))
-{
+if (!empty($conf->paypal->enabled)) {
 	$PAYPAL_API_USER = "";
-	if (!empty($conf->global->PAYPAL_API_USER)) $PAYPAL_API_USER = $conf->global->PAYPAL_API_USER;
+	if (!empty($conf->global->PAYPAL_API_USER)) {
+		$PAYPAL_API_USER = $conf->global->PAYPAL_API_USER;
+	}
 	$PAYPAL_API_PASSWORD = "";
-	if (!empty($conf->global->PAYPAL_API_PASSWORD)) $PAYPAL_API_PASSWORD = $conf->global->PAYPAL_API_PASSWORD;
+	if (!empty($conf->global->PAYPAL_API_PASSWORD)) {
+		$PAYPAL_API_PASSWORD = $conf->global->PAYPAL_API_PASSWORD;
+	}
 	$PAYPAL_API_SIGNATURE = "";
-	if (!empty($conf->global->PAYPAL_API_SIGNATURE)) $PAYPAL_API_SIGNATURE = $conf->global->PAYPAL_API_SIGNATURE;
+	if (!empty($conf->global->PAYPAL_API_SIGNATURE)) {
+		$PAYPAL_API_SIGNATURE = $conf->global->PAYPAL_API_SIGNATURE;
+	}
 	$PAYPAL_API_SANDBOX = "";
-	if (!empty($conf->global->PAYPAL_API_SANDBOX)) $PAYPAL_API_SANDBOX = $conf->global->PAYPAL_API_SANDBOX;
+	if (!empty($conf->global->PAYPAL_API_SANDBOX)) {
+		$PAYPAL_API_SANDBOX = $conf->global->PAYPAL_API_SANDBOX;
+	}
 	$PAYPAL_API_OK = "";
-	if ($urlok) $PAYPAL_API_OK = $urlok;
+	if ($urlok) {
+		$PAYPAL_API_OK = $urlok;
+	}
 	$PAYPAL_API_KO = "";
-	if ($urlko) $PAYPAL_API_KO = $urlko;
+	if ($urlko) {
+		$PAYPAL_API_KO = $urlko;
+	}
 
 	$PAYPALTOKEN = GETPOST('TOKEN');
-	if (empty($PAYPALTOKEN)) $PAYPALTOKEN = GETPOST('token');
+	if (empty($PAYPALTOKEN)) {
+		$PAYPALTOKEN = GETPOST('token');
+	}
 	$PAYPALPAYERID = GETPOST('PAYERID');
-	if (empty($PAYPALPAYERID)) $PAYPALPAYERID = GETPOST('PayerID');
+	if (empty($PAYPALPAYERID)) {
+		$PAYPALPAYERID = GETPOST('PayerID');
+	}
 }
 
 $FULLTAG = GETPOST('FULLTAG');
-if (empty($FULLTAG)) $FULLTAG = GETPOST('fulltag');
+if (empty($FULLTAG)) {
+	$FULLTAG = GETPOST('fulltag');
+}
 $source = GETPOST('s', 'alpha') ?GETPOST('s', 'alpha') : GETPOST('source', 'alpha');
 $ref = GETPOST('ref');
 
@@ -81,12 +107,10 @@ $suffix = GETPOST("suffix", 'aZ09');
 // Detect $paymentmethod
 $paymentmethod = '';
 $reg = array();
-if (preg_match('/PM=([^\.]+)/', $FULLTAG, $reg))
-{
+if (preg_match('/PM=([^\.]+)/', $FULLTAG, $reg)) {
 	$paymentmethod = $reg[1];
 }
-if (empty($paymentmethod))
-{
+if (empty($paymentmethod)) {
 	dol_print_error(null, 'The back url does not contains a parameter fulltag that should help us to find the payment method used');
 	exit;
 }
@@ -95,12 +119,20 @@ dol_syslog("***** paymentok.php is called paymentmethod=".$paymentmethod." FULLT
 
 
 $validpaymentmethod = array();
-if (!empty($conf->paypal->enabled)) $validpaymentmethod['paypal'] = 'paypal';
-if (!empty($conf->paybox->enabled)) $validpaymentmethod['paybox'] = 'paybox';
-if (!empty($conf->stripe->enabled)) $validpaymentmethod['stripe'] = 'stripe';
+if (!empty($conf->paypal->enabled)) {
+	$validpaymentmethod['paypal'] = 'paypal';
+}
+if (!empty($conf->paybox->enabled)) {
+	$validpaymentmethod['paybox'] = 'paybox';
+}
+if (!empty($conf->stripe->enabled)) {
+	$validpaymentmethod['stripe'] = 'stripe';
+}
 
 // Security check
-if (empty($validpaymentmethod)) accessforbidden('', 0, 0, 1);
+if (empty($validpaymentmethod)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 $ispaymentok = false;
@@ -130,11 +162,15 @@ $now = dol_now();
 dol_syslog("Callback url when a payment was done. query_string=".(dol_escape_htmltag($_SERVER["QUERY_STRING"]) ?dol_escape_htmltag($_SERVER["QUERY_STRING"]) : '')." script_uri=".(dol_escape_htmltag($_SERVER["SCRIPT_URI"]) ?dol_escape_htmltag($_SERVER["SCRIPT_URI"]) : ''), LOG_DEBUG, 0, '_payment');
 
 $tracepost = "";
-foreach ($_POST as $k => $v) $tracepost .= "{$k} - {$v}\n";
+foreach ($_POST as $k => $v) {
+	$tracepost .= "{$k} - {$v}\n";
+}
 dol_syslog("POST=".$tracepost, LOG_DEBUG, 0, '_payment');
 
 $head = '';
-if (!empty($conf->global->ONLINE_PAYMENT_CSS_URL)) $head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->ONLINE_PAYMENT_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+if (!empty($conf->global->ONLINE_PAYMENT_CSS_URL)) {
+	$head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->ONLINE_PAYMENT_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+}
 
 $conf->dol_hide_topmenu = 1;
 $conf->dol_hide_leftmenu = 1;
@@ -153,25 +189,25 @@ print '<div id="dolpaymentdiv" class="center">'."\n";
 $logosmall = $mysoc->logo_small;
 $logo = $mysoc->logo;
 $paramlogo = 'ONLINE_PAYMENT_LOGO_'.$suffix;
-if (!empty($conf->global->$paramlogo)) $logosmall = $conf->global->$paramlogo;
-elseif (!empty($conf->global->ONLINE_PAYMENT_LOGO)) $logosmall = $conf->global->ONLINE_PAYMENT_LOGO;
+if (!empty($conf->global->$paramlogo)) {
+	$logosmall = $conf->global->$paramlogo;
+} elseif (!empty($conf->global->ONLINE_PAYMENT_LOGO)) {
+	$logosmall = $conf->global->ONLINE_PAYMENT_LOGO;
+}
 //print '<!-- Show logo (logosmall='.$logosmall.' logo='.$logo.') -->'."\n";
 // Define urllogo
 $urllogo = '';
 $urllogofull = '';
-if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall))
-{
+if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/thumbs/'.$logosmall);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall);
-} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo))
-{
+} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/'.$logo);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo);
 }
 
 // Output html code for logo
-if ($urllogo)
-{
+if ($urllogo) {
 	print '<div class="backgreypublicpayment">';
 	print '<div class="logopublicpayment">';
 	print '<img id="dolpaymentlogo" src="'.$urllogo.'"';
@@ -187,12 +223,9 @@ if ($urllogo)
 print '<br><br><br>';
 
 
-if (!empty($conf->paypal->enabled))
-{
-	if ($paymentmethod == 'paypal')							// We call this page only if payment is ok on payment system
-	{
-		if ($PAYPALTOKEN)
-		{
+if (!empty($conf->paypal->enabled)) {
+	if ($paymentmethod == 'paypal') {							// We call this page only if payment is ok on payment system
+		if ($PAYPALTOKEN) {
 			// Get on url call
 			$onlinetoken        = $PAYPALTOKEN;
 			$fulltag            = $FULLTAG;
@@ -207,15 +240,13 @@ if (!empty($conf->paypal->enabled))
 			dol_syslog("Call paymentok with token=".$onlinetoken." paymentType=".$paymentType." currencyCodeType=".$currencyCodeType." payerID=".$payerID." ipaddress=".$ipaddress." FinalPaymentAmt=".$FinalPaymentAmt." fulltag=".$fulltag, LOG_DEBUG, 0, '_payment');
 
 			// Validate record
-			if (!empty($paymentType))
-			{
+			if (!empty($paymentType)) {
 				dol_syslog("We call GetExpressCheckoutDetails", LOG_DEBUG, 0, '_payment');
 				$resArray = getDetails($onlinetoken);
 				//var_dump($resarray);
 
 				$ack = strtoupper($resArray["ACK"]);
-				if ($ack == "SUCCESS" || $ack == "SUCCESSWITHWARNING")
-				{
+				if ($ack == "SUCCESS" || $ack == "SUCCESSWITHWARNING") {
 					// Nothing to do
 					dol_syslog("Call to GetExpressCheckoutDetails return ".$ack, LOG_DEBUG, 0, '_payment');
 				} else {
@@ -227,8 +258,7 @@ if (!empty($conf->paypal->enabled))
 				//var_dump($resarray);
 
 				$ack = strtoupper($resArray2["ACK"]);
-				if ($ack == "SUCCESS" || $ack == "SUCCESSWITHWARNING")
-				{
+				if ($ack == "SUCCESS" || $ack == "SUCCESSWITHWARNING") {
 					dol_syslog("Call to GetExpressCheckoutDetails return ".$ack, LOG_DEBUG, 0, '_payment');
 
 					$object->source		= $source;
@@ -263,22 +293,32 @@ if (!empty($conf->paypal->enabled))
 	}
 }
 
-if (!empty($conf->paybox->enabled))
-{
-	if ($paymentmethod == 'paybox') $ispaymentok = true; // We call this page only if payment is ok on payment system
+if (!empty($conf->paybox->enabled)) {
+	if ($paymentmethod == 'paybox') {
+		$ispaymentok = true; // We call this page only if payment is ok on payment system
+	}
 }
 
-if (!empty($conf->stripe->enabled))
-{
-	if ($paymentmethod == 'stripe') $ispaymentok = true; // We call this page only if payment is ok on payment system
+if (!empty($conf->stripe->enabled)) {
+	if ($paymentmethod == 'stripe') {
+		$ispaymentok = true; // We call this page only if payment is ok on payment system
+	}
 }
 
 
 // If data not provided from back url, search them into the session env
-if (empty($ipaddress))       $ipaddress       = $_SESSION['ipaddress'];
-if (empty($TRANSACTIONID))   $TRANSACTIONID   = $_SESSION['TRANSACTIONID'];
-if (empty($FinalPaymentAmt)) $FinalPaymentAmt = $_SESSION["FinalPaymentAmt"];
-if (empty($paymentType))     $paymentType     = $_SESSION["paymentType"];
+if (empty($ipaddress)) {
+	$ipaddress       = $_SESSION['ipaddress'];
+}
+if (empty($TRANSACTIONID)) {
+	$TRANSACTIONID   = $_SESSION['TRANSACTIONID'];
+}
+if (empty($FinalPaymentAmt)) {
+	$FinalPaymentAmt = $_SESSION["FinalPaymentAmt"];
+}
+if (empty($paymentType)) {
+	$paymentType     = $_SESSION["paymentType"];
+}
 
 $fulltag = $FULLTAG;
 $tmptag = dolExplodeIntoArray($fulltag, '.', '=');
@@ -290,18 +330,22 @@ dol_syslog("ispaymentok=".$ispaymentok." tmptag=".var_export($tmptag, true), LOG
 // Make complementary actions
 $ispostactionok = 0;
 $postactionmessages = array();
-if ($ispaymentok)
-{
+if ($ispaymentok) {
 	// Set permission for the anonymous user
-	if (empty($user->rights->societe))  $user->rights->societe = new stdClass();
-	if (empty($user->rights->facture))  $user->rights->facture = new stdClass();
-	if (empty($user->rights->adherent)) { $user->rights->adherent = new stdClass(); $user->rights->adherent->cotisation = new stdClass(); }
+	if (empty($user->rights->societe)) {
+		$user->rights->societe = new stdClass();
+	}
+	if (empty($user->rights->facture)) {
+		$user->rights->facture = new stdClass();
+	}
+	if (empty($user->rights->adherent)) {
+		$user->rights->adherent = new stdClass(); $user->rights->adherent->cotisation = new stdClass();
+	}
 	$user->rights->societe->creer = 1;
 	$user->rights->facture->creer = 1;
 	$user->rights->adherent->cotisation->creer = 1;
 
-	if (array_key_exists('MEM', $tmptag) && $tmptag['MEM'] > 0)
-	{
+	if (array_key_exists('MEM', $tmptag) && $tmptag['MEM'] > 0) {
 		// Validate member
 		// Create subscription
 		// Create complementary actions (this include creation of thirdparty)
@@ -322,16 +366,22 @@ if ($ispaymentok)
 
 		dol_syslog("We have to process member with id=".$tmptag['MEM']." result1=".$result1." result2=".$result2, LOG_DEBUG, 0, '_payment');
 
-		if ($result1 > 0 && $result2 > 0)
-		{
+		if ($result1 > 0 && $result2 > 0) {
 			$paymentTypeId = 0;
-			if ($paymentmethod == 'paybox') $paymentTypeId = $conf->global->PAYBOX_PAYMENT_MODE_FOR_PAYMENTS;
-			if ($paymentmethod == 'paypal') $paymentTypeId = $conf->global->PAYPAL_PAYMENT_MODE_FOR_PAYMENTS;
-			if ($paymentmethod == 'stripe') $paymentTypeId = $conf->global->STRIPE_PAYMENT_MODE_FOR_PAYMENTS;
-			if (empty($paymentTypeId))
-			{
+			if ($paymentmethod == 'paybox') {
+				$paymentTypeId = $conf->global->PAYBOX_PAYMENT_MODE_FOR_PAYMENTS;
+			}
+			if ($paymentmethod == 'paypal') {
+				$paymentTypeId = $conf->global->PAYPAL_PAYMENT_MODE_FOR_PAYMENTS;
+			}
+			if ($paymentmethod == 'stripe') {
+				$paymentTypeId = $conf->global->STRIPE_PAYMENT_MODE_FOR_PAYMENTS;
+			}
+			if (empty($paymentTypeId)) {
 				$paymentType = $_SESSION["paymentType"];
-				if (empty($paymentType)) $paymentType = 'CB';
+				if (empty($paymentType)) {
+					$paymentType = 'CB';
+				}
 				$paymentTypeId = dol_getIdFromCode($db, $paymentType, 'c_paiement', 'code', 'id', 1);
 			}
 
@@ -340,11 +390,9 @@ if ($ispaymentok)
 			dol_syslog("FinalPaymentAmt=".$FinalPaymentAmt." paymentTypeId=".$paymentTypeId, LOG_DEBUG, 0, '_payment');
 
 			// Do action only if $FinalPaymentAmt is set (session variable is cleaned after this page to avoid duplicate actions when page is POST a second time)
-			if (!empty($FinalPaymentAmt) && $paymentTypeId > 0)
-			{
+			if (!empty($FinalPaymentAmt) && $paymentTypeId > 0) {
 				$result = $object->validate($user);
-				if ($result < 0 || empty($object->datevalid))
-				{
+				if ($result < 0 || empty($object->datevalid)) {
 					$error++;
 					$errmsg = $object->error;
 					$postactionmessages[] = $errmsg;
@@ -355,13 +403,14 @@ if ($ispaymentok)
 
 				// Subscription informations
 				$datesubscription = $object->datevalid;
-				if ($object->datefin > 0)
-				{
+				if ($object->datefin > 0) {
 					$datesubscription = dol_time_plus_duree($object->datefin, 1, 'd');
 				}
 
 				$datesubend = null;
-				if ($datesubscription && $defaultdelay && $defaultdelayunit) $datesubend = dol_time_plus_duree(dol_time_plus_duree($datesubscription, $defaultdelay, $defaultdelayunit), -1, 'd');
+				if ($datesubscription && $defaultdelay && $defaultdelayunit) {
+					$datesubend = dol_time_plus_duree(dol_time_plus_duree($datesubscription, $defaultdelay, $defaultdelayunit), -1, 'd');
+				}
 
 				$paymentdate = $now;
 				$amount = $FinalPaymentAmt;
@@ -369,11 +418,16 @@ if ($ispaymentok)
 
 				// Payment informations
 				$accountid = 0;
-				if ($paymentmethod == 'paybox') $accountid = $conf->global->PAYBOX_BANK_ACCOUNT_FOR_PAYMENTS;
-				if ($paymentmethod == 'paypal') $accountid = $conf->global->PAYPAL_BANK_ACCOUNT_FOR_PAYMENTS;
-				if ($paymentmethod == 'stripe') $accountid = $conf->global->STRIPE_BANK_ACCOUNT_FOR_PAYMENTS;
-				if ($accountid < 0)
-				{
+				if ($paymentmethod == 'paybox') {
+					$accountid = $conf->global->PAYBOX_BANK_ACCOUNT_FOR_PAYMENTS;
+				}
+				if ($paymentmethod == 'paypal') {
+					$accountid = $conf->global->PAYPAL_BANK_ACCOUNT_FOR_PAYMENTS;
+				}
+				if ($paymentmethod == 'stripe') {
+					$accountid = $conf->global->STRIPE_BANK_ACCOUNT_FOR_PAYMENTS;
+				}
+				if ($accountid < 0) {
 					$error++;
 					$errmsg = 'Setup of bank account to use for payment is not correctly done for payment method '.$paymentmethod;
 					$postactionmessages[] = $errmsg;
@@ -387,23 +441,27 @@ if ($ispaymentok)
 				$emetteur_banque = '';
 				// Define default choice for complementary actions
 				$option = '';
-				if (!empty($conf->global->ADHERENT_BANK_USE) && $conf->global->ADHERENT_BANK_USE == 'bankviainvoice' && !empty($conf->banque->enabled) && !empty($conf->societe->enabled) && !empty($conf->facture->enabled)) $option = 'bankviainvoice';
-				elseif (!empty($conf->global->ADHERENT_BANK_USE) && $conf->global->ADHERENT_BANK_USE == 'bankdirect' && !empty($conf->banque->enabled)) $option = 'bankdirect';
-				elseif (!empty($conf->global->ADHERENT_BANK_USE) && $conf->global->ADHERENT_BANK_USE == 'invoiceonly' && !empty($conf->banque->enabled) && !empty($conf->societe->enabled) && !empty($conf->facture->enabled)) $option = 'invoiceonly';
-				if (empty($option)) $option = 'none';
+				if (!empty($conf->global->ADHERENT_BANK_USE) && $conf->global->ADHERENT_BANK_USE == 'bankviainvoice' && !empty($conf->banque->enabled) && !empty($conf->societe->enabled) && !empty($conf->facture->enabled)) {
+					$option = 'bankviainvoice';
+				} elseif (!empty($conf->global->ADHERENT_BANK_USE) && $conf->global->ADHERENT_BANK_USE == 'bankdirect' && !empty($conf->banque->enabled)) {
+					$option = 'bankdirect';
+				} elseif (!empty($conf->global->ADHERENT_BANK_USE) && $conf->global->ADHERENT_BANK_USE == 'invoiceonly' && !empty($conf->banque->enabled) && !empty($conf->societe->enabled) && !empty($conf->facture->enabled)) {
+					$option = 'invoiceonly';
+				}
+				if (empty($option)) {
+					$option = 'none';
+				}
 				$sendalsoemail = 1;
 
 				// Record the subscription then complementary actions
 				$db->begin();
 
 				// Create subscription
-				if (!$error)
-				{
+				if (!$error) {
 					dol_syslog("Call ->subscription to create subscription", LOG_DEBUG, 0, '_payment');
 
 					$crowid = $object->subscription($datesubscription, $amount, $accountid, $operation, $label, $num_chq, $emetteur_nom, $emetteur_banque, $datesubend);
-					if ($crowid <= 0)
-					{
+					if ($crowid <= 0) {
 						$error++;
 						$errmsg = $object->error;
 						$postactionmessages[] = $errmsg;
@@ -414,15 +472,13 @@ if ($ispaymentok)
 					}
 				}
 
-				if (!$error)
-				{
+				if (!$error) {
 					dol_syslog("Call ->subscriptionComplementaryActions option=".$option, LOG_DEBUG, 0, '_payment');
 
 					$autocreatethirdparty = 1; // will create thirdparty if member not yet linked to a thirdparty
 
 					$result = $object->subscriptionComplementaryActions($crowid, $option, $accountid, $datesubscription, $paymentdate, $operation, $label, $amount, $num_chq, $emetteur_nom, $emetteur_banque, $autocreatethirdparty);
-					if ($result < 0)
-					{
+					if ($result < 0) {
 						dol_syslog("Error ".$object->error." ".join(',', $object->errors), LOG_DEBUG, 0, '_payment');
 
 						$error++;
@@ -430,18 +486,15 @@ if ($ispaymentok)
 						$postactionmessages = array_merge($postactionmessages, $object->errors);
 						$ispostactionok = -1;
 					} else {
-						if ($option == 'bankviainvoice')
-						{
+						if ($option == 'bankviainvoice') {
 							$postactionmessages[] = 'Invoice, payment and bank record created';
 							dol_syslog("Invoice, payment and bank record created", LOG_DEBUG, 0, '_payment');
 						}
-						if ($option == 'bankdirect')
-						{
+						if ($option == 'bankdirect') {
 							$postactionmessages[] = 'Bank record created';
 							dol_syslog("Bank record created", LOG_DEBUG, 0, '_payment');
 						}
-						if ($option == 'invoiceonly')
-						{
+						if ($option == 'invoiceonly') {
 							$postactionmessages[] = 'Invoice recorded';
 							dol_syslog("Invoice recorded", LOG_DEBUG, 0, '_payment');
 						}
@@ -451,18 +504,15 @@ if ($ispaymentok)
 					}
 				}
 
-				if (!$error)
-				{
-					if ($paymentmethod == 'stripe' && $autocreatethirdparty && $option == 'bankviainvoice')
-					{
+				if (!$error) {
+					if ($paymentmethod == 'stripe' && $autocreatethirdparty && $option == 'bankviainvoice') {
 						$thirdparty_id = $object->fk_soc;
 
 						dol_syslog("Search existing Stripe customer profile for thirdparty_id=".$thirdparty_id, LOG_DEBUG, 0, '_payment');
 
 						$service = 'StripeTest';
 						$servicestatus = 0;
-						if (!empty($conf->global->STRIPE_LIVE) && !GETPOST('forcesandbox', 'alpha'))
-						{
+						if (!empty($conf->global->STRIPE_LIVE) && !GETPOST('forcesandbox', 'alpha')) {
 							$service = 'StripeLive';
 							$servicestatus = 1;
 						}
@@ -477,8 +527,7 @@ if ($ispaymentok)
 
 						$customer = $stripe->customerStripe($thirdparty, $stripeacc, $servicestatus, 0);
 
-						if (!$customer && $TRANSACTIONID)	// Not linked to a stripe customer, we make the link
-						{
+						if (!$customer && $TRANSACTIONID) {	// Not linked to a stripe customer, we make the link
 							dol_syslog("No stripe profile found, so we add it for TRANSACTIONID = ".$TRANSACTIONID, LOG_DEBUG, 0, '_payment');
 
 							try {
@@ -541,13 +590,11 @@ if ($ispaymentok)
 				}
 
 				// Send email to member
-				if (!$error)
-				{
+				if (!$error) {
 					dol_syslog("Send email to customer to ".$object->email." if we have to (sendalsoemail = ".$sendalsoemail.")", LOG_DEBUG, 0, '_payment');
 
 					// Send confirmation Email
-					if ($object->email && $sendalsoemail)
-					{
+					if ($object->email && $sendalsoemail) {
 						$subject = '';
 						$msg = '';
 
@@ -563,10 +610,11 @@ if ($ispaymentok)
 						$arraydefaultmessage = null;
 						$labeltouse = $conf->global->ADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION;
 
-						if (!empty($labeltouse)) $arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse);
+						if (!empty($labeltouse)) {
+							$arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse);
+						}
 
-						if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0)
-						{
+						if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) {
 							$subject = $arraydefaultmessage->topic;
 							$msg     = $arraydefaultmessage->content;
 						}
@@ -581,8 +629,7 @@ if ($ispaymentok)
 						$listofpaths = array();
 						$listofnames = array();
 						$listofmimes = array();
-						if (is_object($object->invoice))
-						{
+						if (is_object($object->invoice)) {
 							$invoicediroutput = $conf->facture->dir_output;
 							$fileparams = dol_most_recent_file($invoicediroutput.'/'.$object->invoice->ref, preg_quote($object->invoice->ref, '/').'[^\-]+');
 							$file = $fileparams['fullname'];
@@ -596,14 +643,16 @@ if ($ispaymentok)
 
 						$result = $object->send_an_email($texttosend, $subjecttosend, $listofpaths, $listofmimes, $listofnames, "", "", 0, -1, "", $moreinheader);
 
-						if ($result < 0)
-						{
+						if ($result < 0) {
 							$errmsg = $object->error;
 							$postactionmessages[] = $errmsg;
 							$ispostactionok = -1;
 						} else {
-							if ($file) $postactionmessages[] = 'Email sent to member (with invoice document attached)';
-							else $postactionmessages[] = 'Email sent to member (without any attached document)';
+							if ($file) {
+								$postactionmessages[] = 'Email sent to member (with invoice document attached)';
+							} else {
+								$postactionmessages[] = 'Email sent to member (without any attached document)';
+							}
 
 							// TODO Add actioncomm event
 						}
@@ -617,40 +666,43 @@ if ($ispaymentok)
 			$postactionmessages[] = 'Member '.$tmptag['MEM'].' for subscription paid was not found';
 			$ispostactionok = -1;
 		}
-	} elseif (array_key_exists('INV', $tmptag) && $tmptag['INV'] > 0)
-	{
+	} elseif (array_key_exists('INV', $tmptag) && $tmptag['INV'] > 0) {
 		// Record payment
 		include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
 		$object = new Facture($db);
 		$result = $object->fetch($tmptag['INV']);
-		if ($result)
-		{
+		if ($result) {
 			$FinalPaymentAmt = $_SESSION["FinalPaymentAmt"];
 
 			$paymentTypeId = 0;
-			if ($paymentmethod == 'paybox') $paymentTypeId = $conf->global->PAYBOX_PAYMENT_MODE_FOR_PAYMENTS;
-			if ($paymentmethod == 'paypal') $paymentTypeId = $conf->global->PAYPAL_PAYMENT_MODE_FOR_PAYMENTS;
-			if ($paymentmethod == 'stripe') $paymentTypeId = $conf->global->STRIPE_PAYMENT_MODE_FOR_PAYMENTS;
-			if (empty($paymentTypeId))
-			{
+			if ($paymentmethod == 'paybox') {
+				$paymentTypeId = $conf->global->PAYBOX_PAYMENT_MODE_FOR_PAYMENTS;
+			}
+			if ($paymentmethod == 'paypal') {
+				$paymentTypeId = $conf->global->PAYPAL_PAYMENT_MODE_FOR_PAYMENTS;
+			}
+			if ($paymentmethod == 'stripe') {
+				$paymentTypeId = $conf->global->STRIPE_PAYMENT_MODE_FOR_PAYMENTS;
+			}
+			if (empty($paymentTypeId)) {
 				$paymentType = $_SESSION["paymentType"];
-				if (empty($paymentType)) $paymentType = 'CB';
+				if (empty($paymentType)) {
+					$paymentType = 'CB';
+				}
 				$paymentTypeId = dol_getIdFromCode($db, $paymentType, 'c_paiement', 'code', 'id', 1);
 			}
 
 			$currencyCodeType = $_SESSION['currencyCodeType'];
 
 			// Do action only if $FinalPaymentAmt is set (session variable is cleaned after this page to avoid duplicate actions when page is POST a second time)
-			if (!empty($FinalPaymentAmt) && $paymentTypeId > 0)
-			{
+			if (!empty($FinalPaymentAmt) && $paymentTypeId > 0) {
 				$db->begin();
 
 				// Creation of payment line
 				include_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php';
 				$paiement = new Paiement($db);
 				$paiement->datepaye = $now;
-				if ($currencyCodeType == $conf->currency)
-				{
+				if ($currencyCodeType == $conf->currency) {
 					$paiement->amounts = array($object->id => $FinalPaymentAmt); // Array with all payments dispatching with invoice id
 				} else {
 					$paiement->multicurrency_amounts = array($object->id => $FinalPaymentAmt); // Array with all payments dispatching
@@ -665,11 +717,9 @@ if ($ispaymentok)
 				$paiement->ext_payment_id = $TRANSACTIONID;
 				$paiement->ext_payment_site = $service;
 
-				if (!$error)
-				{
+				if (!$error) {
 					$paiement_id = $paiement->create($user, 1); // This include closing invoices and regenerating documents
-					if ($paiement_id < 0)
-					{
+					if ($paiement_id < 0) {
 						$postactionmessages[] = $paiement->error.' '.join("<br>\n", $paiement->errors);
 						$ispostactionok = -1;
 						$error++;
@@ -679,20 +729,23 @@ if ($ispaymentok)
 					}
 				}
 
-				if (!$error && !empty($conf->banque->enabled))
-				{
+				if (!$error && !empty($conf->banque->enabled)) {
 					$bankaccountid = 0;
-					if ($paymentmethod == 'paybox') $bankaccountid = $conf->global->PAYBOX_BANK_ACCOUNT_FOR_PAYMENTS;
-					elseif ($paymentmethod == 'paypal') $bankaccountid = $conf->global->PAYPAL_BANK_ACCOUNT_FOR_PAYMENTS;
-					elseif ($paymentmethod == 'stripe') $bankaccountid = $conf->global->STRIPE_BANK_ACCOUNT_FOR_PAYMENTS;
+					if ($paymentmethod == 'paybox') {
+						$bankaccountid = $conf->global->PAYBOX_BANK_ACCOUNT_FOR_PAYMENTS;
+					} elseif ($paymentmethod == 'paypal') {
+						$bankaccountid = $conf->global->PAYPAL_BANK_ACCOUNT_FOR_PAYMENTS;
+					} elseif ($paymentmethod == 'stripe') {
+						$bankaccountid = $conf->global->STRIPE_BANK_ACCOUNT_FOR_PAYMENTS;
+					}
 
-					if ($bankaccountid > 0)
-					{
+					if ($bankaccountid > 0) {
 						$label = '(CustomerInvoicePayment)';
-						if ($object->type == Facture::TYPE_CREDIT_NOTE) $label = '(CustomerInvoicePaymentBack)'; // Refund of a credit note
+						if ($object->type == Facture::TYPE_CREDIT_NOTE) {
+							$label = '(CustomerInvoicePaymentBack)'; // Refund of a credit note
+						}
 						$result = $paiement->addPaymentToBank($user, 'payment', $label, $bankaccountid, '', '');
-						if ($result < 0)
-						{
+						if ($result < 0) {
 							$postactionmessages[] = $paiement->error.' '.join("<br>\n", $paiement->errors);
 							$ispostactionok = -1;
 							$error++;
@@ -707,8 +760,7 @@ if ($ispaymentok)
 					}
 				}
 
-				if (!$error)
-				{
+				if (!$error) {
 					$db->commit();
 				} else {
 					$db->rollback();
@@ -726,8 +778,7 @@ if ($ispaymentok)
 	}
 }
 
-if ($ispaymentok)
-{
+if ($ispaymentok) {
 	// Get on url call
 	$onlinetoken        = empty($PAYPALTOKEN) ? $_SESSION['onlinetoken'] : $PAYPALTOKEN;
 	$payerID            = empty($PAYPALPAYERID) ? $_SESSION['payerID'] : $PAYPALPAYERID;
@@ -739,26 +790,33 @@ if ($ispaymentok)
 	if (is_object($object) && method_exists($object, 'call_trigger')) {
 		// Call trigger
 		$result = $object->call_trigger('PAYMENTONLINE_PAYMENT_OK', $user);
-		if ($result < 0) $error++;
+		if ($result < 0) {
+			$error++;
+		}
 		// End call triggers
 	}
 
 	print $langs->trans("YourPaymentHasBeenRecorded")."<br>\n";
-	if ($TRANSACTIONID) print $langs->trans("ThisIsTransactionId", $TRANSACTIONID)."<br><br>\n";
+	if ($TRANSACTIONID) {
+		print $langs->trans("ThisIsTransactionId", $TRANSACTIONID)."<br><br>\n";
+	}
 
 	$key = 'ONLINE_PAYMENT_MESSAGE_OK';
-	if (!empty($conf->global->$key)) print $conf->global->$key;
+	if (!empty($conf->global->$key)) {
+		print $conf->global->$key;
+	}
 
 	$sendemail = '';
-	if (!empty($conf->global->ONLINE_PAYMENT_SENDEMAIL)) $sendemail = $conf->global->ONLINE_PAYMENT_SENDEMAIL;
+	if (!empty($conf->global->ONLINE_PAYMENT_SENDEMAIL)) {
+		$sendemail = $conf->global->ONLINE_PAYMENT_SENDEMAIL;
+	}
 
 	$tmptag = dolExplodeIntoArray($fulltag, '.', '=');
 
 	dol_syslog("Send email to admins if we have to (sendemail = ".$sendemail.")", LOG_DEBUG, 0, '_payment');
 
 	// Send an email to admins
-	if ($sendemail)
-	{
+	if ($sendemail) {
 		$companylangs = new Translate('', $conf);
 		$companylangs->setDefaultLang($mysoc->default_lang);
 		$companylangs->loadLangs(array('main', 'members', 'bills', 'paypal', 'paybox'));
@@ -772,26 +830,28 @@ if ($ispaymentok)
 
 		// Define link to login card
 		$appli = constant('DOL_APPLICATION_TITLE');
-		if (!empty($conf->global->MAIN_APPLICATION_TITLE))
-		{
+		if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
 			$appli = $conf->global->MAIN_APPLICATION_TITLE;
-			if (preg_match('/\d\.\d/', $appli))
-			{
-				if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
-			} else $appli .= " ".DOL_VERSION;
-		} else $appli .= " ".DOL_VERSION;
+			if (preg_match('/\d\.\d/', $appli)) {
+				if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) {
+					$appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
+				}
+			} else {
+				$appli .= " ".DOL_VERSION;
+			}
+		} else {
+			$appli .= " ".DOL_VERSION;
+		}
 
 		$urlback = $_SERVER["REQUEST_URI"];
 		$topic = '['.$appli.'] '.$companylangs->transnoentitiesnoconv("NewOnlinePaymentReceived");
 		$content = "";
-		if (array_key_exists('MEM', $tmptag))
-		{
+		if (array_key_exists('MEM', $tmptag)) {
 			$url = $urlwithroot."/adherents/subscription.php?rowid=".$tmptag['MEM'];
 			$content .= '<strong>'.$companylangs->trans("PaymentSubscription")."</strong><br><br>\n";
 			$content .= $companylangs->trans("MemberId").': <strong>'.$tmptag['MEM']."</strong><br>\n";
 			$content .= $companylangs->trans("Link").': <a href="'.$url.'">'.$url.'</a>'."<br>\n";
-		} elseif (array_key_exists('INV', $tmptag))
-		{
+		} elseif (array_key_exists('INV', $tmptag)) {
 			$url = $urlwithroot."/compta/facture/card.php?id=".$tmptag['INV'];
 			$content .= '<strong>'.$companylangs->trans("Payment")."</strong><br><br>\n";
 			$content .= $companylangs->trans("InvoiceId").': <strong>'.$tmptag['INV']."</strong><br>\n";
@@ -801,24 +861,20 @@ if ($ispaymentok)
 			$content .= $companylangs->transnoentitiesnoconv("NewOnlinePaymentReceived")."<br>\n";
 		}
 		$content .= $companylangs->transnoentities("PostActionAfterPayment").' : ';
-		if ($ispostactionok > 0)
-		{
+		if ($ispostactionok > 0) {
 			//$topic.=' ('.$companylangs->transnoentitiesnoconv("Status").' '.$companylangs->transnoentitiesnoconv("OK").')';
 			$content .= '<font color="green">'.$companylangs->transnoentitiesnoconv("OK").'</font>';
-		} elseif ($ispostactionok == 0)
-		{
+		} elseif ($ispostactionok == 0) {
 			$content .= $companylangs->transnoentitiesnoconv("None");
 		} else {
 			$topic .= ($ispostactionok ? '' : ' ('.$companylangs->trans("WarningPostActionErrorAfterPayment").')');
 			$content .= '<font color="red">'.$companylangs->transnoentitiesnoconv("Error").'</font>';
 		}
 		$content .= '<br>'."\n";
-		foreach ($postactionmessages as $postactionmessage)
-		{
+		foreach ($postactionmessages as $postactionmessage) {
 			$content .= ' * '.$postactionmessage.'<br>'."\n";
 		}
-		if ($ispostactionok < 0)
-		{
+		if ($ispostactionok < 0) {
 			$content .= $langs->transnoentities("ARollbackWasPerformedOnPostActions");
 		}
 		$content .= '<br>'."\n";
@@ -831,10 +887,18 @@ if ($ispaymentok)
 		$content .= "<br>\n";
 		$content .= "tag=".$fulltag."<br>\ntoken=".$onlinetoken."<br>\npaymentType=".$paymentType."<br>\ncurrencycodeType=".$currencyCodeType."<br>\npayerId=".$payerID."<br>\nipaddress=".$ipaddress."<br>\nFinalPaymentAmt=".$FinalPaymentAmt."<br>\n";
 
-		if (!empty($ErrorCode))         $content .= "ErrorCode = ".$ErrorCode."<br>\n";
-		if (!empty($ErrorShortMsg))     $content .= "ErrorShortMsg = ".$ErrorShortMsg."<br>\n";
-		if (!empty($ErrorLongMsg))      $content .= "ErrorLongMsg = ".$ErrorLongMsg."<br>\n";
-		if (!empty($ErrorSeverityCode)) $content .= "ErrorSeverityCode = ".$ErrorSeverityCode."<br>\n";
+		if (!empty($ErrorCode)) {
+			$content .= "ErrorCode = ".$ErrorCode."<br>\n";
+		}
+		if (!empty($ErrorShortMsg)) {
+			$content .= "ErrorShortMsg = ".$ErrorShortMsg."<br>\n";
+		}
+		if (!empty($ErrorLongMsg)) {
+			$content .= "ErrorLongMsg = ".$ErrorLongMsg."<br>\n";
+		}
+		if (!empty($ErrorSeverityCode)) {
+			$content .= "ErrorSeverityCode = ".$ErrorSeverityCode."<br>\n";
+		}
 
 		$ishtml = dol_textishtml($content); // May contain urls
 
@@ -842,8 +906,7 @@ if ($ispaymentok)
 		$mailfile = new CMailFile($topic, $sendto, $from, $content, array(), array(), array(), '', '', 0, $ishtml);
 
 		$result = $mailfile->sendfile();
-		if ($result)
-		{
+		if ($result) {
 			dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0, '_payment');
 			//dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0);
 		} else {
@@ -863,7 +926,9 @@ if ($ispaymentok)
 	if (is_object($object) && method_exists($object, 'call_trigger')) {
 		// Call trigger
 		$result = $object->call_trigger('PAYMENTONLINE_PAYMENT_KO', $user);
-		if ($result < 0) $error++;
+		if ($result < 0) {
+			$error++;
+		}
 		// End call triggers
 	}
 
@@ -873,18 +938,25 @@ if ($ispaymentok)
 	print $langs->trans('ErrorCode').": ".$ErrorCode."<br>\n";
 	print $langs->trans('ErrorSeverityCode').": ".$ErrorSeverityCode."<br>\n";
 
-	if ($mysoc->email) print "\nPlease, send a screenshot of this page to ".$mysoc->email."<br>\n";
+	if ($mysoc->email) {
+		print "\nPlease, send a screenshot of this page to ".$mysoc->email."<br>\n";
+	}
 
 	$sendemail = '';
-	if (!empty($conf->global->PAYMENTONLINE_SENDEMAIL)) $sendemail = $conf->global->PAYMENTONLINE_SENDEMAIL;
+	if (!empty($conf->global->PAYMENTONLINE_SENDEMAIL)) {
+		$sendemail = $conf->global->PAYMENTONLINE_SENDEMAIL;
+	}
 	// TODO Remove local option to keep only the generic one ?
-	if ($paymentmethod == 'paypal' && !empty($conf->global->PAYPAL_PAYONLINE_SENDEMAIL)) $sendemail = $conf->global->PAYPAL_PAYONLINE_SENDEMAIL;
-	elseif ($paymentmethod == 'paybox' && !empty($conf->global->PAYBOX_PAYONLINE_SENDEMAIL)) $sendemail = $conf->global->PAYBOX_PAYONLINE_SENDEMAIL;
-	elseif ($paymentmethod == 'stripe' && !empty($conf->global->STRIPE_PAYONLINE_SENDEMAIL)) $sendemail = $conf->global->STRIPE_PAYONLINE_SENDEMAIL;
+	if ($paymentmethod == 'paypal' && !empty($conf->global->PAYPAL_PAYONLINE_SENDEMAIL)) {
+		$sendemail = $conf->global->PAYPAL_PAYONLINE_SENDEMAIL;
+	} elseif ($paymentmethod == 'paybox' && !empty($conf->global->PAYBOX_PAYONLINE_SENDEMAIL)) {
+		$sendemail = $conf->global->PAYBOX_PAYONLINE_SENDEMAIL;
+	} elseif ($paymentmethod == 'stripe' && !empty($conf->global->STRIPE_PAYONLINE_SENDEMAIL)) {
+		$sendemail = $conf->global->STRIPE_PAYONLINE_SENDEMAIL;
+	}
 
 	// Send warning of error to administrator
-	if ($sendemail)
-	{
+	if ($sendemail) {
 		$companylangs = new Translate('', $conf);
 		$companylangs->setDefaultLang($mysoc->default_lang);
 		$companylangs->loadLangs(array('main', 'members', 'bills', 'paypal', 'paybox'));
@@ -898,14 +970,18 @@ if ($ispaymentok)
 
 		// Define link to login card
 		$appli = constant('DOL_APPLICATION_TITLE');
-		if (!empty($conf->global->MAIN_APPLICATION_TITLE))
-		{
+		if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
 			$appli = $conf->global->MAIN_APPLICATION_TITLE;
-			if (preg_match('/\d\.\d/', $appli))
-			{
-				if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
-			} else $appli .= " ".DOL_VERSION;
-		} else $appli .= " ".DOL_VERSION;
+			if (preg_match('/\d\.\d/', $appli)) {
+				if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) {
+					$appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core
+				}
+			} else {
+				$appli .= " ".DOL_VERSION;
+			}
+		} else {
+			$appli .= " ".DOL_VERSION;
+		}
 
 		$urlback = $_SERVER["REQUEST_URI"];
 		$topic = '['.$appli.'] '.$companylangs->transnoentitiesnoconv("ValidationOfPaymentFailed");
@@ -926,8 +1002,7 @@ if ($ispaymentok)
 		$mailfile = new CMailFile($topic, $sendto, $from, $content, array(), array(), array(), '', '', 0, $ishtml);
 
 		$result = $mailfile->sendfile();
-		if ($result)
-		{
+		if ($result) {
 			dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0, '_payment');
 		} else {
 			dol_syslog("Failed to send EMail to ".$sendto, LOG_ERR, 0, '_payment');

+ 41 - 16
htdocs/public/project/new.php

@@ -27,17 +27,29 @@
  *	\brief      Example of form to add a new lead
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
@@ -57,7 +69,9 @@ $action = GETPOST('action', 'aZ09');
 $langs->loadLangs(array("main", "members", "companies", "install", "other"));
 
 // Security check
-if (empty($conf->projet->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->projet->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 if (empty($conf->global->PROJECT_ENABLE_PUBLIC)) {
 	print $langs->trans("Form for public lead registration has not been enabled");
@@ -234,7 +248,9 @@ if (empty($reshook) && $action == 'add') {
 		// Fill array 'array_options' with data from add form
 		$extrafields->fetch_name_optionals_label($proj->table_element);
 		$ret = $extrafields->setOptionalsFromPost(null, $proj);
-		if ($ret < 0) $error++;
+		if ($ret < 0) {
+			$error++;
+		}
 
 		$result = $proj->create($user);
 		if ($result > 0) {
@@ -257,7 +273,9 @@ if (empty($reshook) && $action == 'add') {
 				$arraydefaultmessage = null;
 				$labeltouse = $conf->global->PROJECT_EMAIL_TEMPLATE_AUTOLEAD;
 
-				if (!empty($labeltouse)) $arraydefaultmessage = $formmail->getEMailTemplate($db, 'project', $user, $outputlangs, 0, 1, $labeltouse);
+				if (!empty($labeltouse)) {
+					$arraydefaultmessage = $formmail->getEMailTemplate($db, 'project', $user, $outputlangs, 0, 1, $labeltouse);
+				}
 
 				if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) {
 					$subject = $arraydefaultmessage->topic;
@@ -275,9 +293,9 @@ if (empty($reshook) && $action == 'add') {
 					$result = $object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader);
 				}
 				/*if ($result < 0) {
-            		$error++;
-            		setEventMessages($object->error, $object->errors, 'errors');
-            	}*/
+					$error++;
+					setEventMessages($object->error, $object->errors, 'errors');
+				}*/
 			}
 
 			if (!empty($backtopage)) {
@@ -289,7 +307,9 @@ if (empty($reshook) && $action == 'add') {
 				$urlback = $_SERVER["PHP_SELF"]."?action=added";
 			}
 
-			if (!empty($entity)) $urlback .= '&entity='.$entity;
+			if (!empty($entity)) {
+				$urlback .= '&entity='.$entity;
+			}
 			dol_syslog("project lead ".$proj->ref." was created, we redirect to ".$urlback);
 		} else {
 			$error++;
@@ -414,7 +434,9 @@ if (!$country_id && !empty($conf->geoipmaxmind->enabled)) {
 	if ($country_code) {
 		$new_country_id = getCountry($country_code, 3, $db, $langs);
 		//print 'xxx'.$country_code.' - '.$new_country_id;
-		if ($new_country_id) $country_id = $new_country_id;
+		if ($new_country_id) {
+			$country_id = $new_country_id;
+		}
 	}
 }
 $country_code = getCountry($country_id, 2, $db, $langs);
@@ -423,8 +445,11 @@ print '</td></tr>';
 // State
 if (empty($conf->global->SOCIETE_DISABLE_STATE)) {
 	print '<tr><td>'.$langs->trans('State').'</td><td>';
-	if ($country_code) print $formcompany->select_state(GETPOST("state_id"), $country_code);
-	else print '';
+	if ($country_code) {
+		print $formcompany->select_state(GETPOST("state_id"), $country_code);
+	} else {
+		print '';
+	}
 	print '</td></tr>';
 }
 // EMail

+ 12 - 6
htdocs/public/recruitment/index.php

@@ -32,8 +32,12 @@ if (!defined('NOREQUIREMENU')) {
 if (!defined("NOLOGIN")) {
 	define("NOLOGIN", '1');
 }
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 // If this page is public (can be called outside logged session)
 
 require '../../main.inc.php';
@@ -206,7 +210,9 @@ if ($display_ticket_list) {
 	$limit = $conf->liste_limit;
 
 	$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
-	if (empty($page) || $page == -1) { $page = 0; }     // If $page is not defined, or '' or -1
+	if (empty($page) || $page == -1) {
+		$page = 0;
+	}     // If $page is not defined, or '' or -1
 	$offset = $limit * $page;
 	$pageprev = $page - 1;
 	$pagenext = $page + 1;
@@ -237,8 +243,9 @@ if ($display_ticket_list) {
 	$sql .= " type.label as type_label, category.label as category_label, severity.label as severity_label";
 	// Add fields for extrafields
 	if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
-		foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val)
+		foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
 			$sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ", ef.".$key.' as options_'.$key : '');
+		}
 	}
 	$sql .= " FROM ".MAIN_DB_PREFIX."recruitment_recruitmentjobposition as t";
 	$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON s.rowid=t.fk_soc";
@@ -360,8 +367,7 @@ if ($display_ticket_list) {
 			print_liste_field_titre($selectedfields, $url_page_current, "", '', '', 'align="right"', $sortfield, $sortorder, 'center maxwidthsearch ');
 			print '</tr>';
 
-			while ($obj = $db->fetch_object($resql))
-			{
+			while ($obj = $db->fetch_object($resql)) {
 				print '<tr class="oddeven">';
 
 				// Date ticket

+ 37 - 33
htdocs/public/recruitment/view.php

@@ -21,10 +21,18 @@
  *       \brief      Public file to show on job
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/recruitment/class/recruitmentjobposition.class.php';
@@ -52,10 +60,8 @@ if (isset($_SESSION['email_customer'])) {
 
 $object = new RecruitmentJobPosition($db);
 
-if (!$action)
-{
-	if (!$ref)
-	{
+if (!$action) {
+	if (!$ref) {
 		print $langs->trans('ErrorBadParameters')." - ref missing";
 		exit;
 	} else {
@@ -73,10 +79,8 @@ $urlwithroot = DOL_MAIN_URL_ROOT; // This is to use same domain name than curren
  * Actions
  */
 
-if ($cancel)
-{
-	if (!empty($backtopage))
-	{
+if ($cancel) {
+	if (!empty($backtopage)) {
 		header("Location: ".$backtopage);
 		exit;
 	}
@@ -125,8 +129,7 @@ if ($action == "view" || $action == "presend" || $action == "close" || $action =
 
 	if ($error || $errors) {
 		setEventMessages($object->error, $object->errors, 'errors');
-		if ($action == "add_message")
-		{
+		if ($action == "add_message") {
 			$action = 'presend';
 		} else {
 			$action = '';
@@ -150,7 +153,9 @@ include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php';
  */
 
 $head = '';
-if (!empty($conf->global->MAIN_RECRUITMENT_CSS_URL)) $head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MAIN_RECRUITMENT_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+if (!empty($conf->global->MAIN_RECRUITMENT_CSS_URL)) {
+	$head = '<link rel="stylesheet" type="text/css" href="'.$conf->global->MAIN_RECRUITMENT_CSS_URL.'?lang='.$langs->defaultlang.'">'."\n";
+}
 
 $conf->dol_hide_topmenu = 1;
 $conf->dol_hide_leftmenu = 1;
@@ -188,24 +193,24 @@ print '<table id="dolpaymenttable" summary="Payment form" class="center">'."\n";
 $logosmall = $mysoc->logo_small;
 $logo = $mysoc->logo;
 $paramlogo = 'ONLINE_RECRUITMENT_LOGO_'.$suffix;
-if (!empty($conf->global->$paramlogo)) $logosmall = $conf->global->$paramlogo;
-elseif (!empty($conf->global->ONLINE_RECRUITMENT_LOGO)) $logosmall = $conf->global->ONLINE_RECRUITMENT_LOGO_;
+if (!empty($conf->global->$paramlogo)) {
+	$logosmall = $conf->global->$paramlogo;
+} elseif (!empty($conf->global->ONLINE_RECRUITMENT_LOGO)) {
+	$logosmall = $conf->global->ONLINE_RECRUITMENT_LOGO_;
+}
 //print '<!-- Show logo (logosmall='.$logosmall.' logo='.$logo.') -->'."\n";
 // Define urllogo
 $urllogo = '';
 $urllogofull = '';
-if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall))
-{
+if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$logosmall)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/thumbs/'.$logosmall);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall);
-} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo))
-{
+} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) {
 	$urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&amp;entity='.$conf->entity.'&amp;file='.urlencode('logos/'.$logo);
 	$urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo);
 }
 // Output html code for logo
-if ($urllogo)
-{
+if ($urllogo) {
 	print '<div class="backgreypublicpayment">';
 	print '<div class="logopublicpayment">';
 	print '<img id="dolpaymentlogo" src="'.$urllogo.'"';
@@ -219,15 +224,16 @@ if ($urllogo)
 
 // Output introduction text
 $text = '';
-if (!empty($conf->global->RECRUITMENT_NEWFORM_TEXT))
-{
+if (!empty($conf->global->RECRUITMENT_NEWFORM_TEXT)) {
 	$langs->load("recruitment");
-	if (preg_match('/^\((.*)\)$/', $conf->global->RECRUITMENT_NEWFORM_TEXT, $reg)) $text .= $langs->trans($reg[1])."<br>\n";
-	else $text .= $conf->global->RECRUITMENT_NEWFORM_TEXT."<br>\n";
+	if (preg_match('/^\((.*)\)$/', $conf->global->RECRUITMENT_NEWFORM_TEXT, $reg)) {
+		$text .= $langs->trans($reg[1])."<br>\n";
+	} else {
+		$text .= $conf->global->RECRUITMENT_NEWFORM_TEXT."<br>\n";
+	}
 	$text = '<tr><td align="center"><br>'.$text.'<br></td></tr>'."\n";
 }
-if (empty($text))
-{
+if (empty($text)) {
 	$text .= '<tr><td class="textpublicpayment"><br>'.$langs->trans("JobOfferToBeFilled", $mysoc->name);
 	$text .= ' &nbsp; - &nbsp; <strong>'.$mysoc->name.'</strong>';
 	$text .= ' &nbsp; - &nbsp; <span class="fa fa-calendar secondary"></span> '.dol_print_date($object->date_creation);
@@ -304,10 +310,8 @@ print '</div>'."\n";
 print "\n";
 
 
-if ($action != 'dosubmit')
-{
-	if ($found && !$error)	// We are in a management option and no error
-	{
+if ($action != 'dosubmit') {
+	if ($found && !$error) {	// We are in a management option and no error
 	} else {
 		dol_print_error_email('ERRORNEWONLINESIGN');
 	}

+ 25 - 14
htdocs/public/stripe/confirm_payment.php

@@ -17,13 +17,23 @@
 
 // TODO Do we really need this page. We alread have a ipn.php page !
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
@@ -39,14 +49,14 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php';
 require_once DOL_DOCUMENT_ROOT.'/includes/stripe/stripe-php/init.php';
 require_once DOL_DOCUMENT_ROOT.'/stripe/class/stripe.class.php';
 
-if (empty($conf->stripe->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->stripe->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 // You can find your endpoint's secret in your webhook settings
-if (isset($_GET['connect']))
-{
-	if (isset($_GET['test']))
-	{
+if (isset($_GET['connect'])) {
+	if (isset($_GET['test'])) {
 		$endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_CONNECT_KEY;
 		$service = 'StripeTest';
 		$servicestatus = 0;
@@ -56,8 +66,7 @@ if (isset($_GET['connect']))
 		$servicestatus = 1;
 	}
 } else {
-	if (isset($_GET['test']))
-	{
+	if (isset($_GET['test'])) {
 		$endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_KEY;
 		$service = 'StripeTest';
 		$servicestatus = 0;
@@ -86,7 +95,9 @@ $stripe = new Stripe($db);
 
 // Subject
 $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM;
-if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE;
+if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
+	$societeName = $conf->global->MAIN_APPLICATION_TITLE;
+}
 
 
 dol_syslog("Stripe confirm_payment was called");
@@ -115,7 +126,7 @@ try {
 	if (isset($json_obj->payment_intent_id)) {
 		$intent = \Stripe\PaymentIntent::retrieve(
 			$json_obj->payment_intent_id
-			);
+		);
 		$intent->confirm();
 	}
 	generatePaymentResponse($intent);

+ 64 - 52
htdocs/public/stripe/ipn.php

@@ -16,13 +16,23 @@
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
  */
 
-if (!defined('NOLOGIN'))		define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
@@ -39,14 +49,14 @@ require_once DOL_DOCUMENT_ROOT.'/includes/stripe/stripe-php/init.php';
 require_once DOL_DOCUMENT_ROOT.'/stripe/class/stripe.class.php';
 
 
-if (empty($conf->stripe->enabled)) accessforbidden('', 0, 0, 1);
+if (empty($conf->stripe->enabled)) {
+	accessforbidden('', 0, 0, 1);
+}
 
 
 // You can find your endpoint's secret in your webhook settings
-if (isset($_GET['connect']))
-{
-	if (isset($_GET['test']))
-	{
+if (isset($_GET['connect'])) {
+	if (isset($_GET['test'])) {
 		$endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_CONNECT_KEY;
 		$service = 'StripeTest';
 		$servicestatus = 0;
@@ -56,8 +66,7 @@ if (isset($_GET['connect']))
 		$servicestatus = 1;
 	}
 } else {
-	if (isset($_GET['test']))
-	{
+	if (isset($_GET['test'])) {
 		$endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_KEY;
 		$service = 'StripeTest';
 		$servicestatus = 0;
@@ -68,8 +77,7 @@ if (isset($_GET['connect']))
 	}
 }
 
-if (empty($endpoint_secret))
-{
+if (empty($endpoint_secret)) {
 	print 'Error: Setup of module Stripe not complete for mode '.$service.'. The WEBHOOK_KEY is not defined.';
 	http_response_code(400); // PHP 5.4 or greater
 	exit();
@@ -107,18 +115,15 @@ $user = new User($db);
 $user->fetch($conf->global->STRIPE_USER_ACCOUNT_FOR_ACTIONS);
 $user->getrights();
 
-if (!empty($conf->multicompany->enabled) && !empty($conf->stripeconnect->enabled) && is_object($mc))
-{
+if (!empty($conf->multicompany->enabled) && !empty($conf->stripeconnect->enabled) && is_object($mc)) {
 	$sql = "SELECT entity";
 	$sql .= " FROM ".MAIN_DB_PREFIX."oauth_token";
 	$sql .= " WHERE service = '".$db->escape($service)."' and tokenstring LIKE '%".$db->escape($event->account)."%'";
 
 	dol_syslog(get_class($db)."::fetch", LOG_DEBUG);
 	$result = $db->query($sql);
-	if ($result)
-	{
-		if ($db->num_rows($result))
-		{
+	if ($result) {
+		if ($db->num_rows($result)) {
 			$obj = $db->fetch_object($result);
 			$key = $obj->entity;
 		} else {
@@ -135,7 +140,9 @@ $stripe = new Stripe($db);
 
 // Subject
 $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM;
-if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE;
+if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
+	$societeName = $conf->global->MAIN_APPLICATION_TITLE;
+}
 
 
 dol_syslog("***** Stripe IPN was called with event->type = ".$event->type);
@@ -146,8 +153,7 @@ if ($event->type == 'payout.created') {
 
 	$result = dolibarr_set_const($db, $service."_NEXTPAYOUT", date('Y-m-d H:i:s', $event->data->object->arrival_date), 'chaine', 0, '', $conf->entity);
 
-	if ($result > 0)
-	{
+	if ($result > 0) {
 		$subject = $societeName.' - [NOTIFICATION] Stripe payout scheduled';
 		if (!empty($user->email)) {
 			$sendto = dolGetFirstLastname($user->firstname, $user->lastname)." <".$user->email.">";
@@ -189,8 +195,7 @@ if ($event->type == 'payout.created') {
 	global $conf;
 	$error = 0;
 	$result = dolibarr_set_const($db, $service."_NEXTPAYOUT", null, 'chaine', 0, '', $conf->entity);
-	if ($result)
-	{
+	if ($result) {
 		$langs->load("errors");
 
 		$dateo = dol_now();
@@ -205,8 +210,7 @@ if ($event->type == 'payout.created') {
 		$accountto = new Account($db);
 		$accountto->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_BANKTRANSFERS);
 
-		if (($accountto->id != $accountfrom->id) && empty($error))
-		{
+		if (($accountto->id != $accountfrom->id) && empty($error)) {
 			$bank_line_id_from = 0;
 			$bank_line_id_to = 0;
 			$result = 0;
@@ -215,15 +219,31 @@ if ($event->type == 'payout.created') {
 			$typefrom = 'PRE';
 			$typeto = 'VIR';
 
-			if (!$error) $bank_line_id_from = $accountfrom->addline($dateo, $typefrom, $label, -1 * price2num($amount), '', '', $user);
-			if (!($bank_line_id_from > 0)) $error++;
-			if (!$error) $bank_line_id_to = $accountto->addline($dateo, $typeto, $label, price2num($amount), '', '', $user);
-			if (!($bank_line_id_to > 0)) $error++;
+			if (!$error) {
+				$bank_line_id_from = $accountfrom->addline($dateo, $typefrom, $label, -1 * price2num($amount), '', '', $user);
+			}
+			if (!($bank_line_id_from > 0)) {
+				$error++;
+			}
+			if (!$error) {
+				$bank_line_id_to = $accountto->addline($dateo, $typeto, $label, price2num($amount), '', '', $user);
+			}
+			if (!($bank_line_id_to > 0)) {
+				$error++;
+			}
 
-			if (!$error) $result = $accountfrom->add_url_line($bank_line_id_from, $bank_line_id_to, DOL_URL_ROOT.'/compta/bank/line.php?rowid=', '(banktransfert)', 'banktransfert');
-			if (!($result > 0)) $error++;
-			if (!$error) $result = $accountto->add_url_line($bank_line_id_to, $bank_line_id_from, DOL_URL_ROOT.'/compta/bank/line.php?rowid=', '(banktransfert)', 'banktransfert');
-			if (!($result > 0)) $error++;
+			if (!$error) {
+				$result = $accountfrom->add_url_line($bank_line_id_from, $bank_line_id_to, DOL_URL_ROOT.'/compta/bank/line.php?rowid=', '(banktransfert)', 'banktransfert');
+			}
+			if (!($result > 0)) {
+				$error++;
+			}
+			if (!$error) {
+				$result = $accountto->add_url_line($bank_line_id_to, $bank_line_id_from, DOL_URL_ROOT.'/compta/bank/line.php?rowid=', '(banktransfert)', 'banktransfert');
+			}
+			if (!($result > 0)) {
+				$error++;
+			}
 		}
 
 		$subject = $societeName.' - [NOTIFICATION] Stripe payout done';
@@ -252,7 +272,7 @@ if ($event->type == 'payout.created') {
 			'',
 			0,
 			-1
-			);
+		);
 
 		$ret = $mailfile->sendfile();
 
@@ -279,8 +299,7 @@ if ($event->type == 'payout.created') {
 	// TODO: Redirect to paymentok.php
 } elseif ($event->type == 'payment_intent.payment_failed') {
 	// TODO: Redirect to paymentko.php
-} elseif ($event->type == 'checkout.session.completed')		// Called when making payment with new Checkout method ($conf->global->STRIPE_USE_NEW_CHECKOUT is on).
-{
+} elseif ($event->type == 'checkout.session.completed') {		// Called when making payment with new Checkout method ($conf->global->STRIPE_USE_NEW_CHECKOUT is on).
 	// TODO: create fees
 	// TODO: Redirect to paymentok.php
 } elseif ($event->type == 'payment_method.attached') {
@@ -291,8 +310,7 @@ if ($event->type == 'payout.created') {
 	$companypaymentmode = new CompanyPaymentMode($db);
 
 	$idthirdparty = $societeaccount->getThirdPartyID($db->escape($event->data->object->customer), 'stripe', $servicestatus);
-	if ($idthirdparty > 0)	// If the payment mode is on an external customer that is known in societeaccount, we can create the payment mode
-	{
+	if ($idthirdparty > 0) {	// If the payment mode is on an external customer that is known in societeaccount, we can create the payment mode
 		$companypaymentmode->stripe_card_ref = $db->escape($event->data->object->id);
 		$companypaymentmode->fk_soc          = $idthirdparty;
 		$companypaymentmode->bank            = null;
@@ -311,16 +329,13 @@ if ($event->type == 'payout.created') {
 		$companypaymentmode->status          = $servicestatus;
 
 		$db->begin();
-		if (!$error)
-		{
+		if (!$error) {
 			$result = $companypaymentmode->create($user);
-			if ($result < 0)
-			{
+			if ($result < 0) {
 				$error++;
 			}
 		}
-		if (!$error)
-		{
+		if (!$error) {
 			$db->commit();
 		} else {
 			$db->rollback();
@@ -345,16 +360,13 @@ if ($event->type == 'payout.created') {
 	$companypaymentmode->status          = $servicestatus;
 
 	$db->begin();
-	if (!$error)
-	{
+	if (!$error) {
 		$result = $companypaymentmode->update($user);
-		if ($result < 0)
-		{
+		if ($result < 0) {
 			$error++;
 		}
 	}
-	if (!$error)
-	{
+	if (!$error) {
 		$db->commit();
 	} else {
 		$db->rollback();

+ 40 - 26
htdocs/public/test/badges.php

@@ -1,11 +1,25 @@
 <?php
-if (!defined('NOREQUIRESOC'))    define('NOREQUIRESOC', '1');
-if (!defined('NOCSRFCHECK'))     define('NOCSRFCHECK', 1);
-if (!defined('NOTOKENRENEWAL'))  define('NOTOKENRENEWAL', 1);
-if (!defined('NOLOGIN'))         define('NOLOGIN', 1); // File must be accessed by logon page so without login
-if (!defined('NOREQUIREHTML'))   define('NOREQUIREHTML', 1);
-if (!defined('NOREQUIREAJAX'))   define('NOREQUIREAJAX', '1');
-if (!defined('NOSESSION'))       define('NOSESSION', '1');
+if (!defined('NOREQUIRESOC')) {
+	define('NOREQUIRESOC', '1');
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', 1);
+}
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', 1);
+}
+if (!defined('NOLOGIN')) {
+	define('NOLOGIN', 1); // File must be accessed by logon page so without login
+}
+if (!defined('NOREQUIREHTML')) {
+	define('NOREQUIREHTML', 1);
+}
+if (!defined('NOREQUIREAJAX')) {
+	define('NOREQUIREAJAX', '1');
+}
+if (!defined('NOSESSION')) {
+	define('NOSESSION', '1');
+}
 
 session_cache_limiter('public');
 
@@ -20,7 +34,7 @@ if ($dolibarr_main_prod) {
 <!doctype html>
 <html lang="en">
   <head>
-    <meta charset="utf-8">
+	<meta charset="utf-8">
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
 	<meta name="description" content="Documentation and examples for theme.">
 
@@ -29,10 +43,10 @@ if ($dolibarr_main_prod) {
   <body class="docpage" style="padding: 20px;">
 
   <main  role="main"  >
-          <h1 class="bd-title" id="content">Badges</h1>
-          <p class="bd-lead">Documentation and examples for badges, our small count and labeling component.</p>
+		  <h1 class="bd-title" id="content">Badges</h1>
+		  <p class="bd-lead">Documentation and examples for badges, our small count and labeling component.</p>
 
-          <h2 id="example">Example</h2>
+		  <h2 id="example">Example</h2>
 
 		<p>Badges scale to match the size of the immediate parent element by using relative font sizing and em units.</p>
 
@@ -46,7 +60,7 @@ if ($dolibarr_main_prod) {
 		</div>
 
 		<figure class="highlight">
-    		<pre>
+			<pre>
 
 &lt;h1&gt;Example heading &lt;span class=&quot;badge badge-secondary&quot;&gt;New&lt;/span&gt;&lt;/h1&gt;
 &lt;h2&gt;Example heading &lt;span class=&quot;badge badge-secondary&quot;&gt;New&lt;/span&gt;&lt;/h2&gt;
@@ -55,7 +69,7 @@ if ($dolibarr_main_prod) {
 &lt;h5&gt;Example heading &lt;span class=&quot;badge badge-secondary&quot;&gt;New&lt;/span&gt;&lt;/h5&gt;
 &lt;h6&gt;Example heading &lt;span class=&quot;badge badge-secondary&quot;&gt;New&lt;/span&gt;&lt;/h6&gt;
 
-    		</pre>
+			</pre>
 		</figure>
 
 		<p>Badges can be used as part of links or buttons to provide a counter.</p>
@@ -88,7 +102,7 @@ if ($dolibarr_main_prod) {
 		</div>
 
 		<figure class="highlight">
-    		<pre>
+			<pre>
 
 
 &lt;button type=&quot;button&quot; class=&quot;btn btn-primary&quot;&gt;
@@ -97,7 +111,7 @@ if ($dolibarr_main_prod) {
 &lt;/button&gt;
 
 
-    		</pre>
+			</pre>
 		</figure>
 
 		<h2 id="contextual-variations">Contextual variations</h2>
@@ -117,7 +131,7 @@ if ($dolibarr_main_prod) {
 		</div>
 
 		<figure class="highlight">
-    		<pre>
+			<pre>
 
 &lt;span class=&quot;badge badge-primary&quot;&gt;Primary&lt;/span&gt;
 &lt;span class=&quot;badge badge-secondary&quot;&gt;Secondary&lt;/span&gt;
@@ -128,7 +142,7 @@ if ($dolibarr_main_prod) {
 &lt;span class=&quot;badge badge-light&quot;&gt;Light&lt;/span&gt;
 &lt;span class=&quot;badge badge-dark&quot;&gt;Dark&lt;/span&gt;
 
-    		</pre>
+			</pre>
 		</figure>
 
 		<div class="warning">
@@ -144,13 +158,13 @@ if ($dolibarr_main_prod) {
 		<p>Add any of the below mentioned modifier classes to change the appearance of a badge to be linked to a default status.</p>
 
 		<div class="bd-example">
-		<?php for ($i = 0; $i <= 9; $i++): ?>
+		<?php for ($i = 0; $i <= 9; $i++) : ?>
 		<span class="badge badge-status<?php print $i; ?>" >status-<?php print $i; ?></span>
 		<?php endfor; ?>
 		</div>
 
 		<figure class="highlight"><pre><pre>
-<?php for ($i = 0; $i <= 9; $i++): ?>
+<?php for ($i = 0; $i <= 9; $i++) : ?>
 &lt;span class="badge badge-status<?php print $i; ?>" &gt;status<?php print $i; ?>&lt;/span&gt;
 <?php endfor; ?>
 		</pre></figure>
@@ -171,7 +185,7 @@ if ($dolibarr_main_prod) {
 		<span class="badge badge-pill badge-light">Light</span>
 		<span class="badge badge-pill badge-dark">Dark</span>
 
-		<?php for ($i = 0; $i <= 9; $i++): ?>
+		<?php for ($i = 0; $i <= 9; $i++) : ?>
 		<span class="badge badge-pill badge-status<?php print $i; ?>" >status<?php print $i; ?></span>
 		<?php endfor; ?>
 
@@ -188,7 +202,7 @@ if ($dolibarr_main_prod) {
 &lt;span class=&quot;badge badge-pill badge-info&quot;&gt;Info&lt;/span&gt;
 &lt;span class=&quot;badge badge-pill badge-light&quot;&gt;Light&lt;/span&gt;
 &lt;span class=&quot;badge badge-pill badge-dark&quot;&gt;Dark&lt;/span&gt;
-<?php for ($i = 0; $i <= 9; $i++): ?>
+<?php for ($i = 0; $i <= 9; $i++) : ?>
 &lt;span class="badge badge-pill badge-status<?php print $i; ?>" &gt;status<?php print $i; ?>&lt;/span&gt;
 <?php endfor; ?>
 		</pre></figure>
@@ -210,7 +224,7 @@ if ($dolibarr_main_prod) {
 		<span class="badge badge-dot badge-light"></span>
 		<span class="badge badge-dot badge-dark"></span>
 
-		<?php for ($i = 0; $i <= 9; $i++): ?>
+		<?php for ($i = 0; $i <= 9; $i++) : ?>
 		<span class="badge badge-dot badge-status<?php print $i; ?>" ></span>
 		<?php endfor; ?>
 
@@ -227,7 +241,7 @@ if ($dolibarr_main_prod) {
 &lt;span class=&quot;badge badge-dot badge-info&quot;&gt;&lt;/span&gt;
 &lt;span class=&quot;badge badge-dot badge-light&quot;&gt;&lt;/span&gt;
 &lt;span class=&quot;badge badge-dot badge-dark&quot;&gt;&lt;/span&gt;
-<?php for ($i = 0; $i <= 9; $i++): ?>
+<?php for ($i = 0; $i <= 9; $i++) : ?>
 &lt;span class="badge badge-dot badge-status<?php print $i; ?>" &gt;&lt;/span&gt;
 <?php endfor; ?>
 		</pre></figure>
@@ -256,7 +270,7 @@ if ($dolibarr_main_prod) {
 		<a href="#" class="badge badge-info">Info</a>
 		<a href="#" class="badge badge-light">Light</a>
 		<a href="#" class="badge badge-dark">Dark</a>
-		<?php for ($i = 0; $i <= 9; $i++): ?>
+		<?php for ($i = 0; $i <= 9; $i++) : ?>
 		<a href="#" class="badge badge-status<?php print $i; ?>" >status<?php print $i; ?></a>
 		<?php endfor; ?>
 
@@ -271,7 +285,7 @@ if ($dolibarr_main_prod) {
 &lt;a href=&quot;#&quot; class=&quot;badge badge-info&quot;&gt;Info&lt;/a&gt;
 &lt;a href=&quot;#&quot; class=&quot;badge badge-light&quot;&gt;Light&lt;/a&gt;
 &lt;a href=&quot;#&quot; class=&quot;badge badge-dark&quot;&gt;Dark&lt;/a&gt;
-<?php for ($i = 0; $i <= 9; $i++): ?>
+<?php for ($i = 0; $i <= 9; $i++) : ?>
 &lt;a href=&quot;#&quot; class="badge badge-status<?php print $i; ?>" &gt;status<?php print $i; ?>&lt;/a&gt;
 <?php endfor; ?>
 		</pre></figure>
@@ -326,7 +340,7 @@ if ($dolibarr_main_prod) {
 		</pre></figure>
 
 
-        </main>
+		</main>
 
   </body>
 </html>

+ 112 - 83
htdocs/public/test/test_arrays.php

@@ -2,15 +2,25 @@
 //define("NOLOGIN",1);		// This means this output page does not require to be logged.
 //if (!defined('NOREQUIREUSER'))  define('NOREQUIREUSER', '1');
 //if (!defined('NOREQUIREDB'))    define('NOREQUIREDB', '1');
-if (!defined('NOREQUIRESOC'))   define('NOREQUIRESOC', '1');
+if (!defined('NOREQUIRESOC')) {
+	define('NOREQUIRESOC', '1');
+}
 //if (!defined('NOREQUIRETRAN'))  define('NOREQUIRETRAN', '1');
-if (!defined('NOSTYLECHECK'))   define('NOSTYLECHECK', '1'); // Do not check style html tag into posted data
-if (!defined('NOCSRFCHECK'))    define('NOCSRFCHECK', '1'); // Do not check anti CSRF attack test
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Do not check anti POST attack test
+if (!defined('NOSTYLECHECK')) {
+	define('NOSTYLECHECK', '1'); // Do not check style html tag into posted data
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1'); // Do not check anti CSRF attack test
+}
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', '1'); // Do not check anti POST attack test
+}
 //if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
 //if (!defined('NOREQUIREHTML'))  define('NOREQUIREHTML', '1'); // If we don't need to load the html.form.class.php
 //if (!defined('NOREQUIREAJAX'))  define('NOREQUIREAJAX', '1'); // Do not load ajax.lib.php library
-if (!defined("NOLOGIN"))        define("NOLOGIN", '1'); // If this page is public (can be called outside logged session)
+if (!defined("NOLOGIN")) {
+	define("NOLOGIN", '1'); // If this page is public (can be called outside logged session)
+}
 
 
 require '../../main.inc.php';
@@ -29,8 +39,7 @@ $form = new Form($db);
 // HEADER
 //--------
 
-if (empty($usedolheader))
-{
+if (empty($usedolheader)) {
 	header("Content-type: text/html; charset=UTF8");
 	?>
 	<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
@@ -75,7 +84,7 @@ if (empty($usedolheader))
 			'/includes/pdfmake/pdfmake.min.js',
 			'/includes/pdfmake/vfs_fonts.js'
 	);
-    */
+	*/
 
 	llxHeader('', '', '', '', 0, 0, $arrayjs, $arraycss);
 }
@@ -125,14 +134,14 @@ This page is a sample of page using tables. It is designed to make test with<br>
 <br><hr><br>Example 0c: Table with table+tr+td containg a select that should be overflowed and truncated => Use this to align text or form<br>
 
 <table class="centpercent">
-    <tr>
-    <td class="tagtd maxwidthonsmartphone" style="overflow: hidden; white-space: nowrap;"> <!-- If you remove max-width, the jmobile overflow does not work -->
+	<tr>
+	<td class="tagtd maxwidthonsmartphone" style="overflow: hidden; white-space: nowrap;"> <!-- If you remove max-width, the jmobile overflow does not work -->
 	<select name="hidedetails" class="centpercentonsmartphone"><option>aaaaaaaaaaaaaaafd sf sf gfd gfds fsd  gfd fhfg hf dhfg hg fhfgdhfgdh gh gfdhdgf h gfdh dfhg dfgh dfgh fdgh gfd hfd hfd gs fgdf gaaaa</option><option>gdfs gdf g sdfg dfg fdsg dsfg dfs gdfs gds fgs  gdfdf gd</option></select>
-    </td>
-    <td class="tagtd maxwidthonsmartphone" style="overflow: hidden; white-space: nowrap;"> <!-- If you remove max-width, the jmobile overflow does not work -->
+	</td>
+	<td class="tagtd maxwidthonsmartphone" style="overflow: hidden; white-space: nowrap;"> <!-- If you remove max-width, the jmobile overflow does not work -->
 	<select name="hidedetails" class="centpercentonsmartphone"><option>aaaaaaaaaaaaaaafd sf sf gfd gfds fsd  gfd fhfg hf dhfg hg fhfgdhfgdh gh gfdhdgf h gfdh dfhg dfgh dfgh fdgh gfd hfd hfd gs fgdf gaaaa</option><option>gdfs gdf g sdfg dfg fdsg dsfg dfs gdfs gds fgs  gdfdf gd</option></select>
-    </td>
-    </tr>
+	</td>
+	</tr>
 </table>
 
 
@@ -144,16 +153,16 @@ This page is a sample of page using tables. It is designed to make test with<br>
 <script type="text/javascript" language="javascript">
 /*jQuery(document).ready(function() {
 $(document).ready(function() {
-    var table = $('#tablelines3').DataTable( {
-        scrollY:        "300px",
-        scrollX:        true,
-        scrollCollapse: true,
-        paging:         false,
-        fixedColumns:   {
-            leftColumns: 1,
-            rightColumns: 1
-        }
-    } );
+	var table = $('#tablelines3').DataTable( {
+		scrollY:        "300px",
+		scrollX:        true,
+		scrollCollapse: true,
+		paging:         false,
+		fixedColumns:   {
+			leftColumns: 1,
+			rightColumns: 1
+		}
+	} );
 } );
 });*/
 </script>
@@ -169,19 +178,39 @@ $sortfield = 'aaa';
 $sortorder = 'ASC';
 $tasksarray = array(1, 2, 3); // To force having several lines
 $tagidfortablednd = 'tablelines3';
-if (!empty($conf->use_javascript_ajax)) include DOL_DOCUMENT_ROOT.'/core/tpl/ajaxrow.tpl.php';
+if (!empty($conf->use_javascript_ajax)) {
+	include DOL_DOCUMENT_ROOT.'/core/tpl/ajaxrow.tpl.php';
+}
 
 $nav = '';
 $nav .= '<form name="dateselect" action="'.$_SERVER["PHP_SELF"].'?action=show_peruser'.$param.'">';
-if ($actioncode || GETPOSTISSET('actioncode')) $nav .= '<input type="hidden" name="actioncode" value="'.$actioncode.'">';
-if ($status || GETPOSTISSET('status'))  $nav .= '<input type="hidden" name="status" value="'.$status.'">';
-if ($filter)  $nav .= '<input type="hidden" name="filter" value="'.$filter.'">';
-if ($filtert) $nav .= '<input type="hidden" name="filtert" value="'.$filtert.'">';
-if ($socid)   $nav .= '<input type="hidden" name="socid" value="'.$socid.'">';
-if ($showbirthday)  $nav .= '<input type="hidden" name="showbirthday" value="1">';
-if ($pid)    $nav .= '<input type="hidden" name="projectid" value="'.$pid.'">';
-if ($type)   $nav .= '<input type="hidden" name="type" value="'.$type.'">';
-if ($usergroup) $nav .= '<input type="hidden" name="usergroup" value="'.$usergroup.'">';
+if ($actioncode || GETPOSTISSET('actioncode')) {
+	$nav .= '<input type="hidden" name="actioncode" value="'.$actioncode.'">';
+}
+if ($status || GETPOSTISSET('status')) {
+	$nav .= '<input type="hidden" name="status" value="'.$status.'">';
+}
+if ($filter) {
+	$nav .= '<input type="hidden" name="filter" value="'.$filter.'">';
+}
+if ($filtert) {
+	$nav .= '<input type="hidden" name="filtert" value="'.$filtert.'">';
+}
+if ($socid) {
+	$nav .= '<input type="hidden" name="socid" value="'.$socid.'">';
+}
+if ($showbirthday) {
+	$nav .= '<input type="hidden" name="showbirthday" value="1">';
+}
+if ($pid) {
+	$nav .= '<input type="hidden" name="projectid" value="'.$pid.'">';
+}
+if ($type) {
+	$nav .= '<input type="hidden" name="type" value="'.$type.'">';
+}
+if ($usergroup) {
+	$nav .= '<input type="hidden" name="usergroup" value="'.$usergroup.'">';
+}
 $nav .= $form->selectDate($dateselect, 'dateselect', 0, 0, 1, '', 1, 0);
 $nav .= ' <input type="submit" name="submitdateselect" class="button" value="'.$langs->trans("Refresh").'">';
 $nav .= '</form>';
@@ -213,8 +242,7 @@ $cate_arbo = array('field1'=>'value1d into the select list D', 'field2'=>'value2
 $moreforfilter .= $form->selectarray('search_ddd', $cate_arbo, '', 1, 0, 0, '', 0, 0, 0, '', 'maxwidth300', 1); // List with js combo forced
 $moreforfilter .= '</div>';
 
-if (!empty($moreforfilter))
-{
+if (!empty($moreforfilter)) {
 	print '<div class="liste_titre liste_titre_bydiv centpercent">';
 	print $moreforfilter;
 	$parameters = array();
@@ -249,18 +277,18 @@ if (!empty($moreforfilter))
 
 <script type="text/javascript">
 $(document).ready(function(){
-    $('#idtableexample2').dataTable( {
-    	<?php
+	$('#idtableexample2').dataTable( {
+		<?php
 		if ($optioncss == 'print') {
-		 	print '\'dom\': \'lfrtip\',';
+			print '\'dom\': \'lfrtip\',';
 		} else {
 			print '\'dom\': \'Blfrtip\',';
 		}
 		?>
-    	"colReorder": true,
+		"colReorder": true,
 		'buttons': [
-		          'colvis','copy', 'csv', 'excel', 'pdf', 'print'
-		      ],
+				  'colvis','copy', 'csv', 'excel', 'pdf', 'print'
+			  ],
 		"sPaginationType": "full_numbers",
 		"lengthMenu": [[10, 25, 50, 100, -1], [10, 25, 50, 100, "<?php echo $langs->trans('All'); ?>"]],
 		"oLanguage": {
@@ -284,10 +312,10 @@ $(document).ready(function(){
 		"bServerSide": true,
 		"sAjaxSource": "../ajax.php",
 		"aoColumnDefs": [
-		                 { "bSortable": false, "aTargets": [ 2,3,4 ] }
-		               ],
+						 { "bSortable": false, "aTargets": [ 2,3,4 ] }
+					   ],
 */
-    })
+	})
 });
 </script>
  -->
@@ -299,54 +327,55 @@ $(document).ready(function(){
 <?php
 	$tasksarray = array(1, 2, 3); // To force having several lines
 	$tagidfortablednd = 'tablelines';
-	if (!empty($conf->use_javascript_ajax)) include DOL_DOCUMENT_ROOT.'/core/tpl/ajaxrow.tpl.php';
+if (!empty($conf->use_javascript_ajax)) {
+	include DOL_DOCUMENT_ROOT.'/core/tpl/ajaxrow.tpl.php';
+}
 ?>
 <div class="tagtable centpercent liste_titre_bydiv" id="tablelines">
-    <div class="tagtr liste_titre">
-        <div class="tagtd">Title A<input type="hidden" name="cartitem" value="3"></div>
-        <div class="tagtd">title B</div>
-        <div class="tagtd">title C</div>
-        <div class="tagtd">title D</div>
-    </div>
-    <div class="pair tagtr">
-        <div class="tagtd">line4<input type="hidden" name="cartitem" value="3"></div>
-        <div class="tagtd">dfsdf</div>
-        <div class="tagtd"><input name="count" value="4" class="maxwidth50"></div>
-        <div class="tagtd tdlineupdown">bbbb</div>
-    </div>
-    <div class="impair tagtr">
-        <div class="tagtd">line5<input type="hidden" name="cartitemb" value="3"></div>
-        <div class="tagtd">dfsdf</div>
-        <div class="tagtd"><input name="countb" value="4" class="maxwidth50"></div>
-        <div class="tagtd tdlineupdown">bbbb</div>
-    </div>
-    <div class="pair tagtr">
-        <div class="tagtd">line6<input type="hidden" name="cartitem" value="3"></div>
-        <div class="tagtd">jghjgh</div>
-        <div class="tagtd">5</div>
-        <div class="tagtd tdlineupdown">lll</div>
-    </div>
+	<div class="tagtr liste_titre">
+		<div class="tagtd">Title A<input type="hidden" name="cartitem" value="3"></div>
+		<div class="tagtd">title B</div>
+		<div class="tagtd">title C</div>
+		<div class="tagtd">title D</div>
+	</div>
+	<div class="pair tagtr">
+		<div class="tagtd">line4<input type="hidden" name="cartitem" value="3"></div>
+		<div class="tagtd">dfsdf</div>
+		<div class="tagtd"><input name="count" value="4" class="maxwidth50"></div>
+		<div class="tagtd tdlineupdown">bbbb</div>
+	</div>
+	<div class="impair tagtr">
+		<div class="tagtd">line5<input type="hidden" name="cartitemb" value="3"></div>
+		<div class="tagtd">dfsdf</div>
+		<div class="tagtd"><input name="countb" value="4" class="maxwidth50"></div>
+		<div class="tagtd tdlineupdown">bbbb</div>
+	</div>
+	<div class="pair tagtr">
+		<div class="tagtd">line6<input type="hidden" name="cartitem" value="3"></div>
+		<div class="tagtd">jghjgh</div>
+		<div class="tagtd">5</div>
+		<div class="tagtd tdlineupdown">lll</div>
+	</div>
 <!-- Using form into div make Firefox crazy (page loading does not end) -->
 <!--	<form class="liste_titre" method="POST" action="1.php">
-        <div>line1<input type="hidden" name="cartitem" value="1"></div>
-        <div><label><input type="checkbox" name="hidedetails" value="2"> A checkbox inside a cell</label></div>
-        <div><input name="count" value="4"></div>
-        <div><input type="submit" name="count2" class="button noshadow" value="aaa"></div>
-    </form>
-    <form class="impair" method="POST" action="2.php">
-        <div>line2<input type="hidden" name="cartitem" value="2"></div>
-        <div><select name="hidedetails"><option>aaaaaaaaaaaaaaafd sf sf gfd gfd gs fgdf gaaaa</option><option>gdfs gdf g sdfg dfg fdsg dsfg dfs gdfs gds fgs  gdfdf gd</option></select></div>
-        <div><input name="countb" value="4"></div>
-        <div class="tdlineupdown"><input type="submit" value="xxx" class="button"></div>
-    </form>-->
+		<div>line1<input type="hidden" name="cartitem" value="1"></div>
+		<div><label><input type="checkbox" name="hidedetails" value="2"> A checkbox inside a cell</label></div>
+		<div><input name="count" value="4"></div>
+		<div><input type="submit" name="count2" class="button noshadow" value="aaa"></div>
+	</form>
+	<form class="impair" method="POST" action="2.php">
+		<div>line2<input type="hidden" name="cartitem" value="2"></div>
+		<div><select name="hidedetails"><option>aaaaaaaaaaaaaaafd sf sf gfd gfd gs fgdf gaaaa</option><option>gdfs gdf g sdfg dfg fdsg dsfg dfs gdfs gds fgs  gdfdf gd</option></select></div>
+		<div><input name="countb" value="4"></div>
+		<div class="tdlineupdown"><input type="submit" value="xxx" class="button"></div>
+	</form>-->
 </div>
 
 
 
 
 <?php
-if (!empty($usedolheader))
-{
+if (!empty($usedolheader)) {
 	llxFooter();
 } else { ?>
 </body>

+ 3 - 1
htdocs/public/test/test_forms.php

@@ -1,7 +1,9 @@
 <?php
 //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.
-if (!defined('NOSESSION'))       define('NOSESSION', '1');
+if (!defined('NOSESSION')) {
+	define('NOSESSION', '1');
+}
 
 require '../../main.inc.php';
 include_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';

+ 36 - 12
htdocs/public/test/test_sessionlock.php

@@ -1,21 +1,45 @@
 <?php
-if (!defined('NOREQUIREUSER'))  define('NOREQUIREUSER', '1');
-if (!defined('NOREQUIREDB'))    define('NOREQUIREDB', '1');
-if (!defined('NOREQUIRESOC'))   define('NOREQUIRESOC', '1');
-if (!defined('NOREQUIRETRAN'))  define('NOREQUIRETRAN', '1');
-if (!defined('NOSTYLECHECK'))   define('NOSTYLECHECK', '1'); // Do not check style html tag into posted data
-if (!defined('NOCSRFCHECK'))    define('NOCSRFCHECK', '1'); // Do not check anti CSRF attack test
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Do not check anti POST attack test
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
-if (!defined('NOREQUIREHTML'))  define('NOREQUIREHTML', '1'); // If we don't need to load the html.form.class.php
-if (!defined('NOREQUIREAJAX'))  define('NOREQUIREAJAX', '1'); // Do not load ajax.lib.php library
-if (!defined("NOLOGIN"))        define("NOLOGIN", '1'); // If this page is public (can be called outside logged session)
+if (!defined('NOREQUIREUSER')) {
+	define('NOREQUIREUSER', '1');
+}
+if (!defined('NOREQUIREDB')) {
+	define('NOREQUIREDB', '1');
+}
+if (!defined('NOREQUIRESOC')) {
+	define('NOREQUIRESOC', '1');
+}
+if (!defined('NOREQUIRETRAN')) {
+	define('NOREQUIRETRAN', '1');
+}
+if (!defined('NOSTYLECHECK')) {
+	define('NOSTYLECHECK', '1'); // Do not check style html tag into posted data
+}
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1'); // Do not check anti CSRF attack test
+}
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', '1'); // Do not check anti POST attack test
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1'); // If there is no need to load and show top and left menu
+}
+if (!defined('NOREQUIREHTML')) {
+	define('NOREQUIREHTML', '1'); // If we don't need to load the html.form.class.php
+}
+if (!defined('NOREQUIREAJAX')) {
+	define('NOREQUIREAJAX', '1'); // Do not load ajax.lib.php library
+}
+if (!defined("NOLOGIN")) {
+	define("NOLOGIN", '1'); // If this page is public (can be called outside logged session)
+}
 // If you don't need session management (can't be logged if no session used). You must also set
 // NOCSRFCHECK, NOTOKENRENEWAL, NOLOGIN
 // Disable module with GETPOST('disablemodules') won't work. Variable 'dol_...' will not be set.
 // $_SESSION are then simple vars if sessions are not active.
 // TODO We can close session with session_write_close() as soon as we just need read access everywhere in code.
-if (!defined("NOSESSION"))      define("NOSESSION", '1');
+if (!defined("NOSESSION")) {
+	define("NOSESSION", '1');
+}
 
 print "Legend:<br>\n";
 print 'PHP_SESSION_DISABLED='.PHP_SESSION_DISABLED."<br>\n";

+ 24 - 8
htdocs/public/ticket/create_ticket.php

@@ -22,14 +22,30 @@
  *       \brief      Display public form to add new ticket
  */
 
-if (!defined('NOREQUIREUSER'))  define('NOREQUIREUSER', '1');
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1');
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1');
-if (!defined('NOREQUIREHTML'))  define('NOREQUIREHTML', '1');
-if (!defined('NOLOGIN'))        define("NOLOGIN", 1); // This means this output page does not require to be logged.
-if (!defined('NOCSRFCHECK'))    define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOREQUIREUSER')) {
+	define('NOREQUIREUSER', '1');
+}
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', '1');
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1');
+}
+if (!defined('NOREQUIREHTML')) {
+	define('NOREQUIREHTML', '1');
+}
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1); // This means this output page does not require to be logged.
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 
 require '../../main.inc.php';

+ 19 - 8
htdocs/public/ticket/index.php

@@ -22,17 +22,29 @@
  *       \brief      Public page to add and manage ticket
  */
 
-if (!defined('NOCSRFCHECK'))   define('NOCSRFCHECK', '1');
-if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU', '1');
-if (!defined("NOLOGIN"))       define("NOLOGIN", '1'); // If this page is public (can be called outside logged session)
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOCSRFCHECK')) {
+	define('NOCSRFCHECK', '1');
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1');
+}
+if (!defined("NOLOGIN")) {
+	define("NOLOGIN", '1'); // If this page is public (can be called outside logged session)
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 // For MultiCompany module.
 // Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
 // TODO This should be useless. Because entity must be retrieve from object ref and not from url.
 $entity = (!empty($_GET['entity']) ? (int) $_GET['entity'] : (!empty($_POST['entity']) ? (int) $_POST['entity'] : 1));
-if (is_numeric($entity)) define("DOLENTITY", $entity);
+if (is_numeric($entity)) {
+	define("DOLENTITY", $entity);
+}
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/ticket/class/actions_ticket.class.php';
@@ -57,8 +69,7 @@ $action = GETPOST('action', 'aZ09');
 $form = new Form($db);
 $formticket = new FormTicket($db);
 
-if (empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE))
-{
+if (empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE)) {
 	print $langs->trans('TicketPublicInterfaceForbidden');
 	exit;
 }

+ 13 - 8
htdocs/public/ticket/list.php

@@ -32,8 +32,12 @@ if (!defined('NOREQUIREMENU')) {
 if (!defined("NOLOGIN")) {
 	define("NOLOGIN", '1');
 }
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 // If this page is public (can be called outside logged session)
 
 require '../../main.inc.php';
@@ -174,8 +178,7 @@ llxHeaderTicket($langs->trans("Tickets"), "", 0, 0, $arrayofjs, $arrayofcss);
 
 print '<div class="ticketpublicarealist">';
 
-if ($action == "view_ticketlist")
-{
+if ($action == "view_ticketlist") {
 	print '<br>';
 	if ($display_ticket_list) {
 		// Filters
@@ -295,7 +298,9 @@ if ($action == "view_ticketlist")
 		$limit = $conf->liste_limit;
 
 		$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
-		if (empty($page) || $page == -1) { $page = 0; }     // If $page is not defined, or '' or -1
+		if (empty($page) || $page == -1) {
+			$page = 0;
+		}     // If $page is not defined, or '' or -1
 		$offset = $limit * $page;
 		$pageprev = $page - 1;
 		$pagenext = $page + 1;
@@ -326,8 +331,9 @@ if ($action == "view_ticketlist")
 		$sql .= " type.label as type_label, category.label as category_label, severity.label as severity_label";
 		// Add fields for extrafields
 		if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
-			foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val)
+			foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
 				$sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ", ef.".$key.' as options_'.$key : '');
+			}
 		}
 		$sql .= " FROM ".MAIN_DB_PREFIX."ticket as t";
 		$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_ticket_type as type ON type.code=t.type_code";
@@ -528,8 +534,7 @@ if ($action == "view_ticketlist")
 				print_liste_field_titre($selectedfields, $url_page_current, "", '', '', 'align="right"', $sortfield, $sortorder, 'center maxwidthsearch ');
 				print '</tr>';
 
-				while ($obj = $db->fetch_object($resql))
-				{
+				while ($obj = $db->fetch_object($resql)) {
 					print '<tr class="oddeven">';
 
 					// Date ticket

+ 18 - 25
htdocs/public/ticket/view.php

@@ -33,8 +33,12 @@ if (!defined('NOREQUIREMENU')) {
 if (!defined("NOLOGIN")) {
 	define("NOLOGIN", '1');
 }
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 // If this page is public (can be called outside logged session)
 
 require '../../main.inc.php';
@@ -69,10 +73,8 @@ $object = new ActionsTicket($db);
  * Actions
  */
 
-if ($cancel)
-{
-	if (!empty($backtopage))
-	{
+if ($cancel) {
+	if (!empty($backtopage)) {
 		header("Location: ".$backtopage);
 		exit;
 	}
@@ -104,13 +106,11 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
 		if ($ret && $object->dao->id > 0) {
 			// Check if emails provided is the one of author
 			$emailofticket = CMailFile::getValidAddress($object->dao->origin_email, 2);
-			if ($emailofticket == $email)
-			{
+			if ($emailofticket == $email) {
 				$display_ticket = true;
 				$_SESSION['email_customer'] = $email;
-			}
-			// Check if emails provided is inside list of contacts
-			else {
+			} else {
+				// Check if emails provided is inside list of contacts
 				$contacts = $object->dao->liste_contact(-1, 'external');
 				foreach ($contacts as $contact) {
 					if ($contact['email'] == $email) {
@@ -131,8 +131,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
 				}
 			}
 			// Check if email is email of creator
-			if ($object->dao->fk_user_create > 0)
-			{
+			if ($object->dao->fk_user_create > 0) {
 				$tmpuser = new User($db);
 				$tmpuser->fetch($object->dao->fk_user_create);
 				if ($email == $tmpuser->email) {
@@ -141,8 +140,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
 				}
 			}
 			// Check if email is email of creator
-			if ($object->dao->fk_user_assign > 0 && $object->dao->fk_user_assign != $object->dao->fk_user_create)
-			{
+			if ($object->dao->fk_user_assign > 0 && $object->dao->fk_user_assign != $object->dao->fk_user_create) {
 				$tmpuser = new User($db);
 				$tmpuser->fetch($object->dao->fk_user_assign);
 				if ($email == $tmpuser->email) {
@@ -157,8 +155,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
 		}
 	}
 
-	if (!$error && $action == 'confirm_public_close' && $display_ticket)
-	{
+	if (!$error && $action == 'confirm_public_close' && $display_ticket) {
 		if ($object->dao->close($user)) {
 			setEventMessages($langs->trans('TicketMarkedAsClosed'), null, 'mesgs');
 
@@ -171,24 +168,21 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
 		}
 	}
 
-	if (!$error && $action == "add_message" && $display_ticket && GETPOSTISSET('btn_add_message'))
-	{
+	if (!$error && $action == "add_message" && $display_ticket && GETPOSTISSET('btn_add_message')) {
 		// TODO Add message...
 		$ret = $object->dao->newMessage($user, $action, 0, 1);
 
 
 
 
-		if (!$error)
-		{
+		if (!$error) {
 			$action = 'view_ticket';
 		}
 	}
 
 	if ($error || $errors) {
 		setEventMessages($object->error, $object->errors, 'errors');
-		if ($action == "add_message")
-		{
+		if ($action == "add_message") {
 			$action = 'presend';
 		} else {
 			$action = '';
@@ -228,8 +222,7 @@ llxHeaderTicket($langs->trans("Tickets"), "", 0, 0, $arrayofjs, $arrayofcss);
 print '<div class="ticketpublicarea">';
 
 if ($action == "view_ticket" || $action == "presend" || $action == "close" || $action == "confirm_public_close") {
-	if ($display_ticket)
-	{
+	if ($display_ticket) {
 		// Confirmation close
 		if ($action == 'close') {
 			print $form->formconfirm($_SERVER["PHP_SELF"]."?track_id=".$track_id, $langs->trans("CloseATicket"), $langs->trans("ConfirmCloseAticket"), "confirm_public_close", '', '', 1);

+ 49 - 43
htdocs/public/website/index.php

@@ -30,14 +30,30 @@
  *		\brief      Wrapper to output pages when website is powered by Dolibarr instead of a native web server
  */
 
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', 1); // Disables token renewal
-if (!defined('NOLOGIN'))        define("NOLOGIN", 1);
-if (!defined('NOCSRFCHECK'))    define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1');
-if (!defined('NOREQUIREHTML'))  define('NOREQUIREHTML', '1');
-if (!defined('NOREQUIREAJAX'))  define('NOREQUIREAJAX', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', 1); // Disables token renewal
+}
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1);
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1');
+}
+if (!defined('NOREQUIREHTML')) {
+	define('NOREQUIREHTML', '1');
+}
+if (!defined('NOREQUIREAJAX')) {
+	define('NOREQUIREAJAX', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 /**
  * Header empty
@@ -69,18 +85,15 @@ $accessallowed = 1;
 $type = '';
 
 
-if (empty($pageid))
-{
+if (empty($pageid)) {
 	require_once DOL_DOCUMENT_ROOT.'/website/class/website.class.php';
 	require_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php';
 
 	$object = new Website($db);
 	$object->fetch(0, $websitekey);
 
-	if (empty($object->id))
-	{
-		if (empty($pageid))
-		{
+	if (empty($object->id)) {
+		if (empty($pageid)) {
 			// Return header 404
 			header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
 
@@ -91,57 +104,52 @@ if (empty($pageid))
 
 	$objectpage = new WebsitePage($db);
 
-	if ($pageref)
-	{
+	if ($pageref) {
 		$result = $objectpage->fetch(0, $object->id, $pageref);
-		if ($result > 0)
-		{
+		if ($result > 0) {
 			$pageid = $objectpage->id;
-		} elseif ($result == 0)
-		{
+		} elseif ($result == 0) {
 			// Page not found from ref=pageurl, we try using alternative alias
 			$result = $objectpage->fetch(0, $object->id, null, $pageref);
-			if ($result > 0)
-			{
+			if ($result > 0) {
 				$pageid = $objectpage->id;
 			}
 		}
 	} else {
-		if ($object->fk_default_home > 0)
-		{
+		if ($object->fk_default_home > 0) {
 			$result = $objectpage->fetch($object->fk_default_home);
-			if ($result > 0)
-			{
+			if ($result > 0) {
 				$pageid = $objectpage->id;
 			}
 		}
 
-		if (empty($pageid))
-		{
+		if (empty($pageid)) {
 			$array = $objectpage->fetchAll($object->id); // TODO Can filter on container of type pages only ?
-			if (is_array($array) && count($array) > 0)
-			{
+			if (is_array($array) && count($array) > 0) {
 				$firstrep = reset($array);
 				$pageid = $firstrep->id;
 			}
 		}
 	}
 }
-if (empty($pageid))
-{
+if (empty($pageid)) {
 	// Return header 404
 	header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
 
 	$langs->load("website");
 
-	if (!GETPOSTISSET('pageref')) print $langs->trans("PreviewOfSiteNotYetAvailable", $websitekey);
+	if (!GETPOSTISSET('pageref')) {
+		print $langs->trans("PreviewOfSiteNotYetAvailable", $websitekey);
+	}
 
 	include DOL_DOCUMENT_ROOT.'/public/error-404.php';
 	exit;
 }
 
 $appli = constant('DOL_APPLICATION_TITLE');
-if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $appli = $conf->global->MAIN_APPLICATION_TITLE;
+if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
+	$appli = $conf->global->MAIN_APPLICATION_TITLE;
+}
 
 
 
@@ -155,8 +163,7 @@ if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $appli = $conf->global->MAIN_
 // Security: Delete string ../ into $original_file
 global $dolibarr_main_data_root;
 
-if ($pageid == 'css')   // No more used ?
-{
+if ($pageid == 'css') {   // No more used ?
 	header('Content-type: text/css');
 	// Important: Following code is to avoid page request by browser and PHP CPU at each Dolibarr page access.
 	//if (empty($dolibarr_nocache)) header('Cache-Control: max-age=3600, public, must-revalidate');
@@ -172,16 +179,14 @@ $refname = basename(dirname($original_file)."/");
 
 // Security:
 // Limite acces si droits non corrects
-if (!$accessallowed)
-{
+if (!$accessallowed) {
 	accessforbidden();
 }
 
 // Security:
 // On interdit les remontees de repertoire ainsi que les pipe dans
 // les noms de fichiers.
-if (preg_match('/\.\./', $original_file) || preg_match('/[<>|]/', $original_file))
-{
+if (preg_match('/\.\./', $original_file) || preg_match('/[<>|]/', $original_file)) {
 	dol_syslog("Refused to deliver file ".$original_file);
 	$file = basename($original_file); // Do no show plain path of original_file in shown error message
 	dol_print_error(0, $langs->trans("ErrorFileNameInvalid", $file));
@@ -197,8 +202,7 @@ dol_syslog("index.php include $original_file $filename content-type=$type");
 $original_file_osencoded = dol_osencode($original_file); // New file name encoded in OS encoding charset
 
 // This test if file exists should be useless. We keep it to find bug more easily
-if (!file_exists($original_file_osencoded))
-{
+if (!file_exists($original_file_osencoded)) {
 	// Return header 404
 	header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
 
@@ -215,4 +219,6 @@ define('USEDOLIBARRSERVER', 1);
 print '<!-- Page content '.$original_file.' rendered with DOLIBARR SERVER : Html with CSS link and html header + Body that was saved into tpl dir -->'."\n";
 include_once $original_file_osencoded; // Note: The pageXXX.tpl.php showed here contains a formatage with dolWebsiteOutput() at end of page.
 
-if (is_object($db)) $db->close();
+if (is_object($db)) {
+	$db->close();
+}

+ 45 - 30
htdocs/public/website/styles.css.php

@@ -21,14 +21,30 @@
  *		\brief      Page to output style page. Called with <link rel="stylesheet" href="styles.css.php?websiteid=123" type="text/css" />
  */
 
-if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', 1); // Disables token renewal
-if (!defined('NOLOGIN'))        define("NOLOGIN", 1);
-if (!defined('NOCSRFCHECK'))    define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
-if (!defined('NOREQUIREMENU'))  define('NOREQUIREMENU', '1');
-if (!defined('NOREQUIREHTML'))  define('NOREQUIREHTML', '1');
-if (!defined('NOREQUIREAJAX'))  define('NOREQUIREAJAX', '1');
-if (!defined('NOIPCHECK'))		define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
-if (!defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1');
+if (!defined('NOTOKENRENEWAL')) {
+	define('NOTOKENRENEWAL', 1); // Disables token renewal
+}
+if (!defined('NOLOGIN')) {
+	define("NOLOGIN", 1);
+}
+if (!defined('NOCSRFCHECK')) {
+	define("NOCSRFCHECK", 1); // We accept to go on this page from external web site.
+}
+if (!defined('NOREQUIREMENU')) {
+	define('NOREQUIREMENU', '1');
+}
+if (!defined('NOREQUIREHTML')) {
+	define('NOREQUIREHTML', '1');
+}
+if (!defined('NOREQUIREAJAX')) {
+	define('NOREQUIREAJAX', '1');
+}
+if (!defined('NOIPCHECK')) {
+	define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip
+}
+if (!defined('NOBROWSERNOTIF')) {
+	define('NOBROWSERNOTIF', '1');
+}
 
 /**
  * Header empty
@@ -65,18 +81,18 @@ $type = '';
  */
 
 $appli = constant('DOL_APPLICATION_TITLE');
-if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $appli = $conf->global->MAIN_APPLICATION_TITLE;
+if (!empty($conf->global->MAIN_APPLICATION_TITLE)) {
+	$appli = $conf->global->MAIN_APPLICATION_TITLE;
+}
 
 //print 'Directory with '.$appli.' websites.<br>';
 
-if (empty($pageid))
-{
+if (empty($pageid)) {
 	require_once DOL_DOCUMENT_ROOT.'/website/class/website.class.php';
 	require_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php';
 
 	$object = new Website($db);
-	if ($websiteid)
-	{
+	if ($websiteid) {
 		$object->fetch($websiteid);
 		$website = $object->ref;
 	} else {
@@ -85,21 +101,21 @@ if (empty($pageid))
 
 	$objectpage = new WebsitePage($db);
 	/* Not required for CSS file
-    $array=$objectpage->fetchAll($object->id);
+	$array=$objectpage->fetchAll($object->id);
 
-    if (is_array($array) && count($array) > 0)
-    {
-        $firstrep=reset($array);
-        $pageid=$firstrep->id;
-    }
-    */
+	if (is_array($array) && count($array) > 0)
+	{
+		$firstrep=reset($array);
+		$pageid=$firstrep->id;
+	}
+	*/
 }
 /* Not required for CSS file
 if (empty($pageid))
 {
-    $langs->load("website");
-    print $langs->trans("PreviewOfSiteNotYetAvailable");
-    exit;
+	$langs->load("website");
+	print $langs->trans("PreviewOfSiteNotYetAvailable");
+	exit;
 }
 */
 
@@ -113,16 +129,14 @@ $refname = basename(dirname($original_file)."/");
 
 // Security:
 // Limite acces si droits non corrects
-if (!$accessallowed)
-{
+if (!$accessallowed) {
 	accessforbidden();
 }
 
 // Security:
 // On interdit les remontees de repertoire ainsi que les pipe dans
 // les noms de fichiers.
-if (preg_match('/\.\./', $original_file) || preg_match('/[<>|]/', $original_file))
-{
+if (preg_match('/\.\./', $original_file) || preg_match('/[<>|]/', $original_file)) {
 	dol_syslog("Refused to deliver file ".$original_file);
 	$file = basename($original_file); // Do no show plain path of original_file in shown error message
 	dol_print_error(0, $langs->trans("ErrorFileNameInvalid", $file));
@@ -138,8 +152,7 @@ dol_syslog("styles.css.php include $original_file $filename content-type=$type")
 $original_file_osencoded = dol_osencode($original_file); // New file name encoded in OS encoding charset
 
 // This test if file exists should be useless. We keep it to find bug more easily
-if (!file_exists($original_file_osencoded))
-{
+if (!file_exists($original_file_osencoded)) {
 	$langs->load("website");
 	print $langs->trans("RequestedPageHasNoContentYet", $pageid);
 	//dol_print_error(0,$langs->trans("ErrorFileDoesNotExists",$original_file));
@@ -153,4 +166,6 @@ print '/* Page content '.$original_file.' : CSS content that was saved into tpl
 require_once $original_file_osencoded;
 
 
-if (is_object($db)) $db->close();
+if (is_object($db)) {
+	$db->close();
+}

Some files were not shown because too many files changed in this diff