This commit is contained in:
2022-07-16 13:30:57 +01:00
parent 5fc6389af2
commit dc431e1634
79 changed files with 3570 additions and 310 deletions
@@ -0,0 +1,116 @@
@model Model_OrganisationAssociations
@inject SaxLocaliser Localiser
@{
/* Organisation Associations - Index */
ViewData["Title"] = "Organisation Associations";
}
<div class="sax-panel OrganisationAssociations">
<script type="text/javascript">
sax.lbl.refresh = '@(Localiser.GetJavascriptText("label.refresh"))';
sax.lbl.add = '@(Localiser.GetJavascriptText("label.add"))';
sax.lbl.create = '@(Localiser.GetJavascriptText("label.create"))';
sax.lbl.edit = '@(Localiser.GetJavascriptText("label.edit"))';
sax.lbl.remove = '@(Localiser.GetJavascriptText("label.remove"))';
</script>
@* Filter Panel *@
@using (@Html.BeginForm(FormMethod.Post, new { @id = "frmAssociationFilter", @class = "sax-form", @onSubmit = "return false;" }))
{
<div class="sax-panel-filter">
@* Header - Page caption, paging controls, actions. *@
<div class="sax-header row">
<div class="col"><div class="sax-caption">@Localiser["caption.organisation.associations"]</div></div>
<div class="fixed row">
<div>
<partial name="~/Views/Common/ResultsPaging.cshtml" />
</div>
<div class="fixed">
@* Burger menu *@
<ul class="nav navbar-nav navbar-dark navbar-right sax-burger">
<li class="dropdown-toggle caret-off">
<a href="#" class="dropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><span class="navbar-toggler-icon"></span></a>
<ul class="dropdown-menu dropdown-menu-right sax-dropdown-menu">@* Menu items will be inserted here. *@</ul>
</li>
</ul>
</div>
</div>
</div>
<div class="sax-content">
@* Organisation Association filter - Organisation etc. *@
<div class="row">
<div class="col-sm-3 sax-label text-left text-sm-right">@Localiser["caption.organisation"]</div>
<div class="col-sm-9">
<div class="row">
<div class="col">
@Html.HiddenFor(model => model.Filter.OrganisationId, new { @id = "ifFilterOrganisationId", @class= "OrganisationId" })
<input type="text" id="ifFilterOrganisation" class="sax-input OrganisationName" readonly="readonly" value="@(Model.Filter.OrganisationName)" />
</div>
<div class="fixed"><button id="pbFilterOrganisationSelect" class="sax-button">@Localiser["label.select"]</button></div>
</div>
</div>
</div>
</div>
@* Filter element templates *@
<div class="sax-panel-item-template">
@* Burger dropdown item template - ul is ignored *@
<ul class="sax-dropdown-menu AssociationFilter">
<li class="sax-dropdown-item sax-action"><div class="sax-label">XXX</div></li>
</ul>
</div>
</div>
}
@* Results Panel *@
<div class="sax-panel-results">
<div class="sax-panel-messages"></div>
<div class="sax-panel-item-list"></div>
@* element templates *@
<div class="sax-panel-item-template">
@* Organisation Association item template *@
<div class="sax-panel-item Association">
<div class="sax-header row">
<div class="col">
@* User name *@
<div class="sax-caption sax-action"><div class="UserDisplayName"></div></div>
</div>
<div class="fixed sax-actions">
@* Burger menu *@
<ul class="nav navbar-nav navbar-light navbar-right sax-burger">
<li class="dropdown-toggle caret-off">
<a href="#" class="dropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><span class="navbar-toggler-icon"></span></a>
<ul class="dropdown-menu dropdown-menu-right sax-dropdown-menu">@* Menu items will be inserted here. *@</ul>
</li>
</ul>
</div>
</div>
<div class="sax-content">
<div class="row">
<div class="col-sm-6"></div>
<div class="col-sm-6 right"></div>
</div>
<div class="row">
<div class="col-sm-4"></div>
<div class="col-sm-4"><div class=""></div></div>
@* Association status *@
<div class="col-sm-4 sax-note right"><span class="StatusDesc"></span></div>
</div>
</div>
</div>
@* Burger dropdown item template - ul is ignored *@
<ul class="sax-dropdown-menu Association">
<li class="sax-dropdown-item sax-action"><div class="sax-label">...</div></li>
</ul>
</div>
</div>
</div>
@* Organisation Association components *@
<partial name="Panel-Organisation-Association.cshtml" />
@* Select Organisation components *@
<partial name="~/Views/Common/SelectOrganisation.cshtml" />
@@ -12,6 +12,7 @@
sax.lbl.create = '@(Localiser.GetJavascriptText("label.create"))';
sax.lbl.edit = '@(Localiser.GetJavascriptText("label.edit"))';
sax.lbl.location = '@(Localiser.GetJavascriptText("label.location"))';
sax.lbl.associations = '@(Localiser.GetJavascriptText("label.associations"))';
sax.lbl.images = '@(Localiser.GetJavascriptText("label.images"))';
sax.lbl.activate = '@(Localiser.GetJavascriptText("label.activate"))';
</script>
@@ -29,7 +30,7 @@
@* Header - Page caption, paging controls, actions. *@
<div class="sax-header">
<div class="row">
<div class="col"><div class="sax-caption">@Localiser["organisation.caption.organisations"]</div></div>
<div class="col"><div class="sax-caption">@Localiser["caption.organisations"]</div></div>
<div class="fixed row">
<div class="col">
<partial name="~/Views/Common/ResultsPaging.cshtml" />
@@ -174,14 +175,14 @@
{
@Html.HiddenFor(model => model.OrganisationId, new { @class = "OrganisationId" })
}
@* Organisation dialog and form. *@
<partial name="Panel-OrganisationDialog.cshtml" />
@* Organisation Activation dialog and form. *@
<partial name="Panel-ActivationDialog.cshtml" />
@* Organisation Address dialog, form and script. *@
<partial name="Panel-OrganisationAddressDialog.cshtml" />
@* Organisation Images dialog, form and script. *@
<partial name="Panel-OrganisationImagesDialog.cshtml" />
@* Select Item dialog and script. *@
@* Organisation dialog and form *@
<partial name="Panel-Organisation-Dialog.cshtml" />
@* Organisation Activation dialog and form *@
<partial name="Panel-Organisation-Activation.cshtml" />
@* Organisation Address dialog, form and script *@
<partial name="Panel-Organisation-Address.cshtml" />
@* Organisation Images dialog, form and script *@
<partial name="Panel-Organisation-Images.cshtml" />
@* Select Item dialog and script *@
<partial name="~/Views/Common/SelectItem.cshtml" />
</div>
@@ -22,7 +22,7 @@
@* Header - Page caption, paging controls, actions. *@
<div class="sax-header row">
<div class="col"><div class="sax-caption">@Localiser["organisation.caption.members"]</div></div>
<div class="col"><div class="sax-caption">@Localiser["caption.organisation.members"]</div></div>
<div class="fixed row">
<div>
<partial name="~/Views/Common/ResultsPaging.cshtml" />
@@ -41,12 +41,12 @@
<div class="sax-content">
@* Organisation Member filter - Organisation etc. *@
<div class="row">
<div class="col-sm-3 sax-label text-left text-sm-right">@Localiser["organisation.caption.organisation"]</div>
<div class="col-sm-3 sax-label text-left text-sm-right">@Localiser["caption.organisation"]</div>
<div class="col-sm-9">
<div class="row">
<div class="col">
@Html.HiddenFor(model => model.Filter.OrganisationId, new { @id = "ifFilterOrganisationId" })
<input type="text" id="ifFilterOrganisation" class="sax-input" readonly="readonly" value="@(Model.MemberOrganisationName)" />
<input type="text" id="ifFilterOrganisation" class="sax-input" readonly="readonly" value="@(Model.Filter.OrganisationName)" />
</div>
<div class="fixed"><button id="pbFilterOrganisationSelect" class="sax-button">@Localiser["label.select"]</button></div>
</div>
@@ -112,6 +112,6 @@
</div>
<partial name="Panel-MemberDialog.cshtml" />
<partial name="Panel-Organisation-Member.cshtml" />
<partial name="~/Views/Common/SelectOrganisation.cshtml" />
@@ -0,0 +1,81 @@
@model Model_OrganisationAssociations
@inject SaxLocaliser Localiser
@* Organisation - Associations components *@
@* Organisation Association Id form. *@
@using (@Html.BeginForm(FormMethod.Post, new { @id = "frmAssociationId" }))
{
@Html.HiddenFor(model => model.OrganisationId, new { @id = "", @class = "OrganisationId" })
@Html.HiddenFor(model => model.ItemAssociationId, new { @id = "", @class = "ItemAssociationId" })
}
@* Organisation Association dialog. *@
<div id="dlgOrganisationAssociation" class="sax-dialog" title="@Localiser["caption.organisation.association"]">
<div class="spacer"></div>
@using (@Html.BeginForm(FormMethod.Post, new { @id = "frmOrganisationAssociation", @class = "sax-form", @onSubmit = "return false;" }))
{
@Html.HiddenFor(model => model.ItemAssociationId, new { @id = "", @class = "ItemAssociationId" })
@Html.HiddenFor(model => model.NewItem, new { @id = "", @class = "NewItem" })
@Html.HiddenFor(model => model.OrganisationId, new { @id = "", @class = "OrganisationId" })
@* Organisation name *@
<div class="sax-form-control OrganisationName">
<div class="row">
<div class="col-sm-3">
<div class="sax-label">
<label for="ifOrganisationName"><span>@Localiser["label.organisation"]</span></label>
</div>
</div>
<div class="col-sm">
<div class="sax-control">
<input type="text" id="ifOrganisationName" class="OrganisationName sax-input" maxlength="@Model.GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.Organisation_Name)" disabled="disabled" />
</div>
<div class="sax-message"></div>
</div>
</div>
</div>
@* Association Type Option *@
<div class="sax-form-control AssociationTypeOption">
<div class="row">
<div class="col-sm-3">
<div class="sax-label">
<label for="cbAssociationTypeOption"><span>@Localiser["label.association"]</span></label>
</div>
</div>
<div class="col-sm">
<div class="sax-control">
<select type="text" id="cbAssociationTypeOption" name="Association.TypeOption" class="AssociationTypeOption sax-select"></select>
</div>
<div class="sax-message"></div>
</div>
</div>
</div>
@* Associated Organisation *@
<div class="sax-form-control OrganisationIdAssoc">
<div class="row">
<div class="col-sm-3">
<div class="sax-label">
<label for="ifOrganisationNameAssoc"><span>@Localiser["label.associated.organisation"]</span></label>
</div>
</div>
<div class="col-sm">
<div class="sax-control row">
<div class="col">
<input type="hidden" name="OrganisationIdAssoc" class="OrganisationIdAssoc" />
<input type="text" id="ifOrganisationNameAssoc" class="OrganisationNameAssoc sax-input" disabled="disabled" />
</div>
<div class="fixed pl4">
<button type="button" id="pbAssocOrganisationSelect" class="sax-button">@Localiser["label.select"]</button>
</div>
</div>
<div class="sax-message"></div>
</div>
</div>
</div>
}
<div class="spacer"></div>
</div>
@@ -6,9 +6,9 @@
<script type="text/javascript">
sax.dlg.title.selectOrganisation = '@Localiser.GetJavascriptText("organisation.caption.select.organisation")';
sax.dlg.title.createMember = '@Localiser.GetJavascriptText("organisation.caption.member.create")';
sax.dlg.title.updateMember = '@Localiser.GetJavascriptText("organisation.caption.member.update")';
sax.dlg.title.removeMember = '@Localiser.GetJavascriptText("organisation.caption.member.remove")';
sax.dlg.title.createMember = '@Localiser.GetJavascriptText("caption.member.create")';
sax.dlg.title.updateMember = '@Localiser.GetJavascriptText("caption.member.update")';
sax.dlg.title.removeMember = '@Localiser.GetJavascriptText("caption.member.remove")';
sax.dlg.title.selectMemberRoles = '@Localiser.GetJavascriptText("organisation.caption.select.member.roles")';
sax.data.userRoleCodeDelim = '@Model.MemberRoleCodeDelim';
</script>
@@ -134,7 +134,7 @@
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<div class="dropdown-item text-dark sax-action" onclick="sax.goToPage('UsersOnline');">@Localiser["label.users.online"]</div>
<div class="dropdown-item text-dark sax-action" onclick="sax.goToPage('User');">@Localiser["user.caption.users"]</div>
<div class="dropdown-item text-dark sax-action" onclick="sax.goToPage('Organisation');">@Localiser["organisation.caption.organisations"]</div>
<div class="dropdown-item text-dark sax-action" onclick="sax.goToPage('Organisation');">@Localiser["caption.organisations"]</div>
</div>
</li>
<li class="nav-item dropdown">