
function toggleExtendedInfo($element, $fileId)
{
	
	if ($element.src.indexOf('down') > 0)
	{
		$element.src = $element.src.replace('down', 'up');
	} else {
		$element.src = $element.src.replace('up', 'down');
	}
	
	if ($('row_' + $fileId + '_description').style.display == 'none')
	{
		$('row_' + $fileId + '_description').style.display = '';
		$('row_' + $fileId + '_tags').style.display = '';
	} else {
		
		$('row_' + $fileId + '_description').style.display = 'none';
		$('row_' + $fileId + '_tags').style.display = 'none';
	}
	
}

function fileQueued(file)
{
	if (global_queue_length == 30) return '';
	var fileProgressBox = document.createElement("div");
	fileProgressBox.id = file.id;
	
	$fileName = file.name;
	$pos = $fileName.lastIndexOf(".");
	$fileName = $fileName.substr(0, $pos);
	
	fileProgressBox.innerHTML = '<table cellspacing="0" cellpadding="0" border="0" style="margin-top:4px"><tr><td style="padding-right:10px; width:80px; height:26px; color:#255699; font-weight:bold" align="left" valign="middle">Name</td><td><input type="text" style="width:300px; color:#444; font-size:13px; border:1px #7db1d8 solid;" value="' + $fileName + '" id="' + file.id + '_text" name="' + file.id + '_text"></td><td><img src="/images/btn_down.gif" alt="Details" border="0" id="'+file.id+'_extend" style="cursor:pointer;" onclick="toggleExtendedInfo(this, \''+file.id+'\');"></td><td style="padding-left:10px;"><div id="'+file.id+'_remove" style="width:120px;"><a href="javascript:void(0);" onclick="fileCanceled(\''+file.id+'\');"><img src="http://www.bilder-speicher.de/images/icons/cross.png" alt="Datei entfernen" border="0" /></a></div></td></tr><tr id="row_'+file.id+'_description" style="display:none;"><td style="color:#255699; font-weight:bold; padding-right:10px; height:26px;" align="left" valign="top">Beschreibung</td><td><textarea style="width:300px; height:50px; color:#444; font-size:14px; border:1px #7db1d8 solid;" id="' + file.id + '_description" name="' + file.id + '_description"></textarea></td><td style="padding-left:5px;">&nbsp;</td><td style="padding-left:10px;">&nbsp;</td></tr><tr id="row_'+file.id+'_tags" style="display:none;"><td style="color:#255699; font-weight:bold; padding-right:10px; height:26px;" align="left" valign="middle">Tags</td><td><input type="text" style="width:300px; color:#444; font-size:14px; border:1px #7db1d8 solid;" id="' + file.id + '_tags" name="' + file.id + '_tags"></td><td style="padding-left:5px;">&nbsp;</td><td style="padding-left:10px;">&nbsp;</td></tr><tr><td style="padding-right:10px; height:12px; color:#255699; font-size: 11px;" align="left" valign="middle">Fortschritt</td><td><div style="background:#B0CADB;padding:1px;"><div style="background:#D4E4F1; height:14px;"><div id="'+file.id+'_progress" style="width:0%; background:#6FAB03;"><!-- SPACER --></div></div></div></td><td style="padding-left:5px;">&nbsp;</td><td style="padding-left:10px;"><div id="'+file.id+'_percent" style="color:#255699">0%</div></td></tr></table><div style="border-bottom:1px dotted #ADC7D8; height:5px; width:480px;"></div>';
	window.setTimeout("toggleExtendedInfo(document.getElementById('"+file.id+"_extend'), '"+file.id+"');",500);
	
	document.getElementById('SWFUploadTarget').appendChild(fileProgressBox);
	
	global_queue_length++;
	nubchange();
}

function fileCanceled(fileId)
{
	swfu.cancelUpload(fileId);
	document.getElementById(fileId).parentNode.removeChild(document.getElementById(fileId));
	global_queue_length--;
	if (global_queue_length == 0)
	{
		$('step_3').style.display = '';
		$('step_3_head').style.display = '';
		$('step_3_run').style.display = 'none';
		$('step_3_run_head').style.display = 'none';
		$('step_4').style.display = 'none';
		$('step_4_head').style.display = 'none';
	}
	
	nubchange();
}

function fileQueueError(file, error_code, message) {
	/*
	try {
		if (error_code === SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED) {
			alert("You have attempted to queue too many files.\n" + (message === 0 ? "You have reached the upload limit." : "You may select " + (message > 1 ? "up to " + message + " files." : "one file.")));
			return;
		}

		var progress = new FileProgress(file, this.customSettings.progressTarget);
		progress.SetError();
		progress.ToggleCancel(false);

		switch (error_code) {
		case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:
			progress.SetStatus("File is too big.");
			this.debug("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:
			progress.SetStatus("Cannot upload Zero Byte files.");
			this.debug("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:
			progress.SetStatus("Invalid File Type.");
			this.debug("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		default:
			if (file !== null) {
				progress.SetStatus("Unhandled Error");
			}
			this.debug("Error Code: " + error_code + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		}
	} catch (ex) {
        this.debug(ex);
    }
    */
}

function fileDialogComplete(num_files_selected, num_files_queued)
{
/*	
	try {
		if (num_files_queued > 0) {
			document.getElementById(this.customSettings.cancelButtonId).disabled = false;
		}

		this.startUpload();
	} catch (ex)  {
        this.debug(ex);
	}
*/
}

function uploadStart(file) {
	/*
	try {

		var progress = new FileProgress(file, this.customSettings.progressTarget);
		progress.SetStatus("Uploading...");
		progress.ToggleCancel(true, this);
	}
	catch (ex) {}
	*/
	
	return true;
}

function uploadProgress(file, bytesLoaded, bytesTotal) {
	
	var percent = Math.ceil((bytesLoaded / bytesTotal) * 100);
	
	document.getElementById(file.id+'_percent').innerHTML = percent + '%';
	
	document.getElementById(file.id+'_progress').style.width = percent + '%';
	document.getElementById(file.id+'_progress').innerHTML = '&nbsp;';
	
	if (percent == 100)
	{
		document.getElementById(file.id + '_remove').innerHTML = '&nbsp;';
	}
	
}

function uploadSuccess(file, server_data) {
	
	// console.log(server_data);
		
	document.getElementById(file.id + '_text').name 		= server_data;
	document.getElementById(file.id + '_description').name 	= server_data + '_description';
	document.getElementById(file.id + '_tags').name 		= server_data + '_tags';
	
	
	
	
	/*
	try {
		var progress = new FileProgress(file, this.customSettings.progressTarget);
		progress.SetComplete();
		progress.SetStatus("Complete.");
		progress.ToggleCancel(false);

	} catch (ex) {
		this.debug(ex);
	}
	*/
}

function uploadError(file, error_code, message) {
	/*
	try {
		var progress = new FileProgress(file, this.customSettings.progressTarget);
		progress.SetError();
		progress.ToggleCancel(false);

		switch (error_code) {
		case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
			progress.SetStatus("Upload Error: " + message);
			this.debug("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
			progress.SetStatus("Upload Failed.");
			this.debug("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.IO_ERROR:
			progress.SetStatus("Server (IO) Error");
			this.debug("Error Code: IO Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
			progress.SetStatus("Security Error");
			this.debug("Error Code: Security Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
			progress.SetStatus("Upload limit exceeded.");
			this.debug("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
			progress.SetStatus("Failed Validation.  Upload skipped.");
			this.debug("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
			// If there aren't any files left (they were all cancelled) disable the cancel button
			if (this.getStats().files_queued === 0) {
				document.getElementById(this.customSettings.cancelButtonId).disabled = true;
			}
			progress.SetStatus("Cancelled");
			progress.SetCancelled();
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
			progress.SetStatus("Stopped");
			break;
		default:
			progress.SetStatus("Unhandled Error: " + error_code);
			this.debug("Error Code: " + error_code + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		}
	} catch (ex) {
        this.debug(ex);
    }
    */
}

function uploadComplete(file) {
	if (this.getStats().files_queued === 0) {
		// document.getElementById(this.customSettings.cancelButtonId).disabled = true;
	}
}

function queueComplete(num_files_uploaded) {
	
	if (global_queue_length > 0)
	{
		$('step_3').style.display = 'none';
		$('step_3_head').style.display = 'none';
		$('step_3_run').style.display = 'none';
		$('step_3_run_head').style.display = 'none';
		$('step_4').style.display = '';
		$('step_4_head').style.display = '';
	} else {

		$('album').disabled = false;
		$('strName').disabled = false;
		$('strDescr').disabled = false;
		$('intOptions').disabled = false;
		$('strPass').disabled = false;
		$('K_intID').disabled = false;
		$('img_K_intID').disabled = false;
		
		//$('upload_buttons').style.display = '';
		if ($('new_album').style.display == '')
		{
			$('close_album_btn').style.display = '';
		} else {
			$('add_album_btn').style.display = '';
		}
		$('add_album_img').style.display = '';
	}
	

	
	//var status = document.getElementById("divStatus");
	//status.innerHTML = num_files_uploaded + " file" + (num_files_uploaded === 1 ? "" : "s") + " uploaded.";
}

