static function search(LC_Page $objPage, SC_FormParam $objFormParam, SC_Query $objQuery) { // edit_** を除外する $objSql = new SC_DeviceAndroidSelect_Ex($objFormParam->getSearchArray(), "master"); $objPage->tpl_linemax = $objSql->getCount(); if ($objPage->tpl_linemax == 0) { return; } $objPage->page_max = $objFormParam->getValue("search_page_max", SEARCH_PMAX); $objPage->page = $objFormParam->getValue("search_pageno", 1); $objPage->objPageNavi = new SC_PageNavi_Ex($objPage->page, $objPage->tpl_linemax, $objPage->page_max, 'eccube.moveSearchPage', NAVI_PMAX); $objPage->arrPagenavi = $objPage->objPageNavi->arrPagenavi; $objSql->setOrder("device_name ASC"); $objPage->arrData = $objSql->getList($objPage->objPageNavi, $objPage->page_max); $objPage->arrData = SC_Utils_Ex::makeArrayIDToKey("device_id", $objPage->arrData); foreach ($objPage->arrData as $device_id => &$arrData) { $arrData["category_id"] = $objQuery->getCol("category_id", "cp_dtb_device_categories", "device_id=?", (array) $device_id); $release_date = SC_Utils_Ex::sfDispDBDate($arrData["release_date"], false); if ($release_date) { $arrData["release_date"] = str_replace("1970/01/01", "", $release_date); } $last_access_date = SC_Utils_Ex::sfDispDBDate($arrData["last_access_date"], false); if ($last_access_date) { $arrData["last_access_date"] = str_replace("1970/01/01", "", $last_access_date); } $device_name = trim($arrData["device_name"]); $arrData["disp_device_name"] = str_replace("(", "\n(", $device_name); } }
/** * 配信内容と配信リストを書き込む * * @param SC_FormParam $objFormParam * @return integer 登録した行の dtb_send_history.send_id の値 */ public function lfRegisterData(&$objFormParam) { $objQuery =& SC_Query_Ex::getSingletonInstance(); list($linemax, $arrSendCustomer, $objNavi) = SC_Helper_Customer_Ex::sfGetSearchData($objFormParam->getHashArray(), 'All'); $send_customer_cnt = count($arrSendCustomer); $send_id = $objQuery->nextVal('dtb_send_history_send_id'); $dtb_send_history = array(); $dtb_send_history['mail_method'] = $objFormParam->getValue('mail_method'); $dtb_send_history['subject'] = $objFormParam->getValue('subject'); $dtb_send_history['body'] = $objFormParam->getValue('body'); $dtb_send_history['start_date'] = 'CURRENT_TIMESTAMP'; $dtb_send_history['creator_id'] = $_SESSION['member_id']; $dtb_send_history['send_count'] = $send_customer_cnt; $dtb_send_history['search_data'] = serialize($objFormParam->getSearchArray()); $dtb_send_history['update_date'] = 'CURRENT_TIMESTAMP'; $dtb_send_history['create_date'] = 'CURRENT_TIMESTAMP'; $dtb_send_history['send_id'] = $send_id; $objQuery->insert('dtb_send_history', $dtb_send_history); // 「配信メールアドレス種別」に携帯メールアドレスが指定されている場合は、携帯メールアドレスに配信 $emailtype = 'email'; $searchmailtype = $objFormParam->getValue('search_mail_type'); if ($searchmailtype == 2 || $searchmailtype == 4) { $emailtype = 'email_mobile'; } if (is_array($arrSendCustomer)) { foreach ($arrSendCustomer as $line) { $dtb_send_customer = array(); $dtb_send_customer['customer_id'] = $line['customer_id']; $dtb_send_customer['send_id'] = $send_id; $dtb_send_customer['email'] = $line[$emailtype]; $dtb_send_customer['name'] = $line['name01'] . ' ' . $line['name02']; $objQuery->insert('dtb_send_customer', $dtb_send_customer); } } return $send_id; }