BUG 000 New plugins wizard creation

This commit is contained in:
Julio Cesar Laura
2011-12-06 19:05:40 -04:00
committed by Erik Amaru Ortiz
parent 0f20042d5a
commit a56533efe0

View File

@@ -544,6 +544,7 @@ function run_pack_plugin($task, $args) {
$filesize = sprintf("%5.2f", filesize($fileTar) / 1024);
printf("Filesize %s Kb \n", pakeColor::colorize($filesize, 'INFO'));
}
function run_new_plugin($task, $args) {
ini_set('display_errors', 'on');
ini_set('error_reporting', E_ERROR);
@@ -588,6 +589,8 @@ function run_new_plugin($task, $args) {
G::verifyPath($pluginHome . PATH_SEP . 'data', true);
//config
savePluginFile($pluginName . PATH_SEP . "setup.xml", "pluginSetup.xml", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . "messageShow.xml", "pluginMessageShow.xml", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . 'config' . PATH_SEP . 'schema.xml', 'pluginSchema.xml', $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . 'config' . PATH_SEP . 'propel.ini', 'pluginPropel.ini', $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . 'config' . PATH_SEP . 'propel.mysql.ini', 'pluginPropel.mysql.ini', $pluginName, $pluginName);
@@ -605,38 +608,74 @@ function run_new_plugin($task, $args) {
);
}
//menu
//Menu
$menu = strtolower(prompt('Create an example Page [Y/n]'));
$swMenu = 0;
if( $menu == 'y' ) {
$fields['menu'][] = array (
'className' => $pluginName
);
savePluginFile($pluginName . PATH_SEP . 'menu' . $pluginName . '.php', 'pluginMenu', $pluginName, $pluginName, $fields);
savePluginFile($pluginName . PATH_SEP . $pluginName . 'List.php', 'pluginWelcome.php', $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . 'welcome.xml', 'welcome.xml', $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application.php", "pluginApplication.php", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application.html", "pluginApplication.html", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application.js", "pluginApplication.js", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "ApplicationAjax.php", "pluginApplicationAjax.php", $pluginName, $pluginName);
$swMenu = 1;
}
//Menu cases
$menuCases = strtolower(prompt("Create new option in the menu of cases [Y/n]"));
if($menuCases == "y") {
$fields["menuCases"][] = array (
"className" => $pluginName
);
savePluginFile($pluginName . PATH_SEP . "menuCases" . $pluginName . ".php", "pluginMenuCases", $pluginName, $pluginName, $fields);
if ($swMenu == 0) {
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application.php", "pluginApplication.php", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application.html", "pluginApplication.html", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application.js", "pluginApplication.js", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "ApplicationAjax.php", "pluginApplicationAjax.php", $pluginName, $pluginName);
}
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application2.php", "pluginApplication2.php", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application2.html", "pluginApplication2.html", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application2.js", "pluginApplication2.js", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application3.php", "pluginApplication3.php", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application3.html", "pluginApplication3.html", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . "Application3.js", "pluginApplication3.js", $pluginName, $pluginName);
}
//RBAC features
$classNameUpperCase = strtoupper($pluginName);
//Create a new Permission a new role
$newPermission = strtolower(prompt("Create the Role 'PROCESSMAKER_$classNameUpperCase' and \n the Permission 'PM_$classNameUpperCase' [y/N]"));
$swRole = 0;
if( $newPermission == 'y' ) {
$fields['createPermission'][] = array (
'className' => $classNameUpperCase
);
$swRole = 1;
}
//Redirect
if ($swRole == 1) {
$redirect = strtolower(prompt("Create a Redirect Login for the Role 'PROCESSMAKER_$classNameUpperCase' [y/N]"));
if( $redirect == 'y' ) {
$fields['redirectLogin'][] = array (
'className' => $classNameUpperCase
);
}
}
$externalStep = strtolower(prompt('Create external step for Processmaker [y/N]'));
if( $externalStep == 'y' ) {
@@ -644,35 +683,28 @@ function run_new_plugin($task, $args) {
'className' => $pluginName,
'GUID' => G::generateUniqueID()
);
savePluginFile($pluginName . PATH_SEP . 'step' . $pluginName . '.php', 'pluginStep', $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . "step" . $pluginName . "Application.php", "pluginStepApplication.php", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . "step" . $pluginName . "Application.html", "pluginStepApplication.html", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . "step" . $pluginName . "Application.js", "pluginStepApplication.js", $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . "step" . $pluginName . "ApplicationAjax.php", "pluginStepApplicationAjax.php", $pluginName, $pluginName);
}
$onTransit = strtolower(prompt('Create an "On transit Page" [y/N]'));
if( $onTransit == 'y' ) {
$fields['ontransit'][] = array (
'className' => $pluginName
);
savePluginFile($pluginName . PATH_SEP . 'menu' . $pluginName . 'OnTransit.php', 'pluginMenuOnTransit', $pluginName, $pluginName, $fields);
savePluginFile($pluginName . PATH_SEP . $pluginName . 'OnTransitList.php', 'pluginOnTransitList.php', $pluginName, $pluginName);
savePluginFile($pluginName . PATH_SEP . $pluginName . 'OnTransitList.xml', 'pluginOnTransitList.xml', $pluginName, $pluginName);
copyPluginFile('pluginPaged-table.html', 'paged-table.html', $pluginName);
}
//$dashboard = strtolower(prompt('Create an element for the Processmaker Dashboard [y/N]'));
//if( $dashboard == 'y' ) {
// $fields['dashboard'][] = array (
// 'className' => $pluginName
// );
// savePluginFile($pluginName . PATH_SEP . 'drawChart.php', 'pluginDrawChart.php', $pluginName, $pluginName, $fields);
//}
$dashboard = strtolower(prompt('Create an element for the Processmaker Dashboard [y/N]'));
if( $dashboard == 'y' ) {
$fields['dashboard'][] = array (
'className' => $pluginName
);
savePluginFile($pluginName . PATH_SEP . 'drawChart.php', 'pluginDrawChart.php', $pluginName, $pluginName, $fields);
}
$report = strtolower(prompt('Create a Report for Processmaker [y/N]'));
if( $report == 'y' ) {
$fields['report'][] = array (
'className' => $pluginName
);
savePluginFile($pluginName . PATH_SEP . 'report.xml', 'pluginReport.xml', $pluginName, $pluginName, $fields);
}
//$report = strtolower(prompt('Create a Report for Processmaker [y/N]'));
//if( $report == 'y' ) {
// $fields['report'][] = array (
// 'className' => $pluginName
// );
// savePluginFile($pluginName . PATH_SEP . 'report.xml', 'pluginReport.xml', $pluginName, $pluginName, $fields);
//}
$report = strtolower(prompt('Create a PmFunction Class for extend Processmaker [y/N]'));
if( $report == 'y' ) {