예제 #1
0
 /**
  * Get the page layouts templates
  */
 public static function getPageLayouts()
 {
     $items = array();
     $customskin = Settings::findbyParam('skin');
     $skin = !empty($customskin) ? $customskin : "blank";
     $files = Shineisp_Commons_Utilities::getDirectoryList(PUBLIC_PATH . "/skins/default/{$skin}/scripts/");
     $items[] = "";
     foreach ($files as $file) {
         if (strpos($file, ".phtml")) {
             $filename = basename($file);
             $name = str_replace(".phtml", "", $filename);
             $items[$name] = $name;
         }
     }
     return $items;
 }
예제 #2
0
 /**
  * getActiveLanguageList
  * get the active language list
  *  
  * @param string path
  */
 public static function getLanguageFiles($path = null)
 {
     $locales = array();
     if (empty($path)) {
         $path = PUBLIC_PATH . "/languages";
     }
     // Get all the language files
     $files = Shineisp_Commons_Utilities::getDirectoryList($path);
     foreach ($files as $file) {
         // Get the name and the extension
         $name = pathinfo($file, PATHINFO_FILENAME);
         $ext = pathinfo($file, PATHINFO_EXTENSION);
         // If the extension is .mo then
         if ($ext == "mo") {
             // Get the locale of the translation file, for ex: en
             $locale = new Zend_Locale($name);
             // Get all the translation of the territory for the en locale
             $territories = $locale->getTranslationList('language', $name, 2);
             // Check if the territories array is full of data
             if (!empty($territories) && is_array($territories)) {
                 // Get the name of the territory using only the two letter, for ex: US in order to get United States
                 $locales[$name] = !empty($territories[$name]) ? ucfirst($territories[$name]) . " ({$name})" : $name;
             }
         }
     }
     return $locales;
 }