jQuery.fn.ajaxSubmit = function(options) { if (typeof options == 'function') options = { success: options }; options = jQuery.extend({ url: this.attr('action') || '', method: this.attr('method') || 'GET' }, options || {}); options.success = options.success || options.after; options.beforeSubmit = options.beforeSubmit || options.before; options.type = options.type || options.method; var a = this.formToArray(options.semantic); if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) return this; var veto = {}; jQuery.event.trigger('form.submit.validate', [a, this, options, veto]); if (veto.veto) return this; var q = jQuery.param(a); if (options.type.toUpperCase() == 'GET') { options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q; options.data = null; } else options.data = q; var $form = this, callbacks = []; if (options.resetForm) callbacks.push(function() { $form.resetForm(); }); if (options.clearForm) callbacks.push(function() { $form.clearForm(); }); if (!options.dataType && options.target) { var oldSuccess = options.success || function(){}; callbacks.push(function(data, status) { jQuery(options.target).attr("innerHTML", data).evalScripts().each(oldSuccess, [data, status]); }); } else if (options.success) callbacks.push(options.success); options.success = function(data, status) { for (var i=0, max=callbacks.length; i < max; i++) callbacks[i](data, status); }; jQuery.event.trigger('form.submit.notify', [this, options]); jQuery.ajax(options); return this; }; jQuery.fn.ajaxForm = function(options) { return this.each(function() { jQuery("input:submit,input:image,button:submit", this).click(function(ev) { var $form = this.form; $form.clk = this; if (this.type == 'image') { if (ev.offsetX != undefined) { $form.clk_x = ev.offsetX; $form.clk_y = ev.offsetY; } else if (typeof jQuery.fn.offset == 'function') { var offset = jQuery(this).offset(); $form.clk_x = ev.pageX - offset.left; $form.clk_y = ev.pageY - offset.top; } else { $form.clk_x = ev.pageX - this.offsetLeft; $form.clk_y = ev.pageY - this.offsetTop; } } setTimeout(function() { $form.clk = $form.clk_x = $form.clk_y = null; }, 10); }) }).submit(function(e) { jQuery(this).ajaxSubmit(options); return false; }); }; jQuery.fn.formToArray = function(semantic) { var a = []; if (this.length == 0) return a; var form = this[0]; var els = semantic ? form.getElementsByTagName('*') : form.elements; if (!els) return a; for(var i=0, max=els.length; i < max; i++) { var el = els[i]; var n = el.name; if (!n) continue; if (semantic && form.clk && el.type == "image") { if(!el.disabled && form.clk == el) a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y}); continue; } var v = jQuery.fieldValue(el, true); if (v === null) continue; if (v.constructor == Array) { for(var j=0, jmax=v.length; j < jmax; j++) a.push({name: n, value: v[j]}); } else a.push({name: n, value: v}); } if (!semantic && form.clk) { var inputs = form.getElementsByTagName("input"); for(var i=0, max=inputs.length; i < max; i++) { var input = inputs[i]; var n = input.name; if(n && !input.disabled && input.type == "image" && form.clk == input) a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y}); } } return a; }; jQuery.fn.formSerialize = function(semantic) { return jQuery.param(this.formToArray(semantic)); }; jQuery.fn.fieldSerialize = function(successful) { var a = []; this.each(function() { var n = this.name; if (!n) return; var v = jQuery.fieldValue(this, successful); if (v && v.constructor == Array) { for (var i=0,max=v.length; i < max; i++) a.push({name: n, value: v[i]}); } else if (v !== null && typeof v != 'undefined') a.push({name: this.name, value: v}); }); return jQuery.param(a); }; jQuery.fn.fieldValue = function(successful) { var val=[], name; for (var i=0, max=this.length; i < max; i++) { var el = this[i]; var v = jQuery.fieldValue(el, successful); if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) continue; name = name || el.name; if (name != el.name) continue; v.constructor == Array ? jQuery.merge(val, v) : val.push(v); } return val; }; jQuery.fieldValue = function(el, successful) { var n = el.name, t = el.type, tag = el.tagName.toLowerCase(); if (typeof successful == 'undefined') successful = true; if (successful && ( !n || el.disabled || t == 'reset' || (t == 'checkbox' || t == 'radio') && !el.checked || (t == 'submit' || t == 'image') && el.form && el.form.clk != el || tag == 'select' && el.selectedIndex == -1)) return null; if (tag == 'select') { var index = el.selectedIndex; if (index < 0) return null; var a = [], ops = el.options; var one = (t == 'select-one'); var max = (one ? index+1 : ops.length); for(var i=(one ? index : 0); i < max; i++) { var op = ops[i]; if (op.selected) { var v = jQuery.browser.msie && !(op.attributes['value'].specified) ? op.text : op.value; if (one) return v; a.push(v); } } return a; } return el.value; }; jQuery.fn.clearForm = function() { return this.each(function() { jQuery('input,select,textarea', this).clearFields(); }); }; jQuery.fn.clearFields = jQuery.fn.clearInputs = function() { return this.each(function() { var t = this.type, tag = this.tagName.toLowerCase(); if (t == 'text' || t == 'password' || tag == 'textarea') this.value = ''; else if (t == 'checkbox' || t == 'radio') this.checked = false; else if (tag == 'select') this.selectedIndex = -1; }); }; jQuery.fn.resetForm = function() { return this.each(function() { if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) this.reset(); }); }; 

//var ninaExt;
$(document).ready(init);

function init() {
$(document.body).removeClass('jsOff').addClass("jsOn");

$('#contactlink').click(function(e) { 
popUpShow('contact');
this.blur();
cancelClick(e);
});

var a = location.search; 
switch(a) {
	case '?page_id=2': document.body.setAttribute('id','about'); break;                     
	case '?page_id=3': document.body.setAttribute('id','book'); break;
	case '': document.body.setAttribute('id','index'); break;  
}
var cur = getId();
	$('#menuMain a').click(function(e) { 
	if ($(this).parent().is('.'+cur)) { cancelClick(e); }
});

if ($('div.wp-email')[0]) { $('a[@title=Email This Post]').empty(); }

if ((jQuery.browser.safari) || (navigator.userAgent.indexOf("Camino") != -1)) { 
	$('#searchsubmit').remove(); $('#searchform').append('<button type="submit" id="searchsubmit" />'); $('#s').addClass('safari'); 
}

if (jQuery.browser.msie) {
	$('#searchsubmit').hover(function() { 
	$(this).toggleClass("over"); },function() {
	$(this).toggleClass("over"); });
	$('#s').focus(function() {$(this).addClass('ieFocus')});
	$('#s').blur(function() {$(this).removeClass('ieFocus')});
};

if (document.getElementById('startAudio')) {
swfobject.embedSWF("nina.swf", "startAudio", "100", "40", "8.0.0","expressInstall.swf", {}, {wmode: "transparent"});
}
// var links = externalLinks('http://theajnabee');
// 
// 	links.click(function(e) { 
// 	e.preventDefault();
// 	var l = this.href;
// 	if(ninaExt == null || ninaExt.closed)
// 	{
// 		ninaExt = window.open(l,'ninaExt','height=500'); ninaExt.focus();
// 	}
// 	else if(!ninaExt.closed)
// 	{
// 		ninaExt.focus();
// 		ninaExt.location = l;
// 	}
// 	});

};

function getId() {
return document.body.getAttribute('id');
};

function externalLinks(base_url) {
	return $('a[href^=http]:not("[href^=' + base_url + ']"):not(":has(\'img\')")');
};

function prepareContactForm() {
	if (jQuery.browser.msie) {
		$('#amcf_submitBtn').hover(function() { 
		$(this).toggleClass("over"); },function() {
		$(this).toggleClass("over"); });
		$('#am_contactform input').focus(function() {$(this).addClass('ieFocus')});
		$('#am_contactform input').blur(function() {$(this).removeClass('ieFocus')});
		$('#am_contactform textarea').focus(function() {$(this).addClass('ieFocus')});
		$('#am_contactform textarea').blur(function() {$(this).removeClass('ieFocus')})
	};
	if($.browser.safari) {
		$("#am_contactform input").addClass('safari');
		$("#am_contactform textarea").addClass('safari');
	}
		$("#am_contactform input").focus( function() { 
			if($(this).next().is(':visible')) { $(this).next().hide('slow')}
		});
		var options = { beforeSubmit: validate, success: showResponse };
		$('#am_contactform').ajaxForm(options);
};

function validate(formData, jqForm, options) { 
	var form = jqForm[0];
	if (!form.amcf_name.value) { $("#amcf_nameErr").show(); }
	if (emailCheck(form.amcf_email.value)) { $("#amcf_emailErr").show(); }
	if (!form.amcf_name.value || emailCheck(form.amcf_email.value)) return false;
};

function showResponse()  {
	$('#am_contactform').unbind('submit'); $('#amcf_submitBtn').unbind('click');
	$('#am_contactform').hide('slow',function() {
	$('#amcf_thankYou').fadeIn('slow')});
};

function emailCheck(value) {
	return !value.match(/^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i);
};

function cancelClick(e){
		if (window.event){
			window.event.cancelBubble = true;
			window.event.returnValue = false;
		}
		if (e && e.stopPropagation && e.preventDefault){
			e.stopPropagation();
			e.preventDefault();
		}
};

function setOpacity(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;
  obj.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity="
+ opacity + ");";
  obj.style.KHTMLOpacity = opacity/100;
  obj.style.MozOpacity = opacity/100;
  obj.style.opacity = opacity/100;
};

function popUpShow(classN) {
	try {
		if (document.getElementById("popUpHideSelect") == null) {
		
		popUpHEIGHT = 340;
		if (classN=='contact') { 
				winStyle = "style='height:340px;background-color:#EABC8E;'"; 
		}
		
		$("body").append("<iframe id='popUpHideSelect' style='opacity:0'></iframe><div id='popUpOverlay'></div><div id='popUpWindow' "+winStyle+"></div>"); 
		$("#popUpOverlay").click(popUpRemove);
		setOpacity(document.getElementById("popUpHideSelect"), 0);
		setOpacity(document.getElementById("popUpOverlay"), 60);
	}
		
	$("#popUpWindow").append(contactForm());
	prepareContactForm();
	bindCloseButton();
	
	popUpPosition();

	$("#popUpWindow").css({display:"block"}); 
        
    document.onkeyup = function(e){   
      if (e == null) {
        keycode = event.keyCode;
      } else {
        keycode = e.which;
      }
      if(keycode == 27){
        popUpRemove();
      }  
    };
    
  } catch(e) {
    alert( e );
  }
};
function bindCloseButton() {
	$('#popUpClose').hover(function() {
			$(this).addClass("hover");
	}, function() {
			$(this).removeClass("hover");
	});
	$("#popUpClose").click(popUpRemove);
}
function popUpRemove() {
	$("#popUpOverlay").unbind();
	$("#popUpCloseWindow").unbind('hover');
	$("#popUpCloseWindow").unbind('click');
	$('#popUpWindow form').unbind('submit'); $('#popUpWindow button').unbind('click'); 
	$("#popUpWindow").fadeOut("fast",function(){$('#popUpWindow, #popUpOverlay, #popUpHideSelect').remove()});
	$("#popUpLoad").remove();
	return false;
};
function popUpPosition() {

	if ( !(jQuery.browser.msie && typeof XMLHttpRequest == "function") ) { 
        $("#popUpWindow").css({marginTop:'-'+popUpHEIGHT/2+"px"});
     }
};
function contactForm() {
var f = '<div id="popUpClose"></div>'+
'<form method="post" id="am_contactform" action="http://theajnabee.com/wp-content/themes/default/contact_x.php">'+
'<fieldset>'+
  '<legend>Contact form</legend>'+

      '<label for="amcf_name">Name</label>'+
      '<input id="amcf_name" name="amcf_name" />'+
      '<label for="amcf_name" id="amcf_nameErr">Please enter your name!</label>'+

      '<label for="amcf_email">Email</label>'+
      '<input id="amcf_email" name="amcf_email" />'+
      '<label for="amcf_email" id="amcf_emailErr">Please enter a valid email address!</label>'+
 
     '<label for="amcf_note">Note</label>'+
     '<textarea rows="5" cols="17" id="amcf_note" name="amcf_note"></textarea>'+
  
     '<button type="submit" id="amcf_submitBtn"></button>'+
  
'</fieldset>'+
'</form>'+
'<div id="amcf_thankYou"><p>Thank you for contacting us!</p></div>'
return f;
};