
var homeFlash;
var notifyFx;
var widgetsObj;
var enableWidgetDrag = false;

new elReady('.nav1', function(){
	var nav = $$('.nav1')[0];
	var items = nav.getElements('li a.top')
	var ul = nav.getElement('ul');
	var h = ul.getStyle('height');
	var num = 1;
	
	while(ul.getStyle('height') == h){
		num += 0.1;
		items.each(function(el,i){
			el.setStyles({
				'padding-left': num+'em',
				'padding-right': num+'em'
			});
		});
	}
	num -= 0.1;
	items.each(function(el,i){
		el.setStyles({
			'padding-left': num+'em',
			'padding-right': num+'em'
		});
	});
	nav.setStyle('visibility', '');
});


window.addEvent('domready', function(){

	//widgets custom stuff
	if($$('.widget')[0] && enableWidgetDrag){
		//initWidgets();
		widgetsObj = new widgets('div.widget', 'div.container', {handle: 'h2', url: '/Pages/widgetupdatehandler.aspx'});
		//initWidgetButtons();
		$$('div.widget').each(function(el,i){
			initWidgetButtons(el);
		});
	}

	
	var txtResize = new textResizeDetector();
	
	new bgResizer('.tabs li a', {resizer: txtResize});
	
	var tabs = $$('.tabs li a').addClass('proEn');
	
	if($$('.customise')[0]){
		
		if($$('.ctab .options')[0]){
			var mySettingsWindow = $$('.mysettingsWindow')[0];
			//console.log(mySettingsWindow);
			mySettingsWindow.setStyle('overflow', 'hidden');
			var cTab = new Fx.Slide($$('.ctab .options')[0], {duration: 500, transition: Fx.Transitions.Sine.easeOut}).hide();
			setTimeout(function(){
				var notify = new Element('div', {'class':'notify', 'html':'<p>The widget has been added.</p>'}).inject($$('.ctab .options')[0], 'top');
				notifyFx = new Fx.Tween(notify, {unit: 'em', link:'cancel'});
				notifyFx.set('height', 0);
			}, 10);
		}
		
		$$('.ctab .arrow').addEvent('click', function(e){
			cTab.toggle().chain(function(){
				$$('.ctab .arrow').toggleClass('arrowUp');
				mySettingsWindow.setStyles({
					'overflow': 'hidden',
					'padding-right': 18
				});
				if(cTab.open){
					mySettingsWindow.setStyles({
						'overflow': 'auto',
						'padding-right': 0
					});
				}			
			});
			if(cTab.open){
				mySettingsWindow.setStyles({
					'overflow': 'hidden',
					'padding-right': 18
				});
			}
			
			//document.location = '/myaccount/Pages/UserDetails.aspx';
		});
		$$('.customise').setStyle('display', 'block');
		
	}
	
	
	if($('home')){
		tabs.addEvents({
			'mouseover': setBorder,
			'mouseout': resetBorder
		}, this);
	}
	
	//caption images
	$$('img.caption').each(function(el,i){
		var alt = el.get('alt');
		if(alt != ''){
			new Element('span', {
				'class': 'caption',
				'text': alt
			}).inject(el, 'after');
		}
	});
	
	//video
	/*var video = $('videoPlayer');
	if(video){
		new Swiff('/_common/swf/player.swf', {
			id: 'video',
			container: 'videoPlayer',
			version: 8,
			width: '100%',
			height: '100%',
			params: {
				wMode: 'opaque'
			}
		});
	}*/
	

	// custom flash text	
	new flashText('.feature h2', {font: '/_common/swf/strapline.swf', resizer: txtResize});
	new flashText('.strap', {font: '/_common/swf/title.swf', resizer: txtResize});
	new flashText('.sub-strap', {font: '/_common/swf/subtitle.swf', resizer: txtResize});
	if($$('.feature').length > 0){
		new flashText('.customise p.welcome', {font: '/_common/swf/welcome.swf', resizer: txtResize});
	}else{
		new flashText('.customise p.welcome', {font: '/_common/swf/welcome.swf', resizer: txtResize});
	}
	
	if($$('.feature h2')[0]){
		$$('.feature h2')[0].setStyle('visibility', '');
	}
	$$('.topNav p').setStyle('visibility', '');
	
	
	if($('select-all')){
		$('select-all').addEvent('click', function(e){
			var check = false;
			if(this.checked){check = true;}
			$$('input.chkDoc').set('checked', check);
		});
	}


    var stars = $$('.how-useful');
        if(stars){
                $$('.starDesc, .how-useful ul').setStyle('display', 'block');
                var items = $$('.how-useful ul li');
                items.each(function(el,i){
                        el.addEvent('click', function(e){
                                stars.getElement('.rating').set('value', i+1);
                                items.getElement('img').set('src', '/_common/img/icn-star-rollover-blank.gif');
                                for(var j=0; j<=i; j++){
                                        items[j].getElement('img').set('src', '/_common/img/icn-star-rollover-filled.gif');
                                }
                        });
                });
        }
        
    //doc lib
	var trees = $$('.formBlock ul.tree, .my-events ul.tree, .my-search ul.tree');
	if(trees[0]){
		trees.each(function(el){
			//var chkd = [];
			el.getElements('li').each(function(e){
				if(e.getChildren('ul')[0]){
					new Element('span',{'class':'trigger'}).inject(e, 'top');
				}
				//if(e.getElement('input').get('checked')){
				//	chkd.push(e.getParent());
				//}
			});
			
			var filterTags = new tree(el, {trigger: 'span.trigger'});
			/*chkd.each(function(e){
				filterTags.toggle(e);
			});*/
		});
	}
	

		var myTips = new Tips($$('.toolTip'), {offsets: {'x': 15, 'y': -55}});
		
		
	
	

});

function initWidgets(){
	new widgets('.widget', '.container', {handle: 'h2', url: '/Pages/widgetupdatehandler.aspx'});
}


var totalLoading = 0;

function SingleClick(itemid) {
	totalLoading ++;
	var status = $(itemid).getParent().getPrevious();
	new Element('img', {'src': '/_common/img/ajax-loader.gif'}).inject(status);
	$(itemid).setStyles({'opacity': 0.5, 'cursor': 'default'}).removeEvents('click');
    var widgetRequest = new Request.JSON({url: "/pages/HomepageSettingsHandler.aspx", onSuccess: function(widget){
        //var el = new Element('div').setProperty('html', widget.addWidget).inject('right', 'top');
        var el = new Element('div').setProperty('html', widget.addWidget);
        var newEl = el.getElement('div.widget').inject('right', 'top');
        el.destroy();
        
        //initWidgets();
        widgetsObj.add(newEl);
        //newEl.dispose();
        //setTimeout(function(){
        //newEl.inject('right', 'top');
        initWidgetButtons(newEl);
		//}, 500);
		reinjectWidgets($('left'));
		reinjectWidgets($('right'));
        //notifyFx.start('height', 3.5)//.chain((function(){notifyFx.start('height', 0);}).delay(2000));
        //setTimeout(function(){notifyFx.start('height', 0);}, 3000);
       // 
        status.getElement('img').set('src', '/_common/img/icn_tick.gif');
        setTimeout(function(){totalLoading --; reloadWidgetList();}, 1000);
    }}).get({'cmd':'addWidget', 'id':itemid});
}

function initWidgetButtons(widget){
	//$$('div.widget div.widgetControls li input').each(function(el,i){
	widget.getElements('div.widgetControls li input').each(function(el,i){
		//console.log(el.getParent().get('class'));
		
		//el.set('onClick', 'return false;');
		/*
		if(el.getParent().get('class') == 'editWidget'){
			el.addEvent('click', function(e){
				var itemid = $(el.get('id').replace('idEditButton', 'widgetInstanceID')).get('value');
				new Event(e).stop();
				//console.log(itemid);
				document.location = '?cmd=editWidget&id='+itemid;
			});
		}
		*/
		if(el.getParent().get('class') == 'deleteWidget'){
			el.removeEvents('click');
			el.addEvent('click', function(e){
				var itemid = $(el.get('id').replace('idDeleteButton', 'widgetInstanceID')).get('value');
				//console.log(itemid);
				new Event(e).stop();
				deleteWidget(itemid, el.getParent('div.widget'));
			});
		}
	});
}


function reloadWidgetList(){
	if(totalLoading == 0){
		settingsRequest.get({'cmd': 'getWidgets'});
	}
}


function reinjectWidgets(container){
	container.getChildren().inject(container);
}


function deleteWidget(itemid, el){
	//console.log(widgetsObj.widgets);
	widgetsObj.widgets.each(function(e, i){
		if(e.getElement('input').get('value') == el.getElement('input').get('value')){
			widgetsObj.remove(i);
		}
	});
	//console.log(widgetsObj.widgets);
	el.destroy();
	reinjectWidgets($('left'));
	reinjectWidgets($('right'));
	
	var widgetUpdateRequest = new Request.JSON({url: "/pages/HomepageSettingsHandler.aspx", onSuccess: function(widget){
        settingsRequest.get({'cmd': 'getWidgets'});
    }}).get({'cmd':'deleteWidget', 'id':itemid});
}

function equalise(){
	var left = $('left');
	var right = $('right');
	
	var lHeight = left.getCoordinates().height;
	var rHeight = right.getCoordinates().height;
	if(lHeight < rHeight){
		left.setStyle('height', rHeight);
	}else{
		right.setStyle('height', lHeight);
	}
}

function clearEqualise(){
	var left = $('left');
	var right = $('right');
	left.setStyle('height', 'auto');
	right.setStyle('height', 'auto');
}

function resetBorder(e){
	Swiff.remote(homeFlash.toElement(), 'showSlide', 0); 
}

function setBorder(e){
	if(this.hasClass('starting')){
		Swiff.remote(homeFlash.toElement(), 'showSlide', 1); 
	}
	if(this.hasClass('managing')){
		Swiff.remote(homeFlash.toElement(), 'showSlide', 2); 
	}
	if(this.hasClass('growing')){
		Swiff.remote(homeFlash.toElement(), 'showSlide', 3); 
	}
}


function clearText(e)
{
	$(e).value = '';
}