406 lines
26 KiB
Plaintext
406 lines
26 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.ListingCrudVm
|
|
@inject IViewLocalizer Localizer
|
|
@{
|
|
IStringLocalizer annotationsLocalizer = ViewBag.AnnotationsLocalizer;
|
|
ViewData["Title"] = Localizer["Button_Create"];
|
|
string folderToUse = "temp";
|
|
}
|
|
|
|
<section id="listingCreateContainer">
|
|
<div>
|
|
<div id="pageTitleAdd" style="display: none;">@ViewData["Title"]</div>
|
|
<div class="pageDesc">@Localizer["Listing_Create_Desc"]</div>
|
|
<form cb-preventsubmit id="frmCreateListing" class="form" asp-controller="Listing" asp-action="Create" data-ajax="true" data-ajax-method="POST" data-ajax-mode="replace" data-ajax-update="#listingCreateContainer">
|
|
<div asp-validation-summary="ModelOnly"></div>
|
|
<input type="hidden" asp-for="Id" />
|
|
<input type="hidden" asp-for="UpdatedAt" />
|
|
<input type="hidden" asp-for="Deleted" />
|
|
<input type="hidden" asp-for="BranchId" class="validateAlways" />
|
|
<input type="hidden" asp-for="CustomerId" class="validateAlways" />
|
|
<input type="hidden" asp-for="Image" class="validateAlways" />
|
|
<input type="hidden" asp-for="Image2" class="validateAlways" />
|
|
<input type="hidden" asp-for="OrderId" />
|
|
<input type="hidden" asp-for="OrderItemId" />
|
|
<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="Address.CountryCode" class="validateAlways" />
|
|
<input type="hidden" asp-for="Address.State" class="validateAlways" />
|
|
<input type="hidden" asp-for="ListingAddress.CountryCode" class="validateAlways" />
|
|
<input type="hidden" asp-for="ListingAddress.State" class="validateAlways" />
|
|
|
|
|
|
<div id="tabContainer">
|
|
<div class="e-tab-header">
|
|
<div>@Localizer["Common_Tab_Details"]</div>
|
|
<div>@Localizer["Common_Tab_Description"]</div>
|
|
<div>@Localizer["Common_Tab_Address"]</div>
|
|
<div>@Localizer["Common_Tab_Common"]</div>
|
|
<div>@Localizer["Common_Tab_Payment"]</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="ListingType"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-medal"></i></span>
|
|
<select asp-for="ListingType" class="form-control" asp-items="Html.GetEnumSelectList<ListingTypeVm>()"></select>
|
|
<span asp-validation-for="ListingType" class="invalid-feedback"></span>
|
|
</div>
|
|
</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<ListingStatusVm>().Where(c => c.Value != "0"))"></select>
|
|
<span asp-validation-for="Status" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="CustomerId"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-cash-register"></i></div>
|
|
<input asp-for="CustomerName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="CustomerId" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="BranchId"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-tags"></i></div>
|
|
<input asp-for="BranchName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="BranchId" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="StartDate"></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="StartDate" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="StartDate" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="EndDate"></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="EndDate" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="EndDate" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="ReservedUntil"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-calendar-day"></i></div>
|
|
<input asp-for="ReservedUntil" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="ReservedUntil" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="pt-3 ">
|
|
<div class="row mb-2">
|
|
<div class="col-sm-12">
|
|
<div id="tabContainerText">
|
|
<div class="e-tab-header">
|
|
@foreach (var item in Model.TextVms)
|
|
{
|
|
<div><img src="~/images/Languages/@(item.Language).png" alt="@item.Language" /></div>
|
|
}
|
|
</div>
|
|
<div class="e-content">
|
|
@Html.EditorFor(m => m.TextVms, new{FolderToUse = folderToUse})
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="pt-3 ">
|
|
<div class="row mb-2">
|
|
<div class="col-sm-12">
|
|
<div class="alert alert-info">
|
|
@annotationsLocalizer["Listing_Address_Desc"]
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="ListingAddress.AddressLine1"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-road"></i></span>
|
|
<input asp-for="ListingAddress.AddressLine1" class="form-control" />
|
|
<span asp-validation-for="ListingAddress.AddressLine1" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="ListingAddress.AddressLine2"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-road"></i></span>
|
|
<input asp-for="ListingAddress.AddressLine2" class="form-control" />
|
|
<span asp-validation-for="ListingAddress.AddressLine2" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="ListingAddress.Zip"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-signs-post"></i></span>
|
|
<input asp-for="ListingAddress.Zip" class="form-control" />
|
|
<span asp-validation-for="ListingAddress.Zip" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="ListingAddress.City"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-city"></i></span>
|
|
<input asp-for="ListingAddress.City" class="form-control" />
|
|
<span asp-validation-for="ListingAddress.City" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="ListingAddress.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="ListingCountryName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="ListingAddress.CountryCode" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="ListingAddress.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="ListingStateName" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="ListingAddress.State" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="pt-3 ">
|
|
<div class="row mb-4">
|
|
<div class="col-sm-12">
|
|
<label class="form-label" asp-for="Url"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-link"></i></span>
|
|
<input asp-for="Url" class="form-control" />
|
|
<span asp-validation-for="Url" 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-329-container" alt="" />
|
|
}
|
|
else
|
|
{
|
|
<img id="image" class="upload-image-329-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>@annotationsLocalizer["Listing_Image_Desc"]</p>
|
|
</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.Image2))
|
|
{
|
|
<img id="image2" src="/file/temp/@Model.Image2" class="upload-image-89-container" alt="" />
|
|
}
|
|
else
|
|
{
|
|
<img id="image2" class="upload-image-89-container" alt="" />
|
|
}
|
|
</div>
|
|
<div class="text-center">
|
|
<span asp-validation-for="Image2" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="text-center mt-2">
|
|
<button type="button" id="btnUploadImage2" class="btn btn-primary btn-sm"><i class="fa fa-fw fa-edit"></i></button>
|
|
<button type="button" id="btnDeleteImage2" 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>@annotationsLocalizer["Listing_Image2_Desc"]</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="pt-3 ">
|
|
<div class="row mb-2">
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="PaymentType"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-money-bill"></i></span>
|
|
<select asp-for="PaymentType" class="form-control" asp-items="Html.GetEnumSelectList<PaymentTypeVm>()"></select>
|
|
<span asp-validation-for="PaymentType" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="PaymentStatus"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-comment-dollar"></i></span>
|
|
<select asp-for="PaymentStatus" class="form-control" asp-items="Html.GetEnumSelectList<PaymentStatusVm>()"></select>
|
|
<span asp-validation-for="PaymentStatus" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<label class="form-label" asp-for="PayedDate"></label>
|
|
<div class="e-input-group">
|
|
<div class="e-input-group-icon"><i class="fa fa-fw fa-calendar-check"></i></div>
|
|
<input asp-for="PayedDate" class="form-control" />
|
|
</div>
|
|
<span asp-validation-for="PayedDate" class="invalid-feedback"></span>
|
|
</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="Address.AddressLine1"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-road"></i></span>
|
|
<input asp-for="Address.AddressLine1" class="form-control" />
|
|
<span asp-validation-for="Address.AddressLine1" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="Address.AddressLine2"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-road"></i></span>
|
|
<input asp-for="Address.AddressLine2" class="form-control" />
|
|
<span asp-validation-for="Address.AddressLine2" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="Address.Zip"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-signs-post"></i></span>
|
|
<input asp-for="Address.Zip" class="form-control" />
|
|
<span asp-validation-for="Address.Zip" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="Address.City"></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fa fa-fw fa-city"></i></span>
|
|
<input asp-for="Address.City" class="form-control" />
|
|
<span asp-validation-for="Address.City" class="invalid-feedback"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-2">
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="Address.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="Address.CountryCode" class="invalid-feedback"></span>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<label class="form-label" asp-for="Address.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="Address.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("jsLookupBranchesUrl", Url.Action("LookupCustomer", "Branch"))
|
|
@Html.Hidden("jsLookupCustomersUrl", Url.Action("Lookup", "Customer"))
|
|
@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"))
|
|
@Html.Hidden("jsGetAddressUrl", Url.Action("GetAddress", "Customer"))
|
|
<system-js url="~/scripts/Views/Listing/create.js" fresh-import="true"></system-js>
|
|
</section> |