function upload_gears(event) {

    var data = desktop.getDragData(event, 'application/x-gears-files');
            
    var boundary = '------multipartformboundary' + (new Date).getTime();
    var dashdash = '--';
    var crlf     = '\r\n';
    
    /* Build RFC2388 string. */
    var builder = google.gears.factory.create('beta.blobbuilder');

    builder.append(dashdash);
    builder.append(boundary);
    builder.append(crlf);
    
    //for (var i in data.files) {

        var file = data.files[0];
        
        /* Generate headers. */
        builder.append('Content-Disposition: form-data; name="image"');
        if (file.name) {
            builder.append('; filename="' + file.name + '"');
        }
        builder.append(crlf);
        
        builder.append('Content-Type: application/octet-stream');
        builder.append(crlf);
        builder.append(crlf); 
        
        /* Append binary data. */
        builder.append(file.blob);
        builder.append(crlf);

        /* Write boundary. */
        builder.append(dashdash);
        builder.append(boundary);
        builder.append(crlf); 
    //}
    
    /* Mark end of the request. */
    builder.append(dashdash);
    builder.append(boundary);
    builder.append(dashdash);
    builder.append(crlf);        
        
    request.onreadystatechange = function() {
        switch(request.readyState) {
            case 4:
				if(request.responseText){
				 	completeFormUpload(request.responseText);
				}
				break;
        }
    };
	    
    /* Use Gears to submit the data. */
    request.open("POST", "api.php");
    request.setRequestHeader('content-type', 
        'multipart/form-data; boundary=' + boundary);
	drop.innerHTML = 'loading...';
    request.send(builder.getAsBlob());
    
    /* Prevent FireFox opening the dragged file. */
    //event.stopPropagation();
    
}
function upload_fileapi(event) {
    
    var data = event.dataTransfer;

    var boundary = '------multipartformboundary' + (new Date).getTime();
    var dashdash = '--';
    var crlf     = '\r\n';

    /* Build RFC2388 string. */
    var builder = '';

    builder += dashdash;
    builder += boundary;
    builder += crlf;
    
    var xhr = new XMLHttpRequest();
    
    /* For each dropped file. */
    for (var i = 0; i < data.files.length; i++) {
        var file = data.files[i];

        /* Generate headers. */            
        builder += 'Content-Disposition: form-data; name="image"';
        if (file.fileName) {
          builder += '; filename="' + file.fileName + '"';
        }
        builder += crlf;

        builder += 'Content-Type: application/octet-stream';
        builder += crlf;
        builder += crlf; 

        /* Append binary data. */
        builder += file.getAsBinary();
        builder += crlf;

        /* Write boundary. */
        builder += dashdash;
        builder += boundary;
        builder += crlf;
    }
    
    /* Mark end of the request. */
    builder += dashdash;
    builder += boundary;
    builder += dashdash;
    builder += crlf;

    xhr.open("POST", "api.php", true);
    xhr.setRequestHeader('content-type', 'multipart/form-data; boundary=' 
        + boundary);
	drop.innerHTML = 'loading...';
    xhr.sendAsBinary(builder);        
    
    xhr.onload = function(event) { 
       if(xhr.responseText){
		   completeFormUpload(xhr.responseText);
		}
    };
    
    /* Prevent FireFox opening the dragged file. */
    event.stopPropagation();
    
}

function startFormUpload(){
	document.getElementById('form').style.display = 'none';
	document.getElementById('part2').style.display = '';		
}

function completeFormUpload(response){
	var data = JSON.parse(response);
	if(data.error == 1){
		alert(data.msg);
		resetForm();
		return false;
	}	
	document.getElementById('box').style.display = 'none';
	
	html = "<table width=\"100%\" border=\"0\">" + 
			  "<tr>" + 
				"<td width=\"100px\" rowspan=\"12\"><img src=\"" + data.thumb + "\"></td>" + 
				"<td><font size=\"-1\"><b>Dein Bild:</b> <a href=\"" + data.html + "\"><img src=\"images/link.png\" border=\"0\"></a></font></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td bgcolor=\"\"><input type=\"text\" size=\"40\" class=\"input\" value=\"" + data.html + "\" /></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><font size=\"-1\"><b>Thumbnail</b></font></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><input type=\"text\" size=\"40\" class=\"input\" value=\"" + data.thumb + "\" /></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><font size=\"-1\"><b>Direktlink</b></font></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><input type=\"text\" size=\"40\" class=\"input\" value=\"" + data.img + "\" /></td>" + 
			  "</tr>" + 
			  /*"<tr>" + 
				"<td align=\"center\"  width=\"100\" valign=\"bottom\" bgcolor=\"\"><font size=\"-1\"><b>Direktlink mit Thumbnail (HTML)</b></font></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td align=\"center\"  width=\"100\" valign=\"top\" bgcolor=\"\"><input type=\"text\" size=\"50\" class=\"text_bgImage\" value=\"<a href=\"" + data.img + "\" target=\"_blank\" ><img src=\"" + data.thumb + "\" border=0></a>\" /></td>" + 
			  "</tr>" + */
			  "<tr>" + 
				"<td><font size=\"-1\"><b>BBCode ohne Thumbnail</b></font></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><input type=\"text\" size=\"40\" class=\"input\" value=\"[url=" + data.html + "][img]" + data.img + "[/img][/url]\" /></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><font size=\"-1\"><b>BBCode mit Thumbnail</b></font></td>" + 
			  "</tr>" + 
			  "<tr>" + 
				"<td><input type=\"text\" size=\"40\" class=\"input\" value=\"[url=" + data.html + "][img]" + data.thumb + "[/img][/url]\" /></td>" + 
			  "</tr>" + 
			"</table>";
	document.getElementById('result').style.display = '';
	document.getElementById('result').innerHTML = html + document.getElementById('result').innerHTML;
}

function resetForm(){
	document.getElementById('box').style.display = '';
	document.getElementById('form').style.display = '';
	document.getElementById('form').reset();
	document.getElementById('part2').style.display = 'none';
	document.getElementById('drop').innerHTML = "Drop Here";
	document.getElementById('drop').style.display = 'none';
	lock = false;
}
