var fpDB = [];
fpDB = 
	{
	includeRepository	: [],
	setupProgress		: 0,
	dashboardScriptPath	: (typeof(dashboardScriptPath) != 'undefined') ? dashboardScriptPath : '',
	dashboardEnableDock	: (typeof(dashboardEnableDock) != 'undefined') ? dashboardEnableDock : false,
	showInitStatus		: (typeof(dashboardShowInitStatus) != 'undefined') ? dashboardShowInitStatus: false,
	defaultWidgets		: (typeof(dashboardDefaultWidgets) != 'undefined') ? dashboardDefaultWidgets: true,
	dashboardContainer	: false,
	dashboardCookieControl	: (typeof(dashboardCookieControl) != 'undefined') ? dashboardCookieControl : true,
	googleMapsKey	: (typeof(externalGoogleMaps) != 'undefined') ? externalGoogleMaps : 'ABQIAAAALBeawp8SVKY56xh0Rf52phSnfO7TMQdZ24-nuLe_aVjAhGrFfxS7ywrECIqzmaHil2A-oMNPeF_dKQ',

	init: function()
		{
		// Disable default navigation for Nokia browsers
		if(document.body === null || typeof(fpTools.animate) == 'undefined' || typeof(fpTools.chrome) == 'undefined')
			{
			setTimeout(fpDB.init, 300);
			return false;
			}
		else
			{
			fpDB.addNavigationMeta('none');
			document.body.style.webkitUserSelect = "none";
			if(typeof(dashboardContainer) != 'undefined')
				{
				document.body.appendChild(dashboardContainer);
				fpDB.dashboardContainer = dashboardContainer;
				}
			else {fpDB.dashboardContainer = document.body;}
			var testi = navigator.userAgent.toLowerCase();
			if(testi.indexOf('symbian') != -1)
				{
				var meta = document.createElement('meta');
				meta.name = 'navigation';
				meta.content = 'none';
				document.getElementsByTagName('head')[0].appendChild(meta);
				}
			fpDB.createInclude();
			}
		},

	addNavigationMeta: function(value)
		{
		var meta = document.createElement('meta');
		meta.name = 'navigation';
		meta.content = value;
		document.getElementsByTagName('head')[0].appendChild(meta);
		},

	createInclude: function()
		{
		fpDB.includeOrder = [[fpDB.dashboardScriptPath+"lib/kiintopiste_common.js", typeof(fixedPointCommon)],
			(fpDB.dashboardCookieControl) ? [fpDB.dashboardScriptPath+"lib/kiintopiste_cookies.js", typeof(fpCC)] : [],
			[fpDB.dashboardScriptPath+"lib/kiintopiste_uicontrol.js", typeof(fpUIC)],
			[fpDB.dashboardScriptPath+"lib/kiintopiste_windowcontrol.js", typeof(fpWC)],
			[fpDB.dashboardScriptPath+"lib/kiintopiste_skins.js", typeof(dashboardSkins)],
			(fpDB.defaultWidgets) ? [fpDB.dashboardScriptPath+"lib/kiintopiste_windowdata.js", typeof(fpWC)] : [],
			[fpDB.dashboardScriptPath+"lib/kiintopiste_ajax.js", typeof(fpAF)],
			(fpDB.dashboardEnableDock) ? [fpDB.dashboardScriptPath+"lib/kiintopiste_dock.js", typeof(fpDBDock)] : []];

		for(var i=0; i<fpDB.includeOrder.length; i++){(typeof(fpDB.includeOrder[i][0]) != 'undefined') ? false : fpDB.includeOrder.splice(i,1);}
		fpDB.include();
		},

	include: function()
		{
		if(fpDB.setupProgress < fpDB.includeOrder.length)
			{
			var indicator = fpTools.chrome.systemInfo('systemSetup');
				
			var checkInclude = fpDB.includeRepository.toString();
			if(checkInclude.indexOf(fpDB.includeOrder[fpDB.setupProgress][0]) == -1)
				{
				indicator.innerHTML = "Loading file "+(fpDB.setupProgress+1)+" of " +fpDB.includeOrder.length + " : " + fpDB.includeOrder[fpDB.setupProgress][0];
				fpTools.include(fpDB.includeOrder[fpDB.setupProgress][0]);
				fpDB.includeRepository.push(fpDB.includeOrder[fpDB.setupProgress][0]);
				if(fpDB.showInitStatus) {fpDB.dashboardContainer.appendChild(indicator);}
				}
			if(fpDB.includeOrder[fpDB.setupProgress][1] != 'undefined')
				{
				fpDB.setupProgress++;
				}
			setTimeout(fpDB.createInclude, 30);
			}
		else	{
			if(fpDB.dashboardCookieControl) {fpWC.openSession();}
			if(fpDB.showInitStatus)
				{
				fpTools.animate.init({obj: $('systemSetup'), styleProperty: animate._alpha, startValue:100, endValue:0, iteration:8, speed:30});
				fpTools.animate.init({obj: $('systemSetup'), styleProperty: animate._y, startValue:10, endValue:-30, iteration:8, speed:30});
				}
			}
		}
	};

fpDB.init();
