Esempio n. 1
0
 private function _list_physical_files($component)
 {
     $path = midcom_admin_help_help::get_documentation_dir($component);
     if (!file_exists($path)) {
         return array();
     }
     $files = array();
     $directory = dir($path);
     while (false !== ($entry = $directory->read())) {
         if (substr($entry, 0, 1) == '.' || substr($entry, 0, 5) == 'index' || substr($entry, 0, 7) == 'handler' || substr($entry, 0, 9) == 'urlmethod') {
             // Ignore dotfiles, handlers & index.lang.txt
             continue;
         }
         $filename_parts = explode('.', $entry);
         if (count($filename_parts) < 3) {
             continue;
         }
         if ($filename_parts[2] != 'txt') {
             // Not text file, skip
             continue;
         }
         if ($filename_parts[1] != midcom::get('i18n')->get_current_language() && $filename_parts[1] != $GLOBALS['midcom_config']['i18n_fallback_language']) {
             // Wrong language
             continue;
         }
         $files[$filename_parts[0]] = array('path' => "{$path}{$entry}", 'subject' => self::get_help_title($filename_parts[0], $component), 'lang' => $filename_parts[1]);
     }
     $directory->close();
     return $files;
 }