Array.prototype.remove=function(s){
	var i = this.indexOf(s);
	if(i != -1) this.splice(i, 1);
}

/**
 * Item html creation helper.
 */
function mycarousel_getItemHTML(item){
	return '<a href="'+item.url+'" title="'+item.title+'"><img src="'+item.src+'" width="125" height="200" alt="'+item.title+'" /></a>';
};
				
var Bridge = {
	init: function(){
		if (typeof document.body.style.maxHeight == "undefined"){ // IE6
			jQuery('ul#navigation li').hover(
				function(){
					if(jQuery(this).hasClass('no-sub')) jQuery(this).addClass('no-sub-hover');
					jQuery(this).addClass('hover');
				},
				function(){
					if(jQuery(this).hasClass('no-sub')) jQuery(this).removeClass('no-sub-hover');
					jQuery(this).removeClass('hover');
				}
			);
		}
		/* nav width fix */
		jQuery('#navigation > li').each(function(){
			var ul = jQuery(this).find('ul');
			if(ul.get(0)){
				//alert(ul.width());
			}
		});
		
		var s = jQuery('body').hasClass('nl') ? 'Zoeken' : 'Search';
		
		jQuery('li#searchform input').val(s).focus(function(){
			if (this.value==s) this.value='';
		}).blur(function(){
			if (this.value=='') this.value=s;
		});
		
		/* Match Tool */
		var ml = jQuery('ul#matchlist');
		if(ml.get(0)){
			var s = jQuery('h2#match-title > span'),
			bmain = ml.find('li.main').size() === 0 ? true : false,
			mkw = ml.find('li.main span.keywords').text().split(' ');
			ml.find('li:not(.main)').click(function(){
				if(bmain){
					window.location.href = '/'+(jQuery('body').hasClass('nl')?'nl':'en')+'/page/match/?'+this.id.substring(0,this.id.indexOf('-'));
					return;
				}
				var li = jQuery(this),
				title = li.find('img').attr('alt'),
				cimg = li.find('span.carousel-img').text(),
				curl = li.find('span.carousel-url').text(),
				kw = li.find('span.keywords').text().split(' '), set = false, v = '', match = [];
				li.parent().find('li').removeClass('clicked').end().end().addClass('clicked');
				jQuery('div#match-result span').empty();
				s.text(title);
				jQuery('#match-with').find('img').attr('src', cimg).attr('alt', title).end().find('a').attr('href', curl).attr('title',title).text(title);
				
				var fmkw = mkw.slice(), fkw = kw.slice();
				jQuery.each(mkw, function(k,v){
						if(jQuery.inArray(v,kw) >= 0){
							match.push(v);
							fmkw.remove(v);
							fkw.remove(v);
						}
					}
				);
				
				//alert('matches: '+match.length);

				for(i=0;i<match.length;i++){
					jQuery('span#pos-'+i).text(match[i]);
				}
				if(match.length < 6){ // anders issie vol, komt bijna niet voor
					var i2 = 0;
					for(i=match.length;i<6;i++){
						var pos = i, v = (i+2)%2===0?fmkw[i2]:fkw[i2];
						jQuery('span#pos-'+pos).text(v);
						i2++;
					}
				}
				
				
				/*
				for(i=0;i<6;i++){
					var m = jQuery.inArray(kw[i],mkw);
					if(m != -1 && set === false){
						jQuery('span#pos-'+2).text(kw[i]); // first match!
						set = true;
						v = kw[i];
					}
					if(i != 2 && v != kw[i]){
						jQuery('span#pos-'+i).text(kw[i]);
					}
				}

				if(kw.length == 1 && kw[0]== '' && mkw.length == 1 && mkw[0]==''){
					jQuery('span#pos-1').text('geen matches')
				}
				*/
			}).hover(
				function(){
					if(jQuery(this).hasClass('clicked') === false){
						s.text(jQuery(this).find('img').attr('alt'));
					}
				},
				function(){
					if(jQuery(this).parent().find('li.clicked').get(0)){
						s.text(jQuery(this).parent().find('li.clicked img').attr('alt'));
					}else{
						s.text('...');
					}
				}
			);
		}
		
		/* Home news */
		var fk = jQuery('ul#fake-news');
		if(fk.get(0)){
			jQuery('#news-holder strong').remove();
			fk.find('li.newsitem').each(function(){				
				jQuery('#news-holder').append(this.innerHTML).removeClass('loading');
			});
		}
		
		
		jQuery('#innovatie-monitor-form').submit(function(){
			var t = jQuery(this), f = t.find('fieldset:eq(0)'), emailReg = new RegExp(/^[\w-_\.]*[\w-_.]\@[\w].+[\w]+[\w]$/), err = '';
			f.find('input[type="text"]').each(function(i){
				if(this.value == ''){
					f.find('label[for="'+this.id+'"]').css({color: 'red'});
					err = 'Vul aub alle verplichte velden in.<br/>';
				}else{
					f.find('label[for="'+this.id+'"]').css({color: ''});
				}
			});
			if(!emailReg.test(f.find('#sEmail').val())){
				f.find('label[for="sEmail"]').css({color: 'red'});
				err += 'Vul aub een corect e-mailadres in.';
			}
			if(err != ''){
				t.find('#warning').remove().end().prepend('<div id="warning"><p>'+err+'</p></div>');
				return false;
			}
		});
		
		var cmbf = jQuery("#call-me-back-form");
		if (cmbf.size() > 0){
			jQuery("input[name=sURL]").val(window.location.href);
			
			/* form validator */
			jQuery.extend(jQuery.validator.messages, {
				required: (jQuery("body").hasClass("nl")?"Dit is een verplicht veld.":"This field is required.")
			});
						
			/* Validate the form */
			cmbf.validate({

			});	
		}		
	}
}
jQuery(Bridge.init);
