diff --git a/bootstrap/app.php b/bootstrap/app.php index e1cbf9613..0a03bfd24 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -8,6 +8,7 @@ use Illuminate\Foundation\Exceptions\Handler; use Illuminate\Foundation\Http\Kernel as Kernel3; use Monolog\Formatter\LineFormatter; use Monolog\Handler\RotatingFileHandler; +use ProcessMaker\Core\System; /* |-------------------------------------------------------------------------- @@ -50,6 +51,8 @@ $app->singleton( Handler::class ); +$app->useStoragePath(System::getPathsInstalled()->pathData); + /* |-------------------------------------------------------------------------- | Return The Application diff --git a/config/customMimeTypes.php b/config/customMimeTypes.php index e3ec006b8..f5c17aa8c 100644 --- a/config/customMimeTypes.php +++ b/config/customMimeTypes.php @@ -84,7 +84,7 @@ return [ 'crl' => 'application/pkix-crl', 'crt' => 'application/x-x509-user-cert', 'csh' => 'text/x-script.csh', - 'css' => 'text/css', + 'css' => ['text/css', 'text/plain'], 'cst' => 'application/x-director', 'cxt' => 'application/x-director', 'cxx' => ['text/x-c', 'text/plain'], @@ -220,7 +220,7 @@ return [ 'jpgm' => 'video/jpm', 'jpm' => 'video/jpm', 'jps' => 'image/x-jps', - 'js' => 'text/ecmascript', + 'js' => ['text/ecmascript', 'text/plain'], 'json' => ['text/plain', 'text/json', 'text/javascript'], 'jsonp' => 'application/javascript', 'jut' => 'image/jutvision', diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml index 5e1d5981e..a9b23a22b 100644 --- a/workflow/engine/config/schema.xml +++ b/workflow/engine/config/schema.xml @@ -328,6 +328,10 @@ + + + + @@ -1310,6 +1314,16 @@ + + + + + + + + + +
@@ -1559,6 +1573,10 @@ + + + +
@@ -1603,6 +1621,10 @@ + + + +
diff --git a/workflow/engine/data/mysql/schema.sql b/workflow/engine/data/mysql/schema.sql index 75a53edcd..0d2445581 100644 --- a/workflow/engine/data/mysql/schema.sql +++ b/workflow/engine/data/mysql/schema.sql @@ -136,7 +136,8 @@ CREATE TABLE `APP_DOCUMENT` PRIMARY KEY (`APP_DOC_UID`,`DOC_VERSION`), KEY `indexAppDocument`(`FOLDER_UID`, `APP_DOC_UID`), KEY `indexAppUid`(`APP_UID`), - KEY `indexAppUidDocUidDocVersionDocType`(`APP_UID`, `DOC_UID`, `DOC_VERSION`, `APP_DOC_TYPE`) + KEY `indexAppUidDocUidDocVersionDocType`(`APP_UID`, `DOC_UID`, `DOC_VERSION`, `APP_DOC_TYPE`), + KEY `indexFolderUidDocStatus`(`FOLDER_UID`, `APP_DOC_STATUS`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Documents in an Application'; #----------------------------------------------------------------------------- #-- APP_MESSAGE @@ -619,7 +620,9 @@ CREATE TABLE `STEP` `STEP_CONDITION` MEDIUMTEXT NOT NULL, `STEP_POSITION` INTEGER default 0 NOT NULL, `STEP_MODE` VARCHAR(10) default 'EDIT', - PRIMARY KEY (`STEP_UID`) + PRIMARY KEY (`STEP_UID`), + KEY `indexTasUidTypeUidObj`(`TAS_UID`, `STEP_TYPE_OBJ`, `STEP_UID_OBJ`), + KEY `indexProUidTasUidPosition`(`PRO_UID`, `TAS_UID`, `STEP_POSITION`) )ENGINE=InnoDB DEFAULT CHARSET='utf8'; #----------------------------------------------------------------------------- #-- STEP_TRIGGER @@ -735,7 +738,8 @@ CREATE TABLE `TASK` `TAS_RECEIVE_MESSAGE` MEDIUMTEXT, PRIMARY KEY (`TAS_UID`), UNIQUE KEY `INDEX_TAS_ID` (`TAS_ID`), - KEY `indexTasUid`(`TAS_UID`) + KEY `indexTasUid`(`TAS_UID`), + KEY `indexAssgTypeGrpVar`(`TAS_ASSIGN_TYPE`, `TAS_GROUP_VARIABLE`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Task of workflow'; #----------------------------------------------------------------------------- #-- TASK_USER @@ -752,7 +756,8 @@ CREATE TABLE `TASK_USER` `TU_TYPE` INTEGER default 1 NOT NULL, `TU_RELATION` INTEGER default 0 NOT NULL, `ASSIGNED_ID` INTEGER default 0, - PRIMARY KEY (`TAS_UID`,`USR_UID`,`TU_TYPE`,`TU_RELATION`) + PRIMARY KEY (`TAS_UID`,`USR_UID`,`TU_TYPE`,`TU_RELATION`), + KEY `indexUsrUidType`(`USR_UID`, `TU_TYPE`) )ENGINE=InnoDB DEFAULT CHARSET='utf8'; #----------------------------------------------------------------------------- #-- TRANSLATION diff --git a/workflow/engine/src/ProcessMaker/Core/System.php b/workflow/engine/src/ProcessMaker/Core/System.php index 1269689cb..c7763420d 100644 --- a/workflow/engine/src/ProcessMaker/Core/System.php +++ b/workflow/engine/src/ProcessMaker/Core/System.php @@ -1656,5 +1656,30 @@ class System app()->make(Kernel::class)->bootstrap(); restore_error_handler(); } + + /** + * If the installation file exists it returns the defined values. + * @return object + */ + public static function getPathsInstalled() + { + //default values + $result = [ + 'pathData' => getcwd() . '/shared', + 'pathCompiled' => getcwd() . '/shared/compiled', + ]; + + $pathsInstalled = getcwd() . "/workflow/engine/config/paths_installed.php"; + if (file_exists($pathsInstalled)) { + $script = "require_once '{$pathsInstalled}';" + . "return [" + . "'pathData' => PATH_DATA," + . "'pathCompiled' => PATH_C," + . "'hashInstallation' => HASH_INSTALLATION," + . "'systemHash' => SYSTEM_HASH," + . "];"; + $result = eval($script); + } + return (object) $result; + } } -// end System class