/** * ■指定した配列keysのログ(idx, (dat, srd))を削除して、 * ついでに履歴からも外す。お気にスレ、殿堂からも外す。 * * ユーザがログを削除する時は、通常この関数が呼ばれる * * @public * @param array $keys 削除対象のkeyを格納した配列 * @return int 失敗があれば0, 削除できたら1, 削除対象がなければ2を返す。 */ 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); setPal($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); setPal($host, $bbs, $akey, 0); $rs[] = deleteThisKey($host, $bbs, $akey); } if (array_search(0, $rs) !== false) { $r = 0; } elseif (array_search(1, $rs) !== false) { $r = 1; } elseif (array_search(2, $rs) !== false) { $r = 2; } else { $r = 0; } } return $r; }
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') { $favitas = array(); $pre_subject_keys = array(); $subject_keys = array(); $sb_key_txts = array();
} 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); $key_line = $aThread->getThreadInfoFromIdx(); $aThread->getDatBytesFromLocalDat(); // $aThread->length をset if (!($aThread->itaj = P2Util::getItaName($aThread->host, $aThread->bbs))) {
// {{{ 殿堂入り // }}} // {{{ 殿堂入り case 'setpal': if (isset($host) && isset($bbs) && isset($key) && isset($_REQUEST['setpal'])) { if (!function_exists('setPal')) { include P2_LIB_DIR . '/setpalace.inc.php'; } if (isset($_REQUEST['ttitle_en'])) { $ttitle = UrlSafeBase64::decode($_REQUEST['ttitle_en']); } elseif (isset($_REQUEST['ttitle'])) { $ttitle = $_REQUEST['ttitle']; } else { $ttitle = null; } $r = setPal($host, $bbs, $key, $_REQUEST['setpal'], $ttitle); if ($r) { $r_msg = '1'; // 完了 } else { $r_msg = '0'; // 失敗 } } break; // }}} // {{{ スレッドあぼーん // }}} // {{{ スレッドあぼーん case 'taborn': if (isset($host) && isset($bbs) && isset($key) && isset($_REQUEST['taborn'])) {