210 lines
13 KiB
Plaintext
210 lines
13 KiB
Plaintext
@model NP.Model.VMCC
|
|
<div class="row mgclear" id="regbox">
|
|
<form id="mform" method="post" enctype="multipart/form-data" class="form-horizontal">
|
|
<section class="panel panel-default">
|
|
<div class="panel-body">
|
|
<div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label req">게시판코드</label>
|
|
<div class="col-sm-8 col-md-10">@Html.TextBoxFor(m => m.BM.bmcode, new { @class = "form-control disp-init text-center " + (Model.BM.bmno > 0 ? "readinput" : "ff"), @style = "width: 150px;", @maxlength = "10" })</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label req">위치</label>
|
|
<div class="col-sm-8 col-md-10">
|
|
@if (Model.BM.bmno < 1)
|
|
{
|
|
@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "0:홈페이지;1:강의실" }, { "checked", Model.BM.bmposition }, { "name", "BM.bmposition" } })
|
|
}
|
|
else
|
|
{
|
|
@Html.HiddenFor(m => m.BM.bmposition)
|
|
@Model.BM.bmpositionname
|
|
}
|
|
</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label req">게시판명</label>
|
|
<div class="col-sm-8 col-md-10">@Html.TextBoxFor(m => m.BM.bmname, new { @class = "form-control " + (Model.BM.bmno < 1 ? "" : "ff"), @maxlength = "50" })</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label">게시판설명</label>
|
|
<div class="col-sm-8 col-md-10">@Html.TextAreaFor(m => m.BM.bmdesc, new { @class = "form-control", @maxlength = "900" })</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label">게시판유형</label>
|
|
<div class="col-sm-8 col-md-10">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "0:공지형(운영자/교수만 등록 가능, 교수자는 강의실 게시판에 한정);1:공개형(모든 사용자 등록 가능);2:1대1문의형(모든 사용자 등록 가능, UI달라짐)" }, { "checked", Model.BM.bmtype }, { "name", "BM.bmtype" }, { "isblock", 1 }, { "disabled" + (Model.BM.isdefault > 0 ? "" : "x"), 1 } })</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label">출력방식</label>
|
|
<div class="col-sm-8 col-md-10">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "0:리스트형(일반 게시판 형태);1:FAQ형(제목을 클릭하면 내용이 바로 펼쳐짐)" }, { "checked", Model.BM.disptype }, { "name", "BM.disptype" }, { "isblock", 1 }, { "disabled" + (Model.BM.isdefault > 0 ? "" : "x"), 1 } })</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in openbox" style="@(Model.BM.bmposition == 1 ? "display: none;":"")"></div><div class="form-group openbox" style="@(Model.BM.bmposition==1?"display: none;":"")">
|
|
<label class="col-sm-4 col-md-2 control-label">말머리사용</label>
|
|
<div class="col-sm-8 col-md-10">
|
|
@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "1:예;0:아니오" }, { "checked", Model.BM.isuseopening }, { "name", "BM.isuseopening" } })
|
|
<br />@Html.Hidden("savedata2", "")
|
|
<table style="width: 500px;@(Model.BM.bmposition==1 || Model.BM.isuseopening==0 ? "display: none;":"")" id="openingbox" class="regtable openingbox">
|
|
<colgroup><col style="width: 200px" /><col style="width: 100px;" /><col style="width: 80px;" /><col /></colgroup>
|
|
<thead>
|
|
<tr>
|
|
<th>말머리</th>
|
|
<th>순서</th>
|
|
<th>사용</th>
|
|
<th>관리</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@foreach (var o in Model.BMOs)
|
|
{
|
|
<tr data-no="@o.opno">
|
|
<td><input type="text" class="form-control opname" value="@o.opname" /></td>
|
|
<td><input type="text" class="form-control dsort text-right int" value="@o.dsort" /></td>
|
|
<td style="text-align: center;"><input type="checkbox" class="isuse" @(o.isuse == 1 ? "checked" : "") /></td>
|
|
<td style="text-align: center;"><a href="#" class="btn btn-xxs btn-danger delopen">[삭제]</a></td>
|
|
</tr>
|
|
}
|
|
@if (Model.BMOs.Count() < 1)
|
|
{
|
|
<tr data-no="0">
|
|
<td><input type="text" class="form-control opname" value="" /></td>
|
|
<td><input type="text" class="form-control dsort text-right int" value="1" /></td>
|
|
<td style="text-align: center;"><input type="checkbox" class="isuse" checked /></td>
|
|
<td style="text-align: center;"><a href="#" class="btn btn-xxs btn-danger delopen">[삭제]</a></td>
|
|
</tr>
|
|
}
|
|
</tbody>
|
|
</table>
|
|
<div class="openingbox" style="padding: 5px; text-align: right; width: 500px;@(Model.BM.bmposition==1 || Model.BM.isuseopening==0 ? "display: none;":"")">
|
|
<a href="#" class="btn btn-xxs btn-primary" onclick="add()">[추가]</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label">댓글여부</label>
|
|
<div class="col-sm-8 col-md-10">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "1:예;0:아니오" }, { "checked", Model.BM.isreply }, { "name", "BM.isreply" } })</div>
|
|
</div>
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label">공개여부</label>
|
|
<div class="col-sm-8 col-md-10">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "1:예;0:아니오" }, { "checked", Model.BM.isopen }, { "name", "BM.isopen" }, { "disabled" + (Model.BM.isdefault > 0 ? "" : "x"), 1 } })</div>
|
|
</div>
|
|
@if (Model.BM.asno != null)
|
|
{
|
|
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
|
|
<label class="col-sm-4 col-md-2 control-label">사용고객사</label>
|
|
<div class="col-sm-8 col-md-10"><p class="form-control-static">@Model.BM.asname</p></div>
|
|
</div>
|
|
}
|
|
</div>
|
|
</section>
|
|
<div class="botfixempty"> </div>
|
|
<div class="form-group botfix">
|
|
<a href="#" class="btn btn-primary" onclick="save();">저장</a>
|
|
<a href="#" class="btn btn-default" onclick="golist();">목록</a>
|
|
</div>
|
|
@Html.HiddenFor(m => m.intval)
|
|
@Html.HiddenFor(m => m.BM.bmno)
|
|
</form>
|
|
</div>
|
|
<form id="dform" method="post" action="/cc/bms">
|
|
@Html.Partial("./Partial/DForm", Model, new ViewDataDictionary { { "preform", 1 } })
|
|
</form>
|
|
@section styles{
|
|
|
|
}
|
|
@section scriptsHeader{
|
|
|
|
}
|
|
@section scripts{
|
|
<script>
|
|
function add() {
|
|
var m = 0;
|
|
$.each($("#openingbox tbody tr"), function (i, r) {
|
|
if (m < getint($(r).find("input.dsort").val())) {
|
|
m = getint($(r).find("input.dsort").val());
|
|
}
|
|
});
|
|
$("#openingbox tbody tr").last().clone().appendTo("#openingbox tbody");
|
|
$("#openingbox tbody tr").last().attr("data-no", 0);
|
|
$("#openingbox tbody tr").last().find("input.opname").val("");
|
|
$("#openingbox tbody tr").last().find("input.dsort").val(m+1);
|
|
$("#openingbox tbody tr").last().find("input.isuse").prop("checked", true);
|
|
}
|
|
$(document).ready(function () {
|
|
$("input[name='BM.bmposition']").on("change", function () {
|
|
$(".openingbox, .openbox").hide();
|
|
if ($(this).val() == "0") {
|
|
$("#BM_isuseopening0").prop("checked", true);
|
|
$(".openbox").show();
|
|
if (val("BM_isuseopening") == "1") {
|
|
$(".openingbox").show();
|
|
}
|
|
} else {
|
|
$("#BM_isuseopening0").prop("checked", false);
|
|
}
|
|
});
|
|
$("input[name='BM.isuseopening']").on("change", function () {
|
|
$(".openingbox").hide();
|
|
if ($(this).val() == "1") {
|
|
$(".openingbox").show();
|
|
}
|
|
});
|
|
$("body").on("click", ".delopen", function () {
|
|
if ($("#openingbox tbody tr").length < 2) {
|
|
msg("한 개 이상의 말머리가 필요합니다.");
|
|
}
|
|
else if (confirm("삭제 후 저장해야 반영됩니다.\n삭제 시 등록된 게시판글은 조회되지 않습니다.\n\n삭제하시겠습니까?")) {
|
|
$(this).closest("tr").remove();
|
|
}
|
|
});
|
|
});
|
|
function save() {
|
|
if (check("BM_bmcode", null, "게시판코드를 입력해주세요.")) { }
|
|
else if (check("BM_bmname", null, "게시판명을 입력해주세요.")) { }
|
|
else if ($("#BM_bmposition0").prop("checked") && $("#BM_isuseopening1").prop("checked") && $("#openingbox tbody tr").length < 1) {
|
|
msg("말머리를 추가해주세요.");
|
|
} else {
|
|
var isvalid = true;
|
|
var ischecked = false;
|
|
setv("savedata2", "");
|
|
if ($("#BM_isuseopening1").prop("checked")) {
|
|
var sd = "";
|
|
$.each($("#openingbox tbody tr"), function (i, r) {
|
|
if ($.trim($(r).find("input.opname").val().replace(/;/gi, '').replace(/:/gi, '')) == "") {
|
|
isvalid = false;
|
|
$(r).find("input.opname").focus();
|
|
msg("말머리를 입력해주세요.");
|
|
return false;
|
|
}
|
|
if (!ischecked && $(r).find("input.isuse").prop("checked")) {
|
|
ischecked = true;
|
|
}
|
|
sd += ";" + $(r).attr("data-no") + ":" + $(r).find("input.opname").val().replace(/;/gi, '').replace(/:/gi, '') + ":" + getint($(r).find("input.dsort").val()) + ":" + ($(r).find("input.isuse").prop("checked") ? 1 : 0);
|
|
});
|
|
if (isvalid && !ischecked) {
|
|
msg("사용할 말머리를 추가해주세요.");
|
|
isvalid = false;
|
|
} else {
|
|
setv("savedata2", sd.substr(1));
|
|
}
|
|
}
|
|
if (isvalid && confirm("저장하시겠습니까?")) {
|
|
cap("/acommon/boardmastersave", "mform", "cbsave");
|
|
}
|
|
}
|
|
}
|
|
function cbsave() {
|
|
if (capResult.code == 1000) {
|
|
if ('@(Model.BM.bmno)' == '0') {
|
|
setv("dform_intval", capResult.obj);
|
|
}
|
|
msgok(1, null, true);
|
|
$("#dform").attr("action", "/cc/bmr");
|
|
submit("dform", 500);
|
|
} else if (capResult.obj == -1) {
|
|
focus("BM_bmcode");
|
|
msg("이미 사용중인 게시판코드입니다.");
|
|
}
|
|
else { msgdev(); }
|
|
}
|
|
</script>
|
|
}
|