
/**
* Behaviors applied to document
*/
function clear_form_elements(ele) {

    $(ele).find(':input').each(function() {
        switch(this.type) {
            case 'password':
            case 'select-multiple':
            case 'select-one':
            case 'text':
                $(this).val('');
                break;
            case 'textarea':
                $(this).val('');
                break;
            case 'checkbox':
            case 'radio':
                this.checked = false;
        }
    });

}

$(document).ready(function () {

	/**
	* General / Sitewide
	*/


	// Back button
	$('input.back, button.back').click(function (event)
	{
		event.preventDefault();
		history.go(-1);
	});

	// Country/phone selection.
	$('select.country-phone').change(function (event)
	{
		var number = '';
		$(this).parent().parent().parent().find('span.phone-value-container input').each(function ()
		{
			number += this.value;
		});
		$(this).parent().parent().parent().find('span.phone-value-container').load('/phone-format?country='+$(this).val()+'&value='+number, function ()
		{
			$(this).removeClass('loading').css({opacity: 1});	
		}).addClass('loading').css({opacity: .3});
	});
	$('select.country-phone').parents('form').submit(function (event)
	{
		$(this).find('select.country-phone').each(function ()
		{
			var number = '';
			$(this).parent().parent().parent().find('span.phone-value-container input').each(function ()
			{
				number += this.value;
				this.disabled = true;
			});
			$(this).parent().parent().parent().find('input.phone-value').val(number);
		});
	});

	/**
	* Signup page
	*/

	// Recharge automatically?
	var checkRecharge = function (event)
	{
		if ($('#recharge-yes').get(0) && $('#recharge-yes').get(0).checked)
		{
			$('span.recharge-yes').show().find('select').attr({disabled:false});
		}
		else
		{
			$('span.recharge-yes').hide().find('select').attr({disabled:true});
		}
	};

	$('#recharge-yes, #recharge-no').click(checkRecharge);
	checkRecharge();

	// Add additional phone numbers?
	var checkAnswer = function (event)
	{
		if ($('#add-number-yes').get(0) && $('#add-number-yes').get(0).checked)
		{
			$('span.answer-yes').show().find('span.add-number-personal input, span.add-number-other input, span.add-number-other personal,  span.add-number-other select').attr({disabled:false});
		}
		else
		{
			$('span.answer-yes').hide().find('span.add-number-personal input, span.add-number-other input, span.add-number-other personal,  span.add-number-other select').attr({disabled:true});
		}
	};

	$('#add-number-yes, #add-number-no').click(checkAnswer);
	checkAnswer();

	// Add another personal/friend phone number.
	var fieldId = $('span.add-number-personal, span.add-number-other').size();
	$('a.add-number-other, a.add-number-personal').click(function (event)
	{
		event.preventDefault();

		$inputs = $('span.'+this.className+'-temp')
			.clone(true)
			.removeAttr('class')
			.addClass(this.className)
			.insertBefore('div.'+this.className+' p.add-another')
			.find('input, select')
			.attr('disabled', false)
			.each(function () {
				this.name = this.name.replace(/\!ID\!/, fieldId);
			});
		

		$inputs.get(0).focus();

		if ($('span.'+this.className).size() > 0)
		{
			$('div.'+this.className+' p.add-another').show();
		}

		fieldId++;
	});

	// Remove a phone number
	$('a.remove-number').click(function (event)
	{
		event.preventDefault();
		$(this).parent().parent().remove();

		if ($('span.add-number-personal').size() == 0)
		{
			$('div.add-number-personal p.add-another').hide();
		}

		if ($('span.add-number-other').size() == 0)
		{
			$('div.add-number-other p.add-another').hide();
		}
	});

	/**
	* My Account
	*/

	// Add funds, confirm
	$('#my.purchase div#mid form.survey').submit(function (event)
	{
		if (confirm('Add $'+$('#my.purchase div#mid select').attr('value')+' to your account?'))
		{
			return true;
		}
		event.preventDefault();
	});

	/**
	* Index Rate quote request
	*/
	var pId = document.getElementById("select");

	if( pId )
	{
		// Rates selection.
		$("select").is(".selected")
		{
			var testarray = $('#select').val().split("|");
			var _usf = 1.08;
			var min1 = parseInt(10 / (testarray[1] * _usf));
			var min2 = parseInt(20 / (testarray[1] * _usf));
			var min3 = parseInt(50 / (testarray[1] * _usf));
			var dsp = testarray[1];
			$('#promo2').html(testarray[0]);
			if (dsp < 1)
			{
				//dsp = (testarray[1] * 100);
				len = testarray[1].length;
				if (dsp < .1)
				{
					if (len > 3)
					{
						dsp = testarray[1].substr(2,1) + "." + testarray[1].substr(3);
					}
					else
					{
						dsp = testarray[1].substr(2);
					}
				}
				else
				{
					if (len > 3)
					{
						dsp = testarray[1].substr(1,2) + "." + testarray[1].substr(3);
					}
					else
					{
						dsp = testarray[1].substr(1);
					}
				}
				$('#promo3').html(dsp + '&cent;');
			}
			else
			{
				$('#promo3').html('$' + dsp);
			}
			//$('#promo4').html('500 min 600 min 700 min');
			$('#promo4').html('<p id = "promo4"><center><table cellpadding=3><tr><td>USD</td><td>$10</td><td>$20</td><td>$50</td></tr><tr><td>Minutes<a href="http://www.vincall.com/faqs#q02q03" style="text-decoration:none;color:black;">*</a></td><td>' + min1 + '</td><td>' + min2 + '</td><td>' + min3 + '</td></tr></table><center></p>');
		}
		$('select').change(function (event)
		{
			var len = 0;
			var _usf = 1.00;
			var testarray = $('#select').val().split("|");
			var min1 = parseInt(10 / (testarray[1] * _usf));
			var min2 = parseInt(20 / (testarray[1] * _usf));
			var min3 = parseInt(50 / (testarray[1] * _usf));
			$('#promo2').html(testarray[0]);
			var dsp = testarray[1];
			if (dsp < 1)
			{
				//dsp = (testarray[1] * 100);
				len = testarray[1].length;
				if (dsp < .1)
				{
					if (len > 3)
					{
						dsp = testarray[1].substr(2,1) + "." + testarray[1].substr(3);
					}
					else
					{
						dsp = testarray[1].substr(2);
					}
				}
				else
				{
					if (len > 3)
					{
						dsp = testarray[1].substr(1,2) + "." + testarray[1].substr(3);
					}
					else
					{
						dsp = testarray[1].substr(1);
					}
				}
				$('#promo3').html(dsp + '&cent;');
			}
			else
			{
				$('#promo3').html('$' + dsp);
			}
			//$('#promo4').html('500 min 600 min 700 min');
			//$("td.#calc1").html('1 min');
			$('#promo4').html('<p id = "promo4"><center><table cellpadding=3><tr><td>USD</td><td>$10</td><td>$20</td><td>$50</td></tr><tr><td>Minutes<a href="http://www.vincall.com/faqs#q02q03" style="text-decoration:none;color:black;">*</a></td><td>' + min1 + '</td><td>' + min2 + '</td><td>' + min3 + '</td></tr></table></center></p>');
		});
	}

});
