256 lines
16 KiB
Plaintext
256 lines
16 KiB
Plaintext
@using Microsoft.AspNetCore.Builder
|
|
@using Microsoft.AspNetCore.Mvc.Localization
|
|
@using Microsoft.AspNetCore.Mvc.TagHelpers
|
|
@using Microsoft.Extensions.Localization
|
|
@using Microsoft.Extensions.Options
|
|
@using gehGassi.Web.Helper
|
|
@using gehGassi.Web.Models
|
|
|
|
@model gehGassi.Web.Models.NewsCrudVm
|
|
|
|
@inject IOptions<RequestLocalizationOptions> Options
|
|
@inject IViewLocalizer Localizer
|
|
@{
|
|
var cultureItems = Options.Value.SupportedCultures.Select(c => new SelectListItem { Value = c.Name, Text = c.NativeName }).ToList();
|
|
ViewData["Title"] = Localizer["Button_Create"];
|
|
string folderToUse = "temp";
|
|
}
|
|
|
|
<section id="newsCreateContainer">
|
|
<div>
|
|
<div id="pageTitleAdd" style="display: none;">@ViewData["Title"]</div>
|
|
<div class="pageDesc">@Localizer["News_Create_Desc"]</div>
|
|
<form cb-preventsubmit id="frmCreateNews" class="form" asp-controller="News" asp-action="Create" data-ajax="true" data-ajax-method="POST" data-ajax-mode="replace" data-ajax-update="#newsCreateContainer">
|
|
<div asp-validation-summary="ModelOnly"></div>
|
|
<input type="hidden" asp-for="Id" />
|
|
<input type="hidden" asp-for="Deleted" />
|
|
<input type="hidden" asp-for="CategoryId" class="validateAlways" />
|
|
<input type="hidden" asp-for="Image" class="validateAlways" />
|
|
<input type="hidden" asp-for="Lat" class="validateAlways" />
|
|
<input type="hidden" asp-for="Lng" class="validateAlways" />
|
|
<input type="hidden" asp-for="Radius" class="validateAlways" />
|
|
<input type="hidden" asp-for="CountryCode" class="validateAlways" />
|
|
<input type="hidden" asp-for="State" class="validateAlways" />
|
|
|
|
<div id="tabContainer">
|
|
<div class="e-tab-header">
|
|
<div>@Localizer["Common_Tab_Details"]</div>
|
|
<div>@Localizer["Common_Tab_Content"]</div>
|
|
<div>@Localizer["Common_Tab_GeoMode"]</div>
|
|
</div>
|
|
<div class="e-content">
|
|
|
|
<div class="pt-3 ">
|
|
<div class="row mb-2">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="CategoryId"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-newspaper"></i></div>
|
|
<input asp-for="CategoryName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="CategoryId" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="Status"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-circle-question"></i></span>
|
|
<select asp-for="Status" class="form-control" asp-items="@(Html.GetEnumSelectList<NewsStatusVm>())"></select>
|
|
<span asp-validation-for="Status" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="Visibility"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-eye"></i></span>
|
|
<select asp-for="Visibility" class="form-control" asp-items="Html.GetEnumSelectList<NewsVisibilityVm>()"></select>
|
|
<span asp-validation-for="Visibility" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row mb-2">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="Start"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-calendar-plus"></i></div>
|
|
<input asp-for="Start" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="Start" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="End"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-calendar-xmark"></i></div>
|
|
<input asp-for="End" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="End" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row mb-2">
|
|
<div class="col-4">
|
|
<label class="form-label" asp-for="Creator"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-user"></i></span>
|
|
<input asp-for="Creator" class="form-control" />
|
|
<span asp-validation-for="Creator" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label d-block" asp-for="IsExternal"></label>
|
|
<input type="checkbox" asp-for="IsExternal" class="switch" />
|
|
<span asp-validation-for="IsExternal" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-4">
|
|
<label class="form-label" asp-for="Source"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-database"></i></span>
|
|
<input asp-for="Source" class="form-control" />
|
|
<span asp-validation-for="Source" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<div class="pt-3 ">
|
|
<div class="row mb-4">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="Language"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-globe"></i></span>
|
|
<select asp-for="Language" asp-items="@cultureItems" class="form-control"></select>
|
|
<span asp-validation-for="Language" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-8">
|
|
<label class="form-label" asp-for="Headline"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-newspaper"></i></span>
|
|
<input asp-for="Headline" class="form-control" />
|
|
<span asp-validation-for="Headline" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-12 col-sm-12 col-md-6 col-lg-5">
|
|
<div class="text-center">
|
|
@if (!string.IsNullOrWhiteSpace(Model.Image))
|
|
{
|
|
<img id="image" src="/file/temp/@Model.Image" class="upload-image-169-container" alt="" />
|
|
}
|
|
else
|
|
{
|
|
<img id="image" class="upload-image-169-container" alt="" />
|
|
}
|
|
</div>
|
|
<div class="text-center">
|
|
<span asp-validation-for="Image" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="text-center mt-2">
|
|
<button type="button" id="btnUploadImage" class="btn btn-primary btn-sm"><i class="fa fa-fw fa-edit"></i></button>
|
|
<button type="button" id="btnDeleteImage" class="btn btn-primary btn-sm" style="display: none;"><i class="fa fa-fw fa-trash"></i></button>
|
|
</div>
|
|
</div>
|
|
<div class="col-12 col-sm-12 col-md-6 col-lg-7">
|
|
<div class="alert alert-info">
|
|
<p>@Localizer["News_Image_Desc"]</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-12">
|
|
<label class="form-label" asp-for="Content"></label>
|
|
<div style="position: relative">
|
|
<textarea asp-for="Content" class="rte"></textarea>
|
|
<span asp-validation-for="Content" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="pt-3 ">
|
|
<div class="row mb-2">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="GeoMode"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-globe"></i></span>
|
|
<select asp-for="GeoMode" class="form-control" asp-items="Html.GetEnumSelectList<GeoModeVm>()"></select>
|
|
<span asp-validation-for="GeoMode" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6 col-md-6 col-lg-3">
|
|
<label class="form-label" asp-for="Lat"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-location-pin"></i></div>
|
|
<input id="LatHelper" class="form-control" autocomplete="off" list="autocompleteOff" />
|
|
</div>
|
|
<span asp-validation-for="Lat" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-6 col-md-6 col-lg-3">
|
|
<label class="form-label" asp-for="Lng"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-location-pin"></i></div>
|
|
<input id="LngHelper" class="form-control" autocomplete="off" list="autocompleteOff" />
|
|
</div>
|
|
<span asp-validation-for="Lng" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-6 col-md-6 col-lg-3">
|
|
<label class="form-label" asp-for="Radius"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-location-arrow"></i></div>
|
|
<input id="RadiusHelper" class="form-control" autocomplete="off" list="autocompleteOff" />
|
|
</div>
|
|
<span asp-validation-for="Radius" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-6 col-md-6 col-lg-3">
|
|
<label class="form-label d-block"> </label>
|
|
@*<button type="button" id="btnFindLatLng" class="btn btn-secondary" disabled="disabled"><i class="fa fa-fw fa-search"></i> Koordianten finden</button>*@
|
|
<button type="button" id="btnMap" class="btn btn-secondary"><i class="fa fa-fw fa-map"></i></button>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="CountryCode"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-globe"></i></div>
|
|
<input asp-for="CountryName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="CountryCode" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="State"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-map"></i></div>
|
|
<input asp-for="StateName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="State" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row button-row">
|
|
<div class="col-12">
|
|
<div class="">
|
|
<button type="button" id="btnSave" class="btn btn-primary">@Localizer["Button_Save"]</button>
|
|
<button type="button" id="btnCancel" class="btn btn-primary">@Localizer["Button_Cancel"]</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
@Html.Hidden("jsLookupCategoriesUrl", Url.Action("LookupCategories", "News"))
|
|
@Html.Hidden("jsLookupCountriesUrl", Url.Action("LookupCountries", "Country"))
|
|
@Html.Hidden("jsLookupStatesUrl", Url.Action("LookupStates", "Country"))
|
|
@Html.Hidden("jsShowMapUrl", Url.Action("ShowMap", "Common"))
|
|
@Html.Hidden("jsUploadUrl", Url.Action("UploadTempFile", "Common"))
|
|
@Html.Hidden("jsRemoveUrl", Url.Action("RemoveTempFile", "Common"))
|
|
<system-js url="~/scripts/Views/News/create.js" fresh-import="true"></system-js>
|
|
</section> |