@@ -29,9 +29,9 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"luracast/restler": "3.0.0-RC4",
|
"luracast/restler": "3.0.0-RC4",
|
||||||
"bshaffer/oauth2-server-php": "v1.0",
|
"bshaffer/oauth2-server-php": "v1.0",
|
||||||
"colosa/pmUI": "3.0.1.8-dev",
|
"colosa/pmUI": "3.1-dev",
|
||||||
"colosa/MichelangeloFE": "3.0.1.8-dev",
|
"colosa/MichelangeloFE": "3.1-dev",
|
||||||
"colosa/pmdynaform": "3.0.1.8-dev",
|
"colosa/pmdynaform": "3.1-dev",
|
||||||
"google/apiclient": "1.1.6",
|
"google/apiclient": "1.1.6",
|
||||||
"dapphp/securimage": "^3.6"
|
"dapphp/securimage": "^3.6"
|
||||||
},
|
},
|
||||||
|
|||||||
109
composer.lock
generated
109
composer.lock
generated
@@ -4,8 +4,8 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"hash": "fc3e38af436accb0aa5aea36913e62fa",
|
"hash": "07bfffacf6ecea0e4afac342d4db00a3",
|
||||||
"content-hash": "80f83ad1776f76da5bae90a4e0a10a01",
|
"content-hash": "d12b99e8a25a545c85e8b5ab125daba2",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "bshaffer/oauth2-server-php",
|
"name": "bshaffer/oauth2-server-php",
|
||||||
@@ -52,14 +52,14 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "colosa/MichelangeloFE",
|
"name": "colosa/MichelangeloFE",
|
||||||
"version": "3.0.1.8-dev",
|
"version": "3.1-dev",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git@bitbucket.org:colosa/michelangelofe.git",
|
"url": "git@bitbucket.org:colosa/michelangelofe.git",
|
||||||
"reference": "7e889f23a7e8397c052a4d9ae6331334b57c9d48"
|
"reference": "7e889f23a7e8397c052a4d9ae6331334b57c9d48"
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"colosa/pmui": "3.0.1.8-dev"
|
"colosa/pmui": "3.1-dev"
|
||||||
},
|
},
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"description": "ProcessMaker Michelangelo Front End",
|
"description": "ProcessMaker Michelangelo Front End",
|
||||||
@@ -71,7 +71,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "colosa/pmDynaform",
|
"name": "colosa/pmDynaform",
|
||||||
"version": "3.0.1.8-dev",
|
"version": "3.1-dev",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git@bitbucket.org:colosa/pmdynaform.git",
|
"url": "git@bitbucket.org:colosa/pmdynaform.git",
|
||||||
@@ -87,7 +87,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "colosa/pmUI",
|
"name": "colosa/pmUI",
|
||||||
"version": "3.0.1.8-dev",
|
"version": "3.1-dev",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git@bitbucket.org:colosa/pmui.git",
|
"url": "git@bitbucket.org:colosa/pmui.git",
|
||||||
@@ -489,16 +489,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/config",
|
"name": "symfony/config",
|
||||||
"version": "v2.8.3",
|
"version": "v2.8.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/config.git",
|
"url": "https://github.com/symfony/config.git",
|
||||||
"reference": "0f8f94e6a32b5c480024eed5fa5cbd2790d0ad19"
|
"reference": "a2edd59c2163c65747fc3f35d132b5a39266bd05"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/config/zipball/0f8f94e6a32b5c480024eed5fa5cbd2790d0ad19",
|
"url": "https://api.github.com/repos/symfony/config/zipball/a2edd59c2163c65747fc3f35d132b5a39266bd05",
|
||||||
"reference": "0f8f94e6a32b5c480024eed5fa5cbd2790d0ad19",
|
"reference": "a2edd59c2163c65747fc3f35d132b5a39266bd05",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -538,20 +538,20 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony Config Component",
|
"description": "Symfony Config Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-02-22 16:12:45"
|
"time": "2016-06-06 11:11:27"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/console",
|
"name": "symfony/console",
|
||||||
"version": "v2.8.3",
|
"version": "v2.8.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/console.git",
|
"url": "https://github.com/symfony/console.git",
|
||||||
"reference": "56cc5caf051189720b8de974e4746090aaa10d44"
|
"reference": "5ac8bc9aa77bb2edf06af3a1bb6bc1020d23acd3"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/console/zipball/56cc5caf051189720b8de974e4746090aaa10d44",
|
"url": "https://api.github.com/repos/symfony/console/zipball/5ac8bc9aa77bb2edf06af3a1bb6bc1020d23acd3",
|
||||||
"reference": "56cc5caf051189720b8de974e4746090aaa10d44",
|
"reference": "5ac8bc9aa77bb2edf06af3a1bb6bc1020d23acd3",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -598,20 +598,20 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony Console Component",
|
"description": "Symfony Console Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-02-28 16:20:50"
|
"time": "2016-06-06 15:06:25"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/dependency-injection",
|
"name": "symfony/dependency-injection",
|
||||||
"version": "v2.8.3",
|
"version": "v2.8.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/dependency-injection.git",
|
"url": "https://github.com/symfony/dependency-injection.git",
|
||||||
"reference": "62251761a7615435b22ccf562384c588b431be44"
|
"reference": "2d05009d890cf1139988ff059b5b2e0eb280ed13"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/62251761a7615435b22ccf562384c588b431be44",
|
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/2d05009d890cf1139988ff059b5b2e0eb280ed13",
|
||||||
"reference": "62251761a7615435b22ccf562384c588b431be44",
|
"reference": "2d05009d890cf1139988ff059b5b2e0eb280ed13",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -627,6 +627,7 @@
|
|||||||
},
|
},
|
||||||
"suggest": {
|
"suggest": {
|
||||||
"symfony/config": "",
|
"symfony/config": "",
|
||||||
|
"symfony/expression-language": "For using expressions in service container configuration",
|
||||||
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
|
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
|
||||||
"symfony/yaml": ""
|
"symfony/yaml": ""
|
||||||
},
|
},
|
||||||
@@ -660,20 +661,20 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony DependencyInjection Component",
|
"description": "Symfony DependencyInjection Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-02-28 16:34:46"
|
"time": "2016-06-06 11:11:27"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/event-dispatcher",
|
"name": "symfony/event-dispatcher",
|
||||||
"version": "v2.8.3",
|
"version": "v2.8.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/event-dispatcher.git",
|
"url": "https://github.com/symfony/event-dispatcher.git",
|
||||||
"reference": "78c468665c9568c3faaa9c416a7134308f2d85c3"
|
"reference": "2a6b8713f8bdb582058cfda463527f195b066110"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/78c468665c9568c3faaa9c416a7134308f2d85c3",
|
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/2a6b8713f8bdb582058cfda463527f195b066110",
|
||||||
"reference": "78c468665c9568c3faaa9c416a7134308f2d85c3",
|
"reference": "2a6b8713f8bdb582058cfda463527f195b066110",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -720,29 +721,29 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony EventDispatcher Component",
|
"description": "Symfony EventDispatcher Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-01-27 05:14:19"
|
"time": "2016-06-06 11:11:27"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/filesystem",
|
"name": "symfony/filesystem",
|
||||||
"version": "v2.8.3",
|
"version": "v3.0.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/filesystem.git",
|
"url": "https://github.com/symfony/filesystem.git",
|
||||||
"reference": "65cb36b6539b1d446527d60457248f30d045464d"
|
"reference": "74fec3511b62cb934b64bce1d96f06fffa4beafd"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/filesystem/zipball/65cb36b6539b1d446527d60457248f30d045464d",
|
"url": "https://api.github.com/repos/symfony/filesystem/zipball/74fec3511b62cb934b64bce1d96f06fffa4beafd",
|
||||||
"reference": "65cb36b6539b1d446527d60457248f30d045464d",
|
"reference": "74fec3511b62cb934b64bce1d96f06fffa4beafd",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=5.3.9"
|
"php": ">=5.5.9"
|
||||||
},
|
},
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
"dev-master": "2.8-dev"
|
"dev-master": "3.0-dev"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -769,21 +770,21 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony Filesystem Component",
|
"description": "Symfony Filesystem Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-02-22 15:02:30"
|
"time": "2016-04-12 18:09:53"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/finder",
|
"name": "symfony/finder",
|
||||||
"version": "v2.3.39",
|
"version": "v2.3.42",
|
||||||
"target-dir": "Symfony/Component/Finder",
|
"target-dir": "Symfony/Component/Finder",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/finder.git",
|
"url": "https://github.com/symfony/finder.git",
|
||||||
"reference": "24cbc57da78ef7d05250c657b18b1ddcb1298bdf"
|
"reference": "dce4b58434fc1cbd66e3006e539bb53074dfea82"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/finder/zipball/24cbc57da78ef7d05250c657b18b1ddcb1298bdf",
|
"url": "https://api.github.com/repos/symfony/finder/zipball/dce4b58434fc1cbd66e3006e539bb53074dfea82",
|
||||||
"reference": "24cbc57da78ef7d05250c657b18b1ddcb1298bdf",
|
"reference": "dce4b58434fc1cbd66e3006e539bb53074dfea82",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -819,20 +820,20 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony Finder Component",
|
"description": "Symfony Finder Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-03-09 12:50:31"
|
"time": "2016-05-13 14:58:35"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/polyfill-mbstring",
|
"name": "symfony/polyfill-mbstring",
|
||||||
"version": "v1.1.1",
|
"version": "v1.2.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
||||||
"reference": "1289d16209491b584839022f29257ad859b8532d"
|
"reference": "dff51f72b0706335131b00a7f49606168c582594"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/1289d16209491b584839022f29257ad859b8532d",
|
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594",
|
||||||
"reference": "1289d16209491b584839022f29257ad859b8532d",
|
"reference": "dff51f72b0706335131b00a7f49606168c582594",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -844,7 +845,7 @@
|
|||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
"dev-master": "1.1-dev"
|
"dev-master": "1.2-dev"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -878,20 +879,20 @@
|
|||||||
"portable",
|
"portable",
|
||||||
"shim"
|
"shim"
|
||||||
],
|
],
|
||||||
"time": "2016-01-20 09:13:37"
|
"time": "2016-05-18 14:26:46"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/translation",
|
"name": "symfony/translation",
|
||||||
"version": "v2.8.3",
|
"version": "v2.8.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/translation.git",
|
"url": "https://github.com/symfony/translation.git",
|
||||||
"reference": "b7b4ebadd2b5e614ff7d2d6fc63e0ed0578909c7"
|
"reference": "8a1648d2e165ba87c759ba57d7f4c13d95fdf4a1"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/translation/zipball/b7b4ebadd2b5e614ff7d2d6fc63e0ed0578909c7",
|
"url": "https://api.github.com/repos/symfony/translation/zipball/8a1648d2e165ba87c759ba57d7f4c13d95fdf4a1",
|
||||||
"reference": "b7b4ebadd2b5e614ff7d2d6fc63e0ed0578909c7",
|
"reference": "8a1648d2e165ba87c759ba57d7f4c13d95fdf4a1",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -942,20 +943,20 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony Translation Component",
|
"description": "Symfony Translation Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-02-02 09:49:18"
|
"time": "2016-06-06 11:11:27"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/yaml",
|
"name": "symfony/yaml",
|
||||||
"version": "v2.8.3",
|
"version": "v2.8.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/yaml.git",
|
"url": "https://github.com/symfony/yaml.git",
|
||||||
"reference": "2a4ee40acb880c56f29fb1b8886e7ffe94f3b995"
|
"reference": "815fabf3f48c7d1df345a69d1ad1a88f59757b34"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/2a4ee40acb880c56f29fb1b8886e7ffe94f3b995",
|
"url": "https://api.github.com/repos/symfony/yaml/zipball/815fabf3f48c7d1df345a69d1ad1a88f59757b34",
|
||||||
"reference": "2a4ee40acb880c56f29fb1b8886e7ffe94f3b995",
|
"reference": "815fabf3f48c7d1df345a69d1ad1a88f59757b34",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -991,7 +992,7 @@
|
|||||||
],
|
],
|
||||||
"description": "Symfony Yaml Component",
|
"description": "Symfony Yaml Component",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-02-23 07:41:20"
|
"time": "2016-06-06 11:11:27"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"aliases": [],
|
"aliases": [],
|
||||||
|
|||||||
@@ -60,6 +60,9 @@ function run_flush_cache($args, $opts)
|
|||||||
G::mk_dir($workspace->path . "/cache", 0777);
|
G::mk_dir($workspace->path . "/cache", 0777);
|
||||||
G::rm_dir($workspace->path . "/cachefiles");
|
G::rm_dir($workspace->path . "/cachefiles");
|
||||||
G::mk_dir($workspace->path . "/cachefiles", 0777);
|
G::mk_dir($workspace->path . "/cachefiles", 0777);
|
||||||
|
if (file_exists($workspace->path.'/routes.php')) {
|
||||||
|
unlink($workspace->path.'/routes.php');
|
||||||
|
}
|
||||||
echo "DONE" . PHP_EOL;
|
echo "DONE" . PHP_EOL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -432,6 +432,23 @@ class PMPlugin
|
|||||||
throw $e;
|
throw $e;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* callBack File on reassign
|
||||||
|
*
|
||||||
|
* @param string $callBackFile
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function registerOpenReassignCallback($callBackFile = '')
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$oPluginRegistry =& PMPluginRegistry::getSingleton();
|
||||||
|
$oPluginRegistry->registerOpenReassignCallback($callBackFile);
|
||||||
|
} catch (Exception $e) {
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class menuDetail
|
class menuDetail
|
||||||
@@ -788,4 +805,20 @@ class importCallBack
|
|||||||
$this->namespace = $namespace;
|
$this->namespace = $namespace;
|
||||||
$this->callBackFile = $callBackFile;
|
$this->callBackFile = $callBackFile;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class OpenReassignCallback
|
||||||
|
{
|
||||||
|
public $callBackFile;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function is the constructor of the cronFile class
|
||||||
|
* param string $namespace
|
||||||
|
* param string $callBackFile
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct($callBackFile)
|
||||||
|
{
|
||||||
|
$this->callBackFile = $callBackFile;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -104,6 +104,7 @@ class PMPluginRegistry
|
|||||||
private $_arrayDesignerMenu = array();
|
private $_arrayDesignerMenu = array();
|
||||||
private $_aMenuOptionsToReplace = array ();
|
private $_aMenuOptionsToReplace = array ();
|
||||||
private $_aImportProcessCallbackFile = array ();
|
private $_aImportProcessCallbackFile = array ();
|
||||||
|
private $_aOpenReassignCallback = array ();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Registry a plugin javascript to include with js core at same runtime
|
* Registry a plugin javascript to include with js core at same runtime
|
||||||
@@ -413,7 +414,10 @@ class PMPluginRegistry
|
|||||||
if(sizeof( $this->_aImportProcessCallbackFile )){
|
if(sizeof( $this->_aImportProcessCallbackFile )){
|
||||||
unset( $this->_aImportProcessCallbackFile );
|
unset( $this->_aImportProcessCallbackFile );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(sizeof( $this->_aOpenReassignCallback )){
|
||||||
|
unset( $this->_aOpenReassignCallback );
|
||||||
|
}
|
||||||
//unregistering javascripts from this plugin
|
//unregistering javascripts from this plugin
|
||||||
$this->unregisterJavascripts( $sNamespace );
|
$this->unregisterJavascripts( $sNamespace );
|
||||||
//unregistering rest services from this plugin
|
//unregistering rest services from this plugin
|
||||||
@@ -1748,5 +1752,42 @@ class PMPluginRegistry
|
|||||||
{
|
{
|
||||||
return $this->_aImportProcessCallbackFile;
|
return $this->_aImportProcessCallbackFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Register a callBackFile in the singleton
|
||||||
|
*
|
||||||
|
* @param string $callBackFile
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function registerOpenReassignCallback ($callBackFile)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$found = false;
|
||||||
|
foreach ($this->_aOpenReassignCallback as $row => $detail) {
|
||||||
|
if ($callBackFile == $detail->callBackFile) {
|
||||||
|
$detail->callBackFile = $callBackFile;
|
||||||
|
$found = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!$found) {
|
||||||
|
$callBackFile = new OpenReassignCallback( $callBackFile );
|
||||||
|
$this->_aOpenReassignCallback[] = $callBackFile;
|
||||||
|
}
|
||||||
|
} catch(Excepton $e) {
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return all callBackFiles registered
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getOpenReassignCallback()
|
||||||
|
{
|
||||||
|
return $this->_aOpenReassignCallback;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ class System
|
|||||||
'error_reporting' => "",
|
'error_reporting' => "",
|
||||||
'display_errors' => 'On',
|
'display_errors' => 'On',
|
||||||
'system_utc_time_zone' => 0,
|
'system_utc_time_zone' => 0,
|
||||||
|
'server_protocol' => '',
|
||||||
'server_hostname_requests_frontend' => ''
|
'server_hostname_requests_frontend' => ''
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -1265,11 +1266,14 @@ class System
|
|||||||
try {
|
try {
|
||||||
$arraySystemConfiguration = self::getSystemConfiguration();
|
$arraySystemConfiguration = self::getSystemConfiguration();
|
||||||
|
|
||||||
|
$serverProtocol = $arraySystemConfiguration['server_protocol'];
|
||||||
|
$serverProtocol = ($serverProtocol != '')? $serverProtocol : ((G::is_https())? 'https' : 'http');
|
||||||
|
|
||||||
$serverHostname = $arraySystemConfiguration['server_hostname_requests_frontend'];
|
$serverHostname = $arraySystemConfiguration['server_hostname_requests_frontend'];
|
||||||
$serverHostname = ($serverHostname != '')? $serverHostname : $_SERVER['HTTP_HOST'];
|
$serverHostname = ($serverHostname != '')? $serverHostname : $_SERVER['HTTP_HOST'];
|
||||||
|
|
||||||
//Return
|
//Return
|
||||||
return ((G::is_https())? 'https://' : 'http://') . $serverHostname;
|
return $serverProtocol . '://' . $serverHostname;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
throw $e;
|
throw $e;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -590,6 +590,14 @@ class Ajax
|
|||||||
$data['USER'] = $userData['USR_LASTNAME'] . ' ' . $userData['USR_FIRSTNAME']; //TODO change with the farmated username from environment conf
|
$data['USER'] = $userData['USR_LASTNAME'] . ' ' . $userData['USR_FIRSTNAME']; //TODO change with the farmated username from environment conf
|
||||||
$result->status = 0;
|
$result->status = 0;
|
||||||
$result->msg = G::LoadTranslation('ID_REASSIGNMENT_SUCCESS', SYS_LANG, $data);
|
$result->msg = G::LoadTranslation('ID_REASSIGNMENT_SUCCESS', SYS_LANG, $data);
|
||||||
|
|
||||||
|
// Save the note reassign reason
|
||||||
|
if (isset($_POST['NOTE_REASON']) && $_POST['NOTE_REASON'] !== '') {
|
||||||
|
require_once ("classes/model/AppNotes.php");
|
||||||
|
$appNotes = new AppNotes();
|
||||||
|
$noteContent = addslashes($_POST['NOTE_REASON']);
|
||||||
|
$appNotes->postNewNote($_SESSION['APPLICATION'], $_SESSION['USER_LOGGED'], $noteContent, $_POST['NOTIFY_REASSIGN']);
|
||||||
|
}
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
$result->status = 1;
|
$result->status = 1;
|
||||||
$result->msg = $e->getMessage();
|
$result->msg = $e->getMessage();
|
||||||
|
|||||||
@@ -222,6 +222,22 @@ $oHeadPublisher->assign('extJsViewState', $oHeadPublisher->getExtJsViewState());
|
|||||||
$oHeadPublisher->assign('isIE', Bootstrap::isIE());
|
$oHeadPublisher->assign('isIE', Bootstrap::isIE());
|
||||||
$oHeadPublisher->assign('__OPEN_APPLICATION_UID__', $openApplicationUid);
|
$oHeadPublisher->assign('__OPEN_APPLICATION_UID__', $openApplicationUid);
|
||||||
|
|
||||||
|
$oPluginRegistry =& PMPluginRegistry::getSingleton();
|
||||||
|
$fromPlugin = $oPluginRegistry->getOpenReassignCallback();
|
||||||
|
$jsFunction = false;
|
||||||
|
if(sizeof($fromPlugin)) {
|
||||||
|
foreach($fromPlugin as $key => $jsFile) {
|
||||||
|
$jsFile = $jsFile->callBackFile;
|
||||||
|
if(is_file($jsFile)) {
|
||||||
|
$jsFile = file_get_contents($jsFile);
|
||||||
|
if(!empty($jsFile)) {
|
||||||
|
$jsFunction[] = $jsFile;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$oHeadPublisher->assign( 'openReassignCallback', $jsFunction );
|
||||||
|
|
||||||
G::RenderPage( 'publish', 'extJs' );
|
G::RenderPage( 'publish', 'extJs' );
|
||||||
|
|
||||||
function getUserArray ($action, $userUid)
|
function getUserArray ($action, $userUid)
|
||||||
@@ -349,7 +365,13 @@ function getReassignList ()
|
|||||||
);
|
);
|
||||||
$caseColumns[] = array ('header' => 'Reassigned Uid','dataIndex' => 'TAS_UID','width' => 120,'hidden' => true,'hideable' => false
|
$caseColumns[] = array ('header' => 'Reassigned Uid','dataIndex' => 'TAS_UID','width' => 120,'hidden' => true,'hideable' => false
|
||||||
);
|
);
|
||||||
$caseColumns[] = array ('header' => G::LoadTranslation( 'ID_REASSIGN_TO' ),'dataIndex' => 'APP_REASSIGN_USER','width' => 170
|
$caseColumns[] = array ('header' => G::LoadTranslation( 'ID_ASSIGNED_TO' ),'dataIndex' => 'APP_CURRENT_USER','width' => 170
|
||||||
|
);
|
||||||
|
$caseColumns[] = array ('header' => G::LoadTranslation( 'ID_REASSIGNED_TO' ),'dataIndex' => 'APP_REASSIGN_USER','width' => 170
|
||||||
|
);
|
||||||
|
$caseColumns[] = array ('header' => G::LoadTranslation( 'ID_REASON' ),'dataIndex' => 'NOTE_REASON','width' => 170
|
||||||
|
);
|
||||||
|
$caseColumns[] = array('header' => G::LoadTranslation('ID_NOTIFY'), 'dataIndex' => 'NOTIFY_REASSIGN', 'width' => 100
|
||||||
);
|
);
|
||||||
|
|
||||||
$caseReaderFields = array ();
|
$caseReaderFields = array ();
|
||||||
@@ -364,6 +386,7 @@ function getReassignList ()
|
|||||||
$caseReaderFields[] = array ('name' => 'APP_REASSIGN_USER');
|
$caseReaderFields[] = array ('name' => 'APP_REASSIGN_USER');
|
||||||
$caseReaderFields[] = array ('name' => 'CASE_SUMMARY');
|
$caseReaderFields[] = array ('name' => 'CASE_SUMMARY');
|
||||||
$caseReaderFields[] = array ('name' => 'CASE_NOTES_COUNT');
|
$caseReaderFields[] = array ('name' => 'CASE_NOTES_COUNT');
|
||||||
|
$caseReaderFields[] = array ('name' => 'APP_CURRENT_USER');
|
||||||
|
|
||||||
return array ('caseColumns' => $caseColumns,'caseReaderFields' => $caseReaderFields,'rowsperpage' => 20,'dateformat' => 'M d, Y'
|
return array ('caseColumns' => $caseColumns,'caseReaderFields' => $caseReaderFields,'rowsperpage' => 20,'dateformat' => 'M d, Y'
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -208,6 +208,14 @@ if ($actionAjax == 'reassignCase') {
|
|||||||
$result = new stdClass();
|
$result = new stdClass();
|
||||||
$result->status = 0;
|
$result->status = 0;
|
||||||
$result->msg = G::LoadTranslation('ID_REASSIGNMENT_SUCCESS', SYS_LANG, $data);
|
$result->msg = G::LoadTranslation('ID_REASSIGNMENT_SUCCESS', SYS_LANG, $data);
|
||||||
|
|
||||||
|
// Save the note reassign reason
|
||||||
|
if (isset($_POST['NOTE_REASON']) && $_POST['NOTE_REASON'] !== '') {
|
||||||
|
require_once ("classes/model/AppNotes.php");
|
||||||
|
$appNotes = new AppNotes();
|
||||||
|
$noteContent = addslashes($_POST['NOTE_REASON']);
|
||||||
|
$res = $appNotes->postNewNote($_SESSION['APPLICATION'], $_SESSION['USER_LOGGED'], $noteContent, $_POST['NOTIFY_REASSIGN']);
|
||||||
|
}
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
$result->status = 1;
|
$result->status = 1;
|
||||||
$result->msg = $e->getMessage();
|
$result->msg = $e->getMessage();
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ if (empty( $aData )) {
|
|||||||
// var_dump($sql);
|
// var_dump($sql);
|
||||||
if (is_array( $aData )) {
|
if (is_array( $aData )) {
|
||||||
$currentCasesReassigned = 0;
|
$currentCasesReassigned = 0;
|
||||||
|
require_once ("classes/model/AppNotes.php");
|
||||||
foreach ($aData as $data) {
|
foreach ($aData as $data) {
|
||||||
$oTmpReassignCriteria = $oCasesReassignList;
|
$oTmpReassignCriteria = $oCasesReassignList;
|
||||||
$oTmpReassignCriteria->add( AppCacheViewPeer::APP_UID, $data->APP_UID );
|
$oTmpReassignCriteria->add( AppCacheViewPeer::APP_UID, $data->APP_UID );
|
||||||
@@ -66,6 +67,13 @@ if (is_array( $aData )) {
|
|||||||
$casesReassignedCount ++;
|
$casesReassignedCount ++;
|
||||||
$serverResponse[] = array ('APP_REASSIGN_USER' => $data->APP_REASSIGN_USER,'APP_TITLE' => $data->APP_TITLE,'TAS_TITLE' => $data->APP_TAS_TITLE,'REASSIGNED_CASES' => $currentCasesReassigned
|
$serverResponse[] = array ('APP_REASSIGN_USER' => $data->APP_REASSIGN_USER,'APP_TITLE' => $data->APP_TITLE,'TAS_TITLE' => $data->APP_TAS_TITLE,'REASSIGNED_CASES' => $currentCasesReassigned
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Save the note reassign reason
|
||||||
|
if (isset($data->NOTE_REASON) && $data->NOTE_REASON !== '') {
|
||||||
|
$appNotes = new AppNotes();
|
||||||
|
$noteContent = addslashes($data->NOTE_REASON);
|
||||||
|
$appNotes->postNewNote($row['APP_UID'], $_SESSION['USER_LOGGED'], $noteContent, isset($data->NOTIFY_REASSIGN) ? $data->NOTIFY_REASSIGN : false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$oTmpReassignCriteria = $oCasesReassignList;
|
$oTmpReassignCriteria = $oCasesReassignList;
|
||||||
|
|||||||
@@ -2892,5 +2892,53 @@ class Cases
|
|||||||
throw $e;
|
throw $e;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Batch reassign
|
||||||
|
*
|
||||||
|
* @param array $data
|
||||||
|
*
|
||||||
|
* return json Return an json with the result of the reassigned cases.
|
||||||
|
*/
|
||||||
|
public function doPostReassign($data)
|
||||||
|
{
|
||||||
|
if(!is_array($data)) {
|
||||||
|
$isJson = is_string($data) && is_array(G::json_decode($data, true)) ? true : false;
|
||||||
|
if($isJson) {
|
||||||
|
$data = G::json_decode($data, true);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$dataResponse = $data;
|
||||||
|
|
||||||
|
G::LoadClass( 'case' );
|
||||||
|
$oCases = new \Cases();
|
||||||
|
$appDelegation = new \AppDelegation();
|
||||||
|
$casesToReassign = $data['cases'];
|
||||||
|
if(sizeof($casesToReassign)) {
|
||||||
|
foreach($casesToReassign as $key => $val) {
|
||||||
|
$usrUid = '';
|
||||||
|
if(array_key_exists('USR_UID', $val)) {
|
||||||
|
if($val['USR_UID'] != '') {
|
||||||
|
$usrUid = $val['USR_UID'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($usrUid == '') {
|
||||||
|
$fields = $appDelegation->load($val['APP_UID'], $val['DEL_INDEX']);
|
||||||
|
$usrUid = $fields['USR_UID'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$reassigned = $oCases->reassignCase($val['APP_UID'], $val['DEL_INDEX'], $usrUid, $data['usr_uid_target']);
|
||||||
|
$result = $reassigned ? 1 : 0 ;
|
||||||
|
$dataResponse['cases'][$key]['result'] = $result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
unset($dataResponse['usr_uid_target']);
|
||||||
|
|
||||||
|
return G::json_encode($dataResponse);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1150,4 +1150,20 @@ class Cases extends Api
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Batch reassign
|
||||||
|
* @url POST /reassign
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function doPostReassign($request_data)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$case = new \ProcessMaker\BusinessModel\Cases();
|
||||||
|
$response = $case->doPostReassign($request_data);
|
||||||
|
return $response;
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -658,6 +658,26 @@ Ext.onReady ( function() {
|
|||||||
columns: columns
|
columns: columns
|
||||||
});
|
});
|
||||||
|
|
||||||
|
for (var i in reassignColumns) {
|
||||||
|
if (reassignColumns[i].dataIndex === 'APP_REASSIGN_USER') {
|
||||||
|
reassignColumns[i].editor = comboUsersToReassign;
|
||||||
|
}
|
||||||
|
if (reassignColumns[i].dataIndex === 'NOTE_REASON') {
|
||||||
|
reassignColumns[i].editor = new Ext.form.TextArea({allowBlank: false});
|
||||||
|
}
|
||||||
|
if (reassignColumns[i].dataIndex === 'NOTIFY_REASSIGN') {
|
||||||
|
reassignColumns[i].editor = new Ext.form.Checkbox({});
|
||||||
|
reassignColumns[i].renderer = function (v, x, s) {
|
||||||
|
if (s.data.NOTIFY_REASSIGN === true) {
|
||||||
|
return _('ID_YES');
|
||||||
|
}
|
||||||
|
if (s.data.NOTIFY_REASSIGN === true) {
|
||||||
|
return _('ID_NO');
|
||||||
|
}
|
||||||
|
return s.data.NOTIFY_REASSIGN;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
var reassignCm = new Ext.grid.ColumnModel({
|
var reassignCm = new Ext.grid.ColumnModel({
|
||||||
defaults: {
|
defaults: {
|
||||||
sortable: true // columns are sortable by default
|
sortable: true // columns are sortable by default
|
||||||
@@ -1155,6 +1175,13 @@ Ext.onReady ( function() {
|
|||||||
// text: 'Reassign',
|
// text: 'Reassign',
|
||||||
// text: TRANSLATIONS.LABEL_UNSELECT_ALL,
|
// text: TRANSLATIONS.LABEL_UNSELECT_ALL,
|
||||||
handler: function(){
|
handler: function(){
|
||||||
|
if(openReassignCallback) {
|
||||||
|
for(var key in openReassignCallback){
|
||||||
|
var callbackFunction = new Function(openReassignCallback[key]);
|
||||||
|
callbackFunction.call();
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
reassign();
|
reassign();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -1493,12 +1520,16 @@ Ext.onReady ( function() {
|
|||||||
var rowSelected = Ext.getCmp("grdpnlUsersToReassign").getSelectionModel().getSelected();
|
var rowSelected = Ext.getCmp("grdpnlUsersToReassign").getSelectionModel().getSelected();
|
||||||
|
|
||||||
if( rowSelected ) {
|
if( rowSelected ) {
|
||||||
|
if (Ext.getCmp('idTextareaReasonCasesList').getValue() === '') {
|
||||||
|
Ext.Msg.alert(_('ID_ALERT'), _('ID_THE_REASON_REASSIGN_EMPTY'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
PMExt.confirm(_('ID_CONFIRM'), _('ID_REASSIGN_CONFIRM'), function(){
|
PMExt.confirm(_('ID_CONFIRM'), _('ID_REASSIGN_CONFIRM'), function(){
|
||||||
var loadMask = new Ext.LoadMask(winReassignInCasesList.getEl(), {msg: _('ID_PROCESSING')});
|
var loadMask = new Ext.LoadMask(winReassignInCasesList.getEl(), {msg: _('ID_PROCESSING')});
|
||||||
loadMask.show();
|
loadMask.show();
|
||||||
Ext.Ajax.request({
|
Ext.Ajax.request({
|
||||||
url : 'casesList_Ajax' ,
|
url : 'casesList_Ajax' ,
|
||||||
params : {actionAjax : 'reassignCase', USR_UID: rowSelected.data.USR_UID, APP_UID: APP_UID, DEL_INDEX:DEL_INDEX},
|
params : {actionAjax : 'reassignCase', USR_UID: rowSelected.data.USR_UID, APP_UID: APP_UID, DEL_INDEX:DEL_INDEX, NOTE_REASON: Ext.getCmp('idTextareaReasonCasesList').getValue(), NOTIFY_REASSIGN: Ext.getCmp('idCheckboxReasonCasesList').getValue()},
|
||||||
success: function ( result, request ) {
|
success: function ( result, request ) {
|
||||||
var data = Ext.util.JSON.decode(result.responseText);
|
var data = Ext.util.JSON.decode(result.responseText);
|
||||||
if( data.status == 0 ) {
|
if( data.status == 0 ) {
|
||||||
@@ -1653,6 +1684,23 @@ Ext.onReady ( function() {
|
|||||||
var smodelUsersToReassign = new Ext.grid.RowSelectionModel({
|
var smodelUsersToReassign = new Ext.grid.RowSelectionModel({
|
||||||
singleSelect: true
|
singleSelect: true
|
||||||
});
|
});
|
||||||
|
|
||||||
|
var textareaReason = new Ext.form.TextArea({
|
||||||
|
id: 'idTextareaReasonCasesList',
|
||||||
|
disabled: true,
|
||||||
|
fieldLabel : _('ID_REASON_REASSIGN'),
|
||||||
|
emptyText: _('ID_REASON_REASSIGN') + '...',
|
||||||
|
enableKeyEvents: true,
|
||||||
|
width: 200
|
||||||
|
});
|
||||||
|
|
||||||
|
var checkboxReason = new Ext.form.Checkbox({
|
||||||
|
id: 'idCheckboxReasonCasesList',
|
||||||
|
disabled: true,
|
||||||
|
fieldLabel : _('ID_NOTIFY_USERS_CASE'),
|
||||||
|
labelSeparator: '',
|
||||||
|
labelStyle: 'margin-left:150px;position:absolute;'
|
||||||
|
});
|
||||||
|
|
||||||
var grdpnlUsersToReassign = new Ext.grid.GridPanel({
|
var grdpnlUsersToReassign = new Ext.grid.GridPanel({
|
||||||
id: "grdpnlUsersToReassign",
|
id: "grdpnlUsersToReassign",
|
||||||
@@ -1660,7 +1708,7 @@ Ext.onReady ( function() {
|
|||||||
store: storeUsersToReassign,
|
store: storeUsersToReassign,
|
||||||
colModel: cmodelUsersToReassign,
|
colModel: cmodelUsersToReassign,
|
||||||
selModel: smodelUsersToReassign,
|
selModel: smodelUsersToReassign,
|
||||||
|
height: 200,
|
||||||
columnLines: true,
|
columnLines: true,
|
||||||
viewConfig: {forceFit: true},
|
viewConfig: {forceFit: true},
|
||||||
enableColumnResize: true,
|
enableColumnResize: true,
|
||||||
@@ -1714,18 +1762,35 @@ Ext.onReady ( function() {
|
|||||||
],
|
],
|
||||||
bbar: pagingUsersToReassign,
|
bbar: pagingUsersToReassign,
|
||||||
|
|
||||||
title: ""
|
title: "",
|
||||||
|
listeners: {
|
||||||
|
click: function () {
|
||||||
|
textareaReason.enable();
|
||||||
|
checkboxReason.enable();
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
winReassignInCasesList = new Ext.Window({
|
winReassignInCasesList = new Ext.Window({
|
||||||
title: '',
|
title: '',
|
||||||
width: 450,
|
width: 450,
|
||||||
height: 350,
|
height: 350,
|
||||||
layout:'fit',
|
layout:'auto',
|
||||||
autoScroll:true,
|
autoScroll:true,
|
||||||
modal: true,
|
modal: true,
|
||||||
|
resizable: false,
|
||||||
maximizable: false,
|
maximizable: false,
|
||||||
items: [grdpnlUsersToReassign]
|
items: [{
|
||||||
|
xtype: 'fieldset',
|
||||||
|
labelWidth: 130,
|
||||||
|
border: false,
|
||||||
|
items: [
|
||||||
|
textareaReason,
|
||||||
|
checkboxReason
|
||||||
|
]
|
||||||
|
},
|
||||||
|
grdpnlUsersToReassign
|
||||||
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
winReassignInCasesList.show();
|
winReassignInCasesList.show();
|
||||||
@@ -2157,113 +2222,93 @@ Ext.onReady ( function() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
var btnExecReassignSelected = new Ext.Button ({
|
var btnExecReassignSelected = new Ext.Button({
|
||||||
text: _('ID_REASSIGN'),
|
text: _('ID_REASSIGN'),
|
||||||
handler: function(){
|
handler: function () {
|
||||||
var rs = storeReassignCases.getModifiedRecords();
|
var rs = storeReassignCases.getModifiedRecords();
|
||||||
if (rs.length < storeReassignCases.totalLength) {
|
if (rs.length < storeReassignCases.totalLength) {
|
||||||
Ext.Msg.confirm( _('ID_CONFIRM'), _('ID_CONFIRM_TO_REASSIGN'), function (btn, text) {
|
Ext.Msg.confirm(_('ID_CONFIRM'), _('ID_CONFIRM_TO_REASSIGN'), function (btn, text) {
|
||||||
if ( btn == 'yes' ) {
|
if (btn == 'yes') {
|
||||||
|
if (!isValidNoteReason(rs)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
ExecReassign();
|
ExecReassign();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
if (!isValidNoteReason(rs)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
ExecReassign();
|
ExecReassign();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function isValidNoteReason(data) {
|
||||||
|
var row, sw = true;
|
||||||
|
for (var i = 0; i < data.length; i++) {
|
||||||
|
row = data[i].data;
|
||||||
|
if (!(row.APP_REASSIGN_USER_UID !== '' && row.NOTE_REASON !== undefined && row.NOTE_REASON !== '')) {
|
||||||
|
sw = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!sw) {
|
||||||
|
Ext.Msg.alert(_('ID_ALERT'), _('ID_THE_REASON_REASSIGN_USER_EMPTY'));
|
||||||
|
}
|
||||||
|
return sw;
|
||||||
|
}
|
||||||
|
|
||||||
var gridForm = new Ext.FormPanel({
|
var gridForm = new Ext.FormPanel({
|
||||||
id: 'reassign-form',
|
id: 'reassign-form',
|
||||||
frame: true,
|
border: true,
|
||||||
labelAlign: 'left',
|
labelAlign: 'left',
|
||||||
//title: 'Company data',
|
width: 736,
|
||||||
bodyStyle:'padding:5px',
|
|
||||||
width: 750,
|
|
||||||
|
|
||||||
|
|
||||||
layout: 'column', // Specifies that the items will now be arranged in columns
|
|
||||||
items: [{
|
items: [{
|
||||||
id : 'tasksGrid',
|
id: 'tasksGrid',
|
||||||
columnWidth: 0.60,
|
columnWidth: 0.60,
|
||||||
layout: 'fit',
|
layout: 'fit',
|
||||||
items: {
|
items: {
|
||||||
id: 'TasksToReassign',
|
id: 'TasksToReassign',
|
||||||
xtype: 'grid',
|
xtype: 'editorgrid',
|
||||||
ds: storeReassignCases,
|
ds: storeReassignCases,
|
||||||
cm: reassignCm,
|
cm: reassignCm,
|
||||||
sm: new Ext.grid.RowSelectionModel({
|
sm: new Ext.grid.RowSelectionModel({
|
||||||
singleSelect: true
|
singleSelect: true
|
||||||
/*listeners: {
|
}),
|
||||||
rowselect: function(sm, row, rec) {
|
//autoExpandColumn: 'company',
|
||||||
Ext.getCmp("reassign-form").getForm().loadRecord(rec);
|
height: 278,
|
||||||
}
|
title: _('ID_CASES_TO_REASSIGN_TASK_LIST'),
|
||||||
}*/
|
border: true,
|
||||||
}),
|
listeners: {
|
||||||
//autoExpandColumn: 'company',
|
click: function () {
|
||||||
height: 265,
|
rows = this.getSelectionModel().getSelections();
|
||||||
title : _('ID_CASES_TO_REASSIGN_TASK_LIST'),
|
var application = '';
|
||||||
border : true,
|
var task = '';
|
||||||
|
var currentUser = '';
|
||||||
listeners: {
|
comboUsersToReassign.disable();
|
||||||
|
if (rows.length > 0) {
|
||||||
click: function() {
|
comboUsersToReassign.enable();
|
||||||
rows = this.getSelectionModel().getSelections();
|
var ids = '';
|
||||||
var application = '';
|
for (var i = 0; i < rows.length; i++) {
|
||||||
var task = '';
|
// filtering duplicate tasks
|
||||||
var currentUser = '';
|
application = rows[i].get('APP_UID');
|
||||||
comboUsersToReassign.disable();
|
task = rows[i].get('TAS_UID');
|
||||||
if( rows.length > 0 ) {
|
currentUser = rows[i].get('USR_UID');
|
||||||
comboUsersToReassign.enable();
|
}
|
||||||
var ids = '';
|
} else {
|
||||||
for(i=0; i<rows.length; i++) {
|
|
||||||
// filtering duplicate tasks
|
|
||||||
application = rows[i].get('APP_UID');
|
|
||||||
task = rows[i].get('TAS_UID');
|
|
||||||
currentUser = rows[i].get('USR_UID');
|
|
||||||
}
|
}
|
||||||
} else {
|
comboUsersToReassign.clearValue();
|
||||||
|
storeUsersToReassign.removeAll();
|
||||||
}
|
storeUsersToReassign.setBaseParam('application', application);
|
||||||
comboUsersToReassign.clearValue();
|
storeUsersToReassign.setBaseParam('task', task);
|
||||||
storeUsersToReassign.removeAll();
|
storeUsersToReassign.setBaseParam('currentUser', currentUser);
|
||||||
storeUsersToReassign.setBaseParam('application', application);
|
storeUsersToReassign.load();
|
||||||
storeUsersToReassign.setBaseParam('task', task);
|
//alert(record.USERS);
|
||||||
storeUsersToReassign.setBaseParam('currentUser', currentUser);
|
} // Allow rows to be rendered.
|
||||||
|
}
|
||||||
storeUsersToReassign.load();
|
|
||||||
//alert(record.USERS);
|
|
||||||
} // Allow rows to be rendered.
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},{
|
]
|
||||||
columnWidth: 0.4,
|
|
||||||
xtype: 'fieldset',
|
|
||||||
labelWidth: 50,
|
|
||||||
title: _('ID_USER_LIST'),
|
|
||||||
defaults: {width: 200, border:false}, // Default config options for child items
|
|
||||||
defaultType: 'textfield',
|
|
||||||
autoHeight: true,
|
|
||||||
bodyStyle: Ext.isIE ? 'text-align: left;padding:0 0 5px 15px;' : 'text-align: left; padding:10px 5px;',
|
|
||||||
border: false,
|
|
||||||
//style: {
|
|
||||||
// "margin-left": "10px", // when you add custom margin in IE 6...
|
|
||||||
// "margin-right": Ext.isIE6 ? (Ext.isStrict ? "-10px" : "-13px") : "0" // you have to adjust for it somewhere else
|
|
||||||
//},
|
|
||||||
items:
|
|
||||||
[
|
|
||||||
comboUsersToReassign,
|
|
||||||
{
|
|
||||||
xtype: 'fieldset',
|
|
||||||
border : true,
|
|
||||||
defaultType: 'textfield',
|
|
||||||
title: _('ID_INSTRUCTIONS'),
|
|
||||||
autoHeight:true,
|
|
||||||
html: _('ID_INSTRUCTIONS_TEXT')
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}]
|
|
||||||
//renderTo: bd
|
//renderTo: bd
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -1047,16 +1047,14 @@ Ext.onReady(function(){
|
|||||||
|
|
||||||
var grdpnlUsersToReassign = new Ext.grid.GridPanel({
|
var grdpnlUsersToReassign = new Ext.grid.GridPanel({
|
||||||
id: "grdpnlUsersToReassign",
|
id: "grdpnlUsersToReassign",
|
||||||
|
|
||||||
store: storeUsersToReassign,
|
store: storeUsersToReassign,
|
||||||
colModel: cmodelUsersToReassign,
|
colModel: cmodelUsersToReassign,
|
||||||
selModel: smodelUsersToReassign,
|
selModel: smodelUsersToReassign,
|
||||||
|
height: 200,
|
||||||
columnLines: true,
|
columnLines: true,
|
||||||
viewConfig: {forceFit: true},
|
viewConfig: {forceFit: true},
|
||||||
enableColumnResize: true,
|
enableColumnResize: true,
|
||||||
enableHdMenu: true,
|
enableHdMenu: true,
|
||||||
|
|
||||||
tbar: [
|
tbar: [
|
||||||
{
|
{
|
||||||
text: _("ID_REASSIGN"),
|
text: _("ID_REASSIGN"),
|
||||||
@@ -1102,19 +1100,52 @@ Ext.onReady(function(){
|
|||||||
],
|
],
|
||||||
bbar: pagingUsersToReassign,
|
bbar: pagingUsersToReassign,
|
||||||
|
|
||||||
title: ""
|
title: "",
|
||||||
|
listeners: {
|
||||||
|
click: function () {
|
||||||
|
textareaReason.enable();
|
||||||
|
checkboxReason.enable();
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
var textareaReason = new Ext.form.TextArea({
|
||||||
|
id: 'idTextareaReason',
|
||||||
|
disabled: true,
|
||||||
|
fieldLabel : _('ID_REASON_REASSIGN'),
|
||||||
|
emptyText: _('ID_REASON_REASSIGN') + '...',
|
||||||
|
enableKeyEvents: true,
|
||||||
|
width: 200
|
||||||
|
});
|
||||||
|
|
||||||
|
var checkboxReason = new Ext.form.Checkbox({
|
||||||
|
id: 'idCheckboxReason',
|
||||||
|
disabled: true,
|
||||||
|
fieldLabel : _('ID_NOTIFY_USERS_CASE'),
|
||||||
|
labelSeparator: '',
|
||||||
|
labelStyle: 'margin-left:150px;position:absolute;'
|
||||||
|
});
|
||||||
|
|
||||||
var winReassignInCasesList = new Ext.Window({
|
var winReassignInCasesList = new Ext.Window({
|
||||||
title: '',
|
title: '',
|
||||||
width: 450,
|
width: 450,
|
||||||
height: 350,
|
height: 350,
|
||||||
layout:'fit',
|
layout: 'auto',
|
||||||
autoScroll:true,
|
autoScroll: true,
|
||||||
modal: true,
|
modal: true,
|
||||||
resizable: false,
|
resizable: false,
|
||||||
maximizable: false,
|
maximizable: false,
|
||||||
items: [grdpnlUsersToReassign]
|
items: [{
|
||||||
|
xtype: 'fieldset',
|
||||||
|
labelWidth: 130,
|
||||||
|
border: false,
|
||||||
|
items: [
|
||||||
|
textareaReason,
|
||||||
|
checkboxReason
|
||||||
|
]
|
||||||
|
},
|
||||||
|
grdpnlUsersToReassign
|
||||||
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
Ext.Ajax.request({
|
Ext.Ajax.request({
|
||||||
@@ -1160,10 +1191,14 @@ Ext.onReady(function(){
|
|||||||
var rowSelected = Ext.getCmp("grdpnlUsersToReassign").getSelectionModel().getSelected();
|
var rowSelected = Ext.getCmp("grdpnlUsersToReassign").getSelectionModel().getSelected();
|
||||||
|
|
||||||
if( rowSelected ) {
|
if( rowSelected ) {
|
||||||
|
if (Ext.getCmp('idTextareaReason').getValue() === '') {
|
||||||
|
Ext.Msg.alert(_('ID_ALERT'), _('ID_THE_REASON_REASSIGN_EMPTY'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
PMExt.confirm(_('ID_CONFIRM'), _('ID_REASSIGN_CONFIRM'), function(){
|
PMExt.confirm(_('ID_CONFIRM'), _('ID_REASSIGN_CONFIRM'), function(){
|
||||||
Ext.Ajax.request({
|
Ext.Ajax.request({
|
||||||
url : 'ajaxListener' ,
|
url : 'ajaxListener' ,
|
||||||
params : {action : 'reassignCase', USR_UID: rowSelected.data.USR_UID},
|
params : {action : 'reassignCase', USR_UID: rowSelected.data.USR_UID, NOTE_REASON: Ext.getCmp('idTextareaReason').getValue(), NOTIFY_REASSIGN: Ext.getCmp('idCheckboxReason').getValue()},
|
||||||
success: function ( result, request ) {
|
success: function ( result, request ) {
|
||||||
var data = Ext.util.JSON.decode(result.responseText);
|
var data = Ext.util.JSON.decode(result.responseText);
|
||||||
if( data.status == 0 ) {
|
if( data.status == 0 ) {
|
||||||
|
|||||||
@@ -74,7 +74,7 @@
|
|||||||
disabled : true,
|
disabled : true,
|
||||||
width : 280,
|
width : 280,
|
||||||
boxMaxWidth : 180,
|
boxMaxWidth : 180,
|
||||||
|
allowBlank: false,
|
||||||
//lazyRender : true,
|
//lazyRender : true,
|
||||||
// store : new Ext.data.Store(),
|
// store : new Ext.data.Store(),
|
||||||
store : storeUsersToReassign,
|
store : storeUsersToReassign,
|
||||||
|
|||||||
@@ -902,7 +902,7 @@ if (! defined( 'EXECUTE_BY_CRON' )) {
|
|||||||
if (PHP_VERSION < 5.2) {
|
if (PHP_VERSION < 5.2) {
|
||||||
setcookie(session_name(), session_id(), time() + $timelife, '/', '; HttpOnly');
|
setcookie(session_name(), session_id(), time() + $timelife, '/', '; HttpOnly');
|
||||||
} else {
|
} else {
|
||||||
setcookie(session_name(), session_id(), time() + $timelife, '/', null, false, true);
|
setcookie(session_name(), session_id(), time() + $timelife, '/', null, G::is_https(), true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$RBAC->initRBAC();
|
$RBAC->initRBAC();
|
||||||
@@ -979,7 +979,7 @@ if (! defined( 'EXECUTE_BY_CRON' )) {
|
|||||||
if (PHP_VERSION < 5.2) {
|
if (PHP_VERSION < 5.2) {
|
||||||
setcookie(session_name(), session_id(), time() + $timelife, '/', '; HttpOnly');
|
setcookie(session_name(), session_id(), time() + $timelife, '/', '; HttpOnly');
|
||||||
} else {
|
} else {
|
||||||
setcookie(session_name(), session_id(), time() + $timelife, '/', null, false, true);
|
setcookie(session_name(), session_id(), time() + $timelife, '/', null, G::is_https(), true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$RBAC->initRBAC();
|
$RBAC->initRBAC();
|
||||||
|
|||||||
Reference in New Issue
Block a user