コード例 #1
0
 protected function _getCommonJsData($mimeType)
 {
     if ($mimeType == 'text/javascript') {
         return array();
     }
     if ($mimeType == 'text/javascript; defer') {
         $commonJsData = parent::_getCommonJsData('text/javascript');
         foreach (parent::_getCommonJsData('text/javascript; defer') as $k => $i) {
             if (!isset($commonJsData[$k])) {
                 $commonJsData[$k] = $i;
             }
         }
     } else {
         $commonJsData = parent::_getCommonJsData($mimeType);
     }
     if ($commonJsData) {
         $deps = array();
         foreach ($this->_getFrontendPackages() as $package) {
             if ($mimeType == 'text/javascript; defer') {
                 $deps = array_merge($deps, $package->_getFilteredUniqueDependencies('text/javascript'));
             }
             $deps = array_merge($deps, $package->_getFilteredUniqueDependencies($mimeType));
         }
         foreach ($deps as $i) {
             $data = array();
             $commonJsDeps = $this->_getCommonJsDeps($i, $data);
             foreach (array_keys($data) as $key) {
                 if (isset($commonJsData[$key])) {
                     unset($commonJsData[$key]);
                 }
             }
         }
     }
     return $commonJsData;
 }