var adminCounter = 0;

function displayAdmins()
{
	var adminBoxContent = "<div class=boldText><a href=/player/?id_player=" + adminsArray[adminCounter]["id"] + ">" + adminsArray[adminCounter]["login"] + "</a> (" + (adminCounter + 1) + "/" + adminsArray.length + ")</div>";
	adminBoxContent += "<div><a href=/player/?id_player=" + adminsArray[adminCounter]["id"] + ">" + "<img src=" + adminsArray[adminCounter]['picture_url'] + " class=nicePicture /></a></div>";
	adminBoxContent += "<div class=smallText>" + adminsArray[adminCounter]["bio"] + "</div>";

	$("adminBox").set('html',  adminBoxContent );
	++adminCounter;
	if ( adminCounter == adminsArray.length ) adminCounter = 0;
}

//function startAdminsRotation()
//{
window.addEvent('domready', function(){
	if (document.getElementById('adminBox'))
	{
		displayAdmins();
		displayAdmins.periodical(5000);
	}
});
//}

function manageMember(isAdmin, playerIndex, memberType, isFounder) // id_player, pseudo, pictureURL, bio, memberType)
{
	var id_player = pagePlayerDetails[playerIndex]["id"];
	var pseudo = pagePlayerDetails[playerIndex]["login"];
	var bio = pagePlayerDetails[playerIndex]["bio"];

	var managementBoxContent = "<div class=boldText><a href=/player/?id_player=" + id_player + ">" + pseudo + "</a></div>";
	managementBoxContent += "<div><a href=/player/?id_player=" + id_player + ">" + "<img src=" + pagePlayerDetails[playerIndex]['picture_url'] + " class=nicePicture /></a></div>";
	managementBoxContent += "<div class=smallText>" + bio + "</div>";

	if ( isAdmin )
	{
		if ( memberType == "admin" )
		{
			if ( isFounder)
			{
				managementBoxContent +=  "<a href=javascript:removeAdmin(" + id_player + "," + id_guild + ");>" + _("Demote from admin") + "</a>";
			}
			else
			{
				managementBoxContent += "<div class=boldText>" + _("You cannnot modify the status of an admin.") + "</div>";
			}
		}
		else if ( memberType == "member" )
		{
			managementBoxContent +=  "<a href=javascript:makeAdmin(" + id_player + "," + id_guild + ");>" + _("Make admin") + "</a>";
			managementBoxContent +=  " - ";
			managementBoxContent +=  "<a href=javascript:refuseMember(" + id_player + "," + id_guild + ");>" + _("Remove this player") + "</a>";
		}
		else if ( memberType == "candidate" )
		{
				managementBoxContent +=  "<img src=" + staticsHost + "/img/v2/icons/12x11/check.gif /> <a href=javascript:acceptMember(" + id_player + "," + id_guild + ");>" + _("Accept") + "</a>";
				managementBoxContent +=  "&nbsp;&nbsp;&nbsp;&nbsp;";
				managementBoxContent +=  "<img src=" + staticsHost + "/img/v2/icons/12x11/cross.gif /> <a href=javascript:refuseMember(" + id_player + "," + id_guild + ");>" + _("Refuse") + "</a>";
		}
	}
	$("managementBox").set('html', managementBoxContent);
}

function makeAdmin(id_player,id_guild)
{
	URBAN.page.popup = new URPopup( _("Are you sure you want to make this player an Admin of your Guild?"), {
		type: 'confirm',
		chainable: true,
		onValidate: function() {
			new Request({
				'url': '/ajax/guild/',
				'data': { 'action': 'makeadmin', 'id_player': id_player },
				'onComplete': function(responseText)
				{
					var response = JSON.decode(responseText);
					if ( !response.adminified ) 
					{
						URBAN.page.popup.refresh( _("Unable to make this member an admin of your guild.") );
					}
					else
					{
						URBAN.page.popup.refresh( _("This member has become an admin of your guild.(The status may take several seconds to update.)"), {
							onValidate: function() {
								reloadCurrentPage();
							}
						} );
					}
				}
			}).send();
		}
	} );
}

function removeAdmin(id_player,id_guild)
{
	URBAN.page.popup = new URPopup( _("Are you sure you want to remove Admin status from this guild member?"), {
		type: 'confirm',
		chainable: true,
		onValidate: function() {
			new Request({
				'url': '/ajax/guild/',
				'data': { 'action': 'removeadmin', 'id_player': id_player },
				'onComplete': function(responseText)
				{
					var response = JSON.decode(responseText);
					if ( !response.deadminified ) 
					{
						URBAN.page.popup.refresh( _("Unable to remove admin status from this member.") );
					}
					else
					{
						URBAN.page.popup.refresh( _("This member is no longer an admin of your guild.(The status may take several seconds to update.)"), {
							onValidate: function() {
								reloadCurrentPage();
							}
						} );
						
					}
				}
			}).send();
		}
	} );
}

function refuseMember(id_player,id_guild)
{
	URBAN.page.popup = new URPopup( _("Are you sure you want to refuse (or reject) this player from your Guild?"), {
		type: 'confirm',
		chainable: true,
		onValidate: function() {
			new Request({
				'url': '/ajax/guild/',
				'data': { 'action': 'refusemember', 'id_player': id_player },
				'onComplete': function(responseText)
				{
					var response = JSON.decode(responseText);
					if ( !response.refused ) 
					{
						URBAN.page.popup.refresh( _("Unable to refuse this member.") );
					}
					else
					{
						URBAN.page.popup.refresh( _("This member has been refused in your guild."), {
							onValidate: function() {
								reloadCurrentPage();
							}
						} );
					}
				}
			}).send();
		}
	} );
}

function acceptMember(id_player,id_guild)
{
	URBAN.page.popup = new URPopup( _("Are you sure you want to accept this player in your Guild?"), {
		type: 'confirm',
		chainable: true,
		onValidate: function() {
			new Request({
				'url': '/ajax/guild/',
				'data': { 'action': 'acceptmember', 'id_player': id_player },
				'onComplete': function(responseText)
				{
					var response = JSON.decode(responseText);
					if ( !response.accepted ) 
					{
						URBAN.page.popup.refresh( _("Unable to accept this player.") );
					}
					else
					{
						URBAN.page.popup.refresh( _("This player has been accepted in your guild."), {
							onValidate: function() {
								reloadCurrentPage();
							}
						} );
					}
				}
			}).send();
		}
	} );
}

function postulateGuild(id_player,id_guild)
{
	urconfirm( _("Are you sure you want to postulate to this Guild ?"), function() {
		new Request({
			'url': '/ajax/guild/',
			'data': { 'action': 'postulate', 'id_player': id_player, 'id_guild': id_guild },
			'onComplete': function(responseText)
			{
				var response = JSON.decode(responseText);
				if ( !response.postulated ) uralert( _("Unable to postulate to this guild.") );
				else
				{
					$("postulateLink").set('html',  _("Your request has been sent.") );
				}
			}
		}).send();
	} );
}


function retireFromGuild(id_player,id_guild)
{
	URBAN.page.popup = new URPopup( _("Are you sure you want to leave this Guild ?"), {
		type: 'confirm',
		chainable: true,
		onValidate: function() {
			new Request({
				'url': '/ajax/guild/',
				'data': { 'action': 'retire', 'id_player': id_player },
				'onComplete': function(responseText)
				{
					var response = JSON.decode(responseText);
					if ( !response.retired ) 
					{
						URBAN.page.popup.refresh( _("Unable to leave the guild.") );
					}
					else
					{
						URBAN.page.popup.refresh( _("You are no longer a member of this guild."), {
							onValidate: function() {
								reloadCurrentPage();
							}
						} );
					}
				}
			}).send();
		}
	} );
}

function openGuildMsg()
{
	$('guildMsgDiv').setStyle('display', 'inline');
}

function closeGuildMsg()
{
	$('guildMsgDiv').setStyle('display', 'none');
}

function sendGuildMsg(id_guild)
{
	if ( $('messageContent').value != "" )
	{
		new Request({
			'url': '/ajax/guild/',
			'data': { 'action': 'sendguildmsg', 'msg': $('messageContent').value },
			'onRequest': function() {
				$('messageDiv').setStyle('display', 'none');
				$('messageLoading').setStyle('display', 'inline');
			},
			'onComplete': function(responseText)
			{
				var response = JSON.decode(responseText);
				if ( response.msgsent < 1 ) uralert( _("Unable to send your message.") );
				else
				{
					uralert(response.msgsent + " " + _("players have received your message.") );
					$("messageDiv").set('html',  _("Your message has been sent.") );
				}

				$('messageDiv').setStyle('display', 'inline');
				$('messageLoading').setStyle('display', 'none');
			}
		}).send();
	}
}

function destroyGuild(id_guild)
{
	URBAN.page.popup = new URPopup( _("Are you sure you want to destroy this guild ?"), {
		type: 'confirm',
		chainable: true,
		onValidate: function() {
			new Request({
				'url': '/ajax/guild/',
				'data': { 'action': 'destroyguild' },
				'onComplete': function(responseText)
				{
					var response = JSON.decode(responseText);
					if ( !response.destroyed ) 
					{
						URBAN.page.popup.refresh( _("Unable to destroy this guild.") );
					}
					else
					{
						URBAN.page.popup.refresh( _("This guild has been destroyed."), {
							onValidate: function() {
								window.location = "/guild/list.php";
							}
						} );
					}
				}
			}).send();
		}
	} );
}

function setGuildMsgFlag(id_guild,status)
{
	new Request({
		'url': '/ajax/guild/',
		'data': { 'action': 'changeguildmsgstatus' },
		'onComplete': function(responseText)
		{
			var response = JSON.decode(responseText);
			/*
			if ( this.response.text == 0 ) uralert( _("Unable to change your guild msg status.") );
			else
			{
			*/
				uralert( _("The modification is successfull.") );
				if ( response.msgstatus )
				{
					$("guildMsgFlagOffLink").setStyle("display", "inline");
					$("guildMsgFlagOnLink").setStyle("display", "none");
				}
				else
				{
					$("guildMsgFlagOffLink").setStyle("display", "none");
					$("guildMsgFlagOnLink").setStyle("display", "inline");
				}
			//}
		}
	}).send();
}

function showCreateGuild()
{
	window.location = '/guild/new.php';
}


function loadRetireFounderMenu(mItemID, idGuild)
{

	if ( $('loadAjaxMenu') ) closeloadRetireFounderMenu();
	else
	{
		var coordinates = $(mItemID).getCoordinates();
		var loadAjaxMenu = new Element('div');
		loadAjaxMenu.setProperty('id','loadAjaxMenu');
		loadAjaxMenu.setStyles({
			top: coordinates.bottom + 'px',
			left: coordinates.left + 'px',
			zIndex: 1000,
			width: '120px',
			textAlign: 'left',
			border: '1px solid black',
			margin: '3px 0 0 0',
			padding: '4px',
			background: '#fff',
			position: 'absolute'
		});
		loadAjaxMenu.set('html', '<div></div>');
		$('pageBody').adopt(loadAjaxMenu);

		loadAjaxMenu.set('html',  "<img src=" + staticsHost + "/img/loading.gif />" );

		new Request.HTML({
			'url': '/ajaxcontent/guild/retire_founder_open.php',
			'data': {id_guild: idGuild},
			'update': loadAjaxMenu,
			onComplete: function () {
				deckMenuTimer = closeloadRetireFounderMenu.delay(300000);
			}
		}).send();
	}
}

function closeloadRetireFounderMenu()
{
	if ( $('loadAjaxMenu') )
	{
		$('loadAjaxMenu').dispose();
		$clear(deckMenuTimer);
	}
}

function setFounder(id_admin, id_guild)
{
	new Request({
		'url': '/ajax/guild/',
		'data': { 'action': 'makefounder', 'id_admin': id_admin},
		'onRequest': function() {
			$('loadAjaxMenu').set('html',  "<img src=" + staticsHost + "/img/loading.gif />" );
		},
		'onComplete': reloadCurrentPage
		}).send();
}