You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

271 lines
18 KiB

@{
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="add-ad-panel">
<div class="panel-heading">
<h4 class="panel-title"><a data-toggle="collapse" data-parent="add-ad-panel" href="#add-ad-panel-body">اضافه کردن آگهی</a></h4>
</div>
<div id="add-ad-panel-body" class="panel-collapse collapse in">
<div class="panel-body" id="advertisement-panel">
@using (Html.BeginForm("AddAd", "God", FormMethod.Post, new { @class = "form-horizontal" }))
{
<div class="form-group">
<div class="col-md-4 col-md-offset-1">
<input class="form-control" name="duration" type="number" id="duration-input" placeholder="مدت" />
</div>
<label for="duration-input" class="col-md-1 control-label">مدت</label>
<div class="col-md-4 col-md-offset-1">
<input class="form-control" name="title" type="text" id="title-input" placeholder="عنوان" />
</div>
<label for="title-input" class="col-md-1 control-label">عنوان</label>
</div>
<div class="form-group">
<div class="col-md-8 col-md-offset-3">
<textarea class="form-control" id="description-input" name="description" rows="2" placeholder="متن"></textarea>
</div>
<label for="description-input" class="col-md-1 control-label">متن</label>
</div>
<div class="form-group">
<div class="col-md-1 col-md-offset-1">
<button class="btn btn-default" type="button" role="button" id="preview">تست تبلیغ</button>
</div>
<div class="col-md-1 col-md-offset-1">
<button class="btn btn-default" type="submit" role="button">درج آگهی</button>
</div>
<div class="col-md-4 col-md-offset-3">
<input type="text" name="link" placeholder="لینک حتما باید با http شروع شود" class="form-control" id="link-input" />
</div>
<label class='col-md-1 control-label' for="link-input">لینک</label>
</div>
}
</div>
</div>
</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()
.Where(a => a.Jobs != null && a.Jobs.Any(j => j.ExpireDate.Date >= DateTime.Now.Date))
.OrderByDescending(a => a.Jobs.OrderByDescending(j => j.CreateDate).First().CreateDate)
.ToList())
{
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.OrderByDescending(a => a.CreateDate))
{
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>
@Html.Action("AdManagementPanel")
</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');
});
});
$('#preview').on('click', function () {
$('#preview-box').remove();
var url = $('#link-input').val();
var title = $('#title-input').val();
var desc = $('#description-input').val();
$('#advertisement-panel').append('<div id="preview-box" class="panel col-md-3 pull-right panel-default"><div class="panel-body"><h4 class="rtl">' + title + '</h4><p class="rtl">' + desc + '</p><a href="' + url + '" class="btn btn-default btn-xs"><span class="glyphicon glyphicon-link"></span> مشاهده سایت </a></div></div>');
});
});
</script>
</body>
</html>