diff --git a/htdocs/comm/action/fiche.php b/htdocs/comm/action/fiche.php
index ff73c6ee38a..aaba6d94455 100644
--- a/htdocs/comm/action/fiche.php
+++ b/htdocs/comm/action/fiche.php
@@ -460,7 +460,7 @@ if ($action == 'create')
print '
| '.$langs->trans("DateActionStart").' | ';
diff --git a/htdocs/comm/action/index.php b/htdocs/comm/action/index.php
index 3bcac38aaba..75d25216b81 100644
--- a/htdocs/comm/action/index.php
+++ b/htdocs/comm/action/index.php
@@ -746,11 +746,13 @@ if (! is_array($theme_datacolor)) $theme_datacolor=array(array(120,130,150), arr
if (empty($action) || $action == 'show_month') // View by month
{
$newparam=$param; // newparam is for birthday links
+ $newparam=preg_replace('/showbirthday=/i','showbirthday_=',$newparam); // To avoid replacement when replace day= is done
$newparam=preg_replace('/action=show_month&?/i','',$newparam);
$newparam=preg_replace('/action=show_week&?/i','',$newparam);
- $newparam=preg_replace('/day=[0-9][0-9]&?/i','',$newparam);
- $newparam=preg_replace('/month=[0-9][0-9]&?/i','',$newparam);
+ $newparam=preg_replace('/day=[0-9]+&?/i','',$newparam);
+ $newparam=preg_replace('/month=[0-9]+&?/i','',$newparam);
$newparam=preg_replace('/year=[0-9]+&?/i','',$newparam);
+ $newparam=preg_replace('/showbirthday_=/i','showbirthday=',$newparam); // Restore correct parameter
echo '';
echo ' ';
$i=0;
@@ -812,11 +814,13 @@ if (empty($action) || $action == 'show_month') // View by month
elseif ($action == 'show_week') // View by week
{
$newparam=$param; // newparam is for birthday links
+ $newparam=preg_replace('/showbirthday=/i','showbirthday_=',$newparam); // To avoid replacement when replace day= is done
$newparam=preg_replace('/action=show_month&?/i','',$newparam);
$newparam=preg_replace('/action=show_week&?/i','',$newparam);
- $newparam=preg_replace('/day=[0-9][0-9]&?/i','',$newparam);
- $newparam=preg_replace('/month=[0-9][0-9]&?/i','',$newparam);
+ $newparam=preg_replace('/day=[0-9]+&?/i','',$newparam);
+ $newparam=preg_replace('/month=[0-9]+&?/i','',$newparam);
$newparam=preg_replace('/year=[0-9]+&?/i','',$newparam);
+ $newparam=preg_replace('/showbirthday_=/i','showbirthday=',$newparam); // Restore correct parameter
echo '';
echo ' ';
$i=0;
@@ -868,9 +872,6 @@ else // View by day
$newparam=$param; // newparam is for birthday links
$newparam=preg_replace('/action=show_month&?/i','',$newparam);
$newparam=preg_replace('/action=show_week&?/i','',$newparam);
- $newparam=preg_replace('/day=[0-9][0-9]&?/i','',$newparam);
- $newparam=preg_replace('/month=[0-9][0-9]&?/i','',$newparam);
- $newparam=preg_replace('/year=[0-9]+&?/i','',$newparam);
// Code to show just one day
$style='cal_current_month';
$today=0;
diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php
index c1e6b32ba61..9cba56eb112 100644
--- a/htdocs/core/lib/admin.lib.php
+++ b/htdocs/core/lib/admin.lib.php
@@ -253,7 +253,7 @@ function run_sql($sqlfile,$silent=1,$entity='',$usesavepoint=1,$handler='',$oker
dol_syslog('Admin.lib::run_sql Request '.($i+1).' sql='.$newsql, LOG_DEBUG);
// Replace for encrypt data
- if (preg_match_all('/__ENCRYPT\(\'([^\,]+)\'\)__/i',$newsql,$reg))
+ if (preg_match_all('/__ENCRYPT\(\'([A-Za-z0-9_]+)\'\)__/i',$newsql,$reg))
{
$num=count($reg[0]);
@@ -266,7 +266,7 @@ function run_sql($sqlfile,$silent=1,$entity='',$usesavepoint=1,$handler='',$oker
}
// Replace for decrypt data
- if (preg_match_all('/__DECRYPT\(\'([^\,]+)\'\)__/i',$newsql,$reg))
+ if (preg_match_all('/__DECRYPT\(\'([A-Za-z0-9_]+)\'\)__/i',$newsql,$reg))
{
$num=count($reg[0]);
|