// JavaScript Document

function setfocus()
  {
   document.forms[0].name.focus()
  }
  
function chkform()
  {
   var email = document.sendform.email.value;
    if ( (email.length < 6) || (email.indexOf('@') < 1) || (email.indexOf('.') == -1 ) )
      {
       alert("Oplys venligst din e-mail ;-)");
       document.sendform.email.focus();
       return false;
      }
   var subject = document.sendform.subject.value;
    if ( (subject.length < 3) || xxx(subject) )
      {
       alert("Skriv venligst et emne ;-)");
       document.sendform.subject.focus();
       return false;
      }
   return true;
  }var boolNS4 = navigator.appVersion.indexOf("Nav") > 0 && parseInt(navigator.appVersion) == 4;

function ChangeRegion()
{
   // Hent det aktuelle regionsvalg
   objRegion  = GetFormElement("frmKriterier2", "Region2");
   intRegion  = objRegion[objRegion.selectedIndex].value;
   objOptions = GetFormElement("frmKriterier2", "KanalID2").options;

   // Slet gamle array
   objOptions.length = 0;

   // Indsæt kanaler tilhørende den valgte region i select'en
   for(intIdx = 0; intIdx < aryKanalID[intRegion].length; intIdx++)
   {
       objOptions.length++;
       objOptions[objOptions.length-1].text  = aryKanalNavn[intRegion][intIdx];
       objOptions[objOptions.length-1].value = aryKanalID[intRegion][intIdx];
   }

   // Tilpas størrelsen af selecten og vælg den første kanal på listen
   if(!boolNS4) GetFormElement("frmKriterier2", "KanalID2").size = (aryKanalID[intRegion].length > 20 ? 20 : aryKanalID[intRegion].length);

//   GetFormElement("frmKriterier2", "KanalID2").selectedIndex = 0;
   GetFormElement("frmKriterier2", "KanalID2").options[0].selected = true;

   if(!boolNS4) DoSubmit();
}

function InitRegion(intKanalID)
{
   // Hent og slet den gamle kanalliste
   var selectBox = GetFormElement("frmKriterier2", "KanalID2");

   if (selectBox && selectBox.options) {
       var objOptions = selectBox.options;
       objOptions.length = 0;
    
       // Indsæt kanaler tilhørende den valgte region i select'en
       for (intIdx = 0; intIdx < aryKanalID[Region].length; intIdx++)
       {
           objOptions.length++;
           objOptions[objOptions.length-1].text  = aryKanalNavn[Region][intIdx];
           objOptions[objOptions.length-1].value = aryKanalID[Region][intIdx];
           if(KanalID == aryKanalID[Region][intIdx])
            objOptions[objOptions.length-1].selected = true;
          else
             objOptions[objOptions.length-1].selected = false;
       }
    
       // Tilpas størrelsen af selecten
       if(!boolNS4) GetElement("KanalID2").size = (aryKanalID[Region].length > 20 ? 20 : aryKanalID[Region].length);
   }
}

function resizeIFrame() {
   objTable  = GetElement("tblProgrammer");
   objIFrame = GetParentElement("ProgramListning");

    if (document.getElementById) {
        // IE5+, Mozilla, Gecko
        //objIFrame.height = objTable.offsetHeight;// + 20;
    } else if (!document.getElementById && document.all) {
        // IE4
        objIFrame.style.height = (objTable.offsetHeight + 20) + "px";
    } else if (document.layers) {
        // Netscape 4 - egentlig ligemeget da den ikke understøtter IFrames
        return false;
    } else {
        return false;
    }
}

function GetElement(strElement)
{
    if (document.getElementById)
    {
        // IE5+, Netscape 6, Mozilla
        return (document.getElementById(strElement));
    }
    else if (document.all)
    {
        // IE4
        return (eval("document.all." + strElement));
    }
    else if (document.layers)
    {
        // Netscape 4
        return (eval("document." + strElement));
    }
    else
    {
        // Crap!
        return (null);
    }
}

function GetFormElement(strForm, strElement)
{
   // Hvis strElement er tom, så skal man bare have fat i form'en. Eller skal der lige tilføjes et punktum.
    if (strElement != "") {
        strElement = "." + strElement;
    }
    if (document.forms[strForm]) {
        return (eval("document.forms['" + strForm + "']" + strElement));
    } else {
        return null;
    }
}

function GetParentElement(strElement)
{
    if (document.getElementById)
    {
        // IE5+, Netscape 6, Mozilla
        return (parent.document.getElementById(strElement));
    }
    else if (document.all)
    {
        // IE4
        return (eval("parent.document.all."+strElement));
    }
    else if (boolNS4)
    {
        // Netscape 4
        return (eval("document."+strElement));
    }
    else
    {
        // Crap!
        return (null);
    }
}

function OnSubmit()
{
    // Usynlige (hidden) elementer i toppen af siden.
    selRegion = GetFormElement("frmKriterier", "Region");
    selKanalID = GetFormElement("frmKriterier", "KanalID");

    // Synlige elemenet i højre spalte.
    // Kopier værdierne fra elementerne i højre spalte til elementerne i toppen.
    if (GetElement("frmKriterier2")) {
        selRegion2      = GetFormElement("frmKriterier2", "Region2");
        if (selRegion2 && (selRegion2.selectedIndex > -1)) {
            selRegion.value = selRegion2[selRegion2.selectedIndex].value;
        }

        selKanalID2 = GetFormElement("frmKriterier2", "KanalID2");
        if (selKanalID2 && (selKanalID2.selectedIndex > -1)) {
            selKanalID.value = selKanalID2[selKanalID2.selectedIndex].value;
        }
    }

    KanalID  = selKanalID.value;
    Periode  = GetFormElement("frmKriterier", "Periode").value;
    Region   = selRegion.value;
    Dato     = GetFormElement("frmKriterier", "Dato").value;
    Kategori = GetFormElement("frmKriterier", "Kategori").value;
    Soegeord = GetFormElement("frmKriterier", "Soegeord").value;
}

function DoSubmit()
{
    OnSubmit();

    objForm = GetFormElement("frmKriterier", "");
    if (objForm) {
        objForm.submit();
    }
}

function ForrigeKanal()
{
    objKanaler = GetFormElement("frmKriterier2", "KanalID2");
    if (objKanaler.selectedIndex > 0)
    {
        objKanaler.options[objKanaler.selectedIndex - 1].selected = true;
    }
    else
    {
        objKanaler.options[objKanaler.length - 1].selected = true;
    }
    DoSubmit();
}

function NaesteKanal()
{
    objKanaler = GetFormElement("frmKriterier2", "KanalID2");
    objKanaler.options[(objKanaler.selectedIndex + 1) % objKanaler.length].selected = true;
    DoSubmit();
}

function PreviousOptionParent(strSelect)
{
  objCurrent = GetParentElement(strSelect);
  intCurrent = objCurrent.selectedIndex;
  if(intCurrent>0)
  {
      objCurrent.options[intCurrent - 1].selected = true;
      objForm = GetParentElement("frmKriterier");
     parent.CheckPeriode();
      parent.DoSubmit();
  }
}

function NextOptionParent(strSelect)
{
  objCurrent = GetParentElement(strSelect);
  intCurrent = objCurrent.selectedIndex;
  if(intCurrent<objCurrent.options.length - 1)
  {
      objCurrent.options[intCurrent + 1].selected = true;
      objForm = GetParentElement("frmKriterier");
     parent.CheckPeriode();
      parent.DoSubmit();
  }
}

function NextFormOption(strForm, strSelect)
{
  objCurrent = GetFormElement(strForm, strSelect);
  intCurrent = objCurrent.selectedIndex;
  if(intCurrent<objCurrent.options.length - 1)
  {
      objCurrent.options[intCurrent + 1].selected = true;
      objForm = GetFormElement("frmKriterier", "");
     CheckPeriode();
      DoSubmit();
  }
}

function PreviousFormOption(strForm, strSelect)
{
  objCurrent = GetFormElement(strForm, strSelect);
  intCurrent = objCurrent.selectedIndex;
  if(intCurrent>0)
  {
      objCurrent.options[intCurrent - 1].selected = true;
      objForm = GetFormElement("frmKriterier", "");
     CheckPeriode();
      DoSubmit();
  }
}

function toggleDesc(strProgramID)
{
   if(boolNS4) return false;

   objCurrentShort = GetElement("Desc"+strProgramID+"Short");
   objCurrentShort.style.display = (objCurrentShort.style.display=="none" ? "block" : "none");

   objCurrentLong = GetElement("Desc"+strProgramID+"Long");
   objCurrentLong.style.display = (objCurrentLong.style.display=="none" ? "block" : "none");

   resizeIFrame();
}

function OpenWindow(strURL, strTitle, intWidth, intHeight, boolScrollbar)
{
    var intMyLeft = eval(screen.width-intWidth)/2;
    var intMyTop  = eval(screen.height-intHeight)/2;
    window.open(strURL,strTitle,'toolbar=no,location=no,status=no,menubar=no,scrollbars='+(boolScrollbar ? 'yes' : 'no')+',resizable=no,width='+intWidth+',height='+intHeight+',left='+intMyLeft+',top='+intMyTop);
}

function SetStatusMsg($strText)
{
   window.status = $strText;
}

function ClearStatusMsg()
{
   window.status = "";
}

function ResetForm() {
    var formName = "frmKriterier";
    GetFormElement(formName, "Soegeord").value       = "";
    GetFormElement(formName, "Dato")[0].selected     = true; // I dag
//    GetFormElement(formName, "Periode")[0].selected  = true; // Hele dagen
    GetFormElement(formName, "Kategori")[0].selected = true; // Alle
    // Hvis der er valgt "Alle ovenstående", så vælges den første kanal i listen
    if (GetFormElement(formName + "2", "KanalID2")[GetFormElement("frmKriterier2", "KanalID2").selectedIndex].value == 0) {
        GetFormElement(formName + "2", "KanalID2")[0].selected = true;
    }
    HighlightOk();
}

function HighlightOk()
{
//   objOk     = GetElement('btn_ok');
//   objOk.src = "/images/top_og_bund/ok_knap.gif";
}

function CheckPeriode()
{
   if(!boolNS4)
   {
      objDato    = GetElement("Dato");
      objPeriode = GetElement("Periode");
      if(Dato == 0 && parseInt(objDato.value) > 0 && parseInt(objPeriode.value) == 6) objPeriode.value = 5;
      if(Dato == 1 && parseInt(objDato.value) == 0 && parseInt(objPeriode.value) == 5) objPeriode.value = 6;
   }
}

// Multioversigt

function NextChannel(intKanalID)
{
   objForm = (boolNS4 ? document.forms["frmKriterier"] : parent.document.forms["frmKriterier"]);
   objForm.KanalID.value = intKanalID;
   objForm.submit();
}

function PreviousChannel(intKanalID)
{
   objForm = (boolNS4 ? document.forms["frmKriterier"] : parent.document.forms["frmKriterier"]);
   objForm.KanalID.value = intKanalID;
   objForm.submit();
}

function PreviousOption(strSelect)
{
    objCurrent = GetFormElement("frmKriterier", strSelect);
    intCurrent = objCurrent.selectedIndex;
    if(intCurrent>0)
    {
        objCurrent.options[intCurrent - 1].selected = true;
        DoSubmit();
    }
}

function NextOption(strSelect)
{
    objCurrent = GetFormElement("frmKriterier", strSelect);
    intCurrent = objCurrent.selectedIndex;
    if(intCurrent<objCurrent.options.length - 1)
    {
        objCurrent.options[intCurrent + 1].selected = true;
        DoSubmit();
    }
}

function ChangeMultiRegionNS()
{
   // Hent det aktuelle regionsvalg
   objRegion = GetFormElement("frmRegion", "Region");
    GetFormElement("frmKriterier", "Region").value = objRegion[objRegion.selectedIndex].value;
   GetFormElement("frmKriterier", "KanalID").value = 0;
   DoSubmit();
}

function ChangeMultiRegion()
{
   objForm = (boolNS4 ? document.forms["frmKriterier"] : parent.document.forms["frmKriterier"]);

   objForm.Region.value  = document.forms["frmRegion"].Region.selectedIndex + (document.forms["frmRegion"].Region.length == 6 ? 1 : 0);
   objForm.KanalID.value = 0;
   objForm.submit();
}
