/*
  To do:
  Fix case sensitivity match on load so that no matter the case given, correct library is still loaded.
*/

var ToolKit = {
  // Properties
  Version: '1.0',
  
  // Dependencies
  Requires: [
		{Prototype: '1.6.0.3'},
		{Scriptaculous: '1.8.3'}
  ],
  
  init: function()
  {
		var load_string = /toolkit\.js(\?.*)?$/;
	
    $$('head script[src]').findAll(function(script) {
      return script.src.match(load_string);
    }).each(function(script) {
			var path = script.src.replace(load_string, '');
			var libraries = script.src.match(/\?.*load=([a-z,]*)/i);
			(libraries ? 'Broadcast,' + libraries[1] : 'Broadcast,BlackBox').split(',').each(
				function(library) { ToolKit.load(path+library+'.js')
			});
		});
  },
  
  load: function(libraryName) {
		try{
      // inserting via DOM fails in Safari 2.0, so brute force approach
      document.write('<script type="text/javascript" src="'+libraryName+'"><\/script>');
    } catch(e) {
      // for xhtml+xml served content, fall back to DOM methods
      var script = document.createElement('script');
      script.type = 'text/javascript';
      script.src = libraryName;
      document.down('head').appendChild(script);
    }
  }
};

ToolKit.init();
