/**
  * Show the license list
  * @access public
  */
 function showLicenses()
 {
     include_once './Services/Table/classes/class.ilTableGUI.php';
     if ($this->mode == LIC_MODE_ADMINISTRATION) {
         $objects = ilLicense::_getLicensedObjects();
     } else {
         $objects = ilLicense::_getLicensedChildObjects($this->parent_gui->object->getRefId());
     }
     $this->tpl->addBlockfile('ADM_CONTENT', 'adm_content', 'tpl.lic_show_licenses.html', "Services/License");
     foreach ($objects as $data) {
         $license =& new ilLicense($data["obj_id"]);
         $licenses = strval($license->getLicenses());
         $remarks = $license->getRemarks();
         $used_licenses = strval($license->getAccesses());
         $remaining_licenses = $licenses == "0" ? $this->lng->txt("arbitrary") : strval($license->getRemainingLicenses());
         $potential_accesses = strval($license->getPotentialAccesses());
         $this->tpl->setCurrentBlock("table_row");
         $this->tpl->setVariable("TITLE", $this->getItemHTML($data));
         $this->tpl->setVariable("REMARKS", $remarks);
         $this->tpl->setVariable("LICENSES", $licenses);
         $this->tpl->setVariable("USED_LICENSES", $used_licenses);
         $this->tpl->setVariable("REMAINING_LICENSES", $remaining_licenses);
         $this->tpl->setVariable("POTENTIAL_ACCESSES", $potential_accesses);
         $this->tpl->parseCurrentBlock();
     }
     $this->tpl->setVariable("TXT_TITLE", $this->lng->txt("title"));
     $this->tpl->setVariable("TXT_REMARKS", $this->lng->txt("comment"));
     $this->tpl->setVariable("TXT_EXISTING_LICENSES", $this->lng->txt("existing_licenses"));
     $this->tpl->setVariable("TXT_USED_LICENSES", $this->lng->txt("used_licenses"));
     $this->tpl->setVariable("TXT_REMAINING_LICENSES", $this->lng->txt("remaining_licenses"));
     $this->tpl->setVariable("TXT_POTENTIAL_ACCESSES", $this->lng->txt("potential_accesses"));
     $this->tpl->setVariable("TXT_USED_LICENSES_EXPLANATION", $this->lng->txt("used_licenses_explanation"));
     $this->tpl->setVariable("TXT_REMAINING_LICENSES_EXPLANATION", $this->lng->txt("remaining_licenses_explanation"));
     $this->tpl->setVariable("TXT_POTENTIAL_ACCESSES_EXPLANATION", $this->lng->txt("potential_accesses_explanation"));
 }
 protected function getItems($a_mode, ilObjectGUI $a_parent_gui)
 {
     $data = array();
     if ($a_mode == ilLicenseOverviewGUI::LIC_MODE_ADMINISTRATION) {
         $objects = ilLicense::_getLicensedObjects();
     } else {
         $objects = ilLicense::_getLicensedChildObjects($a_parent_gui->object->getRefId());
     }
     foreach ($objects as $item) {
         $license = new ilLicense($item["obj_id"]);
         $remaining_licenses = $license->getLicenses() == "0" ? $this->lng->txt("arbitrary") : $license->getRemainingLicenses();
         $data[] = array("title" => $item["title"], "comment" => nl2br(trim($license->getRemarks())), "existing" => $license->getLicenses(), "used" => $license->getAccesses(), "remaining" => $remaining_licenses, "potential" => $license->getPotentialAccesses(), "listGUI" => $this->getItemHTML($item));
     }
     $this->setData($data);
 }
예제 #3
0
 /**
  * Check the remaining licenses of course objects and generate a message if raare
  *
  * @access private
  *
  */
 private function checkLicenses($a_keep = false)
 {
     global $lng;
     include_once "Services/License/classes/class.ilLicenseAccess.php";
     if (ilLicenseAccess::_isEnabled()) {
         $lic_set = new ilSetting("license");
         $buffer = $lic_set->get("license_warning");
         include_once "./Services/License/classes/class.ilLicense.php";
         $licensed_items = ilLicense::_getLicensedChildObjects($this->object->getRefId());
         foreach ($licensed_items as $item) {
             $license =& new ilLicense($item['obj_id']);
             $remaining = $license->getRemainingLicenses();
             if ($remaining <= $buffer) {
                 $lng->loadlanguageModule("license");
                 ilUtil::sendInfo(sprintf($this->lng->txt("course_licenses_rare"), $remaining), $a_keep);
                 break;
             }
         }
     }
 }