Collection of themes/skins for the Fossil SCM

⌈⌋ ⎇ branch:  Fossil Skins Extra


Hex Artifact Content

Artifact 58a6c4544b32d64f17ff91e8454482066b7a2929:

  • File eagle.txt — part of check-in [f9e4567420] at 2015-01-29 22:56:44 on branch trunk — New theme from 1.30+ from http://eagle.to/ (user: mario size: 10725)

0000: 23 20 54 68 65 20 22 73 6b 69 6e 22 20 63 6f 6e  # The "skin" con
0010: 66 69 67 75 72 61 74 69 6f 6e 20 65 78 70 6f 72  figuration expor
0020: 74 65 64 20 66 72 6f 6d 0a 23 20 72 65 70 6f 73  ted from.# repos
0030: 69 74 6f 72 79 20 22 2f 68 6f 6d 65 2f 6d 61 72  itory "/home/mar
0040: 69 6f 2f 66 6f 73 73 69 6c 2e 64 2f 73 72 63 2d  io/fossil.d/src-
0050: 66 6f 73 73 69 6c 2f 57 57 57 2e 46 4f 53 53 49  fossil/WWW.FOSSI
0060: 4c 2d 53 43 4d 2e 4f 52 47 2e 66 6f 73 73 69 6c  L-SCM.ORG.fossil
0070: 22 0a 23 20 6f 6e 20 32 30 31 35 2d 30 31 2d 32  ".# on 2015-01-2
0080: 39 20 32 32 3a 35 34 3a 32 35 0a 63 6f 6e 66 69  9 22:54:25.confi
0090: 67 20 2f 63 6f 6e 66 69 67 20 35 33 35 30 0a 31  g /config 5350.1
00a0: 34 32 32 35 37 32 30 34 38 20 27 63 73 73 27 20  422572048 'css' 
00b0: 76 61 6c 75 65 20 27 2f 2a 20 47 65 6e 65 72 61  value '/* Genera
00c0: 6c 20 73 65 74 74 69 6e 67 73 20 66 6f 72 20 74  l settings for t
00d0: 68 65 20 65 6e 74 69 72 65 20 70 61 67 65 20 2a  he entire page *
00e0: 2f 0a 62 6f 64 79 20 7b 0a 20 20 6d 61 72 67 69  /.body {.  margi
00f0: 6e 3a 20 30 65 78 20 31 65 78 3b 0a 20 20 70 61  n: 0ex 1ex;.  pa
0100: 64 64 69 6e 67 3a 20 30 70 78 3b 0a 20 20 62 61  dding: 0px;.  ba
0110: 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20  ckground-color: 
0120: 23 34 38 35 44 37 42 3b 0a 20 20 66 6f 6e 74 2d  #485D7B;.  font-
0130: 66 61 6d 69 6c 79 3a 20 73 61 6e 73 2d 73 65 72  family: sans-ser
0140: 69 66 3b 0a 20 20 63 6f 6c 6f 72 3a 20 77 68 69  if;.  color: whi
0150: 74 65 3b 0a 7d 0a 0a 2f 2a 20 54 68 65 20 70 72  te;.}../* The pr
0160: 6f 6a 65 63 74 20 6c 6f 67 6f 20 69 6e 20 74 68  oject logo in th
0170: 65 20 75 70 70 65 72 20 6c 65 66 74 2d 68 61 6e  e upper left-han
0180: 64 20 63 6f 72 6e 65 72 20 6f 66 20 65 61 63 68  d corner of each
0190: 20 70 61 67 65 20 2a 2f 0a 64 69 76 2e 6c 6f 67   page */.div.log
01a0: 6f 20 7b 0a 20 20 64 69 73 70 6c 61 79 3a 20 74  o {.  display: t
01b0: 61 62 6c 65 2d 63 65 6c 6c 3b 0a 20 20 74 65 78  able-cell;.  tex
01c0: 74 2d 61 6c 69 67 6e 3a 20 63 65 6e 74 65 72 3b  t-align: center;
01d0: 0a 20 20 76 65 72 74 69 63 61 6c 2d 61 6c 69 67  .  vertical-alig
01e0: 6e 3a 20 62 6f 74 74 6f 6d 3b 0a 20 20 66 6f 6e  n: bottom;.  fon
01f0: 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a  t-weight: bold;.
0200: 20 20 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 0a    color: white;.
0210: 20 20 70 61 64 64 69 6e 67 3a 20 35 20 30 20 35    padding: 5 0 5
0220: 20 30 65 6d 3b 0a 20 20 77 68 69 74 65 2d 73 70   0em;.  white-sp
0230: 61 63 65 3a 20 6e 6f 77 72 61 70 3b 0a 7d 0a 0a  ace: nowrap;.}..
0240: 2f 2a 20 54 68 65 20 70 61 67 65 20 74 69 74 6c  /* The page titl
0250: 65 20 63 65 6e 74 65 72 65 64 20 61 74 20 74 68  e centered at th
0260: 65 20 74 6f 70 20 6f 66 20 65 61 63 68 20 70 61  e top of each pa
0270: 67 65 20 2a 2f 0a 64 69 76 2e 74 69 74 6c 65 20  ge */.div.title 
0280: 7b 0a 20 20 64 69 73 70 6c 61 79 3a 20 74 61 62  {.  display: tab
0290: 6c 65 2d 63 65 6c 6c 3b 0a 20 20 66 6f 6e 74 2d  le-cell;.  font-
02a0: 73 69 7a 65 3a 20 32 65 6d 3b 0a 20 20 66 6f 6e  size: 2em;.  fon
02b0: 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a  t-weight: bold;.
02c0: 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 6c 65    text-align: le
02d0: 66 74 3b 0a 20 20 70 61 64 64 69 6e 67 3a 20 30  ft;.  padding: 0
02e0: 20 30 20 30 20 31 65 6d 3b 0a 20 20 63 6f 6c 6f   0 0 1em;.  colo
02f0: 72 3a 20 77 68 69 74 65 3b 0a 20 20 76 65 72 74  r: white;.  vert
0300: 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 62 6f 74 74  ical-align: bott
0310: 6f 6d 3b 0a 20 20 77 69 64 74 68 3a 20 31 30 30  om;.  width: 100
0320: 25 3b 0a 7d 0a 0a 2f 2a 20 54 68 65 20 6c 6f 67  %;.}../* The log
0330: 69 6e 20 73 74 61 74 75 73 20 6d 65 73 73 61 67  in status messag
0340: 65 20 69 6e 20 74 68 65 20 74 6f 70 20 72 69 67  e in the top rig
0350: 68 74 2d 68 61 6e 64 20 63 6f 72 6e 65 72 20 2a  ht-hand corner *
0360: 2f 0a 64 69 76 2e 73 74 61 74 75 73 20 7b 0a 20  /.div.status {. 
0370: 20 64 69 73 70 6c 61 79 3a 20 74 61 62 6c 65 2d   display: table-
0380: 63 65 6c 6c 3b 0a 20 20 74 65 78 74 2d 61 6c 69  cell;.  text-ali
0390: 67 6e 3a 20 72 69 67 68 74 3b 0a 20 20 76 65 72  gn: right;.  ver
03a0: 74 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 62 6f 74  tical-align: bot
03b0: 74 6f 6d 3b 0a 20 20 63 6f 6c 6f 72 3a 20 77 68  tom;.  color: wh
03c0: 69 74 65 3b 0a 20 20 66 6f 6e 74 2d 73 69 7a 65  ite;.  font-size
03d0: 3a 20 30 2e 38 65 6d 3b 0a 20 20 66 6f 6e 74 2d  : 0.8em;.  font-
03e0: 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20  weight: bold;.  
03f0: 6d 69 6e 2d 77 69 64 74 68 3a 20 32 30 30 70 78  min-width: 200px
0400: 3b 0a 20 20 77 68 69 74 65 2d 73 70 61 63 65 3a  ;.  white-space:
0410: 20 6e 6f 77 72 61 70 3b 0a 7d 0a 0a 2f 2a 20 54   nowrap;.}../* T
0420: 68 65 20 68 65 61 64 65 72 20 61 63 72 6f 73 73  he header across
0430: 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20   the top of the 
0440: 70 61 67 65 20 2a 2f 0a 64 69 76 2e 68 65 61 64  page */.div.head
0450: 65 72 20 7b 0a 20 20 64 69 73 70 6c 61 79 3a 20  er {.  display: 
0460: 74 61 62 6c 65 3b 0a 20 20 77 69 64 74 68 3a 20  table;.  width: 
0470: 31 30 30 25 3b 0a 7d 0a 0a 2f 2a 20 54 68 65 20  100%;.}../* The 
0480: 6d 61 69 6e 20 6d 65 6e 75 20 62 61 72 20 74 68  main menu bar th
0490: 61 74 20 61 70 70 65 61 72 73 20 61 74 20 74 68  at appears at th
04a0: 65 20 74 6f 70 20 6f 66 20 74 68 65 20 70 61 67  e top of the pag
04b0: 65 20 62 65 6e 65 61 74 68 0a 2a 2a 20 74 68 65  e beneath.** the
04c0: 20 68 65 61 64 65 72 20 2a 2f 0a 64 69 76 2e 6d   header */.div.m
04d0: 61 69 6e 6d 65 6e 75 20 7b 0a 20 20 70 61 64 64  ainmenu {.  padd
04e0: 69 6e 67 3a 20 35 70 78 20 31 30 70 78 20 35 70  ing: 5px 10px 5p
04f0: 78 20 31 30 70 78 3b 0a 20 20 66 6f 6e 74 2d 73  x 10px;.  font-s
0500: 69 7a 65 3a 20 30 2e 39 65 6d 3b 0a 20 20 66 6f  ize: 0.9em;.  fo
0510: 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b  nt-weight: bold;
0520: 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63  .  text-align: c
0530: 65 6e 74 65 72 3b 0a 20 20 6c 65 74 74 65 72 2d  enter;.  letter-
0540: 73 70 61 63 69 6e 67 3a 20 31 70 78 3b 0a 20 20  spacing: 1px;.  
0550: 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72  background-color
0560: 3a 20 23 37 36 38 36 39 44 3b 0a 20 20 62 6f 72  : #76869D;.  bor
0570: 64 65 72 2d 74 6f 70 2d 6c 65 66 74 2d 72 61 64  der-top-left-rad
0580: 69 75 73 3a 20 38 70 78 3b 0a 20 20 62 6f 72 64  ius: 8px;.  bord
0590: 65 72 2d 74 6f 70 2d 72 69 67 68 74 2d 72 61 64  er-top-right-rad
05a0: 69 75 73 3a 20 38 70 78 3b 0a 20 20 63 6f 6c 6f  ius: 8px;.  colo
05b0: 72 3a 20 77 68 69 74 65 3b 0a 7d 0a 0a 2f 2a 20  r: white;.}../* 
05c0: 54 68 65 20 73 75 62 6d 65 6e 75 20 62 61 72 20  The submenu bar 
05d0: 74 68 61 74 20 2a 73 6f 6d 65 74 69 6d 65 73 2a  that *sometimes*
05e0: 20 61 70 70 65 61 72 73 20 62 65 6c 6f 77 20 74   appears below t
05f0: 68 65 20 6d 61 69 6e 20 6d 65 6e 75 20 2a 2f 0a  he main menu */.
0600: 64 69 76 2e 73 75 62 6d 65 6e 75 2c 20 64 69 76  div.submenu, div
0610: 2e 73 65 63 74 69 6f 6e 6d 65 6e 75 20 7b 0a 20  .sectionmenu {. 
0620: 20 70 61 64 64 69 6e 67 3a 20 33 70 78 20 31 30   padding: 3px 10
0630: 70 78 20 33 70 78 20 30 70 78 3b 0a 20 20 66 6f  px 3px 0px;.  fo
0640: 6e 74 2d 73 69 7a 65 3a 20 30 2e 39 65 6d 3b 0a  nt-size: 0.9em;.
0650: 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62    font-weight: b
0660: 6f 6c 64 3b 0a 20 20 74 65 78 74 2d 61 6c 69 67  old;.  text-alig
0670: 6e 3a 20 63 65 6e 74 65 72 3b 0a 20 20 62 61 63  n: center;.  bac
0680: 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23  kground-color: #
0690: 34 38 35 44 37 42 3b 0a 20 20 63 6f 6c 6f 72 3a  485D7B;.  color:
06a0: 20 77 68 69 74 65 3b 0a 7d 0a 64 69 76 2e 6d 61   white;.}.div.ma
06b0: 69 6e 6d 65 6e 75 20 61 2c 20 64 69 76 2e 6d 61  inmenu a, div.ma
06c0: 69 6e 6d 65 6e 75 20 61 3a 76 69 73 69 74 65 64  inmenu a:visited
06d0: 2c 20 64 69 76 2e 73 75 62 6d 65 6e 75 20 61 2c  , div.submenu a,
06e0: 20 64 69 76 2e 73 75 62 6d 65 6e 75 20 61 3a 76   div.submenu a:v
06f0: 69 73 69 74 65 64 2c 0a 64 69 76 2e 73 65 63 74  isited,.div.sect
0700: 69 6f 6e 6d 65 6e 75 3e 61 2e 62 75 74 74 6f 6e  ionmenu>a.button
0710: 3a 6c 69 6e 6b 2c 20 64 69 76 2e 73 65 63 74 69  :link, div.secti
0720: 6f 6e 6d 65 6e 75 3e 61 2e 62 75 74 74 6f 6e 3a  onmenu>a.button:
0730: 76 69 73 69 74 65 64 20 7b 0a 20 20 70 61 64 64  visited {.  padd
0740: 69 6e 67 3a 20 33 70 78 20 31 30 70 78 20 33 70  ing: 3px 10px 3p
0750: 78 20 31 30 70 78 3b 0a 20 20 63 6f 6c 6f 72 3a  x 10px;.  color:
0760: 20 77 68 69 74 65 3b 0a 20 20 74 65 78 74 2d 64   white;.  text-d
0770: 65 63 6f 72 61 74 69 6f 6e 3a 20 6e 6f 6e 65 3b  ecoration: none;
0780: 0a 7d 0a 64 69 76 2e 6d 61 69 6e 6d 65 6e 75 20  .}.div.mainmenu 
0790: 61 3a 68 6f 76 65 72 2c 20 64 69 76 2e 73 75 62  a:hover, div.sub
07a0: 6d 65 6e 75 20 61 3a 68 6f 76 65 72 2c 20 64 69  menu a:hover, di
07b0: 76 2e 73 65 63 74 69 6f 6e 6d 65 6e 75 3e 61 2e  v.sectionmenu>a.
07c0: 62 75 74 74 6f 6e 3a 68 6f 76 65 72 20 7b 0a 20  button:hover {. 
07d0: 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e   text-decoration
07e0: 3a 20 75 6e 64 65 72 6c 69 6e 65 3b 0a 7d 0a 0a  : underline;.}..
07f0: 2f 2a 20 41 6c 6c 20 70 61 67 65 20 63 6f 6e 74  /* All page cont
0800: 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 62 6f 74  ent from the bot
0810: 74 6f 6d 20 6f 66 20 74 68 65 20 6d 65 6e 75 20  tom of the menu 
0820: 6f 72 20 73 75 62 6d 65 6e 75 20 64 6f 77 6e 20  or submenu down 
0830: 74 6f 0a 2a 2a 20 74 68 65 20 66 6f 6f 74 65 72  to.** the footer
0840: 20 2a 2f 0a 64 69 76 2e 63 6f 6e 74 65 6e 74 20   */.div.content 
0850: 7b 0a 20 20 70 61 64 64 69 6e 67 3a 20 30 65 78  {.  padding: 0ex
0860: 20 31 65 78 20 30 65 78 20 32 65 78 3b 0a 7d 0a   1ex 0ex 2ex;.}.
0870: 0a 2f 2a 20 53 6f 6d 65 20 70 61 67 65 73 20 68  ./* Some pages h
0880: 61 76 65 20 73 65 63 74 69 6f 6e 20 64 69 76 69  ave section divi
0890: 64 65 72 73 20 2a 2f 0a 64 69 76 2e 73 65 63 74  ders */.div.sect
08a0: 69 6f 6e 20 7b 0a 20 20 6d 61 72 67 69 6e 2d 62  ion {.  margin-b
08b0: 6f 74 74 6f 6d 3a 20 30 70 78 3b 0a 20 20 6d 61  ottom: 0px;.  ma
08c0: 72 67 69 6e 2d 74 6f 70 3a 20 31 65 6d 3b 0a 20  rgin-top: 1em;. 
08d0: 20 70 61 64 64 69 6e 67 3a 20 31 70 78 20 31 70   padding: 1px 1p
08e0: 78 20 31 70 78 20 31 70 78 3b 0a 20 20 66 6f 6e  x 1px 1px;.  fon
08f0: 74 2d 73 69 7a 65 3a 20 31 2e 32 65 6d 3b 0a 20  t-size: 1.2em;. 
0900: 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f   font-weight: bo
0910: 6c 64 3b 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64  ld;.  background
0920: 2d 63 6f 6c 6f 72 3a 20 23 34 38 35 44 37 42 3b  -color: #485D7B;
0930: 0a 20 20 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b  .  color: white;
0940: 0a 20 20 77 68 69 74 65 2d 73 70 61 63 65 3a 20  .  white-space: 
0950: 6e 6f 77 72 61 70 3b 0a 7d 0a 0a 2f 2a 20 54 68  nowrap;.}../* Th
0960: 65 20 22 44 61 74 65 22 20 74 68 61 74 20 6f 63  e "Date" that oc
0970: 63 75 72 73 20 6f 6e 20 74 68 65 20 6c 65 66 74  curs on the left
0980: 20 68 61 6e 64 20 73 69 64 65 20 6f 66 20 74 69   hand side of ti
0990: 6d 65 6c 69 6e 65 73 20 2a 2f 0a 64 69 76 2e 64  melines */.div.d
09a0: 69 76 69 64 65 72 20 7b 0a 20 20 62 61 63 6b 67  ivider {.  backg
09b0: 72 6f 75 6e 64 3a 20 23 39 44 42 30 43 43 3b 0a  round: #9DB0CC;.
09c0: 20 20 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 0a    color: white;.
09d0: 20 20 62 6f 72 64 65 72 3a 20 32 70 78 20 77 68    border: 2px wh
09e0: 69 74 65 20 73 6f 6c 69 64 3b 0a 20 20 66 6f 6e  ite solid;.  fon
09f0: 74 2d 73 69 7a 65 3a 20 31 65 6d 3b 20 66 6f 6e  t-size: 1em; fon
0a00: 74 2d 77 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c  t-weight: normal
0a10: 3b 0a 20 20 70 61 64 64 69 6e 67 3a 20 2e 32 35  ;.  padding: .25
0a20: 65 6d 3b 0a 20 20 6d 61 72 67 69 6e 3a 20 2e 32  em;.  margin: .2
0a30: 65 6d 20 30 20 2e 32 65 6d 20 30 3b 0a 20 20 66  em 0 .2em 0;.  f
0a40: 6c 6f 61 74 3a 20 6c 65 66 74 3b 0a 20 20 63 6c  loat: left;.  cl
0a50: 65 61 72 3a 20 6c 65 66 74 3b 0a 20 20 77 68 69  ear: left;.  whi
0a60: 74 65 2d 73 70 61 63 65 3a 20 6e 6f 77 72 61 70  te-space: nowrap
0a70: 3b 0a 7d 0a 0a 2f 2a 20 54 68 65 20 66 6f 6f 74  ;.}../* The foot
0a80: 65 72 20 61 74 20 74 68 65 20 76 65 72 79 20 62  er at the very b
0a90: 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 70 61 67  ottom of the pag
0aa0: 65 20 2a 2f 0a 64 69 76 2e 66 6f 6f 74 65 72 20  e */.div.footer 
0ab0: 7b 0a 20 20 63 6c 65 61 72 3a 20 62 6f 74 68 3b  {.  clear: both;
0ac0: 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 30 2e  .  font-size: 0.
0ad0: 38 65 6d 3b 0a 20 20 6d 61 72 67 69 6e 2d 74 6f  8em;.  margin-to
0ae0: 70 3a 20 31 32 70 78 3b 0a 20 20 70 61 64 64 69  p: 12px;.  paddi
0af0: 6e 67 3a 20 35 70 78 20 31 30 70 78 20 35 70 78  ng: 5px 10px 5px
0b00: 20 31 30 70 78 3b 0a 20 20 74 65 78 74 2d 61 6c   10px;.  text-al
0b10: 69 67 6e 3a 20 72 69 67 68 74 3b 0a 20 20 62 61  ign: right;.  ba
0b20: 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20  ckground-color: 
0b30: 23 34 38 35 44 37 42 3b 0a 20 20 62 6f 72 64 65  #485D7B;.  borde
0b40: 72 2d 62 6f 74 74 6f 6d 2d 6c 65 66 74 2d 72 61  r-bottom-left-ra
0b50: 64 69 75 73 3a 20 38 70 78 3b 0a 20 20 62 6f 72  dius: 8px;.  bor
0b60: 64 65 72 2d 62 6f 74 74 6f 6d 2d 72 69 67 68 74  der-bottom-right
0b70: 2d 72 61 64 69 75 73 3a 20 38 70 78 3b 0a 20 20  -radius: 8px;.  
0b80: 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 0a 7d 0a  color: white;.}.
0b90: 0a 2f 2a 20 48 79 70 65 72 6c 69 6e 6b 20 63 6f  ./* Hyperlink co
0ba0: 6c 6f 72 73 20 69 6e 20 74 68 65 20 66 6f 6f 74  lors in the foot
0bb0: 65 72 20 2a 2f 0a 61 20 7b 20 63 6f 6c 6f 72 3a  er */.a { color:
0bc0: 20 77 68 69 74 65 3b 20 7d 0a 61 3a 6c 69 6e 6b   white; }.a:link
0bd0: 20 7b 20 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b   { color: white;
0be0: 20 7d 0a 61 3a 76 69 73 69 74 65 64 20 7b 20 63   }.a:visited { c
0bf0: 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 20 7d 0a 61  olor: white; }.a
0c00: 3a 68 6f 76 65 72 20 7b 20 63 6f 6c 6f 72 3a 20  :hover { color: 
0c10: 23 39 44 42 30 43 43 3b 20 7d 0a 0a 2f 2a 20 76  #9DB0CC; }../* v
0c20: 65 72 62 61 74 69 6d 20 62 6c 6f 63 6b 73 20 2a  erbatim blocks *
0c30: 2f 0a 70 72 65 2e 76 65 72 62 61 74 69 6d 20 7b  /.pre.verbatim {
0c40: 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f  .  background-co
0c50: 6c 6f 72 3a 20 23 34 38 35 44 37 42 3b 0a 20 20  lor: #485D7B;.  
0c60: 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 0a 20 20  color: white;.  
0c70: 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a  padding: 0.5em;.
0c80: 20 20 77 68 69 74 65 2d 73 70 61 63 65 3a 20 70    white-space: p
0c90: 72 65 2d 77 72 61 70 3b 0a 7d 0a 0a 2f 2a 20 54  re-wrap;.}../* T
0ca0: 68 65 20 6c 61 62 65 6c 2f 76 61 6c 75 65 20 70  he label/value p
0cb0: 61 69 72 73 20 6f 6e 20 28 66 6f 72 20 65 78 61  airs on (for exa
0cc0: 6d 70 6c 65 29 20 74 68 65 20 63 69 20 70 61 67  mple) the ci pag
0cd0: 65 20 2a 2f 0a 74 61 62 6c 65 2e 6c 61 62 65 6c  e */.table.label
0ce0: 2d 76 61 6c 75 65 20 74 68 20 7b 0a 20 20 76 65  -value th {.  ve
0cf0: 72 74 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 74 6f  rtical-align: to
0d00: 70 3b 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a  p;.  text-align:
0d10: 20 72 69 67 68 74 3b 0a 20 20 70 61 64 64 69 6e   right;.  paddin
0d20: 67 3a 20 30 2e 32 65 78 20 32 65 78 3b 0a 7d 0a  g: 0.2ex 2ex;.}.
0d30: 0a 2f 2a 20 54 68 65 20 6e 6f 6d 65 6e 63 6c 61  ./* The nomencla
0d40: 74 75 72 65 20 73 69 64 65 62 6f 78 20 66 6f 72  ture sidebox for
0d50: 20 62 72 61 6e 63 68 65 73 2c 2e 2e 20 2a 2f 0a   branches,.. */.
0d60: 64 69 76 2e 73 69 64 65 62 6f 78 20 7b 0a 20 20  div.sidebox {.  
0d70: 66 6c 6f 61 74 3a 20 72 69 67 68 74 3b 0a 20 20  float: right;.  
0d80: 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72  background-color
0d90: 3a 20 23 34 38 35 44 37 42 3b 0a 20 20 62 6f 72  : #485D7B;.  bor
0da0: 64 65 72 2d 77 69 64 74 68 3a 20 6d 65 64 69 75  der-width: mediu
0db0: 6d 3b 0a 20 20 62 6f 72 64 65 72 2d 73 74 79 6c  m;.  border-styl
0dc0: 65 3a 20 64 6f 75 62 6c 65 3b 0a 20 20 6d 61 72  e: double;.  mar
0dd0: 67 69 6e 3a 20 31 30 70 78 3b 0a 7d 0a 0a 2f 2a  gin: 10px;.}../*
0de0: 20 74 68 65 20 66 6f 72 6d 61 74 20 66 6f 72 20   the format for 
0df0: 74 68 65 20 74 69 6d 65 6c 69 6e 65 20 64 61 74  the timeline dat
0e00: 61 20 74 61 62 6c 65 20 2a 2f 0a 74 61 62 6c 65  a table */.table
0e10: 2e 74 69 6d 65 6c 69 6e 65 54 61 62 6c 65 20 7b  .timelineTable {
0e20: 0a 20 20 63 65 6c 6c 73 70 61 63 69 6e 67 3a 20  .  cellspacing: 
0e30: 30 3b 0a 20 20 62 6f 72 64 65 72 3a 20 30 3b 0a  0;.  border: 0;.
0e40: 20 20 63 65 6c 6c 70 61 64 64 69 6e 67 3a 20 30    cellpadding: 0
0e50: 3b 0a 20 20 66 6f 6e 74 2d 66 61 6d 69 6c 79 3a  ;.  font-family:
0e60: 20 22 63 6f 75 72 69 65 72 20 6e 65 77 22 3b 0a   "courier new";.
0e70: 7d 0a 0a 2f 2a 20 53 69 64 65 2d 62 79 2d 73 69  }../* Side-by-si
0e80: 64 65 20 64 69 66 66 20 2a 2f 0a 74 61 62 6c 65  de diff */.table
0e90: 2e 73 62 73 64 69 66 66 20 7b 0a 20 20 62 61 63  .sbsdiff {.  bac
0ea0: 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23  kground-color: #
0eb0: 34 38 35 44 37 42 3b 0a 20 20 66 6f 6e 74 2d 66  485D7B;.  font-f
0ec0: 61 6d 69 6c 79 3a 20 66 69 78 65 64 2c 20 44 65  amily: fixed, De
0ed0: 6a 61 76 75 20 53 61 6e 73 20 4d 6f 6e 6f 2c 20  javu Sans Mono, 
0ee0: 4d 6f 6e 61 63 6f 2c 20 4c 75 63 69 64 61 20 43  Monaco, Lucida C
0ef0: 6f 6e 73 6f 6c 65 2c 20 6d 6f 6e 6f 73 70 61 63  onsole, monospac
0f00: 65 3b 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20  e;.  font-size: 
0f10: 38 70 74 3b 0a 20 20 62 6f 72 64 65 72 2d 63 6f  8pt;.  border-co
0f20: 6c 6c 61 70 73 65 3a 63 6f 6c 6c 61 70 73 65 3b  llapse:collapse;
0f30: 0a 20 20 77 68 69 74 65 2d 73 70 61 63 65 3a 20  .  white-space: 
0f40: 70 72 65 3b 0a 20 20 77 69 64 74 68 3a 20 39 38  pre;.  width: 98
0f50: 25 3b 0a 20 20 62 6f 72 64 65 72 3a 20 31 70 78  %;.  border: 1px
0f60: 20 23 30 30 30 20 64 61 73 68 65 64 3b 0a 20 20   #000 dashed;.  
0f70: 6d 61 72 67 69 6e 2d 6c 65 66 74 3a 20 61 75 74  margin-left: aut
0f80: 6f 3b 0a 20 20 6d 61 72 67 69 6e 2d 72 69 67 68  o;.  margin-righ
0f90: 74 3a 20 61 75 74 6f 3b 0a 7d 0a 0a 2f 2a 20 66  t: auto;.}../* f
0fa0: 6f 72 6d 61 74 20 66 6f 72 20 74 68 65 20 6c 61  ormat for the la
0fb0: 79 6f 75 74 20 74 61 62 6c 65 2c 20 75 73 65 64  yout table, used
0fc0: 20 66 6f 72 20 74 68 65 20 63 61 70 74 63 68 61   for the captcha
0fd0: 20 64 69 73 70 6c 61 79 20 2a 2f 0a 74 61 62 6c   display */.tabl
0fe0: 65 2e 63 61 70 74 63 68 61 20 7b 0a 20 20 6d 61  e.captcha {.  ma
0ff0: 72 67 69 6e 3a 20 61 75 74 6f 3b 0a 20 20 70 61  rgin: auto;.  pa
1000: 64 64 69 6e 67 3a 20 31 30 70 78 3b 0a 20 20 62  dding: 10px;.  b
1010: 6f 72 64 65 72 2d 77 69 64 74 68 3a 20 34 70 78  order-width: 4px
1020: 3b 0a 20 20 62 6f 72 64 65 72 2d 73 74 79 6c 65  ;.  border-style
1030: 3a 20 64 6f 75 62 6c 65 3b 0a 20 20 62 6f 72 64  : double;.  bord
1040: 65 72 2d 63 6f 6c 6f 72 3a 20 77 68 69 74 65 3b  er-color: white;
1050: 0a 7d 0a 0a 2f 2a 20 66 6f 72 6d 61 74 20 66 6f  .}../* format fo
1060: 72 20 74 68 65 20 75 73 65 72 20 6c 69 73 74 20  r the user list 
1070: 74 61 62 6c 65 20 6f 6e 20 74 68 65 20 75 73 65  table on the use
1080: 72 20 73 65 74 75 70 20 70 61 67 65 20 2a 2f 0a  r setup page */.
1090: 74 61 62 6c 65 2e 75 73 65 74 75 70 55 73 65 72  table.usetupUser
10a0: 4c 69 73 74 20 7b 0a 20 20 6f 75 74 6c 69 6e 65  List {.  outline
10b0: 2d 73 74 79 6c 65 3a 20 64 6f 75 62 6c 65 3b 0a  -style: double;.
10c0: 20 20 6f 75 74 6c 69 6e 65 2d 77 69 64 74 68 3a    outline-width:
10d0: 20 31 70 78 3b 0a 20 20 62 6f 72 64 65 72 2d 63   1px;.  border-c
10e0: 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 0a 20 20 70  olor: white;.  p
10f0: 61 64 64 69 6e 67 3a 20 31 30 70 78 3b 0a 7d 0a  adding: 10px;.}.
1100: 0a 2f 2a 20 63 6f 6c 6f 72 20 66 6f 72 20 63 61  ./* color for ca
1110: 70 61 62 69 6c 69 74 69 65 73 2c 20 69 6e 68 65  pabilities, inhe
1120: 72 69 74 65 64 20 62 79 20 72 65 61 64 65 72 20  rited by reader 
1130: 2a 2f 0a 73 70 61 6e 2e 75 65 64 69 74 49 6e 68  */.span.ueditInh
1140: 65 72 69 74 52 65 61 64 65 72 20 7b 0a 20 20 63  eritReader {.  c
1150: 6f 6c 6f 72 3a 20 77 68 69 74 65 3b 0a 7d 0a 0a  olor: white;.}..
1160: 2f 2a 20 66 6f 72 6d 61 74 20 66 6f 72 20 76 61  /* format for va
1170: 6c 75 65 73 20 6f 6e 20 74 69 63 6b 65 74 20 64  lues on ticket d
1180: 69 73 70 6c 61 79 20 70 61 67 65 20 2a 2f 0a 74  isplay page */.t
1190: 64 2e 74 6b 74 44 73 70 56 61 6c 75 65 20 7b 0a  d.tktDspValue {.
11a0: 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 6c 65    text-align: le
11b0: 66 74 3b 0a 20 20 76 65 72 74 69 63 61 6c 2d 61  ft;.  vertical-a
11c0: 6c 69 67 6e 3a 20 74 6f 70 3b 0a 20 20 62 61 63  lign: top;.  bac
11d0: 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23  kground-color: #
11e0: 34 38 35 44 37 42 3b 0a 7d 0a 0a 2f 2a 20 66 6f  485D7B;.}../* fo
11f0: 72 6d 61 74 20 66 6f 72 20 65 78 61 6d 70 6c 65  rmat for example
1200: 20 74 61 62 6c 65 20 63 65 6c 6c 73 20 6f 6e 20   table cells on 
1210: 74 68 65 20 72 65 70 6f 72 74 20 65 64 69 74 20  the report edit 
1220: 70 61 67 65 20 2a 2f 0a 74 64 2e 72 70 74 65 64  page */.td.rpted
1230: 69 74 65 78 20 7b 0a 20 20 62 6f 72 64 65 72 2d  itex {.  border-
1240: 77 69 64 74 68 3a 20 74 68 69 6e 3b 0a 20 20 62  width: thin;.  b
1250: 6f 72 64 65 72 2d 63 6f 6c 6f 72 3a 20 77 68 69  order-color: whi
1260: 74 65 3b 0a 20 20 62 6f 72 64 65 72 2d 73 74 79  te;.  border-sty
1270: 6c 65 3a 20 73 6f 6c 69 64 3b 0a 7d 0a 0a 2f 2a  le: solid;.}../*
1280: 20 4c 69 73 74 20 6f 66 20 66 69 6c 65 73 20 69   List of files i
1290: 6e 20 61 20 74 69 6d 65 6c 69 6e 65 20 2a 2f 0a  n a timeline */.
12a0: 75 6c 2e 66 69 6c 65 6c 69 73 74 20 7b 0a 20 20  ul.filelist {.  
12b0: 6d 61 72 67 69 6e 2d 74 6f 70 3a 20 33 70 78 3b  margin-top: 3px;
12c0: 0a 20 20 6c 69 6e 65 2d 68 65 69 67 68 74 3a 20  .  line-height: 
12d0: 31 30 30 25 3b 0a 7d 0a 0a 2f 2a 20 73 69 64 65  100%;.}../* side
12e0: 2d 62 79 2d 73 69 64 65 20 64 69 66 66 20 64 69  -by-side diff di
12f0: 73 70 6c 61 79 20 2a 2f 0a 64 69 76 2e 73 62 73  splay */.div.sbs
1300: 64 69 66 66 20 7b 0a 20 20 66 6f 6e 74 2d 66 61  diff {.  font-fa
1310: 6d 69 6c 79 3a 20 6d 6f 6e 6f 73 70 61 63 65 3b  mily: monospace;
1320: 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 73 6d  .  font-size: sm
1330: 61 6c 6c 65 72 3b 0a 20 20 77 68 69 74 65 2d 73  aller;.  white-s
1340: 70 61 63 65 3a 20 70 72 65 3b 0a 7d 0a 0a 2f 2a  pace: pre;.}../*
1350: 20 63 6f 6e 74 65 78 74 20 64 69 66 66 20 64 69   context diff di
1360: 73 70 6c 61 79 20 2a 2f 0a 64 69 76 2e 75 64 69  splay */.div.udi
1370: 66 66 20 7b 0a 20 20 66 6f 6e 74 2d 66 61 6d 69  ff {.  font-fami
1380: 6c 79 3a 20 6d 6f 6e 6f 73 70 61 63 65 3b 0a 20  ly: monospace;. 
1390: 20 77 68 69 74 65 2d 73 70 61 63 65 3a 20 70 72   white-space: pr
13a0: 65 3b 0a 7d 0a 0a 2f 2a 20 63 68 61 6e 67 65 73  e;.}../* changes
13b0: 20 69 6e 20 61 20 64 69 66 66 20 2a 2f 0a 73 70   in a diff */.sp
13c0: 61 6e 2e 64 69 66 66 63 68 6e 67 20 7b 0a 20 20  an.diffchng {.  
13d0: 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72  background-color
13e0: 3a 20 72 67 62 28 31 37 30 2c 20 31 37 30 2c 20  : rgb(170, 170, 
13f0: 31 34 30 29 3b 0a 7d 0a 0a 2f 2a 20 61 64 64 65  140);.}../* adde
1400: 64 20 63 6f 64 65 20 69 6e 20 61 20 64 69 66 66  d code in a diff
1410: 20 2a 2f 0a 73 70 61 6e 2e 64 69 66 66 61 64 64   */.span.diffadd
1420: 20 7b 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d   {.  background-
1430: 63 6f 6c 6f 72 3a 20 72 67 62 28 31 30 30 2c 20  color: rgb(100, 
1440: 32 30 30 2c 20 31 30 30 29 3b 0a 7d 0a 0a 2f 2a  200, 100);.}../*
1450: 20 64 65 6c 65 74 65 64 20 69 6e 20 61 20 64 69   deleted in a di
1460: 66 66 20 2a 2f 0a 73 70 61 6e 2e 64 69 66 66 72  ff */.span.diffr
1470: 6d 20 7b 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64  m {.  background
1480: 2d 63 6f 6c 6f 72 3a 20 72 67 62 28 32 33 30 2c  -color: rgb(230,
1490: 20 31 31 30 2c 20 31 31 30 29 3b 0a 7d 0a 0a 2f   110, 110);.}../
14a0: 2a 20 73 75 70 70 72 65 73 73 65 64 20 6c 69 6e  * suppressed lin
14b0: 65 73 20 69 6e 20 61 20 64 69 66 66 20 2a 2f 0a  es in a diff */.
14c0: 73 70 61 6e 2e 64 69 66 66 68 72 20 7b 0a 20 20  span.diffhr {.  
14d0: 64 69 73 70 6c 61 79 3a 20 69 6e 6c 69 6e 65 2d  display: inline-
14e0: 62 6c 6f 63 6b 3b 0a 20 20 6d 61 72 67 69 6e 3a  block;.  margin:
14f0: 20 2e 35 65 6d 20 30 20 31 65 6d 3b 0a 20 20 63   .5em 0 1em;.  c
1500: 6f 6c 6f 72 3a 20 72 67 62 28 31 35 30 2c 20 31  olor: rgb(150, 1
1510: 35 30 2c 20 31 34 30 29 3b 0a 7d 0a 0a 2f 2a 20  50, 140);.}../* 
1520: 6c 69 6e 65 20 6e 75 6d 62 65 72 73 20 69 6e 20  line numbers in 
1530: 61 20 64 69 66 66 20 2a 2f 0a 73 70 61 6e 2e 64  a diff */.span.d
1540: 69 66 66 6c 6e 20 7b 0a 20 20 63 6f 6c 6f 72 3a  iffln {.  color:
1550: 20 77 68 69 74 65 3b 0a 7d 0a 0a 23 63 61 6e 76   white;.}..#canv
1560: 61 73 20 7b 0a 20 20 62 61 63 6b 67 72 6f 75 6e  as {.  backgroun
1570: 64 2d 63 6f 6c 6f 72 3a 20 23 34 38 35 44 37 42  d-color: #485D7B
1580: 3b 0a 7d 0a 27 0a 63 6f 6e 66 69 67 20 2f 63 6f  ;.}.'.config /co
1590: 6e 66 69 67 20 34 32 32 39 0a 31 34 32 32 35 37  nfig 4229.142257
15a0: 32 30 34 38 20 27 68 65 61 64 65 72 27 20 76 61  2048 'header' va
15b0: 6c 75 65 20 27 3c 68 74 6d 6c 3e 0a 3c 68 65 61  lue '<html>.<hea
15c0: 64 3e 0a 3c 62 61 73 65 20 68 72 65 66 3d 22 24  d>.<base href="$
15d0: 62 61 73 65 75 72 6c 2f 24 63 75 72 72 65 6e 74  baseurl/$current
15e0: 5f 70 61 67 65 22 20 2f 3e 0a 3c 74 69 74 6c 65  _page" />.<title
15f0: 3e 24 3c 70 72 6f 6a 65 63 74 5f 6e 61 6d 65 3e  >$<project_name>
1600: 3a 20 24 3c 74 69 74 6c 65 3e 3c 2f 74 69 74 6c  : $<title></titl
1610: 65 3e 0a 3c 6c 69 6e 6b 20 72 65 6c 3d 22 61 6c  e>.<link rel="al
1620: 74 65 72 6e 61 74 65 22 20 74 79 70 65 3d 22 61  ternate" type="a
1630: 70 70 6c 69 63 61 74 69 6f 6e 2f 72 73 73 2b 78  pplication/rss+x
1640: 6d 6c 22 20 74 69 74 6c 65 3d 22 52 53 53 20 46  ml" title="RSS F
1650: 65 65 64 22 0a 20 20 20 20 20 20 68 72 65 66 3d  eed".      href=
1660: 22 24 68 6f 6d 65 2f 74 69 6d 65 6c 69 6e 65 2e  "$home/timeline.
1670: 72 73 73 22 20 2f 3e 0a 3c 6c 69 6e 6b 20 72 65  rss" />.<link re
1680: 6c 3d 22 73 74 79 6c 65 73 68 65 65 74 22 20 68  l="stylesheet" h
1690: 72 65 66 3d 22 24 73 74 79 6c 65 73 68 65 65 74  ref="$stylesheet
16a0: 5f 75 72 6c 22 20 74 79 70 65 3d 22 74 65 78 74  _url" type="text
16b0: 2f 63 73 73 22 0a 20 20 20 20 20 20 6d 65 64 69  /css".      medi
16c0: 61 3d 22 73 63 72 65 65 6e 22 20 2f 3e 0a 3c 2f  a="screen" />.</
16d0: 68 65 61 64 3e 0a 3c 62 6f 64 79 3e 0a 3c 64 69  head>.<body>.<di
16e0: 76 20 63 6c 61 73 73 3d 22 68 65 61 64 65 72 22  v class="header"
16f0: 3e 0a 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22  >.  <div class="
1700: 6c 6f 67 6f 22 3e 0a 20 20 20 20 3c 74 68 31 3e  logo">.    <th1>
1710: 0a 20 20 20 20 23 23 0a 20 20 20 20 23 23 20 4e  .    ##.    ## N
1720: 4f 54 45 3a 20 54 68 65 20 70 75 72 70 6f 73 65  OTE: The purpose
1730: 20 6f 66 20 74 68 69 73 20 70 72 6f 63 65 64 75   of this procedu
1740: 72 65 20 69 73 20 74 6f 20 74 61 6b 65 20 74 68  re is to take th
1750: 65 20 62 61 73 65 20 55 52 4c 20 6f 66 20 74 68  e base URL of th
1760: 65 0a 20 20 20 20 23 23 20 20 20 20 20 20 20 46  e.    ##       F
1770: 6f 73 73 69 6c 20 70 72 6f 6a 65 63 74 20 61 6e  ossil project an
1780: 64 20 72 65 74 75 72 6e 20 74 68 65 20 72 6f 6f  d return the roo
1790: 74 20 6f 66 20 74 68 65 20 65 6e 74 69 72 65 20  t of the entire 
17a0: 77 65 62 20 73 69 74 65 20 75 73 69 6e 67 0a 20  web site using. 
17b0: 20 20 20 23 23 20 20 20 20 20 20 20 74 68 65 20     ##       the 
17c0: 73 61 6d 65 20 55 52 49 20 73 63 68 65 6d 65 20  same URI scheme 
17d0: 61 73 20 74 68 65 20 62 61 73 65 20 55 52 4c 20  as the base URL 
17e0: 28 65 2e 67 2e 20 68 74 74 70 20 6f 72 20 68 74  (e.g. http or ht
17f0: 74 70 73 29 2e 0a 20 20 20 20 23 23 0a 20 20 20  tps)..    ##.   
1800: 20 70 72 6f 63 20 67 65 74 4c 6f 67 6f 55 72 6c   proc getLogoUrl
1810: 20 7b 20 62 61 73 65 75 72 6c 20 7d 20 7b 0a 20   { baseurl } {. 
1820: 20 20 20 20 20 73 65 74 20 69 64 78 28 66 69 72       set idx(fir
1830: 73 74 29 20 5b 73 74 72 69 6e 67 20 66 69 72 73  st) [string firs
1840: 74 20 2f 2f 20 24 62 61 73 65 75 72 6c 5d 0a 20  t // $baseurl]. 
1850: 20 20 20 20 20 69 66 20 7b 24 69 64 78 28 66 69       if {$idx(fi
1860: 72 73 74 29 20 21 3d 20 2d 31 7d 20 7b 0a 20 20  rst) != -1} {.  
1870: 20 20 20 20 20 20 23 23 0a 20 20 20 20 20 20 20        ##.       
1880: 20 23 23 20 4e 4f 54 45 3a 20 53 6b 69 70 20 73   ## NOTE: Skip s
1890: 65 63 6f 6e 64 20 73 6c 61 73 68 2e 0a 20 20 20  econd slash..   
18a0: 20 20 20 20 20 23 23 0a 20 20 20 20 20 20 20 20       ##.        
18b0: 73 65 74 20 69 64 78 28 66 69 72 73 74 2b 31 29  set idx(first+1)
18c0: 20 5b 65 78 70 72 20 7b 24 69 64 78 28 66 69 72   [expr {$idx(fir
18d0: 73 74 29 20 2b 20 32 7d 5d 0a 20 20 20 20 20 20  st) + 2}].      
18e0: 20 20 23 23 0a 20 20 20 20 20 20 20 20 23 23 20    ##.        ## 
18f0: 4e 4f 54 45 3a 20 28 70 61 72 74 20 31 29 20 54  NOTE: (part 1) T
1900: 68 65 20 5b 73 74 72 69 6e 67 20 66 69 72 73 74  he [string first
1910: 5d 20 63 6f 6d 6d 61 6e 64 20 64 6f 65 73 20 4e  ] command does N
1920: 4f 54 20 61 63 74 75 61 6c 6c 79 0a 20 20 20 20  OT actually.    
1930: 20 20 20 20 23 23 20 20 20 20 20 20 20 73 75 70      ##       sup
1940: 70 6f 72 74 20 74 68 65 20 6f 70 74 69 6f 6e 61  port the optiona
1950: 6c 20 73 74 61 72 74 49 6e 64 65 78 20 61 72 67  l startIndex arg
1960: 75 6d 65 6e 74 20 61 73 20 73 70 65 63 69 66 69  ument as specifi
1970: 65 64 0a 20 20 20 20 20 20 20 20 23 23 20 20 20  ed.        ##   
1980: 20 20 20 20 69 6e 20 74 68 65 20 54 48 31 20 73      in the TH1 s
1990: 75 70 70 6f 72 74 20 6d 61 6e 75 61 6c 3b 20 74  upport manual; t
19a0: 68 65 72 65 66 6f 72 65 2c 20 77 65 20 66 61 6b  herefore, we fak
19b0: 65 20 69 74 20 62 79 0a 20 20 20 20 20 20 20 20  e it by.        
19c0: 23 23 20 20 20 20 20 20 20 75 73 69 6e 67 20 74  ##       using t
19d0: 68 65 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65  he [string range
19e0: 5d 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 74 68  ] command and th
19f0: 65 6e 20 61 64 64 69 6e 67 20 74 68 65 0a 20 20  en adding the.  
1a00: 20 20 20 20 20 20 23 23 20 20 20 20 20 20 20 6e        ##       n
1a10: 65 63 65 73 73 61 72 79 20 6f 66 66 73 65 74 20  ecessary offset 
1a20: 74 6f 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67  to the resulting
1a30: 20 69 6e 64 65 78 20 6d 61 6e 75 61 6c 6c 79 0a   index manually.
1a40: 20 20 20 20 20 20 20 20 23 23 20 20 20 20 20 20          ##      
1a50: 20 28 62 65 6c 6f 77 29 2e 20 20 49 6e 20 54 63   (below).  In Tc
1a60: 6c 2c 20 77 65 20 63 6f 75 6c 64 20 75 73 65 20  l, we could use 
1a70: 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 6e  the following in
1a80: 73 74 65 61 64 3a 0a 20 20 20 20 20 20 20 20 23  stead:.        #
1a90: 23 0a 20 20 20 20 20 20 20 20 23 23 20 20 20 20  #.        ##    
1aa0: 20 20 20 73 65 74 20 69 64 78 28 6e 65 78 74 29     set idx(next)
1ab0: 20 5b 73 74 72 69 6e 67 20 66 69 72 73 74 20 2f   [string first /
1ac0: 20 24 62 61 73 65 75 72 6c 20 24 69 64 78 28 66   $baseurl $idx(f
1ad0: 69 72 73 74 2b 31 29 5d 0a 20 20 20 20 20 20 20  irst+1)].       
1ae0: 20 23 23 0a 20 20 20 20 20 20 20 20 73 65 74 20   ##.        set 
1af0: 69 64 78 28 6e 65 78 74 52 61 6e 67 65 29 20 5b  idx(nextRange) [
1b00: 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 62 61  string range $ba
1b10: 73 65 75 72 6c 20 24 69 64 78 28 66 69 72 73 74  seurl $idx(first
1b20: 2b 31 29 20 65 6e 64 5d 0a 20 20 20 20 20 20 20  +1) end].       
1b30: 20 73 65 74 20 69 64 78 28 6e 65 78 74 29 20 5b   set idx(next) [
1b40: 73 74 72 69 6e 67 20 66 69 72 73 74 20 2f 20 24  string first / $
1b50: 69 64 78 28 6e 65 78 74 52 61 6e 67 65 29 5d 0a  idx(nextRange)].
1b60: 20 20 20 20 20 20 20 20 69 66 20 7b 24 69 64 78          if {$idx
1b70: 28 6e 65 78 74 29 20 21 3d 20 2d 31 7d 20 7b 0a  (next) != -1} {.
1b80: 20 20 20 20 20 20 20 20 20 20 23 23 0a 20 20 20            ##.   
1b90: 20 20 20 20 20 20 20 23 23 20 4e 4f 54 45 3a 20         ## NOTE: 
1ba0: 28 70 61 72 74 20 32 29 20 41 64 64 20 74 68 65  (part 2) Add the
1bb0: 20 6e 65 63 65 73 73 61 72 79 20 6f 66 66 73 65   necessary offse
1bc0: 74 20 74 6f 20 74 68 65 20 72 65 73 75 6c 74 20  t to the result 
1bd0: 6f 66 0a 20 20 20 20 20 20 20 20 20 20 23 23 20  of.          ## 
1be0: 20 20 20 20 20 20 74 68 65 20 73 65 61 72 63 68        the search
1bf0: 20 66 6f 72 20 74 68 65 20 6e 65 78 74 20 73 6c   for the next sl
1c00: 61 73 68 20 28 69 2e 65 2e 20 74 68 65 20 6f 6e  ash (i.e. the on
1c10: 65 20 61 66 74 65 72 0a 20 20 20 20 20 20 20 20  e after.        
1c20: 20 20 23 23 20 20 20 20 20 20 20 74 68 65 20 69    ##       the i
1c30: 6e 69 74 69 61 6c 20 73 65 61 72 63 68 20 66 6f  nitial search fo
1c40: 72 20 74 68 65 20 74 77 6f 20 73 6c 61 73 68 65  r the two slashe
1c50: 73 29 2e 0a 20 20 20 20 20 20 20 20 20 20 23 23  s)..          ##
1c60: 0a 20 20 20 20 20 20 20 20 20 20 73 65 74 20 69  .          set i
1c70: 64 78 28 6e 65 78 74 29 20 5b 65 78 70 72 20 7b  dx(next) [expr {
1c80: 24 69 64 78 28 6e 65 78 74 29 20 2b 20 24 69 64  $idx(next) + $id
1c90: 78 28 66 69 72 73 74 2b 31 29 7d 5d 0a 20 20 20  x(first+1)}].   
1ca0: 20 20 20 20 20 20 20 23 23 0a 20 20 20 20 20 20         ##.      
1cb0: 20 20 20 20 23 23 20 4e 4f 54 45 3a 20 42 61 63      ## NOTE: Bac
1cc0: 6b 20 75 70 20 6f 6e 65 20 63 68 61 72 61 63 74  k up one charact
1cd0: 65 72 20 66 72 6f 6d 20 74 68 65 20 6e 65 78 74  er from the next
1ce0: 20 73 6c 61 73 68 2e 0a 20 20 20 20 20 20 20 20   slash..        
1cf0: 20 20 23 23 0a 20 20 20 20 20 20 20 20 20 20 73    ##.          s
1d00: 65 74 20 69 64 78 28 6e 65 78 74 2d 31 29 20 5b  et idx(next-1) [
1d10: 65 78 70 72 20 7b 24 69 64 78 28 6e 65 78 74 29  expr {$idx(next)
1d20: 20 2d 20 31 7d 5d 0a 20 20 20 20 20 20 20 20 20   - 1}].         
1d30: 20 23 23 0a 20 20 20 20 20 20 20 20 20 20 23 23   ##.          ##
1d40: 20 4e 4f 54 45 3a 20 45 78 74 72 61 63 74 20 74   NOTE: Extract t
1d50: 68 65 20 55 52 49 20 73 63 68 65 6d 65 20 61 6e  he URI scheme an
1d60: 64 20 68 6f 73 74 20 66 72 6f 6d 20 74 68 65 20  d host from the 
1d70: 62 61 73 65 20 55 52 4c 2e 0a 20 20 20 20 20 20  base URL..      
1d80: 20 20 20 20 23 23 0a 20 20 20 20 20 20 20 20 20      ##.         
1d90: 20 73 65 74 20 73 63 68 65 6d 65 20 5b 73 74 72   set scheme [str
1da0: 69 6e 67 20 72 61 6e 67 65 20 24 62 61 73 65 75  ing range $baseu
1db0: 72 6c 20 30 20 24 69 64 78 28 66 69 72 73 74 29  rl 0 $idx(first)
1dc0: 5d 0a 20 20 20 20 20 20 20 20 20 20 73 65 74 20  ].          set 
1dd0: 68 6f 73 74 20 5b 73 74 72 69 6e 67 20 72 61 6e  host [string ran
1de0: 67 65 20 24 62 61 73 65 75 72 6c 20 24 69 64 78  ge $baseurl $idx
1df0: 28 66 69 72 73 74 2b 31 29 20 24 69 64 78 28 6e  (first+1) $idx(n
1e00: 65 78 74 2d 31 29 5d 0a 20 20 20 20 20 20 20 20  ext-1)].        
1e10: 20 20 23 23 0a 20 20 20 20 20 20 20 20 20 20 23    ##.          #
1e20: 23 20 4e 4f 54 45 3a 20 54 72 79 20 74 6f 20 73  # NOTE: Try to s
1e30: 74 61 79 20 69 6e 20 53 53 4c 20 6d 6f 64 65 20  tay in SSL mode 
1e40: 69 66 20 77 65 20 61 72 65 20 74 68 65 72 65 20  if we are there 
1e50: 6e 6f 77 2e 0a 20 20 20 20 20 20 20 20 20 20 23  now..          #
1e60: 23 0a 20 20 20 20 20 20 20 20 20 20 69 66 20 7b  #.          if {
1e70: 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20  [string compare 
1e80: 24 73 63 68 65 6d 65 20 68 74 74 70 3a 2f 5d 20  $scheme http:/] 
1e90: 3d 3d 20 30 7d 20 7b 0a 20 20 20 20 20 20 20 20  == 0} {.        
1ea0: 20 20 20 20 73 65 74 20 73 63 68 65 6d 65 20 68      set scheme h
1eb0: 74 74 70 3a 2f 2f 0a 20 20 20 20 20 20 20 20 20  ttp://.         
1ec0: 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20   } else {.      
1ed0: 20 20 20 20 20 20 73 65 74 20 73 63 68 65 6d 65        set scheme
1ee0: 20 68 74 74 70 73 3a 2f 2f 0a 20 20 20 20 20 20   https://.      
1ef0: 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20      }.          
1f00: 73 65 74 20 6c 6f 67 6f 75 72 6c 20 24 73 63 68  set logourl $sch
1f10: 65 6d 65 24 68 6f 73 74 2f 0a 20 20 20 20 20 20  eme$host/.      
1f20: 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20    } else {.     
1f30: 20 20 20 20 20 73 65 74 20 6c 6f 67 6f 75 72 6c       set logourl
1f40: 20 24 62 61 73 65 75 72 6c 0a 20 20 20 20 20 20   $baseurl.      
1f50: 20 20 7d 0a 20 20 20 20 20 20 7d 20 65 6c 73 65    }.      } else
1f60: 20 7b 0a 20 20 20 20 20 20 20 20 73 65 74 20 6c   {.        set l
1f70: 6f 67 6f 75 72 6c 20 24 62 61 73 65 75 72 6c 0a  ogourl $baseurl.
1f80: 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 72 65        }.      re
1f90: 74 75 72 6e 20 24 6c 6f 67 6f 75 72 6c 0a 20 20  turn $logourl.  
1fa0: 20 20 7d 0a 20 20 20 20 73 65 74 20 6c 6f 67 6f    }.    set logo
1fb0: 75 72 6c 20 5b 67 65 74 4c 6f 67 6f 55 72 6c 20  url [getLogoUrl 
1fc0: 24 62 61 73 65 75 72 6c 5d 0a 20 20 20 20 3c 2f  $baseurl].    </
1fd0: 74 68 31 3e 0a 20 20 20 20 3c 61 20 68 72 65 66  th1>.    <a href
1fe0: 3d 22 24 6c 6f 67 6f 75 72 6c 22 3e 0a 20 20 20  ="$logourl">.   
1ff0: 20 20 20 3c 69 6d 67 20 73 72 63 3d 22 24 6c 6f     <img src="$lo
2000: 67 6f 5f 69 6d 61 67 65 5f 75 72 6c 22 20 62 6f  go_image_url" bo
2010: 72 64 65 72 3d 22 30 22 20 61 6c 74 3d 22 24 70  rder="0" alt="$p
2020: 72 6f 6a 65 63 74 5f 6e 61 6d 65 22 3e 0a 20 20  roject_name">.  
2030: 20 20 3c 2f 61 3e 0a 20 20 3c 2f 64 69 76 3e 0a    </a>.  </div>.
2040: 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 69    <div class="ti
2050: 74 6c 65 22 3e 24 3c 74 69 74 6c 65 3e 3c 2f 64  tle">$<title></d
2060: 69 76 3e 0a 20 20 3c 64 69 76 20 63 6c 61 73 73  iv>.  <div class
2070: 3d 22 73 74 61 74 75 73 22 3e 3c 6e 6f 62 72 3e  ="status"><nobr>
2080: 3c 74 68 31 3e 0a 20 20 20 20 20 69 66 20 7b 5b  <th1>.     if {[
2090: 69 6e 66 6f 20 65 78 69 73 74 73 20 6c 6f 67 69  info exists logi
20a0: 6e 5d 7d 20 7b 0a 20 20 20 20 20 20 20 70 75 74  n]} {.       put
20b0: 73 20 22 4c 6f 67 67 65 64 20 69 6e 20 61 73 20  s "Logged in as 
20c0: 24 6c 6f 67 69 6e 22 0a 20 20 20 20 20 7d 20 65  $login".     } e
20d0: 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 70 75 74  lse {.       put
20e0: 73 20 22 4e 6f 74 20 6c 6f 67 67 65 64 20 69 6e  s "Not logged in
20f0: 22 0a 20 20 20 20 20 7d 0a 20 20 3c 2f 74 68 31  ".     }.  </th1
2100: 3e 3c 2f 6e 6f 62 72 3e 3c 73 6d 61 6c 6c 3e 3c  ></nobr><small><
2110: 64 69 76 20 69 64 3d 22 63 6c 6f 63 6b 22 3e 3c  div id="clock"><
2120: 2f 64 69 76 3e 3c 2f 73 6d 61 6c 6c 3e 3c 2f 64  /div></small></d
2130: 69 76 3e 0a 3c 2f 64 69 76 3e 0a 3c 73 63 72 69  iv>.</div>.<scri
2140: 70 74 3e 0a 66 75 6e 63 74 69 6f 6e 20 75 70 64  pt>.function upd
2150: 61 74 65 43 6c 6f 63 6b 28 29 7b 0a 20 20 76 61  ateClock(){.  va
2160: 72 20 65 20 3d 20 64 6f 63 75 6d 65 6e 74 2e 67  r e = document.g
2170: 65 74 45 6c 65 6d 65 6e 74 42 79 49 64 28 22 63  etElementById("c
2180: 6c 6f 63 6b 22 29 3b 0a 20 20 69 66 28 65 29 7b  lock");.  if(e){
2190: 0a 20 20 20 20 76 61 72 20 64 20 3d 20 6e 65 77  .    var d = new
21a0: 20 44 61 74 65 28 29 3b 0a 20 20 20 20 66 75 6e   Date();.    fun
21b0: 63 74 69 6f 6e 20 66 28 6e 29 20 7b 0a 20 20 20  ction f(n) {.   
21c0: 20 20 20 72 65 74 75 72 6e 20 6e 20 3c 20 31 30     return n < 10
21d0: 20 3f 20 27 27 30 27 27 20 2b 20 6e 20 3a 20 6e   ? ''0'' + n : n
21e0: 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 2e 69 6e  ;.    }.    e.in
21f0: 6e 65 72 48 54 4d 4c 20 3d 20 64 2e 67 65 74 55  nerHTML = d.getU
2200: 54 43 46 75 6c 6c 59 65 61 72 28 29 2b 20 27 27  TCFullYear()+ ''
2210: 2d 27 27 20 2b 0a 20 20 20 20 20 20 66 28 64 2e  -'' +.      f(d.
2220: 67 65 74 55 54 43 4d 6f 6e 74 68 28 29 20 2b 20  getUTCMonth() + 
2230: 31 29 20 2b 20 27 27 2d 27 27 20 2b 0a 20 20 20  1) + ''-'' +.   
2240: 20 20 20 66 28 64 2e 67 65 74 55 54 43 44 61 74     f(d.getUTCDat
2250: 65 28 29 29 20 20 20 20 20 20 2b 20 27 27 20 27  e())      + '' '
2260: 27 20 2b 0a 20 20 20 20 20 20 66 28 64 2e 67 65  ' +.      f(d.ge
2270: 74 55 54 43 48 6f 75 72 73 28 29 29 20 20 20 20  tUTCHours())    
2280: 20 2b 20 27 27 3a 27 27 20 2b 0a 20 20 20 20 20   + '':'' +.     
2290: 20 66 28 64 2e 67 65 74 55 54 43 4d 69 6e 75 74   f(d.getUTCMinut
22a0: 65 73 28 29 29 3b 0a 20 20 20 20 73 65 74 54 69  es());.    setTi
22b0: 6d 65 6f 75 74 28 22 75 70 64 61 74 65 43 6c 6f  meout("updateClo
22c0: 63 6b 28 29 3b 22 2c 28 36 30 2d 64 2e 67 65 74  ck();",(60-d.get
22d0: 55 54 43 53 65 63 6f 6e 64 73 28 29 29 2a 31 30  UTCSeconds())*10
22e0: 30 30 29 3b 0a 20 20 7d 0a 7d 0a 75 70 64 61 74  00);.  }.}.updat
22f0: 65 43 6c 6f 63 6b 28 29 3b 0a 3c 2f 73 63 72 69  eClock();.</scri
2300: 70 74 3e 0a 3c 64 69 76 20 63 6c 61 73 73 3d 22  pt>.<div class="
2310: 6d 61 69 6e 6d 65 6e 75 22 3e 0a 3c 74 68 31 3e  mainmenu">.<th1>
2320: 0a 68 74 6d 6c 20 22 3c 61 20 68 72 65 66 3d 27  .html "<a href='
2330: 27 24 68 6f 6d 65 24 69 6e 64 65 78 5f 70 61 67  '$home$index_pag
2340: 65 27 27 3e 48 6f 6d 65 3c 2f 61 3e 5c 6e 22 0a  e''>Home</a>\n".
2350: 68 74 6d 6c 20 22 3c 61 20 68 72 65 66 3d 27 27  html "<a href=''
2360: 24 68 6f 6d 65 2f 68 65 6c 70 27 27 3e 48 65 6c  $home/help''>Hel
2370: 70 3c 2f 61 3e 5c 6e 22 0a 69 66 20 7b 5b 61 6e  p</a>\n".if {[an
2380: 79 63 61 70 20 6a 6f 72 5d 7d 20 7b 0a 20 20 68  ycap jor]} {.  h
2390: 74 6d 6c 20 22 3c 61 20 68 72 65 66 3d 27 27 24  tml "<a href=''$
23a0: 68 6f 6d 65 2f 74 69 6d 65 6c 69 6e 65 27 27 3e  home/timeline''>
23b0: 54 69 6d 65 6c 69 6e 65 3c 2f 61 3e 5c 6e 22 0a  Timeline</a>\n".
23c0: 7d 0a 69 66 20 7b 5b 68 61 73 63 61 70 20 6f 68  }.if {[hascap oh
23d0: 5d 7d 20 7b 0a 20 20 68 74 6d 6c 20 22 3c 61 20  ]} {.  html "<a 
23e0: 68 72 65 66 3d 27 27 24 68 6f 6d 65 2f 74 72 65  href=''$home/tre
23f0: 65 3f 63 69 3d 74 69 70 27 27 3e 46 69 6c 65 73  e?ci=tip''>Files
2400: 3c 2f 61 3e 5c 6e 22 0a 7d 0a 69 66 20 7b 5b 68  </a>\n".}.if {[h
2410: 61 73 63 61 70 20 6f 5d 7d 20 7b 0a 20 20 68 74  ascap o]} {.  ht
2420: 6d 6c 20 22 3c 61 20 68 72 65 66 3d 27 27 24 68  ml "<a href=''$h
2430: 6f 6d 65 2f 62 72 6c 69 73 74 27 27 3e 42 72 61  ome/brlist''>Bra
2440: 6e 63 68 65 73 3c 2f 61 3e 5c 6e 22 0a 20 20 68  nches</a>\n".  h
2450: 74 6d 6c 20 22 3c 61 20 68 72 65 66 3d 27 27 24  tml "<a href=''$
2460: 68 6f 6d 65 2f 74 61 67 6c 69 73 74 27 27 3e 54  home/taglist''>T
2470: 61 67 73 3c 2f 61 3e 5c 6e 22 0a 7d 0a 69 66 20  ags</a>\n".}.if 
2480: 7b 5b 68 61 73 63 61 70 20 72 5d 7d 20 7b 0a 20  {[hascap r]} {. 
2490: 20 68 74 6d 6c 20 22 3c 61 20 68 72 65 66 3d 27   html "<a href='
24a0: 27 24 68 6f 6d 65 2f 72 65 70 6f 72 74 6c 69 73  '$home/reportlis
24b0: 74 27 27 3e 54 69 63 6b 65 74 73 3c 2f 61 3e 5c  t''>Tickets</a>\
24c0: 6e 22 0a 7d 0a 69 66 20 7b 5b 68 61 73 63 61 70  n".}.if {[hascap
24d0: 20 6a 5d 7d 20 7b 0a 20 20 68 74 6d 6c 20 22 3c   j]} {.  html "<
24e0: 61 20 68 72 65 66 3d 27 27 24 68 6f 6d 65 2f 77  a href=''$home/w
24f0: 69 6b 69 27 27 3e 57 69 6b 69 3c 2f 61 3e 5c 6e  iki''>Wiki</a>\n
2500: 22 0a 7d 0a 69 66 20 7b 5b 68 61 73 63 61 70 20  ".}.if {[hascap 
2510: 73 5d 7d 20 7b 0a 20 20 68 74 6d 6c 20 22 3c 61  s]} {.  html "<a
2520: 20 68 72 65 66 3d 27 27 24 68 6f 6d 65 2f 73 65   href=''$home/se
2530: 74 75 70 27 27 3e 41 64 6d 69 6e 3c 2f 61 3e 5c  tup''>Admin</a>\
2540: 6e 22 0a 7d 20 65 6c 73 65 69 66 20 7b 5b 68 61  n".} elseif {[ha
2550: 73 63 61 70 20 61 5d 7d 20 7b 0a 20 20 68 74 6d  scap a]} {.  htm
2560: 6c 20 22 3c 61 20 68 72 65 66 3d 27 27 24 68 6f  l "<a href=''$ho
2570: 6d 65 2f 73 65 74 75 70 5f 75 6c 69 73 74 27 27  me/setup_ulist''
2580: 3e 55 73 65 72 73 3c 2f 61 3e 5c 6e 22 0a 7d 0a  >Users</a>\n".}.
2590: 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73  if {[info exists
25a0: 20 6c 6f 67 69 6e 5d 7d 20 7b 0a 20 20 68 74 6d   login]} {.  htm
25b0: 6c 20 22 3c 61 20 68 72 65 66 3d 27 27 24 68 6f  l "<a href=''$ho
25c0: 6d 65 2f 6c 6f 67 69 6e 27 27 3e 4c 6f 67 6f 75  me/login''>Logou
25d0: 74 3c 2f 61 3e 5c 6e 22 0a 7d 20 65 6c 73 65 20  t</a>\n".} else 
25e0: 7b 0a 20 20 68 74 6d 6c 20 22 3c 61 20 68 72 65  {.  html "<a hre
25f0: 66 3d 27 27 24 68 6f 6d 65 2f 6c 6f 67 69 6e 27  f=''$home/login'
2600: 27 3e 4c 6f 67 69 6e 3c 2f 61 3e 5c 6e 22 0a 7d  '>Login</a>\n".}
2610: 0a 3c 2f 74 68 31 3e 3c 2f 64 69 76 3e 0a 27 0a  .</th1></div>.'.
2620: 63 6f 6e 66 69 67 20 2f 63 6f 6e 66 69 67 20 39  config /config 9
2630: 34 35 0a 31 34 32 32 35 37 32 30 34 38 20 27 66  45.1422572048 'f
2640: 6f 6f 74 65 72 27 20 76 61 6c 75 65 20 27 3c 64  ooter' value '<d
2650: 69 76 20 63 6c 61 73 73 3d 22 66 6f 6f 74 65 72  iv class="footer
2660: 22 3e 0a 20 20 3c 74 68 31 3e 0a 20 20 70 72 6f  ">.  <th1>.  pro
2670: 63 20 67 65 74 54 63 6c 56 65 72 73 69 6f 6e 20  c getTclVersion 
2680: 7b 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 63 61  {} {.    if {[ca
2690: 74 63 68 20 7b 74 63 6c 45 76 61 6c 20 69 6e 66  tch {tclEval inf
26a0: 6f 20 70 61 74 63 68 6c 65 76 65 6c 7d 20 74 63  o patchlevel} tc
26b0: 6c 56 65 72 73 69 6f 6e 5d 20 3d 3d 20 30 7d 20  lVersion] == 0} 
26c0: 7b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 22  {.      return "
26d0: 3c 61 20 68 72 65 66 3d 5c 22 68 74 74 70 3a 2f  <a href=\"http:/
26e0: 2f 77 77 77 2e 74 63 6c 2e 74 6b 2f 5c 22 3e 54  /www.tcl.tk/\">T
26f0: 63 6c 3c 2f 61 3e 20 76 65 72 73 69 6f 6e 20 24  cl</a> version $
2700: 74 63 6c 56 65 72 73 69 6f 6e 22 0a 20 20 20 20  tclVersion".    
2710: 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 22 22 0a  }.    return "".
2720: 20 20 7d 0a 20 20 70 72 6f 63 20 67 65 74 56 65    }.  proc getVe
2730: 72 73 69 6f 6e 20 7b 20 76 65 72 73 69 6f 6e 20  rsion { version 
2740: 7d 20 7b 0a 20 20 20 20 73 65 74 20 6c 65 6e 67  } {.    set leng
2750: 74 68 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74  th [string lengt
2760: 68 20 24 76 65 72 73 69 6f 6e 5d 0a 20 20 20 20  h $version].    
2770: 72 65 74 75 72 6e 20 5b 73 74 72 69 6e 67 20 72  return [string r
2780: 61 6e 67 65 20 24 76 65 72 73 69 6f 6e 20 31 20  ange $version 1 
2790: 5b 65 78 70 72 20 7b 24 6c 65 6e 67 74 68 20 2d  [expr {$length -
27a0: 20 32 7d 5d 5d 0a 20 20 7d 0a 20 20 73 65 74 20   2}]].  }.  set 
27b0: 76 65 72 73 69 6f 6e 20 5b 67 65 74 56 65 72 73  version [getVers
27c0: 69 6f 6e 20 24 6d 61 6e 69 66 65 73 74 5f 76 65  ion $manifest_ve
27d0: 72 73 69 6f 6e 5d 0a 20 20 73 65 74 20 74 63 6c  rsion].  set tcl
27e0: 56 65 72 73 69 6f 6e 20 5b 67 65 74 54 63 6c 56  Version [getTclV
27f0: 65 72 73 69 6f 6e 5d 0a 20 20 73 65 74 20 66 6f  ersion].  set fo
2800: 73 73 69 6c 55 72 6c 20 68 74 74 70 73 3a 2f 2f  ssilUrl https://
2810: 77 77 77 2e 66 6f 73 73 69 6c 2d 73 63 6d 2e 6f  www.fossil-scm.o
2820: 72 67 0a 20 20 73 65 74 20 66 6f 73 73 69 6c 44  rg.  set fossilD
2830: 61 74 65 20 5b 73 74 72 69 6e 67 20 72 61 6e 67  ate [string rang
2840: 65 20 24 6d 61 6e 69 66 65 73 74 5f 64 61 74 65  e $manifest_date
2850: 20 30 20 39 5d 54 5b 73 74 72 69 6e 67 20 72 61   0 9]T[string ra
2860: 6e 67 65 20 24 6d 61 6e 69 66 65 73 74 5f 64 61  nge $manifest_da
2870: 74 65 20 31 31 20 65 6e 64 5d 0a 20 20 3c 2f 74  te 11 end].  </t
2880: 68 31 3e 0a 20 20 54 68 69 73 20 70 61 67 65 20  h1>.  This page 
2890: 77 61 73 20 67 65 6e 65 72 61 74 65 64 20 69 6e  was generated in
28a0: 20 61 62 6f 75 74 0a 20 20 3c 74 68 31 3e 70 75   about.  <th1>pu
28b0: 74 73 20 5b 65 78 70 72 20 7b 28 5b 75 74 69 6d  ts [expr {([utim
28c0: 65 5d 2b 5b 73 74 69 6d 65 5d 2b 31 30 30 30 29  e]+[stime]+1000)
28d0: 2f 31 30 30 30 2a 30 2e 30 30 31 7d 5d 3c 2f 74  /1000*0.001}]</t
28e0: 68 31 3e 73 20 62 79 0a 20 20 3c 61 20 68 72 65  h1>s by.  <a hre
28f0: 66 3d 22 24 66 6f 73 73 69 6c 55 72 6c 2f 22 3e  f="$fossilUrl/">
2900: 46 6f 73 73 69 6c 3c 2f 61 3e 0a 20 20 76 65 72  Fossil</a>.  ver
2910: 73 69 6f 6e 20 24 72 65 6c 65 61 73 65 5f 76 65  sion $release_ve
2920: 72 73 69 6f 6e 20 24 74 63 6c 56 65 72 73 69 6f  rsion $tclVersio
2930: 6e 0a 20 20 3c 61 20 68 72 65 66 3d 22 24 66 6f  n.  <a href="$fo
2940: 73 73 69 6c 55 72 6c 2f 69 6e 64 65 78 2e 68 74  ssilUrl/index.ht
2950: 6d 6c 2f 69 6e 66 6f 2f 24 76 65 72 73 69 6f 6e  ml/info/$version
2960: 22 3e 24 6d 61 6e 69 66 65 73 74 5f 76 65 72 73  ">$manifest_vers
2970: 69 6f 6e 3c 2f 61 3e 0a 20 20 3c 61 20 68 72 65  ion</a>.  <a hre
2980: 66 3d 22 24 66 6f 73 73 69 6c 55 72 6c 2f 69 6e  f="$fossilUrl/in
2990: 64 65 78 2e 68 74 6d 6c 2f 74 69 6d 65 6c 69 6e  dex.html/timelin
29a0: 65 3f 63 3d 24 66 6f 73 73 69 6c 44 61 74 65 26  e?c=$fossilDate&
29b0: 61 6d 70 3b 79 3d 63 69 22 3e 24 6d 61 6e 69 66  amp;y=ci">$manif
29c0: 65 73 74 5f 64 61 74 65 3c 2f 61 3e 0a 3c 2f 64  est_date</a>.</d
29d0: 69 76 3e 0a 3c 2f 62 6f 64 79 3e 3c 2f 68 74 6d  iv>.</body></htm
29e0: 6c 3e 0a 27 0a                                   l>.'.