7 * LICENSE: This source file is licensed under the terms of the GNU General Public License.
9 * @package Magic3 Framework
10 * @author 平田直毅(Naoki Hirata) <naoki@aplo.co.jp>
11 * @copyright Copyright 2006-2012 Magic3 Project.
12 * @license http://www.gnu.org/copyleft/gpl.html GPL License
13 * @version SVN: $Id: blog_archive_menuDb.php 5270 2012-10-04 12:19:21Z fishbone $
14 * @link http://www.magic3.org
16 require_once($gEnvManager->getDbPath() . '/baseDb.php');
18 class blog_archive_menuDb extends BaseDb
20 const USER_ID_SEPARATOR = ','; // ユーザIDセパレータ
25 * @param string $langId 言語
26 * @param array $rows 取得データ
29 function getAllEntry($langId, &$rows)
32 $initDt = $this->gEnv->getInitValueOfTimestamp();
33 $now = date("Y/m/d H:i:s"); // 現在日時
34 if (!$this->gEnv->isSystemManageUser()) $userId = $this->gEnv->getCurrentUserId(); // システム管理ユーザの場合
36 /* $queryStr = 'SELECT be_regist_dt FROM blog_entry ';
37 $queryStr .= 'WHERE be_deleted = false '; // 削除されていない
38 $queryStr .= 'AND be_status = ? ';
39 $queryStr .= 'AND be_language_id = ? ';
40 $queryStr .= 'AND be_regist_dt <= ? '; // 投稿日時が現在日時よりも過去のものを取得
43 $queryStr .= 'AND (be_active_start_dt = ? OR (be_active_start_dt != ? AND be_active_start_dt <= ?)) ';
44 $queryStr .= 'AND (be_active_end_dt = ? OR (be_active_end_dt != ? AND be_active_end_dt > ?)) ';*/
45 //$queryStr = 'SELECT * FROM blog_entry LEFT JOIN blog_id ON be_blog_id = bl_id AND bl_deleted = false ';
46 $queryStr = 'SELECT be_regist_dt FROM blog_entry LEFT JOIN blog_id ON be_blog_id = bl_id AND bl_deleted = false ';
47 $queryStr .= 'WHERE be_deleted = false '; // 削除されていない
48 $queryStr .= 'AND be_status = ? '; $params[] = 2; // 「公開」(2)データを表示
49 $queryStr .= 'AND be_language_id = ? '; $params[] = $langId;
50 $queryStr .= 'AND be_regist_dt <= ? '; $params[] = $now; // 投稿日時が現在日時よりも過去のものを取得
54 $queryStr .= 'AND (be_blog_id = \'\' ';
55 $queryStr .= 'OR (be_blog_id != \'\' ';
56 $queryStr .= 'AND ((bl_owner_id = ? AND bl_owner_id != 0) '; $params[] = $userId;
57 $queryStr .= 'OR bl_user_limited = false ';
58 $queryStr .= 'OR (bl_user_limited = true AND bl_limited_user_id = \'\' AND 0 != ' . $userId . ') ';
59 $queryStr .= 'OR (bl_user_limited = true AND bl_limited_user_id != \'\' AND bl_limited_user_id LIKE \'%' . self::USER_ID_SEPARATOR . $userId . self::USER_ID_SEPARATOR . '%\')))) ';
63 $queryStr .= 'AND (be_active_start_dt = ? OR (be_active_start_dt != ? AND be_active_start_dt <= ?)) ';
64 $queryStr .= 'AND (be_active_end_dt = ? OR (be_active_end_dt != ? AND be_active_end_dt > ?)) ';
72 $queryStr .= 'ORDER BY be_regist_dt desc';
73 //$retValue = $this->selectRecords($queryStr, array(2, $langId, $now, $initDt, $initDt, $now, $initDt, $initDt, $now), $rows);// 「公開」(2)データを取得
74 $retValue = $this->selectRecords($queryStr, $params, $rows);