// JavaScript Document

/*
	###################################################################################

	Recharge les AR
	
	###################################################################################
*/
function ar_reload(id_forum, type)
{
	try
	{
		var myAjax = new Ajax.Updater('affectations_ar',
		BASE_HREF+'modules/forum/admin/ajax_reload_ar.php', {
			parameters: {
				id_site: ID_SITE,
				id_forum: id_forum,
				type: type
			}
		});
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'ar_reload\' dans planpage.js :\n'+e.message);
	}	
}

/*
	###################################################################################

	Transfert un compte/groupe pour un forum ou inversement
	
	###################################################################################
*/
function transfert_client(id_forum, mode)
{
	try
	{
		if($('ar_chk_comptes').checked)
		{
			var type='comptes';
		}
		else
		{
			var type='groupes';
		}

		var dimensions = $('forum-tbl-ar').getDimensions(); 
		$('ar-loader').style.width=dimensions.width+'px';
		$('ar-loader').style.height=dimensions.height+'px';
		$('ar-loader').style.display='block';
		switch(mode)
		{
			case 'add'			: var hash=($('source').serialize(true)); break;
			case 'addtous'	: var hash=($('source').serialize(true)); break;
			case 'del'			: var hash=($('cible').serialize(true)); break;
			case 'deltous'	: var hash=($('cible').serialize(true)); break;
		}
		var myAjax = new Ajax.Updater('affectations_ar', BASE_HREF+'modules/forum/admin/ajax_transfert_comptes.php', {
			parameters: {
				id_site: ID_SITE,
				id_forum: id_forum,
				type: type,
				mode: mode,
				table: hash
			}
		});
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'transfert_client\' dans forum.js :\n'+e.message);
	}	
}



/*
	###################################################################################

	Charge les AR
	
	###################################################################################
*/
function load_ar(mode, id_forum)
{
	try
	{
		var myAjax = new Ajax.Request(BASE_HREF+'modules/forum/admin/ajax_save_acces_reserve.php', {
			parameters: {
				id_site: ID_SITE,
				id_forum: id_forum,
				mode: mode
			}
		});
		
		if(mode)
		{
			$('forum-tbl-ar').appear({duration: 0.2});
		}
		else
		{
			$('forum-tbl-ar').fade({duration: 0.2});
		}
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'load_ar\' dans forum.js :\n'+e.message);
	}
}



/*
	###################################################################################

	Charge les X dernières réponses du sujet
	
	###################################################################################
*/
function forum_admin_load_messages(id_message)
{
	try
	{
		var myAjax = new Ajax.Updater('forum_admin_messages_container_'+id_message,
		BASE_HREF+'modules/forum/admin/ajax_load_messages.php',
		{
			insertion: 'bottom',
			parameters:
			{
				start: $$('tr.forum_ligne_messages_'+id_message).length,
				id_message: id_message,
				id_site: ID_SITE
			},
			onCreate: function()
			{
				
			},
			onSuccess: function()
			{
				
			}
		});
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'forum_admin_load_messages\' dans forum.js :\n'+e.message);
	}
}




/*
	###################################################################################

	Affectation de la catégorie à la page
	
	###################################################################################
*/
function affect_option(id_page, id_site)
{
	var myAjax = new Ajax.Updater('fin_module', '../../forum/admin/ajax_choix_cat.php',
	{
		parameters:
		{
			id_page: id_page,
			id_site: id_site
		}
	});
}



/*
	###################################################################################

	Enregistre l'ordre des éléments
	
	###################################################################################
*/
function forum_admin_save_ordre(id, table)
{
	try
	{
		// On traite les LI
		var ordre=new Array();
		li=$(id).select("li");
		var ind=0;
		for(l=0; l<li.length; l++)
		{	
			var tmp=li[l].id.split('_');
			
			if(table=='forums')
			{
				tmpb=li[l].parentNode.id.split('_');
				if(tmpb[tmpb.length-1]!='categories')
				{
					ordre[ind]=Array(tmpb[tmpb.length-1], tmp[tmp.length-1]);
				}
			}
			else
			{
				ordre[ind]=tmp[tmp.length-1];
			}
			ind++;
		}
		var myAjax = new Ajax.Request(
		BASE_HREF+'modules/forum/admin/ajax_save_ordre.php',
		{
			method: 'post',
			parameters: {
				ordre: Object.toJSON(ordre),
				table: table,
				id_site: ID_SITE
			}
		});
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'forum_admin_save_ordre\' dans forum.js :\n'+e.message);
	}
}




/*
	###################################################################################

	Supprime l'élément
	
	###################################################################################
*/
function forum_admin_delete(id, table, question)
{
	try
	{
		var rep=confirm(question);
		if(rep)
		{
			var myAjax = new Ajax.Request(
			BASE_HREF+'modules/forum/admin/ajax_delete.php',
			{
				method: 'post',
				parameters: {
					id: id,
					table: table,
					id_site: ID_SITE
				},
				onCreate: function() {
					$('picto_supprimer_'+table+'_'+id).src=THEME_PROGRESS_MINI;
				},
				onComplete: function(retour) {
					if(retour.responseText=='')
					{
						Effect.BlindUp('forum_ligne_'+table+'_'+id, { duration: 0.3});
					}
					else
					{
						alert(retour.responseText);
					}
				}
			});
		}
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'forum_admin_delete\' dans forum.js :\n'+e.message);
	}
}




/*
	###################################################################################

	Affiche ou cache l'éléments
	
	###################################################################################
*/
function forum_admin_cache_montre(id, table)
{
	try
	{
		var myAjax = new Ajax.Request(
		BASE_HREF+'modules/forum/admin/ajax_cache_montre.php',
		{
			method: 'post',
			parameters: {
				table: table,
				id: id,
				id_site: ID_SITE
			},
			onCreate: function() {
				$('picto_visible_'+table+'_'+id).src=THEME_PROGRESS_MINI;
			},
			onComplete: function(retour) {
				if(retour.responseText=='1')
				{
					$('picto_visible_'+table+'_'+id).src=THEME_ICONE_VISIBLE_OVER;
				}
				else
				{
					$('picto_visible_'+table+'_'+id).src=THEME_ICONE_INVISIBLE_OVER;
				}
			}
		});
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'forum_admin_cache_montre\' dans forum.js :\n'+e.message);
	}
}




/*
	###################################################################################

	Enregistre le libelle de l'élément
	
	###################################################################################
*/
function forum_admin_save_libelle(id, value, table)
{
	try
	{
		var myAjax = new Ajax.Request(
		BASE_HREF+'modules/forum/admin/ajax_save_libelle.php',
		{
			method: 'post',
			parameters: {
				id: id,
				value: value,
				table: table,
				id_site: ID_SITE
			},
			onCreate: function() {
				$('ajax_loading_'+id).src=THEME_PROGRESS_MINI;
				$('ajax_loading_'+id).setStyle({visibility:'visible'});
			},
			onComplete: function(retour) {
				$('ajax_loading_'+id).src=THEME_ICONE_SUCCES;
			}
		});
	}
	catch(e)
	{
		alert('Erreur dans la fonction \'forum_admin_save_libelle\' dans forum.js :\n'+e.message);
	}
}

