Changeset 16164 for branches/feature-module-update/html
- Timestamp:
- 2007/09/28 19:49:10 (16 years ago)
- Location:
- branches/feature-module-update/html/mobile/magazine
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/feature-module-update/html/mobile/magazine/cancel.php
r15532 r16164 1 1 <?php 2 2 /** 3 * 3 * 4 4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 5 5 * 6 6 * http://www.lockon.co.jp/ 7 *8 7 * 9 * メルマガ解除 8 * 9 * モバイルサイト/メルマガキャンセル 10 10 */ 11 11 12 require_once('../require.php'); 12 // {{{ requires 13 require_once("../require.php"); 14 require_once(CLASS_PATH . "page_extends/magazine/LC_Page_Magazine_Cancel_Ex.php"); 13 15 14 class LC_Page { 15 function LC_Page() { 16 /** 必ず変更する **/ 17 $this->tpl_mainpage = 'magazine/cancel.tpl'; 18 $this->tpl_title .= 'メルマガ解除完了'; 19 } 20 } 16 // }}} 17 // {{{ generate page 21 18 22 $objPage = new LC_Page(); 23 $objQuery = new SC_Query(); 24 25 // secret_keyの取得 26 $key = $_GET['id']; 27 28 if (empty($key) or !lfExistKey($key)) { 29 sfDispSiteError(PAGE_ERROR, "", false, "", true); 30 } else { 31 lfChangeData($key); 32 } 33 34 $objView = new SC_MobileView(); 35 $objView->assignobj($objPage); 36 $objView->display(SITE_FRAME); 37 38 //----------------------------------------------------------------------------------------------------------------------------------- 39 40 // メルマガの解除を完了させる 41 function lfChangeData($key) { 42 global $objQuery; 43 44 $arrUpdate['mail_flag'] = 3; 45 $arrUpdate['secret_key'] = NULL; 46 $result = $objQuery->update("dtb_customer_mail", $arrUpdate, "secret_key = '" .addslashes($key). "'"); 47 } 48 49 // キーが存在するかどうか 50 function lfExistKey($key) { 51 global $objQuery; 52 53 $sql = "SELECT count(*) FROM dtb_customer_mail WHERE secret_key = ?"; 54 $result = $objQuery->getOne($sql, array($key)); 55 56 if ($result == 1) { 57 return true; 58 } else { 59 return false; 60 } 61 } 62 63 19 $objPage = new LC_Page_Magazine_Cancel_Ex(); 20 $objPage->mobileInit(); 21 $objPage->mobileProcess(); 22 register_shutdown_function(array($objPage, "destroy")); 64 23 ?> -
branches/feature-module-update/html/mobile/magazine/complete.php
r15532 r16164 1 1 <?php 2 2 /** 3 * 3 * 4 4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 5 5 * 6 6 * http://www.lockon.co.jp/ 7 * 7 * 8 * 9 * モバイルサイト/登録完了 8 10 */ 11 12 // {{{ requires 9 13 require_once("../require.php"); 14 require_once(CLASS_PATH . "page_extends/magazine/LC_Page_Magazine_Complete_Ex.php"); 10 15 11 class LC_Page { 12 function LC_Page() { 13 $this->tpl_mainpage = 'magazine/complete.tpl'; // メインテンプレート 14 $this->tpl_title .= 'メルマガ登録(完了ページ)'; // ページタイトル 15 } 16 } 16 // }}} 17 // {{{ generate page 17 18 18 $objPage = new LC_Page(); 19 $objView = new SC_MobileView(); 20 21 //---- ページ表示 22 $objView->assignobj($objPage); 23 $objView->display(SITE_FRAME); 24 25 //---------------------------------------------------------------------------------------------------------------------- 19 $objPage = new LC_Page_Magazine_Complete_Ex(); 20 $objPage->mobileInit(); 21 $objPage->mobileProcess(); 22 register_shutdown_function(array($objPage, "destroy")); 26 23 ?> -
branches/feature-module-update/html/mobile/magazine/confirm.php
r15532 r16164 1 1 <?php 2 2 /** 3 * 3 * 4 4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 5 5 * 6 6 * http://www.lockon.co.jp/ 7 *8 7 * 9 * メルマガ確認 8 * 9 * モバイルサイト/確認 10 10 */ 11 11 12 require_once('../require.php'); 12 // {{{ requires 13 require_once("../require.php"); 14 require_once(CLASS_PATH . "page_extends/magazine/LC_Page_Magazine_Confirm_Ex.php"); 13 15 14 class LC_Page { 15 function LC_Page() { 16 /** 必ず変更する **/ 17 $this->tpl_mainpage = 'magazine/confirm.tpl'; 18 $this->tpl_title .= 'メルマガ確認'; 19 } 20 } 16 // }}} 17 // {{{ generate page 21 18 22 $objPage = new LC_Page(); 23 $objConn = new SC_DbConn(); 24 $objPage->arrForm = $_POST; 25 26 // 登録 27 if (isset($_REQUEST['btnRegist'])) { 28 $objPage->arrErr = lfMailErrorCheck($objPage->arrForm, "regist"); 29 30 // エラーがなければ 31 if (count($objPage->arrErr) == 0) { 32 // 確認 33 $objPage->arrForm['kind'] = 'メルマガ登録'; 34 $objPage->arrForm['type'] = 'regist'; 35 $objPage->arrForm['mail'] = $objPage->arrForm['regist']; 36 } else { 37 $objPage->tpl_mainpage = 'magazine/index.tpl'; 38 $objPage->tpl_title = 'メルマガ登録・解除'; 39 } 40 // 解除 41 } elseif (isset($_REQUEST['btnCancel'])) { 42 $objPage->arrErr = lfMailErrorCheck($objPage->arrForm, "cancel"); 43 44 // エラーがなければ 45 if (count($objPage->arrErr) == 0) { 46 // 確認 47 $objPage->arrForm['kind'] = 'メルマガ解除'; 48 $objPage->arrForm['type'] = 'cancel'; 49 $objPage->arrForm['mail'] = $objPage->arrForm['cancel']; 50 } else { 51 $objPage->tpl_mainpage = 'magazine/index.tpl'; 52 $objPage->tpl_title = 'メルマガ登録・解除'; 53 } 54 // 完了 55 } elseif ($_REQUEST['mode'] == 'regist' or $_REQUEST['mode'] == 'cancel') { 56 57 // 登録 58 if ($_REQUEST['mode'] == 'regist') { 59 $uniqId = lfRegistData($_POST["email"]); 60 $subject = sfMakesubject('メルマガ登録のご確認'); 61 // 解除 62 } elseif ($_REQUEST['mode'] == 'cancel') { 63 $uniqId = lfGetSecretKey($_POST["email"]); 64 $subject = sfMakesubject('メルマガ解除のご確認'); 65 } 66 $CONF = sf_getBasisData(); 67 $objPage->CONF = $CONF; 68 $objPage->tpl_url = gfAddSessionId(MOBILE_SSL_URL . "magazine/" . $_REQUEST['mode'] . ".php?id=" . $uniqId); 69 70 $objMailText = new SC_MobileView(); 71 $objMailText->assignobj($objPage); 72 $toCustomerMail = $objMailText->fetch("mail_templates/mailmagazine_" . $_REQUEST['mode'] . ".tpl"); 73 $objMail = new GC_SendMail(); 74 $objMail->setItem( 75 '' // 宛先 76 , $subject // サブジェクト 77 , $toCustomerMail // 本文 78 , $CONF["email03"] // 配送元アドレス 79 , $CONF["shop_name"] // 配送元 名前 80 , $CONF["email03"] // reply_to 81 , $CONF["email04"] // return_path 82 , $CONF["email04"] // Errors_to 83 , $CONF["email01"] // Bcc 84 ); 85 // 宛先の設定 86 $objMail->setTo($_POST["email"], $_POST["email"]); 87 $objMail->sendMail(); 88 89 // 完了ページに移動させる。 90 header("Location:" . gfAddSessionId("./complete.php")); 91 exit; 92 } else { 93 sfDispSiteError(CUSTOMER_ERROR, "", false, "", true); 94 } 95 96 // レイアウトデザインを取得 97 $objPage = sfGetPageLayout($objPage, false, DEF_LAYOUT); 98 99 $objView = new SC_MobileView(); 100 $objView->assignobj($objPage); 101 $objView->display(SITE_FRAME); 102 103 //----------------------------------------------------------------------------------------------------------------------------------- 104 105 106 //---- 入力エラーチェック 107 function lfMailErrorCheck($array, $dataName) { 108 $objErr = new SC_CheckError($array); 109 $objErr->doFunc( 110 array('メールアドレス', $dataName, MTEXT_LEN) , 111 array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", 112 "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK", "MOBILE_EMAIL_CHECK")); 113 114 // 入力エラーがなければ 115 if (count($objErr->arrErr) == 0) { 116 // メルマガの登録有無 117 $flg = lfIsRegistData($array[$dataName]); 118 119 // 登録の時 120 if ($dataName == 'regist' and $flg == true) { 121 $objErr->arrErr[$dataName] = "既に登録されています。<br>"; 122 // 解除の時 123 } elseif ($dataName == 'cancel' and $flg == false) { 124 $objErr->arrErr[$dataName] = "メルマガ登録がされていません。<br>"; 125 } 126 } 127 128 return $objErr->arrErr; 129 } 130 131 132 //---- メルマガ登録 133 function lfRegistData ($email) { 134 global $objConn; 135 136 $count = 1; 137 while ($count != 0) { 138 $uniqid = sfGetUniqRandomId("t"); 139 $count = $objConn->getOne("SELECT COUNT(*) FROM dtb_customer_mail WHERE secret_key = ?", array($uniqid)); 140 } 141 142 $arrRegist["email"] = $email; // メールアドレス 143 $arrRegist["mail_flag"] = 5; // 登録状態 144 $arrRegist["secret_key"] = $uniqid; // ID発行 145 $arrRegist["create_date"] = "now()"; // 作成日 146 $arrRegist["update_date"] = "now()"; // 更新日 147 148 //-- 仮登録実行 149 $objConn->query("BEGIN"); 150 151 $objQuery = new SC_Query(); 152 153 //-- 既にメルマガ登録しているかの判定 154 $sql = "SELECT count(*) FROM dtb_customer_mail WHERE email = ?"; 155 $mailResult = $objConn->getOne($sql, array($arrRegist["email"])); 156 157 if ($mailResult == 1) { 158 $objQuery->update("dtb_customer_mail", $arrRegist, "email = '" .addslashes($arrRegist["email"]). "'"); 159 } else { 160 $objQuery->insert("dtb_customer_mail", $arrRegist); 161 } 162 $objConn->query("COMMIT"); 163 164 return $uniqid; 165 } 166 167 // 登録されているキーの取得 168 function lfGetSecretKey ($email) { 169 global $objConn; 170 171 $sql = "SELECT secret_key FROM dtb_customer_mail WHERE email = ?"; 172 $uniqid = $objConn->getOne($sql, array($email)); 173 174 if ($uniqid == '') { 175 $count = 1; 176 while ($count != 0) { 177 $uniqid = sfGetUniqRandomId("t"); 178 $count = $objConn->getOne("SELECT COUNT(*) FROM dtb_customer_mail WHERE secret_key = ?", array($uniqid)); 179 } 180 181 $objQuery = new SC_Query(); 182 $objQuery->update("dtb_customer_mail", array('secret_key' => $uniqid), "email = '" .addslashes($email). "'"); 183 } 184 185 return $uniqid; 186 } 187 188 // 既に登録されているかどうか 189 function lfIsRegistData ($email) { 190 global $objConn; 191 192 $sql = "SELECT email, mail_flag FROM dtb_customer_mail WHERE email = ?"; 193 $mailResult = $objConn->getRow($sql, array($email)); 194 195 // NULLも購読とみなす 196 if (count($mailResult) == 0 or ($mailResult[1] != null and $mailResult[1] != 2 )) { 197 return false; 198 } else { 199 return true; 200 } 201 } 202 203 19 $objPage = new LC_Page_Magazine_Confirm_Ex(); 20 $objPage->mobileInit(); 21 $objPage->mobileProcess(); 22 register_shutdown_function(array($objPage, "destroy")); 204 23 ?> -
branches/feature-module-update/html/mobile/magazine/index.php
r15532 r16164 1 1 <?php 2 2 /** 3 * 3 * 4 4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 5 5 * 6 6 * http://www.lockon.co.jp/ 7 *8 7 * 9 * メルマガ登録・解除 トップページ 8 * 9 * モバイルサイト/メルマガ管理 10 10 */ 11 11 12 require_once('../require.php'); 12 // {{{ requires 13 require_once("../require.php"); 14 require_once(CLASS_PATH . "page_extends/magazine/LC_Page_Magazine_Ex.php"); 13 15 14 class LC_Page { 15 function LC_Page() { 16 /** 必ず変更する **/ 17 $this->tpl_mainpage = 'magazine/index.tpl'; 18 $this->tpl_title .= 'メルマガ登録・解除'; 19 } 20 } 16 // }}} 17 // {{{ generate page 21 18 22 $objPage = new LC_Page(); 23 $objPage->arrForm = $_POST; 24 25 // レイアウトデザインを取得 26 $objPage = sfGetPageLayout($objPage, false, DEF_LAYOUT); 27 28 $objView = new SC_MobileView(); 29 $objView->assignobj($objPage); 30 $objView->display(SITE_FRAME); 31 32 //----------------------------------------------------------------------------------------------------------------------------------- 19 $objPage = new LC_Page_Magazine_Ex(); 20 $objPage->mobileInit(); 21 $objPage->mobileProcess(); 22 register_shutdown_function(array($objPage, "destroy")); 33 23 ?> -
branches/feature-module-update/html/mobile/magazine/regist.php
r15532 r16164 1 1 <?php 2 2 /** 3 * 3 * 4 4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 5 5 * 6 6 * http://www.lockon.co.jp/ 7 *8 7 * 9 * メルマガ登録 8 * 9 * モバイルサイト/メルマガ登録完了 10 10 */ 11 11 12 require_once('../require.php'); 12 // {{{ requires 13 require_once("../require.php"); 14 require_once(CLASS_PATH . "page_extends/magazine/LC_Page_Magazine_Regist_Ex.php"); 13 15 14 class LC_Page { 15 function LC_Page() { 16 /** 必ず変更する **/ 17 $this->tpl_mainpage = 'magazine/regist.tpl'; 18 $this->tpl_title .= 'メルマガ登録完了'; 19 } 20 } 16 // }}} 17 // {{{ generate page 21 18 22 $objPage = new LC_Page(); 23 $objQuery = new SC_Query(); 24 25 // secret_keyの取得 26 $key = $_GET['id']; 27 28 if (empty($key) or !lfExistKey($key)) { 29 sfDispSiteError(PAGE_ERROR, "", false, "", true); 30 } else { 31 lfChangeData($key); 32 } 33 34 $objView = new SC_MobileView(); 35 $objView->assignobj($objPage); 36 $objView->display(SITE_FRAME); 37 38 //----------------------------------------------------------------------------------------------------------------------------------- 39 40 // メルマガの登録を完了させる 41 function lfChangeData($key) { 42 global $objQuery; 43 44 $arrUpdate['mail_flag'] = 2; 45 $arrUpdate['secret_key'] = NULL; 46 $result = $objQuery->update("dtb_customer_mail", $arrUpdate, "secret_key = '" .addslashes($key). "'"); 47 } 48 49 // キーが存在するかどうか 50 function lfExistKey($key) { 51 global $objQuery; 52 53 $sql = "SELECT count(*) FROM dtb_customer_mail WHERE secret_key = ?"; 54 $result = $objQuery->getOne($sql, array($key)); 55 56 if ($result == 1) { 57 return true; 58 } else { 59 return false; 60 } 61 } 62 63 19 $objPage = new LC_Page_Magazine_Regist_Ex(); 20 $objPage->mobileInit(); 21 $objPage->mobileProcess(); 22 register_shutdown_function(array($objPage, "destroy")); 64 23 ?>
Note: See TracChangeset
for help on using the changeset viewer.