var jsLib={
	timeout:100,
	closetimer:0,
	ddmenuitem:0,
	menutitle:0,
	mopen:function(tg){	
		jsLib.menutitle.css({color:'#666666'}).addClass('hcluster1').addClass('menu-main-hover');
		jsLib.mcancelclosetime();
		if(jsLib.ddmenuitem){
			jsLib.ddmenuitem.hide();
		}
		jsLib.ddmenuitem=tg;
		tg.show();
	},
	mclose:function(){
		if(jsLib.ddmenuitem){
			jsLib.ddmenuitem.hide();
			jsLib.menutitle.css({color:'#ffffff'}).removeClass('hcluster1').removeClass('menu-main-hover');
		}
	},
	mclosetime:function(){	
		jsLib.closetimer=window.setTimeout(jsLib.mclose, jsLib.timeout);
	},
	mcancelclosetime:function(){
		if(jsLib.closetimer){
			window.clearTimeout(jsLib.closetimer);
			jsLib.closetimer=null;
		}
	},
	initMenu:function(){
		$('.menu-main-tab').mouseover(function(e){
			jsLib.resetMenu();
			jsLib.menutitle=$(this);
			jsLib.mopen($(e.target).siblings('.menu-subs'));
		}).mouseout(function(e){
			jsLib.mclosetime();
		});
		$('.menu-subs').mouseover(function(e){
			jsLib.mcancelclosetime();
			$(e.target).children('li').mouseover(function(){
				$(e.target).siblings('.menu-main-tab').addClass('hcluster1').addClass('menu-main-hover').css({color:'#666666'});
			});
		}).mouseout(function(e){
			jsLib.mclosetime();
		});
	},
	resetMenu:function(){
		$('.menu-main-tab').css({color:'#ffffff'}).removeClass('hcluster1').removeClass('menu-main-hover');
		$('.menu-subs').hide();
	},
	sProgress:0,
	stepValue:200,
	slideRight:function(){
		var container=$('#storeContainer');
		var ul=$('ul',container);
		var itemsWidth=ul.innerWidth()-container.outerWidth();
		if(jsLib.sProgress<itemsWidth-100){
			ul.animate({left:(jsLib.sProgress+jsLib.stepValue) * -1}, 500 );
			jsLib.sProgress+=jsLib.stepValue;
		}
	},
	slideLeft:function(){
		var container=$('#storeContainer');
		var ul=$('ul',container);
		var itemsWidth=ul.innerWidth()-container.outerWidth();
		if(jsLib.sProgress>=100){
			ul.animate({left:(jsLib.sProgress-jsLib.stepValue) * -1}, 500 );
			jsLib.sProgress-=jsLib.stepValue;
		}
	},
	frame:function(c){
        var n='f'+Math.floor(Math.random()*99999);
        var d=document.createElement('DIV');
        d.innerHTML='<iframe style="display:none" src="about:blank" id="'+n+'" name="'+n+'" onload="jsLib.loaded(\''+n+'\')"></iframe>';
        document.body.appendChild(d);
        var i = document.getElementById(n);
        if(c&&typeof(c.onComplete)=='function'){
            i.onComplete=c.onComplete;
        }
        return n;
    },
    form:function(f,name){
        f.setAttribute('target',name);
    },
    submit:function(f,c){
        jsLib.form(f,jsLib.frame(c));
		if(c&&typeof(c.onStart)=='function'){
			return c.onStart();
		}else{
			return true;
		}
	},
    loaded:function(id){
        var i=document.getElementById(id);
        if(i.contentDocument){
            var d=i.contentDocument;
        }else if(i.contentWindow){
            var d=i.contentWindow.document;
        }else{
			var d=window.frames[id].document;
        }
        if(d.location.href=="about:blank"){
            return false;
        }
        if(typeof(i.onComplete)== 'function'){
            i.onComplete(d.body.innerHTML);
        }
    },
	initStoreApply:function(fm){
		jsLib.autoFill(fm.find("input[name='dd']"),'dd');
		jsLib.autoFill(fm.find("input[name='mm']"),'mm');
		jsLib.autoFill(fm.find("input[name='yyyy']"),'yyyy');
		fm.find("input[name='business_owner']").click(function(){
			if($(this).val()==1){
				$('#businessOperation').show();
				$('#businessInfluence').hide();
			}else{
				$('#businessOperation').hide();
				$('#businessInfluence').show();
			}
		});
	},
	initAffiliate:function(fm){
		$('#affiliateStartNow').click(function(){
			$('#affiliateFMHolder').fadeIn();
			$(this).fadeOut();
		});
		jsLib.autoFill(fm.find("input[name='dd']"),'dd');
		jsLib.autoFill(fm.find("input[name='mm']"),'mm');
		jsLib.autoFill(fm.find("input[name='yyyy']"),'yyyy');
		fm.submit(function(){
			if(fm.find("input[name='firstname']").val()==''||
				fm.find("input[name='lastname']").val()==''||
				fm.find("input[name='country']").val()==''||
				fm.find("input[name='email']").val()==''||
				fm.find("input[name='passwd']").val()==''||
				fm.find("input[name='passwd_c']").val()==''||
				fm.find("input[name='agree']")[0].checked==false
			){
				alert('Please complete all required (*) fields.');
				return false;
			}else{
				return true;
			}
		});
	},
	autoFill:function(jqObj,def){
		var onCss={color:'#000000'};
		var offCss={color:'#666666'};
		if(jqObj.val()==''){
			jqObj.val(def);
			jqObj.css(offCss);
		}
		jqObj.focus(function(){
			if($(this).val()==def){
				$(this).val('');
				$(this).css(onCss);
			}
		});
		jqObj.blur(function(){
			if($(this).val()==def||$(this).val()==''){
				$(this).val(def);
				$(this).css(offCss);
			}
		});
	}
};