YNICTE/BO/Views/cc/homer2.cshtml

281 lines
15 KiB
Plaintext
Raw Normal View History


@{
ViewBag.Title = "homer2";
}
@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">
@if (Model.Board.pbno != null)
{
<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.BoardP.bmname > @(Model.BoardP.opname ?? "-") > @Model.BoardP.subject</p>
</div>
<div class="line line-dashed line-lg pull-in"></div>
<label class="col-sm-4 col-md-2 control-label">내용</label>
<div class="col-sm-8 col-md-10">
@Html.TextAreaFor(m => m.BoardP.contentstext, new { @class = "form-control", @readonly = "readonly", @style = "resize: none; width: 90%; height: 120px; padding: 3px 5px;" })
</div>
</div>
<div class="line line-dashed line-lg pull-in"></div>
}
else
{
<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.Board.bno < 1 && Model.Board.pbno == null)
{
@*<select id="Board_bmno" name="Board.bmno" class="form-control disp-init" style="width: auto">
<option value="">-게시판선택</option>
@foreach (var bm in Model.BMs)
{
<option data-bmtype="@bm.bmtype" data-disptype="@bm.disptype" value="@bm.bmno">@bm.bmname@(bm.asname == null ? "" : string.Format(" ({0})", bm.asname)) (@bm.bmcode)</option>
}
</select>*@
2022-07-08 09:43:25 +09:00
<input type="hidden" id="Board_bmno" name="Board.bmno" value="@(ViewBag.bmno)">
}
else
{
@Html.HiddenFor(m => m.Board.bmno)
@Model.Board.bmname
}
@if (Model.Board.bno < 1 || Model.Board.pbno == null)
{
@Html.Partial("./Partial/Select", Model.BMOs, new ViewDataDictionary { { "special", "reg" }, { "name", "Board.opno" }, { "selected", Model.Board.opno }, { "df", ":-말머리선택" }, { "class", "disp-init" } })
}
</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" id="lbltitle">@(Model.Board.bno > 0 && Model.Board.disptype == 1? "Question" : "제목")</label>
<div class="col-sm-8 col-md-10">
@Html.TextBoxFor(m => m.Board.subject, new { @class = "form-control ff", @maxlength = "100" })
<div style="@((Model.Board.bno > 0 && Model.Board.bmtype == 2) ||(Model.Board.pbno != null && Model.BoardP.bmtype == 2) ? "display:none":"")" id="hidebm2">
<label><input type="checkbox" name="Board.issecr" value="1" @(Model.Board.issecr == 1 ? "checked" : "") /> 비밀글</label>
@if (Model.Board.pbno == null)
{
<label><input type="checkbox" name="Board.istop" value="1" @(Model.Board.istop == 1 ? "checked" : "") /> 상단고정</label>
}
</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/File", Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).ToList(), new ViewDataDictionary {
{ "name", "Board.fgnothumb" },{"value", Model.Board.fgnothumb },{ "fname", "fgnothumb"},
{"width", null },{"table", "board" },{ "column", "fgnothumb"},{"filecount", 1 },
{"readmode", 0 },{"hidemode", 1 },
{ "isimage", 1 },{ "imageid", "fgnothumb" },{ "dftsrc", "/img/common/profile_sample.jpg" },
{ "fileext", "" }, { "loginfo",Model.Board.bno+"|9"}
})
<br />
<img id="fgnothumb" src="@(Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).Count() > 0 && !string.IsNullOrEmpty(Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).First().fileurl) ? string.Format("{0}{1}", Model.Files, Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).First().fileurl) : "/img/common/profile_sample.jpg")" style="max-width: 100px; max-height: 50px; border-radius: 5px;" />
</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" id="lblcontents">@(Model.Board.bno > 0 && Model.Board.disptype == 1 ? "Answer" : "내용")</label>
<div class="col-sm-8 col-md-10">@Html.TextAreaFor(m => m.Board.contents, new { @class = "form-control", @style = "resize: none; width: 90%; height: 120px; padding: 3px 5px;" })</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/File", Model.FileList.Where(w => w.fgno == Model.Board.fgno).ToList(), new ViewDataDictionary {
{ "name", "Board.fgno" },{"value", Model.Board.fgno },{ "fname", "fgno"},
{"width", null },{"table", "board" },{ "column", "fgno"},{"filecount", 10 },
{"readmode", 0 },{"hidemode", 0 },
{ "isimage", 0 }, { "fileext", "" }})
</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.Board.isopen }, { "name", "Board.isopen" } })</div>
</div>
</div>
</section>
<section id="commentsection" class="panel panel-default" style="@(Model.Board.bno < 1 || Model.Board.isreply == 0 || Model.Board.isopen == 0 ? "display: none;":"")">
<header class="panel-heading"><strong><i class="fa fa-bars"></i> 댓글관리<span class=""></span></strong></header>
<div style="padding: 10px;">
<input id="cmt" class="form-control disp-init cmt" />
<a href="#" class="btn btn-select" style="line-height: 50px; vertical-align: top; padding: 0 7px;" onclick="savecmt()"><i class="fa fa-save"></i> 댓글저장</a>
</div>
<ul id="ulcmt">
@foreach (var c in Model.BoardCMTs)
{
<li data-no="@c.bcno">@c.cnoname | @c.cdtymdhm<br /><input class="form-control disp-init cmt cmtinput" value="@c.ctext" /> <a href="#" class="cmtbtn cmtup"><i class="fa fa-save"></i></a> <a class="cmtbtn cmtdel" href="#"><i class="fa fa-trash-o"></i></a></li>
}
</ul>
</section>
<div class="botfixempty">&nbsp;</div>
<div class="form-group botfix">
@if (Model.Board.bno > 0)
{
if (Model.Board.pbno == null && Model.Board.istop == 0 && Model.Board.bmtype > 0 && Model.Board.ccount < 1 && Model.Board.disptype != 1)
{
<a href="#" class="btn btn-info" onclick="reply();">답글</a>
}
<a href="#" class="btn btn-danger" onclick="del();">삭제</a>
}
<a href="#" class="btn btn-primary" onclick="save();">저장</a>
2022-05-06 16:40:02 +09:00
<a href="#" class="btn btn-default" onclick="golist();">목록</a>
</div>
@Html.HiddenFor(m => m.longval)
@Html.HiddenFor(m => m.Board.bno)
@Html.HiddenFor(m => m.Board.pbno)
</form>
</div>
2022-05-06 16:40:02 +09:00
<form id="dform" method="post" action="/cc/homesemployess">
<input type="hidden" id="pbno" name="Board.pbno" />
@Html.Partial("./Partial/DForm", Model, new ViewDataDictionary { { "preform", 1 } })
</form>
@section styles{
@Html.Partial("./Partial/Summernotestyle")
<style type="text/css">
#ulcmt {
padding: 10px 20px;
}
#ulcmt li {
border: 1px solid #ddd;
padding: 5px 10px;
margin-bottom: 3px;
}
.cmt {
width: 500px;
height: 50px;
resize: none;
}
.cmtbtn {
font-size: 30px;
line-height: 50px;
margin-top: -30px;
}
</style>
}
@section scriptsHeader{
@Html.Partial("./Partial/FileScript")
@Html.Partial("./Partial/Summernote")
}
@section scripts{
<script>
$(document).ready(function () {
$("#Board_bmno").on("change", function () {
$("#Board_opno option:gt(0)").remove();
sett("lbltitle", "제목");
sett("lblcontents", "내용");
if ($(this).val() != "") {
if ($('option:selected', this).attr('data-disptype') == "1") {
sett("lbltitle", "Question");
sett("lblcontents", "Answer");
}
_binddataid = "Board_opno";
capp("/acommon/boardmasteropeningget", { bmno: $(this).val() }, "binddata");
}
$("#hidebm2").show();
if ($('option:selected', this).attr('data-bmtype') == "2") {
$("#hidebm2").hide();
}
});
$('#Board_contents').summernote({
height: 150,
tabsize: 2,
callbacks: {
onImageUpload: function (files, editor, welEditable) {
var fdata = new FormData();
fdata.append('img', files[0]);
fdata.append('fd', "Editor");
uploadeditorimage(files, this, fdata, "cbeditorupload()");
}
}
});
$("body").on("click", "a.cmtup", function () {
capp("/acommon/boardcmtsave", { bcno: $(this).closest("li").attr("data-no"), ctext: $(this).closest("li").find("input").val() }, "cbcmtup");
});
$("body").on("click", "a.cmtdel", function () {
_cmtdelli = $(this).closest("li");
capp("/acommon/boardcmtsave", { bcno: $(this).closest("li").attr("data-no"), isdel: 1 }, "cbcmtdel");
});
$('input[name="Board.isopen"]').change(function () {
if ($("#Board_isopen1").prop("checked")) {
$("#commentsection").attr("style", "");
} else if ($("#Board_isopen0").prop("checked")) {
$("#commentsection").attr("style", "display: none;");
}
});
});
var _cmtdelli;
function reply() {
setv("pbno", @Model.Board.bno);
$("#dform").attr("action", "/cc/homer2");
bglayer();
submit("dform");
}
function save() {
var cdata = $('#Board_contents').summernote('code');
cdata = cdata == "<p><br></p>" ? "" : cdata;
$("#Board_contents").val(cdata);
if (@(Model.Board.pbno??0) == 0 && check("Board_bmno", null, "게시판을 선택해주세요.")) { }
else if (@(Model.Board.pbno??0) == 0 && $("#Board_opno option").length > 1 && check("Board_opno", null, "말머리를 선택해주세요.")) { }
else if (check("Board_subject", null, "제목을 입력해주세요.")) { }
else if (getBytes(val("Board_contents")) < 1) { $('#Board_contents').summernote('focus'); alert("내용을 입력하세요."); }
else if (confirm("저장하시겠습니까?")) {
capfileform("/acommon/boardsave", "mform", "cbsave");
}
}
function cbsave() {
if (capResult.code == 1000) {
if ('@(Model.Board.bno)' == '0') {
setv("dform_longval", capResult.obj);
}
msgok(1, null, true);
$("#dform").attr("action", "/cc/homer2");
submit("dform", 500);
}
else { msgdev(); }
}
function del() {
if (confirm("삭제하시겠습니까?")) {
capp("/acommon/boarddel", { bno: @Model.Board.bno}, "cbdel");
}
}
function cbdel() {
if (capResult.code == 1000) {
msgok(0, null, true);
2022-05-06 16:40:02 +09:00
$("#dform").attr("action", "/cc/homesemployess");
submit("dform", 500);
}
}
function savecmt() {
if (getBytes(val("cmt")) < 1) {
focus("cmt"); msg("댓글을 입력후 저장해주세요.");
} else {
capp("/acommon/boardcmtsave", {bno: @Model.Board.bno, ctext: val("cmt") }, "cbsavecmt");
}
}
function cbsavecmt() {
if (capResult.code == 1000) {
$("#ulcmt").prepend("<li data-no=\"" + capResult.obj + "\">@(Model.SCUserName) | " + capResult.msg + "<br /><input class=\"form-control disp-init cmt cmtinput\" value=\"" + val("cmt") + "\" /> <a href=\"#\" class=\"cmtbtn cmtup\"><i class=\"fa fa-save\"></i></a> <a href=\"#\" class=\"cmtbtn cmtdel\"><i class=\"fa fa-trash-o\"></i></a></li>");
setv("cmt", "");
msg("저장되었습니다.");
} else { msgdev(); }
}
function cbcmtup() {
if (capResult.code == 1000) {
msg("저장되었습니다.");
}
}
function cbcmtdel() {
if (capResult.code == 1000) {
$(_cmtdelli).remove();
msg("삭제되었습니다.");
}
}
</script>
}