document.write('<script src="../images/prototype.js" type="text/javascript"></script>' +
               '<script src="../images/swfupload.js" type="text/javascript"></script>');


function fileQueued(file) {
    try {
        /*		var progress = new FileProgress(file, this.customSettings.progressTarget);
        progress.setStatus("Pending...");
        progress.toggleCancel(true, this);*/

    } catch (ex) {
        this.debug(ex);
    }

}

function fileQueueError(file, errorCode, message) {
    try {
        if (errorCode === 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 (errorCode) {
            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: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
                break;
        }
    } catch (ex) {
        this.debug(ex);
    }
}

function fileDialogComplete(numFilesSelected, numFilesQueued) {
    try {
        if (numFilesSelected > 0) {
            //document.getElementById(this.customSettings.cancelButtonId).disabled = false;
        }

        /* I want auto start the upload and I can do that here */
        this.startUpload();
    } catch (ex) {
        this.debug(ex);
    }
}

function uploadStart(file) {
    msg();
    progressBar();
    return true;
}

function uploadProgress(file, bytesLoaded, bytesTotal) {
    percent = Math.ceil((bytesLoaded / bytesTotal) * 100);
    if (percent < 100) {
        count(bytesLoaded, bytesTotal);
    } else {
        finishBar();
    }
}

function uploadSuccess(file, serverData) {
    var adr = (serverData.toString()).split(":");
    var curl = top.location.toString().toLowerCase();
    if (adr[0] == 'Location') {
        if (adr[1].indexOf('&u=')) adr[1] = adr[1].substring(adr[1].indexOf('&u=') + 3).replace('%2F', '/');
        curl = curl.substring(0, curl.indexOf('.shtml') + 6);
        top.location = curl + '?' + adr[1];
    }
    else {

        alert('圖片處理失敗，請與管理員聯絡！');
        top.location.reload();
    }

}

function uploadError(file, errorCode, message) {
    try {
        /*		var progress = new FileProgress(file, this.customSettings.progressTarget);
        progress.setError();
        progress.toggleCancel(false);*/

        switch (errorCode) {
            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: " + errorCode);
                this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
                break;
        }
    } catch (ex) {
        this.debug(ex);
    }
}

function uploadComplete(file) {

    //swfu.setButtonDisabled(false);
}

function queueComplete(numFilesUploaded) {

}




var percent = 0
var lastBar = 0
var line = "|"
var amount = "|"

var uploadedNum = 0;

function convertPercent(per) {
    return per;
}

function count(bytesLoaded, bytesTotal) {

    while (percent > lastBar) {
        amount = amount + line
        lastBar++;
    }

    document.getElementById("chart").value = amount;
    document.getElementById("percentDT").value = Math.ceil(bytesLoaded * 0.001) + "KB/" + Math.ceil(bytesTotal * 0.001) + "KB  " + percent + "%";

}

function count2() {

    document.getElementById("chart").value += line
    document.getElementById("percentDT").value = convertPercent(percent++) + "%"

    if (percent < 100) {

        if (percent < 70) {
            setTimeout("count2()", 100);
        } else {
            clearTimeout("count2()", 100);
            var f = setTimeout("count2()", percent * 1.2 * 1.2 * 1.2 * 1.2);
        }

    } else {

        clearTimeout(f);
        document.getElementById("chart").value += line
        document.getElementById("percentDT").value = "100%"
        document.getElementById("info").innerHTML = "處理完成,正在顯示圖片";
    }

}


function failedBar() {

    resetBar();
    document.getElementById("info").innerHTML = "圖片上傳失敗！";

}
function progressBar() {

    document.getElementById("progressBar").style.display = "block";
    document.getElementById("percentDT").style.visibility = "visible";
    document.getElementById("info").innerHTML = "圖片上傳中...";
    count();

}
function finishBar() {

    document.getElementById("info").innerHTML = "圖片處理中...";
    resetBar();
    _button_disabled = true;

    count2();

}
function resetBar() {
    clearTimeout(setTimeout("count()", 100));
    percent = 0;
    lastBar = 0;
    amount = "|";
    document.getElementById("chart").value = amount
    document.getElementById("percentDT").value = convertPercent(percent) + "%"
}


function msg(info) {

    var p = document.createElement("div");

    if (!info) {
        var info = "<div id='progressBar' align='center' style='padding:20px 0 30px 0; display:none'><img  align='center' src='../images/pk.gif'><div style='margin-top:-150px' align='center'><img src='../images/loading.gif'  style='display:; position: absolute;left:80px;top:30px;'><NOBR><p id='info' style='font-family:Arial;font-weight:bold; color:black;padding:0px; border-style:none; font-size:19px;height:auto'> 請上傳照片</p><div id='progress' style='position: absolute;  top:95px;left:70px'><input type='text' id ='chart' size='48' style='font-family:Arial;font-weight:bold; color:black;padding:0px; border-style:none; font-size:13px;background-color:transparent;';><br /><input type='text' id ='percentDT' size='32' style='margin-top:auto;background-color:transparent;font-family:Verdana;color:#666;font-size:15px;text-align:center;border-style:none;font-weight:100'> </div></div></div> ";
    }
    p.id = "p";
    p.style.position = "absolute";
    p.style.width = document.body.scrollWidth;
    p.style.height = (document.body.offsetHeight > document.body.scrollHeight) ? '100%' : document.body.scrollHeight;
    p.style.zIndex = '998';
    p.style.top = '0px';
    p.style.left = '0%';
    p.style.backgroundColor = "gray";
    p.style.opacity = '0.5';
    p.style.filter = "alpha(opacity=68)";
    document.body.appendChild(p);
    var p1 = document.createElement("div");
    var top = "368"; //parseInt(parseInt(document.body.scrollHeight) * 0.5) + document.body.scrollTop;
    p1.style.position = "absolute";
    p1.style.width = "300px";
    p1.id = "p1";
    var left = Math.ceil(((document.body.scrollWidth) - parseInt(p1.style.width.replace('px', ''))) / 2) + document.body.scrollLeft;
    p1.style.height = "470px";
    p1.style.zIndex = '999';
    p1.style.top = top + 'px';
    p1.style.left = left + 'px';
    p1.style.border = "0px solid #EFE2F3";
    var html = "";
    html += "<center>"
    html += "<div style='position: absolute;  left:-40px;top:40px;'>"
    html += "<div class='p3' ></div>"
    html += "<div class='p2' ></div>"
    html += "<div class='p2' ></div>"

    html += "<div id='c'>" + info + "</div>"
    html += "<div class='p1' ></div>"
    html += "<div class='p2' ></div>"
    html += "<div class='p3' ></div>"
    html += "</div>"
    html += "</center>"
    document.body.appendChild(p1);
    p1.innerHTML = html;
    var arr = document.getElementsByTagName("select");
    var i = 0;
    while (i < arr.length) {
        arr[i].style.visibility = 'hidden'; //hidden  visible
        i++;

    }
    this.cancle = function() {
        document.body.removeChild(document.getElementById('p'));
        document.body.removeChild(document.getElementById('p1'));
        var arr = document.getElementsByTagName("select");
        var i = 0;
        while (i < arr.length) {
            arr[i].style.visibility = 'visible';
            i++;
        }
    }
}

var phost = 'http://do1.keniu.com/';

function getPUrl() {
     var cpurl = top.location.search;
     if (cpurl != '') cpurl = phost + 'attachment/peffect/' + cpurl.substring(1).replace(/%2F/g, '/');
     return cpurl;
}

function showImg() {
    var cpurl = getPUrl();
    if (cpurl != '') {
        document.getElementById('ppreview').src = cpurl;
        document.getElementById('sbtn').style.display = 'none';
        document.getElementById('spc').style.display = '';
    }
}



function download2pc() {
    self.location = phost + 'pdimg.php?u=' + top.location.search.substring(1);
}

function reupload() {
    document.getElementById('sbtn').style.display = '';
    //document.getElementById('spc').style.display = 'none';
}


function send() {
    copy2send(getPUrl());
}
