var User = ""; /* these parameters will be defined in SelectShares.js preloaded var NextPeriod = "

Neste registreringsperiode for juni starter 24.mai

"; var CompetitionPeriodId = 3; var CompetitionMonth = "mai"; */ var Hints = new Array(); var Tickers = new Array(); var Weigths = new Array(); var container = ""; var MinShares = 3; var MaxShares = 10; var ShareNumber = MinShares; var ProgressStep = 0; var SelectedShares = new Array(); var TimeLeft = ""; var ClearIntervalId = 0; var KonkId = "24"; var toMonths = new Array("januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"); var HintMessage = '
Ingen aktiv registreringsperiode nå'+NextPeriod+"
"; Hints.push(`Steg 1: Konkurransen krever minst 3 aksjer (maks 10 aksjer). Du kan legge til flere ved å klikke på "Legg til aksje" eller fjerne aksje ved klikk på "Fjern aksje". Velg videre hvilke som skal shortes ved å klikke på "Short" (firkanten til venstre). Når du er ferdig, klikk på "Gå videre" og du kan velge tickere og vekting for aksjene.



`); Hints.push(`Steg 2: Du kan nå velge tickere for aksjer og fylle inn vekttall. Når du er ferdig, klikker du på knappen "Gå videre" og din portefølje vil bli sjekket.

Hint: Du klikker på 'Velg ticker' og du får oversikten over alle aksjer som kan velges. Alternativt kan du starte med å trykke på knappen TAB (på tastaturet) og trykke på første bokstav i tickeren du er ute etter. Fortsett med flere tastetrykk og du får neste ticker. Trykk på TAB og du kommer til vekttall og skriver inn verdi. Så fortsetter du med TAB og fokus kommer til neste 'Velg ticker' osv.

`); Hints.push("Steg 3: Verifisering av din portefølje"); Hints.push(""); function InitPortefolio(CurrentUser) { if ( CurrentUser == "") return; //probably not logged in user var id = CompetitionPeriodId; var timeNow = new Date().getTime()/1000; if (timeNow > CompetitionPeriod[1]) id ++; // registration period expired .. dispaly new period document.getElementById("competition").innerHTML = '
;

-Porteføljer i topp og i bunn for '+toMonths[id]+' måned -



'; if (i == 11) { HintMessage = ''; //
Konkurransen er nå avsluttet
'; } User = CurrentUser; ProgressStep = 0; if (CheckValidPeriod() == false) return; CheckCountDown(true); DisplayHint(ProgressStep); UpdateCanvas(); ClearIntervalId = setInterval(() => { if (CheckValidPeriod() == false) clearInterval(ClearIntervalId); else CheckCountDown(); }, 1000); } function CheckCountDown(bForceUpdate = false) { var countdown = Math.floor(CompetitionPeriod[1] - new Date().getTime()/1000); if (countdown < 24*60*60) { var hours = Math.floor(countdown / (60*60)); var minutes = Math.floor((countdown - hours * 60 * 60)/60); var sec = countdown - hours * 60 * 60 - minutes * 60; var ShowMinutes = (minutes < 10) ? "0"+minutes : "" + minutes; var ShowSeconds = (sec < 10) ? "0"+sec : ""+sec; TimeLeft = "(Registrering avsluttes om "+hours+" timer "+ShowMinutes + " min. " + ShowSeconds + " sek.)

"; bForceUpdate = true; } if (bForceUpdate) document.getElementById("MainHdr").innerHTML = `
Sett sammen din nye portefølje for `+CompetitionMonth+` måned

`+TimeLeft+`Sammensetning består av 3 steg. Du kan klikke på knappene 'Gå videre' eller 'Gå tilbake' om du vil endre valg.

`; return false; } function CheckValidPeriod() { var timeNow = new Date().getTime()/1000; if (timeNow < CompetitionPeriod[0] || timeNow > CompetitionPeriod[1]) { document.getElementById("MainHdr").innerHTML = HintMessage; document.getElementById("hint").innerHTML = ""; document.getElementById("canvas").innerHTML = ""; return false; } return true; } function DisplayHint(id) { document.getElementById("hint").innerHTML = Hints[id]; if (id == 0) UpdateButtonStatus(); } function WriteTemplate(id) { var l = ''; container += l; } function WriteSelection(Shares,id,defaultSelected,weigth,bShort = false) { var l = ''; if (bShort) l += 'Short  '; else l += '  '; l += '%'; container += l; } function isNumberKey(evt) { var charCode = (evt.which) ? evt.which : evt.keyCode; if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) return false; return true; } function ReplayStatus() { for (var i = 0; i < SelectedShares.length; i++) { var id = "Short"+(i); var ShortBox = document.getElementById(id); ShortBox.checked = SelectedShares[i]; } } function AddShare() { GrabStatus(); ShareNumber++; UpdateCanvas(); UpdateButtonStatus(); } function UpdateButtonStatus() { document.getElementById("remove").disabled = ShareNumber <= MinShares; if (ShareNumber >= MaxShares) document.getElementById("add").disabled = true; } function UpdateCanvas() { container = ""; if (ProgressStep == 0) { var i; for (i = 0; i < ShareNumber; i++) { WriteTemplate(i); } while (i++ < 10) container += ' '; } else if (ProgressStep == 1) { var i; for (i = 0; i < ShareNumber; i++) { WriteSelection(SelectedShares[i] == true ? SharesShort : Shares,i,Tickers[i],Weigths[i],SelectedShares[i]); } while (i++ < 10) container += ' '; } else { } document.getElementById("canvas").innerHTML = ''+container+'

'; if (ProgressStep == 0) ReplayStatus(); } function RemoveShare() { ShareNumber--; GrabStatus(); UpdateCanvas(); document.getElementById("remove").disabled = ShareNumber == MinShares; document.getElementById("add").disabled = false; } function OnClickCheckbox(id) { // alert(id); } function CreateCheckCanvas() { var content = ""; var sum = 0; var CollectedTickers = new Array(); var bError = false; for (var i = 0; i < ShareNumber; i++) { var weigth = parseInt(Weigths[i]); var ticker = Tickers[i]; sum += weigth; if (ticker == "Velg ticker") { content += "?? "+Weigths[i] + "% - du har ikke valgt ticker for denne\r\n"; bError = true; } else { var j; for (j = 0; j < CollectedTickers.length; j++) { if (CollectedTickers[j] == ticker) { content += ticker +" - du har valgt denne allerede\r\n"; bError = true; break; } } if (j < CollectedTickers.length) continue; CollectedTickers.push(ticker); ticker += " " + Weigths[i] + "%"; if (SelectedShares[i]) ticker += " (short)"; if (weigth < 10 || weigth > 80) { content += ticker +" vekttall må være i området fra 10 - 80%\r\n"; bError = true; } else content += ticker+" - OK\r\n"; } } if (sum != 100) { content += "sum av vekting er " + sum + "% må være 100% - gå tilbake for å fikse dette\r\n"; bError = true; } if (bError == false) content += '\r\nDin portefølje er OK. Du kan sende denne nå ved å klikke på knappen "Send portefølje"\r\n'; else content += 'Klikk på "Gå tilbake" for å rette opp'; if (bError == false) document.getElementById("canvas").innerHTML = '
'; else document.getElementById("canvas").innerHTML = '
'; } function GetTickersSelected() { Tickers = []; Weigths = []; for (var i = 0; i < ShareNumber; i++) { var sel = document.getElementById("Share"+i); var text= sel.options[sel.selectedIndex].text; Tickers.push(text); var weigth = document.getElementById("Weigth"+i).value; Weigths.push(weigth); } } function SendPortefolio() { var portefolio = User; for (var i = 0; i < ShareNumber; i++) { portefolio += "," + Tickers[i] + " " + Weigths[i] + "%"; portefolio += SelectedShares[i] ? " S" : " NS"; } var args = 'Portefolio='+portefolio; var o = new XMLHttpRequest(); o.open("post", "MsgIns.php", true); o.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); o.onload = function () { if (o.responseText == "OK") alert('Din portefølje er registrert\n\nDin portefølje vil vises i "Pole position" om kort tid\n\nMvh. Automation Notorious'); else alert("Registrering mislyktes. Prøv igjen"); } o.send(args); return false; } function GotoNext() { if (ProgressStep == 0) GrabStatus(); ProgressStep++; DisplayHint(ProgressStep); if (ProgressStep == 1) { UpdateCanvas(); document.getElementById("MainHdr").focus(); } else if (ProgressStep == 2) { GetTickersSelected(); CreateCheckCanvas(); } else if (ProgressStep == 3) { SendPortefolio(); ProgressStep = 0; document.getElementById("prev").disabled = true; UpdateCanvas(); return; } document.getElementById("prev").disabled = false; } function GrabStatus() { SelectedShares = []; for (var i = 0; i < ShareNumber; i++) { var ShortBox = document.getElementById("Short"+i); SelectedShares.push(ShortBox.checked); if (Tickers.length == i) { Tickers.push("Velg ticker"); Weigths.push("20"); } } } function GotoPrev() { if (ProgressStep == 1) GetTickersSelected(); ProgressStep--; DisplayHint(ProgressStep); UpdateCanvas(); document.getElementById("prev").disabled = ProgressStep == 0; }