コード例 #1
0
 /**
  * Get icon for repository item.
  *
  * @param	int			object id
  * @param	string		size (big, small, tiny)
  * @param	string		object type
  * @param	boolean		true: offline, false: online
  */
 public static function _getIcon($a_obj_id = "", $a_size = "big", $a_type = "", $a_offline = false)
 {
     global $ilSetting, $objDefinition;
     if ($a_obj_id == "" && $a_type == "") {
         return "";
     }
     if ($a_type == "") {
         $a_type = ilObject::_lookupType($a_obj_id);
     }
     if ($a_size == "") {
         $a_size = "big";
     }
     if ($ilSetting->get("custom_icons") && in_array($a_type, array("cat", "grp", "crs", "root"))) {
         require_once "./Services/Container/classes/class.ilContainer.php";
         if (ilContainer::_lookupContainerSetting($a_obj_id, "icon_" . $a_size)) {
             $cont_dir = ilContainer::_getContainerDirectory($a_obj_id);
             // png version? (introduced with ILIAS 4.3)
             $file_name = $cont_dir . "/icon_" . $a_size . ".png";
             if (is_file($file_name)) {
                 return $file_name;
             }
             // gif version? (prior to ILIAS 4.3)
             $file_name = $cont_dir . "/icon_" . $a_size . ".gif";
             if (is_file($file_name)) {
                 return $file_name;
             }
         }
     }
     switch ($a_size) {
         case "small":
             $suff = "";
             break;
         case "tiny":
             $suff = "_s";
             break;
         default:
             $suff = "_b";
             break;
     }
     if (!$a_offline) {
         if ($objDefinition->isPluginTypeName($a_type)) {
             include_once "./Services/Repository/classes/class.ilRepositoryObjectPlugin.php";
             return ilRepositoryObjectPlugin::_getIcon($a_type, $a_size);
         }
         return ilUtil::getImagePath("icon_" . $a_type . $suff . ".png");
     } else {
         return "./images/icon_" . $a_type . $suff . ".png";
     }
 }
コード例 #2
0
ファイル: class.ilContainer.php プロジェクト: bheyser/qplskl
 /**
  * lookup icon path
  *
  * @param	int		$a_id		container object id
  * @param	string	$a_size		"big" | "small"
  */
 function _lookupIconPath($a_id, $a_size = "big")
 {
     if ($a_size == "") {
         $a_size = "big";
     }
     $size = $a_size;
     if (ilContainer::_lookupContainerSetting($a_id, "icon_custom")) {
         $cont_dir = ilContainer::_getContainerDirectory($a_id);
         $file_name = $cont_dir . "/icon_custom.svg";
         if (is_file($file_name)) {
             return $file_name;
         }
     }
     return "";
 }
コード例 #3
0
ファイル: class.ilObject.php プロジェクト: arlendotcn/ilias
 /**
  * Get icon for repository item.
  *
  * @param	int			object id
  * @param	string		size (big, small, tiny)
  * @param	string		object type
  * @param	boolean		true: offline, false: online
  */
 public static function _getIcon($a_obj_id = "", $a_size = "big", $a_type = "", $a_offline = false)
 {
     global $ilSetting, $objDefinition;
     if ($a_obj_id == "" && $a_type == "") {
         return "";
     }
     if ($a_type == "") {
         $a_type = ilObject::_lookupType($a_obj_id);
     }
     if ($a_size == "") {
         $a_size = "big";
     }
     if ($ilSetting->get("custom_icons") && in_array($a_type, array("cat", "grp", "crs", "root", "fold"))) {
         require_once "./Services/Container/classes/class.ilContainer.php";
         if (ilContainer::_lookupContainerSetting($a_obj_id, "icon_custom")) {
             $cont_dir = ilContainer::_getContainerDirectory($a_obj_id);
             $file_name = $cont_dir . "/icon_custom.svg";
             if (is_file($file_name)) {
                 return $file_name;
             }
         }
     }
     if (!$a_offline) {
         if ($objDefinition->isPluginTypeName($a_type)) {
             if ($objDefinition->getClassName($a_type) != "") {
                 $class_name = "il" . $objDefinition->getClassName($a_type) . 'Plugin';
                 $location = $objDefinition->getLocation($a_type);
                 if (is_file($location . "/class." . $class_name . ".php")) {
                     include_once $location . "/class." . $class_name . ".php";
                     return call_user_func(array($class_name, "_getIcon"), $a_type, $a_size, $a_obj_id);
                 }
             }
             return ilUtil::getImagePath("icon_cmps.svg");
         }
         return ilUtil::getImagePath("icon_" . $a_type . ".svg");
     } else {
         return "./images/icon_" . $a_type . ".svg";
     }
 }
コード例 #4
0
 /**
  * lookup icon path
  *
  * @param	int		$a_id		container object id
  * @param	string	$a_size		"big" | "small"
  */
 function _lookupIconPath($a_id, $a_size = "big")
 {
     if ($a_size == "") {
         $a_size = "big";
     }
     $size = $a_size;
     if (ilContainer::_lookupContainerSetting($a_id, "icon_" . $size)) {
         $cont_dir = ilContainer::_getContainerDirectory($a_id);
         // png version? (introduced with ILIAS 4.3)
         $file_name = $cont_dir . "/icon_" . $a_size . ".png";
         if (is_file($file_name)) {
             return $file_name;
         }
         // gif version? (prior to ILIAS 4.3)
         $file_name = $cont_dir . "/icon_" . $a_size . ".gif";
         if (is_file($file_name)) {
             return $file_name;
         }
     }
     return "";
 }