﻿
  
  // http://www.netomatix.com/development/GridViewClientSideAccess.aspx

var gridViewCtlId = "gvKajakerKanoter_SAMTLIGA"; //  '<%=gvKajakerKanoter_SAMTLIGA.ClientID%>';

var gridViewCtl = null;
var curSelRow = null;

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//																							                                       ____doPostBack
//   denna funktion används inte - men bra spara koden
//   namnet på funktionen skiljer sig från standardnamnet __doPostBack()
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
function ____doPostBack(eventTarget, eventArgument) 
{
    var theform = document.frmStartsidaLaenkar;
    
    document.getElementById("txtRadnr").value = eventArgument;
    
    theform.submit();
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
//																						       getGridViewControl
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function getGridViewControl()
{
    if (null == gridViewCtl)
    {
         gridViewCtl = document.getElementById(gridViewCtlId);
    }
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
//																						              getSelectedRow
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function getSelectedRow(rowIdx)
{
    getGridViewControl();
    
    if (gridViewCtl != null  )
    {
		// alert("ska markera rad " + rowIdx);

        return gridViewCtl.rows[rowIdx];
    }
    
    return null;
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
//																										     getGridRow
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function getGridRow(rowIdx)
{
    getGridViewControl();
    if (null != gridViewCtl)
    {
        return gridViewCtl.rows[rowIdx];
    }
    return null;
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
//																										getGridColumn
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function getGridColumn(rowIdx, colIdx)
{
    var gridRow = getGridRow(rowIdx);
    if (null != gridRow)
    {
        return gridRow.cells[colIdx];
    }
    return null;
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
//																										    getCellValue
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function getCellValue(rowIdx, colIdx)
{
    var gridCell = getGridColumn(rowIdx, colIdx);
    
	if (null != gridCell)
    {
        return gridCell.innerText;
    }

    return null;
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
//
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function visa_uppgifter_ValdTabellrad(radnr)
{
	// kolumn 0 = id vald Laenk
    var id = getCellValue(radnr, 0);
	document.getElementById("txtID_ValdLaenk").value = id;

     // kolumn 2 = URL
	 //var URL = getCellValue(radnr, 2); // + " target=_blank";
	 //document.getElementById('txtValdLaenk_URL').value = URL;

     // här görs en PostBack
	 document.getElementById('cmdAktiveraURL').click();

     // för att tabellraden ska markeras igen - anropa denna funktion från javascript längst ner på ASPX-sidan
	 // markera_vald_tabellrad_igen_efter_Postback();
}



/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function get_ValdRad(radnr)
{
	gridViewCtl = document.getElementById(gridViewCtlId);
    
    return gridViewCtl.rows[radnr];
}


/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function markera_vald_TABELLRAD(radnr)
{
      if ( radnr > 0 )
     {
    
       // var selRow = getSelectedRow(radnr);

	   var selRow = get_ValdRad(radnr);

		//alert(selRow);
    
        if (curSelRow != null)
        {
            curSelRow.style.backgroundColor = '#ffffff';
        }
        
        if (selRow != null)
        {
            curSelRow = selRow;
            curSelRow.style.backgroundColor = '#F5F5F4';
        }
    }
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                                                     efter PostBack måste aktuell tabellrad markeras igen
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function markera_vald_tabellrad_igen_efter_Postback()
{

	 var radnr = document.getElementById("txtRadnr").value;
     
	 // alert(radnr);
	  
	  if ( radnr > 0 )
     {
    
       // var selRow = getSelectedRow(radnr);

	   var selRow = get_ValdRad(radnr);

		
    
        if (curSelRow != null)
        {
            curSelRow.style.backgroundColor = '#ffffff';
        }
        
        if (selRow != null)
        {

			//alert(selRow);

            curSelRow = selRow;
            curSelRow.style.backgroundColor = '#F5F5F4';
        }
    }

}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function markera_tabellrad_INNAN()
{
	var radnr = document.getElementById("txtRadnr").value;

    radnr--;
	
	if ( radnr < 1 )
	{
		return;
	}

     markera_vald_TABELLRAD(radnr);

	 /*
	var selRow = get_ValdRad(radnr);
        
    if (curSelRow != null)
    {
        curSelRow.style.backgroundColor = '#ffffff';
    }
    
    if (selRow != null)
    {
        curSelRow = selRow;
        curSelRow.style.backgroundColor = '#F5F5F4';
    }
	*/

	 document.getElementById("txtRadnr").value = radnr;

     visa_uppgifter_ValdTabellrad(radnr);

	 //aktivera_vald_tabellrad_i_GridView_PILNEDTRYCKNING(radnr);
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function markera_tabellrad_EFTER()
{
	var ANTAL_TABELLRADER = document.getElementById("txtAntalRader").value;

    var radnr = document.getElementById("txtRadnr").value;

	radnr++;

	if ( radnr > ANTAL_TABELLRADER )
	{
		return;
	}

     markera_vald_TABELLRAD(radnr);

	 /*
	var selRow = get_ValdRad(radnr);
        
    if (curSelRow != null)
    {
        curSelRow.style.backgroundColor = '#ffffff';
    }
    
    if (selRow != null)
    {
        curSelRow = selRow;
        curSelRow.style.backgroundColor = '#F5F5F4';
    }
	*/

	document.getElementById("txtRadnr").value = radnr;

	visa_uppgifter_ValdTabellrad(radnr);

	//aktivera_vald_tabellrad_i_GridView_PILNEDTRYCKNING(radnr);
}
    
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                                                                                                                         pilfunktioner_GridView
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function pilfunktioner_GridView() 
{
        //alert(event.keyCode);

        // pil UPP = 38
         // markera raden INNAN ( OVANFÖR )  i gridview Laenkar
		 if (( event.altKey) && ( event.keyCode == 38 ) )
        {
			markera_tabellrad_INNAN();
        }

		// pil NER = 40
        // markera raden EFTER ( UNDER ) i gridview Laenkar
		 if (( event.altKey) && ( event.keyCode == 40 ) )
        {
			markera_tabellrad_EFTER();
        }

}

/*
/////////////////////////////////////////////////////////////////////////////////////////////////////////
//												    aktivera_vald_tabellrad_i_GridView_PILNEDTRYCKNING
//
// när användaren använder PILAR för att gå upp och ner i tabellen - aktivera tabellrad
/////////////////////////////////////////////////////////////////////////////////////////////////////////

function aktivera_vald_tabellrad_i_GridView_PILNEDTRYCKNING(radnr)
{
 
	var selRow = getSelectedRow(radnr);

	if (selRow != null)
    {
        curSelRow = selRow;

		
    }
	
    visa_uppgifter_ValdTabellrad(radnr);
	

}
*/


/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                                                                                           aktivera_vald_tabellrad_i_GridView_MUSKLICK
//
// när användaren KLICKAR med MUSEN på tabellrad - aktivera tabellrad
// 
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function aktivera_vald_tabellrad_i_GridView_MUSKLICK(radnr)
  {
	  document.getElementById("txtRadnr").value = radnr;

	  //alert(radnr);

	  markera_vald_TABELLRAD(radnr);

/*
	  var selRow = getSelectedRow(radnr);

	  alert("selRow : " + selRow + " rad nr : " + radnr);

	  if (selRow != null)
     {
         curSelRow = selRow;

		 
     }
*/
      visa_uppgifter_ValdTabellrad(radnr);
	
  }