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

Comparing cfmaps/cfupdate (file contents):
Revision 1.1 by root, Thu Nov 17 11:51:08 2005 UTC vs.
Revision 1.34 by root, Thu Oct 22 03:04:34 2009 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines