Ad Widget

Collapse

Version Pre 1.7.0 Build 6487 - IE6 Calendar Bug in Graphs

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Palmertree
    Senior Member
    • Sep 2005
    • 746

    #1

    Version Pre 1.7.0 Build 6487 - IE6 Calendar Bug in Graphs

    This was fixed in previous fix but broke again in the latest Build 6487. The calendar icon in the left bottom corner for graphs works in Firefox and IE7 but does not show up in IE6.
  • Palmertree
    Senior Member
    • Sep 2005
    • 746

    #2
    Tried to figure it out but with no luck.

    The only thing that I can think of is that there is a reference to both "scroll_calendar" and "scroll_cntnr". Should "scroll_calendar" be changed to "scroll_cntnr"?

    Code:
    charts.php:             $scroll_div->addOption('id','scroll_cntnr');
    history.php:                    $scroll_div->addOption('id','scroll_cntnr');
    httpdetails.php:        $scroll_div->addOption('id','scroll_cntnr');
    js/sbinit.js:   addListener($('scroll_calendar'),'click',gmshow,false);
    js/sbinit.js:           try{$('scroll_calendar').setStyle({'border' : '0px white solid;'});}
    js/gmenu.js:            var gmenu_icon_pos = getPosition($('scroll_calendar'));
    js/scrollbar.js:        var scr_cntnr = $('scroll_cntnr');
    js/scrollbar.js:        img.setAttribute('id','scroll_calendar');
    js/scrollbar.js:        <img id="scroll_calendar" src="img/cal.gif" width="16" height="12" border="0" alt="GM" />
    screens.php:    $scroll_div->addOption('id','scroll_cntnr');
    slides.php:     $scroll_div->addOption('id','scroll_cntnr');
    styles/bar.css:img#scroll_calendar{
    styles/bar.css:img#scroll_calendar:hover{

    Comment

    • Palmertree
      Senior Member
      • Sep 2005
      • 746

      #3
      Found the Solution

      IE6 has an issue when you have a div element (with hasLayout) with absolute position next to a div floating element. In this case with the graphs, the absolute postition element was the scroll_calendar element (cal.gif) and the floating element was the left arrow on the scroll bar. To fix the IE6 bug you have to put an empty div element in between. Here is a link if you want to read more about it. You can open the page in IE7 and IE6 to see the missing boxes: http://www.brunildo.org/test/IE_raf3.html

      Below you find the patch for Zabbix which will create an empty div element between the scroll_calendar and the left arrow (float):

      Code:
      diff -ruN zabbix-original/frontends/php/js/scrollbar.js zabbix/frontends/php/js/scrollbar.js
      --- zabbix-original/frontends/php/js/scrollbar.js       2009-01-04 23:13:14.000000000 -0500
      +++ zabbix/frontends/php/js/scrollbar.js        2009-01-06 19:51:43.000000000 -0500
      @@ -618,6 +618,9 @@
              img.setAttribute('alt','cal');
              img.setAttribute('id','scroll_calendar');
      
      +        var div = document.createElement('div');
      +        this.scrl_scroll.appendChild(div);
      +
              this.scrl_tabinforight = document.createElement('div');
              this.scrl_scroll.appendChild(this.scrl_tabinforight);
      Last edited by Palmertree; 07-01-2009, 03:28.

      Comment

      • Aly
        ZABBIX developer
        • May 2007
        • 1126

        #4
        PHP Code:
            if(IE){
                var 
        div document.createElement('div');
                
        this.scrl_scroll.appendChild(div);
            } 
        Will be included with next commit to trunk.
        Zabbix | ex GUI developer

        Comment

        Working...