From 0cd3d4c95a4e999f07a2753b4f5f2d6e1a8722cb Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Tue, 3 Feb 2015 15:26:52 +0100 Subject: [PATCH] Fixes CLI installer. --- README.md | 1 + app/bootstrap.php.cache | 14 +++-- app/config/assetic.yml | 4 +- app/config/parameters.yml.dist | 4 -- app/config/sonata/sonata_admin.yml | 62 +++++++++---------- composer.json | 4 +- .../ClassificationBundle/Entity/Context.php | 40 ------------ .../Resources/config/doctrine/Context.orm.xml | 21 ------- src/Chamilo/CourseBundle/ToolChain.php | 6 +- .../Form/Type/Configuration/DatabaseType.php | 15 +++++ .../Form/Type/ConfigurationType.php | 1 + .../Resources/translations/messages.en.yml | 1 + .../DatabaseConnectionValidator.php | 1 + web/install.php | 4 +- 14 files changed, 69 insertions(+), 109 deletions(-) delete mode 100644 src/Application/Sonata/ClassificationBundle/Entity/Context.php delete mode 100644 src/Application/Sonata/ClassificationBundle/Resources/config/doctrine/Context.orm.xml diff --git a/README.md b/README.md index 5a33664622..3775a55750 100644 --- a/README.md +++ b/README.md @@ -90,6 +90,7 @@ Browser install: git clone https://github.com/chamilo/chamilo-lms.git chamilo cd chamilo composer update +app/console doctrine:database:create ``` Load localhost/chamilo/install.php in your browser and follow the instructions. diff --git a/app/bootstrap.php.cache b/app/bootstrap.php.cache index c313cb1b5e..dda00ecac4 100644 --- a/app/bootstrap.php.cache +++ b/app/bootstrap.php.cache @@ -594,7 +594,7 @@ if (!$dup->get('_format') && $this->get('_format')) { $dup->attributes->set('_format', $this->get('_format')); } if (!$dup->getRequestFormat(null)) { -$dup->setRequestFormat($format = $this->getRequestFormat(null)); +$dup->setRequestFormat($this->getRequestFormat(null)); } return $dup; } @@ -1144,7 +1144,7 @@ $requestUri = $this->getRequestUri(); if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, $baseUrl)) { return $prefix; } -if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, dirname($baseUrl))) { +if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, dirname($baseUrl).'/')) { return rtrim($prefix,'/'); } $truncatedRequestUri = $requestUri; @@ -1355,7 +1355,7 @@ $this->headers = clone $this->headers; public function prepare(Request $request) { $headers = $this->headers; -if ($this->isInformational() || in_array($this->statusCode, array(204, 304))) { +if ($this->isInformational() || $this->isEmpty()) { $this->setContent(null); $headers->remove('Content-Type'); $headers->remove('Content-Length'); @@ -2284,6 +2284,7 @@ use Symfony\Component\DependencyInjection\Loader\ClosureLoader; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Bundle\BundleInterface; +use Symfony\Component\HttpKernel\Config\EnvParametersResource; use Symfony\Component\HttpKernel\Config\FileLocator; use Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass; use Symfony\Component\HttpKernel\DependencyInjection\AddClassesToCachePass; @@ -2303,11 +2304,11 @@ protected $booted = false; protected $name; protected $startTime; protected $loadClassCache; -const VERSION ='2.6.3'; -const VERSION_ID ='20603'; +const VERSION ='2.6.4'; +const VERSION_ID ='20604'; const MAJOR_VERSION ='2'; const MINOR_VERSION ='6'; -const RELEASE_VERSION ='3'; +const RELEASE_VERSION ='4'; const EXTRA_VERSION =''; public function __construct($environment, $debug) { @@ -2612,6 +2613,7 @@ if (null !== $cont = $this->registerContainerConfiguration($this->getContainerLo $container->merge($cont); } $container->addCompilerPass(new AddClassesToCachePass($this)); +$container->addResource(new EnvParametersResource('SYMFONY__')); return $container; } protected function prepareContainer(ContainerBuilder $container) diff --git a/app/config/assetic.yml b/app/config/assetic.yml index f1b9764259..a8839c88f0 100755 --- a/app/config/assetic.yml +++ b/app/config/assetic.yml @@ -157,8 +157,8 @@ assetic: - %kernel.root_dir%/../web/bundles/sonataadmin/jquery/jquery.form.js - %kernel.root_dir%/../web/bundles/sonataadmin/jquery/jquery.confirmExit.js - %kernel.root_dir%/../web/bundles/sonataadmin/App.js - - %kernel.root_dir%/../web/bundles/sonataadmin/treeview.js - - %kernel.root_dir%/../web/bundles/sonatapage/sonata-page.back.js +# - %kernel.root_dir%/../web/bundles/sonataadmin/treeview.js +# - %kernel.root_dir%/../web/bundles/sonatapage/sonata-page.back.js - %kernel.root_dir%/../web/bundles/sonataadmin/Admin.js filters: - yui_js diff --git a/app/config/parameters.yml.dist b/app/config/parameters.yml.dist index 58056351df..6e16267654 100644 --- a/app/config/parameters.yml.dist +++ b/app/config/parameters.yml.dist @@ -12,10 +12,6 @@ parameters: locale: en secret: ThisTokenIsNotSoSecretChangeIt installed: ~ - path.data: null - path.temp: null - path.courses: null - path.logs: null security_key: null password_encryption: sha1 deny_delete_users: false diff --git a/app/config/sonata/sonata_admin.yml b/app/config/sonata/sonata_admin.yml index 1e3ad3ce04..cb34bc4eee 100644 --- a/app/config/sonata/sonata_admin.yml +++ b/app/config/sonata/sonata_admin.yml @@ -121,34 +121,34 @@ sonata_admin: items: - sonata.admin.access_url -# assets: -# stylesheets: -# # The sandbox includes default pre-optimized version of some css and js -# # So you can either use them, and add your custom assets here -# # ~ or ~ -# # tweak the assetic.yml and the following lines -# - assetic/sonata_admin_css.css -# - assetic/sonata_formatter_css.css -# - assetic/sonata_jqueryui_css.css -# #- bundles/sonatademo/css/demo.css -# -# - bundles/sonataformatter/markitup/skins/sonata/style.css -# - bundles/sonataformatter/markitup/sets/markdown/style.css -# - bundles/sonataformatter/markitup/sets/html/style.css -# - bundles/sonataformatter/markitup/sets/textile/style.css -## - bundles/sonataadmin/vendor/bootstrap/dist/css/bootstrap.min.css -## - bundles/sonataadmin/vendor/AdminLTE/css/font-awesome.min.css -## - bundles/sonataadmin/vendor/AdminLTE/css/ionicons.min.css -## - bundles/sonataadmin/vendor/AdminLTE/css/AdminLTE.css -## - bundles/sonataadmin/vendor/jqueryui/themes/flick/jquery-ui.min.css -## - bundles/sonataadmin/vendor/select2/select2.css -## - bundles/sonataadmin/vendor/select2/select2-bootstrap.css -## - bundles/sonataadmin/vendor/x-editable/dist/bootstrap3-editable/css/bootstrap-editable.css -## - bundles/sonataadmin/css/styles.css -## - bundles/sonataadmin/css/layout.css -# -# javascripts: -# - assetic/sonata_admin_js.js -# - assetic/sonata_jqueryui_js.js -# - assetic/sonata_formatter_js.js -# - bundles/sonataformatter/vendor/ckeditor/ckeditor.js + assets: + stylesheets: + # The sandbox includes default pre-optimized version of some css and js + # So you can either use them, and add your custom assets here + # ~ or ~ + # tweak the assetic.yml and the following lines + - assetic/sonata_admin_css.css + - assetic/sonata_formatter_css.css + - assetic/sonata_jqueryui_css.css + #- bundles/sonatademo/css/demo.css + + - bundles/sonataformatter/markitup/skins/sonata/style.css + - bundles/sonataformatter/markitup/sets/markdown/style.css + - bundles/sonataformatter/markitup/sets/html/style.css + - bundles/sonataformatter/markitup/sets/textile/style.css +# - bundles/sonataadmin/vendor/bootstrap/dist/css/bootstrap.min.css +# - bundles/sonataadmin/vendor/AdminLTE/css/font-awesome.min.css +# - bundles/sonataadmin/vendor/AdminLTE/css/ionicons.min.css +# - bundles/sonataadmin/vendor/AdminLTE/css/AdminLTE.css +# - bundles/sonataadmin/vendor/jqueryui/themes/flick/jquery-ui.min.css +# - bundles/sonataadmin/vendor/select2/select2.css +# - bundles/sonataadmin/vendor/select2/select2-bootstrap.css +# - bundles/sonataadmin/vendor/x-editable/dist/bootstrap3-editable/css/bootstrap-editable.css +# - bundles/sonataadmin/css/styles.css +# - bundles/sonataadmin/css/layout.css + + javascripts: + - assetic/sonata_admin_js.js + - assetic/sonata_jqueryui_js.js + - assetic/sonata_formatter_js.js + - bundles/sonataformatter/vendor/ckeditor/ckeditor.js diff --git a/composer.json b/composer.json index c248f3aea1..a7a4a75f75 100755 --- a/composer.json +++ b/composer.json @@ -22,6 +22,7 @@ "main/gradebook/lib", "main/newscorm", "main/inc/lib", + "plugin", "main/install", "main/inc/lib/getid3", "main/survey" @@ -75,7 +76,8 @@ "jms/di-extra-bundle": "~1.4", "jms/serializer-bundle": "~0.12", - "doctrine/orm": "~2.4", + "doctrine/orm": "2.4.*@dev", + "doctrine/dbal": "2.4.4", "doctrine/doctrine-bundle": "1.3.*@dev", "doctrine/doctrine-migrations-bundle": "~2.0@dev", "doctrine/migrations": "~1.0@dev", diff --git a/src/Application/Sonata/ClassificationBundle/Entity/Context.php b/src/Application/Sonata/ClassificationBundle/Entity/Context.php deleted file mode 100644 index 714e13f3b3..0000000000 --- a/src/Application/Sonata/ClassificationBundle/Entity/Context.php +++ /dev/null @@ -1,40 +0,0 @@ - project. - * - * (c) - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Application\Sonata\ClassificationBundle\Entity; - -use Sonata\ClassificationBundle\Entity\BaseContext as BaseContext; - -/** - * This file has been generated by the Sonata EasyExtends bundle ( http://sonata-project.org/bundles/easy-extends ) - * - * References : - * working with object : http://www.doctrine-project.org/projects/orm/2.0/docs/reference/working-with-objects/en - * - * @author - */ -class Context extends BaseContext -{ - /** - * @var integer $id - */ - protected $id; - - /** - * Get id - * - * @return integer $id - */ - public function getId() - { - return $this->id; - } -} \ No newline at end of file diff --git a/src/Application/Sonata/ClassificationBundle/Resources/config/doctrine/Context.orm.xml b/src/Application/Sonata/ClassificationBundle/Resources/config/doctrine/Context.orm.xml deleted file mode 100644 index a9a0c3025d..0000000000 --- a/src/Application/Sonata/ClassificationBundle/Resources/config/doctrine/Context.orm.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/src/Chamilo/CourseBundle/ToolChain.php b/src/Chamilo/CourseBundle/ToolChain.php index 6b821e14bf..6c5f8ef825 100644 --- a/src/Chamilo/CourseBundle/ToolChain.php +++ b/src/Chamilo/CourseBundle/ToolChain.php @@ -4,8 +4,10 @@ namespace Chamilo\CourseBundle; use Chamilo\CoreBundle\Entity\Course; +use Chamilo\CoreBundle\Entity\Resource\ResourceNode; use Chamilo\CoreBundle\Entity\Tool; use Chamilo\CoreBundle\Entity\ToolResourceRights; +use Chamilo\CoreBundle\Security\Authorization\Voter\ResourceNodeVoter; use Chamilo\CourseBundle\Entity\CTool; use Chamilo\CourseBundle\Tool\BaseTool; use Doctrine\Common\Persistence\ObjectManager; @@ -51,13 +53,13 @@ class ToolChain $toolResourceRight = new ToolResourceRights(); $toolResourceRight ->setRole('ROLE_TEACHER') - ->setMask(ToolResourceRights::getEditorMask()) + ->setMask(ResourceNodeVoter::getEditorMask()) ; $toolResourceRightReader = new ToolResourceRights(); $toolResourceRightReader ->setRole('ROLE_STUDENT') - ->setMask(ToolResourceRights::getReaderMask()) + ->setMask(ResourceNodeVoter::getReaderMask()) ; /** @var BaseTool $tool */ diff --git a/src/Chamilo/InstallerBundle/Form/Type/Configuration/DatabaseType.php b/src/Chamilo/InstallerBundle/Form/Type/Configuration/DatabaseType.php index f619b187f0..45431cba25 100644 --- a/src/Chamilo/InstallerBundle/Form/Type/Configuration/DatabaseType.php +++ b/src/Chamilo/InstallerBundle/Form/Type/Configuration/DatabaseType.php @@ -16,6 +16,21 @@ class DatabaseType extends AbstractType public function buildForm(FormBuilderInterface $builder, array $options) { $builder + /*->add( + 'chamilo_installer_database_driver', + 'choice', + array( + 'label' => 'form.configuration.database.driver', + 'choices' => array( + 'pdo_mysql' => 'MySQL', + 'pdo_pgsql' => 'PostgreSQL', + ), + 'constraints' => array( + new Assert\NotBlank(), + new ExtensionLoaded(), + ), + ) + )*/ ->add( 'chamilo_installer_database_host', 'text', diff --git a/src/Chamilo/InstallerBundle/Form/Type/ConfigurationType.php b/src/Chamilo/InstallerBundle/Form/Type/ConfigurationType.php index 1773e93c07..cc8576c036 100644 --- a/src/Chamilo/InstallerBundle/Form/Type/ConfigurationType.php +++ b/src/Chamilo/InstallerBundle/Form/Type/ConfigurationType.php @@ -16,6 +16,7 @@ class ConfigurationType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { + // See class DatabaseConnectionValidator to see the validator. $builder ->add( 'database', diff --git a/src/Chamilo/InstallerBundle/Resources/translations/messages.en.yml b/src/Chamilo/InstallerBundle/Resources/translations/messages.en.yml index b0d7fcf3af..e40ea9ae49 100644 --- a/src/Chamilo/InstallerBundle/Resources/translations/messages.en.yml +++ b/src/Chamilo/InstallerBundle/Resources/translations/messages.en.yml @@ -123,5 +123,6 @@ process: install: Install finish: Launch application continue: Continue + refresh: Refresh operation: Operation status: Status diff --git a/src/Chamilo/InstallerBundle/Validator/Constraints/DatabaseConnectionValidator.php b/src/Chamilo/InstallerBundle/Validator/Constraints/DatabaseConnectionValidator.php index a6227e508f..eac1368636 100644 --- a/src/Chamilo/InstallerBundle/Validator/Constraints/DatabaseConnectionValidator.php +++ b/src/Chamilo/InstallerBundle/Validator/Constraints/DatabaseConnectionValidator.php @@ -17,6 +17,7 @@ class DatabaseConnectionValidator extends ConstraintValidator 'dbname' => $value['chamilo_installer_database_name'], 'user' => $value['chamilo_installer_database_user'], 'password' => $value['chamilo_installer_database_password'], + //'driver' => $value['chamilo_installer_database_driver'], 'driver' => 'pdo_mysql', 'charset' => 'UTF8', ); diff --git a/web/install.php b/web/install.php index ca9429a961..ceb6f8cea2 100644 --- a/web/install.php +++ b/web/install.php @@ -203,8 +203,8 @@ function iterateRequirements(array $collection, $translator) {