Example #1
0
function module_icon($module=null)
{
	if (empty($module))
	{
		return '';
	}
	
	// Find our module location
	foreach (module_folders() as $folder)
	{
		if (is_file($folder . $module .'/icon.png'))
		{
			$icon = $folder . $module .'/icon.png';
			return base_url() . str_replace(FCPATH, '', $icon);
		}
	}
	
	return '';
}
 /**
  * Returns an associative array of files within one or more modules.
  *
  * @param $module_name string If not NULL, will return only files from that module.
  * @param $module_folder string If not NULL, will return only files within that folder of each module (ie 'views')
  * @param $exclude_core boolean Whether we should ignore all core modules.
  *
  * @return array An associative array, like: array('module_name' => array('folder' => array('file1', 'file2')))
  */
 function module_files($module_name = null, $module_folder = null, $exclude_core = false)
 {
     if (!function_exists('directory_map')) {
         $ci =& get_instance();
         $ci->load->helper('directory');
     }
     $files = array();
     foreach (module_folders() as $path) {
         // If we're ignoring core modules and we find the core_module folder... skip it.
         if ($exclude_core === true && strpos($path, 'core_modules') !== false) {
             continue;
         }
         if (!empty($module_name) && is_dir($path . $module_name)) {
             $path = $path . $module_name;
             $modules[$module_name] = directory_map($path);
         } else {
             $modules = directory_map($path);
         }
         // If the element is not an array, we know that it's a file,
         // so we ignore it, otherwise it is assumbed to be a module.
         if (!is_array($modules) || !count($modules)) {
             continue;
         }
         foreach ($modules as $mod_name => $values) {
             if (is_array($values)) {
                 // Add just the specified folder for this module
                 if (!empty($module_folder) && isset($values[$module_folder]) && count($values[$module_folder])) {
                     $files[$mod_name] = array($module_folder => $values[$module_folder]);
                 } else {
                     if (empty($module_folder)) {
                         $files[$mod_name] = $values;
                     }
                 }
             }
         }
     }
     return count($files) ? $files : false;
 }