function definition ()
{
    

    if (!Array.prototype.indexOf)
    {
      Array.prototype.indexOf = function(elt /*, from*/)
      {
        var len = this.length >>> 0;

        var from = Number(arguments[1]) || 0;
        from = (from < 0)
             ? Math.ceil(from)
             : Math.floor(from);
        if (from < 0)
          from += len;

        for (; from < len; from++)
        {
          if (from in this &&
              this[from] === elt)
            return from;
        }
        return -1;
      };
    }

	var _class = this;
	
	var _globals = {
		'defaults'	: 'defaults',
		'myRelation'	:{			
			'replacement'	: {
				'karte'			: 'karte-',
				'tabula'		: 'tabula-',
				'pnavig'		: 'porciju_navigacija-'
			},
			'relation'		: new Array
		},
		'kalse'	: {
			'karte'	: false
		},		
		'htmlElementID'	: {
			'arTable'	: false
		},
		'cache'	: {
			'use'				: false,
			'karte_tooltips' 	: new Array,
			'atlases_rezultats'	: new Array,
			'karte_points'		: new Array,
			'bylink'			: new Array
		},
		'linksForJavascriptExec'	: "javascriptAction"
	};
	this.globals = _globals;
	this.cache = __cache__Class;
	//--------------------------------------------------------
	var _cssStyle = {
		'relative'		: "elementRelative",
		'hide'			: "invisible"
	};
	this.cssStyle = _cssStyle;
	
	//--------------------------------------------------------	
	var _atlases_rezultats = {		
		'defaults'	: {							
			'sleptKollonas'		: {
				"dropdownHtmlID"	: false,
				'id_masivs'			: ['ML_collumn_option']
			}			
		}
	};
	this.atlases_rezultats = (typeof(_atlases_rezultats[cms1.portal.toLowerCase()]) == 'undefined' ? _atlases_rezultats.defaults : _atlases_rezultats[cms1.portal.toLowerCase()]);		
	//--------------------------------------------------------
	
	var _mans_saraksts = {		
		'defaults'	: {
			'parameter'		: {
				'fastAddToMyList'		: false
			}
		}
	};
	this.mans_saraksts = (typeof(_mans_saraksts[cms1.portal.toLowerCase()]) == 'undefined' ? _mans_saraksts.defaults : _mans_saraksts[cms1.portal.toLowerCase()]);	
	//--------------------------------------------------------	
	var _karte3 = {
		'defaults'	: {
			'parameter'	: {
				'minWidth'						: 0,
				'minHeight'						: 0,
				'mapHeight'						: 0,
				'htmlElementName'				: ['karte-'],				
				'defaultMapLoading'				: '9,538112,6297156',
				'webPathForLanguage'			: 'lang=',
				'webPathForMerogs'				: 'merogs=',
				'webPathForFirms'				: 'single=',
				'webPathForVersion'				: 'ver=2',
				'webPathForPoints'				: 'id=karte-dati',					// links, lai izsauktu punktu datus
				'webPathForTooltipsSingleData'	: 'id=karte-tooltips_dati',			// links lai izsauktu popup info
				'webPathForTooltipsListData'	: 'id=karte-tooltips_list_dati',
				'webPathForTooltipsSave'		: 'id=karte-tooltips_save',			// links lai sagalbatu info
				'searchInMapHtmlElementId'		: 'QMap',			// elements, kurs nosaka vai meklesana kartes vai vienkarsaa
				'searchInMapAddressHtmlElementId': 'QAdrese',		// elements, adreses laicinjam
                
                'searchInMapProduktsHtmlElementId': 'QProdukts',        // elements, adreses laicinjam
                
				'searchInMapCordX1HtmlElementId': 'QX1',			// elements, kur glabajas x1 koordinate
				'searchInMapCordX2HtmlElementId': 'QX2',			// elements, kur glabajas x2 koordinate
				'searchInMapCordY1HtmlElementId': 'QY1',			// elements, kur glabajas y1 koordinate
				'searchInMapCordY2HtmlElementId': 'QY2',			// elements, kur glabajas y2 koordinate
				'pointsXOffset'					: -8,
				'pointsYOffset'					: -8,
				'lineRadius'					: 10,
				'lineColor'						: [250, 250, 250],
				'lineOpacity'					: 70,
				'lineWidth'						: 2,
				'fillOpacity'					: 50,
				'fillColor'						: [240, 10, 10],
				'buttonsPrint'					: 0,
				'buttonsDraw'					: 0,				// paradas punktu, linijas un poligona zimesanas rikus uz kartes
				'buttonsSabTrans'				: 1,				// paradas sabiedrika transporta ikonu uz kartes
				'buttonsShowRiga'				: 1,				// paradas rigas zooma ikonu uz kartes
				'buttonsShowLatvia'				: 1,				// parada latvijas zooma ikonu uz kartes
				
				'searchForm_inputLink'			: 'KartesLinks',	// sis ir domats preks kartes -> linku generesanas paskums ar benzintaniekiem
				'searchForm_buttonsHtmlID'		: 'UzKartesWraper',	// divs, kura atrodas img un uzliek tiem onclick
				'searchForm_AddressHtmlID'		: 'QAdrese',		// adreses ID -> paliek neaktivs kad tiek meklets kartee
				'searchForm_mapCheckHtmlID'		: 'QMap',			// checboxis vai tiek meklets karte vai nav
				'searchForm_cordX1HtmlID'		: 'QX1',			// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
				'searchForm_cordX2HtmlID'		: 'QX2',			// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
				'searchForm_cordY1HtmlID'		: 'QY1',			// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
				'searchForm_cordY2HtmlID'		: 'QY2'				// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
			},
			'tooltips'	: {
				'styleElements'	: {					
					'boxClass' 		: 'popup_map',					// sitas iepsejams bus jamet araa ????????????
					'generalClass'	: 'karte-tooltips-general'		// globalaa klase, preks popupa
				},
				'parameter'		: {
					'makeActive_tooltipsObjType' 	: 1,			// ja vajag aktivizet kadu no popupa tipiem (firm vai ko tamlidzigu, tad so jaliek 1)
					'pageingLength'					: 10,			// lapusu skaits
					'rowCountInPage'				: 5				// ieraskti vienaa lapaa
				}						
			},
			'urlis'			: {
				'crodsVar'		: 'cord',
				'prefixTemplate': '-ajax',
				'prefixMenu'	: '-ajax'			
			},
			'init'			: window.__karte__INIT_onload 	|| false,
			'resize'		: window.__karte__INIT_resize	|| false,
			'mapClass'		: false,									// tiek definetea karte.js kalse
			'mapObject'		: false										// tiek klat janjasetas klases objektiem
		},
		'zl'	: {
			'parameter'	: {
				'minWidth'						: 0,
				'minHeight'						: 0,
				'mapHeight'						: 0,
				'htmlElementName'				: ['karte-'],				
				'defaultMapLoading'				: '9,538112,6297156',
				'webPathForLanguage'			: 'lang=',
				'webPathForMerogs'				: 'merogs=',
				'webPathForFirms'				: 'single=',
				'webPathForVersion'				: 'ver=2',
				'webPathForPoints'				: 'id=karte-dati',					// links, lai izsauktu punktu datus
				'webPathForTooltipsSingleData'	: 'id=karte-tooltips_dati',			// links lai izsauktu popup info
				'webPathForTooltipsListData'	: 'id=karte-tooltips_list_dati',
				'webPathForTooltipsSave'		: 'id=karte-tooltips_save',			// links lai sagalbatu info
				'searchInMapHtmlElementId'		: 'QMap',			// elements, kurs nosaka vai meklesana kartes vai vienkarsaa
				'searchInMapAddressHtmlElementId': 'QAdrese',		// elements, adreses laicinjam
                
                'searchInMapProduktsHtmlElementId': 'QProdukts',        // elements, produkta laicinjam MAREKS
                
				'searchInMapCordX1HtmlElementId': 'QX1',			// elements, kur glabajas x1 koordinate
				'searchInMapCordX2HtmlElementId': 'QX2',			// elements, kur glabajas x2 koordinate
				'searchInMapCordY1HtmlElementId': 'QY1',			// elements, kur glabajas y1 koordinate
				'searchInMapCordY2HtmlElementId': 'QY2',			// elements, kur glabajas y2 koordinate
				'pointsXOffset'					: -8,
				'pointsYOffset'					: -8,
				'lineRadius'					: 10,
				'lineColor'						: [250, 250, 250],
				'lineOpacity'					: 70,
				'lineWidth'						: 2,
				'fillOpacity'					: 50,
				'fillColor'						: [240, 10, 10],
				'buttonsPrint'					: 1,
				'buttonsDraw'					: 0,				// paradas punktu, linijas un poligona zimesanas rikus uz kartes
				'buttonsSabTrans'				: 1,				// paradas sabiedrika transporta ikonu uz kartes
				'buttonsShowRiga'				: 1,				// paradas rigas zooma ikonu uz kartes
				'buttonsShowLatvia'				: 1,				// parada latvijas zooma ikonu uz kartes
				
				'searchForm_inputLink'			: 'KartesLinks',	// sis ir domats preks kartes -> linku generesanas paskums ar benzintaniekiem
				'searchForm_buttonsHtmlID'		: 'UzKartesWraper',	// divs, kura atrodas img un uzliek tiem onclick
				
                'searchForm_ProduktsHtmlID'        : 'QProdukts',        // adreses ID -> paliek neaktivs kad tiek meklets kartee
                
                'searchForm_AddressHtmlID'		: 'QAdrese',		// adreses ID -> paliek neaktivs kad tiek meklets kartee
				'searchForm_mapCheckHtmlID'		: 'QMap',			// checboxis vai tiek meklets karte vai nav
				'searchForm_cordX1HtmlID'		: 'QX1',			// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
				'searchForm_cordX2HtmlID'		: 'QX2',			// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
				'searchForm_cordY1HtmlID'		: 'QY1',			// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
				'searchForm_cordY2HtmlID'		: 'QY2'				// ja ir Qmap iecekots tad ievada aktualas koordinates, ja ne tad ir 0
			},
			'tooltips'	: {
				'styleElements'	: {					
					'boxClass' 		: 'popup_map',					// sitas iepsejams bus jamet araa ????????????
					'generalClass'	: 'karte-tooltips-general'		// globalaa klase, preks popupa
				},
				'parameter'		: {
					'makeActive_tooltipsObjType' 	: 1,			// ja vajag aktivizet kadu no popupa tipiem (firm vai ko tamlidzigu, tad so jaliek 1)
					'pageingLength'					: 10,			// lapusu skaits
					'rowCountInPage'				: 5				// ieraskti vienaa lapaa
				}						
			},
			'urlis'			: {
				'crodsVar'		: 'cord',
				'prefixTemplate': '-ajax',
				'prefixMenu'	: '-ajax'			
			},
			'init'			: window.__karte__INIT_onload 	|| false,
			'resize'		: window.__karte__INIT_resize	|| false,
			'mapClass'		: false,									// tiek definetea karte.js kalse
			'mapObject'		: false										// tiek klat janjasetas klases objektiem
		}
	};
	this.karte3 = (typeof(_karte3[cms1.portal.toLowerCase()]) == 'undefined' ? _karte3.defaults : _karte3[cms1.portal.toLowerCase()]);		
	//*************** ALL NEEDED FUNCTIONS ***************************
	var _functions = {	'urls' 			: window.f_url 				|| false,
						'browserInfo'	: window.browserProporties 	|| false,						
						'createElement'	: window.createElements		|| false,
						'createSelect'	: window.createSelect		|| false,
						'randomString'	: window.makeRandomString	|| false,
						'getHtmlID' 	: window.gettingHtmlID		|| false,
						'getUrlMass'	: window.f_url_mass			|| false,
						'htmlSize'		: window.getPageSizeWithScroll || false,						
						'pageingAjax'	: window.makePageingForAjax	|| false,
						'fieldCheck'	: window.errorCheckClass	|| false						
	};
	this.functions = _functions;
	
	//--------------------------------------------------------
	var _browser = {
			'urlis'			: window.location + "", // tikai redzamais urlis
			'callUrl'		: window.location + "",
			'screenUrl'		: window.location + "",
			'actualUrl'		: window.location + "",
			'browserName'	: false,			
			'view_height'	: false,
			'view_width'	: false
		};
	this.browser = _browser;
	
	//--------------------------------------------------------
	
	var issetParams = false;
	var setParams = function ()
	{			
		if(issetParams == true) 
			return false; 
		issetParams = true;

		_class.karte3.parameter.htmlElementName = top.karteID || false;
		_class.karte3.parameter.mapHeight	= top.karteSize	|| 'none|100%';
				
		if(f_url_mass(_class.browser.urlis, "loadingZoom") != false && f_url_mass(_class.browser.urlis, "loadingZoom")[1] != "")
			_class.karte3.parameter.defaultMapLoading	= f_url_mass(_class.browser.urlis, "loadingZoom")[1];
		
		var params = f_url_mass(_class.browser.urlis, "karteSize");
		
		return false;
	}
	
	//--------------------------------------------------------
	var windowLoadDefine = {
			"onload"	: ["_class.karte3.init", "window.formfocus"],
			"onresize"	: [""]
		};	
	var _windowLoad = function (type_)
	{		
		if(typeof(cms1) != 'object' || typeof(cms1.portal) != 'string' && cms1.portal == '')
			return false;
		setParams();
		var func = false;
		var defs = windowLoadDefine[type_];
		for(var x = 0; x < defs.length; x++)
		{			
			func = eval(defs[x]);			
			if(typeof(func) == 'function' && func != undefined)
			{				
				func();
			}
		}
		return false;
	}
	//--------------------------------------------------------
	this.windowLoad = _windowLoad;
}
if(typeof(cms1) == 'object')
	var define = new definition();
	
window.onresize = function ()
{
	if(typeof(define) == 'object')	
		define.windowLoad('onresize');	
	return false;
}
function windowOnload(){
	
	//try{				
		debug.loading('__globals__', 'GLOBAL Onload', true);
		debug.post("sakam skriptus", true, '__globals__');	
		
		//---- izparsejam visus hrefus
		var aa = new __Ahrefs__();
		aa.doParse();
		
		//---- ieladejam onload funkcijas
		if(typeof(define) == 'object')	
			define.windowLoad('onload');
		
		//--- ieladejam drowpdaunus -> sitas vel japarskata
		var dd = new __dropdown__();
		dd.loading();
		
		//--- atljaujam veidot pieprasijumus caur href ar javascriptu
		callMeNow = true;
		
		//-- zl tv javascripts
		var zlTV = document.getElementById("zl-izklaide-TV");
		if(zlTV != undefined)
		{
			var d = zlTV.getElementsByTagName("div");
			for(var f = 0, len = d.length; f < len; f++)
			{
				if(d[f].className != "TVProgramma")
					continue;
				
				d[f].onscroll = function ()
				{
					var tvPr = this.parentNode.getElementsByTagName("div")[0].getElementsByTagName("div")[0];
					tvPr.style['left'] = "-" + this.scrollLeft + "px";			
				}			
			}
		}
		debug.post("Iečekojamies google analitikji", true, '__globals__');
		//--- google analitic 
		googleStatisticRegistration();		
		debug.post("Beidzam skriptus", true, '__globals__');
        
        ChangeTodayBlock ();
        
	/*}
	catch(err){
		
		debug.post("<hr /><b>Ir notikusi kljuda</b>", '__globals__');
		debug.post("" + err.description + " => " + err, '__globals__');
	}*/
	return false;
}
window.onload = windowOnload;

function changecss ( theClass, element, value) {

    var cssRules;

    var added = false;
    
    for (var S = 0; S < document.styleSheets.length; S++) {
        
        if ( document.styleSheets[S]['rules'] ) {
            cssRules = 'rules';
        } else if ( document.styleSheets[S]['cssRules'] ) {
            cssRules = 'cssRules';
        } else {
            //no rules found... browser unknown
        }

        for ( var R = 0; R < document.styleSheets[S][cssRules].length; R++ ) {
            if ( document.styleSheets[S][cssRules][R].selectorText == theClass ) {
                if( document.styleSheets[S][cssRules][R].style[element] ) {
                    document.styleSheets[S][cssRules][R].style[element] = value;
                    added=true;
                    break;
                }
            }
        }
        
        if ( !added ) {
            if ( document.styleSheets[S].insertRule )
                document.styleSheets[S].insertRule(theClass+' { '+element+': '+value+'; }',document.styleSheets[S][cssRules].length);
            else if (document.styleSheets[S].addRule)
                document.styleSheets[S].addRule(theClass,element+': '+value+';');
        }
    
    }

}

function ChangeTodayBlock () {
    
    if ( document.getElementById('SodienLaiks') == null )
        return false;
        
    if ( document.getElementById('SodienLaiks').style.display == 'block' ) {
        document.getElementById('SodienLaiks').style.display = 'none';
        document.getElementById('SodienValuta').style.display = 'block';
    } else {
        document.getElementById('SodienLaiks').style.display = 'block';
        document.getElementById('SodienValuta').style.display = 'none';
    }
    var t = setTimeout ( "ChangeTodayBlock()", 5000 );
}
