
//<<<<<<<<<<<<<<<<<<< CHANGE VIEW >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

function loadContent(view, access){

	if(access == 1){
		cancelInvitations();
	}
	
	$('.selected').addClass('unselected');
	$('.selected').removeClass('selected');
	
	$('div.panelContent').hide();
	clearLogoSelection();
	
	if(view == 0){
		$('#infoTab').removeClass('unselected').addClass('selected');
		$('div#editGroupInfo').show();
	}else if(view == 1){
		$('#logoTab').removeClass('unselected').addClass('selected');
		$('div#editLogo').show();
	}else if(view == 2){
		$('#membersTab').removeClass('unselected').addClass('selected');
		if(access == 1){
			$('div#privateMembers').show();
			hideShowNoResultsMsgPrivate();
		}else{
			$('div#members').show();
			hideShowNoResultsMsgMembers();
		}
	}else if(view == 3){
		$('#activityTab').removeClass('unselected').addClass('selected');
		$('div#manageActivity').show();
	}else{
		$('#messageTab').removeClass('unselected').addClass('selected');
		$('div#messageGroup').show();
	}
	
	$.post('/groups/ajaxUpdateManagePanelSession/' + view);	
	
}

//<<<<<<<<<<<<<<<<<<< LOGO MANIPULATION >>>>>>>>>>>>>>>>>>>>>>>>>>

function clearLogoSelection(){

	$('.imgareaselect-outer').hide();
	$('.imgareaselect-selection').hide();
	$('.imgareaselect-border1').hide();
	$('.imgareaselect-border2').hide();
	$('#saveLogo').attr('DISABLED', 'disabled');
	
}

function preview(img, selection) {

	var scaleX =  thumbWidth   / selection.width;
	var scaleY =  thumbHeight  / selection.height; 

	$('#thumbnailPreviewImage').css({
		display: 'block',
		width:  Math.round(scaleX * largeWidth) + 'px',
		height: Math.round(scaleY * largeHeight) + 'px',
		marginLeft: '-' + Math.round(scaleX * selection.x1) + 'px',
		marginTop: '-' + Math.round(scaleY * selection.y1) + 'px'
	});
	$('#x1').val(selection.x1);
	$('#y1').val(selection.y1);
	$('#x2').val(selection.x2);
	$('#y2').val(selection.y2);
	$('#w').val(selection.width);
	$('#h').val(selection.height);
	
	$('#thumbnailPreview').css('display','block');
	$('#resetThumbnail').css('display','inline');
}

function showNewThumbnail(img,selection) {
	$('#saveLogo').removeAttr('disabled');
	$('#savedThumbnail').css('display','none');
	$('#thumbnailPreview').css('display','block');
	$('#resetThumbnail').css('display','inline');
}

function resetThumbnail() {
	$('#thumbnailPreview').css('display','none');
	$('#savedThumbnail').css('display','block');
	$('#resetThumbnail').css('display','none');
	clearLogoSelection();
}

//enable upload button following file selection:
function logoUploadEnable(){
	$('#logoBrowse').removeAttr('disabled');
}


//<<<<<<<<<<<<<<<<<<<<<< MANAGE MEMBERS >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

//switch between manage members/invitees and invite new members
function changeInviteView(view){
	if(view == 1){
		$('div.panelContent').hide();
		$('div#newInvites').show();
		hideShowNoResultsMsgInvite();
	}else{
		$('div.panelContent').hide();
		$('div#privateMembers').show();
		hideShowNoResultsMsgPrivate();
	}
}

function sendQuickMessage() {
	var recipientList = $('#quickMessageRecipientList').val();
	var subject       = $('#quickMessageSubject').val();
	var message       = $('#quickMessageBody').val();

	$.post('/me/sendMessage',
		{ 'recipientList' : recipientList,
		  'subject'       : subject,
		  'body'          : message,
		  'type'          : 'quick'
		}
	);
}

//set up search bar for members
function filterMembers() {
	var needle = $.trim($('#filterMembers').val());	// trim white space
	needle     = needle.replace(/ /gi,'|');		// add OR for regex query

	if (needle.length == 0) { 
	
		if($('#selectMembers').val()=="all"){
			$('.blockedMember').show();
			$('.activeMember').show();
		}else if($('#selectMembers').val()=="active"){
			$('.blockedMember').hide();
			$('.activeMember').show();
		}else if($('#selectMembers').val()=="blocked"){
			$('.blockedMember').show();
			$('.activeMember').hide();
		}
		
		return;
	}
	
	if($('#selectMembers').val()=="all"){
		$('#mngMemberGallery div.mngMemberBadge').each(function() {
			($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
				? $(this).hide()
				: $(this).show();
		});
	}else if($('#selectMembers').val()=="active"){
		$('#mngMemberGallery div.activeMember').each(function() {
			($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
				? $(this).hide()
				: $(this).show();
		});
	}else if($('#selectMembers').val()=="blocked"){
		$('#mngMemberGallery div.blockedMember').each(function() {
			($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
				? $(this).hide()
				: $(this).show();
		});
	}
		
}

	//block a member of a public group (community or res only)
	function ajaxBlockMember(id, groupID){
		if(confirm('Are you sure you want to block this member?')){
			$.get('/groups/ajaxBlockMember/' + groupID + '/' + id, function(){
				//if .get was successful:
				
				//change class to blocked
				$('#badge-'+id).addClass('blockedMember').removeClass('activeMember');
				
				//replace img and onclick target for 'block' to 'unblock'
				$('#blockMember-' + id).attr('onClick', 'ajaxUnblockMember('+id+');return false;');
				$('#blockIcon-' + id).attr('title', 'Unblock Member');
				$('#blockIcon-' + id).attr('src', '/assets/images/icons/silk/user_add.png');
				
				//show '- blocked'
				$('#blockedStatus-' + id).show();
				
				//showhide badges
				hideShowMembers();
			});			
		}
	}
	
	//unblock a previously blocked member 
	function ajaxUnblockMember(id, groupID){
		if(confirm('Are you sure you want to unblock this member?')){
			$.get('/groups/ajaxUnblockMember/' + groupID + '/' + id, function(){
				//if .get was successful:
				
				//change class to blocked
				$('#badge-'+id).addClass('activeMember').removeClass('blockedMember');
				
				//replace img and onclick target for 'block' to 'unblock'
				$('#blockMember-' + id).attr('onClick', 'ajaxBlockMember('+id+');return false;');
				$('#blockIcon-' + id).attr('title', 'Block Member');
				$('#blockIcon-' + id).attr('src', '/assets/images/icons/silk/user_delete.png');
				
				//remove '- blocked'
				$('#blockedStatus-' + id).hide();
				
				//showhide badges
				hideShowMembers();
			
			});			
		}
	}
	
	//set up search bar for members
	function filterMembersPrivate() {
	
		var needle = $.trim($('#filterInvitedMembers').val());	// trim white space
		needle     = needle.replace(/ /gi,'|');		// add OR for regex query
	
		if (needle.length == 0) { 
		
			if($('#selectMembers').val()=="all"){
				$('.pendingInvitation').show();
				$('.activeMember').show();
			}else if($('#selectMembers').val()=="active"){
				$('.pendingInvitation').hide();
				$('.activeMember').show();
			}else if($('#selectMembers').val()=="pending"){
				$('.activeMember').hide();
				$('.pendingInvitation').show();
			}
			
			return;
		}
		
		if($('#selectMembersInvite').val()=="all"){
			$('#mngMemberGallery div.mngMemberBadge').each(function() {
				($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
					? $(this).hide()
					: $(this).show();
			});
		}else if($('#selectMembersInvite').val()=="active"){
			$('#mngMemberGallery div.activeMember').each(function() {
				($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
					? $(this).hide()
					: $(this).show();
			});
		}else if($('#selectMembersInvite').val()=="pending"){
			$('#mngMemberGallery div.pendingInvitation').each(function() {
				($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
					? $(this).hide()
					: $(this).show();
			});
		}
	
		if (needle.length == 0) { 
			$('#mngMemberGallery div.mngMemberBadge').show();
			return;
		}
		
	}

	//remove a member from a group (private groups only)
	function ajaxRemoveMember(id, groupID){
		if(confirm('Are you sure you want to remove this member from your group? This cannot be undone.')){
			$.get('/groups/ajaxRemoveMember/' + groupID + '/' + id, function(){
				//if .get was successful:
				
				//change class to blocked
				$('#badge-'+id).remove();
			
				//showhide badges
				hideShowMembersInvite();
			});			
		}
	}

	//set up search bar for members
	function filterMembersInvite() {
		var needle = $.trim($('#filterUninvitedMembers').val());	// trim white space
		needle     = needle.replace(/ /gi,'|');		// add OR for regex query
	
		if (needle.length == 0) { 
			$('#uninvitedBin div.uninvitedBadge').show();
			return;
		}
		
		$('#uninvitedBin div.uninvitedBadge').each(function() {
			($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
				? $(this).hide()
				: $(this).show();			
		});
		
	}
	
		//filter members in manage members view
	function hideShowMembers(){
		//show various categories of groups: groups created by user, groups created by others that the user has joined, groups created by others that the user has not joined
		if($('#selectMembers').val()=="all"){
			$('.blockedMember').show();
			$('.activeMember').show();
		}else if($('#selectMembers').val()=="active"){
			$('.blockedMember').hide();
			$('.activeMember').show();
		}else if($('#selectMembers').val()=="blocked"){
			$('.blockedMember').show();
			$('.activeMember').hide();
		}
	
		hideShowNoResultsMsgMembers();
		
	}
	
	//filter members in invite members view
	function hideShowMembersInvite(){
		//show various categories of groups: groups created by user, groups created by others that the user has joined, groups created by others that the user has not joined
		if($('#selectMembersInvite').val()=="all"){
			$('.pendingInvitation').show();
			$('.activeMember').show();
		}else if($('#selectMembersInvite').val()=="active"){
			$('.pendingInvitation').hide();
			$('.activeMember').show();
		}else if($('#selectMembersInvite').val()=="pending"){
			$('.activeMember').hide();
			$('.pendingInvitation').show();
		}
		
		hideShowNoResultsMsgPrivate();
		
	}

	//remove a member from the invitation list
	function ajaxUninviteMember(id, groupID){
		if(confirm('Are you sure you want to uninvite this member from your group?')){
			$.get('/groups/ajaxUninviteMember/' + groupID + '/' + id, function(){
				//if .get was successful:
				
				//change class to blocked
				$('#badge-'+id).remove();
			
				//showhide badges
				hideShowMembersInvite();
			});			
		}
	}
	
	//invite a new member to the group
	function inviteMember(id){
		$('#uninvited-' + id).addClass('inviteSelected');
		$('#inviteIcon-' +id).show();
		$('#uninvited-' + id).attr('title', 'Click To Uninvite');
		$('#inviteMember-' + id).attr('href', 'javascript:uninviteMember('+id+');');
		
		//insert hidden input to store member id
		$('<input type="hidden" name="members[]" class="inviteeID" id="invite-'+id+'" value="'+id+'"/>').appendTo('#inviteeBin');
	
	}
	
	//uninvite a previously invited member
	function uninviteMember(id){
		$('#uninvited-' + id).removeClass('inviteSelected');
		$('#inviteIcon-' +id).hide();
		$('#uninvited-' + id).attr('title', 'Click To Invite');
		$('#inviteMember-' + id).attr('href', 'javascript:inviteMember('+id+');');
		
		//remove the hidden input with the user's id as its value
		$('#invite-'+id).remove();
	}
	
	//cancel invitations - return to manage members view
	function cancelInvitations(){
		//hide icon
		$('img.inviteIcon').hide();
		//remove class to return badges to proper color
		$('div.inviteSelected').removeClass('inviteSelected');
		//remove stored ids
		$('.inviteeID').remove();
	}


//<<<<<<<<<<<<<<<<<<<<<< MANAGE ACTIVITY >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

	function hideComments(ID){
		$('#commentBin-'+ID).fadeOut('fast');
		$('#commentDialog-'+ID).fadeOut('fast');
		$('#showHideComments-'+ID).attr('href', 'javascript:showComments('+ID+');');
		$('#showHideComments-'+ID).attr('title', 'Click to Show Comments');
		$('#showHideComments-'+ID).html('show');
	}
	
	function showComments(ID){
		$('#commentBin-'+ID).fadeIn('fast');
		$('#showHideComments-'+ID).attr('href', 'javascript:hideComments('+ID+');');
		$('#showHideComments-'+ID).attr('title', 'Click to Hide Comments');
		$('#showHideComments-'+ID).html('hide');
	}
	
	function deletePost(id, groupID){
		
		if (confirm('Are you sure you want to delete this post?')){
			$.get('/groups/ajaxManagerDeleteMiniBlogEntry/' + id + '/' + groupID,
				{},
				function(data,textState) {
					$('#entryAndToolContainer-' + id).fadeOut('fast').remove();
					hideShowNoActivityMsg();
				}
			);
		}
		
	}
	
	function deleteComment(id, groupID){
		
		if (confirm('Are you sure you want to delete this comment?')) {
			$.get('/groups/ajaxManagerDeleteMiniBlogEntryComment/' + id + '/' + groupID,
				{},
				function(data,textState) {
					if (data == 'success') {
						var $commentBin = $('#commentDeleteLink-' + id).parent().parent().parent().parent();
						$('#commentDeleteLink-' + id).parent().parent().parent().hide();
						updateCommentCountAndLinks(
							$commentBin.children('.miniBlogEntryComment:visible').length,
							$commentBin.parent().children('.commentTally')
						);
					}
				}
			);
		}
		
	}
	
	function updateCommentCountAndLinks(commentCount, $commentTallyDiv){
	
		$commentTallyDiv.children('span.numberOfComments').html(commentCount);
		
		if(commentCount == 0){
			$commentTallyDiv.children('span.showHide').hide();
			$commentTallyDiv.children('span.commentOrComments').html('comments');
		}else if(commentCount == 1){
			$commentTallyDiv.children('span.showHide').show();
			$commentTallyDiv.children('span.commentOrComments').html('comment');
		}else{
			$commentTallyDiv.children('span.showHide').show();
			$commentTallyDiv.children('span.commentOrComments').html('comments');
		}
		
	}
	
//<<<<<<<<<<<<<<<<<<<<< MESSAGING >>>>>>>>>>>>>>>>>>>>>>>>>>

	function filterMembersMessaging() {
		var needle = $.trim($('#searchRecipients').val());	// trim white space
		needle     = needle.replace(/ /gi,'|');		// add OR for regex query
	
		if (needle.length == 0) { 
			$('#memberBadgeSearchBin div.unselectedBadge').show();
			return;
		}
		
		$('#memberBadgeSearchBin div.unselectedBadge').each(function() {
			($(this).attr('title').search(new RegExp(needle,"i")) < 0) 
				? $(this).hide()
				: $(this).show();			
		});
		
	}
	
	function hideRecipients(){
		$('#recipientsInstructions').hide();
		$('#messageRecipientSearch').hide();
		//$('#introMessage').fadeIn();
	}
	
	function showRecipients(){
		$('#recipientsInstructions').fadeIn();
		$('#messageRecipientSearch').fadeIn();
		//$('#introMessage').hide();
	}
	
	function selectMember(id){
		$('#unselected-' + id).addClass('msgSelected');
		$('#selectIcon-' +id).show();
		$('#tipsyDiv-' + id).attr('title', 'Click To Unselect');
		$('#messageMember-' + id).attr('href', 'javascript:unselectMember('+id+');');
		
		//insert hidden input to store member id
		$('<input type="hidden" name="recipients[]" class="messageID" id="message-'+id+'" value="'+id+'"/>').appendTo('#recipientBin');
	
	}

	function unselectMember(id){
		$('#unselected-' + id).removeClass('msgSelected');
		$('#selectIcon-' +id).hide();
		$('#tipsyDiv-' + id).attr('title', 'Click To Select');
		$('#messageMember-' + id).attr('href', 'javascript:selectMember('+id+');');
		
		//remove the hidden input with the user's id as its value
		$('#message-'+id).remove();
	}
	
	function cancelMessage(){
		//hide icon
		$('img.messageIcon').hide();
		//remove class to return badges to proper color
		$('div.unselectedBadge').removeClass('msgSelected');
		//change tool tips
		$('div.tipsyDiv').attr('title', 'Click To Select');
		//remove stored ids
		$('.messageID').remove();
	}
	
	function selectAll(){
		//hide icon
		$('img.messageIcon').show();
		//remove class to return badges to proper color
		$('div.unselectedBadge').addClass('msgSelected');
		//change tool tips
		$('div.tipsyDiv').attr('title', 'Click To Unselect');
		//clear previously saved ids
		$('.messageID').remove();
		$('div.unselectedBadge').each(function(){
			var id = $(this).find('a.hiddenID').attr('rel');
			$('#messageMember-' + id).attr('href', 'javascript:unselectMember('+id+');');
			//insert hidden input to store member id
			$('<input type="hidden" name="recipients[]" class="messageID" id="message-'+id+'" value="'+id+'"/>').appendTo('#recipientBin');
		});
	}
	
	function clearForm(){
		$('#msgSubject').val("");
		$('#msgBody').val("");
		$('.labelify').labelify({ labelledClass: "labelinside" });
	}
	
	//activity stream
	function hideShowNoActivityMsg(){
		if($('div#miniBlogEntriesContainer').children('div.entryAndToolContainer').size() == 0){
			$('#noRecentActivity').show();
		}else{
			$('#noRecentActivity').hide();
		}
	}
	
	function hideShowNoResultsMsgMembers(){
		if($('#mngMemberGallery div.mngMemberBadge:visible').size() > 0){
			$('#noResultsMembers').hide();
		}else{
			$('#noResultsMembers').show();
		}
	}
	
	function hideShowNoResultsMsgPrivate(){
		if($('#mngMemberGallery div.mngMemberBadge:visible').size() > 0){
			$('#noResultsPrivate').hide();
		}else{
			$('#noResultsPrivate').show();
		}
	}

	function hideShowNoResultsMsgInvite(){
		if($('#uninvitedBin div.uninvitedBadge:visible').size() > 0){
			$('#noResultsInvite').hide();
		}else{
			$('#noResultsInvite').show();
		}
	}
	
	function hideShowNoResultsMsgMessaging(){
		if($('#memberBadgeSearchBin div.messageBadge:visible').size() > 0){
			$('#noResultsMessage').hide();
		}else{
			$('#noResultsMessage').show();
		}
	}
	
	
