From d9008cd3021cce01ab8ad4ac012bf9731f225740 Mon Sep 17 00:00:00 2001 From: Regis Houssin <regis.houssin@capnetworks.com> Date: Fri, 1 Sep 2017 08:20:33 +0200 Subject: [PATCH] Fix: missing $dolibarrdataroot value --- htdocs/admin/modules.php | 186 +++++++++++++++++++-------------------- 1 file changed, 91 insertions(+), 95 deletions(-) diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index a59d6fca3bb..6b290ab8f07 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -843,114 +843,110 @@ if ($mode == 'marketplace') if ($mode == 'deploy') { - dol_fiche_head($head, $mode, '', -1); + dol_fiche_head($head, $mode, '', -1); + $dolibarrdataroot=preg_replace('/([\\/]+)$/i','',DOL_DATA_ROOT); + $allowonlineinstall=true; + $allowfromweb=1; + if (dol_is_file($dolibarrdataroot.'/installmodules.lock')) $allowonlineinstall=false; - $allowonlineinstall=true; - $allowfromweb=1; - if (dol_is_file($dolibarrdataroot.'/installmodules.lock')) $allowonlineinstall=false; + $fullurl='<a href="'.$urldolibarrmodules.'" target="_blank">'.$urldolibarrmodules.'</a>'; + $message=''; + if (! empty($allowonlineinstall)) + { + if (! in_array('/custom',explode(',',$dolibarr_main_url_root_alt))) + { + $message=info_admin($langs->trans("ConfFileMustContainCustom", DOL_DOCUMENT_ROOT.'/custom', DOL_DOCUMENT_ROOT)); + $allowfromweb=-1; + } + else + { + if ($dirins_ok) + { + if (! is_writable(dol_osencode($dirins))) + { + $langs->load("errors"); + $message=info_admin($langs->trans("ErrorFailedToWriteInDir",$dirins)); + $allowfromweb=0; + } + } + else + { + $message=info_admin($langs->trans("NotExistsDirect",$dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample")); + $allowfromweb=0; + } + } + } + else + { + $message=info_admin($langs->trans("InstallModuleFromWebHasBeenDisabledByFile",$dolibarrdataroot.'/installmodules.lock')); + $allowfromweb=0; + } - $fullurl='<a href="'.$urldolibarrmodules.'" target="_blank">'.$urldolibarrmodules.'</a>'; - $message=''; - if (! empty($allowonlineinstall)) - { - if (! in_array('/custom',explode(',',$dolibarr_main_url_root_alt))) - { - $message=info_admin($langs->trans("ConfFileMustContainCustom", DOL_DOCUMENT_ROOT.'/custom', DOL_DOCUMENT_ROOT)); - $allowfromweb=-1; - } - else - { - if ($dirins_ok) - { - if (! is_writable(dol_osencode($dirins))) - { - $langs->load("errors"); - $message=info_admin($langs->trans("ErrorFailedToWriteInDir",$dirins)); - $allowfromweb=0; - } - } - else - { + if ($allowfromweb < 1) + { + print $langs->trans("SomethingMakeInstallFromWebNotPossible"); + print $message; + //print $langs->trans("SomethingMakeInstallFromWebNotPossible2"); + print '<br>'; + } - $message=info_admin($langs->trans("NotExistsDirect",$dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample")); - $allowfromweb=0; - } - } - } - else - { - $message=info_admin($langs->trans("InstallModuleFromWebHasBeenDisabledByFile",$dolibarrdataroot.'/installmodules.lock')); - $allowfromweb=0; - } + print '<br>'; - if ($allowfromweb < 1) - { - print $langs->trans("SomethingMakeInstallFromWebNotPossible"); - print $message; - //print $langs->trans("SomethingMakeInstallFromWebNotPossible2"); - print '<br>'; - } + if ($allowfromweb >= 0) + { + if ($allowfromweb == 1) + { + //print $langs->trans("ThisIsProcessToFollow").'<br>'; + } + else + { + print $langs->trans("ThisIsAlternativeProcessToFollow").'<br>'; + print '<b>'.$langs->trans("StepNb",1).'</b>: '; + print $langs->trans("FindPackageFromWebSite",$fullurl).'<br>'; + print '<b>'.$langs->trans("StepNb",2).'</b>: '; + print $langs->trans("DownloadPackageFromWebSite",$fullurl).'<br>'; + print '<b>'.$langs->trans("StepNb",3).'</b>: '; + } - print '<br>'; + if ($allowfromweb == 1) + { + print $langs->trans("UnpackPackageInModulesRoot",$dirins).'<br>'; - if ($allowfromweb >= 0) - { - if ($allowfromweb == 1) - { - //print $langs->trans("ThisIsProcessToFollow").'<br>'; - } - else - { - print $langs->trans("ThisIsAlternativeProcessToFollow").'<br>'; - print '<b>'.$langs->trans("StepNb",1).'</b>: '; - print $langs->trans("FindPackageFromWebSite",$fullurl).'<br>'; - print '<b>'.$langs->trans("StepNb",2).'</b>: '; - print $langs->trans("DownloadPackageFromWebSite",$fullurl).'<br>'; - print '<b>'.$langs->trans("StepNb",3).'</b>: '; - } - - if ($allowfromweb == 1) - { - print $langs->trans("UnpackPackageInModulesRoot",$dirins).'<br>'; - - print '<br>'; - - print '<form enctype="multipart/form-data" method="POST" class="noborder" action="'.$_SERVER["PHP_SELF"].'" name="forminstall">'; - print '<input type="hidden" name="action" value="install">'; - print '<input type="hidden" name="mode" value="deploy">'; - print $langs->trans("YouCanSubmitFile").' <input type="file" name="fileinstall"> '; - print '<input type="submit" name="send" value="'.dol_escape_htmltag($langs->trans("Send")).'" class="button">'; - print '</form>'; - - print '<br>'; - print '<br>'; - - print '<div class="center"><div class="logo_setup"></div></div>'; - } - else - { - print $langs->trans("UnpackPackageInModulesRoot",$dirins).'<br>'; - print '<b>'.$langs->trans("StepNb",4).'</b>: '; - print $langs->trans("SetupIsReadyForUse").'<br>'; - } - } + print '<br>'; + print '<form enctype="multipart/form-data" method="POST" class="noborder" action="'.$_SERVER["PHP_SELF"].'" name="forminstall">'; + print '<input type="hidden" name="action" value="install">'; + print '<input type="hidden" name="mode" value="deploy">'; + print $langs->trans("YouCanSubmitFile").' <input type="file" name="fileinstall"> '; + print '<input type="submit" name="send" value="'.dol_escape_htmltag($langs->trans("Send")).'" class="button">'; + print '</form>'; - if (! empty($result['return'])) - { - print '<br>'; + print '<br>'; + print '<br>'; - foreach($result['return'] as $value) - { - echo $value.'<br>'; - } - } + print '<div class="center"><div class="logo_setup"></div></div>'; + } + else + { + print $langs->trans("UnpackPackageInModulesRoot",$dirins).'<br>'; + print '<b>'.$langs->trans("StepNb",4).'</b>: '; + print $langs->trans("SetupIsReadyForUse").'<br>'; + } + } - dol_fiche_end(); -} + if (! empty($result['return'])) + { + print '<br>'; + foreach($result['return'] as $value) + { + echo $value.'<br>'; + } + } + dol_fiche_end(); +} llxFooter(); -- GitLab