Add Only my data to

This commit is contained in:
2020-07-21 07:38:56 -04:00
parent 28377cfce8
commit cd6bd2d0e5
8 changed files with 97 additions and 67 deletions
+4 -2
View File
@@ -25,7 +25,8 @@ namespace LeafWeb.WebCms.Controllers
var resultItems = var resultItems =
DataService.GetLeafInputsOrdered(); DataService.GetLeafInputsOrdered();
resultItems = QueryFilter.Search(resultItems, query); resultItems
= QueryFilter.Search(resultItems, query, Members.GetCurrentLoginStatus()?.Email);
var timeInProgressEstimater = TimeInProgressEstimater(); var timeInProgressEstimater = TimeInProgressEstimater();
@@ -170,7 +171,8 @@ namespace LeafWeb.WebCms.Controllers
var resultItems = var resultItems =
DataService.GetLeafInputsOrdered(); DataService.GetLeafInputsOrdered();
resultItems = QueryFilter.Search(resultItems, query); resultItems
= QueryFilter.Search(resultItems, query, Members.GetCurrentLoginStatus()?.Email);
if (resultItems == null) if (resultItems == null)
return View("DownloadNotFound"); return View("DownloadNotFound");
+2 -1
View File
@@ -17,7 +17,8 @@ namespace LeafWeb.WebCms.Controllers
var resultItems = var resultItems =
DataService.GetLeafInputsOrdered(); DataService.GetLeafInputsOrdered();
resultItems = QueryFilter.Search(resultItems, query); resultItems =
QueryFilter.Search(resultItems, query, Members.GetCurrentLoginStatus()?.Email);
var searchViewModel = new SearchViewModel var searchViewModel = new SearchViewModel
{ {
+3
View File
@@ -59,6 +59,9 @@ namespace LeafWeb.WebCms.Models
[Display(Name = "Show Only Successfully Completed")] [Display(Name = "Show Only Successfully Completed")]
public bool compl { get; set; } public bool compl { get; set; }
[Display(Name = "Only my data")]
public bool usr { get; set; }
public bool HasExtendedParameters => public bool HasExtendedParameters =>
!( !(
string.IsNullOrEmpty(siteid) string.IsNullOrEmpty(siteid)
+10 -1
View File
@@ -7,7 +7,7 @@ namespace LeafWeb.WebCms.Utility
{ {
internal static class QueryFilter internal static class QueryFilter
{ {
public static IQueryable<LeafInput> Search(IQueryable<LeafInput> resultItems, LeafDataQuery query) public static IQueryable<LeafInput> Search(IQueryable<LeafInput> resultItems, LeafDataQuery query, string currentUserEmail)
{ {
// search functionality // search functionality
if (!string.IsNullOrEmpty(query.q)) if (!string.IsNullOrEmpty(query.q))
@@ -154,6 +154,15 @@ namespace LeafWeb.WebCms.Utility
select li; select li;
} }
if (query.usr && !string.IsNullOrEmpty(currentUserEmail))
{
resultItems =
from li in resultItems
where
li.Email.Equals(currentUserEmail, StringComparison.OrdinalIgnoreCase)
select li;
}
return resultItems; return resultItems;
} }
} }
+2 -2
View File
@@ -13,7 +13,7 @@
Service description: @Model.ServerDescription Service description: @Model.ServerDescription
</div> </div>
</div> </div>
<div class="row align-items-end"> <div class="row align-items-end mb-3">
<div class="col-3 order-last order-sm-first font-italic font-weight-light "> <div class="col-3 order-last order-sm-first font-italic font-weight-light ">
<strong>@Model.Items.Count()</strong> results <strong>@Model.Items.Count()</strong> results
@*Est. processing time by LeafInput size - @*Est. processing time by LeafInput size -
@@ -32,7 +32,7 @@
@if (Model.Items.Any()) @if (Model.Items.Any())
{ {
<div id="queue" class="table-responsive mt-3"> <div id="queue" class="table-responsive">
@grid.Table(columns: @grid.Table(columns:
grid.Columns( grid.Columns(
grid.Column("Identifier", "Identifier"), grid.Column("Identifier", "Identifier"),
+1 -1
View File
@@ -5,7 +5,7 @@
var grid = new WebGrid(Model.Items, rowsPerPage: 45); var grid = new WebGrid(Model.Items, rowsPerPage: 45);
} }
<div class="row align-items-end"> <div class="row align-items-end mb-3">
<div class="col-3 order-last order-sm-first font-italic font-weight-light "> <div class="col-3 order-last order-sm-first font-italic font-weight-light ">
<strong>@Model.Items.Count()</strong> results <strong>@Model.Items.Count()</strong> results
</div> </div>
@@ -3,8 +3,15 @@
@{ @{
Layout = null; Layout = null;
var lowerPropertyName = StringExtensions.LowercaseFirst(ViewData.ModelMetadata.PropertyName); var lowerPropertyName = StringExtensions.LowercaseFirst(ViewData.ModelMetadata.PropertyName);
var groupClass = $"form-group {lowerPropertyName}";
if (ViewBag.groupClass != null)
{
groupClass = string.Concat(groupClass, " ", ViewBag.groupClass);
}
} }
<div class="form-group @lowerPropertyName"> <div class="@groupClass">
@Html.LabelForModel() @Html.LabelForModel()
@RenderBody() @RenderBody()
@Html.ValidationMessage(string.Empty, new { @class = "text-danger"}) @Html.ValidationMessage(string.Empty, new { @class = "text-danger"})
+15 -7
View File
@@ -23,9 +23,14 @@
htmlFormAction = (string)ViewData["htmlFormAction"]; htmlFormAction = (string)ViewData["htmlFormAction"];
} }
} }
@using (Html.BeginUmbracoForm(actionName, controllerName, null, new {action = htmlFormAction})) @using (Html.BeginUmbracoForm(actionName, controllerName, null, new { action = htmlFormAction }))
{ {
<div class="input-group pl-5"> <div class="row justify-content-end">
<div class="col text-right pt-2">
@Html.EditorFor(m => m.usr, new ViewDataDictionary{{"groupClass", "mb-0"}})
</div>
<div class="col">
<div class="input-group">
<input name="q" type="text" class="form-control" placeholder="Search for..." value="@Model.q"> <input name="q" type="text" class="form-control" placeholder="Search for..." value="@Model.q">
<span class="input-group-append"> <span class="input-group-append">
<button class="btn btn-outline-secondary" type="submit">Search</button> <button class="btn btn-outline-secondary" type="submit">Search</button>
@@ -34,11 +39,13 @@
title="Additional Search Options"> title="Additional Search Options">
</button> </button>
</span> </span>
</div> </div>
<!-- /input-group --> </div>
<div class="container"> </div>
<!-- /input-group -->
<div class="row @if (Model.HasExtendedParameters) {<text>show</text>} collapse" id="additionalSearch"> <div class="row @if (Model.HasExtendedParameters) {<text>show</text>} collapse" id="additionalSearch">
<div class="col card card-body"> <div class="col">
<div class="card card-body">
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@Html.EditorFor(m => m.siteid) @Html.EditorFor(m => m.siteid)
@@ -94,5 +101,6 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
} }