function stoperror()  { return true; }

window.onerror=stoperror;

singleodds=0;
errorcolor="#FF0000";
var minstake = 1, maxstake = 999, defaultstake = 10;
var combi_minstake = 0.5;
var combi_maxstake = 10000000;
var combi_maxwin   = 1000000000;
var thisStake;

attributes = new Array();
var clickedCombis = new Array();

function getParams() {
  if (urlquery.length>1) {
    urlterms=unescape(urlquery[1]).split("&");
    for (a in urlterms) {
        term=urlterms[a].split("=");
        attributes[term[0]]=term[1];
    }
  }
}

function getParameter(val) {
  if (!attributes[val]) return null;
  else return attributes[val];
}

if (typeof(Number)!='undefined'&&typeof(Number.prototype)!='undefined'){
  if (typeof(Number.prototype.toFixed)=='undefined'){
    function Number_toFixed(d) {
      var n = this;
      d = d || 2;
      var f = Math.pow(10, d);
      n = Math.round(n * f) / f;
      n += Math.pow(10, - (d + 1));
      n += '';
      return d == 0 ? n.substring(0, n.indexOf('.')) :
        n.substring(0, n.indexOf('.') + d + 1);
    }
    Number.prototype.toFixed = Number_toFixed;
  }
}

function arrayContains(array, element) {
  for (var i = 0; i < array.length; i++) {
    if (array[i] == element) {
      return true;
    }
  }
  return false;
}

function combiCalculate(outcomeId, marketId, eventId, odds, league) {
  if (odds > 1) {
    if (typeof(clickedCombis[eventId]) != 'undefined') {
      oldOutcomeId = clickedCombis[eventId]['outcomeId'];
      if (outcomeId != oldOutcomeId) {
        clickedCombis[eventId]['outcomeId'] = outcomeId;
        clickedCombis[eventId]['odds'] = odds;
        clickedCombis[eventId]['league'] = league;
        document.getElementById('combiButton_' + outcomeId).className='activated';
      } 
      else {
        delete clickedCombis[eventId];
      }
      document.getElementById('combiButton_' + oldOutcomeId).className='none';
    } 
    else {
      clickedCombis[eventId] = new Array();
      clickedCombis[eventId]['outcomeId'] = outcomeId;
      clickedCombis[eventId]['odds'] = odds;
      clickedCombis[eventId]['league'] = league;
      document.getElementById('combiButton_' + outcomeId).className='activated';
    }
    thisStake = document.mybet.combiStake;
    calcProfit(thisStake);       
  }
}

function singleCalculate(id, market, outcomenum) {
    elements = new Array();
    elements = document.getElementsByName("oddsbutton");

    for (var i=0; i < elements.length; i++) {
        if (i!=id) {
            if (elements[i]) 
              elements[i].className='none';
            document.mybet.elements['singlebet'+i].clicked=false;
        }
        else if (elements[i] && elements[i].className=='none'){
            elements[i].className='activated';
            document.mybet.elements['singlebet'+i].clicked=true;
        }
        else if (elements[i] && elements[i].className=='activated'){           
            elements[i].className='none';
            document.mybet.elements['singlebet'+i].clicked=false;
        }
        else {
            elements[i].className='activated';
            document.mybet.elements['singlebet'+i].clicked=true;        				
       }
    }
    
    if (elements[id].className=='none') {
        document.mybet.marketId.value='';
        document.mybet.outcome.value='';
        singleodds=0;
        elements[id].className='none';
    }
    else {
        document.mybet.marketId.value=mf[market];
        document.mybet.outcome.value=outcomenum;
        singleodds=elements[id].getAttribute('odds');
    }
    
    calcProfit(document.mybet.stake);
}

function calcProfit(el) {
  if (el.value.indexOf(',')!=-1)
    el.value=el.value.replace(/,/,'.');
  nstake = (parseFloat(el.value)).toFixed(2);
  if (Number(el.value)==0||isNaN(el.value)||nstake<parseFloat(el.value)||nstake>parseFloat(el.value)||nstake<minstake||nstake>maxstake) {
    document.getElementById('Profit').innerHTML=0;
    el.style.color=errorcolor;
    return;
  } 
  else {
    el.style.color="#000000";
  }
  if (document.getElementById('Profit')) {
    var abfrage = 0;
    if (ch == 2) {
      var odds = 1;
      for (var i in clickedCombis) {
        odds = odds * clickedCombis[i]['odds'];
      }
      if (odds == 1)
        abfrage = 1;
    } 
    else { 
      if (singleodds == 0) 
        abfrage = 1;
    }     
    if (el.value==0 || abfrage == 1) {
      document.getElementById('Profit').innerHTML=0;
    }
    else {
      if (ch == 2) {
        prof = (el.value*odds.toFixed(2)).toFixed(2);
      }
      else {
        prof = (el.value*singleodds).toFixed(2);       
      }
      if (prof>=1000 && prof == Math.round(prof)) {
        prof = Math.round(prof);
      }
      document.getElementById('Profit').innerHTML=prof;
    }
  }
}

function submitFormCombi() {
  var thisLeague = 0;   
  j = 0;
  thisForm = document.getElementById('myForm');
  for(var i=0; i<mn.length && i<maxMarket; i++) {
    if (clickedCombis[me[i]]) {						
						if (navigator.appName == "Microsoft Internet Explorer") {
	       var combi = document.createElement('<input type="hidden" name="combiOutcomeId">');
        combi.value = clickedCombis[me[i]]['outcomeId']; 	      	  
						}
						else {
	       var combi = document.createElement("input");
        combi.type = "hidden";
        combi.name = "combiOutcomeId";
        combi.value = clickedCombis[me[i]]['outcomeId'];      				  
						}						
				  document.getElementById("myForm").appendChild(combi);		
    }
  }    
  var leaguefields = document.getElementsByName('leagueId');
	 while (leaguefields.length > 0) {
    leaguefields[0].parentNode.removeChild(leaguefields[0]);
  }
  var leagues = new Array();    
  for(var i=0; i<mn.length; i++) {
	if (clickedCombis[me[i]] && !arrayContains(leagues, clickedCombis[me[i]]['league'])) {
		leagues.push(clickedCombis[me[i]]['league']);
	}
  }
  for(var j=0; j<leagues.length; j++) {
		var leagueField = document.createElement("input");
		leagueField.type="hidden";
		leagueField.name="leagueId";
		leagueField.value=leagues[j];
		document.getElementById("myForm").appendChild(leagueField);
  }
/*  var leagueField = document.createElement("input");
  leagueField.type="hidden";
  leagueField.name="leagueId";
  leagueField.value="";
  document.getElementById("myForm").appendChild(leagueField);*/
  
  document.getElementById("myForm").submit();
  
  var fields = document.getElementsByName('combiOutcomeId');
	 while (fields.length > 0) {
    fields[0].parentNode.removeChild(fields[0]);
  }
}

function checkFormCombi () {
  el=document.mybet.combiStake;
  nstake = (parseFloat(el.value)).toFixed(2);
  if (Number(el.value)==0||isNaN(el.value)||nstake<parseFloat(el.value)||nstake>parseFloat(el.value)) {
    return true;
  }
  else if (nstake<minstake||nstake>maxstake) {
    return true;
  }
  else if ( el.value!='') {
            submitFormCombi();
            return false;
  }
  return true;
}

function submitFormSingle() {
  el=document.mybet.stake;
  nstake = (parseFloat(el.value)).toFixed(2);
  if (Number(el.value)==0||isNaN(el.value)||nstake<parseFloat(el.value)||nstake>parseFloat(el.value)) {
    return true;
  }
  else if (nstake<minstake||nstake>maxstake) {
    return true;
  }
  else if ( document.mybet.marketId.value!='' && document.mybet.outcome.value!='' && el.value!='') {
            document.mybet.submit();
            return false;
  }
  return true;
}

function setForm() {    
  if (typeof(affiliate)!='undefined' && typeof(campaign)!='undefined') {
    document.mybet.affiliateId.value=affiliate;
    document.mybet.campaignId.value=campaign;
  } else {
    document.mybet.affiliateId.parentNode.removeChild(document.mybet.affiliateId);
    document.mybet.campaignId.parentNode.removeChild(document.mybet.campaignId);
  }
      
  if (typeof(recommendedBy)!='undefined') {
    document.mybet.recommendedById.value=recommendedBy;
  } else {
    document.mybet.recommendedById.parentNode.removeChild(document.mybet.recommendedById);
  } 
  
  if ((typeof(language)!='undefined')&&(typeof(document.mybet.elements['lang'])!='undefined')) {
    document.mybet.elements['lang'].value=language;
  }  else if (document.mybet.elements['lang'].value=='') {
    document.mybet.elements['lang'].parentNode.removeChild(document.mybet.elements['lang']);
  }         
}

