예제 #1
0
 function javascriptIncludeTagFunc($params, &$view)
 {
     if (!isset($params['src'])) {
         return;
     }
     $src = $params['src'];
     // Set some default options
     $language = isset($params['language']) ? $params['language'] : '';
     $charset = isset($params['charset']) ? $params['charset'] : '';
     $type = isset($params['type']) ? $params['type'] : 'text/javascript';
     $timestamp = AssetTagHelper::lastModifiedIncludeTime($full_path);
     if (isset($timestamp) && $timestamp > 0) {
         $src .= '?' . $timestamp;
     }
     // Did we get a comma delimited string? If so make an array.
     if (stristr($src, ',')) {
         $src = explode(',', $src);
     }
     // Did we get an array of files
     if (is_array($src)) {
         // Are we in production, if so combine and compress the files
         if (defined('ENVIRONMENT') && ENVIRONMENT == 'production') {
             $src = implode(".js,", $src);
             $include_string = '<script src="/js_combined/' . $src . '.js"' . ' type="' . $type . '"' . ($language ? " language=\"{$language}\"" : '') . ($charset ? " charset=\"{$charset}\"" : '') . '></script>';
         } else {
             $include_string = '';
             foreach ($src as $script) {
                 $include_string .= '<script src="/javascripts/' . $script . '.js"' . ' type="' . $type . '"' . ($language ? " language=\"{$language}\"" : '') . ($charset ? " charset=\"{$charset}\"" : '') . "></script>\n";
             }
         }
     } else {
         // Do the normal JS parsing
         $src .= preg_match('/\\.js/', $src) ? '' : '.js';
         if (file_exists(DOCUMENT_ROOT . '/includes/' . $src)) {
             $src = '/includes/' . $src;
             $full_path = DOCUMENT_ROOT . $src;
         } else {
             if (file_exists(DOCUMENT_ROOT . '/javascripts/' . $src)) {
                 $src = '/javascripts/' . $src;
                 $full_path = DOCUMENT_ROOT . $src;
             } else {
                 if (file_exists(BASE_DIR . '/nterchange/javascripts/' . $src)) {
                     $src = '/nterchange/javascripts/' . $src;
                     $full_path = BASE_DIR . $src;
                 } else {
                     return;
                 }
             }
         }
         $include_string = '<script src="' . $src . '"' . ' type="' . $type . '"' . ($language ? " language=\"{$language}\"" : '') . ($charset ? " charset=\"{$charset}\"" : '') . '></script>';
     }
     return $include_string;
 }