ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cfmaps/cfupdate
Revision: 1.42
Committed: Thu Jan 14 18:29:03 2010 UTC (14 years, 3 months ago) by root
Branch: MAIN
CVS Tags: HEAD
Changes since 1.41: +1 -1 lines
Log Message:
improve fishy

File Contents

# Content
1 #!/bin/bash
2
3 # cfupdate - convert a deliantra maps hierarchy to html
4 # Copyright (C) 2005,2007,2008 Marc Lehmann <cfmaps@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 cfmaps; if not, write to the Free Software
18 # Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
20 VERSION=2.033
21
22 umask 022
23
24 SRC=/root/src/cfmaps
25 PATH="$SRC:$PATH"
26 export BASE=${BASE:-/var/www/maps.deliantra.net}
27 export DELIANTRA_LIBDIR=${DELIANTRA_LIBDIR:-$BASE/lib}
28
29 cd "$BASE" || exit 69
30
31 #wget -qm --no-check-certificate https://cat2.dynu.ca/cat2/mlab-devel.tar.gz
32 #if [ cat2.dynu.ca/cat2/mlab-devel.tar.gz -nt cat2.dynu.ca/cat2/mlab-devel.tar.gz~ ]; then
33 # tar xzpf cat2.dynu.ca/cat2/mlab-devel.tar.gz
34 # chown -R root.root mlab-devel
35 # chmod -R u=rwX,go=rX mlab-devel
36 # ln -f cat2.dynu.ca/cat2/mlab-devel.tar.gz cat2.dynu.ca/cat2/mlab-devel.tar.gz~
37 #fi
38
39 rm -f .cfmap2html
40
41 chmod 644 "$SRC"/*.css
42 cp "$SRC"/*.css .
43 chmod 755 "$SRC"/cfmapidx
44 cp "$SRC"/cfmapidx .
45
46 find . "(" -name CVS -o -path ./a -o -name .svn ")" -prune -o -type d -printf "%P/\n" | while read dir; do
47 (
48 export dir
49 cd "./$dir" || exit 68
50 {
51 cat >&7 <<-EOF
52 <?xml version='1.0' encoding='utf-8'?>
53 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
54 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en'>
55 <head>
56 <title>Deliantra Maps Directory "$dir"</title>
57 <link rel='stylesheet' type='text/css' media='all' href='/common.css'/>
58 </head>
59 <body>
60 <p>Keyword Search Over All Maps</p>
61 <form action='/search'><p>
62 <input type='text' name='k'/>
63 <input type='submit'/>
64 </p></form>
65 <h1>Deliantra Maps Directory "$dir"</h1><ul>
66 <li><a href='..'>&lt;parent&gt;</a></li></ul><h2>This Directory</h2><ul>
67 EOF
68 for file in *; do
69 if [ -h "$file" ]; then
70 : # ignore for now
71 elif [ -f "$file" ]; then
72 case "$file" in
73 cfmapidx | *.jpg | *.png | *.xhtml | *.xhtml.gz | *.css | *.err | *~ )
74 ;;
75 *.map )
76 echo >&7 "<li><a href='${file%.map}.xhtml'>${file%.map}</a> [map] <img class='mapthumb' src='${file%.map}.jpg' /></li>"
77 DIR="${dir#/}"
78 echo "$DIR$file" >>$BASE/.cfmap2html
79 ;;
80 * )
81 # non-deliantra compatibility
82 if [ "$(head -1 "$file")" = "arch map" ]; then
83 echo >&7 "<li><a href='$file.xhtml'>$file</a> [map] <img class='mapthumb' src='$file.jpg' /></li>"
84 ln -sf "$file" "$file.map"
85 DIR="${dir#/}"
86 echo "$DIR$file.map" >>$BASE/.cfmap2html
87 else
88 echo >&7 "<li><a href='$file'>$file</a> [file]</li>"
89 fi
90 ;;
91 esac
92 elif [ -d "$file" ]; then
93 case "$file" in
94 CVS )
95 ;;
96 * )
97 echo >&7 "<li><a href='$file/'>$file/</a> [dir]</li>"
98 ;;
99 esac
100 fi
101 done
102 echo >&7 "</ul>"
103 cat >&7 <<-EOF
104 <h2>Bookmarks</h2>
105 <ul>
106 <li><a href="/world/">Worldmap</a></li>
107 <li><a href="/world/world_105_115.xhtml">Scorn</a></li>
108 <li><a href="/world/world_102_108.xhtml">Santo Dominion</a></li>
109 <li><a href="/world/world_107_123.xhtml">Brest</a></li>
110 <li><a href="/world/world_109_126.xhtml">Lake Country</a></li>
111 <li><a href="/world/world_122_117.xhtml">Navar</a></li>
112 <li><a href="/world/world_116_102.xhtml">Darcap</a></li>
113 <li><a href="/world/world_128_109.xhtml">Wolfsburg</a></li>
114 <li><a href="/world/world_128_101.xhtml">Azumauindo</a></li>
115 </ul>
116 <p class="footer">created by <a href='http://software.schmorp.de/pkg/cfmaps'>cfupdate</a> version $VERSION</p>
117 EOF
118 echo >&7 "</body></html>"
119 } 7>index.xhtml~
120
121 if [ "$DIR" = "world/" -o "$DIR" = "world-overlay/" ]; then
122 rm index.xhtml~
123 else
124 mv index.xhtml~ index.xhtml
125 fi
126 #gzip -7f index.xhtml
127 )
128 done
129
130 for dir in *; do
131 if [ -e "$dir/${dir}_123_107.map" ]; then
132 cfworldmap "$dir"
133 fi
134 done
135
136 cfarch2html
137
138 rm -f .index.dat~
139 <.cfmap2html xargs -l90 cfmap2html
140 <.cfmap2html xargs -l50 cfmapidx -a
141 cfmapidx -a -r # reorganise
142 mv .index.dat~ .index.dat
143
144 rm -f .cfmap2html
145
146 chown -R root.root .
147 chmod -R u=rwX,go=rX .
148