if(typeof(mtCookieDomain) == 'undefined')
	mtCookieDomain = '';

if(typeof(base_url) == 'undefined')
	base_url = "/cgi-bin/mt/mt-cp.cgi?";
	
var curr_tab = 'inbox';
var initted = false;
var reload = 0;
var mbox_offset = 0;

var form_opts = {
	beforeSubmit: 	formSubmit,
	success: 		formResponse,
	dataType:  		'jsonp',
	type: 			'GET'
};

function cPlusLoginCheck() {
	
    var eid = 'logged_in';
	var u = cplusIsLoggedIn();
    conditional_block(u, eid);

    if (!u) {
        var p = document.getElementById('login_message');
        if (!p) return;
        if (u && !u.is_author) 
            p.innerHTML = "Please login first.";
        else
            if (u && !u.can_post)
                p.innerHTML = "You don't have permission to post";
            else
                p.innerHTML = '<a href="javascript:void(0)" onclick="return mtSignInOnClick(\'login_message\')">Sign in, to chat.</a>';
    } else {
        var mt = document.getElementById('magic_token');
        if (mt) mt.value = u.sid;
    }

}

function cplusIsLoggedIn() {
	var u = mtGetUser();
    return u && u.is_authenticated && u.is_author ? u : false;
}

function _initCPlus(force) {
	
//	if( (initted || mtGetCookie(blog_id + "_grp")) && !force  ) return;
	
	// load all the community, groups, partners, sponsors info
	var u = cplusIsLoggedIn();
	if(!u.id) u.id = "";

	var url = "__mode=cplusInitCPlus&blog_id="+blog_id;
	if(u) url+= "&id=" + u.id + "&name="+u.name;
	url+= "&jsonp=?";	//JSONP saves!!

	if(base_url)
		url = base_url + url;

	var curr_blog_id = 0;

	var cache_period = mtCookieTimeout * 1000;
	var now = new Date();
	mtFixDate(now);
	now.setTime(now.getTime() + cache_period);

	$.getJSON( url, function(initcplus){
		if(!initcplus || initcplus.error) return;
		// eval(data);

		//Load the Groups related info
		if(initcplus) {

			if(initcplus.ucheck) {
				mtDeleteCookie('ucheck', '/', mtCookieDomain, '');
				mtSetCookie('ucheck', initcplus.ucheck, now, '/', mtCookieDomain, '');
			}
			if(initcplus.gcheck) {
				mtDeleteCookie('gcheck', '/', mtCookieDomain, '');
				mtSetCookie('gcheck', initcplus.gcheck, now, '/', mtCookieDomain, '');
			}
			if(initcplus.groups) {
				mtDeleteCookie("grpids", '/', mtCookieDomain, '');
				mtSetCookie('grpids', initcplus.groups, now, '/', mtCookieDomain, '');				
			}
			if(initcplus.logos) {
				mtDeleteCookie("glogos", '/', mtCookieDomain, '');
				mtSetCookie('glogos', initcplus.logos, now, '/', mtCookieDomain, '');				
			}
			if(initcplus.metas) {
				mtDeleteCookie("gmetas", '/', mtCookieDomain, '');
				mtSetCookie('gmetas', initcplus.metas, now, '/', mtCookieDomain, '');				
			}
			if(initcplus.contacts) {
				mtDeleteCookie( "ctcs", '/', mtCookieDomain, '');
				mtSetCookie('ctcs', initcplus.contacts, now, '/', mtCookieDomain, '');
			}
		}

		if(force) {
			var loc = window.location.href.replace(/\#.*$/, '');
			window.location.href=loc;
		}
	});
}

function doCompose(data) {

	var val = 0;
	if(data)
		val = data.status;
	
	var No = document.getElementById('IsCtcNo');
	var Yes = document.getElementById('IsCtcYes');
	if( val ) {
		No.style.display= 'none';
		Yes.style.display=  'block';
	} else {
		Yes.style.display= 'none';
		No.style.display=  'block';
	}
}

function IsContact(ctcid, callback) {
	var ret_val = 0;
	
	if(!callback) {
		var cstr = mtGetCookie("ctcs");
		var ctcs = cstr.split(',');
		$.each(ctcs, 
			function (i, uid) {
				if(ctcid == uid) {
					ret_val = 1;
					return;
				}
			}
		);
		return ret_val;
	} else {
	
		//Fallback to CMS if not in cookies
		var u = cplusIsLoggedIn();
		if(u) {

			var url = "__mode=cplusJSIsContact";
			if(u) url+= "&contact_id=" + ctcid;
			url+= "&jsonp=?";	//JSONP saves!!
			if(base_url)
				url = base_url + url;

			ret_val = $.getJSON( url, callback );
		}
	}
	return ret_val;
}

function loadDesc(grpid) {
	
	if(typeof(grpid) == 'undefined' || grpid == '')
		grpid = blog_id;
		
	var url = "__mode=cplusJSGrpDesc&blog_id="+grpid;
	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;

	var descdiv = "#desc_"+grpid;
	$.getJSON( url, function(desc){
		if(!desc || desc.error) return;
		// eval(data);

		if(typeof(desc) != 'undefined' && desc.val && desc.val != '') {
			$(descdiv).innerHTML = desc.val;
			$(descdiv).html(desc.val);
		}
	});
}

function loadLogo(imgid, wd, ht, scl) {
//	if(typeof(imgid) == 'undefined' || imgid == '' || imgid == 0) return;
	
	var url = "__mode=cplusJSGrpLogo&blog_id="+blog_id+"&asset_id="+imgid;
	if(!(typeof(wd) == 'undefined' || wd == '' || wd == 0)) {
		url += '&width='+wd
	}
	if(!(typeof(ht) == 'undefined' || ht == '' || ht == 0)) {
		url += '&height='+ht
	}
	if(!(typeof(scl) == 'undefined' || scl == '' || scl == 0)) {
		url += '&scale='+scl
	}
	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;

	var imgdiv = "#img_"+imgid;
	$.getJSON( url, function(asset){
		if(!asset || asset.error) return;
		// eval(data);

		if(typeof(asset) != 'undefined' && asset.html && asset.html != '') {
			$(imgdiv).innerHTML = asset.html;
			$(imgdiv).html(asset.html);
		} else if(typeof(asset) != 'undefined' && asset.url) {
			if(!asset.group || typeof(asset.group) == 'undefined')
				asset.group = '';
			$(imgdiv).html("<img src='"+asset.url+"' alt='"+asset.group+" avatar'/>");
		}
	});
}

function loadMembers(type, banner, limit, sort, order) {
	var url = "__mode=cplusJSGrpMembers&cont="+type+"&blog_id="+blog_id;

	if(parseInt(limit) > 0)
		url += "&limit="+limit;
		
	if(typeof(sort) != 'undefined')
		url += "&sort="+sort;

	if(typeof(order) != 'undefined')
		url += "&order="+order;

	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;
	
	$.getJSON(url, function(grpusers){
		if(!grpusers || grpusers.error) return;
		// eval(grpusers);

		if(typeof(grpusers) == 'undefined') return;

		var membersdiv = "#grpmembers" + type;
		$(membersdiv).innerHTML = "";
		$(membersdiv).html("");

		if(typeof(banner) == 'undefined' || banner == '')
			banner = grpusers.banner;

		$(membersdiv).append("<div id='banner'>"+banner+"</div>");
		$(membersdiv).append("<div id='notify'></div>");

		var meta1, meta2, meta3, meta4;
		$.each(grpusers.meta, function(i,item){
			eval("meta"+item.key + " = '" + item.val + "'");
		});

		//Add member items
		var cnt = 0;
		$.each(grpusers.users, function(i,item){
			var row_class = 'rowodd';
			if((cnt++)%2 != 0)
				row_class = 'roweven';

			var html = "<div class='member'>\n";
			html += "<div class='"+row_class+"'>\n";
		html += "<dl>";
			html += "<dd class='userpic'>";
			html += "<img src='" + item.userpic+ "' alt='"+item.username+" avatar' border='0' width-'36' height= '36' />";    
			html += "</dd>";
				html += "<dt>";
			
				if(item.userurl)
					html += "<a href='"+item.userurl+"'>"+item.username+"</a>";
				else
					html += item.username;
					html += "</dt>";	
				
					if(item.meta_1 && meta1)
						html += "<dd>"+meta1+": " + item.meta_1 + "</dd>";
					if(item.meta_2 && meta2)
						html += "<dd>"+meta2+": " + item.meta_2 + "</dd>";
					if(item.meta_3 && meta3)
					    html += "<dd>"+meta3+": " + item.meta_3 + "</dd>";
					if(item.meta_4 && meta4)
						html += "<dd>"+meta4+": " + item.meta_4 + "</dd>";
					if(item.meta_5 && meta5)
						html += "<dd>"+meta5+": " + item.meta_5 + "</dd>";
					if(item.meta_6 && meta6)
						html += "<dd>"+meta6+": " + item.meta_6 + "</dd>";
					if(item.meta_7 && meta7)
						html += "<dd>"+meta7+": " + item.meta_7 + "</dd>";
					if(item.meta_8 && meta8)
						html += "<dd>"+meta8+": " + item.meta_8 + "</dd>";

			html += "</dl>\n";
         
			
		if(item.action || item.ban)
            html += "<div class='actions'>\n";
			if(item.action)
				html += "<a rel='memlinks' href='"+item.action+"'>"+item.act_title+"</a> &nbsp; | &nbsp;\n";
			if(item.ban)
				html += "<a rel='memlinks' href='"+item.ban+"'>Ban</a>\n";
				
		if(item.action || item.ban)
			html += "</div>\n";
			
            html += "<div class='clearme'>&nbsp;</div>\n";   
			html += "</div>\n";
		
			html += "</div>\n";

       		$(membersdiv).append(html);
		});

		// Load all the facebox links
		$('a[rel*=memlinks]').facebox({
			loadingImage : static_url + '/js/facebox/loading.gif',
			closeImage   : static_url + '/js/facebox/closelabel.gif',
			overlay		 : false
		});

	});
}

function loadRequests(type, banner, limit, sort, order) {
	var url = "__mode=cplusJSGrpRequests&cont="+type+"&blog_id="+blog_id;

	if(parseInt(limit) > 0)
		url += "&limit="+limit;
		
	if(typeof(sort) != 'undefined')
		url += "&sort="+sort;

	if(typeof(order) != 'undefined')
		url += "&order="+order;

	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;

	$.getJSON(url, function(grpopenreqs){
		if(!grpopenreqs || grpopenreqs.error) return;
		// eval(data);

		if(typeof(grpopenreqs) == 'undefined') return;

		var membersdiv = "#grprequests" + type;
		$(membersdiv).innerHTML = "";
		$(membersdiv).html("");

		if(typeof(banner) == 'undefined' || banner == '')
			banner = grpopenreqs.banner;

		$(membersdiv).append("<div id='banner'>"+banner+"</div>");
		$(membersdiv).append("<div id='notify'></div>");

		//Add request items
		var cnt = 0;
		$.each(grpopenreqs.users, function(i,item){
			var row_class = 'rowodd';
			if((cnt++)%2 != 0)
				row_class = 'roweven';

			var html = "<div class='request'>\n";
			html += "<div class='"+row_class+"'>\n";

			html += "<div class='userpic'>\n";
			if(item.userurl)
				html += "<a href='"+item.userurl+"'>";
			html += "<img src='" + item.userpic+ "' alt='"+item.username+" avatar' />\n";
			if(item.url)
				html += "</a>\n";
			html += "</div>\n";

			html += "<div class='details'>";
			html += "<span class='uname'>";
			if(item.userurl)
				html += "<a href='"+item.userurl+"'>"+item.username+"</a>";
			else
				html += item.username;
			html += "</span><br />\n";

			if(item.notes && item.notes != '') {
				
				notes = item.notes.replace(/\n\n/g, '\n');
				notes = notes.replace(/\n/g, '<br />');
				var cutoff = 60;
				readless = notes.substr(0, cutoff);
				readmore = notes.substr(cutoff);
				if(readmore)
					readmore = "  <a rel='reqlinks' class='tooltip' href='#req"+item.id+"' title='"+item.notes+"'>more...</a>";
				html += "<span id='req"+item.id+"' style='display: none;'><b>Note to Group Admin</b><br />"+notes+"</span><span class='notes'>Note: "+readless+readmore+"</span>\n";
			}
			
			html += "<div class='actions'>\n";
			if(item.approve)
				html += "<a rel='reqlinks' href='"+item.approve+"'>Approve</a> &nbsp; | &nbsp;\n";
			if(item.reject)
				html += "<a rel='reqlinks' href='"+item.reject+"'>Reject</a> &nbsp;\n";
			html += "</div>\n";

			html += "</div>\n";

			html += "</div>\n";
			html += "</div>\n";

       		$(membersdiv).append(html);
		});

		// Load all the facebox links
		$('a[rel*=reqlinks]').facebox({
			loadingImage : static_url + '/js/facebox/loading.gif',
			closeImage   : static_url + '/js/facebox/closelabel.gif',
			overlay		 : false
		});

	});
}

function loadUserGroups(banner, user_id) {
	var url = "__mode=cplusJSUserGroups&id="+user_id;
	url+= "&jsonp=?";	//JSONP saves!!

	if(base_url)
		url = base_url + url;

	$.getJSON(url, function(usersgrps){
		if(!usersgrps || usersgrps.error) return;
		// eval(data);

		if(typeof(usersgrps) == 'undefined' || typeof(usersgrps.obj) == 'undefined') return;

		var usrgrps = "#usergroups";
		$(usrgrps).innerHTML = "";
		$(usrgrps).html("");

		if(typeof(banner) == 'undefined' || banner == '')
			banner = usersgrps.banner;
		$(usrgrps).append("<div id='banner'>"+banner+"</div>");

		//Add groups items
		var cnt = 0;
		$.each(usersgrps.obj, function(i,item){
			var row_class = 'rowodd';
			if((cnt++)%2 != 0)
				row_class = 'roweven';

			var html = "<div class='group'>\n";
			html += "<div class='"+row_class+"'>\n";

			if(item.url)
				html += "<a href='"+item.url+"'>";

			html += "<div class='avatar'>\n";

			if(item.logo)
				html += item.logo
			else
				html += "<img src='" + item.logo_url+ "' alt='"+item.name+" avatar' />\n";
			html += "</div>\n";
			html += "<div class='name'>" + item.name+ "</div>\n";

			if(item.desc)
				html += "<br /><div class='details'>"+item.desc+"</div>\n";

			if(item.url)
				html += "</a>\n";
			
			html += "</div>\n";
			html += "</div>\n";

       		$(usrgrps).append(html);
		});
	});
}

function loadRecentMsgs(type, banner, limit, sort, order) {

	var u = cplusIsLoggedIn();
    if(!u) return;
	if(!u.id) u.id = "";

	if(typeof(type) == 'undefined')
		type = 'inbox';

	var url = "__mode=cplusJSInbox&mbox="+type;

	if(parseInt(limit) > 0)
		url += "&limit="+limit;
		
	if(typeof(sort) != 'undefined')
		url += "&sort="+sort;

	if(typeof(order) != 'undefined')
		url += "&order="+order;

	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;

	if(u) {
		$.getJSON(url, function(mymailbox){
			if(!mymailbox || mymailbox.error) return;
			// eval(data);
			
			if(typeof(mymailbox) == 'undefined') return;
			
			var recentdiv = "#recentmsgs-" + type;
			$(recentdiv).innerHTML = "";
			$(recentdiv).html("");
			
			if(typeof(banner) == 'undefined' || banner == '')
				banner = mymailbox.banner;
				
			$(recentdiv).append("<div id='banner'>"+banner);
			// $(recentdiv).append("<div id='label-compose'><a rel='recmsgs' href='"+mymailbox.composeurl+"'>"+mymailbox.compose+"</a></div></div>");
			$(recentdiv).append("<div id='notify'></div>");

			//Add Mbox items
			var cnt = 0;
			$.each(mymailbox.items, function(i,item){

				var item_subject = item.subject;
				if(item.folder == 'inbox') {
					if(parseInt("" + item.isnew + "") == 1) // 1 = NEW, 2 = OPENED
						item_subject = "<span id='isread_"+item.msg_id+"' class='unread'>NEW</span> " + item_subject;
				}

				var row_class = 'msgodd';
				if((cnt++)%2 != 0)
					row_class = 'msgeven';

				var html = "<div class='recentmsgs-message'>\n";
				html += "<div class='"+row_class+"'>\n";

				html += "<div class='userpic'><img src='" + item.userpic+ "' alt='"+item.username+" avatar' /></div>\n";
				html += "<div id='brief_"+i+"' class='details'>\n";
				html += "<div class='subject'><a rel=\"recmsgs\" href='" +item.msglink+ "'>"+item_subject+"</a>\n";
				html += "</div>\n"; // End Subject

				html += "<div class='subtext'>"+item.subtext+"</div>\n";
				html += "</div>\n";
				var morelink = "<a rel=\"recmsgs\" href='" +item.msglink+ "'>...Read more</a>"
				if(!item.readmore)
					morelink = "";	
				// html += "<div class='content'>"+item.summary+morelink+"</div>\n";

				// html += "<div class='actions'>\n";
				// 
				// if(item.folder != 'trash')
				// 	html += "<a rel='recmsgs' href='"+item.replink+"'>Reply</a> |\n";
				// if(item.folder != 'trash')
				// 	html += "<a rel='recmsgs' href='"+item.dellink+"'>Delete</a>\n";
				// else
				// 	html += "<a rel='recmsgs' href='"+item.dellink+"'>Trash</a>\n";
				// html += "</div>\n"; // End Actions

				html += "</div>\n";
				html += "</div>\n";

           		$(recentdiv).append(html);
          	});
			// Finished loading all messages

			// Wire the refresh
			$("#label-refresh").click(function(event){
				mbox_offset = 0;
				$(recentdiv).html("");
				$(recentdiv).append("<div id='waitbox'><img src='"+mymailbox.waitimg+"' border=0 alt='loading...' /></div>\n");
				$(recentdiv).css('display', 'block');
				loadMBOX();
			 });

			// Load all the facebox links
			$('a[rel*=recmsgs]').facebox({
				loadingImage : static_url + '/js/facebox/loading.gif',
				closeImage   : static_url + '/js/facebox/closelabel.gif',
				overlay		 : false
			});
			
			// Wire the facebox reveal with JQuery Form plugin
			// This triggers just after Facebox is loaded and about to be rendered fully - SO DOM IS Good 
			$(document).bind('reveal.facebox', function() {

				$("#msg_blog_id").val(blog_id);
				$("#msg_blog_id").attr('value', blog_id);
				$("#reply_blog_id").val(blog_id);
				$("#reply_blog_id").attr('value', blog_id);
				$("#trash_blog_id").val(blog_id);
				$("#trash_blog_id").attr('value', blog_id);

			    // bind form using 'ajaxForm' 
			    $('#replyform').ajaxForm(form_opts);
			    $('#trashform').ajaxForm(form_opts);
			    $('#sendform').ajaxForm(form_opts);
			});
		});
	}
}

function loadInbox() { loadMBOX(); }

function loadMBOX(tab, banner, limit, sort, order, offset) {
	
	if(typeof(tab) == 'undefined' || !(tab == 'inbox' || tab == 'outbox' || tab == 'trash') )
		tab = curr_tab;
	
	var u = cplusIsLoggedIn();
    if(!u) return;
	if(!u.id) u.id = "";

	var url = "__mode=cplusJSInbox";

	if(parseInt(limit) > 0)
		url += "&limit="+limit;
	else
		limit = 10;
		
	if(typeof(sort) != 'undefined')
		url += "&sort="+sort;

	if(typeof(order) != 'undefined')
		url += "&order="+order;

	if(typeof(tab) != 'undefined')
		url += "&mbox="+tab;

	if(typeof(offset) != 'undefined' && parseInt(offset) >= 0 )
		url += "&offset="+offset;
	else if(mbox_offset >= 0)
		url += "&offset="+mbox_offset;
	else
		mbox_offset = 0;

	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;

	if(u) {
		$.getJSON(url, function(mymailbox){
			if(!mymailbox || mymailbox.error) return;
			// eval(data);

			var mailboxdiv = '#mailbox';
			
			$(mailboxdiv).innerHTML = "";
			$(mailboxdiv).html("");
			
			if(typeof(banner) == 'undefined' || banner == '')
				banner = mymailbox.banner;
			
			$(mailboxdiv).append("<div id='label-compose'><a rel='mboxlinks' href='"+mymailbox.composeurl+"'>"+mymailbox.compose+"</a></div>");
			$(mailboxdiv).append("<div id='banner'>"+banner+"</div>");
			$(mailboxdiv).append("<div id='actions'></div>");
			$(mailboxdiv).append("<div id='notify'></div>");

			// Create the folder labels
			$('#actions').append('<a id="label-inbox" href="javascript:void(0)">Inbox</a> | ');
			$('#actions').append('<a id="label-outbox" href="javascript:void(0)">Sent</a> | ');
			$('#actions').append('<a id="label-trash" href="javascript:void(0)">Deleted</a> | ');
			$('#actions').append('<a id="label-refresh" href="javascript:void(0)">Refresh</a>');
			$('#actions').append('<br />');

			// Create the folder containers
			$(mailboxdiv).append('<div id="inbox"></div>');
			$(mailboxdiv).append('<div id="outbox"></div>');
			$(mailboxdiv).append('<div id="trash"></div>');
			
			//Add Inbox items
			var cnt_inbox = 0, cnt_outbox = 0, cnt_trash = 0;
			var msg_count = 0;
			$.each(mymailbox.items, function(i,item){

				var item_subject = item.subject;
				
				var cnt = 0;
				if(item.folder == 'inbox') {
            		cnt = cnt_inbox;
					if(parseInt("" + item.isnew + "") == 1) // 1 = NEW, 2 = OPENED
						item_subject = "<span id='isread_"+item.msg_id+"' class='unread'>NEW</span> " + item_subject;
				}
				if(item.folder == 'outbox')
           			cnt = cnt_outbox;
				if(item.folder == 'trash')
           			cnt = cnt_trash;

				var row_class = 'msgodd';
				if((cnt++)%2 != 0)
					row_class = 'msgeven';

				var html = "<div class='mailbox-message'>\n";
				html += "<div class='"+row_class+"'>\n";
				
				html += "<div class='userpic'><img src='" + item.userpic+ "' alt='"+item.username+" avatar' /></div>\n";
				html += "<div id='brief_"+i+"' class='details'>\n";
				html += "<div class='subject'><a rel=\"mboxlinks\" href='" +item.msglink+ "'>"+item_subject+"</a></div>\n";
				html += "<div class='subtext'>"+item.subtext+"</div>\n";
				html += "</div>\n";
				var morelink = "<a rel=\"mboxlinks\" href='" +item.msglink+ "'>...Read more</a>"
				if(!item.readmore)
					morelink = "";	
//				html += "<div class='content'>"+item.summary+morelink+"</div>\n";
				html += "<div class='actions'>\n";

				if(item.folder != 'trash')
					html += "<a rel='mboxlinks' href='"+item.replink+"'>Reply</a> |\n";
				if(item.folder != 'trash')
					html += "<a rel='mboxlinks' href='"+item.dellink+"'>Delete</a>\n";
				else
					html += "<a rel='mboxlinks' href='"+item.dellink+"'>Trash</a>\n";
				html += "</div>\n";

				html += "</div>\n";
				html += "</div>\n";

				if(item.folder == 'inbox') {
            		$("#inbox").append(html);
            		cnt_inbox = cnt;
				}
				if(item.folder == 'outbox') {
            		$("#outbox").append(html);
            		cnt_outbox = cnt;
				}
				if(item.folder == 'trash') {
            		$("#trash").append(html);
            		cnt_trash = cnt;
				}
          	});
			// Finished loading all messages
			
			var emptyFolder = "<span class='empty'>No more messages.</span><br />\n";
			if(curr_tab == 'outbox') {
				msg_count = cnt_outbox;
				if(!msg_count)
					$('#outbox').append(emptyFolder);
				dispOutbox();
			} else if(curr_tab == 'trash') {
				msg_count = cnt_trash;
				if(!msg_count)
					$('#trash').append(emptyFolder);
				dispTrash();
			} else {
				msg_count = cnt_inbox;
				if(!msg_count)
					$('#inbox').append(emptyFolder);
				dispInbox();
			}
			
			$("#inbox").append("<br />\n");
			
			if(msg_count == 0 || !mymailbox.offset || mymailbox.offset > limit ) {
				if(!mymailbox.offset)
					mbox_offset = 0;
				$("#"+curr_tab).append("<a href=\"javascript:;\" onclick=\"loadingStatus();mbox_offset-="+parseInt(limit)+";loadMBOX()\">&lt; Previous</a> &nbsp; | &nbsp; "); 
			}
    		$("#"+curr_tab).append("<a href=\"javascript:;\" onclick=\"loadingStatus();mbox_offset="+parseInt(mymailbox.offset)+";loadMBOX()\">Next &gt;</a>");

			// Wire the show-hide funcs
			$("#label-inbox").click(function(event){
				mbox_offset = 0;
				loadingStatus();
				dispInbox();
				loadMBOX();
			 });
			$("#label-outbox").click(function(event){
				mbox_offset = 0;
				loadingStatus();
				dispOutbox();
				loadMBOX();
			 });
			$("#label-trash").click(function(event){
				mbox_offset = 0;
				loadingStatus();
				dispTrash();
				loadMBOX();
			 });
			
			// Wire the refresh
			$("#label-refresh").click(function(event){
				mbox_offset = 0;
				$("#mailbox").html("");
				$("#mailbox").append("<div id='waitbox'><img src='"+mymailbox.waitimg+"' border=0 alt='loading...' /></div>\n");
				$("#waitbox").css('display', 'block');
				loadMBOX();
			 });

			// Load all the facebox links
			$('a[rel*=mboxlinks]').facebox({
				loadingImage : static_url + '/js/facebox/loading.gif',
				closeImage   : static_url + '/js/facebox/closelabel.gif',
				overlay		 : false
			});
			
			// Wire the facebox reveal with JQuery Form plugin
			// This triggers just after Facebox is loaded and about to be rendered fully - SO DOM IS Good 
			$(document).bind('reveal.facebox', function() {

				$("#msg_blog_id").val(blog_id);
				$("#msg_blog_id").attr('value', blog_id);
				$("#reply_blog_id").val(blog_id);
				$("#reply_blog_id").attr('value', blog_id);
				$("#trash_blog_id").val(blog_id);
				$("#trash_blog_id").attr('value', blog_id);

			    // bind form using 'ajaxForm' 
			    $('#replyform').ajaxForm(form_opts);
			    $('#trashform').ajaxForm(form_opts);
			    $('#sendform').ajaxForm(form_opts);
			});
        });
	}
	else {
		$(mailboxdiv).innerHTML = "";
		$(mailboxdiv).html("");
		$(mailboxdiv).append("<div id='banner'>please sign in...</div>");
	}

}

function dispInbox() {
	curr_tab = 'inbox';
	$("#inbox").css('display', 'block');
	$("#outbox").css('display', 'none');
	$("#trash").css('display', 'none');

	$("#label-inbox").css('text-decoration', 'underline');
	$("#label-outbox").css('text-decoration', 'none');
	$("#label-trash").css('text-decoration', 'none');
}

function dispOutbox() {
	curr_tab = 'outbox';
	$("#inbox").css('display', 'none');
	$("#outbox").css('display', 'block');
	$("#trash").css('display', 'none');

	$("#label-inbox").css('text-decoration', 'none');
	$("#label-outbox").css('text-decoration', 'underline');
	$("#label-trash").css('text-decoration', 'none');
}

function dispTrash() {
	curr_tab = 'trash';
	$("#inbox").css('display', 'none');
	$("#outbox").css('display', 'none');
	$("#trash").css('display', 'block');

	$("#label-inbox").css('text-decoration', 'none');
	$("#label-outbox").css('text-decoration', 'none');
	$("#label-trash").css('text-decoration', 'underline');
}

function loadingStatus() {	
	$("#notify").html('Loading...');
	$("#notify").fadeIn("slow");
}

function loadUserContacts(banner, user_id) {

	var url = "__mode=cplusJSContacts&blog_id="+blog_id+"&id="+user_id;
	url+= "&jsonp=?";	//JSONP saves!!
	if(base_url)
		url = base_url + url;

	$.getJSON(url, function(contacts){
		
		if(!contacts || contacts.error) {
			return ;
		}
		// eval(data);

		if(typeof(contacts) == 'undefined' || typeof(contacts.contacts) == 'undefined') {
			return ;
		}
		var usrctcs = "#usercontacts";
		
		if (contacts.contacts.length == 0 ) {
			var msg = "Making Connections with other users allows you to message each other privately. To connect to other users, follow them. Once they follow you, you can message them by using the Compose button.";
			$(usrctcs).append(msg);
			return ;
		
		}
			
		
		$(usrctcs).innerHTML = "";
		$(usrctcs).html("");

		if(typeof(banner) == 'undefined' || banner == '')
			banner = usercontacts.banner;
		$(usrctcs).append("<div id='banner'>"+banner+"</div>");

		//Add Mbox items
		var cnt = 0;
		$.each(contacts.contacts, function(i,item){
			var row_class = 'rowodd';
			if((cnt++)%2 != 0)
				row_class = 'roweven';

			var html = "<div class='ctc'>\n";
			html += "<div class='"+row_class+"'>\n";

			if(item.userurl)
				html += "<a href='"+item.userurl+"' title='" + item.username+ "'>";

			html += "<div class='avatar'>\n";
			html += "<img src='" + item.userpic+ "' alt='"+item.username+" avatar' />\n";
			html += "</div>\n";

			html += "<div class='name'>" + item.username+ "</div>\n";

			if(item.url)
				html += "<br /><div class='details'><a href='"+item.url+"'>"+item.url+"</a></div>\n";

			if(item.userurl)
				html += "</a>\n";
			
			html += "</div>\n";
			html += "</div>\n";

       		$(usrctcs).append(html);
		});
	});
}

// pre-submit callback 
function formSubmit(formData, jqForm, options) {
	for (var i=0; i < formData.length; i++) { 
		if (formData[i].name == 'jsonp') {
			formData[i].value = 'formResponse';
			break;
		}
	}
	
	var queryString = $.param(formData);
	// alert(queryString)
	closeFacebox();
    return true;
} 
 
// post-submit callback 
function formResponse(data) {
	
	if($("#notify")) {
		$("#notify").html(data.error);
		$("#notify").fadeIn("slow");
	} else {
		alert(data.error);
	}
	window.setTimeout(function() {
		$("#notify").fadeOut("slow");
//		$("#notify").css('display', 'none');
	}, 9000);
	
	// careful, of what you send from the server
	try {
		if(data.exec)
			eval(data.exec);
	} catch (err) {		
		alert(err.description);
	}
	if(data.reload) {
		// window.location.reload();
		var loc = window.location.href.replace(/\#.*$/, '');
		window.location.href=loc;
	}
}

function closeFacebox() {
	jQuery(document).trigger('close.facebox');
}
