Merge remote-tracking branch 'upstream/develop' into patch-10
This commit is contained in:
commit
dfc1153bb7
@ -15,6 +15,13 @@ For developers:
|
|||||||
* Code changes to be more compatible with PSR2
|
* Code changes to be more compatible with PSR2
|
||||||
* Removed trigger USER_LOGOUT, USER_LOGIN, USER_LOGIN_FAILED (Some hooks are already dedicated for that)
|
* Removed trigger USER_LOGOUT, USER_LOGIN, USER_LOGIN_FAILED (Some hooks are already dedicated for that)
|
||||||
|
|
||||||
|
WARNING:
|
||||||
|
|
||||||
|
Following changes may create regressions for some external modules, but were necessary to make Dolibarr better:
|
||||||
|
* If you use some links like viewimages.php?modulepart=mycompany&file=... in you external modules, you must
|
||||||
|
relace them with links like viewimages.php?modulepart=mycompany&file=logos/... (note that link change only for
|
||||||
|
modulepart=mycompany that now works like others).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
***** ChangeLog for 8.0.1 compared to 8.0.0 *****
|
***** ChangeLog for 8.0.1 compared to 8.0.0 *****
|
||||||
|
|||||||
@ -150,11 +150,13 @@ function dolWebsiteOutput($content)
|
|||||||
$nbrep=0;
|
$nbrep=0;
|
||||||
if (! $symlinktomediaexists)
|
if (! $symlinktomediaexists)
|
||||||
{
|
{
|
||||||
$content=preg_replace('/(<script[^>]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\document.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(<script[^>]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
||||||
|
|
||||||
$content=preg_replace('/(<a[^>]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/viewimage.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(<a[^>]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
||||||
$content=preg_replace('/(<img[^>]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/viewimage.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(<img[^>]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
||||||
$content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)modulepart=medias([^\)]*)file=([^\)]*)(["\']?\))/', '\1/viewimage.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)modulepart=medias([^\)]*)file=([^\)]*)(["\']?\))/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep);
|
||||||
|
|
||||||
|
$content=preg_replace('/(<img[^>]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=mycompany([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=mycompany\3file=\4\5', $content, -1, $nbrep);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -163,6 +165,8 @@ function dolWebsiteOutput($content)
|
|||||||
$content=preg_replace('/(<a[^>]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(<a[^>]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep);
|
||||||
$content=preg_replace('/(<img[^>]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(<img[^>]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep);
|
||||||
$content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)modulepart=medias([^\)]*)file=([^\)]*)(["\']?\))/', '\1medias/\4\5', $content, -1, $nbrep);
|
$content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)modulepart=medias([^\)]*)file=([^\)]*)(["\']?\))/', '\1medias/\4\5', $content, -1, $nbrep);
|
||||||
|
|
||||||
|
$content=preg_replace('/(<img[^>]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=mycompany([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=mycompany\3file=\4\5', $content, -1, $nbrep);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -612,22 +616,24 @@ function dolSavePageContent($filetpl, $object, $objectpage)
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Save content of the index.php page
|
* Save content of the index.php and wrapper.php page
|
||||||
*
|
*
|
||||||
* @param string $pathofwebsite Path of website root
|
* @param string $pathofwebsite Path of website root
|
||||||
* @param string $fileindex Full path of file index.php
|
* @param string $fileindex Full path of file index.php
|
||||||
* @param string $filetpl File tpl to index.php page redirect to
|
* @param string $filetpl File tpl to index.php page redirect to
|
||||||
|
* @param string $fileindex Full path of file wrapper.php
|
||||||
* @return boolean True if OK
|
* @return boolean True if OK
|
||||||
*/
|
*/
|
||||||
function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl)
|
function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper)
|
||||||
{
|
{
|
||||||
global $conf;
|
global $conf;
|
||||||
|
|
||||||
$result=0;
|
$result1=false;
|
||||||
|
$result2=false;
|
||||||
|
|
||||||
dol_mkdir($pathofwebsite);
|
dol_mkdir($pathofwebsite);
|
||||||
dol_delete_file($fileindex);
|
|
||||||
|
|
||||||
|
dol_delete_file($fileindex);
|
||||||
$indexcontent = '<?php'."\n";
|
$indexcontent = '<?php'."\n";
|
||||||
$indexcontent.= "// BEGIN PHP File generated to provide an index.php as Home Page or alias redirector - DO NOT MODIFY - It is just a generated wrapper.\n";
|
$indexcontent.= "// BEGIN PHP File generated to provide an index.php as Home Page or alias redirector - DO NOT MODIFY - It is just a generated wrapper.\n";
|
||||||
$indexcontent.= '$websitekey=basename(dirname(__FILE__));'."\n";
|
$indexcontent.= '$websitekey=basename(dirname(__FILE__));'."\n";
|
||||||
@ -639,11 +645,25 @@ function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl)
|
|||||||
$indexcontent.= "}\n";
|
$indexcontent.= "}\n";
|
||||||
$indexcontent.= "include_once './".basename($filetpl)."'\n";
|
$indexcontent.= "include_once './".basename($filetpl)."'\n";
|
||||||
$indexcontent.= '// END PHP ?>'."\n";
|
$indexcontent.= '// END PHP ?>'."\n";
|
||||||
$result = file_put_contents($fileindex, $indexcontent);
|
$result1 = file_put_contents($fileindex, $indexcontent);
|
||||||
if (! empty($conf->global->MAIN_UMASK))
|
if (! empty($conf->global->MAIN_UMASK))
|
||||||
@chmod($fileindex, octdec($conf->global->MAIN_UMASK));
|
@chmod($fileindex, octdec($conf->global->MAIN_UMASK));
|
||||||
|
|
||||||
return $result;
|
dol_delete_file($filewrapper);
|
||||||
|
$wrappercontent = '<?php'."\n";
|
||||||
|
$wrappercontent.= "// BEGIN PHP File generated to provide a wrapper.php - DO NOT MODIFY - It is just a generated wrapper.\n";
|
||||||
|
$wrappercontent.= '$websitekey=basename(dirname(__FILE__));'."\n";
|
||||||
|
$wrappercontent.= "if (! defined('USEDOLIBARRSERVER')) { require_once './master.inc.php'; } // Load master if not already loaded\n";
|
||||||
|
$wrappercontent.= '$original_file=str_replace("../","/", GETPOST("file","alpha"));'."\n";
|
||||||
|
$wrappercontent.= 'if ($_GET["modulepart"] == "mycompany" && preg_match(\'/^\/?logos\//\', $original_file)) readfile(dol_osencode($conf->mycompany->dir_output."/".$original_file));'."\n";
|
||||||
|
$wrappercontent.= "else print 'Bad value for modulepart or file';\n";
|
||||||
|
$wrappercontent.= 'if (is_object($db)) $db->close();'."\n";
|
||||||
|
$wrappercontent.= '// END PHP ?>'."\n";
|
||||||
|
$result2 = file_put_contents($filewrapper, $wrappercontent);
|
||||||
|
if (! empty($conf->global->MAIN_UMASK))
|
||||||
|
@chmod($filewrapper, octdec($conf->global->MAIN_UMASK));
|
||||||
|
|
||||||
|
return ($result1 && $result2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1023,8 +1023,10 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard'
|
|||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
print $langs->trans("Remote");
|
print $langs->trans("Remote");
|
||||||
|
//if ($src->cvc_check == 'fail') print ' - CVC check fail';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
|
//var_dump($src);
|
||||||
print '';
|
print '';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td align="right" class="nowraponall">';
|
print '<td align="right" class="nowraponall">';
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2016-2017 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2016-2018 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -140,6 +140,7 @@ $filerobot=$pathofwebsite.'/robots.txt';
|
|||||||
$filehtaccess=$pathofwebsite.'/.htaccess';
|
$filehtaccess=$pathofwebsite.'/.htaccess';
|
||||||
$filetpl=$pathofwebsite.'/page'.$pageid.'.tpl.php';
|
$filetpl=$pathofwebsite.'/page'.$pageid.'.tpl.php';
|
||||||
$fileindex=$pathofwebsite.'/index.php';
|
$fileindex=$pathofwebsite.'/index.php';
|
||||||
|
$filewrapper=$pathofwebsite.'/wrapper.php';
|
||||||
|
|
||||||
// Define $urlwithroot
|
// Define $urlwithroot
|
||||||
$urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root));
|
$urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root));
|
||||||
@ -981,7 +982,7 @@ if ($action == 'setashome')
|
|||||||
|
|
||||||
// Generate the index.php page to be the home page
|
// Generate the index.php page to be the home page
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
$result = dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl);
|
$result = dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper);
|
||||||
|
|
||||||
if ($result) setEventMessages($langs->trans("Saved"), null, 'mesgs');
|
if ($result) setEventMessages($langs->trans("Saved"), null, 'mesgs');
|
||||||
else setEventMessages('Failed to write file '.$fileindex, null, 'errors');
|
else setEventMessages('Failed to write file '.$fileindex, null, 'errors');
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user