#!/usr/bin/perl
# Multiple Enquete v1.07.1 (2001/09/11)
# 使い方表示スクリプト
# このスクリプトはフリーウェアですが、著作権は作者(すこり)が保有します
# このスクリプトを使用したいかなる損害に対しても作者は一切の責任を負いません
# 利用規約→http://popup.tok2.com/home/skry/labo/rule.html
# スクリプトに関する質問・要望・バグ報告等はサポート掲示板にお書きください
# サポート掲示板→http://popup.tok2.com/home/skry/labo/support/wforum.cgi
# すこり家 http://popup.tok2.com/home/skry/
# skry@post.tok2.com
# このスクリプトはmultiq.cgiと同一ディレクトリに置いてください
# 参照するライブラリの場所
require './multiqini.pl';
# -----メイン処理-----
&decode;
if ($howto eq 'make') { &making; }
if ($howto eq 'vote') { &vote; }
if ($howto eq 'remake') { &remake; }
&main;
# -----アンケート一覧-----
sub main {
&header('アンケート一覧について');
print "[アンケート一覧について] ";
print "[新規設問作成について] ";
if ($FORM{'num'}) { print "[投票について] "; }
else { print "[投票について] "; }
print "[管理モードについて]";
print "
";
print "
アンケート一覧について
\n";
print "\n";
print "- アンケート一覧の中から、見たいもののタイトルをクリックすると各アンケートを開くことができます。
\n";
if ($tsort_sw) {
print <<"EOM";
- アンケート一覧では、問題番号順・新着問題順・投票日時順で並び替えできます。
- 問題番号順:古い問題順に表\示されます。
- 新着問題順:新しく出題された問題順に表\示されます。
- 投票日時順:最近投票されたもの順に表\示されます。
並べ替えの状態はクッキーに保存されます。
EOM
}
if ($newquest_user_ok) {
print " - どなたでも新しく問題を出題することができます。
\n";
print " - 出題できる最大問題数は$maxquest個までです。
\n";
print "すでにこの数に達している場合は、どれか問題を削除してからでないと新しく出題できません。
\n";
} else {
print " - 問題を出題できるのは管理人のみです。
\n";
}
print "
\n";
&footer;
exit;
}
# -----新規設問作成について-----
sub making {
&header('新規設問作成について');
print "[アンケート一覧について] ";
print "[新規設問作成について] ";
if ($FORM{'num'}) { print "[投票について] "; }
else { print "[投票について] "; }
print "[管理モードについて]";
print "
\n";
print "新規設問作成について
\n";
print "\n";
if (!$newquest_user_ok) {
print "- 問題を出題できるのは管理人のみです。
\n";
print " - 問題を作成するにはマスターキーを入力してください。
\n";
}
print " - 問題作成時の必須項目は";
if ($name_ok) { print "「名前」"; }
if ($mail_ok) { print "「e-mail」"; }
print "「タイトル」「設問」「コード」です。
\n";
print "「コード」は管理モードで必要になります。
\n";
print <<"EOM";
- 各項目についてチェックを入れて下さい。
- ユーザーが選択肢を増やせる
設問作成者以外にも選択肢を追加することができます。
チェックを外しておくと設問作成者のみ管理モードで選択肢が追加可能\です。
EOM
if ($tag_ok) {
print <<"EOM";
- タグの使用を許可する
「ユーザーが選択肢を増やせる」をチェックしている場合に、選択肢にタグを使うことができます。
一部タグは使用できません。
ここでタグの使用を許可しない場合でも、設問作成者は管理モードでタグを使った選択肢を追加することができます。
EOM
}
print <<"EOM";
- コメントの入力を求める
チェックを入れるとコメントを求めることができます。
チェックを外しておくとコメント入力欄は表\示されません。
- コメントを必須にする
「コメントの入力を求める」がチェックされている場合に、コメントの入力を必須にできます。
コメントを必須にすると、コメント入力欄が空の場合は投票できなくなります。
- 投票形式を選んで下さい。
- 複数選択式
一度に複数の選択肢を選んで投票できます。
- 単一選択式
一度に一つの選択肢を選んで投票します。
複数の選択肢を選ぶことはできません。
- 連続投票の制限を選んで下さい。
- 同一項目の連続投票可能\
一つの項目にも何度でも投票できます。
投票としては信頼性がなくなります。
- 同一項目の連続投票不可
一つの項目に対しては一回しか投票できません。
まだ投票していない項目に対しては投票することができます。
- 他項目についても連続投票不可
投票は一回しかできません。
一度投票すると、まだ投票していない項目に対しても投票できなくなります。
- 特徴についての設定をしてください。
- 特徴を必須にする
特徴を使う場合に、特徴を選択しないと投票できなくなります。
チェックを外しておくと、特徴を選択せずに投票した場合は「不明」扱いとなります。
- 使用する特徴を選んで下さい。
- ユーザー特徴
設問作成者が自由に作れる特徴です。
ユーザー特徴を使う場合は、設問作成第2段階で項目を作ります。
ユーザー特徴の特徴名は必須です。
ユーザー特徴の選択肢は10個まで作ることができます。
選択肢には「その他」の意の項目を作ることをお勧めします。
EOM
print "
\n";
print "
\n";
&footer;
exit;
}
# -----投票について-----
sub vote {
open(IN,"$q_t_file") || &error("$q_t_fileが開けません");
@q_titles = ;
close(IN);
shift(@q_titles);
local $i = @q_titles;
while ($i--) {
@logs = split(/<>/,$q_titles[$i]);
if ($logs[0] == $FORM{'num'}) { last; } #目的のログを取り出す
}
&header('投票について');
print <<"EOM";
[アンケート一覧について]
[新規設問作成について]
[投票について]
[管理モードについて]
$logs[1]
投票について
EOM
print "- この問題は「";
if ($logs[8]) {
print "複数選択式」です。
\n";
print "投票する項目を全て";
} else {
print "単一選択式」です。
\n";
print "投票する項目を一つ";
}
print "選んでから「投票」を押して下さい。
\n";
if ($logs[6]) {
print "
\n - 投票する選択肢がない場合は自分で選択肢を追加する事ができます。
\n";
print "選択肢の文字数は全角で$s_maxlength文字以内にして下さい。
\n";
print "選択肢にはタグを";
if ($logs[7] && $tag_ok) {
print "使うことができますが、一部タグは使えません。
\n";
} else {
print "使うことができません。
\n";
}
}
print "
\n";
if ($logs[9] == 1) {
print " - 同一選択肢への連続投票はできません。
\n";
print "まだ投票していない選択肢には投票する事ができます。
\n";
} elsif ($logs[9] == 2) {
print " - 連続投票はできません。
\n";
} else {
print " - 連続投票可能\です。
\n";
}
if ($logs[10]) {
print "
\n - コメントの入力は";
if ($logs[10] == 1) {
print "任意です。
\n";
} elsif ($logs[10] == 2) {
print "必須です。
\n";
print "コメントを入力しないと投票できません。
\n";
}
print "コメントは全角で$c_maxlength文字以内にして下さい。
\n";
print "コメントにはタグを使うことができません。
\n";
}
@props = split(/<,>/,$logs[11]);
if (@props) {
print "
\n - 特徴の選択は";
if ($logs[14]) {
print "必須です。
\n";
print "特徴を選択しないと投票できません。
\n";
} else {
print "任意です。
\n";
print "特徴を選択しない場合は「不明」扱いになります。
\n";
}
}
print "
\n";
if (@props) {
print "
並べ替え
\n\n";
print "- 特徴の得票数の多い順で、選択肢を並べ替えすることができます。
\n";
print "特徴を選択して「ソ\ート」を押して下さい。
\n";
print " - $bra[0]タイトル$bra[1]でソ\ートしても並べ替えはされません。
\n";
print "
\n";
}
if (@prosps || $logs[10]) {
print "
詳細データ
\n\n";
print "- 選択肢右にある「◇」をクリックすると詳細データを見ることができます。
\n";
if (@props) {
print "
- 「ソ\ート」を押すと、特徴の得票数の多い順で項目を並べ替えることができます。
\n";
}
print "
\n";
}
print "
\n";
&footer;
exit;
}
# -----管理モードについて-----
sub remake {
&header('管理モードについて');
print "\n";
print "[アンケート一覧について] ";
print "[新規設問作成について] ";
if ($FORM{'num'}) { print "[投票について] "; }
else { print "[投票について] "; }
print "[管理モードについて]
\n";
print "管理モードについて
\n\n";
print "- アンケートページ右下のフォームにコードを入力し「管理」を押すと管理モードになります。
\n";
if ($tag_ok) {
print " - 管理モードでは、選択肢追加でタグを使えない設定にしていた場合でも、タグを用いて選択肢を追加することができます。
\n";
}
print <<"EOM";
- 選択肢を削除したい場合は、削除する選択肢を選び「削除」を押して下さい。
- 「仕様変更」を押すと、問題の編集や削除ができます。
- 問題を削除する場合は「アンケート削除」を押し、コードを入力し「削除」を押して下さい。
削除したものは復元できません。
- 問題の編集をする場合は、修正したい個所を書き換えてから「変更する」を押して下さい。
- 特徴の項目については、管理モードでも修正することはできません。
EOM
&footer;
exit;
}
# -----デコード-----
sub decode {
if ($ENV{'REQUEST_METHOD'} eq "POST") {
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
} else { $buffer = $ENV{'QUERY_STRING'}; }
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name,$value) = split(/=/, $pair);
$FORM{$name} = $value;
}
$howto = $FORM{'howto'};
}
# -----ヘッダー出力-----
sub header {
print "Content-type:text/html\n\n\n";
if ($tok2_cookie && $tok2) { print "$tok2_cookie"; }
print <<"EOM";
$_[0]
$body
$headerban
EOM
if ($title_i) { # タイトルに画像を使う場合
print "\n
\n";
} else {
print "$title\n
\n";
}
}
# ------フッター出力------
sub footer { ## 著作権表示は削除してはいけません。
if ($back_url) { print "
[$back_nam]\n"; }
print <<"EOM";
- $ver -
+ The House of SKR
+
$footerban