* * 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 * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ /** * \file htdocs/admin/dav.php * \ingroup dav * \brief Page to setup DAV server */ // Load Dolibarr environment require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT.'/dav/dav.lib.php'; // Load translation files required by the page $langs->loadLangs(array("admin", "other", "agenda")); if (!$user->admin) { accessforbidden(); } // Parameters $action = GETPOST('action', 'aZ09'); $backtopage = GETPOST('backtopage', 'alpha'); if (empty($action)) { $action = 'edit'; } $arrayofparameters = array( 'DAV_RESTICT_ON_IP'=>array('css'=>'minwidth200', 'enabled'=>1), 'DAV_ALLOW_PRIVATE_DIR'=>array('css'=>'minwidth200', 'enabled'=>2), 'DAV_ALLOW_PUBLIC_DIR'=>array('css'=>'minwidth200', 'enabled'=>1), 'DAV_ALLOW_ECM_DIR'=>array('css'=>'minwidth200', 'enabled'=>isModEnabled('ecm')) ); // To fix when dire does not exists dol_mkdir($conf->dav->dir_output.'/temp'); dol_mkdir($conf->dav->dir_output.'/public'); dol_mkdir($conf->dav->dir_output.'/private'); /* * Actions */ include DOL_DOCUMENT_ROOT.'/core/actions_setmoduleoptions.inc.php'; if ($action == 'update') { $action = 'edit'; } /* * View */ $help_url = 'EN:Module_DAV'; llxHeader('', $langs->trans("DAVSetup"), $help_url, '', 0, 0, '', '', '', 'mod-admin page-dav'); $linkback = ''.$langs->trans("BackToModuleList").''; print load_fiche_titre($langs->trans("DAVSetup"), $linkback, 'title_setup'); print '
'; print ''; $head = dav_admin_prepare_head(); print dol_get_fiche_head($head, 'webdav', '', -1, ''); if ($action == 'edit') { print ''; print ''; print ''; print ''; print ''; foreach ($arrayofparameters as $key => $val) { if (isset($val['enabled']) && empty($val['enabled'])) { continue; } print ''; } print '
'.$langs->trans("Parameter").''.$langs->trans("Value").'
'; $tooltiphelp = (($langs->trans($key.'Tooltip') != $key.'Tooltip') ? $langs->trans($key.'Tooltip') : ''); $label = $langs->trans($key); if ($key == 'DAV_RESTICT_ON_IP') { $label = $langs->trans("RESTRICT_ON_IP"); $tooltiphelp .= ' '.$langs->trans("Example").': '.$langs->trans("IPListExample"); } print $form->textwithpicto($label, $tooltiphelp); print ''; if ($key == 'DAV_ALLOW_PRIVATE_DIR') { print $langs->trans("AlwaysActive"); } elseif ($key == 'DAV_ALLOW_PUBLIC_DIR' || $key == 'DAV_ALLOW_ECM_DIR') { print $form->selectyesno($key, getDolGlobalString($key), 1); } else { print ''; } print '
'; print '
'; print ''; print '
'; print '
'; print '
'; } else { print ''; print ''; foreach ($arrayofparameters as $key => $val) { if (isset($val['enabled']) && empty($val['enabled'])) { continue; } print ''; } print '
'.$langs->trans("Parameter").''.$langs->trans("Value").'
'; $tooltiphelp = (($langs->trans($key.'Tooltip') != $key.'Tooltip') ? $langs->trans($key.'Tooltip') : ''); $label = $langs->trans($key); if ($key == 'DAV_RESTICT_ON_IP') { $label = $langs->trans("RESTRICT_ON_IP"); $tooltiphelp .= ' '.$langs->trans("Example").': '.$langs->trans("IPListExample").''; } print $form->textwithpicto($label, $tooltiphelp); print ''; if ($key == 'DAV_ALLOW_PRIVATE_DIR') { print $langs->trans("AlwaysActive"); } elseif ($key == 'DAV_ALLOW_PUBLIC_DIR' || $key == 'DAV_ALLOW_ECM_DIR') { print yn(getDolGlobalString($key)); } else { print getDolGlobalString($key); } print '
'; print '
'; print ''.$langs->trans("Modify").''; print '
'; } print dol_get_fiche_end(); /*print '
'; print ''; print "
"; */ print "\n"; clearstatcache(); print ''.$langs->trans("WebDAVSetupDesc")."
\n"; print "
"; // Define $urlwithroot $urlwithouturlroot = preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); $urlwithroot = $urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file //$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current // Show message $message = ''; $url = ''.$urlwithroot.'/dav/fileserver.php'; $message .= img_picto('', 'globe').' '.str_replace('{url}', $url, $langs->trans("WebDavServer", 'WebDAV', '')); $message .= ''; $message .= ajax_autoselect('webdavpublicurl'); $message .= '
'; if (getDolGlobalString('DAV_ALLOW_PUBLIC_DIR')) { $urlEntity = (isModEnabled('multicompany') ? '?entity=' . $conf->entity : ''); $url = '' . $urlwithroot . '/dav/fileserver.php/public/' . $urlEntity . ''; $message .= img_picto('', 'globe') . ' ' . str_replace('{url}', $url, $langs->trans("WebDavServer", 'WebDAV public', '')); $message .= ''; $message .= ajax_autoselect('webdavurl'); $message .= '
'; } print $message; print '
'; require_once DOL_DOCUMENT_ROOT.'/includes/sabre/autoload.php'; $version = Sabre\DAV\Version::VERSION; print ''.$langs->trans("BaseOnSabeDavVersion").' : '.$version.''; // End of page llxFooter(); $db->close();