ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ilBadgeRenderer Class Reference

Class ilBadgeRenderer. More...

+ Collaboration diagram for ilBadgeRenderer:

Public Member Functions

 __construct (ilBadgeAssignment $a_assignment=null, ilBadge $a_badge=null)
 
 getHTML ()
 
 renderModalContent ()
 

Protected Attributes

 $lng
 
 $factory
 
 $renderer
 
 $assignment
 
 $badge
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilBadgeRenderer::__construct ( ilBadgeAssignment  $a_assignment = null,
ilBadge  $a_badge = null 
)

Definition at line 30 of file class.ilBadgeRenderer.php.

References $DIC.

31  {
32  global $DIC;
33 
34  $this->lng = $DIC->language();
35  $this->factory = $DIC->ui()->factory();
36  $this->renderer = $DIC->ui()->renderer();
37  if ($a_assignment) {
38  $this->assignment = $a_assignment;
39  $this->badge = new ilBadge($this->assignment->getBadgeId());
40  } else {
41  $this->badge = $a_badge;
42  }
43  }
Class ilBadge.
$DIC
Definition: xapitoken.php:46

Member Function Documentation

◆ getHTML()

ilBadgeRenderer::getHTML ( )

Definition at line 45 of file class.ilBadgeRenderer.php.

References renderModalContent(), and ilWACSignedPath\signFile().

46  {
47  $components = array();
48 
49  $modal = $this->factory->modal()->roundtrip(
50  $this->badge->getTitle(),
51  $this->factory->legacy($this->renderModalContent())
52  )->withCancelButtonLabel("ok");
53  $components[] = $modal;
54 
55  $image_path = ilWACSignedPath::signFile($this->badge->getImagePath());
56  $image = $this->factory->image()->responsive($image_path, $this->badge->getTitle())
57  ->withAction($modal->getShowSignal());
58  $components[] = $image;
59 
60  return $this->renderer->render($components);
61  }
static signFile($path_to_file)
+ Here is the call graph for this function:

◆ renderModalContent()

ilBadgeRenderer::renderModalContent ( )

Definition at line 63 of file class.ilBadgeRenderer.php.

References $lng, ilDatePresentation\formatDate(), and IL_CAL_UNIX.

Referenced by getHTML().

64  {
65  $lng = $this->lng;
66  $lng->loadLanguageModule("badge");
67 
68  $modal_content = array();
69 
70  $image = $this->factory->image()->responsive($this->badge->getImagePath(), $this->badge->getImage());
71  $modal_content[] = $image;
72 
73  $badge_information = [
74  $lng->txt("description") => $this->badge->getDescription(),
75  $lng->txt("badge_criteria") => $this->badge->getCriteria(),
76  ];
77 
78  if ($this->assignment) {
79  $badge_information[$lng->txt("badge_issued_on")] = ilDatePresentation::formatDate(
80  new ilDateTime($this->assignment->getTimestamp(), IL_CAL_UNIX)
81  );
82  }
83 
84  if ($this->badge->getParentId()) {
85  $parent = $this->badge->getParentMeta();
86  if ($parent["type"] != "bdga") {
87  $parent_icon = $this->factory->symbol()->icon()->custom(
88  ilObject::_getIcon($parent["id"], "big", $parent["type"]),
89  $lng->txt("obj_" . $parent["type"])
90  )->withSize("medium");
91 
92  $parent_icon_with_text = $this->factory->legacy($this->renderer->render($parent_icon) . $parent["title"]);
93  $badge_information[$lng->txt("object")] = $parent_icon_with_text;
94  }
95  }
96 
97  if ($this->badge->getValid()) {
98  $badge_information[$lng->txt("badge_valid")] = $this->badge->getValid();
99  }
100 
101  $list = $this->factory->listing()->descriptive($badge_information);
102  $modal_content[] = $list;
103 
104  return $this->renderer->render($modal_content);
105  }
const IL_CAL_UNIX
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date public.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $assignment

ilBadgeRenderer::$assignment
protected

Definition at line 27 of file class.ilBadgeRenderer.php.

◆ $badge

ilBadgeRenderer::$badge
protected

Definition at line 28 of file class.ilBadgeRenderer.php.

◆ $factory

ilBadgeRenderer::$factory
protected

Definition at line 20 of file class.ilBadgeRenderer.php.

◆ $lng

ilBadgeRenderer::$lng
protected

Definition at line 15 of file class.ilBadgeRenderer.php.

Referenced by renderModalContent().

◆ $renderer

ilBadgeRenderer::$renderer
protected

Definition at line 25 of file class.ilBadgeRenderer.php.


The documentation for this class was generated from the following file: