Sen descrición

Nicolas Ducoulombier d1e83fea04 Merge remote-tracking branch 'upstream/ofaj_dev' into preprodparkur %!s(int64=5) %!d(string=hai) anos
.github 97a0726754 Update Github issue template %!s(int64=7) %!d(string=hai) anos
app 2aec7dd194 Merge remote-tracking branch 'upstream/ofaj_dev' into preprodparkur %!s(int64=5) %!d(string=hai) anos
bin 5041bb4f10 Fix json type error in bin/doctrine.php see BT#13859 %!s(int64=6) %!d(string=hai) anos
certificates dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
custompages 6283be4a45 Minor - Fix missing semi-column in embedded PHP, reported by flint-ci %!s(int64=6) %!d(string=hai) anos
documentation 224afb69fc Update changelog %!s(int64=6) %!d(string=hai) anos
main cd6c65e523 Merge remote-tracking branch 'upstream/ofaj_dev' into preprodparkur %!s(int64=5) %!d(string=hai) anos
plugin dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
src b26f3ce879 Updating FR and DE translation for homepage -refs BT#15866 %!s(int64=5) %!d(string=hai) anos
tests dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
web b6fc234764 Ignore static files: assets and web/themes from sonata page %!s(int64=6) %!d(string=hai) anos
.bowerrc 9557a8826a Update bower files, fix pwstrength %!s(int64=8) %!d(string=hai) anos
.codeclimate.yml c3dd56162c Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
.editorconfig 4b03d5aedc Minor - update setting %!s(int64=7) %!d(string=hai) anos
.flintci.yml fbd5d2a7bc Add flint + phpcs config files %!s(int64=6) %!d(string=hai) anos
.gitattributes 16b4c3b4fa Minor - add flintci in export ignore, restore scrutinizer changes %!s(int64=6) %!d(string=hai) anos
.gitignore dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
.htaccess dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
.php_cs a1cf751b2a Add CI files %!s(int64=6) %!d(string=hai) anos
.php_cs.dist dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
.scrutinizer.yml c3dd56162c Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
.travis.yml dbd33061c1 Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
.yamllint_config fbd5d2a7bc Add flint + phpcs config files %!s(int64=6) %!d(string=hai) anos
CONTRIBUTING.md 8296d6718f Add Behat testing requirement for new features %!s(int64=7) %!d(string=hai) anos
LICENSE 0d054f1750 Rename LICENSE.md to LICENSE %!s(int64=6) %!d(string=hai) anos
README.md 654400398c Minor - replace php5 calls %!s(int64=6) %!d(string=hai) anos
apple-touch-icon.png 4116a6b100 merge %!s(int64=10) %!d(string=hai) anos
bower.json 97dd571a8e Minor - update bootstrap select %!s(int64=5) %!d(string=hai) anos
cli-config.php 7f6a146fd3 Applied fixes from FlintCI %!s(int64=6) %!d(string=hai) anos
codesize.xml e49f7df6d1 Minor - update CI settings %!s(int64=6) %!d(string=hai) anos
composer.json 524cd76813 Fix error %!s(int64=5) %!d(string=hai) anos
contrat.php 7f6a146fd3 Applied fixes from FlintCI %!s(int64=6) %!d(string=hai) anos
extrafield.php f5c57ac4a9 Minor - Flint fixes %!s(int64=5) %!d(string=hai) anos
favicon.ico 4116a6b100 merge %!s(int64=10) %!d(string=hai) anos
index.php c3dd56162c Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
license.txt ff73e2fcc5 Update credits in license file and add LICENSE.md to test repository licensing %!s(int64=6) %!d(string=hai) anos
load_search.php d26cd6279a Search by lang only if option is selected BT#15776 %!s(int64=5) %!d(string=hai) anos
news_list.php ff35e68f59 Minor - format code + fix php warning %!s(int64=7) %!d(string=hai) anos
robots.txt 974b3ddd04 Restore robots %!s(int64=7) %!d(string=hai) anos
search.php f5c57ac4a9 Minor - Flint fixes %!s(int64=5) %!d(string=hai) anos
user.php 7f6a146fd3 Applied fixes from FlintCI %!s(int64=6) %!d(string=hai) anos
user_portal.php c3dd56162c Partial merge with 1.11.x see BT#15952 %!s(int64=5) %!d(string=hai) anos
web.config 091a0689f1 Add web.config for IIS, as contributed by @ullfindsmit %!s(int64=6) %!d(string=hai) anos
whoisonline.php d400657bfa Fix who is online access not it will check chamilo settings %!s(int64=6) %!d(string=hai) anos
whoisonlinesession.php 4a57d5c754 Minor - flint fixes %!s(int64=6) %!d(string=hai) anos

README.md

Chamilo 1.11.x

Build Status Scrutinizer Code Quality Code Coverage Bountysource Code Consistency CII Best Practices Codacy Badge

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 apache2 mysql-server php libapache2-mod-php php-gd php-intl php-curl php-json php-mysql

Install Git

The development version 1.11.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.11.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.11
sudo chown -R `whoami` chamilo-1.11
git clone -b 1.11.x --single-branch https://github.com/chamilo/chamilo-lms.git chamilo-1.11

Checkout branch 1.11.x

cd chamilo-1.11
git checkout --track origin/1.11.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 update

If you face issues related to missing JS libraries, you might need to ensure that your web/assets folder is completely re-generated. Use this set of commands to do that:

rm composer.lock
rm -rf web/ vendor/
composer clear-cache
composer update

This will take several minutes in the best case scenario, but should definitely generate the missing files.

Change permissions

On a Debian-based system, launch:

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

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.10.x

1.11.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.10.x. As such, it is necessary to go through an upgrade procedure when upgrading from 1.10.x to 1.11.x.

The upgrade procedure is relatively straightforward. If you have a 1.10.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.11.x

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

If you have previously updated database rows manually, you might face issue with FOREIGN KEYS during the upgrade process. Please make sure your database is consistent before upgrading. This usually means making sure that you have to delete rows from tables referring to rows which have been deleted from the user or access_url tables. Typically:

DELETE FROM access_url_rel_course WHERE access_url_id NOT IN (SELECT id FROM access_url);

Upgrading from non-Git Chamilo 1.10

In the very unlikely case of upgrading a "normal" Chamilo 1.10 installation (done with the downloadable zip package) to a Git-based installation, make sure you delete the contents of a few folders first. These folders are re-generated later by the composer update command. This is likely to increase the downtime of your Chamilo portal of a few additional minutes (plan for 10 minutes on a reasonnable internet connection).

rm composer.lock
rm -rf web/*
rm -rf vendor/*

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.11.x branch, go to your Chamilo folder and type:

git pull origin 1.11.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

You can also print the differences between your database and what it should be by issuing the following command from the Chamilo base folder:

php bin/doctrine.php orm:schema-tool:update --dump-sql

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://1.11.chamilo.org/documentation/index.html