Merge remote-tracking branch 'origin/feature/HOR-3274A' into feature/HOR-3559

This commit is contained in:
davidcallizaya
2017-08-10 21:59:01 -04:00
44 changed files with 59715 additions and 555 deletions

1
.gitignore vendored
View File

@@ -38,3 +38,4 @@ workflow/public_html/translations/
build-prod.zip build-prod.zip
node_modules node_modules
/workflow/engine/config/system-tables.ini /workflow/engine/config/system-tables.ini
test_shared/

View File

@@ -1,37 +1,15 @@
# behat.yml # behat.yml
default: default:
context: suites:
webentry2_features:
paths:
- %paths.base%/features/webentry2
- %paths.base%/features/test
contexts:
- FeatureContext:
parameters: parameters:
base_url: http://processmaker-ip-or-domain/api/1.0/[workspace]/ webDriverHost: "http://localhost:4444"
access_token: e79057f4276661bedb6154eed3834f6cbd738853 browser: "chrome"
client_id: x-pm-local-client capabilities:
client_secret: 179ad45c6ce2cb97cf1029e212046e81 browserName: chrome
#uploadFilesFolder: /opt/uploadfiles platform: ANY
#cd5cff9b2e3ebabf49e276e47e977fab5988c00e
login_url: http://processmaker-ip-or-domain/sys[workspace]/en/neoclassic/login/login
authentication_url: http://processmaker-ip-or-domain/sys[workspace]/en/neoclassic/login/authentication.php
oauth_app_url: http://processmaker-ip-or-domain/sys[workspace]/en/neoclassic/oauth2/clientSetupAjax
oauth_authorization_url: http://processmaker-ip-or-domain/[workspace]/oauth2/authorize
user_name: <your-admin-username>
user_password: <your-admin-password>
# Database connection parameters
# To Mysql
mys_db_type: mysql
mys_db_server: <your-mysql-server-ip>
mys_db_name: <your-db-name>
mys_db_username: <your-db-username>
mys_db_password:<your-db-password>
mys_db_port: 3306
mys_db_encode: utf8
mys_db_description: Mysql connection
# To SQL Server
sqlsrv_db_type: mssql
sqlsrv_db_server: <your-myssql-server-ip>
sqlsrv_db_name: <your-db-name>
sqlsrv_db_username: <your-db-username>
sqlsrv_db_password: <your-db-password>
sqlsrv_db_port: 1433
sqlsrv_db_encode: utf8
sqlsrv_db_description: Microsoft SQL Server connection

View File

@@ -47,7 +47,10 @@
}, },
"require-dev": { "require-dev": {
"guzzle/guzzle": "~3.1.1", "guzzle/guzzle": "~3.1.1",
"phpunit/phpunit": "~5.7" "phpunit/phpunit": "~5.7",
"lmc/steward": "^2.2",
"behat/behat": "^3.3",
"behat/mink-selenium2-driver": "^1.3"
}, },
"autoload": { "autoload": {
"psr-0": { "psr-0": {

1530
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,152 @@
<?php
use Behat\Mink\Session;
/**
* Window
*/
class Browser extends Session
{
/**
* Time to wait before use after selecting an element.
* To avoid click or get information about an element that
* is still beeing proceesed by javascript.
*
* @var integer
*/
public $waitForJavascriptProcessing=500;
/**
* Get an element by id.
*
* @param string $id
* @return \Behat\Mink\Element\NodeElement
*/
public function getElementByXpath($xpath, $wait = true)
{
$wait ? $this->waitFor($xpath) : null;
$found = $this->getDriver()->find($xpath);
return $found ? $found[0] : null;
}
/**
* Get an element by id.
*
* @param string $id
* @return \Behat\Mink\Element\NodeElement
*/
public function getElementById($id, $wait = true)
{
$xpath = "//*[@id=".
$this->encodeXpathString($id).
"]";
$wait ? $this->waitFor($xpath) : null;
$found = $this->getDriver()->find($xpath);
return $found ? $found[0] : null;
}
/**
* Get the elements that contains and specific text.
*
* @param string $textContent
* @return \Behat\Mink\Element\NodeElement[]
*/
public function getElementsByTextContent(
$textContent,
$base = '//*',
$wait = true
) {
$xpath = $base.
"[contains(., ".
$this->encodeXpathString($textContent).
")]";
$wait ? $this->waitFor($xpath) : null;
return $this->getDriver()->find($xpath);
}
/**
* Encodes and string to be used inside an xpath expression.
*
* @param string $string
* @return string
*/
public function encodeXpathString($string)
{
if (strpos($string, '"') !== false && strpos($string, "'") !== false) {
$parts = preg_split(
'/(\'|")/', $string, -1,
PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY
);
$encoded = [];
foreach ($parts as $str) {
$encoded[] = $this->encodeXpathString($str);
}
return 'concat('.implode(',', $encoded).')';
} elseif (strpos($string, '"') !== false) {
return "'".$string."'";
} else {
return '"'.$string.'"';
}
}
/**
* Wait until elements defined with a xpath expression are present.
*
* @param string $xpath
* @param int $time
*/
public function waitFor($xpath, $time = 5000)
{
$jxpath = json_encode($xpath);
$condition = 'document.evaluate('.$jxpath.', document, null, XPathResult.ANY_TYPE, null).iterateNext()!==null';
$this->wait($time, $condition);
//Wait for javascript event handlers
$this->wait($this->waitForJavascriptProcessing);
}
/**
* Get the last element that match a text.
*
* @param string $text
* @return \Behat\Mink\Element\NodeElement
*/
public function getElementByTextContent($text, $cssClass = '')
{
if ($cssClass) {
$base = '//*[contains(@class, '.$this->encodeXpathString($cssClass).')]';
} else {
$base = '//*';
}
$tags = $this->getElementsByTextContent($text, $base);
return $tags ? $tags[count($tags) - 1] : null;
}
/**
* Get the last element that match a text.
*
* @param string $text
* @return \Behat\Mink\Element\NodeElement
*/
public function getElementByValue($selector, $value)
{
$base = '//'.$selector;
$tags = $this->getDriver()->find($base);
$regexp = '/'.str_replace('\*', '.*', preg_quote($value, '/')).'/';
foreach ($tags as $tag) {
if (preg_match($regexp, $tag->getValue())) {
return $tag;
}
}
return $tags ? $tags[count($tags)-1] : null;
}
/**
* Returns Session ID of WebDriver or `null`, when session not started yet.
*
* @return string|null
*/
public function getWebDriverSessionId()
{
return $this->getDriver()->getWebDriverSessionId();
}
}

View File

@@ -1,67 +1,248 @@
<?php <?php
use Behat\Behat\Context\ClosuredContextInterface, use Behat\Behat\Context\Context;
Behat\Behat\Context\TranslatedContextInterface, use Behat\Behat\Hook\Scope\AfterScenarioScope;
Behat\Behat\Context\BehatContext,
Behat\Behat\Exception\PendingException; require 'config.php';
use Behat\Gherkin\Node\PyStringNode,
Behat\Gherkin\Node\TableNode;
//
// Require 3rd-party libraries here:
//
// require_once 'PHPUnit/Autoload.php';
// require_once 'PHPUnit/Framework/Assert/Functions.php';
//
require_once 'config.php';
/** /**
* Features context. * Defines application features from the specific context.
*/ */
class FeatureContext extends BehatContext class FeatureContext extends WorkflowTestCase implements Context
{ {
/**
*
* @var Browser $browser
*/
protected $browser;
/**
*
* @var string $clipboard
*/
protected $clipboard;
/**
*
* @var Array $parameters
*/
protected $parameters;
/** /**
* Initializes context. * Initializes context.
* Every scenario gets it's own context object.
* *
* @param array $parameters context parameters (set them up through behat.yml) * Every scenario gets its own context instance.
* You can also pass arbitrary arguments to the
* context constructor through behat.yml.
*/ */
public function __construct(array $parameters) public function __construct($parameters)
{ {
// Initialize your context here $this->parameters = $parameters;
$this->useContext('RestContext', new RestContext($parameters)); }
/** @AfterScenario */
public function after(AfterScenarioScope $scope)
{
//Close the browser if it was opened.
$this->closeTheBrowser();
} }
/** /**
* @When /^I run "([^"]*)"$/ * @Given a new workspace
*/ */
public function iRun($command) public function aNewWorkspace()
{ {
exec($command, $result); $this->setupDB();
$this->output = $result; $this->installLicense(__DIR__.'/../resources/license_*.dat');
$this->config(['CFG_UID' => 'getStarted', 'CFG_VALUE' => '1']);
$this->setTranslation('ID_INVALID_VALUE_CAN_NOT_BE_EMPTY',
'ID_INVALID_VALUE_CAN_NOT_BE_EMPTY({0})');
$this->setTranslation('ID_UNDEFINED_VALUE_IS_REQUIRED',
'ID_UNDEFINED_VALUE_IS_REQUIRED({0})');
$this->setTranslation('ID_WEB_ENTRY_EVENT_DOES_NOT_EXIST',
'ID_WEB_ENTRY_EVENT_DOES_NOT_EXIST({0})');
$this->setTranslation('ID_INVALID_VALUE_ONLY_ACCEPTS_VALUES',
'ID_INVALID_VALUE_ONLY_ACCEPTS_VALUES({0},{1})');
} }
/** /**
* @Then /^I should see the file "([^"]*)"$/ * @Then Config env.ini with :arg1
*/ */
public function iShouldSeeTheFile($fileName) public function configEnvIniWith($arg1)
{ {
if (!in_array($fileName, $this->output)) { $args = explode("=", $arg1);
throw new Exception('File named ' . $fileName . ' not found!'); $name = trim($args[0]);
$value = isset($args[1]) ? trim($args[1]) : '';
$this->setEnvIni($name, $value);
} }
/**
* @Then Config env.ini without :arg1
*/
public function configEnvIniWithout($arg1)
{
$this->unsetEnvIni($arg1);
} }
/**
// * @Given Import process :arg1
// Place your definition and hook methods here: */
// public function importProcess($arg1)
// /** {
// * @Given /^I have done something with "([^"]*)"$/ $this->import(__DIR__.'/../resources/'.$arg1);
// */ }
// public function iHaveDoneSomethingWith($argument)
// { /**
// doSomethingWith($argument); * @Then Go to Processmaker login
// } */
// public function goToProcessmakerLogin()
{
$session = $this->browser;
$session->visit($this->getBaseUrl('login/login'));
}
/**
* @Then Login as :arg1 :arg2
*/
public function loginAs($arg1, $arg2)
{
$session = $this->browser;
$username = $session->getElementById('form[USR_USERNAME]');
$username->setValue('admin');
$password = $session->getElementById('form[USR_PASSWORD_MASK]');
$password->setValue('admin');
$submit = $session->getElementById('form[BSUBMIT]');
$submit->click();
}
/**
* @When Inside :arg1
*/
public function inside($arg1)
{
$this->browser->switchToIFrame($arg1);
}
/**
* @Then Copy :arg1 of :arg2
*/
public function copyOf($arg1, $arg2)
{
$element = $this->browser->getElementByXpath($arg2);
$this->clipboard = $element->getAttribute($arg1);
}
/**
* @Then Double click on :arg1
*/
public function doubleClickOn($arg1)
{
$process = $this->browser->getElementByTextContent($arg1);
$process->doubleClick();
}
/**
* @Then Right click on :arg1
*/
public function rightClickOn($arg1)
{
$this->browser->getElementByTextContent($arg1)->rightClick();
}
/**
* @Then Click on :arg1 inside :arg2
*/
public function clickOnInside($arg1, $arg2)
{
$this->browser->getElementByTextContent($arg1, $arg2)->click();
}
/**
* @Then Copy value of :arg1 like :arg2
*/
public function copyValueOfLike($arg1, $arg2)
{
$this->clipboard = $this->browser->getElementByValue($arg1, $arg2)->getValue();
}
/**
* @Then Logout Processmaker
*/
public function logoutProcessmaker()
{
$this->browser->visit($this->getBaseUrl('login/login'));
}
/**
* @Then open url copied
*/
public function openUrlCopied()
{
$this->browser->visit($this->clipboard);
}
/**
* @Then Verify the page does not redirect to the standard \/login\/login
*/
public function verifyThePageDoesNotRedirectToTheStandardLoginLogin()
{
$this->assertEquals($this->clipboard, $this->browser->getCurrentUrl());
}
/**
* @Then Verify the page goes to the WebEntry steps
*/
public function verifyThePageGoesToTheWebentrySteps()
{
$this->assertLessThan(count($this->browser->getElementsByTextContent('Next Step')), 0);
}
/**
* @Then Open a browser
*/
public function openABrowser()
{
$this->browser = $this->openBrowser();
}
/**
* @Then close the browser
*/
public function closeTheBrowser()
{
if ($this->browser) {
$sessionId = $this->browser->getWebDriverSessionId();
$this->browser->wait(1000);
$this->browser->stop();
echo "Video available at:\n";
echo $this->parameters['webDriverHost']."/grid/admin/HubVideoDownloadServlet?sessionId=".$sessionId;
$this->browser = null;
}
}
/**
*
* @return \Browser
*/
private function openBrowser()
{
$capabilities = $this->parameters['capabilities'];
$capabilities['seleniumProtocol'] = "WebDriver";
if (empty($capabilities['browserName'])) {
$capabilities['browserName'] = 'chrome';
}
$driver = new \Behat\Mink\Driver\Selenium2Driver(
$capabilities['browserName'],
$capabilities,
$this->parameters['webDriverHost'].'/wd/hub'
);
$session = new Browser($driver);
$session->start();
return $session;
}
public function __destruct()
{
$this->closeTheBrowser();
}
} }

View File

@@ -10,3 +10,14 @@ $config = array (
'refresh_token' => "ade174976fe77f12ecde7c9e1d8307ac495f443e", 'refresh_token' => "ade174976fe77f12ecde7c9e1d8307ac495f443e",
); );
call_user_func(function() {
$phpunit = new DOMDocument;
$phpunit->load(__DIR__.'/../../phpunit.xml');
foreach($phpunit->getElementsByTagName('php') as $php) {
foreach($php->getElementsByTagName('var') as $var) {
$GLOBALS[$var->getAttribute("name")] = $var->getAttribute("value");
}
}
});
require __DIR__.'/../../tests/bootstrap.php';

View File

@@ -0,0 +1,922 @@
<?xml version="1.0" encoding="utf-8"?>
<ProcessMaker-Project version="3.0">
<metadata>
<meta key="vendor_version"><![CDATA[(Branch bugfix/HOR-3373)]]></meta>
<meta key="vendor_version_code">Michelangelo</meta>
<meta key="export_timestamp">1498574271</meta>
<meta key="export_datetime"><![CDATA[2017-06-27T10:37:51-04:00]]></meta>
<meta key="export_server_addr"><![CDATA[127.0.0.1:8080]]></meta>
<meta key="export_server_os">Darwin</meta>
<meta key="export_server_php_version">50621</meta>
<meta key="export_version">1</meta>
<meta key="workspace">test</meta>
<meta key="name">WebEntryEvent</meta>
<meta key="uid">441299927591d969ff284b7005303758</meta>
</metadata>
<definition class="BPMN">
<table name="ACTIVITY">
<record>
<act_uid>382310413591d96b6cb34d7077964801</act_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<act_name>Task 1</act_name>
<act_type>TASK</act_type>
<act_is_for_compensation>0</act_is_for_compensation>
<act_start_quantity>1</act_start_quantity>
<act_completion_quantity>0</act_completion_quantity>
<act_task_type>EMPTY</act_task_type>
<act_implementation></act_implementation>
<act_instantiate>0</act_instantiate>
<act_script_type></act_script_type>
<act_script></act_script>
<act_loop_type>EMPTY</act_loop_type>
<act_test_before>0</act_test_before>
<act_loop_maximum>0</act_loop_maximum>
<act_loop_condition>0</act_loop_condition>
<act_loop_cardinality>0</act_loop_cardinality>
<act_loop_behavior>0</act_loop_behavior>
<act_is_adhoc>0</act_is_adhoc>
<act_is_collapsed>0</act_is_collapsed>
<act_completion_condition>0</act_completion_condition>
<act_ordering>0</act_ordering>
<act_cancel_remaining_instances>1</act_cancel_remaining_instances>
<act_protocol>0</act_protocol>
<act_method>0</act_method>
<act_is_global>0</act_is_global>
<act_referer>0</act_referer>
<act_default_flow>0</act_default_flow>
<act_master_diagram>0</act_master_diagram>
<bou_uid>635529260591d96b6cbfcb7051450866</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>382310413591d96b6cb34d7077964801</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>256</bou_x>
<bou_y>79</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="ARTIFACT"/>
<table name="BOUND">
<record>
<bou_uid>214544408591d96f0071200088162965</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>754852677591d96f0066c53097043776</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>213</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>635529260591d96b6cbfcb7051450866</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>382310413591d96b6cb34d7077964801</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>256</bou_x>
<bou_y>79</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>735358742591d96b70622c8075629514</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>349681056591d96b7059a07092140602</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>908599339591d96b70910b0020050417</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>132598392591d96b7084aa6048071487</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>545</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="DATA"/>
<table name="DIAGRAM">
<record>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_name>WebEntryEvent</dia_name>
<dia_is_closable>0</dia_is_closable>
</record>
</table>
<table name="DOCUMENTATION"/>
<table name="EVENT">
<record>
<evn_uid>754852677591d96f0066c53097043776</evn_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<evn_name></evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>214544408591d96f0071200088162965</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>754852677591d96f0066c53097043776</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>213</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>349681056591d96b7059a07092140602</evn_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<evn_name>first</evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>735358742591d96b70622c8075629514</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>349681056591d96b7059a07092140602</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>132598392591d96b7084aa6048071487</evn_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<evn_name></evn_name>
<evn_type>END</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message></evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>THROW</evn_behavior>
<bou_uid>908599339591d96b70910b0020050417</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>132598392591d96b7084aa6048071487</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>545</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="EXTENSION"/>
<table name="FLOW">
<record>
<flo_uid>85805175959526a730f76b2063192396</flo_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>382310413591d96b6cb34d7077964801</flo_element_origin>
<flo_element_origin_type>bpmnActivity</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>132598392591d96b7084aa6048071487</flo_element_dest>
<flo_element_dest_type>bpmnEvent</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>407</flo_x1>
<flo_y1>117</flo_y1>
<flo_x2>545</flo_x2>
<flo_y2>117</flo_y2>
<flo_state><![CDATA[[{"x":407,"y":117},{"x":545,"y":117}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>92420993359526a730f7569046601886</flo_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>349681056591d96b7059a07092140602</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>382310413591d96b6cb34d7077964801</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>133</flo_x1>
<flo_y1>117</flo_y1>
<flo_x2>256</flo_x2>
<flo_y2>117</flo_y2>
<flo_state><![CDATA[[{"x":133,"y":117},{"x":256,"y":117}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>94742392759526a730f7308076877504</flo_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>754852677591d96f0066c53097043776</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>382310413591d96b6cb34d7077964801</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>133</flo_x1>
<flo_y1>230</flo_y1>
<flo_x2>332</flo_x2>
<flo_y2>154</flo_y2>
<flo_state><![CDATA[[{"x":133,"y":230},{"x":332,"y":230},{"x":332,"y":154}]]]></flo_state>
<flo_position>1</flo_position>
</record>
</table>
<table name="GATEWAY"/>
<table name="LANE"/>
<table name="LANESET"/>
<table name="PARTICIPANT"/>
<table name="PROCESS">
<record>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<pro_name>WebEntryEvent</pro_name>
<pro_type>NONE</pro_type>
<pro_is_executable>0</pro_is_executable>
<pro_is_closed>0</pro_is_closed>
<pro_is_subprocess>0</pro_is_subprocess>
</record>
</table>
<table name="PROJECT">
<record>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<prj_name>WebEntryEvent</prj_name>
<prj_description></prj_description>
<prj_target_namespace></prj_target_namespace>
<prj_expresion_language></prj_expresion_language>
<prj_type_language></prj_type_language>
<prj_exporter></prj_exporter>
<prj_exporter_version></prj_exporter_version>
<prj_create_date><![CDATA[2017-05-18 12:42:08]]></prj_create_date>
<prj_update_date><![CDATA[2017-06-27 10:23:46]]></prj_update_date>
<prj_author>00000000000000000000000000000001</prj_author>
<prj_author_version></prj_author_version>
<prj_original_source></prj_original_source>
</record>
</table>
</definition>
<definition class="workflow">
<table name="process">
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<pro_title>WebEntryEvent</pro_title>
<pro_description></pro_description>
<pro_parent>441299927591d969ff284b7005303758</pro_parent>
<pro_time>1</pro_time>
<pro_timeunit>DAYS</pro_timeunit>
<pro_status>ACTIVE</pro_status>
<pro_type_day></pro_type_day>
<pro_type>NORMAL</pro_type>
<pro_assignment>FALSE</pro_assignment>
<pro_show_map>0</pro_show_map>
<pro_show_message>0</pro_show_message>
<pro_subprocess>0</pro_subprocess>
<pro_tri_create></pro_tri_create>
<pro_tri_open></pro_tri_open>
<pro_tri_deleted></pro_tri_deleted>
<pro_tri_canceled></pro_tri_canceled>
<pro_tri_paused></pro_tri_paused>
<pro_tri_reassigned></pro_tri_reassigned>
<pro_tri_unpaused></pro_tri_unpaused>
<pro_type_process>PUBLIC</pro_type_process>
<pro_show_delegate>0</pro_show_delegate>
<pro_show_dynaform>0</pro_show_dynaform>
<pro_category></pro_category>
<pro_sub_category></pro_sub_category>
<pro_industry>0</pro_industry>
<pro_update_date><![CDATA[2017-06-27 10:23:46]]></pro_update_date>
<pro_create_date><![CDATA[2017-06-27 10:23:46]]></pro_create_date>
<pro_create_user></pro_create_user>
<pro_height>5000</pro_height>
<pro_width>10000</pro_width>
<pro_title_x>0</pro_title_x>
<pro_title_y>0</pro_title_y>
<pro_debug>0</pro_debug>
<pro_dynaforms></pro_dynaforms>
<pro_derivation_screen_tpl></pro_derivation_screen_tpl>
<pro_cost>0</pro_cost>
<pro_unit_cost></pro_unit_cost>
<pro_itee>1</pro_itee>
<pro_action_done><![CDATA[a:1:{i:0;s:41:"GATEWAYTOGATEWAY_DELETE_CORRUPTED_RECORDS";}]]></pro_action_done>
<pro_category_label>No Category</pro_category_label>
<pro_bpmn>1</pro_bpmn>
</record>
</table>
<table name="tasks">
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>382310413591d96b6cb34d7077964801</tas_uid>
<tas_title>Task 1</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>NORMAL</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>256</tas_posx>
<tas_posy>79</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-52677591d96f0066c53097043776</tas_uid>
<tas_title>WEBENTRYEVENT</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>WEBENTRYEVENT</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>100</tas_posx>
<tas_posy>213</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-81056591d96b7059a07092140602</tas_uid>
<tas_title>WEBENTRYEVENT</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>WEBENTRYEVENT</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>100</tas_posx>
<tas_posy>100</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
</table>
<table name="routes">
<record>
<rou_uid>34124367559526a737f2d69069467270</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-52677591d96f0066c53097043776</tas_uid>
<rou_next_task>382310413591d96b6cb34d7077964801</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
<record>
<rou_uid>68350484159526a734be212087171708</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-81056591d96b7059a07092140602</tas_uid>
<rou_next_task>382310413591d96b6cb34d7077964801</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
<record>
<rou_uid>70270521159526a731f2246077513527</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>382310413591d96b6cb34d7077964801</tas_uid>
<rou_next_task>-1</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
</table>
<table name="lanes"/>
<table name="gateways"/>
<table name="inputs"/>
<table name="outputs"/>
<table name="dynaforms">
<record>
<dyn_uid>361249164591d96e6edcb81084086222</dyn_uid>
<dyn_title>Form2</dyn_title>
<dyn_description></dyn_description>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[441299927591d969ff284b7005303758/361249164591d96e6edcb81084086222]]></dyn_filename>
<dyn_content><![CDATA[{"name":"Form2","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"361249164591d96e6edcb81084086222","name":"Form2","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[],"variables":[]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-06-27 10:23:47]]></dyn_update_date>
</record>
<record>
<dyn_uid>839383145591d96c1331811037017265</dyn_uid>
<dyn_title>Form1</dyn_title>
<dyn_description></dyn_description>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[441299927591d969ff284b7005303758/839383145591d96c1331811037017265]]></dyn_filename>
<dyn_content><![CDATA[{"name":"Form1","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"839383145591d96c1331811037017265","name":"Form1","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[],"variables":[]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-06-27 10:23:47]]></dyn_update_date>
</record>
</table>
<table name="steps">
<record>
<step_uid>184891718591d96fc460179075100311</step_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-64523591d96fc408bb5096940569</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>361249164591d96e6edcb81084086222</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>22063748159526a734912c2062942429</step_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-81056591d96b7059a07092140602</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>839383145591d96c1331811037017265</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>593687534591d96ceca0ba3047943309</step_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-54929591d96cebdc838076843684</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>839383145591d96c1331811037017265</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>74100777159526a737c2051048300991</step_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-52677591d96f0066c53097043776</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>361249164591d96e6edcb81084086222</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
</table>
<table name="triggers"/>
<table name="taskusers"/>
<table name="groupwfs"/>
<table name="steptriggers"/>
<table name="dbconnections"/>
<table name="reportTables"/>
<table name="reportTablesVars"/>
<table name="stepSupervisor"/>
<table name="objectPermissions"/>
<table name="subProcess"/>
<table name="caseTracker"/>
<table name="caseTrackerObject"/>
<table name="stage"/>
<table name="fieldCondition"/>
<table name="event"/>
<table name="caseScheduler"/>
<table name="processCategory"/>
<table name="taskExtraProperties"/>
<table name="processUser"/>
<table name="processVariables"/>
<table name="webEntry"/>
<table name="webEntryEvent">
<record>
<wee_uid>30403965959526a738a4895074682321</wee_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<evn_uid>754852677591d96f0066c53097043776</evn_uid>
<act_uid>382310413591d96b6cb34d7077964801</act_uid>
<dyn_uid>361249164591d96e6edcb81084086222</dyn_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<wee_title>754852677591d96f0066c53097043776</wee_title>
<wee_description></wee_description>
<wee_status>ENABLED</wee_status>
<wee_we_uid>18637106659526a73829350046415963</wee_we_uid>
<wee_we_tas_uid>wee-52677591d96f0066c53097043776</wee_we_tas_uid>
<wee_we_url>754852677591d96f0066c53097043776.php</wee_we_url>
<we_custom_title></we_custom_title>
<we_type>SINGLE</we_type>
<we_authentication>ANONYMOUS</we_authentication>
<we_hide_information_bar>1</we_hide_information_bar>
<we_callback>PROCESSMAKER</we_callback>
<we_callback_url></we_callback_url>
<we_link_generation>DEFAULT</we_link_generation>
<we_link_skin></we_link_skin>
<we_link_language></we_link_language>
<we_link_domain></we_link_domain>
<tas_uid>wee-52677591d96f0066c53097043776</tas_uid>
</record>
<record>
<wee_uid>58996753759526a73700e73080322738</wee_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<evn_uid>349681056591d96b7059a07092140602</evn_uid>
<act_uid>382310413591d96b6cb34d7077964801</act_uid>
<dyn_uid>839383145591d96c1331811037017265</dyn_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<wee_title>349681056591d96b7059a07092140602</wee_title>
<wee_description></wee_description>
<wee_status>ENABLED</wee_status>
<wee_we_uid>56350997259526a73553602065170481</wee_we_uid>
<wee_we_tas_uid>wee-81056591d96b7059a07092140602</wee_we_tas_uid>
<wee_we_url>349681056591d96b7059a07092140602.php</wee_we_url>
<we_custom_title></we_custom_title>
<we_type>SINGLE</we_type>
<we_authentication>LOGIN_REQUIRED</we_authentication>
<we_hide_information_bar>0</we_hide_information_bar>
<we_callback>CUSTOM_CLEAR</we_callback>
<we_callback_url><![CDATA[https://www.google.com?q=@&USR_USERNAME]]></we_callback_url>
<we_link_generation>DEFAULT</we_link_generation>
<we_link_skin>classic</we_link_skin>
<we_link_language>en</we_link_language>
<we_link_domain></we_link_domain>
<tas_uid>wee-81056591d96b7059a07092140602</tas_uid>
</record>
</table>
<table name="messageType"/>
<table name="messageTypeVariable"/>
<table name="messageEventDefinition"/>
<table name="scriptTask"/>
<table name="timerEvent"/>
<table name="emailEvent"/>
<table name="filesManager">
<record>
<prf_uid>25146358659526a73a206e5049400821</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/349681056591d96b7059a07092140602Post.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
<record>
<prf_uid>47935392859526a73a375b4044996807</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/754852677591d96f0066c53097043776Info.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
<record>
<prf_uid>61678188859526a73a4c2d5052790333</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/wsClient.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
<record>
<prf_uid>62130216959526a73a15514057910004</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/349681056591d96b7059a07092140602Info.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
<record>
<prf_uid>81082366859526a73a41c25082555170</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/754852677591d96f0066c53097043776Post.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
<record>
<prf_uid>91407667759526a73a2a984083615491</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/754852677591d96f0066c53097043776.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
<record>
<prf_uid>98986674459526a73a0a475037755740</prf_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker3/shared/sites/test/public/441299927591d969ff284b7005303758/349681056591d96b7059a07092140602.php]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>0</prf_editable>
<prf_create_date><![CDATA[2017-06-27 10:23:47]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
</table>
<table name="abeConfiguration"/>
<table name="elementTask"/>
</definition>
<workflow-files>
<file target="dynaforms">
<file_name>Form2</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/361249164591d96e6edcb81084086222.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9IjQ0MTI5OTkyNzU5MWQ5NjlmZjI4NGI3MDA1MzAzNzU4LzM2MTI0OTE2NDU5MWQ5NmU2ZWRjYjgxMDg0MDg2MjIyIiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="dynaforms">
<file_name>Form1</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/839383145591d96c1331811037017265.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9IjQ0MTI5OTkyNzU5MWQ5NjlmZjI4NGI3MDA1MzAzNzU4LzgzOTM4MzE0NTU5MWQ5NmMxMzMxODExMDM3MDE3MjY1IiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="public">
<file_name>349681056591d96b7059a07092140602Info.php</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/349681056591d96b7059a07092140602Info.php]]></file_path>
<file_content><![CDATA[PD9waHAKCiRHX1BVQkxJU0ggPSBuZXcgUHVibGlzaGVyKCk7CiRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKJG1lc3NhZ2UgPSAiIjsKaWYgKGlzc2V0KCRfU0VTU0lPTlsiX193ZWJFbnRyeVN1Y2Nlc3NfXyJdKSkgewogICAgJHNob3cgPSAibG9naW4vc2hvd0luZm8iOwogICAgJG1lc3NhZ2UgPSAkX1NFU1NJT05bIl9fd2ViRW50cnlTdWNjZXNzX18iXTsKfSBlbHNlIHsKICAgICRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKICAgICRtZXNzYWdlID0gJF9TRVNTSU9OWyJfX3dlYkVudHJ5RXJyb3JfXyJdOwp9CiRHX1BVQkxJU0gtPkFkZENvbnRlbnQoInhtbGZvcm0iLCAieG1sZm9ybSIsICRzaG93LCAiIiwgJG1lc3NhZ2UpOwpHOjpSZW5kZXJQYWdlKCJwdWJsaXNoIiwgImJsYW5rIik7Cgo=]]></file_content>
</file>
<file target="public">
<file_name>754852677591d96f0066c53097043776Info.php</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/754852677591d96f0066c53097043776Info.php]]></file_path>
<file_content><![CDATA[PD9waHAKCiRHX1BVQkxJU0ggPSBuZXcgUHVibGlzaGVyKCk7CiRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKJG1lc3NhZ2UgPSAiIjsKaWYgKGlzc2V0KCRfU0VTU0lPTlsiX193ZWJFbnRyeVN1Y2Nlc3NfXyJdKSkgewogICAgJHNob3cgPSAibG9naW4vc2hvd0luZm8iOwogICAgJG1lc3NhZ2UgPSAkX1NFU1NJT05bIl9fd2ViRW50cnlTdWNjZXNzX18iXTsKfSBlbHNlIHsKICAgICRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKICAgICRtZXNzYWdlID0gJF9TRVNTSU9OWyJfX3dlYkVudHJ5RXJyb3JfXyJdOwp9CiRHX1BVQkxJU0gtPkFkZENvbnRlbnQoInhtbGZvcm0iLCAieG1sZm9ybSIsICRzaG93LCAiIiwgJG1lc3NhZ2UpOwpHOjpSZW5kZXJQYWdlKCJwdWJsaXNoIiwgImJsYW5rIik7Cgo=]]></file_content>
</file>
</workflow-files>
</ProcessMaker-Project>

View File

@@ -0,0 +1,25 @@
Feature: WebEntry2
PROD-181: As a process architect I want an option to force login on web
entry forms so my users can start cases without having to go to the standard
home/inbox section and without having to click "New Case."
Scenario: Test WebEntry2 when session_block=1
Given a new workspace
Then Import process "WebEntryEventTest.pmx"
Then Config env.ini with "session_block=1"
Then Open a browser
Then Go to Processmaker login
Then Login as "admin" "admin"
When Inside "frameMain"
Then Double click on "WebEntryEvent"
Then Right click on "first"
Then Click on "Web Entry" inside "menu"
Then Click on "Link" inside "tab"
Then Copy "href" of "//*[@id='webEntryLink']//a"
Then Logout Processmaker
Then Open URL copied
Then Verify the page does not redirect to the standard /login/login
When Inside "iframe"
Then Login as "admin" "admin"
Then Verify the page goes to the WebEntry steps
Then close the browser

View File

@@ -4,14 +4,47 @@
bootstrap="vendor/autoload.php" bootstrap="vendor/autoload.php"
colors="true" colors="true"
convertErrorsToExceptions="true" convertErrorsToExceptions="true"
convertNoticesToExceptions="true" convertNoticesToExceptions="false"
convertWarningsToExceptions="true" convertWarningsToExceptions="false"
processIsolation="false" processIsolation="false"
stopOnFailure="false"> stopOnFailure="false"
syntaxCheck="true"
bootstrap="tests/bootstrap.php"
>
<testsuites> <testsuites>
<testsuite name="Feature"> <testsuite name="workflow">
<directory suffix="Test.php">./tests/Feature</directory> <directory>./tests/workflow/engine/src/</directory>
</testsuite> </testsuite>
</testsuites>
<filter>
<whitelist addUncoveredFilesFromWhitelist="true" processUncoveredFilesFromWhitelist="false">
<directory suffix=".php">./workflow/engine/classes</directory>
<directory suffix=".php">./workflow/engine/src</directory>
</whitelist>
<exclude>
<directory>./workflow/engine/classes/model/map</directory>
<directory>./workflow/engine/classes/model/om</directory>
<directory>./workflow/engine/src/Tests</directory>
<directory>./workflow/public_html</directory>
</exclude>
</filter>
<php>
<var name="SYS_SYS" value="test" />
<var name="SYS_LANG" value="en" />
<var name="SYS_SKIN" value="neoclassic" />
<var name="DB_ADAPTER" value="mysql" />
<var name="DB_HOST" value="processmaker3" />
<var name="DB_NAME" value="wf_test" />
<var name="DB_USER" value="root" />
<var name="DB_PASS" value="" />
<var name="PATH_DB" value="./shared/sites/" />
<var name="PATH_DATA" value="./shared/" />
<var name="APP_HOST" value="processmaker3.local" />
<var name="HTTPS" value="off" />
<var name="SERVER_PORT" value="8080" />
</php>
<testsuite name="Unit"> <testsuite name="Unit">
<directory suffix="Test.php">./tests/Unit</directory> <directory suffix="Test.php">./tests/Unit</directory>

199
tests/WorkflowTestCase.php Normal file
View File

@@ -0,0 +1,199 @@
<?php
use ProcessMaker\Importer\XmlImporter;
use PHPUnit\Framework\TestCase;
/**
* Test case that could instance a workspace DB
*
*/
class WorkflowTestCase extends TestCase
{
/**
* Create and install the database.
*/
protected function setupDB()
{
//Install Database
$pdo0 = new PDO("mysql:host=".DB_HOST, DB_USER, DB_PASS);
$pdo0->query('DROP DATABASE IF EXISTS '.DB_NAME);
$pdo0->query('CREATE DATABASE '.DB_NAME);
$pdo = new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME, DB_USER,
DB_PASS);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, 0);
$pdo->exec(file_get_contents(PATH_CORE.'data/mysql/schema.sql'));
$pdo->exec(file_get_contents(PATH_RBAC_CORE.'data/mysql/schema.sql'));
$pdo->exec(file_get_contents(PATH_CORE.'data/mysql/insert.sql'));
$pdo->exec(file_get_contents(PATH_RBAC_CORE.'data/mysql/insert.sql'));
$pdo->exec("INSERT INTO `APP_SEQUENCE` (`ID`) VALUES ('1')");
$pdo->exec("INSERT INTO `OAUTH_CLIENTS` (`CLIENT_ID`, `CLIENT_SECRET`, `CLIENT_NAME`, `CLIENT_DESCRIPTION`, `CLIENT_WEBSITE`, `REDIRECT_URI`, `USR_UID`) VALUES
('x-pm-local-client', '179ad45c6ce2cb97cf1029e212046e81', 'PM Web Designer', 'ProcessMaker Web Designer App', 'www.processmaker.com', 'http://".$_SERVER["HTTP_HOST"].":".$_SERVER['SERVER_PORT']."/sys".SYS_SYS."/en/neoclassic/oauth2/grant', '00000000000000000000000000000001');");
$pdo->exec("INSERT INTO `OAUTH_ACCESS_TOKENS` (`ACCESS_TOKEN`, `CLIENT_ID`, `USER_ID`, `EXPIRES`, `SCOPE`) VALUES
('39704d17049f5aef45e884e7b769989269502f83', 'x-pm-local-client', '00000000000000000000000000000001', '2017-06-15 17:55:19', 'view_processes edit_processes *');");
}
/**
* Drop the database.
*/
protected function dropDB()
{
//Install Database
$pdo0 = new PDO("mysql:host=".DB_HOST, DB_USER, DB_PASS);
$pdo0->query('DROP DATABASE IF EXISTS '.DB_NAME);
}
/**
* Import a process to the database.
*
* @param type $filename ProcessMaker file to be imported
* @return string PRO_UID
*/
protected function import($filename, $regenerateUids = false)
{
$importer = new XmlImporter();
$importer->setSourceFile($filename);
return $importer->import(
$regenerateUids ? XmlImporter::IMPORT_OPTION_KEEP_WITHOUT_CHANGING_AND_CREATE_NEW : XmlImporter::IMPORT_OPTION_CREATE_NEW,
XmlImporter::GROUP_IMPORT_OPTION_CREATE_NEW, $regenerateUids
);
}
/**
* Rebuild workflow's schema.sql
*/
protected function rebuildModel()
{
$pwd = getcwd();
chdir(PATH_CORE);
exec('../../gulliver/bin/gulliver propel-build-sql mysql');
exec('../../gulliver/bin/gulliver propel-build-model');
chdir($pwd);
}
/**
* Clean the shared folder to only have the sites.
*/
protected function cleanShared()
{
$this->rrmdir(PATH_DATA.'skins');
mkdir(PATH_DATA.'skins');
clearstatcache();
}
/**
* Set the text of and specific translated message.
*
* @global array $translation
* @param type $msgId
* @param type $text
*/
protected function setTranslation($msgId, $text)
{
global $translation;
$translation[$msgId] = $text;
}
/**
* Clear all the translated messages loaded.
*
* @global array $translation
*/
protected function clearTranslations()
{
global $translation;
foreach ($translation as $msgId => $text) {
unset($translation[$msgId]);
}
}
private function rrmdir($dir)
{
if (!is_dir($dir)) {
return;
}
$files = array_diff(scandir($dir), array('.', '..'));
foreach ($files as $file) {
(is_dir("$dir/$file") && !is_link($dir)) ? $this->rrmdir("$dir/$file")
: unlink("$dir/$file");
}
return rmdir($dir);
}
/**
* Set specific env.ini configuration.
*
* @param type $param
* @param type $value
*/
protected function setEnvIni($param, $value)
{
$config = file_get_contents(PATH_CONFIG.'env.ini');
if (substr($config, -1, 1) !== "\n") {
$config.="\n";
}
$regexp = '/^\s*'.preg_quote($param).'\s*=\s*.*\n$/m';
if (preg_match($regexp, $config."\n")) {
if ($value === null) {
$config = preg_replace($regexp, "", $config);
} else {
$value1 = is_numeric($value) ? $value : json_encode($value, true);
$config = preg_replace($regexp, "$param = $value1\n", $config);
}
} elseif ($value !== null) {
$value1 = is_numeric($value) ? $value : json_encode($value, true);
$config.="$param = $value1\n";
}
file_put_contents(PATH_CONFIG.'env.ini', $config);
}
/**
* Unset specific env.ini configuration.
*
* @param type $param
*/
protected function unsetEnvIni($param)
{
$this->setEnvIni($param, null);
}
/**
* Installa an licese file.
*
* @param type $path
* @throws \Exception
*/
protected function installLicense($path)
{
$licenseFile = glob($path);
if (!$licenseFile) {
throw new \Exception('To continue please put a valid license at features/resources');
}
G::LoadClass('pmLicenseManager');
$licenseManager = new pmLicenseManager();
$licenseManager->installLicense($licenseFile[0]);
}
/**
* Add a PM configuration.
*
* @return \Configurations
*/
protected function config($config=[]){
$configGetStarted = new \Configuration;
$data = array_merge([
'OBJ_UID' => '',
'PRO_UID' => '',
'USR_UID' => '',
'APP_UID' => '',
], $config);
$configGetStarted->create($data);
}
protected function getBaseUrl($url)
{
return (\G::is_https() ? "https://" : "http://").
$GLOBALS["APP_HOST"].':'.$GLOBALS['SERVER_PORT']."/sys".SYS_SYS."/".
SYS_LANG."/".SYS_SKIN."/".$url;
}
}

View File

@@ -0,0 +1,98 @@
<?php
namespace ProcessMaker\BusinessModel;
/**
* Test the ProcessMaker\BusinessModel\Language class.
*/
class LanguageTest extends \WorkflowTestCase
{
/**
* @var Language
*/
protected $object;
private $translationEnv;
/**
* Sets up the unit tests.
*/
protected function setUp()
{
$this->setupDB();
$this->object = new Language;
$this->translationEnv = PATH_DATA."META-INF".PATH_SEP."translations.env";
file_exists($this->translationEnv) ? unlink($this->translationEnv) : false;
}
/**
* Tears down the unit tests.
*/
protected function tearDown()
{
$this->dropDB();
}
/**
* Test default languages
*
* @category HOR-3209:1
* @covers ProcessMaker\BusinessModel\Language::getLanguageList
*/
public function testGetLanguageList()
{
$list = $this->object->getLanguageList();
$this->assertCount(1, $list);
$this->assertEquals('en', $list[0]['LANG_ID']);
$this->assertEquals('English', $list[0]['LANG_NAME']);
}
/**
* Test installed languages
*
* @category HOR-3209:2
* @covers ProcessMaker\BusinessModel\Language::getLanguageList
*/
public function testGetLanguageListInstalled()
{
$this->installLanguage('es', __DIR__.'/processmaker.es.po');
$list = $this->object->getLanguageList();
$this->assertCount(2, $list);
$this->assertEquals('en', $list[0]['LANG_ID']);
$this->assertEquals('English', $list[0]['LANG_NAME']);
$this->assertEquals('es-ES', $list[1]['LANG_ID']);
$this->assertEquals('Spanish (Spain)', $list[1]['LANG_NAME']);
$this->uninstallLanguage('es', __DIR__.'/processmaker.es.po');
$list2 = $this->object->getLanguageList();
$this->assertCount(1, $list2);
}
/**
* Install a language to the system.
*
* @param type $lanId
* @param type $filename
*/
private function installLanguage($lanId, $filename)
{
copy($filename, PATH_CORE.'content/translations/'.basename($filename));
$language = \LanguagePeer::retrieveByPK($lanId);
$language->setLanEnabled(1);
$language->save();
file_exists($this->translationEnv) ? unlink($this->translationEnv) : false;
}
/**
* Uninstall a language from the system.
*
* @param type $lanId
* @param type $filename
*/
private function uninstallLanguage($lanId, $filename)
{
unlink(PATH_CORE.'content/translations/'.basename($filename));
$language = \LanguagePeer::retrieveByPK($lanId);
$language->setLanEnabled(0);
$language->save();
file_exists($this->translationEnv) ? unlink($this->translationEnv) : false;
}
}

View File

@@ -0,0 +1,77 @@
<?php
namespace ProcessMaker\BusinessModel;
/**
* Skins Tests
*/
class SkinsTest extends \WorkflowTestCase
{
/**
* @var Skins
*/
protected $object;
/**
* Sets up the unit test.
*/
protected function setUp()
{
$this->cleanShared();
$this->setupDB();
$this->object = new Skins;
}
/**
* Tears down the unit test.
*/
protected function tearDown()
{
$this->cleanShared();
$this->dropDB();
}
/**
* Get default skins and one custom global skin.
*
* @covers ProcessMaker\BusinessModel\Skins::getSkins
* @covers ProcessMaker\BusinessModel\Skins::createSkin
* @category HOR-3208:1
*/
public function testGetSkins()
{
$skins = $this->object->getSkins();
$this->assertCount(2, $skins);
$this->assertEquals($skins[0]['SKIN_FOLDER_ID'], 'classic');
$this->assertEquals($skins[1]['SKIN_FOLDER_ID'], 'neoclassic');
$this->object->createSkin('test', 'test');
$skins2 = $this->object->getSkins();
$this->assertCount(3, $skins2);
$this->assertEquals($skins2[2]['SKIN_FOLDER_ID'], 'test');
}
/**
* Get default skins, one custom global and one custom current workspace skin.
*
* @covers ProcessMaker\BusinessModel\Skins::getSkins
* @covers ProcessMaker\BusinessModel\Skins::createSkin
* @category HOR-3208:2
*/
public function testGetSkinsCurrentWorkspace()
{
$this->object->createSkin('test', 'test');
$this->object->createSkin(
'test2',
'test2',
'Second skin',
'ProcessMaker Team',
'current',
'neoclassic'
);
$skins = $this->object->getSkins();
$this->assertCount(4, $skins);
$this->assertEquals($skins[2]['SKIN_FOLDER_ID'], 'test');
$this->assertEquals($skins[3]['SKIN_FOLDER_ID'], 'test2');
$this->assertEquals($skins[3]['SKIN_WORKSPACE'], SYS_SYS);
}
}

View File

@@ -0,0 +1,970 @@
<?xml version="1.0" encoding="utf-8"?>
<ProcessMaker-Project version="3.0">
<metadata>
<meta key="vendor_version"><![CDATA[(Branch feature/HOR-3214)]]></meta>
<meta key="vendor_version_code">Michelangelo</meta>
<meta key="export_timestamp">1496335122</meta>
<meta key="export_datetime"><![CDATA[2017-06-01T16:38:42+00:00]]></meta>
<meta key="export_server_addr"><![CDATA[::1:8084]]></meta>
<meta key="export_server_os">Darwin</meta>
<meta key="export_server_php_version">50621</meta>
<meta key="export_version">4</meta>
<meta key="workspace">hor3207</meta>
<meta key="name">WebEntry2</meta>
<meta key="uid">56559353559303a3cc06e80025826369</meta>
</metadata>
<definition class="BPMN">
<table name="ACTIVITY">
<record>
<act_uid>16965000459303a4c2a3e43075058476</act_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<act_name>Task 1</act_name>
<act_type>TASK</act_type>
<act_is_for_compensation>0</act_is_for_compensation>
<act_start_quantity>1</act_start_quantity>
<act_completion_quantity>0</act_completion_quantity>
<act_task_type>EMPTY</act_task_type>
<act_implementation></act_implementation>
<act_instantiate>0</act_instantiate>
<act_script_type></act_script_type>
<act_script></act_script>
<act_loop_type>EMPTY</act_loop_type>
<act_test_before>0</act_test_before>
<act_loop_maximum>0</act_loop_maximum>
<act_loop_condition>0</act_loop_condition>
<act_loop_cardinality>0</act_loop_cardinality>
<act_loop_behavior>0</act_loop_behavior>
<act_is_adhoc>0</act_is_adhoc>
<act_is_collapsed>0</act_is_collapsed>
<act_completion_condition>0</act_completion_condition>
<act_ordering>0</act_ordering>
<act_cancel_remaining_instances>0</act_cancel_remaining_instances>
<act_protocol>0</act_protocol>
<act_method>0</act_method>
<act_is_global>0</act_is_global>
<act_referer>0</act_referer>
<act_default_flow>0</act_default_flow>
<act_master_diagram>0</act_master_diagram>
<bou_uid>23262040759303a4c2afa43054385721</bou_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>16965000459303a4c2a3e43075058476</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>255</bou_x>
<bou_y>79</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<act_uid>79146780259303a4c3c4224096542966</act_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<act_name>WEBENTRY</act_name>
<act_type>TASK</act_type>
<act_is_for_compensation>0</act_is_for_compensation>
<act_start_quantity>1</act_start_quantity>
<act_completion_quantity>0</act_completion_quantity>
<act_task_type>EMPTY</act_task_type>
<act_implementation></act_implementation>
<act_instantiate>0</act_instantiate>
<act_script_type></act_script_type>
<act_script></act_script>
<act_loop_type>EMPTY</act_loop_type>
<act_test_before>0</act_test_before>
<act_loop_maximum>0</act_loop_maximum>
<act_loop_condition>0</act_loop_condition>
<act_loop_cardinality>0</act_loop_cardinality>
<act_loop_behavior>0</act_loop_behavior>
<act_is_adhoc>0</act_is_adhoc>
<act_is_collapsed>0</act_is_collapsed>
<act_completion_condition>0</act_completion_condition>
<act_ordering>0</act_ordering>
<act_cancel_remaining_instances>0</act_cancel_remaining_instances>
<act_protocol>0</act_protocol>
<act_method>0</act_method>
<act_is_global>0</act_is_global>
<act_referer>0</act_referer>
<act_default_flow>0</act_default_flow>
<act_master_diagram>0</act_master_diagram>
<bou_uid>77250327259303a4c3cc125070295918</bou_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>79146780259303a4c3c4224096542966</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>100</bou_x>
<bou_y>206</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="ARTIFACT">
<record>
<art_uid>18366688859303c0a73a8d0090992063</art_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<art_type>TEXT_ANNOTATION</art_type>
<art_name><![CDATA[UPDATE BPMN_ACTIVITY SET ACT_UID=(SELECT TAS_UID FROM WEB_ENTRY) where ACT_NAME='WEBENTRY';]]></art_name>
<art_category_ref></art_category_ref>
<bou_uid>66326200359303c0a746ff6019098980</bou_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>18366688859303c0a73a8d0090992063</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnArtifact</bou_element_type>
<bou_x>100</bou_x>
<bou_y>359</bou_y>
<bou_width>633</bou_width>
<bou_height>45</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<art_uid>92334024059303bba6cd636030770915</art_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<art_type>TEXT_ANNOTATION</art_type>
<art_name><![CDATA[UPDATE BPMN_BOUND SET ELEMENT_UID=(SELECT TAS_UID FROM WEB_ENTRY) where ELEMENT_UID=(SELECT ACT_UID FROM BPMN_ACTIVITY WHERE ACT_NAME='WEBENTRY');]]></art_name>
<art_category_ref></art_category_ref>
<bou_uid>94266112859303bba6df059082224962</bou_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>92334024059303bba6cd636030770915</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnArtifact</bou_element_type>
<bou_x>100</bou_x>
<bou_y>288</bou_y>
<bou_width>639</bou_width>
<bou_height>69</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="BOUND">
<record>
<bou_uid>23262040759303a4c2afa43054385721</bou_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>16965000459303a4c2a3e43075058476</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>255</bou_x>
<bou_y>79</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>28502816559303b2aa999f4011952694</bou_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>55623600259303b2aa8c2b3006040225</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>508</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>37327513759303a4c48fb05001608425</bou_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>26331855259303a4c486358089637672</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>66326200359303c0a746ff6019098980</bou_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>18366688859303c0a73a8d0090992063</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnArtifact</bou_element_type>
<bou_x>100</bou_x>
<bou_y>359</bou_y>
<bou_width>633</bou_width>
<bou_height>45</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>77250327259303a4c3cc125070295918</bou_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>79146780259303a4c3c4224096542966</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>100</bou_x>
<bou_y>206</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>94266112859303bba6df059082224962</bou_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>92334024059303bba6cd636030770915</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnArtifact</bou_element_type>
<bou_x>100</bou_x>
<bou_y>288</bou_y>
<bou_width>639</bou_width>
<bou_height>69</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="DATA"/>
<table name="DIAGRAM">
<record>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_name>WebEntry2</dia_name>
<dia_is_closable>0</dia_is_closable>
</record>
</table>
<table name="DOCUMENTATION"/>
<table name="EVENT">
<record>
<evn_uid>55623600259303b2aa8c2b3006040225</evn_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<evn_name></evn_name>
<evn_type>END</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message></evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>THROW</evn_behavior>
<bou_uid>28502816559303b2aa999f4011952694</bou_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>55623600259303b2aa8c2b3006040225</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>508</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>26331855259303a4c486358089637672</evn_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<evn_name><![CDATA[webentry (do not recreate the webentry)]]></evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>37327513759303a4c48fb05001608425</bou_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<element_uid>26331855259303a4c486358089637672</element_uid>
<bou_element>6151488955930424aafa4f9007578435</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="EXTENSION"/>
<table name="FLOW">
<record>
<flo_uid>24433461759303a4c4dc2e6055592083</flo_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>26331855259303a4c486358089637672</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>16965000459303a4c2a3e43075058476</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>133</flo_x1>
<flo_y1>117</flo_y1>
<flo_x2>255</flo_x2>
<flo_y2>117</flo_y2>
<flo_state><![CDATA[[{"x":133,"y":117},{"x":255,"y":117}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>47236448759303b2ac3b488085814197</flo_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>16965000459303a4c2a3e43075058476</flo_element_origin>
<flo_element_origin_type>bpmnActivity</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>55623600259303b2aa8c2b3006040225</flo_element_dest>
<flo_element_dest_type>bpmnEvent</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>406</flo_x1>
<flo_y1>117</flo_y1>
<flo_x2>508</flo_x2>
<flo_y2>117</flo_y2>
<flo_state><![CDATA[[{"x":406,"y":117},{"x":508,"y":117}]]]></flo_state>
<flo_position>1</flo_position>
</record>
</table>
<table name="GATEWAY"/>
<table name="LANE"/>
<table name="LANESET"/>
<table name="PARTICIPANT"/>
<table name="PROCESS">
<record>
<pro_uid>10245485859303a3ce163f0020070533</pro_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<dia_uid>95673127759303a3cd58577062950932</dia_uid>
<pro_name>WebEntry2</pro_name>
<pro_type>NONE</pro_type>
<pro_is_executable>0</pro_is_executable>
<pro_is_closed>0</pro_is_closed>
<pro_is_subprocess>0</pro_is_subprocess>
</record>
</table>
<table name="PROJECT">
<record>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<prj_name>WebEntry2</prj_name>
<prj_description></prj_description>
<prj_target_namespace></prj_target_namespace>
<prj_expresion_language></prj_expresion_language>
<prj_type_language></prj_type_language>
<prj_exporter></prj_exporter>
<prj_exporter_version></prj_exporter_version>
<prj_create_date><![CDATA[2017-06-01 16:01:00]]></prj_create_date>
<prj_update_date><![CDATA[2017-06-01 16:38:38]]></prj_update_date>
<prj_author>00000000000000000000000000000001</prj_author>
<prj_author_version></prj_author_version>
<prj_original_source></prj_original_source>
</record>
</table>
</definition>
<definition class="workflow">
<table name="process">
<record>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<pro_title>WebEntry2</pro_title>
<pro_description></pro_description>
<pro_parent>56559353559303a3cc06e80025826369</pro_parent>
<pro_time>1</pro_time>
<pro_timeunit>DAYS</pro_timeunit>
<pro_status>ACTIVE</pro_status>
<pro_type_day></pro_type_day>
<pro_type>NORMAL</pro_type>
<pro_assignment>FALSE</pro_assignment>
<pro_show_map>0</pro_show_map>
<pro_show_message>0</pro_show_message>
<pro_subprocess>0</pro_subprocess>
<pro_tri_create></pro_tri_create>
<pro_tri_open></pro_tri_open>
<pro_tri_deleted></pro_tri_deleted>
<pro_tri_canceled></pro_tri_canceled>
<pro_tri_paused></pro_tri_paused>
<pro_tri_reassigned></pro_tri_reassigned>
<pro_tri_unpaused></pro_tri_unpaused>
<pro_type_process>PUBLIC</pro_type_process>
<pro_show_delegate>0</pro_show_delegate>
<pro_show_dynaform>0</pro_show_dynaform>
<pro_category></pro_category>
<pro_sub_category></pro_sub_category>
<pro_industry>0</pro_industry>
<pro_update_date><![CDATA[2017-06-01 16:38:38]]></pro_update_date>
<pro_create_date><![CDATA[2017-06-01 16:01:00]]></pro_create_date>
<pro_create_user>00000000000000000000000000000001</pro_create_user>
<pro_height>5000</pro_height>
<pro_width>10000</pro_width>
<pro_title_x>0</pro_title_x>
<pro_title_y>0</pro_title_y>
<pro_debug>0</pro_debug>
<pro_dynaforms><![CDATA[a:1:{s:7:"PROCESS";s:0:"";}]]></pro_dynaforms>
<pro_derivation_screen_tpl></pro_derivation_screen_tpl>
<pro_cost>0</pro_cost>
<pro_unit_cost><![CDATA[$]]></pro_unit_cost>
<pro_itee>1</pro_itee>
<pro_action_done><![CDATA[a:1:{i:0;s:41:"GATEWAYTOGATEWAY_DELETE_CORRUPTED_RECORDS";}]]></pro_action_done>
<pro_category_label>No Category</pro_category_label>
<pro_bpmn>1</pro_bpmn>
</record>
</table>
<table name="tasks">
<record>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>16965000459303a4c2a3e43075058476</tas_uid>
<tas_title>Task 1</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>NORMAL</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>00000000000000000000000000000001</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>255</tas_posx>
<tas_posy>79</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>79146780259303a4c3c4224096542966</tas_uid>
<tas_title>WEBENTRY</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>NORMAL</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>FALSE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>100</tas_posx>
<tas_posy>206</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<tas_title>WEBENTRY</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>WEBENTRYEVENT</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>00000000000000000000000000000001</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>100</tas_posx>
<tas_posy>206</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
</table>
<table name="routes">
<record>
<rou_uid>3831401275930430f03a230048632351</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<rou_next_task>16965000459303a4c2a3e43075058476</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
<record>
<rou_uid>3902368125930430ed2b640062056095</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>16965000459303a4c2a3e43075058476</tas_uid>
<rou_next_task>-1</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
</table>
<table name="lanes"/>
<table name="gateways"/>
<table name="inputs">
<record>
<inp_doc_uid>48678504459303b80421e58048206875</inp_doc_uid>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<inp_doc_title>input</inp_doc_title>
<inp_doc_description></inp_doc_description>
<inp_doc_form_needed>VIRTUAL</inp_doc_form_needed>
<inp_doc_original>ORIGINAL</inp_doc_original>
<inp_doc_published>PRIVATE</inp_doc_published>
<inp_doc_versioning>0</inp_doc_versioning>
<inp_doc_destination_path></inp_doc_destination_path>
<inp_doc_tags>INPUT</inp_doc_tags>
<inp_doc_type_file><![CDATA[.*]]></inp_doc_type_file>
<inp_doc_max_filesize>0</inp_doc_max_filesize>
<inp_doc_max_filesize_unit>KB</inp_doc_max_filesize_unit>
</record>
</table>
<table name="outputs">
<record>
<out_doc_uid>62358602359303ca88ac523084167406</out_doc_uid>
<out_doc_title>Output doc step</out_doc_title>
<out_doc_description>Generated</out_doc_description>
<out_doc_filename>output</out_doc_filename>
<out_doc_template><![CDATA[<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
</head>
<body>
<p>Generated at WebEntry 2.0 by @@NAME</p>
<p>Your code is: @@CODE</p>
<p></p>
<p></p>
</body>
</html>]]></out_doc_template>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<out_doc_report_generator>TCPDF</out_doc_report_generator>
<out_doc_landscape>0</out_doc_landscape>
<out_doc_media>Letter</out_doc_media>
<out_doc_left_margin>20</out_doc_left_margin>
<out_doc_right_margin>20</out_doc_right_margin>
<out_doc_top_margin>20</out_doc_top_margin>
<out_doc_bottom_margin>20</out_doc_bottom_margin>
<out_doc_generate>BOTH</out_doc_generate>
<out_doc_type>HTML</out_doc_type>
<out_doc_current_revision></out_doc_current_revision>
<out_doc_field_mapping></out_doc_field_mapping>
<out_doc_versioning>1</out_doc_versioning>
<out_doc_destination_path></out_doc_destination_path>
<out_doc_tags></out_doc_tags>
<out_doc_pdf_security_enabled>0</out_doc_pdf_security_enabled>
<out_doc_pdf_security_open_password></out_doc_pdf_security_open_password>
<out_doc_pdf_security_owner_password></out_doc_pdf_security_owner_password>
<out_doc_pdf_security_permissions></out_doc_pdf_security_permissions>
<out_doc_open_type>1</out_doc_open_type>
</record>
</table>
<table name="dynaforms">
<record>
<dyn_uid>31190541559303cd9b08df8014656617</dyn_uid>
<dyn_title>form2</dyn_title>
<dyn_description></dyn_description>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[56559353559303a3cc06e80025826369/31190541559303cd9b08df8014656617]]></dyn_filename>
<dyn_content><![CDATA[{"name":"form2","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"31190541559303cd9b08df8014656617","name":"form2","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[[{"type":"title","id":"title0000000001","label":"title_1","colSpan":12}],[{"type":"subtitle","id":"subtitle0000000001","label":"subtitle_1","colSpan":12}],[{"type":"text","variable":"CODE","var_uid":"42858539059303ceaaa5438089098655","dataType":"string","protectedValue":true,"id":"CODE","name":"CODE","label":"Your code","defaultValue":"","placeholder":"","hint":"","required":false,"textTransform":"none","validate":"","validateMessage":"","maxLength":1000,"formula":"","mode":"parent","operation":"","datasource":"database","dbConnection":"workflow","dbConnectionLabel":"PM Database","sql":"","dataVariable":"","var_name":"CODE","colSpan":12}],[{"type":"submit","id":"submit0000000001","name":"submit0000000001","label":"Next Step","colSpan":12}]],"variables":[{"var_uid":"42858539059303ceaaa5438089098655","prj_uid":"56559353559303a3cc06e80025826369","var_name":"CODE","var_field_type":"string","var_field_size":10,"var_label":"string","var_dbconnection":"workflow","var_dbconnection_label":"PM Database","var_sql":"","var_null":0,"var_default":"","var_accepted_values":"[]","inp_doc_uid":""}]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-06-01 16:12:59]]></dyn_update_date>
</record>
<record>
<dyn_uid>88922857259303a5ce1f887010389343</dyn_uid>
<dyn_title>form1</dyn_title>
<dyn_description></dyn_description>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[56559353559303a3cc06e80025826369/88922857259303a5ce1f887010389343]]></dyn_filename>
<dyn_content><![CDATA[{"name":"form1","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"88922857259303a5ce1f887010389343","name":"form1","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[[{"type":"title","id":"title0000000001","label":"WebEntry 2.0","colSpan":12}],[{"type":"subtitle","id":"subtitle0000000001","label":"First Step","colSpan":12}],[{"type":"text","variable":"NAME","var_uid":"94396334059303c77612577074716073","dataType":"string","protectedValue":false,"id":"NAME","name":"NAME","label":"Your name","defaultValue":"","placeholder":"","hint":"","required":false,"textTransform":"none","validate":"","validateMessage":"","maxLength":1000,"formula":"","mode":"parent","operation":"","datasource":"database","dbConnection":"workflow","dbConnectionLabel":"PM Database","sql":"","dataVariable":"","var_name":"NAME","colSpan":12}],[{"type":"submit","id":"submit0000000001","name":"submit0000000001","label":"Next Step","colSpan":12}]],"variables":[{"var_uid":"94396334059303c77612577074716073","prj_uid":"56559353559303a3cc06e80025826369","var_name":"NAME","var_field_type":"string","var_field_size":10,"var_label":"string","var_dbconnection":"workflow","var_dbconnection_label":"PM Database","var_sql":"","var_null":0,"var_default":"","var_accepted_values":"[]","inp_doc_uid":""}]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-06-01 16:10:49]]></dyn_update_date>
</record>
</table>
<table name="steps">
<record>
<step_uid>13911436659303d139063e4090444439</step_uid>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>31190541559303cd9b08df8014656617</step_uid_obj>
<step_condition></step_condition>
<step_position>2</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>40852133559303ccfe1a382002839416</step_uid>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<step_type_obj>OUTPUT_DOCUMENT</step_type_obj>
<step_uid_obj>62358602359303ca88ac523084167406</step_uid_obj>
<step_condition></step_condition>
<step_position>4</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>56695174459303a69ded370094811544</step_uid>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>88922857259303a5ce1f887010389343</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>96569604359303b9ae8d584027424919</step_uid>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<step_type_obj>INPUT_DOCUMENT</step_type_obj>
<step_uid_obj>48678504459303b80421e58048206875</step_uid_obj>
<step_condition></step_condition>
<step_position>3</step_position>
<step_mode>EDIT</step_mode>
</record>
</table>
<table name="triggers">
<record>
<tri_uid>34990214159303d842fbfd6017869869</tri_uid>
<tri_title>Generate Code</tri_title>
<tri_description></tri_description>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<tri_type>SCRIPT</tri_type>
<tri_webbot><![CDATA[@@CODE = uniqid("TRI_");]]></tri_webbot>
<tri_param></tri_param>
</record>
</table>
<table name="taskusers"/>
<table name="groupwfs"/>
<table name="steptriggers">
<record>
<step_uid>13911436659303d139063e4090444439</step_uid>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
<tri_uid>34990214159303d842fbfd6017869869</tri_uid>
<st_type>BEFORE</st_type>
<st_condition></st_condition>
<st_position>1</st_position>
</record>
</table>
<table name="dbconnections"/>
<table name="reportTables"/>
<table name="reportTablesVars"/>
<table name="stepSupervisor"/>
<table name="objectPermissions"/>
<table name="subProcess"/>
<table name="caseTracker"/>
<table name="caseTrackerObject"/>
<table name="stage"/>
<table name="fieldCondition"/>
<table name="event"/>
<table name="caseScheduler"/>
<table name="processCategory"/>
<table name="taskExtraProperties"/>
<table name="processUser"/>
<table name="processVariables">
<record>
<var_uid>42858539059303ceaaa5438089098655</var_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<var_name>CODE</var_name>
<var_field_type>string</var_field_type>
<var_field_size>10</var_field_size>
<var_label>string</var_label>
<var_dbconnection>workflow</var_dbconnection>
<var_sql></var_sql>
<var_null>0</var_null>
<var_default></var_default>
<var_accepted_values><![CDATA[[]]]></var_accepted_values>
<inp_doc_uid></inp_doc_uid>
</record>
<record>
<var_uid>94396334059303c77612577074716073</var_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<var_name>NAME</var_name>
<var_field_type>string</var_field_type>
<var_field_size>10</var_field_size>
<var_label>string</var_label>
<var_dbconnection>workflow</var_dbconnection>
<var_sql></var_sql>
<var_null>0</var_null>
<var_default></var_default>
<var_accepted_values><![CDATA[[]]]></var_accepted_values>
<inp_doc_uid></inp_doc_uid>
</record>
</table>
<table name="webEntry"/>
<table name="webEntryEvent">
<record>
<wee_uid>77353010159303a6a3cbe28043190607</wee_uid>
<prj_uid>56559353559303a3cc06e80025826369</prj_uid>
<evn_uid>26331855259303a4c486358089637672</evn_uid>
<act_uid>16965000459303a4c2a3e43075058476</act_uid>
<dyn_uid>88922857259303a5ce1f887010389343</dyn_uid>
<usr_uid></usr_uid>
<wee_title>26331855259303a4c486358089637672</wee_title>
<wee_description></wee_description>
<wee_status>ENABLED</wee_status>
<wee_we_uid>81407840459303a6a09dcc4087975719</wee_we_uid>
<wee_we_tas_uid>wee-1855259303a4c486358089637672</wee_we_tas_uid>
<wee_we_url>26331855259303a4c486358089637672.php</wee_we_url>
<we_custom_title></we_custom_title>
<we_type>MULTIPLE</we_type>
<we_authentication>LOGIN_REQUIRED</we_authentication>
<we_hide_information_bar>0</we_hide_information_bar>
<we_callback>PROCESSMAKER</we_callback>
<we_callback_url></we_callback_url>
<we_link_generation>DEFAULT</we_link_generation>
<we_link_skin></we_link_skin>
<we_link_language></we_link_language>
<we_link_domain></we_link_domain>
<tas_uid>wee-1855259303a4c486358089637672</tas_uid>
</record>
</table>
<table name="messageType"/>
<table name="messageTypeVariable"/>
<table name="messageEventDefinition"/>
<table name="scriptTask"/>
<table name="timerEvent"/>
<table name="emailEvent"/>
<table name="filesManager">
<record>
<prf_uid>73977577559303b4563ed83089686045</prf_uid>
<pro_uid>56559353559303a3cc06e80025826369</pro_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<prf_update_usr_uid></prf_update_usr_uid>
<prf_path><![CDATA[/Users/davidcallizaya/NetBeansProjects/processmaker0/shared/sites/hor3207/mailTemplates/56559353559303a3cc06e80025826369/actionsByEmail.html]]></prf_path>
<prf_type>file</prf_type>
<prf_editable>1</prf_editable>
<prf_create_date><![CDATA[2017-06-01 16:05:25]]></prf_create_date>
<prf_update_date></prf_update_date>
</record>
</table>
<table name="abeConfiguration"/>
<table name="elementTask"/>
</definition>
<workflow-files>
<file target="dynaforms">
<file_name>form2</file_name>
<file_path><![CDATA[56559353559303a3cc06e80025826369/31190541559303cd9b08df8014656617.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9IjU2NTU5MzUzNTU5MzAzYTNjYzA2ZTgwMDI1ODI2MzY5LzMxMTkwNTQxNTU5MzAzY2Q5YjA4ZGY4MDE0NjU2NjE3IiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="dynaforms">
<file_name>form1</file_name>
<file_path><![CDATA[56559353559303a3cc06e80025826369/88922857259303a5ce1f887010389343.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9IjU2NTU5MzUzNTU5MzAzYTNjYzA2ZTgwMDI1ODI2MzY5Lzg4OTIyODU3MjU5MzAzYTVjZTFmODg3MDEwMzg5MzQzIiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="templates">
<file_name>actionsByEmail.html</file_name>
<file_path><![CDATA[56559353559303a3cc06e80025826369/actionsByEmail.html]]></file_path>
<file_content><![CDATA[PHRhYmxlIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgZm9udC1mYW1pbHk6IEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmOyBjb2xvcjogYmxhY2s7IGZvbnQtc2l6ZTogMTFweDsgdGV4dC1hbGlnbjogbGVmdDsiIGNlbGxwYWRkaW5nPSIxMCIgY2VsbHNwYWNpbmc9IjAiIHdpZHRoPSIxMDAlIj4NCjx0cj4NCiAgPHRkIHN0eWxlPSJmb250LXNpemU6IDE0cHg7Ij48Yj5BQ1RJT05TIEJZIEVNQUlMPC9iPjwvdGQ+DQo8L3RyPg0KPHRyPg0KICA8dGQgc3R5bGU9InZlcnRpY2FsLWFsaWduOm1pZGRsZTsiPg0KCSAgPGhyPg0KCSAgPGJyIC8+DQoJICBAI19fQUJFX18NCiAgICA8YnIgLz4NCgkJPGJyIC8+DQoJCTxocj48Yj5UaGlzIEJ1c2luZXNzIFByb2Nlc3MgaXMgcG93ZXJlZCBieSBQcm9jZXNzTWFrZXIuPGI+DQoJCTxiciAvPg0KCQk8YSBocmVmPSJodHRwOi8vd3d3LnByb2Nlc3NtYWtlci5jb20iIHN0eWxlPSJjb2xvcjojYzQwMDAwOyI+d3d3LnByb2Nlc3NtYWtlci5jb208L2E+DQoJCTxiciAvPg0KICA8L3RkPg0KPC90cj4NCjwvdGFibGU+]]></file_content>
</file>
<file target="public">
<file_name>26331855259303a4c486358089637672Info.php</file_name>
<file_path><![CDATA[56559353559303a3cc06e80025826369/26331855259303a4c486358089637672Info.php]]></file_path>
<file_content><![CDATA[PD9waHAKCiRHX1BVQkxJU0ggPSBuZXcgUHVibGlzaGVyKCk7CiRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKJG1lc3NhZ2UgPSAiIjsKaWYgKGlzc2V0KCRfU0VTU0lPTlsiX193ZWJFbnRyeVN1Y2Nlc3NfXyJdKSkgewogICAgJHNob3cgPSAibG9naW4vc2hvd0luZm8iOwogICAgJG1lc3NhZ2UgPSAkX1NFU1NJT05bIl9fd2ViRW50cnlTdWNjZXNzX18iXTsKfSBlbHNlIHsKICAgICRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKICAgICRtZXNzYWdlID0gJF9TRVNTSU9OWyJfX3dlYkVudHJ5RXJyb3JfXyJdOwp9CiRHX1BVQkxJU0gtPkFkZENvbnRlbnQoInhtbGZvcm0iLCAieG1sZm9ybSIsICRzaG93LCAiIiwgJG1lc3NhZ2UpOwpHOjpSZW5kZXJQYWdlKCJwdWJsaXNoIiwgImJsYW5rIik7Cgo=]]></file_content>
</file>
</workflow-files>
</ProcessMaker-Project>

View File

@@ -0,0 +1,746 @@
<?php
namespace ProcessMaker\BusinessModel;
use ProcessMaker\Importer\XmlImporter;
/**
* WebEntryEventTest test
*/
class WebEntryEventTest extends \WorkflowTestCase
{
const SKIP_VALUE = '&SKIP_VALUE%';
/**
* @var WebEntryEvent $object
*/
protected $object;
private $processUid;
private $processUid2;
private $adminUid = '00000000000000000000000000000001';
private $customTitle = 'CUSTOM TITLE';
private $domain = 'http://domain.localhost';
/**
* Sets up the unit test.
*/
protected function setUp()
{
$this->setupDB();
$this->processUid = $this->import(__DIR__.'/WebEntryEventTest.pmx');
$this->processUid2 = $this->import(__DIR__.'/WebEntryEventTest2.pmx');
$this->object = new WebEntryEvent;
$this->setTranslation('ID_INVALID_VALUE_CAN_NOT_BE_EMPTY',
'ID_INVALID_VALUE_CAN_NOT_BE_EMPTY({0})');
$this->setTranslation('ID_UNDEFINED_VALUE_IS_REQUIRED',
'ID_UNDEFINED_VALUE_IS_REQUIRED({0})');
$this->setTranslation('ID_WEB_ENTRY_EVENT_DOES_NOT_EXIST',
'ID_WEB_ENTRY_EVENT_DOES_NOT_EXIST({0})');
$this->setTranslation('ID_INVALID_VALUE_ONLY_ACCEPTS_VALUES',
'ID_INVALID_VALUE_ONLY_ACCEPTS_VALUES({0},{1})');
$this->setTranslation('ID_DYNAFORM_IS_NOT_ASSIGNED_TO_ACTIVITY',
'ID_DYNAFORM_IS_NOT_ASSIGNED_TO_ACTIVITY({0},{1})');
}
/**
* Tears down the unit test.
*/
protected function tearDown()
{
$this->dropDB();
$this->clearTranslations();
}
/**
* @covers ProcessMaker\BusinessModel\WebEntryEvent::getWebEntryEvents
* @category HOR-3207:5
*/
public function testGetWebEntryEvents()
{
$entryEvents = $this->object->getWebEntryEvents($this->processUid);
$this->assertCount(2, $entryEvents);
$this->assertNotNull($entryEvents[0]['TAS_UID']);
$this->assertNull($entryEvents[0]['WE_CUSTOM_TITLE']);
$this->assertEquals($entryEvents[0]['WE_AUTHENTICATION'], 'ANONYMOUS');
$this->assertEquals($entryEvents[0]['WE_HIDE_INFORMATION_BAR'], '1');
$this->assertEquals($entryEvents[0]['WE_CALLBACK'], 'PROCESSMAKER');
$this->assertNull($entryEvents[0]['WE_CALLBACK_URL']);
$this->assertEquals($entryEvents[0]['WE_LINK_GENERATION'], 'DEFAULT');
$this->assertNull($entryEvents[0]['WE_LINK_SKIN']);
$this->assertNull($entryEvents[0]['WE_LINK_LANGUAGE']);
$this->assertNull($entryEvents[0]['WE_LINK_DOMAIN']);
}
/**
* @covers ProcessMaker\BusinessModel\WebEntryEvent::getAllWebEntryEvents
*/
public function testGetAllWebEntryEvents()
{
$entryEvents = $this->object->getAllWebEntryEvents();
$this->assertCount(3, $entryEvents);
$this->assertNull($entryEvents[0]['WE_CUSTOM_TITLE']);
$this->assertEquals($entryEvents[0]['WE_AUTHENTICATION'], 'ANONYMOUS');
$this->assertEquals($entryEvents[0]['WE_HIDE_INFORMATION_BAR'], '1');
$this->assertEquals($entryEvents[0]['WE_CALLBACK'], 'PROCESSMAKER');
$this->assertNull($entryEvents[0]['WE_CALLBACK_URL']);
$this->assertEquals($entryEvents[0]['WE_LINK_GENERATION'], 'DEFAULT');
$this->assertNull($entryEvents[0]['WE_LINK_SKIN']);
$this->assertNull($entryEvents[0]['WE_LINK_LANGUAGE']);
$this->assertNull($entryEvents[0]['WE_LINK_DOMAIN']);
}
/**
* @covers ProcessMaker\BusinessModel\WebEntryEvent::getWebEntryEvent
* @category HOR-3207:6
*/
public function testGetWebEntryEvent()
{
$entryEvents = $this->object->getWebEntryEvents($this->processUid);
$entry = $this->object->getWebEntryEvent($entryEvents[0]['WEE_UID']);
$this->assertEquals($entryEvents[0], $entry);
}
/**
* Duplicated web entry
* @cover ProcessMaker\BusinessModel\WebEntryEvent::create
* @category HOR-3207:7,HOR-3207:2
*/
public function testCreateSingleNonAuthAlreadyRegistered()
{
$this->expectException(\Exception::class);
$this->expectExceptionMessage('**ID_WEB_ENTRY_EVENT_ALREADY_REGISTERED**');
$entryEvents = $this->object->getWebEntryEvents($this->processUid);
$dynaform = $this->getADynaform();
$this->object->create(
$this->processUid, $this->adminUid,
[
'EVN_UID' => $entryEvents[0]['EVN_UID'],
'ACT_UID' => $entryEvents[0]['ACT_UID'],
'DYN_UID' => $dynaform->getDynUid(),
'WEE_STATUS' => 'ENABLED',
'USR_UID' => $this->adminUid,
'WEE_TITLE' => $entryEvents[0]['EVN_UID'],
]
);
$this->assertEquals(
$this->getSimpleWebEntryUrl($webEntry), $entryEvent['WEE_URL'],
'Wrong single web entry url (backward compativility)'
);
}
/**
* Create a new empty single non auth WE
* @cover ProcessMaker\BusinessModel\WebEntryEvent::create
* @category HOR-3207:7
*/
public function testCreateSingleNonAuth()
{
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
list($webEntry, $entryEvent) = $this->createWebEntryEvent(
$processUid, $entryEvents,
[
'DYN_UID' => $entryEvents[0]['DYN_UID'],
]
);
$this->assertEquals(
$this->getSimpleWebEntryUrl($webEntry), $entryEvent['WEE_URL'],
'Wrong single web entry url (backward compativility)'
);
}
/**
* Create a new empty multiple non auth WE
* @cover ProcessMaker\BusinessModel\WebEntryEvent::create
* @category HOR-3207:7
*/
public function testCreateNewMultipleNonAuth()
{
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$this->createWebEntryEvent(
$processUid,
$entryEvents,
[
'WE_TYPE' => "MULTIPLE",
'WE_CUSTOM_TITLE' => $this->customTitle,
'WE_AUTHENTICATION' => 'ANONYMOUS',
'WE_HIDE_INFORMATION_BAR' => "0",
'WE_CALLBACK' => "PROCESSMAKER",
'WE_CALLBACK_URL' => "http://domain.localhost/callback",
'WE_LINK_GENERATION' => "ADVANCED",
'WE_LINK_SKIN' => SYS_SKIN,
'WE_LINK_LANGUAGE' => SYS_LANG,
'WE_LINK_DOMAIN' => $this->domain,
'WEE_STATUS' => 'DISABLED',
]
);
}
/**
* Delete a webentry
* @cover ProcessMaker\BusinessModel\WebEntryEvent::delete
* @category HOR-3207:9
*/
public function testDelete()
{
$processUid = $this->processUid;
$criteria = new \Criteria;
$criteria->add(\WebEntryPeer::PRO_UID, $processUid);
$entryEvents = $this->object->getWebEntryEvents($processUid);
$fistWebEntryUid = $entryEvents[0]['WEE_UID'];
$this->assertCount(2, $entryEvents);
$this->assertCount(2, \WebEntryPeer::doSelect($criteria));
$this->object->delete($entryEvents[0]['WEE_UID']);
$entryEvents = $this->object->getWebEntryEvents($processUid);
$this->assertCount(1, $entryEvents);
$this->assertCount(1, \WebEntryPeer::doSelect($criteria));
$this->object->delete($entryEvents[0]['WEE_UID']);
$entryEvents = $this->object->getWebEntryEvents($processUid);
$this->assertCount(0, $entryEvents);
$this->assertCount(0, \WebEntryPeer::doSelect($criteria));
$this->expectException(\Exception::class);
$this->object->delete($fistWebEntryUid);
}
/**
* Create different combinations of WE
* @cover ProcessMaker\BusinessModel\WebEntryEvent::create
* @category HOR-3207:7
*/
public function testCreate()
{
/* @var $webEntry \WebEntry */
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$this->assertCount(1, $entryEvents);
$rows = $this->getCombinationsFor([
'WE_LINK_GENERATION' => ['DEFAULT', 'ADVANCED'],
'WEE_STATUS' => ['ENABLED', null],
'WE_TYPE' => ['MULTIPLE'],
'WE_LINK_SKIN' => [SYS_SKIN],
'WE_LINK_LANGUAGE' => [SYS_LANG],
'WE_LINK_DOMAIN' => ['domain.localhost'],
]);
$criteria = new \Criteria();
$criteria->add(\BpmnEventPeer::PRJ_UID, $processUid);
$criteria->add(\BpmnEventPeer::EVN_NAME, 'simple start');
$event = \BpmnEventPeer::doSelectOne($criteria);
foreach ($rows as $row) {
try {
$data = [
'EVN_UID' => $event->getEvnUid(),
'ACT_UID' => $entryEvents[0]['ACT_UID'],
'USR_UID' => $this->adminUid,
'WEE_TITLE' => $event->getEvnUid(),
];
foreach ($row as $key => $value) {
if (isset($value)) {
$data[$key] = $value;
}
}
$this->object->create($processUid, $this->adminUid, $data);
$entryEvents2 = $this->object->getWebEntryEvents($processUid);
foreach ($entryEvents2 as $entryEvent) {
if ($entryEvent['EVN_UID'] === $event->getEvnUid()) {
break;
}
}
$webEntry = $this->getWebEntry($entryEvent);
$this->assertCount(2, $entryEvents2,
'Expected 2 events after create');
$this->object->delete($entryEvent['WEE_UID']);
foreach ($data as $key => $value) {
$this->assertEquals($value, $entryEvent[$key], ">$key<");
}
} catch (\PHPUnit_Framework_ExpectationFailedException $e) {
if (
$row['WE_LINK_GENERATION'] === 'DEFAULT' &&
preg_match('/>WEE_URL</', $e->getMessage())
) {
$this->assertEquals(
$this->getSimpleWebEntryUrl($webEntry),
$entryEvent['WEE_URL'],
'Wrong single web entry url (backward compativility)'
);
} else {
throw $e;
}
}
}
}
/**
* Create a WE with invalid parameters
* @cover ProcessMaker\BusinessModel\WebEntryEvent::create
* @category HOR-3207:7,HOR-3207:2
*/
public function testInvalidCreate()
{
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$this->expectException(\Exception::class);
$this->expectExceptionMessageRegExp('/(Please enter a valid value for (WE_TYPE|WE_AUTHENTICATION|WE_CALLBACK|WE_LINK_GENERATION)\s*){4,4}/');
$this->createWebEntryEvent(
$processUid, $entryEvents,
[
'WEE_URL' => $this->domain."/sys".SYS_SYS."/".SYS_LANG."/".SYS_SKIN."/".$processUid."/custom.php",
'WE_TYPE' => "NOT-VALID-SINGLE",
'WE_CUSTOM_TITLE' => $this->customTitle,
'WE_AUTHENTICATION' => 'NOT-VALID-ANONYMOUS',
'WE_HIDE_INFORMATION_BAR' => "0",
'WE_CALLBACK' => "NOT-VALID-PROCESSMAKER",
'WE_CALLBACK_URL' => "http://domain.localhost/callback",
'WE_LINK_GENERATION' => "NOT-VALID-ADVANCED",
'WE_LINK_SKIN' => SYS_SKIN,
'WE_LINK_LANGUAGE' => SYS_LANG,
'WE_LINK_DOMAIN' => $this->domain,
]
);
}
/**
* Update different combinations of web entries
* @throws \PHPUnit_Framework_ExpectationFailedException
* @cover ProcessMaker\BusinessModel\WebEntryEvent::update
* @category HOR-3207:8
*/
public function testUpdate()
{
$processUid = $this->processUid;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$entryEvent = $entryEvents[0];
$webEntryEventUid = $entryEvent['WEE_UID'];
$userUidUpdater = $this->adminUid;
$criteria = new \Criteria;
$criteria->add(\DynaformPeer::PRO_UID, $processUid);
$dynaforms = \DynaformPeer::doSelect($criteria);
$dynaformIds = [null];
foreach ($dynaforms as $dyn) {
$dynaformIds[] = $dyn->getDynUid();
}
$rows = $this->getCombinationsFor([
'WE_LINK_GENERATION' => ['DEFAULT', 'ADVANCED'],
'DYN_UID' => $dynaformIds,
'USR_UID' => [null, $this->adminUid, static::SKIP_VALUE],
'WE_LINK_SKIN' => [SYS_SKIN],
'WE_LINK_LANGUAGE' => [SYS_LANG],
'WE_LINK_DOMAIN' => [$this->domain],
]);
foreach ($rows as $row) {
try {
$this->object->update($webEntryEventUid, $userUidUpdater, $row);
$entryEvent = $this->object->getWebEntryEvent($webEntryEventUid);
$webEntry = $this->getWebEntry($entryEvent);
foreach ($row as $key => $value) {
$this->assertEquals($value, $entryEvent[$key], ">$key<");
}
} catch (\PHPUnit_Framework_ExpectationFailedException $e) {
if (
$row['WE_LINK_GENERATION'] === 'DEFAULT' &&
preg_match('/>WEE_URL</', $e->getMessage())
) {
$this->assertEquals(
$this->getSimpleWebEntryUrl($webEntry),
$entryEvent['WEE_URL'],
'Wrong single web entry url (backward compativility)'
);
} else {
throw $e;
}
}
}
}
/**
* Update WE with invalid parameters
* @cover ProcessMaker\BusinessModel\WebEntryEvent::update
* @category HOR-3207:8,HOR-3207:2
*/
public function testInvalidUpdate()
{
$processUid = $this->processUid;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$entryEvent = $entryEvents[0];
$webEntryEventUid = $entryEvent['WEE_UID'];
$userUidUpdater = $this->adminUid;
$this->expectException(\Exception::class);
$this->expectExceptionMessageRegExp('/(Please enter a valid value for (WE_TYPE|WE_AUTHENTICATION|WE_CALLBACK|WE_LINK_GENERATION)\s*){4,4}/');
$this->object->update(
$webEntryEventUid,
$userUidUpdater,
[
'WEE_URL' => $this->domain."/sys".SYS_SYS."/".SYS_LANG."/".SYS_SKIN."/".$processUid."/custom.php",
'WE_TYPE' => "NOT-VALID-SINGLE",
'WE_CUSTOM_TITLE' => $this->customTitle,
'WE_AUTHENTICATION' => 'NOT-VALID-ANONYMOUS',
'WE_HIDE_INFORMATION_BAR' => "0",
'WE_CALLBACK' => "NOT-VALID-PROCESSMAKER",
'WE_CALLBACK_URL' => "http://domain.localhost/callback",
'WE_LINK_GENERATION' => "NOT-VALID-ADVANCED",
'WE_LINK_SKIN' => SYS_SKIN,
'WE_LINK_LANGUAGE' => SYS_LANG,
'WE_LINK_DOMAIN' => $this->domain,
]
);
}
/**
* Required USR_UID
* @cover ProcessMaker\BusinessModel\WebEntryEvent::update
* @category HOR-3207:2
*/
public function testUsrUidNotRequiredIfLoginRequired()
{
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
list($webEntry, $entryEvent) = $this->createWebEntryEvent(
$processUid, $entryEvents,
[
'WE_AUTHENTICATION' => 'LOGIN_REQUIRED',
'DYN_UID' => $entryEvents[0]['DYN_UID'],
'USR_UID' => null,
]
);
}
/**
* Required fields
* @cover ProcessMaker\BusinessModel\WebEntryEvent::create
* @category HOR-3207:2
*/
public function testRequiredFields()
{
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$dynaform = $this->getADynaform($processUid);
$criteria = new \Criteria();
$criteria->add(\BpmnEventPeer::PRJ_UID, $processUid);
$criteria->add(\BpmnEventPeer::EVN_NAME, 'simple start');
$event = \BpmnEventPeer::doSelectOne($criteria);
//EVN_UID
try {
$data = [
];
$this->object->create($processUid, $this->adminUid, $data);
} catch (\Exception $e) {
$this->assertEquals('ID_INVALID_VALUE_CAN_NOT_BE_EMPTY($arrayData)',
$e->getMessage());
}
//EVN_UID
try {
$data = [
'WE_CUSTOM_TITLE' => $this->customTitle,
];
$this->object->create($processUid, $this->adminUid, $data);
} catch (\Exception $e) {
$this->assertEquals('ID_UNDEFINED_VALUE_IS_REQUIRED(EVN_UID)',
$e->getMessage());
}
//ACT_UID
try {
$data = [
'EVN_UID' => $event->getEvnUid(),
];
$this->object->create($processUid, $this->adminUid, $data);
} catch (\Exception $e) {
$this->assertEquals('ID_UNDEFINED_VALUE_IS_REQUIRED(ACT_UID)',
$e->getMessage());
}
//DYN_UID
try {
$data = [
'EVN_UID' => $event->getEvnUid(),
'ACT_UID' => $entryEvents[0]['ACT_UID'],
];
$this->object->create($processUid, $this->adminUid, $data);
} catch (\Exception $e) {
$this->assertEquals('ID_UNDEFINED_VALUE_IS_REQUIRED(DYN_UID)',
$e->getMessage());
}
//USR_UID (WE_AUTHENTICATION=ANONYMOUS)
try {
$data = [
'EVN_UID' => $event->getEvnUid(),
'ACT_UID' => $entryEvents[0]['ACT_UID'],
'DYN_UID' => $dynaform->getDynUid(),
];
$this->object->create($processUid, $this->adminUid, $data);
} catch (\Exception $e) {
$this->assertEquals('ID_UNDEFINED_VALUE_IS_REQUIRED(USR_UID)',
$e->getMessage());
}
//WEE_TITLE
try {
$data = [
'EVN_UID' => $event->getEvnUid(),
'ACT_UID' => $entryEvents[0]['ACT_UID'],
'DYN_UID' => $dynaform->getDynUid(),
'USR_UID' => $this->adminUid,
];
$this->object->create($processUid, $this->adminUid, $data);
} catch (\Exception $e) {
$this->assertEquals('ID_INVALID_VALUE_CAN_NOT_BE_EMPTY(WEE_TITLE)',
$e->getMessage());
}
}
/**
* Tests importing a BPMN with WE2 information.
* The import maintain the UIDs.
*
* @cover ProcessMaker\BusinessModel\WebEntryEvent
*/
public function testImportProcessWithWE2()
{
$proUid = $this->import(__DIR__.'/WebEntry2-multi-login.pmx');
$this->assertNotEmpty($proUid);
$taskCriteria = new \Criteria;
$taskCriteria->add(\TaskPeer::PRO_UID, $proUid);
$taskCriteria->add(\TaskPeer::TAS_UID, "wee-%", \Criteria::LIKE);
$task = \TaskPeer::doSelectOne($taskCriteria);
//Check steps
$criteria = new \Criteria;
$criteria->add(\StepPeer::TAS_UID, $task->getTasUid());
$criteria->addAscendingOrderByColumn(\StepPeer::STEP_POSITION);
$steps = [];
$stepWithTrigger = 1;
$uidStepWithTrigger = null;
foreach (\StepPeer::doSelect($criteria) as $index => $step) {
$steps[]=$step->getStepTypeObj();
if ($index == $stepWithTrigger) {
$uidStepWithTrigger = $step->getStepUid();
}
}
$this->assertEquals(
["DYNAFORM", "DYNAFORM", "INPUT_DOCUMENT", "OUTPUT_DOCUMENT"],
$steps
);
//Check triggers
$criteriaTri = new \Criteria;
$criteriaTri->add(\StepTriggerPeer::TAS_UID, $task->getTasUid());
$criteriaTri->add(\StepTriggerPeer::STEP_UID, $uidStepWithTrigger);
$criteriaTri->addAscendingOrderByColumn(\StepTriggerPeer::ST_POSITION);
$triggers = [];
foreach (\StepTriggerPeer::doSelect($criteriaTri) as $stepTri) {
$triggers[]=[$stepTri->getStepUid(), $stepTri->getStType()];
}
$this->assertEquals(
[[$uidStepWithTrigger, "BEFORE"]],
$triggers
);
}
/**
* Tests importing a BPMN with WE2 information.
* The import regenerates the UIDs.
*
* @cover ProcessMaker\BusinessModel\WebEntryEvent
*/
public function testImportProcessWithWE2WithRegenUid()
{
$proUid = $this->import(__DIR__.'/WebEntry2-multi-login.pmx', true);
$this->assertNotEmpty($proUid);
$taskCriteria = new \Criteria;
$taskCriteria->add(\TaskPeer::PRO_UID, $proUid);
$taskCriteria->add(\TaskPeer::TAS_UID, "wee-%", \Criteria::LIKE);
$task = \TaskPeer::doSelectOne($taskCriteria);
//Check steps
$criteria = new \Criteria;
$criteria->add(\StepPeer::TAS_UID, $task->getTasUid());
$criteria->addAscendingOrderByColumn(\StepPeer::STEP_POSITION);
$steps = [];
$stepWithTrigger = 1;
$uidStepWithTrigger = null;
foreach (\StepPeer::doSelect($criteria) as $index => $step) {
$steps[]=$step->getStepTypeObj();
if ($index == $stepWithTrigger) {
$uidStepWithTrigger = $step->getStepUid();
}
}
$this->assertEquals(
["DYNAFORM", "DYNAFORM", "INPUT_DOCUMENT", "OUTPUT_DOCUMENT"],
$steps
);
//Check triggers
$criteriaTri = new \Criteria;
$criteriaTri->add(\StepTriggerPeer::TAS_UID, $task->getTasUid());
$criteriaTri->add(\StepTriggerPeer::STEP_UID, $uidStepWithTrigger);
$criteriaTri->addAscendingOrderByColumn(\StepTriggerPeer::ST_POSITION);
$triggers = [];
foreach (\StepTriggerPeer::doSelect($criteriaTri) as $stepTri) {
$triggers[]=[$stepTri->getStepUid(), $stepTri->getStType()];
}
$this->assertEquals(
[[$uidStepWithTrigger, "BEFORE"]],
$triggers
);
}
/**
* @covers ProcessMaker\BusinessModel\WebEntryEvent::generateLink
* @category HOR-3210:5
*/
public function testGenerateLinkSingleDefaultAnonymous()
{
$processUid = $this->processUid;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$webEntry = $this->getWebEntry($entryEvents[0]);
$link = $this->object->generateLink($processUid, $entryEvents[0]['WEE_UID']);
$this->assertEquals($this->getSimpleWebEntryUrl($webEntry), $link);
}
/**
* @covers ProcessMaker\BusinessModel\WebEntryEvent::generateLink
* @category HOR-3210:5
*/
public function testGenerateLinkMultipleAnon()
{
$processUid = $this->processUid2;
$entryEvents = $this->object->getWebEntryEvents($processUid);
$this->assertCount(1, $entryEvents,
'Expected 1 event with web entry in process WebEntry2');
$criteria = new \Criteria();
$criteria->add(\BpmnEventPeer::PRJ_UID, $processUid);
$criteria->add(\BpmnEventPeer::EVN_NAME, 'simple start');
$event = \BpmnEventPeer::doSelectOne($criteria);
$data = [
'EVN_UID' => $event->getEvnUid(),
'ACT_UID' => $entryEvents[0]['ACT_UID'],
'WE_AUTHENTICATION' => 'ANONYMOUS',
'USR_UID' => $this->adminUid,
'WE_TYPE' => 'MULTIPLE',
'WEE_TITLE' => $event->getEvnUid(),
];
$this->object->create($processUid, $this->adminUid, $data);
$entryEvents2 = $this->object->getWebEntryEvents($processUid);
foreach ($entryEvents2 as $entryEvent) {
if ($entryEvent['EVN_UID'] === $event->getEvnUid()) {
break;
}
}
$webEntry = $this->getWebEntry($entryEvent);
$link = $this->object->generateLink($processUid, $entryEvent['WEE_UID']);
$this->assertEquals($this->getSimpleWebEntryUrl($webEntry), $link);
}
/**
* @covers ProcessMaker\BusinessModel\WebEntryEvent::generateLink
* @category HOR-3210:5
*/
public function testGenerateLinkForMissingWE()
{
$processUid = $this->processUid;
$this->expectException(\Exception::class);
$this->expectExceptionMessage('ID_WEB_ENTRY_EVENT_DOES_NOT_EXIST(WEE_UID)');
$link = $this->object->generateLink($processUid, 'INVALID-UID');
}
/**
* get a dynaform
* @return type
*/
private function getADynaform($processUid = null)
{
$criteria = new \Criteria;
$criteria->add(\DynaformPeer::PRO_UID,
$processUid ? $processUid : $this->processUid);
return \DynaformPeer::doSelectOne($criteria);
}
/**
* Get a WebEntry from a WebEntryEvent array
* @param type $webEntryEvent
* @return \WebEntry
*/
private function getWebEntry($webEntryEvent)
{
$wee = \WebEntryEventPeer::retrieveByPK($webEntryEvent['WEE_UID']);
return \WebEntryPeer::retrieveByPK($wee->getWeeWeUid());
}
/**
* The default generated WebEntryUrl.
*
* @param \WebEntry $we
* @return type
*/
private function getSimpleWebEntryUrl(\WebEntry $we)
{
return (\G::is_https() ? "https://" : "http://").
$_SERVER["HTTP_HOST"]."/sys".SYS_SYS."/".
SYS_LANG."/".SYS_SKIN."/".$we->getProUid()."/".$we->getWeData();
}
/**
* Create a WebEntryEvent using some default properties.
*
* @param type $processUid
* @param type $entryEvents
* @param type $config
* @return type
*/
private function createWebEntryEvent($processUid, $entryEvents, $config)
{
$this->assertCount(1, $entryEvents,
'Expected 1 event with web entry in process WebEntry2');
$criteria = new \Criteria();
$criteria->add(\BpmnEventPeer::PRJ_UID, $processUid);
$criteria->add(\BpmnEventPeer::EVN_NAME, 'simple start');
$event = \BpmnEventPeer::doSelectOne($criteria);
$data = [
'EVN_UID' => $event->getEvnUid(),
'ACT_UID' => $entryEvents[0]['ACT_UID'],
'WEE_STATUS' => 'ENABLED',
'USR_UID' => $this->adminUid,
'WEE_TITLE' => $event->getEvnUid(),
];
foreach ($config as $key => $value) {
$data[$key] = $value;
}
$this->object->create($processUid, $this->adminUid, $data);
$entryEvents2 = $this->object->getWebEntryEvents($processUid);
foreach ($entryEvents2 as $entryEvent) {
if ($entryEvent['EVN_UID'] === $event->getEvnUid()) {
break;
}
}
$webEntry = $this->getWebEntry($entryEvent);
$this->assertCount(2, $entryEvents2, 'Expected 2 events after create');
foreach ($data as $key => $value) {
$this->assertEquals($value, $entryEvent[$key], "> $key");
}
return [$webEntry, $entryEvent];
}
/**
* Create combination rows
* @param type $combinations
* @return array
*/
private function getCombinationsFor($combinations = [])
{
$j = 1;
foreach ($combinations as $key => $values) {
$j*=count($values);
}
$rows = [];
for ($i = 0; $i < $j; $i++) {
$row = [];
$ii = $i;
foreach ($combinations as $key => $values) {
$c = count($values);
$value = $values[$ii % $c];
if (static::SKIP_VALUE !== $value) {
$row[$key] = $value;
}
$ii = floor($ii / $c);
}
$rows[] = $row;
}
return $rows;
}
}

View File

@@ -0,0 +1,802 @@
<?xml version="1.0" encoding="utf-8"?>
<ProcessMaker-Project version="3.0">
<metadata>
<meta key="vendor_version"><![CDATA[(Branch feature/HOR-3207)]]></meta>
<meta key="vendor_version_code">Michelangelo</meta>
<meta key="export_timestamp">1495111434</meta>
<meta key="export_datetime"><![CDATA[2017-05-18T12:43:54+00:00]]></meta>
<meta key="export_server_addr"><![CDATA[127.0.0.1:8080]]></meta>
<meta key="export_server_os">Darwin</meta>
<meta key="export_server_php_version">50621</meta>
<meta key="export_version">1</meta>
<meta key="workspace">hor3207a</meta>
<meta key="name">WebEntryEvent</meta>
<meta key="uid">441299927591d969ff284b7005303758</meta>
</metadata>
<definition class="BPMN">
<table name="ACTIVITY">
<record>
<act_uid>382310413591d96b6cb34d7077964801</act_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<act_name>Task 1</act_name>
<act_type>TASK</act_type>
<act_is_for_compensation>0</act_is_for_compensation>
<act_start_quantity>1</act_start_quantity>
<act_completion_quantity>0</act_completion_quantity>
<act_task_type>EMPTY</act_task_type>
<act_implementation></act_implementation>
<act_instantiate>0</act_instantiate>
<act_script_type></act_script_type>
<act_script></act_script>
<act_loop_type>EMPTY</act_loop_type>
<act_test_before>0</act_test_before>
<act_loop_maximum>0</act_loop_maximum>
<act_loop_condition>0</act_loop_condition>
<act_loop_cardinality>0</act_loop_cardinality>
<act_loop_behavior>0</act_loop_behavior>
<act_is_adhoc>0</act_is_adhoc>
<act_is_collapsed>0</act_is_collapsed>
<act_completion_condition>0</act_completion_condition>
<act_ordering>0</act_ordering>
<act_cancel_remaining_instances>1</act_cancel_remaining_instances>
<act_protocol>0</act_protocol>
<act_method>0</act_method>
<act_is_global>0</act_is_global>
<act_referer>0</act_referer>
<act_default_flow>0</act_default_flow>
<act_master_diagram>0</act_master_diagram>
<bou_uid>635529260591d96b6cbfcb7051450866</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>382310413591d96b6cb34d7077964801</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>256</bou_x>
<bou_y>79</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="ARTIFACT"/>
<table name="BOUND">
<record>
<bou_uid>214544408591d96f0071200088162965</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>754852677591d96f0066c53097043776</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>213</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>635529260591d96b6cbfcb7051450866</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>382310413591d96b6cb34d7077964801</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>256</bou_x>
<bou_y>79</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>735358742591d96b70622c8075629514</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>349681056591d96b7059a07092140602</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>908599339591d96b70910b0020050417</bou_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>132598392591d96b7084aa6048071487</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>545</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="DATA"/>
<table name="DIAGRAM">
<record>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_name>WebEntryEvent</dia_name>
<dia_is_closable>0</dia_is_closable>
</record>
</table>
<table name="DOCUMENTATION"/>
<table name="EVENT">
<record>
<evn_uid>754852677591d96f0066c53097043776</evn_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<evn_name></evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>214544408591d96f0071200088162965</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>754852677591d96f0066c53097043776</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>213</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>349681056591d96b7059a07092140602</evn_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<evn_name>first</evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>735358742591d96b70622c8075629514</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>349681056591d96b7059a07092140602</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>100</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>132598392591d96b7084aa6048071487</evn_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<evn_name></evn_name>
<evn_type>END</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message></evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>THROW</evn_behavior>
<bou_uid>908599339591d96b70910b0020050417</bou_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<element_uid>132598392591d96b7084aa6048071487</element_uid>
<bou_element>891718728591d96a426dd25018705242</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>545</bou_x>
<bou_y>100</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="EXTENSION"/>
<table name="FLOW">
<record>
<flo_uid>714921265591d96f01e21a0012216876</flo_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>754852677591d96f0066c53097043776</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>382310413591d96b6cb34d7077964801</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>133</flo_x1>
<flo_y1>230</flo_y1>
<flo_x2>332</flo_x2>
<flo_y2>154</flo_y2>
<flo_state><![CDATA[[{"x":133,"y":230},{"x":332,"y":230},{"x":332,"y":154}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>755827041591d96b7215314058494878</flo_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>349681056591d96b7059a07092140602</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>382310413591d96b6cb34d7077964801</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>133</flo_x1>
<flo_y1>117</flo_y1>
<flo_x2>256</flo_x2>
<flo_y2>117</flo_y2>
<flo_state><![CDATA[[{"x":133,"y":117},{"x":256,"y":117}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>957678631591d96b7217c76024693278</flo_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>382310413591d96b6cb34d7077964801</flo_element_origin>
<flo_element_origin_type>bpmnActivity</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>132598392591d96b7084aa6048071487</flo_element_dest>
<flo_element_dest_type>bpmnEvent</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>407</flo_x1>
<flo_y1>117</flo_y1>
<flo_x2>545</flo_x2>
<flo_y2>117</flo_y2>
<flo_state><![CDATA[[{"x":407,"y":117},{"x":545,"y":117}]]]></flo_state>
<flo_position>1</flo_position>
</record>
</table>
<table name="GATEWAY"/>
<table name="LANE"/>
<table name="LANESET"/>
<table name="PARTICIPANT"/>
<table name="PROCESS">
<record>
<pro_uid>684563509591d96a01cbab3088210120</pro_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<dia_uid>358612266591d96a014d1e6034604444</dia_uid>
<pro_name>WebEntryEvent</pro_name>
<pro_type>NONE</pro_type>
<pro_is_executable>0</pro_is_executable>
<pro_is_closed>0</pro_is_closed>
<pro_is_subprocess>0</pro_is_subprocess>
</record>
</table>
<table name="PROJECT">
<record>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<prj_name>WebEntryEvent</prj_name>
<prj_description></prj_description>
<prj_target_namespace></prj_target_namespace>
<prj_expresion_language></prj_expresion_language>
<prj_type_language></prj_type_language>
<prj_exporter></prj_exporter>
<prj_exporter_version></prj_exporter_version>
<prj_create_date><![CDATA[2017-05-18 12:42:08]]></prj_create_date>
<prj_update_date><![CDATA[2017-05-18 12:43:27]]></prj_update_date>
<prj_author>00000000000000000000000000000001</prj_author>
<prj_author_version></prj_author_version>
<prj_original_source></prj_original_source>
</record>
</table>
</definition>
<definition class="workflow">
<table name="process">
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<pro_title>WebEntryEvent</pro_title>
<pro_description></pro_description>
<pro_parent>441299927591d969ff284b7005303758</pro_parent>
<pro_time>1</pro_time>
<pro_timeunit>DAYS</pro_timeunit>
<pro_status>ACTIVE</pro_status>
<pro_type_day></pro_type_day>
<pro_type>NORMAL</pro_type>
<pro_assignment>FALSE</pro_assignment>
<pro_show_map>0</pro_show_map>
<pro_show_message>0</pro_show_message>
<pro_subprocess>0</pro_subprocess>
<pro_tri_create></pro_tri_create>
<pro_tri_open></pro_tri_open>
<pro_tri_deleted></pro_tri_deleted>
<pro_tri_canceled></pro_tri_canceled>
<pro_tri_paused></pro_tri_paused>
<pro_tri_reassigned></pro_tri_reassigned>
<pro_tri_unpaused></pro_tri_unpaused>
<pro_type_process>PUBLIC</pro_type_process>
<pro_show_delegate>0</pro_show_delegate>
<pro_show_dynaform>0</pro_show_dynaform>
<pro_category></pro_category>
<pro_sub_category></pro_sub_category>
<pro_industry>0</pro_industry>
<pro_update_date><![CDATA[2017-05-18 12:43:27]]></pro_update_date>
<pro_create_date><![CDATA[2017-05-18 12:42:08]]></pro_create_date>
<pro_create_user>00000000000000000000000000000001</pro_create_user>
<pro_height>5000</pro_height>
<pro_width>10000</pro_width>
<pro_title_x>0</pro_title_x>
<pro_title_y>0</pro_title_y>
<pro_debug>0</pro_debug>
<pro_dynaforms></pro_dynaforms>
<pro_derivation_screen_tpl></pro_derivation_screen_tpl>
<pro_cost>0</pro_cost>
<pro_unit_cost></pro_unit_cost>
<pro_itee>1</pro_itee>
<pro_action_done><![CDATA[a:1:{i:0;s:41:"GATEWAYTOGATEWAY_DELETE_CORRUPTED_RECORDS";}]]></pro_action_done>
<pro_category_label>No Category</pro_category_label>
<pro_bpmn>1</pro_bpmn>
</record>
</table>
<table name="tasks">
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>382310413591d96b6cb34d7077964801</tas_uid>
<tas_title>Task 1</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>NORMAL</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>256</tas_posx>
<tas_posy>79</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-54929591d96cebdc838076843684</tas_uid>
<tas_title>WEBENTRYEVENT</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>WEBENTRYEVENT</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>100</tas_posx>
<tas_posy>100</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-64523591d96fc408bb5096940569</tas_uid>
<tas_title>WEBENTRYEVENT</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>WEBENTRYEVENT</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>100</tas_posx>
<tas_posy>213</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
</table>
<table name="routes">
<record>
<rou_uid>184293535591d96f02bc533028984423</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>382310413591d96b6cb34d7077964801</tas_uid>
<rou_next_task>-1</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
<record>
<rou_uid>674628874591d96fc547a04006969081</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-64523591d96fc408bb5096940569</tas_uid>
<rou_next_task>382310413591d96b6cb34d7077964801</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
<record>
<rou_uid>777329623591d96f04965b8071665220</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-54929591d96cebdc838076843684</tas_uid>
<rou_next_task>382310413591d96b6cb34d7077964801</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
</table>
<table name="lanes"/>
<table name="gateways"/>
<table name="inputs"/>
<table name="outputs"/>
<table name="dynaforms">
<record>
<dyn_uid>361249164591d96e6edcb81084086222</dyn_uid>
<dyn_title>Form2</dyn_title>
<dyn_description></dyn_description>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[441299927591d969ff284b7005303758/361249164591d96e6edcb81084086222]]></dyn_filename>
<dyn_content><![CDATA[{"name":"Form2","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"361249164591d96e6edcb81084086222","name":"Form2","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[],"variables":[]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-05-18 12:43:18]]></dyn_update_date>
</record>
<record>
<dyn_uid>839383145591d96c1331811037017265</dyn_uid>
<dyn_title>Form1</dyn_title>
<dyn_description></dyn_description>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[441299927591d969ff284b7005303758/839383145591d96c1331811037017265]]></dyn_filename>
<dyn_content><![CDATA[{"name":"Form1","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"839383145591d96c1331811037017265","name":"Form1","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[],"variables":[]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-05-18 12:42:41]]></dyn_update_date>
</record>
</table>
<table name="steps">
<record>
<step_uid>184891718591d96fc460179075100311</step_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-64523591d96fc408bb5096940569</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>361249164591d96e6edcb81084086222</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
<record>
<step_uid>593687534591d96ceca0ba3047943309</step_uid>
<pro_uid>441299927591d969ff284b7005303758</pro_uid>
<tas_uid>wee-54929591d96cebdc838076843684</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>839383145591d96c1331811037017265</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
</table>
<table name="triggers"/>
<table name="taskusers"/>
<table name="groupwfs"/>
<table name="steptriggers"/>
<table name="dbconnections"/>
<table name="reportTables"/>
<table name="reportTablesVars"/>
<table name="stepSupervisor"/>
<table name="objectPermissions"/>
<table name="subProcess"/>
<table name="caseTracker"/>
<table name="caseTrackerObject"/>
<table name="stage"/>
<table name="fieldCondition"/>
<table name="event"/>
<table name="caseScheduler"/>
<table name="processCategory"/>
<table name="taskExtraProperties"/>
<table name="processUser"/>
<table name="processVariables"/>
<table name="webEntry"/>
<table name="webEntryEvent">
<record>
<wee_uid>738419055591d96cf2b41c2097553491</wee_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<evn_uid>349681056591d96b7059a07092140602</evn_uid>
<act_uid>382310413591d96b6cb34d7077964801</act_uid>
<dyn_uid>839383145591d96c1331811037017265</dyn_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<wee_title>349681056591d96b7059a07092140602</wee_title>
<wee_description></wee_description>
<wee_status>ENABLED</wee_status>
<wee_we_uid>601692046591d96cf02f3c6044834198</wee_we_uid>
<wee_we_tas_uid>wee-54929591d96cebdc838076843684</wee_we_tas_uid>
<wee_we_url>349681056591d96b7059a07092140602.php</wee_we_url>
</record>
<record>
<wee_uid>994230525591d96fc6eb5c3089474099</wee_uid>
<prj_uid>441299927591d969ff284b7005303758</prj_uid>
<evn_uid>754852677591d96f0066c53097043776</evn_uid>
<act_uid>382310413591d96b6cb34d7077964801</act_uid>
<dyn_uid>361249164591d96e6edcb81084086222</dyn_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<wee_title>754852677591d96f0066c53097043776</wee_title>
<wee_description></wee_description>
<wee_status>ENABLED</wee_status>
<wee_we_uid>628282652591d96fc61ddc3005225961</wee_we_uid>
<wee_we_tas_uid>wee-64523591d96fc408bb5096940569</wee_we_tas_uid>
<wee_we_url>754852677591d96f0066c53097043776.php</wee_we_url>
</record>
</table>
<table name="messageType"/>
<table name="messageTypeVariable"/>
<table name="messageEventDefinition"/>
<table name="scriptTask"/>
<table name="timerEvent"/>
<table name="emailEvent"/>
<table name="filesManager"/>
<table name="abeConfiguration"/>
<table name="elementTask"/>
</definition>
<workflow-files>
<file target="dynaforms">
<file_name>Form2</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/361249164591d96e6edcb81084086222.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9IjQ0MTI5OTkyNzU5MWQ5NjlmZjI4NGI3MDA1MzAzNzU4LzM2MTI0OTE2NDU5MWQ5NmU2ZWRjYjgxMDg0MDg2MjIyIiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="dynaforms">
<file_name>Form1</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/839383145591d96c1331811037017265.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9IjQ0MTI5OTkyNzU5MWQ5NjlmZjI4NGI3MDA1MzAzNzU4LzgzOTM4MzE0NTU5MWQ5NmMxMzMxODExMDM3MDE3MjY1IiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="public">
<file_name>349681056591d96b7059a07092140602Info.php</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/349681056591d96b7059a07092140602Info.php]]></file_path>
<file_content><![CDATA[PD9waHAKCiRHX1BVQkxJU0ggPSBuZXcgUHVibGlzaGVyKCk7CiRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKJG1lc3NhZ2UgPSAiIjsKaWYgKGlzc2V0KCRfU0VTU0lPTlsiX193ZWJFbnRyeVN1Y2Nlc3NfXyJdKSkgewogICAgJHNob3cgPSAibG9naW4vc2hvd0luZm8iOwogICAgJG1lc3NhZ2UgPSAkX1NFU1NJT05bIl9fd2ViRW50cnlTdWNjZXNzX18iXTsKfSBlbHNlIHsKICAgICRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKICAgICRtZXNzYWdlID0gJF9TRVNTSU9OWyJfX3dlYkVudHJ5RXJyb3JfXyJdOwp9CiRHX1BVQkxJU0gtPkFkZENvbnRlbnQoInhtbGZvcm0iLCAieG1sZm9ybSIsICRzaG93LCAiIiwgJG1lc3NhZ2UpOwpHOjpSZW5kZXJQYWdlKCJwdWJsaXNoIiwgImJsYW5rIik7Cgo=]]></file_content>
</file>
<file target="public">
<file_name>754852677591d96f0066c53097043776Info.php</file_name>
<file_path><![CDATA[441299927591d969ff284b7005303758/754852677591d96f0066c53097043776Info.php]]></file_path>
<file_content><![CDATA[PD9waHAKCiRHX1BVQkxJU0ggPSBuZXcgUHVibGlzaGVyKCk7CiRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKJG1lc3NhZ2UgPSAiIjsKaWYgKGlzc2V0KCRfU0VTU0lPTlsiX193ZWJFbnRyeVN1Y2Nlc3NfXyJdKSkgewogICAgJHNob3cgPSAibG9naW4vc2hvd0luZm8iOwogICAgJG1lc3NhZ2UgPSAkX1NFU1NJT05bIl9fd2ViRW50cnlTdWNjZXNzX18iXTsKfSBlbHNlIHsKICAgICRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKICAgICRtZXNzYWdlID0gJF9TRVNTSU9OWyJfX3dlYkVudHJ5RXJyb3JfXyJdOwp9CiRHX1BVQkxJU0gtPkFkZENvbnRlbnQoInhtbGZvcm0iLCAieG1sZm9ybSIsICRzaG93LCAiIiwgJG1lc3NhZ2UpOwpHOjpSZW5kZXJQYWdlKCJwdWJsaXNoIiwgImJsYW5rIik7Cgo=]]></file_content>
</file>
</workflow-files>
</ProcessMaker-Project>

View File

@@ -0,0 +1,667 @@
<?xml version="1.0" encoding="utf-8"?>
<ProcessMaker-Project version="3.0">
<metadata>
<meta key="vendor_version"><![CDATA[(Branch feature/HOR-3207)]]></meta>
<meta key="vendor_version_code">Michelangelo</meta>
<meta key="export_timestamp">1495125086</meta>
<meta key="export_datetime"><![CDATA[2017-05-18T16:31:26+00:00]]></meta>
<meta key="export_server_addr"><![CDATA[127.0.0.1:8080]]></meta>
<meta key="export_server_os">Darwin</meta>
<meta key="export_server_php_version">50621</meta>
<meta key="export_version">2</meta>
<meta key="workspace">hor3207a</meta>
<meta key="name">WebEntryEvent2</meta>
<meta key="uid">764314601591da882ee7360035898228</meta>
</metadata>
<definition class="BPMN">
<table name="ACTIVITY">
<record>
<act_uid>699674969591da8ad2c8e29094085586</act_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<pro_uid>827725863591da88311f126098111677</pro_uid>
<act_name>Task 1</act_name>
<act_type>TASK</act_type>
<act_is_for_compensation>0</act_is_for_compensation>
<act_start_quantity>1</act_start_quantity>
<act_completion_quantity>0</act_completion_quantity>
<act_task_type>EMPTY</act_task_type>
<act_implementation></act_implementation>
<act_instantiate>0</act_instantiate>
<act_script_type></act_script_type>
<act_script></act_script>
<act_loop_type>EMPTY</act_loop_type>
<act_test_before>0</act_test_before>
<act_loop_maximum>0</act_loop_maximum>
<act_loop_condition>0</act_loop_condition>
<act_loop_cardinality>0</act_loop_cardinality>
<act_loop_behavior>0</act_loop_behavior>
<act_is_adhoc>0</act_is_adhoc>
<act_is_collapsed>0</act_is_collapsed>
<act_completion_condition>0</act_completion_condition>
<act_ordering>0</act_ordering>
<act_cancel_remaining_instances>0</act_cancel_remaining_instances>
<act_protocol>0</act_protocol>
<act_method>0</act_method>
<act_is_global>0</act_is_global>
<act_referer>0</act_referer>
<act_default_flow>0</act_default_flow>
<act_master_diagram>0</act_master_diagram>
<bou_uid>796773032591da8ad2d78f9070801311</bou_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>699674969591da8ad2c8e29094085586</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>359</bou_x>
<bou_y>74</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="ARTIFACT"/>
<table name="BOUND">
<record>
<bou_uid>644078661591da8ad49b168076298122</bou_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>629345707591da8ad4948a3022146882</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>606</bou_x>
<bou_y>95</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>720886708591dcc59beb096016129290</bou_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>757752922591dcc59bdaed3079376019</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>240</bou_x>
<bou_y>187</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>784735656591da8ad4749e5074175364</bou_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>103520741591da8ad46aa47032601056</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>240</bou_x>
<bou_y>95</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<bou_uid>796773032591da8ad2d78f9070801311</bou_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>699674969591da8ad2c8e29094085586</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnActivity</bou_element_type>
<bou_x>359</bou_x>
<bou_y>74</bou_y>
<bou_width>150</bou_width>
<bou_height>75</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="DATA"/>
<table name="DIAGRAM">
<record>
<dia_uid>976761549591da883096875051042456</dia_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_name>WebEntryEvent2</dia_name>
<dia_is_closable>0</dia_is_closable>
</record>
</table>
<table name="DOCUMENTATION"/>
<table name="EVENT">
<record>
<evn_uid>629345707591da8ad4948a3022146882</evn_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<pro_uid>827725863591da88311f126098111677</pro_uid>
<evn_name></evn_name>
<evn_type>END</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message></evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>THROW</evn_behavior>
<bou_uid>644078661591da8ad49b168076298122</bou_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>629345707591da8ad4948a3022146882</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>606</bou_x>
<bou_y>95</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>757752922591dcc59bdaed3079376019</evn_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<pro_uid>827725863591da88311f126098111677</pro_uid>
<evn_name>simple start</evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>720886708591dcc59beb096016129290</bou_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>757752922591dcc59bdaed3079376019</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>240</bou_x>
<bou_y>187</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
<record>
<evn_uid>103520741591da8ad46aa47032601056</evn_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<pro_uid>827725863591da88311f126098111677</pro_uid>
<evn_name></evn_name>
<evn_type>START</evn_type>
<evn_marker>EMPTY</evn_marker>
<evn_is_interrupting>1</evn_is_interrupting>
<evn_attached_to></evn_attached_to>
<evn_cancel_activity>0</evn_cancel_activity>
<evn_activity_ref></evn_activity_ref>
<evn_wait_for_completion>0</evn_wait_for_completion>
<evn_error_name></evn_error_name>
<evn_error_code></evn_error_code>
<evn_escalation_name></evn_escalation_name>
<evn_escalation_code></evn_escalation_code>
<evn_condition></evn_condition>
<evn_message>LEAD</evn_message>
<evn_operation_name></evn_operation_name>
<evn_operation_implementation_ref></evn_operation_implementation_ref>
<evn_time_date></evn_time_date>
<evn_time_cycle></evn_time_cycle>
<evn_time_duration></evn_time_duration>
<evn_behavior>CATCH</evn_behavior>
<bou_uid>784735656591da8ad4749e5074175364</bou_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<element_uid>103520741591da8ad46aa47032601056</element_uid>
<bou_element>592748205591dcc43e17925091079095</bou_element>
<bou_element_type>bpmnEvent</bou_element_type>
<bou_x>240</bou_x>
<bou_y>95</bou_y>
<bou_width>33</bou_width>
<bou_height>33</bou_height>
<bou_rel_position>0</bou_rel_position>
<bou_size_identical>0</bou_size_identical>
<bou_container>bpmnDiagram</bou_container>
</record>
</table>
<table name="EXTENSION"/>
<table name="FLOW">
<record>
<flo_uid>544425218591da8ad5424e9036223137</flo_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>103520741591da8ad46aa47032601056</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>699674969591da8ad2c8e29094085586</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>273</flo_x1>
<flo_y1>112</flo_y1>
<flo_x2>359</flo_x2>
<flo_y2>112</flo_y2>
<flo_state><![CDATA[[{"x":273,"y":112},{"x":359,"y":112}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>664834305591da8ad5445c1002013300</flo_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>699674969591da8ad2c8e29094085586</flo_element_origin>
<flo_element_origin_type>bpmnActivity</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>629345707591da8ad4948a3022146882</flo_element_dest>
<flo_element_dest_type>bpmnEvent</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>510</flo_x1>
<flo_y1>112</flo_y1>
<flo_x2>606</flo_x2>
<flo_y2>112</flo_y2>
<flo_state><![CDATA[[{"x":510,"y":112},{"x":606,"y":112}]]]></flo_state>
<flo_position>1</flo_position>
</record>
<record>
<flo_uid>732645293591dcc59c42f67065123627</flo_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<flo_type>SEQUENCE</flo_type>
<flo_name> </flo_name>
<flo_element_origin>757752922591dcc59bdaed3079376019</flo_element_origin>
<flo_element_origin_type>bpmnEvent</flo_element_origin_type>
<flo_element_origin_port>0</flo_element_origin_port>
<flo_element_dest>699674969591da8ad2c8e29094085586</flo_element_dest>
<flo_element_dest_type>bpmnActivity</flo_element_dest_type>
<flo_element_dest_port>0</flo_element_dest_port>
<flo_is_inmediate>1</flo_is_inmediate>
<flo_condition></flo_condition>
<flo_x1>273</flo_x1>
<flo_y1>204</flo_y1>
<flo_x2>435</flo_x2>
<flo_y2>149</flo_y2>
<flo_state><![CDATA[[{"x":273,"y":204},{"x":435,"y":204},{"x":435,"y":149}]]]></flo_state>
<flo_position>1</flo_position>
</record>
</table>
<table name="GATEWAY"/>
<table name="LANE"/>
<table name="LANESET"/>
<table name="PARTICIPANT"/>
<table name="PROCESS">
<record>
<pro_uid>827725863591da88311f126098111677</pro_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<dia_uid>976761549591da883096875051042456</dia_uid>
<pro_name>WebEntryEvent2</pro_name>
<pro_type>NONE</pro_type>
<pro_is_executable>0</pro_is_executable>
<pro_is_closed>0</pro_is_closed>
<pro_is_subprocess>0</pro_is_subprocess>
</record>
</table>
<table name="PROJECT">
<record>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<prj_name>WebEntryEvent2</prj_name>
<prj_description></prj_description>
<prj_target_namespace></prj_target_namespace>
<prj_expresion_language></prj_expresion_language>
<prj_type_language></prj_type_language>
<prj_exporter></prj_exporter>
<prj_exporter_version></prj_exporter_version>
<prj_create_date><![CDATA[2017-05-18 13:58:27]]></prj_create_date>
<prj_update_date><![CDATA[2017-05-18 16:31:21]]></prj_update_date>
<prj_author>00000000000000000000000000000001</prj_author>
<prj_author_version></prj_author_version>
<prj_original_source></prj_original_source>
</record>
</table>
</definition>
<definition class="workflow">
<table name="process">
<record>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<pro_title>WebEntryEvent2</pro_title>
<pro_description></pro_description>
<pro_parent>764314601591da882ee7360035898228</pro_parent>
<pro_time>1</pro_time>
<pro_timeunit>DAYS</pro_timeunit>
<pro_status>ACTIVE</pro_status>
<pro_type_day></pro_type_day>
<pro_type>NORMAL</pro_type>
<pro_assignment>FALSE</pro_assignment>
<pro_show_map>0</pro_show_map>
<pro_show_message>0</pro_show_message>
<pro_subprocess>0</pro_subprocess>
<pro_tri_create></pro_tri_create>
<pro_tri_open></pro_tri_open>
<pro_tri_deleted></pro_tri_deleted>
<pro_tri_canceled></pro_tri_canceled>
<pro_tri_paused></pro_tri_paused>
<pro_tri_reassigned></pro_tri_reassigned>
<pro_tri_unpaused></pro_tri_unpaused>
<pro_type_process>PUBLIC</pro_type_process>
<pro_show_delegate>0</pro_show_delegate>
<pro_show_dynaform>0</pro_show_dynaform>
<pro_category></pro_category>
<pro_sub_category></pro_sub_category>
<pro_industry>0</pro_industry>
<pro_update_date><![CDATA[2017-05-18 16:31:21]]></pro_update_date>
<pro_create_date><![CDATA[2017-05-18 13:58:26]]></pro_create_date>
<pro_create_user>00000000000000000000000000000001</pro_create_user>
<pro_height>5000</pro_height>
<pro_width>10000</pro_width>
<pro_title_x>0</pro_title_x>
<pro_title_y>0</pro_title_y>
<pro_debug>0</pro_debug>
<pro_dynaforms></pro_dynaforms>
<pro_derivation_screen_tpl></pro_derivation_screen_tpl>
<pro_cost>0</pro_cost>
<pro_unit_cost></pro_unit_cost>
<pro_itee>1</pro_itee>
<pro_action_done><![CDATA[a:1:{i:0;s:41:"GATEWAYTOGATEWAY_DELETE_CORRUPTED_RECORDS";}]]></pro_action_done>
<pro_category_label>No Category</pro_category_label>
<pro_bpmn>1</pro_bpmn>
</record>
</table>
<table name="tasks">
<record>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<tas_uid>699674969591da8ad2c8e29094085586</tas_uid>
<tas_title>Task 1</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>NORMAL</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>359</tas_posx>
<tas_posy>74</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
<record>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<tas_uid>wee-96854591da8b6eda526061044026</tas_uid>
<tas_title>WEBENTRYEVENT</tas_title>
<tas_description></tas_description>
<tas_def_title></tas_def_title>
<tas_def_subject_message></tas_def_subject_message>
<tas_def_proc_code></tas_def_proc_code>
<tas_def_message></tas_def_message>
<tas_def_description></tas_def_description>
<tas_type>WEBENTRYEVENT</tas_type>
<tas_duration>1</tas_duration>
<tas_delay_type></tas_delay_type>
<tas_temporizer>0</tas_temporizer>
<tas_type_day></tas_type_day>
<tas_timeunit>DAYS</tas_timeunit>
<tas_alert>FALSE</tas_alert>
<tas_priority_variable></tas_priority_variable>
<tas_assign_type>BALANCED</tas_assign_type>
<tas_assign_variable><![CDATA[@@SYS_NEXT_USER_TO_BE_ASSIGNED]]></tas_assign_variable>
<tas_group_variable></tas_group_variable>
<tas_mi_instance_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCE]]></tas_mi_instance_variable>
<tas_mi_complete_variable><![CDATA[@@SYS_VAR_TOTAL_INSTANCES_COMPLETE]]></tas_mi_complete_variable>
<tas_assign_location>FALSE</tas_assign_location>
<tas_assign_location_adhoc>FALSE</tas_assign_location_adhoc>
<tas_transfer_fly>FALSE</tas_transfer_fly>
<tas_last_assigned>0</tas_last_assigned>
<tas_user>0</tas_user>
<tas_can_upload>FALSE</tas_can_upload>
<tas_view_upload>FALSE</tas_view_upload>
<tas_view_additional_documentation>FALSE</tas_view_additional_documentation>
<tas_can_cancel>FALSE</tas_can_cancel>
<tas_owner_app>FALSE</tas_owner_app>
<stg_uid></stg_uid>
<tas_can_pause>FALSE</tas_can_pause>
<tas_can_send_message>TRUE</tas_can_send_message>
<tas_can_delete_docs>FALSE</tas_can_delete_docs>
<tas_self_service>FALSE</tas_self_service>
<tas_start>TRUE</tas_start>
<tas_to_last_user>FALSE</tas_to_last_user>
<tas_send_last_email>FALSE</tas_send_last_email>
<tas_derivation>NORMAL</tas_derivation>
<tas_posx>240</tas_posx>
<tas_posy>95</tas_posy>
<tas_width>110</tas_width>
<tas_height>60</tas_height>
<tas_color></tas_color>
<tas_evn_uid></tas_evn_uid>
<tas_boundary></tas_boundary>
<tas_derivation_screen_tpl></tas_derivation_screen_tpl>
<tas_selfservice_timeout>0</tas_selfservice_timeout>
<tas_selfservice_time>0</tas_selfservice_time>
<tas_selfservice_time_unit></tas_selfservice_time_unit>
<tas_selfservice_trigger_uid></tas_selfservice_trigger_uid>
<tas_selfservice_execution>EVERY_TIME</tas_selfservice_execution>
<tas_not_email_from_format>0</tas_not_email_from_format>
<tas_offline>FALSE</tas_offline>
<tas_email_server_uid></tas_email_server_uid>
<tas_auto_root>FALSE</tas_auto_root>
<tas_receive_server_uid></tas_receive_server_uid>
<tas_receive_last_email>FALSE</tas_receive_last_email>
<tas_receive_email_from_format>0</tas_receive_email_from_format>
<tas_receive_message_type>text</tas_receive_message_type>
<tas_receive_message_template>alert_message.html</tas_receive_message_template>
<tas_receive_subject_message></tas_receive_subject_message>
<tas_receive_message></tas_receive_message>
<tas_average></tas_average>
<tas_sdv></tas_sdv>
</record>
</table>
<table name="routes">
<record>
<rou_uid>140127072591dcc59f37b55051754850</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<tas_uid>wee-96854591da8b6eda526061044026</tas_uid>
<rou_next_task>699674969591da8ad2c8e29094085586</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
<record>
<rou_uid>326526437591dcc59d531b0071922316</rou_uid>
<rou_parent>0</rou_parent>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<tas_uid>699674969591da8ad2c8e29094085586</tas_uid>
<rou_next_task>-1</rou_next_task>
<rou_case>1</rou_case>
<rou_type>SEQUENTIAL</rou_type>
<rou_default>0</rou_default>
<rou_condition></rou_condition>
<rou_to_last_user>FALSE</rou_to_last_user>
<rou_optional>FALSE</rou_optional>
<rou_send_email>TRUE</rou_send_email>
<rou_sourceanchor>1</rou_sourceanchor>
<rou_targetanchor>0</rou_targetanchor>
<rou_to_port>1</rou_to_port>
<rou_from_port>2</rou_from_port>
<rou_evn_uid></rou_evn_uid>
<gat_uid></gat_uid>
</record>
</table>
<table name="lanes"/>
<table name="gateways"/>
<table name="inputs"/>
<table name="outputs"/>
<table name="dynaforms">
<record>
<dyn_uid>877826579591da8a5465c72072288515</dyn_uid>
<dyn_title>Form1</dyn_title>
<dyn_description></dyn_description>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<dyn_type>xmlform</dyn_type>
<dyn_filename><![CDATA[764314601591da882ee7360035898228/877826579591da8a5465c72072288515]]></dyn_filename>
<dyn_content><![CDATA[{"name":"Form1","description":"","items":[{"type":"form","variable":"","var_uid":"","dataType":"","id":"877826579591da8a5465c72072288515","name":"Form1","description":"","mode":"edit","script":"","language":"en","externalLibs":"","printable":false,"items":[],"variables":[]}]}]]></dyn_content>
<dyn_label></dyn_label>
<dyn_version>2</dyn_version>
<dyn_update_date><![CDATA[2017-05-18 13:59:01]]></dyn_update_date>
</record>
</table>
<table name="steps">
<record>
<step_uid>529105626591da8b7076636070339785</step_uid>
<pro_uid>764314601591da882ee7360035898228</pro_uid>
<tas_uid>wee-96854591da8b6eda526061044026</tas_uid>
<step_type_obj>DYNAFORM</step_type_obj>
<step_uid_obj>877826579591da8a5465c72072288515</step_uid_obj>
<step_condition></step_condition>
<step_position>1</step_position>
<step_mode>EDIT</step_mode>
</record>
</table>
<table name="triggers"/>
<table name="taskusers"/>
<table name="groupwfs"/>
<table name="steptriggers"/>
<table name="dbconnections"/>
<table name="reportTables"/>
<table name="reportTablesVars"/>
<table name="stepSupervisor"/>
<table name="objectPermissions"/>
<table name="subProcess"/>
<table name="caseTracker"/>
<table name="caseTrackerObject"/>
<table name="stage"/>
<table name="fieldCondition"/>
<table name="event"/>
<table name="caseScheduler"/>
<table name="processCategory"/>
<table name="taskExtraProperties"/>
<table name="processUser"/>
<table name="processVariables"/>
<table name="webEntry"/>
<table name="webEntryEvent">
<record>
<wee_uid>193368522591da8b76111f9092017469</wee_uid>
<prj_uid>764314601591da882ee7360035898228</prj_uid>
<evn_uid>103520741591da8ad46aa47032601056</evn_uid>
<act_uid>699674969591da8ad2c8e29094085586</act_uid>
<dyn_uid>877826579591da8a5465c72072288515</dyn_uid>
<usr_uid>00000000000000000000000000000001</usr_uid>
<wee_title>103520741591da8ad46aa47032601056</wee_title>
<wee_description></wee_description>
<wee_status>ENABLED</wee_status>
<wee_we_uid>178183036591da8b7340ba1059701145</wee_we_uid>
<wee_we_tas_uid>wee-96854591da8b6eda526061044026</wee_we_tas_uid>
<wee_we_url>103520741591da8ad46aa47032601056.php</wee_we_url>
</record>
</table>
<table name="messageType"/>
<table name="messageTypeVariable"/>
<table name="messageEventDefinition"/>
<table name="scriptTask"/>
<table name="timerEvent"/>
<table name="emailEvent"/>
<table name="filesManager"/>
<table name="abeConfiguration"/>
<table name="elementTask"/>
</definition>
<workflow-files>
<file target="dynaforms">
<file_name>Form1</file_name>
<file_path><![CDATA[764314601591da882ee7360035898228/877826579591da8a5465c72072288515.xml]]></file_path>
<file_content><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGR5bmFGb3JtIHR5cGU9InhtbGZvcm0iIG5hbWU9Ijc2NDMxNDYwMTU5MWRhODgyZWU3MzYwMDM1ODk4MjI4Lzg3NzgyNjU3OTU5MWRhOGE1NDY1YzcyMDcyMjg4NTE1IiB3aWR0aD0iNTAwIiBlbmFibGV0ZW1wbGF0ZT0iMCIgbW9kZT0iIiBuZXh0c3RlcHNhdmU9InByb21wdCI+CjwvZHluYUZvcm0+]]></file_content>
</file>
<file target="public">
<file_name>103520741591da8ad46aa47032601056Info.php</file_name>
<file_path><![CDATA[764314601591da882ee7360035898228/103520741591da8ad46aa47032601056Info.php]]></file_path>
<file_content><![CDATA[PD9waHAKCiRHX1BVQkxJU0ggPSBuZXcgUHVibGlzaGVyKCk7CiRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKJG1lc3NhZ2UgPSAiIjsKaWYgKGlzc2V0KCRfU0VTU0lPTlsiX193ZWJFbnRyeVN1Y2Nlc3NfXyJdKSkgewogICAgJHNob3cgPSAibG9naW4vc2hvd0luZm8iOwogICAgJG1lc3NhZ2UgPSAkX1NFU1NJT05bIl9fd2ViRW50cnlTdWNjZXNzX18iXTsKfSBlbHNlIHsKICAgICRzaG93ID0gImxvZ2luL3Nob3dNZXNzYWdlIjsKICAgICRtZXNzYWdlID0gJF9TRVNTSU9OWyJfX3dlYkVudHJ5RXJyb3JfXyJdOwp9CiRHX1BVQkxJU0gtPkFkZENvbnRlbnQoInhtbGZvcm0iLCAieG1sZm9ybSIsICRzaG93LCAiIiwgJG1lc3NhZ2UpOwpHOjpSZW5kZXJQYWdlKCJwdWJsaXNoIiwgImJsYW5rIik7Cgo=]]></file_content>
</file>
</workflow-files>
</ProcessMaker-Project>

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,7 @@
<?php <?php
use \ProcessMaker\BusinessModel\WebEntryEvent;
/** /**
* class.case.php * class.case.php
* @package workflow.engine.classes * @package workflow.engine.classes
@@ -184,18 +186,33 @@ class Cases
} }
/* /*
* get user starting tasks, but per type (dropdown, radio and category type) * Get user starting tasks, but per type (dropdown, radio and category type)
*
* @param string $sUIDUser * @param string $sUIDUser
* @return $rows * @return $rows
*/ */
public function getStartCasesPerType($sUIDUser = '', $typeView = null) public function getStartCasesPerType($sUIDUser = '', $typeView = null)
{ {
$rows[] = array('uid' => 'char', 'value' => 'char'); $rows[] = array('uid' => 'char', 'value' => 'char');
$tasks = array(); $tasks = array();
$arrayTaskTypeToExclude = array(
$arrayTaskTypeToExclude = array("WEBENTRYEVENT", "END-MESSAGE-EVENT", "START-MESSAGE-EVENT", "INTERMEDIATE-THROW-MESSAGE-EVENT", "INTERMEDIATE-CATCH-MESSAGE-EVENT", "SCRIPT-TASK", "START-TIMER-EVENT", "INTERMEDIATE-CATCH-TIMER-EVENT"); "WEBENTRYEVENT",
"END-MESSAGE-EVENT",
"START-MESSAGE-EVENT",
"INTERMEDIATE-THROW-MESSAGE-EVENT",
"INTERMEDIATE-CATCH-MESSAGE-EVENT",
"SCRIPT-TASK",
"START-TIMER-EVENT",
"INTERMEDIATE-CATCH-TIMER-EVENT"
);
$webEntryEvent = new WebEntryEvent();
$arrayWebEntryEvent = array();
//Set the parameter $considerShowInCase=true, to consider the WE_SHOW_IN_CASE
//configuration to filter the Start events with WebEntry.
$allWebEntryEvents = $webEntryEvent->getAllWebEntryEvents(true);
foreach ($allWebEntryEvents as $webEntryEvents) {
$arrayWebEntryEvent[] = $webEntryEvents["ACT_UID"];
}
$c = new Criteria(); $c = new Criteria();
$c->clearSelectColumns(); $c->clearSelectColumns();
$c->addSelectColumn(TaskPeer::TAS_UID); $c->addSelectColumn(TaskPeer::TAS_UID);
@@ -205,6 +222,7 @@ class Cases
$c->add(ProcessPeer::PRO_STATUS, 'ACTIVE'); $c->add(ProcessPeer::PRO_STATUS, 'ACTIVE');
$c->add(ProcessPeer::PRO_SUBPROCESS, '0'); $c->add(ProcessPeer::PRO_SUBPROCESS, '0');
$c->add(TaskPeer::TAS_TYPE, $arrayTaskTypeToExclude, Criteria::NOT_IN); $c->add(TaskPeer::TAS_TYPE, $arrayTaskTypeToExclude, Criteria::NOT_IN);
$c->add(TaskPeer::TAS_UID, $arrayWebEntryEvent, Criteria::NOT_IN);
$c->add(TaskPeer::TAS_START, 'TRUE'); $c->add(TaskPeer::TAS_START, 'TRUE');
$c->add(TaskUserPeer::USR_UID, $sUIDUser); $c->add(TaskUserPeer::USR_UID, $sUIDUser);
$c->add(TaskUserPeer::TU_TYPE, 1); $c->add(TaskUserPeer::TU_TYPE, 1);
@@ -217,11 +235,9 @@ class Cases
$rs->next(); $rs->next();
$row = $rs->getRow(); $row = $rs->getRow();
} }
//check groups //check groups
$group = new Groups(); $group = new Groups();
$aGroups = $group->getActiveGroupsForAnUser($sUIDUser); $aGroups = $group->getActiveGroupsForAnUser($sUIDUser);
$c = new Criteria(); $c = new Criteria();
$c->clearSelectColumns(); $c->clearSelectColumns();
$c->addSelectColumn(TaskPeer::TAS_UID); $c->addSelectColumn(TaskPeer::TAS_UID);
@@ -231,6 +247,7 @@ class Cases
$c->add(ProcessPeer::PRO_STATUS, 'ACTIVE'); $c->add(ProcessPeer::PRO_STATUS, 'ACTIVE');
$c->add(ProcessPeer::PRO_SUBPROCESS, '0'); $c->add(ProcessPeer::PRO_SUBPROCESS, '0');
$c->add(TaskPeer::TAS_TYPE, $arrayTaskTypeToExclude, Criteria::NOT_IN); $c->add(TaskPeer::TAS_TYPE, $arrayTaskTypeToExclude, Criteria::NOT_IN);
$c->add(TaskPeer::TAS_UID, $arrayWebEntryEvent, Criteria::NOT_IN);
$c->add(TaskPeer::TAS_START, 'TRUE'); $c->add(TaskPeer::TAS_START, 'TRUE');
$c->add(TaskUserPeer::USR_UID, $aGroups, Criteria::IN); $c->add(TaskUserPeer::USR_UID, $aGroups, Criteria::IN);
$c->add(TaskUserPeer::TU_TYPE, 1); $c->add(TaskUserPeer::TU_TYPE, 1);
@@ -243,7 +260,6 @@ class Cases
$rs->next(); $rs->next();
$row = $rs->getRow(); $row = $rs->getRow();
} }
$c = new Criteria(); $c = new Criteria();
$c->addSelectColumn(TaskPeer::TAS_UID); $c->addSelectColumn(TaskPeer::TAS_UID);
$c->addSelectColumn(TaskPeer::TAS_TITLE); $c->addSelectColumn(TaskPeer::TAS_TITLE);
@@ -261,14 +277,11 @@ class Cases
$aConditions[] = array('PCS.PRO_CATEGORY', 'PCSCAT.CATEGORY_UID'); $aConditions[] = array('PCS.PRO_CATEGORY', 'PCSCAT.CATEGORY_UID');
$c->addJoinMC($aConditions, Criteria::LEFT_JOIN); $c->addJoinMC($aConditions, Criteria::LEFT_JOIN);
} }
$c->addJoin (TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin (TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN);
$c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN); $c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN);
$c->add(ProcessPeer::PRO_SUBPROCESS, '0'); $c->add(ProcessPeer::PRO_SUBPROCESS, '0');
$c->addAscendingOrderByColumn(ProcessPeer::PRO_TITLE); $c->addAscendingOrderByColumn(ProcessPeer::PRO_TITLE);
$c->addAscendingOrderByColumn(TaskPeer::TAS_TITLE); $c->addAscendingOrderByColumn(TaskPeer::TAS_TITLE);
$rs = TaskPeer::doSelectRS($c); $rs = TaskPeer::doSelectRS($c);
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$rs->next(); $rs->next();
@@ -302,12 +315,10 @@ class Cases
$rs->next(); $rs->next();
$row = $rs->getRow(); $row = $rs->getRow();
} }
$rowsToReturn = $rows; $rowsToReturn = $rows;
if ($typeView === 'category') { if ($typeView === 'category') {
$rowsToReturn = $this->orderStartCasesByCategoryAndName($rows); $rowsToReturn = $this->orderStartCasesByCategoryAndName($rows);
} }
return $rowsToReturn; return $rowsToReturn;
} }

View File

@@ -850,6 +850,29 @@ class Processes
return true; return true;
} }
/**
* change and Renew all Task GUID owned by WebEntries
*
* @param string $oData
* @return boolean
*/
public function renewAllWebEntryEventGuid(&$oData)
{
$map = array();
foreach ($oData->webEntryEvent as $key => $val) {
if (isset($val["EVN_UID_OLD"])) {
$uidNew = \ProcessMaker\BusinessModel\WebEntryEvent::getTaskUidFromEvnUid($val["EVN_UID"]);
$uidOld = \ProcessMaker\BusinessModel\WebEntryEvent::getTaskUidFromEvnUid($val["EVN_UID_OLD"]);
foreach($oData->tasks as $index => $task) {
if ($task["TAS_UID"]===$uidOld) {
$oData->tasks[$index]["TAS_UID"]=$uidNew;
$oData->tasks[$index]["TAS_UID_OLD"]=$uidOld;
}
}
}
}
}
/** /**
* change and Renew all Task GUID, because the process needs to have a new set of tasks * change and Renew all Task GUID, because the process needs to have a new set of tasks
* *
@@ -2584,6 +2607,7 @@ class Processes
$oData->uid["PROCESS"] = array($oData->process["PRO_PARENT"] => $oData->process["PRO_UID"]); $oData->uid["PROCESS"] = array($oData->process["PRO_PARENT"] => $oData->process["PRO_UID"]);
} }
$this->renewAllWebEntryEventGuid($oData);
$this->renewAllTaskGuid($oData); $this->renewAllTaskGuid($oData);
$this->renewAllDynaformGuid($oData); $this->renewAllDynaformGuid($oData);
$this->renewAllInputGuid($oData); $this->renewAllInputGuid($oData);

View File

@@ -1270,7 +1270,7 @@ class wsBase
return $result; return $result;
} catch (Exception $e) { } catch (Exception $e) {
$result = wsCreateUserResponse( 100, $e->getMessage(), null ); $result = new wsCreateUserResponse( 100, $e->getMessage(), null );
return $result; return $result;
} }

View File

@@ -77,9 +77,9 @@ class WebEntryEventMapBuilder
$tMap->addColumn('ACT_UID', 'ActUid', 'string', CreoleTypes::VARCHAR, true, 32); $tMap->addColumn('ACT_UID', 'ActUid', 'string', CreoleTypes::VARCHAR, true, 32);
$tMap->addColumn('DYN_UID', 'DynUid', 'string', CreoleTypes::VARCHAR, true, 32); $tMap->addColumn('DYN_UID', 'DynUid', 'string', CreoleTypes::VARCHAR, false, 32);
$tMap->addColumn('USR_UID', 'UsrUid', 'string', CreoleTypes::VARCHAR, true, 32); $tMap->addColumn('USR_UID', 'UsrUid', 'string', CreoleTypes::VARCHAR, false, 32);
$tMap->addColumn('WEE_STATUS', 'WeeStatus', 'string', CreoleTypes::VARCHAR, true, 10); $tMap->addColumn('WEE_STATUS', 'WeeStatus', 'string', CreoleTypes::VARCHAR, true, 10);

View File

@@ -71,7 +71,7 @@ class WebEntryMapBuilder
$tMap->addColumn('TAS_UID', 'TasUid', 'string', CreoleTypes::VARCHAR, true, 32); $tMap->addColumn('TAS_UID', 'TasUid', 'string', CreoleTypes::VARCHAR, true, 32);
$tMap->addColumn('DYN_UID', 'DynUid', 'string', CreoleTypes::VARCHAR, true, 32); $tMap->addColumn('DYN_UID', 'DynUid', 'string', CreoleTypes::VARCHAR, false, 32);
$tMap->addColumn('USR_UID', 'UsrUid', 'string', CreoleTypes::VARCHAR, false, 32); $tMap->addColumn('USR_UID', 'UsrUid', 'string', CreoleTypes::VARCHAR, false, 32);
@@ -89,6 +89,36 @@ class WebEntryMapBuilder
$tMap->addColumn('WE_UPDATE_DATE', 'WeUpdateDate', 'int', CreoleTypes::TIMESTAMP, false, null); $tMap->addColumn('WE_UPDATE_DATE', 'WeUpdateDate', 'int', CreoleTypes::TIMESTAMP, false, null);
$tMap->addColumn('WE_TYPE', 'WeType', 'string', CreoleTypes::VARCHAR, true, 8);
$tMap->addColumn('WE_CUSTOM_TITLE', 'WeCustomTitle', 'string', CreoleTypes::LONGVARCHAR, false, null);
$tMap->addColumn('WE_AUTHENTICATION', 'WeAuthentication', 'string', CreoleTypes::VARCHAR, true, 14);
$tMap->addColumn('WE_HIDE_INFORMATION_BAR', 'WeHideInformationBar', 'string', CreoleTypes::CHAR, false, 1);
$tMap->addColumn('WE_CALLBACK', 'WeCallback', 'string', CreoleTypes::VARCHAR, true, 13);
$tMap->addColumn('WE_CALLBACK_URL', 'WeCallbackUrl', 'string', CreoleTypes::LONGVARCHAR, false, null);
$tMap->addColumn('WE_LINK_GENERATION', 'WeLinkGeneration', 'string', CreoleTypes::VARCHAR, true, 8);
$tMap->addColumn('WE_LINK_SKIN', 'WeLinkSkin', 'string', CreoleTypes::VARCHAR, false, 255);
$tMap->addColumn('WE_LINK_LANGUAGE', 'WeLinkLanguage', 'string', CreoleTypes::VARCHAR, false, 255);
$tMap->addColumn('WE_LINK_DOMAIN', 'WeLinkDomain', 'string', CreoleTypes::LONGVARCHAR, false, null);
$tMap->addColumn('WE_SHOW_IN_NEW_CASE', 'WeShowInNewCase', 'string', CreoleTypes::CHAR, false, 1);
$tMap->addValidator('WE_TYPE', 'validValues', 'propel.validator.ValidValuesValidator', 'SINGLE|MULTIPLE', 'Please enter a valid value for WE_TYPE');
$tMap->addValidator('WE_AUTHENTICATION', 'validValues', 'propel.validator.ValidValuesValidator', 'ANONYMOUS|LOGIN_REQUIRED', 'Please enter a valid value for WE_AUTHENTICATION');
$tMap->addValidator('WE_CALLBACK', 'validValues', 'propel.validator.ValidValuesValidator', 'PROCESSMAKER|CUSTOM|CUSTOM_CLEAR', 'Please enter a valid value for WE_CALLBACK');
$tMap->addValidator('WE_LINK_GENERATION', 'validValues', 'propel.validator.ValidValuesValidator', 'DEFAULT|ADVANCED', 'Please enter a valid value for WE_LINK_GENERATION');
} // doBuild() } // doBuild()
} // WebEntryMapBuilder } // WebEntryMapBuilder

View File

@@ -55,7 +55,7 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
* The value for the usr_uid field. * The value for the usr_uid field.
* @var string * @var string
*/ */
protected $usr_uid = ''; protected $usr_uid;
/** /**
* The value for the we_method field. * The value for the we_method field.
@@ -99,6 +99,72 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
*/ */
protected $we_update_date; protected $we_update_date;
/**
* The value for the we_type field.
* @var string
*/
protected $we_type = 'SINGLE';
/**
* The value for the we_custom_title field.
* @var string
*/
protected $we_custom_title;
/**
* The value for the we_authentication field.
* @var string
*/
protected $we_authentication = 'ANONYMOUS';
/**
* The value for the we_hide_information_bar field.
* @var string
*/
protected $we_hide_information_bar = '1';
/**
* The value for the we_callback field.
* @var string
*/
protected $we_callback = 'PROCESSMAKER';
/**
* The value for the we_callback_url field.
* @var string
*/
protected $we_callback_url;
/**
* The value for the we_link_generation field.
* @var string
*/
protected $we_link_generation = 'DEFAULT';
/**
* The value for the we_link_skin field.
* @var string
*/
protected $we_link_skin;
/**
* The value for the we_link_language field.
* @var string
*/
protected $we_link_language;
/**
* The value for the we_link_domain field.
* @var string
*/
protected $we_link_domain;
/**
* The value for the we_show_in_new_case field.
* @var string
*/
protected $we_show_in_new_case = '1';
/** /**
* Flag to prevent endless save loop, if this object is referenced * Flag to prevent endless save loop, if this object is referenced
* by another object which falls in this transaction. * by another object which falls in this transaction.
@@ -287,6 +353,127 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
} }
} }
/**
* Get the [we_type] column value.
*
* @return string
*/
public function getWeType()
{
return $this->we_type;
}
/**
* Get the [we_custom_title] column value.
*
* @return string
*/
public function getWeCustomTitle()
{
return $this->we_custom_title;
}
/**
* Get the [we_authentication] column value.
*
* @return string
*/
public function getWeAuthentication()
{
return $this->we_authentication;
}
/**
* Get the [we_hide_information_bar] column value.
*
* @return string
*/
public function getWeHideInformationBar()
{
return $this->we_hide_information_bar;
}
/**
* Get the [we_callback] column value.
*
* @return string
*/
public function getWeCallback()
{
return $this->we_callback;
}
/**
* Get the [we_callback_url] column value.
*
* @return string
*/
public function getWeCallbackUrl()
{
return $this->we_callback_url;
}
/**
* Get the [we_link_generation] column value.
*
* @return string
*/
public function getWeLinkGeneration()
{
return $this->we_link_generation;
}
/**
* Get the [we_link_skin] column value.
*
* @return string
*/
public function getWeLinkSkin()
{
return $this->we_link_skin;
}
/**
* Get the [we_link_language] column value.
*
* @return string
*/
public function getWeLinkLanguage()
{
return $this->we_link_language;
}
/**
* Get the [we_link_domain] column value.
*
* @return string
*/
public function getWeLinkDomain()
{
return $this->we_link_domain;
}
/**
* Get the [we_show_in_new_case] column value.
*
* @return string
*/
public function getWeShowInNewCase()
{
return $this->we_show_in_new_case;
}
/** /**
* Set the value of [we_uid] column. * Set the value of [we_uid] column.
* *
@@ -390,7 +577,7 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
$v = (string) $v; $v = (string) $v;
} }
if ($this->usr_uid !== $v || $v === '') { if ($this->usr_uid !== $v) {
$this->usr_uid = $v; $this->usr_uid = $v;
$this->modifiedColumns[] = WebEntryPeer::USR_UID; $this->modifiedColumns[] = WebEntryPeer::USR_UID;
} }
@@ -565,6 +752,248 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
} // setWeUpdateDate() } // setWeUpdateDate()
/**
* Set the value of [we_type] column.
*
* @param string $v new value
* @return void
*/
public function setWeType($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_type !== $v || $v === 'SINGLE') {
$this->we_type = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_TYPE;
}
} // setWeType()
/**
* Set the value of [we_custom_title] column.
*
* @param string $v new value
* @return void
*/
public function setWeCustomTitle($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_custom_title !== $v) {
$this->we_custom_title = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_CUSTOM_TITLE;
}
} // setWeCustomTitle()
/**
* Set the value of [we_authentication] column.
*
* @param string $v new value
* @return void
*/
public function setWeAuthentication($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_authentication !== $v || $v === 'ANONYMOUS') {
$this->we_authentication = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_AUTHENTICATION;
}
} // setWeAuthentication()
/**
* Set the value of [we_hide_information_bar] column.
*
* @param string $v new value
* @return void
*/
public function setWeHideInformationBar($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_hide_information_bar !== $v || $v === '1') {
$this->we_hide_information_bar = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_HIDE_INFORMATION_BAR;
}
} // setWeHideInformationBar()
/**
* Set the value of [we_callback] column.
*
* @param string $v new value
* @return void
*/
public function setWeCallback($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_callback !== $v || $v === 'PROCESSMAKER') {
$this->we_callback = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_CALLBACK;
}
} // setWeCallback()
/**
* Set the value of [we_callback_url] column.
*
* @param string $v new value
* @return void
*/
public function setWeCallbackUrl($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_callback_url !== $v) {
$this->we_callback_url = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_CALLBACK_URL;
}
} // setWeCallbackUrl()
/**
* Set the value of [we_link_generation] column.
*
* @param string $v new value
* @return void
*/
public function setWeLinkGeneration($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_link_generation !== $v || $v === 'DEFAULT') {
$this->we_link_generation = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_LINK_GENERATION;
}
} // setWeLinkGeneration()
/**
* Set the value of [we_link_skin] column.
*
* @param string $v new value
* @return void
*/
public function setWeLinkSkin($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_link_skin !== $v) {
$this->we_link_skin = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_LINK_SKIN;
}
} // setWeLinkSkin()
/**
* Set the value of [we_link_language] column.
*
* @param string $v new value
* @return void
*/
public function setWeLinkLanguage($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_link_language !== $v) {
$this->we_link_language = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_LINK_LANGUAGE;
}
} // setWeLinkLanguage()
/**
* Set the value of [we_link_domain] column.
*
* @param string $v new value
* @return void
*/
public function setWeLinkDomain($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_link_domain !== $v) {
$this->we_link_domain = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_LINK_DOMAIN;
}
} // setWeLinkDomain()
/**
* Set the value of [we_show_in_new_case] column.
*
* @param string $v new value
* @return void
*/
public function setWeShowInNewCase($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->we_show_in_new_case !== $v || $v === '1') {
$this->we_show_in_new_case = $v;
$this->modifiedColumns[] = WebEntryPeer::WE_SHOW_IN_NEW_CASE;
}
} // setWeShowInNewCase()
/** /**
* Hydrates (populates) the object variables with values from the database resultset. * Hydrates (populates) the object variables with values from the database resultset.
* *
@@ -606,12 +1035,34 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
$this->we_update_date = $rs->getTimestamp($startcol + 11, null); $this->we_update_date = $rs->getTimestamp($startcol + 11, null);
$this->we_type = $rs->getString($startcol + 12);
$this->we_custom_title = $rs->getString($startcol + 13);
$this->we_authentication = $rs->getString($startcol + 14);
$this->we_hide_information_bar = $rs->getString($startcol + 15);
$this->we_callback = $rs->getString($startcol + 16);
$this->we_callback_url = $rs->getString($startcol + 17);
$this->we_link_generation = $rs->getString($startcol + 18);
$this->we_link_skin = $rs->getString($startcol + 19);
$this->we_link_language = $rs->getString($startcol + 20);
$this->we_link_domain = $rs->getString($startcol + 21);
$this->we_show_in_new_case = $rs->getString($startcol + 22);
$this->resetModified(); $this->resetModified();
$this->setNew(false); $this->setNew(false);
// FIXME - using NUM_COLUMNS may be clearer. // FIXME - using NUM_COLUMNS may be clearer.
return $startcol + 12; // 12 = WebEntryPeer::NUM_COLUMNS - WebEntryPeer::NUM_LAZY_LOAD_COLUMNS). return $startcol + 23; // 23 = WebEntryPeer::NUM_COLUMNS - WebEntryPeer::NUM_LAZY_LOAD_COLUMNS).
} catch (Exception $e) { } catch (Exception $e) {
throw new PropelException("Error populating WebEntry object", $e); throw new PropelException("Error populating WebEntry object", $e);
@@ -851,6 +1302,39 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
case 11: case 11:
return $this->getWeUpdateDate(); return $this->getWeUpdateDate();
break; break;
case 12:
return $this->getWeType();
break;
case 13:
return $this->getWeCustomTitle();
break;
case 14:
return $this->getWeAuthentication();
break;
case 15:
return $this->getWeHideInformationBar();
break;
case 16:
return $this->getWeCallback();
break;
case 17:
return $this->getWeCallbackUrl();
break;
case 18:
return $this->getWeLinkGeneration();
break;
case 19:
return $this->getWeLinkSkin();
break;
case 20:
return $this->getWeLinkLanguage();
break;
case 21:
return $this->getWeLinkDomain();
break;
case 22:
return $this->getWeShowInNewCase();
break;
default: default:
return null; return null;
break; break;
@@ -883,6 +1367,17 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
$keys[9] => $this->getWeUpdateUsrUid(), $keys[9] => $this->getWeUpdateUsrUid(),
$keys[10] => $this->getWeCreateDate(), $keys[10] => $this->getWeCreateDate(),
$keys[11] => $this->getWeUpdateDate(), $keys[11] => $this->getWeUpdateDate(),
$keys[12] => $this->getWeType(),
$keys[13] => $this->getWeCustomTitle(),
$keys[14] => $this->getWeAuthentication(),
$keys[15] => $this->getWeHideInformationBar(),
$keys[16] => $this->getWeCallback(),
$keys[17] => $this->getWeCallbackUrl(),
$keys[18] => $this->getWeLinkGeneration(),
$keys[19] => $this->getWeLinkSkin(),
$keys[20] => $this->getWeLinkLanguage(),
$keys[21] => $this->getWeLinkDomain(),
$keys[22] => $this->getWeShowInNewCase(),
); );
return $result; return $result;
} }
@@ -950,6 +1445,39 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
case 11: case 11:
$this->setWeUpdateDate($value); $this->setWeUpdateDate($value);
break; break;
case 12:
$this->setWeType($value);
break;
case 13:
$this->setWeCustomTitle($value);
break;
case 14:
$this->setWeAuthentication($value);
break;
case 15:
$this->setWeHideInformationBar($value);
break;
case 16:
$this->setWeCallback($value);
break;
case 17:
$this->setWeCallbackUrl($value);
break;
case 18:
$this->setWeLinkGeneration($value);
break;
case 19:
$this->setWeLinkSkin($value);
break;
case 20:
$this->setWeLinkLanguage($value);
break;
case 21:
$this->setWeLinkDomain($value);
break;
case 22:
$this->setWeShowInNewCase($value);
break;
} // switch() } // switch()
} }
@@ -1021,6 +1549,50 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
$this->setWeUpdateDate($arr[$keys[11]]); $this->setWeUpdateDate($arr[$keys[11]]);
} }
if (array_key_exists($keys[12], $arr)) {
$this->setWeType($arr[$keys[12]]);
}
if (array_key_exists($keys[13], $arr)) {
$this->setWeCustomTitle($arr[$keys[13]]);
}
if (array_key_exists($keys[14], $arr)) {
$this->setWeAuthentication($arr[$keys[14]]);
}
if (array_key_exists($keys[15], $arr)) {
$this->setWeHideInformationBar($arr[$keys[15]]);
}
if (array_key_exists($keys[16], $arr)) {
$this->setWeCallback($arr[$keys[16]]);
}
if (array_key_exists($keys[17], $arr)) {
$this->setWeCallbackUrl($arr[$keys[17]]);
}
if (array_key_exists($keys[18], $arr)) {
$this->setWeLinkGeneration($arr[$keys[18]]);
}
if (array_key_exists($keys[19], $arr)) {
$this->setWeLinkSkin($arr[$keys[19]]);
}
if (array_key_exists($keys[20], $arr)) {
$this->setWeLinkLanguage($arr[$keys[20]]);
}
if (array_key_exists($keys[21], $arr)) {
$this->setWeLinkDomain($arr[$keys[21]]);
}
if (array_key_exists($keys[22], $arr)) {
$this->setWeShowInNewCase($arr[$keys[22]]);
}
} }
/** /**
@@ -1080,6 +1652,50 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
$criteria->add(WebEntryPeer::WE_UPDATE_DATE, $this->we_update_date); $criteria->add(WebEntryPeer::WE_UPDATE_DATE, $this->we_update_date);
} }
if ($this->isColumnModified(WebEntryPeer::WE_TYPE)) {
$criteria->add(WebEntryPeer::WE_TYPE, $this->we_type);
}
if ($this->isColumnModified(WebEntryPeer::WE_CUSTOM_TITLE)) {
$criteria->add(WebEntryPeer::WE_CUSTOM_TITLE, $this->we_custom_title);
}
if ($this->isColumnModified(WebEntryPeer::WE_AUTHENTICATION)) {
$criteria->add(WebEntryPeer::WE_AUTHENTICATION, $this->we_authentication);
}
if ($this->isColumnModified(WebEntryPeer::WE_HIDE_INFORMATION_BAR)) {
$criteria->add(WebEntryPeer::WE_HIDE_INFORMATION_BAR, $this->we_hide_information_bar);
}
if ($this->isColumnModified(WebEntryPeer::WE_CALLBACK)) {
$criteria->add(WebEntryPeer::WE_CALLBACK, $this->we_callback);
}
if ($this->isColumnModified(WebEntryPeer::WE_CALLBACK_URL)) {
$criteria->add(WebEntryPeer::WE_CALLBACK_URL, $this->we_callback_url);
}
if ($this->isColumnModified(WebEntryPeer::WE_LINK_GENERATION)) {
$criteria->add(WebEntryPeer::WE_LINK_GENERATION, $this->we_link_generation);
}
if ($this->isColumnModified(WebEntryPeer::WE_LINK_SKIN)) {
$criteria->add(WebEntryPeer::WE_LINK_SKIN, $this->we_link_skin);
}
if ($this->isColumnModified(WebEntryPeer::WE_LINK_LANGUAGE)) {
$criteria->add(WebEntryPeer::WE_LINK_LANGUAGE, $this->we_link_language);
}
if ($this->isColumnModified(WebEntryPeer::WE_LINK_DOMAIN)) {
$criteria->add(WebEntryPeer::WE_LINK_DOMAIN, $this->we_link_domain);
}
if ($this->isColumnModified(WebEntryPeer::WE_SHOW_IN_NEW_CASE)) {
$criteria->add(WebEntryPeer::WE_SHOW_IN_NEW_CASE, $this->we_show_in_new_case);
}
return $criteria; return $criteria;
} }
@@ -1156,6 +1772,28 @@ abstract class BaseWebEntry extends BaseObject implements Persistent
$copyObj->setWeUpdateDate($this->we_update_date); $copyObj->setWeUpdateDate($this->we_update_date);
$copyObj->setWeType($this->we_type);
$copyObj->setWeCustomTitle($this->we_custom_title);
$copyObj->setWeAuthentication($this->we_authentication);
$copyObj->setWeHideInformationBar($this->we_hide_information_bar);
$copyObj->setWeCallback($this->we_callback);
$copyObj->setWeCallbackUrl($this->we_callback_url);
$copyObj->setWeLinkGeneration($this->we_link_generation);
$copyObj->setWeLinkSkin($this->we_link_skin);
$copyObj->setWeLinkLanguage($this->we_link_language);
$copyObj->setWeLinkDomain($this->we_link_domain);
$copyObj->setWeShowInNewCase($this->we_show_in_new_case);
$copyObj->setNew(true); $copyObj->setNew(true);

View File

@@ -25,7 +25,7 @@ abstract class BaseWebEntryPeer
const CLASS_DEFAULT = 'classes.model.WebEntry'; const CLASS_DEFAULT = 'classes.model.WebEntry';
/** The total number of columns. */ /** The total number of columns. */
const NUM_COLUMNS = 12; const NUM_COLUMNS = 23;
/** The number of lazy-loaded columns. */ /** The number of lazy-loaded columns. */
const NUM_LAZY_LOAD_COLUMNS = 0; const NUM_LAZY_LOAD_COLUMNS = 0;
@@ -67,6 +67,39 @@ abstract class BaseWebEntryPeer
/** the column name for the WE_UPDATE_DATE field */ /** the column name for the WE_UPDATE_DATE field */
const WE_UPDATE_DATE = 'WEB_ENTRY.WE_UPDATE_DATE'; const WE_UPDATE_DATE = 'WEB_ENTRY.WE_UPDATE_DATE';
/** the column name for the WE_TYPE field */
const WE_TYPE = 'WEB_ENTRY.WE_TYPE';
/** the column name for the WE_CUSTOM_TITLE field */
const WE_CUSTOM_TITLE = 'WEB_ENTRY.WE_CUSTOM_TITLE';
/** the column name for the WE_AUTHENTICATION field */
const WE_AUTHENTICATION = 'WEB_ENTRY.WE_AUTHENTICATION';
/** the column name for the WE_HIDE_INFORMATION_BAR field */
const WE_HIDE_INFORMATION_BAR = 'WEB_ENTRY.WE_HIDE_INFORMATION_BAR';
/** the column name for the WE_CALLBACK field */
const WE_CALLBACK = 'WEB_ENTRY.WE_CALLBACK';
/** the column name for the WE_CALLBACK_URL field */
const WE_CALLBACK_URL = 'WEB_ENTRY.WE_CALLBACK_URL';
/** the column name for the WE_LINK_GENERATION field */
const WE_LINK_GENERATION = 'WEB_ENTRY.WE_LINK_GENERATION';
/** the column name for the WE_LINK_SKIN field */
const WE_LINK_SKIN = 'WEB_ENTRY.WE_LINK_SKIN';
/** the column name for the WE_LINK_LANGUAGE field */
const WE_LINK_LANGUAGE = 'WEB_ENTRY.WE_LINK_LANGUAGE';
/** the column name for the WE_LINK_DOMAIN field */
const WE_LINK_DOMAIN = 'WEB_ENTRY.WE_LINK_DOMAIN';
/** the column name for the WE_SHOW_IN_NEW_CASE field */
const WE_SHOW_IN_NEW_CASE = 'WEB_ENTRY.WE_SHOW_IN_NEW_CASE';
/** The PHP to DB Name Mapping */ /** The PHP to DB Name Mapping */
private static $phpNameMap = null; private static $phpNameMap = null;
@@ -78,10 +111,10 @@ abstract class BaseWebEntryPeer
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id' * e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
*/ */
private static $fieldNames = array ( private static $fieldNames = array (
BasePeer::TYPE_PHPNAME => array ('WeUid', 'ProUid', 'TasUid', 'DynUid', 'UsrUid', 'WeMethod', 'WeInputDocumentAccess', 'WeData', 'WeCreateUsrUid', 'WeUpdateUsrUid', 'WeCreateDate', 'WeUpdateDate', ), BasePeer::TYPE_PHPNAME => array ('WeUid', 'ProUid', 'TasUid', 'DynUid', 'UsrUid', 'WeMethod', 'WeInputDocumentAccess', 'WeData', 'WeCreateUsrUid', 'WeUpdateUsrUid', 'WeCreateDate', 'WeUpdateDate', 'WeType', 'WeCustomTitle', 'WeAuthentication', 'WeHideInformationBar', 'WeCallback', 'WeCallbackUrl', 'WeLinkGeneration', 'WeLinkSkin', 'WeLinkLanguage', 'WeLinkDomain', 'WeShowInNewCase', ),
BasePeer::TYPE_COLNAME => array (WebEntryPeer::WE_UID, WebEntryPeer::PRO_UID, WebEntryPeer::TAS_UID, WebEntryPeer::DYN_UID, WebEntryPeer::USR_UID, WebEntryPeer::WE_METHOD, WebEntryPeer::WE_INPUT_DOCUMENT_ACCESS, WebEntryPeer::WE_DATA, WebEntryPeer::WE_CREATE_USR_UID, WebEntryPeer::WE_UPDATE_USR_UID, WebEntryPeer::WE_CREATE_DATE, WebEntryPeer::WE_UPDATE_DATE, ), BasePeer::TYPE_COLNAME => array (WebEntryPeer::WE_UID, WebEntryPeer::PRO_UID, WebEntryPeer::TAS_UID, WebEntryPeer::DYN_UID, WebEntryPeer::USR_UID, WebEntryPeer::WE_METHOD, WebEntryPeer::WE_INPUT_DOCUMENT_ACCESS, WebEntryPeer::WE_DATA, WebEntryPeer::WE_CREATE_USR_UID, WebEntryPeer::WE_UPDATE_USR_UID, WebEntryPeer::WE_CREATE_DATE, WebEntryPeer::WE_UPDATE_DATE, WebEntryPeer::WE_TYPE, WebEntryPeer::WE_CUSTOM_TITLE, WebEntryPeer::WE_AUTHENTICATION, WebEntryPeer::WE_HIDE_INFORMATION_BAR, WebEntryPeer::WE_CALLBACK, WebEntryPeer::WE_CALLBACK_URL, WebEntryPeer::WE_LINK_GENERATION, WebEntryPeer::WE_LINK_SKIN, WebEntryPeer::WE_LINK_LANGUAGE, WebEntryPeer::WE_LINK_DOMAIN, WebEntryPeer::WE_SHOW_IN_NEW_CASE, ),
BasePeer::TYPE_FIELDNAME => array ('WE_UID', 'PRO_UID', 'TAS_UID', 'DYN_UID', 'USR_UID', 'WE_METHOD', 'WE_INPUT_DOCUMENT_ACCESS', 'WE_DATA', 'WE_CREATE_USR_UID', 'WE_UPDATE_USR_UID', 'WE_CREATE_DATE', 'WE_UPDATE_DATE', ), BasePeer::TYPE_FIELDNAME => array ('WE_UID', 'PRO_UID', 'TAS_UID', 'DYN_UID', 'USR_UID', 'WE_METHOD', 'WE_INPUT_DOCUMENT_ACCESS', 'WE_DATA', 'WE_CREATE_USR_UID', 'WE_UPDATE_USR_UID', 'WE_CREATE_DATE', 'WE_UPDATE_DATE', 'WE_TYPE', 'WE_CUSTOM_TITLE', 'WE_AUTHENTICATION', 'WE_HIDE_INFORMATION_BAR', 'WE_CALLBACK', 'WE_CALLBACK_URL', 'WE_LINK_GENERATION', 'WE_LINK_SKIN', 'WE_LINK_LANGUAGE', 'WE_LINK_DOMAIN', 'WE_SHOW_IN_NEW_CASE', ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ) BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, )
); );
/** /**
@@ -91,10 +124,10 @@ abstract class BaseWebEntryPeer
* e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0 * e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0
*/ */
private static $fieldKeys = array ( private static $fieldKeys = array (
BasePeer::TYPE_PHPNAME => array ('WeUid' => 0, 'ProUid' => 1, 'TasUid' => 2, 'DynUid' => 3, 'UsrUid' => 4, 'WeMethod' => 5, 'WeInputDocumentAccess' => 6, 'WeData' => 7, 'WeCreateUsrUid' => 8, 'WeUpdateUsrUid' => 9, 'WeCreateDate' => 10, 'WeUpdateDate' => 11, ), BasePeer::TYPE_PHPNAME => array ('WeUid' => 0, 'ProUid' => 1, 'TasUid' => 2, 'DynUid' => 3, 'UsrUid' => 4, 'WeMethod' => 5, 'WeInputDocumentAccess' => 6, 'WeData' => 7, 'WeCreateUsrUid' => 8, 'WeUpdateUsrUid' => 9, 'WeCreateDate' => 10, 'WeUpdateDate' => 11, 'WeType' => 12, 'WeCustomTitle' => 13, 'WeAuthentication' => 14, 'WeHideInformationBar' => 15, 'WeCallback' => 16, 'WeCallbackUrl' => 17, 'WeLinkGeneration' => 18, 'WeLinkSkin' => 19, 'WeLinkLanguage' => 20, 'WeLinkDomain' => 21, 'WeShowInNewCase' => 22, ),
BasePeer::TYPE_COLNAME => array (WebEntryPeer::WE_UID => 0, WebEntryPeer::PRO_UID => 1, WebEntryPeer::TAS_UID => 2, WebEntryPeer::DYN_UID => 3, WebEntryPeer::USR_UID => 4, WebEntryPeer::WE_METHOD => 5, WebEntryPeer::WE_INPUT_DOCUMENT_ACCESS => 6, WebEntryPeer::WE_DATA => 7, WebEntryPeer::WE_CREATE_USR_UID => 8, WebEntryPeer::WE_UPDATE_USR_UID => 9, WebEntryPeer::WE_CREATE_DATE => 10, WebEntryPeer::WE_UPDATE_DATE => 11, ), BasePeer::TYPE_COLNAME => array (WebEntryPeer::WE_UID => 0, WebEntryPeer::PRO_UID => 1, WebEntryPeer::TAS_UID => 2, WebEntryPeer::DYN_UID => 3, WebEntryPeer::USR_UID => 4, WebEntryPeer::WE_METHOD => 5, WebEntryPeer::WE_INPUT_DOCUMENT_ACCESS => 6, WebEntryPeer::WE_DATA => 7, WebEntryPeer::WE_CREATE_USR_UID => 8, WebEntryPeer::WE_UPDATE_USR_UID => 9, WebEntryPeer::WE_CREATE_DATE => 10, WebEntryPeer::WE_UPDATE_DATE => 11, WebEntryPeer::WE_TYPE => 12, WebEntryPeer::WE_CUSTOM_TITLE => 13, WebEntryPeer::WE_AUTHENTICATION => 14, WebEntryPeer::WE_HIDE_INFORMATION_BAR => 15, WebEntryPeer::WE_CALLBACK => 16, WebEntryPeer::WE_CALLBACK_URL => 17, WebEntryPeer::WE_LINK_GENERATION => 18, WebEntryPeer::WE_LINK_SKIN => 19, WebEntryPeer::WE_LINK_LANGUAGE => 20, WebEntryPeer::WE_LINK_DOMAIN => 21, WebEntryPeer::WE_SHOW_IN_NEW_CASE => 22, ),
BasePeer::TYPE_FIELDNAME => array ('WE_UID' => 0, 'PRO_UID' => 1, 'TAS_UID' => 2, 'DYN_UID' => 3, 'USR_UID' => 4, 'WE_METHOD' => 5, 'WE_INPUT_DOCUMENT_ACCESS' => 6, 'WE_DATA' => 7, 'WE_CREATE_USR_UID' => 8, 'WE_UPDATE_USR_UID' => 9, 'WE_CREATE_DATE' => 10, 'WE_UPDATE_DATE' => 11, ), BasePeer::TYPE_FIELDNAME => array ('WE_UID' => 0, 'PRO_UID' => 1, 'TAS_UID' => 2, 'DYN_UID' => 3, 'USR_UID' => 4, 'WE_METHOD' => 5, 'WE_INPUT_DOCUMENT_ACCESS' => 6, 'WE_DATA' => 7, 'WE_CREATE_USR_UID' => 8, 'WE_UPDATE_USR_UID' => 9, 'WE_CREATE_DATE' => 10, 'WE_UPDATE_DATE' => 11, 'WE_TYPE' => 12, 'WE_CUSTOM_TITLE' => 13, 'WE_AUTHENTICATION' => 14, 'WE_HIDE_INFORMATION_BAR' => 15, 'WE_CALLBACK' => 16, 'WE_CALLBACK_URL' => 17, 'WE_LINK_GENERATION' => 18, 'WE_LINK_SKIN' => 19, 'WE_LINK_LANGUAGE' => 20, 'WE_LINK_DOMAIN' => 21, 'WE_SHOW_IN_NEW_CASE' => 22, ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ) BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, )
); );
/** /**
@@ -219,6 +252,28 @@ abstract class BaseWebEntryPeer
$criteria->addSelectColumn(WebEntryPeer::WE_UPDATE_DATE); $criteria->addSelectColumn(WebEntryPeer::WE_UPDATE_DATE);
$criteria->addSelectColumn(WebEntryPeer::WE_TYPE);
$criteria->addSelectColumn(WebEntryPeer::WE_CUSTOM_TITLE);
$criteria->addSelectColumn(WebEntryPeer::WE_AUTHENTICATION);
$criteria->addSelectColumn(WebEntryPeer::WE_HIDE_INFORMATION_BAR);
$criteria->addSelectColumn(WebEntryPeer::WE_CALLBACK);
$criteria->addSelectColumn(WebEntryPeer::WE_CALLBACK_URL);
$criteria->addSelectColumn(WebEntryPeer::WE_LINK_GENERATION);
$criteria->addSelectColumn(WebEntryPeer::WE_LINK_SKIN);
$criteria->addSelectColumn(WebEntryPeer::WE_LINK_LANGUAGE);
$criteria->addSelectColumn(WebEntryPeer::WE_LINK_DOMAIN);
$criteria->addSelectColumn(WebEntryPeer::WE_SHOW_IN_NEW_CASE);
} }
const COUNT = 'COUNT(WEB_ENTRY.WE_UID)'; const COUNT = 'COUNT(WEB_ENTRY.WE_UID)';
@@ -549,6 +604,18 @@ abstract class BaseWebEntryPeer
} }
} else { } else {
if ($obj->isNew() || $obj->isColumnModified(WebEntryPeer::WE_TYPE))
$columns[WebEntryPeer::WE_TYPE] = $obj->getWeType();
if ($obj->isNew() || $obj->isColumnModified(WebEntryPeer::WE_AUTHENTICATION))
$columns[WebEntryPeer::WE_AUTHENTICATION] = $obj->getWeAuthentication();
if ($obj->isNew() || $obj->isColumnModified(WebEntryPeer::WE_CALLBACK))
$columns[WebEntryPeer::WE_CALLBACK] = $obj->getWeCallback();
if ($obj->isNew() || $obj->isColumnModified(WebEntryPeer::WE_LINK_GENERATION))
$columns[WebEntryPeer::WE_LINK_GENERATION] = $obj->getWeLinkGeneration();
} }
return BasePeer::doValidate(WebEntryPeer::DATABASE_NAME, WebEntryPeer::TABLE_NAME, $columns); return BasePeer::doValidate(WebEntryPeer::DATABASE_NAME, WebEntryPeer::TABLE_NAME, $columns);

View File

@@ -3348,8 +3348,8 @@
<column name="WE_UID" type="VARCHAR" size="32" required="true" primaryKey="true" /> <column name="WE_UID" type="VARCHAR" size="32" required="true" primaryKey="true" />
<column name="PRO_UID" type="VARCHAR" size="32" required="true" /> <column name="PRO_UID" type="VARCHAR" size="32" required="true" />
<column name="TAS_UID" type="VARCHAR" size="32" required="true" /> <column name="TAS_UID" type="VARCHAR" size="32" required="true" />
<column name="DYN_UID" type="VARCHAR" size="32" required="true" /> <column name="DYN_UID" type="VARCHAR" size="32" required="false" />
<column name="USR_UID" type="VARCHAR" size="32" default="" /> <column name="USR_UID" type="VARCHAR" size="32" required="false" />
<column name="WE_METHOD" type="VARCHAR" size="4" default="HTML" /> <column name="WE_METHOD" type="VARCHAR" size="4" default="HTML" />
<column name="WE_INPUT_DOCUMENT_ACCESS" type="INTEGER" default="0" /> <column name="WE_INPUT_DOCUMENT_ACCESS" type="INTEGER" default="0" />
<column name="WE_DATA" type="LONGVARCHAR" /> <column name="WE_DATA" type="LONGVARCHAR" />
@@ -3357,6 +3357,30 @@
<column name="WE_UPDATE_USR_UID" type="VARCHAR" size="32" default="" /> <column name="WE_UPDATE_USR_UID" type="VARCHAR" size="32" default="" />
<column name="WE_CREATE_DATE" type="TIMESTAMP" required="true" /> <column name="WE_CREATE_DATE" type="TIMESTAMP" required="true" />
<column name="WE_UPDATE_DATE" type="TIMESTAMP" /> <column name="WE_UPDATE_DATE" type="TIMESTAMP" />
<!-- PROD-181: Web Entry 2.0 -->
<column name="WE_TYPE" type="VARCHAR" size="8" required="true" default="SINGLE"/>
<column name="WE_CUSTOM_TITLE" type="LONGVARCHAR" />
<column name="WE_AUTHENTICATION" type="VARCHAR" size="14" required="true" default="ANONYMOUS"/>
<column name="WE_HIDE_INFORMATION_BAR" type="CHAR" size="1" default="1"/>
<column name="WE_CALLBACK" type="VARCHAR" size="13" required="true" default="PROCESSMAKER"/>
<column name="WE_CALLBACK_URL" type="LONGVARCHAR" />
<column name="WE_LINK_GENERATION" type="VARCHAR" size="8" required="true" default="DEFAULT" />
<column name="WE_LINK_SKIN" type="VARCHAR" size="255" />
<column name="WE_LINK_LANGUAGE" type="VARCHAR" size="255" />
<column name="WE_LINK_DOMAIN" type="LONGVARCHAR" />
<column name="WE_SHOW_IN_NEW_CASE" type="CHAR" size="1" default="1"/>
<validator column="WE_TYPE">
<rule name="validValues" value="SINGLE|MULTIPLE" message="Please enter a valid value for WE_TYPE" />
</validator>
<validator column="WE_AUTHENTICATION">
<rule name="validValues" value="ANONYMOUS|LOGIN_REQUIRED" message="Please enter a valid value for WE_AUTHENTICATION" />
</validator>
<validator column="WE_CALLBACK">
<rule name="validValues" value="PROCESSMAKER|CUSTOM|CUSTOM_CLEAR" message="Please enter a valid value for WE_CALLBACK" />
</validator>
<validator column="WE_LINK_GENERATION">
<rule name="validValues" value="DEFAULT|ADVANCED" message="Please enter a valid value for WE_LINK_GENERATION" />
</validator>
</table> </table>
<!-- <!--
@@ -4795,8 +4819,8 @@
<column name="PRJ_UID" type="VARCHAR" size="32" required="true" /> <column name="PRJ_UID" type="VARCHAR" size="32" required="true" />
<column name="EVN_UID" type="VARCHAR" size="32" required="true" /> <column name="EVN_UID" type="VARCHAR" size="32" required="true" />
<column name="ACT_UID" type="VARCHAR" size="32" required="true" /> <column name="ACT_UID" type="VARCHAR" size="32" required="true" />
<column name="DYN_UID" type="VARCHAR" size="32" required="true" /> <column name="DYN_UID" type="VARCHAR" size="32" required="false" />
<column name="USR_UID" type="VARCHAR" size="32" required="true" /> <column name="USR_UID" type="VARCHAR" size="32" required="false" />
<column name="WEE_STATUS" type="VARCHAR" size="10" required="true" default="ENABLED" /> <column name="WEE_STATUS" type="VARCHAR" size="10" required="true" default="ENABLED" />
<column name="WEE_WE_UID" type="VARCHAR" size="32" required="true" default="" /> <column name="WEE_WE_UID" type="VARCHAR" size="32" required="true" default="" />
<column name="WEE_WE_TAS_UID" type="VARCHAR" size="32" required="true" default="" /> <column name="WEE_WE_TAS_UID" type="VARCHAR" size="32" required="true" default="" />

View File

@@ -15476,6 +15476,17 @@ msgstr "Add users"
msgid "Remove selected" msgid "Remove selected"
msgstr "Remove selected" msgstr "Remove selected"
# TRANSLATION
# LABEL/ID_SELECT_DYNAFORM_USE_IN_CASE
#: LABEL/ID_SELECT_DYNAFORM_USE_IN_CASE
msgid "The \"dyn_uid\" parameter is required to configure a Web Entry of type \"Single Dynaform\""
msgstr "The \"dyn_uid\" parameter is required to configure a Web Entry of type \"Single Dynaform\""
# LABEL/ID_ENTER_VALID_URL
#: LABEL/ID_ENTER_VALID_URL
msgid "Enter a valid URL to redirect the browser after the web entry is completed"
msgstr "Enter a valid URL to redirect the browser after the web entry is completed"
# TRANSLATION # TRANSLATION
# LABEL/ID_EVENT_ADD_DYNAVAR # LABEL/ID_EVENT_ADD_DYNAVAR
#: LABEL/ID_EVENT_ADD_DYNAVAR #: LABEL/ID_EVENT_ADD_DYNAVAR
@@ -17879,14 +17890,14 @@ msgstr "Sending a test mail to: {0}"
# TRANSLATION # TRANSLATION
# LABEL/ID_EVENT_NOT_IS_START_EVENT # LABEL/ID_EVENT_NOT_IS_START_EVENT
#: LABEL/ID_EVENT_NOT_IS_START_EVENT #: LABEL/ID_EVENT_NOT_IS_START_EVENT
msgid "The event with {0}: {1} not is \"Start Event\"." msgid "The event with {0}: {1} is not a \"Start Event\"."
msgstr "The event with {0}: {1} not is \"Start Event\"." msgstr "The event with {0}: {1} is not a \"Start Event\"."
# TRANSLATION # TRANSLATION
# LABEL/ID_WEB_ENTRY_EVENT_DOES_NOT_IS_REGISTERED # LABEL/ID_WEB_ENTRY_EVENT_DOES_NOT_IS_REGISTERED
#: LABEL/ID_WEB_ENTRY_EVENT_DOES_NOT_IS_REGISTERED #: LABEL/ID_WEB_ENTRY_EVENT_DOES_NOT_IS_REGISTERED
msgid "The event with {0}: {1} does not is registered." msgid "The event with {0}: {1} is not registered."
msgstr "The event with {0}: {1} does not is registered." msgstr "The event with {0}: {1} is not registered."
# TRANSLATION # TRANSLATION
# LABEL/ID_WEB_ENTRY_EVENT_TITLE_ALREADY_EXISTS # LABEL/ID_WEB_ENTRY_EVENT_TITLE_ALREADY_EXISTS
@@ -27828,6 +27839,18 @@ msgstr "View Response"
msgid "Error Message" msgid "Error Message"
msgstr "Error Message" msgstr "Error Message"
# TRANSLATION
# LABEL/ID_CASE_CREATED
#: LABEL/ID_CASE_CREATED
msgid "Case created"
msgstr "Case created"
# TRANSLATION
# LABEL/ID_CASE_ROUTED_TO
#: LABEL/ID_CASE_ROUTED_TO
msgid "Case routed to"
msgstr "Case routed to"
# additionalTables/additionalTablesData.xml?ADD_TAB_NAME # additionalTables/additionalTablesData.xml?ADD_TAB_NAME
# additionalTables/additionalTablesData.xml # additionalTables/additionalTablesData.xml
#: text - ADD_TAB_NAME #: text - ADD_TAB_NAME

View File

@@ -4074,7 +4074,9 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_SMTP_ERROR_MET_TURN_SMTP_NOT_IMPLEMENTED','en','The method TURN of the SMTP is not implemented','2014-10-21') , ( 'LABEL','ID_SMTP_ERROR_MET_TURN_SMTP_NOT_IMPLEMENTED','en','The method TURN of the SMTP is not implemented','2014-10-21') ,
( 'LABEL','ID_EVENT_ADD_CURRENT','en','Add current task user','2014-02-12') , ( 'LABEL','ID_EVENT_ADD_CURRENT','en','Add current task user','2014-02-12') ,
( 'LABEL','ID_EVENT_ADD_USERS','en','Add users','2014-02-12') , ( 'LABEL','ID_EVENT_ADD_USERS','en','Add users','2014-02-12') ,
( 'LABEL','ID_EVENT_REMOVE_SELECTED','en','Remove selected','2014-02-12') ; ( 'LABEL','ID_SELECT_DYNAFORM_USE_IN_CASE','en','The "dyn_uid" parameter is required to configure a Web Entry of type "Single Dynaform"','2017-07-05') ,
( 'LABEL','ID_EVENT_REMOVE_SELECTED','en','Remove selected','2014-02-12') ,
( 'LABEL','ID_ENTER_VALID_URL','en','Enter a valid URL to redirect the browser after the web entry is completed','2017-07-04') ;
INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES
( 'LABEL','ID_EVENT_ADD_DYNAVAR','en','Add dynavar','2014-02-12') , ( 'LABEL','ID_EVENT_ADD_DYNAVAR','en','Add dynavar','2014-02-12') ,
@@ -4487,8 +4489,8 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_EMAIL_SERVER_TEST_CONNECTION_SENDING_EMAIL','en','Sending a test mail to: {0}','2014-12-24') ; ( 'LABEL','ID_EMAIL_SERVER_TEST_CONNECTION_SENDING_EMAIL','en','Sending a test mail to: {0}','2014-12-24') ;
INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES
( 'LABEL','ID_EVENT_NOT_IS_START_EVENT','en','The event with {0}: {1} not is "Start Event".','2015-01-13') , ( 'LABEL','ID_EVENT_NOT_IS_START_EVENT','en','The event with {0}: {1} is not a "Start Event".','2015-01-13') ,
( 'LABEL','ID_WEB_ENTRY_EVENT_DOES_NOT_IS_REGISTERED','en','The event with {0}: {1} does not is registered.','2015-01-16') , ( 'LABEL','ID_WEB_ENTRY_EVENT_DOES_NOT_IS_REGISTERED','en','The event with {0}: {1} is not registered.','2015-01-16') ,
( 'LABEL','ID_WEB_ENTRY_EVENT_TITLE_ALREADY_EXISTS','en','The WebEntry-Event title with {0}: "{1}" already exists.','2015-01-16') , ( 'LABEL','ID_WEB_ENTRY_EVENT_TITLE_ALREADY_EXISTS','en','The WebEntry-Event title with {0}: "{1}" already exists.','2015-01-16') ,
( 'LABEL','ID_CASE_STOPPED_TRIGGER','en','The case has not stopped due to its trigger.','2015-01-29') , ( 'LABEL','ID_CASE_STOPPED_TRIGGER','en','The case has not stopped due to its trigger.','2015-01-29') ,
( 'LABEL','ID_TRANSLATION_NOT_WRITEABLE','en','The translation file is not writable. <br/>Please give write permission to file:','2015-01-31') , ( 'LABEL','ID_TRANSLATION_NOT_WRITEABLE','en','The translation file is not writable. <br/>Please give write permission to file:','2015-01-31') ,
@@ -6178,7 +6180,9 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_CASE_NUMBER_CAPITALIZED','en','Case Number','2017-02-22') , ( 'LABEL','ID_CASE_NUMBER_CAPITALIZED','en','Case Number','2017-02-22') ,
( 'LABEL','ID_ANSWERED','en','Answered','2017-02-22') , ( 'LABEL','ID_ANSWERED','en','Answered','2017-02-22') ,
( 'LABEL','ID_VIEW_RESPONSE','en','View Response','2017-02-22') , ( 'LABEL','ID_VIEW_RESPONSE','en','View Response','2017-02-22') ,
( 'LABEL','ID_ERROR_MESSAGE','en','Error Message','2017-02-22') ; ( 'LABEL','ID_ERROR_MESSAGE','en','Error Message','2017-02-22') ,
( 'LABEL','ID_CASE_CREATED','en','Case created','2017-06-02') ,
( 'LABEL','ID_CASE_ROUTED_TO','en','Case routed to','2017-06-02');
INSERT INTO ISO_LOCATION (IC_UID,IL_UID,IL_NAME,IL_NORMAL_NAME,IS_UID) VALUES INSERT INTO ISO_LOCATION (IC_UID,IL_UID,IL_NAME,IL_NORMAL_NAME,IS_UID) VALUES
('AD','','',' ','') , ('AD','','',' ','') ,

View File

@@ -1659,8 +1659,8 @@ CREATE TABLE `WEB_ENTRY`
`WE_UID` VARCHAR(32) NOT NULL, `WE_UID` VARCHAR(32) NOT NULL,
`PRO_UID` VARCHAR(32) NOT NULL, `PRO_UID` VARCHAR(32) NOT NULL,
`TAS_UID` VARCHAR(32) NOT NULL, `TAS_UID` VARCHAR(32) NOT NULL,
`DYN_UID` VARCHAR(32) NOT NULL, `DYN_UID` VARCHAR(32),
`USR_UID` VARCHAR(32) default '', `USR_UID` VARCHAR(32),
`WE_METHOD` VARCHAR(4) default 'HTML', `WE_METHOD` VARCHAR(4) default 'HTML',
`WE_INPUT_DOCUMENT_ACCESS` INTEGER default 0, `WE_INPUT_DOCUMENT_ACCESS` INTEGER default 0,
`WE_DATA` MEDIUMTEXT, `WE_DATA` MEDIUMTEXT,
@@ -1668,6 +1668,17 @@ CREATE TABLE `WEB_ENTRY`
`WE_UPDATE_USR_UID` VARCHAR(32) default '', `WE_UPDATE_USR_UID` VARCHAR(32) default '',
`WE_CREATE_DATE` DATETIME NOT NULL, `WE_CREATE_DATE` DATETIME NOT NULL,
`WE_UPDATE_DATE` DATETIME, `WE_UPDATE_DATE` DATETIME,
`WE_TYPE` VARCHAR(8) default 'SINGLE' NOT NULL,
`WE_CUSTOM_TITLE` MEDIUMTEXT,
`WE_AUTHENTICATION` VARCHAR(14) default 'ANONYMOUS' NOT NULL,
`WE_HIDE_INFORMATION_BAR` CHAR(1) default '1',
`WE_CALLBACK` VARCHAR(13) default 'PROCESSMAKER' NOT NULL,
`WE_CALLBACK_URL` MEDIUMTEXT,
`WE_LINK_GENERATION` VARCHAR(8) default 'DEFAULT' NOT NULL,
`WE_LINK_SKIN` VARCHAR(255),
`WE_LINK_LANGUAGE` VARCHAR(255),
`WE_LINK_DOMAIN` MEDIUMTEXT,
`WE_SHOW_IN_NEW_CASE` CHAR(1) default '1',
PRIMARY KEY (`WE_UID`) PRIMARY KEY (`WE_UID`)
)ENGINE=InnoDB DEFAULT CHARSET='utf8'; )ENGINE=InnoDB DEFAULT CHARSET='utf8';
#----------------------------------------------------------------------------- #-----------------------------------------------------------------------------
@@ -2731,8 +2742,8 @@ CREATE TABLE `WEB_ENTRY_EVENT`
`PRJ_UID` VARCHAR(32) NOT NULL, `PRJ_UID` VARCHAR(32) NOT NULL,
`EVN_UID` VARCHAR(32) NOT NULL, `EVN_UID` VARCHAR(32) NOT NULL,
`ACT_UID` VARCHAR(32) NOT NULL, `ACT_UID` VARCHAR(32) NOT NULL,
`DYN_UID` VARCHAR(32) NOT NULL, `DYN_UID` VARCHAR(32),
`USR_UID` VARCHAR(32) NOT NULL, `USR_UID` VARCHAR(32),
`WEE_STATUS` VARCHAR(10) default 'ENABLED' NOT NULL, `WEE_STATUS` VARCHAR(10) default 'ENABLED' NOT NULL,
`WEE_WE_UID` VARCHAR(32) default '' NOT NULL, `WEE_WE_UID` VARCHAR(32) default '' NOT NULL,
`WEE_WE_TAS_UID` VARCHAR(32) default '' NOT NULL, `WEE_WE_TAS_UID` VARCHAR(32) default '' NOT NULL,

View File

@@ -157,6 +157,7 @@ $G_PUBLISH->AddContent( 'template', '', '', '', $oTemplatePower );
$oCase = new Cases(); $oCase = new Cases();
$oStep = new Step(); $oStep = new Step();
$bmWebEntry = new \ProcessMaker\BusinessModel\WebEntry;
$Fields = $oCase->loadCase( $_SESSION['APPLICATION'] ); $Fields = $oCase->loadCase( $_SESSION['APPLICATION'] );
$Fields['APP_DATA'] = array_merge( $Fields['APP_DATA'], G::getSystemConstants() ); $Fields['APP_DATA'] = array_merge( $Fields['APP_DATA'], G::getSystemConstants() );
@@ -291,6 +292,9 @@ try {
if (isset( $oProcessFieds['PRO_SHOW_MESSAGE'] )) { if (isset( $oProcessFieds['PRO_SHOW_MESSAGE'] )) {
$noShowTitle = $oProcessFieds['PRO_SHOW_MESSAGE']; $noShowTitle = $oProcessFieds['PRO_SHOW_MESSAGE'];
} }
if ($bmWebEntry->isTaskAWebEntry($_SESSION['TASK'])) {
$noShowTitle = 1;
}
switch ($_GET['TYPE']) { switch ($_GET['TYPE']) {
case 'DYNAFORM': case 'DYNAFORM':
@@ -1097,6 +1101,27 @@ try {
$aFields["TASK"][$sKey]["NEXT_TASK"]["TAS_TITLE"] = G::LoadTranslation("ID_ROUTE_TO_TASK_INTERMEDIATE_CATCH_MESSAGE_EVENT"); $aFields["TASK"][$sKey]["NEXT_TASK"]["TAS_TITLE"] = G::LoadTranslation("ID_ROUTE_TO_TASK_INTERMEDIATE_CATCH_MESSAGE_EVENT");
} }
//SKIP ASSIGN SCREEN
if (!empty($aFields['TASK'][1])) {
$currentTask = $aFields['TASK'][1];
$isWebEntry = $bmWebEntry->isTaskAWebEntry($currentTask['TAS_UID']);
if ($isWebEntry) {
$tplFile = 'webentry/cases_ScreenDerivation';
$caseId = $currentTask['APP_UID'];
$delIndex = $currentTask['DEL_INDEX'];
$derivationResponse = PMFDerivateCase($caseId, $delIndex, true);
if ($derivationResponse) {
$webEntryUrl = $bmWebEntry->getCallbackUrlByTask($currentTask['TAS_UID']);
$delegationData = $Fields['APP_DATA'];
$delegationData['_DELEGATION_DATA'] = $aFields['TASK'];
$delegationData['_DELEGATION_MESSAGE'] = $bmWebEntry->getDelegationMessage($delegationData);
$webEntryUrlEvaluated = \G::replaceDataField($webEntryUrl, $delegationData);
}
$aFields['derivationResponse'] = $derivationResponse;
$aFields['webEntryUrlEvaluated'] = $webEntryUrlEvaluated;
}
}
$G_PUBLISH->AddContent( 'smarty', $tplFile, '', '', $aFields ); $G_PUBLISH->AddContent( 'smarty', $tplFile, '', '', $aFields );
/* /*
if (isset( $aFields['TASK'][1]['NEXT_TASK']['USER_ASSIGNED'])){ if (isset( $aFields['TASK'][1]['NEXT_TASK']['USER_ASSIGNED'])){

View File

@@ -0,0 +1,44 @@
<?php
/**
* This service is to start PM with the anonymous user.
*/
/* @var $RBAC RBAC */
global $RBAC;
G::LoadClass('pmFunctions');
try {
if (empty($_REQUEST['we_uid'])) {
throw new \Exception('Missing required field "we_uid"');
}
$weUid = $_REQUEST['we_uid'];
$webEntry = \WebEntryPeer::retrieveByPK($weUid);
if (empty($webEntry)) {
throw new \Exception('Undefined WebEntry');
}
$userUid = $webEntry->getUsrUid();
$userInfo = PMFInformationUser($userUid);
if (empty($userInfo)) {
throw new \Exception('WebEntry User not found');
}
$_SESSION['USER_LOGGED'] = $userUid;
$_SESSION['USR_USERNAME'] = $userInfo['username'];
$result = [
'user_logged' => $userUid,
'userName' => $userInfo['username'],
'firstName' => $userInfo['firstname'],
'lastName' => $userInfo['lastname'],
'mail' => $userInfo['mail'],
'image' => '../users/users_ViewPhoto?t='.microtime(true),
];
} catch (\Exception $e) {
$result = [
'error' => $e->getMessage(),
];
http_response_code(500);
}
echo G::json_encode($result);

View File

@@ -0,0 +1,35 @@
<?php
/**
* This service verify if the provided APP_UID and DEL_INDEX could be used
* for the web entry.
*/
/* @var $RBAC RBAC */
global $RBAC;
G::LoadClass('pmFunctions');
try {
if (empty($_REQUEST['app_uid'])) {
throw new \Exception('Missing required field "app_uid"');
}
if (empty($_REQUEST['del_index'])) {
throw new \Exception('Missing required field "del_index"');
}
if (empty($_SESSION['USER_LOGGED'])) {
throw new \Exception('You are not logged');
}
$appUid = $_REQUEST['app_uid'];
$delIndex = $_REQUEST['del_index'];
$delegation = \AppDelegationPeer::retrieveByPK($appUid, $delIndex);
$check = $delegation->getDelThreadStatus() === 'OPEN' &&
$delegation->getUsrUid() === $_SESSION['USER_LOGGED'];
$result = ["check" => $check];
} catch (\Exception $e) {
$result = [
'error' => $e->getMessage(),
];
http_response_code(500);
}
echo G::json_encode($result);

View File

@@ -0,0 +1,18 @@
<?php
/**
* This page displays a message when completed or if there is an error
* during the execution.
*/
$G_PUBLISH = new Publisher();
$show = "login/showMessage";
$message = [];
if (isset($_GET["message"])) {
$show = "login/showInfo";
$message['MESSAGE'] = nl2br($_GET["message"]);
} elseif (isset($_GET["error"])) {
$show = "login/showMessage";
$message['MESSAGE'] = $_GET["error"];
}
$G_PUBLISH->AddContent("xmlform", "xmlform", $show, "", $message);
G::RenderPage("publish", "blank");

View File

@@ -0,0 +1,501 @@
<?php
/**
* This page is the WebEntry Access Point.
*/
if (empty($weUid)) {
http_response_code(403);
return;
}
$conf = new Configurations();
$configuration = $conf->getConfiguration(
"ENVIRONMENT_SETTINGS",
"",
"",
"",
"",
$outResult
);
$userInformationFormat = isset($outResult['format']) ? $outResult['format'] :
'@lastName, @firstName (@userName)';
$webEntryModel = \WebEntryPeer::retrieveByPK($weUid);
?>
<html>
<head>
<link rel="stylesheet" href="/lib/pmdynaform/libs/bootstrap-3.1.1/css/bootstrap.min.css">
<title><?php echo htmlentities($webEntryModel->getWeCustomTitle()); ?></title>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
<?php
$oHeadPublisher = & headPublisher::getSingleton();
echo $oHeadPublisher->getExtJsStylesheets(SYS_SKIN);
?>
<style>
html, body, iframe {
border:none;
width: 100%;
top:0px;
height:100%;
margin: 0px;
padding: 0px;
}
iframe {
position: absolute;
border:none;
width: 100%;
top:60px;
bottom:0px;
margin: 0px;
padding: 0px;
}
.header {
height: 60px;
}
.without-header .header {
display:none;
}
.without-header #iframe {
top:0px;
}
#avatar {
background-color: buttonface;
width: 48px;
height: 48px;
border-radius: 50%;
border: 1px solid black;
margin-left: 8px;
margin-top: 4px;
display: inline-block;
position: absolute;
}
#userInformation {
display: inline-block;
margin-top: 20px;
position: absolute;
margin-left: 64px;
}
#logout {
margin-top: 20px;
position: absolute;
margin-left: 64px;
right: 8px;
}
#messageBox{
position: absolute;
left: 50%;
margin-left: -260px;
top: 96px;
}
</style>
</head>
<body class="without-header">
<div class="header">
<img id="avatar">
<span class="logout"><a href="javascript:void(1)" id="userInformation"></a></span>
<span class="logout"><a href="javascript:logout(1)" id="logout"><?php echo G::LoadTranslation('ID_LOGOUT'); ?></a></span>
</div>
<iframe id="iframe"></iframe>
<form id="messageBox" class="formDefault formWE" method="post" style="display: none;">
<div class="borderForm" style="width:520px; padding-left:0; padding-right:0; border-width:1px;">
<div class="boxTop"><div class="a">&nbsp;</div><div class="b">&nbsp;</div><div class="c">&nbsp;</div></div>
<div class="content" style="height:100%;">
<table width="99%">
<tbody><tr>
<td valign="top">
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tbody><tr>
<td class="FormTitle" colspan="2" align=""><span id="form[TITLE]" name="form[TITLE]" pmfieldtype="title"><?php echo G::LoadTranslation('ID_ERROR'); ?></span></td>
</tr>
<tr>
<td class="FormLabel" width="0"><label for="form[MESSAGE]"></label></td>
<td class="FormFieldContent" width="520"><span id="errorMessage"></span></td>
</tr>
<tr id="messageBoxReset" style="display:none;">
<td class="FormLabel" width="0"></td>
<td class="FormFieldContent" width="520" style="text-align: right;"><button type="button" onclick="resetLocalData(true)"><?php echo G::LoadTranslation('ID_RESET'); ?></button></td>
</tr>
</tbody></table>
</td>
</tr>
</tbody></table>
</div>
<div class="boxBottom"><div class="a">&nbsp;</div><div class="b">&nbsp;</div><div class="c">&nbsp;</div></div>
</div>
</form>
<script src="/lib/js/jquery-1.10.2.min.js"></script>
<script>
var weData = {};
var resetLocalData = function (reload) {
localStorage.removeItem('weData');
weData={};
if (reload) {
location.reload();
}
};
var app = {
$element:{
avatar: $("#avatar").get(0),
userInformation: $("#userInformation").get(0),
errorMessage: $("#errorMessage").get(0)
},
setAvatar:function(src){
this.$element.avatar.src=src;
},
getAvatar:function(){
return this.$avatar.src;
},
setUserInformation:function(textContent){
this.$element.userInformation.textContent=textContent;
},
getUserInformation:function(){
return this.$element.userInformation.textContent;
},
loadUserInformation:function(userInformation) {
var format = <?php echo G::json_encode($userInformationFormat); ?>;
this.setAvatar(userInformation.image);
for(var key in userInformation) {
format = format.replace("@"+key, userInformation[key]);
};
this.setUserInformation(format);
},
setErrorMessage:function(textContent){
this.$element.errorMessage.textContent=textContent;
},
getErrorMessage:function(){
return this.$element.errorMessage.textContent;
}
};
function logout(reload, callback) {
$.ajax({
url: '../login/login',
success: function () {
if (typeof callback==='function') {
callback();
}
if (reload) {
resetLocalData();
location.reload();
}
}
});
}
</script>
<script>
!function () {
var DEBUG_ENABLED = false;
var processUid = <?php echo G::json_encode($webEntryModel->getProUid()); ?>;
var tasUid = <?php echo G::json_encode($webEntryModel->getTasUid()); ?>;
var weUid = <?php echo G::json_encode($webEntryModel->getWeUid()); ?>;
var forceLogin = <?php echo G::json_encode($webEntryModel->getWeAuthentication()==='LOGIN_REQUIRED'); ?>;
var isLogged = <?php echo G::json_encode(!empty($_SESSION['USER_LOGGED'])); ?>;
var closeSession = <?php echo G::json_encode($webEntryModel->getWeCallback()==='CUSTOM_CLEAR'); ?>;
var hideInformationBar = <?php echo G::json_encode(!!$webEntryModel->getWeHideInformationBar()); ?>;
if (!forceLogin) {
$("#logout").hide();
}
var onLoadIframe = function () {};
var error = function(msg, showResetButton) {
app.setErrorMessage(msg);
if (showResetButton) {
$('#messageBoxReset').show();
} else {
$('#messageBoxReset').hide();
}
$('#messageBox').show();
};
var log = function() {
if (DEBUG_ENABLED) {
console.log.apply(console, arguments);
}
};
if (localStorage.weData) {
try {
weData = JSON.parse(localStorage.weData);
if (weData.TAS_UID!==tasUid || !weData.APPLICATION || !weData.INDEX) {
//TAS_UID is different, reset.
resetLocalData();
}
} catch (e) {
//corrupt weData, reset.
resetLocalData();
}
}
$("#iframe").load(function (event) {
onLoadIframe(event);
});
var getContentDocument = function (iframe) {
return (iframe.contentDocument) ?
iframe.contentDocument :
iframe.contentWindow.document;
};
var open = function (url, callback) {
return new Promise(function (resolve, reject) {
var iframe = document.getElementById("iframe");
if (typeof callback === 'function') {
iframe.style.opacity = 0;
onLoadIframe = (function () {
return function (event) {
if (callback(event, resolve, reject)) {
iframe.style.opacity = 1;
}
};
})();
} else {
iframe.style.opacity = 1;
onLoadIframe = function () {};
}
//This code is to prevent error at back history
//in Firefox
setTimeout(function(){iframe.src = url;}, 0);
window.fullfill = function () {
resolve.apply(this, arguments);
};
window.reject = function () {
reject(this, arguments);
};
});
};
var verifyLogin = function () {
if (forceLogin) {
return login();
} else {
return anonymousLogin();
}
};
var login = function () {
return new Promise(function (logged, failure) {
if (!isLogged) {
log("login");
open('../login/login?inIFrame=1&u=' + encodeURIComponent(location.pathname + '/../../webentry/logged'))
.then(function (userInformation) {
logged(userInformation);
})
.catch(function () {
failure();
});
} else {
log("logged");
open('../webentry/logged')
.then(function (userInformation) {
logged(userInformation);
})
.catch(function () {
failure();
});
}
});
};
var anonymousLogin = function () {
return new Promise(function (resolve, failure) {
log("anonymousLogin");
$.ajax({
url: '../services/webentry/anonymousLogin',
method: 'get',
dataType: 'json',
data: {
we_uid: weUid
},
success: function (userInformation) {
resolve(userInformation);
},
error: function (data) {
failure(data);
}
});
});
};
var loadUserInformation = function (userInformation) {
return new Promise(function (resolve, reject) {
log("userInformation:", userInformation);
app.loadUserInformation(userInformation);
resolve();
});
};
var checkWebEntryCase = function (userInformation) {
return new Promise(function (resolve, reject) {
if (localStorage.weData) {
log("checkWebEntryCase");
$.ajax({
url: '../services/webentry/checkCase',
method: 'post',
dataType: 'json',
data: {
app_uid: weData.APPLICATION,
del_index: weData.INDEX
},
success: function (data) {
log("check:", data);
if (!data.check) {
resetLocalData();
}
resolve();
},
error: function () {
resetLocalData();
resolve();
}
});
} else {
resolve();
}
});
};
var initCase = function () {
return new Promise(function (resolve, reject) {
if (!hideInformationBar) {
$("body").removeClass("without-header");
}
if (!localStorage.weData) {
log("initCase");
$.ajax({
url: '../cases/casesStartPage_Ajax',
method: 'post',
dataType: 'json',
data: {
action: 'startCase',
processId: processUid,
taskId: tasUid
},
success: function (data) {
data.TAS_UID = tasUid;
localStorage.weData = JSON.stringify(data);
resolve(data);
},
error: function () {
reject();
}
});
} else {
log("openCase");
resolve(weData);
}
});
};
var casesStep = function (data) {
return new Promise(function (resolve, reject) {
log("casesStep");
open(
'../cases/cases_Open?APP_UID=' + encodeURIComponent(data.APPLICATION) +
'&DEL_INDEX=' + encodeURIComponent(data.INDEX) +
'&action=draft',
function (event, resolve, reject) {
var contentDocument = getContentDocument(event.target);
var stepTitle = contentDocument.getElementsByTagName("title");
if (!stepTitle || !stepTitle.length || stepTitle[0].textContent === 'Runtime Exception.') {
if (contentDocument.location.search.match(/&POSITION=10000&/)) {
//Catch error if webentry was deleted.
reject();
return false;
}
}
return true;
}
).then(function (callbackUrl) {
resolve(callbackUrl);
})
.catch(function () {
reject();
});
});
};
var routeWebEntry = function (callbackUrl) {
return new Promise(function (resolve, reject) {
log("routeWebEntry", callbackUrl);
resolve(callbackUrl);
});
};
var closeWebEntry = function (callbackUrl) {
return new Promise(function (resolve, reject) {
log("closeWebEntry");
resetLocalData();
if (closeSession) {
//This code is to prevent error at back history
//in Firefox
$("#iframe").hide();
$("#iframe").attr("src", "../login/login?inIFrame=1");
logout(false, function() {
resolve(callbackUrl);
});
} else {
//This code is to prevent error at back history
//in Firefox
open("../webentry/logged", function() {
resolve(callbackUrl);
});
}
});
};
var redirectCallback = function (callbackUrl) {
return new Promise(function (resolve, reject) {
log("redirect: "+callbackUrl);
location.href = callbackUrl;
resolve();
});
};
//Errors
var errorLogin = function () {
return new Promise(function (resolve, reject) {
log("errorLogin");
var msg = <?php echo G::json_encode(G::LoadTranslation('ID_EXCEPTION_LOG_INTERFAZ')); ?>;
msg = msg.replace("{0}", "LOGIN");
error(msg);
resetLocalData();
});
};
var errorLoadUserInfo = function () {
return new Promise(function (resolve, reject) {
log("errorLoadUserInfo");
var msg = <?php echo G::json_encode(G::LoadTranslation('ID_EXCEPTION_LOG_INTERFAZ')); ?>;
msg = msg.replace("{0}", "USR001");
error(msg);
resetLocalData();
});
};
var errorCheckWebEntry = function () {
return new Promise(function (resolve, reject) {
log("errorCheckWebEntry");
var msg = <?php echo G::json_encode(G::LoadTranslation('ID_EXCEPTION_LOG_INTERFAZ')); ?>;
msg = msg.replace("{0}", "WEE001");
error(msg);
resetLocalData();
});
};
var errorInitCase = function () {
return new Promise(function (resolve, reject) {
log("error Init case");
var msg = <?php echo G::json_encode(G::LoadTranslation('ID_EXCEPTION_LOG_INTERFAZ')); ?>;
msg = msg.replace("{0}", "INIT001");
error(msg);
resetLocalData();
});
};
var errorStep = function () {
return new Promise(function (resolve, reject) {
log("Step Error");
var msg = <?php echo G::json_encode(G::LoadTranslation('ID_EXCEPTION_LOG_INTERFAZ')); ?>;
msg = msg.replace("{0}", "STEP001");
error(msg);
resetLocalData();
});
};
var errorRouting = function () {
return new Promise(function (resolve, reject) {
log("errorRouting");
var msg = <?php echo G::json_encode(G::LoadTranslation('ID_EXCEPTION_LOG_INTERFAZ')); ?>;
msg = msg.replace("{0}", "ROU001");
error(msg);
resetLocalData();
});
};
//Execute WebEntry Flow
verifyLogin().catch(errorLogin)
.then(loadUserInformation).catch(errorLoadUserInfo)
.then(checkWebEntryCase).catch(errorCheckWebEntry)
.then(initCase).catch(errorInitCase)
.then(casesStep).catch(errorStep)
.then(routeWebEntry).catch(errorRouting)
.then(closeWebEntry)
.then(redirectCallback);
}();
</script>
</body>
</html>

View File

@@ -0,0 +1,23 @@
<html>
<head>
<script>
<?php
/**
* This page is redirected from the login page.
*/
G::LoadClass('pmFunctions');
$userUid = $_SESSION['USER_LOGGED'];
$userInfo = PMFInformationUser($userUid);
$result = [
'user_logged' => $userUid,
'userName' => $userInfo['username'],
'firstName' => $userInfo['firstname'],
'lastName' => $userInfo['lastname'],
'mail' => $userInfo['mail'],
'image' => '../users/users_ViewPhoto?t='.microtime(true),
];
?>
parent.fullfill(<?= G::json_encode($result) ?>);
</script>
</head>
</html>

View File

@@ -0,0 +1,43 @@
<?php
namespace ProcessMaker\BusinessModel;
use Translation;
/**
* Translation class
*
*/
class Language
{
/**
* Web Entry 2.0 Rest - Get languages
*
* @category HOR-3209,PROD-181
* @return array
*/
public function getLanguageList()
{
$Translations = new Translation();
$translationsTable = $Translations->getTranslationEnvironments();
$availableLangArray = [];
foreach ($translationsTable as $locale) {
$row = [];
$row['LANG_ID'] = $locale['LOCALE'];
if ($locale['COUNTRY'] != '.') {
$row['LANG_NAME'] = $locale['LANGUAGE'].' ('.
(ucwords(strtolower($locale['COUNTRY']))).')';
} else {
$row['LANG_NAME'] = $locale['LANGUAGE'];
}
$availableLangArray [] = $row;
}
return $availableLangArray;
}
}

View File

@@ -0,0 +1,181 @@
<?php
namespace ProcessMaker\BusinessModel;
use System;
use Exception;
use G;
/**
* Skins business model
*/
class Skins
{
/**
* Get a list of skins.
*
* @category HOR-3208,PROD-181
* @return array
*/
public function getSkins()
{
$list = System::getSkingList();
return $list['skins'];
}
/**
* Create a new skin.
*
* @param string $skinName
* @param string $skinFolder
* @param string $skinDescription
* @param string $skinAuthor
* @param string $skinWorkspace
* @param string $skinBase
* @return array
* @throws Exception
*/
public function createSkin(
$skinName,
$skinFolder,
$skinDescription = '',
$skinAuthor = 'ProcessMaker Team',
$skinWorkspace = 'global',
$skinBase = 'neoclassic'
) {
try {
if (!(isset($skinName))) {
throw (new Exception(G::LoadTranslation('ID_SKIN_NAME_REQUIRED')));
}
if (!(isset($skinFolder))) {
throw (new Exception(G::LoadTranslation('ID_SKIN_FOLDER_REQUIRED')));
}
if (is_dir(PATH_CUSTOM_SKINS.$skinFolder)) {
throw (new Exception(G::LoadTranslation('ID_SKIN_ALREADY_EXISTS')));
}
if (strtolower($skinFolder) == 'classic') {
throw (new Exception(G::LoadTranslation('ID_SKIN_ALREADY_EXISTS')));
}
//All validations OK then create skin
switch ($skinBase) {
//Validate skin base
case 'uxmodern':
$this->copySkinFolder(G::ExpandPath("skinEngine").'uxmodern'.PATH_SEP,
PATH_CUSTOM_SKINS.$skinFolder,
array("config.xml"
));
$pathBase = G::ExpandPath("skinEngine").'base'.PATH_SEP;
break;
case 'classic':
//Special Copy of this dir + xmlreplace
$this->copySkinFolder(G::ExpandPath("skinEngine").'base'.PATH_SEP,
PATH_CUSTOM_SKINS.$skinFolder,
array("config.xml", "baseCss"
));
$pathBase = G::ExpandPath("skinEngine").'base'.PATH_SEP;
break;
case 'neoclassic':
//Special Copy of this dir + xmlreplace
$this->copySkinFolder(G::ExpandPath("skinEngine").'neoclassic'.PATH_SEP,
PATH_CUSTOM_SKINS.$skinFolder,
array("config.xml", "baseCss"
));
$pathBase = G::ExpandPath("skinEngine").'neoclassic'.PATH_SEP;
break;
default:
//Commmon copy/paste of a folder + xmlrepalce
$this->copySkinFolder(PATH_CUSTOM_SKINS.$skinBase,
PATH_CUSTOM_SKINS.$skinFolder,
array("config.xml"
));
$pathBase = PATH_CUSTOM_SKINS.$skinBase.PATH_SEP;
break;
}
//@todo Improve this pre_replace lines
$configFileOriginal = $pathBase."config.xml";
$configFileFinal = PATH_CUSTOM_SKINS.$skinFolder.PATH_SEP.'config.xml';
$xmlConfiguration = file_get_contents($configFileOriginal);
$workspace = ($skinWorkspace == 'global') ? '' : SYS_SYS;
$xmlConfigurationObj = G::xmlParser($xmlConfiguration);
$skinInformationArray = $xmlConfigurationObj->result["skinConfiguration"]["__CONTENT__"]["information"]["__CONTENT__"];
$xmlConfiguration = preg_replace('/(<id>)(.+?)(<\/id>)/i',
'<id>'.G::generateUniqueID().'</id><!-- $2 -->',
$xmlConfiguration);
if (isset($skinInformationArray["workspace"]["__VALUE__"])) {
$workspace = ($workspace != "" && !empty($skinInformationArray["workspace"]["__VALUE__"]))
? $skinInformationArray["workspace"]["__VALUE__"]."|".$workspace
: $workspace;
$xmlConfiguration = preg_replace("/(<workspace>)(.*)(<\/workspace>)/i",
"<workspace>".$workspace."</workspace><!-- $2 -->",
$xmlConfiguration);
$xmlConfiguration = preg_replace("/(<name>)(.*)(<\/name>)/i",
"<name>".$skinName."</name><!-- $2 -->",
$xmlConfiguration);
} else {
$xmlConfiguration = preg_replace("/(<name>)(.*)(<\/name>)/i",
"<name>".$skinName."</name><!-- $2 -->\n<workspace>".$workspace."</workspace>",
$xmlConfiguration);
}
$xmlConfiguration = preg_replace("/(<description>)(.+?)(<\/description>)/i",
"<description>".$skinDescription."</description><!-- $2 -->",
$xmlConfiguration);
$xmlConfiguration = preg_replace("/(<author>)(.+?)(<\/author>)/i",
"<author>".$skinAuthor."</author><!-- $2 -->",
$xmlConfiguration);
$xmlConfiguration = preg_replace("/(<createDate>)(.+?)(<\/createDate>)/i",
"<createDate>".date("Y-m-d H:i:s")."</createDate><!-- $2 -->",
$xmlConfiguration);
$xmlConfiguration = preg_replace("/(<modifiedDate>)(.+?)(<\/modifiedDate>)/i",
"<modifiedDate>".date("Y-m-d H:i:s")."</modifiedDate><!-- $2 -->",
$xmlConfiguration);
file_put_contents($configFileFinal, $xmlConfiguration);
$response['success'] = true;
$response['message'] = G::LoadTranslation('ID_SKIN_SUCCESS_CREATE');
G::auditLog("CreateSkin", "Skin Name: ".$skinName);
return $response;
} catch (Exception $e) {
$response['success'] = false;
$response['message'] = $e->getMessage();
$response['error'] = $e->getMessage();
return $response;
}
}
private function copySkinFolder($path, $dest, $exclude = array())
{
$defaultExcluded = array(".", "..");
$excludedItems = array_merge($defaultExcluded, $exclude);
if (is_dir($path)) {
mkdir($dest);
$objects = scandir($path);
if (sizeof($objects) > 0) {
foreach ($objects as $file) {
if (in_array($file, $excludedItems)) {
continue;
}
if (is_dir($path.PATH_SEP.$file)) {
$this->copySkinFolder($path.PATH_SEP.$file,
$dest.PATH_SEP.$file, $exclude);
} else {
copy($path.PATH_SEP.$file, $dest.PATH_SEP.$file);
}
}
}
return true;
} elseif (is_file($path)) {
return copy($path, $dest);
} else {
return false;
}
}
}

View File

@@ -7,8 +7,8 @@ class WebEntry
"WE_UID" => array("type" => "string", "required" => false, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "webEntryUid"), "WE_UID" => array("type" => "string", "required" => false, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "webEntryUid"),
"TAS_UID" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "taskUid"), "TAS_UID" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "taskUid"),
"DYN_UID" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "dynaFormUid"), "DYN_UID" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "dynaFormUid"),
"USR_UID" => array("type" => "string", "required" => false, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "userUid"), "USR_UID" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "userUid"),
"WE_TITLE" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "webEntryTitle"), "WE_TITLE" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "webEntryTitle"),
"WE_DESCRIPTION" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "webEntryDescription"), "WE_DESCRIPTION" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "webEntryDescription"),
"WE_METHOD" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array("WS", "HTML"), "fieldNameAux" => "webEntryMethod"), "WE_METHOD" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array("WS", "HTML"), "fieldNameAux" => "webEntryMethod"),
@@ -16,7 +16,7 @@ class WebEntry
); );
private $arrayUserFieldDefinition = array( private $arrayUserFieldDefinition = array(
"USR_UID" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "userUid") "USR_UID" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "userUid")
); );
private $formatFieldNameInUppercase = true; private $formatFieldNameInUppercase = true;
@@ -269,13 +269,13 @@ class WebEntry
$task->throwExceptionIfNotExistsTask($processUid, $arrayData["TAS_UID"], $this->arrayFieldNameForException["taskUid"]); $task->throwExceptionIfNotExistsTask($processUid, $arrayData["TAS_UID"], $this->arrayFieldNameForException["taskUid"]);
} }
if (isset($arrayData["DYN_UID"])) { if (!empty($arrayData["DYN_UID"])) {
$dynaForm = new \ProcessMaker\BusinessModel\DynaForm(); $dynaForm = new \ProcessMaker\BusinessModel\DynaForm();
$dynaForm->throwExceptionIfNotExistsDynaForm($arrayData["DYN_UID"], $processUid, $this->arrayFieldNameForException["dynaFormUid"]); $dynaForm->throwExceptionIfNotExistsDynaForm($arrayData["DYN_UID"], $processUid, $this->arrayFieldNameForException["dynaFormUid"]);
} }
if ($arrayDataMain["WE_METHOD"] == "WS" && isset($arrayData["USR_UID"])) { if ($arrayDataMain["WE_METHOD"] == "WS" && !empty($arrayData["USR_UID"])) {
$process->throwExceptionIfNotExistsUser($arrayData["USR_UID"], $this->arrayFieldNameForException["userUid"]); $process->throwExceptionIfNotExistsUser($arrayData["USR_UID"], $this->arrayFieldNameForException["userUid"]);
} }
@@ -293,7 +293,7 @@ class WebEntry
} }
} }
if ($arrayDataMain["WE_METHOD"] == "WS" && isset($arrayData["TAS_UID"])) { if ($arrayDataMain["WE_METHOD"] == "WS" && isset($arrayData["TAS_UID"]) && (!isset($arrayData["WE_AUTHENTICATION"]) || $arrayData["WE_AUTHENTICATION"]!='LOGIN_REQUIRED')) {
$task = new \Tasks(); $task = new \Tasks();
if ($task->assignUsertoTask($arrayData["TAS_UID"]) == 0) { if ($task->assignUsertoTask($arrayData["TAS_UID"]) == 0) {
@@ -301,7 +301,7 @@ class WebEntry
} }
} }
if (isset($arrayData["DYN_UID"])) { if (isset($arrayData["DYN_UID"]) && (!isset($arrayData["WE_TYPE"]) || $arrayData["WE_TYPE"]==='SINGLE')) {
$dynaForm = new \Dynaform(); $dynaForm = new \Dynaform();
$arrayDynaFormData = $dynaForm->Load($arrayData["DYN_UID"]); $arrayDynaFormData = $dynaForm->Load($arrayData["DYN_UID"]);
@@ -313,7 +313,7 @@ class WebEntry
} }
} }
if ($arrayDataMain["WE_METHOD"] == "WS" && isset($arrayData["USR_UID"])) { if ($arrayDataMain["WE_METHOD"] == "WS" && !empty($arrayData["USR_UID"])) {
$user = new \Users(); $user = new \Users();
$arrayUserData = $user->load($arrayData["USR_UID"]); $arrayUserData = $user->load($arrayData["USR_UID"]);
@@ -321,9 +321,6 @@ class WebEntry
//Verify if User is assigned to Task //Verify if User is assigned to Task
$projectUser = new \ProcessMaker\BusinessModel\ProjectUser(); $projectUser = new \ProcessMaker\BusinessModel\ProjectUser();
if (!$projectUser->userIsAssignedToTask($arrayData["USR_UID"], $arrayDataMain["TAS_UID"])) {
throw new \Exception(\G::LoadTranslation("ID_USER_DOES_NOT_HAVE_ACTIVITY_ASSIGNED", array($arrayUserData["USR_USERNAME"], $arrayTaskData["TAS_TITLE"])));
}
} }
} catch (\Exception $e) { } catch (\Exception $e) {
throw $e; throw $e;
@@ -337,7 +334,7 @@ class WebEntry
* *
* return void * return void
*/ */
public function setWeData($webEntryUid) protected function setWeData($webEntryUid, $arrayData)
{ {
try { try {
//Verify data //Verify data
@@ -386,7 +383,9 @@ class WebEntry
$dynaForm = new \Dynaform(); $dynaForm = new \Dynaform();
if (!empty($arrayWebEntryData["DYN_UID"])) {
$arrayDynaFormData = $dynaForm->Load($arrayWebEntryData["DYN_UID"]); $arrayDynaFormData = $dynaForm->Load($arrayWebEntryData["DYN_UID"]);
}
//Creating sys.info; //Creating sys.info;
$sitePublicPath = ""; $sitePublicPath = "";
@@ -400,6 +399,12 @@ class WebEntry
$fileContent = "<?php\n\n"; $fileContent = "<?php\n\n";
$fileContent .= "global \$_DBArray;\n"; $fileContent .= "global \$_DBArray;\n";
$fileContent .= '$webEntry = new ' . WebEntry::class . ";\n";
$fileContent .= "\$processUid = \"" . $processUid . "\";\n";
$fileContent .= "\$weUid = \"" . $arrayWebEntryData['WE_UID'] . "\";\n";
$fileContent .= 'if (!$webEntry->isWebEntryOne($weUid)) {'."\n";
$fileContent .= " return require(PATH_METHODS . 'webentry/access.php');\n";
$fileContent .= "}\n";
$fileContent .= "if (!isset(\$_DBArray)) {\n"; $fileContent .= "if (!isset(\$_DBArray)) {\n";
$fileContent .= " \$_DBArray = array();\n"; $fileContent .= " \$_DBArray = array();\n";
$fileContent .= "}\n"; $fileContent .= "}\n";
@@ -407,7 +412,8 @@ class WebEntry
$fileContent .= "\$_SESSION[\"CURRENT_DYN_UID\"] = \"" . $dynaFormUid . "\";\n"; $fileContent .= "\$_SESSION[\"CURRENT_DYN_UID\"] = \"" . $dynaFormUid . "\";\n";
$fileContent .= "\$G_PUBLISH = new Publisher();\n"; $fileContent .= "\$G_PUBLISH = new Publisher();\n";
$fileContent .= "\$a = new pmDynaform(array(\"CURRENT_DYNAFORM\" => \"" . $arrayWebEntryData["DYN_UID"] . "\"));\n"; $fileContent .= "G::LoadClass(\"pmDynaform\");\n";
$fileContent .= "\$a = new pmDynaform(array(\"CURRENT_DYNAFORM\" => \"" . $dynaFormUid . "\"));\n";
$fileContent .= "if (\$a->isResponsive()) {\n"; $fileContent .= "if (\$a->isResponsive()) {\n";
$fileContent .= " \$a->printWebEntry(\"" . $fileName . "Post.php\");\n"; $fileContent .= " \$a->printWebEntry(\"" . $fileName . "Post.php\");\n";
$fileContent .= "} else {\n"; $fileContent .= "} else {\n";
@@ -444,7 +450,7 @@ class WebEntry
$template->assign("USR_VAR", "\$USR_UID = -1;"); $template->assign("USR_VAR", "\$USR_UID = -1;");
} }
$template->assign("dynaform", $arrayDynaFormData["DYN_TITLE"]); $template->assign("dynaform", empty($arrayDynaFormData) ? '' : $arrayDynaFormData["DYN_TITLE"]);
$template->assign("timestamp", date("l jS \of F Y h:i:s A")); $template->assign("timestamp", date("l jS \of F Y h:i:s A"));
$template->assign("ws", $this->sysSys); $template->assign("ws", $this->sysSys);
$template->assign("version", \PmSystem::getVersion()); $template->assign("version", \PmSystem::getVersion());
@@ -551,6 +557,7 @@ class WebEntry
} }
//Update //Update
if (!isset($arrayData['WE_LINK_GENERATION']) || $arrayData['WE_LINK_GENERATION']==='DEFAULT') {
//Update where //Update where
$criteriaWhere = new \Criteria("workflow"); $criteriaWhere = new \Criteria("workflow");
$criteriaWhere->add(\WebEntryPeer::WE_UID, $webEntryUid); $criteriaWhere->add(\WebEntryPeer::WE_UID, $webEntryUid);
@@ -560,6 +567,7 @@ class WebEntry
$criteriaSet->add(\WebEntryPeer::WE_DATA, $webEntryData); $criteriaSet->add(\WebEntryPeer::WE_DATA, $webEntryData);
\BasePeer::doUpdate($criteriaWhere, $criteriaSet, \Propel::getConnection("workflow")); \BasePeer::doUpdate($criteriaWhere, $criteriaSet, \Propel::getConnection("workflow"));
}
} catch (\Exception $e) { } catch (\Exception $e) {
throw $e; throw $e;
} }
@@ -629,7 +637,7 @@ class WebEntry
} }
//Set WE_DATA //Set WE_DATA
$this->setWeData($webEntryUid); $this->setWeData($webEntryUid, $arrayData);
//Return //Return
return $this->getWebEntry($webEntryUid); return $this->getWebEntry($webEntryUid);
@@ -710,7 +718,7 @@ class WebEntry
} }
//Set WE_DATA //Set WE_DATA
$this->setWeData($webEntryUid); $this->setWeData($webEntryUid, $arrayData);
//Return //Return
if (!$this->formatFieldNameInUppercase) { if (!$this->formatFieldNameInUppercase) {
@@ -839,7 +847,7 @@ class WebEntry
public function getWebEntryDataFromRecord(array $record) public function getWebEntryDataFromRecord(array $record)
{ {
try { try {
if ($record["WE_METHOD"] == "WS") { if ((!isset($record['WE_LINK_GENERATION']) || $record['WE_LINK_GENERATION']==='DEFAULT') && $record["WE_METHOD"] == "WS") {
$http = (\G::is_https())? "https://" : "http://"; $http = (\G::is_https())? "https://" : "http://";
$url = $http . $_SERVER["HTTP_HOST"] . "/sys" . SYS_SYS . "/" . SYS_LANG . "/" . SYS_SKIN . "/" . $record["PRO_UID"]; $url = $http . $_SERVER["HTTP_HOST"] . "/sys" . SYS_SYS . "/" . SYS_LANG . "/" . SYS_SKIN . "/" . $record["PRO_UID"];
@@ -1061,5 +1069,55 @@ class WebEntry
file_put_contents($pathFileName, $code); file_put_contents($pathFileName, $code);
} }
/**
* Verify if web entry is a single dynaform without login required.
*
* @param type $processUid
* @param type $weUid
* @return boolean
*/
public function isWebEntryOne($weUid)
{
$webEntry = \WebEntryPeer::retrieveByPK($weUid);
return $webEntry->getWeType()==='SINGLE' && $webEntry->getWeAuthentication()==='ANONYMOUS';
}
/**
* Verify if a Task is and Web Entry auxiliar task.
*
* @param type $tasUid
* @return boolean
*/
public function isTaskAWebEntry($tasUid)
{
return substr($tasUid, 0, 4) === 'wee-';
}
public function getCallbackUrlByTask($tasUid)
{
$criteria = new \Criteria;
$criteria->add(\WebEntryPeer::TAS_UID, $tasUid);
$webEntry = \WebEntryPeer::doSelectOne($criteria);
if ($webEntry->getWeCallback()==='CUSTOM' || $webEntry->getWeCallback()==='CUSTOM_CLEAR') {
return $webEntry->getWeCallbackUrl();
} else {
return '../services/webentry/completed?message=@%_DELEGATION_MESSAGE';
}
}
public function getDelegationMessage($data)
{
$appNumber = $data['APP_NUMBER'];
$appUid = $data['APPLICATION'];
$message = "\n".\G::LoadTranslation('ID_CASE_CREATED').
"\n".\G::LoadTranslation('ID_CASE_NUMBER').": $appNumber".
"\n".\G::LoadTranslation('ID_CASESLIST_APP_UID').": $appUid";
foreach($data['_DELEGATION_DATA'] as $task) {
$message.="\n".\G::LoadTranslation('ID_CASE_ROUTED_TO').": ".
$task['NEXT_TASK']['TAS_TITLE'].
"(".htmlentities($task['NEXT_TASK']['USER_ASSIGNED']['USR_USERNAME']).")";
}
return $message;
}
} }

View File

@@ -11,6 +11,9 @@ use \Luracast\Restler\RestException;
*/ */
class WebEntryEvent extends Api class WebEntryEvent extends Api
{ {
/**
* @var \ProcessMaker\BusinessModel\WebEntryEvent $webEntryEvent
*/
private $webEntryEvent; private $webEntryEvent;
/** /**
@@ -32,6 +35,8 @@ class WebEntryEvent extends Api
/** /**
* @url GET /:prj_uid/web-entry-events * @url GET /:prj_uid/web-entry-events
* @access protected
* @class AccessControl {@permission PM_FACTORY}
* *
* @param string $prj_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32}
*/ */
@@ -48,6 +53,7 @@ class WebEntryEvent extends Api
/** /**
* @url GET /:prj_uid/web-entry-event/:wee_uid * @url GET /:prj_uid/web-entry-event/:wee_uid
* @class AccessControl {@permission PM_FACTORY}
* *
* @param string $prj_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32}
* @param string $wee_uid {@min 32}{@max 32} * @param string $wee_uid {@min 32}{@max 32}
@@ -65,6 +71,7 @@ class WebEntryEvent extends Api
/** /**
* @url GET /:prj_uid/web-entry-event/event/:evn_uid * @url GET /:prj_uid/web-entry-event/event/:evn_uid
* @class AccessControl {@permission PM_FACTORY}
* *
* @param string $prj_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32}
* @param string $evn_uid {@min 32}{@max 32} * @param string $evn_uid {@min 32}{@max 32}
@@ -82,6 +89,7 @@ class WebEntryEvent extends Api
/** /**
* @url POST /:prj_uid/web-entry-event * @url POST /:prj_uid/web-entry-event
* @class AccessControl {@permission PM_FACTORY}
* *
* @param string $prj_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32}
* @param array $request_data * @param array $request_data
@@ -103,6 +111,7 @@ class WebEntryEvent extends Api
/** /**
* @url PUT /:prj_uid/web-entry-event/:wee_uid * @url PUT /:prj_uid/web-entry-event/:wee_uid
* @class AccessControl {@permission PM_FACTORY}
* *
* @param string $prj_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32}
* @param string $wee_uid {@min 32}{@max 32} * @param string $wee_uid {@min 32}{@max 32}
@@ -112,6 +121,7 @@ class WebEntryEvent extends Api
{ {
try { try {
$arrayData = $this->webEntryEvent->update($wee_uid, $this->getUserId(), $request_data); $arrayData = $this->webEntryEvent->update($wee_uid, $this->getUserId(), $request_data);
return $this->webEntryEvent->getWebEntryEvent($wee_uid);
} catch (\Exception $e) { } catch (\Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
} }
@@ -119,6 +129,7 @@ class WebEntryEvent extends Api
/** /**
* @url DELETE /:prj_uid/web-entry-event/:wee_uid * @url DELETE /:prj_uid/web-entry-event/:wee_uid
* @class AccessControl {@permission PM_FACTORY}
* *
* @param string $prj_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32}
* @param string $wee_uid {@min 32}{@max 32} * @param string $wee_uid {@min 32}{@max 32}
@@ -127,6 +138,24 @@ class WebEntryEvent extends Api
{ {
try { try {
$this->webEntryEvent->delete($wee_uid); $this->webEntryEvent->delete($wee_uid);
return ['success' => true];
} catch (\Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
/**
* Get the web entry URL.
*
* @url GET /:prj_uid/web-entry-event/:wee_uid/generate-link
* @access protected
* @class AccessControl {@permission PM_FACTORY}
*/
public function generateLink($prj_uid, $wee_uid)
{
try {
$link = $this->webEntryEvent->generateLink($prj_uid, $wee_uid);
return ["link" => $link];
} catch (\Exception $e) { } catch (\Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
} }

View File

@@ -7,7 +7,6 @@ use \Luracast\Restler\RestException;
/** /**
* Pmtable Api Controller * Pmtable Api Controller
* *
* @protected
*/ */
class System extends Api class System extends Api
{ {
@@ -18,6 +17,7 @@ class System extends Api
* @copyright Colosa - Bolivia * @copyright Colosa - Bolivia
* *
* @url GET /db-engines * @url GET /db-engines
* @protected
*/ */
public function doGetDataBaseEngines() public function doGetDataBaseEngines()
{ {
@@ -39,6 +39,7 @@ class System extends Api
* @copyright Colosa - Bolivia * @copyright Colosa - Bolivia
* *
* @url GET /counters-lists * @url GET /counters-lists
* @protected
*/ */
public function doGetCountersLists() public function doGetCountersLists()
{ {
@@ -52,6 +53,25 @@ class System extends Api
} }
} }
/**
* Get a list of the installed languages.
*
* @category HOR-3209,PROD-181
* @return array
* @url GET /languages
* @public
*/
public function doGetLanguages()
{
try {
$language = new \ProcessMaker\BusinessModel\Language;
$list = $language->getLanguageList();
return ["data" => $list];
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
}
}
/** /**
* @return array * @return array
* *
@@ -59,6 +79,7 @@ class System extends Api
* @copyright Colosa - Bolivia * @copyright Colosa - Bolivia
* *
* @url GET /enabled-features * @url GET /enabled-features
* @protected
*/ */
public function doGetEnabledFeatures() public function doGetEnabledFeatures()
{ {
@@ -81,4 +102,25 @@ class System extends Api
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
} }
} }
/**
* Get the list of installed skins.
*
* @url GET /skins
* @return array
* @access protected
* @class AccessControl {@permission PM_FACTORY}
* @protected
*/
public function doGetSkins()
{
try {
$model = new \ProcessMaker\BusinessModel\Skins();
$response = $model->getSkins();
return ["data" => $response];
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
}
}
} }

View File

@@ -0,0 +1,6 @@
<script>
if({$derivationResponse|@json_encode})
parent.fullfill({$webEntryUrlEvaluated|@json_encode});
else
parent.reject();
</script>

View File

@@ -27,7 +27,7 @@ SELECT LANG_ID, LANG_NAME FROM langOptions
<JS type="javascript"><![CDATA[ <JS type="javascript"><![CDATA[
//validate iframe login //validate iframe login
if(inIframe()) { if(inIframe() && (window.location.search.indexOf("inIFrame=1")===-1)) {
if (PM.Sessions.getCookie('PM-TabPrimary') !== '101010010' if (PM.Sessions.getCookie('PM-TabPrimary') !== '101010010'
&& (window.location.pathname.indexOf("login/login") !== -1 && (window.location.pathname.indexOf("login/login") !== -1
|| window.location.pathname.indexOf("sysLogin") !== -1)) { || window.location.pathname.indexOf("sysLogin") !== -1)) {

View File

@@ -30,7 +30,7 @@ SELECT LANG_ID, LANG_NAME FROM langOptions
<JS type="javascript"><![CDATA[ <JS type="javascript"><![CDATA[
//validate iframe login //validate iframe login
if(inIframe()) { if(inIframe() && (window.location.search.indexOf("inIFrame=1")===-1)) {
if (PM.Sessions.getCookie('PM-TabPrimary') !== '101010010' if (PM.Sessions.getCookie('PM-TabPrimary') !== '101010010'
&& (window.location.pathname.indexOf("login/login") !== -1 && (window.location.pathname.indexOf("login/login") !== -1
|| window.location.pathname.indexOf("sysLogin") !== -1)) { || window.location.pathname.indexOf("sysLogin") !== -1)) {