var req;
var url = 'http://www.zippyshare.com/GetData';
var pb1;
var files = 1;
var page = 0;
var old_page;

var f = 0;

function init() {
    
    if (document.forms[0].fupload.value == "") { 
        document.forms[0].fupload.focus();
        alert('Please select a file for upload.');
        return false;
    }
    var filename = document.forms[0].fupload.value;
    var pregmatch = filename.match(/\.(exe|php|asp|htm|html|htaccess)/);
    if(pregmatch) {
        alert("The file type you are trying to upload is not allowed.");
        return false;
    }
    
    
    if (!document.forms[0].terms.checked) { 
        document.forms[0].terms.focus();
        alert("You must agree to the Terms of Service.");
        return false;
    }
    
    
    var progressbar = document.getElementById("upload");
    progressbar.style.visibility = "visible";
    progressbar.style.height = "180px";
    
    
    var main = document.getElementById("main");
    main.style.display = "none";
    
    
    
    setTimeout("start()", 2000);
    return true;
}

function start() {
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        req = new XMLHttpRequest();
    }
    
    req.open("GET", url, true);
    req.onreadystatechange = callback;
    req.send(null);               
}

function callback() {
    if (req.readyState == 4) {
        if (req.status == 200) {
            
            var read = req.responseXML.getElementsByTagName("tread")[0].firstChild.nodeValue;
            var size = req.responseXML.getElementsByTagName("tsize")[0].firstChild.nodeValue;
            var kibs = req.responseXML.getElementsByTagName("kibs")[0].firstChild.nodeValue;
            var days = req.responseXML.getElementsByTagName("days")[0].firstChild.nodeValue;
            var hours = req.responseXML.getElementsByTagName("hours")[0].firstChild.nodeValue;
            var minutes = req.responseXML.getElementsByTagName("minutes")[0].firstChild.nodeValue;
            var seconds = req.responseXML.getElementsByTagName("seconds")[0].firstChild.nodeValue;
            
            kibs = Math.round(kibs*100) / 100;
            
            var est = "<b>Estimated time remaining: </b>";
            if (days > 0)
                est = est+days+" days ";
            if (hours > 0)
                est = est+hours+" hours ";
            if (minutes > 0)
                est = est+minutes+" minutes ";
            if (seconds > 0)
                est = est+seconds+" seconds ";
            
            est = est+"<br>Uploaded: "+Math.round(read/(1024*1024)*100)/100+"MB / "+Math.round(size/(1024*1024)*100)/100+"MB";
            
            var mdiv = document.getElementById("etr");
            mdiv.innerHTML = est;
            
            var k_sp = document.getElementById("kbps");
            k_sp.innerHTML = kibs+"KB/s";
            
            var speed_Bar = document.getElementById("speed");
            
            if (kibs < 50)
                speed_Bar.style.width = (Math.round(kibs)*3)+"px";
            else
                speed_Bar.style.width = "150px";
            
            
            var percent = Math.round((read/size)*100);
            
            var progress = document.getElementById("progress");
            progress.style.width = Math.round(percent/100 * 600)+"px";
            
            var per_div = document.getElementById("status");
            per_div.innerHTML = " "+percent+"%";
            
            if (percent < 100)
                setTimeout("start()", 2500);
            else {
                var mdiv = document.getElementById("etr");
                mdiv.innerHTML = "";
                setTimeout("readlink()", 1000);
            }
        }
        else { // if request.status != 200
            setTimeout("start()", 1000);
        }
    }          
}

function readlink() {
    var iframetext =  document.getElementById("dummy").contentWindow.document.body.innerHTML;
    
    var mdiv = document.getElementById("target_upload");
    mdiv.innerHTML = iframetext;
    setTimeout("readlink()", 1000);
}

function selectLinkCode(id) {
    document.getElementById(id).focus();
    document.getElementById(id).select();
}

function addFile() {
    if (files < 13) {
        f++;
        files++;
        document.getElementById("onemorefile"+f).innerHTML+='<span id=f'+f+'>'
        +'<span id=r'+f+'>'
        +'<font size=1 class=link style="cursor: pointer;" onClick="document.getElementById(\'f'+f+'\').innerHTML=\'\';files--;">remove </font></span>'
        +'<input type=file class="file_upload" name=fileup'+f+' size="60"><br></span>'
        +'<span id=onemorefile'+(f+1)+'></span>';
    }
}

function submitero() {
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        req = new XMLHttpRequest();
    }
    var text = encodeURI(document.someform.text.value).replace(/&/, "[ampersand]");
    var user = encodeURI(document.someform.name.value).replace(/&/, "[ampersand]");
    
    if (text == "" || user == "") {
        if (text == "") {
            var t = document.getElementById("us_name");
            t.style.color = "red";
        }
        if (user == "") {
            var t = document.getElementById("your_comment");
            t.style.color = "red";
        }
        
        return;
    }
    
    var key = document.someform.key.value;
    var params = "text="+text+"&name="+user+"&key="+key;
    
    req.open("POST", "../../AddComment", true);
    
    req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    req.setRequestHeader("Content-length", params.length);
    req.setRequestHeader("Connection", "close");
    
    req.onreadystatechange = refresh;
    req.send(params);   
}

function refresh() {
    if (req.readyState == 4) {
        if (req.status == 200) {
            window.location.reload(true);
        }
    }
}

function previous() {
    old_page = page;
    page--;
    
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        req = new XMLHttpRequest();
    }
    
    var key = document.someform.key.value;
    var params = "key="+key+"&page="+page;
    
    req.open("POST", "../../GetComments", true);
    
    req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    req.setRequestHeader("Content-length", params.length);
    req.setRequestHeader("Connection", "close");
    
    req.onreadystatechange = ref_comments;
    req.send(params);   
}

function next() {
    old_page = page;
    page++;
    
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        req = new XMLHttpRequest();
    }
    
    var key = document.someform.key.value;
    var params = "key="+key+"&page="+page;
    
    req.open("POST", "../../GetComments", true);
    
    req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    req.setRequestHeader("Content-length", params.length);
    req.setRequestHeader("Connection", "close");
    
    req.onreadystatechange = ref_comments;
    req.send(params);    
}

function ref_comments() {
    if (req.readyState == 4) {
        if (req.status == 200) {
            var com = document.getElementById("com");
            var innertext = "";
            
            var comments = req.responseXML.getElementsByTagName("comment");
            if (comments.length == 0) {
                page = old_page;
                return;
            }
            
            for (var i = 0; i < comments.length; i++) {
                var comment = comments.item(i);
                
                var user = comment.getElementsByTagName("user")[0].firstChild.nodeValue;
                var text = comment.getElementsByTagName("text")[0].firstChild.nodeValue;
                var date = comment.getElementsByTagName("date")[0].firstChild.nodeValue;
                
                innertext += "<div id=\"comments\">"+
                "<p><strong>"+user+"</strong> on "+date+" wrote </p>"+
                "<div class=\"comment\">"+
                text+""+
                "</div>"+
                "</div>";
              
                
            }
            com.innerHTML = innertext;
        }
    }
    adjustLength();
}

function showHideComments() {
    var form = document.getElementById('someform');
    if (form.style['display'] == 'none')
        form.style['display'] = 'block';
    else
        form.style['display'] = 'none';

    adjustLength();
}

function adjustLength() {
    var c = document.getElementById('c');
    document.getElementById('comment_border_left').style['height'] = c.clientHeight+"px";
    document.getElementById('comment_border_right').style['height'] = c.clientHeight+"px";
}




