properly ; terminate some JS
[booh] / lib / booh / html-merges.rb
1 #
2 #                         *  BOOH  *
3 #
4 # A.k.a `Best web-album Of the world, Or your money back, Humerus'.
5 #
6 # The acronyn sucks, however this is a tribute to Dragon Ball by
7 # Akira Toriyama, where the last enemy beaten by heroes of Dragon
8 # Ball is named "Boo". But there was already a free software project
9 # called Boo, so this one will be it "Booh". Or whatever.
10 #
11 #
12 # Copyright (c) 2004 Guillaume Cottenceau <gc3 at bluewin.ch>
13 #
14 # This software may be freely redistributed under the terms of the GNU
15 # public license version 2.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
21 # holds static data to merge in the html "themes"
22
23 require 'gettext'
24 bindtextdomain("booh")
25
26 require 'booh/booh-lib'
27 require 'booh/version.rb'
28 include Booh
29
30 $image_head_code = '<meta name="generator" content="Booh-' + $VERSION + <<'EOF'
31  http://booh.org/"/>
32
33 <script language="JavaScript1.1" type="text/JavaScript">
34 var images = new Array(~~images~~);
35 var types = new Array(~~types~~);
36 var videos = new Array(~~videos~~);
37 var videos_widths = new Array(~~videos_widths~~);
38 var videos_heights = new Array(~~videos_heights~~);
39 ~~other_images~~
40 var thumbnailspages = new Array(~~thumbnailspages~~);
41 var other_sizes = new Array(~~other_sizes~~);
42 var captions = new Array(~~captions~~);
43
44 dbltilda_current_size = '~~current_size~~';
45 dbltilda_theme = '~~theme~~';
46 dbltilda_stop_slideshow = '~~stop_slideshow~~';
47 dbltilda_run_slideshow = '~~run_slideshow~~';
48 dbltilda_htmlsuffix = '~~htmlsuffix~~';
49 dbltilda_pathtobase = '~~pathtobase~~';
50 dbltilda_flowplayer_active = '~~flowplayer_active~~';
51 </script>
52 EOF
53
54 $image_head_code.sub!('~~run_slideshow~~', defer_translation(N_('Run slideshow!')))
55 $image_head_code.sub!('~~stop_slideshow~~', defer_translation(N_('Stop slideshow')))
56
57 $body_additions = <<'EOF'
58 onload="init()" id="body"
59 EOF
60
61 $button_first = '
62     <form action="fake"><input type="button"
63                  onclick="first()"
64                  value="' + defer_translation(N_('<<- First')) + '"
65                  id="b_first"/></form>'
66
67 $button_previous = '
68     <form action="fake"><input type="button"
69                  onclick="previous()"
70                  value="' + defer_translation(N_('<- Previous')) + '"
71                  id="b_previous"/></form>'
72
73 $button_next = '
74     <form action="fake"><input type="button"
75                  onclick="next()"
76                  value="' + defer_translation(N_('Next ->')) + '"
77                  id="b_next"/></form>'
78
79 $button_last = '
80     <form action="fake"><input type="button"
81                  onclick="last()"
82                  value="' + defer_translation(N_('Last ->>')) + '"
83                  id="b_last"/></form>'
84
85 $button_slideshow = '
86     <input type="button"
87            onclick="toggle_slideshow(true)"
88            value="' + defer_translation(N_('Run slideshow!')) + '"
89            id="b_slideshow"/>'
90
91 $pause_slideshow = '
92     <font size="-2">' + defer_translation(N_('pause:')) + '<input type="text" id="secs" size="1" value="3"/>' + defer_translation(N_('secs')) + '</font>'
93
94
95 $image = <<'EOF'
96   <span id="main_img">Loading image, please wait...</span>
97 EOF
98
99 $image_counter_additions = <<'EOF'
100   id="image_counter"
101 EOF
102
103 $caption_additions = <<'EOF'
104   id="main_text"
105 EOF
106
107 $body_code = <<'EOF'
108 EOF
109
110
111 $thumbnails_head_code = '<meta name="generator" content="Booh-' + $VERSION + <<'EOF'
112  http://booh.org/"/>
113
114 <script language="JavaScript1.1" type="text/JavaScript">
115 function set_preferred_size(val) {
116     var expires = new Date(new Date().getTime() + (30 * 86400000));  // 30 days
117     document.cookie = 'booh-preferred-size-~~theme~~='
118                       + val
119                       + '; expires=' + expires.toGMTString()
120                       + '; path=/';
121 }
122 </script>
123 EOF
124
125
126 $preferred_size_reloader = <<'EOF'
127 <html>
128     <head>
129         <script language="JavaScript1.1" type="text/JavaScript">
130
131 var sizes = new Array(~~all_sizes~~);
132
133 function getPreferredSize() {
134     if (document.cookie) {
135         var index = document.cookie.indexOf('booh-preferred-size-~~theme~~');
136         if (index != -1) {
137             var oleft = document.cookie.indexOf('=', index) + 1;
138             var oright = document.cookie.indexOf(';', index);
139             if (oright == -1) {
140                 oright = document.cookie.length;
141             }
142             size = document.cookie.substring(oleft, oright);
143             for (i = 0; i < sizes.length; i++) {
144                 if (sizes[i] == size) {
145                     return 'thumbnails-' + size + '-0~~htmlsuffix~~';
146                 }
147             }
148         }
149     }
150     w = document.body.offsetWidth;
151     ~~size_auto_chooser~~
152     return 'thumbnails-~~default_size~~-0~~htmlsuffix~~';
153 }
154
155         </script>
156
157         <meta http-equiv="refresh" content="0.1;url=thumbnails-~~default_size~~-nojs-0~~htmlsuffix~~" />
158     </head>
159     <body onload="window.location.href = getPreferredSize()">
160     </body>
161 </html>
162 EOF
163
164
165 $index_head_code = '<meta name="generator" content="Booh-' + $VERSION + ' http://booh.org/"/>
166 <script language="JavaScript1.1" type="text/JavaScript">
167 function init() {
168     if (!document.cookie || document.cookie.indexOf("booh-not-a-newbie") == -1) {
169         document.getElementById("title").innerHTML += "<br/><br/>' + defer_translation(N_("<i>Hint: you can click on the images to open the albums!</i>")) + '";
170     }
171     var expires = new Date(new Date().getTime() + (10 * 86400000));  // 10 days
172     document.cookie = "booh-not-a-newbie=true"
173                       + "; expires=" + expires.toGMTString()
174                       + "; path=/";
175 }
176 </script>'