// JavaScript Document
	function navigate_url(URL)
	{
		document.location.href = URL;
		return false;
	}
	
	function delete_record(form_name, button_id, action_url)
	{
		$(button_id).click(function() {
			$(form_name).attr('action', action_url);
			$(form_name).submit();
		});
	}
	
	function initialize_rich_text_editor(element_id, tiny_mce_base_url, css) {
		$(element_id).tinymce({
			// Location of TinyMCE script
			script_url : tiny_mce_base_url + 'tiny_mce.js',

			// General options
			theme : "advanced",
			plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,advlist",

			// Theme options
			theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
			theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code",
			theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,|,sub,sup,|,charmap,iespell,media,advhr,|,ltr,rtl,|,fullscreen",
			theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,|,insertdate,inserttime,preview,|,forecolor,backcolor",
			theme_advanced_toolbar_location : "top",
			theme_advanced_toolbar_align : "left",
			theme_advanced_statusbar_location : "bottom",
			theme_advanced_resizing : true,
			
			// Example content CSS (should be your site CSS)
			content_css : css,

			// Drop lists for link/image/media/template dialogs
			template_external_list_url : "lists/template_list.js",
			external_link_list_url : "lists/link_list.js",
			external_image_list_url : "lists/image_list.js",
			media_external_list_url : "lists/media_list.js",

			// Replace values for the template plugin
			template_replace_values : {
				username : "Some User",
				staffid : "991234"
			}
		});
	}
		
	function ajaxHTMLLoader(requestURL, formData, container, funcCall)
	{				
		$(container).html('<br/><center><img src="http://www.myphoneclub.co.uk/assets/front/images/ajax-loader3.gif" /><br/>Loading...</center><br/>');	
		$.ajax({
		   type: 'POST',
		   url: requestURL,
		   data: formData,
		   cache: false,
		   success: function(data){			
			   $(container).html(data);			   
			   poup_fancybox('a.fancybox', 255, '80%');
			   poup_fancybox('a.fancybox2', 800, '80%');
			   if (container == '#ajax_price_plan') {
				   $('#tbl_price_plan').tablesorter();
			   }
			  // return funcCall;
		   },
		   error: function(data, textStatus) {
			   $(container).html('<br/><center> Error: An error occurd while processing your request!</center><br/>');	
		   }
		 });
		return false;
	}
	
	function ajaxHTMLLoaderAdmin(requestURL, formData, container)
	{				
		$.ajax({
		   type: 'POST',
		   url: requestURL,
		   data: formData,
		   cache: false,
		   success: function(data){			
			   $(container).html(data);			   			  
		   }
		 });
		return false;
	}
	
	function menu_expand_collapse(menu_ids, sub_menu_ids, type)
	{
		if (type === 'auto') {
			$(menu_ids).click(function() {
				var element_id = '#sub_'	+ this.id;	
				var disp = $(element_id).css('display');			
				if (disp == 'none') {
					$(element_id).show('slow');				
				} else {
					$(element_id).hide('slow');
				}				
			});		
		} else if (type === 'expand')
		{
			$(sub_menu_ids).show('slow');
			
		} else if (type === 'collapse')
		{
			$(sub_menu_ids).hide('slow');			
		}
		return false;
	}
	
	function poup_fancybox(element, width, height)
	{		
		$(element).fancybox({
			'titleShow'		: false,
			'width'			: width,
			'height'		: height,
			'autoScale'		: true,
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic',
			'type'			: 'iframe'
		});		 
	}
	
	function add_to_basket(objElement, basket_url) {
		var url = basket_url;
		if (objElement.checked === true) {
			url = url + 'add.html';
		} else {
			url = url + 'remove.html';
		}				
		ajaxHTMLLoader(url, '', '#basket_box');
	}
		
	function apply_deal_filter_options(url)
	{
		
		var menu_ids = '#menu_network, #menu_text, #menu_internet, #menu_contract, #menu_phone';
		var sub_menu_ids = '#sub_menu_network, #sub_menu_text, #sub_menu_internet, #sub_menu_contract, #sub_menu_phone';
		
		
		var lower_range_rental = 0;
		var upper_range_rental = 0;				
		var rental = 0;
		
		$('#sel_price li a').click( function () {
			
			lower_range_rental = 0;
			upper_range_rental = 0;				
			rental = 0;
			
			// Activate left menu								  
			menu_expand_collapse(menu_ids, sub_menu_ids, 'expand');
			
			var myClass = $(this).attr('class');
			
			if (myClass == 'active') {
				//remove active class on second click
				$(this).removeClass('active');
			} else {
				//add active class on click
				$(this).addClass('active');							
			}
			
			$('#sel_price li a').each(function() {
				if ($(this).attr('class') == 'active') {
					rental = parseInt(this.title);	
					if (lower_range_rental == 0 && upper_range_rental == 0) {
						lower_range_rental = rental;
					} else if (lower_range_rental > 0 && rental < lower_range_rental) {
						lower_range_rental = rental;
					} else if (lower_range_rental > 0 && rental > lower_range_rental) {
						upper_range_rental = rental;
					}								
				}
			});						
			
			// single price option selected
			if (lower_range_rental == 50) {
				upper_range_rental = 0;
			} else if (lower_range_rental > 0 && lower_range_rental < 50 && upper_range_rental == 0) {
				upper_range_rental = lower_range_rental + 5;
			}					
			
			var formData = $('#frm_deal_filter').serialize();
			formData = formData + '&upper_range_minute=' + upper_range_minute + '&lower_range_minute=' + lower_range_minute;
			formData = formData + '&upper_range_rental=' + upper_range_rental + '&lower_range_rental=' + lower_range_rental;
			// load price plan data
			ajaxHTMLLoader(url, formData, '#ajax_price_plan');		
			
		});
		
		
		
		var lower_range_minute = 0;				
		var upper_range_minute = 0;									
		var minute = 0;
		
		$('#sel_minute li a').click( function () {
			lower_range_minute = 0;				
			upper_range_minute = 0;									
			minute = 0;
			
			// Activate left menu								  
			menu_expand_collapse(menu_ids, sub_menu_ids, 'expand');
			
			var myClass = $(this).attr('class');
			
			if (myClass == 'active') {
				//remove active class on second click
				$(this).removeClass('active');
			} else {
				//add active class on click
				$(this).addClass('active');							
			}
			
			$('#sel_minute li a').each(function() {							
				if ($(this).attr('class') == 'active') {
					minute = parseInt(this.title);
					
					if (lower_range_minute == 0 && upper_range_minute == 0) {
						lower_range_minute = minute;
					} else if (lower_range_minute > 0 && minute < lower_range_minute) {
						lower_range_minute = minute;
					} else if (lower_range_minute > 0 && minute > lower_range_minute) {
						upper_range_minute = minute;
					}								
				}
			});	
			
			// single minute option selected
			if (lower_range_minute == 4000) {
				upper_range_minute = 0;
			} else if (lower_range_minute > 0 && lower_range_minute < 1250 && upper_range_minute == 0) {
				upper_range_minute = lower_range_minute + 250;
			} else if (lower_range_minute == 1250 && upper_range_minute == 0) {
				upper_range_minute = lower_range_minute + 750;
			} else if (lower_range_minute >= 2000 && upper_range_minute == 0) {
				upper_range_minute = lower_range_minute + 1000;
			}
														
			var formData = $('#frm_deal_filter').serialize();
			formData = formData + '&upper_range_minute=' + upper_range_minute + '&lower_range_minute=' + lower_range_minute;
			formData = formData + '&upper_range_rental=' + upper_range_rental + '&lower_range_rental=' + lower_range_rental;
			// load price plan data	
			ajaxHTMLLoader(url, formData, '#ajax_price_plan');
			
		});
		
		
		// On click of left hand filter check box
		$('#frm_deal_filter input:checkbox, #frm_deal_filter input:radio').click(function() {
			
			var formData = $('#frm_deal_filter').serialize();
			formData = formData + '&upper_range_minute=' + upper_range_minute + '&lower_range_minute=' + lower_range_minute;
			formData = formData + '&upper_range_rental=' + upper_range_rental + '&lower_range_rental=' + lower_range_rental;
			// load price plan data	
			ajaxHTMLLoader(url, formData, '#ajax_price_plan');				
		});		
		return false;
	}
	
	
	
	function apply_phone_filter_options(url)
	{
		// On click of left hand filter check box
		$('#frm_handset_filter input:checkbox').live('click', function() {
			var formData = $('#frm_handset_filter').serialize();
			// load price plan data	
			ajaxHTMLLoader(url, formData, '#product_box');				
		});				
		return false;
	}
	
	
	function show_tool_tip(element, tooltip_id) {
		$(element).tooltip({
			// each trashcan image works as a trigger
			tip: tooltip_id,
			
			// custom positioning
			position: 'bottom right',
			// move tooltip a little bit to the right
			offset: [-38, 20],
	
			// there is no delay when the mouse is moved away from the trigger
			delay: 0								
		});
		return false;
	}
	
	function show_large(img, src)
	{
		$(img).attr("src", src);
		return false;
	}
	
	function submit_free_quote(requestURL)
	{
		var name = $('input[name="name"]').val();
		var email = $('input[name="email"]').val();
					
		if (name == '' || name == 'Name') {
			alert('Error: Please enter full name!');
		} else if(email == '' || email == 'Email') {
			alert('Error: Please enter email!');
		} else {
			return true;			
		}
		return false;
	}
	
	function show_hide(element)
	{
		if($(element).css('display') == 'none')
		{
			$(element).show();
		} else {
			$(element).hide();
		}
		return false;
	}
	
	
	// add option element to the select element
	function addOption(obj, strText, mixValue)
	{
		var newOption =document.createElement('option');
			
			newOption.text 	= strText;
			newOption.value = mixValue;
			try
			{
			obj.add(newOption, null); // standards compliant
			}
			catch(ex)
			{
			obj.add(newOption);  // IE only
			}
			
	}
	
	// remove a single option from the list of select box
	function removeOption(obj, index)
	{
		obj.remove(index);
	}
	
	// Remove all the elements form the list of select box //
	function removeAllOptions(obj)
	{	
	  var loopLength = obj.length;
	  for (var i=0; i < loopLength;i++) {
		  removeOption(obj, obj.options[i]);  
	  }
	}
	
	
