if (typeof Oodle == "undefined" || !Oodle) {
	Oodle = window.Oodle || {};
}

Oodle.gui = Oodle.gui || {};
Oodle.gui.submitfeed = Oodle.gui.submitfeed || {};

new function(packageName)
{
	function FeedInformation()
	{
		var that = this;
		var form = document.getElementById('feedInformationForm');
		var inputs = form.getElementsByTagName('input');

		var feedFormatElem = document.getElementById('feedFormatDiv');
		var inputs = feedFormatElem.getElementsByTagName('input');
		for (var i = 0; i < inputs.length; i++)
		{
			var input = inputs[i];
			input.onclick = function()
			{
				that.changeFeedFormat();
			}
		}

		var feedTransferMechElem = document.getElementById('feedTransferMechDiv');
		var inputs = feedTransferMechElem.getElementsByTagName('input');
		for (var i = 0; i < inputs.length; i++)
		{
			var input = inputs[i];
			input.onclick = function()
			{
				that.changeFeedTransferMech();
			}
		}

		var feedFieldDelimiterElem = document.getElementById('feedFieldDelimiterDiv');
		var inputs = feedFieldDelimiterElem.getElementsByTagName('input');
		for (var i = 0; i < inputs.length; i++)
		{
			var input = inputs[i];
			input.onclick = function()
			{
				that.changeFeedFieldDelimiter(this);
			}
		}

		var feedURLElem = document.getElementById('feedURLDiv');
		var inputs = feedURLElem.getElementsByTagName('input');
		for (var i = 0; i < inputs.length; i++)
		{
			var input = inputs[i];
			input.onchange = function()
			{
				that.changeFeedURL();
			}
		}

		var feedFTPElem = document.getElementById('feedFTPDiv');
		var inputs = feedFTPElem.getElementsByTagName('input');
		for (var i = 0; i < inputs.length; i++)
		{
			var input = inputs[i];
			input.onkeyup = function()
			{
				that.changeFeedFTP();
			}
		}

		this.changeFeedFormat = function()
		{
			var form = document.getElementById('feedInformationForm');
			for (var i = form.feedFormat.length-1; i > -1; i--)
			{
				if (form.feedFormat[i].value == 'XML' && form.feedFormat[i].checked)
				{
					document.getElementById('feedListingElementDiv').style.display = 'block';
					document.getElementById('feedFieldDelimiterDiv').style.display = 'none';
				}
				else if (form.feedFormat[i].value == 'Delimited Text' && form.feedFormat[i].checked)
				{
					document.getElementById('feedFieldDelimiterDiv').style.display = 'block';
					document.getElementById('feedListingElementDiv').style.display = 'none';
				}
			}
		}

		this.changeFeedFieldDelimiter = function(input)
		{
			if (input.id == 'feedFieldDelimiterText')
			{
				document.getElementById('delimOther').checked = true;
			}

			var form = document.getElementById('feedInformationForm');
			for (var i = form.feedFieldDelimiter.length-1; i > -1; i--)
			{
				var field = form.feedFieldDelimiter[i];
				if (field.value == 'CSV' && field.checked)
				{
					document.getElementById('feedFieldDelimiterText').value = '';
				}
				else if (field.value == 'Tab' && field.checked)
				{
					document.getElementById('feedFieldDelimiterText').value = '';
				}
			}
		}

		this.changeFeedTransferMech = function()
		{
			var form = document.getElementById('feedInformationForm');
			for (var i = form.feedTransferMech.length-1; i > -1; i--)
			{
				if (form.feedTransferMech[i].value == 'Via URL' && form.feedTransferMech[i].checked)
				{
					document.getElementById('feedURLDiv').style.display = 'block';
					document.getElementById('feedURL').readOnly = false;
					document.getElementById('feedURL').style.backgroundColor = '#ffffff';
					document.getElementById('feedFTPDiv').style.display = 'none';
				}
				else if (form.feedTransferMech[i].value == 'Via FTP' && form.feedTransferMech[i].checked)
				{
					document.getElementById('feedURLDiv').style.display = 'block';
					document.getElementById('feedURL').readOnly = true;
					document.getElementById('feedURL').style.backgroundColor = '#dddddd';
					document.getElementById('feedFTPDiv').style.display = 'none';
					document.getElementById('feedFTPDiv').style.display = 'block';
				}
				else if (form.feedTransferMech[i].value == 'FTP to Oodle' && form.feedTransferMech[i].checked)
				{
					document.getElementById('feedURLDiv').style.display = 'none';
					document.getElementById('feedFTPDiv').style.display = 'none';
				}
			}
		}

		this.changeFeedURL = function()
		{
			var form = document.getElementById('feedInformationForm');
			document.getElementById('feedFTPDomain').value = '';
			document.getElementById('feedFTPFilePath').value = '';
			document.getElementById('feedFTPFileName').value = '';
			document.getElementById('feedFTPUsername').value = '';
			document.getElementById('feedFTPPassword').value = '';
		}

		this.changeFeedFTP = function()
		{
			var form = document.getElementById('feedInformationForm');
			var domain = document.getElementById('feedFTPDomain').value;
			var filepath = document.getElementById('feedFTPFilePath').value;
			var filename = document.getElementById('feedFTPFileName').value;
			var username = document.getElementById('feedFTPUsername').value;
			var password = document.getElementById('feedFTPPassword').value;
			var url = '';
			if (domain != '')
			{
				url = 'ftp://';
				if (username != '' || password != '')
				{
					url += encodeURIComponent(username) + ':';
					url += encodeURIComponent(password) + '@';
				}
				url += domain;
				filepath = filepath || '/';
				if (filepath.substr(0, 1) != '/')
				{
					filepath = '/' + filepath;
				}
				if (filepath.substr(filepath.length - 1, 1) != '/')
				{
					filepath = filepath + '/';
				}
				url += filepath;
				url += filename;
			}
			document.getElementById('feedURL').value = url;
		}
	}

	packageName.FeedInformation = FeedInformation;

} (Oodle.gui.submitfeed);

addDOMLoadEvent(function() { new Oodle.gui.submitfeed.FeedInformation(); });

