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:   14-Mar-2006 22:40:30
  Branch: HEAD                             Handle: 2006031421402901

  Added files:
    openpkg-meta            canvas-nav-xref.php canvas-nav.ini
  Modified files:
    openpkg-meta            canvas-layout.php canvas-nav.php canvas.php

  Log:
    first cut for page cross-referencing support

  Summary:
    Revision    Changes     Path
    1.21        +3  -3      openpkg-meta/canvas-layout.php
    1.1         +115 -0     openpkg-meta/canvas-nav-xref.php
    1.1         +52 -0      openpkg-meta/canvas-nav.ini
    1.16        +8  -1      openpkg-meta/canvas-nav.php
    1.24        +2  -0      openpkg-meta/canvas.php
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-meta/canvas-layout.php
  ============================================================================
  $ cvs diff -u -r1.20 -r1.21 canvas-layout.php
  --- openpkg-meta/canvas-layout.php    14 Mar 2006 17:00:40 -0000      1.20
  +++ openpkg-meta/canvas-layout.php    14 Mar 2006 21:40:29 -0000      1.21
  @@ -186,9 +186,9 @@
   div#canvas_footbox {
       position:              absolute;
       right:                 60px;
  -    bottom:                60px;
  -    width:                 120px;
  -    height:                240px;
  +    bottom:                40px;
  +    width:                 160px;
  +    height:                60px;
       z-index:               10;
       vertical-align:        bottom;
       text-align:            right;
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-meta/canvas-nav-xref.php
  ============================================================================
  $ cvs diff -u -r0 -r1.1 canvas-nav-xref.php
  --- /dev/null 2006-03-14 22:40:24 +0100
  +++ canvas-nav-xref.php       2006-03-14 22:40:30 +0100
  @@ -0,0 +1,115 @@
  +<script language="php">
  +##
  +##  Copyright (c) 2005-2006 OpenPKG Foundation e.V. <http://openpkg.net/>
  +##  Copyright (c) 2005-2006 Ralf S. Engelschall <http://engelschall.com/>
  +##
  +##  Permission to use, copy, modify, and distribute this software for
  +##  any purpose with or without fee is hereby granted, provided that
  +##  the above copyright notice and this permission notice appear in all
  +##  copies.
  +##
  +##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  +##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  +##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  +##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  +##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  +##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  +##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  +##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  +##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  +##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  +##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  +##  SUCH DAMAGE.
  +##
  +##  canvas-nav-xref.php: canvas navigation cross-referencing links
  +##
  +</script>
  +
  +<script language="php">
  +  divert("css");
  +</script>
  +
  +div.nav_seealso {
  +    color:       #605040;
  +}
  +
  +div.nav_seealso a {
  +    font-weight: normal;
  +    color:       #000000;
  +}
  +
  +div.nav_path {
  +    color:       #605040;
  +}
  +div.nav_path a {
  +    font-weight: normal;
  +    color:       #000000;
  +}
  +
  +<script language="php">
  +  function navpage($html, $id, $txt) {
  +      $result = null;
  +      if (preg_match('/<li id="'.$id.'"><a href="([^"]+)">(.+?)<\/a>/s', 
$html, $match)) {
  +          $href = $match[1];
  +          if ($txt == "")
  +              $txt = $match[2];
  +          $result = array("href" => $href, "txt" => $txt);
  +      }
  +      return $result;
  +  }
  +
  +  function nav_paths($html, $ini, $this) {
  +      $keys = array_keys($ini);
  +      for ($i = 0; $i < count($keys); $i++) {
  +          if (preg_match('/^path:\s+(.+?)\s*$/s', $keys[$i], $match)) {
  +              $name = $match[1];
  +              $path = array_keys($ini[$keys[$i]]);
  +              for ($j = 0; $j < count($path); $j++) {
  +                  if ($path[$j] == $this) {
  +                      echo "<p/>\n";
  +                      echo "<div class=\"nav_path\">\n";
  +                      echo "$name:<br/>\n";
  +                      if ($j-1 >= 0) {
  +                          $page = navpage($html, $path[$j-1], 
$ini[$keys[$i]][$path[$j-1]]);
  +                          if (!is_null($page))
  +                              echo "&larr; <a 
href=\"".$page["href"]."\">".$page["txt"]."</a><br/>\n";
  +                      }
  +                      if ($j+1 <= count($path)) {
  +                          $page = navpage($html, $path[$j+1], 
$ini[$keys[$i]][$path[$j+1]]);
  +                          if (!is_null($page))
  +                              echo "&rarr; <a 
href=\"".$page["href"]."\">".$page["txt"]."</a><br/>\n";
  +                      }
  +                      echo "</div>\n";
  +                  }
  +              }
  +          }
  +      }
  +  }
  +
  +  function nav_seealso($html, $ini, $this) {
  +      $seealso = Array();
  +      $also = $ini["also: $this"];
  +      if (!is_null($also)) {
  +          $keys = array_keys($also);
  +          for ($i = 0; $i < count($keys); $i++) {
  +              $page = navpage($html, $keys[$i], $also[$keys[$i]]);
  +              if (!is_null($page))
  +                  array_push($seealso, "<a 
href=\"".$page["href"]."\">".$page["txt"]."</a>");
  +          }
  +      }
  +      $seealso = implode(", ", $seealso);
  +      if ($seealso != "") {
  +          echo "<p/>\n";
  +          echo "<div class=\"nav_seealso\">\n";
  +          echo "See Also:<br/>\n" . $seealso;
  +          echo "</div>\n";
  +      }
  +  }
  +
  +  $html = undivert("nav");
  +  $ini = parse_ini_file("canvas-nav.ini", TRUE);
  +  divert("canvas-nav");
  +  nav_paths($html, $ini, $opt["path"]);
  +  nav_seealso($html, $ini, $opt["path"]);
  +</script>
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-meta/canvas-nav.ini
  ============================================================================
  $ cvs diff -u -r0 -r1.1 canvas-nav.ini
  --- /dev/null 2006-03-14 22:40:24 +0100
  +++ canvas-nav.ini    2006-03-14 22:40:30 +0100
  @@ -0,0 +1,52 @@
  +; ##
  +; ##  Copyright (c) 2005-2006 OpenPKG Foundation e.V. <http://openpkg.net/>
  +; ##  Copyright (c) 2005-2006 Ralf S. Engelschall <http://engelschall.com/>
  +; ##
  +; ##  Permission to use, copy, modify, and distribute this software for
  +; ##  any purpose with or without fee is hereby granted, provided that
  +; ##  the above copyright notice and this permission notice appear in all
  +; ##  copies.
  +; ##
  +; ##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  +; ##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  +; ##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  +; ##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  +; ##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  +; ##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  +; ##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  +; ##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  +; ##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  +; ##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  +; ##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  +; ##  SUCH DAMAGE.
  +; ##
  +; ##  canvas-nav.php: canvas navigation tree annotations
  +; ##
  +
  +; ##
  +; ##  Walk-Through Paths
  +; ##
  +
  +[path: OpenPKG Websites]
  +project     = OpenPKG Project
  +corporation = OpenPKG Corporation
  +foundation  = OpenPKG Foundation
  +
  +[path: Corporation Who-is-Who]
  +corporation.people     = Overview
  +corporation.people.mvr = Marcel von Ranson
  +corporation.people.thl = Thomas Lotterer
  +corporation.people.rse = Ralf S. Engelschall
  +
  +; ##
  +; ##  See-Also References
  +; ##
  +
  +[also: corporation]
  +corporation.services = Services
  +corporation.corporation.summary = Contact
  +
  +[also: corporation.services]
  +corporation.corporation.summary = Contact
  +corporation.people = People
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-meta/canvas-nav.php
  ============================================================================
  $ cvs diff -u -r1.15 -r1.16 canvas-nav.php
  --- openpkg-meta/canvas-nav.php       14 Mar 2006 17:00:40 -0000      1.15
  +++ openpkg-meta/canvas-nav.php       14 Mar 2006 21:40:30 -0000      1.16
  @@ -34,6 +34,7 @@
   </script>
   
   <ul>
  +  <!-- ==## OpenPKG Project ##== -->
     <li id="project"><a href="http://www.openpkg.org/";>OpenPKG Project</a>
       <ul>
         <li id="about"><a href="about.html">About</a>
  @@ -104,6 +105,8 @@
         </li>
       </ul>
     </li>
  +
  +  <!-- ==## OpenPKG Corporation ##== -->
     <li id="corporation"><a href="http://www.openpkg.com/";>OpenPKG 
Corporation</a>
       <ul>
         <li id="corporation"><a href="">Corporation</a>
  @@ -123,6 +126,8 @@
         </li>
       </ul>
     </li>
  +
  +  <!-- ==## OpenPKG Foundation ##== -->
     <li id="foundation"><a href="http://www.openpkg.net/";>OpenPKG 
Foundation</a>
       <ul>
         <li id="foundation"><a href="">Foundation</a>
  @@ -178,6 +183,8 @@
         </li>
       </ul>
     </li>
  +
  +  <!-- ==## OpenPKG Meta ##== -->
     <li id="meta"><a href="http://meta.openpkg.org/global-index.php";>OpenPKG 
Meta</a>
       <ul>
         <li id="about"><a href="global-about.php">About Websites</a></li>
  @@ -227,7 +234,7 @@
               array_pop($url);
           }
       }
  -   
  +
       #   assemble back into a navigation tree
       $html = implode("\n", $html);
       return $html;
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-meta/canvas.php
  ============================================================================
  $ cvs diff -u -r1.23 -r1.24 canvas.php
  --- openpkg-meta/canvas.php   13 Mar 2006 22:26:39 -0000      1.23
  +++ openpkg-meta/canvas.php   14 Mar 2006 21:40:30 -0000      1.24
  @@ -111,6 +111,7 @@
   
   #   load content generation parts
   include("canvas-php.php");
  +divert("/dev/null");
   include("canvas-js.php");
   include("canvas-style.php");
   include("canvas-nav.php");
  @@ -118,6 +119,7 @@
   include("canvas-nav-tab.php");
   include("canvas-nav-path.php");
   include("canvas-nav-bar.php");
  +include("canvas-nav-xref.php");
   include("canvas-foot.php");
   include("canvas-layout.php");
   include("canvas-html.php");
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [email protected]

Reply via email to