update console bin

update composer.json for autoload of Command
update in order to make it usefull
This commit is contained in:
Emmanuel ROY 2020-12-08 09:28:12 +01:00
parent 326ef5ab59
commit 444022efa7
10 changed files with 88 additions and 33 deletions

View file

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>

View file

@ -14,5 +14,22 @@ class Dumper{
}
echo "</pre>";
}
/**
* Fonction Statique permettant d'initialiser les valeurs de php lors du script courant
*
* @return void
*/
public static function setPHPvalues()
{
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
ini_set('memory_limit', -1);
ini_set('max_execution_time', 0);
ini_set('default_socket_timeout', -1);
error_reporting(E_ALL);
return;
}
}

View file

@ -22,5 +22,24 @@ class Logger
file_put_contents($file, $what);
}
}
/**
* Fonction courante permettant de logger les erreurs obtenues dans un fichier
*
* @param array $errors
* @return void
*/
public static function logCommandErrors(array $errors)
{
// log connection errors to the web service
ob_start();
foreach ($errors as $key => $value) {
echo "\n\n$key : \n";
print_r($value);
}
$write_string = ob_get_clean();
file_put_contents(dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . "logs" . DIRECTORY_SEPARATOR . "errors_command.log", $write_string);
return;
}
}

View file

@ -5,8 +5,9 @@
],
"psr-4": {
"MVC\\Classe\\":"./application/class",
"MVC\\Objets\\":"./application/objets"
"MVC\\Classe\\" : "./application/class",
"MVC\\Domain\\" : "./domain",
"MVC\\Command\\": "./console/command"
}
},
"require": {

View file

@ -1,18 +1,27 @@
#!/usr/bin/php
<?php
global $argv;
require dirname(__FILE__) . DIRECTORY_SEPARATOR . "vendor" . DIRECTORY_SEPARATOR . "autoload.php";
\MVC\Classe\Dumper::setPHPvalues();
//var_dump($argv);
if(isset($argv[1])) {
if (isset($argv[1])) {
$option = explode(':', $argv[1]);
$command_file = dirname(__FILE__) . DIRECTORY_SEPARATOR . "command" . DIRECTORY_SEPARATOR . $option[0] . ".class.php";
$command_file = dirname(__FILE__) . DIRECTORY_SEPARATOR . "command" . DIRECTORY_SEPARATOR . ucfirst($option[0]) . ".php";
if (is_file($command_file)) {
require $command_file;
$class = $option[0];
$class = "\MVC\Command\\" . ucfirst($option[0]);
$static_method = $option[1];
$class::$static_method();
$errors = $class::$static_method();
if ($errors !== null) {
\MVC\Classe\Logger::logCommandErrors($errors);
}
} else {
print "Command not found !\n";
}
}else{
} else {
print "No command was specified !\n";
}

View file

@ -1,7 +1,8 @@
<?php
namespace MVC\Command;
class cache
class Cache
{
static public function help(){

View file

@ -1,7 +1,8 @@
<?php
namespace MVC\Command;
class module
class Module
{
static public function help(){
print "explaination of the command\n\n";
@ -16,54 +17,54 @@ class module
print "Quel est le nom du module symfony à ajouter (default : symfony) ? ";
$name = trim(fgets(STDIN));
if($name !== '' && preg_match('#(.)+#',$name)){
module::addSymfony($name);
Module::addSymfony($name);
}else{
module::addSymfony('symfony');
Module::addSymfony('symfony');
}
break;
case 2:
print "Quel est la version de Wordpress à ajouter (default : 5.4) ? ";
$version = trim(fgets(STDIN));
if($version !== '' && preg_match('#(.)\.(.)#',$version)){
module::addWordpress($version);
Module::addWordpress($version);
}else{
module::addWordpress('5.4');
Module::addWordpress('5.4');
}
break;
case 3:
print "Quel est la version de Prestashop à ajouter (default : 1.7.5.0) ? ";
$version = trim(fgets(STDIN));
if($version !== '' && preg_match('#(.)\.(.)\.(.)\.(.)#',$version)){
module::addPrestashop($version);
Module::addPrestashop($version);
}else{
module::addPrestashop('1.7.5.0');
Module::addPrestashop('1.7.5.0');
}
break;
case 4:
print "Quel est la version de PhpList à ajouter (default : 3.5.2) ? ";
$version = trim(fgets(STDIN));
if($version !== '' && preg_match('#(.)\.(.)\.(.)#',$version)){
module::addPhplist($version);
Module::addPhplist($version);
}else{
module::addPhplist('3.5.2');
Module::addPhplist('3.5.2');
}
break;
case 5:
print "Quel est la version de Wanewletter à ajouter (default : release-3.0.1) ? ";
$version = trim(fgets(STDIN));
if($version !== '' && preg_match('#(.)\.(.)\.(.)#',$version)){
module::addWanewsletter($version);
Module::addWanewsletter($version);
}else{
module::addWanewsletter('release-3.0.1');
Module::addWanewsletter('release-3.0.1');
}
break;
case 6:
print "Quel est la version de PHPmyNewletter à ajouter (default : v2.0.5) ? ";
$version = trim(fgets(STDIN));
if($version !== '' && preg_match('#(.)\.(.)\.(.)#',$version)){
module::addPHPMyNewsletter($version);
Module::addPHPMyNewsletter($version);
}else{
module::addPHPMyNewsletter('v2.0.5');
Module::addPHPMyNewsletter('v2.0.5');
}
break;
default:
@ -79,25 +80,25 @@ class module
print "Quel est le nom du module symfony à supprimer (default : symfony) ? ";
$name = trim(fgets(STDIN));
if($name !== '' && preg_match('#(.)+#',$name)){
module::removeSymfony($name);
Module::removeSymfony($name);
}else{
module::removeSymfony('symfony');
Module::removeSymfony('symfony');
}
break;
case 2:
module::removeWordpress();
Module::removeWordpress();
break;
case 3:
module::removePrestashop();
Module::removePrestashop();
break;
case 4:
module::removePhplist();
Module::removePhplist();
break;
case 5:
module::removeWanewsletter();
Module::removeWanewsletter();
break;
case 6:
module::removePHPMyNewsletter();
Module::removePHPMyNewsletter();
break;
default:
}
@ -128,8 +129,8 @@ class module
print $git_view;
//stabilize symfony application
include dirname(__FILE__).DIRECTORY_SEPARATOR.'symfony.class.php';
symfony::stabilize();
include dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Symfony.php';
Symfony::stabilize();
$symfony_root = shell_exec('cp '.CONSOLE_PATH.'/skel/symfony-app/src '.MODULES_PATH.'/'.$name.'/ -Rf');
$symfony_root = shell_exec('cp '.CONSOLE_PATH.'/skel/symfony-app/config '.MODULES_PATH.'/'.$name.'/ -Rf');

View file

@ -1,7 +1,8 @@
<?php
namespace MVC\Command;
class page
class Page
{
static public function help(){

View file

@ -1,7 +1,8 @@
<?php
namespace MVC\Command;
class symfony
class Symfony
{
static public function help(){