﻿
var t = function() {var ua=navigator.userAgent.toLowerCase(),is=function(t){return ua.indexOf(t) != -1;},h=document.getElementsByTagName('html')[0],b=(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?'gecko ff2':is('firefox/3')?'gecko ff3':is('gecko/')?'gecko':is('opera/9')?'opera opera9':/opera\s(\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('chrome')?'chrome webkit safari':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';var c=b+os+' js'; h.className += h.className?' '+c:c;}();

var hibird = {
	version: '1.1',
	required_prototype: '1.6.0.1',
	
	using: function(library){
		document.write('<script type="text/javascript" src="' + hibird.path + library + '.js"></script>');
	},
	
	path: '',
	
	load: function () {
		$A(document.getElementsByTagName("script")).findAll( function(s) {
			return (s.src && s.src.match(/hibird\.js$/))
		}).each( function (s) {
			hibird.path = s.src.replace(/hibird\.js$/,'');
		});

	},
	
	notify: function ( message ) {
		hibird.ui.Notifier.notify( message );
	},
	
	ui: {},
	
	query: function (key) {
		var h = window.location.search.substring(1);
		var y = h.split("&");
		for(i=0; i < y.length; y++){
			var t=y[i].split("=");
			if(t[0]==key){
				return unescape(t[1]).replace(/\+/g, ' ');
			}
		}
		return null;
	},
	
	extend: function (obj, clazz){
		if(!obj.update) Element.extend(obj);
		Object.extend(obj, clazz);
		for (definition in clazz){
			if(Object.isFunction( clazz[definition] )){
				obj[ definition ] = clazz[ definition ].bind( obj, obj );
			}
		}
		return obj;
	},
	
	inherit: function (parent, child){
		return Object.extend(Object.extend({}, parent), child);
	},
	
	uid: 0,
	uniqueId: function () {
		return hibird.uid++;
	}
};

hibird.load();

hibird.ui.Notifier = {
	load: function () {
		$('info')
			.addClassName('javascript')
			.observe('click', function(event){
				hibird.ui.Notifier.hide();
			});
		if( hibird.query("info") ){
			$('info').hide();
			hibird.notify( $('info').innerHTML );
		}
	},
			
	show: function ( msg ){
		$('info').update( msg );
		new Effect.Appear('info', {duration: 0.3});
	},
	
	hide: function ( delay ) {
		var delay = (delay==null) ? 0 : delay;
		
		if(delay==0){
			new Effect.Fade('info', {duration: 0.3});
		}else{
			setTimeout("hibird.ui.Notifier.hide(0)", delay);
		}
	},
	
	notify: function ( msg ) {
		var i = hibird.ui.Notifier;
		i.show(msg);
		i.hide(4000);
	}
};

Event.observe(window, 'load', function () {
	hibird.ui.Notifier.load();
});

var log = { 
	clear: function () {},
	debug: function () {},
	warn: function () {},
	error: function () {},
	info: function () {},
	profile: function () {}
};


