v1.2.10.6 interim

This commit is contained in:
2023-03-10 17:02:19 +00:00
parent ca29099508
commit 97b4f49509
43 changed files with 31139 additions and 51 deletions
@@ -36,7 +36,7 @@ namespace Saxonite.Net.Core.Web.Admin.Controllers.Support
// Model.
Model_UserReport model = new Model_UserReport(Localiser);
return View("/Views/UserReport/Index.cshtml", model);
return View("/Views/Support/UserReport/Index.cshtml", model);
}
//-------------------------------------------------------------------
@@ -4,6 +4,7 @@
/* User Report - Index */
ViewData["Title"] = "User Reports";
Model.AdditionalFiles_JS.Add("js/sax-spt-rpt.js");
Model.AdditionalFiles_JS.Add("rjs/rooster-min.js");
}
<div class="sax-panel UserReports">
@@ -2,6 +2,8 @@
@inject SaxLocaliser Localiser
@{
/* Support - User Report dialog */
Model.AdditionalFiles_CSS.Add("rjs/sax-rjs.css");
Model.AdditionalFiles_JS.Add("rjs/sax-rjs.js");
}
<script type="text/javascript">
@@ -69,7 +71,11 @@
</div>
<div class="col-sm">
<div class="sax-control">
@Html.TextAreaFor(model => model.UserReport.Report, new { @id = "ifUserReportReport", @class = "UserReportReport sax-textarea", @rows = 12, @maxlength = @Model.GetControlMaxLength(SaxDbDfn_Support.ColumnIdx.UserReport_Report) })
@Html.HiddenFor(model => model.UserReport.Report, new { @id = "ifUserReportReport", @class = "UserReportReport sax-input" })
<div class="rjs-container">
<div class="rjs-editor" style="min-height:96px;max-height:256px;"></div>
<div class="rjs-toolbar"></div>
</div>
</div>
<div class="sax-message"></div>
</div>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

+15 -13
View File
@@ -5,7 +5,7 @@
(function (win, doc, undef)
{
"use strict";
let sr = sax.SupportUserReport = { $pnl: {}, $frm: {}, $dlg: {}, ajax: {}, data: {} };
let sr = sax.SupportUserReport = { $pnl: {}, $frm: {}, $ctrl: {}, rjs: {}, $dlg: {}, ajax: {}, data: {} };
let $pnl = sr.$pnl, $frm = sr.$frm, $dlg = sr.$dlg;
//--------------------------------------------------------------
@@ -23,7 +23,7 @@
}
sr.doRefreshResults = function (response)
{
sax.debug('doRefreshResults', response);
//sax.debug('doRefreshResults', response);
delete sr.awaitingRefreshResponse;
sax.refreshControlValues(response.controlValues);
$pnl.msgs.hide().empty();
@@ -100,6 +100,7 @@
{
sr.clearItem();
$dlg.rpt.dialog('option', 'title', sax.dlg.title.createUserReport);
sr.rjs.reportEditor = sax.rjs.init(sr.$pnl.reportEditor, sr.$ctrl.reportInput, '');
sr.openDialog();
}
sr.openDialog = function ()
@@ -110,11 +111,14 @@
{
let frm = $frm.rpt;
$('input.UserReportId,input.UserReportExists,input[type="text"],textarea,select', frm).val('');
sr.$pnl.reportEditor.html('');
sax.populateSelectCodeDesc('#cbUserReportType', sr.data.reportTypes);
sax.populateSelectCodeDesc('#cbUserReportStatus', sr.data.statuses);
$('.UserReportStatus', frm).val(sr.data.defaultStatusCode);
sax.clearControlErrors();
sr.cleanUp();
delete sr.data.$item;
if (sr.rjs.reportEditor) sr.rjs.reportEditor.dispose();
delete sr.rjs.reportEditor;
}
//--------------------------------------------------------------
@@ -134,10 +138,10 @@
let item = response.report;
$('.UserReportId', frm).val(item.id);
$('.UserReportExists', frm).val(1);
$('select.UserReportType', frm).remove('option[value=""],option:not([value])').val(item.reportTypeCode);
$('input.UserReportTitle', frm).val(item.title);
$('textarea.UserReportReport', frm).val(item.report);
$('select.UserReportStatus', frm).val(item.statusCode);
$('.sax-control .UserReportType', frm).remove('option[value=""],option:not([value])').val(item.reportTypeCode);
$('.sax-control .UserReportTitle', frm).val(item.title);
sr.rjs.reportEditor = sax.rjs.init(sr.$pnl.reportEditor, sr.$ctrl.reportInput, item.report);
$('.sax-control .UserReportStatus', frm).val(item.statusCode);
sax.clearControlErrors();
$dlg.rpt.dialog('option', 'title', sax.dlg.title.updateUserReport);
sr.openDialog();
@@ -163,11 +167,7 @@
$('.sax-panel-item-list', $pnl.results).prepend(sr.data.$item).show();
}
sr.populateItem(sr.data.$item, item);
sr.cleanUp();
}
sr.cleanUp= function ()
{
delete sr.data.$item;
sr.clearItem();
}
//--------------------------------------------------------------
@@ -185,11 +185,13 @@
var opt = sax.dlgOpts();
opt.buttons[sax.dlg.btn.ok] = function () { sr.storeItem(); };
opt.buttons[sax.dlg.btn.cancel] = function () { $(this).dialog('close'); sr.cleanUp(); };
opt.buttons[sax.dlg.btn.cancel] = function () { $(this).dialog('close'); sr.clearItem(); };
$dlg.rpt = $('#dlgUserReport').dialog(opt);
$frm.rpt = $('#frmUserReport');
$frm.rpt.on('input', '.sax-input', function () { sax.clearControlError(this); }).on('change', '.sax-select', function () { sax.clearControlError(this); });
sr.$ctrl.reportInput = $(".UserReportReport .sax-control .UserReportReport");
sr.$pnl.reportEditor = $(".UserReportReport .sax-control .rjs-editor");
setTimeout(sr.refreshResults, 250);
});
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,42 @@
/*
RoosterJS stylesheet.
*/
.rjs-container
{
border: solid 1px #595959;
border-top-left-radius: 2px;
border-bottom-left-radius: 2px;
}
.rjs-container.rjs-editing
{
/*box-shadow: 0 0 0 2px #80808040 inset;*/
}
.rjs-editor
{
padding:4px 8px 4px 8px;
overflow-y:scroll;
}
.rjs-editor:focus
{
/*box-shadow:none;*/
}
.rjs-toolbar
{
display:none;
min-height:24px;
padding:2px 4px 4px 4px;
border-top:1px solid #808080;
overflow:hidden;
}
.rjs-container.rjs-editing .rjs-toolbar
{
display:block;
}
/* The End */
@@ -0,0 +1,40 @@
/*
* RoosterJS scripts.
*/
(function (win, doc, undef)
{
/* Rooster JS Editor. */
"use strict";
let rjs = sax.rjs = sax.rjs || {};
//--------------------------------------------------------------
rjs.init = function ($pnl, $inp, data)
{
let editor = roosterjs.createEditor($pnl[0], [], data);
$pnl.off('focus').on('focus', function () { rjs.onFocusEditor($pnl, editor, $inp); });
$pnl.off('blur').on('blur', function () { rjs.onBlurEditor($pnl, editor, $inp); });
return editor;
}
rjs.onFocusEditor = function ($pnl, rjsEd, $inp)
{
//sax.debug('rjs.onFocusEditor', $pnl, rjsEd, $inp);
$pnl.closest(".rjs-container").addClass("rjs-editing");
}
rjs.onBlurEditor = function ($pnl, rjsEd, $inp)
{
//sax.debug('rjs.onBlurEditor');
$pnl.closest(".rjs-container").removeClass("rjs-editing");
while ($pnl.children().length>1)
{
let lc = $pnl.children().last();
if (!lc || lc.text().trim().length) break;
lc.remove();
}
$inp.val($pnl.html());
}
//--------------------------------------------------------------
$(function ()
{
});
//--------------------------------------------------------------
}(window, window.document));
/* The End */