
var MSSUI = {
    Initialize: function() {
        MainMenu.InitDropMenu();
        MainMenu.InitBodyClick();
        MSSUI.InitAutoClick();
        MSSUI.InitBiglink();
    },
    InitAutoClick: function() {
        $$('.autoclick').each(function(a) {
            if(a.get('tag') != 'a') return;
            if(a.get('title') == null || a.get('title').length == 0) return;
            a.store('ev', a.get('title'));
            a.erase('title');
            var foo = new Function('' + a.retrieve('ev'));
            foo();
        });
    },
    InitBiglink:function() {
        $$('.biglink').each(function(item) {
            item.addEvent('mouseover', function() { item.addClass('biglinkhover'); });
            item.addEvent('mouseout', function() { item.removeClass('biglinkhover'); });
        });
    },
    end: true
};

var MainMenu = {
    InitDropMenu:function() {
        var mm = $('model_menu');
        if(!mm) return;
        mm.getElements('a.drop').each(function(a) {
            a.addEvent('mouseover', function() {
                MainMenu.hideAllDrops();
                a.addClass('drophover');
                if(!mm.hasClass('showdrop')) return;
                var ddid = a.get('id').replace('lk_','dw_');
                var ddw = $(''+ddid);
                if(!ddw) return;
                ddw.setStyle('display','block');
            });
        });
    },
    InitBodyClick:function() {
        if(!$('bodytag')) return;
        $('bodytag').addEvent('click', function() {
            $('model_menu').removeClass('showdrop');
            MainMenu.hideAllDrops();
        });
    },
    hideAllDrops: function() {
        if(!$('all_drops')) return false;
        $('all_drops').getElements('.drop').each(function(item) {
            item.setStyle('display', 'none');
        });
        if(!$('model_menu')) return false;
        $('model_menu').getElements('.drophover').each(function(item) {
            item.removeClass('drophover');
        });
    },
    ToggleClass:function(alnk, tclass) {
        if(!$('model_menu')) return false;
        $('model_menu').toggleClass(tclass);
        alnk.fireEvent('mouseover');
    },
    end:true
};

var Teasers = {
    objs:null,
    oids:null,
    CreateTeaser:function(teaserId) {
        if(Teasers.objs == null) {
            Teasers.objs = new Array();
            Teasers.oids = new Array();
        }
        Teasers.oids.push(teaserId);
        var t = new teaserInstance(teaserId);
        Teasers.objs.push(t);
        t.Start();
    },
    TeaserNext:function(teaserId) {
        for(var i=0;i<Teasers.oids.length;i++) {
            if(Teasers.oids[i] == teaserId) {
                Teasers.objs[i].ShowNextItem();
                return true;
            }
        }
        // alert('Not found');
        return false;
    },
    end:true
};

function teaserInstance(tid) {
    this.tid = tid;
    this.eltid = null;
    this.tkid = null;
    this.content = null;
    this.crn = -1;
    this.fx = null;
    this.Start = function() {
        if(!this.tid) return;
        this.eltid = $(''+this.tid);
        if(!this.eltid) return;
        this.content = new Array();
        $$('.'+this.tid+'_content').each(function(item) {
            var j = JSON.decode(item.value);
            this.content.push(j);
        },this);
        this.eltid.set('tween', {duration:600});
        this.ShowNextItem();
    };
    this.ShowNextItem = function() {
        clearTimeout(this.tkid);
        if(!this.eltid) return;
        // if(this.content.length == 1) {
        //     return false;
        // }
        this.crn++;
        if(this.crn >= this.content.length) {
            this.crn = 0;
        }
        try {
            $(this.tid+'_total').set('html', '/ ' + (this.content.length));
            $(this.tid+'_index').set('html', (1+this.crn));
        } catch(e) { }
        var coords = $(''+this.tid).getCoordinates();
        var cc = this.content[this.crn];
        var tt_id = this.tid;
        
        var inner_html = '';
        
        try {
            if(cc.tp == 'image' && cc.data.title) {
                inner_html += '<h1 style="';
                inner_html += cc.data.title.attributes.left?'left:'+cc.data.title.attributes.left+'px;':'';
                inner_html += cc.data.title.attributes.top?'top:'+cc.data.title.attributes.top+'px;':'';
                inner_html += cc.data.title.attributes.color?'color:'+cc.data.title.attributes.color+';':'';
                inner_html += '">'+cc.data.title.value+'</h1>';
            }
            if(cc.tp == 'image' && cc.data.subtitle) {
                inner_html += '<h2 style="';
                inner_html += cc.data.subtitle.attributes.left?'left:'+cc.data.subtitle.attributes.left+'px;':'';
                inner_html += cc.data.subtitle.attributes.top?'top:'+cc.data.subtitle.attributes.top+'px;':'';
                inner_html += cc.data.subtitle.attributes.color?'color:'+cc.data.subtitle.attributes.color+';':'';
                inner_html += '">'+cc.data.subtitle.value+'</h2>';
            }
            if(cc.tp == 'image' && cc.data.link) {
                inner_html += '<a href="'+cc.data.href+'" style="';
                inner_html += cc.data.link.left?'left:'+cc.data.link.left+'px;':'';
                inner_html += cc.data.link.top?'top:'+cc.data.link.top+'px;':'';
                inner_html += '" class="ltlnk';
                inner_html += cc.data.link.bluecolor?'blue':'';
                inner_html += '"';
                inner_html += cc.data.link.newwindow?' target="_blank"':'';
                inner_html += '>'+cc.data.link.label+'</a>';
            }
        } catch(e) {
            inner_html = e;
        }
        
        this.eltid.get('tween').start('opacity',0).chain(function() {
            this.set('opacity', 1);
            if(cc.tp == 'swf') {
                var params = {
                    quality:'high',     wmode:'transparent',
                    scale:'showall',    menu:'false'
                };
                var flvars = {
                    xmlbase: cc.data.xmlbase,
                    xmlfile: cc.data.xmlfile
                };
                var attributes = { };
                var temp_html = '<div id="temp_swf"></div>';
                var ttp = $(tt_id + '_replacecontent');
                ttp.set('html',temp_html);
                swfobject.embedSWF(cc.src, 'temp_swf', coords.width, coords.height, '9.0.0', null, flvars, params, attributes );
            } else
            if(cc.tp == 'image') {
                var ttp = $(tt_id + '_replacecontent');
                ttp.setStyle('height', coords.height);
                ttp.setStyle('background-image', 'url(' + cc.src + ')');
                ttp.set('html', inner_html);
            }   
        });
        var tt = parseInt(cc.to);
        if(tt > 0) {
            tt = 1000 * tt;
            this.tkid = setTimeout("Teasers.TeaserNext('"+this.tid+"');", tt);
        }
    };
};

var DoubleLink = {
    MoveNext: function(tid) {
        try {
            var teaser = $(''+tid);
            var crnidx = 0;
            var tcount = 0;
            var spanidx = null;
            teaser.getElement('.navigate').getElements('span').each(function(sp) {
                if(sp.hasClass('first')) {
                    crnidx = parseInt(sp.get('html'));
                    spanidx = $(sp);
                } else {
                    tcount = parseInt(sp.get('html').substring(2));
                }
            });
            // alert('crn:'+crnidx+', total:'+tcount);
            
            var nextcrn = crnidx+1;
            if(nextcrn > tcount) nextcrn = 1;
            teaser.getElements('.doublelink_pane')[crnidx-1].setStyle('display','none');
            teaser.getElements('.doublelink_pane')[nextcrn-1].setStyle('display','block');
            spanidx.set('html', nextcrn);
        } catch(e) {
            alert(e);
        }
        
        
    }
};

var CarPage = {
    InitIntelinks:function() {
        $$('.hlink').each(function(item) {
            item.addEvent('mouseover', function() { item.addClass('over'); });
            item.addEvent('mouseout', function() { item.removeClass('over'); });
        });
    },
    Show:function(id_data) {
        $('carright').setStyle('display','none');
        if($('carmedia')) {
            $('carmedia').setStyle('display','none');
            $('carmedia').set('html','');
        }

        $$('.carhl').each(function(item) { if(item.get('id') != 'hl_'+id_data) item.setStyle('display','none'); });
        $('hl_'+id_data).setStyle('display','block');
        
    },
    ShowMedia:function(){
        $('carright').setStyle('display','none');
        $$('.carhl').each(function(item) { item.setStyle('display','none'); });
        if(!$('carmedia')) return false;
        $('carmedia').setStyle('display','none');
        $('carmedia').set('html', '');
        
        var base = $('wp_media').getElement('.wallpapers_base').get('html');
        
        var wres = $('wp_media').getElement('.wallpapers_wres').get('html');
        
        var htm = '';
        var wp_from = 0;
        $('wp_media').getElements('.rc_wallpaper').each(function(item) {
            var wp_number = parseInt(item.get('html'));
            htm += '<div class="cmw_pane"><a href="javascript:void(0);" onclick="CarPage.ShowBig('+wp_from+');"><img src="'+base+wp_number+'_110x62.jpg" /></a></div>';
            wp_from++;
        });
        $('carmedia').set('html', htm);
        // $('carpage').setStyle('background-image', 'url('+$('bg_general').value+')');
        $('carmedia').setStyle('display','block');
    },
    ShowPane:function(id_pane, showCloseButton) {
        var rpane = $('carright');
        rpane.setStyle('display','none');
        if($('carmedia')) {
            $('carmedia').setStyle('display','none');
        }
        // hide also the hl_ ??
        var rcontent = $('rc_'+id_pane);
        if(!rcontent) return false;
        
        rpane.getElement('.title').set('html', rcontent.getElement('.rc_title').get('html'));
        rpane.getElement('.showcase').set('html', rcontent.getElement('.rc_showcase').get('html'));
        rpane.getElement('.showdetails').set('html', rcontent.getElement('.rc_details').get('html'));
        
        var atogg = rpane.getElement('.sdtoggle');
        if(!atogg.hasClass('mssdone')) {
            atogg.addClass('mssdone');
            atogg.store('tu', atogg.get('alt'));
            atogg.store('tf', atogg.get('html'));
        }
        atogg.set('html', atogg.retrieve('tf'));
        rpane.getElement('.showdetails').setStyle('height',1);
        var sdetails = rpane.getElement('.sdetails');
        sdetails.removeClass('mssunfolded');
        
        var showroom = rpane.getElement('.showroom');
        var navi = rpane.getElement('.showroom_navi');
        if(!navi.hasClass('mssdone')) {
            navi.addClass('mssdone');
            navi.addEvent('mouseover',function() { showroom.addClass('isonnavi'); });
            navi.addEvent('mouseout',function() { showroom.removeClass('isonnavi'); });
        }
        rpane.setStyle('display','block');
        if(!showroom.hasClass('mssdone')) {
            showroom.addClass('mssdone');
            var c = navi.getCoordinates(showroom);
            navi.store('it', c.top);
            navi.store('ih', c.height);
            navi.store('ft', (parseInt(c.top) + (parseInt(c.height)-1)));
            navi.store('fh', 1);
            showroom.addEvent('mouseover', function() {
                navi.get('morph').start({
                    'height': navi.retrieve('ih'),
                    'top': navi.retrieve('it')
                });
            });
            showroom.addEvent('mouseout', function() {
                if(!showroom.hasClass('isonnavi')) {
                    navi.get('morph').start({
                        'height':navi.retrieve('fh'),
                        'top':navi.retrieve('ft')
                    });
                };
            });
        }
        
        if(!sdetails.hasClass('mssdone')) {
            sdetails.addClass('mssdone');
            var c = sdetails.getCoordinates(rpane);
            sdetails.store('it', c.top);
            sdetails.store('ih', c.height);
        }
        
        sdetails.setStyle('top', parseInt(sdetails.retrieve('it')));
        sdetails.setStyle('height', parseInt(sdetails.retrieve('ih')));
        
        if(rpane.getElement('.showdetails').get('html').length == 0) {
            atogg.setStyle('display','none');
        } else {
            atogg.setStyle('display','block');
        }
        
        if(showCloseButton == false) {
            $('carright').getElement('.closecontainer').setStyle('display','none');
        } else {
            $('carright').getElement('.closecontainer').setStyle('display','block');
        }
        
        CarPage.InitShowroom(id_pane);
    },
    img_tk:null,
    imgs:null,
    img_idx:0,
    is_media:false,
    InitShowroom:function(id_pane) {
        clearInterval(CarPage.img_tk);
        var rpane = $('carright');
        CarPage.imgs = new Array();
        $('rc_'+id_pane).getElements('.rc_image').each(function(item) {
            CarPage.imgs.push(item.get('html'));
        });
        
        CarPage.img_count = CarPage.imgs.length;
        CarPage.img_idx = 0;
        rpane.getElement('.showroom_idx').set('html', 1);
        rpane.getElement('.showroom_count').set('html', ' / ' + CarPage.img_count);
        $('showroom_1').fade('hide');
        CarPage.img_idx=-1;
        CarPage.is_media = false;
        CarPage.ShowroomNext(true);
    },
    ShowroomNext:function(resetTimer) {
        clearInterval(CarPage.img_tk);

        if(CarPage.imgs.length <= 1) return false;
        var nidx = CarPage.img_idx + 1;
        if(nidx >= CarPage.imgs.length) {
            nidx=0;
        }
        var idimg = (nidx % 2);
        var ndimg = 1-idimg;
        
        $('carright').setStyle('cursor','wait');
        
        var nextimg = Asset.image(CarPage.imgs[nidx], {
            onLoad: function() {
                $('showroom_'+idimg).set('src', this.src);
                $('showroom_'+ndimg).fade('out');
                $('showroom_'+idimg).fade('in');
                $('carright').getElement('.showroom_idx').set('html', (1+nidx));
                CarPage.img_idx = nidx;
                CarPage.UpdateDownloadLinks();
                $('carright').setStyle('cursor','default');
                if(resetTimer == true && CarPage.is_media != true) {
                    CarPage.img_tk = setInterval('CarPage.ShowroomNext()',2500);
                }
            }
        });

    },
    ShowroomPrev:function() {
        clearInterval(CarPage.img_tk);
        if(CarPage.imgs.length <= 1) return false;
        var nidx = CarPage.img_idx - 1;
        if(nidx < 0) {
            nidx=CarPage.imgs.length-1;
        }
        var idimg = (nidx % 2);
        var ndimg = 1-idimg;
        
        $('carright').setStyle('cursor','wait');
        
        var previmg = Asset.image(CarPage.imgs[nidx], {
            onLoad: function() {
                $('showroom_'+idimg).set('src', this.src);
                $('showroom_'+ndimg).fade('out');
                $('showroom_'+idimg).fade('in');
                $('carright').getElement('.showroom_idx').set('html', (1+nidx));
                CarPage.img_idx = nidx;
                CarPage.UpdateDownloadLinks();
                $('carright').setStyle('cursor','default');
                if(CarPage.is_media != true) CarPage.img_tk = setInterval('CarPage.ShowroomNext()', 2500);
            }
        });
        
    },
    UpdateDownloadLinks:function() {
        if(CarPage.is_media == false) return false;
        var lnk1600 = $('wallp_download_1600');
        var lnk1920 = $('wallp_download_1920');
        
        var nidx = (CarPage.img_idx % 2);
        // nidx = 1-nidx;
        var imgsrc = $('showroom_'+nidx).src;
        imgsrc = imgsrc.replace('687','_width_');
        imgsrc = imgsrc.replace('250', '_height_');
        // imgsrc = imgsrc.replace('wallpaper','dwallpaper
        lnk1600.set('href',imgsrc.replace('_width_','1600').replace('_height_','1200'));
        lnk1920.set('href',imgsrc.replace('_width_','1920').replace('_height_','1200'));
    },
    ToggleDetails:function() {
        var rpane = $('carright');
        if(rpane.getStyle('display') != 'block') return false;
        var sdetails = rpane.getElement('.sdetails');
        var showroom = rpane.getElement('.showroom');
        var c = showroom.getCoordinates(rpane);
        var it = parseInt(sdetails.retrieve('it'));
        var ih = parseInt(sdetails.retrieve('ih'));
        var ft = c.top;
        var fh = ih + (it - c.top);
        
        var atogg = rpane.getElement('.sdtoggle');
        atogg.setStyle('display','none');
        
        var showdetails = rpane.getElement('.showdetails');
        
        if(!sdetails.hasClass('mssunfolded')) {
            // alert('folded, must unfold');
            sdetails.get('morph').start({
                'top': [ it, ft ],
                'height': [ ih, fh]
            }).chain(
                function() { showdetails.get('tween').start('height',1,250); atogg.setStyle('display','block'); atogg.set('html', atogg.retrieve('tu')); }
            );
            sdetails.addClass('mssunfolded');
        } else {
            sdetails.removeClass('mssunfolded');
            showdetails.get('tween').start('height',250,1).chain([
                function() {
                    sdetails.get('morph').start({
                        'top': [ ft, it ],
                        'height': [ fh, ih]
                    });
                    atogg.setStyle('display','block'); atogg.set('html', atogg.retrieve('tf'));
                }
            ]);
        }
    },
    ShowBig: function(wp_from) {
        var rpane = $('carright');
        rpane.setStyle('display','none');
        if($('carmedia')) $('carmedia').setStyle('display','none');
        // hide also the hl_ ??
        rpane.getElement('.title').set('html', 'Download');
        rpane.getElement('.showcase').set('html', '<div><a id="wallp_download_1600" class="arrow" href="javascript:void(0);" target="_blank">Standard: 1600x1200</a></div><div class="sep" style="height:10px;">&nbsp;</div><div><a id="wallp_download_1920" class="arrow" href="javascript:void(0);" target="_blank">Widescreen: 1920x1200</a></div>');
        rpane.getElement('.showdetails').set('html','');
                
        var atogg = rpane.getElement('.sdtoggle');
        if(!atogg.hasClass('mssdone')) {
            atogg.addClass('mssdone');
            atogg.store('tu', atogg.get('alt'));
            atogg.store('tf', atogg.get('html'));
        }
        atogg.set('html', atogg.retrieve('tf'));
        rpane.getElement('.showdetails').setStyle('height',1);
        var sdetails = rpane.getElement('.sdetails');
        sdetails.removeClass('mssunfolded');
        
        var showroom = rpane.getElement('.showroom');
        var navi = rpane.getElement('.showroom_navi');
        if(!navi.hasClass('mssdone')) {
            navi.addClass('mssdone');
            navi.addEvent('mouseover',function() { showroom.addClass('isonnavi'); });
            navi.addEvent('mouseout',function() { showroom.removeClass('isonnavi'); });
        }
        rpane.setStyle('display','block');
        if(!showroom.hasClass('mssdone')) {
            showroom.addClass('mssdone');
            var c = navi.getCoordinates(showroom);
            navi.store('it', c.top);
            navi.store('ih', c.height);
            navi.store('ft', (parseInt(c.top) + (parseInt(c.height)-1)));
            navi.store('fh', 1);
            showroom.addEvent('mouseover', function() {
                navi.get('morph').start({
                    'height': navi.retrieve('ih'),
                    'top': navi.retrieve('it')
                });
            });
            showroom.addEvent('mouseout', function() {
                if(!showroom.hasClass('isonnavi')) {
                    navi.get('morph').start({
                        'height':navi.retrieve('fh'),
                        'top':navi.retrieve('ft')
                    });
                };
            });
        }
        
        if(!sdetails.hasClass('mssdone')) {
            sdetails.addClass('mssdone');
            var c = sdetails.getCoordinates(rpane);
            sdetails.store('it', c.top);
            sdetails.store('ih', c.height);
        }
        
        sdetails.setStyle('top', parseInt(sdetails.retrieve('it')));
        sdetails.setStyle('height', parseInt(sdetails.retrieve('ih')));
        
        atogg.setStyle('display','none');
        CarPage.is_media = true;
        CarPage.ShowroomWallpapers(wp_from);
    },
    ShowroomWallpapers:function(wp_from) {
        clearInterval(CarPage.img_tk);
        var rpane = $('carright');
        CarPage.imgs = new Array();
        var wpbase = $('wp_media').getElement('.wallpapers_base').get('html');
        $('wp_media').getElements('.rc_wallpaper').each(function(item) {
            CarPage.imgs.push(wpbase + item.get('html')+'_687x250.jpg');
        });
        
        CarPage.img_count = CarPage.imgs.length;
        CarPage.img_idx = wp_from-1;
        rpane.getElement('.showroom_idx').set('html', wp_from);
        rpane.getElement('.showroom_count').set('html', ' / ' + CarPage.img_count);
        $('showroom_1').fade('hide');
        CarPage.ShowroomNext();
    },
    ClosePane:function() {
        clearInterval(CarPage.tks);
        $('carright').setStyle('display','none');
        if(CarPage.is_media) {
            try { $('carmedia').setStyle('display','block') } catch(e) { };
        }
    },
        
    end:true    
};

var UVSearch = {
    SelTab:function(ael,uvid) {
        var a = $(ael);
        a.getParent('.tabheader').getElements('a').each(function(item) { item.removeClass('sel'); });
        a.addClass('sel');
        $(''+uvid).getElements('.tabpage').each(function(item) { item.setStyle('display','none'); });
        $(ael.get('id')+'_page').setStyle('display','block');
    },
    OrderBy:function(wel)
    {
        var el = $(wel);
        if(el.hasClass('sortNone')) {
            UVSearch.removeAllSort(el);
            el.removeClass('sortNone');
            el.addClass('sortAsc');
        } else
        if(el.hasClass('sortAsc')) {
            UVSearch.removeAllSort(el);
            el.removeClass('sortNone');
            el.addClass('sortDesc');
        } else
        if(el.hasClass('sortDesc')) {
            UVSearch.removeAllSort(el);
            el.removeClass('sortNone');
            el.addClass('sortAsc');
        }
        var what = el.getParent('.uv_el');
        // TODO: the actual sort :)
    },
    removeAllSort:function(el) {
        el.getParent('.uv_carhead').getElements('a').each(function(item) {
            item.removeClass('sortAsc');
            item.removeClass('sortDesc');
            item.addClass('sortNone');
        });
    },
    ShowDetails:function(uvid) {
        var det = $('uv_cardetails');
        det.setStyle('display','none');
        var c = $('uv_list').getCoordinates();
        $('uv_list').setStyle('display','none');
        det.setStyle('left', c.left);
        det.setStyle('top', c.top+14);
        det.setStyle('width', c.width-2);
        det.setStyle('height', c.height);
        
        var bimg = $('uvcd_baseimg');
        if(!bimg) return false;
        bimg = bimg.value;
        var data = $('uvd_'+uvid);
        if(!data) return false;
        data = JSON.decode(data.value);
        if(!data) return false;
        var div = null;
        
        var htm = '';
        for(var i=1;i<=data.images.length;i++) {
            div = bimg.replace('%uvid%', uvid);
            div = div.replace('%num%', i);
            div = div.replace('%format%', 'small');
            htm += '<a href="javascript:void(0);" onclick="UVSearch.ChangeImage(\''+uvid+'\','+i+');"><img src="'+div+'" /></a>';
        }
        $('uvcd_thumbs').set('html', htm);
        
        htm = '<div class="sep" style="height:10px;">&nbsp;</div>';
        htm += '<div>ID Oferta: ' + data.id + '</div>';
        htm += '<div class="sep" style="height:7px;">&nbsp;</div>';
        htm += '<div style="font-size:17px;font-weight:bold;color:#000;margin-bottom:7px;">' + data.brand + ' ' + data.model + '</div>';
        htm += '<div style="margin-bottom:14px;font-weight:bold;color:#000;line-height:12px;">Pret: '+data.tprice + ' ' + data.tcurr;
        if(data.tvat == 1) htm += ' <span style="font-weight:normal;">(TVA inclus)</span>';
        else if(data.tvat == 2) htm += ' <span style="font-weight:normal;">(fara TVA)</span><br />';
        htm += data.type;
        htm == '</div>';
        $('uvcd_main_gen').set('html',htm);
        
        htm = '';
        htm += UVSearch.putRow('Kilometri', data.km);
        htm += UVSearch.putRow('Caroserie', data.chassis);
        htm += UVSearch.putRow('Exterior', data.extcolor);
        htm += UVSearch.putRow('Interior', data.intcolor);
        htm += UVSearch.putRow('Prima inmatriculare', data.regdate);
        htm += UVSearch.putRow('Fabricat la', data.fabdate);
        htm += UVSearch.putRow('Cutie viteze', data.gearbox);
        htm += UVSearch.putRow('Combustibil', data.fuel);
        htm += UVSearch.putRow('Pret', data.tprice + ' ' + data.tcurr,true);
        if(data.tvat == 1) {
            htm += UVSearch.putRow('&nbsp;', '* TVA Inclus');
        } else if(data.tvat== 2) {
            htm += UVSearch.putRow('&nbsp;', '* Pret fara TVA');
        } 
        $('uvcd_lnkgen_page').set('html', htm);
        
        $('uvcd_lnkdot_page').set('html', data.details_config);
        $('uvcd_lnkper_page').set('html', data.details_technic);
        if(!data.details_config) {
            $('uvcd_lnkdot').setStyle('display','none');
        }
        if(!data.details_technic) {
            $('uvcd_lnkper').setStyle('display','none');
        }
        $('uvcd_lnkdot').removeClass('sel');
        $('uvcd_lnkper').removeClass('sel');
        $('uvcd_lnkgen').addClass('sel');
        $('uvcd_lnkgen_page').setStyle('display','block');
        $('uvcd_lnkdot_page').setStyle('display', 'none');
        $('uvcd_lnkper_page').setStyle('display', 'none');
        
        UVSearch.ChangeImage(uvid, 0);
        det.setStyle('display', 'block');
    },
    putRow:function(label,value,iscont) {
        var addClass = '';
        if(iscont==true) addClass = ' uvcdnb';
        
        return '<div class="uvcd_row'+addClass+'"><div class="uvcd_label">'+label+'</div><div class="uvcd_value">'+value+'</div></div>';
    },
    ChangeImage:function(uvid, idx)
    {
        if(idx==0) idx=1;
        $('uvcd_image').setStyle('background-image','');
        $('uvcd_image').addClass('uvcd_waitimg');
        $('uvcd_thumbs').getElements('a').each(function(item) { item.removeClass('sel'); });
        var alnk = $('uvcd_thumbs').getElements('a')[idx-1];
        if(!alnk) return false;
        var timg = alnk.getElement('img').get('src');
        timg = timg.replace('small.jpg', 'medium.jpg');
        var nextimg = Asset.image(timg, {
            onLoad: function() {
                $('uvcd_image').removeClass('uvcd_waitimg');
                $('uvcd_image').addClass('uvcd_showimg');
                $('uvcd_image').setStyle('background-image', 'url(' + timg + ')');
                $(alnk).addClass('sel');
            }
        });
    },
    Zoom:function() {
        var tsrc = $('uvcd_image').getStyle('background-image');
        
        var iswait = tsrc.indexOf('wait.gif');
        var isnoimg = tsrc.indexOf('noimage.png');
        if(iswait == -1 && isnoimg == -1) {
            tsrc = tsrc.replace('medium.jpg', 'big.jpg');
            tsrc = tsrc.replace('url(','');
            tsrc = tsrc.replace(')','');
            tsrc = tsrc.replace('"', '');
            tsrc = tsrc.replace('"', '');
            window.open(tsrc, '_blank', 'toolbar=0,scrollbars=0,resizable=1,location=0');
        }
    },
    CloseDetails:function() {
        $('uv_cardetails').setStyle('display','none');
        $('uv_list').setStyle('display','block');
    },
    end:true
};

var Dropper = {
    Initialize:function() {
        if(!$('dropper')) return false;
    },
    Toggle:function() {
        if(!$('dropper')) return false;
        var dropper = $('dropper');
        var lnk = $('dropper_act');
        if(lnk.hasClass('dropper_up')) {
            dropper.tween('top', -292);
            lnk.removeClass('dropper_up');
            lnk.addClass('dropper_dw');
        } else {
            dropper.tween('top', 0);
            lnk.removeClass('dropper_dw');
            lnk.addClass('dropper_up');
        }
    },
    end:true
};

var MPAcc = {
    ShowDetails:function(alnk) {
        MPAcc.HideDetails();
        var a = $(alnk);
        var idd = a.get('id').substr(4);
        $('accd_'+idd).setStyle('display','block');
        $('acc_close').setStyle('display','block');
    },
    HideDetails:function() {
        $('acc_close').setStyle('display','none');
        $$('.accdet').each(function(item) { item.setStyle('display','none'); });
    },
    end:true
};

var SoundPlay = {
    LoadSWF:function(id, swf)
    {
        var flashVars = { };
        var params = { swliveconntect:true, menu: false };
        var attributes = { id: 'sndplay', name: 'sndplay' };
        swfobject.embedSWF(swf, id, 1,1,"9.0.0","", flashVars, params, attributes);
    },
    PlaySound:function(sound) {
        alert(sound);
        $('sndplay').playSound(sound);
    },
    end:true
};

var CarSales = {
    Initialize:function() {
        $('carmenu').getElements('.cmitem').each(function(item) {
            var cmnor = item.getElement('.cmnor');
            var cmovr = item.getElement('.cmovr');
            item.addEvent('mouseover', function() {
                cmnor.setStyle('display','none');
                cmovr.setStyle('display','block');
            });
            item.addEvent('mouseout', function() {
                cmnor.setStyle('display','block');
                cmovr.setStyle('display','none');
            });
        });
    },
    end:true
};

var Form = {
    ToggleCheckbox:function(htmlEl, inputid) {
        var el_v = $(''+inputid);
        var el_s = $(htmlEl);
        var val = parseInt(el_v.get('value'));
        
        if(val == 0) {
            el_v.set('value',1);
            el_s.setStyle('background-position','0px -13px');
        } else {
            el_v.set('value',0);
            el_s.setStyle('background-position','0px 0px');
        }
    },
    ToggleSelect:function(htmlEl, inputid) {
        Form.hideAllDrops();
        var drop = $(inputid + '_dropdown');
        var el = $(htmlEl);
        var c = el.getCoordinates();
        drop.setStyle('left', c.left);
        drop.setStyle('top', c.top);
        // drop.setStyle('width', (c.width-2));
        if(el.hasClass('js_dropped')) {
            drop.setStyle('display','none');
            el.removeClass('js_dropped');
        } else {
            drop.setStyle('display','block');
            el.addClass('js_dropped');
        }
    },
    SelectDrop:function(htmlEl, inputid) {
        Form.hideAllDrops();
        var el = $(htmlEl);
        var iel = $(''+inputid);
        iel.set('value', el.get('html'));
    },
    hideAllDrops:function() {
        $$('.fe_drop').each(function(item) {
            item.setStyle('display','none');
        });
    },
    ValidateForm:function(htmlEl) {
        var frm = $(htmlEl);
        var req = frm.getElements('input.req');
        
        for(var i=0;i<req.length;i++)
        {
            try {
                if(req[i].hasClass('req_checkbox') && req[i].get('value')==0) {
                    var h = req[i].getPrevious('label').get('html');
                    alert('Va rugam sa bifati:\n'+h);
                    return false;
                } else if(req[i].hasClass('req_text') && req[i].get('value').length == 0) {
                    var h = req[i].getPrevious('label').get('html');
                    alert('Va rugam completati:\n'+h);
                    return false;
                } // TODO: must make validation for select also
            } catch(e) {
                alert('Eroare procesare date:\n' + e);
                return false;
            }
        }
        return true;
    },
    end:true
};

var BMWEvaluate = {
    Initialize:function() {
        var req = new Request({
            'url':'/evaluatebmw/rating/client5star/index.html',
            'method':'post',
            onSuccess: BMWEvaluate.onClientSuccess,
            onFailure: BMWEvaluate.onFailureFailure
        });
        req.send('mid=1');
    },
    onClientSuccess:function(txt) {
        var k = JSON.decode(txt);
        if(k.s > 0) {
            $('stretch-service').setStyle('width', (9+20*k.s));
            $('eval-service').addClass('jsclicked');
            $('points-service').set('html', k.s);
            $('eval-service-msg').set('html', 'Votul dumneavoastra este inregistrat.');
        }
        if(k.v > 0) {
            $('stretch-sales').setStyle('width', (9+20*k.v));
            $('eval-sales').addClass('jsclicked');
            $('points-sales').set('html', k.v);
            $('eval-sales-msg').set('html', 'Votul dumneavoastra este inregistrat.');
        }
        
        BMWEvaluate.InitMouse();
    },
    InitMouse:function() {
        $$('.stretch-mo').each(function(smo) {
            var item = smo.getParent('.stretch-hollow');

            smo.addEvent('mousemove', function(e) {
                if(smo.hasClass('jsclicked')) {
                    return;
                }
                var pos = item.getPosition();
                var mx = e.client.x - pos.x;
                var mr = mx;
                if(mr < 29) mr = 29;
                if(mr > 109) mr = 109;
                item.getElement('.stretch-fill').setStyle('width', mr);
                mr -=9; mr /= 20;
                mr = Math.round((10*mr)) / 10;
                if(mr < 0) mr = 0;
                if(mr > 5) mr = 5;
                item.getElement('.eval-points').set('html', mr);
            });
            smo.addEvent('click', function() {
                if(smo.hasClass('jsclicked')) {
                    alert('Evaluarea dumneavoastra este deja inregistrata in sistem.');
                    return;
                }
                smo.addClass('jsclicked');
                var d = '';
                if(smo.get('id') == 'eval-service') {
                    $('eval-service-msg').set('html', 'Va rugam asteptati...');
                    d = 'd=s';
                } else {
                    $('eval-sales-msg').set('html', 'Va rugam asteptati...');
                    d = 'd=v';
                }
                d += '&e='+item.getElement('.eval-points').get('html');
                BMWEvaluate.Send(d);
            });
        });
    },

    Send:function(dat) {
        var req = new Request({
            'url':'/evaluatebmw/rating/rate5star/index.html',
            'method':'post',
            onSuccess: BMWEvaluate.onSuccess,
            onFailure: BMWEvaluate.onFailure
        });
        req.send(dat);
    },
    onSuccess:function(txt) {
        var r = JSON.decode(txt);
        $('eval-'+r.w+'-msg').set('html', r.t);
    },
    onFailure:function() {
        alert('A aparut o eroare la inregistrarea votului dumneavoastra.\nVa rugam folositi una din modalitatile de contact pentru a ne comunica votul dumneavoastra');
    },
    InitScore:function() {
        var req = new Request({
            'url':'/evaluatebmw/rating/score5star/index.html',
            'method':'post',
            onSuccess:BMWEvaluate.onScoreSuccess,
            onFailure:BMWEvaluate.onScoreFailure
        });
        req.send('mip=1');
    },
    onScoreSuccess:function(txt) {
        var k = JSON.decode(txt);
        $('eval-sale-count').set('html', k.cv);
        $('eval-serv-count').set('html', k.cs);
        $('eval-sale-score').set('html', k.av);
        $('eval-serv-score').set('html', k.as);
        
        var star_wv = 12 * parseInt(k.av) + ((parseFloat(k.av) - parseInt(k.av)) * 10);
        var star_ws = 12 * parseInt(k.as) + ((parseFloat(k.as) - parseInt(k.as)) * 10);
        
        $('eval-sale-stars').setStyle('width', star_wv);
        $('eval-serv-stars').setStyle('width', star_ws);
    },
    onScoreFailure:function() {
        alert('Evaluarile nu au putut fi extrase momentan.\nVa rugam incercati mai tarziu.\nVa multumim');
    },
    end:true
}
