OSDN Git Service

Moved face images from face/ to image/face. default.ini.php shows bracketted alt...
[pukiwiki/pukiwiki.git] / keitai.ini.php
1 <?php
2 /////////////////////////////////////////////////
3 // PukiWiki - Yet another WikiWikiWeb clone.
4 //
5 // $Id: keitai.ini.php,v 1.9 2004/07/24 08:04:23 henoheno Exp $
6 //
7 // PukiWiki setting file (Cell phones, PDAs and other thin clients)
8
9 /////////////////////////////////////////////////
10 // ¥¹¥­¥ó¥Õ¥¡¥¤¥ë¤Î¾ì½ê
11 define('SKIN_FILE', DATA_HOME . SKIN_DIR . 'keitai.skin.' . LANG . '.php');
12
13 /////////////////////////////////////////////////
14 // ¿÷·Á¤È¤¹¤ë¥Ú¡¼¥¸¤ÎÆɤ߹þ¤ß¤òɽ¼¨¤µ¤»¤ë
15 $load_template_func = 0;
16
17 /////////////////////////////////////////////////
18 // ¸¡º÷ʸ»úÎó¤ò¿§Ê¬¤±¤¹¤ë
19 $search_word_color = 0;
20
21 /////////////////////////////////////////////////
22 // °ìÍ÷¥Ú¡¼¥¸¤ËƬʸ»ú¥¤¥ó¥Ç¥Ã¥¯¥¹¤ò¤Ä¤±¤ë
23 $list_index = 0;
24
25 /////////////////////////////////////////////////
26 // ¥ê¥¹¥È¹½Â¤¤Îº¸¥Þ¡¼¥¸¥ó
27 $_ul_left_margin = 0;   // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
28 $_ul_margin = 16;       // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
29 $_ol_left_margin = 0;   // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
30 $_ol_margin = 16;       // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
31 $_dl_left_margin = 0;   // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
32 $_dl_margin = 16;        // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
33 $_list_pad_str = '';
34
35 /////////////////////////////////////////////////
36 // Â硦¾®¸«½Ð¤·¤«¤éÌܼ¡¤ØÌá¤ë¥ê¥ó¥¯¤Îʸ»ú
37 $top = '';
38
39 /////////////////////////////////////////////////
40 // ´ØÏ¢¥Ú¡¼¥¸É½¼¨¤Î¥Ú¡¼¥¸Ì¾¤Î¶èÀÚ¤êʸ»ú
41 $related_str = "\n ";
42
43 /////////////////////////////////////////////////
44 // À°·Á¥ë¡¼¥ë¤Ç¤Î´ØÏ¢¥Ú¡¼¥¸É½¼¨¤Î¥Ú¡¼¥¸Ì¾¤Î¶èÀÚ¤êʸ»ú
45 $rule_related_str = "</li>\n<li>";
46
47 /////////////////////////////////////////////////
48 // ¿åÊ¿Àþ¤Î¥¿¥°
49 $hr = '<hr>';
50
51 /////////////////////////////////////////////////
52 // Ê¸Ëö¤ÎÃí¼á¤ÎľÁ°¤Ëɽ¼¨¤¹¤ë¥¿¥°
53 $note_hr = '<hr>';
54
55 /////////////////////////////////////////////////
56 // ´ØÏ¢¤¹¤ë¥ê¥ó¥¯¤ò¾ï¤Ëɽ¼¨¤¹¤ë(Ééô¤¬¤«¤«¤ê¤Þ¤¹)
57 $related_link = 0;
58
59 /////////////////////////////////////////////////
60 // WikiName,BracketName¤Ë·Ð²á»þ´Ö¤òÉղ乤ë
61 $show_passage = 0;
62
63 /////////////////////////////////////////////////
64 // ¥ê¥ó¥¯É½¼¨¤ò¥³¥ó¥Ñ¥¯¥È¤Ë¤¹¤ë
65 $link_compact = 1;
66
67 /////////////////////////////////////////////////
68 // ¥Õ¥§¥¤¥¹¥Þ¡¼¥¯¤ò³¨Ê¸»ú¤ËÊÑ´¹¤¹¤ë (¢¨i-mode, Vodafone, EzWeb¤Ê¤É·ÈÂÓÅÅÏøÂÄê)
69 $usefacemark = 1;
70
71 /////////////////////////////////////////////////
72 // accesskey (SKIN¤Ç»ÈÍÑ)
73 $accesskey = 'accesskey';
74
75 /////////////////////////////////////////////////
76 // $script¤òû½Ì
77 if (preg_match('#([^/]+)$#',$script,$matches)) {
78         $script = $matches[1];
79 }
80
81 /////////////////////////////////////////////////
82 // ¥Ö¥é¥¦¥¶Ä´À°Á°¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ
83
84 // max_size (SKIN¤Ç»ÈÍÑ)
85 $max_size = 5;  // SKIN¤Ç»ÈÍÑ, KByte
86
87 // cols: ¥Æ¥­¥¹¥È¥¨¥ê¥¢¤Î¥«¥é¥à¿ô rows: ¹Ô¿ô
88 $cols = 22; $rows = 5;  // i_mode
89
90
91 /////////////////////////////////////////////////
92 // ¥Ö¥é¥¦¥¶¤Ë¹ç¤ï¤»¤¿Ä´À°
93
94 $ua_name  = $user_agent['name'];
95 $ua_vers  = $user_agent['vers'];
96 $ua_agent = $user_agent['agent'];
97 $matches = array();
98
99 // Browser-name only
100 switch ($ua_name) {
101
102         // NetFront / Compact NetFront
103         //   DoCoMo Net For MOBILE: £é¥â¡¼¥ÉÂбþHTML¤Î¹Í¤¨Êý: ¥æ¡¼¥¶¥¨¡¼¥¸¥§¥ó¥È
104         //   http://www.nttdocomo.co.jp/mc-user/i/tag/imodetag.html
105         //   DDI POCKET: µ¡¼ï¥é¥¤¥ó¥Ê¥Ã¥×: AirH"PHONEÍÑ¥Û¡¼¥à¥Ú¡¼¥¸¤ÎºîÀ®ÊýË¡
106         //   http://www.ddipocket.co.jp/p_s/products/airh_phone/homepage.html
107         case 'NetFront':
108         case 'CNF':
109         case 'DoCoMo':
110         case 'Opera': // Performing CNF compatible
111                 if (preg_match('#\b[cC]([0-9]+)\b#', $ua_agent, $matches)) {
112                         $max_size = $matches[1];        // Cache max size
113                 }
114                 $cols = 22; $rows = 5;  // i_mode
115                 break;
116
117         // Vodafone (ex. J-PHONE) µ»½Ñ»ñÎÁ: ¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥È¤Ë¤Ä¤¤¤Æ
118         // http://www.dp.j-phone.com/dp/tool_dl/web/useragent.php
119         case 'J-PHONE':
120                 if (preg_match('#\bProfile/#', $ua_agent)) {
121                         $max_size = 12; // ¥Ñ¥±¥Ã¥ÈÂбþµ¡
122                 } else {
123                         $max_size =  6; // ¥Ñ¥±¥Ã¥ÈÈóÂбþµ¡
124                 }
125                 $cols = 24; $rows = 20; // jphone
126                 break;
127
128         // UP.Browser
129         case 'UP.Browser':
130                 // UP.Browser for KDDI cell phones
131                 // http://www.au.kddi.com/ezfactory/tec/spec/xhtml.html ('About 9KB max')
132                 // http://www.au.kddi.com/ezfactory/tec/spec/4_4.html (User-agent strings)
133                 if (preg_match('#^KDDI#', $ua_agent)) {
134                         $max_size =  9;
135                 }
136 }
137
138 // Browser-name + version
139 switch ("$ua_name/$ua_vers") {
140         // Restriction For imode:
141         //  http://www.nttdocomo.co.jp/mc-user/i/tag/s2.html
142         case 'DoCoMo/2.0':      $max_size = min($max_size, 30); break;
143 }
144
145
146 /////////////////////////////////////////////////
147 // ¥æ¡¼¥¶ÄêµÁ¥ë¡¼¥ë
148 //
149 //  Àµµ¬É½¸½¤Çµ­½Ò¤·¤Æ¤¯¤À¤µ¤¤¡£?(){}-*./+\$^|¤Ê¤É
150 //  ¤Ï \? ¤Î¤è¤¦¤Ë¥¯¥©¡¼¥È¤·¤Æ¤¯¤À¤µ¤¤¡£
151 //  Á°¸å¤Ëɬ¤º / ¤ò´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£¹ÔƬ»ØÄê¤Ï ^ ¤òƬ¤Ë¡£
152 //  ¹ÔËö»ØÄê¤Ï $ ¤ò¸å¤í¤Ë¡£
153 ///////////////////////////////////////////////////
154 // ¥æ¡¼¥¶ÄêµÁ¥ë¡¼¥ë(¥³¥ó¥Ð¡¼¥È»þ¤ËÃÖ´¹)
155 $line_rules = array(
156         "COLOR\(([^\(\)]*)\){([^}]*)}"  => '<font color="$1">$2</font>',
157         "SIZE\(([^\(\)]*)\){([^}]*)}"   => '$2',
158         "COLOR\(([^\(\)]*)\):((?:(?!COLOR\([^\)]+\)\:).)*)"     => '<font color="$1">$2</font>',
159         "SIZE\(([^\(\)]*)\):((?:(?!SIZE\([^\)]+\)\:).)*)"       => '$2',
160         "%%%(?!%)((?:(?!%%%).)*)%%%"    => '<ins>$1</ins>',
161         "%%(?!%)((?:(?!%%).)*)%%"       => '<del>$1</del>',
162         "'''(?!')((?:(?!''').)*)'''"    => '<em>$1</em>',
163         "''(?!')((?:(?!'').)*)''"       => '<strong>$1</strong>',
164         '&amp;br;'      => '<br>',
165 );
166
167
168 /////////////////////////////////////////////////
169 // ·ÈÂÓÅÅÏäˤ¢¤ï¤»¤¿¥Õ¥§¥¤¥¹¥Þ¡¼¥¯
170
171 // $usefacemark = 1¤Ê¤é¥Õ¥§¥¤¥¹¥Þ¡¼¥¯¤¬ÃÖ´¹¤µ¤ì¤Þ¤¹
172 // Ê¸¾ÏÆâ¤ËXD¤Ê¤É¤¬Æþ¤Ã¤¿¾ì¹ç¤Ëfacemark¤ËÃÖ´¹¤µ¤ì¤Æ¤·¤Þ¤¦¤Î¤Ç
173 // É¬ÍפΤʤ¤Êý¤Ï $usefacemark¤ò0¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
174
175 // Browser-name only
176 $facemark_rules = array();
177 switch ($ua_name) {
178
179     // Graphic icons for imode HTML 4.0, with Shift-JIS text output
180     // http://www.nttdocomo.co.jp/mc-user/i/tag/emoji/e1.html
181     // http://www.nttdocomo.co.jp/mc-user/i/tag/emoji/list.html
182     case 'DoCoMo':
183
184         $facemark_rules = array(
185         // Face marks
186         '\s(\:\))'      =>      '&#63893;',     // smile
187         '\s(\:D)'       =>      '&#63893;',     // bigsmile
188         '\s(\:p)'       =>      '&#xE728;',     // huh
189         '\s(\:d)'       =>      '&#xE728;',     // huh
190         '\s(XD)'        =>      '&#63895;',     // oh
191         '\s(X\()'       =>      '&#63895;',     // oh
192         '\s(;\))'       =>      '&#xE729;',     // wink
193         '\s(;\()'       =>      '&#63894;',     // sad
194         '\s(\:\()'      =>      '&#63894;',     // sad
195         '&amp;(smile);' =>      '&#63893;',
196         '&amp;(bigsmile);'=>    '&#63893;',
197         '&amp;(huh);'   =>      '&#xE728;',
198         '&amp;(oh);'    =>      '&#63895;',
199         '&amp;(wink);'  =>      '&#xE729;',
200         '&amp;(sad);'   =>      '&#63894;',
201         '&amp;(heart);' =>      '&#63889;',
202         '&amp;(worried);'=>     '&#xE722;',
203
204         // Face marks, Japanese style
205         '\s(\(\^\^\))'  =>      '&#63893;',     // smile
206         '\s(\(\^-\^)'   =>      '&#63893;',     // smile
207         '\s(\(\.\.;)'   =>      '&#63895;',     // oh
208         '\s(\(\^_-\))'  =>      '&#xE729;',     // wink
209         '\s(\(--;)'     =>      '&#63894;',     // sad
210         '\s(\(\^\^;\))' =>      '&#xE722;',     // worried
211         '\s(\(\^\^;)'   =>      '&#xE722;',     // worried
212
213         // Push buttons, 0-9 and sharp
214         '&amp;(pb1);'   =>      '&#63879;',
215         '&amp;(pb2);'   =>      '&#63880;',
216         '&amp;(pb3);'   =>      '&#63881;',
217         '&amp;(pb4);'   =>      '&#63882;',
218         '&amp;(pb5);'   =>      '&#63883;',
219         '&amp;(pb6);'   =>      '&#63884;',
220         '&amp;(pb7);'   =>      '&#63885;',
221         '&amp;(pb8);'   =>      '&#63886;',
222         '&amp;(pb9);'   =>      '&#63887;',
223         '&amp;(pb0);'   =>      '&#63888;',
224         '&amp;(pb#);'   =>      '&#63877;',
225
226         // Others
227         // '&amp;(zzz);'        =>      '&#63910;',
228         // '&amp;(man);'        =>      '&#63829;',
229         // '&amp;(clock);'      =>      '&#63838;',
230         // '&amp;(mail);'       =>      '&#63863;',
231         // '&amp;(mailto);'     =>      '&#63859;',
232         // '&amp;(phone);'      =>      '&#63720;',
233         // '&amp;(phoneto);'    =>      '&#63858;',
234         // '&amp;(faxto);'      =>      '&#63860;',
235         );
236         break;
237
238     // Graphic icons for Vodafone (ex. J-PHONE) cell phones
239     // http://www.dp.j-phone.com/dp/tool_dl/web/picword_top.php
240     case 'J-PHONE':
241
242         $facemark_rules = array(
243         // Face marks
244         '\s(\:\))'      =>      chr(27).'$Gv'.chr(15),  // '&#57430;',  // smile
245         '\s(\:D)'       =>      chr(27).'$Gv'.chr(15),  // '&#57430;',  // bigsmile => smile
246         '\s(\:p)'       =>      chr(27).'$E%'.chr(15),  // '&#57605;',  // huh
247         '\s(\:d)'       =>      chr(27).'$E%'.chr(15),  // '&#57605;',  // huh
248         '\s(XD)'        =>      chr(27).'$Gx'.chr(15),  // '&#57432;',  // oh
249         '\s(X\()'       =>      chr(27).'$Gx'.chr(15),  // '&#57432;',  // oh
250         '\s(;\))'       =>      chr(27).'$E&'.chr(15),  // '&#57606;',  // wink¤¸¤ã¤Ê¤¤¤±¤É¤Í(^^; (¢¨Ìܤ¬¥Ï¡¼¥È)
251         '\s(;\()'       =>      chr(27).'$E&'.chr(15),  // '&#57606;',  // sad
252         '\s(\:\()'      =>      chr(27).'$Gy'.chr(15),  // '&#57433;',  // sad
253         '&amp;(smile);' =>      chr(27).'$Gv'.chr(15),  // '&#57430;',
254         '&amp;(bigsmile);'=>    chr(27).'$Gw'.chr(15),  // '&#57431;',
255         '&amp;(huh);'   =>      chr(27).'$E%'.chr(15),  // '&#57605;',
256         '&amp;(oh);'    =>      chr(27).'$Gx'.chr(15),  // '&#57432;',
257         '&amp;(wink);'  =>      chr(27).'$E&'.chr(15),  // '&#57606;',  // wink¤¸¤ã¤Ê¤¤¤±¤É¤Í(^^; (¢¨Ìܤ¬¥Ï¡¼¥È)
258         '&amp;(sad);'   =>      chr(27).'$Gy'.chr(15),  // '&#57433;',
259         '&amp;(heart);' =>      chr(27).'$GB'.chr(15),  // '&#57378;',
260         '&amp;(worried);'=>     chr(27).'$E('.chr(15),  // '&#57608;',
261
262         // Face marks, Japanese style
263         '\s(\(\^\^\))'  =>      chr(27).'$Gv'.chr(15),  // smile
264         '\s(\(\^-\^)'   =>      chr(27).'$Gv'.chr(15),  // smile
265         '\s(\(\.\.;)'   =>      chr(27).'$Gx'.chr(15),  // oh
266         '\s(\(\^_-\))'  =>      chr(27).'$E&'.chr(15),  // wink¤¸¤ã¤Ê¤¤¤±¤É¤Í(^^; (¢¨Ìܤ¬¥Ï¡¼¥È)
267         '\s(\(--;)'     =>      chr(27).'$E&'.chr(15),  // sad
268         '\s(\(\^\^;\))' =>      chr(27).'$E('.chr(15),  // worried
269         '\s(\(\^\^;)'   =>      chr(27).'$E('.chr(15),  // worried
270
271         // Push buttons, 0-9 and sharp
272         '&amp;(pb1);'   =>      chr(27).'$F<'.chr(15),  // '&#57884;',
273         '&amp;(pb2);'   =>      chr(27).'$F='.chr(15),  // '&#57885;',
274         '&amp;(pb3);'   =>      chr(27).'$F>'.chr(15),  // '&#57886;',
275         '&amp;(pb4);'   =>      chr(27).'$F?'.chr(15),  // '&#57887;',
276         '&amp;(pb5);'   =>      chr(27).'$F@'.chr(15),  // '&#57888;',
277         '&amp;(pb6);'   =>      chr(27).'$FA'.chr(15),  // '&#57889;',
278         '&amp;(pb7);'   =>      chr(27).'$FB'.chr(15),  // '&#57890;',
279         '&amp;(pb8);'   =>      chr(27).'$FC'.chr(15),  // '&#57891;',
280         '&amp;(pb9);'   =>      chr(27).'$FD'.chr(15),  // '&#57892;',
281         '&amp;(pb0);'   =>      chr(27).'$FE'.chr(15),  // '&#57893;',
282
283         // Others
284         // '&amp;(zzz);'        =>      chr(27).'$E\\'.chr(15),
285         // '&amp;(man);'        =>      chr(27).'$G!'.chr(15),
286         // '&amp;(clock);'      =>      chr(27).'$GF'.chr(15),  // '&#xE026;',
287         // '&amp;(mail);'       =>      chr(27).'$Fv'.chr(15),
288         // '&amp;(mailto);'=>   chr(27).'$E#'.chr(15),
289         // '&amp;(phone);'      =>      chr(27).'$G)'.chr(15),
290         // '&amp;(phoneto);'=>  chr(27).'$E$'.chr(15),
291         // '&amp;(faxto);'      =>      chr(27).'$G+'.chr(15),
292
293         // ºÇ¶á¤Î´éʸ»ú (?)
294         // '&amp;(smile);'      =>      '&#58388;',
295         // '&amp;(bigsmile);'   =>      '&#58389;',
296         // '&amp;(huh);'        =>      '&#58377;',
297         // '&amp;(oh);'         =>      '&#58374;',
298         // '&amp;(wink);'       =>      '&#58373;',
299         // '&amp;(sad);'        =>      '&#58390;',
300         // '&amp;(heart);'      =>      '&#58152;',
301         // '&amp;(worried);'    =>      '&#58369;',
302         );
303         break;
304
305     case 'UP.Browser':
306
307         // UP.Browser for KDDI cell phones' built-in icons
308         // http://www.au.kddi.com/ezfactory/tec/spec/3.html
309         if (preg_match('#^KDDI#', $ua_agent)) {
310         $facemark_rules = array(
311         // Face marks
312         '\s(\:\))'      =>      '<img localsrc="68">',  // smile
313         '\s(\:D)'       =>      '<img localsrc="257">', // bigsmile
314         '\s(\:p)'       =>      '<img localsrc="264">', // huh
315         '\s(\:d)'       =>      '<img localsrc="264">', // huh
316         '\s(XD)'        =>      '<img localsrc="260">', // oh
317         '\s(X\()'       =>      '<img localsrc="260">', // oh
318         '\s(;\))'       =>      '<img localsrc="348">', // wink
319         '\s(;\()'       =>      '<img localsrc="259">', // sad
320         '\s(\:\()'      =>      '<img localsrc="259">', // sad
321         '&amp;(smile);' =>      '<img localsrc="68">',
322         '&amp;(bigsmile);'=>    '<img localsrc="257">',
323         '&amp;(huh);'   =>      '<img localsrc="264">',
324         '&amp;(oh);'    =>      '<img localsrc="260">',
325         '&amp;(wink);'  =>      '<img localsrc="348">',
326         '&amp;(sad);'   =>      '<img localsrc="259">',
327         '&amp;(heart);' =>      '<img localsrc="415">',
328         '&amp;(worried);'=>     '<img localsrc="351">',
329
330         // Face marks, Japanese style
331         '\s(\(\^\^\))'  =>      '<img localsrc="68">',  // smile
332         '\s(\(\^-\^)'   =>      '<img localsrc="68">',  // smile
333         '\s(\(\.\.;)'   =>      '<img localsrc="260">', // oh
334         '\s(\(\^_-\))'  =>      '<img localsrc="348">', // wink
335         '\s(\(--;)'     =>      '<img localsrc="259">', // sad
336         '\s(\(\^\^;\))' =>      '<img localsrc="351">', // worried
337         '\s(\(\^\^;)'   =>      '<img localsrc="351">', // worried
338
339         // Push buttons, 0-9 and sharp
340         '&amp;(pb1);'   =>      '<img localsrc="180">',
341         '&amp;(pb2);'   =>      '<img localsrc="181">',
342         '&amp;(pb3);'   =>      '<img localsrc="182">',
343         '&amp;(pb4);'   =>      '<img localsrc="183">',
344         '&amp;(pb5);'   =>      '<img localsrc="184">',
345         '&amp;(pb6);'   =>      '<img localsrc="185">',
346         '&amp;(pb7);'   =>      '<img localsrc="186">',
347         '&amp;(pb8);'   =>      '<img localsrc="187">',
348         '&amp;(pb9);'   =>      '<img localsrc="188">',
349         '&amp;(pb0);'   =>      '<img localsrc="325">',
350         '&amp;(pb#);'   =>      '<img localsrc="818">',
351
352         // Others
353         '&amp;(zzz);'   =>      '<img localsrc="261">',
354         '&amp;(man);'   =>      '<img localsrc="80">',  // Face of male
355         '&amp;(clock);' =>      '<img localsrc="46">',
356         '&amp;(mail);'  =>      '<img localsrc="108">',
357         '&amp;(mailto);'=>      '<img localsrc="784">',
358         '&amp;(phone);' =>      '<img localsrc="85">',
359         '&amp;(phoneto);'=>     '<img localsrc="155">', // An ear receiver
360         '&amp;(faxto);' =>      '<img localsrc="166">', // A FAX
361         );
362         }
363         break;
364
365 }
366
367 unset($matches, $ua_name, $ua_vers, $ua_agent, $special_rules);
368
369 ?>