// Declare a single namespace in the global scope
var dk;
if (!dk) dk = {};
else if (typeof(dk) != 'object')
	throw new Error('Der findes allerede en global variabel ved navn \u0027dk\u0027, som ikke er et object');
if (!dk.solbjergkirke) dk.solbjergkirke = { };
else if (typeof(dk.solbjergkirke) != 'object')
	throw new Error('Der findes allerede en global variabel ved navn \u0027dk.solbjergkirke\u0027, som ikke er et object');

/************************************************************
* Relies on:
*
************************************************************/

dk.solbjergkirke.Main = 
{
    ShiftPic : ['picBanner', 'picLeftside1', 'picLeftside2'],
    
    Initialize : function()
    {
        // Remove script tags from body (<script>document.write functions...)
        var body = document.getElementsByTagName('body')[0];
        var scripts = body.getElementsByTagName('script');
        for (var n = 0; n < scripts.length; n++)
            scripts[n].parentNode.removeChild(scripts[n]);
            
        // Shift banner and pitures every 10 seconds
        var f = function()
        {
            var s = dk.solbjergkirke.Main.ShiftPic.shift();
            dk.solbjergkirke.Picture.ShiftPicture(s);
            dk.solbjergkirke.Main.ShiftPic.push(s);
        };
        setInterval(f, 10000);
        
        // Create menu
        dk.solbjergkirke.Menu.Create('divMenu');
        
        // Create fadelist for menu
        var fadelist = new dk.qbrix.FadeList(100, 10);
        fadelist.SetStyles('.menu-link-hover', 'no-style');       
        fadelist.Initialize('ulMenuTop', 'a');
        
        /*var height = dk.qbrix.Window.GetSize()[1];
        var maindiv = document.getElementById('main-page');
        if (maindiv != null)
            maindiv.style['height'] = (height-4) + 'px';*/
        
        // Set footer text and placement
        this.SetFooter();
        
        // Set background
        if (QB.Background)
            QB.Background.Initialize
                (
                    {
                        move:true,
                        shadow_object_id:'main-page',
                        suspend_if:'dk.solbjergkirke.Picture.OpacityTimer != null'
                    }
                );

        
        if (typeof this.AfterInitialize == 'function')
            this.AfterInitialize();
            
        // Only initialize once
        delete dk.solbjergkirke.Main.Initialize;        
    },
    
    AfterInitialize: function()
    {
    },
    
    SetFooter : function()
    {
        var elm = document.getElementById('divFooter');
        if (elm == null) return;
        
        elm.innerHTML = 'Howitzvej 34&nbsp;&nbsp;|&nbsp;&nbsp;2000 Frederiksberg&nbsp;&nbsp;|&nbsp;&nbsp;Tlf. 38 19 44 58&nbsp;&nbsp;' + 
                        '|&nbsp;&nbsp;Fax 38 88 09 19&nbsp;&nbsp;|&nbsp;&nbsp;Email: ' + 
                        '<a href="mailto:solbjerg.sognfrederiksberg@km.dk">solbjerg.sognfrederiksberg@km.dk</a>';

/*        var maindiv = document.getElementById('main-page');
        var size = QB.Object.GetSize(maindiv);
        elm.style['position'] = 'absolute';        
        elm.style['top'] = (size[1]-28) + 'px';*/
    },

    Priests: ['Lars&nbsp;Danner&nbsp;Madsen', 'Karin&nbsp;Franijeur&nbsp;Znaider'],
    SetPriests: function()
    {
        var tbl = document.getElementById('tblServices');
        var elms;
        var id;
        var s1, s2;

        if (tbl == null) return;
        
        elms = tbl.getElementsByTagName('div');
        for (var n = 0; n < elms.length; n++)
        {
            id = elms[n].id;
            if (id.indexOf('td') == 0 && id.length == 10)
            {
                s1 = elms[n].innerHTML;
                s2 = s1.replace(/P1/g, this.Priests[0]).replace(/P2/g, this.Priests[1]);
                elms[n].innerHTML = s2;
            }
        }
        
        // Show table
        tbl.style['display'] = 'block';
    },
      
    SetDatesNamesColors : function()
    {
        var d2 = new Date(), d3 = new Date();
        var tbl = document.getElementById('tblServices');
        var elms, td, div;
        var id, dist, min_dist = 1e15;
        var s1, s2;

        if (tbl == null) return;
        
        d3.setHours(0, 0, 0, 0);
        
        elms = tbl.getElementsByTagName('div');
        td = null;
        for (var n = 0; n < elms.length; n++)
        {
            id = elms[n].id;
            if (id.indexOf('td') != 0 || id.length != 10)
                continue;
                
            // Create date from id
            id = id.substring(2,10);
            d2.setFullYear(parseInt(id.substring(0,4), 10), parseInt(id.substring(4,6), 10)-1, parseInt(id.substring(6,8), 10));
            d2.setHours(0, 0, 0, 0);
            
            elms[n].style['border'] = 'solid 2px ' + dk.solbjergkirke.Liturgi.GetColorFromDate(d2);
            //var color = dk.solbjergkirke.Liturgi.GetColorFromDate(d2);
            //elms[n].style['backgroundColor'] = color;
            //if (color != '#ffffff')
            //    elms[n].style['color'] = '#ffffff';
                

            // Check distance from today to date
            dist = d2.valueOf() - d3.valueOf();
            if (dist < 0)
                elms[n].style['color'] = '#888888';
            else if (dist == 0)
            {
                if ((new Date()).getHours() < 17)
                {
                    min_dist = dist;
                    td = elms[n];
                }
                else
                    elms[n].style['color'] = '#888888';
            }
            else if (dist < min_dist)
            {
                min_dist = dist;
                td = elms[n];
            }

            // Create strings
            s1 = 'den ' + d2.toLocaleDateString();
            s2 = dk.solbjergkirke.Liturgi.GetNameFromDate(d2);
            
            div = document.createElement('div');
            div.setAttribute('class', 'dayname');
            div.innerHTML = s2 + '<br />' + s1 + '<br />';
            elms[n].insertBefore(div, elms[n].firstChild);
            //elms[n].getElementsByTagName('b')[0].innerHTML = s2 + '<br />' + s1 + '<br />';
            
            // Set tooltip 
            if (elms[n].title.length > 0)
                elms[n].title += '\n';
            elms[n].title += s2 + ' - ' + s1;
        }

        if (td != null && min_dist <= 604800000) // miliseconds 
        {
            td.style['fontStyle'] = 'italic';
            td.style['backgroundColor'] = '#ffffff';
            td.style['color'] = '#000000';
            //td.style['borderStyle'] = 'double';
            //td.style['borderWidth'] = '3px';
            td.title = 'N\u00E6ste gudstjeneste\n' + td.title;
        }
    }
}

