Feature #542 - Replacing the variable $_configuration['dokeos_version'] with $_configuration['system_version'] and other related changes.

skala
Ivan Tcholakov 15 years ago
parent 70d31c42a3
commit f9172859b7
  1. 30
      main/admin/index.php
  2. 83
      main/inc/footer.inc.php
  3. 11
      main/inc/global.inc.php
  4. 1
      main/inc/lib/display.lib.php
  5. 4
      main/inc/lib/export.lib.inc.php
  6. 4
      main/inc/lib/main_api.lib.php
  7. 7
      main/install/configuration.dist.php
  8. 5
      main/install/index.php
  9. 6
      main/install/install.lib.php
  10. 51
      main/install/update-files-1.8.6.2-1.8.7.inc.php
  11. 5
      tests/main/inc/lib/display.lib.test.php

@ -338,7 +338,7 @@ function version_check()
{
*/
$return = 'site registered. ';
$return .= check_dokeos_version2();
$return .= check_system_version2();
//}
}
return $return;
@ -379,10 +379,10 @@ function register_site()
* @copyright (C) 2001 The phpBB Group
* @return language string with some layout (color)
*/
function check_dokeos_version2()
function check_system_version2()
{
global $_configuration;
$dokeos_version = trim($_configuration['dokeos_version']); // the chamilo version of your installation
$system_version = trim($_configuration['system_version']); // the chamilo version of your installation
if (ini_get('allow_url_fopen')==1)
{
@ -398,17 +398,14 @@ function check_dokeos_version2()
$row = Database::fetch_array($result);
$number_of_users = $row[0];
$version_url= 'http://version.chamilo.org/version.php?url='.urlencode(api_get_path(WEB_PATH)).'&campus='.urlencode(api_get_setting('siteName')).'&contact='.urlencode(api_get_setting('emailAdministrator')).'&version='.urlencode($dokeos_version).'&numberofcourses='.urlencode($number_of_courses).'&numberofusers='.urlencode($number_of_users).'&donotlistcampus='.api_get_setting('donotlistcampus').'&organisation='.urlencode(api_get_setting('Institution')).'&adminname='.urlencode(api_get_setting('administratorName').' '.api_get_setting('administratorSurname'));
$version_url= 'http://version.chamilo.org/version.php?url='.urlencode(api_get_path(WEB_PATH)).'&campus='.urlencode(api_get_setting('siteName')).'&contact='.urlencode(api_get_setting('emailAdministrator')).'&version='.urlencode($system_version).'&numberofcourses='.urlencode($number_of_courses).'&numberofusers='.urlencode($number_of_users).'&donotlistcampus='.api_get_setting('donotlistcampus').'&organisation='.urlencode(api_get_setting('Institution')).'&adminname='.urlencode(api_get_setting('administratorName').' '.api_get_setting('administratorSurname'));
$handle=@fopen($version_url,'r');
if ($handle !== false) {
$version_info=trim(@fread($handle, 1024));
if ($dokeos_version<>$version_info)
{
$output='<br /><span style="color:red">' . get_lang('YourVersionNotUpToDate') . '. '.get_lang('LatestVersionIs').' <b>Chamilo '.$version_info.'</b>. '.get_lang('YourVersionIs').' <b>Chamilo '.$dokeos_version. '</b>. '.str_replace('http://www.chamilo.org','<a href="http://www.chamilo.org">http://www.chamilo.org</a>',get_lang('PleaseVisitDokeos')).'</span>';
}
else
{
if ($system_version <> $version_info) {
$output='<br /><span style="color:red">' . get_lang('YourVersionNotUpToDate') . '. '.get_lang('LatestVersionIs').' <b>Chamilo '.$version_info.'</b>. '.get_lang('YourVersionIs').' <b>Chamilo '.$system_version. '</b>. '.str_replace('http://www.chamilo.org','<a href="http://www.chamilo.org">http://www.chamilo.org</a>',get_lang('PleaseVisitDokeos')).'</span>';
} else {
$output = '<br /><span style="color:green">'.get_lang('VersionUpToDate').': Chamilo '.$version_info.'</span>';
}
} else {
@ -433,10 +430,10 @@ function check_dokeos_version2()
the http://www.dokeos.com/version.php page (instead of version.txt) . That's why I chose to use fopen which requires however
that allow_url_open is set to true
*/
function check_dokeos_version()
function check_system_version()
{
global $_configuration; // the chamilo version of your installation
$dokeos_version = $_configuration['dokeos_version'];
$system_version = $_configuration['system_version'];
if ($fsock = @fsockopen('www.chamilo.org', 80, $errno, $errstr))
{
@ -461,12 +458,9 @@ function check_dokeos_version()
}
@fclose($fsock);
if (trim($dokeos_version)<>trim($version_info))
{
$output='<span style="color:red">' . get_lang('YourVersionNotUpToDate') . '. '.get_lang('LatestVersionIs').' <b>Chamilo '.$version_info.'</b>. '.get_lang('YourVersionIs').' <b>Dokeos '.$dokeos_version. '</b>. '.str_replace('http://www.chamilo.org','<a href="http://www.chamilo.org">http://www.chamilo.org</a>',get_lang('PleaseVisitDokeos')).'</span>';
}
else
{
if (trim($system_version) <> trim($version_info)) {
$output='<span style="color:red">' . get_lang('YourVersionNotUpToDate') . '. '.get_lang('LatestVersionIs').' <b>Chamilo '.$version_info.'</b>. '.get_lang('YourVersionIs').' <b>Dokeos '.$system_version. '</b>. '.str_replace('http://www.chamilo.org','<a href="http://www.chamilo.org">http://www.chamilo.org</a>',get_lang('PleaseVisitDokeos')).'</span>';
} else {
$output = '<span style="color:green">'.get_lang('VersionUpToDate').': Chamilo '.$version_info.'</span>';
}
}

@ -1,23 +1,20 @@
<?php
/* For licensing terms, see /chamilo_license.txt */
/**
==============================================================================
* This script displays the footer that is below (almost)
* every Chamilo web page.
*
* @package dokeos.include
* @package chamilo.include
==============================================================================
*/
/**** display of tool_navigation_menu according to admin setting *****/
require_once (api_get_path(LIBRARY_PATH).'course.lib.php');
// Display of tool_navigation_menu according to admin setting.
require_once api_get_path(LIBRARY_PATH).'course.lib.php';
if (api_get_setting('show_navigation_menu') != 'false') {
$course_id = api_get_course_id();
if (!empty($course_id) && ($course_id != -1)) {
if ( api_get_setting('show_navigation_menu') != 'icons') {
if (api_get_setting('show_navigation_menu') != 'icons') {
echo '</div> <!-- end #center -->';
echo '</div> <!-- end #centerwrap -->';
}
@ -25,7 +22,7 @@ if (api_get_setting('show_navigation_menu') != 'false') {
show_navigation_menu();
}
}
/***********************************************************************/
?>
<div class="clear">&nbsp;</div> <!-- 'clearing' div to make sure that footer stays below the main and right column sections -->
</div> <!-- end of #main" started at the end of banner.inc.php -->
@ -38,12 +35,12 @@ if (api_get_setting('show_navigation_menu') != 'false') {
<div class="copyright">
<?php
global $_configuration;
if (api_get_setting('show_administrator_data')=='true') {
if (api_get_setting('show_administrator_data') == 'true') {
// Platform manager
echo '<div align="right">', get_lang('Manager'), ' : ', Display::encrypted_mailto_link(api_get_setting('emailAdministrator'), api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'))).'</div>';
}
echo get_lang("Platform"), ' <a href="http://www.chamilo.org" target="_blank">Chamilo ', $_configuration['dokeos_version'], '</a> &copy; ', date('Y');
echo get_lang("Platform"), ' <a href="', $_configuration['software_url'], '" target="_blank">', $_configuration['software_name'], ' ', $_configuration['system_version'], '</a> &copy; ', date('Y');
// Server mode indicator.
if (api_is_platform_admin()) {
if (api_get_setting('server_type') == 'test') {
@ -64,69 +61,67 @@ api_plugin('footer');
echo '<div class="footer_emails">';
if (api_get_setting('show_tutor_data')=='true') {
if (api_get_setting('show_tutor_data') == 'true') {
// course manager
$id_course=api_get_course_id();
$id_session=api_get_session_id();
if (isset($id_course) && $id_course!=-1) {
$id_course = api_get_course_id();
$id_session = api_get_session_id();
if (isset($id_course) && $id_course != -1) {
echo '<div id="platformmanager">';
if ($id_session!=0){
$coachs_email=CourseManager::get_email_of_tutor_to_session($id_session,$id_course);
if ($id_session != 0){
$coachs_email = CourseManager::get_email_of_tutor_to_session($id_session, $id_course);
$email_link = array();
foreach ($coachs_email as $coach_email) {
foreach ($coach_email as $email=>$username) {
$email_link[] = Display::encrypted_mailto_link($email,$username);
foreach ($coachs_email as $coach_email) {
foreach ($coach_email as $email => $username) {
$email_link[] = Display::encrypted_mailto_link($email, $username);
}
}
if (count($coachs_email)>1){
$bar='<br />';
}
if (count($coachs_email) > 1) {
$bar = '<br />';
echo get_lang('Coachs').' : <ul>';
echo '<li>'.implode("<li>",$email_link);
} elseif(count($coachs_email)==1) {
echo '<li>'.implode("<li>", $email_link);
} elseif (count($coachs_email) == 1) {
echo get_lang('Coach').' : ';
echo implode("&nbps;",$email_link);
} elseif(count($coachs_email)==0) {
echo implode("&nbps;", $email_link);
} elseif (count($coachs_email) == 0) {
echo '';
}
}
}
echo '</ul></div>';
}
echo '<br>';
}
$class='';
$class = '';
if (api_get_setting('show_teacher_data')=='true') {
if (api_get_setting('show_tutor_data')=='false'){
$class='platformmanager';
if (api_get_setting('show_teacher_data') == 'true') {
if (api_get_setting('show_tutor_data') == 'false') {
$class = 'platformmanager';
} else {
$class='coursemanager';
$class = 'coursemanager';
}
// course manager
$id_course=api_get_course_id();
if (isset($id_course) && $id_course!=-1) {
$id_course = api_get_course_id();
if (isset($id_course) && $id_course != -1) {
echo '<div id="'.$class.'">';
$mail=CourseManager::get_emails_of_tutors_to_course($id_course);
$mail = CourseManager::get_emails_of_tutors_to_course($id_course);
if (!empty($mail)) {
if (count($mail)>1){
if (count($mail) > 1) {
echo get_lang('Teachers').' : <ul>';
foreach ($mail as $value=>$key) {
foreach ($key as $email=>$name){
echo '<li>'.Display::encrypted_mailto_link($email,$name).'</li>';
foreach ($mail as $value => $key) {
foreach ($key as $email => $name) {
echo '<li>'.Display::encrypted_mailto_link($email, $name).'</li>';
}
}
echo '</ul>';
} else {
echo get_lang('Teacher').' : ';
foreach ($mail as $value=>$key) {
foreach ($key as $email=>$name){
echo Display::encrypted_mailto_link($email,$name).'<br />';
foreach ($mail as $value => $key) {
foreach ($key as $email => $name) {
echo Display::encrypted_mailto_link($email, $name).'<br />';
}
}
}
}
echo '</div>';
}
}

@ -57,6 +57,17 @@ if (!isset($GLOBALS['_configuration'])) {
$GLOBALS['_configuration'] = $_configuration;
}
// Code for trnasitional purposes, it can be removed right before the 1.8.7 release.
if (empty($_configuration['system_version'])) {
$_configuration['system_version'] = $_configuration['dokeos_version'];
$_configuration['system_stable'] = $_configuration['dokeos_stable'];
$_configuration['software_url'] = 'http://www.chamilo.org/';
}
// For backward compatibility.
$_configuration['dokeos_version'] = $_configuration['system_version'];
$_configuration['dokeos_stable'] = $_configuration['system_stable'];
// Include the main Dokeos platform library file.
require_once $includePath.'/lib/main_api.lib.php';

@ -622,7 +622,6 @@ class Display {
* Display the page footer
*/
public static function display_footer () {
global $dokeos_version; //necessary to have the value accessible in the footer
global $_plugins;
include (api_get_path(INCLUDE_PATH)."footer.inc.php");
}

@ -488,7 +488,7 @@ function makeTheBackup($exportedCourseId, $verbose_backup = FALSE, $ignore = '',
$stringConfig = "<?php
/*
+----------------------------------------------------------------------+
Dokeos version ".$dokeos_version."
System version ".$_configuration['system_version']."
+----------------------------------------------------------------------+
This file was generate by script ".api_get_self()."
".date("r")." |
@ -498,7 +498,7 @@ function makeTheBackup($exportedCourseId, $verbose_backup = FALSE, $ignore = '',
| as published by the Free Software Foundation; either version 2 |
*/
// Dokeos Version was : ".$dokeos_version."
// System Version was : ".$_configuration['system_version']."
// Source was in ".realpath("../../".$exportedCourseId."/")."
// find in ".$archiveDir."/courseBase/courseBase.sql sql to rebuild the course base
// find in ".$archiveDir."/".$exportedCourseId." to content of directory of course

@ -1063,7 +1063,7 @@ function api_session_start($already_installed = true) {
$session_handler = new session_handler();
@session_set_save_handler(array(& $session_handler, 'open'), array(& $session_handler, 'close'), array(& $session_handler, 'read'), array(& $session_handler, 'write'), array(& $session_handler, 'destroy'), array(& $session_handler, 'garbage'));
}
session_name('dk_sid');
session_name('ch_sid');
session_start();
if ($already_installed) {
if (empty ($_SESSION['checkDokeosURL'])) {
@ -3244,7 +3244,7 @@ function api_chmod_R($path, $filemode) {
*/
function api_get_version() {
global $_configuration;
return (string)$_configuration['dokeos_version'];
return (string)$_configuration['system_version'];
}
/**

@ -1,5 +1,5 @@
<?php
# Chamilo version {DOKEOS_VERSION}
# Chamilo version {NEW_VERSION}
# File generated by /install/index.php script - {DATE_GENERATED}
/* For licensing terms, see /license.txt */
/*
@ -122,8 +122,9 @@ $_configuration['session_lifetime'] = SESSION_LIFETIME;
// Activation for multi-url access
//$_configuration['multiple_access_urls'] = true;
$_configuration['software_name'] = 'Chamilo';
$_configuration['software_url'] = 'http://www.chamilo.org/';
// Version settings
$_configuration['dokeos_version'] = '{NEW_VERSION}';
$_configuration['dokeos_stable'] = NEW_VERSION_STABLE;
$_configuration['system_version'] = '{NEW_VERSION}';
$_configuration['system_stable'] = NEW_VERSION_STABLE;
?>

@ -119,6 +119,9 @@ $update_from_version_8 = array('1.8', '1.8.2', '1.8.3', '1.8.4', '1.8.5', '1.8.6
$my_old_version = '';
$tmp_version = get_config_param('dokeos_version');
if (empty($tmp_version)) {
$tmp_version = get_config_param('system_version');
}
if (!empty($_POST['old_version'])) {
$my_old_version = $_POST['old_version'];
} elseif (!empty($tmp_version)) {
@ -130,6 +133,8 @@ if (!empty($_POST['old_version'])) {
$new_version = '1.8.7';
$new_version_stable = false;
$new_version_major = true;
$software_name = 'Chamilo';
$software_url = 'http://www.chamilo.org/';
// A protection measure for already installed systems.
if (is_already_installed_system()) {

@ -37,7 +37,7 @@ define('SYSTEM_CONFIG_FILENAME', 'configuration.dist.php');
* @author Ivan Tcholakov, 2010;
*/
function is_already_installed_system() {
global $new_version;
global $new_version;
if (empty($new_version)) {
return true; // Must be initialized.
@ -49,8 +49,10 @@ function is_already_installed_system() {
}
require $current_config_file;
// Careful, if/when the name 'dokeos_version' is changed. Check this then.
$current_version = trim($_configuration['dokeos_version']);
if (empty($current_version)) {
$current_version = trim($_configuration['system_version']);
}
// If the current version is old, upgrading is assumed, the installer goes ahead.
return empty($current_version) ? false : version_compare($current_version, $new_version, '>=');

@ -14,7 +14,56 @@
if (defined('SYSTEM_INSTALLATION') || defined('DOKEOS_COURSE_UPDATE')) {
// Start coding here...
// Edit the configuration file
$file = file('../inc/conf/configuration.php');
$fh = fopen('../inc/conf/configuration.php', 'w');
$found_version = false;
$found_stable = false;
$found_software_name = false;
$found_software_url = false;
foreach ($file as $line) {
$ignore = false;
if (stripos($line, '$_configuration[\'dokeos_version\']') !== false) {
$found_version = true;
$line = '$_configuration[\'system_version\'] = \''.$new_version.'\';'."\r\n";
elseif (stripos($line, '$_configuration[\'system_version\']') !== false) {
$found_version = true;
$line = '$_configuration[\'system_version\'] = \''.$new_version.'\';'."\r\n";
} elseif (stripos($line, '$_configuration[\'dokeos_stable\']') !== false) {
$found_stable = true;
$line = '$_configuration[\'system_stable\'] = '.($new_version_stable ? 'true' : 'false').';'."\r\n";
} elseif (stripos($line, '$_configuration[\'system_stable\']') !== false) {
$found_stable = true;
$line = '$_configuration[\'system_stable\'] = '.($new_version_stable ? 'true' : 'false').';'."\r\n";
} elseif (stripos($line, '$_configuration[\'software_name\']') !== false) {
$found_software_name = true;
$line = '$_configuration[\'software_name\'] = \''.$software_name.'\';'."\r\n";
} elseif (stripos($line, '$_configuration[\'software_url\']') !== false) {
$found_software_url = true;
$line = '$_configuration[\'software_url\'] = \''.$software_url.'\';'."\r\n";
} elseif (stripos($line,'$userPasswordCrypted') !== false) {
$line = '$userPasswordCrypted = \''.($userPasswordCrypted).'\';'."\r\n";
} elseif (stripos($line, '?>') !== false) {
$ignore = true;
}
if (!$ignore) {
fwrite($fh, $line);
}
}
if (!$found_version) {
fwrite($fh, '$_configuration[\'system_version\'] = \''.$new_version.'\';'."\r\n");
}
if (!$found_stable) {
fwrite($fh, '$_configuration[\'system_stable\'] = '.($new_version_stable?'true':'false').';'."\r\n");
}
if (!$found_software_name) {
fwrite($fh, '$_configuration[\'software_name\'] = \''.$software_name.'\';'."\r\n");
}
if (!$found_software_url) {
fwrite($fh, '$_configuration[\'software_url\'] = \''.$software_url.'\';'."\r\n");
}
fwrite($fh, '?>');
fclose($fh);
} else {

@ -147,7 +147,7 @@ class TestDisplay extends UnitTestCase {
/**
* Display the reduced page header (without banner)
*/
// [/var/www/chamilo/main/inc/reduced_header.inc.php line 30] - exception
// [/var/www/chamilo/main/inc/reduced_header.inc.php line 30] - exception
/* public function testdisplay_reduced_header() {
global $_plugins,$lp_theme_css,$mycoursetheme,$user_theme,$platform_theme;
global $httpHeadXtra, $htmlHeadXtra, $htmlIncHeadXtra, $_course, $_user, $clarolineRepositoryWeb, $text_dir, $plugins, $_user, $rootAdminWeb, $_cid, $interbreadcrumb, $charset, $language_file, $noPHP_SELF, $language_interface;
@ -200,7 +200,6 @@ class TestDisplay extends UnitTestCase {
* @return string Code HTML about the footer
*/
public function testdisplay_footer() {
global $dokeos_version; //necessary to have the value accessible in the footer
global $_plugins;
ob_start();
$res=Display::display_footer();
@ -359,7 +358,7 @@ class TestDisplay extends UnitTestCase {
$res=Display::user_name($fname,$lname);
ob_end_clean();
$this->assertTrue(is_string($res));
//var_dump($res);
}
}

Loading…
Cancel
Save