flag = '';
send = false;
function repalceSelect(){
	flag = 'replaced';
	$$('select').each(function(element){
		element.style.display = 'none';
		var mainselect = new Element('div',{
			'class':element.className,
			'tabIndex':0,
			'events': {
				'keydown':function(e){
					var n = element.options.length;	
					var m = element.selectedIndex;
					var el = foroption.childNodes.length;
					ev = new Event(e);
					
					if (ev.key.length < 2){
						
						for(var i = 0; i<foroption.childNodes.length; i++){
							var chr = foroption.childNodes[i].getText();
							//alert(chr[0]+' '+ev.key.toUpperCase);
							if(chr[0] == ev.key.toLowerCase() || chr[0] == ev.key.toUpperCase()){
								for(var j=0; j< foroption.childNodes.length; j++)
									foroption.childNodes[j].style.backgroundColor = '#fff'
								foroption.childNodes[i].style.backgroundColor = '#ccc'
								this.setText(element.options[i].text);
								element.selectedIndex = i;		
							}
						}
					}
					switch(e.keyCode){
					case 39:
					case 40:
						ev = new Event(e);
						ev.preventDefault();
						if(m < (n-1)){
							element.selectedIndex +=1;
							m +=1
							for(var i=0; i< el; i++)
							foroption.childNodes[i].style.backgroundColor = '#fff'
							foroption.childNodes[m].style.backgroundColor = '#ccc'
							this.setText(element.options[m].text);
						}  
						break;
					case 38:
					case 37:
						ev = new Event(e);
						ev.preventDefault();
						if(m > 0){
							element.selectedIndex -=1;
							m -=1
							for(var i=0; i< el; i++)
								foroption.childNodes[i].style.backgroundColor = '#fff'
							foroption.childNodes[m].style.backgroundColor = '#ccc'
							this.setText(element.options[m].text);
						}  
						break;
						case 9:
							foroption.style.display ='none';
						break;	
					}	
				},
				'click':function(ev){
				ev = new Event(ev);
	    		ev.stop();
				if(foroption.style.display == 'none' || foroption.style.display == ''){
					foroption.style.display = 'block';
					foroption.childNodes[element.selectedIndex].style.backgroundColor = '#ccc'
					}else{
						foroption.style.display ='none';
					}
				}
			}
			}).setText(element.options[element.selectedIndex].text).injectAfter(element);
		$('body').addEvent('click',function(){
	   			 	foroption.style.display = 'none';
				});
		var foroption = new Element('div',{
			'class':element.className+'_option'			
			}).injectAfter(mainselect);
		foroption.style.height = element.options.length > 10 ? '150px' : 'auto';
		var list = element.options;
		for(var i = 0; i < list.length; i++){
			new Element('div',{
			'events': {
				'click':function(el){
					mainselect.setText(this.getText());
						for(var m = 0; m < element.options.length; m++){
							if(this.value == element.options[m].value)
								element.selectedIndex = m;
						}
						
					foroption.style.display = 'none';
				},
				'mouseenter':function(el){
					for(var i=0; i< foroption.childNodes.length; i++)
						foroption.childNodes[i].style.backgroundColor = '#fff'
						this.style.backgroundColor = '#ccc';
					},
				'mouseleave':function(el){
					this.style.backgroundColor = '#fff';
				}		
			},
				'value':list[i].value
			}).setText(list[i].text).injectInside(foroption);
		}
	});
}
var a = null;
function checkCertCode(element){
	if (element.value.length==8){
		//alert(1); exit;
		if (!send){
			send = true;
			element.disabled = true;
			$('good'+element.id).style.display = 'none';
			$('wrong'+element.id).style.display = 'none';
			a = new Ajax('/code/', {
				method: 'post',
				postBody: "code="+element.value,
				onSuccess: function(response){
					var amount = Json.evaluate(response);
					//alert('amount' + amount)
					if (amount){
							
						$('good'+element.id).style.display = 'inline';
						$('good'+element.id+'Amount').setText('-'+amount+',-');
						var addname = new Element('div', {'id': 'giftCertificate', 'class': 'addname'}).injectInside($('accept'));
						var clickEvt = function(){
							var allsum = parseInt($('sum').innerHTML) + parseInt(amount);
							$('sum').innerHTML = allsum;
							addname.remove();
							$('good'+element.id).style.display = 'none';
							element.value = '';
							element.disabled = false;
							send = false;
							$('giftCode').value = '';
						};
						var delBtn = new Element('img',{
							'src':'/files/img/design/delete_ann.png',
							'class':'del_im'
						}).injectInside(addname);
						delBtn.onclick = clickEvt;
						new Element('div',{
							'class':'navn'			
						}).setText($('name_gift').getText()).injectInside(addname);
						new Element('div',{
							'class':'sum',
							'align':'right'			
						}).setText('-'+parseInt(amount)+',-').injectInside(addname);
						var allsum =parseInt($('sum').innerHTML) - parseInt(amount);
						$('sum').innerHTML = allsum;
						$('giftCode').value = element.value;
					}else{
						$('wrong'+element.id).style.display = 'inline';
						element.disabled = false;
						send = false;
						$('giftCode').value = '';
					}
				}
			}).request();
		}
	}
}

function cleanCertCode(element){$('wrong'+element.id).style.display = "none";}

function redrowCheckbox(element){
	flag = 'replaced';
	var check = new Element('div',{
		'class':$(element).checked ? 'newcheckbox_checked' : 'newcheckbox',
		'id':element+'_rep',
		'tabIndex':$(element).tabIndex,
		'events':{
			'click':function(ev){
				if (!$(element).disabled){
					$(element+'_rep').className = $(element).checked ? 'newcheckbox' : 'newcheckbox_checked';
					$(element).checked = !$(element).checked;
					if($(element).onclick){
						$(element).onclick();
					}
				}
	        },
			'keydown':function(e){
				if (!$(element).disabled){
					if(e.keyCode == 32){
						$(element+'_rep').className = $(element).checked ? 'newcheckbox' : 'newcheckbox_checked';
						$(element).checked = !$(element).checked;
						if($(element).onclick){
							$(element).onclick();
						}
					}
				}
			}
		}
	}).injectAfter(element);
}

function hideCheckbox(){
	valid = new Validation('reg');
	if(flag != 'replaced')
		$$('input').each(function(element){
			if(element.type == 'checkbox'){
				element.style.display = 'none';
				
				if(!element.id)
					element.id = element.name;
				redrowCheckbox(element.id);			
			}
		});
}

function uploadPhoto(){
	if(!window.ie){
		document.embeds["photoUploader"].startUpload();
	}else	
		photoUploader.startUpload();
}

function uploadVideo(){
	if(!window.ie){
		document.embeds["videoUploader"].startUpload();	
	}else
		videoUploader.startUpload();	
	

}


function completeHandler(serialId,mode){
    uploadarr[mode][serialId].finish();
}

function registerHandler(serialId, fileName, mode){
	uploadarr[mode][serialId]=new ProgressBar(mode,fileName);
}

function progressHandler(serialId, bytesLoaded,bytesTotal,mode){
	uploadarr[mode][serialId].progress(bytesLoaded,bytesTotal);
}

var ProgressBar = new Class({
	initialize: function(mode,fileName){
		this.mode = mode;
		if (this.mode == 'photo'){
			photosLoaded++;
			if (photosLoaded >= photoCount) $('photoUploadBtn').setStyle('display', 'none');
		} else if (this.mode == 'video'){
			videosLoaded++;
			if (videosLoaded >= videoCount) $('videoUploadBtn').setStyle('display', 'none');
		}
		this.area = new Element('div',{'class':'preload'}).injectInside($(this.mode+'Upload'));
		new Element('div',{'class':'preload_name'}).setText(fileName).injectInside(this.area);
		this.bar = new Element('div',{'class':'preload_bar'}).setStyle('width',0).injectInside(new Element('div',{'class':'preload_border'}).injectInside(this.area));
	},
	progress:function(bytesLoaded,bytesTotal){
		var proc = parseInt((bytesLoaded/bytesTotal)*100);
		this.bar.setStyle('width',(proc*4)+'px').setText(proc+'%');
	},
	finish:function(){
		this.bar.setText('complete');
		var me = this;
		new Fx.Style(this.area, 'opacity', {
			onComplete: function(){
				me.area.remove();
				new Ajax('/profile/'+profileId+'/media/'+me.mode+'/', {
					method: 'get',
					onSuccess: function(response){				
						var remove = function(element){
							var ii = domArr[me.mode].indexOf(element);
							element.area.remove();
							domArr[me.mode].splice(ii, 1);
							domArr[me.mode].push(new Fish(me.mode));
							domArr[me.mode].getLast().area.injectInside($(me.mode+'_holder'));
							domArr[me.mode].each(function(e){
								e.del.removeEvents('click').addEvent('click', function(){ remove(e);});
							});
						}

						Json.evaluate(response).each(function(image, index){
							var el = domArr[me.mode][index];
							el.img.setStyle('background-image', 'url(/'+me.mode+'/thumb/'+image+')');
							
							//Delete button
							el.del.setStyle('display', 'block');
							el.del.addEvent('click', function(ev) {
								//Display Upload button if not visible
								if (me.mode == 'photo') $('photoUploadBtn').setStyle('display', '');
								else if (me.mode == 'video') $('videoUploadBtn').setStyle('display', '');
								
								//Delete file on server
								new Ajax('/profile/'+profileId+'/media/'+me.mode+'/delete/', {
									postBody: 'what='+image
								}).request();
							});
							el.del.addEvent('click', function(){remove(el);});
						});
					}
				}).request();
			}
        }).start(1,0);
	}
});

var uploadarr = {
	'photo':{},
	'video':{}
};

var Fish = new Class({
	initialize: function(mode){
		this.area = new Element('div', {'class': 'view'+mode});
		this.img = new Element('div', {'class': mode}).injectInside(this.area);
		var delArea = new Element('div', {'class': 'delete'}).injectInside(this.area);
		this.del = new Element('img', {
			'src': '/files/img/design/delete_bill.png'
		}).setStyle('display', 'none').injectInside(delArea);
	}
});

var domArr = {
	'photo':[],
	'video':[]
};
photosLoaded = 0;
videosLoaded = 0;

window.addEvent('domready', function(){
	if ($('photo_holder'))
		for (var i=0; i<photoCount; i++){
			domArr.photo.push(new Fish('photo'));
			domArr.photo.getLast().area.injectInside($('photo_holder'));
		}
	if ($('video_holder'))
		for (var i=0; i<videoCount; i++){
			domArr.video.push(new Fish('video'));
			domArr.video.getLast().area.injectInside($('video_holder'));
		}
	function init(mode){
		new Ajax('/profile/'+profileId+'/media/'+mode+'/', {
			method: 'get',
			onSuccess: function(response){
				var remove = function(element){
					var ii = domArr[mode].indexOf(element);
					element.area.remove();
					domArr[mode].splice(ii, 1);
					domArr[mode].push(new Fish(mode));
					domArr[mode].getLast().area.injectInside($(mode+'_holder'));
					domArr[mode].each(function(e){
						e.del.removeEvents('click').addEvent('click', function(){remove(e);});					
					});
				}

				Json.evaluate(response).each(function(image, index){
					if (mode == 'photo'){
						photosLoaded++;
						if (photosLoaded >= photoCount) $('photoUploadBtn').setStyle('display', 'none');
					} else if (mode == 'video'){
						videosLoaded++;
						if (videosLoaded >= videoCount) $('videoUploadBtn').setStyle('display', 'none');
					}
					var el = domArr[mode][index];
					el.img.setStyle('background-image', 'url(/'+mode+'/thumb/'+image+')');
					el.del.setStyle('display', 'block').addEvent('click', function(ev){
						if (mode == 'photo') $('photoUploadBtn').setStyle('display', 'block');
						else if (mode == 'video') $('videoUploadBtn').setStyle('display', 'block');
						new Ajax('/profile/'+profileId+'/media/'+mode+'/delete/', {
							postBody: 'what='+image
						}).request();
					}).addEvent('click', function(){remove(el);});
				});
			}
		}).request();
	};
	if ($('photo_holder')) init('photo');
	if ($('video_holder')) init('video');
	
	if($('pedigry_btm')){
		var Slide01 = new Fx.Slide('toggle_pedigry').hide();
		$('pedigry_btm').addEvent('click', function(e){
			new Event(e).stop();
			Slide01.toggle();
		});
	}
	if($('map_btm')){
		
		var Slide02 = new Fx.Slide('toggle_map',{
			onStart:function(){
			if($('map')){
				$('map').remove();
				} else {
				new Element('div',{
					'id':'map'
				}).injectInside($('for_map'));
				}
			},
			onComplete:function(){
				if($('map')){
					initialize();
				} 
			}
		}).hide();
		$('map_btm').addEvent('click', function(e){
			new Event(e).stop();
			Slide02.toggle();
		});
		
		$('tip_btm').addEvent('click', function(e){
			new Event(e).stop();
			Slide04.toggle();
		});
		
	}
	
	if($('toggle_video')){
		var Slide03 = new Fx.Slide('toggle_video');	
		$('video_btm').addEvent('click', function(e){
			new Event(e).stop();
			Slide03.toggle();
		});
	}
	viewPhoto();
});

function viewPhoto(){
	new Tips($$(".image_url"));
}

function close_photo(){
	new Fx.Style($('view_photo'),'opacity',{
		onComplete:function(){
			$('view_photo').setStyle('display','none');
		}
	}).start(1,0);
	
}

	var map = null;
    var geocoder = null;

    
	
	function initialize() {
      if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(37.4419, -122.1419), 13);
		 map.addControl(new GSmallMapControl());
        geocoder = new GClientGeocoder();
		load(testadress);
      }
    }
	
	function load(address) {
      if (geocoder) {
        geocoder.getLatLng(
          address,
          function(point) {
            if (!point) {
			var marker = new GMarker(new GLatLng(37.4419, -122.1419));
              map.addOverlay(marker);
              marker.openInfoWindowHtml(address + " not found");
            } else {
              map.setCenter(point, 13);
              var marker = new GMarker(point);
              map.addOverlay(marker);
			 
              marker.openInfoWindowHtml(address);
            }
          }
        );
      }
    }
	
function showVideo(urlSwf, src, thumb, txtSrc){
	$("video").setHTML("");
	var vo = new SWFObject(urlSwf+"hesteindex.swf", "videoplayer", "427", "303", "9", "#FFFFFF");
	vo.addParam("quality", "high");
	vo.addParam("wmode", "opaque");
	vo.addParam("allowFullScreen", "true");
	vo.addVariable("videosrc", src);
	vo.addVariable("thumbnail", thumb);
	vo.addVariable("notConvertedMessage", "");
	vo.write("video");
	$("videoTxt").setText($(txtSrc).value);
}
    
function enable(element){
	if(document.getElementById(element).disabled == false)
		document.getElementById(element).disabled = true
	else
		document.getElementById(element).disabled = false	
}


window.onload = hideCheckbox;