update :
- ajout de l'action twig avec la page d'acceuil sous twig - ajout du chargement de modules symfony et laravel, fonctionne partiellement, pas d'inclusion du head et du footer du template body - modification des commandes et des skel pour l'installation automatique des modules symfony et laravelmain
parent
e55358c819
commit
df0aeb1b80
|
@ -1,51 +1,86 @@
|
|||
<?php
|
||||
|
||||
use MVC\Classe\Dumper;
|
||||
use MVC\Classe\HttpMethodRequete;
|
||||
use MVC\Classe\Implement\Action;
|
||||
use MVC\Classe\Url;
|
||||
use MVC\Classe\Response;
|
||||
|
||||
class DefaultAction extends Action
|
||||
class DefaultAction extends \MVC\Classe\Implement\Action
|
||||
{
|
||||
public function default()
|
||||
{
|
||||
/**your action algorythm**/
|
||||
if (isset($data[0])) {
|
||||
$var1 = $data[0];
|
||||
if (isset($data1)) {
|
||||
$var1 = $data1;
|
||||
} else {
|
||||
$var1 = 1;
|
||||
}
|
||||
if (isset($data[1])) {
|
||||
$var2 = $data[1];
|
||||
if (isset($data2)) {
|
||||
$var2 = $data2;
|
||||
} else {
|
||||
$var2 = 2;
|
||||
}
|
||||
if (isset($data[2])) {
|
||||
$var3 = $data[2];
|
||||
if (isset($data3)) {
|
||||
$var3 = $data3;
|
||||
} else {
|
||||
$var3 = 3;
|
||||
}
|
||||
|
||||
return $this->render('action', array('var1' => $var1, 'var2' => $var2, 'var3' => $var3));
|
||||
}
|
||||
|
||||
public function variableSlug($data)
|
||||
public function defaultBlade($data1,$data2,$data3)
|
||||
{
|
||||
|
||||
/**your action algorythm**/
|
||||
if (isset($data[0])) {
|
||||
$var1 = $data[0];
|
||||
if (isset($data1)) {
|
||||
$var1 = $data1;
|
||||
} else {
|
||||
$var1 = 1;
|
||||
}
|
||||
if (isset($data[1])) {
|
||||
$var2 = $data[1];
|
||||
if (isset($data2)) {
|
||||
$var2 = $data2;
|
||||
} else {
|
||||
$var2 = 2;
|
||||
}
|
||||
if (isset($data[2])) {
|
||||
$var3 = $data[2];
|
||||
if (isset($data3)) {
|
||||
$var3 = $data3;
|
||||
} else {
|
||||
$var3 = 3;
|
||||
}
|
||||
|
||||
return $this->render('action', array('var1' => $var1, 'var2' => $var2, 'var3' => $var3),'blade');
|
||||
}
|
||||
public function defaultTwig($data1,$data2,$data3)
|
||||
{
|
||||
/**your action algorythm**/
|
||||
if (isset($data1)) {
|
||||
$var1 = $data1;
|
||||
} else {
|
||||
$var1 = 1;
|
||||
}
|
||||
if (isset($data2)) {
|
||||
$var2 = $data2;
|
||||
} else {
|
||||
$var2 = 2;
|
||||
}
|
||||
if (isset($data3)) {
|
||||
$var3 = $data3;
|
||||
} else {
|
||||
$var3 = 3;
|
||||
}
|
||||
|
||||
return $this->render('action', array('var1' => $var1, 'var2' => $var2, 'var3' => $var3),'twig');
|
||||
}
|
||||
|
||||
public function variableSlug($data1,$data2,$data3)
|
||||
{
|
||||
/**your action algorythm**/
|
||||
if (isset($data1)) {
|
||||
$var1 = $data1;
|
||||
} else {
|
||||
$var1 = 1;
|
||||
}
|
||||
if (isset($data2)) {
|
||||
$var2 = $data2;
|
||||
} else {
|
||||
$var2 = 2;
|
||||
}
|
||||
if (isset($data3)) {
|
||||
$var3 = $data3;
|
||||
} else {
|
||||
$var3 = 3;
|
||||
}
|
||||
|
@ -58,10 +93,10 @@ class DefaultAction extends Action
|
|||
$data = array('myval' => 25);
|
||||
//Dumper::dump($data);
|
||||
\MVC\Classe\Logger::addLog('action', 'http11 make request');
|
||||
$request = new HttpMethodRequete();
|
||||
$request->setUrl(Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->get($data);
|
||||
$request->setUrl(Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->post($data);
|
||||
$request->setUrl(Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->put($data);
|
||||
$request->setUrl(Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->delete($data);
|
||||
$request = new \MVC\Classe\HttpMethodRequete();
|
||||
$request->setUrl(\MVC\Classe\Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->get($data);
|
||||
$request->setUrl(\MVC\Classe\Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->post($data);
|
||||
$request->setUrl(\MVC\Classe\Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->put($data);
|
||||
$request->setUrl(\MVC\Classe\Url::absolute_link_rewrite(false, 'accueil', ['var10'=>'val10']))->delete($data);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
{{var1}}::{{var2}}::{{var3}}
|
|
@ -14,7 +14,7 @@
|
|||
{{$templating_a}}::{{$templating_b}}::{{$templating_c}}
|
||||
|
||||
{{\MVC\Classe\ControlleurAction::inserer('default',[])}}
|
||||
{{\MVC\Classe\ControlleurAction::inserer('default.default',[4,5,6])}}
|
||||
{{\MVC\Classe\ControlleurAction::inserer('default.defaultBlade',[4,5,6])}}
|
||||
{{\MVC\Classe\ControlleurAction::inserer('default.variableSlug',['var1','var2','var3'])}}
|
||||
|
||||
@endsection
|
||||
|
|
|
@ -6,5 +6,5 @@
|
|||
<br /><br /><br />
|
||||
<hr/>
|
||||
{{templating_a}}::{{templating_b}}::{{templating_c}}
|
||||
{{ action('default.default',[4,5,6]) }}
|
||||
{{ action('default.defaultTwig',[4,5,6]) }}
|
||||
{% endblock %}
|
|
@ -22,16 +22,30 @@ class Module
|
|||
public static function add()
|
||||
{
|
||||
print "adding module...\n\n";
|
||||
print "Quel est le module a ajouter ?\n1.Symfony\n2.Wordpress\n3.Prestashop\n4.PhpList\n5.Wanewsletter\n6.PHPmyNewletter\n>";
|
||||
print "Quel est le module a ajouter ?\n0.Laravel\n1.Symfony\n2.Wordpress\n3.Prestashop\n4.PhpList\n5.Wanewsletter\n6.PHPmyNewletter\n>";
|
||||
$module = trim(fgets(STDIN));
|
||||
switch ($module) {
|
||||
case 0:
|
||||
print "Quel est le nom du module laravel à ajouter (default : laravel) ? ";
|
||||
$name = trim(fgets(STDIN));
|
||||
if ($name !== '' && preg_match('#(.)+#', $name)) {
|
||||
Module::addLaravel($name);
|
||||
} else {
|
||||
Module::addLaravel('symfony');
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
print "Quel est le nom du module symfony à ajouter (default : symfony) ? ";
|
||||
$name = trim(fgets(STDIN));
|
||||
print "Quel est la version de Symfony à ajouter (default : 4.4) ? ";
|
||||
$version = trim(fgets(STDIN));
|
||||
if ($version == '' && !preg_match('#(.)\.(.)\.(.)\.(.)#', $version)) {
|
||||
$version = "4.4";
|
||||
}
|
||||
if ($name !== '' && preg_match('#(.)+#', $name)) {
|
||||
Module::addSymfony($name);
|
||||
Module::addSymfony($name,$version);
|
||||
} else {
|
||||
Module::addSymfony('symfony');
|
||||
Module::addSymfony('symfony',$version);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
|
@ -117,33 +131,86 @@ class Module
|
|||
}
|
||||
}
|
||||
|
||||
private static function addSymfony($name = 'symfony')
|
||||
private static function addLaravel($name = 'laravel')
|
||||
{
|
||||
$git_clone = shell_exec('cd '.MODULES_PATH.' && composer create-project symfony/website-skeleton '.$name);
|
||||
$git_clone = shell_exec('cd '.MODULES_PATH.' && composer create-project laravel/laravel '.$name);
|
||||
print $git_clone;
|
||||
$git_chmod = shell_exec('sudo chmod 775 '.MODULES_PATH.'/'.$name.' -R');
|
||||
$git_chmod = shell_exec('chmod 775 '.MODULES_PATH.'/'.$name.' -R');
|
||||
print $git_chmod;
|
||||
$git_chown = shell_exec('sudo chown acksop:www-data '.MODULES_PATH.'/'.$name.' -R');
|
||||
$git_chown = shell_exec('chown acksop:www-data '.MODULES_PATH.'/'.$name.' -R');
|
||||
print $git_chown;
|
||||
$git_controlleur = shell_exec('cp '.CONSOLE_PATH.'/skel/module_symfony.php '.CONTROLLERS_PATH.'/'.$name.'.php');
|
||||
$git_controlleur = shell_exec('cp '.CONSOLE_PATH.'/skel/module.laravel.php '.CONTROLLERS_PATH.'/'.$name.'.php');
|
||||
$controlleur = file_get_contents(CONTROLLERS_PATH.'/'.$name.'.php');
|
||||
$controlleur = preg_replace('%MODULE%', $name, $controlleur);
|
||||
$controlleur = preg_replace('/%%MODULE_NAME%%/', $name, $controlleur);
|
||||
$controlleur = preg_replace('/%%MODULE%%/', 'laravel', $controlleur);
|
||||
file_put_contents(CONTROLLERS_PATH.'/'.$name.'.php', $controlleur);
|
||||
print $git_controlleur;
|
||||
$git_modele = shell_exec('cp '.CONSOLE_PATH.'/skel/module.model '.MODELS_PATH.'/'.$name.'.model');
|
||||
$git_modele = shell_exec('cp '.CONSOLE_PATH.'/skel/module.laravel.model '.MODELS_PATH.'/'.$name.'.model');
|
||||
$modele = file_get_contents(MODELS_PATH.'/'.$name.'.model');
|
||||
$modele = preg_replace('%MODULE%', $name, $modele);
|
||||
$modele = preg_replace('/%%MODULE_NAME%%/', $name, $modele);
|
||||
$modele = preg_replace('/%%MODULE%%/', 'laravel', $modele);
|
||||
file_put_contents(MODELS_PATH.'/'.$name.'.model', $modele);
|
||||
print $git_modele;
|
||||
$git_view = shell_exec('cp '.CONSOLE_PATH.'/skel/module.blade.php '.VIEW_PATH.'/view/'.$name.'.blade.php');
|
||||
$git_view = shell_exec('cp '.CONSOLE_PATH.'/skel/module.laravel.html.twig '.VIEW_PATH.'/view/'.$name.'.blade.php');
|
||||
$vue = file_get_contents(VIEW_PATH.'/view/'.$name.'.html.twig');
|
||||
$vue = preg_replace('/%%MODULE_NAME%%/', $name, $vue);
|
||||
$vue = preg_replace('/%%MODULE%%/', 'laravel', $vue);
|
||||
file_put_contents(VIEW_PATH.'/view/'.$name.'.html.twig', $vue);
|
||||
print $git_view;
|
||||
|
||||
//stabilize symfony application
|
||||
//print "stabilize symfony module...\n\n";
|
||||
//$symfony_module = shell_exec('cp '.CONSOLE_PATH.'/skel/symfony-app/* '.MODULES_PATH.'/'.$name.' -Rf');
|
||||
//$symfony_composer = shell_exec('cd '.MODULES_PATH.'/'.$name.' && composer update');
|
||||
|
||||
print "\n\nN'oubliez pas d'ajouter au fichier '/application/modules/setup/registre.model' :"
|
||||
."\n'.$name.' : Application permettant d'intégrer un module avec symfony"
|
||||
."\n "
|
||||
."\n et de créer la base de données!\n";
|
||||
}
|
||||
public static function removeLaravel($name = 'laravel')
|
||||
{
|
||||
$git_clone = system('rm -Rf '.MODULES_PATH.'/'.$name, $git_clone_retval);
|
||||
print $git_clone_retval;
|
||||
$git_controlleur = system('rm -f '.CONTROLLERS_PATH.'/'.$name.'.php', $git_controlleur_retval);
|
||||
print $git_controlleur_retval;
|
||||
$git_modele = system('rm -f '.MODELS_PATH.'/'.$name.'.model', $git_modele_retval);
|
||||
print $git_modele_retval;
|
||||
$git_view = system('rm -f '.VIEW_PATH.'/view/'.$name.'.html.twig', $git_view_retval);
|
||||
print $git_view_retval;
|
||||
}
|
||||
|
||||
private static function addSymfony($name = 'symfony',$version="4.4")
|
||||
{
|
||||
$git_clone = shell_exec('cd '.MODULES_PATH.' && composer create-project symfony/website-skeleton:"^'.$version.'" '.$name);
|
||||
print $git_clone;
|
||||
$git_chmod = shell_exec('chmod 775 '.MODULES_PATH.'/'.$name.' -R');
|
||||
print $git_chmod;
|
||||
$git_chown = shell_exec('chown acksop:www-data '.MODULES_PATH.'/'.$name.' -R');
|
||||
print $git_chown;
|
||||
$git_controlleur = shell_exec('cp '.CONSOLE_PATH.'/skel/module.symfony.php '.CONTROLLERS_PATH.'/'.$name.'.php');
|
||||
$controlleur = file_get_contents(CONTROLLERS_PATH.'/'.$name.'.php');
|
||||
$controlleur = preg_replace('/%%MODULE_NAME%%/', $name, $controlleur);
|
||||
$controlleur = preg_replace('/%%MODULE%%/', 'symfony', $controlleur);
|
||||
file_put_contents(CONTROLLERS_PATH.'/'.$name.'.php', $controlleur);
|
||||
print $git_controlleur;
|
||||
$git_modele = shell_exec('cp '.CONSOLE_PATH.'/skel/module.symfony.model '.MODELS_PATH.'/'.$name.'.model');
|
||||
$modele = file_get_contents(MODELS_PATH.'/'.$name.'.model');
|
||||
$modele = preg_replace('/%%MODULE_NAME%%/', $name, $modele);
|
||||
$modele = preg_replace('/%%MODULE%%/', 'symfony', $modele);
|
||||
file_put_contents(MODELS_PATH.'/'.$name.'.model', $modele);
|
||||
print $git_modele;
|
||||
$git_view = shell_exec('cp '.CONSOLE_PATH.'/skel/module.symfony.blade.php '.VIEW_PATH.'/view/'.$name.'.blade.php');
|
||||
$vue = file_get_contents(VIEW_PATH.'/view/'.$name.'.blade.php');
|
||||
$vue = preg_replace('%MODULE%', 'symfony', $vue);
|
||||
$vue = preg_replace('/%%MODULE_NAME%%/', $name, $vue);
|
||||
$vue = preg_replace('/%%MODULE%%/', 'symfony', $vue);
|
||||
file_put_contents(VIEW_PATH.'/view/'.$name.'.blade.php', $vue);
|
||||
print $git_view;
|
||||
|
||||
//stabilize symfony application
|
||||
include dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Symfony.php';
|
||||
$symfony_composer = shell_exec('cd '.MODULES_PATH.'/'.$name.' && composer update');
|
||||
//print "stabilize symfony module...\n\n";
|
||||
//$symfony_module = shell_exec('cp '.CONSOLE_PATH.'/skel/symfony-app/* '.MODULES_PATH.'/'.$name.' -Rf');
|
||||
//$symfony_composer = shell_exec('cd '.MODULES_PATH.'/'.$name.' && composer update');
|
||||
|
||||
print "\n\nN'oubliez pas d'ajouter au fichier '/application/modules/setup/registre.model' :"
|
||||
."\n'.$name.' : Application permettant d'intégrer un module avec symfony"
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
{{ subcall( app, 'load', ['%%MODULE%%'] ) | raw }}
|
|
@ -0,0 +1,7 @@
|
|||
{% extends "body.html.twig" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ subcall( app, 'load', ['%%MODULE%%'] ) | raw }}
|
||||
|
||||
{% endblock %}
|
|
@ -0,0 +1,8 @@
|
|||
name : %%MODULE_NAME%%
|
||||
page_title : module_title
|
||||
description : module_description
|
||||
engine : twig
|
||||
authentification : no
|
||||
ariane : {%%MODULE%%}
|
||||
arianelink : {%%MODULE_NAME%%}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
<?php
|
||||
$app = new MVC\Classe\Modular($name, '%%MODULE%%', $url_params);
|
||||
$templateData = array('app' => $app);
|
|
@ -1,6 +1,6 @@
|
|||
name : %%MODULE%%
|
||||
name : %%MODULE_NAME%%
|
||||
page_title : module_title
|
||||
description : module_description
|
||||
ariane : {%%MODULE%%}
|
||||
arianelink : {%%MODULE%%}
|
||||
arianelink : {%%MODULE_NAME%%}
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
@extends('body')
|
||||
|
||||
@section('content')
|
||||
{{$app->load('%%MODULE%%')}}
|
||||
@endsection
|
|
@ -0,0 +1,8 @@
|
|||
name : %%MODULE_NAME%%
|
||||
page_title : module_title
|
||||
description : module_description
|
||||
engine : blade
|
||||
authentification : no
|
||||
ariane : {%%MODULE%%}
|
||||
arianelink : {%%MODULE_NAME%%}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
<?php
|
||||
$app = new MVC\Classe\Modular($name, '%%MODULE%%', $url_params);
|
||||
$templateData = array('app' => $app);
|
|
@ -1,4 +1,4 @@
|
|||
{% extends "base.html" %}
|
||||
{% extends "body.html.twig" %}
|
||||
|
||||
{% block top-css %}
|
||||
{{ parent() }}
|
||||
|
|
Loading…
Reference in New Issue