ALF-14: Enable plugin triggers build script to include plugin changes
This commit is contained in:
37
build.php
Normal file
37
build.php
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Process Maker Php Build tool v. 0.3.1
|
||||||
|
* Rev. 05-27-2016
|
||||||
|
*
|
||||||
|
* Use this as an external tool for Phpstorm
|
||||||
|
* Configure as it follows:
|
||||||
|
*
|
||||||
|
* Name: PM php Builder
|
||||||
|
* Group: Process Maker
|
||||||
|
* Description: Process Maker Php Builder.
|
||||||
|
* Tools Settings
|
||||||
|
* Program: $PhpExecutable$
|
||||||
|
* Parameters:
|
||||||
|
* build.php --base_dir=$ProjectFileDir$ --mode=prod --extension
|
||||||
|
* --extensionDir=$ProjectFileDir$/workflow/engine/plugins
|
||||||
|
* Working Directory: $ProjectFileDir$
|
||||||
|
* Please, notice you can change --extensionDir to your own extension folder.
|
||||||
|
*
|
||||||
|
* Also, use the respective directory owner permisions:
|
||||||
|
* ~/processmaker$ sudo chown -R www-data:www-data workflow/public_html/
|
||||||
|
* ~/processmaker$ sudo chown -R www-data:www-data vendor/colosa/MichelangeloFE/build
|
||||||
|
*
|
||||||
|
* Use a shortcut:
|
||||||
|
*
|
||||||
|
* Go to Settings -> Appearance & Behavior -> Keymap, search for ProcessMaker, open the context
|
||||||
|
* menu of the option and select Add Keyboard Shortcut, use whatever shortcut you want, for example Alt+b
|
||||||
|
*
|
||||||
|
* If you need help: php build.php --help
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
include_once('class.Build.php');
|
||||||
|
use Build\Utils\ProcessMakerPhpBuilderHelper;
|
||||||
|
|
||||||
|
$phpBuilder = new ProcessMakerPhpBuilderHelper();
|
||||||
|
$phpBuilder->utils->echoContent("Config finished, start deploying...");
|
||||||
|
$phpBuilder->buildAll();
|
||||||
1397
class.Build.php
Executable file
1397
class.Build.php
Executable file
File diff suppressed because it is too large
Load Diff
@@ -1791,7 +1791,6 @@ class PMPluginRegistry
|
|||||||
return $this->_aOpenReassignCallback;
|
return $this->_aOpenReassignCallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public function getPluginsData()
|
public function getPluginsData()
|
||||||
{
|
{
|
||||||
return $this->_aPlugins;
|
return $this->_aPlugins;
|
||||||
@@ -1825,7 +1824,7 @@ class PMPluginRegistry
|
|||||||
*/
|
*/
|
||||||
public function isEnterprisePlugin($pluginName, $path = null)
|
public function isEnterprisePlugin($pluginName, $path = null)
|
||||||
{
|
{
|
||||||
$path = (!is_null($path) && $path != '')? rtrim($path, '/\\') . PATH_SEP : PATH_PLUGINS;
|
$path = (!is_null($path) && $path != '') ? rtrim($path, '/\\') . PATH_SEP : PATH_PLUGINS;
|
||||||
$pluginFile = $pluginName . '.php';
|
$pluginFile = $pluginName . '.php';
|
||||||
|
|
||||||
//Return
|
//Return
|
||||||
@@ -1834,5 +1833,20 @@ class PMPluginRegistry
|
|||||||
str_replace(["\n", "\r", "\t"], ' ', file_get_contents($path . $pluginFile))
|
str_replace(["\n", "\r", "\t"], ' ', file_get_contents($path . $pluginFile))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Use this for extensions
|
||||||
|
*
|
||||||
|
* @return array with namespace and plugin folder
|
||||||
|
*/
|
||||||
|
public function getEnabledPlugins()
|
||||||
|
{
|
||||||
|
$enabledPlugins = array();
|
||||||
|
foreach ($this->_aPluginDetails as $row) {
|
||||||
|
if ($row->enabled) {
|
||||||
|
$enabledPlugins[$row->sNamespace] = $row->sPluginFolder;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $enabledPlugins;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,8 @@
|
|||||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||||
*/
|
*/
|
||||||
|
include_once (PATH_TRUNK."/class.Build.php");
|
||||||
|
use Build\Utils\ProcessMakerPhpBuilderHelper;
|
||||||
|
|
||||||
// lets display the items
|
// lets display the items
|
||||||
$pluginFile = $_GET['id'];
|
$pluginFile = $_GET['id'];
|
||||||
@@ -86,6 +88,16 @@ if ($handle = opendir( PATH_PLUGINS )) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
closedir( $handle );
|
closedir( $handle );
|
||||||
|
/**
|
||||||
|
* Calls PMExtensionClass Builder to include Plugins changes.
|
||||||
|
*/
|
||||||
|
|
||||||
|
$phpBuilder = new ProcessMakerPhpBuilderHelper();
|
||||||
|
$phpBuilder->enabledExtensions = $oPluginRegistry->getEnabledPlugins();
|
||||||
|
if (!empty($phpBuilder->enabledExtensions)) {
|
||||||
|
$phpBuilder->extension = true;
|
||||||
|
}
|
||||||
|
$phpBuilder->buildAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
//$oPluginRegistry->showArrays();
|
//$oPluginRegistry->showArrays();
|
||||||
|
|||||||
Reference in New Issue
Block a user