// file_utils.js

// functions ------------
// file_DeleteAllInFolder(folder_name)

var gDone_func;
var gFileUtilList = new List();

function file_DeleteAllInFolder(folder_name, done_func)
	{
	var data = new Object();
	data.command = "delete_all_in_folder";
	data.folder_name = folder_name;
	data.result = null;
	gDone_func = done_func;
	var dataString = $.toJSON(data);
	$.post('file_utils.php', {data: dataString}, done_deleting_files);
	}
	
function done_deleting_files(res)
	{
 	var obj = $.evalJSON(res); 
 	if (gDone_func) gDone_func(obj)
  	}
 
 //--------------------------------------------------------------------------
 function file_DeleteAllInFolders(folder_names, donefunc)
	{
	var data = new Object();
	data.command = "delete_all_in_folders";
	data.folder_names = js_arraytostring(folder_names);
	var dataString = $.toJSON(data);
	delete data;
	$.post('file_utils.php', {data: dataString}, donefunc);
	}

//--------------------------------------------------------------------------
function getFileExtension(filename)
	{  
	var ext = /^.+\.([^.]+)$/.exec(filename);
	}
	
//--------------------------------------------------------------------------
function file_GetUniqueName(filename)
	{
	var d = new Date();
	var ms = d.getTime();
	delete d;
	return ("temp_"+ms+"_"+GetRand(1,99999)+"."+getFileExtension(filename)).toLowerCase();
	}
	
//--------------------------------------------------------------------------
function empty_upload_folder()
	{
	}
	
//--------------------------------------------------------------------------
function empty_all_mug_folders()
	{
	}

//--------------------------------------------------------------------------
function get_filenames(folder, donefunc)
	{
	var data = new Object();
	data.command = "get_filenames";
	data.dir = folder;
	if (donefunc) data.donefunc = gFileUtilList.add(donefunc);
	var dataString = $.toJSON(data);
	delete data;
	$.post('file_utils.php', {data: dataString}, done_get_filenames);
	}
//--------------------------------------------------------------------------
function done_get_filenames(res)
	{
 	var obj = $.evalJSON(res);
 	if (obj.donefunc) {
		var func = gFileUtilList.getremove(obj.donefunc);
		func($.evalJSON(obj.recs));
	}
	delete obj;
  	}

//--------------------------------------------------------------------------
function get_files(folder, donefunc)
	{
	var data = new Object();
	data.command = "get_files";
	data.dir = folder;
	if (donefunc) data.donefunc = gFileUtilList.add(donefunc);
	var dataString = $.toJSON(data);
	delete data;
	$.post('file_utils.php', {data: dataString}, done_get_files);
	}
//--------------------------------------------------------------------------
function done_get_files(res)
	{
 	var obj = $.evalJSON(res);
	var recs = $.evalJSON(obj.recs);
	files_sort(recs);
  	if (obj.donefunc) {
		var func = gFileUtilList.getremove(obj.donefunc);
		func(recs);
	}
	delete obj;
  	}
//--------------------------------------------------------------------------
function files_sort(recs)
	{
	recs.sort(file_alphaCompare);
	}
//--------------------------------------------------------------------------
function file_alphaCompare(a,b)
	{
	a = a.file;
	b = b.file;
	a = a.toLowerCase();
	b = b.toLowerCase();
	if (a < b) return -1;
	if (a > b) return 1;
	return 0;
	}