CSS Yomi-search

追加したマークを開放する

ユーザにマークの解放をします。

マークを増やす方法を完了したことが絶対条件になります。
※先のマークを増やすので4つまで増やしたのでそれを元に紹介します。

改造(カスタマイズ)参考元

  • Yomi-search FAN!様

マークを開放します。

registration.cgi
  • 最後の行に以下のを追加します。
# マーク(ユーザーチェック用)
sub PR_mark_user {
	local(@mark);
	@mark=split(/_/,$Pdata[3]);
	# これは、マークのタイトル。適時変更可。
print<<"EOM";
<dt>マーク</dt>
<dd>
EOM
	# 管理者マークの保存。(ここでは1~2)
	foreach(1 .. 2) {
		if($mark[$_-1]) {
			print "<input type=\"hidden\" name=\"Fmark$_\" value=\"1\" />\n";
		}
	}
	# ユーザーマーク範囲。
	print "<input type=\"checkbox\" name=\"Fmark3\" value=\"1\"";
	if($mark[2]) {
		print " checked=\"checked\"";
	}
	print "id=\"checkbox_Fmark3\" /><label for=\"checkbox_Fmark3\">" . $EST{"name_m3"} . "</label>\n";
	print "<input type=\"checkbox\" name=\"Fmark4\" value=\"1\"";
	if($mark[3]) {
		print " checked=\"checked\"";
	}
	print "id=\"checkbox_Fmark4\" /><label for=\"checkbox_Fmark4\">" . $EST{"name_m4"} . "</label>\n";
print<<"EOM";
</dd>
EOM
}
sub PR_preview_mark {
	# マーク表示
	foreach(1 .. 4) {
		if ($FORM{"Fmark$_"}) {
			print "<input type=\"hidden\" name=\"Fmark$_\" value=\"1\" />\n";
		}
	}
	# マーク3を表示する。
	if ($_[0] && $FORM{Fmark3}) {
print<<"EOM";
$EST{"name_m3"}
EOM
	}
	# マーク4を表示する。
	if ($_[0] && $FORM{Fmark4}) {
print<<"EOM";
$EST{"name_m4"}
EOM
	}
}
  • 217~226行目
	# 外部入力(form)
	elsif($FORM{'in_mode'} eq "form") {
		$FORM{'Fkt'}="";
		foreach $kt_no(1 .. $EST_reg{kt_max}) {
			$FORM{'Fkt'} .= $FORM{"Fkt$kt_no"} . "&";
		}
		@Pdata=("",$FORM{'Ftitle'},$FORM{'Furl'},"","",$FORM{'Fpass'},$FORM{'Fsyoukai'},"",$FORM{'Fname'},$FORM{'Femail'},$FORM{'Fkt'},"",$FORM{'Fbana_url'},"","",$FORM{'Fkey'},$FORM{'Fthumbnail'});
	} else {
		@Pdata=();
	}

上記部分を下記に変更します。

	# 外部入力(form)
	elsif($FORM{'in_mode'} eq "form") {
		# Mark解放
		$FORM{'Fmark'}="";
		foreach(1 .. 4) {
			if($FORM{"Fmark$_"}) {
				$FORM{'Fmark'} .= "1_";
			} else {
				$FORM{'Fmark'} .= "0_";
			}
		}
		$FORM{'Fmark'}=substr($FORM{'Fmark'},0,-1);
		$FORM{'Fkt'}="";
		foreach $kt_no(1 .. $EST_reg{kt_max}) {
			$FORM{'Fkt'} .= $FORM{"Fkt$kt_no"} . "&";
		}
		@Pdata=("",$FORM{'Ftitle'},$FORM{'Furl'},$FORM{'Fmark'},"",$FORM{'Fpass'},$FORM{'Fsyoukai'},"",$FORM{'Fname'},$FORM{'Femail'},$FORM{'Fkt'},"",$FORM{'Fbana_url'},"","",$FORM{'Fkey'},$FORM{'Fthumbnail'});
	} else {
		@Pdata=();
	}
  • 426~437行目
	# マークデータ(3)
	# 変更者が管理人
	if($FORM{'changer'} eq "admin") {
		$FORM{'Fmark'}="";
		foreach(1 .. 4) {
			if($FORM{"Fmark$_"}) {
				$FORM{'Fmark'} .= "1_";
			} else {
				$FORM{'Fmark'} .= "0_";
			}
		}
		$FORM{'Fmark'}=substr($FORM{'Fmark'},0,-1);
		$Slog[3]=$FORM{'Fmark'};
	}
	# 登録者の新規登録
	elsif(!$Smode_name) {
		$Slog[3]="0_0";
	}
	# 登録者の変更
	else {
		$Slog[3]=$Spre_log[3];
	}

上記部分を下記に変更します。

	# マークデータ(3)
	$FORM{'Fmark'}="";
	foreach(1 .. 4) {
		if($FORM{"Fmark$_"}) {
			$FORM{'Fmark'} .= "1_";
		} else {
			$FORM{'Fmark'} .= "0_";
		}
	}
	$FORM{'Fmark'}=substr($FORM{'Fmark'},0,-1);
	$Slog[3]=$FORM{'Fmark'};
  • 779行目
  • 1150行目
  • 1311行目

print "Content-type: text/html\n\n";
の前に下記を追加する。

	# マークの表示設定
	{
		local(@mark,$mark,$i=1);
		$PR_mark="";
		@mark=split(/_/,$Slog[3]);
		foreach $mark(@mark) {
			if($mark){$PR_mark .= $EST{"name_m$i"} . " ";}
			$i++;
		}
	}
template > regist_new.html
  • 50行目
template > regist_mente.html
  • 84行目

下記を追加します。

<!--HTML-->
&PR_mark_user;
print<<"<!--HTML-->";
template > regist_new_preview.html
  • 22行目
<!--HTML-->
&PR_preview_kt1;
print<<"<!--HTML-->";

上記部分に1行だけ追加します。

<!--HTML-->
&PR_preview_kt1;
&PR_preview_mark(0);
print<<"<!--HTML-->";
  • 78行目

下記を追加します。

<!--HTML-->
&PR_preview_mark(1);
print<<"<!--HTML-->";
template > admin > temp_to_regist.html
  • 116行目
foreach(1 .. 4) {
	print "					<input type=\"checkbox\" name=\"Fmark${_}_$Slog[0]\" id=\"Fmark${_}_R$Slog[0]_mark\" value=\"1\" />";
	print "					<label for=\"Fmark${_}_R$Slog[0]_mark\">" . $EST{"name_m$_"} . "</label>";
}

上記部分を下記に変更します。

@mark=split(/_/, $Slog[3]);
foreach(1 .. 4) {
	print "<input type=\"checkbox\" name=\"Fmark${_}_$Slog[0]\" id=\"Fmark${_}_$Slog[0]_mark\" value=\"1\"";
	if ($mark[$_ -1]) {
		print " checked=\"checked\"";
	}
	print " /><label for=\"Fmark${_}_$Slog[0]_mark\">" . $EST{"name_m$_"} . "</label>";
}