/**
 *  AjaxMVC
 *  Loader.js
 *  Loads JavaScript and Css files with simple commands
 *
 *  @author Jürgen Cito
 */


var AM = {};

AM.Loader = {
   _libpath : '',
   
   setLibpath : function(path)
   {
      this._libpath = path; 
   },
   
   load : function(files)
   {
      if(typeof files == "string") files = [files];
      
      var ext;
      for(var i=0; i<files.length; i++)
      {
         if(files[i].indexOf('.js') > 0)
            AM.Loader.loadJS(files[i]);
         else if (files[i].indexOf('.css') > 0)
            AM.Loader.loadStylesheets(files[i]);
      }  
   },

   loadStylesheets : function(files)
   {
      if(typeof files == "string") files = [files];

      var head = document.getElementsByTagName("head")[0];
      for(var i=0; i<files.length; i++)
      {
         var link = document.createElement('link');
         link.rel = "stylesheet";
         link.type = "text/css";
         link.href = files[i];
         head.appendChild(link);
      }
   },

   loadJS : function(file)
   {
      var script = document.createElement('script');
      script.type = "text/javascript";
      script.src = file;
      var head = document.getElementsByTagName("head")[0];
      head.insertBefore(script, head.firstChild);
   },

   /**
    * Loads AjaxMVC Modules (JavaScript Files)
    * Files must be located in _libpath
    * 
    * @param files String|Array  Array of files to be load
    */
   libLoad : function(files)
   {
      if(typeof files == "string") files = [files];

      for(var i=0; i<files.length; i++)
         AM.Loader.loadJS(this._libpath + files[i] + '.js'); 
   }

   
}

