/**
  * @return array
  */
 public function getSettings()
 {
     if (is_null($this->settings)) {
         $this->settings = srCertificateDefinitionSetting::where(array('definition_id' => $this->getId()))->get();
     }
     return $this->settings;
 }
Example #2
0
    <?php 
require_once './Customizing/global/plugins/Services/UIComponent/UserInterfaceHook/Certificate/classes/Signature/class.srCertificateSignature.php';
srCertificateSignature::installDB();
?>
<#15>
    <?php 
// Removed creation  of srCertificateSignatureDefinition
?>
<#16>
    <?php 
require_once './Customizing/global/plugins/Services/UIComponent/UserInterfaceHook/Certificate/classes/Definition/class.srCertificateDefinition.php';
require_once './Customizing/global/plugins/Services/UIComponent/UserInterfaceHook/Certificate/classes/Definition/class.srCertificateDefinitionSetting.php';
require_once './Customizing/global/plugins/Services/UIComponent/UserInterfaceHook/Certificate/classes/Type/class.srCertificateTypeSetting.php';
require_once './Customizing/global/plugins/Services/UIComponent/UserInterfaceHook/Certificate/classes/Type/class.srCertificateType.php';
foreach (srCertificateDefinition::get() as $cert_def) {
    $setting = new srCertificateDefinitionSetting();
    $setting->setDefinitionId($cert_def->getId());
    $setting->setIdentifier(srCertificateTypeSetting::IDENTIFIER_SCORM_TIMING);
    $setting->setValue(0);
    $setting->save();
}
foreach (srCertificateType::get() as $type) {
    $setting = new srCertificateTypeSetting();
    $setting->setTypeId($type->getId());
    $setting->setIdentifier(srCertificateTypeSetting::IDENTIFIER_SCORM_TIMING);
    $setting->setEditableIn(array('crs'));
    $setting->setValue(0);
    $setting->save();
}
?>
<#17>
 /**
  * Build ValidityInput
  *
  * @param srCertificateDefinitionSetting $setting
  * @return ilRadioGroupInputGUI
  */
 protected function getValidityInput(srCertificateDefinitionSetting $setting)
 {
     $validity_value = $this->definition->getValidity();
     // Always
     $input = new ilRadioGroupInputGUI($this->pl->txt('setting_id_validity'), $setting->getIdentifier());
     $input->setRequired(true);
     $option = new ilRadioOption($this->pl->txt('always'), srCertificateTypeSetting::VALIDITY_TYPE_ALWAYS);
     $input->addOption($option);
     // Date range
     $option = new ilRadioOption($this->pl->txt('setting_validity_range'), srCertificateTypeSetting::VALIDITY_TYPE_DATE_RANGE);
     $subitem = new ilDurationInputGUI($this->pl->txt('date_range'), $setting->getIdentifier() . '_' . srCertificateTypeSetting::VALIDITY_TYPE_DATE_RANGE);
     $subitem->setShowMinutes(false);
     $subitem->setShowHours(false);
     $subitem->setShowDays(true);
     $subitem->setShowMonths(true);
     if ($setting->getValue() == srCertificateTypeSetting::VALIDITY_TYPE_DATE_RANGE && $validity_value) {
         $range_array = json_decode($validity_value, true);
         $data = array();
         $data[$subitem->getPostVar()]['MM'] = $range_array['m'];
         $data[$subitem->getPostVar()]['dd'] = $range_array['d'];
         $subitem->setValueByArray($data);
     }
     $option->addSubItem($subitem);
     $input->addOption($option);
     // Date
     $option = new ilRadioOption($this->pl->txt('setting_validity_date'), srCertificateTypeSetting::VALIDITY_TYPE_DATE);
     $subitem = new ilDateTimeInputGUI($this->pl->txt('date'), $setting->getIdentifier() . '_' . srCertificateTypeSetting::VALIDITY_TYPE_DATE);
     $subitem->setMode(ilDateTimeInputGUI::MODE_INPUT);
     if ($setting->getValue() == srCertificateTypeSetting::VALIDITY_TYPE_DATE && $validity_value) {
         $subitem->setDate(new ilDateTime($validity_value, IL_CAL_DATE));
     }
     $option->addSubItem($subitem);
     $input->addOption($option);
     $subitem->setDisabled(!$setting->isEditable());
     // SW This seems to have no effect...
     return $input;
 }