﻿var currentFlyout;
var flyoutFirstShow = true;
$(function(){
	$('.hidden').hide();
    cmdAttach.hide();
    cmdAttach.click(function()
    {
        currentFlyout = $.showFlyout(true, 1, {
			width: 350,
			height: 173,
			css: {
			  background: 'white',
			  border: ($.browser.msie ? '2px solid #333333' : '0px')
			},
			translucentBorder: !($.browser.msie),
			darkModal: true,
			showCloseButton: true
		  }, uploadContents);

		cmdAddAnother.bind('click', addAnother);
		cmdFinish.click(function()
		{
			currentFlyout.remove();
			return false;
		});
		uploadContents.find('img').click(function() { $(this).parent().remove(); });
		uploadContents.find('.upwrap').hover(function()
        {
            $(this).css('background-color', '#efefef');
        },
        function()
        {
            $(this).css('background-color', 'transparent');
        });
		
		if (flyoutFirstShow)
		{
			cmdAddAnother.trigger('click');
			flyoutFirstShow = false;
		}
        return false;
    });
	
    cmdSubmit.enableValidation({
        validate: txtName.add(txtEmail).add(txtQC)
    }).enableRegexValidation({
		validate: txtEmail,
		regex: '^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$',
		failMsg: 'Invalid Email Address',
		tipRelativeTop: -7,
		tipRelativeLeft: -87
	});
	
	cmdSubmit.click(function(){	
		var thisobj = this;
		/*setTimeout(function(){
			$(thisobj).attr('disabled', 'disabled');
			$(thisobj).val('Processing');
		}, 100);*/
		
		$(this).after(uploadContents.hide());
		uploadContents.find('input').each(function(){
			if ($(this).val() == '')
				$(this).remove();
		});
	});
	
	var etype = $.browser.msie?'click':'change';			
	radType.find('input').bind(etype, function()
	{
	    if (this.value.toLowerCase().indexOf('bug') > -1)
	    {
	        cmdAttach.show();
	        $('#description_container').text("Detailed description of the problem:");
	    }
	    else
	    {
	        cmdAttach.hide();	
	        $('#description_container').text("Questions/Comments:");	    
	    }
	});
});  

function showInvalid()
{
    alert('There was a problem with the information in the contact form.  Please check the fields and try again.');
}

function addAnother(e)
{
    try
    {
        if (uploadContents.find('input[type=file]').length < 3)
        {
            var newUpload = $('<div class="upwrap"><input type="file" name="contactAttachment' + String(Math.floor(Math.random() * 1000)) + '" /></div>')
                .hover(function()
                {
                    $(this).css('background-color', '#efefef');
                },
                function()
                {
                    $(this).css('background-color', 'transparent');
                }
            );
			newUpload.find('input').change(uploadChanged).before($('<img src="' + applicationPath + 'images/cancel.gif" alt="Remvoe" />').css('float', 'right').click(function() { $(this).parent().remove(); }));
            uploadContents.find('.fileuploads').append(newUpload);
        }
        else
        {
            uploadContents.find('.placeholder').text('Sorry, you can only add 3 attachments.');
        }
        return false;
    }
    catch(e)
    {
        for (x in e)
            if (typeof log != 'undefined') log.info(x + ": " + e[x]);
        return false;
    }
}

function uploadChanged(e)
{
	var rexp = new RegExp('.*(\\.[Jj][Pp][Gg]|\\.[Gg][Ii][Ff]|\\.[Jj][Pp][Ee][Gg]|\\.[Pp][Nn][Gg])');
	if(!($(this).val().match(rexp)))
	{
		$(this).val('');
        uploadContents.find('.placeholder').text('Sorry, you can only add image files (.jpg, .gif, .png).');
		return;
	}	
    uploadContents.find('.placeholder').text('');
}

function showSuccess(toUrl)
{
	var content = $("<div class='successmsg'></div>")
		.text('Your email has been sent successfully.')
		.css('margin-top', '50px')
		.append(
			$("<p>&nbsp;</p><input type='button' value='Continue' class='SATButton_small' />")
			.click(function(){
				jbom.removeFlyout();
			})
		);
	var jbom = $.showFlyout(true, 1, {
		width: 350,
		height: 173,
		css: {
		  background: 'white',
		  border: ($.browser.msie ? '2px solid #333333' : '0px')
		},
		translucentBorder: !($.browser.msie),
		darkModal: true,
		showCloseButton: true
	}, content);
	jbom.bind('remove', function() 
	{ 
		window.location.href = toUrl;
	});
}

function setBug()
{
    $(function() { radType.find('input[type=radio][value*=Bug]').trigger('click').trigger('change'); });
}
