Mike Phares 83789cdd91 Added ControllerExtensions to be used instead of HtmlViewRenderer for net8
Added HttpException class for missing HttpException for net8

Wrapped HttpContext.Session, GetJsonResult, IsAjaxRequest and GetUserIdentityName in controllers for net8

Added AuthenticationService to test Fab2ApprovalMKLink code for net8

Compile conditionally flags to debug in dotnet core
2025-05-19 13:29:54 -07:00

2534 lines
136 KiB
Plaintext

@model Fab2ApprovalSystem.ViewModels.ChangeControlViewModel
@{
ViewBag.Title = "Edit";
}
<style>
table {
border-spacing: 5px;
padding: 5px;
border-color: white;
vertical-align:top
}
.k-header .k-link {
text-align: center;
vertical-align:top;
}
.k-grid-edit-row input {
width: 100%;
}
.k-grid .k-grid-header .k-header .k-link {
height: auto;
}
.k-grid .k-grid-header .k-header {
white-space: normal;
}
.k-grid .k-edit-cell input {
width: 100%;
}
</style>
<link rel="stylesheet" href="/Content/kendo/kendo.blueopal.min.css" />
<link rel="stylesheet" href="~/Content/kendogridcustom.css" />
<body onload="StartTimers();" onmousemove="ResetTimers();" onkeydown="ResetTimers();">
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
if (Model.ClosedDate == null)
{
if (ViewBag.IsApprover == "true")
{
<div>
<div class="panel panel-default center-block" data-spy="affix">
<input type="button" value="Save" class="btn btn-primary btn-xs" id="SaveCC" />
@*<input type="button" value="Create Meeting" class="btn btn-primary btn-xs" id="CreateMeeting" />*@
<input type="button" value="Complete" class="btn btn-primary btn-xs" id="CompleteCC" />
<input type="button" value="Cancel" class="btn btn-primary btn-xs" id="CancelCC" />
<input type="button" value="Back to PCRB List" class="btn btn-primary btn-xs" id="PCRBList" />
</div>
</div>
}
else
{
<div>
<div class="panel panel-default center-block" data-spy="affix">
<input type="button" value="Save" class="btn btn-primary btn-xs" id="SaveCC" />
@*<input type="button" value="Create Meeting" class="btn btn-primary btn-xs" id="CreateMeeting" />*@
<input type="button" value="Back to PCRB List" class="btn btn-primary btn-xs" id="PCRBList" />
</div>
</div>
}
}
else
{
<div>
<div class="panel panel-default center-block" data-spy="affix">
<input type="button" value="Back to PCRB List" class="btn btn-primary btn-xs" id="PCRBList" />
</div>
</div>
}
<div class="panel panel-default center-block" style="font-size: 10px">
<div class="panel-body bg-warning">
<div class="row">
<div class="col-sm-12 text-center">
<font style="color: crimson; font-size:24px;font-weight: bolder">
Change Control
</font>
</div>
</div>
</div>
</div>
@*<div class="panel panel-default">
<div class="panel-body bg-warning">
<div class="row">
<div class="col-sm-8">
<label class="control-label">Meeting List:</label>
@(Html.Kendo().DropDownList()
.Name("MeetingList")
.BindTo(new SelectList(ViewBag.MeetingList, "MeetingID", "MeetingInfo"))
.OptionLabel("Select")
.HtmlAttributes(new { style = "width: 300px; font-size:10px" })
)
<input type="button" value="Display MeetingInfo" class="btn btn-primary btn-xs" id="GetMeeting" />
</div>
<div class="col-sm-2 pull-right" style="color:crimson; font-weight:bold">
@(Model.Status == 1 ? "Completed Date:" + Model.ClosedDate.Value.ToString("MM/dd/yyyy") : (Model.Status == 2 ? "Cancelled Date:" + Model.ClosedDate.Value.ToString("MM/dd/yyyy") : ""))
</div>
<div class="col-sm-2 pull-right" style="color:crimson; font-weight:bold">
Status: @(Model.Status == 0 ? "NA" : (Model.Status == 1 ? "Completed" : "Cancelled"))
</div>
</div>
</div>
</div>*@
<div class="panel panel-default" style="font-size: 10px">
<div class="panel-body bg-warning">
<div class="row">
<div class="col-sm-2">
<div class="row">
<div class="col-sm-3">
<label class="control-label pull-right">Plan #:</label>
</div>
<div class="col-sm-9">
@*@Html.TextBoxFor(model => model.PlanNumber, "P" + "{0:0000}", new { id = "txtPlanNumber", @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })*@
@Html.TextBoxFor(model => model.PlanTitle, new { id = "txtPlanTitle", @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
</div>
</div>
</div>
<div class="col-sm-4">
<div class="row">
<div class="col-sm-3">
<label class="control-label pull-right">Title</label>
</div>
<div class="col-sm-9">
@Html.TextBoxFor(model => model.Title, new { id = "txtTitle", @class = "k-textbox", style = "width:100%" })
</div>
</div>
</div>
<div class="col-sm-2">
<div class="row">
<div class="col-sm-3">
<label class="control-label pull-right">Owner:</label>
</div>
<div class="col-sm-9">
@Html.TextBoxFor(model => model.OwnerName, new { id = "txtOwner", @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
@if (GlobalVars.IsAdminValueNotNull(Session))
{
<a href="javascript:undefined" id="lnkReassignOwner" class="linkbutton edit" title="Re-assign Owner"></a>
}
</div>
</div>
</div>
<div class="col-sm-2">
<div class="row">
<div class="col-sm-3">
<label class="control-label pull-right">Change Level:</label>
</div>
<div class="form-control-static col-sm-9">
@(Html.Kendo().DropDownList()
.Name("ChangeLevel")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Select",
Value = "-1"
},
new SelectListItem()
{
Text = "1 - Global",
Value = "1"
},
new SelectListItem()
{
Text = "2 - Other Site + Mesa",
Value = "2"
}
,
new SelectListItem()
{
Text = "3 - Mesa",
Value = "3"
}
}
)
.Value(Model.ChangeLevel.ToString())
)
</div>
</div>
</div>
<div class="col-sm-2">
<div class="row">
<div class="col-sm-3">
<label class="control-label pull-right">Export Control:</label>
</div>
<div class="col-sm-9">
@if (ViewBag.IsOriginator == "true" || (GlobalVars.IsAdmin(Session)))
{
@(Html.Kendo().DropDownList()
.Name("IsITAR")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Select",
Value = "-1"
},
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value(Model.IsITAR.ToString())
)
}
else
{
@(Html.Kendo().DropDownList()
.Name("IsITAR")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Select",
Value = "-1"
},
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value(Model.IsITAR.ToString())
.HtmlAttributes(new { disabled = "disabled" })
)
}
</div>
</div>
</div>
</div>
</div>
</div>
@*<div class="panel panel-default">
<input type="button" value="Create Meeting" class="btn btn-primary btn-xs" id="CreateMeeting" />
<div class="panel-body bg-warning">
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCMeeting>()
.Name("MeetingGrid")
.Columns(columns =>
{
columns.Bound(t => t.MeetingID).Template(@<text> @Html.ActionLink(@item.MeetingID.ToString(), null)</text>)
.ClientTemplate("<a href='/ChangeControl/EditMeeting?meetingID=#=MeetingID#'>#=MeetingID#</a>");
columns.Bound(a => a.PCRValueIDsDisplay).Visible(true);
columns.Bound(a => a.MeetingDate).Visible(true);
//columns.Bound(a => a.Title).Template(@<text> @Html.ActionLink(@item.FileName.ToString(), null)</text>).Width("100px");
columns.Bound(a => a.ClosedDate).Width("300px");
//columns.Bound(a => a.UploadedByName).Width("50px").Title("Uploaded By");
//columns.Bound(a => a.UploadDateTime).Format("{0:MM/dd/yy hh:mm:ss}").Width("50px").Title("Uploaded Date"); ;
//columns.Command(c => c.Custom("View").Click("DownloadCCAttachment")).Width("50px");
//columns.Command(c => c.Custom("Upload Doc").Click("UploadCCAttachment")).Width("50px");
// columns.Template(t => { }).HeaderTemplate("").ClientTemplate(@"
////<a href='javascript: void(0)' class='abutton edit' onclick='editAttachRow(this)' title='button edit'>button edit</a>
////<a href='javascript: void(0)' class='abutton delete' onclick='deleteAttachRow(this)' title='button delete'>button delete</a>").Width("50px");
})
//.ToolBar(toolbar => toolbar.Create().Text("Add Meeting"))
//.ToolBar(toolbar => toolbar.Custom()
// .Text("Create Meeting")
// .Action("CreateMeeting", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Sortable()
.Resizable(resize => resize.Columns(true))
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Events(e => e.Edit("onAttachEdit"))
.Scrollable()
.HtmlAttributes(new { style = "height:125; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.MeetingID);
model.Field(a => a.PlanNumber).DefaultValue(Model.PlanNumber);
//model.Field(a => a.UploadDateTime).Editable(false);
//model.Field(a => a.UploadedByName).Editable(false);
//model.Field(a => a.FileName).Editable(false);
})
.PageSize(50)
.Read(read => read.Action("GetMeetingList", "ChangeControl", new { planNumber = Model.PlanNumber }))
//.Create(create:
.Create(create => create.Action("CreateMeeting", "ChangeControl", new { planNumber = Model.PlanNumber }))
//.Destroy(destroy => destroy.Action("DeleteCCAttachment", "ChangeControl"))
//.Update(update => update.Action("UpdateCCAttachment", "ChangeControl"))
)
)
</div>
</div>*@
<table class="table-condensed" style="width: 100%; font-size: 10px; border-color: lightgrey;">
<tbody>
<tr>
<td>
<div class="panel panel-default" style="font-size: 10px">
<div class="panel-info" style="font-size: 11px">
<div class="panel-heading">
<h5 style="font-weight:600">Description of Change</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div class="form-horizontal col-sm-12">
@Html.TextAreaFor(model => model.ReasonForChange, 15, 30, new { id = "txtReasonForChange", @class = "form-control", style = "font-size: 11px;width: 100%;" })
</div>
</div>
</div>
</td>
<td>
<div class="panel panel-default" style="font-size: 10px">
<div class="panel-info" style="font-size: 11px">
<div class="panel-heading">
<h5 style="font-weight:600">Reason For Change</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div class="form-horizontal col-sm-12">
@Html.TextAreaFor(model => model.ChangeDescription, 15, 30, new { id = "txtChangeDescription", @class = "form-control", style = "font-size: 11px;width: 100%;" })
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
@*<table class="table-condensed" style="width: 100%; font-size: 10px; background-color:#95c7c3; border-color: lightgrey; " border="1" cellpadding="1">
<tbody>
<tr style="background-color:#e5e0e0">
<td width="20%"></td>
<td colspan="2">
<div class="panel-info" style="font-size: 11px">
<div class="panel-heading">
<h5 style="font-weight:600">Affected by Change</h5>
</div>
</div>
</td>
</tr>
<tr>
<td bgcolor="e5e0e0" width="20%">
<div class="panel-body bg-success">
Generations
</div>
</td>
<td width="80%" colspan="2">
@(Html.Kendo().MultiSelect()
.Name("GenerationIDs")
.BindTo(new SelectList(ViewBag.Generations, "GenerationID", "Generation"))
.Value(ViewBag.Nothing)
)
</td>
@*<td width="10%">
<button class="btn btn-warning btn-xs" data-toggle="modal" id="editGens" style="font-size:x-small">
Edit
</button>
</td>
</tr>
<tr>
<td bgcolor="e5e0e0" width="20%">
<div class="panel-body bg-success">
Notes:
</div>
</td>
<td width="80%" colspan="2">
@Html.TextAreaFor(model => model.Notes, 5, 50, new { id = "txtNotes", @class = "k-textbox", style = "width:100%;" })
</td>
</tr>
<tr>
<td bgcolor="e5e0e0" width="20%">
<div class="panel-body bg-success">
Part Numbers
</div>
</td>
<td width="70%">
<table width="100%">
<tr>
<td>
@*<table width="100%" border="0">
<tr>
<td>
Medical(A5)
</td>
<td>
@(Html.Kendo().DropDownList()
.Name("IsMedical")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Select",
Value = "-1"
},
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value(Model.IsMedical.ToString())
)
</td>
</tr>
<tr>
<td>
Radhard(A6)
</td>
<td>
@(Html.Kendo().DropDownList()
.Name("IsRadhard")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Select",
Value = "-1"
},
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value(Model.IsRadHard.ToString())
)
</td>
</tr>
<tr>
<td>
Automotive(A3/A4)
</td>
<td>
@(Html.Kendo().DropDownList()
.Name("IsAutomotive")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Select",
Value = "-1"
},
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value(Model.IsAutomotive.ToString())
)
</td>
</tr>
</table>
</td>
<td colspan="2">
<table width="100%">
<tr>
<td>
<div class="panel-body bg-success">
Part Numbers List
</div>
</td>
</tr>
<tr>
<td>
@Html.TextAreaFor(model => model.PartNumbers, 5, 50, new { id = "txtPartNumber", @class = "k-textbox", style = "width:100%; height=100%" })
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
@*<td width="10%">
<button class="btn-warning" data-toggle="modal" id="btnSelectpart" style="font-size:xx-small">
Edit/Add
</button>
</td>
</tr>
<tr>
<td bgcolor="e5e0e0" width="20%">
<div class="panel-body bg-success">
Tool Type
</div>
</td>
<td width="80%" colspan="2">
@Html.TextAreaFor(model => model.ToolTypes, 5, 50, new { id = "txtToolTypes", @class = "k-textbox", style = "width:100%;" })
</td>
@*<td width="10%">
<button class="btn btn-warning btn-xs" data-toggle="modal" id="editToolTypes" style="font-size:x-small">
Edit
</button>
</td>
</tr>
<tr>
<td bgcolor="e5e0e0" width="20%">
<div class="panel-body bg-success">
Processes
</div>
</td>
<td width="80%" colspan="2">
@(Html.Kendo().MultiSelect()
.Name("ProcessIDs")
.BindTo(new SelectList(ViewBag.Processes, "ProcessID", "Process"))
.Value(ViewBag.Nothing)
)
</td>
@*<td width="10%">
<button class="btn btn-warning btn-xs" data-toggle="modal" id="editProcesses" style="font-size:x-small">
Edit
</button>
</td>
</tr>
<tr>
<td bgcolor="e5e0e0" width="20%">
<div class="panel-body bg-success">
Logistics
</div>
</td>
<td width="80%" colspan="2">
@(Html.Kendo().MultiSelect()
.Name("LogisticsIDs")
.BindTo(new SelectList(ViewBag.Logistics, "LogisticsID", "Logistics"))
.Value(ViewBag.Nothing)
)
</td>
@*<td width="10%">
<button class="btn btn-warning btn-xs" data-toggle="modal" id="editLogistics" style="font-size:x-small">
Edit
</button>
</td>
</tr>
</tbody>
</table>*@
<div class="panel panel-default" style="font-size: 10px">
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
Documents Attachments
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCAttachment>()
.Name("ChangeControlAttachmentGrid")
.Columns(columns =>
{
columns.Bound(a => a.ID).Visible(false);
columns.Bound(a => a.PlanNumber).Visible(false);
columns.Bound(a => a.FileGUID).Visible(false);
columns.Bound(a => a.FileName).Template(@<text> @Html.ActionLink(@item.FileName.ToString(), null)</text>).Width("100px");
columns.Bound(a => a.Title).Width("100px");
columns.Bound(a => a.RequirementsNotes).Width("300px");
columns.Bound(a => a.UploadedByName).Width("50px").Title("Uploaded By");
columns.Bound(a => a.UploadDateTime).Format("{0:MM/dd/yy hh:mm:ss}").Width("50px").Title("Uploaded Date"); ;
columns.Command(c => c.Custom("View").Click("DownloadCCAttachment")).Width("50px");
columns.Command(c => c.Custom("Upload Doc").Click("UploadCCAttachment")).Width("50px");
columns.Template(t => { }).HeaderTemplate("").ClientTemplate(@"
<a href='javascript: void(0)' class='abutton edit' onclick='editAttachRow(this)' title='button edit'>button edit</a>
<a href='javascript: void(0)' class='abutton delete' onclick='deleteAttachRow(this)' title='button delete'>button delete</a>").Width("50px");
})
.ToolBar(toolbar => toolbar.Create().Text("Add Item"))
.Sortable()
.Resizable(resize => resize.Columns(true))
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Events(e => e.Edit("onAttachEdit"))
.Scrollable()
.HtmlAttributes(new { style = "height:125; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
model.Field(a => a.PlanNumber).DefaultValue(Model.PlanNumber);
model.Field(a => a.UploadDateTime).Editable(false);
model.Field(a => a.UploadedByName).Editable(false);
model.Field(a => a.FileName).Editable(false);
})
.PageSize(50)
.Read(read => read.Action("GetCCAttachments", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Create(create => create.Action("InsertCCAttachmentItem", "ChangeControl"))
.Destroy(destroy => destroy.Action("DeleteCCAttachment", "ChangeControl"))
.Update(update => update.Action("UpdateCCAttachment", "ChangeControl"))
)
)
</div>
</div>
@*<div class="panel panel-default" style="font-size: 10px">
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
Meeting Decision Summary List
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.MeetingDecisionSummaryList>()
.Name("DecisionSummaryList")
.Columns(columns =>
{
columns.Bound(a => a.PCRB).Width("100px");
columns.Bound(a => a.MeetingDate).Width("100px").Format("{0:MM/dd/yyyy}");
columns.Bound(a => a.DecisionNotes).ClientTemplate("#=ProcessLinkBreaks(DecisionNotes)#").Width("500px");
columns.Bound(a => a.ECNLinks).ClientTemplate("#=DisplayECNLinks(ECNLinks)#").Width("100px");
columns.Bound(a => a.LotDispoLinks).ClientTemplate("#=DisplayLotDispoLinks(LotDispoLinks)#").Width("100px");
})
.Sortable()
.Scrollable()
.Resizable(resize => resize.Columns(true))
.HtmlAttributes(new { style = "height:125; width:100%; font-size: 11px; valign:top" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false)
.ServerOperation(false)
.Model(model =>
{
//model.Id(p => p.ID);
})
.PageSize(50)
.Read(read => read.Action("GetMeetingDecisionSummaryList", "ChangeControl", new { planNumber = Model.PlanNumber }))
)
)
</div>
</div>*@
@*<div class="panel panel-default" style="font-size: 10px">
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
Meeting Action Items
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div id="userListdiv" class="k-content">
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCMeetingActionItemAll>()
.Name("MeetingActionItemsAll")
.Columns(columns =>
{
columns.Bound(a => a.ID).Visible(false);
columns.Bound(a => a.MeetingID).Visible(false);
columns.Bound(a => a.PCRB).Width("50px");
columns.Bound(a => a.ActionItemName).Width("300px").ClientTemplate("#=changeNewLine(ActionItemName)#"); ;
columns.Bound(a => a.ResponsiblePerson).Width("100px");
columns.Bound(a => a.Gating).Width("50px");
columns.Bound(a => a.DueDate).Width("100px").Format("{0:MM/dd/yy}").EditorTemplateName("MeetingDueDateTemplate");
columns.Bound(a => a.Updates).Width("200px");
columns.Bound(a => a.ClosedStatus).ClientTemplate("<input type='checkbox' disabled #= ClosedStatus ? checked='checked':'' # class='chkbx' />").Width("50px");
columns.Bound(a => a.ClosedDate).Width("50px").Format("{0:MM/dd/yy}").Width("150px");
columns.Bound(a => a.FileName).Width("100px");
columns.Command(c => c.Custom("View Doc").Click("DownloadActionItemAttachment")).Width("75px");
columns.Command(c => c.Custom("Upload Doc").Click("UploadActionItemAttachment")).Width("85px");
columns.Template(t => { }).HeaderTemplate("")
.ClientTemplate(@"<a href='javascript: void(0)' class='abutton edit' onclick='editRow(this)' title='button edit'>button edit</a>").Width("50px");
})
//.Events(e => e.DataBound("onMeetingActionItemsAll"))
.Editable(editable => editable.Mode(GridEditMode.InLine))
.HtmlAttributes(new { style = "height: 500px;" })
.Scrollable()
.Resizable(resize => resize.Columns(true))
.Sortable()
.Events(e => e.Edit("onEdit"))
.Pageable(pageable => pageable
.Refresh(true)
.PageSizes(true)
.ButtonCount(5))
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
model.Field(a => a.MeetingID).Editable(false);
model.Field(a => a.PCRB).Editable(false);
model.Field(a => a.ActionItemName).Editable(false);
model.Field(a => a.ResponsiblePerson).Editable(false);
model.Field(a => a.Gating).Editable(false);
//model.Field(a => a.DueDate).Editable(false);
model.Field(a => a.FileName).Editable(false);
model.Field(a => a.ClosedDate).Editable(false);
})
.PageSize(50)
.Read(read => read.Action("GetMeetingActionItems_All", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Update(update => update.Action("UpdateMeetingActionItemAll", "ChangeControl"))
)
)
</div>
</div>
</div>*@
<div class="panel panel-default">
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
PCR 1
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div>
<input type="button" id="AddActionItem" value="Add Action Item" class="btn btn-primary btn-xs" onclick="AddPCRActionItem(@Model.PCR1ID, 'PCRB1ActionItems')" />
</div>
@(
Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCPCRBActionItemAll>()
.Name("PCRB1ActionItems")
.Columns(columns =>
{
columns.Bound(a => a.ID).Visible(false);
//columns.Bound(a => a.MeetingID).Visible(false);
columns.Bound(a => a.PCRB).Width("50px");
columns.Bound(a => a.ActionItemName).Width("300px").ClientTemplate("#=changeNewLine(ActionItemName)#"); ;
columns.Bound(a => a.ResponsiblePerson).Width("100px");
columns.Bound(a => a.Gating).Width("50px");
columns.Bound(a => a.DueDate).Width("100px").Format("{0:MM/dd/yy}").EditorTemplateName("MeetingDueDateTemplate");
columns.Bound(a => a.Updates).Width("200px");
columns.Bound(a => a.ClosedStatus).ClientTemplate("<input type='checkbox' disabled #= ClosedStatus ? checked='checked':'' # class='chkbx' />").Width("50px");
columns.Bound(a => a.ClosedDate).Width("50px").Format("{0:MM/dd/yy}").Width("150px");
columns.Bound(a => a.FileName).Width("100px");
//columns.Command(c => c.Custom("View Doc").Click("DownloadActionItemAttachment")).Width("75px");
//columns.Command(c => c.Custom("Upload Doc").Click("UploadActionItemAttachment")).Width("85px");
columns.Command(c => c.Custom("Edit").Click("EditPCRBActionItemPCRB1")).Width("70px");
columns.Command(c => c.Destroy()).Width("40px");
//columns.Bound(a => a.).Width("50px");
})
//.ToolBar(toolbar => toolbar.Create().Text("Add Meeting"))
//.ToolBar(toolbar => toolbar.Custom()
// .Text("Create Meeting")
// .Action("CreateMeeting", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Sortable()
.Resizable(resize => resize.Columns(true))
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Events(e => e.Edit("onAttachEdit"))
.Scrollable()
.HtmlAttributes(new { style = "height:125; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
//model.Field(p => p.ResponsiblePerson).DefaultValue(Model.PlanNumber);
//model.Field(p => p.ActionItemName).Editable(true);
//model.Field(a => a.UploadDateTime).Editable(false);
//model.Field(a => a.UploadedByName).Editable(false);
//model.Field(a => a.FileName).Editable(false);
})
.PageSize(50)
.Read(read => read.Action("GetPCRBActionItems", "ChangeControl", new { PlanNumber = Model.PlanNumber, pcrbID = Model.PCR1ID }))
//.Create(create:
.Create(create => create.Action("InsertPCRBActionItem", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Destroy(destroy => destroy.Action("DeletePCRBActionItem", "ChangeControl"))
.Update(update => update.Action("UpdatePCRBActionItem", "ChangeControl"))
)
)
</div>
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
Attendees
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div>
<input type="button" id="AddActionItem" value="Add Attendee" class="btn btn-primary btn-xs" onclick="AddPCRAttendee(@Model.PCR1ID, 'PCRB1Attendees')" />
</div>
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCPCRBAttendee>()
.Name("PCRB1Attendees")
.Columns(columns =>
{
//columns.Bound(a => a.ID).Visible(false);
columns.Bound(a => a.PCRBID).Visible(false);
columns.Bound(a => a.AttendeeName).Width("200px");
columns.Bound(a => a.AttendeeID).Width("50px");
//columns.Bound(a => a.AttendeeID).Visible(false);
columns.Bound(a => a.JobTitle).Width("100px");
columns.Bound(a => a.Location).Width("200px");
columns.Command(c => c.Custom("Edit Attendee").Click("ShowEditAttendeePCR1")).Width("100px");
columns.Bound(a => a.Approved).ClientTemplate("# if (Approved == true) { # Yes # } else { # No # } #");
//columns.Command(c => c.Edit()).Width("80px");
//columns.Command(c => c.Custom("Save Attendee").Click("SaveNewAttendee")).Width("100px");
})
.Events(e => e.DataBound("onAttendeeDataBoundPCR1"))
//.ToolBar(toolbar => toolbar.Create().Text("Add Item"))
.Sortable()
.Scrollable()
.Resizable(resize => resize.Columns(true))
.HtmlAttributes(new { style = "height:300px; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false)
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
model.Field(a => a.PCRBID).DefaultValue(Model.PCR1ID);
model.Field(a => a.JobTitle).Editable(true);
})
.PageSize(50)
.Read(read => read.Action("GetPCRBAttendees", "ChangeControl", new { PCRBID = Model.PCR1ID }))
.Create(create => create.Action("InsertMeetingAttendee", "ChangeControl"))
.Update(update => update.Action("UpdateMeetingAttendee", "ChangeControl"))
)
)
</div>
</div>
<div class="panel panel-default">
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
PCR 2
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div>
<input type="button" id="AddActionItem" value="Add Action Item" class="btn btn-primary btn-xs" onclick="AddPCRActionItem(@Model.PCR2ID, 'PCRB2ActionItems')" />
</div>
@(
Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCPCRBActionItemAll>()
.Name("PCRB2ActionItems")
.Columns(columns =>
{
columns.Bound(a => a.ID).Visible(false);
//columns.Bound(a => a.MeetingID).Visible(false);
columns.Bound(a => a.PCRB).Width("50px");
columns.Bound(a => a.ActionItemName).Width("300px").ClientTemplate("#=changeNewLine(ActionItemName)#"); ;
columns.Bound(a => a.ResponsiblePerson).Width("100px");
columns.Bound(a => a.Gating).Width("50px");
columns.Bound(a => a.DueDate).Width("100px").Format("{0:MM/dd/yy}").EditorTemplateName("MeetingDueDateTemplate");
columns.Bound(a => a.Updates).Width("200px");
columns.Bound(a => a.ClosedStatus).ClientTemplate("<input type='checkbox' disabled #= ClosedStatus ? checked='checked':'' # class='chkbx' />").Width("50px");
columns.Bound(a => a.ClosedDate).Width("50px").Format("{0:MM/dd/yy}").Width("150px");
columns.Bound(a => a.FileName).Width("100px");
//columns.Command(c => c.Custom("View Doc").Click("DownloadActionItemAttachment")).Width("75px");
//columns.Command(c => c.Custom("Upload Doc").Click("UploadActionItemAttachment")).Width("85px");
columns.Command(c => c.Custom("Edit").Click("EditPCRBActionItemPCRB2")).Width("70px");
columns.Command(c => c.Destroy()).Width("40px");
//columns.Bound(a => a.).Width("50px");
})
//.ToolBar(toolbar => toolbar.Create().Text("Add Meeting"))
//.ToolBar(toolbar => toolbar.Custom()
// .Text("Create Meeting")
// .Action("CreateMeeting", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Sortable()
.Resizable(resize => resize.Columns(true))
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Events(e => e.Edit("onAttachEdit"))
.Scrollable()
.HtmlAttributes(new { style = "height:125; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
//model.Field(p => p.ResponsiblePerson).DefaultValue(Model.PlanNumber);
//model.Field(p => p.ActionItemName).Editable(true);
//model.Field(a => a.UploadDateTime).Editable(false);
//model.Field(a => a.UploadedByName).Editable(false);
//model.Field(a => a.FileName).Editable(false);
})
.PageSize(50)
.Read(read => read.Action("GetPCRBActionItems", "ChangeControl", new { PlanNumber = Model.PlanNumber, pcrbID = Model.PCR2ID }))
//.Create(create:
.Create(create => create.Action("InsertPCRBActionItem", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Destroy(destroy => destroy.Action("DeletePCRBActionItem", "ChangeControl"))
.Update(update => update.Action("UpdatePCRBActionItem", "ChangeControl"))
)
)
</div>
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
Attendees
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div>
<input type="button" id="AddActionItem" value="Add Attendee" class="btn btn-primary btn-xs" onclick="AddPCRAttendee(@Model.PCR2ID, 'PCRB2Attendees')" />
</div>
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCPCRBAttendee>()
.Name("PCRB2Attendees")
.Columns(columns =>
{
//columns.Bound(a => a.ID).Visible(false);
columns.Bound(a => a.PCRBID).Visible(false);
columns.Bound(a => a.AttendeeName).Width("200px");
columns.Bound(a => a.AttendeeID).Width("50px");
//columns.Bound(a => a.AttendeeID).Visible(false);
columns.Bound(a => a.JobTitle).Width("100px");
columns.Bound(a => a.Location).Width("200px");
columns.Command(c => c.Custom("Edit Attendee").Click("ShowEditAttendeePCR2")).Width("100px");
columns.Bound(a => a.Approved).ClientTemplate("# if (Approved == true) { # Yes # } else { # No # } #");
//columns.Command(c => c.Edit()).Width("80px");
//columns.Command(c => c.Custom("Save Attendee").Click("SaveNewAttendee")).Width("100px");
})
.Events(e => e.DataBound("onAttendeeDataBoundPCR2"))
//.ToolBar(toolbar => toolbar.Create().Text("Add Item"))
.Sortable()
.Scrollable()
.Resizable(resize => resize.Columns(true))
.HtmlAttributes(new { style = "height:300px; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false)
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
model.Field(a => a.PCRBID).DefaultValue(Model.PCR2ID);
model.Field(a => a.JobTitle).Editable(true);
})
.PageSize(50)
.Read(read => read.Action("GetPCRBAttendees", "ChangeControl", new { PCRBID = Model.PCR2ID }))
.Create(create => create.Action("InsertMeetingAttendee", "ChangeControl"))
.Update(update => update.Action("UpdateMeetingAttendee", "ChangeControl"))
)
)
</div>
</div>
<div class="panel panel-default">
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
PCR 3
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div>
<input type="button" id="AddActionItem" value="Add Action Item" class="btn btn-primary btn-xs" onclick="AddPCRActionItem(@Model.PCR3ID, 'PCRB3ActionItems')" />
</div>
@(
Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCPCRBActionItemAll>()
.Name("PCRB3ActionItems")
.Columns(columns =>
{
columns.Bound(a => a.ID).Visible(false);
//columns.Bound(a => a.MeetingID).Visible(false);
columns.Bound(a => a.PCRB).Width("50px");
columns.Bound(a => a.ActionItemName).Width("300px").ClientTemplate("#=changeNewLine(ActionItemName)#"); ;
columns.Bound(a => a.ResponsiblePerson).Width("100px");
columns.Bound(a => a.Gating).Width("50px");
columns.Bound(a => a.DueDate).Width("100px").Format("{0:MM/dd/yy}").EditorTemplateName("MeetingDueDateTemplate");
columns.Bound(a => a.Updates).Width("200px");
columns.Bound(a => a.ClosedStatus).ClientTemplate("<input type='checkbox' disabled #= ClosedStatus ? checked='checked':'' # class='chkbx' />").Width("50px");
columns.Bound(a => a.ClosedDate).Width("50px").Format("{0:MM/dd/yy}").Width("150px");
columns.Bound(a => a.FileName).Width("100px");
//columns.Command(c => c.Custom("View Doc").Click("DownloadActionItemAttachment")).Width("75px");
//columns.Command(c => c.Custom("Upload Doc").Click("UploadActionItemAttachment")).Width("85px");
columns.Command(c => c.Custom("Edit").Click("EditPCRBActionItemPCRB3")).Width("70px");
columns.Command(c => c.Destroy()).Width("40px");
//columns.Bound(a => a.).Width("50px");
})
//.ToolBar(toolbar => toolbar.Create().Text("Add Meeting"))
//.ToolBar(toolbar => toolbar.Custom()
// .Text("Create Meeting")
// .Action("CreateMeeting", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Sortable()
.Resizable(resize => resize.Columns(true))
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Events(e => e.Edit("onAttachEdit"))
.Scrollable()
.HtmlAttributes(new { style = "height:125; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
//model.Field(p => p.ResponsiblePerson).DefaultValue(Model.PlanNumber);
//model.Field(p => p.ActionItemName).Editable(true);
//model.Field(a => a.UploadDateTime).Editable(false);
//model.Field(a => a.UploadedByName).Editable(false);
//model.Field(a => a.FileName).Editable(false);
})
.PageSize(50)
.Read(read => read.Action("GetPCRBActionItems", "ChangeControl", new { PlanNumber = Model.PlanNumber, pcrbID = Model.PCR3ID }))
//.Create(create:
.Create(create => create.Action("InsertPCRBActionItem", "ChangeControl", new { planNumber = Model.PlanNumber }))
.Destroy(destroy => destroy.Action("DeletePCRBActionItem", "ChangeControl"))
.Update(update => update.Action("UpdatePCRBActionItem", "ChangeControl"))
)
)
</div>
<div class="panel-body bg-info">
<div class="pull-left">
<h5>
<font style="color:crimson">
Attendees
</font>
</h5>
</div>
</div>
<div class="panel-body bg-warning">
<div>
<input type="button" id="AddActionItem" value="Add Attendee" class="btn btn-primary btn-xs" onclick="AddPCRAttendee(@Model.PCR3ID, 'PCRB3Attendees')" />
</div>
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.CCPCRBAttendee>()
.Name("PCRB3Attendees")
.Columns(columns =>
{
//columns.Bound(a => a.ID).Visible(false);
columns.Bound(a => a.PCRBID).Visible(false);
columns.Bound(a => a.AttendeeName).Width("200px");
columns.Bound(a => a.AttendeeID).Width("50px");
//columns.Bound(a => a.AttendeeID).Visible(false);
columns.Bound(a => a.JobTitle).Width("100px");
columns.Bound(a => a.Location).Width("200px");
columns.Command(c => c.Custom("Edit Attendee").Click("ShowEditAttendeePCR3")).Width("100px");
columns.Bound(a => a.Approved).ClientTemplate("# if (Approved == true) { # Yes # } else { # No # } #");
//columns.Command(c => c.Edit()).Width("80px");
//columns.Command(c => c.Custom("Save Attendee").Click("SaveNewAttendee")).Width("100px");
})
.Events(e => e.DataBound("onAttendeeDataBoundPCR3"))
//.ToolBar(toolbar => toolbar.Create().Text("Add Item"))
.Sortable()
.Scrollable()
.Resizable(resize => resize.Columns(true))
.HtmlAttributes(new { style = "height:300px; width:100%; font-size: 11px" })
.DataSource(dataSource => dataSource
.Ajax()
//.Batch(false)
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.ID);
model.Field(a => a.PCRBID).DefaultValue(Model.PCR3ID);
model.Field(a => a.JobTitle).Editable(true);
})
.PageSize(50)
.Read(read => read.Action("GetPCRBAttendees", "ChangeControl", new { PCRBID = Model.PCR3ID }))
.Create(create => create.Action("InsertMeetingAttendee", "ChangeControl"))
.Update(update => update.Action("UpdateMeetingAttendee", "ChangeControl"))
)
)
</div>
</div>
}
</body>
<div class="modal fade" id="WIPPartForm" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">Part Search:</h4>
</div>
<div class="modal-body">
<table class="table-condensed" border="0" width="100%">
<tr>
<td width="100%" colspan="2">
<label for="txtSearch">Enter Part Search:</label>
</td>
</tr>
<tr>
<td>
@Html.TextBox("txtSearch", null, new { @class = "k-textbox", style="width:100%"})
</td>
<td>
<input width:100%" type="button" id='jqxButtonSearchParts' value="Search Parts" />
</td>
</tr>
<tr>
<td>
<select multiple id="lstParts" style="height: 250px; width: 100%; font-family: Tahoma; border-color: lightgrey"></select>
</td>
<td>
<select multiple id="lstSelectedParts" style="height: 250px; width: 100%; font-family: Tahoma; border-color: lightgrey"></select>
</td>
</tr>
<tr>
<td>
<input type="button" id='jqxButtonAddParts' value="Add Parts" />
</td>
<td>
<input type="button" id='jqxButtonRemoveParts' value="Remove Parts" />
</td>
</tr>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary" id="SavePart">Confirm Part Selection</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="WinAttachDocuments" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">Select File:</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-sm-8">
@(Html.Kendo().Upload()
.Name("files")
.Async(a => a
.Save("AttachSaveCC", "ChangeControl", new { planNumber = Model.PlanNumber })
.AutoUpload(true)
)
.Events(events => events.Success("RefreshCCAttachmentsGrid").Upload("UploadCCAdditionalData"))
.ShowFileList(false)
)
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="WinAttachActionItemDocuments" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">Select File:</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-sm-8">
@(Html.Kendo().Upload()
.Name("AIfiles")
.Async(a => a
.Save("AttachSaveActionItem", "ChangeControl", new { planNumber = Model.PlanNumber })
.AutoUpload(true)
)
.Events(events => events.Success("RefreshActionItemAttachmentsGrid").Upload("UploadActionItemAdditionalData"))
.ShowFileList(false)
)
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="timeout" tabindex="0" role="dialog" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog modal-lg" style="width:500px;">
<div class="modal-content">
<div class="modal-header" style="background-color: #fce0a3;">
<h3 class="modal-title">Page About To Timeout</h3>
</div>
<div class="modal-body" style="background-color: crimson; font-size: 20px; color:white">
You will automatically be redirected to Special Request List page in 1 minute.<br />
To remain on this page please close this window or press the ESC key.
</div>
<div class="modal-footer" style="background-color: #fce0a3; ">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="PCRBActionItemForm" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">Add/Edit Action Items:</h4>
</div>
<div class="modal-body">
<table class="table-condensed" border="0" width="100%">
<tr>
<td width="25%">
<label for="txtActionItem">Action Item:</label>
</td>
<td width="75%">
@Html.TextArea("txtActionItem", "", 5, 12, new { @class = "k-textbox", style = "width:100%" })
</td>
</tr>
<tr>
<td width="25%">
<label for="ResponsibleIDs">Responsible Person:</label>
</td>
<td width="75%">
@(Html.Kendo().MultiSelect()
.Name("ResponsibleIDs")
.BindTo(new SelectList(ViewBag.AIResponsibles, "ResponsibleID", "ResponsibleName"))
.Value(ViewBag.Nothing)
.HtmlAttributes(new { style = "font-size:10px" })
)
</td>
</tr>
<tr>
<td width="25%">
<label for="dropGating">Gating:</label>
</td>
<td width="75%">
@(Html.Kendo().DropDownList()
.Name("dropGating")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value("0")
)
</td>
</tr>
<tr>
<td width="25%">
<label for="DueDate">Due Date:</label>
</td>
<td width="75%">
@(Html.Kendo().DatePicker()
.Name("txtDueDate")
)
</td>
<td>
<input type="hidden" value="" id="PCRNo" />
<input type="hidden" value="" id="PCRFormName" />
</td>
</tr>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary" id="SavePCRBActionItem">OK</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="AttendeeForm" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">Add/Edit PCRB Attendees:</h4>
</div>
<div class="modal-body">
<table class="table-condensed" border="0" width="100%">
<tr>
<td width="25%">
<label for="AttendeeIDs">Attendee Name:</label>
</td>
<td width="75%">
@(Html.Kendo().MultiSelect()
.Name("AttendeeIDs")
.BindTo(new SelectList(ViewBag.Attendees, "AttendeeID", "AttendeeName"))
//.OptionLabel("Select")
.Value(ViewBag.Nothing)
)
</td>
</tr>
<tr>
<td width="25%">
<label for="AttendeeIDs">Title:</label>
</td>
<td width="75%">
@Html.TextBox("JobTitle", "", new { id = "JobTitle", @class = "k-textbox", style = "width:100%;" })
</td>
</tr>
<tr>
<td width="25%">
<label for="SiteIDs">Location:</label>
</td>
<td width="75%">
@(Html.Kendo().MultiSelect()
.Name("SiteIDs")
.BindTo(new SelectList(ViewBag.Sites, "SiteID", "SiteName"))
//.OptionLabel("Select")
.Value(ViewBag.Nothing)
)
</td>
</tr>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary" id="SaveAttendee">OK</button>
</div>
<input type="hidden" id="OriginPCR" value="" />
</div>
</div>
</div>
@Html.Partial("_CCReassignOwner")
<script type="text/javascript">
var attendeeOperation = '';
function AddPCRActionItem(PCRID, pcrFormName) {
clearMeetingForm();
actionItemOperation = 'Add';
document.getElementById("PCRNo").value = PCRID;
document.getElementById("PCRFormName").value = pcrFormName;
$("#PCRBActionItemForm").modal("show");
return;
}
function AddPCRAttendee(PCRID, pcrFormName) {
clearNewAttendeeForm();
attendeeOperation = 'add';
document.getElementById("PCRNo").value = PCRID;
document.getElementById("PCRFormName").value = pcrFormName;
$("#AttendeeForm").modal("show");
return;
}
function EditPCRBActionItemPCRB1(e) {
var ddate;
var dueDate;
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var pcrFormName = "PCRB1ActionItems";
actionItemID = dataItem.ID;
var gating = dataItem.Gating;
if (dataItem.DueDate != null) {
ddate = new Date(dataItem.DueDate);
dueDate = (ddate.getMonth() + 1) + '/' + ddate.getDate() + '/' + ddate.getFullYear();
}
else
dueDate = '';
clearMeetingForm();
document.getElementById("PCRNo").value = actionItemID;
document.getElementById("PCRFormName").value = pcrFormName;
$("#txtActionItem").val(dataItem.ActionItemName);
$("#dropGating").data("kendoDropDownList").value(gating == "Yes" ? "1" : "0");
$("#txtDueDate").val(dueDate);
var temResponsible;
//alert(dataItem.ResponsiblePerson);
var data;
var dataArray;
$("#ResponsibleIDs").data("kendoMultiSelect").value("");
if (dataItem.ResponsibleID != null) {
temResponsible = dataItem.ResponsibleID.split(',');
var attValues = new Array();
}
$("#ResponsibleIDs").data("kendoMultiSelect").value(temResponsible);
actionItemOperation = 'Edit';
e.preventDefault()
$("#PCRBActionItemForm").modal("show");
}
function EditPCRBActionItemPCRB2(e) {
var ddate;
var dueDate;
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var pcrFormName = "PCRB2ActionItems";
actionItemID = dataItem.ID;
var gating = dataItem.Gating;
if (dataItem.DueDate != null) {
ddate = new Date(dataItem.DueDate);
dueDate = (ddate.getMonth() + 1) + '/' + ddate.getDate() + '/' + ddate.getFullYear();
}
else
dueDate = '';
clearMeetingForm();
document.getElementById("PCRNo").value = actionItemID;
document.getElementById("PCRFormName").value = pcrFormName;
$("#txtActionItem").val(dataItem.ActionItemName);
$("#dropGating").data("kendoDropDownList").value(gating == "Yes" ? "1" : "0");
$("#txtDueDate").val(dueDate);
var temResponsible;
//alert(dataItem.ResponsiblePerson);
var data;
var dataArray;
$("#ResponsibleIDs").data("kendoMultiSelect").value("");
if (dataItem.ResponsibleID != null) {
temResponsible = dataItem.ResponsibleID.split(',');
var attValues = new Array();
}
$("#ResponsibleIDs").data("kendoMultiSelect").value(temResponsible);
actionItemOperation = 'Edit';
e.preventDefault()
$("#PCRBActionItemForm").modal("show");
}
function EditPCRBActionItemPCRB3(e) {
var ddate;
var dueDate;
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var pcrFormName = "PCRB3ActionItems";
actionItemID = dataItem.ID;
var gating = dataItem.Gating;
if (dataItem.DueDate != null) {
ddate = new Date(dataItem.DueDate);
dueDate = (ddate.getMonth() + 1) + '/' + ddate.getDate() + '/' + ddate.getFullYear();
}
else
dueDate = '';
clearMeetingForm();
document.getElementById("PCRNo").value = actionItemID;
document.getElementById("PCRFormName").value = pcrFormName;
$("#txtActionItem").val(dataItem.ActionItemName);
$("#dropGating").data("kendoDropDownList").value(gating == "Yes" ? "1" : "0");
$("#txtDueDate").val(dueDate);
var temResponsible;
//alert(dataItem.ResponsiblePerson);
var data;
var dataArray;
$("#ResponsibleIDs").data("kendoMultiSelect").value("");
if (dataItem.ResponsibleID != null) {
temResponsible = dataItem.ResponsibleID.split(',');
var attValues = new Array();
}
$("#ResponsibleIDs").data("kendoMultiSelect").value(temResponsible);
actionItemOperation = 'Edit';
e.preventDefault()
$("#PCRBActionItemForm").modal("show");
}
function clearMeetingForm() {
$("#txtActionItem").val('');
//$("#ResponsibleIDs").data("kendoMultiSelect").value("");
$("#dropGating").data("kendoDropDownList").value("0");
$("#txtDueDate").val('');
}
function clearNewAttendeeForm() {
$("#SiteIDs").data("kendoMultiSelect").value("0");
$("#JobTitle").val('');
$("#AttendeeIDs").data("kendoMultiSelect").value("0");
}
function onAttendeeDataBoundPCR1() {
//Selects all edit buttons
var grid = $("#PCRB1Attendees").data("kendoGrid");
var gridData = grid.dataSource.view;
}
function onAttendeeDataBoundPCR2() {
//Selects all edit buttons
var grid = $("#PCRB2Attendees").data("kendoGrid");
var gridData = grid.dataSource.view;
}
function onAttendeeDataBoundPCR3() {
//Selects all edit buttons
var grid = $("#PCRB3Attendees").data("kendoGrid");
var gridData = grid.dataSource.view;
}
function ShowEditAttendeePCR1(e) {
EditAttendee(e, 'PCRB1Attendees')
}
function ShowEditAttendeePCR2(e) {
EditAttendee(e, 'PCRB2Attendees')
}
function ShowEditAttendeePCR3(e) {
EditAttendee(e, 'PCRB3Attendees')
}
function EditAttendee(e, origin) {
var temAttendee = "";
var temLocation = "";
var grid = $("#" + origin).getKendoGrid();
var dataItem = grid.dataItem($(e.currentTarget).closest("tr"));
currentAttendeeID = dataItem.ID;
//alert(dataItem.JobTitle);
//current
//$("#SiteIDs").data("kendoMultiSelect").value("");
//$("#AttendeeIDs").data("kendoMultiSelect").value("");
if (dataItem.AttendeeName != null) {
temAttendee = dataItem.AttendeeName.split(',');
var attValues = new Array();
for (i in temAttendee) {
attValues[i] = temAttendee[i]
}
}
//$("#JobTitle").data("kendoMultiSelect").value(dataItem.JobTitle);
document.getElementById('JobTitle').value = dataItem.JobTitle;
$("#AttendeeIDs").data("kendoMultiSelect").value(dataItem.AttendeeID);
if (dataItem.Location != null) {
temLocation = dataItem.Location.split(',');
var locValues = new Array();
for (i in temLocation) {
locValues[i] = temLocation[i]
}
}
$("#SiteIDs").data("kendoMultiSelect").value(locValues);
//var attendee = $("#AttendeeIDs").kendoMultiSelect().data("kendoMultiSelect");
//var site = $("#SiteIDs").kendoMultiSelect().data("kendoMultiSelect");
//var att = site.value(dataItem.AttendeeName) ;
//site.value(dataItem.Location);
e.preventDefault();
document.getElementById('OriginPCR').value = origin;
$("#AttendeeForm").modal('show');
}
$("#SaveAttendee").on('click', function (e) {
var originForm = document.getElementById('OriginPCR').value;
var currentPCR = document.getElementById("PCRNo").value;
console.log('test');
console.log(attendeeOperation);
//if (currentAttendeeID === "" || currentAttendeeID === 0) {
// SaveNewAttendee();
// return;
//}
var attendee = $("#AttendeeIDs").data("kendoMultiSelect").value();
//var attendeeID = GetUserIDByDisplayName(attendee);
//alert(attendeeID);
//var dataSource = attendee.dataSource;
//var attendeeID = dataSource.getByUid(attendee.select().attr("AttendeeID"));
//var attendeeName = $("#AttendeeIDs").data("kendoMultiSelect").value();
//alert(attendeeID);
//alert(attendee);
//var attendeeID = $("#AttendeeIDs").data.val
//alert(attendee);
//var title = $("#JobTitle").value();
var title = document.getElementById('JobTitle').value;
var site = $("#SiteIDs").data("kendoMultiSelect").value();
if (attendee == "Select" || site == "Select") {
alert("Please select value for Attendee/Site");
return;
}
if (attendeeOperation == 'add') {
$.ajax({
url: "/ChangeControl/InsertPCRBAttendee?pcrId="+currentPCR+"&attendeeId=" + attendee + "&jobTitle=" + title + "&siteName=" + site,
//url:url,
type: "POST",
datatype: "json",
//contentType: "application/json; charset=utf-8",
//data:
// {
// id: currentAttendeeID,
// attendeeName: $("#AttendeeIDs").data("kendoMultiSelect").value(),
// siteName: $("#SiteIDs").data("kendoMultiSelect").value()
// },
success: function (data) {
var grid = $("#" + originForm).data("kendoGrid");
var dataSourcePCRID = 0;
if (originForm == 'PCRB1Attendees') {
dataSourcePCRID = @Model.PCR1ID;
grid.dataSource.read($("@Model.PCR1ID").val());
}
if (originForm == 'PCRB2Attendees') {
dataSourcePCRID = @Model.PCR2ID;
grid.dataSource.read($("@Model.PCR2ID").val());
}
if (originForm == 'PCRB3Attendees') {
dataSourcePCRID = @Model.PCR3ID;
grid.dataSource.read($("@Model.PCR3ID").val());
}
$("#AttendeeForm").modal("hide");
},
error: function (result) {
alert("Failed " + result);
$("#AttendeeForm").modal("hide");
}
});
attendeeOperation = '';
}
else {
$.ajax({
url: "/ChangeControl/UpdatePCRBAttendee?id=" + currentAttendeeID + "&attendeeId=" + attendee + "&jobTitle=" + title + "&siteName=" + site,
//url:url,
type: "POST",
datatype: "json",
//contentType: "application/json; charset=utf-8",
//data:
// {
// id: currentAttendeeID,
// attendeeName: $("#AttendeeIDs").data("kendoMultiSelect").value(),
// siteName: $("#SiteIDs").data("kendoMultiSelect").value()
// },
success: function (data) {
var grid = $("#" + originForm).data("kendoGrid");
var dataSourcePCRID = 0;
if (originForm == 'PCRB1Attendees') {
dataSourcePCRID = @Model.PCR1ID;
grid.dataSource.read($("@Model.PCR1ID").val());
}
if (originForm == 'PCRB2Attendees') {
dataSourcePCRID = @Model.PCR2ID;
grid.dataSource.read($("@Model.PCR2ID").val());
}
if (originForm == 'PCRB3Attendees') {
dataSourcePCRID = @Model.PCR3ID;
grid.dataSource.read($("@Model.PCR3ID").val());
}
$("#AttendeeForm").modal("hide");
},
error: function (result) {
alert("Failed " + result);
$("#AttendeeForm").modal("hide");
}
});
attendeeOperation = '';
}
})
</script>
<script type="text/javascript">
var currentAttachmentID;
$("#btnSelectpart").on("click", function (e) {
e.preventDefault();
clearSourcePartsListBox();
clearSelectedPartsListBox();
setSelectedListBox();
$("#WIPPartForm").modal('show');
//}
})
function setSelectedListBox() {
innerHtml = '';
var selectedParts = $('#txtPartNumber').val().split(',')
for (i in selectedParts) {
//innerHtml += '<option value="' + selectedParts[i].trim() + '">' + selectedParts[i].trim() + '</option>';
}
$('#lstSelectedParts').append(innerHtml);
}
var clearSelectedPartsListBox = function () {
$('#lstSelectedParts').each(function () {
this.options.length = 0;
$(this)[0].options.length = 0;
});
$('#lstSelectedParts').each(function () {
this.options.length = 0;
$(this)[0].options.length = 0;
});
}
var clearSourcePartsListBox = function () {
$("#txtSearch").val('');
$('#lstParts').each(function () {
this.options.length = 0;
$(this)[0].options.length = 0;
});
$('#lstSelectedParts').each(function () {
this.options.length = 0;
$(this)[0].options.length = 0;
});
}
$("#jqxButtonSearchParts").on('click', function displayParts() {
var searchText = ($("#txtSearch").val());
var url = "/LotTraveler/SearchParts";
$.ajax({
url: url,
type: "GET",
datatype: "json",
data: {
searchText: searchText
},
success: function (data) {
var tempdata;
var part;
$.each(data, function (index, value) {
//alert(value);
tempdata = value.split('~');
part = tempdata[0];
$('#lstParts').append($('<option>').text(part).val(value));
});
},
error: function (result) {
alert("Failed " + result);
}
});
});
$('#jqxButtonAddParts').on('click', function (e) {
var data;
var innerHtml;
e.preventDefault();
$("#lstParts option:selected").each(function () {
var optionVal = $(this).text().trim();
var exists = false;
$('#lstSelectedParts option').each(function () {
if (this.value.trim() == optionVal.trim()) {
exists = true;
}
});
if (!exists) {
innerHtml += '<option value="' + optionVal + '">' + optionVal + '</option>';
}
});
$("#lstSelectedParts").append(innerHtml);
});
$('#jqxButtonRemoveParts').on('click', function (e) {
e.preventDefault();
$("#lstSelectedParts option:selected").remove();
});
$("#SavePCRBActionItem").on('click', function () {
var PCRNo = document.getElementById("PCRNo").value;
var formName = document.getElementById("PCRFormName").value;
var objectData = ReturnPCRBActionObject(PCRNo);
var url = "";
if (actionItemOperation == 'Add') {
url = "/ChangeControl/InsertPCRBActionItem";
alert(actionItemOperation);
}
else {
url = "/ChangeControl/UpdatePCRBActionItem";
alert(actionItemOperation);
}
$.ajax({
url: url,
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(objectData),
success: function (data) {
var PCRBID = document.getElementById("PCRNo").value;
alert(PCRBID);
alert("Refresh " + formName);
var grid = $("#" + formName).data("kendoGrid");
grid.dataSource.read($(PCRBID).val());
$("#PCRBActionItemForm").modal("hide");
},
error: function (result) {
alert("Failed " + result);
$("#PCRBActionItemForm").modal("hide");
}
});
})
function ReturnPCRBActionObject(PCRBID) {
var resp = $("#ResponsibleIDs").data("kendoMultiSelect").value()
resp = resp.join();
if (actionItemOperation == 'Add') {
var objectData = {
ID: 0,
PCRBID: PCRBID,
ActionItemName: $("#txtActionItem").val(),
ResponsibleID: resp + ',',
Gating: $("#dropGating").data("kendoDropDownList").value() == '1' ? true : false,
DueDate: $("#txtDueDate").val()
}
}
else {
var objectData = {
ID: actionItemID,
ActionItemName: $("#txtActionItem").val(),
ResponsibleID: resp + ',',
Gating: $("#dropGating").data("kendoDropDownList").value(),
DueDate: $("#txtDueDate").val()
}
}
return objectData;
}
function GetUserIDByDisplayName(displayName) {
$.ajax({
url: '/ChangeControl/GetUserIDByDisplayName',
type: "POST",
contentType: "application/json; charset=utf-8",
data: "{'displayName':'" + displayName + "'}",
success: function (result) {
alert('success');
return result;
},
error: function (jqXHR, textStatus, errorThrown) {
alert("There was an error while saving the data.Please re-load the page and check if your changes were saved \n. If the changes were not saved please contact the system administrator");
}
})
}
$("#SavePart").on('click', function (e) {
e.preventDefault();
var parts = "";
var partcount = 0;
if ($('#lstSelectedParts option').length > 5) {
alert('Cannot add more than 5 parts. For more than 5 parts please attach a parts list')
return false;
}
$('#lstSelectedParts option').each(function () {
if (parts.length == 0)
parts = this.value;
else
parts += ', ' + this.value;
});
$("#txtPartNumber").val(parts);
$("#WIPPartForm").modal('hide');
})
$("#SaveCC").on('click', function (e) {
e.preventDefault();
var data = ReturnModelObject();
$.ajax({
url: '/ChangeControl/Edit',
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
success: function (result) {
alert(result);
if (result != "Successfully Saved") {
var url = '@Url.Action("Edit", "ChangeControl", new { issueID = "__id__" })';
url = url.replace('amp;', '');
window.location.href = url.replace('__id__', "@Model.PlanNumber");
}
},
error: function (jqXHR, textStatus, errorThrown) {
alert("There was an error while saving the data.Please re-load the page and check if your changes were saved \n. If the changes were not saved please contact the system administrator");
}
})
return false;
})
function ReturnModelObject() {
//alert($("#IsRadhard").data("kendoDropDownList").value())
var _PlanNumber = "@Model.PlanNumber";
var _Title = $("#txtTitle").val();
var _ChangeLevel = $("#ChangeLevel").data("kendoDropDownList").value();
var _IsITAR = $("#IsITAR").data("kendoDropDownList").value();
//var _IsRadhard = $("#IsRadhard").data("kendoDropDownList").value();
//var _IsMedical = $("#IsMedical").data("kendoDropDownList").value();
//var _IsAutomotive = $("#IsAutomotive").data("kendoDropDownList").value();
var _ReasonForChange = $("#txtReasonForChange").val();
var _ChangeDescription = $("#txtChangeDescription").val();
//var _ToolTypes = $("#txtToolTypes").val();
//var _Notes = $("#txtNotes").val();
//var _GenerationIDs = $("#GenerationIDs").data("kendoMultiSelect").value();
//var _LogisticsIDs = $("#LogisticsIDs").data("kendoMultiSelect").value();
//var _ProcessIDs = $("#ProcessIDs").data("kendoMultiSelect").value();
//var _PartNumbers = $("#txtPartNumber").val();
var objecData = {
PlanNumber: "@Model.PlanNumber",
Title: $("#txtTitle").val(),
ChangeLevel: $("#ChangeLevel").data("kendoDropDownList").value(),
IsITAR: $("#IsITAR").data("kendoDropDownList").value(),
//IsRadhard: $("#IsRadhard").data("kendoDropDownList").value(),
//IsMedical: $("#IsMedical").data("kendoDropDownList").value(),
//IsAutomotive: $("#IsAutomotive").data("kendoDropDownList").value(),
ReasonForChange: $("#txtReasonForChange").val(),
ChangeDescription: $("#txtChangeDescription").val(),
//ToolTypes: $("#txtToolTypes").val(),
//Notes: $("#txtNotes").val(),
//GenerationIDs: $("#GenerationIDs").data("kendoMultiSelect").value(),
//LogisticsIDs: $("#LogisticsIDs").data("kendoMultiSelect").value(),
//ProcessIDs: $("#ProcessIDs").data("kendoMultiSelect").value(),
//PartNumbers: $("#txtPartNumber").val()
}
return objecData;
}
function UploadCCAttachment(e) {
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
currentAttachmentID = dataItem.ID;
e.preventDefault();
$("#WinAttachDocuments").modal('show');
}
function DownloadCCAttachment(e) {
e.preventDefault();
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var fileGUID = dataItem.FileGUID;
var attachmentID = dataItem.AttachmentID;
if (fileGUID != null) {
window.location = '/ChangeControl/DownloadCCFile?fileGuid=' + fileGUID + '&planNumber=' + "@Model.PlanNumber";
}
else
{
alert('There is no document to be displayed');
}
}
function RefreshCCAttachmentsGrid() {
var grid = $("#ChangeControlAttachmentGrid").data("kendoGrid");
grid.dataSource.read($("@Model.PlanNumber").val());
}
function UploadCCAdditionalData(e) {
e.data =
{
attachID: currentAttachmentID
}
}
//$("#AddActionItem").on('click', function (e) {
//})
$("#CreateMeeting").on('click', function () {
if ("@Model.MeetingExist" == 1) {
alert("Cannot create a new meeting because there is an open meeting ")
return;
}
$.ajax({
url: "/ChangeControl/CreateMeeting",
type: "GET",
datatype: "json",
data: {
planNumber: ("@Model.PlanNumber")
},
success: function (result) {
window.location.href = "/ChangeControl/EditMeeting?meetingID=" + result;
},
error: function (result) {
alert("Failed " + result);
}
});
})
$("#GetMeeting").on('click', function (e) {
e.preventDefault()
var meetingid = $("#MeetingList").data("kendoDropDownList").value();
var val = $("#MeetingList").data("kendoDropDownList").value();
window.location.href = "/ChangeControl/EditMeeting?meetingID=" + meetingid;
})
function ProcessLinkBreaks(data) {
var template = "";
if (data != null) {
var tempValue = data.split('~');
for (var i = 0; i < tempValue.length; i++) {
var value = tempValue[i];
value = changeNewLine(value);
template += value + "<BR>" + " ";
}
}
return template;
}
function DisplayECNLinks(data) {
var template = "";
if (data != null) {
var tempValue = data.split('~');
for (var i = 0; i < tempValue.length; i++) {
var value = tempValue[i];
if (value != null) {
var newtempValue = value.split(',');
var newtemplate = "";
for (var j = 0; j < newtempValue.length; j++) {
newtemplate += "<a href='/ECN/Edit?IssueID=" + newtempValue[j].trim() + "'>" + newtempValue[j] + ", </a>" + " ";
}
}
template += newtemplate + "<BR>" + " ";
}
}
return template;
}
function DisplayLotDispoLinks(data) {
var template = "";
if (data != null) {
var tempValue = data.split('~');
for (var i = 0; i < tempValue.length; i++) {
var value = tempValue[i];
if (value != null) {
var newtempValue = value.split(',');
var newtemplate = "";
for (var j = 0; j < newtempValue.length; j++) {
newtemplate += "<a href='/LotDisposition/Edit?IssueID=" + newtempValue[j] + "'> " + newtempValue[j] + ", </a>" + " ";
}
}
template += newtemplate + "<BR>" + " ";
}
}
return template;
}
$("#CompleteCC").on('click', function () {
var allActionItemsClosed = true;
if (confirm("Are you sure you want to Complete the PCRB")) {
var vgrid = $("#MeetingActionItemsAll").data("kendoGrid");
//Getting grid items
var items = vgrid.dataSource.data();
for (i = 0; i < items.length; i++) {
var item = items[i];
if (item.ClosedStatus == false) {
allActionItemsClosed = false;
break;
}
}
if (allActionItemsClosed) {
if ("@Model.MeetingExist" == 0) {
var url = "/ChangeControl/CompleteCC?planNumber=@Model.PlanNumber";
$.ajax({
url: url,
type: "POST",
contentType: "application/json; charset=utf-8",
success: function (data) {
window.location.href = "/ChangeControl/Edit?issueID=@Model.PlanNumber";
},
error: function (result) {
alert("Failed " + result);
}
});
}
else
{
alert("Cannot close the PCRB because there is an Open Meeting");
}
}
else {
alert("Cannot close the PCRB because one or more Action Item/s are open");
}
}
})
$("#CancelCC").on('click', function () {
if (confirm("Are you sure you want to Cancel the PCRB")) {
var url = '/ChangeControl/CancelCC?planNumber=' + "@Model.PlanNumber";
$.ajax({
url: url,
type: "POST",
contentType: "application/json; charset=utf-8",
success: function (data) {
window.location.href = "/ChangeControl/Edit?issueID=@Model.PlanNumber";
},
error: function (result) {
alert("Failed " + result);
}
});
}
})
function error_handler(e) {
if (e.errors) {
var message = "Errors:\n";
$.each(e.errors, function (key, value) {
if ('errors' in value) {
$.each(value.errors, function () {
message += this + "\n";
});
}
});
alert(message);
}
}
function onEdit(e) {
$(e.container).find("td:last").html("<a href='javascript: void(0)' class='abutton update' onclick='updateRow()' title='button update'>button update</a> " +
"<a href='javascript: void(0)' class='abutton cancel' onclick='cancelRow()' title='button cancel'>button cancel</a>");
}
function cancelRow() {
grid = $("#MeetingActionItemsAll").data("kendoGrid");
grid.cancelRow();
}
function editRow(element) {
grid = $("#MeetingActionItemsAll").data("kendoGrid");
grid.editRow($(element).closest("tr"));
}
function updateRow() {
grid = $("#MeetingActionItemsAll").data("kendoGrid");
grid.saveRow();
}
function deleteAttachRow(element) {
grid = $("#ChangeControlAttachmentGrid").data("kendoGrid");
grid.removeRow($(element).closest("tr"));
}
function onAttachEdit(e) {
$(e.container).find("td:last").html("<a href='javascript: void(0)' class='abutton update' onclick='updateAttachRow()' title='button update'>button update</a> " +
"<a href='javascript: void(0)' class='abutton cancel' onclick='cancelAttachRow()' title='button cancel'>button cancel</a>");
}
function cancelAttachRow() {
grid = $("#ChangeControlAttachmentGrid").data("kendoGrid");
grid.cancelRow();
}
function editAttachRow(element) {
grid = $("#ChangeControlAttachmentGrid").data("kendoGrid");
grid.editRow($(element).closest("tr"));
}
function updateAttachRow() {
grid = $("#ChangeControlAttachmentGrid").data("kendoGrid");
grid.saveRow();
}
//==============================================================================================================================
function UploadActionItemAttachment(e) {
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
currentAttachmentID = dataItem.ID;
e.preventDefault();
$("#WinAttachActionItemDocuments").modal('show');
}
function DownloadActionItemAttachment(e) {
e.preventDefault();
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var fileGUID = dataItem.FileGUID;
var attachmentID = dataItem.AttachmentID;
if (fileGUID != null) {
window.location = '/ChangeControl/DownloadActionItemFile?fileGuid=' + fileGUID + '&planNumber=' + "@Model.PlanNumber";
}
else
{
alert("There is no Attachment to display ")
}
}
function RefreshActionItemAttachmentsGrid() {
var grid = $("#MeetingActionItemsAll").data("kendoGrid");
grid.dataSource.read($("@Model.PlanNumber").val());
}
function UploadActionItemAdditionalData(e) {
e.data =
{
attachID: currentAttachmentID
}
}
$("#PCRBList").on('click', function () {
var url = '@Url.Action("ChangeControlList", "Home")';
window.location = url;
})
$(window).bind("beforeunload", function () {
//return confirm("Do you really want to close?");
//alert("unload");
$.ajax({
url: "/ChangeControl/ReleaseLockOnDocument",
type: "GET",
datatype: "json",
data: {
planNumber: ("@Model.PlanNumber")
},
success: function () {
},
error: function (result) {
alert("Failed " + result);
}
});
})
@*function IdleTimeout() {
//window.location = logoutUrl;
var url = '@Url.Action("ChangeControl", "Home")';
window.location.href = url;
}*@
function onMeetingActionItemsAll(e) {
var grid = $("#MeetingActionItemsAll").data("kendoGrid");
//grid.tbody.find("tr[role='row']").each(function () {
// var model = grid.dataItem(this);
// //alert(model.FileGUID)
// if (model.FileGUID == null) {
// $(this).find(".k-grid-customCommand").addClass("k-state-disabled");
// }
//});
var gridData = grid.dataSource.view();
for (var i = 0; i < gridData.length; i++) {
var currentUid = gridData[i].uid;
//alert(currentUid);
if (gridData[i].FileGUID == null) {
var currenRow = grid.table.find("tr[data-uid='" + currentUid + "']");
var editButton = $(currenRow).find(".k-grid-customCommand").addClass("k-state-disabled");
//var deleteButton = $(currenRow).find(".k-grid-delete");
alert(editButton);
editButton.hide();
//deleteButton.hide();
}
}
}
function changeNewLine(text) {
if (text != null) {
var regexp = new RegExp('\n', 'g');
return text.replace(regexp, '<br>');
}
else
return '';
}
</script>