var cat_objects = new Array();
var bg=1;
/**
 * Initialisiert die Objekte
 *
 *
 **/
function init(){

        cat_objects[1] = new Cselectors(1);
        cat_objects[2] = new Cselectors(2);
        cat_objects[3] = new Cselectors(3);
        cat_objects[4] = new Cselectors(4);
        cat_objects[5] = new Cselectors(5);
        /*cat_objects[6] = new Cselectors(6);
        cat_objects[7] = new Cselectors(7);*/

    imageObj = new Image();

    images = new Array();

                images[0] = "/img/uploaded/Auto1.jpg";
                images[1] = "/img/uploaded/Auto2.jpg";
                images[2] = "/img/uploaded/Auto3.jpg";
                images[3] = "/img/uploaded/Auto4.jpg";
                images[4] = "/img/uploaded/Auto5.jpg";
                images[5] = "/img/uploaded/Auto6.jpg";
                images[6] = "/img/uploaded/Auto7.jpg";
                images[7] = "/img/uploaded/Auto8.jpg";
                images[8] = "/img/uploaded/Auto9.jpg";
                images[9] = "/img/uploaded/Auto10.jpg";

             cars_length = images.length;
             bg = 0;

    flash_nav(1);
	flash_star(1);




    // start preloading
    for(var i=0; i<=cars_length; i++)
    {
         imageObj.src=images[i];
    }

        change_bg();
}


/**
 * Klasse selectors
 * für die Mainpage
 *
 **/
function Cselectors(id){
        //vars
        this.id = id;
        this.expandation_status = 'reduced';
        this.next_step;
        this.object = document.getElementById("cat"+this.id);
        this.object.style.width = 100+"px";
        this.object.style.height = 100+"px";
        //vars

        //functions
        this.expand_init = expand_init;
        this.expand = expand;
        this.reduce_init = reduce_init;
        this.reduce = reduce;
        //functions
}//c.selectors


        //expand_init - bereitet expandieren vor und leitet es ein
        //
        function expand_init(){
                //document.getElementById("bg_img").style.backgroundImage = "url(img/karte.gif)";

                for(var i = 1; i <= 5; i++) {
                        if(i != this.id && cat_objects[i].expandation_status != 'expanding' && cat_objects[i].expandation_status != 'expanded') {
                                cat_objects[i].object.getElementsByTagName('img')[0].style.opacity = "0.8";
                                cat_objects[i].object.getElementsByTagName('img')[0].style.filter="Alpha(opacity=80)";
                        }
                        if(i != this.id && cat_objects[i].expandation_status == 'expanded') window.setTimeout('cat_objects['+i+'].reduce_init()', 0);
                        if(i != this.id && cat_objects[i].expandation_status == 'expanding') cat_objects[i].next_step = 'reduce';
                }
                this.object.getElementsByTagName('img')[0].style.opacity = '1';
                this.object.getElementsByTagName('img')[0].style.filter="Alpha(opacity=100)";

                this.expandation_status = 'expanding';
                set_opacity();
                //status("expand_init ");

                var height = parseInt(this.object.style.height);
                var width = parseInt(this.object.style.width);
                var left = this.object.offsetLeft;
                var top = this.object.offsetTop;

                //breite
                if(width < 170) {
                        width += 70; left-=35;
                }//breite

                //höhe
                if(height < 230) {
                        height += 130; top -= 65;

                }//höhe
                this.object.style.width = width+"px";
                this.object.style.left = left+"px";
                this.object.style.height = height+"px";
                this.object.style.top = top+"px";


                this.expand();
                this.object.style.borderTop = "1px solid #000000";
                this.object.style.borderBottom = "1px solid #000000";
                this.object.style.borderLeft = "1px solid #000000";
                this.object.style.borderRight = "1px solid #000000";
                this.object.style.zIndex = 4;
        }//expand_init

        //expand - lässt objekt expandieren
        //
        function expand(){
                var height = parseInt(this.object.style.height);
                var width = parseInt(this.object.style.width);
                var left = this.object.offsetLeft;
                var top = this.object.offsetTop;

                //breite
                if(width < 170 && this.expandation_status == 'expanding') {
                        width += 2; left-=1;
                        this.object.style.width = width+"px";
                        this.object.style.left = left+"px";
                }//breite

                //höhe
                if(height < 230 && this.expandation_status == 'expanding') {
                        height += 4; top -= 2;
                        this.object.style.height = height+"px";
                        this.object.style.top = top+"px";
                }//höhe

                //bildgröße
                if(width <= 170){
                        this.object.getElementsByTagName('img')[0].style.width = width+"px";
                        this.object.getElementsByTagName('img')[0].style.height = width/1.3+"px";
                        this.object.getElementsByTagName('span')[0].style.height = width - width/1.3+"px";
                        this.object.getElementsByTagName('span')[0].style.fontSize = width/6.5+"px";
                }
                //bildgröße


                //rekursions_check
                if((width < 170 || height < 230) && this.expandation_status == 'expanding')
                        window.setTimeout("cat_objects["+this.id+"].expand()", 0);
                else {
                        this.expandation_status = 'expanded'
                        var cn_length = this.object.getElementsByTagName('a')[0].childNodes.length;
                        for(var i = 0; i < cn_length; i++) {
                                if(this.expandation_status == 'expanded' && this.object.getElementsByTagName('a')[0].childNodes[i].style) {
                                this.object.getElementsByTagName('a')[0].childNodes[i].style.display = 'none';
                                this.object.getElementsByTagName('a')[0].childNodes[i].style.display = 'block';
                                }
                                if(this.object.getElementsByTagName('a')[0].childNodes[i].className == 'center'){
                                          if(this.object.getElementsByTagName('a')[0].childNodes[i].childNodes[1]) {
                                                 this.object.getElementsByTagName('a')[0].childNodes[i].childNodes[1].style.display = 'block';
                                         }
                                         else {
                                                 this.object.getElementsByTagName('a')[0].childNodes[i].childNodes[0].style.display = 'none';                                       this.object.getElementsByTagName('a')[0].childNodes[i].childNodes[0].style.display = 'block';
                                                 }
                                                                        }
                                                                        //this.object.getElementsByTagName('a')[0].childNodes[i].childNodes[1].style.display = 'block';

                        }
                        if(this.next_step == 'reduce')
                                window.setTimeout(''+this.reduce_init()+'', 0);
                        this.object.getElementsByTagName('span')[0].style.backgroundColor = '#000000';
                        this.object.style.backgroundColor = '#ef8a23';
                        set_opacity();
                }

        }//expand



        //reduce_init bereitet reduzieren vor und leitet es ein
        //
        function reduce_init(evt){
                var target;
                var evt = evt || "called";
                if(evt != "called") target=(evt.toElement)?evt.toElement:evt.relatedTarget;

                if(evt == "called" || (target.id == "bg_img" && target != "undefined" && target != undefined && target.className != "center")) {


                        //document.getElementById("bg_img").style.backgroundImage = "url(img/karte.gif)";

                        var cn_length = this.object.getElementsByTagName('a')[0].childNodes.length;

                        for(var i = 0; i < cn_length; i++) if(this.object.getElementsByTagName('a')[0].childNodes[i].style) this.object.getElementsByTagName('a')[0].childNodes[i].style.display = 'none';
                        this.object.getElementsByTagName('img')[0].style.display = 'block';
                        this.object.getElementsByTagName('span')[0].style.display= 'block';
                        this.object.getElementsByTagName('a')[0].style.display= 'block';


                        if(this.expandation_status == 'expanding') this.next_step = 'reduce';
                        if(this.expandation_status == 'expanded' && this.expandation_status != 'expanding') {
                                this.next_step = '';
                                this.expandation_status = 'reducing';

                                set_opacity();

                                this.reduce();
                                this.object.style.backgroundColor = '#ffffff';
                                this.object.style.border = "2px solid #EF8A23";
                                this.object.style.zIndex = 3;
                        }
                }

        }//reduce_init

        //reduce - lässt objekt reduzieren
        //
        function reduce() {
                var height= parseInt(this.object.style.height);
                var width = parseInt(this.object.style.width);
                var left = this.object.offsetLeft;
                var top = this.object.offsetTop;

                //breite
                if(width > 100 && this.expandation_status == 'reducing') {
                        width -= 70; left +=35;
                        this.object.style.width = width+"px";
                        this.object.style.left = left+"px";
                }//breite

                //höhe
                if(height > 100 && this.expandation_status == 'reducing') {
                        height -= 130; top +=65;

                        this.object.style.height = height+"px";
                        this.object.style.top = top+"px";
                }//höhe
                //bildgröße
                        this.object.getElementsByTagName('img')[0].style.width = width+"px";
                        this.object.getElementsByTagName('img')[0].style.height = width/1.333333333333+"px";
                        this.object.getElementsByTagName('span')[0].style.height = width - width/1.33333333333+"px";
                        this.object.getElementsByTagName('span')[0].style.fontSize = 17+"px";
                //bildgröße

                if((width > 100 || height > 100) && this.expandation_status == 'reducing')
                        window.setTimeout("cat_objects["+this.id+"].reduce()", 0);
                else if(this.expandation_status != 'expanding' && width <= 100 && height <= 100) {
                        this.expandation_status = 'reduced';
                        this.object.getElementsByTagName('img')[0].style.opacity = '0.3';
                        this.object.getElementsByTagName('img')[0].style.filter="Alpha(opacity=30)";
                        set_opacity();
                        this.object.style.backgroundColor = '#ffffff';
                }
                else this.reduce_init();
        }//reduce

        //set_opacity stellt die sichtbarkeit der objekte ein
        function set_opacity() {
                var any_exp = false;

                for(var i =1; i <=5; i++) if (cat_objects[i].expandation_status == 'expanded' || cat_objects[i].expandation_status == 'expanding') any_exp = true;
                for (var i = 1; i <= 5; i++) {
                        if(cat_objects[i].expanded_status == 'reduced' && any_exp == true) {
                                cat_objects[i].object.getElementsByTagName('img')[0].style.opacity = '0.8';
                                cat_objects[i].object.getElementsByTagName('img')[0].style.filter="Alpha(opacity=80)";
                        }
                        if(cat_objects[i].expanded_status == 'reduced') cat_objects[i].object.style.backgroundColor = '#ffffff';
                        if(any_exp == false) {
                                cat_objects[i].object.getElementsByTagName('img')[0].style.opacity = '0.8';
                                cat_objects[i].object.getElementsByTagName('img')[0].style.filter="Alpha(opacity=80)";
                        }
                }
        }//set_opacity

        /**
         *
         * @access public
         * @return void
         **/
        function status(func){
                for (var i = 1; i <= 5; i++) {
                        alert(func + cat_objects[i].expandation_status + i);
                }
        }

        //change_bg - ändert das hintergrundbild
        //
        function change_bg(){

                document.getElementById("bg_img").style.backgroundImage = "url("+images[bg]+")";
                bg++;
                if(bg == cars_length) {
                        bg = 0;
                }
                window.setTimeout("change_bg()",5000);
        }//change_bg


        //lässt selbstbehalt flashen
       //
       function flash_nav(i) {
        if(i == 1) {
                 document.getElementById("flash").firstChild.nodeValue = "R e d u k t i o n";
                 document.getElementById("flash").className = "style1";

        }
        if(i == 2) {
                 document.getElementById("flash").firstChild.nodeValue = "Selbstbehalt";
                 document.getElementById("flash").className = "style2";
                 i=0;
        }

        i++;


         window.setTimeout("flash_nav("+i+")",750);

       }//flash_nav

        //lässt den Stern flashen
       //
       function flash_star(i) {
        if(i == 1) {
                document.getElementById("star").src = "img/stern_ank.gif";

        }
        if(i == 2) {
				document.getElementById("star").src = "img/blank.gif";
                i=0;
        }

        i++;


         window.setTimeout("flash_star("+i+")",750);

       }//flash_nav
		   
	   
