/*-----------------------------------------------------------------------------------------------*/
//
// plugLoader.js v1.0
//
// Copyright (c) 2008 Agence Clark (http://www.agence-clark.com)
//
/*-----------------------------------------------------------------------------------------------*/

var plugLoader = {
  Version: '1.0',
  require: function(libraryName) {
    // inserting via DOM fails in Safari 2.0, so brute force approach
    document.write('<script type="text/javascript" src="'+libraryName+'"><\/script>');
  },
  REQUIRED_PROTOTYPE: '1.6.0',
  load: function() {
    function convertVersionString(versionString){
      var r = versionString.split('.');
      return parseInt(r[0])*100000 + parseInt(r[1])*1000 + parseInt(r[2]);
    }
 
    if((typeof Prototype=='undefined') || 
       (typeof Element == 'undefined') || 
       (typeof Element.Methods=='undefined') ||
       (convertVersionString(Prototype.Version) < 
        convertVersionString(plugLoader.REQUIRED_PROTOTYPE)))
       throw("plugLoader requires the Prototype JavaScript framework >= " +
        plugLoader.REQUIRED_PROTOTYPE);
    
    $A($$('script')).findAll( function(s) {
      return (s.src && s.src.match(/plugLoader\.js(\?.*)?$/))
    }).each( function(s) {
      var path = s.src.replace(/plugLoader\.js(\?.*)?$/,'');	  
      var includes = s.src.match(/\?.*load=([a-zA-Z,]*)/);
      (includes ? includes[1] : '').split(',').each(
       function(include) { plugLoader.require(path+include+'.js') });
    });
  }
}
plugLoader.load();