■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50 [PR]ぜろちゃんねるプラス[PR]  
レス数が1000を超えています。残念ながら全部は表示しません。

ぜろちゃんねるプラス質問スレ

1 :windyakin ★:2011/07/10(日) 16:29:56.74 ID:???0
■ぜろちゃんねるプラスWiki
http://sourceforge.jp/projects/zerochplus/wiki/FrontPage

637 :名無しさん@ぜろちゃんねるプラス:2013/11/09(土) 13:21:04.13 ID:v8Ixqjjo0
リファラが不正だと書き込めないようですが、それを解除する方法ありますでしょうか?
サイトに直接表示させて書き込めるようにしたいので、そのサイトからのリファラも許可したいと思っています。

638 :0ch+開発担当 ◆0chp.sx.ik :2013/11/09(土) 14:06:52.94 ID:GC0gl6dg0
>>637
「アクセス不正です。このCGIは外部からのアクセスは認めてないです。。」
というエラーが表示される場合は、 BBS_REFERER_CHECKを空白に設定するか、
module/galadriel.pl の sub IsReferer を書き換えてください。
  # http://expample.jp/user1/* を許可
  if ($pENV->{'HTTP_REFERER'} =~ m|^\Qhttp://expample.jp/user1/\E|) {
    return 0;
  }

「フォーム情報が正しく読めないです。」 というエラーの場合はPOSTメソッドを使用するか、
システム設定->その他設定から「GETメソッドを使用する」にチェックを入れてください。

639 :名無しさん@ぜろちゃんねるプラス:2013/11/09(土) 14:41:00.41 ID:v8Ixqjjo0
>>638
さっそくのご回答ありがとうございます
では一度やってみます

640 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 12:44:01.80 ID:RkPmZa0c0
すいません、ひとつ質問です
現在カラーコードを指定して色を変えるというプラグインを作っているんですがどうも成功しません
y $text = $form->Get('MESSAGE');
if($text=~ /!color:[0-9A-F]{6}(.*?)/){
$text = "<font color=\"\#$1\">$2<\/font>";
}
どうすればできるでしょうか


641 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 12:52:48.08 ID:E50yas7c0
>>640
正規表現のカラーコード部分にもカッコが必要です。
if ($text=~ /!color:([0-9A-F]{6})(.*?)/) {

642 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 12:58:23.40 ID:RkPmZa0c0
は、早い

指摘通りに修正いたしましたがなぜかダメですね
my $text = $form->Get('MESSAGE');
if ($text=~ /!color:([0-9A-F]{6})(.*?)/) {
$text = "<font color=\"\#$1\">$2<\/font>";
}
カラーコードがフォントタグに代入されず
!color:AA9A00てす
と打ち込むと
!color:AA9A00てすとそのまま返ってきます
なぜでしょう

643 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 13:00:24.72 ID:RkPmZa0c0
ちなみに
!color:AA9A00
てす
のように改行をしてもだめでした……

644 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 13:44:46.49 ID:E50yas7c0
>>642
MESSAGEを再設定してください。
$Form->Set('MESSAGE', $text);

645 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 13:45:56.44 ID:E50yas7c0
訂正、今回の場合$formは小文字でしたね
誤 $Form → 正 $form

646 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 14:08:56.51 ID:RkPmZa0c0
https://sites.google.com/site/sourceaaafafsaf/
空白になってしまいました

647 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 15:40:47.59 ID:E50yas7c0
>>646
かなり書き換えてちょっと解りにくくなったと思いますが、こんな感じでどうでしょうか。
http://svn.sourceforge.jp/svnroot/zerochplus/codes/0ch_color.pl

648 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 16:03:12.35 ID:O5v+6ae20
書き込み後の処理で、板のTOPではなく書き込んだスレッドに戻るよう設定したいのですが、どうすればよろしいでしょうか。

649 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 16:22:16.81 ID:E50yas7c0
>>648
まず module/varda.pl の 490行目付近を以下のように書き換えてください。
  # プレビューの表示
  my $datPath = "$basePath/dat/$key.dat";
  $Dat->Load($this->{'SYS'}, $datPath, 1);
  $this->{'SYS'}->Set('KEY', $key);
      ↓書き換え
  $this->{'SYS'}->Set('_KEY', $key);

さらに620行目付近を書き換えてください。
  # 前準備
  my $contNum = $this->{'SET'}->Get('BBS_CONTENTS_NUMBER');
  my $cgiPath = $Sys->Get('SERVER') . $Sys->Get('CGIPATH');
  my $bbs = $Sys->Get('BBS');
  my $key = $Sys->Get('KEY');
      ↓書き換え
  my $key = $Sys->Get('_KEY');

次に bbs.cgi の subPrintBBSJump 内を書き換えてください。
  # PC用表示
  else {
    my $bbsPath = $Conv->MakePath($Sys->Get('BBS_REL'));
        ↓書き換え
    my $bbsPath = $Conv->MakePath($Sys->Get('CGIPATH').'/read.cgi/'.$Sys->Get('BBS').'/'.$Sys->Get('KEY').'/l50');

650 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 17:15:24.62 ID:RkPmZa0c0
>>647
おぉ、すごい
できました、ありがとうございます

651 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 18:26:21.67 ID:4IypCOK60
地域表示プラグインで名前欄記入時に非表示にしたいのですがどうすればいいのでしょうか。
また、非表示と言っておりますが色合わせの関係で</font>タグを埋め込ませたいのです………

よろしくお願いします

652 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 18:40:34.99 ID:E50yas7c0
>>651
sub execute 内の上のほうで以下のような文を加えればいいと思います。
return 0 if ($sys->Get('FROM', '') ne '');

> </font>タグを埋め込ませたい
これについてはよくわからないので、もう少し具体的に説明してください。

653 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 18:46:12.02 ID:i7AvOOU20
そのスレではなく特定のスレを一定書き込みごとに上げるようにするにはやはりプラグインでは不可能なのでしょうか?

654 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 18:47:32.92 ID:4IypCOK60
>>652
ランダム名無しプラグインの方で<font>タグを閉じずに地域表示プラグインの方で閉じるようにしたいのです

655 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 18:56:15.16 ID:4IypCOK60
非表示にした時に開けっ放しを回避したいのです
$form->Set('FROM', $name."</b>(".$area.")<b></font>");
としているのに非表示にすると閉じられなくなってしまうので

656 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 19:20:01.02 ID:E50yas7c0
>>653
不可能とはいいませんが、やはり簡単にはできないでしょう。

>>654-655
それなら、閉じタグを加えるだけのプラグインを作って
ランダム名無し、地域表示、閉じタグ追加の順に実行させればいいのではないでしょうか。

657 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 19:26:41.99 ID:4IypCOK60
>>656
確かにそうですね
やってみます

ありがとうございました

658 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 20:02:46.98 ID:RkPmZa0c0
いちいちindex更新をするのも面倒くさいので自動更新をする方法はありますか?

659 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 20:17:19.21 ID:E50yas7c0
>>658
掲示板のトップページ(index.html)のことなら、システム設定->その他設定から
動作モードの項目の高速書き込みモードのチェックを外してください。

過去ログ倉庫の各index.htmlのことなら0.7.4で自動更新するようにしました。

660 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 20:27:38.03 ID:RkPmZa0c0
>>659
チェックを外していますが自動更新されません……
あれですよ
例えばレスを削除すした後自動で更新されるという

661 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 20:37:53.83 ID:E50yas7c0
>>660
管理画面からレスを削除した時にindex.htmlを更新させるには、
mordor/thread.del.pl の sub FunctionResDelete の最後(returnの前)に以下のコードを加えてください。
  require './module/varda.pl';
  my $BBSAid = VARDA->new;
  $Sys->Set('MODE', 'CREATE');
  $BBSAid->Init($Sys, undef);
  $BBSAid->CreateIndex();
  $BBSAid->CreateIIndex();
  $BBSAid->CreateSubback();

662 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 20:40:04.41 ID:RkPmZa0c0
>>661
できました!
……わがまま言ってあれなんですけど、何かしらの変更が加えられたら自動更新、っていうのはできますかね……?

663 :0ch+開発担当 ◆0chp.sx.ik :2013/11/10(日) 20:54:19.83 ID:E50yas7c0
>>662
さすがに今のプログラム構造では難しいと思います。

664 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 20:57:25.77 ID:RkPmZa0c0
>>663
そうですか
有難うございました

665 :名無しさん@ぜろちゃんねるプラス:2013/11/10(日) 21:16:31.02 ID:O5v+6ae20
>>661
ありがとうございます

666 :名無しさん@ぜろちゃんねるプラス:2013/11/12(火) 19:45:21.80 ID:gHMeDmyM0
いつもお世話になっております。

zerochplus_0.7.4/ r.cgi 内部の、「r.cgi初期化・前準備」147〜150あたりに、
 
 
       my $submax = $oSET->Get('BBS_SUBJECT_MAX') || $oSYS->Get('SUBMAX');
       $Sys->Set('SUBMAX', $submax);
       my $resmax = $oSET->Get('BBS_RES_MAX') || $oSYS->Get('RESMAX');
       $Sys->Set('RESMAX', $resmax);

 
があるために、r.cgi が異常終了しているっぽいのですが。

667 :0ch+開発担当 ◆0chp.sx.ik :2013/11/12(火) 21:03:15.08 ID:gPvrKGyo0
>>666
確かにそうですね、報告ありがとうございます。
$Sys ではなく $oSYS ですね。

668 :名無しさん@ぜろちゃんねるプラス:2013/11/12(火) 21:21:48.52 ID:gHMeDmyM0
>>667
動きました。ありがとうございます。

669 :名無しさん@ぜろちゃんねるプラス:2013/11/12(火) 23:09:47.79 ID:o62Ye5SA0
$Sysと$oSYSとがあって紛らわしいですよね。

670 :0ch+開発担当 ◆0chp.sx.ik :2013/11/12(火) 23:20:21.43 ID:gPvrKGyo0
>>669
無印0chのコードは後者だったのですが、改造を繰り返すうちにややこしいことになったので
以降は$Sysに統一しようと思って、コード整理をした部分は$Sysにしてあると思います。

r.cgiはほとんどメンテナンスしていないので$oSYSのままだったりします。

671 :名無しさん@ぜろちゃんねるプラス:2013/11/13(水) 06:40:42.52 ID:zNTdUkvA0
プレビュー画面やread.cgi画面、過去ログ画面の掲示板に戻るリンクを任意のURLにしたいのですが、
どうすればよろしいでしょうか?

672 :0ch+開発担当 ◆0chp.sx.ik :2013/11/13(水) 17:47:29.04 ID:0Eq6Ku4s0
>>671
index.htmlのリンクは module/varda.pl の505行目あたりを、
書き込みエラー画面のリンクは module/orald.pl の194行目あたりを、
read.cgiのリンクは read.cgi の433行目あたりを、
過去ログ倉庫のリンクは module/celeborn.pl の483行目あたりを書き換えてください。
また、書き込み後の戻り先は bbs.cgi の547行目あたりを書き換えてください。

673 :名無しさん@ぜろちゃんねるプラス:2013/11/14(木) 19:29:55.36 ID:CIbAtc2I0
0ch_newtreed.plのように自動で新スレを建てるにはどうすればいいでしょうか?

674 :0ch+開発担当 ◆0chp.sx.ik :2013/11/14(木) 20:16:14.50 ID:lAvR8SmM0
>>673
そのプラグインを改造すればいいのではないですか?
あるいは不都合でもあるのでしょうか。

675 :名無しさん@ぜろちゃんねるプラス:2013/11/14(木) 20:23:51.85 ID:CIbAtc2I0
>>674
いえ、サイトに接続できないんです
恐らく配信が終了しているのでしょう
http://a1or4qsl6.hp.infoseek.co.jp/okiba/index.html

676 :0ch+開発担当 ◆0chp.sx.ik :2013/11/14(木) 20:28:09.72 ID:lAvR8SmM0
>>675
そういうことでしたか。
どうやらそのファイルはWebArchive上に残っているみたいです。
http://web.archive.org/web/20100429034431/http://a1or4qsl6.hp.infoseek.co.jp/okiba/files/0ch_newthread_060228.txt

677 :名無しさん@ぜろちゃんねるプラス:2013/11/14(木) 20:32:31.24 ID:CIbAtc2I0
>>676
なるほど!有難うございます
ところで旧0chのプラグインやアシストなどはどこに残っているのでしょうか?
http://www12.atwiki.jp/0ch/pages/28.html
http://www12.atwiki.jp/0ch/pages/25.html

678 :名無しさん@ぜろちゃんねるプラス:2013/11/14(木) 20:40:46.23 ID:mSchEbGo0
>>672
できました
ありがとうございます

679 :0ch+開発担当 ◆0chp.sx.ik :2013/11/14(木) 20:50:49.02 ID:lAvR8SmM0
>>677
現在ダウンロードできないものの内いくつかはWebArchive上に残っているみたいですが、
0ch/0ch+本体に統合された機能も多く、わざわざ探しだしてダウンロードする程でもないと思います。

また、0ch+開発の副産物としていくつかの実用プラグイン・サンプルプラグインがあります。
http://sourceforge.jp/projects/zerochplus/scm/svn/tree/head/codes/
http://sourceforge.jp/projects/zerochplus/scm/svn/tree/head/area/trunk/

680 :名無しさん@ぜろちゃんねるプラス:2013/11/14(木) 20:55:10.17 ID:CIbAtc2I0
>>679
わざわざありがとうございます
最後に、myres.cgi等は一体なんなのか教えてくれると助かります

681 :0ch+開発担当 ◆0chp.sx.ik :2013/11/14(木) 21:03:36.13 ID:lAvR8SmM0
>>680
「0ch_」のついていないものはプラグインではありません。
 myres.cgiは0ch+システム外部からレスを書き込むプログラム(>>440)
 bbsmenu.cgiはbbsmenuを表示するサンプルプログラム(>>159)
となっています。
それ以外は開発用のプログラムなので無視してください。

682 :名無しさん@ぜろちゃんねるプラス:2013/11/14(木) 21:04:00.17 ID:CIbAtc2I0
>>681
なるほど
本当に有難うございました!

683 :名無しさん@ぜろちゃんねるプラス:2013/11/15(金) 00:47:20.17 ID:rkXpzYQk0
携帯版のスレッドからPC版のレスに飛ばすことはできますでしょうか?
http://yakin.38-ch.net/zerochplus/i/
↑にあるこのスレッドをクリックすると、ここに飛ぶようにしたいです

684 :0ch+開発担当 ◆0chp.sx.ik :2013/11/15(金) 13:05:26.31 ID:4EQEDFqU0
>>683
/i/index.htmlのリンクをread.cgiに書き換える場合は
module/varda.pl の157行目あたりを以下のように書き換えてください。
  my $path = $Conv->CreatePath($Sys, 'O', $bbs, $key, 'l10');
  my $path = $Conv->CreatePath($Sys, 0, $bbs, $key, 'l50');

p.cgi の144行目あたりも同様です。
  $path = $Conv->CreatePath($Sys, 1, $Sys->Get('BBS'), $elem[1], 'l10');
  $path = $Conv->CreatePath($Sys, 0, $Sys->Get('BBS'), $elem[1], 'l50');

685 :名無しさん@ぜろちゃんねるプラス:2013/11/15(金) 16:51:50.38 ID:CsWIWGqQ0
>>684
ありがとうございます。できました。
あと、index画面(PC版)のスレッドを別タブで開かないようにすることはできますでしょうか?

686 :0ch+開発担当 ◆0chp.sx.ik :2013/11/15(金) 17:16:44.56 ID:4EQEDFqU0
>>685
module/varda.pl の394,398行目あたりの「 target=\"body\"」を削ってください。

687 :名無しさん@ぜろちゃんねるプラス:2013/11/15(金) 17:23:40.34 ID:CsWIWGqQ0
>>686
できました
ありがとうございました

688 :名無しさん@ぜろちゃんねるプラス:2013/11/16(土) 01:57:03.36 ID:4mqP9Xez0
携帯用のindex画面のみ、sage関係なく書き込み順でスレッドを表示することは可能でしょうか?

689 :0ch+開発担当 ◆0chp.sx.ik :2013/11/16(土) 17:37:26.10 ID:8Wp6Cdou0
>>688
module/varda.pl の147行目と p.cgi の235行目のGetKeySetの行の後に以下のコードを加えてください。
  my %mdate = ();
  my $basePath = $Sys->Get('BBSPATH') . '/' . $Sys->Get('BBS');
  foreach my $key (@threadSet) {
    $mdate{$key} = (-M "$basePath/dat/$key.dat");
  }
  @threadSet = sort {$mdate{$a} <=> $mdate{$b}} @threadSet;

p.cgiの方はさらに3ヶ所書き換えてください。
-67:  $max = CreateThreadList($Threads, $Set, \@tList, \%pPath, '');
+67:  $max = CreateThreadList($Sys, $Threads, $Set, \@tList, \%pPath, '');

-71:  $max = CreateThreadList($Threads, $Set, \@tList, \%pPath, $Form->Get('word', ''));
+71:  $max = CreateThreadList($Sys, $Threads, $Set, \@tList, \%pPath, $Form->Get('word', ''));

-230:  my ($Threads, $Set, $pList, $pHash, $keyWord) = @_;
+230:  my ($Sys, $Threads, $Set, $pList, $pHash, $keyWord) = @_;

690 :名無しさん@ぜろちゃんねるプラス:2013/11/16(土) 19:58:49.64 ID:4mqP9Xez0
>>189
うまくできました
お忙しい中ありがとうございました

691 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 19:06:29.26 ID:3qGKQXb10
同じスレタイで乱立されかけたときに防止するというプラグインは作れるでしょうか?
例えばAという名前でスレタイが建てられた際に、1時間以内にそれと同じスレが3つ以上建てられた際、それから指定した時間の間そのスレタイで建てることはできない、という感じです

692 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 20:12:10.19 ID:3qGKQXb10
それとremake.cgiの使い方を教えてください

693 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 20:30:23.48 ID:3qGKQXb10
>>692
自決しました

694 :0ch+開発担当 ◆0chp.sx.ik :2013/11/19(火) 22:11:36.19 ID:Y4tXGNNp0
>>691
一応可能です。
今少し忙しいので数日中に作ります。

695 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 22:12:18.04 ID:3qGKQXb10
>>694
有難うございます
お待ちしております

696 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 22:24:06.69 ID:QwFPUXaB0
ニコニコ百科事典の最近レスが書かれた掲示板のように( ttp://dic.nicovideo.jp/ )
index.htmlにコメントを表示することは可能でしょうか?
具体的にはi/index.htmlのスレッドの横にコメントを一つ表示したいと思っています

1: スレッド → 最新レスのコメント(100文字程度)
こんな感じです

697 :0ch+開発担当 ◆0chp.sx.ik :2013/11/19(火) 23:03:47.15 ID:Y4tXGNNp0
>>696
可能です。
こちらも数日中にサンプルを作ってみます。

698 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 23:13:06.45 ID:QwFPUXaB0
>>697
お忙しい中すみません
よろしくお願いします

699 :名無しさん@ぜろちゃんねるプラス:2013/11/19(火) 23:17:56.07 ID:QwFPUXaB0
>>696の件で追記です
コメント部分に書かれたURLは自動でリンクしないようにできると嬉しいです
1: スレッド → 最新レスのコメント(100文字程度) ← この部分にURLが表示されてしまうのは好ましくないと思いますので

700 :名無しさん@ぜろちゃんねるプラス:2013/11/20(水) 14:34:51.84 ID:3FxOD0nVP
さくらのレンタルサーバーを利用しいます。
>602さんと全く同じ現象で悩んでいましたが、
>622と>624の対処法で解決できました。

701 :名無しさん@ぜろちゃんねるプラス:2013/11/20(水) 17:55:31.91 ID:mWH0rOFx0
ランダムでスレに書き込むことは可能でしょうか?
例えば1時間ごとにランダムでスレに書き込む、とかです


702 :0ch+開発担当 ◆0chp.sx.ik :2013/11/20(水) 19:56:06.32 ID:vzUDmOn90
>>700
ご迷惑をお掛けしてしまったようで、すみません。

>>701
cron等の設定ができるなら可能です。
>>440のプログラムを利用するなどして実装してください。

703 :名無しさん@ぜろちゃんねるプラス:2013/11/21(木) 17:53:49.85 ID:fspIp7g50
さっき気がついたのですが
例えば、1スレッドのレス最大数を最初10までにする
10まで書き込んで一度使い切る
次にレス最大数を15まであげる
15まで書き込んで使い切る

このように操作すると過去ログに送っていないのに
1〜10まで書き込んだホストの情報が消えて
12〜15まで書き込んだホストの情報しか残らないのですがこれは仕様なのでしょうか?

もしも仕様でなければ何らかの方法で消えないようにしたい
もしくはしたらばのようにcsv形式で出力して事前に保存しておきたいのですが
そういった事は可能でしょうか?

704 :名無しさん@ぜろちゃんねるプラス:2013/11/21(木) 19:22:32.36 ID:0yhQ7EJH0
Subback.htmlとはどこで生成されているのでしょう?

705 :0ch+開発担当 ◆0chp.sx.ik :2013/11/21(木) 20:47:36.47 ID:/o/xXlQF0
>>703
「このスレッドはxxを超えました」のレスが2つ加わったことで
ログを表示する際にレスとログの対応が取れなくなってしまったのが原因です。
レスとログのマッチング処理が不完全なのでこのようなことが起こりますが、
これは表示上(管理画面側)の問題なのでログ自体は残っています。

ログファイルは 各板dir/log/1234567890.cgi です。
csvではありませんが「<>」区切りのデータになっています。

>>704
[bbs.cgi] -> sub BBSCGI -> [module/varda.pl] -> sub CreateSubback
で生成されています。

706 :名無しさん@ぜろちゃんねるプラス:2013/11/21(木) 20:49:05.15 ID:0yhQ7EJH0
>>705
ありがとうございます
それとスレ番号の取得というのはどうすればできますか?

707 :名無しさん@ぜろちゃんねるプラス:2013/11/21(木) 20:59:34.54 ID:fspIp7g50
>>705
ありました
教えていただきありがとうございます

708 :0ch+開発担当 ◆0chp.sx.ik :2013/11/21(木) 21:37:14.92 ID:/o/xXlQF0
>>706
以下のコードで取得できます。
  my $key = $Sys->Get('KEY');

709 :名無しさん@ぜろちゃんねるプラス:2013/11/21(木) 21:42:38.37 ID:0yhQ7EJH0
>>708
できました!
ありがとうございます

710 :名無しさん@ぜろちゃんねるプラス:2013/11/22(金) 12:28:38.64 ID:CBygiTbf0
質問です
設置に成功し、readmeのパスでログインができ、早速システム設定を行おうとしたのですが
どのリンクをクリックしても反応がありません
水色の文字に下線も付いていて、リンクされていないというわけではなさそうなのですが…
JSは有効にしてあり、IE、chromeなど複数のブラウザで試しましたが、全て同じ状況になりました
何か解決法などありましたらご教授くだされば嬉しいです


711 :0ch+開発担当 ◆0chp.sx.ik :2013/11/22(金) 12:55:59.72 ID:ATdR96Fn0
>>710
test/datas ディレクトリのパーミッションと
test/datas/ 内のファイルのパーミッションを間違えていませんか?

712 :名無しさん@ぜろちゃんねるプラス:2013/11/22(金) 17:29:25.42 ID:9eNMiJOq0
僕も691のプラグインが欲しいのですがまだ時間かかりますでしょうか

713 :0ch+開発担当 ◆0chp.sx.ik :2013/11/22(金) 22:40:02.10 ID:ATdR96Fn0
>>712
明日作って公開するつもりです。

714 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 00:59:59.92 ID:tKyTsoZP0
よろしくお願いします

715 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 11:26:20.21 ID:i7bfZ4TB0
>>711
解決しました!ありがとうございます

716 :0ch+開発担当 ◆0chp.sx.ik :2013/11/23(土) 21:29:23.74 ID:6ROEZnZB0
>>691,712
「同一スレッド乱立防止」プラグインを作ってみました。これでどうでしょうか。
http://svn.sourceforge.jp/svnroot/zerochplus/codes/0ch_sametitle.pl

717 :0ch+開発担当 ◆0chp.sx.ik :2013/11/23(土) 21:31:06.45 ID:6ROEZnZB0
>>696
module/varda.pl の(0.7.4オリジナルで)159行目の
  $Page->Print("<a href=\"$path\">$i: $name($res)</a><br> \n");
という1行を以下のコードに書き換えてください
  my $text = '';
  if (open(my $fh, '<', "$basePath/dat/$key.dat")) {
    while (<$fh>) {
      last if(eof($fh));
    }
    close($fh);
    $text = (split(/<>/, $_, -1))[3];
    $text =~ s/<[bh]r>/ /gi;
    $text =~ s/<[^>]+>//g;
    $text =~ s/\s+/ /g;
    require Encode;
    $text = Encode::decode('sjis', $text);
    $text = substr($text, 0, 100);
    $text = Encode::encode('sjis', $text);
    $text = " : $text ";
  }
  $Page->Print("<a href=\"$path\">$i: $name($res)</a>$text<br> \n");

>>689を適用していると考えてコードを書いていますが、
$basePathを定義していなければ適当なところに以下のコードを加えてください。
  my $basePath = $Sys->Get('BBSPATH') . '/' . $Sys->Get('BBS');

718 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 21:45:34.40 ID:Q5wSE/IV0
>>717
ありがとうございます。
うまくできました

初期設定だと3件の表示ですが、これを10件表示したい場合はどうすれば良いのでしょうか?

719 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 21:50:30.12 ID:AppZut7r0
timecountに依存せず操作するにはレス数やスレ立てを規制するにはどうしたらよいでしょうか?
要するに忍法帖のようなもので書き込み数で規制が強まったより、弱まったりするようにしたいのですがそのような方法が分かりません
vara.plのをコピーして使おうと思ったのですがtimecountの値を読み込んでいるみたいなので無理そうです……
どうすればいいでしょうか?

720 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 21:55:31.37 ID:AppZut7r0
>>719
えっと単純に一時間以内に建てられるスレッドやレス数をtimecountなどに依存せず設定したいのです
例えばレベル15以下の人は一時間の間に2個まで建てられて15レスできる
この、一時間に2個、15レスの規制部を作りたいんです

721 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 22:04:59.66 ID:Q5wSE/IV0
>>718の件ですが自己解決しました
ありがとうございました

722 :0ch+開発担当 ◆0chp.sx.ik :2013/11/23(土) 22:35:18.74 ID:6ROEZnZB0
>>719-720
スレ立ての方は、既存の時間依存規制を利用して
vara.plの506行目あたりの$tateHourと$tateCountをレベルに応じて設定すればOKです。

レスの方は同様の時間依存規制がないので、PEREGRIN::IsTatesugi() と同様のものを作る必要があります。
要求とは違いますが、Samba規制を利用すれば$Sambaの値を変更するだけなので簡単です。

それ以外の規制(timecount関連など)は無効にしてしまえばいいと思います。

723 :名無しさん@ぜろちゃんねるプラス:2013/11/23(土) 22:40:46.77 ID:AppZut7r0
>>722
分かりました、やってみます
有難うございました

724 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 03:56:32.82 ID:9FsDDkPU0
>>717の件ですが、省略表示をしたい場合どうすれば良いでしょうか?
100文字以上はindex.htmlと同じように(省略されました・・全てを読むにはここを押してください)と表示させたいのですが

725 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 08:32:45.83 ID:8nFoy+5V0
特定のレスにアンカーで属性を付け足すというのはどうすればいいでしょう?
例えば>>123とやったら123レス目に属性を付け足す、という風に

726 :0ch+開発担当 ◆0chp.sx.ik :2013/11/24(日) 13:49:39.71 ID:APx4yCnj0
>>724
  $text = substr($text, 0, 100);
の1行を以下のコードに置き換えてください。
  if (length($text) > 100) {
    $text = substr($text, 0, 90);
    $text = Encode::encode('sjis', $text);
    my $respath = $Conv->CreatePath($Sys, 'O', $bbs, $key, $res);
    $text = "$text ...<a href=\"$respath\">(省略)</a>"
  } else {
    $text = Encode::encode('sjis', $text);
  }

このコードではリンクを押すとr.cgiに飛ぶようになっています。
read.cgiにするならCreatePathの 'O' を 0 に変えてください。

727 :0ch+開発担当 ◆0chp.sx.ik :2013/11/24(日) 14:02:09.39 ID:APx4yCnj0
>>725
レスに属性を付加する機能は用意していません。
自前で情報を保存するか、スレッドの属性付加機能を借りるかのどちらかです。

  my $CGI = $Sys->Get('MainCGI');
  my $Threads = $CGI->{'THREADS'} || $Sys->Get('_THREAD_');
  my $threadid = $Sys->Get('KEY');
 
  my $text = $Form->Get('MESSAGE');
  foreach my $res ($text =~ /&gt;&gt;([0-9]+)/g) {
    $Threads->SetAttr($threadid, "res$res", '属性情報');
  }

728 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 17:04:42.62 ID:8nFoy+5V0
特定の属性がついているとそれ以降は書き込めないというプラグインを作っています
しかし何度やっても書き込めるんです……
どこが違うのでしょうか?
if ($Sys->Equal('MODE', 1)) {
if ($mail =~ s/!muri//g) {
$Form->Set('mail',"");
$Threads->SetAttr($key,'muri');
$Threads->SaveAttr($Sys);
}
}
my $muri = $Threads->GetAttr($key, 'muri');
if ($muri) {
PrintBBSError($Sys,$Form,910);
}


PrintBBSEroorはちゃんと入れていますし、対応する番号のエラーメッセージも挿入したのに……なぜでしょう?


729 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 17:04:59.82 ID:8nFoy+5V0
ちなみに属性自体はちゃんとついています


730 :0ch+開発担当 ◆0chp.sx.ik :2013/11/24(日) 17:12:39.05 ID:APx4yCnj0
>>728
SetAttrの引数は (スレッド番号, 属性名, 属性値) となっています。
  $Threads->SetAttr($key, 'muri', 1);
このように属性を設定してください。

731 :0ch+開発担当 ◆0chp.sx.ik :2013/11/24(日) 17:17:25.66 ID:APx4yCnj0
>>728
どのような仕様にするのかはわかりませんが、
  if ($Sys->Equal('MODE', 1))
この条件は スレ立て時(>>1) のみ真になります。
この場合だと>>2以降で !muri 指定は出来ません。

732 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 17:24:41.80 ID:8nFoy+5V0
>>731
えっとですね……
正確に説明いたしますと、スレ立て時に!muriとすると無理属性が付きます
そしてそのスレは特定条件を満たした方のみが書き込めるようにしたいのです
最初はその条件も書いていたのですができなかったのでまずはmuri属性だったらエラーを表示するように組みたかったのですが……
それでも失敗したんです
属性をつければいいのでスレ立て時でいいんです
しかしなぜかレス時にエラーメッセージが表示されないんです……

733 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 17:40:09.87 ID:8nFoy+5V0
>>730
Software error:

Can't locate object method "getConfig" via package "ORALD" at ./plugin/0ch_PP.pl line 23.

とはいったいなんでしょうか……

734 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 17:47:36.47 ID:8nFoy+5V0
もうソース公開します
http://sharesrc.appspot.com/code/cb93q88p4sjgadudu1h2
特定の部分(プラグイン名や説明)はただ消してるだけです
これを実行するとエラーが表示されず、1を付け足しても>>733が表示されるのです

735 :0ch+開発担当 ◆0chp.sx.ik :2013/11/24(日) 18:16:38.07 ID:APx4yCnj0
>>732
なるほど、そうでしたか。
>>734
サイトがエラーを吐いていてコードを確認できません。

>>733
http://svn.sourceforge.jp/svnroot/zerochplus/codes/0ch_template3.pl
こちらの sub PrintBBSError を使ってみてください。
引数が変わって以下のようになります。
  PrintBBSError($Sys, 910);

736 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 18:19:22.02 ID:8nFoy+5V0
>735
できました
有難うございました

737 :名無しさん@ぜろちゃんねるプラス:2013/11/24(日) 19:18:15.39 ID:9FsDDkPU0
>>726
できました
ありがとうございました

305KB
READ.CGI - 0ch+ BBS 0.7.5 20220323
ぜろちゃんねるプラス