Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
jmontoya ca3d375966 Add gradebook category backup 9 years ago
app Fix usergroup_rel_user during migration. 9 years ago
bin Adding doctrine cli, to generate migrations, create/update schema. 10 years ago
certificates Minor - format code. 9 years ago
custompages Add galician and basque + add forced change language when using get param 9 years ago
documentation Documentation: improve git upgrade section of installation guide 9 years ago
main Add gradebook category backup 9 years ago
plugin Add PENS plugin - refs CT#288 9 years ago
src/Chamilo Add boostrap 3.3.5 composer due a bug in fxp/composer-asset-plugin 9 years ago
tests Add Behat test for accept/deny invitations to social group - refs #8095 9 years ago
.gitattributes
.gitignore Replace css files from main/css to app/Resources/public/css see #7522 10 years ago
.htaccess fix course access with no final '/' in URL -refs CT#7976 9 years ago
.scrutinizer.yml Dependency change in scrutinizer.yml 9 years ago
.travis.yml Testing new travis setup procedure 9 years ago
404.php
CONTRIBUTING.md Fix jQuery path issues again after finding the real problem behind the two different versions downloaded between two servers. See 338595984c for the initial (reverse) fix 9 years ago
README.md Fix jQuery path issues again after finding the real problem behind the two different versions downloaded between two servers. See 338595984c for the initial (reverse) fix 9 years ago
apple-touch-icon.png
cli-config.php Add migrations.yml in order to call correctly migrations command lines. 10 years ago
composer.json Minor - Update information in composer.json 9 years ago
favicon.ico
index.php Minor - Code style and NOTICE avoidance - refs CT#7909 9 years ago
license.txt
news_list.php
robots.txt Move searchdb inside app/upload/plugins/xapian/searchdb 10 years ago
user.php
user_portal.php Fix use of course info 'real_id' index when 'id' is needed 9 years ago
webchatdeny.php
whoisonline.php Fix whoisonline 9 years ago
whoisonlinesession.php Switch all session.date_start and date_end to session.access_start_date and access_end_date - refs #7719 10 years ago

README.md

Chamilo 1.10.x

Build Status Scrutinizer Code Quality Code Coverage Bountysource

Installation

This installation guide is for development environments only.

Install PHP, a web server and MySQL/MariaDB

To run Chamilo, you will need at least a web server (we recommend Apache2 for commodity reasons), a database server (we recommend MariaDB but will explain MySQL for commodity reasons) and a PHP interpreter (and a series of libraries for it). If you are working on a Debian-based system (Debian, Ubuntu, Mint, etc), just type

sudo apt-get install libapache2-mod-php mysql-server php5-gd php5-intl php5-curl php5-json

Install Git

The development version 1.10.x requires you to have Git installed. If you are working on a Debian-based system (Debian, Ubuntu, Mint, etc), just type

sudo apt-get install git

Install Composer

To run the development version 1.10.x, you need Composer, a libraries dependency management system that will update all the libraries you need for Chamilo to the latest available version.

Make sure you have Composer installed. If you do, you should be able to launch "composer" on the command line and have the inline help of composer show a few subcommands. If you don't, please follow the installation guide at https://getcomposer.org/download/

Download Chamilo from GitHub

Clone the repository

sudo mkdir chamilo-1.10
sudo chown -R `whoami` chamilo-1.10
git clone -b 1.10.x --single-branch https://github.com/chamilo/chamilo-lms.git chamilo-1.10

Checkout branch 1.10.x

cd chamilo-1.10
git checkout --track origin/1.10.x
git config --global push.default current

Update dependencies using Composer

From the Chamilo folder (in which you should be now if you followed the previous steps), launch:

composer global require "fxp/composer-asset-plugin:1.0.3"
composer update

If you ever face issues with scrollbars not appearing or JavaScript generating errors, you might need to ensure that your web/assets folder is completely re-generated. Use this set of commands to do that:

composer global require "fxp/composer-asset-plugin:1.0.3"
rm composer.lock
rm -rf web/assets
composer clear-cache
composer update

This will take longer, but should definitely generate the web/assets/jquery/dist/jquery.min.js file (jQuery 2.2 or superior), which was not present in Chamilo versions previous to 1.10.4.

Change permissions

On a Debian-based system, launch:

sudo chown -R www-data:www-data app main/default_course_document/images main/lang  

Start the installer

In your browser, load the Chamilo URL. You should be automatically redirected to the installer. If not, add the "main/install/index.php" suffix manually in your browser address bar. The rest should be a matter of simple OK > Next > OK > Next...

Upgrade from 1.9.x

1.10.0 is a major version. It contains a series of new features, that also mean a series of new database changes in regards with versions 1.9.x. As such, it is necessary to go through an upgrade procedure when upgrading from 1.9.x to 1.10.x.

When we published 1.10.0, we didn't catch a series of important upgrade errors. We released a warning a few days later asking people not to upgrade from 1.9.x to 1.10.0 for the time being. Version 1.10.2 fixed that, and you can now safely upgrade from any 1.9.x version to any 1.10.x version higher than 1.10.0.

The upgrade procedure is relatively straightforward. If you have a 1.9.x initially installed with Git, here are the steps you should follow (considering you are already inside the Chamilo folder):

git fetch --all
git checkout origin 1.10.x

Then load the Chamilo URL in your browser, adding "main/install/index.php" and follow the upgrade instructions. Select the "Upgrade from 1.9.x" button to proceed.

For developers and testers only

This section is for developers only (or for people who have a good reason to use a development version of Chamilo), in the sense that other people will not need to update their Chamilo portal as described here.

Updating code

To update your code with the latest developments in the 1.10.x branch, go to your Chamilo folder and type:

git pull origin 1.10.x

If you have made customizations to your code before the update, you will have two options:

  • abandon your changes (use "git stash" to do that)
  • commit your changes locally and merge (use "git commit" and then "git pull")

You are supposed to have a reasonable understanding of Git in order to use Chamilo as a developer, so if you feel lost, please check the Git manual first: http://git-scm.com/documentation

Updating your database from new code

Since the 2015-05-27, Chamilo offers the possibility to make partial database upgrades through Doctrine migrations.

To update your database to the latest version, go to your Chamilo root folder and type

php bin/doctrine.php migrations:migrate --configuration=app/config/migrations.yml

If you want to proceed with a single migration "step" (the steps reside in src/Chamilo/CoreBundle/Migrations/Schema/V110/), then check the datetime of the version and type the following (assuming you want to execute Version20150527120703)

php bin/doctrine.php migrations:execute 20150527120703 --up --configuration=app/config/migrations.yml

Contributing

If you want to submit new features or patches to Chamilo, please follow the Github contribution guide https://guides.github.com/activities/contributing-to-open-source/ and our CONTRIBUTING.md file. In short, we ask you to send us Pull Requests based on a branch that you create with this purpose into your repository forked from the original Chamilo repository.

Documentation

For more information on Chamilo, visit https://stable.chamilo.org/documentation