ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cfmaps/cfupdate
Revision: 1.14
Committed: Wed Nov 23 09:07:21 2005 UTC (18 years, 5 months ago) by root
Branch: MAIN
Changes since 1.13: +12 -4 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 #!/bin/bash
2    
3 root 1.6 # 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    
20 root 1.14 VERSION=1.08
21 root 1.7
22 root 1.1 umask 022
23    
24 root 1.9 SRC=/root/src/crossfire
25     PATH="$SRC:$PATH"
26     BASE="/var/www/cfmaps.schmorp.de"
27     export CROSSFIRE_LIBDIR="$BASE"/lib
28 root 1.1
29     cd "$BASE" || exit 69
30    
31     cvs -Q -z3 update -AdP | grep -v ^\\?
32    
33     rm -f .cfmap2html
34    
35 root 1.10 chmod 644 "$SRC"/*.css
36     cp "$SRC"/*.css .
37 root 1.14 chmod 755 "$SRC"/cfmapidx
38     cp "$SRC"/cfmapidx .
39 root 1.9
40 root 1.14 find . "(" -name CVS -o -path ./a ")" -prune -o -type d -printf "%P/\n" | while read dir; do
41 root 1.1 (
42     export dir
43     cd "./$dir" || exit 68
44     {
45 root 1.9 cat >&7 <<-EOF
46     <?xml version='1.0' encoding='utf-8'?>
47 root 1.13 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
48 root 1.9 <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 root 1.14 <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 root 1.9 <li><a href='..'>&lt;parent&gt;</a></li></ul><h2>This Directory</h2><ul>
61     EOF
62 root 1.1 for file in *; do
63     if [ -f "$file" ]; then
64     case "$file" in
65 root 1.14 cfmapidx | *.pst | *.jpg | *.png | *.html | *.html.gz | *.xhtml | *.xhtml.gz | *.css | *~ )
66 root 1.1 ;;
67     * )
68     if head -5 "$file" | grep -q "^arch map"; then
69 root 1.8 echo >&7 "<li><a href='$file.xhtml'>$file</a> [map]</li>"
70 root 1.1 DIR="${dir#/}"
71     echo "$DIR$file" >>$BASE/.cfmap2html
72     else
73 root 1.8 echo >&7 "<li><a href='$file'>$file</a> [file]</li>"
74 root 1.1 fi
75     ;;
76     esac
77     elif [ -d "$file" ]; then
78     case "$file" in
79     CVS )
80     ;;
81     * )
82 root 1.8 echo >&7 "<li><a href='$file/'>$file/</a> [dir]</li>"
83 root 1.1 ;;
84     esac
85     fi
86     done
87 root 1.8 echo >&7 "</ul>"
88 root 1.9 cat >&7 <<-EOF
89     <h2>Bookmarks</h2>
90     <ul>
91     <li><a href="/world/">Worldmap</a></li>
92     <li><a href="/world/world_105_115.xhtml">Scorn</a></li>
93     <li><a href="/world/world_102_108.xhtml">Santo Dominion</a></li>
94     <li><a href="/world/world_107_123.xhtml">Brest</a></li>
95     <li><a href="/world/world_109_126.xhtml">Lake Country</a></li>
96     <li><a href="/world/world_122_117.xhtml">Navar</a></li>
97     <li><a href="/world/world_116_102.xhtml">Darcap</a></li>
98     <li><a href="/world/world_128_109.xhtml">Wolfsburg</a></li>
99     <li><a href="/world/world_128_101.xhtml">Azumauindo</a></li>
100     </ul>
101     <p class="footer">created by <a href='http://software.schmorp.de/#crossfire'>cfupdate</a> version $VERSION</p>
102     EOF
103 root 1.8 echo >&7 "</body></html>"
104     } 7>index.xhtml
105 root 1.13 #gzip -7f index.xhtml
106 root 1.1 )
107     done
108    
109     <.cfmap2html xargs cfmap2html
110 root 1.12 <.cfmap2html xargs cfmapidx -a
111     cfmapidx -c
112     mv .index.dat~ .index.dat
113    
114     #rm -f .cfmap2html
115 root 1.2
116     cfarch2html
117 root 1.3 cfworldmap
118    
119     chown -R root.root .
120     chmod -R u=rwX,go=rX .
121 root 1.2