/** * 指定した配列keysのログ(idx, (dat, srd))を削除して、 * ついでに履歴からも外す。お気にスレ、殿堂からも外す。 * * ユーザがログを削除する時は、通常この関数が呼ばれる * * @access public * @param array $keys 削除対象のkeyを格納した配列 * @return integer|false 削除できたら1, 削除対象がなければ2を返す。失敗があればfalse。 */ function deleteLogs($host, $bbs, $keys) { // 指定keyのログを削除(対象が一つの時) if (is_string($keys)) { $akey = $keys; offRecent($host, $bbs, $akey); offResHist($host, $bbs, $akey); setFav($host, $bbs, $akey, 0); setPalace($host, $bbs, $akey, 0); $r = deleteThisKey($host, $bbs, $akey); // 指定key配列のログを削除 } elseif (is_array($keys)) { $rs = array(); foreach ($keys as $akey) { offRecent($host, $bbs, $akey); offResHist($host, $bbs, $akey); setFav($host, $bbs, $akey, 0); setPalace($host, $bbs, $akey, 0); $rs[] = deleteThisKey($host, $bbs, $akey); } if (array_search(1, $rs) !== false) { $r = 1; } elseif (array_search(2, $rs) !== false) { $r = 2; } else { $r = false; } } return $r; }
// {{{ 削除 if (!empty($_GET['dele']) || isset($_POST['submit']) && $_POST['submit'] == $deletelog_st) { if ($host && $bbs) { require_once P2_LIB_DIR . '/dele.inc.php'; if (isset($_POST['checkedkeys'])) { $dele_keys = $_POST['checkedkeys']; } else { $dele_keys = array($_GET['key']); } deleteLogs($host, $bbs, $dele_keys); } // }}} // お気に入りスレッド } elseif (isset($_GET['setfav']) && !empty($_GET['key']) && $host && $bbs) { require_once P2_LIB_DIR . '/setfav.inc.php'; setFav($host, $bbs, $_GET['key'], $_GET['setfav'], isset($_GET['ttitle_en']) ? UrlSafeBase64::decode($_GET['ttitle_en']) : null); // 殿堂入り } elseif (isset($_GET['setpal']) && $_GET['key'] && $host && $bbs) { require_once P2_LIB_DIR . '/setpalace.inc.php'; setPal($host, $bbs, $_GET['key'], $_GET['setpal']); // あぼーんスレッド解除 } elseif (isset($_POST['submit']) && $_POST['submit'] == $abornoff_st && $host && $bbs && $_POST['checkedkeys']) { require_once P2_LIB_DIR . '/settaborn_off.inc.php'; settaborn_off($host, $bbs, $_POST['checkedkeys']); // スレッドあぼーん } elseif (isset($_GET['taborn']) && !is_null($_GET['key']) && $host && $bbs) { require_once P2_LIB_DIR . '/settaborn.inc.php'; settaborn($host, $bbs, $_GET['key'], $_GET['taborn']); } // お気に板をマージ if ($spmode == 'merge_favita') {
$r_msg_ht = '1'; // 完了 } elseif ($r == 2) { $r_msg_ht = '2'; // なし } else { $r_msg_ht = '0'; // 失敗 } } // }}} // {{{ お気にスレ } elseif ($cmd == 'setfav') { if (isset($_REQUEST['host']) && isset($_REQUEST['bbs']) && isset($_REQUEST['key']) && isset($_REQUEST['setfav'])) { require_once P2_LIB_DIR . '/setFav.func.php'; $r = setFav($_REQUEST['host'], $_REQUEST['bbs'], $_REQUEST['key'], $_REQUEST['setfav']); if (empty($r)) { $r_msg_ht = '0'; // 失敗 } elseif ($r == 1) { $r_msg_ht = '1'; // 完了 } } // }}} // {{{ 書き込みフォームのオートセーブ(※これは使っていない。通信負荷を避けて、クッキーにまかせた) } elseif ($cmd == 'auto_save_post_form') { // 未実装のテスト ob_start(); var_dump($_POST); $r_msg = ob_get_clean();
$r2 = offResHist($host, $bbs, $key); if ($r1 === false or $r2 === false) { $title_msg = "× 履歴解除失敗"; $info_msg = "× 履歴解除失敗"; } elseif ($r1 == 1 || $r2 == 1) { $title_msg = "○ 履歴解除完了"; $info_msg = "○ 履歴解除完了"; } elseif ($r1 === 0 && $r2 === 0) { $title_msg = "- 履歴にはありませんでした"; $info_msg = "- 履歴にはありませんでした"; } // }}} // お気に入りスレッド } elseif (isset($_GET['setfav'])) { require_once P2_LIB_DIR . '/setfav.inc.php'; setFav($host, $bbs, $key, $_GET['setfav']); // 殿堂入り } elseif (isset($_GET['setpal'])) { require_once P2_LIB_DIR . '/setpalace.inc.php'; setPal($host, $bbs, $key, $_GET['setpal']); // スレッドあぼーん } elseif (isset($_GET['taborn'])) { require_once P2_LIB_DIR . '/settaborn.inc.php'; settaborn($host, $bbs, $key, $_GET['taborn']); } //================================================================= // メイン //================================================================= $aThread =& new Thread(); // hostを分解してidxファイルのパスを求める $aThread->setThreadPathInfo($host, $bbs, $key);
case 'setfav': if (isset($host) && isset($bbs) && isset($key) && isset($_REQUEST['setfav'])) { if (!function_exists('setFav')) { include P2_LIB_DIR . '/setfav.inc.php'; } if (isset($_REQUEST['ttitle_en'])) { $ttitle = UrlSafeBase64::decode($_REQUEST['ttitle_en']); } elseif (isset($_REQUEST['ttitle'])) { $ttitle = $_REQUEST['ttitle']; } else { $ttitle = null; } if (isset($_REQUEST['setnum'])) { $r = setFav($host, $bbs, $key, $_REQUEST['setfav'], $ttitle, $_REQUEST['setnum']); } else { $r = setFav($host, $bbs, $key, $_REQUEST['setfav'], $ttitle); } if ($r) { $r_msg = '1'; // 完了 } else { $r_msg = '0'; // 失敗 } } break; // }}} // {{{ 殿堂入り // }}} // {{{ 殿堂入り case 'setpal':
// {{{ 削除 if (!empty($_GET['dele']) or isset($_POST['submit']) and $_POST['submit'] == $deletelog_st) { if ($host && $bbs) { require_once P2_LIB_DIR . '/dele.inc.php'; if ($_POST['checkedkeys']) { $dele_keys = $_POST['checkedkeys']; } else { $dele_keys = array($_GET['key']); } deleteLogs($host, $bbs, $dele_keys); } // }}} // お気に入りスレッド } elseif (isset($_GET['setfav']) && $_GET['key'] && $host && $bbs) { require_once P2_LIB_DIR . '/setfav.inc.php'; setFav($host, $bbs, $_GET['key'], $_GET['setfav']); // 殿堂入り } elseif (isset($_GET['setpal']) && $_GET['key'] && $host && $bbs) { require_once P2_LIB_DIR . '/setpalace.inc.php'; setPal($host, $bbs, $_GET['key'], $_GET['setpal']); // あぼーんスレッド解除 } elseif ((isset($_POST['submit']) and $_POST['submit'] == $abornoff_st) && $host && $bbs && !empty($_POST['checkedkeys'])) { require_once P2_LIB_DIR . '/settaborn_off.inc.php'; settaborn_off($host, $bbs, $_POST['checkedkeys']); // スレッドあぼーん } elseif (isset($_GET['taborn']) && !is_null($_GET['key']) && $host && $bbs) { require_once P2_LIB_DIR . '/settaborn.inc.php'; settaborn($host, $bbs, $_GET['key'], $_GET['taborn']); } //============================================================ // メイン
$info_msg = "○ 履歴解除完了"; } elseif ($r1 == 2 && $r2 == 2) { $title_msg = "- 履歴にはありませんでした"; $info_msg = "- 履歴にはありませんでした"; } // }}} // {{{ お気に入りスレッド } elseif (isset($_GET['setfav']) && $key && $host && $bbs) { if (!function_exists('setFav')) { include P2_LIB_DIR . '/setfav.inc.php'; } $ttitle = is_string($ttitle_en) ? UrlSafeBase64::decode($ttitle_en) : null; if (isset($_GET['setnum'])) { setFav($host, $bbs, $key, $_GET['setfav'], $ttitle, $_GET['setnum']); } else { setFav($host, $bbs, $key, $_GET['setfav'], $ttitle); } if ($_conf['expack.misc.multi_favs']) { FavSetManager::loadAllFavSet(true); } // }}} // {{{ 殿堂入り } elseif (isset($_GET['setpal']) && $key && $host && $bbs) { require_once P2_LIB_DIR . '/setpalace.inc.php'; setPal($host, $bbs, $key, $_GET['setpal']); // }}} // {{{ スレッドあぼーん } elseif (isset($_GET['taborn']) && $key && $host && $bbs) { require_once P2_LIB_DIR . '/settaborn.inc.php'; settaborn($host, $bbs, $key, $_GET['taborn']); }