﻿/*
 * GMail Javascript Factory
 */

// GMail
function GMail()
{	
	this.caller				= 'gmail_caller';
	this.InActiveContainer	= null;
	this.ActiveContainer	= null;
}

// Public Methods
GMail.prototype.Status			= gmail_status;
GMail.prototype.SetStatus		= gmail_setStatus;
GMail.prototype.View			= gmail_view;
GMail.prototype.EnableCaller	= gmail_enableCaller;
GMail.prototype.Login			= gmail_login;

// Events
GMail.prototype.StatusChanged = gmail_statusChanged;

// Private Methods
function gmail_status(){}
function gmail_view(){}

function gmail_login()
{
	window.open('/Mail/GMail.aspx');
}

function gmail_enableCaller(flag)
{
	var src = findObj(this.caller);	
	if(src)
		src.disabled = !flag;
}

function gmail_setStatus(status)
{	
	if(typeof(__MailPostBackHandler) != 'undefined')
	{
		var form = document.forms[0];		
		if(form.action == '')
			form.action = document.location.href;

		// Disable Caller
		this.EnableCaller(false);

		var handler = __MailPostBackHandler.replace('status', "'" + status + "'");
		handler = handler.replace('context', '345');
		handler = handler;
		eval(handler);
	}
	else
		alert('Cannot activate mailbox, please try again');
}

function gmail_statusChanged(status)
{		
	var active	 = div = findObj(Mail.ActiveContainer);	
	var inactive = div = findObj(Mail.InActiveContainer);	
	
	if(status == 'active')
	{		
		inactive.style.display = 'none';
		active.style.display = '';
		active.disabled = false;
		active.innerHTML = 'Το email σας είναι ενεργό.<br /><br />' +
						'<a href="/Mail/GMail.aspx" onclick="document.location.reload();" ' +
						'style="color: #366AB3;" target="_new">' +
						'Είσοδος στο GMail.</a>';
	}
	else
	{					
		inactive.innerHTML = 'Παρουσιάστηκε κάποιο πρόβλημα κατά την προσπάθεια να ενεργοποιηθεί το e-mail σας.<br />' +
						' Παρακαλώ δοκιμάστε ξανά σε λίγη ώρα.';					
	}
	
}

