/*
* YerBox 0.5 - Javascript
*
* Copyright (c) 2009 Johann Heyne (mail@johannheyne.de)
*
* $Date: 2009.07.18
*
*/

function YerBoxSetup(variable) { 
    var arr = new Array();
    
    
    arr['box_path_root'] = '/de/wp-content/themes/wem/js/yerbox/';   /* use absolute path for sure like 'http://www.website.com/js/yerbox/' */
    arr['plugin_livequery'] = '';       /* set 'no' id the jQeryPlugin Livequery is allready loaded */
    arr['plugin_pngfix'] = '';          /* set 'no' id the jQeryPlugin pngFix is allready loaded */
    arr['default_theme'] = 'wem';   /* set the default theme-name */
    


    return arr[variable]; 
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// do not change following code


/// Load Plugins ////////////////////////////////////////////////////////////
    
    LoadPlugins();
    
    function LoadPlugins() {
        var $yer = jQuery.noConflict();
        $yer(document).ready(function(){
            if(YerBoxSetup('plugin_livequery') == '') $yer('body').prepend('<scr' + 'ipt src="' + YerBoxSetup('box_path_root') + 'plugins/jquery.livequery.js" type="text/javascript"></scr' + 'ipt>');
            if(YerBoxSetup('plugin_pngfix') == '') $yer('body').prepend('<scr' + 'ipt src="' + YerBoxSetup('box_path_root') + 'plugins/jquery.pngFix.pack.js" type="text/javascript"></scr' + 'ipt>');
        });
    }
    
    
/// Querystring ////////////////////////////////////////////////////////////
    
    function decodeQuerystring(qerrystring) {
        
        var params = new Array();
        var args = qerrystring.split('&');
        
        for (var i = 0; i < args.length; i++) {
            var pair = args[i].split('=');
            var name = decodeURIComponent(pair[0]);
            var value = (pair.length==2) ? decodeURIComponent(pair[1]) : name;
            
            if(value.charAt(0) == '[') {
                value = value.replace('[', '');
                value = value.replace(']', '');
                
                params[name] = new Array();
                
                var args2 = value.split(',');
                for (var i2 = 0; i2 < args2.length; i2++) {
                    
                    if(parseInt(args2[i2])) {
                        args2[i2] = parseInt(args2[i2]);
                    }else{
                        args2[i2] = args2[i2];
                    };
                    params[name][i2] = args2[i2];
                }
            }else{
            
                if(parseInt(value)) {
                    params[name] = parseInt(value);
                }else{
                    params[name] = value;
                };
                
            }
        }
        
        return params;
    }
    
    
/// Prepare DOM for IE6 ////////////////////////////////////////////////////////////
    
    /* YerBoxIE6(); */
    
    function YerBoxIE6() {
        var $yer = jQuery.noConflict();
        $yer(document).ready(function(){    

        /*  ------------------------------
            preparing for IE6 compatible background */
        
            var body_content = $yer('body').html();
            $yer('body').empty();
            $yer('body').prepend('<div id="yerbox_v5_viewport"></div>');
            $yer('#yerbox_v5_viewport').html(body_content);

            $yer('html').css({
                width: "100%",
                height: "100%",
                overflow: "hidden"
            });
            $yer('body').css({
                width: "100%",
                height: "100%",
                overflow: "hidden"
            });
            $yer('#yerbox_v5_viewport').css({
                width: "100%",
                height: "100%",
                overflow: "auto",
                position: "relative"
            });

        });
    }
    
    
/// YerBoxEach ////////////////////////////////////////////////////////////
    
    function YerBoxEach(click_id,querystring) {
        var $yer = jQuery.noConflict();
        $yer(document).ready(function(){
            $yer(click_id).each(function(){

                var id = $yer(this).attr('id');
                YerBox('click_id=#' + id + '&box_id=#' + id + '_yerbox&' + querystring);

            });
        });
    }
    
    
/// YerBoxImg ////////////////////////////////////////////////////////////

    function YerBoxImg(qerrystring) {

        var arg = Array();
        arg = decodeQuerystring(qerrystring);
        
        if(!arg['image_class']) arg['image_class'] = '';
        
        var $yer = jQuery.noConflict();
        $yer(document).ready(function(){
            
            var count = 0;
            var images = $yer('a img' + arg['image_class']);
            
            images.each(function() {
                
                var url = $yer(this).parent().attr('href');
                var title = $yer(this).attr('title');
                
                var check = 0;
                var tmp = url.split('.');
                for (var i = 0; i < tmp.length; i++) {
                    if(tmp[i] == 'jpg') check = 1;
                    if(tmp[i] == 'png') check = 1;
                    if(tmp[i] == 'gif') check = 1;
                }

                if(check == 1) {
                    count++;
                    $yer(this).parent().addClass("yerimage_open_" + count);
                
                    SetGalleryArray('list',count,'title',title);
                    SetGalleryArray('list',count,'url',url);
                
                    YerBox(qerrystring + '&click_id=.yerimage_open_' + count + '&yerimage=' + count);
                }
                
            });
            
            var images_count = count;
            
            SetGalleryArray('setup','','count',images_count);
            SetGalleryArray('setup','','runs',0);
            
        });
    }
    
    
    var gallery = Array();
    gallery['setup'] = Array();
    gallery['list'] = Array();
    function SetGalleryArray(type,id,name,value) {
        
        if(type == 'setup') {
            gallery[type][name] = value;
        }
        
        if(type == 'list') {
            if(!gallery[type][id]) gallery[type][id] = Array();
            gallery[type][id][name] = value;
        }
    }
    
    
    
    
/// YerBox ////////////////////////////////////////////////////////////
    
    function YerBox(qerrystring) {
        var width = 0;
        var height = 0;
        var arg = Array();
        arg = decodeQuerystring(qerrystring);
        var $yer = jQuery.noConflict();
        $yer(document).ready(function(){
            
            
           $yer(arg['click_id']).livequery('click', function(event) { 
                event.preventDefault(event);
                
                if(arg['yerimage']) {
                    if(width > 0) {
                        qerrystring_n = qerrystring + "&yerimage=" + arg['yerimage'] + ']';
                        YerBoxShow(qerrystring_n);
                    }else{
                        var newImage = new Image();
                        newImage.src = gallery['list'][arg['yerimage']]['url'];
                        newImage.onload = function () {
                            if (newImage.alreadyLoaded || newImage.width == 0) return true;
                            width = newImage.width;
                            height = newImage.height;
                            newImage.alreadyLoaded = true;
                            
                            SetGalleryArray('list',arg['yerimage'],'width',width);
                            SetGalleryArray('list',arg['yerimage'],'height',height);
                            
                            qerrystring_n = qerrystring + "&yerimage=" + arg['yerimage'] + ']';
                            YerBoxShow(qerrystring_n);
                        };
                    }
                }
                else
                {
                    YerBoxShow(qerrystring);
                }
            
            });
            
            
        });
    }
    
    
/// YerBoxShow ////////////////////////////////////////////////////////////
    
    function YerBoxShow(qerrystring) {
    
    /*  ------------------------------
        preset all variables
    */
        
        var data = Array();
        
        
        /* querystring */
        data['theme'] = '';
        data['click_id'] = '';
        data['box_id'] = '';
        data['box_hide'] = '';
        data['box_size'] = new Array();
        data['content_margin'] = new Array();
        data['box_align'] = new Array();
        data['box_anim'] = '';
        data['bg_window'] = new Array();
        data['close'] = new Array();
        data['cont_class'] = '';
        data['cont_url'] = '';
        data['box_bg_class'] = '';
        data['box_width'] = '';
        data['box_height'] = '';
        data['fu_content'] = '';
        data['yerimage'] = '';
        data['img_title_font'] = '';
        data['img_title_color'] = '';
        data['img_panel_show'] = '';
    
        /* theme-settings */
        data['theme_path'] = '';
        data['box_corner_type'] = '';
        data['box_edge_top'] = '';
        data['box_edge_side'] = '';
        data['box_edge_bottom'] = '';
        data['box_corner_width'] = '';
        data['box_corner_top_height'] = '';
        data['box_corner_bottom_height'] = '';
        data['box_bg_color'] = '';
        data['box_bg_opacity'] = '';
        data['box_content_theme'] = '';
        data['box_content_font_color'] = '';
        data['close_btn_width'] = '';
        data['close_btn_height'] = '';
        data['close_btn_top'] = '';
        data['close_btn_left'] = '';
        data['close_btn_right'] = '';
        data['close_btn_bottom'] = '';
        data['img_panel_top'] = '';
        data['img_panel_left'] = '';
        data['img_panel_right'] = '';
        data['img_panel_bottom'] = '';
        data['img_panel_width'] = '';
        data['img_panel_bg_color'] = '';
        data['img_panel_bg_opacity'] = '';
        data['img_title_align'] = '';
        data['img_title_padding_top'] = '';
        data['img_title_padding_right'] = '';
        data['img_title_padding_bottom'] = '';
        data['img_title_padding_left'] = '';
        
        /* script */
        data['box_path_root'] = '';
        data['arg'] = '';
        data['box_width_min'] = '';
        data['box_height_min'] = '';
        data['content_margin_arr'] = Array();
        data['content_margin_arr'] = '';
        data['box_path_img'] = '';
        data['window_width'] = '';
        data['window_height'] = '';
        data['box_content'] = '';
        data['box_dom'] = '';
        data['frame_width'] = '';
        data['frame_height'] = '';
        data['bg_left'] = '';
        data['bg_top'] = '';
        data['background_width'] = '';
        data['background_height'] = '';
        data['cont_height'] = '';
        data['factor'] = '';
        
        
    /*  ------------------------------
        load box setup 
    */

        data['box_path_root'] = YerBoxSetup('box_path_root');
    
    
    /*  ------------------------------
        get querystring-variable 
    */
    
        data['arg'] = decodeQuerystring(qerrystring);
        if(data['arg']['theme']) data['theme'] = data['arg']['theme'];
        if(data['arg']['click_id']) data['click_id'] = data['arg']['click_id'];
        if(data['arg']['box_id']) data['box_id'] = data['arg']['box_id'];
        if(data['arg']['box_hide']) data['box_hide'] = data['arg']['box_hide'];
        if(data['arg']['box_size']) data['box_size'] = data['arg']['box_size'];
        if(data['arg']['content_margin']) data['content_margin'] = data['arg']['content_margin'];
        if(data['arg']['box_align']) data['box_align'] = data['arg']['box_align'];
        if(data['arg']['box_anim']) data['box_anim'] = data['arg']['box_anim'];
        if(data['arg']['bg_window']) data['bg_window'] = data['arg']['bg_window'];
        if(data['arg']['close']) data['close'] = data['arg']['close'];
        if(data['arg']['cont_class']) data['cont_class'] = data['arg']['cont_class'];
        if(data['arg']['cont_url']) data['cont_url'] = data['arg']['cont_url'];
        if(data['box_size'][0]) data['box_width'] = data['box_size'][0];
        if(data['box_size'][1]) data['box_height'] = data['box_size'][1];
        if(data['arg']['content']) data['fu_content'] = data['arg']['content'];
        if(data['arg']['content_window']) data['content_window'] = data['arg']['content_window'];
        if(data['arg']['yerimage']) data['yerimage'] = data['arg']['yerimage'];
        if(data['arg']['img_title_font']) data['img_title_font'] = data['arg']['img_title_font'];
        if(data['arg']['img_title_color']) data['img_title_color'] = data['arg']['img_title_color'];
        if(data['arg']['img_panel_show']) data['img_panel_show'] = data['arg']['img_panel_show'];
        
        
        if(data['box_id'] == '') data['box_id'] = data['click_id'] + '_box';
        
    /*  ------------------------------
        fire yerbox_v5 on click 
    */
    
        var $yer = jQuery.noConflict();
        $yer(document).ready(function(){
        
        
        /*  ------------------------------
            hide yerbox_v5-content layer 
        */

            if(data['box_id'] != '' && data['box_hide'] == '') {
                $yer(data['box_id']).css({
                    display: 'none'
                });
            }
        
        /*  ------------------------------
            run click event 
        */
            
            
            /*  ------------------------------
                remove yerbox_v5_bg_window here because on close it will left some backgroundareas in IE8 
            */
        
                if(data['yerimage'] == '') {
                    $yer('#yerbox_v5_bg_window').remove();
                    
                }else{
                    $yer('.yerbox_v5').remove();
                }
            
            
            /*  ------------------------------
                load theme setup 
            */

                if(data['theme'] == '') data['theme'] = YerBoxSetup('default_theme');
                if(data['theme'] == '') data['theme'] == 'default';
                $yer('body').prepend('<scr' + 'ipt src="' + data['box_path_root'] + 'themes/' + data['theme'] + '/config.js" type="text/javascript"></scr' + 'ipt>');
            
            
            /*  ------------------------------
                get theme-setup 
            */
            
                /* basic theme-settings */
            
                data['theme_path'] =                YerBoxTheme('path');
                data['box_corner_type'] =           YerBoxTheme('box_corner_type');
                data['box_edge_top'] =              YerBoxTheme('box_edge_top');
                data['box_edge_side'] =             YerBoxTheme('box_edge_side');
                data['box_edge_bottom'] =           YerBoxTheme('box_edge_bottom');
                data['box_corner_width'] =          YerBoxTheme('box_corner_width');
                data['box_corner_top_height'] =     YerBoxTheme('box_corner_top_height');
                data['box_corner_bottom_height'] =  YerBoxTheme('box_corner_bottom_height');
                data['box_bg_color'] =              YerBoxTheme('box_bg_color');
                data['box_bg_opacity'] =            YerBoxTheme('box_bg_opacity');
                data['box_content_theme'] =         YerBoxTheme('content');
                data['box_content_font_color'] =    YerBoxTheme('box_content_font_color');
                data['close_btn_width'] =           YerBoxTheme('close_btn_width');
                data['close_btn_height'] =          YerBoxTheme('close_btn_height');
                data['close_btn_top'] =             YerBoxTheme('close_btn_top');
                data['close_btn_left'] =            YerBoxTheme('close_btn_left');
                data['close_btn_right'] =           YerBoxTheme('close_btn_right');
                data['close_btn_bottom'] =          YerBoxTheme('close_btn_bottom');
                data['img_panel_top'] =             YerBoxTheme('img_panel_top');
                data['img_panel_left'] =            YerBoxTheme('img_panel_left');
                data['img_panel_right'] =           YerBoxTheme('img_panel_right');
                data['img_panel_bottom'] =          YerBoxTheme('img_panel_bottom');
                data['img_panel_width'] =           YerBoxTheme('img_panel_width');
                data['img_panel_bg_color'] =        YerBoxTheme('img_panel_bg_color');
                data['img_panel_bg_opacity'] =      YerBoxTheme('img_panel_bg_opacity');
                data['img_title_align'] =           YerBoxTheme('img_title_align');
                data['img_title_padding_top'] =     YerBoxTheme('img_title_padding_top');
                data['img_title_padding_right'] =   YerBoxTheme('img_title_padding_right');
                data['img_title_padding_bottom'] =  YerBoxTheme('img_title_padding_bottom');
                data['img_title_padding_left'] =    YerBoxTheme('img_title_padding_left');
            
            
                /* theme-settings if no setup via querystring */
            
                if(!data['box_align'][0]) data['box_align'][0] =                        YerBoxTheme('box_align_horizontal');
                if(!data['box_align'][1]) data['box_align'][1] =                        YerBoxTheme('box_align_vertical');
                if(!data['close'][0]) data['close'][0] =                                YerBoxTheme('close_btn_status');
                if(!data['close'][1]) data['close'][1] =                                YerBoxTheme('close_btn_text');
                if(!data['close'][2]) data['close'][2] =                                YerBoxTheme('close_btn_class');
            
                if(!data['bg_window'][0]) data['bg_window'][0] =                        YerBoxTheme('window_bg_color');
                if(!data['bg_window'][1]) data['bg_window'][1] =                        YerBoxTheme('window_bg_opacity');
                if(!data['bg_window'][2]) data['bg_window'][2] =                        YerBoxTheme('window_bg_close');
                if(data['content_margin'][0] == null) data['content_margin'][0] =       YerBoxTheme('content_margin_top');
                if(data['content_margin'][1] == null) data['content_margin'][1] =       YerBoxTheme('content_margin_right');
                if(data['content_margin'][2] == null) data['content_margin'][2] =       YerBoxTheme('content_margin_bottom');
                if(data['content_margin'][3] == null) data['content_margin'][3] =       YerBoxTheme('content_margin_left');
                if(data['box_width'] == '') data['box_width'] =                         YerBoxTheme('box_size_width');
                if(data['box_height'] == '') data['box_height'] =                       YerBoxTheme('box_size_height');

                if(data['img_title_font'] == '') data['img_title_font'] =               YerBoxTheme('img_title_font');
                if(data['img_title_color'] == '') data['img_title_color'] =             YerBoxTheme('img_title_color');
                if(data['img_panel_show'] == '') data['img_panel_show'] =               YerBoxTheme('img_panel_show');
                
                if(data['arg']['content_window']) {
                    if(data['arg']['content_window'][0]) data['box_bg_color'] =     data['arg']['content_window'][0];
                    if(data['arg']['content_window'][1]) data['box_bg_opacity'] =   data['arg']['content_window'][1];
                    if(data['arg']['content_window'][2]) data['box_bg_class'] =     data['arg']['content_window'][2];
                }
            

            /*  ------------------------------
                defaults 
            */
            
                if(data['box_id'] == '') data['box_id'] = 'box';
                if(data['box_width'] == '') data['box_width'] = 600;
            
                data['box_width_min'] = (data['box_corner_width'] - data['box_edge_side']) * 2;
                data['box_height_min'] = (data['box_corner_top_height'] - data['box_edge_top']) + (data['box_corner_bottom_height'] - data['box_edge_bottom']);

                if(data['box_width'] < data['box_width_min']) data['box_width'] = data['box_width_min'];
            
                if(data['content_margin'] == '') data['content_margin_arr'] = [0, 0, 0, 0];
                if(data['content_margin'] != '') data['content_margin_arr'] = data['content_margin'];
            
                data['content_margin_arr'][0] = parseInt(data['content_margin_arr'][0]);
                data['content_margin_arr'][1] = parseInt(data['content_margin_arr'][1]);
                data['content_margin_arr'][2] = parseInt(data['content_margin_arr'][2]);
                data['content_margin_arr'][3] = parseInt(data['content_margin_arr'][3]);
            
                data['box_path_img'] = data['box_path_root'] + 'themes/' + data['theme_path'] + '/img/';
            
            /*  ------------------------------
                get window size 
            */
                
                /* all browsers exept IE */
                if(window.innerWidth) {
                    data['window_width'] = window.innerWidth;
                    data['window_height'] = window.innerHeight;
                }
                /* for IE with doctype */
                else if(document.documentElement && document.documentElement.clientWidth) {
                    data['window_width'] = document.documentElement.clientWidth;
                    data['window_height'] = document.documentElement.clientHeight;
                }
                /* for IE without doctype */
                else if(document.body.clientWidth) {
                    data['window_width'] = document.body.clientWidth;
                    data['window_height'] = document.body.clientHeight;
                }
                
                
            /*  ------------------------------
                get content 
            */
                
                if(data['box_id'] != '') data['box_content'] = $yer(data['box_id']).html();
                if(data['box_content'] == null) data['box_content'] = '';
                data['box_content'] = data['box_content'] + data['fu_content'];
                if(data['box_content'] == '') data['box_content'] = data['box_content_theme'];
                
                
           /*  ------------------------------
                set box dom and content 
            */
                
                data['box_dom'] = '';
                if(gallery['setup']['runs'] != 1) data['box_dom'] += '<div id="yerbox_v5_bg_window" class="yerbox_v5_close_click"></div>';
                data['box_dom'] += '<div class="yerbox_v5">';
                data['box_dom'] += '<div class="yerbox_v5_panel"></div>';
                data['box_dom'] += '<div class="yerbox_v5_viewport ' + data['cont_class'] + '">';
                data['box_dom'] += '<div class="yerbox_v5_content"></div></div>';
                if(data['close'][0] == 'y') data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_close ' + data['close'][2] + '"><a class="yerbox_v5_close_click" href=""><!-- -->' + data['close'][1] + '</a></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_c1"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_c2"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_c3"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_c4"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_e1"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_e2"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_e3"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_e4"><!-- --></div>';
                data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_bg ' + data['box_bg_class'] + '"><!-- --></div>';
                if(data['bg_window'][2] == 'y') data['box_dom'] += '<div class="iepngfix ie6 yerbox_v5_close_area yerbox_v5_close_click"><!-- --></div>';
                data['box_dom'] += '</div>';
                
                
                $yer('body').prepend(data['box_dom']);
                
                
                if(!data['yerimage'] == '') {
                    SetGalleryArray('setup','','runs',1);
                }
            
            /*  ------------------------------
                load content from external page 
            */
            
                if(data['cont_url'] != '') {
                    $.ajax({
                        type: "get",
                        url: data['cont_url'],
                        success: function(content){
                            $yer('.yerbox_v5 .yerbox_v5_content').html(content);
                        }
                    });
                }
            
            
            /*  ------------------------------
                background window 
            */
            
                if(data['bg_window']) {
                    $yer('#yerbox_v5_bg_window').css({
                        position: "absolute",
                        width: '100%',
                        height: '100%',
                        "z-index": "9999",
                        "background-color": data['bg_window'][0],
                        opacity: 0,
                        visibility: "visible"
                    });
                
                    if(data['bg_window'][2] == 'y') {
                        $yer('#yerbox_v5_bg_window').css({
                            cursor: "pointer"
                        });
                    }
                
                    $yer('#yerbox_v5_bg_window').css({
                        opacity: data['bg_window'][1]
                    });
                
                    /* hide box by click on background window */
                
                    if(data['bg_window'][2] == 'y') {
                        $yer('.yerbox_v5_close_click').click(function () {
                            $yer('.yerbox_v5').css({
                                display: "none"
                            });
                            $yer('#yerbox_v5_bg_window').css({
                                opacity: "1"
                            });
                            $yer('#yerbox_v5_bg_window').css({
                                display: "none"
                            });
                            $yer('.yerbox_v5').remove();
                            SetGalleryArray('setup','','runs',0);
                        });
                    }
                }
            
            /*  ------------------------------
                set content to dom 
            */
            
                if(data['yerimage'] == '') {
                    if(data['box_id'] != '') $yer('.yerbox_v5 .yerbox_v5_content').html(data['box_content']);
                }
                
            /*  ------------------------------
                box frame 
            */
            
                /* set image size plus margin */
                if(data['yerimage'] != '') {
                    data['box_width'] = gallery['list'][data['yerimage']]['width'] + data['content_margin_arr'][1] + data['content_margin_arr'][3];
                    data['box_height'] = gallery['list'][data['yerimage']]['height'] + data['content_margin_arr'][0] + data['content_margin_arr'][2];
                }
            
                /* fit box height to content */
                if(data['box_height'] == 0) {
                    $yer('.yerbox_v5 .yerbox_v5_content').css({
                        width: (data['box_width'] - data['content_margin_arr'][1] - data['content_margin_arr'][3])
                    });
                    data['cont_height'] = $yer('.yerbox_v5 .yerbox_v5_content').height();
                    data['box_height'] = (data['cont_height'] + data['content_margin_arr'][0] + data['content_margin_arr'][2]);
                
                    /* fixes height in Safari/FireFox/IE8 */
                    if(!data['yerimage']) {
                        data['cont_height'] = data['cont_height'] + 2;
                        data['box_height'] = data['box_height'] + 2;
                    }
                }
            
            
                /* set min box_height if nesesary */
                if(data['box_height'] < data['box_height_min']) data['box_height'] = data['box_height_min'];
            
                /* if box_frame higher than window, change box_height to fit box_frame in window height */
                if((data['box_height'] + data['box_edge_top'] + data['box_edge_bottom']) > data['window_height']) data['box_height'] = data['window_height'] - data['box_edge_top'] - data['box_edge_bottom'];
                if((data['box_width'] + data['box_edge_side'] + data['box_edge_side']) > data['window_width']) data['box_width'] = data['window_width'] - data['box_edge_side'] - data['box_edge_side'];
            
            
            /*  ------------------------------
                YerImage 
            */
            
                if(data['yerimage'] != '') {
                
                    /* fit to height */
                    if((gallery['list'][data['yerimage']]['height'] + data['content_margin_arr'][0] + data['content_margin_arr'][2]) > data['box_height']) {
                        data['factor'] = (data['box_height'] - (data['content_margin_arr'][0] + data['content_margin_arr'][2])) / (gallery['list'][data['yerimage']]['height']);
                        gallery['list'][data['yerimage']]['width'] = gallery['list'][data['yerimage']]['width'] * data['factor'];
                        gallery['list'][data['yerimage']]['height'] = gallery['list'][data['yerimage']]['height'] * data['factor'];
                        data['box_width'] = gallery['list'][data['yerimage']]['width'] + data['content_margin_arr'][1] + data['content_margin_arr'][3];
                    }
                
                    /* fit to width */
                    if((gallery['list'][data['yerimage']]['width'] + data['content_margin_arr'][1] + data['content_margin_arr'][3] + data['box_edge_side'] + data['box_edge_side']) > data['window_width']) {
                        data['factor'] = data['window_width'] / (gallery['list'][data['yerimage']]['width'] + data['content_margin_arr'][1] + data['content_margin_arr'][3] + data['box_edge_side'] + data['box_edge_side']);
                        gallery['list'][data['yerimage']]['width'] = gallery['list'][data['yerimage']]['width'] * data['factor'];
                        gallery['list'][data['yerimage']]['height'] = gallery['list'][data['yerimage']]['height'] * data['factor'];
                        data['box_width'] = gallery['list'][data['yerimage']]['width'] + data['content_margin_arr'][1] + data['content_margin_arr'][3];
                        data['box_height'] = gallery['list'][data['yerimage']]['height'] + data['content_margin_arr'][0] + data['content_margin_arr'][2];
                    }
                    
                    gallery['list'][data['yerimage']]['width'] = parseInt(gallery['list'][data['yerimage']]['width']);
                    gallery['list'][data['yerimage']]['height'] = parseInt(gallery['list'][data['yerimage']]['height']);
                    
                    
                    /* set box_content */
                    /* add two transparent clickareas for next and back click events */
                    data['box_content'] = '<img id="yerimage_next_' + data['yerimage'] + '" src="' + gallery['list'][data['yerimage']]['url'] + '" width="' + gallery['list'][data['yerimage']]['width'] + '" height="' + gallery['list'][data['yerimage']]['height'] + '" alt="" />';
                    if(data['box_id'] != '') $yer('.yerbox_v5 .yerbox_v5_content').html(data['box_content']);
                    
                    /* set navi */
                    var next = data['yerimage'] + 1;
                    if(next > gallery['setup']['count']) next = 1;
                    var back = data['yerimage'] - 1;
                    if(back < 1) back = gallery['setup']['count'];
                    
                    var url_next = gallery['list'][next]['url'];
                    var url_back = gallery['list'][back]['url'];
                    
                    
                    $yer('#yerimage_next_' + data['yerimage']).addClass("yerimage_open_" + next);
                    
                    
                    $yer('#yerimage_next_' + data['yerimage']).attr({
                        title: "nächstes Bild"
                    });
                    $yer('#yerimage_next_' + data['yerimage']).css({
                        cursor: "pointer"
                    });
                    $yer('.yerbox_v5_content').css({
                        "line-height": "1em",
                        font: "1em Arial, sans-serif"
                    });
                    $yer('.yerbox_v5_viewport').css({
                        "line-height": 0,
                        font: "0px Arial, sans-serif"
                    });
                    
                    if(data['img_panel_show'] == 'y') {
                        /* set subtitle */
                        if(data['yerimage'] != '') $yer('.yerbox_v5_panel').html('<span class="yerbox_v5_panel_title">' + gallery['list'][data['yerimage']]['title'] + '</span>');
                    
                        /* set panimg_title_color */
                        if(data['img_panel_left'] == '') data['img_panel_left'] = data['box_edge_side'];
                        if(data['img_panel_width'] == '') data['img_panel_width'] = data['box_width'];
                        if(data['img_title_align'] == '') data['img_title_align'] = 'center';
                    
                    
                        data['img_panel_width'] = data['img_panel_width'] - data['img_title_padding_left'] - data['img_title_padding_right'];
                    
                        $yer('.yerbox_v5_panel').css({
                            position: "absolute",
                            width: data['img_panel_width'] + "px",
                            font: data['img_title_font'],
                            color: data['img_title_color'],
                            "text-align": data['img_title_align'],
                            "background-url": 'url(' + data['box_path_root'] + 'themes/' + data['theme'] + '/img/panel_bg.png)',
                            "background-color": data['img_panel_bg_color'],
                            opacity: data['img_panel_bg_opacity'],
                            padding: data['img_title_padding_top'] + 'px ' + data['img_title_padding_right'] + 'px ' + data['img_title_padding_bottom'] + 'px ' + data['img_title_padding_left'] + 'px',
                            "z-index": 4
                        });
                        if(data['img_panel_top'] != '') $yer('.yerbox_v5_panel').css({top: data['img_panel_top'] + "px"});
                        if(data['img_panel_left'] != '') $yer('.yerbox_v5_panel').css({left: data['img_panel_left'] + "px"});
                        if(data['img_panel_right'] != '') $yer('.yerbox_v5_panel').css({right: data['img_panel_right'] + "px"});
                        if(data['img_panel_bottom'] != '') $yer('.yerbox_v5_panel').css({bottom: data['img_panel_bottom'] + "px"});
                    
                        
                    }
                }
            
            /*  ------------------------------
                parce all integers
            */
            
                data['box_width'] = parseInt(data['box_width']);
                data['box_height'] = parseInt(data['box_height']);
            
            
            /*  ------------------------------
                set frame width 
            */ 
            
                data['frame_width'] = data['box_width'] + data['box_edge_side'] + data['box_edge_side'];
                data['frame_height'] = data['box_height'] + data['box_edge_top'] + data['box_edge_bottom'];
                
            
            
            /*  ------------------------------
                set content to dom 
            */
            
                if($yer.browser.msie) {
                    $yer('.yerbox_v5').css({
                        position: "absolute",
                        width: data['frame_width'] + "px",
                        height: data['frame_height'] + "px",
                        //overflow: "hidden",
                        "z-index": "99999",
                        visibility: "visible"
                    });
                }else{
                    $yer('.yerbox_v5').css({
                        position: "absolute",
                        width: data['frame_width'] + "px",
                        height: data['frame_height'] + "px",
                        //overflow: "hidden",
                        "z-index": "99999",
                        visibility: "visible",
                        opacity: 0
                    });

                    if(data['box_anim']) {
                        $yer('.yerbox_v5').animate({
                            opacity: 1
                        },data['box_anim']);
                    }else{
                        $yer('.yerbox_v5').css({
                            opacity: 1
                        });
                    }
                }
                if(!data['box_align'][0]) {
                    $yer('.yerbox_v5').css({
                        left: "50%",
                        "margin-left": -data['frame_width'] / 2
                    });
                }
                if(!data['box_align'][1]) {
                    $yer('.yerbox_v5').css({
                        top: "50%",
                        "margin-top": -data['frame_height'] / 2
                    });
                }
                if(data['box_align'][0] == '') {
                    $yer('.yerbox_v5').css({
                        left: "50%",
                        "margin-left": -data['frame_width'] / 2
                    });
                }
                if(data['box_align'][1] == '') {
                    $yer('.yerbox_v5').css({
                        top: "50%",
                        "margin-top": -data['frame_height'] / 2
                    });
                }
            
                if(data['box_align'][0] == 'center') {
                    $yer('.yerbox_v5').css({
                        left: "50%",
                        "margin-left": -data['frame_width'] / 2
                    });
                }
                if(data['box_align'][0] == 'left') {
                    $yer('.yerbox_v5').css({
                        left: "0"
                    });
                }
                if(data['box_align'][0] == 'right') {
                    $yer('.yerbox_v5').css({
                        right: "0"
                    });
                }
            
                if(data['box_align'][1] == 'center') {
                    $yer('.yerbox_v5').css({
                        top: "50%",
                        "margin-top": -data['frame_height'] / 2
                    });
                }
                if(data['box_align'][1] == 'top') {
                    $yer('.yerbox_v5').css({
                        top: "0"
                    });
                }
                if(data['box_align'][1] == 'bottom') {
                    $yer('.yerbox_v5').css({
                        bottom: "0"
                    });
                }
            
            
            /*  ------------------------------
                close click area 
            */
            
                $yer('.yerbox_v5_close_area').css({
                    position: "absolute",
                    width: data['frame_width'] + "px",
                    height: data['frame_height'] + "px",
                    "z-index": "1",
                    visibility: "visible"
                });
            
                if(data['bg_window'][2] == 'y') {
                    $yer('.yerbox_v5_close_area').css({
                        cursor: "pointer"
                    });
                }
            
            
            /*  ------------------------------
                box viewport 
            */        
            
                $yer('.yerbox_v5 .yerbox_v5_viewport').css({
                    position: "absolute",
                    left: data['box_edge_side'] + "px",
                    top: data['box_edge_top'] + "px",
                    width: data['box_width'] + "px",
                    height: data['box_height'] + "px",
                    overflow: "auto",
                    "z-index": 3
                });
            
            /*  ------------------------------
                box content 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_content').css({
                    "margin-left": data['content_margin_arr'][3] + "px",
                    "margin-top": data['content_margin_arr'][0] + "px",
                    width: (data['box_width'] - data['content_margin_arr'][1] - data['content_margin_arr'][3]) + "px",
                    color: data['box_content_font_color'],
                    "padding-bottom": data['content_margin_arr'][2] + "px"
                });
            
            /*  ------------------------------
                box background 
            */
            
                if(data['box_corner_type'] == 'angular') {
                    data['bg_left'] = data['box_corner_width'] - (data['box_corner_width'] - data['box_edge_side']);
                    data['bg_top'] = data['box_corner_top_height'] - (data['box_corner_top_height'] - data['box_edge_top']);
                    data['background_width'] = data['frame_width'] - (data['box_edge_side'] * 2);
                    data['background_height'] = data['frame_height'] - (data['box_edge_top']) - (data['box_edge_bottom']);
                }
            
                if(data['box_corner_type'] == 'rounded') {
                    data['bg_left'] = data['box_corner_width'];
                    data['bg_top'] = data['box_corner_top_height'];
                    data['background_width'] = data['frame_width'] - (data['box_corner_width'] * 2);
                    data['background_height'] = data['frame_height'] - data['box_corner_top_height'] - data['box_corner_bottom_height'];
                }
            
            
                $yer('.yerbox_v5 .yerbox_v5_bg').css({
                    position: "absolute",
                    left: data['bg_left'] + "px",
                    top: data['bg_top'] + "px",
                    width: data['background_width'] + "px",
                    height: data['background_height'] + "px",
                    background: data['box_bg_color'] + ' url(' + data['box_path_root'] + 'themes/' + data['theme'] + '/img/bg.png)',
                    opacity: data['box_bg_opacity'],
                    "z-index": 2
                });
            

            /*  ------------------------------
                close button 
            */
            
                var yerbox_v5_close = $yer('.yerbox_v5_close');
                yerbox_v5_close.css({
                    position: "absolute",
                    "z-index": "100000",
                    width: data['close_btn_width'] + 'px',
                    height: data['close_btn_height'] + 'px',
                    cursor: "pointer",
                    background: 'url(' + data['box_path_root'] + 'themes/' + data['theme'] + '/img/close.png) no-repeat'
                });
            
                if(data['close_btn_top'] != '') {
                    yerbox_v5_close.css({
                        top: data['close_btn_top'] + 'px'
                    });
                }
                if(data['close_btn_left'] != '') {
                    yerbox_v5_close.css({
                        left: data['close_btn_left'] + 'px'
                    });
                }
                if(data['close_btn_right'] != '') {
                    yerbox_v5_close.css({
                        right: data['close_btn_right'] + 'px'
                    });
                }
                if(data['close_btn_bottom'] != '') {
                    yerbox_v5_close.css({
                        bottom: data['close_btn_bottom'] + 'px'
                    });
                }
            
                $yer('.yerbox_v5_close').click(function (event) {
                    event.preventDefault(event);
                    
                        if($yer.browser.msie) {
                            $yer('.yerbox_v5').css({
                                display: "none"
                            });
                            $yer('#yerbox_v5_bg_window').css({
                                display: "none"
                            });
                            $yer('.yerbox_v5').remove();
                        }else{
                            if(data['box_anim']) {
                                $yer('.yerbox_v5').animate({
                                    opacity: 0
                                },data['box_anim']);
                                $yer('#yerbox_v5_bg_window').animate({
                                    opacity: 0
                                },data['box_anim']);
                                $yer('.yerbox_v5').remove();
                            }else{
                                $yer('.yerbox_v5').css({
                                    display: "none"
                                });
                                $yer('#yerbox_v5_bg_window').css({
                                    display: "none"
                                });
                                $yer('.yerbox_v5').remove();
                            }
                        }
                        
                        SetGalleryArray('setup','','runs',0);
                });
            
            
            /*  ------------------------------
                corner 1 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_c1').css({
                    position: "absolute",
                    left: "0px",
                    top: "0px",
                    width: data['box_corner_width'] + "px",
                    height: data['box_corner_top_height'] + "px",
                    background: 'url(' + data['box_path_img'] + 'c1.png)'
                });
            
            
            /*  ------------------------------
                corner 2 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_c2').css({
                    position: "absolute",
                    left: (data['frame_width'] - data['box_corner_width']) + "px",
                    top: "0px",
                    width: data['box_corner_width'] + "px",
                    height: data['box_corner_top_height'] + "px",
                    background: "url(" + data['box_path_img'] + "c2.png)"
                });
            
            
            /*  ------------------------------
                corner 3 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_c3').css({
                    position: "absolute",
                    left: (data['frame_width'] - data['box_corner_width']) + "px",
                    top: (data['frame_height'] - data['box_corner_bottom_height']) + "px",
                    width: data['box_corner_width'] + "px",
                    height: data['box_corner_bottom_height'] + "px",
                    background: "url(" + data['box_path_img'] + "c3.png)"
                });
            
            
            /*  ------------------------------
                corner 4 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_c4').css({
                    position: "absolute",
                    left: "0px",
                    top: (data['frame_height'] - data['box_corner_bottom_height']) + "px",
                    width: data['box_corner_width'] + "px",
                    height: data['box_corner_bottom_height'] + "px",
                    background: "url(" + data['box_path_img'] + "c4.png)"
                });
            
            
            /*  ------------------------------
                edge 1 
            */

                $yer('.yerbox_v5 .yerbox_v5_e1').css({
                    position: "absolute",
                    left: data['box_corner_width'] + "px",
                    top: "0px",
                    width: (data['frame_width'] - (data['box_corner_width'] * 2)) + "px",
                    height: data['box_corner_top_height'] + "px",
                    background: "url(" + data['box_path_img'] + "e1.png)"
                });
            
            
            /*  ------------------------------
                edge 2 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_e2').css({
                    position: "absolute",
                    left: (data['frame_width'] - data['box_corner_width']) + "px",
                    top: data['box_corner_top_height'] + "px",
                    width: data['box_corner_width'] + "px",
                    height: (data['frame_height'] - data['box_corner_top_height'] - data['box_corner_bottom_height']) + "px",
                    background: "url(" + data['box_path_img'] + "e2.png)",
                    "line-height": 0
                });
            
            
            /*  ------------------------------
                edge 3 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_e3').css({
                    position: "absolute",
                    left: data['box_corner_width'] + "px",
                    top: (data['frame_height'] - data['box_corner_bottom_height']) + "px",
                    width: (data['frame_width'] - (data['box_corner_width'] * 2)) + "px",
                    height: data['box_corner_bottom_height'] + "px",
                    background: "url(" + data['box_path_img'] + "e3.png)"
                });
            
            
            /*  ------------------------------
                edge 4 
            */
            
                $yer('.yerbox_v5 .yerbox_v5_e4').css({
                    position: "absolute",
                    left: "0px",
                    top: data['box_corner_top_height'] + "px",
                    width: data['box_corner_width'] + "px",
                    height: (data['frame_height'] - data['box_corner_top_height'] - data['box_corner_bottom_height']) + "px",
                    background: "url(" + data['box_path_img'] + "e4.png)",
                    "line-height": 0
                });
            
                $yer('.yerbox_v5').pngFix();
        });
    }




