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);
     }
 }
Ejemplo n.º 2
0
 /**
  * 配信内容と配信リストを書き込む
  *
  * @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;
 }