24 {
27 $this->element_varname = '$_v_' . $element['attributes']['id'];
28 $event_definition = null;
29 if (count($element['children'])) {
30 foreach ($element['children'] as $child) {
31 if ($child['name'] == 'messageEventDefinition') {
33 }
34 if ($child['name'] == 'signalEventDefinition') {
36 }
37 }
38 }
39
40 $message_element = false;
41 if (isset($element['attributes']['ilias:message'])) {
42 $message_element = $element['attributes']['ilias:message'];
43 }
44
45 $class_object->
registerRequire(
'./Services/WorkflowEngine/classes/nodes/class.ilBasicNode.php');
47 ' . $this->element_varname . ' = new ilBasicNode($this);
48 $this->addNode(' . $this->element_varname . ');
49 ' . $this->element_varname . '->setName(\'' . $this->element_varname . '\');
50 ';
51
52 if (isset($event_definition['type']) && isset($event_definition['content'])) {
53 $class_object->registerRequire('./
Services/WorkflowEngine/classes/activities/
class.ilEventRaisingActivity.php
');
54 $code .= '
55 ' . $this->element_varname . '_sendTaskActivity =
new ilEventRaisingActivity(
' . $this->element_varname . ');
56 ' . $this->element_varname . '_sendTaskActivity->setName(\'' . $this->element_varname . '_sendTaskActivity\');
57 ' . $this->element_varname . '_sendTaskActivity->setEventType("' . $event_definition['type'] . '");
58 ' . $this->element_varname . '_sendTaskActivity->setEventName("' . $event_definition['content'] . '");
59 ' . $this->element_varname . '->addActivity(' . $this->element_varname . '_sendTaskActivity);
60 ';
61 }
62
63 if (isset($element['attributes']['message'])) {
65 $task_parameters = '';
66 $message_name = $element['attributes']['message'];
67 if (substr($message_name, 0, 6) == 'ilias:') {
68 $message_name = substr($message_name, 6);
69 }
70 if (count($data_inputs)) {
71 $task_parameters = '"' . implode('","', $data_inputs) . '"';
72 }
73
74 $class_object->
registerRequire(
'./Services/WorkflowEngine/classes/activities/class.ilSendMailActivity.php');
76 ' . $this->element_varname . '_sendTaskActivity = new ilSendMailActivity(' . $this->element_varname . ');
77 ' . $this->element_varname . '_sendTaskActivity->setMessageName(\'' . $message_name . '\');
78 ' . $this->element_varname . '_sendTaskActivity_params = array(' . $task_parameters . ');
79 ' . $this->element_varname . '_sendTaskActivity->setParameters(' . $this->element_varname . '_sendTaskActivity_params);
80 ' . $this->element_varname . '->addActivity(' . $this->element_varname . '_sendTaskActivity);
81 ';
82 }
83
84 $code .= $this->handleDataAssociations($element, $class_object, $this->element_varname);
85
86 return $code;
87 }
static extractILIASEventDefinitionFromProcess($start_event_ref, $type, $bpmn2_array)
static xsIDToPHPVarname($xsID)
getDataInputAssociationIdentifiers($element)
@noinspection PhpIncludeInspection
registerRequire($require)
Class ilCertificateAppEventListener.