var folder_icon = new Array();
var folder_type;
var this_url;
var plug_tab = '';
var plug_fieldset = '';
var plug_fckeditor = new Array();
var plug_fcktool = new Array();
var can_docs = true;

function displayPicture(doc_id,doc_name,doc_type,doc_width,doc_height,doc_size)
{
	var res = '<div id="p_'+doc_id+'" class="docs-picture">'+
	'<div class="docs-title">'+	
	'<div class="doc-name" id="pn_'+doc_id+'">'+doc_name+'</div>';
	
	if(page_type == 'docs') {
		res += '<img src="/img/icons/drag.png" alt="" id="pd_'+doc_id+'" class="docs-drag" />'+
		'<a href="javascript:void(0);" onclick="recycle('+doc_id+',\'picture\');">'+
		'<img src="/img/docs/recycle.png" alt="" id="pr_'+doc_id+'" class="docs-recycle" />'+
		'</a>';
	}
	
	res += '</div><p>'+
	'<a href="javascript:void(0);" onclick="select_img(\''+root_url+doc_name+'-1.'+doc_type+'\',\''+root_url+doc_name+'.'+doc_type+'\',\''+doc_id+'\',\''+doc_name+'\',\''+doc_type+'\',\''+doc_width+'\',\''+doc_height+'\');">'+
	'<img src="'+root_url+doc_name+'-1.'+doc_type+'" id="pi_'+doc_id+'" alt="" '+
	'title="'+doc_name+'.'+doc_type+' / '+doc_width+'x'+doc_height+' pixels / '+doc_size+'Ko" /></a>'+
	'</p></div>';
	
	return res;
}

function displayVideo(doc_id,doc_name,doc_url,doc_extra)
{
	var res = '<div id="p_'+doc_id+'" class="docs-video">'+
	'<div class="docs-title">'+	
	'<div class="doc-name" id="pn_'+doc_id+'">'+doc_name+'</div>';
	
	if(page_type == 'docs') {
		res += '<img src="/img/icons/drag.png" alt="" id="pd_'+doc_id+'" class="docs-drag" />'+
		'<a href="javascript:void(0);" onclick="recycle('+doc_id+',\'video\');">'+
		'<img src="/img/docs/recycle.png" alt="" id="pr_'+doc_id+'" class="docs-recycle" />'+
		'</a>';
	}

	res += '</div><p>'+
	'<a href="javascript:void(0);" onclick="select_video(\''+doc_extra+'\',\''+doc_id+'\',\''+doc_name+'\',\''+doc_url+'\');">'+
	'<img src="'+root_url+doc_id+'.jpg" id="pi_'+doc_id+'" alt=""  /></a>'+
	'</p></div>';
	
	return res;
}

function displayFile(doc_id,doc_name,doc_type)
{
	var res = '<div id="p_'+doc_id+'" class="docs-file">'+
	'<div class="docs-title">'+	
	'<div class="doc-name" id="pn_'+doc_id+'">'+doc_name+'</div>';
	
	if(page_type == 'docs') {
		res += '<img src="/img/icons/drag.png" alt="" id="pd_'+doc_id+'" class="docs-drag" />'+
		'<a href="javascript:void(0);" onclick="recycle('+doc_id+',\'file\');">'+
		'<img src="/img/docs/recycle.png" alt="" id="pr_'+doc_id+'" class="docs-recycle" />'+
		'</a>';
	}
	
	res += '</div><p>'+
	'<a href="'+root_url+doc_name+'.'+doc_type+'" onclick="window.open(this.href); return false">'+
	'<img src="/img/docs/file_'+doc_type+'.png" pd="di_'+doc_id+'" /></a>'+
	'</p></div>';
	
	return res;
}

function displayFolder(folder_id,folder_name,folder_type)
{
	if(folder_icon[folder_id]) {
		var icon = folder_icon[folder_id];
	} else {
		var icon = '/img/docs/folder_'+folder_type+'.png';
	} 
		
	var res = '<div id="f_'+folder_id+'" class="docs-folder">'+
		'<div class="docs-title">'+	
		'<div class="folder-name" id="fn_'+folder_id+'">'+folder_name+'</div>';
	
	if(page_type == 'docs') {
		res += '<img src="/img/icons/drag.png" alt="" id="fd_'+folder_id+'" class="folder-drag" />'+
		'<a href="javascript:void(0);" onclick="recycle('+folder_id+',\'folder\');">'+
		'<img src="/img/docs/recycle.png" alt="" id="fr_'+folder_id+'" class="folder-recycle" />'+
		'</a>';
	}
	
	res += '</div><p>'+
	'<a href="javascript:void(0);" onclick="refreshFolder('+folder_id+',\''+folder_type+'\');">'+
	'<img src="'+icon+'" id="fi_'+folder_id+'" alt="" /></a>'+
	'</p></div>';
	
	return res;
}

function refreshFolder(new_folder,new_type)
{
	if(can_docs === false) {
		return;
	}
		
	if(folder_type != new_type) {
		folder_id = 0;
	}
	else {		
		folder_id = new_folder;
	}
	
	folder_type = new_type;
	this_url = '/docs.php?type='+folder_type+'&folder=';
	
	$('#files-list').html('');
	
	$.get(this_url+folder_id, { action:'foldercontent' }, function(data)
	{
		var rsp = $(data).children('rsp')[0];
		var f = p = 0;
		
		if(rsp && rsp.attributes[0].value == 'ok') 
		{
			folder_parent = $(rsp).find('folder_parent').text();
			page_title = $(rsp).find('page_title').text();
			path_txt = $(rsp).find('path_txt').text();
			root_url = $(rsp).find('root_url').text();
			this_url = unescape($(rsp).find('this_url').text());
				
			if(folder_id != 0)
			{
				$('#files-list').html('<div id="f_'+folder_parent+'" class="docs-parent">'+
				'<div class="docs-title">Répertoire parent</div><p><a href="javascript:void(0);" '+
				'onclick="refreshFolder('+folder_parent+',\''+folder_type+'\');"><img '+
				'src="/img/docs/folder_parent.png" alt="Répertoire parent" />'+
				'</a></p></div>');
				
				if(page_type == 'docs') {
					makeDroppable('#f_'+folder_parent);
				}
			}
				
			$(rsp).find('folder').each(function()
			{
				var doc = $(rsp).children('folder')[f];
				f++;
				
				var _folder_id = $(doc).find('folder_id').text();
				var _folder_name = $(doc).find('folder_name').text();
				
				$('#files-list').append(displayFolder(_folder_id,_folder_name,folder_type));
				
				if(page_type == 'docs') {
					makeDroppable('#f_'+_folder_id);					
					$('#f_'+_folder_id).draggable({ 
						handle:'.folder-drag',
						revert:true,
						zIndex: 1
					});
				}
			});
			
			$(rsp).find('doc').each(function()
			{
				var doc = $(rsp).children('doc')[p];
				p++;
						
				var _doc_id = $(doc).find('doc_id').text();
				var _doc_name = $(doc).find('doc_name').text();
				var _doc_type = $(doc).find('doc_type').text();
				var _doc_width = $(doc).find('doc_width').text();
				var _doc_height = $(doc).find('doc_height').text();
				var _doc_size = $(doc).find('doc_size').text();
				var _doc_url = $(doc).find('doc_url').text();
				var _doc_extra = $(doc).find('doc_extra').text();
				
				if(folder_type == 'images') {
					$('#files-list').append(displayPicture(_doc_id,_doc_name,_doc_type,_doc_width,_doc_height,_doc_size));
				}
				else if(folder_type == 'videos') {
					$('#files-list').append(displayVideo(_doc_id,_doc_name,_doc_url,_doc_extra));
				}
				else if(folder_type == 'files') {
					$('#files-list').append(displayFile(_doc_id,_doc_name,_doc_type));
				}
				
				if(page_type == 'docs') {
					$('#p_'+_doc_id).draggable({ 
						handle:'.docs-drag',
						revert:true,
						zIndex: 1
					});
				}
			});
			
			if(page_type == 'docs') 
			{
				var folder_data = ' (';
				
				if(f > 0) {
					if(f == 1) {
						folder_data += 'un dossier';
					}
					else {
						folder_data += f+' dossiers';
					}
				}
				
				if(p > 0) {
					if(f > 0) {
						folder_data += ' - ';
					}					
					if(p == 1) {
						folder_data += 'un fichier';
					}
					else {
						folder_data += p+' fichiers';
					}
				}
				
				if(p == 0 && f == 0) {
					folder_data += 'vide';
				}
				
				folder_data += ')';
				
				$('#manage h1').html($('title').html().substring(0,$('title').html().indexOf(' -'))+' : '+path_txt+folder_data);
			}
			
			if(page_type == 'docs') 
			{
				if(p >= 256) {
					$('#form-folder input[name="uploadfiles"]').attr('disabled','disabled');				
					$('#form-folder input[name="uploadfiles"]').val("Ce répertoire est plein");
				}
				else {
					$('#form-folder input[name="uploadfiles"]').removeAttr('disabled');				
					$('#form-folder input[name="uploadfiles"]').val("Ajouter des fichiers ici");
				}
			
				$(".doc-name").editable(function(value, settings) 
				{ 
					if(value.length == 0) {
						prependMsg('error','Vous devez indiquer un nom pour le fichier.');
					}
					else 
					{
				    cid = this.id;
				    
				    $.post(this_url+folder_id,{ action:'renamefile', id:this.id.substring(3,this.id.length), name:value } ,function(data)
						{
							if(data.indexOf('renamefile') != -1)
							{
								var doc_name = data.substring(14,data.length);							
								$(cid).html(doc_name);
								
								prependMsg('confirm',"Le fichier a été correctement renommé.");				
							} 
							else {
								prependMsg('error',data);
							}
						});
					}
					return(value);  
				 }, { 
					width: 70,
					select: true,
					submit: 'OK'
				});
					
				$(".folder-name").editable(function(value, settings) { 
					if(value.length == 0) {
						prependMsg('error','Vous devez indiquer un nom pour le répertoire.');
					}
					else 
					{
				    cid = this.id;
					    
				    $.post(this_url+folder_id,{ action:'renamefolder', id:this.id.substring(3,this.id.length), name:value } ,function(data)
						{
							if(data.indexOf('renamefolder') != -1) 
							{
								folder_name = data.substring(13,data.length);
								
								$(cid).html(folder_name);
								
								prependMsg('confirm',"Le répertoire a été correctement renommé.");				
							} 
							else {
								prependMsg('error',data);
							}
						});
					}
					return(value);  
				}, { 
					width: 70,
					select: true,
					submit: 'OK'
				});
			}
			
			if(folder_type == 'images') {
				var d_msg = 'aucune image';
			}
			else if(folder_type == 'videos') {
				var d_msg = 'aucune vidéo';
			}
			else if(folder_type == 'files') {
				var d_msg = 'aucun fichier';
			}
						
			if(p == 0) {
				prependMsg('warning',"Il n'y a encore "+d_msg+" dans ce répertoire."+
				'<br /><a href="upload.php?folder='+folder_id+'#upload-'+folder_type+
				'">Cliquez ici pour en ajouter maintenant.</a>');
			}
			else {
				$('#message_box').fadeOut('slow');
			}
		} 
		else {
			if(typeof rsp != 'undefined') {
				prependMsg('error',$(rsp).find('message').text());
			}
		}
	});
	
	$('#folder_id').val(folder_id);
}