From f15e59878a09926f13f5b13a1423965098be08f4 Mon Sep 17 00:00:00 2001 From: jmontoyaa Date: Mon, 6 Feb 2017 10:56:34 +0100 Subject: [PATCH] Add archive_url, home_url, upload_url settings see BT#11414 --- main/inc/lib/api.lib.php | 6 ++- plugin/vchamilo/install.php | 52 ++++++++++++--------- plugin/vchamilo/lang/english.php | 5 ++ plugin/vchamilo/lib/Virtual.php | 13 +++++- plugin/vchamilo/views/editinstance_form.php | 5 ++ 5 files changed, 57 insertions(+), 24 deletions(-) diff --git a/main/inc/lib/api.lib.php b/main/inc/lib/api.lib.php index 9e85bd616c..fb079decf9 100644 --- a/main/inc/lib/api.lib.php +++ b/main/inc/lib/api.lib.php @@ -842,10 +842,14 @@ function api_get_path($path = '', $configuration = []) if (!empty($virtualChamilo)) { $paths[$root_web][SYS_ARCHIVE_PATH] = api_add_trailing_slash($virtualChamilo[SYS_ARCHIVE_PATH]); $paths[$root_web][SYS_HOME_PATH] = api_add_trailing_slash($virtualChamilo[SYS_HOME_PATH]); - $paths[$root_web][WEB_HOME_PATH] = api_add_trailing_slash($virtualChamilo[WEB_HOME_PATH]); $paths[$root_web][SYS_COURSE_PATH] = api_add_trailing_slash($virtualChamilo[SYS_COURSE_PATH]); $paths[$root_web][SYS_UPLOAD_PATH] = api_add_trailing_slash($virtualChamilo[SYS_UPLOAD_PATH]); + $paths[$root_web][WEB_HOME_PATH] = api_add_trailing_slash($virtualChamilo[WEB_HOME_PATH]); + $paths[$root_web][WEB_UPLOAD_PATH] = api_add_trailing_slash($virtualChamilo[WEB_UPLOAD_PATH]); + $paths[$root_web][WEB_ARCHIVE_PATH] = api_add_trailing_slash($virtualChamilo[WEB_ARCHIVE_PATH]); + //$paths[$root_web][WEB_COURSE_PATH] = api_add_trailing_slash($virtualChamilo[WEB_COURSE_PATH]); + // WEB_UPLOAD_PATH should be handle by apache htaccess in the vhost // RewriteEngine On diff --git a/plugin/vchamilo/install.php b/plugin/vchamilo/install.php index a92474b7ce..8facf557f4 100644 --- a/plugin/vchamilo/install.php +++ b/plugin/vchamilo/install.php @@ -17,29 +17,39 @@ api_protect_admin_script(); $table = 'vchamilo'; $tablename = Database::get_main_table($table); -$sql = "CREATE TABLE IF NOT EXISTS $tablename ( - id int NOT NULL AUTO_INCREMENT, - sitename varchar(80) NOT NULL, - slug varchar(255) NOT NULL, - institution varchar(80) NOT NULL, - root_web varchar(120), - db_host varchar(80) NOT NULL, - db_user varchar(16) DEFAULT 'root', - db_password varchar(32), - table_prefix varchar(16), - db_prefix varchar(16), - main_database varchar(60) DEFAULT 'chamilo', - url_append varchar(32), - course_folder varchar(80), - visible int, - lastcrongap int, - lastcron int, - croncount int, - template varchar(255), - password_encryption varchar(255), - PRIMARY KEY (id) +$sql = " + CREATE TABLE IF NOT EXISTS $tablename ( + id int NOT NULL AUTO_INCREMENT, + sitename varchar(80) NOT NULL, + slug varchar(255) NOT NULL, + institution varchar(80) NOT NULL, + root_web varchar(120), + db_host varchar(80) NOT NULL, + db_user varchar(16) DEFAULT 'root', + db_password varchar(32), + table_prefix varchar(16), + db_prefix varchar(16), + main_database varchar(60) DEFAULT 'chamilo', + url_append varchar(32), + course_folder varchar(80), + visible int, + lastcrongap int, + lastcron int, + croncount int, + template varchar(255), + password_encryption varchar(255), + archive_url varchar(255), + home_url varchar(255), + upload_url varchar(255), + course_url varchar(255), + PRIMARY KEY (id) ) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1; "; + +/*ALTER TABLE vchamilo ADD COLUMN archive_url varchar(255); +ALTER TABLE vchamilo ADD COLUMN home_url varchar(255); +ALTER TABLE vchamilo ADD COLUMN upload_url varchar(255); +ALTER TABLE vchamilo ADD COLUMN course_url varchar(255);*/ Database::query($sql); $table = 'vchamilo_config'; diff --git a/plugin/vchamilo/lang/english.php b/plugin/vchamilo/lang/english.php index 2f9770ca09..8f68324653 100644 --- a/plugin/vchamilo/lang/english.php +++ b/plugin/vchamilo/lang/english.php @@ -117,3 +117,8 @@ $strings['CoursePath'] = 'Path to courses directory'; $strings['HomePath'] = 'Path to home directory'; $strings['UploadPath'] = 'Path to upload directory'; +$strings['ArchiveUrl'] = 'Archive URL'; +$strings['HomeUrl'] = 'Home URL'; +$strings['UploadUrl'] = 'Upload URL'; +$strings['CourseUrl'] = 'Course URL'; + diff --git a/plugin/vchamilo/lib/Virtual.php b/plugin/vchamilo/lib/Virtual.php index 9a93b0f702..31215486ab 100644 --- a/plugin/vchamilo/lib/Virtual.php +++ b/plugin/vchamilo/lib/Virtual.php @@ -96,10 +96,13 @@ class Virtual $data['SYS_ARCHIVE_PATH'] = self::addTrailingSlash($archivePath).$data['slug']; $data['SYS_HOME_PATH'] = self::addTrailingSlash($homePath).$data['slug']; - $data['WEB_HOME_PATH'] = $_configuration['vchamilo_web_root'] . '/var/home/' . $data['slug']; $data['SYS_COURSE_PATH'] = self::addTrailingSlash($coursePath).$data['slug']; $data['SYS_UPLOAD_PATH'] = self::addTrailingSlash($uploadPath).$data['slug']; - //$data['WEB_UPLOAD_PATH'] = $_configuration['vchamilo_web_root'] . '/var/upload/' . $data['slug']; + + $data['WEB_HOME_PATH'] = self::addTrailingSlash($data['home_url']); + $data['WEB_UPLOAD_PATH'] = self::addTrailingSlash($data['upload_url']); + $data['WEB_ARCHIVE_PATH'] = self::addTrailingSlash($data['archive_url']); + //$data['WEB_COURSE_PATH'] = self::addTrailingSlash($data['course_url']); if (!empty($passwordEncryption)) { $_configuration['password_encryption'] = $passwordEncryption; @@ -962,6 +965,12 @@ class Virtual } $data->root_web = api_add_trailing_slash($data->root_web); + + $data->archive_url = api_add_trailing_slash($data->archive_url); + $data->home_url = api_add_trailing_slash($data->home_url); + $data->upload_url = api_add_trailing_slash($data->upload_url); + $data->course_url = api_add_trailing_slash($data->course_url); + if (substr($data->root_web, 0, 4) != 'http') { $data->root_web = api_get_protocol().'://'.$data->root_web; } diff --git a/plugin/vchamilo/views/editinstance_form.php b/plugin/vchamilo/views/editinstance_form.php index 44f7734fc9..3669d52305 100644 --- a/plugin/vchamilo/views/editinstance_form.php +++ b/plugin/vchamilo/views/editinstance_form.php @@ -415,6 +415,11 @@ class InstanceForm extends ChamiloForm 'onclick="opencnxpopup(\''.$_configuration['root_web'].'\'); return false;"' ); + $form->addText('archive_url', $this->_plugin->get_lang('ArchiveUrl')); + $form->addText('home_url', $this->_plugin->get_lang('HomeUrl')); + $form->addText('upload_url', $this->_plugin->get_lang('UploadUrl')); + //$form->addText('course_url', $this->_plugin->get_lang('CourseUrl')); + /** * Template selection. */