Refactoring
* refactoring * fixes * messages * new interface
This commit is contained in:
@@ -1,17 +1,18 @@
|
||||
@inject IList<IMenuItem> Menu
|
||||
@inject IHttpContextAccessor HttpContextAccessor
|
||||
@inject IHttpContextAccessor HttpContextAccessor
|
||||
@inject IDataContextFactory<SeniorDataContext> dbFactory
|
||||
|
||||
@{
|
||||
var session = HttpContextAccessor.HttpContext.Session;
|
||||
string search = HttpContextAccessor.HttpContext.Request.Query["q"];
|
||||
string username = session.GetString("username");
|
||||
|
||||
if (username != null)
|
||||
{
|
||||
Menu = new List<IMenuItem>(Menu);
|
||||
Menu.RemoveAt(1);
|
||||
Menu.Insert(1, new MenuItem("Dati personali", "/user/" + username));
|
||||
if (session.GetString("role").Equals("doctor"))
|
||||
var isDoc = session.GetString("role").Equals("doctor");
|
||||
var Menu = new List<IMenuItem>();
|
||||
Menu.Add(new MenuItem("Profilo", "/"));
|
||||
Menu.Add(new MenuItem("Dati personali", "/user/" + username));
|
||||
if (isDoc)
|
||||
{
|
||||
var db = dbFactory.Create();
|
||||
var patients = (from p in db.Patients
|
||||
@@ -25,36 +26,87 @@
|
||||
}
|
||||
Menu.Add(sub);
|
||||
}
|
||||
}
|
||||
}
|
||||
<ul class="sidebar-menu" data-widget="tree">
|
||||
@foreach (var menuItem in Menu)
|
||||
{
|
||||
switch (menuItem)
|
||||
else
|
||||
{
|
||||
case MenuItem single:
|
||||
<li>
|
||||
<a href="@single.HRef">@single.Text</a>
|
||||
</li>
|
||||
break;
|
||||
case SubMenu multi:
|
||||
<li class="treeview">
|
||||
<a href="#">
|
||||
<i class="fa fa-link"></i><span>@multi.Text</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu">
|
||||
@foreach (MenuItem item in multi.Items)
|
||||
var db = dbFactory.Create();
|
||||
var patient = (from p in db.Patients
|
||||
where p.Username.Equals(username)
|
||||
select p).FirstOrDefault();
|
||||
Menu.Add(new MenuItem("Invia un messaggio al dottore", "/Message/" + patient.Doctor));
|
||||
}
|
||||
<aside class="main-sidebar">
|
||||
<!-- sidebar: style can be found in sidebar.less -->
|
||||
<section class="sidebar">
|
||||
@if (isDoc)
|
||||
{
|
||||
<!-- Sidebar user panel (optional) -->
|
||||
<!-- search form (Optional) -->
|
||||
<form action="#" method="get" class="sidebar-form">
|
||||
<div class="input-group">
|
||||
<input type="text" name="q" class="form-control" placeholder="Search..." , value="@search">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" name="search" id="search-btn" class="btn btn-flat">
|
||||
<i class="fa fa-search"></i>
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
<!-- /.search form -->
|
||||
<!-- Sidebar Menu -->
|
||||
}
|
||||
<div>
|
||||
<ul class="sidebar-menu" data-widget="tree">
|
||||
@foreach (var menuItem in Menu)
|
||||
{
|
||||
<li>
|
||||
<a href="@item.HRef">@item.Text</a>
|
||||
</li>
|
||||
switch (menuItem)
|
||||
{
|
||||
case MenuItem single:
|
||||
<li>
|
||||
<a href="@single.HRef">@single.Text</a>
|
||||
</li>
|
||||
break;
|
||||
case SubMenu multi:
|
||||
<li class="treeview @if(search != null) {<text>menu-open</text>}">
|
||||
<a href="#">
|
||||
<i class="fa fa-link"></i><span>@multi.Text</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu" @if (search != null) { <text> style="display: block;" </text> }>
|
||||
@foreach (MenuItem item in multi.Items)
|
||||
{
|
||||
<li>
|
||||
@{
|
||||
var text = item.Text;
|
||||
var bg = "";
|
||||
if (search != null && item.Text.StartsWith(search))
|
||||
{
|
||||
bg = "bg-aqua";
|
||||
text = item.Text.Replace(search, "<em>" + search + "</em>");
|
||||
}
|
||||
}
|
||||
<a href="@item.HRef" class="@bg">
|
||||
@Html.Raw(text)
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
</ul>
|
||||
</li>
|
||||
break;
|
||||
}
|
||||
}
|
||||
</ul>
|
||||
</li>
|
||||
break;
|
||||
</div>
|
||||
<!-- /.sidebar-menu -->
|
||||
</section>
|
||||
<!-- /.sidebar -->
|
||||
</aside>
|
||||
@if (search != null)
|
||||
{
|
||||
<script>
|
||||
$("body").removeClass("sidebar-collapse");
|
||||
</script>
|
||||
}
|
||||
}
|
||||
</ul>
|
||||
}
|
||||
Reference in New Issue
Block a user