ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
class.ilBackgroundTaskJson.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */
3
11{
18 public static function getFailedJson($a_message)
19 {
20 global $DIC;
21 $lng = $DIC['lng'];
22
23 $json = new stdClass();
24
25 $json->status = "fail";
26 $json->title = self::jsonSafeString($lng->txt("bgtask_failure"));
27 $json->message = self::jsonSafeString($a_message);
28 $json->button = self::jsonSafeString($lng->txt("ok"));
29
30 return $json;
31 }
32
39 public static function getBlockedJson($a_task_id)
40 {
41 global $DIC;
42 $lng = $DIC['lng'];
43
44 $json = new stdClass();
45
46 $json->status = "block";
47 $json->task_id = $a_task_id;
48 $json->title = self::jsonSafeString($lng->txt("bgtask_blocked"));
49 $json->message = self::jsonSafeString($lng->txt("bgtask_blocked_info"));
50 $json->button_old = self::jsonSafeString($lng->txt("bgtask_blocked_cancel_old"));
51 $json->button_new = self::jsonSafeString($lng->txt("bgtask_blocked_cancel_new"));
52
53 return $json;
54 }
55
64 public static function getProcessingJson($a_task_id, $a_message, $a_steps)
65 {
66 global $DIC;
67 $lng = $DIC['lng'];
68
69 $json = new stdClass();
70
71 $json->status = "bg";
72 $json->task_id = $a_task_id;
73 $json->title = self::jsonSafeString($lng->txt("bgtask_processing"));
74 $json->message = self::jsonSafeString($a_message);
75 $json->button = self::jsonSafeString($lng->txt("cancel"));
76 $json->steps = (int) $a_steps;
77
78 return $json;
79 }
80
89 public static function getProgressJson(ilBackgroundTask $a_task, $a_finished_cmd = null, $a_finished_result = null)
90 {
91 $json = new stdClass();
92
93 $json->status = $a_task->getStatus();
94 $json->steps = $a_task->getSteps();
95 $json->current = $a_task->getCurrentStep();
96
97 // if task has been finished, get result action
98 if ($a_finished_cmd) {
99 $json->result_cmd = $a_finished_cmd;
100 $json->result = $a_finished_result;
101 }
102
103 return $json;
104 }
105
114 public static function getFinishedJson($a_task_id, $a_cmd, $a_result)
115 {
116 $json = new stdClass();
117
118 $json->status = "finished";
119 $json->task_id = $a_task_id;
120 $json->result_cmd = $a_cmd;
121 $json->result = $a_result;
122
123 return $json;
124 }
125
132 protected static function jsonSafeString($a_text)
133 {
134 if (!is_string($a_text)) {
135 return $a_text;
136 }
137
138 $a_text = htmlentities($a_text, ENT_COMPAT | ENT_HTML401, "UTF-8");
139 $a_text = str_replace("'", "&#039;", $a_text);
140
141 return $a_text;
142 }
143}
An exception for terminatinating execution or to throw for unit testing.
Background task JSON helper.
static jsonSafeString($a_text)
Makes the specified string safe for JSON.
static getFailedJson($a_message)
Get json for failed task.
static getProcessingJson($a_task_id, $a_message, $a_steps)
Get json for processing task.
static getProgressJson(ilBackgroundTask $a_task, $a_finished_cmd=null, $a_finished_result=null)
Get json for task progress.
static getFinishedJson($a_task_id, $a_cmd, $a_result)
Get json for finished task.
static getBlockedJson($a_task_id)
Get json for blocked task.
getSteps()
Gets the steps.
getStatus()
Gets the status.
getCurrentStep()
Gets the current step.
global $DIC
Definition: saml.php:7
$lng