/**
 * @author LatecomerX
 * @copyright 2007
 */

$j(function() {
	addMemberFunction(loadSmsControlPanel);
	addMemberFunction(loadSmsPanel);
});

function loadSmsPanel() {
	if (!$j('*').is('#smsPanel')) { return false; }
	if (!$member) {
		$j('#smsPanel').fadeOut('fast');
		return false;
	}
	
	$j('#smsPanel').fadeIn('fast');
	
	showLoadingIcon('smsPanel', lxMessages['loadingInterface']);
	$j('#smsPanel').load('http://www.ticosland.com/inc/sms.panel.php', function() {
		$j('#eBann').keyup(function() {
			$j('#eBann').val(cleanSmsText($j('#eBann').val()));
			Contar('eBann','sBann',lxMessages['charLimit'],100);
		});
		$j('#textfield3').keyup(cleanNumberField);
		var options = {
			url: 'http://www.ticosland.com/inc/sms.handler.php',
			target: '#smsPanel',
			beforeSubmit: function() {
				if (isEmpty(v('eBann')) || v('eBann') == lxMessages['defaultSmsText']) {
					alert(lxMessages['missingSmsText']);
					return false;
				}
				
				if (!(isEmpty(v('textfield3')) || isPhoneNumber(v('textfield3')))) {
					alert(lxMessages['invalidCellphoneNumber']);
					return false;
				}
				
				showLoadingIcon('smsPanel', lxMessages['sendingMessage']);
				return true;
			}
		};
		$j('#form1').ajaxForm(options);
		$j('#form1').resetForm();
	});
}

function cleanSmsText(text) { return text.replace(/\r|\n/g, ''); }

function loadContactList(initial, offset, deleteId) {
	if (isEmpty(initial)) { initial = ''; }
	if (isEmpty(offset)) { offset = 0; }
	if (isEmpty(deleteId)) { deleteId = 0; }
	
	$j('#contactList').fadeOut('fast', function() {
		if (deleteId > 0) {	showLoadingIcon('contactList', lxMessages['deletingContact']); }
		else { showLoadingIcon('contactList', lxMessages['loadingContactList']); }
		$j('#contactList').fadeIn('fast', function() {
			$j.get('http://www.ticosland.com/inc/contact.list.php?initial=' + initial + '&offset=' + offset + '&delete=' + deleteId, function(data) {
				$j('#contactList').fadeOut('fast', function() {
					$j('#contactList').html(data);
					$j('#contactList').fadeIn('fast');
				});
			});
		});
	});
}

deleteContact = loadContactList;

function copyNumber(number) { $j('#textfield3').val(number); }

function loadAddContact() {	
	var options = {
		url: 'http://www.ticosland.com/inc/contact.handler.php',
		target: '#addContactForm',
		beforeSubmit: function() {
			if (isEmpty(v('name'))) {
				alert(lxMessages['missingName']);
				return false;
			}
			
			if (!(isPhoneNumber(v('number')))) {
				alert(lxMessages['invalidCellphoneNumber']);
				return false;
			}
			
			showLoadingIcon('addContactForm', lxMessages['addingContact']);
			return true;
		}
	};
	
	$j('#contactList').fadeOut('fast', function() {
		showLoadingIcon('contactList');
		$j('#contactList').fadeIn('fast', function() {
			$j.get('http://www.ticosland.com/inc/add.contact.php', function(data) {
				$j('#contactList').fadeOut('fast', function() {
					$j('#contactList').html(data);
					$j('#number').keyup(cleanNumberField);
					$j('#knowBd').change(function() {
						if ($j(this).val() == 1) { $j('#enterBdSection').slideDown('slow'); }
						else { $j('#enterBdSection').slideUp('slow'); }
					});
					$j('#enterBdSection').slideUp(1);
					$j('#addContactForm').ajaxForm(options);
					$j('#contactList').fadeIn('fast');
				});
			});
		});
	});
}

function loadReminderList(offset, deleteId) {
	if (isEmpty(offset)) { offset = 0; }
	if (isEmpty(deleteId)) { deleteId = 0; }
	
	$j('#reminderList').fadeOut('fast', function() {
		if (deleteId > 0) {	showLoadingIcon('reminderList', lxMessages['removingReminder']); }
		else { showLoadingIcon('reminderList', lxMessages['loadingReminderList']); }
		$j('#reminderList').fadeIn('fast', function() {
			$j.get('http://www.ticosland.com/inc/reminder.list.php?offset=' + offset + '&delete=' + deleteId, function(data) {
				$j('#reminderList').fadeOut('fast', function() {
					$j('#reminderList').html(data);
					$j('#reminderList').fadeIn('fast');
				});
			});
		});

	});
}

function loadAddReminder() {	
	var options = {
		url: 'http://www.ticosland.com/inc/reminder.handler.php',
		target: '#addReminderForm',
		beforeSubmit: function() {
			if (isEmpty(v('text'))) {
				alert(lxMessages['missingReminderText']);
				return false;
			}
			if (isEmpty(v('datetime'))) {
				alert(lxMessages['missingDatetime']);
				return false;
			}
			showLoadingIcon('addReminderForm', lxMessages['addingReminder']);
			return true;
		}
	};
	
	$j('#reminderList').fadeOut('fast', function() {
		showLoadingIcon('reminderList');
		$j('#reminderList').fadeIn('fast', function() {
			$j.get('http://www.ticosland.com/inc/add.reminder.php', function(data) {
				$j('#reminderList').fadeOut('fast', function() {
					$j('#reminderList').html(data);
					$j('#text').keyup(function() {
						$j(this).val(cleanSmsText($j(this).val()));
						Contar('text', 'textStatus', lxMessages['charLimit'], 100);
					});
					$j('#datetime').click(function() {
						alert(lxMessages['useCalendar']);
						$(this).blur();
					});
					$j('#calendar').click(function() {
						new CalendarDateSelect($('datetime'), {
							valid_date_check: function(date) { return(date >= (new Date()).stripTime()) },
							time: true,
							year_range: 2
						});
					});
					$j('#addReminderForm').ajaxForm(options);
					$j('#reminderList').fadeIn('fast');
				});
			});
		});
	});
}

deleteReminder = loadReminderList;

function togglePanels() {
	$j('#contactListContainer').slideToggle('fast');
	$j('#reminderListContainer').slideToggle('fast');
}

function loadSmsControlPanel() {
	if (!$j('*').is('#smsControlPanel')) { return false; }
	if (!$member) {
		$j('#smsControlPanel').fadeOut('fast');
		return false;
	}
	
	$j('#contactListContainer').show();
	$j('#reminderListContainer').hide();
	
	$j('#contactListHeader').click(togglePanels);
	$j('#reminderListHeader').click(togglePanels);
	
	$j('#smsControlPanel').fadeIn('fast');
	
	loadContactList();
	loadReminderList();
}
