- Author
- Niels Theen nthee.nosp@m.n@da.nosp@m.tabay.nosp@m..de
Repository that allows interaction with the database in the context of certificate templates.
Definition at line 10 of file class.ilCertificateTemplateRepository.php.
◆ __construct()
◆ createCertificateTemplate()
ilCertificateTemplateRepository::createCertificateTemplate |
( |
array |
$row | ) |
|
|
private |
- Parameters
-
- Returns
- ilCertificateTemplate
Definition at line 377 of file class.ilCertificateTemplateRepository.php.
Referenced by fetchActiveTemplatesByType(), fetchCertificateTemplatesByObjId(), fetchCurrentlyActiveCertificate(), fetchCurrentlyUsedCertificate(), fetchFirstCreatedTemplate(), and fetchTemplate().
382 $row[
'certificate_content'],
383 $row[
'certificate_hash'],
384 $row[
'template_values'],
386 $row[
'ilias_version'],
387 $row[
'created_timestamp'],
388 (
boolean) $row[
'currently_active'],
389 $row[
'background_image_path'],
390 $row[
'thumbnail_image_path'],
◆ deactivatePreviousTemplates()
ilCertificateTemplateRepository::deactivatePreviousTemplates |
( |
int |
$objId | ) |
|
|
private |
- Parameters
-
- Exceptions
-
Definition at line 359 of file class.ilCertificateTemplateRepository.php.
Referenced by save().
361 $this->logger->info(sprintf(
'START - Deactivate previous certificate template for object: "%s"',
$objId));
364 UPDATE il_cert_template 365 SET currently_active = 0 366 WHERE obj_id = ' . $this->database->quote(
$objId,
'integer');
368 $this->database->manipulate($sql);
370 $this->logger->info(sprintf(
'END - Certificate template deactivated for object: "%s"',
$objId));
◆ deleteTemplate()
ilCertificateTemplateRepository::deleteTemplate |
( |
int |
$templateId, |
|
|
int |
$objectId |
|
) |
| |
- Parameters
-
int | $templateId | |
int | $objectId | |
- Exceptions
-
Definition at line 256 of file class.ilCertificateTemplateRepository.php.
References $objId, and fetchCertificateTemplatesByObjId().
258 $this->logger->info(sprintf(
'START - Set deleted flag for certificate template("%s") for object: "%s"', $templateId, $objectId));
261 UPDATE il_cert_template 262 SET deleted = 1, currently_active = 0 263 WHERE id = ' . $this->database->quote($templateId,
'integer') .
' 264 AND obj_id = ' . $this->database->quote($objectId,
'integer');
266 $this->database->manipulate($sql);
268 $this->logger->info(sprintf(
'END - Deleted flag set fo certificate template("%s") for object: "%s"', $templateId, $objectId));
◆ fetchActiveTemplatesByType()
ilCertificateTemplateRepository::fetchActiveTemplatesByType |
( |
string |
$type | ) |
|
- Parameters
-
- Returns
- ilCertificateTemplate[]
Definition at line 307 of file class.ilCertificateTemplateRepository.php.
References $query, $result, and createCertificateTemplate().
309 $this->logger->info(sprintf(
'START - Fetch all active certificate templates for object type: "%s"',
$type));
312 SELECT il_cert_template.* FROM il_cert_template 313 INNER JOIN object_data od ON od.obj_id = il_cert_template.obj_id 314 WHERE obj_type = ' . $this->database->quote(
$type,
'text') .
' 315 AND currently_active = 1 317 $query = $this->database->query($sql);
320 while ($row = $this->database->fetchAssoc(
$query)) {
324 $this->logger->info(sprintf(
'END - All certificate templates for object type: "%s": "%s"',
$type, json_encode(
$result)));
createCertificateTemplate(array $row)
◆ fetchCertificateTemplatesByObjId()
ilCertificateTemplateRepository::fetchCertificateTemplatesByObjId |
( |
int |
$objId | ) |
|
◆ fetchCurrentlyActiveCertificate()
ilCertificateTemplateRepository::fetchCurrentlyActiveCertificate |
( |
int |
$objId | ) |
|
- Parameters
-
- Returns
- Exceptions
-
Definition at line 190 of file class.ilCertificateTemplateRepository.php.
References $query, and createCertificateTemplate().
192 $this->logger->info(sprintf(
'START - Fetch currently active certificate template for object: "%s"',
$objId));
195 SELECT * FROM il_cert_template 196 WHERE obj_id = ' . $this->database->quote(
$objId,
'integer') .
' 198 AND currently_active = 1 201 $query = $this->database->query($sql);
203 while ($row = $this->database->fetchAssoc(
$query)) {
204 $this->logger->info(sprintf(
'END - Found active certificate for: "%s"',
$objId));
209 throw new ilException((sprintf(
'NO active certificate template found for: "%s"',
$objId)));
createCertificateTemplate(array $row)
◆ fetchCurrentlyUsedCertificate()
ilCertificateTemplateRepository::fetchCurrentlyUsedCertificate |
( |
int |
$objId | ) |
|
- Parameters
-
- Returns
Definition at line 147 of file class.ilCertificateTemplateRepository.php.
References $query, and createCertificateTemplate().
149 $this->logger->info(sprintf(
'START - Fetch currently active certificate template for object: "%s"',
$objId));
151 $this->database->setLimit(1);
154 SELECT * FROM il_cert_template 155 WHERE obj_id = ' . $this->database->quote(
$objId,
'integer') .
' 160 $query = $this->database->query($sql);
162 while ($row = $this->database->fetchAssoc(
$query)) {
163 $this->logger->info(sprintf(
'END - Found active certificate for: "%s"',
$objId));
168 $this->logger->info(sprintf(
'END - Found NO active certificate for: "%s"',
$objId));
172 $this->objectDataCache->lookUpType(
$objId),
createCertificateTemplate(array $row)
◆ fetchFirstCreatedTemplate()
ilCertificateTemplateRepository::fetchFirstCreatedTemplate |
( |
int |
$objId | ) |
|
- Parameters
-
- Returns
- Exceptions
-
Definition at line 334 of file class.ilCertificateTemplateRepository.php.
References $query, and createCertificateTemplate().
336 $this->logger->info(sprintf(
'START - Fetch first create certificate template for object: "%s"',
$objId));
338 $this->database->setLimit(1, 0);
340 $sql =
'SELECT * FROM il_cert_template 341 WHERE obj_id = ' . $this->database->quote(
$objId,
'integer') .
' 344 $query = $this->database->query($sql);
346 while ($row = $this->database->fetchAssoc(
$query)) {
347 $this->logger->info(sprintf(
'END - Found first create certificate template for object: "%s"',
$objId));
352 throw new ilException(
'No matching template found. MAY missing DBUpdate. Please check if the correct version is installed.');
createCertificateTemplate(array $row)
◆ fetchPreviousCertificate()
ilCertificateTemplateRepository::fetchPreviousCertificate |
( |
int |
$objId | ) |
|
Fetch latest created certificate EVEN IF it is deleted.
- Parameters
-
- Returns
Definition at line 218 of file class.ilCertificateTemplateRepository.php.
References fetchCertificateTemplatesByObjId(), and ilCertificateTemplate\getVersion().
220 $this->logger->info(sprintf(
'START - Fetch previous active certificate template for object: "%s"',
$objId));
226 $this->objectDataCache->lookUpType(
$objId),
239 foreach ($templates as $template) {
240 if ($template->getVersion() > $version) {
242 $resultTemplate = $template;
246 $this->logger->info(sprintf(
'Latest version active certificate template for object: "%s"',
$objId));
248 return $resultTemplate;
fetchCertificateTemplatesByObjId(int $objId)
◆ fetchTemplate()
ilCertificateTemplateRepository::fetchTemplate |
( |
int |
$templateId | ) |
|
Definition at line 96 of file class.ilCertificateTemplateRepository.php.
References $query, and createCertificateTemplate().
98 $this->logger->info(sprintf(
'START - Fetch certificate template with id: "%s"', $templateId));
103 WHERE id = ' . $this->database->quote($templateId,
'integer') .
' 104 ORDER BY version ASC';
106 $query = $this->database->query($sql);
108 while ($row = $this->database->fetchAssoc(
$query)) {
112 throw new ilException(sprintf(
'No template with id "%s" found', $templateId));
createCertificateTemplate(array $row)
◆ save()
- Parameters
-
- Exceptions
-
Definition at line 56 of file class.ilCertificateTemplateRepository.php.
References $columns, $objId, deactivatePreviousTemplates(), ilCertificateTemplate\getBackgroundImagePath(), ilCertificateTemplate\getCertificateContent(), ilCertificateTemplate\getCertificateHash(), ilCertificateTemplate\getCreatedTimestamp(), ilCertificateTemplate\getIliasVersion(), ilCertificateTemplate\getObjId(), ilCertificateTemplate\getObjType(), ilCertificateTemplate\getTemplateValues(), ilCertificateTemplate\getThumbnailImagePath(), ilCertificateTemplate\getVersion(), ilCertificateTemplate\isCurrentlyActive(), and ilCertificateTemplate\isDeleted().
58 $this->logger->info(
'START - Save new certificate template');
62 $id = $this->database->nextId(
'il_cert_template');
67 'id' => array(
'integer', $id),
68 'obj_id' => array(
'integer',
$objId),
69 'obj_type' => array(
'text', $certificateTemplate->
getObjType()),
73 'version' => array(
'integer', $certificateTemplate->
getVersion()),
74 'ilias_version' => array(
'text', $certificateTemplate->
getIliasVersion()),
76 'currently_active' => array(
'integer', (integer) $certificateTemplate->
isCurrentlyActive()),
78 'deleted' => array(
'integer', (integer) $certificateTemplate->
isDeleted()),
82 $this->database->insert(
'il_cert_template',
$columns);
84 $this->logger->info(
'END - certificate template saved with columns: ', json_encode(
$columns));
deactivatePreviousTemplates(int $objId)
◆ updateActivity()
ilCertificateTemplateRepository::updateActivity |
( |
ilCertificateTemplate |
$certificateTemplate, |
|
|
bool |
$currentlyActive |
|
) |
| |
◆ $database
ilCertificateTemplateRepository::$database |
|
private |
◆ $logger
ilCertificateTemplateRepository::$logger |
|
private |
◆ $objectDataCache
ilCertificateTemplateRepository::$objectDataCache |
|
private |
The documentation for this class was generated from the following file: