grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026. -------------------------------------------------------------------------- */ /** @file * @brief */ if (!defined('GLPI_ROOT')) { die("Sorry. You can't access this file directly"); } /** * NotificationTargetSoftwareLicense Class **/ class NotificationTargetSoftwareLicense extends NotificationTarget { function getEvents() { return array('alert' => __('Alarms on expired licenses')); } /** * Get all data needed for template processing * * @param $event * @param $options array **/ function getDatasForTemplate($event, $options=array()) { $events = $this->getAllEvents(); $this->datas['##license.action##'] = $events[$event]; $this->datas['##license.entity##'] = Dropdown::getDropdownName('glpi_entities', $options['entities_id']); foreach ($options['licenses'] as $id => $license) { $tmp = array(); $tmp['##license.item##'] = $license['softname']; $tmp['##license.name##'] = $license['name']; $tmp['##license.serial##'] = $license['serial']; $tmp['##license.expirationdate##'] = Html::convDate($license["expire"]); $tmp['##license.url##'] = $this->formatURL($options['additionnaloption']['usertype'], "SoftwareLicense_".$id); $this->datas['licenses'][] = $tmp; } $this->getTags(); foreach ($this->tag_descriptions[NotificationTarget::TAG_LANGUAGE] as $tag => $values) { if (!isset($this->datas[$tag])) { $this->datas[$tag] = $values['label']; } } } function getTags() { $tags = array('license.expirationdate' => __('Expiration date'), 'license.item' => _n('Software', 'Software', 1), 'license.name' => __('Name'), 'license.serial' => __('Serial number'), 'license.entity' => __('Entity'), 'license.url' => __('URL'), 'license.action' => _n('Event', 'Events', 1)); foreach ($tags as $tag => $label) { $this->addTagToList(array('tag' => $tag, 'label' => $label, 'value' => true)); } $this->addTagToList(array('tag' => 'licenses', 'label' => __('Device list'), 'value' => false, 'foreach' => true)); asort($this->tag_descriptions); } } ?>