ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilCertificateAdapter Class Reference

Adapter class to provide certificate data for the certificate generator. More...

+ Inheritance diagram for ilCertificateAdapter:
+ Collaboration diagram for ilCertificateAdapter:

Public Member Functions

 __construct ()
 ilCertificateAdapter constructor. More...
 
 getCertificatePath ()
 Returns the certificate path (with a trailing path separator) More...
 
 getCertificateVariablesForPreview ()
 Returns an array containing all variables and values which can be exchanged in the certificate. More...
 
 getCertificateVariablesForPresentation ($params=array())
 Returns an array containing all variables and values which can be exchanged in the certificate The values should be calculated from real data. More...
 
 getCertificateVariablesDescription ()
 Returns a description of the available certificate parameters. More...
 
 getAdapterType ()
 Returns the adapter type This value will be used to generate file names for the certificates. More...
 
 getCertificateID ()
 Returns a certificate ID This value will be used to generate unique file names for the certificates. More...
 
 addAdditionalFormElements (&$form, $form_fields)
 Allows to add additional form fields to the certificate editor form This method will be called when the certificate editor form will built using the ilPropertyFormGUI class. More...
 
 hasAdditionalFormElements ()
 
 addFormFieldsFromPOST (&$form_fields)
 Allows to add additional form values to the array of form values evaluating a HTTP POST action. More...
 
 addFormFieldsFromObject (&$form_fields)
 Allows to add additional form values to the array of form values evaluating the associated adapter class if one exists This method will be called when the certificate editor form will be shown and the content of the form has to be retrieved from wherever the form values are saved. More...
 
 saveFormFields (&$form_fields)
 Allows to save additional adapter form fields This method will be called when the certificate editor form is complete and the form values will be saved. More...
 
 deleteCertificate ()
 Is called when the certificate is deleted Add some adapter specific code if more work has to be done when the certificate file was deleted. More...
 
 getCertificateFilename ($params=array())
 Set the name of the certificate file This method will be called when the certificate will be generated. More...
 
 getUserIdForParams ($a_params)
 Get user id for params. More...
 

Protected Member Functions

 getBaseVariablesDescription ($a_enable_last_access=true, $a_enable_completion_date=true)
 Get variable descriptions. More...
 
 getBaseVariablesForPreview ($a_enable_last_access=true, $a_enable_completion_date=true)
 Get variable dummys. More...
 
 getBaseVariablesForPresentation ($a_user_data, $a_last_access=null, $a_completion_date=false)
 Get variable values. More...
 
 getUserCompletionDate ($a_user_id, $a_object_id=null)
 Get completion for user. More...
 

Protected Attributes

 $lng
 

Detailed Description

Adapter class to provide certificate data for the certificate generator.

Author
Helmut Schottmüller helmu.nosp@m.t.sc.nosp@m.hottm.nosp@m.uell.nosp@m.er@ma.nosp@m.c.co.nosp@m.m
Version
$Id$

Definition at line 12 of file class.ilCertificateAdapter.php.

Constructor & Destructor Documentation

◆ __construct()

ilCertificateAdapter::__construct ( )

ilCertificateAdapter constructor.

Definition at line 22 of file class.ilCertificateAdapter.php.

References $DIC, PHPMailer\PHPMailer\$params, getAdapterType(), getCertificateID(), getCertificatePath(), getCertificateVariablesDescription(), getCertificateVariablesForPresentation(), and getCertificateVariablesForPreview().

23  {
24  global $DIC;
25 
26  $this->lng = $DIC['lng'];
27  $this->lng->loadLanguageModule('certificate');
28  }
global $DIC
Definition: saml.php:7
+ Here is the call graph for this function:

Member Function Documentation

◆ addAdditionalFormElements()

ilCertificateAdapter::addAdditionalFormElements ( $form,
  $form_fields 
)

Allows to add additional form fields to the certificate editor form This method will be called when the certificate editor form will built using the ilPropertyFormGUI class.

Additional fields will be added at the bottom of the form.

Parameters
object$formAn ilPropertyFormGUI instance
array$form_fieldsAn array containing the form values. The array keys are the names of the form fields

Definition at line 88 of file class.ilCertificateAdapter.php.

89  {
90  }

◆ addFormFieldsFromObject()

ilCertificateAdapter::addFormFieldsFromObject ( $form_fields)

Allows to add additional form values to the array of form values evaluating the associated adapter class if one exists This method will be called when the certificate editor form will be shown and the content of the form has to be retrieved from wherever the form values are saved.

Parameters
array$form_fieldsA reference to the array of form values

Definition at line 120 of file class.ilCertificateAdapter.php.

121  {
122  }

◆ addFormFieldsFromPOST()

ilCertificateAdapter::addFormFieldsFromPOST ( $form_fields)

Allows to add additional form values to the array of form values evaluating a HTTP POST action.

This method will be called when the certificate editor form will be saved using the form save button.

Parameters
array$form_fieldsA reference to the array of form values

Definition at line 108 of file class.ilCertificateAdapter.php.

109  {
110  }

◆ deleteCertificate()

ilCertificateAdapter::deleteCertificate ( )

Is called when the certificate is deleted Add some adapter specific code if more work has to be done when the certificate file was deleted.

Definition at line 140 of file class.ilCertificateAdapter.php.

141  {
142  }

◆ getAdapterType()

ilCertificateAdapter::getAdapterType ( )
abstract

Returns the adapter type This value will be used to generate file names for the certificates.

Returns
string A string value to represent the adapter type

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getBaseVariablesDescription()

ilCertificateAdapter::getBaseVariablesDescription (   $a_enable_last_access = true,
  $a_enable_completion_date = true 
)
protected

Get variable descriptions.

Parameters
bool$a_enable_last_access
bool$a_enable_completion_date
Returns
array

Definition at line 164 of file class.ilCertificateAdapter.php.

Referenced by ilCourseCertificateAdapter\getCertificateVariablesDescription(), ilExerciseCertificateAdapter\getCertificateVariablesDescription(), ilSkillCertificateAdapter\getCertificateVariablesDescription(), ilTestCertificateAdapter\getCertificateVariablesDescription(), and ilSCORMCertificateAdapter\getCertificateVariablesDescription().

165  {
166  $vars = array(
167  "USER_LOGIN" => $this->lng->txt("certificate_ph_login"),
168  "USER_FULLNAME" => $this->lng->txt("certificate_ph_fullname"),
169  "USER_FIRSTNAME" => $this->lng->txt("certificate_ph_firstname"),
170  "USER_LASTNAME" => $this->lng->txt("certificate_ph_lastname"),
171  "USER_TITLE" => $this->lng->txt("certificate_ph_title"),
172  "USER_SALUTATION" => $this->lng->txt("certificate_ph_salutation"),
173  "USER_BIRTHDAY" => $this->lng->txt("certificate_ph_birthday"),
174  "USER_INSTITUTION" => $this->lng->txt("certificate_ph_institution"),
175  "USER_DEPARTMENT" => $this->lng->txt("certificate_ph_department"),
176  "USER_STREET" => $this->lng->txt("certificate_ph_street"),
177  "USER_CITY" => $this->lng->txt("certificate_ph_city"),
178  "USER_ZIPCODE" => $this->lng->txt("certificate_ph_zipcode"),
179  "USER_COUNTRY" => $this->lng->txt("certificate_ph_country"),
180  "USER_MATRICULATION" => $this->lng->txt("certificate_ph_matriculation")
181  );
182 
183  if ($a_enable_last_access) {
184  $vars["USER_LASTACCESS"] = $this->lng->txt("certificate_ph_lastaccess");
185  }
186 
187  $vars["DATE"] = $this->lng->txt("certificate_ph_date");
188  $vars["DATETIME"] = $this->lng->txt("certificate_ph_datetime");
189 
190  if ($a_enable_completion_date) {
191  $vars["DATE_COMPLETED"] = $this->lng->txt("certificate_ph_date_completed");
192  $vars["DATETIME_COMPLETED"] = $this->lng->txt("certificate_ph_datetime_completed");
193  }
194 
195  return $vars;
196  }
+ Here is the caller graph for this function:

◆ getBaseVariablesForPresentation()

ilCertificateAdapter::getBaseVariablesForPresentation (   $a_user_data,
  $a_last_access = null,
  $a_completion_date = false 
)
protected

Get variable values.

Parameters
array$a_user_data
datetime$a_last_access
datetime$a_completion_date
Returns
array

Definition at line 253 of file class.ilCertificateAdapter.php.

References ilDatePresentation\formatDate(), IL_CAL_DATE, IL_CAL_DATETIME, IL_CAL_UNIX, ilUtil\prepareFormOutput(), ilDatePresentation\setUseRelativeDates(), and ilDatePresentation\useRelativeDates().

Referenced by ilTestCertificateAdapter\getCertificateVariablesForPresentation(), ilSkillCertificateAdapter\getCertificateVariablesForPresentation(), ilExerciseCertificateAdapter\getCertificateVariablesForPresentation(), ilCourseCertificateAdapter\getCertificateVariablesForPresentation(), and ilSCORMCertificateAdapter\getCertificateVariablesForPresentation().

254  {
257 
258  $salutation = '';
259  $gender = $a_user_data['gender'];
260  if (is_string($gender) && strlen(trim($gender)) > 0 && strtolower($gender) !== 'n') {
261  $salutation = $this->lng->txt("salutation_" . $gender);
262  }
263 
264  $birthday = "";
265  if ($a_user_data["birthday"]) {
266  $birthday = ilDatePresentation::formatDate(new ilDate($a_user_data["birthday"], IL_CAL_DATE));
267  }
268 
269  $country = $a_user_data["sel_country"];
270  if ($country) {
271  $this->lng->loadLanguageModule("meta");
272  $country = $this->lng->txt("meta_c_" . $country);
273  } else {
274  $country = $a_user_data["country"];
275  }
276 
277  $vars = array(
278  "USER_LOGIN" => ilUtil::prepareFormOutput(trim($a_user_data["login"])),
279  "USER_FULLNAME" => ilUtil::prepareFormOutput(trim($a_user_data["title"] . " " . $a_user_data["firstname"] . " " . $a_user_data["lastname"])),
280  "USER_FIRSTNAME" => ilUtil::prepareFormOutput($a_user_data["firstname"]),
281  "USER_LASTNAME" => ilUtil::prepareFormOutput($a_user_data["lastname"]),
282  "USER_TITLE" => ilUtil::prepareFormOutput($a_user_data["title"]),
283  "USER_SALUTATION" => ilUtil::prepareFormOutput($salutation),
284  "USER_BIRTHDAY" => ilUtil::prepareFormOutput($birthday),
285  "USER_INSTITUTION" => ilUtil::prepareFormOutput($a_user_data["institution"]),
286  "USER_DEPARTMENT" => ilUtil::prepareFormOutput($a_user_data["department"]),
287  "USER_STREET" => ilUtil::prepareFormOutput($a_user_data["street"]),
288  "USER_CITY" => ilUtil::prepareFormOutput($a_user_data["city"]),
289  "USER_ZIPCODE" => ilUtil::prepareFormOutput($a_user_data["zipcode"]),
290  "USER_COUNTRY" => ilUtil::prepareFormOutput($country),
291  "USER_MATRICULATION" => ilUtil::prepareFormOutput($a_user_data["matriculation"])
292  );
293 
294  if ($a_last_access) {
295  $vars["USER_LASTACCESS"] = ilDatePresentation::formatDate(new ilDateTime($a_last_access, IL_CAL_DATETIME));
296  }
297 
298  $vars["DATE"] = ilDatePresentation::formatDate(new ilDate(time(), IL_CAL_UNIX));
299  $vars["DATETIME"] = ilDatePresentation::formatDate(new ilDateTime(time(), IL_CAL_UNIX));
300 
301 
302  if ($a_completion_date) {
303  $vars["DATE_COMPLETED"] = ilDatePresentation::formatDate(new ilDate($a_completion_date, IL_CAL_DATETIME));
304 
305  $dateTime = new ilDateTime($a_completion_date, IL_CAL_DATETIME);
306  $vars["DATETIME_COMPLETED"] = ilDatePresentation::formatDate($dateTime);
307  $vars["DATETIME_COMPLETED_UNIX"] = $dateTime->get(IL_CAL_UNIX);
308  }
309 
311 
312  return $vars;
313  }
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
const IL_CAL_DATETIME
static setUseRelativeDates($a_status)
set use relative dates
const IL_CAL_UNIX
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date public.
static useRelativeDates()
check if relative dates are used
Class for single dates.
Date and time handling
const IL_CAL_DATE
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getBaseVariablesForPreview()

ilCertificateAdapter::getBaseVariablesForPreview (   $a_enable_last_access = true,
  $a_enable_completion_date = true 
)
protected

Get variable dummys.

Parameters
bool$a_enable_last_access
bool$a_enable_completion_date
Returns
array

Definition at line 205 of file class.ilCertificateAdapter.php.

References ilDatePresentation\formatDate(), IL_CAL_DATE, IL_CAL_UNIX, ilUtil\prepareFormOutput(), ilDatePresentation\setUseRelativeDates(), and ilDatePresentation\useRelativeDates().

Referenced by ilTestCertificateAdapter\getCertificateVariablesForPreview(), ilSkillCertificateAdapter\getCertificateVariablesForPreview(), ilExerciseCertificateAdapter\getCertificateVariablesForPreview(), ilSCORMCertificateAdapter\getCertificateVariablesForPreview(), and ilCourseCertificateAdapter\getCertificateVariablesForPreview().

206  {
209 
210  $vars = array(
211  "USER_LOGIN" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_login")),
212  "USER_FULLNAME" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_fullname")),
213  "USER_FIRSTNAME" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_firstname")),
214  "USER_LASTNAME" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_lastname")),
215  "USER_TITLE" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_title")),
216  "USER_SALUTATION" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_salutation")),
217  "USER_BIRTHDAY" => ilDatePresentation::formatDate(new ilDate($this->lng->txt("certificate_var_user_birthday"), IL_CAL_DATE)),
218  "USER_INSTITUTION" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_institution")),
219  "USER_DEPARTMENT" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_department")),
220  "USER_STREET" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_street")),
221  "USER_CITY" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_city")),
222  "USER_ZIPCODE" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_zipcode")),
223  "USER_COUNTRY" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_country")),
224  "USER_MATRICULATION" => ilUtil::prepareFormOutput($this->lng->txt("certificate_var_user_matriculation"))
225  );
226 
227  if ($a_enable_last_access) {
228  $vars["USER_LASTACCESS"] = ilDatePresentation::formatDate(new ilDateTime(time() - (24 * 60 * 60 * 5), IL_CAL_UNIX));
229  };
230 
231  $vars["DATE"] = ilDatePresentation::formatDate(new ilDate(time(), IL_CAL_UNIX));
232  $vars["DATETIME"] = ilDatePresentation::formatDate(new ilDateTime(time(), IL_CAL_UNIX));
233 
234  if ($a_enable_completion_date) {
235  $vars["DATE_COMPLETED"] = ilDatePresentation::formatDate(new ilDate(time() - (24 * 60 * 60 * 5), IL_CAL_UNIX));
236  $vars["DATETIME_COMPLETED"] = ilDatePresentation::formatDate(new ilDateTime(time() - (24 * 60 * 60 * 5), IL_CAL_UNIX));
237  }
238 
240 
241  return $vars;
242  }
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
static setUseRelativeDates($a_status)
set use relative dates
const IL_CAL_UNIX
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date public.
static useRelativeDates()
check if relative dates are used
Class for single dates.
Date and time handling
const IL_CAL_DATE
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getCertificateFilename()

ilCertificateAdapter::getCertificateFilename (   $params = array())

Set the name of the certificate file This method will be called when the certificate will be generated.

Returns
string The certificate file name

Definition at line 150 of file class.ilCertificateAdapter.php.

151  {
152  $this->lng->loadLanguageModule("certificate");
153 
154  return $this->lng->txt("certificate_file_basename") . ".pdf";
155  }

◆ getCertificateID()

ilCertificateAdapter::getCertificateID ( )
abstract

Returns a certificate ID This value will be used to generate unique file names for the certificates.

Returns
mixed A unique ID which represents a certificate

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getCertificatePath()

ilCertificateAdapter::getCertificatePath ( )
abstract

Returns the certificate path (with a trailing path separator)

Returns
string The certificate path

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getCertificateVariablesDescription()

ilCertificateAdapter::getCertificateVariablesDescription ( )
abstract

Returns a description of the available certificate parameters.

The description will be shown at the bottom of the certificate editor text area.

Returns
string The certificate parameters description

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getCertificateVariablesForPresentation()

ilCertificateAdapter::getCertificateVariablesForPresentation (   $params = array())
abstract

Returns an array containing all variables and values which can be exchanged in the certificate The values should be calculated from real data.

The $params parameter array should contain all necessary information to calculate the values.

Parameters
array$paramsAn array of parameters to calculate the certificate parameter values
Returns
array The certificate variables

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getCertificateVariablesForPreview()

ilCertificateAdapter::getCertificateVariablesForPreview ( )
abstract

Returns an array containing all variables and values which can be exchanged in the certificate.

The values will be taken for the certificate preview.

Returns
array The certificate variables

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getUserCompletionDate()

ilCertificateAdapter::getUserCompletionDate (   $a_user_id,
  $a_object_id = null 
)
protected

Get completion for user.

Parameters
int$a_user_id
int$a_object_id
Returns
string datetime

Definition at line 322 of file class.ilCertificateAdapter.php.

References ilLPStatus\_lookupStatusChanged().

Referenced by ilTestCertificateAdapter\getCertificateVariablesForPresentation(), ilExerciseCertificateAdapter\getCertificateVariablesForPresentation(), and ilSCORMCertificateAdapter\getCertificateVariablesForPresentation().

323  {
324  if (!$a_object_id) {
325  $a_object_id = $this->object->getId();
326  }
327  include_once "Services/Tracking/classes/class.ilLPStatus.php";
328  return ilLPStatus::_lookupStatusChanged($a_object_id, $a_user_id);
329  }
static _lookupStatusChanged($a_obj_id, $a_user_id)
Lookup status changed.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getUserIdForParams()

ilCertificateAdapter::getUserIdForParams (   $a_params)

Get user id for params.

Parameters

Definition at line 337 of file class.ilCertificateAdapter.php.

338  {
339  return $a_params["user_id"];
340  }

◆ hasAdditionalFormElements()

ilCertificateAdapter::hasAdditionalFormElements ( )
Returns
bool

Definition at line 95 of file class.ilCertificateAdapter.php.

96  {
97  return false;
98  }

◆ saveFormFields()

ilCertificateAdapter::saveFormFields ( $form_fields)

Allows to save additional adapter form fields This method will be called when the certificate editor form is complete and the form values will be saved.

Parameters
array$form_fieldsA reference to the array of form values

Definition at line 131 of file class.ilCertificateAdapter.php.

132  {
133  }

Field Documentation

◆ $lng

ilCertificateAdapter::$lng
protected

Definition at line 17 of file class.ilCertificateAdapter.php.


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