- 追加された行はこの色です。
- 削除された行はこの色です。
**経緯
【p2】PHPでつくった2ch viewer【part9】
http://pc5.2ch.net/test/read.cgi/software/1085590871/
において自分で書いた書き込み
49 :名無しさん@お腹いっぱい。 :sage :04/05/28 15:34 ID:RPrltJvx
板のスレ一覧で、お気にマークが付けれますが、
その横に、あぼーん用のマークというかボタンというか、
そのようなものも追加できませんか?
ユビキタスp2から見る時に軽いように不要なスレをあぼーんして使っているので、
あると大変助かるのです。
-----
**スクリーンショット
&ref(taborn_subject.png,80%);
**ファイル
p2機能拡張パック (rev.050610.0100)で対応してみました。
p2/subject.php
p2/lib/sb_print.inc.php
p2/conf/conf_user.php
を以下のファイルで置き換えると対応可能です。
機能を有効にするにはconf_user.phpを編集してください。
できれば本体に入れて欲しいです。
#attach
-----
以下は現在のバージョンでは機能しません。
**各ファイルの変更点
以下にsubject.php、sb_print.inc.php、conf_user.phpでの変更点を示す。
sb_print.incを編集します。
***subject.phpの変更点
subject.php内のスレッドあぼーん機能(隠し機能?)が処理されないバグを修復~
変更前
// スレッドあぼーん
elseif (isset($_GET['taborn']) && $key && $host && $bbs) {
require_once (P2_LIBRARY_DIR . '/settaborn.inc.php');
settaborn($host, $bbs, $key, $_GET['taborn']);
}
テーブルヘッダ部分の83〜84行間(お気に入りの次の行)に↓を追加
echo "<td class=\"t\">×</td>"; //あぼーん
変更後
// スレッドあぼーん
elseif (isset($_GET['taborn']) && isset($_GET['key']) && $host && $bbs) {
require_once (P2_LIBRARY_DIR . '/settaborn.inc.php');
settaborn($host, $bbs, $_GET['key'], $_GET['taborn']);
}
182行辺りに↓を追加
//あぼーん =============================================
$abone_ht="<td{$class_t}><a class=\"fav\" href=\"{$subject_php}?host={$aThread->host}{$bbs_q}{$key_q}{$spmode_q}{$norefresh_q}&taborn=1\" target=\"_self\">×</a></td>";
***sb_print.inc.phpの変更点
変更点1:117行付近、スレッド一覧のタイトル部分にあぼーん用の欄を設けた。
//お気に入り
if ($_conf['sb_show_fav'] && $aThreadList->spmode != 'taborn') {
echo "<td class=\"t\"><a{$class_sort_fav} href=\"{$_conf['subject_php']}?sort=fav{$sortq_spmode}{$sortq_host}{$sortq_ita}{$norefresh_q}\" target=\"_self\" title=\"お気にスレ\">☆</a></td>";
}
↓ここから追加↓
//あぼーん
if ($_conf['sb_show_aborn'] && $aThreadList->spmode != 'taborn' && $aThreadList->spmode != 'soko') {
echo "<td class=\"t\">×</td>";
}
↑ここまで追加↑
echo "\n</tr>\n";
ボディ出力部分の279-280行間(お気に入りの次の行)に↓を追加
$abone_ht
スレッド一覧に×が追加され×を押すとスレッドがあぼーんされます。
変更点2:218行付近、各スレッド用のあぼーんリンクを作成
// お気に入り ========================================
$fav_ht = '';
if ($_conf['sb_show_fav']) {
//$favmark = ($aThread->fav) ? '★' : '+';
//$favdo = ($aThread->fav) ? 0; : 1;
if ($aThreadList->spmode != 'taborn') {
if ($aThread->fav) {
↓↓ここ$class_t→{$class_t}て書き直した。どうでもいいけど。
$fav_ht = "<td{$class_t}><a class=\"fav\" href=\"{$_conf['subject_php']}?host={$aThread->host}{$bbs_q}{$key_q}{$spmode_q}{$norefresh_q}&setfav=0\" target=\"_self\">★</a></td>";
} else {
$fav_ht = "<td{$class_t}><a class=\"fav\" href=\"{$_conf['subject_php']}?host={$aThread->host}{$bbs_q}{$key_q}{$spmode_q}{$norefresh_q}&setfav=1\" target=\"_self\">+</a></td>";
}
}
}
↓↓ここから追加↓↓
// あぼーん ========================================
$aborn_ht = '';
if ($_conf['sb_show_aborn'] && $aThreadList->spmode != 'taborn' && $aThreadList->spmode != 'soko') {
if ($aThread->fav) {
$aborn_ht = "<td{$class_t}>−</td>";
} else {
$aborn_ht = "<td{$class_t}><a class=\"fav\" href=\"{$_conf['subject_php']}?host={$aThread->host}{$bbs_q}{$key_q}{$spmode_q}{$norefresh_q}&taborn=1\" target=\"_self\">×</a></td>";
}
}
↑↑ここまで追加↑↑
変更点3:ファイルの末尾、スレッド一覧出力部の変更
{$edit_ht}
{$unum_ht}
{$rescount_ht}
{$one_ht}
{$checkbox_ht}
<td{$class_to}>{$torder_ht}</td>
<td{$class_tl} nowrap>{$moto_thre_ht}<a id=\"tt{$i}\" href=\"{$thre_url}\"{$classtitle_q}{$change_color}>{$aThread->ttitle_ht}</a></td>
{$htm['ita_td']}
{$spd_ht}
{$ikioi_ht}
{$birth_ht}
{$fav_ht}
↓↓ここ追加↓↓
{$aborn_ht}
***conf_user.phpの変更点
$_conf['sb_show_aborn'] の定義行を増やした~
変更前
$_conf['sb_show_fav'] = 0; // (0) スレッド一覧でお気にスレマーク★を表示 (する:1, しない:0)
変更後
$_conf['sb_show_fav'] = 0; // (0) スレッド一覧でお気にスレマーク★を表示 (する:1, しない:0)
$_conf['sb_show_aborn'] = 0; // (0) スレッド一覧であぼーん機能×を表示 (する:1, しない:0)