SOURCES: chora-FRAMEWORK_3-20081010.patch (NEW) - cvs patch

baggins baggins at pld-linux.org
Fri Oct 10 20:53:11 CEST 2008


Author: baggins                      Date: Fri Oct 10 18:53:11 2008 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- cvs patch

---- Files affected:
SOURCES:
   chora-FRAMEWORK_3-20081010.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/chora-FRAMEWORK_3-20081010.patch
diff -u /dev/null SOURCES/chora-FRAMEWORK_3-20081010.patch:1.1
--- /dev/null	Fri Oct 10 20:53:11 2008
+++ SOURCES/chora-FRAMEWORK_3-20081010.patch	Fri Oct 10 20:53:05 2008
@@ -0,0 +1,18996 @@
+diff -urN chora-h3-2.0.2/annotate.php chora-FRAMEWORK_3/annotate.php
+--- chora-h3-2.0.2/annotate.php	2007-02-23 04:58:53.000000000 +0100
++++ chora-FRAMEWORK_3/annotate.php	2008-10-09 19:40:02.000000000 +0200
+@@ -1,15 +1,18 @@
+ <?php
+ /**
+- * $Horde: chora/annotate.php,v 1.48.8.5 2007/02/23 03:58:53 selsky Exp $
++ * $Horde: chora/annotate.php,v 1.48.8.6 2008-10-09 17:40:02 jan Exp $
+  *
+- * Copyright 2000-2007 Anil Madhavapeddy <anil at recoil.org>
++ * Copyright 2000-2008 The Horde Project (http://www.horde.org/)
+  *
+- * See the enclosed file COPYING for license information (GPL).  If you
++ * See the enclosed file COPYING for license information (GPL). If you
+  * did not receive this file, see http://www.fsf.org/copyleft/gpl.html.
++ *
++ * @author  Anil Madhavapeddy <avsm at horde.org>
+  */
+ 
+ @define('CHORA_BASE', dirname(__FILE__));
+ require_once CHORA_BASE . '/lib/base.php';
++require_once 'Horde/Text/Filter.php';
+ 
+ /* Spawn the file object. */
+ $fl = &$VC->getFileObject($where, $cache);
+@@ -18,14 +21,14 @@
+ /* Retrieve the desired revision from the GET variable. */
+ $rev = Util::getFormData('rev', '1.1');
+ if (!VC_Revision::valid($rev)) {
+-    Chora::fatal("Revision $rev not found");
++    Chora::fatal('404 Not Found', "Revision $rev not found");
+ }
+ 
+ $ann = &$VC->getAnnotateObject($fl);
+ Chora::checkError($lines = $ann->doAnnotate($rev));
+ 
+-$title = sprintf(_("Source Annotation of %s for version %s"), Text::htmlAllSpaces($where), $rev);
+-$extraLink = sprintf('<a href="%s">%s</a> <b>|</b> <a href="%s">%s</a>',
++$title = sprintf(_("Source Annotation of %s (revision %s)"), Text::htmlAllSpaces($where), $rev);
++$extraLink = sprintf('<a href="%s">%s</a> | <a href="%s">%s</a>',
+                      Chora::url('co', $where, array('r' => $rev)), _("View"),
+                      Chora::url('co', $where, array('r' => $rev, 'p' => 1)), _("Download"));
+ require CHORA_TEMPLATES . '/common-header.inc';
+@@ -36,6 +39,17 @@
+ $author = '';
+ $style = 0;
+ 
++/* Map of revisions for finding the previous revision to a change. */
++$revMap = $fl->revs;
++sort($revMap);
++$rrevMap = array_flip($revMap);
++
++/* Keep track of any revision we encounter in the following loop. */
++$revList = array();
++
++/* Use this counter so that we can give each tooltip object a unique
++ * id attribute (which we use to set the tooltip text later). */
++$i = 0;
+ foreach ($lines as $line) {
+     $lineno = $line['lineno'];
+     $prevAuthor = $author;
+@@ -44,8 +58,16 @@
+         $style = (++$style % 2);
+     }
+     $rev = $line['rev'];
++    $prev = isset($revMap[$rrevMap[$rev] - 1]) ? $revMap[$rrevMap[$rev] - 1] : null;
++    if (!isset($revList[$rev])) {
++        $revList[$rev] = $fl->logs[$rev];
++    }
++    if (!is_null($prev) && !isset($revList[$prev])) {
++        $revList[$prev] = $fl->logs[$prev];
++    }
+     $line = Text::htmlAllSpaces($line['line']);
+     include CHORA_TEMPLATES . '/annotate/line.inc';
++    ++$i;
+ }
+ 
+ require CHORA_TEMPLATES . '/annotate/footer.inc';
+diff -urN chora-h3-2.0.2/browse.php chora-FRAMEWORK_3/browse.php
+--- chora-h3-2.0.2/browse.php	2007-02-23 04:58:53.000000000 +0100
++++ chora-FRAMEWORK_3/browse.php	2008-10-09 19:40:02.000000000 +0200
+@@ -1,25 +1,28 @@
+ <?php
+ /**
+- * $Horde: chora/browse.php,v 1.5.4.6 2007/02/23 03:58:53 selsky Exp $
++ * $Horde: chora/browse.php,v 1.5.4.7 2008-10-09 17:40:02 jan Exp $
+  *
+- * Copyright 1999-2007 Anil Madhavapeddy <anil at recoil.org>
+- * Copyright 1999-2007 Charles Hagenbuch <chuck at horde.org>
++ * Copyright 1999-2008 The Horde Project (http://www.horde.org/)
+  *
+- * See the enclosed file COPYING for license information (GPL).  If you
++ * See the enclosed file COPYING for license information (GPL). If you
+  * did not receive this file, see http://www.fsf.org/copyleft/gpl.html.
++ *
++ * @author  Anil Madhavapeddy <anil at recoil.org>
++ * @author  Chuck Hagenbuch <chuck at horde.org>
++ * @package Chora
+  */
+ 
+ @define('CHORA_BASE', dirname(__FILE__));
+ require_once CHORA_BASE . '/lib/base.php';
+-require_once 'Horde/MIME/Magic.php';
+-require_once 'Horde/MIME/Viewer.php';
+-require_once HORDE_BASE . '/config/mime_drivers.php';
+-require_once CHORA_BASE . '/config/mime_drivers.php';
++
++if (!$atdir && !$VC->isFile($fullname)) {
++    Chora::fatal('404 Not Found', "$where: no such file or directory");
++}
+ 
+ if ($atdir) {
+     Chora::checkError($dir = $VC->queryDir($where));
+ 
+-    $atticFlags = (boolean)$acts['sa'];
++    $atticFlags = (bool)$acts['sa'];
+     Chora::checkError($dir->browseDir($cache, true, $atticFlags));
+     $dir->applySort($acts['sbt'], $acts['ord']);
+     Chora::checkError($dirList = &$dir->queryDirList());
+@@ -29,27 +32,27 @@
+     if ($where == '') {
+         $title = $conf['options']['introTitle'];
+     } else {
+-        $title = sprintf(_("Source Directory of /%s"), Text::htmlallSpaces($where));
++        $title = sprintf(_("Source Directory of /%s"), $where);
+     }
+ 
+-    if (is_a($VC, 'VC_svn')) {
+-        // Showing deleted files is not supported in svn.
+-        $extraLink = '';
+-    } else {
+-        if ($acts['sa']) {
+-            $extraLink = Horde::widget(Chora::url('', $where . '/', array('sa' => 0)), _("Hide Deleted Files"), 'widget', '', '', _("Hide _Deleted Files"));
+-        } else {
+-            $extraLink = Horde::widget(Chora::url('', $where . '/', array('sa' => 1)), _("Show Deleted Files"), 'widget', '', '', _("Show _Deleted Files"));
+-        }
+-    }
+-
+-    require CHORA_TEMPLATES . '/common-header.inc';
+-    require CHORA_TEMPLATES . '/menu.inc';
+-    require CHORA_TEMPLATES . '/headerbar.inc';
++    $extraLink = '';
++    if (is_a($VC, 'VC_cvs')) {
++        $extraLink = Horde::widget(Chora::url(
++            '', $where . '/', array('sa' => ($acts['sa'] ? 0 : 1))),
++            $acts['sa'] ? _("Hide Deleted Files") : _("Show Deleted Files"),
++            'widget', '', '',
++            $acts['sa'] ? _("Hide _Deleted Files") : _("Show _Deleted Files")
++        );
++    }
++
++    $umap = array(
++        'age' => VC_SORT_AGE,
++        'rev' => VC_SORT_REV,
++        'name' => VC_SORT_NAME,
++        'author' => VC_SORT_AUTHOR
++    );
+ 
+     foreach (array('age', 'rev', 'name', 'author') as $u) {
+-        $umap = array('age' => VC_SORT_AGE, 'rev' => VC_SORT_REV,
+-                      'name' => VC_SORT_NAME, 'author' => VC_SORT_AUTHOR);
+         $arg = array('sbt' => $umap[$u]);
+         if ($acts['sbt'] == $umap[$u]) {
+             $arg['ord'] = !$acts['ord'];
+@@ -59,186 +62,174 @@
+ 
+     /* Print out the directory header. */
+     $printAllCols = count($fileList);
++
++    Horde::addScriptFile('prototype.js', 'chora', true);
++    Horde::addScriptFile('tables.js', 'chora', true);
++    require CHORA_TEMPLATES . '/common-header.inc';
++    require CHORA_TEMPLATES . '/menu.inc';
++    require CHORA_TEMPLATES . '/headerbar.inc';
+     require CHORA_TEMPLATES . '/directory/header.inc';
+ 
+     /* Unless we're at the top, display the 'back' bar. */
+-    $dirrow = 1;
+     if ($where != '') {
+-        $dirrow = ++$dirrow % 2;
+         $url = Chora::url('', preg_replace('|[^/]+$|', '', $where));
+         require CHORA_TEMPLATES . '/directory/back.inc';
+     }
+ 
+     /* Display all the directories first. */
+-    foreach ($dirList as $currentDir) {
+-        if ($conf['hide_restricted'] && Chora::isRestricted($currentDir)) {
+-            continue;
++    if ($dirList) {
++        echo '<tbody>';
++        foreach ($dirList as $currentDir) {
++            if ($conf['hide_restricted'] && Chora::isRestricted($currentDir)) {
++                continue;
++            }
++            $url = Chora::url('', "$where/$currentDir/");
++            $currDir = Text::htmlAllSpaces($currentDir);
++            require CHORA_TEMPLATES . '/directory/dir.inc';
+         }
+-        $dirrow = ++$dirrow % 2;
+-        $url = Chora::url('', "$where/$currentDir/");
+-        $currDir = Text::htmlAllSpaces($currentDir);
+-        require CHORA_TEMPLATES . '/directory/dir.inc';
++        echo '</tbody>';
+     }
+ 
+     /* Display all of the files in this directory */
+-    foreach ($fileList as $currFile) {
+-        if ($conf['hide_restricted'] && Chora::isRestricted($currFile->queryName())) {
+-            continue;
+-        }
+-        $dirrow = ++$dirrow % 2;
+-        $lg = $currFile->queryLastLog();
+-        if (is_a($lg, 'PEAR_Error')) {
+-            continue;
+-        }
+-        $realname = $currFile->queryName();
+-        $mimeType = MIME_Magic::filenameToMIME($realname);
+-
+-        $icon = MIME_Viewer::getIcon($mimeType);
+-
+-        $aid = $lg->queryAuthor();
+-        $author = Chora::showAuthorName($aid);
+-        $head = $currFile->queryHead();
+-        $date = $lg->queryDate();
+-        $log  = $lg->queryLog();
+-        $attic = $currFile->isAtticFile();
+-        $fileName = $where . ($attic ? '/' . 'Attic' : '') . '/' . $realname;
+-        $name = Text::htmlAllSpaces($realname);
+-        $url = Chora::url('', $fileName);
+-        $readableDate = Chora::readableTime($date);
+-        if ($log) {
+-            $shortLog = str_replace("\n", ' ',
+-                trim(substr($log, 0, $conf['options']['shortLogLength'] - 1)));
+-            if (strlen($log) > 80) {
+-                $shortLog .= "...";
++    if ($fileList) {
++        require_once 'Horde/MIME/Magic.php';
++        require_once 'Horde/MIME/Viewer.php';
++        if (is_callable(array('Horde', 'loadConfiguration'))) {
++            $result = Horde::loadConfiguration('mime_drivers.php', array('mime_drivers', 'mime_drivers_map'), 'horde');
++            extract($result);
++            $result = Horde::loadConfiguration('mime_drivers.php', array('mime_drivers', 'mime_drivers_map'), 'chora');
++            require_once 'Horde/Array.php';
++            if (isset($result['mime_drivers'])) {
++                $mime_drivers = Horde_Array::array_merge_recursive_overwrite($mime_drivers, $result['mime_drivers']);
++            }
++            if (isset($result['mime_drivers_map'])) {
++                $mime_drivers_map = Horde_Array::array_merge_recursive_overwrite($mime_drivers_map, $result['mime_drivers_map']);
+             }
++        } else {
++            require_once HORDE_BASE . '/config/mime_drivers.php';
++            require_once CHORA_BASE . '/config/mime_drivers.php';
+         }
+-        require CHORA_TEMPLATES.'/directory/file.inc';
+-    }
+-    /* Display the options control panel at the bottom */
+-    $formwhere = $scriptName . '/' . $where;
+-
+-    require CHORA_TEMPLATES . '/directory/footer.inc';
+-    require $registry->get('templates', 'horde') . '/common-footer.inc';
+-
+-} elseif ($VC->isFile($fullname)) {
+-    $fl = &$VC->getFileObject($where, $cache);
+-    Chora::checkError($fl);
+-    $title = sprintf(_("Source Log for %s"), Text::htmlAllSpaces($where));
+-    $upwhere = preg_replace('|[^/]+$|', '', $where);
+-    $onb = Util::getFormData('onb', 0);
+-    $r1 = Util::getFormData('r1', 0);
+-
+-    $isBranch = isset($onb) && isset($fl->branches[$onb]) ? $fl->branches[$onb] : '';
+-    $extraLink = Chora::getFileViews();
+-
+-    require CHORA_TEMPLATES . '/common-header.inc';
+-    require CHORA_TEMPLATES . '/menu.inc';
+-    require CHORA_TEMPLATES . '/headerbar.inc';
+ 
+-    $mimeType = MIME_Magic::filenameToMIME($fullname);
+-    $defaultTextPlain = ($mimeType == 'text/plain');
+-
+-    foreach ($fl->logs as $lg) {
+-        $rev = $lg->rev;
++        echo '<tbody>';
++        foreach ($fileList as $currFile) {
++            if ($conf['hide_restricted'] &&
++                Chora::isRestricted($currFile->queryName())) {
++                continue;
++            }
++            $lg = $currFile->queryLastLog();
++            if (is_a($lg, 'PEAR_Error')) {
++                continue;
++            }
++            $realname = $currFile->queryName();
++            $mimeType = MIME_Magic::filenameToMIME($realname);
+ 
+-        /* Are we sticking only to one branch ? */
+-        if ($onb && VC_Revision::valid($onb)) {
++            $icon = MIME_Viewer::getIcon($mimeType);
+ 
+-            /* If so, if we are on the branch itself, let it through */
+-            if (substr($rev, 0, strlen($onb)) != $onb) {
+-
+-                /* We are not on the branch, see if we are on a trunk
+-                 * branch below the branch */
+-                $baseRev = VC_Revision::strip($onb, 1);
+-
+-                /* Check we are at the same level of branching or less */
+-                if (substr_count($rev, '.') <= substr_count($baseRev, '.')) {
+-                    /* If we are at the same level, and the revision is
+-                     * less, then let the revision through, since it was
+-                     * committed before the branch actually took place
+-                     */
+-                    if (VC_Revision::cmp($rev, $baseRev) > 0) {
+-                        continue;
+-                    }
+-                } else {
+-                    continue;
++            $author = Chora::showAuthorName($lg->queryAuthor());
++            $head = $currFile->queryHead();
++            $date = $lg->queryDate();
++            $log = $lg->queryLog();
++            $attic = $currFile->isAtticFile();
++            $fileName = $where . ($attic ? '/' . 'Attic' : '') . '/' . $realname;
++            $name = Text::htmlAllSpaces($realname);
++            $url = Chora::url('', $fileName);
++            $readableDate = Chora::readableTime($date);
++            if ($log) {
++                $shortLog = str_replace("\n", ' ',
++                    trim(substr($log, 0, $conf['options']['shortLogLength'] - 1)));
++                if (strlen($log) > 80) {
++                    $shortLog .= '...';
+                 }
+             }
++            require CHORA_TEMPLATES . '/directory/file.inc';
+         }
++        echo '</tbody>';
++    }
+ 
+-        $textURL = Chora::url('co', $where, array('r' => $rev));
+-        $commitDate = strftime('%c', $lg->date);
+-        $readableDate = Chora::readableTime($lg->date, true);
+-
+-        $aid = $lg->queryAuthor();
+-        $author = Chora::showAuthorName($aid, true);
+-
+-        if (!empty($lg->tags)) {
+-            $commitTags = implode(', ', $lg->tags);
+-        } else {
+-            $commitTags = '';
+-        }
++    echo '</table>';
++    require $registry->get('templates', 'horde') . '/common-footer.inc';
++    exit;
++}
+ 
+-        $branchPointsArr = array();
+-        foreach ($lg->querySymbolicBranches() as $symb => $bra) {
+-            $branchPointsArr[] = '<a href="' . Chora::url('', $where, array('onb' => $bra)) . '">'. $symb . '</a>';
+-        }
++/* Showing a file. */
++$fl = &$VC->getFileObject($where, $cache);
++Chora::checkError($fl);
++$title = sprintf(_("Revisions for %s"), $where);
++$onb = Util::getFormData('onb', 0);
++if (VC_Revision::valid($onb)) {
++    $onb_len = strlen($onb);
++    $onb_base = VC_Revision::strip($onb, 1);
++    $onb_parents = array();
++    while (substr_count($onb_base, '.')) {
++        $onb_parents[$onb_base] = true;
++        $onb_base = VC_Revision::strip($onb_base, 1);
++    }
++} else {
++    $onb = null;
++}
+ 
+-        /* Calculate the current branch name and revision. */
+-        $branchPoints = implode(' , ', $branchPointsArr);
+-        $branchRev = VC_Revision::strip($rev, 1);
+-        if (@isset($fl->branches[$branchRev])) {
+-            $branchName = $fl->branches[$branchRev];
+-        } else {
+-            $branchName = '';
+-        }
++$extraLink = Chora::getFileViews();
++$first = end($fl->logs);
++$diffValueLeft = $first->queryRevision();
++$diffValueRight = $fl->queryRevision();
++
++$sel = '';
++foreach ($fl->symrev as $sm => $rv) {
++    $sel .= '<option value="' . $rv . '">' . $sm . '</option>';
++}
+ 
+-        if ($prevRevision = $fl->queryPreviousRevision($lg->queryRevision())) {
+-            $changedLines = $lg->queryChangedLines();
+-            $coloredDiffURL = Chora::url('diff', $where, array('r1' => $prevRevision, 'r2' => $rev, 'ty' => 'h'));
+-            $longDiffURL = Chora::url('diff', $where, array('r1' => $prevRevision, 'r2' => $rev, 'ty' => 'h', 'num' => 10));
+-            $uniDiffURL = Chora::url('diff', $where, array('r1' => $prevRevision, 'r2' => $rev, 'ty' => 'u'));
+-            $nowsDiffURL = Chora::url('diff', $where, array('ws' => 0, 'r1' => $prevRevision, 'r2' => $rev, 'ty' => 'u'));
+-        }
++$selAllBranches = '';
++foreach ($fl->branches as $num => $sym) {
++    $selAllBranches .= '<option value="' . $num . '"' . ($num == $onb ? ' selected="selected"' : '') . '>' . $sym . '</option>';
++}
+ 
+-        $manyRevisions = !($fl->queryRevision() === '1.1');
+-        if ($manyRevisions) {
+-            $selURL = Chora::url('', $where, array('r1' => $rev, 'onb' => $onb));
+-            if (!empty($r1)) {
+-                $selColoredDiffURL = Chora::url('diff', $where, array('r1' => $r1, 'r2' => $rev, 'ty' => 'h'));
+-                $selLongDiffURL = Chora::url('diff', $where, array('r1' => $r1, 'r2' => $rev, 'ty' => 'h', 'num' => 10));
+-                $selUniDiffURL = Chora::url('diff', $where, array('r1' => $r1, 'r2' => $rev, 'ty' => 'u'));
+-                $selNowsDiffURL = Chora::url('diff', $where, array('ws' => 0, 'r1' => $r1, 'r2' => $rev, 'ty' => 'u'));
++Horde::addScriptFile('prototype.js', 'chora', true);
++Horde::addScriptFile('tables.js', 'chora', true);
++Horde::addScriptFile('QuickFinder.js', 'chora', true);
++Horde::addScriptFile('revlog.js', 'chora', true);
++require CHORA_TEMPLATES . '/common-header.inc';
++require CHORA_TEMPLATES . '/menu.inc';
++require CHORA_TEMPLATES . '/headerbar.inc';
++require CHORA_TEMPLATES . '/log/header.inc';
++
++$i = 0;
++foreach ($fl->logs as $lg) {
++    $rev = $lg->queryRevision();
++    list($branchName, $branchRev) = Chora::getBranch($fl, $rev);
++
++    /* Are we tracking a branch? */
++    if ($onb) {
++        /* If we are on the branch itself, let it through */
++        if (substr($rev, 0, $onb_len) != $onb) {
++            /* If the revision is on one of the parent branches, and
++             * is before the branch was made, let it through. */
++            if ((!isset($onb_parents[$branchRev]) && substr_count($rev, '.') > 1) ||
++                VC_Revision::cmp($rev, $onb) > 0) {
++                continue;
+             }
+         }
++    }
+ 
+-        $logMessage = Chora::formatLogMessage($lg->log);
++    $textUrl = Chora::url('co', $where, array('r' => $rev));
++    $commitDate = Chora::formatDate($lg->queryDate());
++    $readableDate = Chora::readableTime($lg->queryDate(), true);
+ 
+-        if ($r1 === $rev) {
+-            $bgclass = 'diff-selected';
+-        } else {
+-            $bgclass = 'control';
+-        }
++    $author = Chora::showAuthorName($lg->queryAuthor(), true);
++    $tags = Chora::getTags($lg, $where);
+ 
+-        require CHORA_TEMPLATES . '/log/rev.inc';
++    if ($prevRevision = $fl->queryPreviousRevision($lg->queryRevision())) {
++        $diffUrl = Chora::url('diff', $where, array('r1' => $prevRevision, 'r2' => $rev));
++    } else {
++        $diffUrl = '';
+     }
+ 
+-    $first = end($fl->logs);
+-    $diffValueLeft  = $first->rev;
+-    $diffValueRight = $fl->queryRevision();
++    $logMessage = Chora::formatLogMessage($lg->queryLog());
+ 
+-    $sel = '';
+-    foreach ($fl->symrev as $sm => $rv) {
+-        $sel .= '<option value="' . $rv . '">' . $sm . '</option>';
+-    }
++    require CHORA_TEMPLATES . '/log/rev.inc';
+ 
+-    $selAllBranches = '';
+-    foreach ($fl->branches as $num => $sym) {
+-        $selAllBranches .= '<option value="' . $num . '">' . $sym . '</option>';
++    if ($i++ > 100 && !Util::getFormData('all')) {
++        break;
+     }
+-
+-    require CHORA_TEMPLATES . '/log/request.inc';
+-    require $registry->get('templates', 'horde') . '/common-footer.inc';
+-} else {
+-    Chora::fatal("$where: no such file or directory");
+ }
++require CHORA_TEMPLATES . '/log/footer.inc';
++require $registry->get('templates', 'horde') . '/common-footer.inc';
+diff -urN chora-h3-2.0.2/config/conf.xml chora-FRAMEWORK_3/config/conf.xml
+--- chora-h3-2.0.2/config/conf.xml	2005-09-22 14:56:37.000000000 +0200
++++ chora-FRAMEWORK_3/config/conf.xml	2008-10-09 19:40:03.000000000 +0200
+@@ -1,5 +1,5 @@
+ <?xml version="1.0"?>
+-<!-- $Horde: chora/config/conf.xml,v 1.8.10.2 2005/09/22 12:56:37 jan Exp $ -->
++<!-- $Horde: chora/config/conf.xml,v 1.8.10.3 2008-10-09 17:40:03 jan Exp $ -->
+ <configuration>
+ 
+  <configtab name="paths" desc="Paths and Locations">
+@@ -17,6 +17,12 @@
+    <configstring name="diff" desc="diff">/usr/bin/diff</configstring>
+    <configstring name="svn" desc="svn">/usr/bin/svn</configstring>
+ 
++   <configstring name="svn_home" required="false" desc="Home directory for
++   execution of svn binary (specified via --config-dir to svn). This directory
++   must at least be readable to the webserver, otherwise svn will not work.
++   If you leave this empty, the system's temporary directory will be used.">
++   </configstring>
++
+    <configstring name="cvsps" required="false" desc="If you have cvsps
+    installed, we can generate patchset information. You need at least version
+    2.0b6 of cvsps. Path to the cvsps executable, e.g. /usr/local/bin/cvsps"/>
+@@ -39,11 +45,11 @@
+    expression, or an array of regexps, which if matched, will link a string to
+    a ticket-tracking/bug-tracking system. The replacement is the second
+    argument to preg_replace(), so you can backreference anything you match in
+-   the matching regexp. Example: &lt;code&gt;&lt;nobr&gt;'|bug:?
+-   #?(\d+)|i'&lt;/nobr&gt;&lt;/code&gt;"/>
++   the matching regexp. Example: &lt;code class=&quot;nowrap&quot;&gt;'|bug:?
++   #?(\d+)|i'&lt;/code&gt;"/>
+    <configstring name="replacement" required="false" desc="Replacement
+-   string. Example: &lt;code&gt;&lt;nobr&gt;'&amp;lt;a
+-   href=&quot;http://bugs.example.com/show_bug.cgi?id=\1&quot;&amp;gt;\0&amp;lt;/a&amp;gt;'&lt;/nobr&gt;&lt;/code&gt;"/>
++   string. Example: &lt;code class=&quot;nowrap&quot;&gt;'&amp;lt;a
++   href=&quot;http://bugs.example.com/show_bug.cgi?id=\1&quot;&amp;gt;\0&amp;lt;/a&amp;gt;'&lt;/code&gt;"/>
+   </configsection>
+  </configtab>
+ 
+@@ -69,26 +75,32 @@
+      <value desc="sort by author name">VC_SORT_AUTHOR</value>
+     </values>
+    </configenum>
+-   <configenum name="urls" desc="Does your web server support the PATH_INFO
+-   method of passing URL data (some Windows web servers do not)?  If this
+-   option is unchecked, pathnames will be propagated using a GET variable
+-   instead.">get
++   <configenum name="urls" desc="Does your web server support
++   mod_rewrite?  If so, we can generate &quot;pretty&quot; URLs. If
++   not, pathnames will be propagated using a GET variable instead.">get
+     <values>
+      <value desc="GET (will always work)">get</value>
+-     <value desc="PATH_INFO (somewhat prettier URLs)">path_info</value>
+-     <value desc="mod_rewrite (prettiest, shortest URLs)">rewrite</value>
++     <value desc="mod_rewrite (pretty, shorter URLs)">rewrite</value>
+     </values>
+    </configenum>
+   </configsection>
+ 
+   <configlist name="restrictions" required="false" desc="If you wish to protect
+-   a file pattern on a global basis (i.e. across all sourceroots defined in
+-   sourceroots.php) list the perl-style regex file patterns in this array. For
+-   example: &lt;code&gt;&lt;nobr&gt;'^/?CVSROOT'&lt;/nobr&gt;&lt;/code&gt;"/>
++  a file pattern on a global basis (i.e. across all sourceroots defined in
++  sourceroots.php) list the perl-style regex file patterns in this array. For
++  example: &lt;code class=&quot;nowrap&quot;&gt;'^/?CVSROOT'&lt;/code&gt;"/>
+ 
+   <configboolean name="hide_restricted" desc="If you wish to hide restricted
+-  files, check this option, and restricted files will not be
+-  displayed.">true</configboolean>
++  files from listings as well as protect their contents, check this option, and
++  restricted files will not be displayed in directory
++  lists.">true</configboolean>
++
++  <configenum name="filename_linkto" desc="When clicking on a file name in the browse view, should we show the revision log, or display the most recent revision? The opposite action will be available when clicking on the revision number.">revlog
++   <values>
++    <value desc="Revision Log">revlog</value>
++    <value desc="Most recent version">checkout</value>
++   </values>
++  </configenum>
+  </configtab>
+ 
+  <configtab name="menu" desc="Menu Settings">
+diff -urN chora-h3-2.0.2/config/cvsgraph.conf.dist chora-FRAMEWORK_3/config/cvsgraph.conf.dist
+--- chora-h3-2.0.2/config/cvsgraph.conf.dist	2003-06-10 03:29:50.000000000 +0200
++++ chora-FRAMEWORK_3/config/cvsgraph.conf.dist	2008-10-09 19:40:03.000000000 +0200
+@@ -1,6 +1,6 @@
+ # CvsGraph configuration
+ #
+-# $Horde: chora/config/cvsgraph.conf.dist,v 1.1 2003/06/10 01:29:50 mikec Exp $
++# $Horde: chora/config/cvsgraph.conf.dist,v 1.1.12.1 2008-10-09 17:40:03 jan Exp $
+ #
+ # - Empty lines and whitespace are ignored.
+ #
+@@ -87,11 +87,11 @@
+ box_shadow      = true;
+ 
+ tag_font        = medium;
+-tag_color       = "#007000";
++tag_color       = "#333399";
+ 
+ rev_font        = giant;
+ rev_color       = "#000000";
+-rev_bgcolor     = "#f0f0f0";
++rev_bgcolor     = "#e9e9e9";
+ rev_separator   = 1;
<<Diff was trimmed, longer than 597 lines>>


More information about the pld-cvs-commit mailing list