@{
|
|
Layout = null;
|
|
}
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
<head>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
|
<title>Sevomin God Mode</title>
|
|
<link rel="stylesheet" type="text/css" href="@Url.Content("~/content/bootstrap.min.css")" />
|
|
<link rel="stylesheet" type="text/css" href="@Url.Content("~/content/bootstrap-theme.min.css")" />
|
|
<link rel="stylesheet" type="text/css" href="@Url.Content("~/content/common.css")" />
|
|
<link rel="stylesheet" type="text/css" href="@Url.Content("~/content/forms.css")" />
|
|
</head>
|
|
<body>
|
|
<div class="container rtl">
|
|
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
|
|
<div class="container">
|
|
<div class="navbar-header">
|
|
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#collapse">
|
|
<span class="sr-only">Toggle navigation</span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
</button>
|
|
<a class="navbar-brand" href="#">
|
|
<small>(آزمایشی)</small>
|
|
<img src="/content/images/revert-logo.png" />
|
|
</a>
|
|
</div>
|
|
<div class="collapse navbar-collapse navbar-right" id="collapse">
|
|
<ul class="nav navbar-nav navbar-right">
|
|
<li class="rtl"><a href="/"><span class="glyphicon glyphicon-home"></span> خانه</a></li>
|
|
<li class="rtl"><a href="/errors.axd"><span class="glyphicon glyphicon-exclamation-sign"></span> خطاها</a></li>
|
|
<li class="rtl"><a href="@Url.Action("RecentJobs", "Job")">آگهیهای استخدام</a></li>
|
|
<li class="dropdown rtl"><a href="#" class="dropdown-toggle" data-toggle="dropdown">پروفایل <b class="caret"></b></a>
|
|
<ul class="dropdown-menu">
|
|
<li class="rtl"><a href="@Url.Action("ChangePassword", "Account")"><span class="glyphicon glyphicon-refresh"></span> تغییر کلمه عبور</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="rtl"><a href="/logout">خروج از سایت</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
<div class="jumbotron">
|
|
<h1>سلام!</h1>
|
|
<p>یک سری اطلاعات کلی درباره وب سایت سومین در این محل قابل ارائه می باشد.</p>
|
|
<p>تاریخ و ساعت به وقت سرور سومین: @DateTime.Now.ToShortDateString() - @DateTime.Now.ToShortTimeString()</p>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<p>برای تست: @(HttpContext.Current.Application["ApplicationStart"] == null ? "اجرا نشده" : (DateTime.Now - (DateTime)HttpContext.Current.Application["ApplicationStart"]).Minutes.ToString())</p>
|
|
<div class="table-responsive">
|
|
<table class="table table-stripped table-bordered">
|
|
<thead>
|
|
<tr>
|
|
<th>تعداد کل اعضا</th>
|
|
<th>تعداد کارفرماها</th>
|
|
<th>تعداد متخصصین</th>
|
|
<th>تعداد فرصت های شغلی</th>
|
|
<th>تعداد اعلام آمادگی های فرصت های شغلی</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>@Sevomin.Models.SevominDbContext.Current.Users.Count() (دو روز اخیر: @Sevomin.Models.SevominDbContext.Current.Users.ToList().Where(u => u.SignUpDate.Date > DateTime.Now.Date.AddDays(-2)).Count())</td>
|
|
<td>@(Sevomin.Models.SevominDbContext.Current.Users.OfType<Sevomin.Models.Avalin>().Count()) (دو روز اخیر: @(Sevomin.Models.SevominDbContext.Current.Users.OfType<Sevomin.Models.Avalin>().ToList().Where(u => u.SignUpDate.Date > DateTime.Now.Date.AddDays(-2)).Count()))</td>
|
|
<td>@(Sevomin.Models.SevominDbContext.Current.Users.OfType<Sevomin.Models.Dovomin>().Count()) (دو روز اخیر: @(Sevomin.Models.SevominDbContext.Current.Users.OfType<Sevomin.Models.Dovomin>().ToList().Where(u => u.SignUpDate.Date > DateTime.Now.Date.AddDays(-2)).Count()))</td>
|
|
<td>@Sevomin.Models.SevominDbContext.Current.Jobs.Count()</td>
|
|
<td>@Sevomin.Models.SevominDbContext.Current.DovominJobs.Count() (دو روز اخیر: @Sevomin.Models.SevominDbContext.Current.DovominJobs.ToList().Where(j => j.ApplyDate.Date > DateTime.Now.Date.AddDays(-2)).Count())</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-12 rtl">
|
|
<div class="panel panel-default" id="parameters-edit-panel">
|
|
<div class="panel-heading">
|
|
<h4 class="panel-title"><a data-toggle="collapse" data-parent="parameters-edit-panel" href="#parameters-edit-panel-body">ویرایش متن راهنمای پارامترها</a></h4>
|
|
</div>
|
|
<div id="parameters-edit-panel-body" class="panel-collapse collapse in">
|
|
<div class="panel-body">
|
|
@foreach (var param in Sevomin.Models.SevominDbContext.Current.Parameters)
|
|
{
|
|
<div class="col-md-6 col-sm-12 col-xs-12">
|
|
<table class="table table-stripped table-bordered">
|
|
<thead>
|
|
<tr>
|
|
<th>پارامتر</th>
|
|
<th>توضیح اولین</th>
|
|
<th>توضیح دومین</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>@param.Name</td>
|
|
<td>
|
|
<div style="border: 1px solid #dcdcdc" data-param-id="@param.Id" data-id="CommentAvalin" contenteditable>@param.CommentAvalin</div>
|
|
</td>
|
|
<td>
|
|
<div style="border: 1px solid #dcdcdc" data-param-id="@param.Id" data-id="CommentDovomin" contenteditable>@param.CommentDovomin</div>
|
|
</td>
|
|
<td>
|
|
<button data-param-id="@param.Id" class="btn btn-xs btn-primary pull-left parameter-updater"><span class="glyphicon glyphicon-refresh"></span></button>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-12 rtl">
|
|
<h2>اعلام آمادگی های فرصت های شغلی</h2>
|
|
<div class="panel-group" id="accordion">
|
|
@foreach (Sevomin.Models.Avalin avalin in Sevomin.Models.SevominDbContext.Current.Users.OfType<Sevomin.Models.Avalin>().ToList().OrderByDescending(p => p.CreateDate)
|
|
{
|
|
if (avalin.Jobs.Count == 0)
|
|
{ continue; }
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
<h4 class="panel-title">
|
|
<a data-toggle="collapse" data-parent="#accordion" href="#@avalin.Id">@avalin.DisplayName
|
|
</a>
|
|
</h4>
|
|
</div>
|
|
@foreach (var job in avalin.Jobs)
|
|
{
|
|
if (job.Applications.Count == 0)
|
|
{ continue; }
|
|
<div id="@avalin.Id" class="panel-collapse collapse in">
|
|
<div class="panel-body">
|
|
<p>@((new Sevomin.Models.JobMiniViewModel(job)).JobSummary) @Html.ActionLink("مشاهده آگهی", "SingleJob", "Job", new { jobId = job.Id }, null)</p>
|
|
<h5>اطلاعات فرد پاسخگو به این آگهی: (@(string.IsNullOrWhiteSpace(job.ContactPersonName) ? "نام وارد نشده" : job.ContactPersonName)
|
|
@((string.IsNullOrWhiteSpace(job.ContactPersonEMail) ? "ایمیل وارد نشده" : job.ContactPersonEMail))
|
|
@((string.IsNullOrWhiteSpace(job.ContactPersonPhone) ? "تلفن وارد نشده" : job.ContactPersonPhone)))</h5>
|
|
</div>
|
|
@foreach (var application in job.Applications.OrderByDescending(a => a.ApplyDate))
|
|
{
|
|
Sevomin.Models.JobApplicationViewModel apply = new Sevomin.Models.JobApplicationViewModel(application);
|
|
<div class="panel-body">
|
|
<em>از طرف <a href="@Url.Action("Dovomin", "Account", new { userId = apply.DovominId })">@apply.DovominDisplayName</a></em>
|
|
@if (!string.IsNullOrWhiteSpace(apply.CoverLetter))
|
|
{
|
|
<h5>پیغام متخصص:</h5>
|
|
<blockquote>@apply.CoverLetter</blockquote>
|
|
}
|
|
@if (apply.MinimumRequirement)
|
|
{
|
|
<p>این متخصص تمامی مهارت های الزامی برای این فرصت شغلی را دارد. همچنین میزان مطابقت ایشان با این فرصت شغلی، @apply.Affinity درصد است.</p>
|
|
}
|
|
else
|
|
{
|
|
<p>این متخصص برخی مهارت های الزامی برای این فرصت شغلی را ندارد. همچنین میزان مطابقت ایشان با این فرصت شغلی، @apply.Affinity درصد است.</p>
|
|
}
|
|
</div>
|
|
}
|
|
</div>
|
|
}
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script src="@Url.Content("~/scripts/jquery-2.1.0.min.js")"></script>
|
|
<script src="@Url.Content("~/scripts/jquery-ui-1.10.4.js")"></script>
|
|
<script src="@Url.Content("~/scripts/jalaliCalendar.js")"></script>
|
|
<script src="@Url.Content("~/scripts/jquery-ui-i18n.min.js")"></script>
|
|
<script src="@Url.Content("~/scripts/jquery.validate.min.js")"></script>
|
|
<script src="@Url.Content("~/scripts/jquery.validate.unobtrusive.min.js")"></script>
|
|
<script src="@Url.Content("~/scripts/bootstrap.min.js")"></script>
|
|
<script>
|
|
$(function () {
|
|
$('.collapse').collapse();
|
|
|
|
$('button.parameter-updater').bind('click', function (e) {
|
|
e.preventDefault();
|
|
var vals = $('div[data-param-id="' + $(this).data('param-id') + '"]');
|
|
var commentAvalin; var commentDovomin; var paramId = $(this).data('param-id');
|
|
$.each(vals, function (index, obj) {
|
|
if ($(obj).data('id') == "CommentAvalin")
|
|
commentAvalin = $(obj).text();
|
|
else
|
|
commentDovomin = $(obj).text();
|
|
});
|
|
$.post('@Url.Action("UpdateParam", "God")', { paramId: paramId, commentAvalin: commentAvalin, commentDovomin: commentDovomin })
|
|
.success(function () {
|
|
console.log('done');
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|