ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
class.ilYuiUtil.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3
11{
12 const YUI_BASE = "./libs/bower/bower_components/yui2/build";
13
14
20 public static function initConnection(ilGlobalTemplateInterface $a_main_tpl = null)
21 {
22 global $DIC;
23
24 if ($a_main_tpl == null) {
25 $tpl = $DIC["tpl"];
26 } else {
27 $tpl = $a_main_tpl;
28 }
29 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
30 $tpl->addJavaScript(self::YUI_BASE . "/connection/connection-min.js");
31 }
32
33
39 public static function initEvent(ilGlobalTemplateInterface $a_main_tpl = null)
40 {
41 global $DIC;
42
43 if ($a_main_tpl == null) {
44 $tpl = $DIC["tpl"];
45 } else {
46 $tpl = $a_main_tpl;
47 }
48
49 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
50 }
51
52
58 public static function initDom(ilGlobalTemplateInterface $a_main_tpl = null)
59 {
60 global $DIC;
61
62 if ($a_main_tpl == null) {
63 $tpl = $DIC["tpl"];
64 } else {
65 $tpl = $a_main_tpl;
66 }
67
68 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
69 }
70
71
77 public static function initAnimation(ilGlobalTemplateInterface $a_main_tpl = null)
78 {
79 global $DIC;
80
81 if ($a_main_tpl == null) {
82 $tpl = $DIC["tpl"];
83 } else {
84 $tpl = $a_main_tpl;
85 }
86
87 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
88 $tpl->addJavaScript(self::YUI_BASE . "/animation/animation-min.js");
89 }
90
91
97 public static function initDragDrop(ilGlobalTemplateInterface $a_main_tpl = null)
98 {
99 global $DIC;
100
101 if ($a_main_tpl == null) {
102 $tpl = $DIC["tpl"];
103 } else {
104 $tpl = $a_main_tpl;
105 }
106
107 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
108 $tpl->addJavaScript(self::YUI_BASE . "/dragdrop/dragdrop-min.js");
109 $tpl->addJavaScript(self::YUI_BASE . "/element/element-min.js");
110 }
111
112
118 public static function initDomEvent(ilGlobalTemplateInterface $a_main_tpl = null)
119 {
120 global $DIC;
121
122 if ($a_main_tpl == null) {
123 $tpl = $DIC["tpl"];
124 } else {
125 $tpl = $a_main_tpl;
126 }
127
128 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
129 }
130
131
142 public static function initPanel($a_resize = false, ilGlobalTemplateInterface $a_main_tpl = null)
143 {
144 global $DIC;
145
146 if ($a_main_tpl == null) {
147 $tpl = $DIC["tpl"];
148 } else {
149 $tpl = $a_main_tpl;
150 }
151
152 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
153 $tpl->addJavaScript(self::YUI_BASE . "/container/container-min.js");
155 $tpl->addCss("./Services/Calendar/css/panel_min.css");
156
157 if ($a_resize) {
158 $tpl->addCss(self::YUI_BASE . "/resize/assets/skins/sam/resize.css");
159 $tpl->addJavaScript(self::YUI_BASE . "/utilities/utilities-min.js");
160 $tpl->addJavaScript(self::YUI_BASE . "/resize/resize-min.js");
161 }
162 }
163
164
168 public static function initConnectionWithAnimation()
169 {
170 global $DIC;
171
172 $tpl = $DIC["tpl"];
173
174 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
175 $tpl->addJavaScript(self::YUI_BASE . "/animation/animation-min.js");
176 $tpl->addJavaScript(self::YUI_BASE . "/connection/connection-min.js");
177 }
178
179
183 public static function initMenu()
184 {
185 global $DIC;
186
187 $tpl = $DIC["tpl"];
188
189 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
190 $tpl->addJavaScript(self::YUI_BASE . "/container/container_core.js");
191 $tpl->addJavaScript(self::YUI_BASE . "/menu/menu-min.js");
192 $tpl->addCss(self::YUI_BASE . "/menu/assets/menu.css");
193 }
194
195
199 public static function initOverlay(ilGlobalTemplateInterface $a_main_tpl = null)
200 {
201 global $DIC;
202
203 if ($a_main_tpl == null) {
204 $tpl = $DIC["tpl"];
205 } else {
206 $tpl = $a_main_tpl;
207 }
208
209 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
210 $tpl->addJavaScript(self::YUI_BASE . "/container/container_core-min.js");
212 }
213
214
218 public static function initSimpleDialog()
219 {
220 global $DIC;
221
222 $tpl = $DIC["tpl"];
223
224 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
225 $tpl->addJavaScript(self::YUI_BASE . "/container/container-min.js");
226 $tpl->addJavaScript(self::YUI_BASE . "/dragdrop/dragdrop-min.js");
228 $tpl->addCss("./Services/YUI/templates/default/tpl.simpledialog.css");
229 }
230
231
235 public static function initAssessmentWizard()
236 {
237 global $DIC;
238
239 $tpl = $DIC["tpl"];
240
241 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
242 $tpl->addJavaScript(self::YUI_BASE . "/element/element-min.js");
243 $tpl->addJavaScript(self::YUI_BASE . "/button/button-min.js");
244 $tpl->addJavaScript(self::YUI_BASE . "/container/container-min.js");
245 $tpl->addCss(self::YUI_BASE . "/button/assets/skins/sam/button.css");
247 }
248
249
253 public static function initDragDropList()
254 {
255 global $DIC;
256
257 $tpl = $DIC["tpl"];
258
259 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
260 $tpl->addJavaScript(self::YUI_BASE . "/animation/animation-min.js");
261 $tpl->addJavaScript(self::YUI_BASE . "/dragdrop/dragdrop-min.js");
262 $tpl->addCss("./Services/YUI/templates/default/DragDropList.css");
263 }
264
265
269 public static function initDragDropAnimation()
270 {
271 global $DIC;
272
273 $tpl = $DIC["tpl"];
274
275 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
276 $tpl->addJavaScript(self::YUI_BASE . "/animation/animation-min.js");
277 $tpl->addJavaScript(self::YUI_BASE . "/dragdrop/dragdrop-min.js");
278 }
279
280
284 public static function initElementSelection()
285 {
286 global $DIC;
287
288 $tpl = $DIC["tpl"];
289
290 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
291 $tpl->addJavaScript(self::YUI_BASE . "/element/element-min.js");
292 }
293
294
298 public static function getDragDropList($id_source, $title_source, $source, $id_dest, $title_dest, $dest)
299 {
301
302 $template = new ilTemplate("tpl.dragdroplist.html", true, true, "Services/YUI");
303 foreach ($source as $id => $name) {
304 $template->setCurrentBlock("source_element");
305 $template->setVariable("ELEMENT_ID", $id);
306 $template->setVariable("ELEMENT_NAME", $name);
307 $template->parseCurrentBlock();
308 $template->setCurrentBlock("element");
309 $template->setVariable("ELEMENT_ID", $id);
310 $template->parseCurrentBlock();
311 }
312 foreach ($dest as $id => $name) {
313 $template->setCurrentBlock("dest_element");
314 $template->setVariable("ELEMENT_ID", $id);
315 $template->setVariable("ELEMENT_NAME", $name);
316 $template->parseCurrentBlock();
317 $template->setCurrentBlock("element");
318 $template->setVariable("ELEMENT_ID", $id);
319 $template->parseCurrentBlock();
320 }
321 $template->setVariable("TITLE_LIST_1", $title_source);
322 $template->setVariable("TITLE_LIST_2", $title_dest);
323 $template->setVariable("LIST_1", $id_source);
324 $template->setVariable("LIST_2", $id_dest);
325
326 return $template->get();
327 }
328
329
330 public static function addYesNoDialog($dialogname, $headertext, $message, $yesaction, $noaction, $defaultyes, $icon = "help")
331 {
332 global $DIC;
333
334 $tpl = $DIC["tpl"];
335 $lng = $DIC->language();
336
338
339 $template = new ilTemplate("tpl.yes_no_dialog.js", true, true, "Services/YUI");
340 $template->setVariable("DIALOGNAME", $dialogname);
341 $template->setVariable("YES_ACTION", $yesaction);
342 $template->setVariable("NO_ACTION", $noaction);
343 $template->setVariable("DIALOG_HEADER", $headertext);
344 $template->setVariable("DIALOG_MESSAGE", $message);
345 $template->setVariable("TEXT_YES", $lng->txt("yes"));
346 $template->setVariable("TEXT_NO", $lng->txt("no"));
347 switch ($icon) {
348 case "warn":
349 $template->setVariable("ICON", "YAHOO.widget.SimpleDialog.ICON_WARN");
350 break;
351 case "tip":
352 $template->setVariable("ICON", "YAHOO.widget.SimpleDialog.ICON_TIP");
353 break;
354 case "info":
355 $template->setVariable("ICON", "YAHOO.widget.SimpleDialog.ICON_INFO");
356 break;
357 case "block":
358 $template->setVariable("ICON", "YAHOO.widget.SimpleDialog.ICON_BLOCK");
359 break;
360 case "alarm":
361 $template->setVariable("ICON", "YAHOO.widget.SimpleDialog.ICON_ALARM");
362 break;
363 case "help":
364 default:
365 $template->setVariable("ICON", "YAHOO.widget.SimpleDialog.ICON_HELP");
366 break;
367 }
368 if ($defaultyes) {
369 $template->touchBlock("isDefaultYes");
370 } else {
371 $template->touchBlock("isDefaultNo");
372 }
373 $tpl->setCurrentBlock("HeadContent");
374 $tpl->setVariable("CONTENT_BLOCK", $template->get());
375 $tpl->parseCurrentBlock();
376 }
377
378
386 public static function initCalendar()
387 {
388 global $DIC;
389
390 $tpl = $DIC["tpl"];
391
392 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
393 $tpl->addJavaScript(self::YUI_BASE . "/calendar/calendar-min.js");
394
395 $tpl->addCss(self::YUI_BASE . "/calendar/assets/skins/sam/calendar.css");
396 $tpl->addCss("./Services/Calendar/css/calendar.css");
397 }
398
399
408 public static function initButtonControl()
409 {
410 global $DIC;
411
412 $tpl = $DIC["tpl"];
413
414 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
415 $tpl->addJavaScript(self::YUI_BASE . "/element/element-min.js");
416
417 $tpl->addJavaScript(self::YUI_BASE . "/container/container_core-min.js");
418 $tpl->addJavaScript(self::YUI_BASE . "/menu/menu-min.js");
419
420 $tpl->addJavaScript(self::YUI_BASE . "/button/button-min.js");
421
422 $tpl->addCss(self::YUI_BASE . "/button/assets/skins/sam/button.css");
423 $tpl->addCss(self::YUI_BASE . "/menu/assets/skins/sam/menu.css");
424 }
425
426
434 public static function initColorPicker()
435 {
436 global $DIC;
437
438 $tpl = $DIC["tpl"];
439
441
442 $tpl->addJavaScript(self::YUI_BASE . "/dragdrop/dragdrop-min.js");
443 $tpl->addJavaScript(self::YUI_BASE . "/slider/slider-min.js");
444 $tpl->addJavaScript(self::YUI_BASE . "/colorpicker/colorpicker-min.js");
445
446 $tpl->addCss('./Services/Form/css/color_picker.css');
447 $tpl->addCss(self::YUI_BASE . "/colorpicker/assets/skins/sam/colorpicker.css");
448 }
449
450
454 public static function initTabView()
455 {
456 global $DIC;
457
458 $tpl = $DIC["tpl"];
459
460 $tpl->addCss(self::YUI_BASE . "/tabview/assets/skins/sam/tabview.css");
461 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
462 $tpl->addJavaScript(self::YUI_BASE . "/element/element-min.js");
463 $tpl->addJavaScript(self::YUI_BASE . "/tabview/tabview-min.js");
464 }
465
466
472 public static function initJson()
473 {
474 global $DIC;
475
476 $tpl = $DIC["tpl"];
477 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
478 $tpl->addJavaScript(self::YUI_BASE . "/json/json-min.js");
479 }
480
481
485 public static function initLayout()
486 {
487 global $DIC;
488
489 $tpl = $DIC["tpl"];
490
491 $tpl->addCss(self::YUI_BASE . "/assets/skins/sam/resize.css");
492 $tpl->addCss(self::YUI_BASE . "/assets/skins/sam/layout.css");
493
494 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
495 $tpl->addJavaScript(self::YUI_BASE . "/dragdrop/dragdrop-min.js");
496 $tpl->addJavaScript(self::YUI_BASE . "/element/element-min.js");
497 $tpl->addJavaScript(self::YUI_BASE . "/animation/animation-min.js");
498 $tpl->addJavaScript(self::YUI_BASE . "/resize/resize-min.js");
499 $tpl->addJavaScript(self::YUI_BASE . "/layout/layout-min.js");
500 }
501
502
506 public static function initTreeView()
507 {
508 global $DIC;
509
510 $tpl = $DIC["tpl"];
511
512 $tpl->addJavaScript(self::getLocalPath() . '/yahoo/yahoo-min.js');
513 $tpl->addJavaScript(self::getLocalPath() . '/event/event-min.js');
514 $tpl->addJavaScript(self::getLocalPath() . '/treeview/treeview.js');
515 }
516
517
521 public static function initTooltip()
522 {
523 global $DIC;
524
525 $tpl = $DIC["tpl"];
526
528 $tpl->addJavaScript(self::YUI_BASE . "/yahoo-dom-event/yahoo-dom-event.js");
529 $tpl->addJavaScript(self::YUI_BASE . "/animation/animation-min.js");
530 $tpl->addJavaScript(self::YUI_BASE . "/container/container-min.js");
531 }
532
533
537 public static function initCookie()
538 {
542 global $DIC;
543
544 $tpl = $DIC["tpl"];
545 $tpl->addJavaScript(self::YUI_BASE . "/yahoo/yahoo-min.js", 1);
546 $tpl->addJavaScript(self::YUI_BASE . "/cookie/cookie.js", 1);
547 }
548
549
553 public static function getLocalPath($a_name = "")
554 {
555 return self::YUI_BASE . "/" . $a_name;
556 }
557
558
562 protected static function addContainerCss(ilGlobalTemplateInterface $a_main_tpl = null)
563 {
564 global $DIC;
565
566 if ($a_main_tpl == null) {
567 $tpl = $DIC["tpl"];
568 } else {
569 $tpl = $a_main_tpl;
570 }
571
572 $tpl->addCss(self::getLocalPath("container/assets/skins/sam/container.css"));
573 }
574}
An exception for terminatinating execution or to throw for unit testing.
special template class to simplify handling of ITX/PEAR
Yahoo YUI Library Utility functions.
static initColorPicker()
init color picker button
static initDom(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Dom.
static initTabView()
Init YUI TabView component.
static initAssessmentWizard()
Init assessment wizard.
static initElementSelection()
init element selection
static initLayout()
Init layout (alpha!)
static initCalendar()
init calendar
static addContainerCss(ilGlobalTemplateInterface $a_main_tpl=null)
Add container css.
static initDragDropAnimation()
init drag & drop and animation
static initDragDropList()
init drag & drop list
static initDomEvent(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI DomEvent.
static getDragDropList($id_source, $title_source, $source, $id_dest, $title_dest, $dest)
get a drag & drop list
static initConnection(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Connection module.
static initTreeView()
Init treeView.
static addYesNoDialog($dialogname, $headertext, $message, $yesaction, $noaction, $defaultyes, $icon="help")
static initTooltip()
Init YUI Event.
static initPanel($a_resize=false, ilGlobalTemplateInterface $a_main_tpl=null)
Init yui panel.
static initOverlay(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Overlay module.
static initDragDrop(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Drag and Drop.
static initEvent(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Event.
static getLocalPath($a_name="")
Get local path of a YUI js file.
static initMenu()
Init YUI Menu module.
static initButtonControl()
init button control In the moment used for calendar color picker button
static initAnimation(ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Animation.
static initJson()
Init YUI JSON component.
static initSimpleDialog()
Init YUI Simple Dialog.
static initConnectionWithAnimation()
Init YUI Connection module.
if($format !==null) $name
Definition: metadata.php:230
$source
Definition: metadata.php:76
$lng
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
$message
Definition: xapiexit.php:14
$DIC
Definition: xapitoken.php:46