cSvn-UI for SVN Repositories

cGit-UI – is a web interface for Subversion (SVN) Repositories. cSvn CGI script is writen in C and therefore it's fast enough

6 Commits   0 Branches   2 Tags
bfc1508d (kx 2023-03-24 03:55:33 +0300   1) .\"
bfc1508d (kx 2023-03-24 03:55:33 +0300   2) .TH "CSVN-UI.RC" 5 "2020-11-07" "cSvn-ui CGI script" "csvn-ui.rc"
bfc1508d (kx 2023-03-24 03:55:33 +0300   3) 
bfc1508d (kx 2023-03-24 03:55:33 +0300   4) .SH "NAME"
bfc1508d (kx 2023-03-24 03:55:33 +0300   5) \fB/etc/csvn-ui.rc\fR \- cSvn CGI script config file
bfc1508d (kx 2023-03-24 03:55:33 +0300   6) 
bfc1508d (kx 2023-03-24 03:55:33 +0300   7) .SH "DESCRIPTION"
bfc1508d (kx 2023-03-24 03:55:33 +0300   8) \fB/etc/csvn-ui.rc\fR file describes Subversion repositories which should be shown by \fBcSvn-ui\fR CGI script.
bfc1508d (kx 2023-03-24 03:55:33 +0300   9) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  10) .SH "FILE FORMAT"
bfc1508d (kx 2023-03-24 03:55:33 +0300  11) \fB/etc/csvn-ui.rc\fR is regular text file created by user to present Subversion repositories. This file reads by \fBcscmd\fR daemon
bfc1508d (kx 2023-03-24 03:55:33 +0300  12) and converts to binary form for \fBcSvn-ui\fR CGI script. Binary format allows to minimize the time needed for complete HTTP responses.
bfc1508d (kx 2023-03-24 03:55:33 +0300  13) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  14) The configuration file consists of a set of variable or repository declarations also configuration file can contains section
bfc1508d (kx 2023-03-24 03:55:33 +0300  15) of repository descriptions. The C/C++ comments are available:
bfc1508d (kx 2023-03-24 03:55:33 +0300  16) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  17) .in +4n
bfc1508d (kx 2023-03-24 03:55:33 +0300  18) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300  19) \fI
bfc1508d (kx 2023-03-24 03:55:33 +0300  20) /****************************
bfc1508d (kx 2023-03-24 03:55:33 +0300  21)   Apache's SVN repositories:
bfc1508d (kx 2023-03-24 03:55:33 +0300  22)  */
bfc1508d (kx 2023-03-24 03:55:33 +0300  23) home-page = "https://svn.apache.org/";
bfc1508d (kx 2023-03-24 03:55:33 +0300  24) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  25) repo 'subversion' {
bfc1508d (kx 2023-03-24 03:55:33 +0300  26)   owner = "Apache";
bfc1508d (kx 2023-03-24 03:55:33 +0300  27)   description = "Source repository of the Subversion.";
bfc1508d (kx 2023-03-24 03:55:33 +0300  28)   checkout-prefix-readonly = 'https://svn.apache.org/repos/asf';
bfc1508d (kx 2023-03-24 03:55:33 +0300  29) }
bfc1508d (kx 2023-03-24 03:55:33 +0300  30) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  31) section "Other Repositories" {
bfc1508d (kx 2023-03-24 03:55:33 +0300  32)   repo 'other-repository' {
bfc1508d (kx 2023-03-24 03:55:33 +0300  33)     . . .
bfc1508d (kx 2023-03-24 03:55:33 +0300  34)   }
bfc1508d (kx 2023-03-24 03:55:33 +0300  35)   . . .
bfc1508d (kx 2023-03-24 03:55:33 +0300  36) }
bfc1508d (kx 2023-03-24 03:55:33 +0300  37) \fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  38) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300  39) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300  40) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  41) .SH "DATA TYPES"
bfc1508d (kx 2023-03-24 03:55:33 +0300  42) Configuration file assumes three types of variables.
bfc1508d (kx 2023-03-24 03:55:33 +0300  43) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  44) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  45) \fBint\fR \- integer constants. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300  46) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  47) .in +4n
bfc1508d (kx 2023-03-24 03:55:33 +0300  48) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300  49) \fItrue = 1;\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  50) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300  51) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300  52) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  53) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  54) \fBstring\fR \- string constants. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300  55) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  56) .in +4n
bfc1508d (kx 2023-03-24 03:55:33 +0300  57) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300  58) \fIname = "Apache Subversion";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  59) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300  60) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300  61) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  62) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  63) \fBpath\fR \- path constants. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300  64) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  65) .in +4n
bfc1508d (kx 2023-03-24 03:55:33 +0300  66) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300  67) \fIpath = '/etc/csvn-ui.rc';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  68) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300  69) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300  70) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  71) .SH "RESERVED VARIABLES"
bfc1508d (kx 2023-03-24 03:55:33 +0300  72) There is a set of variable names used by \fBcSvn-ui\fR CGI Script.
bfc1508d (kx 2023-03-24 03:55:33 +0300  73) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  74) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300  75) \fBsvn-utc-offset\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  76) The integer or string value of UTC offset on the SVN server where repositories are published. For example:
bfc1508d (kx 2023-03-24 03:55:33 +0300  77) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  78) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300  79) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300  80) \fIsvn-utc-offset = +0300; /* Europe/Moscow time zone */\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  81) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300  82) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300  83) 
c7693c71 (kx 2023-04-12 19:21:06 +0300  84) .TP 4
c7693c71 (kx 2023-04-12 19:21:06 +0300  85) \fBrepo-root\fR
c7693c71 (kx 2023-04-12 19:21:06 +0300  86) The name of directory where some repository is placed related to \fBsvn repositories root\fR directory. For example:
c7693c71 (kx 2023-04-12 19:21:06 +0300  87) .PP
c7693c71 (kx 2023-04-12 19:21:06 +0300  88) .in +6n
c7693c71 (kx 2023-04-12 19:21:06 +0300  89) .EX
c7693c71 (kx 2023-04-12 19:21:06 +0300  90) \fIrepo-root = 'tools';\fR
c7693c71 (kx 2023-04-12 19:21:06 +0300  91) .EE
c7693c71 (kx 2023-04-12 19:21:06 +0300  92) .in
c7693c71 (kx 2023-04-12 19:21:06 +0300  93) 
bfc1508d (kx 2023-03-24 03:55:33 +0300  94) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300  95) \fBcheckout-prefix-readonly\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300  96) The checkout prefix for readonly access to the repository. The value of this variable should has \fBpath\fR type
bfc1508d (kx 2023-03-24 03:55:33 +0300  97) without leadinfg dir-separator. Example  declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300  98) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300  99) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 100) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 101) \fIcheckout-prefix-readonly = 'svn://example.com';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 102) \fIcheckout-prefix-readonly = 'https://svn.example.com/svn';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 103) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 104) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 105) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 106) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 107) Please note that \fBsvn\fR protocol works match quickly.
bfc1508d (kx 2023-03-24 03:55:33 +0300 108) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 109) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 110) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 111) \fBcheckout-prefix\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 112) The checkout prefix for readwrite access to the repository. The value of this variable should has \fBpath\fR type
bfc1508d (kx 2023-03-24 03:55:33 +0300 113) without leadinfg dir-separator. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 114) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 115) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 116) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 117) \fIcheckout-prefix = 'svn+ssh://svn@example.com';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 118) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 119) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 120) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 121) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 122) This means the access on behalf \fIsvn\fR system user.
bfc1508d (kx 2023-03-24 03:55:33 +0300 123) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 124) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 125) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 126) \fBbranches\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 127) The name of directory where branches is places. Default value is \fIbranches\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 128) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 129) \fBtrunk\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 130) The name of the \fItrunk\fR directory. Default value is \fItrunks\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 131) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 132) \fBtags\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 133) The name of directory where tags are saved. Default value is \fItags\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 134) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 135) Example declarations of directory names:
bfc1508d (kx 2023-03-24 03:55:33 +0300 136) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 137) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 138) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 139) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 140) \fIbranches = 'branches';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 141) \fItrunk    = 'trunk';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 142) \fItags     = 'tags';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 143) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 144) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 145) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 146) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 147) \fBsnapshots\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 148) The extension of snapshot tarballs. Default value: \fI'tar.xz'\fR. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 149) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 150) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 151) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 152) \fIsnapshots = 'tar.xz';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 153) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 154) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 155) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 156) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 157) Currently snapshot variable is not used by \fBcSvn-ui\fR CGI Script.
bfc1508d (kx 2023-03-24 03:55:33 +0300 158) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 159) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 160) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 161) \fBcss\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 162) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 163) The full name of the CSS style sheet relative to the directory where \fBcSvn-ui\fR CGI Sctipt is installed.
bfc1508d (kx 2023-03-24 03:55:33 +0300 164) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 165) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 166) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 167) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 168) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 169) \fIcss = '/.csvn/css/csvn.css';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 170) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 171) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 172) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 173) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 174) \fBlogo\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 175) Url which specifies the source of an image which will be used as a logo (i.e right banner) on \fBcSvn-ui\fR pages.
bfc1508d (kx 2023-03-24 03:55:33 +0300 176) Default value: \fI'/.csvn/pixmaps/csvn-banner-280x280.png'\fR. The path to the \fBlogo\fR also should be set
bfc1508d (kx 2023-03-24 03:55:33 +0300 177) relative to the directory where \fBcSvn-ui\fR CGI Script is installed. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 178) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 179) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 180) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 181) \fIlogo = '/.csvn/pixmaps/csvn-banner-280x280.png';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 182) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 183) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 184) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 185) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 186) \fBlogo-alt\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 187) The string used in HTML as a 'alt' property of the right banner <img> tag. Default value: \fI"Example.org"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 188) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 189) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 190) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 191) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 192) \fIlogo-alt = "Example.org";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 193) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 194) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 195) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 196) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 197) \fBlogo-link\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 198) The string used in HTML as a 'href' property of the right banner image link <a> tag. Default value: \fI"https://example.org"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 199) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 200) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 201) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 202) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 203) \fIlogo-link = "https://example.org";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 204) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 205) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 206) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 207) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 208) \fBmain-menu-logo\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 209) Url which specifies the source of an image which will be used as a logo of the main menu item on \fBcSvn-ui\fR pages.
bfc1508d (kx 2023-03-24 03:55:33 +0300 210) Default value: \fI'/.csvn/pixmaps/logo/SVN-logo-white-744x744.svg'\fR. The path to the \fBmain-menu-logo\fR also should be set
bfc1508d (kx 2023-03-24 03:55:33 +0300 211) relative to the directory where \fBcSvn-ui\fR CGI Script is installed. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 212) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 213) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 214) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 215) \fImain-menu-logo = '/.csvn/pixmaps/logo/SVN-logo-white-744x744.svg';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 216) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 217) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 218) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 219) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 220) \fBfavicon-path\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 221) The directory name of the 'favicon.ico' file without leadind dir-separator.
bfc1508d (kx 2023-03-24 03:55:33 +0300 222) Default value: \fI'/.csvn/pixmaps/favicon'\fR. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 223) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 224) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 225) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 226) \fIfavicon-path = '/.csvn/pixmaps/favicon';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 227) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 228) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 229) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 230) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 231) This directory name used for finding additional images declared in the HTML \fBheader\fR of all \fBcSvn-ui\fR pages.
bfc1508d (kx 2023-03-24 03:55:33 +0300 232) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 233) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 234) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 235) \fBsyntax-highlight-css\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 236) The base name of the CSS style sheet file used for syntax highlighting.
bfc1508d (kx 2023-03-24 03:55:33 +0300 237) Default value: \fI'_csvn.css'\fR. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 238) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 239) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 240) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 241) \fIsyntax-highlight-css = '_csvn.css';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 242) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 243) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 244) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 245) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 246) \fBcSvn-ui\fR CGI Script uses highlight.js
bfc1508d (kx 2023-03-24 03:55:33 +0300 247) .UR https://\:highlightjs.org\:/
bfc1508d (kx 2023-03-24 03:55:33 +0300 248) .UE
bfc1508d (kx 2023-03-24 03:55:33 +0300 249) installed into \fI'/.csvn/.engines/highlight/${hljs-version}/{css,js}'\fR directories
bfc1508d (kx 2023-03-24 03:55:33 +0300 250) where the default \fI'_csvn.css'\fR file is palced too.
bfc1508d (kx 2023-03-24 03:55:33 +0300 251) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 252) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 253) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 254) \fBheader\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 255) The content of the file specified with this option will be included verbatim at the top of all pages.
bfc1508d (kx 2023-03-24 03:55:33 +0300 256) Default value: \fI'/.csvn/html/header.html'\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 257) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 258) \fBfooter\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 259) The content of the file specified with this option will be included verbatim at the bottom of all pages.
bfc1508d (kx 2023-03-24 03:55:33 +0300 260) Default value: \fI'/.csvn/html/footer.html'\fR. Examle of the \fBheader\fR and the \fBfooter\fR declarations:
bfc1508d (kx 2023-03-24 03:55:33 +0300 261) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 262) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 263) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 264) \fIheader = '/.csvn/html/header.html';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 265) \fIfooter = '/.csvn/html/footer.html';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 266) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 267) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 268) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 269) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 270) The \fBheader\fR and the \fBfooter\fR files used as template where \fBcSvn-ui\fR CGI Script substitute placeholders
bfc1508d (kx 2023-03-24 03:55:33 +0300 271) such as \fI${variable-name}\fR by their values. For example the ${css} placeholder will be replaced by the value
bfc1508d (kx 2023-03-24 03:55:33 +0300 272) of \fIcss\fR variable declared in the \fB/etc/csvn-ui.rc\fR config file.
bfc1508d (kx 2023-03-24 03:55:33 +0300 273) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 274) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 275) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 276) \fBpage-size\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 277) The \fBstring\fR or \fBint\fR variable which set the length of the repositories list or logs shown in one page by the \fBcSvn-ui\fR CGI Script.
bfc1508d (kx 2023-03-24 03:55:33 +0300 278) Default value: 200. Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 279) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 280) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 281) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 282) \fIpage-size = 50; /* 10 ... 200 may be string or integer. Default value is page-size = 200 */\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 283) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 284) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 285) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 286) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 287) \fBowner\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 288) The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages and also in the \fIOwner\fR colon of the repository list.
bfc1508d (kx 2023-03-24 03:55:33 +0300 289) Default value: \fI"Andrey V.Kosteltsev"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 290) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 291) \fBauthor\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 292) The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages. Default value: \fI"Andrey V.Kosteltsev"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 293) Example declarations of the \fBowner\fR and the \fBauthor\fR variables:
bfc1508d (kx 2023-03-24 03:55:33 +0300 294) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 295) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 296) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 297) \fIowner  = "John Smith";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 298) \fIauthor = "John Smith";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 299) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 300) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 301) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 302) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 303) \fBtitle\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 304) The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages as a page title. Default value: \fI"SVN Repositories"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 305) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 306) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 307) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 308) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 309) \fItitle  = "Example.org SVN Repositories";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 310) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 311) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 312) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 313) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 314) \fBdescription\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 315) The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages as a page description.
bfc1508d (kx 2023-03-24 03:55:33 +0300 316) Default value: \fI"Subversion repositories hosted at Solar System, Earth"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 317) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 318) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 319) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 320) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 321) \fIdescription  = "Subversion repositories hosted at example.org (St.-Petersburg)";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 322) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 323) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 324) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 325) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 326) For a long description the value of this \fBstring\fR variable can be splitted in the C-style by following way:
bfc1508d (kx 2023-03-24 03:55:33 +0300 327) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 328) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 329) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 330) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 331) \fIdescription  = "Subversion repositories"\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 332) \fI               " hosted at example.org "\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 333) \fI               "(St.-Petersburg)";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 334) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 335) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 336) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 337) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 338) \fBkeywords\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 339) The \fBstring\fR variable contains space separated keywords used in the HTML header of all \fBcSvn-ui\fR pages as a page keywords.
bfc1508d (kx 2023-03-24 03:55:33 +0300 340) Default value: \fI"cSvn repositories"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 341) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 342) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 343) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 344) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 345) \fIkeywords = "cSvn UI CGI Subversion Repositories scm SVN";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 346) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 347) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 348) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 349) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 350) \fBcopyright-notice\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 351) The \fBstring\fR variable used in the HTML footer of all \fBcSvn-ui\fR pages as a Copyright Notice.
bfc1508d (kx 2023-03-24 03:55:33 +0300 352) Default value: \fI"By using any website materials you agree to indicate source."\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 353) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 354) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 355) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 356) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 357) \fIcopyright-notice = "By using any materials you agree with ...";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 358) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 359) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 360) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 361) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 362) \fBcopyright\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 363) The \fBstring\fR variable used in the HTML footer of all \fBcSvn-ui\fR pages as a Copyright.
bfc1508d (kx 2023-03-24 03:55:33 +0300 364) Default value: \fI"&#169; 2020 Andrey V.Kosteltsev. All Rights Reserved."\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 365) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 366) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 367) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 368) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 369) \fIcopyright = "&#169; John Smith (explorer), 1580 - 1631.";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 370) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 371) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 372) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 373) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 374) \fBhome-page\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 375) The URL of the home page of the project.
bfc1508d (kx 2023-03-24 03:55:33 +0300 376) Default value: \fI"https://example.org"\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 377) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 378) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 379) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 380) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 381) \fIhome-page = "https://main-site-of-the-project.org";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 382) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 383) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 384) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 385) Analytics variables:
bfc1508d (kx 2023-03-24 03:55:33 +0300 386) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 387) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 388) \fBanalytic-links\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 389) The path to the file which contains meta tags with site ownership verificaton codes for engines such as \fIGoogle Search Console\fR or
bfc1508d (kx 2023-03-24 03:55:33 +0300 390) \fIYandex Webmaster\fR. \fBcSvn-ui\fR CGI Script reads the file \fBanalytic-links\fR in RAW format and includes it into <HEAD> tag of each HTML page.
bfc1508d (kx 2023-03-24 03:55:33 +0300 391) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 392) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 393) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 394) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 395) \fIanalytic-links = '/analytics/links';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 396) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 397) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 398) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 399) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 400) Where the file \fI/analytics/links\fR may contains HTML tags like follow:
bfc1508d (kx 2023-03-24 03:55:33 +0300 401) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 402) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 403) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 404) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 405) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 406) \fI<meta name="google-site-verification" content="..." />\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 407) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 408) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 409) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 410) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 411) The file name should be defined relative of the path where \fBcSvn-ui\fR CGI Script is installed. For example, if \fBcSvn-ui\fR CGI Script installed
bfc1508d (kx 2023-03-24 03:55:33 +0300 412) into \fI/srv/www/htdocs/csvn\fR directory and file name declared as \fI/analytics/links\fR then \fBcSvn-ui\fR CGI Script will try to read the
bfc1508d (kx 2023-03-24 03:55:33 +0300 413) file \fI/srv/www/htdocs/csvn/analytics/links\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 414) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 415) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 416) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 417) \fBanalytic-scripts\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 418) The path to the file which contains JavaScripts for engines such as \fIGoogle Search Console\fR or
bfc1508d (kx 2023-03-24 03:55:33 +0300 419) \fIYandex Webmaster\fR. \fBcSvn-ui\fR CGI Script reads the file \fBanalytic-scripts\fR in RAW format and includes it at the end of <HEAD> tag before </HEAD>
bfc1508d (kx 2023-03-24 03:55:33 +0300 420) entry of each HTML page.
bfc1508d (kx 2023-03-24 03:55:33 +0300 421) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 422) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 423) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 424) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 425) \fIanalytic-scripts = '/analytics/scripts';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 426) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 427) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 428) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 429) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 430) Where the file \fI/analytics/scripts\fR may contains code like follow:
bfc1508d (kx 2023-03-24 03:55:33 +0300 431) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 432) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 433) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 434) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 435) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 436) \fI
bfc1508d (kx 2023-03-24 03:55:33 +0300 437) <!-- Global site tag (gtag.js) - Google Analytics -->
bfc1508d (kx 2023-03-24 03:55:33 +0300 438) <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
bfc1508d (kx 2023-03-24 03:55:33 +0300 439) <script>
bfc1508d (kx 2023-03-24 03:55:33 +0300 440)   window.dataLayer = window.dataLayer || [];
bfc1508d (kx 2023-03-24 03:55:33 +0300 441)   function gtag(){dataLayer.push(arguments);}
bfc1508d (kx 2023-03-24 03:55:33 +0300 442)   gtag('js', new Date());
bfc1508d (kx 2023-03-24 03:55:33 +0300 443) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 444)   gtag('config', 'G-XXXXXXXXXX');
bfc1508d (kx 2023-03-24 03:55:33 +0300 445) </script>
bfc1508d (kx 2023-03-24 03:55:33 +0300 446) \fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 447) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 448) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 449) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 450) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 451) Please note that the \fI<script>\fR tags should be present in the \fI/analytics/scripts\fR because \fBcSvn-ui\fR CGI Script reads this file
bfc1508d (kx 2023-03-24 03:55:33 +0300 452) in RAW format and includes it as is.
bfc1508d (kx 2023-03-24 03:55:33 +0300 453) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 454) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 455) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 456) The variables \fBanalytic-links\fR and \fBanalytic-scripts\fR should be declared on the global level of the \fB/etc/csvn-ui.rc\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 457) configuration file and cannot be overriden in a repository declaration.
bfc1508d (kx 2023-03-24 03:55:33 +0300 458) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 459) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 460) Donation variables:
bfc1508d (kx 2023-03-24 03:55:33 +0300 461) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 462) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 463) The \fBcSvn-ui\fR CGI Script provides the ability to create a custom donation dialogue. To do this, you need to create a set of three files:
bfc1508d (kx 2023-03-24 03:55:33 +0300 464) CSS, HTML, and JavaScript file for automation. You can add a donation dialogue for each repository separately, as well as for the
bfc1508d (kx 2023-03-24 03:55:33 +0300 465) entire list of repositories. To enable donation dialogue you have to set the value of \fBdonate\fR variable to \fBdonate = 1\fR:
bfc1508d (kx 2023-03-24 03:55:33 +0300 466) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 467) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 468) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 469) \fBdonate\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 470) The integer variable used to enable or disable donation dialogue.
bfc1508d (kx 2023-03-24 03:55:33 +0300 471) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 472) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 473) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 474) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 475) \fIdonate = 1;\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 476) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 477) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 478) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 479) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 480) \fBdonate-css\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 481) The name of file contains the stylesheet for donation modal dialogue.
bfc1508d (kx 2023-03-24 03:55:33 +0300 482) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 483) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 484) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 485) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 486) \fIdonate-css = '/donations/donate.css';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 487) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 488) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 489) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 490) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 491) \fBdonate-html\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 492) The name of file contains the HTML code of donation modal dialogue.
bfc1508d (kx 2023-03-24 03:55:33 +0300 493) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 494) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 495) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 496) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 497) \fIdonate-html = '/donations/donate.html';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 498) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 499) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 500) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 501) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 502) \fBdonate-js\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 503) The name of file contains the javascript code for donation modal dialogue automation.
bfc1508d (kx 2023-03-24 03:55:33 +0300 504) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 505) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 506) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 507) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 508) \fIdonate-js = '/donations/donate.js';\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 509) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 510) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 511) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 512) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 513) \fBcSvn-ui\fR CGI Script includes these files at end of <BODY> tag just before the closing </BODY> tag. Unlike the others,
bfc1508d (kx 2023-03-24 03:55:33 +0300 514) the \fBdonate-html\fR file should be no more than 8192 bytes in size due to the fact that this file is a template
bfc1508d (kx 2023-03-24 03:55:33 +0300 515) and the values of the following two variables are substituted into its body using placeholders \fI${donate-header}\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 516) and \fI${donate-purpose}\fR:
bfc1508d (kx 2023-03-24 03:55:33 +0300 517) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 518) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 519) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 520) \fBdonate-header\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 521) The title of the donation modal dialogue defined in the \fBdonate-html\fR file.
bfc1508d (kx 2023-03-24 03:55:33 +0300 522) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 523) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 524) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 525) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 526) \fIdonate-header = "Donations";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 527) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 528) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 529) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 530) .TP 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 531) \fBdonate-purpose\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 532) The donation purpose used as value of <input value="..."> tag property in payment form of systems such as \fIPayPal\fR or \fIYandex.Money\fR.
bfc1508d (kx 2023-03-24 03:55:33 +0300 533) Also this value can be used as a header of modal dialogue content.
bfc1508d (kx 2023-03-24 03:55:33 +0300 534) Example declaration:
bfc1508d (kx 2023-03-24 03:55:33 +0300 535) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 536) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 537) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 538) \fIdonate-purpose = "Support for our projects";\fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 539) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 540) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 541) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 542) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 543) Donation dialogue can be defined for each repository separately or defined on global level. In the last case
bfc1508d (kx 2023-03-24 03:55:33 +0300 544) the dialogue header and payment purpose may be overriden in the body of a repository declaration like follow:
bfc1508d (kx 2023-03-24 03:55:33 +0300 545) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 546) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 547) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 548) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 549) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 550) \fI
bfc1508d (kx 2023-03-24 03:55:33 +0300 551) true  = 1;
bfc1508d (kx 2023-03-24 03:55:33 +0300 552) false = 0;
bfc1508d (kx 2023-03-24 03:55:33 +0300 553) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 554) donate         = true;
bfc1508d (kx 2023-03-24 03:55:33 +0300 555) donate-css     = '/donations/donate.css';
bfc1508d (kx 2023-03-24 03:55:33 +0300 556) donate-html    = '/donations/donate.html';
bfc1508d (kx 2023-03-24 03:55:33 +0300 557) donate-js      = '/donations/donate.js';
bfc1508d (kx 2023-03-24 03:55:33 +0300 558) donate-header  = "Donation";
bfc1508d (kx 2023-03-24 03:55:33 +0300 559) donate-purpose = "Support our activities";
bfc1508d (kx 2023-03-24 03:55:33 +0300 560) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 561) section "Tools" {
bfc1508d (kx 2023-03-24 03:55:33 +0300 562)   repo 'repo-path' {
bfc1508d (kx 2023-03-24 03:55:33 +0300 563)     . . .
bfc1508d (kx 2023-03-24 03:55:33 +0300 564)     donate-header  = "Project Donation";
bfc1508d (kx 2023-03-24 03:55:33 +0300 565)     donate-purpose = "Support our Project";
bfc1508d (kx 2023-03-24 03:55:33 +0300 566)     . . .
bfc1508d (kx 2023-03-24 03:55:33 +0300 567)   }
bfc1508d (kx 2023-03-24 03:55:33 +0300 568) }
bfc1508d (kx 2023-03-24 03:55:33 +0300 569) \fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 570) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 571) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 572) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 573) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 574) To show the modal dialogue in javascript code \fBdonate-js\fR the selector 'a.donate' should be used. For examle, like this:
bfc1508d (kx 2023-03-24 03:55:33 +0300 575) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 576) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 577) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 578) .in +6n
bfc1508d (kx 2023-03-24 03:55:33 +0300 579) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 580) \fI
bfc1508d (kx 2023-03-24 03:55:33 +0300 581) var show = document.querySelector( "a.donate" );
bfc1508d (kx 2023-03-24 03:55:33 +0300 582) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 583) /**************
bfc1508d (kx 2023-03-24 03:55:33 +0300 584)   Open Dialog:
bfc1508d (kx 2023-03-24 03:55:33 +0300 585)  */
bfc1508d (kx 2023-03-24 03:55:33 +0300 586) show.onclick = function() {
bfc1508d (kx 2023-03-24 03:55:33 +0300 587)   dialog.style.display = "block";
bfc1508d (kx 2023-03-24 03:55:33 +0300 588) }
bfc1508d (kx 2023-03-24 03:55:33 +0300 589) \fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 590) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 591) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 592) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 593) .RS 4
bfc1508d (kx 2023-03-24 03:55:33 +0300 594) Where the variable \fIdialog\fR points to modal dialogue defined in the \fBdonate-html\fR file.
bfc1508d (kx 2023-03-24 03:55:33 +0300 595) .RE
bfc1508d (kx 2023-03-24 03:55:33 +0300 596) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 597) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 598) .SH "REPOSITORY DECLARATIONS"
bfc1508d (kx 2023-03-24 03:55:33 +0300 599) The \fB/etc/csvn-ui.rc\fR config file should contains at least one repository declaration to be shown by the \fBcSvn-ui\fR CGI Script.
bfc1508d (kx 2023-03-24 03:55:33 +0300 600) When all expected variables declared in the global section the config file the repository declaration can be very simple:
bfc1508d (kx 2023-03-24 03:55:33 +0300 601) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 602) .in +4n
bfc1508d (kx 2023-03-24 03:55:33 +0300 603) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 604) \fI
bfc1508d (kx 2023-03-24 03:55:33 +0300 605) repo 'tools' {
bfc1508d (kx 2023-03-24 03:55:33 +0300 606)   owner = "John Smith";
bfc1508d (kx 2023-03-24 03:55:33 +0300 607)   description = "John Smith's tools source code repository.";
bfc1508d (kx 2023-03-24 03:55:33 +0300 608) }
bfc1508d (kx 2023-03-24 03:55:33 +0300 609) \fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 610) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 611) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 612) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 613) The list of repositories can be splitted in several sections. The section has a name and can contains repository declarations only.
bfc1508d (kx 2023-03-24 03:55:33 +0300 614) .PP
bfc1508d (kx 2023-03-24 03:55:33 +0300 615) .in +4n
bfc1508d (kx 2023-03-24 03:55:33 +0300 616) .EX
bfc1508d (kx 2023-03-24 03:55:33 +0300 617) \fI
bfc1508d (kx 2023-03-24 03:55:33 +0300 618) section "John Smith sources" {
bfc1508d (kx 2023-03-24 03:55:33 +0300 619)   repo 'tools' {
bfc1508d (kx 2023-03-24 03:55:33 +0300 620)     owner = "John Smith";
bfc1508d (kx 2023-03-24 03:55:33 +0300 621)     description = "John Smith's tools source code repository.";
bfc1508d (kx 2023-03-24 03:55:33 +0300 622)   }
bfc1508d (kx 2023-03-24 03:55:33 +0300 623)   repo 'examples' {
bfc1508d (kx 2023-03-24 03:55:33 +0300 624)     owner = "John Smith";
bfc1508d (kx 2023-03-24 03:55:33 +0300 625)     description = "John Smith's examples source code.";
bfc1508d (kx 2023-03-24 03:55:33 +0300 626)   }
bfc1508d (kx 2023-03-24 03:55:33 +0300 627) }
bfc1508d (kx 2023-03-24 03:55:33 +0300 628) \fR
bfc1508d (kx 2023-03-24 03:55:33 +0300 629) .EE
bfc1508d (kx 2023-03-24 03:55:33 +0300 630) .in
bfc1508d (kx 2023-03-24 03:55:33 +0300 631) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 632) Global variables are propagate into repo sections but their values overrides by correspond repo variables.
bfc1508d (kx 2023-03-24 03:55:33 +0300 633) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 634) 
bfc1508d (kx 2023-03-24 03:55:33 +0300 635) .SH "SEE ALSO"
bfc1508d (kx 2023-03-24 03:55:33 +0300 636) .BR cscmd (8)
bfc1508d (kx 2023-03-24 03:55:33 +0300 637)