// JavaScript Document

// Class
function ViewAssociates(module, userID)
{
	this._ajaxUrl = 'handleAjax.php';
	this._module = module;
	this._userID = userID;
	
	this._container = $j('#assocBody');
	this._msgBox = $j('.errorBox');
	this._timeOut = null;
	
	this._assocDisp = null;
	this._assocGroup = null;
	
	this.init();
	this._countTop='';
	
	this._loading = '<img src="images/loading-thickbox.gif" alt="Loading" width="208" height="13" />';
	
	$j(this._loading)
		.prependTo('body')
		.hide();
		
 //this.bindInviteForm();		
}
ViewAssociates.prototype.init = function(elem)
{
	var obj = this;
	obj._assocDisp = $j('#assocBody');
	obj._assocGroup = $j('#assocBody');
}
ViewAssociates.prototype.modalBody = function(title, modalbody)
{
	return '<div class="alert_box"><p class="alert_box_title">' + title + '</p><p class="alert_txt">' + modalbody + '</p>	</div>';
}
ViewAssociates.prototype.flagBox = function(title, modalbody)
{
	$j.unblockUI();
	$j.blockUI({
		message: this.modalBody(title, modalbody),
		css: {
			border: 'none',
			background: 'transparent',
			width:	'450px',
			cursor: 'default'
		},
		overlayCSS: {
			'background-color': '#282828',
			opacity: 0.7
		}
	});
}
ViewAssociates.prototype.loading = function(elem)
{
	elem.unblock();
	elem.block({
		message: this._loading,
		css: {
			border: 'none',
			background: 'transparent'
		},
		overlayCSS: {
			'background-color': '#282828',
			opacity: 0.7
		}
	});
}
ViewAssociates.prototype.handlePagination = function(pageNo, totalPages, addlData)
{ 
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	var key = ($j('#assocSearch').val() == $j('#assocSearch').attr('default') ? '' : $j('#assocSearch').val());
	if (key == '')
	{
		key = addlData.key;
	}
	var data = {
		module:		obj._module,
		action:		'handlePagination',
		pageNo:		pageNo,
		group_id:	addlData.group_id,
		key:		key,
		tab:		addlData.tab,
		filter:		addlData.filter
	};
	$j.ajax({
		url: obj._ajaxUrl + '?user_id=' + addlData.user_id,
		data: data,
		type: 'POST',
		success: function(hData){ 
			$j('#assocBody').html(hData);
			obj.assocList();
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.toggleWindow = function(elem, mode)
{
	var obj = this;
	
	var myElem = $j(elem).parent();
	
	if (mode == 'expand')
	{
		myElem
			.hide()
			.next()
				.show();
	}
	else
	{
		myElem
			.hide()
			.prev()
				.show();
	}
}
ViewAssociates.prototype.addGroup = function()
{
	var obj = this;
	var title, mBody;
	
	obj._msgBox
		.text('')
		.hide();
		
	title = 'Add Group';
		mBody = '<p class="errorBox" id="alert_err_msg"></p><p class="spacer"></p><p class="alert_txt">Title:<input type="text" class="alert_txtbox" id="gr_title" maxlength="50" /><p class="spacer"></p><p class="alert_txt">&nbsp;</p><p><input type="button" class="alert_other_button" value="Add Group" onclick="JavaScript: saveGroup();" /><input type="button" class="alert_cancel_button" value="Cancel" onclick="JavaScript: closeModal();" /></p><p class="spacer"></p>';
		
		obj.flagBox(title, mBody);			
				
				
}
ViewAssociates.prototype.saveGroup = function(elem, group_id)
{
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	var msgArr = new Array();
	$j('#alert_err_msg')
		.text('')
		.hide();
	
	if ($j('#gr_title').isEmpty())
	{
		msgArr.push('Enter Group Title.');
	}
	if (msgArr.length > 0)
	{
		$j('#alert_err_msg')
			.html(msgArr.join('<br />'))
			.show();
	}
	else
	 {
		obj.loading(obj._container);
		//alert($j('#gr_title').val());
		var data = {
			module:		obj._module,
			action:		'saveGroup',
			group_id:	group_id,
			group:		$j('#gr_title').val()
		};
		$j.ajax({
			url: obj._ajaxUrl,
			data: data,
			type: 'POST',
			dataType: 'json',
			success: function(hData){
				
				if(hData.flag)
				{
					obj._container
					.html(hData.selectStr)
					.unblock();
					obj.init();
					$j("#span_drpGroups").html(hData.selectStr);
					obj.loadGroup(hData.groupID);
				}
				//obj.assocList();
				//$j('#assocBody').html(hData);
				//window.location.href="associates.php";
				closeModal();
			},
			timeout: 60000,
			error: function(XMLHttpRequest, textStatus, errorThrown){
				obj._msgBox
					.text('Error: A critical error occured.')
					.show();
				clearTimeout(obj._timeOut);
				obj._timeOut = setTimeout(function(){
					obj._msgBox.fadeOut(500);
				}, 3000);
			}
		});
	}
}
ViewAssociates.prototype.removeGroup = function(elem, group_id)
{
	var obj = this;
	var title = 'Delete Group?';
	var modBody = 'Are you sure you want to delete this group? This cannot be undone.<p><input type="button" value="Delete Group" class="alert_other_button" style="width:90px;" onclick="JavaScript: removeThisGroup(this, ' + group_id + ');" /><input type="button" value="Cancel" class="alert_cancel_button" onclick="JavaScript: closeModal();" style="width:90px;" /></p>';
		
	obj.flagBox(title, modBody);
}
ViewAssociates.prototype.removeThisGroup = function(elem, group_id)
{
	
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
			
	closeModal();
	obj.loading(obj._container);
	var data = {
		module:		obj._module,
		action:		'removeGroup',
		group_id:	group_id
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		success: function(hData){
			obj._container
				.html(hData)
				.unblock();
				$j('#assocBody').html(hData);
				window.location.href="associates.php";
			obj.init();
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.cancelGroup = function(elem)
{
	$j(elem)
		.parent()
			.hide()
		.next()
			.show();
}
ViewAssociates.prototype.editGroup = function(elem)
{
	$j('.addedit')
		.not($j(elem).parent())
		.hide()
		.next()
			.show();
	$j(elem)
		.parent()
			.hide()
		.prev('span')
			.show()
			.find(':text')
				.eq(0)
				.val($j(elem).prev('span').text())
				.focus();
}
ViewAssociates.prototype.loadGroup = function(group_id)
{ 
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	obj.loading(obj._container);
	
	var data = {
		module:		obj._module,
		action:		'loadGroup',
		groupID:	group_id
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		success: function(hData){
			obj._container
				.html(hData)
				.unblock();
			obj.init();
			$j('#assocBody').html(hData);
			obj.assocList();
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.addToGroup = function(elem, mr_id)
{
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	obj.loading(obj._container);
	
	var data = {
		module:		obj._module,
		action:		'addToGroup',
		groupID:	$j(elem).attr('group_id'),
		mr_id:		mr_id
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		success: function(hData){
			/*obj._container
				.html(hData)
				.unblock();
			obj.init();
			obj.assocList();*/
			obj.loadGroup(data.groupID);
			// $j('#assocBody').html(hData);
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.assocList = function()
{
	var obj = this;
	obj.addAutoComplete($j('#groupAssocSearch'), '&action=assocList');
	$j('#groupAssocSearch').result(function(event, data, formatted){
		obj.addToGroup(this, data.mr_id);
		$j(this).val('');
	});
}
ViewAssociates.prototype.addAutoComplete = function(elem, action)
{
	var obj = this;
	//alert(obj._ajaxUrl + '?module=' + obj._module + action);
	$j(elem).autocomplete(obj._ajaxUrl + '?module=' + obj._module + action, {
		multiple: false,
		max: 0,
		autoFill: false,
		matchContains: false,
		minChars: 0,
		parse: function(data) {
			return $j.map(eval(data), function(row) {
				return {
					data: row,
					value: row.name,
					result: row.name
				}
			});
		},
		formatItem: function(item) {
			return item.name;
		}
	});
}
ViewAssociates.prototype.removeAssociate = function(elem, assoc_id, group_id)
{
	var obj = this;
	//alert(elem);
	var name = $j(elem).parent().parent().find('strong');
	var title, modBody;
	name=($j(name).html());
	if (group_id == 0)
	{
		title = 'Remove Friend ?';
		/*modBody = 'Are you sure you want to remove <strong>' + name + '</strong> as a friend? This cannot be undone. <strong>' + name + '</strong> will not be notified.<br /><p><input type="button" value="Remove Friend" class="alert_other_button" style="width:110px;" onclick="JavaScript: removeMyAssoc(this, ' + assoc_id + ', ' + group_id + ');" /><input type="button" value="Cancel" class="alert_cancel_button" onclick="JavaScript: closeModal();" style="width:90px;" /></p>';*/
		
	modBody = '<p class="spacer"></p><p class="alert_txt">Are you sure you want to remove  "' + name + '"as a friend ? This cannot be undone. <strong>' + name + '</strong> will not be notified.</p><p class="spacer"></p><p><input type="button" class="alert_other_button" value="Remove Friend" onclick="JavaScript: removeMyAssoc(this, ' + assoc_id + ', ' + group_id + ');" /><input type="button" class="alert_cancel_button" value="Cancel" onclick="JavaScript: closeModal();" /></p><p class="spacer"></p>';	
		
	}
	else
	{
		title = 'Remove from Group ?';
		modBody = 'Are you sure you want to remove <strong>' + name + '</strong> from this list?<div class="spacer"></div><div align="center"><p><input type="button" value="Remove From Group" class="alert_other_button" style="width:120px;" onclick="JavaScript: removeAssocFromGroup(this, ' + assoc_id + ', ' + group_id + ');" /><input type="button" value="Remove From Friend" class="alert_other_button" style="width:140px;" onclick="JavaScript: removeMyAssoc(this, ' + assoc_id + ', ' + group_id + ');" /><input type="button" value="Cancel" class="alert_cancel_button" onclick="JavaScript: closeModal();" style="width:90px;" /></p>';
	}
	obj.flagBox(title, modBody);
}
ViewAssociates.prototype.removeAssocFromGroup = function(elem, assoc_id, group_id)
{
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	closeModal();
	obj.loading(obj._container);
	
	var data = {
		module:		obj._module,
		action:		'removeAssocFromGroup',
		groupID:	group_id,
		assoc_id:	assoc_id
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		success: function(hData){
			 //  $j('#assocBody').html(hData);
			   obj.loadGroup(data.groupID);
			/*obj._container
				.html(hData)
				.unblock();
			obj.init();
			obj.assocList();*/
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.removeMyAssoc = function(elem, assoc_id, group_id)
{
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	closeModal();
	obj.loading(obj._container);
	
	var data = {
		module:		obj._module,
		action:		'removeMyAssoc',
		groupID:	group_id,
		assoc_id:	assoc_id
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		success: function(hData){  
			obj._container
				.html(hData)
				.unblock();
			obj.init();
			//obj.assocList();
			$j('#assocBody').html(hData);
			//window.location.href="associates.php";
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.removeTagged = function(elem, tag_type, tagged_type_id, userID)
{
	var obj = this;
	var title, modBody;
	var elemIndex = $j('.tagged').index($j(elem).parent());
	title = 'Remove Tagged?';
	modBody = 'Are you sure you want to remove this Tag?<br /><p><input type="button" value="Remove Tagged" class="alert_other_button" style="width:110px;" onclick="JavaScript: ma.removeTaggedDelete(' + elemIndex + ', \'' + tag_type + '\', ' + tagged_type_id + ', ' + userID + ');" /><input type="button" value="Cancel" class="alert_cancel_button" onclick="JavaScript: closeModal();" style="width:90px;" /></p>';
	obj.flagBox(title, modBody);
}
ViewAssociates.prototype.removeTaggedDelete = function(elemIndex, tag_type, tagged_type_id, userID)
{
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	var elem = $j('.tagged').eq(elemIndex);
	closeModal();
	obj.loading(obj._container);
	
	var data = {
		module:			obj._module,
		action:			'removeTaggedDelete',
		tag_type:		tag_type,
		tagged_type_id:	tagged_type_id,
		userID:			userID
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		dataType: 'json',
		success: function(jData){
			if ($j(elem).parent().children('.tagged').length == 1)
			{
				var eRemove = $j(elem).parent().parent();
				eRemove.prev().remove();
				eRemove.remove();
			}
			else
			{
				$j(elem).remove();
			}
			obj._container
				.unblock();
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}
ViewAssociates.prototype.searchAssoc = function(elem)
{
	$j('#assocBody').attr('style','display:block');
	$j('#commonfriends').attr('style','display:none');
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	obj.loading(obj._container);
	var a = $j.find('.active');
	
	var x = a[0];	
	var kid = $j(x[0]).children();
	var tab = $j(kid[0]).html();
	var tab = $j(a[1]).children().html();
	if (tab.indexOf('My Friends') != -1)
	{
		
		tab = 'associates';
	}
	else if (tab.indexOf('Other Fans') != -1)
	{
		tab = 'public';
	}
	else if (tab.indexOf('Blocked') != -1)
	{
		tab = 'blocked';
	}
	else if (tab.indexOf('OnlineNow') != -1)
	{
		tab = 'onlinenow';
	}
	var data = {
		module:		obj._module,
		action:		'searchAssoc',
		//groupID:	$j(elem).attr('group_id'),
		key:		$j('#assocSearch').val(),
		tab:		tab
	};
	$j.ajax({
		url: obj._ajaxUrl + '?user_id=' + $j(elem).attr('assoc_id'),
		data: data,
		type: 'POST',
		success: function(hData){
			obj._container
				.html(hData)
				.unblock();
			obj.init();
			obj.assocList();
			$j('#assocBody').html(hData);
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}


ViewAssociates.prototype.filterSearchAssoc = function(groupID, userID, key, tab)
{
	$j('#assocSearch').val= key;
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	obj.loading(obj._container);
	
	var data = {
		module:		obj._module,
		action:		'searchAssoc',
		groupID:	groupID,
		filter:		key,
		tab:		tab
	};
	$j.ajax({
		url: obj._ajaxUrl + '?user_id=' + userID,
		data: data,
		type: 'POST',
		success: function(hData){
			obj._container
				.html(hData)
				.unblock();
			obj.init();
			obj.assocList();
			$j('#assocBody').html(hData);
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}

function addThisAssociate(email_id)
{
	
	$j('#inv_emails')
		.val(email_id)
		.parent("form")
			.attr('action', 'invite-associates.php')
			.submit();
	return false;
}


ViewAssociates.prototype.unBlocked = function(mr_id)
{
	var obj = this;
	obj._msgBox
		.text('')
		.hide();
	
	obj.loading(obj._container);
	
	var data = {
		module:		obj._module,
		action:		'unblocked',
		
		mr_id:		mr_id
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		success: function(hData){
			  window.location.href="associates.php?view=blocked";
			// $j('#assocBody').html(hData);
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			obj._msgBox
				.text('Error: A critical error occured.')
				.show();
			clearTimeout(obj._timeOut);
			obj._timeOut = setTimeout(function(){
				obj._msgBox.fadeOut(500);
			}, 3000);
		}
	});
}


//////////////////tab associates/////////

/*ViewAssociates.prototype.changeMyAssociatesTab = function(elem, tabName)
{
	var obj = this;
	
	var data = {
		module:		obj._module,
		action:		'associates',
		tab:		tabName
	};
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		//dataType: 'json',
		success: function(hData){
			$j('#assocBody').html(hData);
			var tabs = $j(elem).parent().parent().find('a');
			tabs.removeClass('active');
			$j(elem).addClass('active');
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			alert('Critical Error occurred.');
		}
	});
}*/
ViewAssociates.prototype.clsBlockPeople = function(elem, tabName)
{
	var obj = this;
	var md = elem;
	var tab = tabName;
	var data = {
				'mode'	: md,
				'whom'	: tab
			};
		
			
			$j.ajax({
				data		: data,
				type		: "post",
				dataType	: "json",
				url			: "ajax/block-associates.php",
				success		: function(responseData){
					if (responseData.flag == 'true')
					{
						window.location.href='associates.php?view=blocked';
					}
					else
					{
							
						$j('#errorMessageDisplayed')
							.html(responseData.message_text)
							.show();
					}
					return false;
				}
			});
}
ViewAssociates.prototype.changeAssocTab = function(elem, tabName)
{
	var obj = this;
	
	
	var changeTabText = $j(elem).attr('myval');
	var data = {
		module:		obj._module,
		action:		'changeAssocTab',
		tab:		tabName,
		user_id:	obj._userID
	};
	
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		//dataType: 'json',
		success: function(hData){
			$j('#assocBody').html(hData);
			$j('#changeTabText').html(changeTabText);
	
			//$j('#box-template-header2').innerHTML('ddddd');
			//obj.bindInviteForm();
			/*var upper = $j('.group');
			upper = upper[0];
			if (tabName != 'associates')
			{
				$j(upper).hide();
				$j('<p>&nbsp;</p>').prependTo('#assocBody');
			}
			else
			{
				$j(upper).show();
			}*/
			var tabs = $j(elem).parent().parent().find('a');
			
			tabs.removeClass('active');
			$j(elem).addClass('active');
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			alert('Critical Error occurred.');
		}
	});
}

////////////////////end tab/////////////////////


/*ViewAssociates.prototype.bindInviteForm = function()
{
	var obj = this;
	$j('#inv_invite')
		.unbind('click')
		.click(function(){
			obj._msgBox.hide();
			
			if ($j('#inv_emails').isEmpty())
			{
				 alert('Please enter email address(s).');
				obj._msgBox
					.text('Please enter email address(s).')
					.show();
			}
			else
			{
				var tmpEmails = $j('#inv_emails').val().split(',');
				var emails = new Array();
				var wrong = new Array();
				
				$j.each(tmpEmails, function(i){
					var email = $j.trim(this);
					
					if (!$j.isEmpty(email))
					{
						emails.push(email);
						if (!$j.emailCheck(email))
						{
							wrong.push(email);
						}
					}
				});
				$j('#inv_emails').val(emails.join(','));
				
				if (wrong.length == 0)
				{
					if (emails.length == 0)
					{
						obj._msgBox
							.text('Please enter email address(s).')
							.show();
					}
					else
					{
						var data = {
							module:		obj._module,
							action:		'sendInvite',
							message:	$j('#inv_message').val()
						};
						$j.each(emails, function(i){
							data['email[' + i + ']'] = this;
						});
						$j.ajax({
							url: obj._ajaxUrl,
							data: data,
							type: 'POST',
							dataType: 'json',
							success: function(jData){  alert(jData.message);
								obj._msgBox
									.html(jData.message)
									.show();
							},
							timeout: 60000,
							error: function(XMLHttpRequest, textStatus, errorThrown){
								obj._msgBox
									.text('Error: A critical error occured.')
									.show();
								clearTimeout(obj._timeOut);
								obj._timeOut = setTimeout(function(){
									obj._msgBox.fadeOut(500);
								}, 3000);
							}
						});
					}
				}
				else
				{
					obj._msgBox
						.html(wrong.length + ' invalid Email(s) found as listed below:<br /><li style="list-style-position:inside;">' + wrong.join('</li><li style="list-style-position:inside;">') + '</li>')
						.show();
				}
			}
		});
	$j('#inv_cancel')
		.unbind('click')
		.click(function(){
			window.location.href = 'profile.php';
		});
}
*/



// Functions
function associatePagination(pageNo, totalPages, addlData)
{
	ma.handlePagination(pageNo, totalPages, addlData);
}
function toggleWindow(elem, mode)
{
	ma.toggleWindow(elem, mode);
}
function addGroup(elem)
{
	ma.addGroup(elem);
}
function loadGroup(group_id)
{
	ma.loadGroup(group_id);
}
function saveGroup(elem, group_id)
{
	ma.saveGroup(elem, group_id);
}
function cancelGroup(elem)
{
	ma.cancelGroup(elem);
}
function editGroup(elem)
{
	ma.editGroup(elem);
}
function removeGroup(elem, group_id)
{
	ma.removeGroup(elem, group_id);
}
function removeThisGroup(elem, group_id)
{
	ma.removeThisGroup(elem, group_id);
}
function unBlocked(mr_id)
{
	ma.unBlocked(mr_id);
}
function removeAssociate(elem, assoc_id, group_id)
{
	ma.removeAssociate(elem, assoc_id, group_id)
}
function removeAssocFromGroup(elem, assoc_id, group_id)
{
	ma.removeAssocFromGroup(elem, assoc_id, group_id);
}
function removeMyAssoc(elem, assoc_id, group_id)
{
	ma.removeMyAssoc(elem, assoc_id, group_id);
}
function removeTagged(elem, tag_type, tagged_type_id, userID)
{
	ma.removeTagged(elem, tag_type, tagged_type_id, userID);
}
function closeModal()
{
	$j.unblockUI();
}
function filterSearchAssoc(groupID,userID,key,tab)
{
	 ma.filterSearchAssoc(groupID,userID,key,tab);
}
function searchAssoc(elem, e, mode)
{
	if (mode == 'focus')
	{
		if ($j(elem).val() == $j(elem).attr('default'))
		{
			$j(elem).val('');
		}
	}
	else if (mode == 'blur')
	{
		if ($j(elem).isEmpty())
		{
			$j(elem).val($j(elem).attr('default'));
		}
	}
	else if (mode == 'keyup')
	{
		if ($j(elem).keyCode(e) == 13)
		{
			ma.searchAssoc(elem);
			$j(elem).blur();
		}
	}
}
ViewAssociates.prototype.showCommonFriends = function(arrStr)
{
	var obj=this;
	var data = {
		module:		obj._module,
		action:		'CommonFriendsPopup',
		str:	arrStr
	};
	
	$j.ajax({
		url: obj._ajaxUrl,
		data: data,
		type: 'POST',
		dataType: 'html',
		success: function(hData){
			$j('#assocBody').attr('style','display:none');
			$j('#commonfriends').attr('style','display:block');
			this._countTop=$j('#changeTabText').html();
			
			$j('#changeTabText').html('Common Friends');
			$j('#commonfriends').html(hData);
			
		},
		timeout: 60000,
		error: function(XMLHttpRequest, textStatus, errorThrown){
			alert('Critical Error occurred.');
		}
	});
}
ViewAssociates.prototype.backtolist = function()
{
	var obj=this;
	$j('#commonfriends').attr('style','display:none');
	$j('#changeTabText').html(this._countTop);
	$j('#assocBody').attr('style','display:block');
}
