| 1 |
<?php |
| 2 |
if( !defined('ABSPATH') ) exit; |
| 3 |
|
| 4 |
function zipaddr_admin_menu(){ // 設定メニュー下にサブメニューを追加 |
| 5 |
add_menu_page( 'Zipaddr-JP', 'Zipaddr-JP', 'activate_plugins', zipaddr_KEYS, 'zipaddr_conf'); |
| 6 |
add_submenu_page(zipaddr_KEYS, __('option','zipaddr-jp'),__('option','zipaddr-jp'), 'activate_plugins', zipaddr_KEYS, 'zipaddr_conf'); |
| 7 |
} |
| 8 |
function zipaddr_radio($iname,$selected,$table){ |
| 9 |
$cdata1= '<label><input name="{iname}" id="{iname}_{n}" type="radio" value="{key}"{select} />'; |
| 10 |
$cdata1.= '{data}</label><br />'."\n"; |
| 11 |
$ans= ""; |
| 12 |
$n= 0; |
| 13 |
foreach($table as $key => $data) { |
| 14 |
$select= ($key==$selected) ? " checked" : ""; |
| 15 |
$n++; |
| 16 |
$dat= str_replace("{iname}", $iname, $cdata1); |
| 17 |
$dat= str_replace("{n}", $n, $dat); |
| 18 |
$dat= str_replace("{select}",$select,$dat); |
| 19 |
$dat= str_replace("{key}", $key, $dat); |
| 20 |
$dat= str_replace("{data}", $data, $dat); |
| 21 |
$ans.= $dat; |
| 22 |
} |
| 23 |
return $ans; |
| 24 |
} |
| 25 |
function zipaddr_conf(){ |
| 26 |
if( !empty($_GET['page']) && $_GET['page'] == zipaddr_KEYS ){ |
| 27 |
if( isset($_POST['zipaddr_token']) && !empty($_POST['zipaddr_token']) ){ |
| 28 |
check_admin_referer('zipaddrjp', 'zipaddrjp_def'); |
| 29 |
$array= array(); |
| 30 |
$flds= zipaddrjp_fld(); |
| 31 |
foreach($flds as $i => $key){ |
| 32 |
$keys= zipaddr_SYS.$key; // sys_site |
| 33 |
$da= isset($_POST[$keys]) ? $_POST[$keys] : ""; |
| 34 |
if( $key=="plce" && $da==" " ) {;} |
| 35 |
else $da= htmlspecialchars($da,ENT_QUOTES,'UTF-8'); |
| 36 |
$array[$keys]= $da; |
| 37 |
$$keys= $da; |
| 38 |
} |
| 39 |
if( $sys_site < "1" || "5" < $sys_site ) $array[zipaddr_SYS.'site']= "4"; |
| 40 |
if( $sys_keta < "5" || "7" < $sys_keta ) $array[zipaddr_SYS.'keta']= "7"; |
| 41 |
// if( $sys_site == "4" ) $array[zipaddr_SYS.'keta']= "7"; |
| 42 |
if( $sys_site == "2" ) $array[zipaddr_SYS.'keta']= "5"; |
| 43 |
else $array[zipaddr_SYS.'keta']= "7"; |
| 44 |
if( $sys_deli=="" || $sys_deli=="-" ){;} |
| 45 |
else $array[zipaddr_SYS.'deli']= "-"; |
| 46 |
if( !preg_match("/^[0-9\-]+$/",$sys_tate) ) $array[zipaddr_SYS.'tate']= ""; |
| 47 |
if( !preg_match("/^[0-9\-]+$/",$sys_yoko) ) $array[zipaddr_SYS.'yoko']= ""; |
| 48 |
if( !preg_match("/^[0-9\-]+$/",$sys_pfon) ) $array[zipaddr_SYS.'pfon']= ""; |
| 49 |
if( !preg_match("/^[0-9\-]+$/",$sys_sfon) ) $array[zipaddr_SYS.'sfon']= ""; |
| 50 |
if( $sys_dyna=="" || $sys_dyna=="1" ){;} |
| 51 |
else $array[zipaddr_SYS.'dyna']= ""; |
| 52 |
$array[zipaddr_SYS.'parm']= str_replace(",", "|", $sys_parm); |
| 53 |
$param= serialize($array); |
| 54 |
update_option(zipaddr_DEFINE,$param); // 定義� |
| 55 |
報を更新する |
| 56 |
$mesg= "稼働環境を設定しました。"; |
| 57 |
} |
| 58 |
else $mesg= "【稼働環境の設定】"; |
| 59 |
|
| 60 |
$flds= zipaddrjp_fld(); foreach($flds as $i => $key){$keys=zipaddr_SYS.$key; $$keys="";} |
| 61 |
$param= unserialize( get_option(zipaddr_DEFINE) ); // get定義� |
| 62 |
報 |
| 63 |
foreach((array)$param as $key => $data){ |
| 64 |
$da= ($data==" ") ? $data : htmlspecialchars($data,ENT_QUOTES,'UTF-8'); |
| 65 |
$$key= $da; |
| 66 |
} |
| 67 |
if( empty($sys_site) ) $sys_site= "4"; |
| 68 |
if( empty($sys_keta) ) $sys_keta= "7"; |
| 69 |
if( $sys_site == "1" ) $sys_site= "4"; |
| 70 |
if( $sys_keta < 5 || 7 < $sys_keta ) $sys_keta= "7"; |
| 71 |
if( $sys_pfon < 9 || 25 < $sys_pfon ) $sys_pfon= ""; |
| 72 |
if( $sys_sfon < 9 || 25 < $sys_sfon ) $sys_sfon= ""; |
| 73 |
$sit= array("4" => "商用版サイト(default)","5" => "商用版サイト(zipaddra.js)","2" => "有償版ガイダンス有り","3" => "有償版ガイダンス無し"); |
| 74 |
// $kta= array("5" => "5桁~", "6" => "6桁~", "7" => "7桁~(default)"); |
| 75 |
// $keta= zipaddr_radio("sys_keta", $sys_keta, $kta); |
| 76 |
$site= zipaddr_radio("sys_site", $sys_site, $sit); |
| 77 |
$param= str_replace("|", ",", $sys_parm); |
| 78 |
$token= zipaddrjp_str(); // token |
| 79 |
?> |
| 80 |
<h2><?php zipaddr_e($mesg) ?>(zipaddr-jp)V<?php zipaddr_e(zipaddr_VERS) ?></h2> |
| 81 |
<form id="zipaddr-conf" method="post" action=""> |
| 82 |
<table border="1" cellspacing="0" cellpadding="8" summary=" "> |
| 83 |
<tr><td colspan="2" width="90" bgcolor="#f3f3f3">▼郵番DBの稼働環境選択(<span style="color: #ff0000;">※</span>:� |
| 84 |
須)</td> |
| 85 |
</tr> |
| 86 |
<tr ><td bgcolor="#f3f3f3">利用サイト<span style="color: #ff0000;">※</span></td> |
| 87 |
<td><?php echo($site) ?></td> |
| 88 |
</tr> |
| 89 |
<tr><td bgcolor="#f3f3f3">郵便番号の区切り文字</td> |
| 90 |
<td><input type="text" name="sys_deli" size="5" maxlength="1" value="<?php zipaddr_e($sys_deli) ?>" style="ime-mode:disabled;" /> (default: '-')</td> |
| 91 |
</tr> |
| 92 |
<tr><td bgcolor="#f3f3f3">ガイダンス位置の補正</td> |
| 93 |
<td> |
| 94 |
縦:<input type="text" name="sys_tate" size="5" maxlength="4" value="<?php zipaddr_e($sys_tate) ?>" style="ime-mode:disabled;" /> (default: 18)<br /> |
| 95 |
横:<input type="text" name="sys_yoko" size="5" maxlength="4" value="<?php zipaddr_e($sys_yoko) ?>" style="ime-mode:disabled;" /> (default: 22) |
| 96 |
</td> |
| 97 |
</tr> |
| 98 |
<tr><td bgcolor="#f3f3f3">ガイダンス画面の文字サイズ</td> |
| 99 |
<td> |
| 100 |
PC:<input type="text" name="sys_pfon" size="5" maxlength="4" value="<?php zipaddr_e($sys_pfon) ?>" style="ime-mode:disabled;" /> (default: 12)<br /> |
| 101 |
SF:<input type="text" name="sys_sfon" size="5" maxlength="4" value="<?php zipaddr_e($sys_sfon) ?>" style="ime-mode:disabled;" /> (default: 20) |
| 102 |
</td> |
| 103 |
</tr> |
| 104 |
<tr><td bgcolor="#f3f3f3">placeholder上書(m:住所自動� |
| 105 |
�力)</td> |
| 106 |
<td><input type="text" name="sys_plce" size="25" maxlength="50" value="<?php zipaddr_e($sys_plce) ?>" /></td> |
| 107 |
</tr> |
| 108 |
<tr><td bgcolor="#f3f3f3">選択後にフォーカスするid名</td> |
| 109 |
<td><input type="text" name="sys_focs" size="25" maxlength="50" value="<?php zipaddr_e($sys_focs) ?>" /></td> |
| 110 |
</tr> |
| 111 |
<tr><td bgcolor="#f3f3f3">システム拡張用のAP識別子</td> |
| 112 |
<td><input type="text" name="sys_syid" size="25" maxlength="50" value="<?php zipaddr_e($sys_syid) ?>" /></td> |
| 113 |
</tr> |
| 114 |
<tr><td bgcolor="#f3f3f3">htmlの動的生成(1:有効)</td> |
| 115 |
<td><input type="text" name="sys_dyna" size="25" maxlength="50" value="<?php zipaddr_e($sys_dyna) ?>" /></td> |
| 116 |
</tr> |
| 117 |
<tr><td bgcolor="#f3f3f3">オウンコード設定パラメータ</td> |
| 118 |
<td><input type="text" name="sys_parm" size="25" maxlength="255" value="<?php zipaddr_e($param) ?>" /><br />例:bgc=#3366ff,rtrs=</td> |
| 119 |
</tr> |
| 120 |
<tr><td bgcolor="#f3f3f3">無条件挿� |
| 121 |
�(;区切でurlのkeyword)</td> |
| 122 |
<td><input type="text" name="sys_drct" size="25" maxlength="50" value="<?php zipaddr_e($sys_drct) ?>" placeholder="例:/contact" /></td> |
| 123 |
</tr> |
| 124 |
</table> |
| 125 |
<br /> |
| 126 |
▼郵便番号DBの稼働場所は、次の2系統があります。<br /> |
| 127 |
商用版サイト: <?php zipaddr_e(zipaddr_COM) ?> 系<br /> |
| 128 |
有償版サイト: <?php zipaddr_e(zipaddr2COM) ?> 系<br /> |
| 129 |
※有償版は利用申請をしないと動きません。<br /> |
| 130 |
※有償版のご利用には別途、<a href="<?php zipaddr_e(zipaddr2COM) ?>use/" target="_blank">利用申請(有償)</a> が� |
| 131 |
要となります。<br /> |
| 132 |
▼[システム拡張AP識別子('_'区切り)]<br /> |
| 133 |
▼自動判定:WooCommerce、Trust Form、Ninja Forms、WP-Members、WPForms、Visual Form Builder<br /> |
| 134 |
Contact Form 7、MW WP Form、Welcart、Mailform Pro<br /> |
| 135 |
<div class="btn-area"> |
| 136 |
<ul><li> |
| 137 |
<input type="hidden" name="zipaddr_token" value="<?php zipaddr_e($token) ?>" /> |
| 138 |
<?php wp_nonce_field( 'zipaddrjp', 'zipaddrjp_def' ); ?> |
| 139 |
<input name="submit" id="submit" class="button button-primary" type="submit" value="この� |
| 140 |
容で登録する" /> |
| 141 |
</li></ul> |
| 142 |
</div> |
| 143 |
</form> |
| 144 |
<?php |
| 145 |
} |
| 146 |
} |
| 147 |
|
| 148 |
function zipaddr_uninstall() {delete_option(zipaddr_DEFINE);} // uninstall処理 |
| 149 |
?> |
| 150 |
|