114 lines
4.4 KiB
Plaintext
114 lines
4.4 KiB
Plaintext
@model VirtualTask.Models.DatiAzienda
|
|
|
|
@{
|
|
ViewData["Title"] = "Nuova Intestazione Buoni Intervento";
|
|
Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml";
|
|
}
|
|
|
|
<div class="agy-project-wrapper agy-project-page-wrapper">
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="row">
|
|
<div class="col-md-4">
|
|
<form id="createForm" asp-action="Create" enctype="multipart/form-data">
|
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
|
|
|
@Html.HiddenFor(x => x.azienda)
|
|
@Html.HiddenFor(x => x.url_logo)
|
|
|
|
<div class="form-group">
|
|
<h5><label asp-for="tecnico" class="control-label"></label></h5>
|
|
@Html.DropDownListFor(x => x.tecnico, (IEnumerable<SelectListItem>)ViewBag.AllTecnici, new { @class = "form-control" })
|
|
<span asp-validation-for="tecnico" class="text-danger"></span>
|
|
</div>
|
|
|
|
<div class="col-lg-6 col-md-6 col-sm-12 col-12"> </div>
|
|
|
|
<div class="form-group">
|
|
<h5><label asp-for="ragsoc" class="control-label"></label></h5>
|
|
<input asp-for="ragsoc" class="form-control" />
|
|
<span asp-validation-for="ragsoc" class="text-danger"></span>
|
|
</div>
|
|
|
|
<div class="col-lg-6 col-md-6 col-sm-12 col-12"> </div>
|
|
|
|
<div class="form-group">
|
|
<h5><label asp-for="logo" class="control-label"></label></h5>
|
|
<input type="file" asp-for="logo" />
|
|
<span asp-validation-for="logo" class="text-danger"></span>
|
|
</div>
|
|
|
|
<div class="col-lg-6 col-md-6 col-sm-12 col-12"> </div>
|
|
|
|
<div class="form-group">
|
|
<h5><label asp-for="testo_buono" class="control-label"></label></h5>
|
|
<textarea asp-for="testo_buono" class="form-control"></textarea>
|
|
<span asp-validation-for="testo_buono" class="text-danger"></span>
|
|
</div>
|
|
|
|
<div class="col-lg-6 col-md-6 col-sm-12 col-12"> </div>
|
|
|
|
<div class="form-group">
|
|
<input type="submit" value="Salva" class="agy-btn submitForm" />
|
|
<a asp-action="Index" class="agy-btn submitForm">Torna alla lista</a>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="~/js/tinymce/tinymce.min.js" referrerpolicy="origin"></script>
|
|
|
|
@section Scripts {
|
|
@{
|
|
await Html.RenderPartialAsync("_ValidationScriptsPartial");
|
|
}
|
|
|
|
<script>
|
|
// inizializza TinyMCE
|
|
tinymce.init({
|
|
selector: 'textarea#testo_buono'
|
|
});
|
|
|
|
// intercetta il submit per gestire la chiamata AJAX + popup
|
|
document.getElementById('createForm').addEventListener('submit', function (e) {
|
|
e.preventDefault();
|
|
|
|
tinymce.triggerSave();
|
|
|
|
const form = e.target;
|
|
const formData = new FormData(form);
|
|
|
|
fetch('@Url.Action("Create", "DatiAzienda")', {
|
|
method: 'POST',
|
|
body: formData
|
|
})
|
|
.then(response => {
|
|
if (response.ok) {
|
|
// ✅ apre la finestra popup con il messaggio
|
|
window.open(
|
|
'@Url.Action("Dialog", "DatiAzienda")',
|
|
'dialogWindow',
|
|
'width=500,height=300,top=200,left=400,resizable=no'
|
|
);
|
|
|
|
// reset del form
|
|
form.reset();
|
|
if (tinymce.get('testo_buono')) {
|
|
tinymce.get('testo_buono').setContent('');
|
|
}
|
|
} else {
|
|
response.text().then(text => {
|
|
alert("Errore nel salvataggio: " + text);
|
|
});
|
|
}
|
|
})
|
|
.catch(err => {
|
|
alert("Errore di rete: " + err);
|
|
});
|
|
});
|
|
</script>
|
|
}
|