home *** CD-ROM | disk | FTP | other *** search
/ Computer Active 2010 August / CA08.iso / Multimedija / shufflr.air / ShufflrClient.swf / scripts / mx / utils / LoaderUtil.as < prev    next >
Encoding:
Text File  |  2010-06-23  |  3.0 KB  |  98 lines

  1. package mx.utils
  2. {
  3.    import flash.display.LoaderInfo;
  4.    import mx.core.mx_internal;
  5.    
  6.    use namespace mx_internal;
  7.    
  8.    public class LoaderUtil
  9.    {
  10.       mx_internal static const VERSION:String = "3.5.0.12683";
  11.       
  12.       mx_internal static var urlFilters:Array = [{
  13.          "searchString":"/[[DYNAMIC]]/",
  14.          "filterFunction":dynamicURLFilter
  15.       },{
  16.          "searchString":"/[[IMPORT]]/",
  17.          "filterFunction":importURLFilter
  18.       }];
  19.       
  20.       public function LoaderUtil()
  21.       {
  22.          super();
  23.       }
  24.       
  25.       private static function importURLFilter(param1:String, param2:int) : String
  26.       {
  27.          var _loc3_:int = int(param1.indexOf("://"));
  28.          return param1.substring(0,_loc3_ + 3) + param1.substring(param2 + 12);
  29.       }
  30.       
  31.       public static function normalizeURL(param1:LoaderInfo) : String
  32.       {
  33.          var _loc3_:int = 0;
  34.          var _loc4_:String = null;
  35.          var _loc5_:Function = null;
  36.          var _loc2_:String = param1.url;
  37.          var _loc6_:uint = uint(LoaderUtil.mx_internal::urlFilters.length);
  38.          var _loc7_:uint = 0;
  39.          while(_loc7_ < _loc6_)
  40.          {
  41.             _loc4_ = LoaderUtil.mx_internal::urlFilters[_loc7_].searchString;
  42.             _loc3_ = int(_loc2_.indexOf(_loc4_));
  43.             if(_loc3_ != -1)
  44.             {
  45.                _loc5_ = LoaderUtil.mx_internal::urlFilters[_loc7_].filterFunction;
  46.                _loc2_ = _loc5_(_loc2_,_loc3_);
  47.             }
  48.             _loc7_++;
  49.          }
  50.          return _loc2_;
  51.       }
  52.       
  53.       public static function createAbsoluteURL(param1:String, param2:String) : String
  54.       {
  55.          var _loc4_:int = 0;
  56.          var _loc5_:int = 0;
  57.          var _loc3_:String = param2;
  58.          if(Boolean(param1) && !(param2.indexOf(":") > -1 || param2.indexOf("/") == 0 || param2.indexOf("\\") == 0))
  59.          {
  60.             _loc4_ = int(param1.indexOf("?"));
  61.             if(_loc4_ != -1)
  62.             {
  63.                param1 = param1.substring(0,_loc4_);
  64.             }
  65.             _loc4_ = int(param1.indexOf("#"));
  66.             if(_loc4_ != -1)
  67.             {
  68.                param1 = param1.substring(0,_loc4_);
  69.             }
  70.             _loc5_ = Math.max(param1.lastIndexOf("\\"),param1.lastIndexOf("/"));
  71.             if(param2.indexOf("./") == 0)
  72.             {
  73.                param2 = param2.substring(2);
  74.             }
  75.             else
  76.             {
  77.                while(param2.indexOf("../") == 0)
  78.                {
  79.                   param2 = param2.substring(3);
  80.                   _loc5_ = Math.max(param1.lastIndexOf("\\",_loc5_ - 1),param1.lastIndexOf("/",_loc5_ - 1));
  81.                }
  82.             }
  83.             if(_loc5_ != -1)
  84.             {
  85.                _loc3_ = param1.substr(0,_loc5_ + 1) + param2;
  86.             }
  87.          }
  88.          return _loc3_;
  89.       }
  90.       
  91.       private static function dynamicURLFilter(param1:String, param2:int) : String
  92.       {
  93.          return param1.substring(0,param2);
  94.       }
  95.    }
  96. }
  97.  
  98.