
ajaxFileUpload = {

    frame : function(c) {

        var n = 'f' + Math.floor(Math.random() * 99999);
        var d = document.createElement('DIV');
        d.innerHTML = '<iframe style="display:none" src="about:blank" id="'+n+'" name="'+n+'" onload="ajaxFileUpload.loaded(\''+n+'\')"></iframe>';
        document.body.appendChild(d);

        var i = document.getElementById(n);
        if (c && typeof(c.onComplete) == 'function') {
            i.onComplete = c.onComplete;
        }

        return n;
    },

    form : function(f, name) {
        f.setAttribute('action', 'file_upload_phonereview_images.php');
        f.setAttribute('target', name);
    },

    submit : function(f, c) {
        ajaxFileUpload.form(f, ajaxFileUpload.frame(c));
        if (c && typeof(c.onStart) == 'function') {
            c.onStart();
        } else {
            
        }        
        
        f.submit();
        
        return true;
    },

    loaded : function(id) {
        var i = document.getElementById(id);
        if (i.contentDocument) {
            var d = i.contentDocument;
        } else if (i.contentWindow) {
            var d = i.contentWindow.document;
        } else {
            var d = window.frames[id].document;
        }
        if (d.location.href == "about:blank") {
            return;
        }

        if (typeof(i.onComplete) == 'function') {
            i.onComplete(d.body.innerHTML);
        }
    }
}


function startCallback() {
    // make something useful before submit (onStart)
    return true;
}

function completeCallback(response) {
    var tmp = response.split(":");
    
    if (tmp[0] == 'error') {
        alert(tmp[1]);
        return false;
    }
        
    var id = parseInt(tmp[0]); 
    var imagename = tmp[1]; 
    
    var form = document.getElementById('user_reviews_submit');
    form.setAttribute('action', '');
    form.setAttribute('target', '_self');
        
    var review_id = document.getElementById('review_id').value;
        
    //form.elements['imagename'].value = '';
    form.elements['image'].value = '';
    
    var files = document.getElementById('files'); 
    
    var li = document.createElement('li');
    var span = files.getElementsByTagName('span')[0];
    li.setAttribute('id', 'ur_'+id);
    li.innerHTML = '<a href="javascript:;" onclick="removeImage(' + id + ', ' + review_id + ')"><img src="http://s1.phonearena.com/img/icon_no.gif" align="left" > '+imagename+'</a><br /><img src="showimage.php?m=Phones.ReviewImages&v=thumb&id='+id+'&f=image" vspace="4">';
    files.insertBefore(li, span);
}

function removeImage(id, review_id){
    (new Phone_ActionHandler).removeImage(
        { id : id, 
          review_id : review_id, 
        },
        function(result) { 
            if (result === false) {
                alert('Image deletion failed.');
            } else {
                var link = document.getElementById('ur_'+id);
                link.parentNode.removeChild(link);
            }
        }
    );
}

