mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2026-02-09 01:12:33 +01:00
Merge remote-tracking branch 'upstream/develop' into patch-10
This commit is contained in:
@@ -15,6 +15,13 @@ For developers:
|
||||
* Code changes to be more compatible with PSR2
|
||||
* 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 *****
|
||||
|
||||
@@ -150,11 +150,13 @@ function dolWebsiteOutput($content)
|
||||
$nbrep=0;
|
||||
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('/(<img[^>]*src=")[^\"]*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/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/wrapper.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
|
||||
{
|
||||
@@ -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('/(<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('/(<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 $fileindex Full path of file index.php
|
||||
* @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
|
||||
*/
|
||||
function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl)
|
||||
function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$result=0;
|
||||
$result1=false;
|
||||
$result2=false;
|
||||
|
||||
dol_mkdir($pathofwebsite);
|
||||
dol_delete_file($fileindex);
|
||||
|
||||
dol_delete_file($fileindex);
|
||||
$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.= '$websitekey=basename(dirname(__FILE__));'."\n";
|
||||
@@ -639,11 +645,25 @@ function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl)
|
||||
$indexcontent.= "}\n";
|
||||
$indexcontent.= "include_once './".basename($filetpl)."'\n";
|
||||
$indexcontent.= '// END PHP ?>'."\n";
|
||||
$result = file_put_contents($fileindex, $indexcontent);
|
||||
$result1 = file_put_contents($fileindex, $indexcontent);
|
||||
if (! empty($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 $langs->trans("Remote");
|
||||
//if ($src->cvc_check == 'fail') print ' - CVC check fail';
|
||||
print '</td>';
|
||||
print '<td>';
|
||||
//var_dump($src);
|
||||
print '';
|
||||
print '</td>';
|
||||
print '<td align="right" class="nowraponall">';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?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
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@@ -140,6 +140,7 @@ $filerobot=$pathofwebsite.'/robots.txt';
|
||||
$filehtaccess=$pathofwebsite.'/.htaccess';
|
||||
$filetpl=$pathofwebsite.'/page'.$pageid.'.tpl.php';
|
||||
$fileindex=$pathofwebsite.'/index.php';
|
||||
$filewrapper=$pathofwebsite.'/wrapper.php';
|
||||
|
||||
// Define $urlwithroot
|
||||
$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
|
||||
//-------------------------------------------------
|
||||
$result = dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl);
|
||||
$result = dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper);
|
||||
|
||||
if ($result) setEventMessages($langs->trans("Saved"), null, 'mesgs');
|
||||
else setEventMessages('Failed to write file '.$fileindex, null, 'errors');
|
||||
|
||||
Reference in New Issue
Block a user