$(function(){
	amanjeda.launch();
});

vars = {
	pageLoad : 0,
	dataLoad: 0,
	splashTimeout: 3000,
	json: "/json_output",
	mainView: "/sites/all/themes/clean_design/data/mainView.html",
	contentView: "/sites/all/themes/clean_design/data/contentView.html",
	processFlag: 0,
	status: "women"
};

amanjeda = {
	
	launch: function(){
				
		amanjeda.loadData(function(){
			amanjeda.buildSite(function(){
				amanjeda.firstImage();
				$("#background").kBackground();
			});
		});
		
		/* Käivitame tervituse splash screeni */
		amanjeda.welcome();	
		
	},
	
	loadData: function( callback ){
		
		var flag = 3;
		$.ajax({
			dataType: "json",
			url: vars.json,
			success: function( response ){
				
				vars.json = response[0];
				
				flag--;
				if( flag == 0 ){
					if( callback ){
						callback();
					};
					vars.pageLoad = 1;
				};
				
			}
			
		});
		
		$.ajax({
			url: vars.mainView,
			success: function( response ){
				
				vars.mainView = response;
				
				flag--;
				if( flag == 0 ){
					if( callback ){
						callback();
					};
					vars.pageLoad = 1;
				};
				
			}
		});
		
		$.ajax({
			url: vars.contentView,
			success: function( response ){
				
				vars.contentView = response;
				
				flag--;
				if( flag == 0 ){
					if( callback ){
						callback();
					};
					vars.pageLoad = 1;
				};
				
			}
		});
		
	},
	
	welcome: function( callback ){
		
		var main = $("body > #welcome:first");
		var timeout = '';
		
		/* Akna min laius ja kõrgus */
		
		main.bind("click", function(e){
			e.preventDefault();
			if( vars.pageLoad == 0 ){ return false; }
			splash_close();	
		});
		
		function resize(){
			var width = $(window).width();
			var height = $(window).height();
			
			if( width < 561 ){ width = 561;}
			if( height < 459 ){ height = 459; }
			
			main.css({
				height: height,
				width: width
			});
		};//resize();
		
		resize();
		
		$(window).resize( resize );
		
		/* Peale timeouti eemaldame splash screeni */
		timeout = setTimeout( splash_close, vars.splashTimeout );
		
		function splash_close(){
			
			if( vars.pageLoad == 0 || $("#background img.active").size() < 1 ){
				timeout = setTimeout( splash_close, 500 );
				return false;
			};
			
			clearTimeout( timeout );
			
			main.fadeOut(1000, function(){
				main.remove();	
				amanjeda.afterLoading();
				if( callback ){
					callback();
				};
			});
			
		};//splash_close();
		
		
		
	},//amanjeda.welcome();
	
	buildSite: function( callback ){
		
		var output =  vars.mainView;
		var mainMenu = "", mainMenuCounter = 0, subMenu = '', subContent = '', footerMenu = '', footerContent ='', footerMenuCounter = 0, constructed = '';
		
		for( var i in vars.json ){

			if( vars.json[i].type == "mainMenu" ){
				var json = vars.json[i];
				mainMenuCounter++;
				
				if( mainMenuCounter == 1 ){
					mainMenu+= '\n<a href="#'+i+'">'+i+'</a>';
				}
				else{
					mainMenu+= '\n&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;<a href="#'+i+'">'+i+'</a>';
				};
				
				var template = vars.contentView;
				subMenu = '';
				subContent = '';
				
				for( var o in json ){
					if( o !== "type" && o !== "background" ){
						if( json[o].content ){
							subMenu+= '\n<a href="" class="level1 noMenus">'+o+'</a>';
						}
						else{
							subMenu+= '\n<a href="" class="level1">'+o+'</a>';
						};
						
							subMenu+='\n<div class="more">';
							for( var u in json[o] ){
								if( u == "content" ){
									subMenu+='\n<div class="clear">&nbsp;</div>';
									subMenu+= '\n<div class="textBlock" rel="'+url+'"><div class="holder">'+json[o][u]+'</div></div>';
								}
								else{
									var url = i+"|||"+o+'|||'+u;
									url = url.split(" ").join("_");
									
									subMenu+='\n<a href="#'+url+'" class="level2">'+u+'</a>';
									subMenu+='\n<div class="clear">&nbsp;</div>';
									subMenu+= '\n<div class="textBlock" rel="'+url+'"><div class="holder">'+json[o][u].content+'</div></div>';
									subMenu+='\n<div class="clear">&nbsp;</div>';
								};
							};
							subMenu+='</div>';
					};
				};
				subMenu+='\n<div class="clear">&nbsp;</div>';
				subMenu+='\n<a href="#back" class="back_btn"><img src="/sites/all/themes/clean_design/static/imgs/back.png" />&nbsp;</a>';
				
				template = template.split("?subMenu?").join(subMenu);
				template = template.split("?addonClass?").join("stretchContent");
				template = template.split("?subContent?").join(subContent);
				template = template.split("?identification?").join(i);
				constructed+= template;
			}
			else if( vars.json[i].type == "footer" )
			{
				var json = vars.json[i];
				footerMenuCounter++;
				
				if(json.href){
					footerMenu+= '&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;<a target="_blank" href="'+json.href+'">'+i+'</a>';
				}
				else if( footerMenuCounter == 1 ){
					footerMenu+= '<a href="#FOOTER|||'+i.split(" ").join("_")+'">'+i+'</a>';
				}
				else{
					footerMenu+= '&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;<a href="#FOOTER|||'+i.split(" ").join("_")+'">'+i+'</a>';
				};
				var template = vars.contentView;

				footerContent = '';
				var url = "FOOTER|||"+i;
				url = url.split(" ").join("_");
				footerContent+= '\n<div class="textBlock"><div class="holder">'+json.content+'</div></div>';
				
				if( json.logo ){
					footerContent+= '<div class="logos">';
					for( var o in json.logo ){
						footerContent+= '\n<img src="'+json.logo[o]+'"/>';
					};
					footerContent+= '</div>';
				};
				footerContent+='\n<div class="clear">&nbsp;</div>';
				footerContent+='\n<a href="#back" class="back_btn"><img src="/sites/all/themes/clean_design/static/imgs/back.png" />&nbsp;</a>';
				

				
				template = template.split("?addonClass?").join("footerContent");
				template = template.split("?subContent?").join(footerContent);
				template = template.split('<div class="subMenu">?subMenu?</div><!--/subMenu-->').join("");
				template = template.split("?identification?").join(url);
				constructed+= template;
			};
			
		};//!foreach
		
		
		
		output = output.split("?mainMenu?").join(mainMenu);
		output = output.split("?footerMenu?").join(footerMenu);
		output = output.split("?genderBlock?").join(constructed);
		
		$("body").append( output );
		$("form").forms();
		
		if( callback ){ callback(); }
		
		$("#intro").css({
			top: ($(window).height() - 33)/2
		});
		amanjeda.clicks();
		
	},
	
	clicks: function(){
		var currentHref = '';
		$(".textBox .subMenu .level1").each(function(e){

			var obj = $(this);
			var parent = obj.parents(".subMenu:first");
			
			if( obj.is(".back_btn") ){
				
			}else{
				obj.bind("click", function(e){
					e.preventDefault();
					if( vars.processFlag == 1 ){ return false;}
					vars.processFlag = 1 ;
					
					if( obj.is(".noMenus") ){
						
						parent.find("> a").attr("toggle", "0").next(".more").removeClass("showIt").slideUp(400, function(){
							$(this).find(".textBlock").hide().removeClass("activated");	
							amanjeda.afterLoading();
							$(".jScrollPaneContainer .holder").jScrollPaneRemove();
							
						})
						if( obj.next(".more").css("display") == "block" ){
							vars.processFlag = 0;
							
						}
						else{
							obj.next(".more").addClass("showIt").slideDown(400, function(){
								vars.processFlag = 0;
								amanjeda.afterLoading();
							}).find(".textBlock").slideDown(400, function(){
							   
								var holder = $(this).find(".holder");
								var height = holder.height();
								if( height >= 200 ){
									holder.css("height", 200).parent().css("height", 200);
									holder.jScrollPane();
								};
								subMenuImages( obj.parents(".textBox.activated:first").attr("rel"), obj.text() );
							});
						};
						
						$("#slideShow").css("visibility", "hidden");
						
					}
					else{
						parent.find("> a").attr("toggle", "0").next(".more").removeClass("showIt").slideUp(400, function(){
							$(this).find(".textBlock").hide().removeClass("activated");	
							amanjeda.afterLoading();
							$(".jScrollPaneContainer .holder").jScrollPaneRemove();
							
						})
						if( obj.next(".more").css("display") == "block" ){
							vars.processFlag = 0;
						}
						else{
							obj.next(".more").addClass("showIt").slideDown(400, function(){
								vars.processFlag = 0;
								amanjeda.afterLoading();
								subMenuImages( obj.parents(".textBox.activated:first").attr("rel"), obj.text() );
							});
						};
						
						$("#slideShow").css("visibility", "hidden");
					};
				});
			};
			
			function subMenuImages( rel, href ){
				
				var menu = vars.json[rel];
				var images = [];
				
				for( var level_1 in menu ){
					if( level_1 == "background" ){
						images.push(menu[level_1]);
					};
					
					if( level_1 !== "type" && level_1 !== "background" ){
						for( var level_2 in menu[level_1] ){
							
								for( var level_2 in menu[level_1] ){
									var bg = menu[level_1][level_2]["background"];
									for( var level_3 in bg ){
										images.push( bg[level_3]);
									};
								};
							
						};
					};
				};	
				images = shuffle(images);
				var output = '';
				for(var i in images){
					var src = images[i];
					src = src.split("|");
				   output+='\n<img src2="'+src[1]+'" thumb="'+src[0]+'" class="newImage" />';
				};
				
				$("#background").append(output);
	
				$("#newImages").trigger("click");
			
			};
			
			
		});
		
		$(".back_btn").bind("click", function(e){
			e.preventDefault();
			vars.processFlag = 1;
			if( $(".more .activated").size() > 0 ){
				
				$(".more .activated").slideUp(400, function(){
					$(this).removeClass("activated");
					vars.processFlag = 0;
				});
			}
			else if( $(".more.showIt").size() > 0){
				$(".more").removeClass("showIt").slideUp(400);
				vars.processFlag = 0;
			}
			else{
				vars.processFlag = 0;
				
				if( $("#mainMenu .active").size() > 0 ){
					$("#mainMenu .active").trigger("click");
				}
				else if( $("#footer .active").size() > 0 ){
					$("#footer .active").trigger("click");
				}
			};
			
		});
		

		
		$("#intro .button").bind("click", function(e){
			e.preventDefault();
			$("#intro").fadeOut();
			$("#mainView").css({
				visibility: "visible",
				display: "none"
			});
			$("#arrowLeft, #arrowRight, #mainView").fadeIn();
		});
		
		/* mainMenu click functions */
		$("#mainMenu a").unbind("click").bind("click", function(e){
			e.preventDefault();
			if( vars.processFlag == 1 ){ return false; }
			vars.processFlag = 1;
			
			var obj = $(this);
			
			if( obj.is(".active") ){
				$(".textBox.activated").removeClass("activated").slideUp(400, function(){
					vars.status = "";
					box_size();
					amanjeda.resetBoxes();
					obj.removeClass("active");
					vars.processFlag = 0;
					amanjeda.firstImage();
					$("#arrowLeft, #arrowRight").hide();
					amanjeda.afterLoading();
					$(".jScrollPaneContainer .holder").jScrollPaneRemove();
				});
			}
			else if( $(".textBox.activated").size() > 0 ){
				$(".textBox.activated").removeClass("activated").slideUp(400, function(){
					amanjeda.resetBoxes();
					vars.status = obj.attr("text");
					box_size();
					$(".jScrollPaneContainer .holder").jScrollPaneRemove();
					$(".textBox[rel='"+obj.attr("href").split("#")[1]+"']").slideDown(400, function(){
						$(this).addClass("activated");
						vars.processFlag = 0;	
						$("#arrowLeft, #arrowRight").show();
						categoryImages( obj.attr("href").split("#")[1] );
						currentHref = obj.attr("href").split("#")[1];
						amanjeda.afterLoading();
						
					});
				});
			}
			else{
				
				vars.status = obj.attr("text");
				box_size();
				
				$(".textBox[rel='"+obj.attr("href").split("#")[1]+"']").addClass("activated").slideDown(400, function(){
					vars.processFlag = 0;	
					categoryImages( obj.attr("href").split("#")[1] );
					currentHref = obj.attr("href").split("#")[1];
					$("#arrowLeft, #arrowRight").show();
					amanjeda.afterLoading();
				});
			};
			$("#slideShow").css("visibility", "hidden");
			
			
			function categoryImages( href ){
				
				var menu = vars.json[href];
				var images = [];
				for( var level_1 in menu ){
					if( level_1 == "background" ){
						images.push(menu[level_1]);
					};
					if( level_1 !== "type" && level_1 !== "background" ){
						for( var level_2 in menu[level_1] ){
							
								for( var level_2 in menu[level_1] ){
									var bg = menu[level_1][level_2]["background"];
									for( var level_3 in bg ){
										images.push( bg[level_3]);
									};
								};
							
						};
					};
				};	
				
				images = shuffle(images);
				var output = '';
				for(var i in images){
					var src = images[i];
					src = src.split("|");
				   output+='\n<img src2="'+src[1]+'" thumb="'+src[0]+'" class="newImage" />';
				};
				
				$("#background").append(output);
	
				$("#newImages").trigger("click");
				
			};
			
			$("#mainMenu a").removeClass("active");
			$("#footer a.active").removeClass("active");
			$(this).addClass("active");
			
		});
		
		$(".subMenu a.level2").unbind("click").bind("click", function(e){
			e.preventDefault();
			
			if( vars.processFlag == 1 ){ return false;}
			vars.processFlag = 1;
			
			var obj = $(this);
			var parent = obj.parents(".textBox:first");
			var rel = $(".textBlock.activated").attr("rel");
			
			if( parent.find(".textBlock.activated").size() > 0 ){
					
				
				parent.find(".textBlock.activated").removeClass("activated").slideUp(400,function(){
					$(".jScrollPaneContainer .holder").jScrollPaneRemove();
				});
				
				if( obj.attr("href").split("#")[1] == rel ){
					vars.processFlag = 0;
					$("#slideShow").css("visibility", "hidden");
					return false;
				};
				
				$(".textBlock[rel='"+obj.attr("href").split("#")[1]+"']").addClass("activated").slideDown(400, function(){
					
					vars.processFlag = 0;
					$(".jScrollPaneContainer .holder").jScrollPaneRemove();
					var holder = parent.find(".textBlock.activated .holder");
					var height = holder.height();
					if( height >= 200 ){
						holder.css("height", 200).parent().css("height", 200);
						holder.jScrollPane();
					};
					
				});
				setTimeout( function(){
					var href = obj.attr("href").split("#")[1];
					getImages(href);
				}, 400);

			}
			else{
				parent.find(".textBlock[rel='"+obj.attr("href").split("#")[1]+"']").addClass("activated").slideDown(400, function(){
					vars.processFlag = 0;
					$(".jScrollPaneContainer .holder").jScrollPaneRemove();
					var holder = parent.find(".textBlock.activated .holder");
					var height = holder.height();
					if( height >= 200 ){
						holder.css("height", 200).parent().css("height", 200);
						holder.jScrollPane();
					};
					
				});
				
				setTimeout( function(){
					var href = obj.attr("href").split("#")[1];
					getImages(href);
				}, 400);
				
			};
			
			function getImages( href ){
				
				var href = href.split("|||");
				var step_1 = href[0].split("_").join(" ");
				var step_2 = href[1].split("_").join(" ");
				var step_3 = href[2].split("_").join(" ");
				
				var json = vars.json[step_1][step_2][step_3]["background"];
			
				var images = '';
				for( var i in json ){
					var src = json[i];
					src = src.split("|");
					images+='\n<img src2="'+src[1]+'" thumb="'+src[0]+'" class="newImage" />';
				};
				
				$("#background").append(images);
				$("#newImages").trigger("click");
				$("#slideShow").css("visibility", "visible");
			};
			
		});
		
		$("#footer a").bind("click", function(e){
			
			if( $(this).attr("target") == "_blank" ){
				
			}
			else{
				e.preventDefault();
				
				if( vars.processFlag == 1 ){return false;}
				vars.processFlag = 1;
				vars.status = "footer";
				var obj = $(this);
				$("#slideShow").css("visibility", "hidden");
				
				if( obj.is(".active") ){
					$("#mainMenu a.active").removeClass("active");
					$("#footer a.active").removeClass("active");
					obj.removeClass("active");	
					$(".textBox.activated").removeClass("activated").slideUp(400, function(){
						vars.processFlag = 0;	
						amanjeda.afterLoading();
						amanjeda.firstImage();
						$(".jScrollPaneContainer .holder").jScrollPaneRemove();
					});
				}
				else if( $(".textBox.activated").size() > 0 ){
					$("#mainMenu a.active").removeClass("active");
					$("#footer a.active").removeClass("active");
					obj.addClass("active");
					$(".textBox.activated").removeClass("activated").slideUp(400, function(){
						amanjeda.resetBoxes();
						$(".jScrollPaneContainer .holder").jScrollPaneRemove();
						
						vars.status = "FOOTER";
						box_size();
						$(".textBox[rel='"+obj.attr("href").split("#")[1]+"']").slideDown(400, function(){
							vars.processFlag = 0;
							footerImages(obj.attr("href").split("#")[1]);
							
							var holder = $(this).find(".holder");
							var height = holder.height();
							if( height >= 200 ){
								holder.css("height", 200).parent().css("height", 200);
								holder.jScrollPane();
							};
							
							amanjeda.afterLoading();
						}).addClass("activated");	
					});
				}
				else{
					$("#mainMenu a.active").removeClass("active");
					$("#footer a.active").removeClass("active");
					obj.addClass("active");
					vars.status = "FOOTER";
					box_size();
					$(".textBox[rel='"+obj.attr("href").split("#")[1]+"']").slideDown(400, function(){
						vars.processFlag = 0;	
						footerImages(obj.attr("href").split("#")[1]);
						var holder = $(this).find(".holder");
							var height = holder.height();
							if( height >= 200 ){
								holder.css("height", 200).parent().css("height", 200);
								holder.jScrollPane();
							};
							
						amanjeda.afterLoading();
					}).addClass("activated");	
				};
				
			};
		});
		
		function footerImages( href ){
				var href = href.split("|||");
				var step_1 = href[0].split("_").join(" ");
				var step_2 = href[1].split("_").join(" ");
				
				var json = vars.json[step_2];
				if( json["sticky"].length == 0 ){
					amanjeda.firstImage();
					return false;
				};
				
				json.sticky = shuffle(json.sticky);
				var images = '';
				for( var i in json.sticky ){
					var src = json.sticky[i];
					src = src.split("|");
					images+='\n<img src2="'+src[1]+'" thumb="'+src[0]+'" class="newImage" />';
				};

				$("#background").append(images);
				$("#newImages").trigger("click");
			};
			
		function box_size(){

			
			if( vars.status == "MEN" ){
				addon = 136;
				var container = $(".textBox.stretchContent");
			}
			else if( vars.status == "FOOTER" ){
				var addon = 66;
				var container = $(".textBox.footerContent");
			}
			else{
				var addon = 66;
				var container = $(".textBox.stretchContent");
			};
			var women = $("#mainMenu a:first");
			var left = women.offset().left-25+addon;
			if( left < 600 ){ left = 600;} 
			container.css({
				width: left
			});
		};
		
		box_size();
		$(window).resize(box_size);
	},
	
	resetBoxes: function(){
		$(".activated").removeClass("activated").css("opacity", 1).hide();
		$(".more").hide();
	},
	
	afterLoading: function(){
		
		
	},
	
	allImages: function(){
				
		var images = [];
		for(var i in vars.json ){
			
			var menu = vars.json[i];
			for( var level_1 in menu ){
				
				if( level_1 !== "type" && level_1 !== "background" && menu["type"] !== "footer" ){
					for( var level_2 in menu[level_1] ){
						
							for( var level_2 in menu[level_1] ){
								var bg = menu[level_1][level_2]["background"];
								for( var level_3 in bg ){
									images.push( bg[level_3]);
								};
							};
						
					};
				};
			};	
		};// var i in vars.json
		var output = '';
		images = shuffle(images);
		for(var i in images){
			var src = images[i];
			src = src.split("|");
			
			output+='\n<img src2="'+src[1]+'" thumb="'+src[0]+'" class="newImage" />';
		};
		
		$("#background").append(output);
		$("#newImages").trigger("click");
	},
	
	firstImage: function(){
		
		$("#background").append('<img src2="'+vars.json.background+'" class="newImage" />');
		$("#newImages").trigger("click");
	}
	
};

var shuffle = function(o){ //v1.0
	for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
	for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
	for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
	for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
	return o;
};


$.fn.forms = function(){
	$(this).each(function(){
		$.forms( $(this) );
	});
};

$.forms = function( form ){
	
	form[0].reset();
	form.find("[href='#submit']").click(function( ev ){
		ev.preventDefault();
		form.submit();
	});
	
	
	form.submit(function( ev ){
					
		if( $.forms.check( form ) == false ){
			ev.preventDefault();
			return false;
		};
		ev.preventDefault();
		/* Kogume vormilt info kokku, action, method, vÃ¤ljade vÃ¤Ã¤rtused */
		var url = "/nodetomenu/newsletter";
		var type = form.attr("method") || "post";
		var data = form.serialize();
		
		$.ajax({
			
			url: url,
			type: type,
			data: data,
			dataType: "json",
			success: function( answer ){
				
				$(".form").html(answer.data);
			},
			error: function( answer ){
				
			}
			
		});
		
	});
	
};

$.forms.check = function( form ){
	
	form.data("flag", "0");
	
	form.find("[validate]").each(function(){
		
		var input = $(this);
		
		/*Error class lisamine nii inputile, kui tema parentile "label" */
		if( input.attr("type") == "radio") {
			if( $.forms.radios( input ) == false ){
				input.addClass("error")
				.parent(".label").addClass("error").end()
				.parent("label").addClass("error");
			}
			else{
				input.removeClass("error")
				.parent(".label").removeClass("error").end()
				.parent("label").removeClass("error");
			};
		}
		else{
			
			if( $.forms.cases( input ) == false ){
				input.addClass("error")
				.parent(".label").addClass("error").end()
				.parent("label").addClass("error");
			}
			else{
				input.removeClass("error")
				.parent(".label").removeClass("error").end()
				.parent("label").removeClass("error");
			};
		};
		
	});
	
	
	if( form.data("flag") == "1" ){return false;}
	else{ return true; }
};



$.forms.cases = function( input ){
	
	var type = input.attr("validate");
	var value = input.attr("value");
	var form = input.parents("form");
	var minimum = input.attr("minimum") || 0;
	var maximum = input.attr("maximum") || 999999999;
	
	
	/*RegeExpide tegemine, siin olev "case" PEAB vastama inputi kÃ¼ljes oleva validate vÃ¤Ã¤rtusega*/
	switch( type ){
		
		case "default" : {
			var reg_exp = '';
			break;
		}
		case "email" : {
			var reg_exp = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
			break;
		}
		case "numbers" : {
			var reg_exp = new RegExp(/^[0-9]+$/);	
			break;
		}
		case "letters" : {
			var reg_exp = new RegExp(/^[A-Z]+$/i);	
			break;
		}
		case "alphanum" : {
			var reg_exp = new RegExp(/^\w+$/i);	
			break;
		}
		
	};
	
	if(!value.match(reg_exp) ||
		value.length < minimum ||
		value.length > maximum ||
		value == input.attr("defaultValue")
	){  form.data("flag", "1"); return false;}
	else{ return true; }
	
	
};
