Properties now work:
[viewsvn.git] / includes / functions.php
1 <?php
2 /*=====================================================================*\
3 || ###################################################################
4 || # ViewSVN [#]version[#]
5 || # Copyright ©2002-[#]year[#] Blue Static
6 || #
7 || # This program is free software; you can redistribute it and/or modify
8 || # it under the terms of the GNU General Public License as published by
9 || # the Free Software Foundation; version [#]gpl[#] of the License.
10 || #
11 || # This program is distributed in the hope that it will be useful, but
12 || # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 || # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 || # more details.
15 || #
16 || # You should have received a copy of the GNU General Public License along
17 || # with this program; if not, write to the Free Software Foundation, Inc.,
18 || # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
19 || ###################################################################
20 \*=====================================================================*/
21
22 // ###################################################################
23 /**
24 * Constructs the navbar from the given path elememnts. The current
25 * element is never selectable
26 *
27 * @return string Compiled HTML navigation bar
28 */
29 function ConstructNavbar()
30 {
31 $path = preg_split('#/#', BSRegister::Get('input')->in['path'], -1, PREG_SPLIT_NO_EMPTY);
32
33 $html = '[<a href="' . BSRegister::Get('webpath') . '/browse/' . BSRegister::Get('input')->in['repos'] . ':">' . BSRegister::Get('input')->in['repos'] . '</a>]: ';
34
35 if (empty($path))
36 {
37 return $html . '<strong>/</strong>';
38 }
39
40 $build = '';
41 foreach ($path AS $part)
42 {
43 $build .= '/' . $part;
44 $html .= '/ <a href="' . BSRegister::Get('webpath') . '/browse/' . BSRegister::Get('input')->in['repos'] . ':' . $build . '"><strong>' . $part . '</strong></a> ';
45 }
46
47 return $html;
48 }
49
50 // ###################################################################
51 /**
52 * Formats an array of properties into a compiled HTML template
53 *
54 * @param array Array of properties
55 *
56 * @return string Compiled HTML property list
57 */
58 function FormatPropList($props)
59 {
60 if (sizeof($props) < 0)
61 {
62 return '';
63 }
64 foreach ($props AS $propname => $propval)
65 {
66 $data = sprintf(_('Property <strong>%1$s</strong> set to <em>%2$s</em>'), $propname, $propval);
67 eval('$proplist .= "' . BSRegister::Get('template')->fetch('property') . '";');
68 }
69 return $proplist;
70 }
71
72 /*=====================================================================*\
73 || ###################################################################
74 || # $HeadURL$
75 || # $Id$
76 || ###################################################################
77 \*=====================================================================*/
78 ?>