var timeelapsed = 0 ; var usid = "" ; var finished = false ; var uploadUpdater ; function hd( sec ) { var sec = parseInt( sec ) ; var minute = parseInt(sec / 60) ; var second = parseInt(sec - (minute * 60) ) ; var sminute = ( minute > 1 ) ? ' minutos ' : ' minuto' ; var ssecond = ( second > 1 ) ? ' segundos ' : ' segundo' ; if( minute > 0 && second > 0 ) return ( minute + sminute + ' e ' + second + ssecond ) ; else if( minute > 0 && second == 0 ) return ( minute + sminute ) ; else return ( second + ssecond ) ; } function floatfix( n ) { var s = n.toString() ; if( s.length > 0 ) return parseFloat( n ).toFixed(2).replace('.',',') ; return '0,00' ; } function fbr( s ) { var s = s.toString() ; var s = s.replace('.',',') ; var r = s.split(',') ; var j = 0 ; var temp = '' ; var result = '' ; if( r[0] != 'undefined' ) sn = r[0] ; for( i = sn.length-1 ; i >= 0 ; i-- ) { j++ ; temp += sn.substr(i,1) ; if( j == 3 ) { temp += '.' ; $j = 0 ; } } for( i = temp.length-1 ; i >= 0 ; i-- ) result += temp[i] ; result = result + ',' + r[1]; return result ; } function filetypeCheck(filename) { var fn = filename ; if (fn == ""){ document.getElementById("allowed").className =''; document.getElementById("upload").disabled = true; } else { var ext = fn.split("."); if (ext.length==1) ext = '.noext.'; else ext = '.' + ext[ext.length-1].toLowerCase() + '.'; if (NOT_ALLOWED_TYPES.indexOf(ext) == 0) { document.getElementById("allowed").className = 'alert'; document.getElementById("allowed").style.display = 'block'; document.getElementById("upload").disabled = true; return false ; } else { document.getElementById("allowed").className = 'noalert'; document.getElementById("allowed").style.display = 'none'; document.getElementById("upload").disabled = false; } } return true ; } function beginUpload(sid) { var timeelapsed = 0 ; if( !filetypeCheck(document.getElementById('file').value) ) { return false ; } usid = sid; var uform = document.getElementById('uploadform').getElementsByTagName('form')[0]; var upb = document.getElementById('upload_pb'); if (uform.file.value=="") return; // no file, no upload document.getElementById('upload_filename').innerHTML = uform.file.value; upb.style.height = uform.offsetHeight+"px"; uform.style.display = 'none'; upb.style.display = 'block'; uform.action = UPLOAD_SCRIPT+'?sid='+sid+'&maxsize='+MAX_FILESIZE; uform.target = 'upload_iframe'; uform.submit(); uploadUpdater = new Ajax.PeriodicalUpdater({},'http://sharex.xpg.com.br/proc.php', {'frequency' : 1.0, 'method': 'post', 'parameters': 'progress=' + sid, 'onSuccess' : updateProgress, 'onFailure' : updateProgress }); } function updateProgress(req) { if (finished) return ; var pb = document.getElementById('upload_progress') ; var pi = document.getElementById('upload_info') ; var rt = req.responseText ; var percent = 0 ; var current = 0 ; var total = 0 ; var duration = 0 ; var brate = 0 ; var rest = 0 ; if( rt.length > 0 ) { if( rt.indexOf('|') > 0 ) { var proc = rt.split('|') ; var percent = proc.length > 0 ? parseFloat(proc[0]).toFixed(2) : 0 ; var current = proc.length > 1 ? parseFloat(proc[1]).toFixed(2) : 0 ; var total = proc.length > 2 ? parseFloat(proc[2]).toFixed(2) : 0 ; var duration = proc.length > 3 ? parseFloat(proc[3]).toFixed(2) : 0 ; var brate = proc.length > 4 ? parseFloat(proc[4]).toFixed(2) : 0 ; var rest = proc.length > 5 ? parseFloat(proc[5]).toFixed(2) : 0 ; } else { var percent = parseFloat(rt).toFixed(2) ; } } if (isNaN(percent)) { finished = true; uploadUpdater.stop() ; if (req.responseText == "FINISHED") { pb.style.width = "100%" ; pb.innerHTML = "100%" ; return; } pb.style.width = 0 ; // -- redirect var form = document.createElement('form'); form.method = 'post'; var input = document.createElement('input'); input.type = 'hidden'; input.name = 'errormsg'; input.value = escape(req.responseText); form.appendChild(input); document.body.appendChild(form); form.submit(); } else { if(!percent) percent = 0; if(percent > 100 ) percent = 100; pb.style.width = '' + percent + '%' ; pb.innerHTML = '' + floatfix(percent) + '% ' ; pitext = '
Restando: ' + hd(floatfix(rest)) + '
Recebidos ' + floatfix(current) + 'MB' + ' de ' + floatfix(total) + 'MB em ' + hd(floatfix(duration)) + ' (' + floatfix(brate) + 'kb/s)' ; pi.innerHTML = pitext ; } } function is_email(s){ var error = 0 ; var i = 1; var ilen = s.length; if ( ilen <= 8 ) error++; while ((i < ilen) && (s.charAt(i) != "@")) { i++ ; } if ((i >= ilen) || (s.charAt(i) != "@")) error++; else i += 2; while ((i < ilen) && (s.charAt(i) != ".")) { i++ ; } if ((i >= ilen - 1) || (s.charAt(i) != ".")) error++; if ( error > 0 ) return false ; return true ; } function toggle(el) { var objDiv = document.getElementById(el) ; objDiv.style.display = (objDiv.style.display == "block") ? "none" : "block" ; } function gurl(url) { location.href = url ; } function curl(url,msg) { if( window.confirm( msg ) ) location.href = url ; }