/*
Studio 2 Online (www.s2o.co.uk)
---------------------------------------------------------------
This file contains functions used in culinary-innovations.co.uk

Author: andrew mcmahon
Date: 2006-01-18
*/

function getSelectedText(input) {
	return input.options[input.selectedIndex].text;
}


function getSelectedValue(input) {
	return input.options[input.selectedIndex].value;
}


function in_array(needle, haystack) {
	var i = 0;
	var len = haystack.length;
	for (; i < len; i += 1) {
		if (needle == haystack[i]) {
			return true;
		}
	}
	return false;
}

function isNumeric(input) {
	var allowed_chars = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
	var i = 0;
	var len = input.length;
	for (; i < len; i++) {
		if (!in_array(input.charAt(i), allowed_chars)) {
			return false;
		}
	}
	return true;
}

function removeSpaces(string) {
	var tstring = '';
	string = '' + string;
	var splitstring = string.split(' ');
	var i = 0;
	var len = splitstring.length;
	for (; i < len; i += 1) {
		tstring += splitstring[i];
	}
	return tstring;
}

function empty(input){
	if (input == '') {
		return true;
	}

	if (typeof(input) == 'boolean') {
		if (input != true && input != false) {
			return true;
		}
	}

	if (typeof(input) == 'number') {
		if (input == 0) {
			return true;
		}
	}

	if (typeof(input) == 'string') {
		if (input == "") {
			return true;
		}
	}

	if (typeof(input) == 'object') {
		if (input.length == 0) {
			return true;
		}
	}
	return false;
}

function getErrorMessage(input) {
	var output = '';
	var i = 0;
	var len = input.length;
	for (; i < len; i += 1) {
		output += input[i] + "\n";
	}
	return output;
}

function isEmailAddr(str) {
	var at = '@';
	var dot = '.';
	var lat = str.indexOf(at);
	var lstr = str.length;
	var ldot = str.indexOf(dot);
	
	if (str.indexOf(at) == -1) {
	   return false;
	}

	if (str.indexOf(at) == -1 || str.indexOf(at) == 0 || str.indexOf(at) == lstr) {
	   return false;
	}

	if (str.indexOf(dot) == -1 || str.indexOf(dot) == 0 || str.indexOf(dot) == lstr) {
	    return false;
	}

	if (str.indexOf(at, (lat + 1)) != -1) {
		return false;
	}

	if (str.substring(lat-1, lat) == dot || str.substring(lat + 1, lat + 2) == dot) {
		return false;
	}

	if (str.indexOf(dot, (lat + 2)) == -1) {
		return false;
	}

	if (str.indexOf(' ') != -1) {
		return false;
	}

	return true;
}


$(function() {

	$('#sidebar ul li ul').hide();

	$('#sidebar > ul > li > a').click(function(event) {
		var siblings = $(this).siblings('ul');
		if (!!siblings.length) {
			siblings.slideToggle();
			event.preventDefault();
		}
	});

});
