//<SCRIPT LANGAUGE="JAVASCRIPT">

var bitomregning = 1000;// 1000 eller 1024
var filstorleik = fil_b;
var filobjekt = new Image();
var tidsstempel_a = '';
var tidsstempel_aaa = '';
var tidsstempel_aa = '';
var tidsstempel_ab = '';

var fremdrift = 0;
var antall_tellinger = 0;
var sekundene = 0;
var odde = 0;
var starttest = '';
var ferdig = '';
var mb = '';
var ben = '';
var loggfil = new Image();

var rundea = '';
var res = 'resultata';
var antall_mbits='';

var antall_mbytes = '';

var bildebase='';
var gardin ='';
var valgnummer='';

var eksisterende='';

var mailet='';
var fyrste_tid='';
var forberedende='';
var forb ='';
var stoppet = 1;


//tabell
var stolpetekst=new Array("","&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;64", "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;128", "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;384", "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;768", "&nbsp;&nbsp;&nbsp;1000", "&nbsp;&nbsp;&nbsp;1500", "&nbsp;&nbsp;&nbsp;2000");
var stolpeverdi=new Array("","64", "128", "384", "768", "1000", "1500", "2000"); 
var stolpe='';
var bilde=0;
var tekst='';
var din=0;
var funnet = 0;
var grafbildet='';
//tabell slutt
loggfil.onload=avslutt;
var error = '';


function linjetest(){
res = 'resultata';
stoppet = '';
forb = 'KK';
filobjekt.onload = start_test;

tidsstempel_aaa = '';
tidsstempel_aa = '';
tidsstempel_ab = '';
fyrste_tid='';

if (fremdrift) {clearTimeout(fremdrift);fremdrift=0;}
odde = 0;
sekundene = 0;
antall_tellinger = 0;
grafbildet = '';
funnet='';
stolpe=320;

gardin = document.testform.velg_server;
valgnummer = gardin.options[gardin.selectedIndex].value;
if (valgnummer <1){
alert(velgserver);
return false;
}

if (document.getElementById){
document.testform.startknapp.disabled = true;
document.testform.stoppknapp.disabled = false;
}

bildebase = web[valgnummer]+''+bildebane[valgnummer]+'';
  tidsstempel_a = new Date();
  tidsstempel_aaa = tidsstempel_a.getTime();


document.testform.testresultat.value = "Forbereder..";
if (document.getElementById){
document.getElementById(res).innerHTML = "<b>Forbereder..</b>";
document.getElementById('resultatb').innerHTML = "&nbsp;";
}


filobjekt.src = bildebase+''+fil_test+'?'+tidsstempel_aaa;
fremdrift = setTimeout("prosess(forb);", 500);
}







function prosess(aaaaa)
{




if (stoppet){
avbryt();
return false;
}

if (aaaaa=='KK'){forb=aaaaa;}

if(odde>0){odde=0;}else{odde=1;}



antall_tellinger++;
sekundene = antall_tellinger/2;
if (sekundene<1){sekundene ='0.5';}
if (odde==0){sekundene = sekundene+'.0';}

if(forb){
if (antall_tellinger > 9){
if (fremdrift) {clearTimeout(fremdrift);fremdrift=0;}
avbryt();
alert('Kan ikke opprette forbindelse til '+testserver[valgnummer]+'\nVennligst fors'+__o__+'k en annen server\n');
return false;
}
}

else{
document.testform.testresultat.value = starttest+" "+sekundene+" sek";
if (document.getElementById){
document.getElementById(res).innerHTML = "<b>"+starttest+" "+sekundene+" sek</b>";
}

}

if (antall_tellinger < 60)

    {
    fremdrift = setTimeout("prosess(forb);", 500);
    }  
  else 
    {
avbryt();
alert('Testen kan ikke gjennomf'+__o__+'res p.g.a. tidsavbrudd');
return false;

    }
}

function start_test(size)
{


if (stoppet){
avbryt();
return false;
}

//alert(fil_b);

if (fremdrift) {clearTimeout(fremdrift);fremdrift=0;}

var x=size;
var anum=/(^\d+$)|(^\d+\.\d+$)/;
if (anum.test(x)){
size = size;}
else{
size = '';
}

if (size){
filstorleik =size;
}else{
filstorleik = fil_b;
forb='';
}


filobjekt.onload = stopp_klokken;
if (document.getElementById){
document.getElementById(res).innerHTML = '&nbsp;';
}


if (filstorleik == fil_b){
res = "resultata";
starttest = 'Test ';
}else
{
starttest = 'Test B ';
}

odde = 0;
sekundene = 0;
antall_tellinger = 0;

document.testform.testresultat.value = starttest+' 0.0 sek';

if (document.getElementById){
document.getElementById(res).innerHTML = "<b>"+starttest+" 0.0 sek</b>";
}

  tidsstempel_a = new Date();
  tidsstempel_aa = tidsstempel_a.getTime();
  filobjekt.src = bildebase+""+filstorleik+".jpg?"+tidsstempel_aa;
  fremdrift = setTimeout("prosess();", 500);

if (filstorleik == fil_b){tidsstempel_aaa = (tidsstempel_aa - tidsstempel_aaa)/1000;}


}






function stopp_klokken()
{


if (stoppet){
avbryt();
return false;
}

if (fremdrift){clearTimeout(fremdrift);fremdrift=0;}


tidsstempel_a = new Date();
tidsstempel_ab = tidsstempel_a.getTime();
var test_tid = (tidsstempel_ab - tidsstempel_aa) / 1000;

if ((test_tid < 4)&&(filstorleik == fil_b)){
if (test_tid < 0.3){
start_test(fil_g,bildebase);
}else if (test_tid < 1){
start_test(fil_f,bildebase);
}else if(test_tid < 2){
start_test(fil_e,bildebase);
}else if(test_tid < 3){
start_test(fil_d,bildebase);
}else if(test_tid < 4){
start_test(fil_c,bildebase);
}

fyrste_tid = test_tid;
fyrste_tid = ordnedesimal(fyrste_tid,3);

rundea = 'Test A utf'+__o__+'rt p'+__aa__+' '+fyrste_tid+' sek. (Kun en linjesjekk f'+__o__+'r hovedtesten)<br>';

if (document.getElementById){
document.getElementById(res).innerHTML = rundea;
}


res="resultatb";

}


else{ //start skriv rapport

if (filstorleik < 972800){
mb = (filstorleik / 1024);
ben = 'kB';
}else{
mb = (filstorleik / 1048576);
ben = 'MB';
}

mb = (Math.round(mb * 100)) / 100;
mb = ordnedesimal(mb,2);


mb = mb+" "+ben;

  var antall_bytes = (filstorleik / test_tid) / 1024;
  var antall_bits_sek = ((filstorleik * 8) / test_tid) / bitomregning;
  test_tid = ordnedesimal(test_tid,3);
 antall_bytes = (Math.round(antall_bytes));
 antall_bits_sek = (Math.round(antall_bits_sek));

 //antall_bytes = (Math.round(antall_bytes*100))/100;
 //antall_bits_sek = (Math.round(antall_bits_sek*100))/100;

  ferdig = 'En datablokk p'+__aa__+' '+filstorleik+' bytes ('+mb+') er lastet ned\nForbrukt tid: '+test_tid+' sek.';
  ferdig = ferdig + "\nDin hastighet er "+antall_bytes+" kilobytes/sek. (" + antall_bits_sek + " kilobits/sek.)\n\n";


antall_mbits = antall_bits_sek/bitomregning;
antall_mbits = (Math.round(antall_mbits * 100)) / 100;
antall_mbits = ordnedesimal(antall_mbits,2);

antall_mbytes = antall_bytes/1024;
antall_mbytes *=60;
antall_mbytes = (Math.round(antall_mbytes * 100)) / 100;
antall_mbytes = ordnedesimal(antall_mbytes,2);



if ((tidsstempel_aaa >5)||(fyrste_tid > 0)&&(filstorleik ==99506)){
ferdig = 'Vi fikk desverre problemer med å sjekke hastigheten din';
if (document.getElementById){
document.getElementById('resultata').innerHTML = ferdig;
document.getElementById('resultatb').innerHTML = "&nbsp;";
}
error=1;
document.testform.testresultat.value = ferdig;

}else{ //skriv

tidsstempel_aaa = ordnedesimal(tidsstempel_aaa,3);
document.testform.testresultat.value = ferdig;
ferdig = ferdig.replace(/\n/g,'<br>');
ferdig = ferdig+'<b>***</b>';
if (document.testform.epost.value){
mailet = '<br><font color="#000000">Resultatat er sendt til '+document.testform.epost.value+'</font>';
}
tabell(antall_bits_sek);
ferdig = ''+starttest+'utf'+__o__+'rt p'+__aa__+' '+test_tid+' sek.<b>*)</b> (Detaljer, se bunnen av siden)'+mailet+'<ul><font color="#cc0000"><li>Din linje:<b> '+antall_mbits+' Mbps</b> ('+antall_bits_sek+' kbps)'
+'<li>Dette betyr at du kan laste ned '+antall_mbytes+' MB pr. minutt<br>'
+'<li>Testet mot web: <a href="'+web[valgnummer]+'" target="_blank">'+web[valgnummer]+'</a>'
+'<li>Host: <a href="'+testserver[valgnummer]+'" target="_blank">'+testserver[valgnummer]+'</a>'+om_server[valgnummer]+'</font></ul>'+grafbildet+''
+'<br><b>*) '+starttest+' detaljer:</b><br>'+ferdig;

if (document.getElementById){
document.getElementById(res).innerHTML = ferdig;
//document.testform.startknapp.disabled = false;
document.testform.stoppknapp.disabled = true;
}

}//slutt skriv
loggfil.src = 'logg.php?linjetest='+tidsstempel_aaa+'&test_a='+fyrste_tid+'&test_b='+test_tid+'&inn='+antall_bits_sek+'&fil='+filstorleik+'&server='+testserver[valgnummer]+'&web='+web[valgnummer]+'&epost='+document.testform.epost.value+'&brukerinfo='+brukerinfo+'&error='+error;
//loggfil.src = 'bilder/t.gif';
}//slutt skriv rapport
}

function avslutt(){
if (document.getElementById){//satt inn 21.11.06

document.testform.startknapp.disabled = false;
document.testform.stoppknapp.disabled = true;

}
}

function hjelpegreie(){
passord('webmeter.no');
if (document.getElementById){
document.getElementById('eposthandling').innerHTML = '<font color="#000000">Send resultatet til e-post:</font> <a href="#" onclick="sendmail(); return false;">[Klikk her]</a> (f'+__o__+'r du foretar testen)';

document.getElementById('texta').innerHTML = '<FORM name="testform">'
+'<!--<TEXTAREA NAME="1testresultat"cols="80" rows="5" wrap="virtual">'
+'Trykk p'+__aa__+' knappen "Start test" for '+__aa__+' starte testen.'
+'</TEXTAREA>--><input type=hidden name=testresultat value=""><input type=hidden name=epost value="">'
+''
+'<select name="velg_server">'+rullegardin+''
+'</select>'
+'<INPUT TYPE=BUTTON VALUE="Start test" onclick="linjetest();" name="startknapp"> <INPUT TYPE=BUTTON VALUE="Avbryt" onclick="avbryt();" name="stoppknapp">'
+'</FORM>'; 
document.testform.stoppknapp.disabled = true;
}
}






function fjernepost(){
document.testform.epost.value ='';
document.getElementById('eposthandling').innerHTML = '<font color="#000000">Send resultatet til e-post:</font> <a href="#" onclick="sendmail(); return false;">[Klikk her]</a> (f'+__o__+'r du foretar testen)';
}


function avbryt(){

//
stoppet = 1;
//

if (fremdrift) {clearTimeout(fremdrift);fremdrift=0;}
antall_tellinger =0;
forb = '';
filobjekt.onload = '';
grafbildet = '';
funnet='';
filobjekt.src = 'bilder/t.gif';
res = 'resultata';


if (document.getElementById){
document.getElementById('resultata').innerHTML = "&nbsp;";
document.getElementById('resultatb').innerHTML = "&nbsp;";
avslutt();
}

document.testform.testresultat.value='Trykk p'+__aa__+' knappen "Start test" for '+__aa__+' starte testen.';

//return false;

}


function tabell(karl){

din =karl;

//din = (Math.round(din));

stolpe /=20;

if (din>2000){
	stolpe = ((stolpe*2000)/din);
}


tekst = '<span style="background-color:#FAF682"><font color="#000000">&nbsp;'+din+'';



if (din < 100){tekst = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"+tekst;}
else if (din < 1000){tekst = "&nbsp;&nbsp;&nbsp;&nbsp;"+tekst;}
else if (din < 10000){tekst = "&nbsp;&nbsp;"+tekst;}


grafbildet =grafbildet+'<div style="background-color:#cccccc; padding:5px; border:1px solid #000000;"><font face="arial,Verdana,sans-serif" size="1" color="#000000" style="font-size:10px;">';

for (i=1;i<stolpeverdi.length;i++){

if ((din < stolpeverdi[i])&&(funnet == 0)){
funnet=1;
grafbildet=grafbildet+""+tekst+' kbps</font> </span><img src="bilder/test.gif" width="'+din/100*stolpe+'" height="8"><br>';
i--;
}
else{
grafbildet=grafbildet+""+stolpetekst[i]+' kbps <img src="bilder/'+i+'.gif" width="'+stolpeverdi[i]/100*stolpe+'" height="6"><br>';
}

if ((i == 7)&&(din>=2000)){
grafbildet=grafbildet+""+tekst+' kbps</font> </span><img src="bilder/test.gif" width="'+din/100*stolpe+'" height="8"><br>';

}

}

grafbildet = grafbildet+"</font></div>";

}

function passord(valgtdomene){
var bokstaver ="";
var denne = "";
var grunndomene ="";
var okbase=valgtdomene;


denne = (document.location);
denne = ''+denne+'';
  if (denne.length == 0){
denne = 'ingena?ingenb';
}

var enfin = 'hghiuyhytyoiuoiuyp';
var enfina = enfin.split("y");

grunndomene = denne.split("?");
//grunndomene[0] = grunndomene[0].replace(/www./g,'');

var starturl = enfina[1]+enfina[2]+enfina[2]+enfina[4];
var doa = starturl+'://'+okbase+'';
var dob = starturl+'://'+okbase+'/';
var doc = starturl+'://'+okbase+'/index.php';
var dod = starturl+'://www.'+okbase+'';
var doe = starturl+'://www.'+okbase+'/';
var dof = starturl+'://www.'+okbase+'/index.php';
var dog = starturl+'://www.'+okbase+'/arbeid.htm';


if ((grunndomene[0] == doa)||(grunndomene[0] == dob)||(grunndomene[0] == doc)||(grunndomene[0] == dod)||(grunndomene[0] == doe)||(grunndomene[0] == dof)||(grunndomene[0] == dog))
{
grunndomene[0] = 'ok';
}


bokstaver = grunndomene[0].toString().search(starturl);
if (bokstaver>-1){
if (okbase == 'webmeter.no'){
passord('nettforlaget.net/goto/speed');
}else
{
alert ('En liten feil har inntruffet.');
document.location.href=doc+"?fraweb="+denne+"";
return false;
}

}

}



function ordnedesimal(utavnum,bkomma)
{

utavnum = utavnum.toString();
utavnum = utavnum.split('.');
var lengde= utavnum.length;
if (bkomma == 3){
if (lengde==1){utavnum[1] = '000';}
lengdebak= utavnum[1].length;
if (lengdebak==2){utavnum[1] = utavnum[1]+'0'}
if (lengdebak==1){utavnum[1] = utavnum[1]+'00'}
}else if((bkomma == 2)){
if (lengde==1){utavnum[1] = '00';}
lengdebak= utavnum[1].length;
if (lengdebak==1){utavnum[1] = utavnum[1]+'0'}
}

var forankomma = utavnum[0];
var bakkomma = utavnum[1];
return forankomma+'.'+bakkomma;
}



//var okbase_b='webmeter.no';

//grunndomene[0] = grunndomene[0].replace(/www./g,'');

//var dod = starturl+'://'+okbase_b+'';
//var doe = starturl+'://'+okbase_b+'/';
//var dof = starturl+'://'+okbase_b+'/index.php';

//var dod = starturl+'://www.'+okbase+'';
//var doe = starturl+'://www.'+okbase+'/';
//var dof = starturl+'://www.'+okbase+'/index.php';

//</SCRIPT>


