ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cfmaps/cfupdate
(Generate patch)

Comparing cfmaps/cfupdate (file contents):
Revision 1.5 by root, Fri Nov 18 23:43:12 2005 UTC vs.
Revision 1.14 by root, Wed Nov 23 09:07:21 2005 UTC

1#!/bin/bash 1#!/bin/bash
2
3# cfupdate - convert a crossfire maps hierarchy to html
4# Copyright (C) 2005 Marc Lehmann <gvpe@schmorp.de>
5#
6# CFUPDATE is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with gvpe; if not, write to the Free Software
18# Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
20VERSION=1.08
2 21
3umask 022 22umask 022
4 23
5PATH=/root/src/crossfire:$PATH 24SRC=/root/src/crossfire
25PATH="$SRC:$PATH"
6BASE=/var/www/cfmaps.schmorp.de 26BASE="/var/www/cfmaps.schmorp.de"
7export CROSSFIRE_LIBDIR=$BASE/lib 27export CROSSFIRE_LIBDIR="$BASE"/lib
8 28
9cd "$BASE" || exit 69 29cd "$BASE" || exit 69
10
11VERSION=1.01
12 30
13cvs -Q -z3 update -AdP | grep -v ^\\? 31cvs -Q -z3 update -AdP | grep -v ^\\?
14 32
15rm -f .cfmap2html 33rm -f .cfmap2html
16 34
35chmod 644 "$SRC"/*.css
36cp "$SRC"/*.css .
37chmod 755 "$SRC"/cfmapidx
38cp "$SRC"/cfmapidx .
39
17find . -name CVS -prune -o -type d -printf "%P/\n" | while read dir; do 40find . "(" -name CVS -o -path ./a ")" -prune -o -type d -printf "%P/\n" | while read dir; do
18 ( 41 (
19 export dir 42 export dir
20 cd "./$dir" || exit 68 43 cd "./$dir" || exit 68
21 { 44 {
22 echo "<html><head><title>Crossfire Maps Directory \"$dir\"</title></head><body><h1>Crossfire Maps Directory \"$dir\"</h1><h2>This Directory</h2><ul>" >&7 45 cat >&7 <<-EOF
23 echo "<li><a href='..'>&lt;parent&gt;</a></li>" >&7 46 <?xml version='1.0' encoding='utf-8'?>
47 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
48 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en'>
49 <head>
50 <title>Crossfire Maps Directory "$dir"</title>
51 <link rel='stylesheet' type='text/css' media='all' href='/common.css'/>
52 </head>
53 <body>
54 <p>Keyword Search Over All Maps</p>
55 <p><form action='/search'>
56 <input type='text' name='k'/>
57 <input type='submit'/>
58 </form></p>
59 <h1>Crossfire Maps Directory "$dir"</h1><ul>
60 <li><a href='..'>&lt;parent&gt;</a></li></ul><h2>This Directory</h2><ul>
61 EOF
24 for file in *; do 62 for file in *; do
25 if [ -f "$file" ]; then 63 if [ -f "$file" ]; then
26 case "$file" in 64 case "$file" in
27 *.pst | *.jpg | *.png | *.html | *.html.gz | *~ ) 65 cfmapidx | *.pst | *.jpg | *.png | *.html | *.html.gz | *.xhtml | *.xhtml.gz | *.css | *~ )
28 ;; 66 ;;
29 * ) 67 * )
30 if head -5 "$file" | grep -q "^arch map"; then 68 if head -5 "$file" | grep -q "^arch map"; then
31 echo "<li><a href='$file.html'>$file</a> [map]</li>" >&7 69 echo >&7 "<li><a href='$file.xhtml'>$file</a> [map]</li>"
32 DIR="${dir#/}" 70 DIR="${dir#/}"
33 echo "$DIR$file" >>$BASE/.cfmap2html 71 echo "$DIR$file" >>$BASE/.cfmap2html
34 else 72 else
35 echo "<li><a href='$file'>$file</a> [file]</li>" >&7 73 echo >&7 "<li><a href='$file'>$file</a> [file]</li>"
36 fi 74 fi
37 ;; 75 ;;
38 esac 76 esac
39 elif [ -d "$file" ]; then 77 elif [ -d "$file" ]; then
40 case "$file" in 78 case "$file" in
41 CVS ) 79 CVS )
42 ;; 80 ;;
43 * ) 81 * )
44 echo "<li><a href='$file/'>$file/</a> [dir]</li>" >&7 82 echo >&7 "<li><a href='$file/'>$file/</a> [dir]</li>"
45 ;; 83 ;;
46 esac 84 esac
47 fi 85 fi
48 done 86 done
49 echo "</ul>" >&7 87 echo >&7 "</ul>"
50 cat <<EOF >&7 88 cat >&7 <<-EOF
51<h2>Bookmarks</h2> 89 <h2>Bookmarks</h2>
52<ul> 90 <ul>
53 <li><a href="/world/">Worldmap</a></li> 91 <li><a href="/world/">Worldmap</a></li>
54 <li><a href="/world/world_105_115.html">Scorn</a></li> 92 <li><a href="/world/world_105_115.xhtml">Scorn</a></li>
55 <li><a href="/world/world_102_108.html">Santo Dominion</a></li> 93 <li><a href="/world/world_102_108.xhtml">Santo Dominion</a></li>
56 <li><a href="/world/world_107_123.html">Brest</a></li> 94 <li><a href="/world/world_107_123.xhtml">Brest</a></li>
57 <li><a href="/world/world_109_126.html">Lake Country</a></li> 95 <li><a href="/world/world_109_126.xhtml">Lake Country</a></li>
58 <li><a href="/world/world_122_117.html">Navar</a></li> 96 <li><a href="/world/world_122_117.xhtml">Navar</a></li>
59 <li><a href="/world/world_116_102.html">Darcap</a></li> 97 <li><a href="/world/world_116_102.xhtml">Darcap</a></li>
60 <li><a href="/world/world_128_109.html">Wolfsburg</a></li> 98 <li><a href="/world/world_128_109.xhtml">Wolfsburg</a></li>
61 <li><a href="/world/world_128_101.html">Azumauindo</a></li> 99 <li><a href="/world/world_128_101.xhtml">Azumauindo</a></li>
62</ul> 100 </ul>
63<hr /> 101 <p class="footer">created by <a href='http://software.schmorp.de/#crossfire'>cfupdate</a> version $VERSION</p>
64<p style='font-size: 8pt;'>created by <b>update</b> version $VERSION</p>
65EOF 102 EOF
66 echo "</body></html>" >&7 103 echo >&7 "</body></html>"
67 } 7>index.html 104 } 7>index.xhtml
105 #gzip -7f index.xhtml
68 ) 106 )
69done 107done
70 108
71<.cfmap2html xargs cfmap2html 109<.cfmap2html xargs cfmap2html
110<.cfmap2html xargs cfmapidx -a
111cfmapidx -c
112mv .index.dat~ .index.dat
113
72rm -f .cfmap2html 114#rm -f .cfmap2html
73 115
74cfarch2html 116cfarch2html
75cfworldmap 117cfworldmap
76 118
77chown -R root.root . 119chown -R root.root .

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines