// Req.js v1.0 - MIT/GPL Licensed - More info: http://mar.anomynet/entries/2009/10/20/23.39.22/
(function(b,c,e,a){if(b[c]==null&&b[e]){b[c]="loading";b[e](a,e=function(){b[c]="complete";b.removeEventListener(a,e,!1)},!1)}})(document,"readyState","addEventListener","DOMContentLoaded");
(function(o,u,z){var k=[],v='onreadystatechange',j='onload',w=function(b){var c,e=g.assets,a=g.fixUrl,f=[];for(var l=0,y=b.length;l<y;l++){var d=b[l];if(typeof d=='function'){f.push(d)}else if(d&&d!==true){if(d.charAt){c=d;d=e[c]||(e[c]=(e[a(c)]||{src:c}))}else{c=d.id||d.src;e[c]=e[c]||d}if(!d._1&&!d._0){var p=d.req;d._1=1;if(!d._3){d._3=1;if(d.src){d.src=a(d.src);e[d.src]=d}if(p&&p.charAt){d.req=[p]}}p&&f.push.apply(f,w(d.req));f.push(d)}}}return f},h=[],q=function(){var b,c=h.length;if(c>=g.joinLim){var e=[];while(c--){if(h[c].src){e.unshift(g.getJoinStub(h[c]))}}b={src:r.replace(i,e.join(g.joint||'')),_4:h};h=[]}else{b=h.shift();b._2=1}return b},t=function(){if(x=!!(k.length||h.length)){var a=k.shift()||q();if(typeof a=='function'){if(h.length){k.unshift(a);a=q()}else{a();a=o}}if(a&&!a._0){if(a.check&&a.check()){if(h.length&&a[j]){k.unshift(q(),a)}else{a._0=1;if(a[j]){a[j]();a[j]=o}}}else{if((a.join===true||!a.src)&&!a._2){h.push(a)}else{if(h.length&&!a._2){k.unshift(a);a=q()}if(a.src){var f=u.createElement('script'),l=a.charset||g.charset;l&&(f.charset=l);f.src=a.src;f[j]=f[v]=function(){if(!f.readyState||/^(loaded|complete)$/.test(f.readyState)){f[v]=f[j]=o;var b=a._4||[a];for(var c=0,e;(e=b[c]);c++){e._0=1;e[j]&&e[j]();e[j]=o}t()}};s?m.insertBefore(f,s):m.appendChild(f);return}a._0=1}}}t()}},x,m,s,n,r,i,g=Req=function(b){i=i||g.urlToken||'%{s}';n=g.baseUrl||i;n+=n.indexOf(i)>-1?'':i;r=g.joinUrl||i;r+=r.indexOf(i)>-1?'':i;m=m||u.getElementsByTagName('head')[0];s=s||m.getElementsByTagName('base')[0];var c=w([].slice.call(arguments,0)),e=c.length;while(e--){delete c[e]._1}k[b===true?'push':'unshift'].apply(k,c);setTimeout(function(){if(!x){t()}},0)};g.joinLim=1;g.fixUrl=function(b){return/^(\.?\/|https?:)/.test(b)?b:n.replace(i,b)};g.getJoinStub=function(b){return b.src.replace(n.split(i)[0],'')};g.assets={}})(null,document);


(function(){  // create closure
	"use strict";

	Req.assets = {
		'jQuery': {
			// include the jQuery library from Google's CDN
			src: 'http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js',
			
			// script.onload handler that runs as soon as the script has loaded
			onload: function () {
				// be strict about jQuery usage.
				var $ = jQuery.noConflict();
				// Setup an easy-to-use Req.js plugin for jQuery
				$.fn.Req = function(){
					var args = arguments, t = this;
					if (t.length) {
						Req.apply(null, $.map(args, function(a){ return $.isFunction(a) ? function(){a.call(t);} : a; }) );
					}
					return t;
				};
			}
		},
		// javascript library jQuery UI from Google's CDN.
		'jQueryUi': { src: 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js', req: ['jQuery'] },
		// javascript library jQuery Tools from a CDN.
		'jQueryTools': { src: 'http://cdn.jquerytools.org/1.2.6/all/jquery.tools.min.js', req: ['jQueryUi'] },
		'jQuerySortable': { src: '/js/jquery.ui.sortable.min.js', req: ['jQueryUi'] },
		// javascript library jQuery nestedSortable from local.
		'jQueryNestedSortable': { src: '/js/jquery.ui.nestedSortable-1.3.4.min.js', req: ['jQueryUi'] },
		// javascript library jQueryCombobox from local.
		'jQueryCombobox': { src: '/js/jquery.ui.combobox.js', req: ['jQueryUi'] },
		// javascript library jQuery datatables from local.
		'jQueryDatatables': { src: '/js/jquery.dataTables.min.js', req: ['jQueryUi'] },
		// javascript library jQuery jeditable from local.
		'jQueryJeditable': { src: '/js/jquery.jeditable.mini.js', req: ['jQuery'] },
		// javascript library jQuery inlineedit from local.
		'jQueryInlineEdit': { src: '/js/jquery.inlineedit.js', req: ['jQuery'] },
		// javascript library jQuery jstree
		'jstree': { src: '/js/jstree/jquery.jstree.js', req: ['jQueryUi'] },
		// tinymce config
		'tinymceConfig': { src: '/js/tinymce.config.js', req: ['jQuery'] },
		// tinymce
		'tinymce': { src: '/js/tiny_mce/jquery.tinymce.js', req: ['tinymceConfig'] },
		// javascript library jQuery datepicker from a CDN.
		'fancybox': { src: '/js/fancybox/jquery.fancybox-1.3.4.pack.js', req: ['jQuery']},
		
		'jQueryDatePickerEN': { src: 'http://jquery-ui.googlecode.com/svn/trunk/ui/i18n/jquery.ui.datepicker-en-GB.js', req: ['jQueryUi'] },
		'jQueryDateEN': { src: '/js/date.js', req: ['jQueryDatePickerEN'] },
		// javascript library jQuery datepicker from a CDN.
		'jQueryDatePickerFR': { src: 'http://jquery-ui.googlecode.com/svn/trunk/ui/i18n/jquery.ui.datepicker-fr.js', req: ['jQueryUi'] },
		'jQueryDateFR': { src: '/js/date-fr-CA.js', req: ['jQueryDatePickerFR'] },

		'jqueryAdjustDialog': { src: '/js/jquery.ui.mapAdjustDialog.js', req: ['jQueryUi'] },

	};
	
})(); // end of closure
