OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-meta                     Date:   11-Mar-2006 14:08:18
  Branch: HEAD                             Handle: 2006031113081700

  Modified files:
    openpkg-meta            canvas-nav-bar.php

  Log:
    fix navigation bar dynamic processing

  Summary:
    Revision    Changes     Path
    1.9         +19 -17     openpkg-meta/canvas-nav-bar.php
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-meta/canvas-nav-bar.php
  ============================================================================
  $ cvs diff -u -r1.8 -r1.9 canvas-nav-bar.php
  --- openpkg-meta/canvas-nav-bar.php   9 Mar 2006 19:12:10 -0000       1.8
  +++ openpkg-meta/canvas-nav-bar.php   11 Mar 2006 13:08:17 -0000      1.9
  @@ -89,21 +89,12 @@
     }
     $html = implode("\n", $html);
     $html = preg_replace("/(<li id=\"navbar.$path\")/s", "$1 
class=\"active\"", $html);
  -  #$html = preg_replace("/(<li id=\"(.+?)\"[^>]*><a)/s", "$1 
onMouseOver=\"navbar_over('$2'); return true;\" onMouseOut=\"navbar_out('$2'); 
return true;\"", $html);
     divert("canvas-nav");
     echo "<div class=\"navbar\" id=\"navbar\">\n";
     echo $html;
     echo "</div>\n";
   </script>
   
  -<script type="text/javascript">
  -var nodes = DOM.getNode("DIV.navbar LI");
  -for (var i = 0; i < nodes.length; i++) {
  -    DOM.setEvent(nodes[i], "mouseover", navbar_over, nodes[i].id, true); /* 
"navbar_over('"+nodes[i].id+"'); return true;"); */
  -    DOM.setEvent(nodes[i], "mouseout",  navbar_out,  nodes[i].id, true); /* 
('"+nodes[i].id+"'); return true;"); */
  -}
  -</script>
  -
   <script language="php">
     divert("js");
   </script>
  @@ -133,19 +124,19 @@
   var navbar_default = "<script language="php">echo "navbar.".$path</script>";
   var navbar_active = navbar_default;
   
  -function navbar_over (id) {
  -    /* var el = document.getElementById(id).getElementsByTagName('a')[0]; */
  -    var el = document.getElementById(this).getElementsByTagName('a')[0];
  +function navbar_over (e) {
  +    var id = this;
  +    var el = document.getElementById(id).getElementsByTagName('a')[0];
       window.status = el.href;
       navbar_active = id;
       defer_cancel("navbar_out");
       defer_schedule("navbar_over", "navbar_update();", 800);
   }
   
  -function navbar_out (id) {
  +function navbar_out (e) {
  +    var id = this;
       window.status = "";
  -    /* defer_schedule("navbar_out", "navbar_out_stage2('"+id+"');", 4000); */
  -    defer_schedule("navbar_out", "navbar_out_stage2('"+this+"');", 4000);
  +    defer_schedule("navbar_out", "navbar_out_stage2('"+id+"');", 4000);
   }
   
   function navbar_out_stage2 (id) {
  @@ -156,8 +147,6 @@
   }
   
   function navbar_update () {
  -    if (!document.getElementById)
  -        return;
       var active_a = navbar_active.split(".");
       active_a.pop();
       var active_prefix = active_a.join(".");
  @@ -180,3 +169,16 @@
       return;
   }
   
  +/* DOM event activation */
  +
  +function nav_bar_setevents(e) {
  +    var nodes = DOM.getNode("DIV.navbar LI");
  +    for (var i = 0; i < nodes.length; i++) {
  +        var anchor = DOM.getNode("A", nodes[i])[0];
  +        DOM.setEvent(anchor, "mouseover", navbar_over, nodes[i].id, true);
  +        DOM.setEvent(anchor, "mouseout",  navbar_out,  nodes[i].id, true);
  +    }
  +}
  +
  +DOM.setEvent(window, "load", nav_bar_setevents);
  +
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [email protected]

Reply via email to