7 */ |
7 */ |
8 set_include_path( |
8 set_include_path( |
9 'lib' |
9 'lib' |
10 . PATH_SEPARATOR . get_include_path() |
10 . PATH_SEPARATOR . get_include_path() |
11 ); |
11 ); |
|
12 |
|
13 function get_config_translations($config) { |
|
14 |
|
15 $fr = array(); |
|
16 $en = array(); |
|
17 $jp = array(); |
|
18 |
|
19 $array_loop = array("fr"=>&$fr,"en"=>&$en,"jp"=>&$jp); |
|
20 /** |
|
21 * add all config key as translation. |
|
22 * translation key is "config__<config_key>" |
|
23 */ |
|
24 foreach ($config as $key => $value) { |
|
25 $translation_key = "config__$key"; |
|
26 |
|
27 foreach ($array_loop as $lang => &$lang_array) { |
|
28 if(is_array($value) && count(array_intersect_key($value,$array_loop)) > 0 ) { |
|
29 if (array_key_exists($lang, $value)) { |
|
30 $lang_array[$translation_key] = $value[$lang]; |
|
31 } |
|
32 elseif (array_key_exists('fr', $value)) { |
|
33 $lang_array[$translation_key] = $value['fr']; |
|
34 } |
|
35 } |
|
36 else { |
|
37 $lang_array[$translation_key] = $value; |
|
38 } |
|
39 } |
|
40 } |
|
41 |
|
42 return $array_loop; |
|
43 |
|
44 } |
12 |
45 |
13 /** |
46 /** |
14 * Base configuration |
47 * Base configuration |
15 */ |
48 */ |
16 $C_default_rep = 'JaneMcGonigal-gameDesign'; |
49 $C_default_rep = 'JaneMcGonigal-gameDesign'; |
67 /** |
100 /** |
68 * TRADUCTION |
101 * TRADUCTION |
69 **/ |
102 **/ |
70 |
103 |
71 |
104 |
72 Zend_Loader::loadClass('Zend_Translate'); |
105 Zend_Loader::loadClass('Zend_Translate'); |
73 Zend_Loader::loadClass('Zend_Http_Cookie'); |
106 Zend_Loader::loadClass('Zend_Http_Cookie'); |
74 |
107 |
75 |
108 |
76 $client = new Zend_Http_Client(); |
109 $client = new Zend_Http_Client(); |
77 $translate = new Zend_Translate('array', $init, 'fr'); |
110 $translate = new Zend_Translate('array', $init, 'fr'); |
|
111 |
78 |
112 |
79 $translate->addTranslation($english, 'en'); |
113 $translate->addTranslation($english, 'en'); |
80 $translate->addTranslation($japan, 'ja_JP'); |
114 $translate->addTranslation($japan, 'ja_JP'); |
81 $translate->addTranslation($french, 'fr'); |
115 $translate->addTranslation($french, 'fr'); |
82 |
116 |
|
117 if(isset($config)) { |
|
118 $config_translations = get_config_translations($config); |
|
119 |
|
120 |
|
121 $translate->addTranslation($config_translations['en'], 'en'); |
|
122 $translate->addTranslation($config_translations['jp'], 'ja_JP'); |
|
123 $translate->addTranslation($config_translations['fr'], 'fr'); |
|
124 } |
|
125 |
83 $actual = $translate->getLocale(); |
126 $actual = $translate->getLocale(); |
84 |
127 |
85 //$translate->setLocale("en"); |
128 //$translate->setLocale("en"); |
86 // $acceptCookie = $this->_request->getCookie('acceptCookie',0); |
129 // $acceptCookie = $this->_request->getCookie('acceptCookie',0); |
87 |
130 |
197 return ${ |
240 return ${ |
198 $registry_name}[$registry][$key]; |
241 $registry_name}[$registry][$key]; |
199 |
242 |
200 } |
243 } |
201 |
244 |
202 function get_archive_box($rep, $metadata, $url_root, $basepath) { |
245 function get_archive_box($rep, $metadata, $url_root, $basepath, &$translate) { |
203 |
246 |
204 include("$basepath$rep/config.php"); |
247 include("$basepath$rep/config.php"); |
205 |
248 |
|
249 |
|
250 $config_translations = get_config_translations($config); |
|
251 |
|
252 // save the locale because it gets changed when adding translations |
|
253 $locale = $translate->getLocale(); |
|
254 |
|
255 $translate->addTranslation($config_translations['en'], 'en'); |
|
256 $translate->addTranslation($config_translations['jp'], 'ja_JP'); |
|
257 $translate->addTranslation($config_translations['fr'], 'fr'); |
|
258 |
|
259 // set the locale back |
|
260 $translate->setLocale($locale); |
|
261 |
206 $id = "abox_$rep".(($metadata!=null)?"_$metadata":""); |
262 $id = "abox_$rep".(($metadata!=null)?"_$metadata":""); |
207 $hash = ($metadata!=null)?"#metadata=$metadata":""; |
263 $hash = ($metadata!=null)?"#metadata=$metadata":""; |
208 $tail_img = $config['archive_img']; |
264 $tail_img = $translate->_('config__archive_img'); |
209 if(is_array($tail_img)) { |
265 if(is_array($tail_img)) { |
210 $tail_img = $tail_img[$metadata]; |
266 $tail_img = $tail_img[$metadata]; |
211 } |
267 } |
212 $archive_title = $config['archive_title']; |
268 $archive_title = $translate->_('config__archive_title'); |
213 if(is_array($archive_title)) { |
269 if(is_array($archive_title)) { |
214 $archive_title = $archive_title[$metadata]; |
270 $archive_title = $archive_title[$metadata]; |
215 } |
271 } |
216 $archive_description = $config['archive_description']; |
272 $archive_description = $translate->_('config__archive_description'); |
217 if(is_array($archive_description)) { |
273 if(is_array($archive_description)) { |
218 $archive_description = $archive_description[$metadata]; |
274 $archive_description = $archive_description[$metadata]; |
219 } |
275 } |
220 |
276 |
221 |
277 |
231 |
287 |
232 return $res; |
288 return $res; |
233 |
289 |
234 } |
290 } |
235 |
291 |
236 function display_archives_list($archives_list, $box_class, $url_root, $basepath) { |
292 function display_archives_list($archives_list, $box_class, $url_root, $basepath, &$translate) { |
|
293 |
|
294 |
237 for($i=0;$i<count($archives_list);$i++) { |
295 for($i=0;$i<count($archives_list);$i++) { |
238 if(($i % 3)==0) { |
296 if(($i % 3)==0) { |
239 print(" <div class=\"$box_class\">\n"); |
297 print(" <div class=\"$box_class\">\n"); |
240 } |
298 } |
241 $archive_ref = $archives_list[$i]; |
299 $archive_ref = $archives_list[$i]; |
244 $metadata = null; |
302 $metadata = null; |
245 if(is_array($archive_ref)) { |
303 if(is_array($archive_ref)) { |
246 $archive_name = $archive_ref[0]; |
304 $archive_name = $archive_ref[0]; |
247 $metadata = $archive_ref[1]; |
305 $metadata = $archive_ref[1]; |
248 } |
306 } |
249 print(get_archive_box($archive_name,$metadata, $url_root, $basepath)); |
307 print(get_archive_box($archive_name,$metadata, $url_root, $basepath, $translate)); |
250 if(($i % 3)==2 || $i == (count($archives_list)-1)) { |
308 if(($i % 3)==2 || $i == (count($archives_list)-1)) { |
251 print(" </div>\n"); |
309 print(" </div>\n"); |
252 } |
310 } |
253 } |
311 } |
254 } |
312 } |