/////////////////////////////////////////////////
// PukiWiki - Yet another WikiWikiWeb clone.
//
-// $Id: keitai.ini.php,v 1.1 2004/07/05 12:13:21 henoheno Exp $
+// $Id: keitai.ini.php,v 1.17 2004/10/31 02:01:38 henoheno Exp $
//
// PukiWiki setting file (Cell phones, PDAs and other thin clients)
/////////////////////////////////////////////////
-// max_size (SKIN¤Ç»ÈÍÑ)
-
-$max_size = 5; //KByte (default)
-
-$matches = array();
-switch ($user_agent['name']) {
-
- // DoCoMo Net For MOBILE: £é¥â¡¼¥ÉÂбþHTML¤Î¹Í¤¨Êý: ¥æ¡¼¥¶¥¨¡¼¥¸¥§¥ó¥È
- // http://www.nttdocomo.co.jp/mc-user/i/tag/imodetag.html
- // DDI POCKET: µ¡¼ï¥é¥¤¥ó¥Ê¥Ã¥×: AirH"PHONEÍÑ¥Û¡¼¥à¥Ú¡¼¥¸¤ÎºîÀ®ÊýË¡
- // http://www.ddipocket.co.jp/p_s/products/airh_phone/homepage.html
- case 'DoCoMo':
- case 'CNF':
- if (preg_match('#[/\(]c([0-9]+)[/\);]#',
- $user_agent['agent'], $matches))
- $max_size = $matches[1];
- break;
-
- // Vodafone µ»½Ñ»ñÎÁ: ¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥È¤Ë¤Ä¤¤¤Æ
- // http://www.dp.j-phone.com/dp/tool_dl/web/useragent.php
- case 'J-PHONE':
- if (preg_match('#Profile/#', $user_agent['agent'])) {
- // ¥Ñ¥±¥Ã¥ÈÂбþµ¡
- $max_size = 12; // SKIN¤Ç»ÈÍÑ, KByte
- } else {
- // ¥Ñ¥±¥Ã¥ÈÈóÂбþµ¡
- $max_size = 6;
- }
- break;
-
-}
-switch ($user_agent['name'] . '/' . $user_agent['vers']) {
- case 'DoCoMo/2.0': $max_size = min($max_size, 30); break;
-}
-unset($matches);
+// ·ÈÂÓ¡¦PDAÀìÍѤΥڡ¼¥¸¤ò½é´ü¥Ú¡¼¥¸¤È¤·¤Æ»ØÄꤹ¤ë
+// $defaultpage = 'm';
/////////////////////////////////////////////////
// ¥¹¥¥ó¥Õ¥¡¥¤¥ë¤Î¾ì½ê
-define('SKIN_FILE',SKIN_DIR.'keitai.skin.'.LANG.'.php');
+define('SKIN_FILE', DATA_HOME . SKIN_DIR . 'keitai.skin.php');
/////////////////////////////////////////////////
-// ¿÷·Á¤È¤¹¤ë¥Ú¡¼¥¸¤ÎÆɤ߹þ¤ß¤òɽ¼¨¤µ¤»¤ë
+// ¿÷·Á¤È¤¹¤ë¥Ú¡¼¥¸¤ÎÆɤ߹þ¤ß¤ò²Äǽ¤Ë¤¹¤ë
$load_template_func = 0;
/////////////////////////////////////////////////
/////////////////////////////////////////////////
// ¥ê¥¹¥È¹½Â¤¤Îº¸¥Þ¡¼¥¸¥ó
-$_ul_left_margin = 0; // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
-$_ul_margin = 16; // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
-$_ol_left_margin = 0; // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
-$_ol_margin = 16; // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
-$_dl_left_margin = 0; // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
-$_dl_margin = 16; // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
-$_list_pad_str = '';
-
-/////////////////////////////////////////////////
-// cols: ¥Æ¥¥¹¥È¥¨¥ê¥¢¤Î¥«¥é¥à¿ô rows: ¹Ô¿ô
-
-$cols = 22; $rows = 5; // i_mode
-$cols = 24; $rows = 20; // jphone
+$_ul_left_margin = 0; // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
+$_ul_margin = 16; // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
+$_ol_left_margin = 0; // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
+$_ol_margin = 16; // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
+$_dl_left_margin = 0; // ¥ê¥¹¥È¤È²èÌ̺¸Ã¼¤È¤Î´Ö³Ö(px)
+$_dl_margin = 16; // ¥ê¥¹¥È¤Î³¬Áش֤δֳÖ(px)
+$_list_pad_str = '';
/////////////////////////////////////////////////
// Â硦¾®¸«½Ð¤·¤«¤éÌܼ¡¤ØÌá¤ë¥ê¥ó¥¯¤Îʸ»ú
// ¿åÊ¿Àþ¤Î¥¿¥°
$hr = '<hr>';
-/////////////////////////////////////////////////
// ʸËö¤ÎÃí¼á¤ÎľÁ°¤Ëɽ¼¨¤¹¤ë¥¿¥°
$note_hr = '<hr>';
$link_compact = 1;
/////////////////////////////////////////////////
-// ¥Õ¥§¥¤¥¹¥Þ¡¼¥¯¤ò»ÈÍѤ¹¤ë
-$usefacemark = 0;
+// ¥Õ¥§¥¤¥¹¥Þ¡¼¥¯¤ò³¨Ê¸»ú¤ËÊÑ´¹¤¹¤ë (¢¨i-mode, Vodafone, EzWeb¤Ê¤É·ÈÂÓÅÅÏøÂÄê)
+$usefacemark = 1;
/////////////////////////////////////////////////
// accesskey (SKIN¤Ç»ÈÍÑ)
$accesskey = 'accesskey';
/////////////////////////////////////////////////
+// $script¤òû½Ì
+if (preg_match('#([^/]+)$#', $script, $matches)) {
+ $script = $matches[1];
+}
+
+/////////////////////////////////////////////////
+// ¥Ö¥é¥¦¥¶Ä´À°Á°¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ
+
+// max_size (SKIN¤Ç»ÈÍÑ)
+$max_size = 5; // SKIN¤Ç»ÈÍÑ, KByte
+
+// cols: ¥Æ¥¥¹¥È¥¨¥ê¥¢¤Î¥«¥é¥à¿ô rows: ¹Ô¿ô
+$cols = 22; $rows = 5; // i_mode
+
+
+/////////////////////////////////////////////////
+// ¥Ö¥é¥¦¥¶¤Ë¹ç¤ï¤»¤¿Ä´À°
+
+$ua_name = $user_agent['name'];
+$ua_vers = $user_agent['vers'];
+$ua_agent = $user_agent['agent'];
+$matches = array();
+
+// Browser-name only
+switch ($ua_name) {
+
+ // NetFront / Compact NetFront
+ // DoCoMo Net For MOBILE: £é¥â¡¼¥ÉÂбþHTML¤Î¹Í¤¨Êý: ¥æ¡¼¥¶¥¨¡¼¥¸¥§¥ó¥È
+ // http://www.nttdocomo.co.jp/mc-user/i/tag/imodetag.html
+ // DDI POCKET: µ¡¼ï¥é¥¤¥ó¥Ê¥Ã¥×: AirH"PHONEÍÑ¥Û¡¼¥à¥Ú¡¼¥¸¤ÎºîÀ®ÊýË¡
+ // http://www.ddipocket.co.jp/p_s/products/airh_phone/homepage.html
+ case 'NetFront':
+ case 'CNF':
+ case 'DoCoMo':
+ case 'Opera': // Performing CNF compatible
+ if (preg_match('#\b[cC]([0-9]+)\b#', $ua_agent, $matches)) {
+ $max_size = $matches[1]; // Cache max size
+ }
+ $cols = 22; $rows = 5; // i_mode
+ break;
+
+ // Vodafone (ex. J-PHONE)
+ // ¥Ü¡¼¥À¥Õ¥©¥ó¥é¥¤¥Ö¡ª¸þ¤±¥¦¥§¥Ö¥³¥ó¥Æ¥ó¥Ä³«È¯¥¬¥¤¥É [³µÍ×ÊÔ] (Version 1.2.0 P13)
+ // http://www.dp.j-phone.com/dp/tool_dl/download.php?docid=110
+ // µ»½Ñ»ñÎÁ: ¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥È¤Ë¤Ä¤¤¤Æ
+ // http://www.dp.j-phone.com/dp/tool_dl/web/useragent.php
+ case 'J-PHONE':
+ $matches = array("");
+ preg_match('/^([0-9]+)\./', $user_agent['vers'], $matches);
+ switch($matches[1]){
+ case '3': $max_size = 6; break; // C type: lt 6000bytes
+ case '4': $max_size = 12; break; // P type: lt 12Kbytes
+ case '5': $max_size = 200; break; // W type: lt 200Kbytes
+ }
+ $cols = 24; $rows = 20;
+ break;
+
+ // UP.Browser
+ case 'UP.Browser':
+ // UP.Browser for KDDI cell phones
+ // http://www.au.kddi.com/ezfactory/tec/spec/xhtml.html ('About 9KB max')
+ // http://www.au.kddi.com/ezfactory/tec/spec/4_4.html (User-agent strings)
+ if (preg_match('#^KDDI#', $ua_agent)) $max_size = 9;
+ break;
+}
+
+// Browser-name + version
+switch ("$ua_name/$ua_vers") {
+ // Restriction For imode:
+ // http://www.nttdocomo.co.jp/mc-user/i/tag/s2.html
+ case 'DoCoMo/2.0': $max_size = min($max_size, 30); break;
+}
+
+
+/////////////////////////////////////////////////
// ¥æ¡¼¥¶ÄêµÁ¥ë¡¼¥ë
//
// Àµµ¬É½¸½¤Çµ½Ò¤·¤Æ¤¯¤À¤µ¤¤¡£?(){}-*./+\$^|¤Ê¤É
// ¤Ï \? ¤Î¤è¤¦¤Ë¥¯¥©¡¼¥È¤·¤Æ¤¯¤À¤µ¤¤¡£
// Á°¸å¤Ëɬ¤º / ¤ò´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£¹ÔƬ»ØÄê¤Ï ^ ¤òƬ¤Ë¡£
// ¹ÔËö»ØÄê¤Ï $ ¤ò¸å¤í¤Ë¡£
-///////////////////////////////////////////////////
+
// ¥æ¡¼¥¶ÄêµÁ¥ë¡¼¥ë(¥³¥ó¥Ð¡¼¥È»þ¤ËÃÖ´¹)
$line_rules = array(
-"COLOR\(([^\(\)]*)\){([^}]*)}" => '<font color="$1">$2</font>',
-"SIZE\(([^\(\)]*)\){([^}]*)}" => '$2',
-"COLOR\(([^\(\)]*)\):((?:(?!COLOR\([^\)]+\)\:).)*)" => '<font color="$1">$2</font>',
-"SIZE\(([^\(\)]*)\):((?:(?!SIZE\([^\)]+\)\:).)*)" => '$2',
-"%%%(?!%)((?:(?!%%%).)*)%%%" => '<ins>$1</ins>',
-"%%(?!%)((?:(?!%%).)*)%%" => '<del>$1</del>',
-"'''(?!')((?:(?!''').)*)'''" => '<em>$1</em>',
-"''(?!')((?:(?!'').)*)''" => '<strong>$1</strong>',
-'&br;' => '<br>',
+ 'COLOR\(([^\(\)]*)\){([^}]*)}' => '<font color="$1">$2</font>',
+ 'SIZE\(([^\(\)]*)\){([^}]*)}' => '$2', // Disabled
+ 'COLOR\(([^\(\)]*)\):((?:(?!COLOR\([^\)]+\)\:).)*)' => '<font color="$1">$2</font>',
+ 'SIZE\(([^\(\)]*)\):((?:(?!SIZE\([^\)]+\)\:).)*)' => '$2', // Disabled
+ '%%%(?!%)((?:(?!%%%).)*)%%%' => '<ins>$1</ins>',
+ '%%(?!%)((?:(?!%%).)*)%%' => '<del>$1</del>',
+ "'''(?!')((?:(?!''').)*)'''" => '<em>$1</em>',
+ "''(?!')((?:(?!'').)*)''" => '<strong>$1</strong>',
+ '&br;' => '<br>',
);
+
/////////////////////////////////////////////////
-// $script¤òû½Ì
-if (preg_match('#([^/]+)$#',$script,$matches)) {
- $script = $matches[1];
+// ·ÈÂÓÅÅÏäˤ¢¤ï¤»¤¿¥Õ¥§¥¤¥¹¥Þ¡¼¥¯
+
+// $usefacemark = 1¤Ê¤é¥Õ¥§¥¤¥¹¥Þ¡¼¥¯¤¬ÃÖ´¹¤µ¤ì¤Þ¤¹
+// ʸ¾ÏÆâ¤Ë' XD'¤Ê¤É¤¬¤¢¤Ã¤¿¾ì¹ç¤Ëfacemark¤ËÃÖ´¹¤µ¤ì¤Æ¤·¤Þ¤¦¤¿¤á¡¢
+// ɬÍפΤʤ¤Êý¤Ï $usefacemark¤ò0¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
+
+// Browser-name only
+$facemark_rules = array();
+switch ($ua_name) {
+
+ // Graphic icons for imode HTML 4.0, with Shift-JIS text output
+ // http://www.nttdocomo.co.jp/mc-user/i/tag/emoji/e1.html
+ // http://www.nttdocomo.co.jp/mc-user/i/tag/emoji/list.html
+ case 'DoCoMo':
+
+ $facemark_rules = array(
+ // Face marks
+ '\s(\:\))' => '秊', // smile
+ '\s(\:D)' => '秊', // bigsmile
+ '\s(\:p)' => '', // huh
+ '\s(\:d)' => '', // huh
+ '\s(XD)' => '聯', // oh
+ '\s(X\()' => '聯', // oh
+ '\s(;\))' => '', // wink
+ '\s(;\()' => '練', // sad
+ '\s(\:\()' => '練', // sad
+ '&(smile);' => '秊',
+ '&(bigsmile);'=> '秊',
+ '&(huh);' => '',
+ '&(oh);' => '聯',
+ '&(wink);' => '',
+ '&(sad);' => '練',
+ '&(heart);' => '撚',
+ '&(worried);'=> '',
+
+ // Face marks, Japanese style
+ '\s(\(\^\^\))' => '秊', // smile
+ '\s(\(\^-\^)' => '秊', // smile
+ '\s(\(\.\.;)' => '聯', // oh
+ '\s(\(\^_-\))' => '', // wink
+ '\s(\(--;)' => '練', // sad
+ '\s(\(\^\^;\))' => '', // worried
+ '\s(\(\^\^;)' => '', // worried
+
+ // Push buttons, 0-9 and sharp
+ '&(pb1);' => '驪',
+ '&(pb2);' => '麗',
+ '&(pb3);' => '黎',
+ '&(pb4);' => '力',
+ '&(pb5);' => '曆',
+ '&(pb6);' => '歷',
+ '&(pb7);' => '轢',
+ '&(pb8);' => '年',
+ '&(pb9);' => '憐',
+ '&(pb0);' => '戀',
+ '&(pb#);' => '礪',
+
+ // Others
+ '&(zzz);' => '簾',
+ '&(man);' => '凌',
+ '&(clock);' => '丹',
+ '&(mail);' => '亮',
+ '&(mailto);'=> '拾',
+ '&(phone);' => '',
+ '&(phoneto);'=> '沈',
+ '&(faxto);' => '若',
+ );
+ break;
+
+ // Graphic icons for Vodafone (ex. J-PHONE) cell phones
+ // http://www.dp.j-phone.com/dp/tool_dl/web/picword_top.php
+ case 'J-PHONE':
+
+ $facemark_rules = array(
+ // Face marks
+ '\s(\:\))' => chr(27).'$Gv'.chr(15), // '', // smile
+ '\s(\:D)' => chr(27).'$Gv'.chr(15), // '', // bigsmile => smile
+ '\s(\:p)' => chr(27).'$E%'.chr(15), // '', // huh
+ '\s(\:d)' => chr(27).'$E%'.chr(15), // '', // huh
+ '\s(XD)' => chr(27).'$Gx'.chr(15), // '', // oh
+ '\s(X\()' => chr(27).'$Gx'.chr(15), // '', // oh
+ '\s(;\))' => chr(27).'$E&'.chr(15), // '', // wink¤¸¤ã¤Ê¤¤¤±¤É¤Í(^^; (¢¨Ìܤ¬¥Ï¡¼¥È)
+ '\s(;\()' => chr(27).'$E&'.chr(15), // '', // sad
+ '\s(\:\()' => chr(27).'$Gy'.chr(15), // '', // sad
+ '&(smile);' => chr(27).'$Gv'.chr(15), // '',
+ '&(bigsmile);'=> chr(27).'$Gw'.chr(15), // '',
+ '&(huh);' => chr(27).'$E%'.chr(15), // '',
+ '&(oh);' => chr(27).'$Gx'.chr(15), // '',
+ '&(wink);' => chr(27).'$E&'.chr(15), // '', // wink¤¸¤ã¤Ê¤¤¤±¤É¤Í(^^; (¢¨Ìܤ¬¥Ï¡¼¥È)
+ '&(sad);' => chr(27).'$Gy'.chr(15), // '',
+ '&(heart);' => chr(27).'$GB'.chr(15), // '',
+ '&(worried);'=> chr(27).'$E('.chr(15), // '',
+
+ // Face marks, Japanese style
+ '\s(\(\^\^\))' => chr(27).'$Gv'.chr(15), // smile
+ '\s(\(\^-\^)' => chr(27).'$Gv'.chr(15), // smile
+ '\s(\(\.\.;)' => chr(27).'$Gx'.chr(15), // oh
+ '\s(\(\^_-\))' => chr(27).'$E&'.chr(15), // wink¤¸¤ã¤Ê¤¤¤±¤É¤Í(^^; (¢¨Ìܤ¬¥Ï¡¼¥È)
+ '\s(\(--;)' => chr(27).'$E&'.chr(15), // sad
+ '\s(\(\^\^;\))' => chr(27).'$E('.chr(15), // worried
+ '\s(\(\^\^;)' => chr(27).'$E('.chr(15), // worried
+
+ // Push buttons, 0-9 and sharp
+ '&(pb1);' => chr(27).'$F<'.chr(15), // '',
+ '&(pb2);' => chr(27).'$F='.chr(15), // '',
+ '&(pb3);' => chr(27).'$F>'.chr(15), // '',
+ '&(pb4);' => chr(27).'$F?'.chr(15), // '',
+ '&(pb5);' => chr(27).'$F@'.chr(15), // '',
+ '&(pb6);' => chr(27).'$FA'.chr(15), // '',
+ '&(pb7);' => chr(27).'$FB'.chr(15), // '',
+ '&(pb8);' => chr(27).'$FC'.chr(15), // '',
+ '&(pb9);' => chr(27).'$FD'.chr(15), // '',
+ '&(pb0);' => chr(27).'$FE'.chr(15), // '',
+
+ // Others
+ '&(zzz);' => chr(27).'$E\\'.chr(15),
+ '&(man);' => chr(27).'$G!'.chr(15),
+ '&(clock);' => chr(27).'$GF'.chr(15), // '',
+ '&(mail);' => chr(27).'$Fv'.chr(15),
+ '&(mailto);'=> chr(27).'$E#'.chr(15),
+ '&(phone);' => chr(27).'$G)'.chr(15),
+ '&(phoneto);'=> chr(27).'$E$'.chr(15),
+ '&(faxto);' => chr(27).'$G+'.chr(15),
+ );
+ break;
+
+ case 'UP.Browser':
+
+ // UP.Browser for KDDI cell phones' built-in icons
+ // http://www.au.kddi.com/ezfactory/tec/spec/3.html
+ if (preg_match('#^KDDI#', $ua_agent)) {
+ $facemark_rules = array(
+ // Face marks
+ '\s(\:\))' => '<img localsrc="68">', // smile
+ '\s(\:D)' => '<img localsrc="257">', // bigsmile
+ '\s(\:p)' => '<img localsrc="264">', // huh
+ '\s(\:d)' => '<img localsrc="264">', // huh
+ '\s(XD)' => '<img localsrc="260">', // oh
+ '\s(X\()' => '<img localsrc="260">', // oh
+ '\s(;\))' => '<img localsrc="348">', // wink
+ '\s(;\()' => '<img localsrc="259">', // sad
+ '\s(\:\()' => '<img localsrc="259">', // sad
+ '&(smile);' => '<img localsrc="68">',
+ '&(bigsmile);'=> '<img localsrc="257">',
+ '&(huh);' => '<img localsrc="264">',
+ '&(oh);' => '<img localsrc="260">',
+ '&(wink);' => '<img localsrc="348">',
+ '&(sad);' => '<img localsrc="259">',
+ '&(heart);' => '<img localsrc="415">',
+ '&(worried);'=> '<img localsrc="351">',
+
+ // Face marks, Japanese style
+ '\s(\(\^\^\))' => '<img localsrc="68">', // smile
+ '\s(\(\^-\^)' => '<img localsrc="68">', // smile
+ '\s(\(\.\.;)' => '<img localsrc="260">', // oh
+ '\s(\(\^_-\))' => '<img localsrc="348">', // wink
+ '\s(\(--;)' => '<img localsrc="259">', // sad
+ '\s(\(\^\^;\))' => '<img localsrc="351">', // worried
+ '\s(\(\^\^;)' => '<img localsrc="351">', // worried
+
+ // Push buttons, 0-9 and sharp
+ '&(pb1);' => '<img localsrc="180">',
+ '&(pb2);' => '<img localsrc="181">',
+ '&(pb3);' => '<img localsrc="182">',
+ '&(pb4);' => '<img localsrc="183">',
+ '&(pb5);' => '<img localsrc="184">',
+ '&(pb6);' => '<img localsrc="185">',
+ '&(pb7);' => '<img localsrc="186">',
+ '&(pb8);' => '<img localsrc="187">',
+ '&(pb9);' => '<img localsrc="188">',
+ '&(pb0);' => '<img localsrc="325">',
+ '&(pb#);' => '<img localsrc="818">',
+
+ // Others
+ '&(zzz);' => '<img localsrc="261">',
+ '&(man);' => '<img localsrc="80">', // Face of male
+ '&(clock);' => '<img localsrc="46">',
+ '&(mail);' => '<img localsrc="108">',
+ '&(mailto);'=> '<img localsrc="784">',
+ '&(phone);' => '<img localsrc="85">',
+ '&(phoneto);'=> '<img localsrc="155">', // An ear receiver
+ '&(faxto);' => '<img localsrc="166">', // A FAX
+ );
+ }
+ break;
+
}
+
+unset($matches, $ua_name, $ua_vers, $ua_agent, $special_rules);
+
?>