function populate_dd(text,value,el,s){

	el.options.length=0;
	var o = document.createElement("option");
	if(value=="")
		o.text = "All " + text;
	else
		o.text = "loading ...";
	o.value = "";
	el.options.add(o);
	el.disabled = true;

	if(value!="")
		get_ddlist(text,value,s,
		{
			"content_type": "json",
			"onFinish": function(response){
				update_ddlist(response,el,text,value);
			}
		});

}

function update_ddlist(response, el,text,value){

	if(response.length>1){
		el.options.length = 0
		//		var o = document.createElement("option");
		//		o.text = "All " + text;
		//		o.value = "";
		//		el.options.add(o);
		for(var i=0;i<response.length;i++){
			o = document.createElement("option");
			o.text = response[i][1] + " (" + response[i][2] + ")";
			o.value = response[i][0];
			el.options.add(o);
		}
		el.disabled = false;
	} else {
		el.options.length = 0
		var o = document.createElement("option");
		o.text = "All " + text;
		o.value = "";
		el.options.add(o);
	}
}
function populate_dd_ad(text,value,el,s){

	el.options.length=0;
	var o = document.createElement("option");
	o.text = "loading ...";
	o.value = "";
	el.options.add(o);
	el.disabled = true;

	if(value!="")
		get_ddlist(text,value,s,
		{
			"content_type": "json",
			"onFinish": function(response){
				update_ddlist_ad(response,el,text,value);
				if(text=='Districts')
					populate_dd_ad('Suburbs',document.getElementById('ctl00_sel_District').value, document.getElementById('ctl00_sel_Suburbs'),1);
			}
		});

}

function update_ddlist_ad(response, el,text,value){

	if(response.length>1){
		el.options.length = 0
		for(var i=0;i<response.length;i++){
			o = document.createElement("option");
			o.text = response[i][1];
			o.value = response[i][0];
			el.options.add(o);
		}
		el.disabled = false;
	} else {
		el.options.length = 0
		var o = document.createElement("option");
		o.text = "All " + text;
		o.value = "";
		el.options.add(o);
	}
}

function showAdvancedSearch(){

	suburbs = document.getElementById('ctl00_ddlSearchSuburb');
	district = document.getElementById('ctl00_ddlSearchDistrict').value;
	ssuburbs = document.getElementById('chkIncludeSuburbs');
	ppropertytype = document.getElementById( 'ddlPropertyType');

	suburbs.multiple = true;
	ssuburbs.style.display = '';
	ppropertytype.style.display = '';
	populate_dd('Suburbs', district, suburbs, true);

	return false;

}

function show_other_box(el1, el2){

	if(el1.attributes.getNamedItem('ctl00Other')==null){
		v = el1.getAttribute('ctl00Other').value;
	} else
		v = el1.attributes.getNamedItem('ctl00Other').value;

	if(v==1)
		el2.style.display = '';
	else
		el2.style.display = 'none';

}

function endisable_submit(el,v){

	if(e=document.getElementById(el))
		if(v.checked){
			e.src="/images/register_button.gif";
			e.style.cursor='pointer';
			e.disabled = false;
		} else {
			e.src="/images/register_button_grey.gif";
			e.style.cursor='default';
			e.disabled = true;
		}
}

function shortlist(ref,ref2,arf){

	elv = document.getElementById(ref+'_grdProperties_value');
	elt = document.getElementById(ref+'_grdProperties_txt');
	eli = document.getElementById(ref+'_grdProperties_imgAddtoShortlist');
	elsl = document.getElementById('ctl00_shortlist_count');

	if(!elv)
		return false;
	if(!elt)
		return false;
	if(!eli)
		return false;

	elt.innerHTML = arf[elv.value][2];

	mod_shortlist(ref2,elv.value,
	{
		"content_type": "json",
		"onFinish": function(response){
			elt.innerHTML = arf[response][0];
			eli.src = 'http://images.seeproperty.co.nz/'+arf[response][1];
			elv.value = response;
			get_shortlist_count({
				"content_type":"json",
				"onFinish":function(response){
					elsl.innerHTML = response;
				}
			});
		}
	});

	return false;

}

function add_openhome(ref,el){

	el.innerHTML = 'Updating ...';
	
	subscribe_text(ref,{
		"content_type": "json",
		"onFinish": function(response){
			if(response==1){
				el.innerHTML = "Unsubscribe from txt";
			} else {
				el.innerHTML = 'Subscribe to txt';
			}
		}
	});

	return false;
}

function add_comment_sl(ref){

	el = document.getElementById('ctl00_cphMain_lnkUpdateComment');

	el.innerHTML = "Updating ...";
	el.disabled = true;

	c = document.getElementById('ctl00_cphMain_txtComments').value;

	mod_shortlist(ref, 2, c,
	{
		"content_type":"json",
		"onFinish": function (response){
			el.disabled = false;
			el.innerHTML = "Updated";
		}
	});
	
	

}

function comment_sl_update(){

	el = document.getElementById('ctl00_cphMain_lnkUpdateComment');

	if(el.disabled == false){
		el.innerHTML = "Update now.";
	}


}

function check_mobile_number(t,ref){

	u = document.getElementById(ref);
	if(t&&u){
		if(t.value.length)
			u.disabled = false;
		else
			u.disabled = true;
	}

	return false;


}

function new_sms_code(t){

	var t = document.getElementById(t);

	if(t){
		t.innerHTML = "Sending a new code to your mobile ... ";
		send_sms_newcode({
			"content_type":"json",
			"onFinish":function(response){
				t.innerHTML = "A new code has been sent to your phone.";
			}
		});
	}

	return false;

}

/*
function check_form_ready(formname){

	var els = document.getElementById(formname).elements;
	for(i=0;i<els.length;i++){
		if(el1.attributes.getNamedItem('ctl00Required')==null){
			v = el1.getAttribute('ctl00Required').value;
		} else
			v = el1.attributes.getNamedItem('ctl00Required').value;

		if(v==1)
			alert("Found " + els[i].type + "-" + els[i].name + " - " + els[i].value);
	}

}
*/

function check_order(t,ti){

	el = document.getElementById(ti);

	if(el){
		el.value = t[t.selectedIndex].value;
		el.form.submit();
	}
}

function myaccount_save_search(el,t,l){

	t = document.getElementById(t);
	lt = document.getElementById(l);

	if(t)
		txt = t.value;
	else
		txt = "Search Name";

	el.innerHTML = "Saving ...";
	
	save_search(txt,{
		"content_type":"json",
		"onFinish":function(response){
			el.innerHTML = response[0];
			if(l)
				lt.innerHTML = response[1];

		}
	});
}

function alert_saved_search(){

}

function agents_flip_edit(edtlbl){

	alert("This function is deprecated");
	return false;

}

function afe(a){

	el1 = document.getElementById('ctl00_label_'+a);
	el2 = document.getElementById('ctl00_input_'+a);

	if(el1)
		el1.style.display = 'none';
	if(el2)
		el2.style.display = '';

	return 1
}

function init_map(address){

	var show_marker=true;
	var la=-41.178654;
	var lo=172.770996;
	var show_marker=false;
	var zoom=8;
	var MapLatLng = new google.maps.LatLng(la,lo);
	var MapOpts = {
		zoom: zoom,
		center: MapLatLng,
		mapTypeId: google.maps.MapTypeId.ROADMAP,
		streetViewControl: true
	}

	var map = new google.maps.Map(document.getElementById('map'), MapOpts);
	geocoder = new google.maps.Geocoder();

	geocoder.geocode( {
		'address': address + ", New Zealand"
	}, function(results, status) {
		if (status == google.maps.GeocoderStatus.OK) {
			map.setCenter(results[0].geometry.location);
			map.setZoom(16);
			var marker = new google.maps.Marker({
				map: map,
				position: results[0].geometry.location,
				icon: "http://images.seeproperty.co.nz/maps/house-map-icon.png"
			});
		} else {
	//			alert("Couldn't find " + address);
	}
	});

}

function shortlist_map(){

	var gLat = new Array();
	var gLong = new Array();
	var gLL = new Array();
	var geocoder = new google.maps.Geocoder();
	var gBounds = new google.maps.LatLngBounds();
	var b=0;
	for(a=0;a<arguments.length;a+=2){
		//		alert(arguments[a]);
		if(arguments[a]=='G'){
			b++;
			gLat[b] = arguments[a+1].substring(0, arguments[a+1].indexOf(","));
			gLong[b] = arguments[a+1].substring(arguments[a+1].indexOf(",")+1);
			gLL[b] = new google.maps.LatLng(gLat[b], gLong[b]);
			gBounds.extend(gLL[b]);
		} else if(arguments[a]=='A'){
			b++;
			geocoder.geocode( {
				address: arguments[a+1],
				region: "nz"
			}, function(results, status){
				if(status == google.maps.GeocoderStatus.OK) {
					gLL[b] = results[0].geometry.location
					gLat[b] = gLL[b].lat();
					gLong[b] = gLL[b].lng();
					gBounds.extend(gLL[b]);
				} else {
					alert("Failed to geodecodering");
				}

			});

		}
	}


	//	var show_marker=true;
	var la=-41.178654;
	var lo=172.770996;
	//	var show_marker=false;
	var zoom=12;
	var MapLatLng = new google.maps.LatLng(la,lo);
	var MapOpts = {
		zoom: zoom,
		center: MapLatLng,
		mapTypeControl: false,
		mapTypeId: google.maps.MapTypeId.ROADMAP,
		streetViewControl: false
	}

	var map = new google.maps.Map(document.getElementById('map'), MapOpts);
	//	if(b>1)
	map.fitBounds(gBounds);
	//	else
	//		map.setCenter(gLL[1]);

	for(a=1;a<=b;a++){
		var marker = new google.maps.Marker({
			map: map,
			position: gLL[a],
			icon: "http://images.seeproperty.co.nz/maps/house-map-icon.png"
		});
	}

	//alert(map.getZoom());
	//	if(map.getZoom()<16)
	//		map.setZoom({zoom:16});
	//alert(map.getZoom());

	return map;
}

function move(element)
{
	elem=element.parentNode.parentNode.parentNode;
	direction=element.getAttribute('direction');
	ordersource=element.getAttribute('source');
	parentTable=document.getElementById('faqlist');
	clickedRowIndex=elem.rowIndex;
	if(clickedRowIndex=="0"&&direction=="up"){
		return false;
	}
	maxrindex=(parentTable.rows.length)-1;
	if(clickedRowIndex==maxrindex&&direction=="down") return false;
	clickedrow=parentTable.getElementsByTagName("tr")[clickedRowIndex];
	if(direction=="up")
		adjacentRowIndex=clickedRowIndex-1;
	if(direction=="down")
		adjacentRowIndex=clickedRowIndex+1;
	adjacentrow=parentTable.getElementsByTagName("tr")[adjacentRowIndex];
	clickedrow_clone=clickedrow.cloneNode(true);
	adjacentrow_clone=adjacentrow.cloneNode(true);
	//	parentTable.removeChild(adjacentrow);
	//	parentTable.replaceChild(clickedrow_clone,adjacentrow);
	adjacentrow=parentTable.replaceChild(clickedrow_clone,adjacentrow);
	clickedrow=parentTable.replaceChild(adjacentrow_clone,clickedrow);
	return true;
}

function preview_logo(obj,logo){

	el = document.getElementById(logo);

	if(!el)
		return false;

	el.src = "http://images.seeproperty.co.nz/agencies/" + obj[obj.selectedIndex].value;
	return true;

}

function link_test(obj){

	obj = document.getElementById(obj);

	ttlo = (obj.id=="office_short_code")?"sc":"lk";

	if(!obj)
		return false;

	link_code = obj.value;

	if(link_code.length == 0){
		if(ttlo=="sc")
			alert ("Please update the shortcode, this value won't work.");
		else
			alert ("Please update the weblink, this value won't work.");
		return false;
	}

	if(ttlo=="sc")
		window.open("http://www.seeproperty.co.nz/"+link_code);
	else
		window.open("http://"+link_code);

	return true;
}

function process_dates(el,el2){

	//	mydays = new Array('', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
	mydays = new Array('', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun');

	if(!el){
		alert("Date functioning failed - please restart and try again.");
	}
	mn = el.getAttribute('oht.min');
	mx = el.getAttribute('oht.max');
	sd = el.getAttribute('oht.day');
	mn = Number(mn);
	mx = Number(mx);
	sd = Number(sd);
	if(!sd)sd=3;

	if(el2){
		b=0;
		el2.options.length = 0;
		for(a=mn;a<=mx;a++){
			c = mydays[sd++] + " (" + a;
			switch(a){
				case 1:
					c = c + "st)";
					break;
				case 2:
					c = c + "nd)";
					break;
				case 3:
					c = c + "rd)";
					break;
				default:
					c = c + "th)";

			}
			if(sd>7){
				sd=1;
			}
			el2.options[b++] = new Option(c,a);
		}

	}
	
}

function swap_vis(){

	for(a=0;a<arguments.length;a++){
		el = document.getElementById(arguments[a]);
		if(el){
			if(el.style.display == 'none'){
				el.style.display='';
			} else {
				el.style.display = 'none';
			}
		}

	}
}

function check_listing(reference,val,form,button){

	el = document.getElementById(val);
	el1 = document.getElementById(form);
	r = document.getElementById(reference);

	if(!el||!el1||!r)
		return false;

	if(el.value.length!=0)
		return true;

	if(r.value.length==0){
		alert("Please enter a reference");
		return false;
	}

	if(button.value=="Apply"){
		button.value="Applying ...";
	}
	if(button.value=="Save"){
		button.value="Saving ...";
	}

	check_create_listing
	(r.value,{
		"content_type":"json",
		"onFinish":function(response){
			if(response[1].length>0){
				alert(response[1]);
			}else{
				el.value = response[2];
				el1.submit();
			}
		}
	});

	return false;

}

function checkpricing(){

	el = document.getElementById('ctl05_pricing');

	switch(el.value){
		case "auc:date":
		case "ten:date":
			document.getElementById('inpDateType').style.display = '';
			document.getElementById('inpPricingType').style.display = 'none';
			break;
		case "dis:entry":
		case "txt:entry":
			document.getElementById('inpDateType').style.display = 'none';
			document.getElementById('inpPricingType').style.display = '';
			break;
		default:
			document.getElementById('inpDateType').style.display = 'none';
			document.getElementById('inpPricingType').style.display = 'none';
	}
}

function checkMonth(value){

	if(value==""){
		document.getElementById('ctl05_pricing_date').style.display = 'none';
		document.getElementById('ctl05_pricing_time').style.display = 'none';
	} else {
		document.getElementById('ctl05_pricing_date').style.display = '';
		document.getElementById('ctl05_pricing_time').style.display = '';
	}

}

function close_windows(){
	$(".popupwin").fadeOut();
	$("#hh").hide();
	return false;
}

function staf(){
	var offset = $("#staf_button").offset();
	$("#staf_button").css('top', offset.top );
	$("#staf_button").css('left', offset.left );
	$("#hh").show();
	$("#staf_div").fadeIn();
}

function all_inspections(){

	$("#hh").show();
	$("#openhomes_div").fadeIn();
}

function change_photo(photo){

	el = document.getElementById('ctl00_cphMain_lnkWebsitePic')

	if(el){
		el.src = photo;
	}

}
function change_password(agent,aid){
	show_lightbox();
	jQuery('#password_name').text(agent);
	jQuery('#new_password input').val('');
	jQuery('#new_password #agent_id').val(aid);
	jQuery('#new_password').show();
	jQuery('#new_password form').show();
	check_passwords();
	
}

function show_lightbox(){
	jQuery('#bscreen').fadeIn();	
}

function hide_lightbox(){
	jQuery('#bscreen').hide();
	
}

function save_password(){
	
	r1 = jQuery('#new_password #output');
	b1 = jQuery('#new_password #save_button');

	if(check_passwords()){

		jQuery('#new_password form').hide();
		p = jQuery('#new_password input').serialize();
		r1.text('Updating the password ...');
		b1.removeClass('button_active');
		b1.addClass('button_inactive');
		jQuery('#new_password input').val('');
		jQuery.post('/Agents/Updating', p, function(data){
			r1.text(data);
		});
		

	}
}

function check_passwords(){
	
	p1 = jQuery('#new_password #p1').val();
	p2 = jQuery('#new_password #p2').val();
	r1 = jQuery('#new_password #output');
	b1 = jQuery('#new_password #save_button');

	if(jQuery('#new_password #agent_id').val()==0){
		r1.html("<font style='color:red;font-weight:bold;'>An error has occurred - please try again</font>");
		return false;
	}
	if(p1.length==0||p2.length==0){
		r1.text('');
		return false;	
	}


	b1.removeClass('button_active');
	b1.addClass('button_inactive');

	if(p1.length>p2.length)
		r1.text('Enter the password check');
	if(p1.length==p2.length){
		if(p1!=p2)
			r1.html("<font style='color:red;font-weight:bold;'>The passwords don't match!</font>");
		else {
			b1.addClass('button_active');
			b1.removeClass('button_inactive');
			r1.text('');
			return true;
		}
	}

	return false;

}
