Created
April 28, 2018 17:11
-
-
Save niniyzni/4faea080e53eb0c7155ddd8fb635a46c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { Component, ElementRef, Inject, OnInit, ViewChild } from '@angular/core'; | |
import { sportsUService } from '../../services/sportsu.service'; | |
import { ProgressCircle } from '../shared/progress/progress-circle'; | |
import { Router } from '@angular/router'; | |
import { NetworkCarousel } from '../shared/content/network-carousel'; | |
import { KendoGridComponent } from '../grid/grid.component'; | |
//import { GridHeaderContext } from '../shared/gridHeaderContext/gridHeaderContext'; | |
//import { ValidateGridPopup } from './bulkcrete-validate-popup'; | |
import { playerConflictGridPopup } from './player-conflict-popup'; | |
import { IMultiSelectSettings } from '../common/multiselect-dropdown'; | |
@Component({ | |
selector: 'playerBulkUpdate', | |
templateUrl: "./player-bulk-update.html", | |
}) | |
export class playerBulkUpdate { | |
private selectedNetworkArr: any = { networkNo: -1, }; | |
private networkTempArray; | |
private networkObj = { "Label": "Networks", isHintShow: false }; | |
private playerBulkUpdateVal: any = { | |
networkNo: 237, | |
startDate: new Date(), | |
weekCount: 1, | |
endDate: '', | |
programName: '', | |
titleName: '', | |
player: '', | |
action: "GO", | |
addOns: [ | |
'player_NETWORKS' | |
] | |
} | |
private playerBulkUpdateLovs: any = { | |
playerNetworks: '' | |
} | |
//private count1:any; | |
public count1: number = 0; | |
private createPreferencesPopUpWindow; | |
private dynamicPropertyName: string; | |
private notThreeDotDisable = false; | |
private playerCheckBox: any = true; | |
public saveEnable = true; | |
private checkedRowsUID = []; | |
public multipleOf3 = false; | |
private totalAiringsCount = 0; | |
private isDisplayEdit = false; | |
private contextTitleBtn = false; | |
public contextDisableAllOpt = false; | |
public columnEditableOpt = false; | |
/*for Preferences */ | |
private tempset; | |
private metaAggregateCopy; | |
private preferenceData: any = []; | |
private preferenceName; | |
private disablePrefAddEdit = false; | |
private disablePrefSave = true; | |
private prefSelectedName: any = ''; | |
private gridDataAll: any = []; | |
public goBtnDataLossPopup = false; | |
private commonCastStaffData = {}; | |
private selectedRowsUID = []; | |
private selectAll: boolean; | |
private count: boolean = true; | |
private footerDisplay: boolean = false; | |
private isGoDisable: boolean = false; | |
private isValidDates: boolean = true; | |
private isValidTimes: boolean = true; | |
private bulkKeys = []; | |
private ccRadioFlags = { | |
"locked": "editable", | |
"startDate": "editable", | |
"startTime": "editable", | |
"blockDuration": "editable", | |
"endTime": "editable", | |
"programName": "editable", | |
"programType": "editable", | |
"playerStartTime": "editable", | |
"actualEndTime": "editable", | |
"actualDuration": "editable", | |
"masterSeries": "editable", | |
"version": "editable", | |
"schedulingType": "editable", | |
"format": "editable", | |
"notes": "editable" | |
}; | |
private dataSourceVal = []; | |
private kendocommand = { | |
edit: { createAt: "bottom" }, | |
group: false, | |
reorder: true, | |
resize: true, | |
sort: true, | |
filter: { mode: "row,menu" }, | |
autoBind: false, | |
pager: { messages: { display: "Showing {0} to {1} of {2} entries" } }, | |
model: {}, | |
columns: [], | |
pagesize: 50, | |
//getComponentUrl:"admin/v1/lockedItems", | |
saveStatus: false, | |
excelfileUidName: "ViewUnlockExport", | |
contextMenuId: "context-SchedulesListEvents", | |
excelFileName: { | |
fileName: "ScheduleListExport", | |
allPages: true | |
}, | |
change: function (e) { | |
$('tr').find('[type=checkbox]').prop('checked', false); | |
$('tr.k-state-selected').find('[type=checkbox]').prop('checked', true); | |
}, | |
searchFields: [] | |
}; | |
private playerDataAPI: any = []; | |
private colHeaderMenuArr = { | |
"columnMenu": { | |
"gridId": "", | |
"menu": { | |
"scheduleName": "Schedule Name", | |
"schedItemNo": "Schedule Item", | |
"startDate": "Schedule Item #", | |
"dayOfWeek": "Start Date", | |
"startTime": "Start Time", | |
"endTime": "End Time", | |
"feedName": "Feed Name", | |
"programName": "Program Name", | |
"actualStartTime": "Title #", | |
"actualEndTime": "Title Name", | |
"actualDuration": "Material ID", | |
"masterSeries": "Version Network", | |
"episode": "player Flag", | |
"season": "player Date", | |
"playerStartTime": "player Start Time", | |
"playerDuration": "player Duration", | |
"playerEndTime": "player End Time", | |
"playerSource": "player Source/Provider", | |
"notes": "player Notes", | |
"hd": "HD", | |
"record": "Record", | |
"bug": "Bug", | |
"ticker": "Ticker", | |
"addedUser": "User Added", | |
"dateAdded": "Date Added", | |
"updatedUser": "User Updated", | |
"dateUpdated": "Date Updated" | |
} | |
} | |
}; | |
private timeInterval = 15; | |
private bulkCreateVal: any = { | |
networkNo: -1, | |
feeds: [], | |
scheduleIds: [], | |
masterSeries: '', | |
programName: '', | |
programTypeObj: { baseType: 'E' }, | |
startDate: new Date(), | |
weekCount: 1, | |
endDate: '', | |
startTime: '', | |
blockDuration: '', | |
endTime: '', | |
days: [0, 1, 2, 3, 4, 5, 6], | |
closedCaptioning: false, | |
des: false, | |
marketBlackOut: false, | |
actualStartTime: '', | |
actualDuration: '', | |
actualEndTime: '', | |
scheduleType: '', | |
tveStatus: '', | |
playerStartTime: '', | |
playerEndTime: '', | |
playerDuration: '', | |
playerDate: '', | |
playerSource: '', | |
player: false, | |
bug: '', | |
ticker: '', | |
desNetworkObj: '', | |
sdDelivery: '', | |
HdDelivery: '', | |
Dbs: '', | |
action: "GO", | |
unlockSchedules: [], | |
networkStartSeconds: "" | |
} | |
private multiSettings: IMultiSelectSettings = { | |
checkedStyle: 'glyphicon', | |
showCheckAll: true, | |
showUncheckAll: true, | |
dynamicTitleMaxItems: 1000, | |
isAll: false | |
}; | |
private scheduleSelect = { | |
data: [], | |
texts: { defaultTitle: '' }, | |
selectSettings: this.multiSettings | |
}; | |
private getGridColumn: any = { | |
selectedRowId: null, | |
selectedRowIndex: null, | |
getColumns: [], | |
selectedRow: null | |
}; | |
// private bulkCreateValplayer: any = { | |
// networkNo: 241, | |
// startDate: "04/10/2018", | |
// endDate: "04/24/2018", | |
// addOns: [ | |
// "player_NETWORKS" | |
// ] | |
// } | |
private bulkCreateValplayer: any = { | |
//networkNo: 241, | |
networkNo: 237, | |
startDate: new Date(), | |
endDate: '', | |
addOns: [ | |
'player_NETWORKS' | |
], | |
unlockSchedules: [] | |
} | |
private bulkGridData; | |
private saveBtnEnableDisable = true; | |
private totalUpdates = 0; | |
private totalDeletes = 0; | |
private disableNoAirings = true; | |
private resetPreferenceContext; | |
private goBtnEnableDisable: any = true; | |
// public setInstance(historyPopup : any,gridkendo : any,networkCarousel : any,router : any,financialAmortScheduleDetails :any,kendoDialog : any,cableHistoryPopup : any, gridHeaderMenu? : any){ | |
public setInstance(gridHeaderMenu?: any) { | |
// this.historyPopup = historyPopup; | |
// this.gridkendo = gridkendo; | |
// this.historyPopup.gridkendo = gridkendo; | |
// this.networkCarousel = networkCarousel; | |
// this.router = router; | |
// this.financialAmortScheduleDetails = financialAmortScheduleDetails; | |
// this.financialAmortScheduleDetails.gridkendo = gridkendo; | |
// this.cableHistoryPopup = cableHistoryPopup; | |
// this.gridHeaderMenu = gridHeaderMenu; | |
} | |
@ViewChild(KendoGridComponent) private gridkendo: KendoGridComponent; | |
@ViewChild(ProgressCircle) private progress: ProgressCircle; | |
@ViewChild(NetworkCarousel) private networkCarousel: NetworkCarousel; | |
//@ViewChild(GridHeaderContext) public gridHeaderMenu: GridHeaderContext; | |
//@ViewChild(ValidateGridPopup) private validateGridPopup: ValidateGridPopup; | |
@ViewChild(playerConflictGridPopup) private playerConflictGridPopup: playerConflictGridPopup; | |
constructor(private elementRef: ElementRef, private router: Router, private sportsuService: sportsUService, ) { } | |
public columns = [ | |
{ airingProperty: "Context Row", airingPropertyParms: "contextRow", readOnly: false, editable: true, editableDisabled: false, default: false, visible: true }, | |
{ airingProperty: "gridCheck", airingPropertyParms: "gridCheck", readOnly: false, editable: true, editableDisabled: false, default: false, visible: true }, | |
{ airingProperty: "gridType", airingPropertyParms: "gridType", readOnly: false, editable: true, editableDisabled: false, default: false, visible: true }, | |
{ airingProperty: "Schedule Name", airingPropertyParms: "scheduleName", readOnly: false, editable: true, editableDisabled: false, default: false, visible: true }, | |
{ airingProperty: "Schedule Item #", airingPropertyParms: "schedItemNo", readOnly: false, editable: true, editableDisabled: false, default: false, visible: true }, | |
{ airingProperty: "Start Date", airingPropertyParms: "scheduleStartDate", readOnly: false, editable: true, editableDisabled: false, default: false, visible: true } | |
//, | |
// { airingProperty: "Start Time", airingPropertyParms: "scheduleStartTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "End Time", airingPropertyParms: "scheduleEndTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Feed Name", airingPropertyParms: "feedName", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Program Name", airingPropertyParms: "programName", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Title #", airingPropertyParms: "titleNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Title Name", airingPropertyParms: "titleName", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Material ID", airingPropertyParms: "matId", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Version Network", airingPropertyParms: "versionNetwork", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Flag", airingPropertyParms: "player", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Date", airingPropertyParms: "playerDate", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Start Time", airingPropertyParms: "playerStartTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Duration", airingPropertyParms: "playerDuration", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player End Time", airingPropertyParms: "playerEndTime", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "player Source/Provider", airingPropertyParms: "playerSource", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Notes", airingPropertyParms: "playerNotes", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "HD", airingPropertyParms: "hd", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Record", airingPropertyParms: "record", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Bug", airingPropertyParms: "bug", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Ticker", airingPropertyParms: "ticker", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "User Added", airingPropertyParms: "addedUser", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Date Added", airingPropertyParms: "dateAdded", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "User Updated", airingPropertyParms: "updatedUser", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Date Updated", airingPropertyParms: "dateUpdated", readOnly: true, editable: false, editableDisabled: true } | |
]; | |
ngOnInit() { | |
// this.gridHeaderMenu.gridkendo = this.gridkendo;//assign kendo obj to gridHeaderMenu component | |
//this.setInstance(this.historyPopup,this.gridkendo,this.networkCarousel,this.router,this.financialAmortScheduleDetails,this.kendoDialog,this.cableHistoryPopup, this.gridHeaderMenu); | |
// this.setInstance(this.gridHeaderMenu); | |
let that = this; | |
this.loadView(); | |
this.resetPreferenceContext = jQuery.extend(true, {}, this.columns); | |
this.bulkContextMenu(); | |
/*---Load Default Aggregators----*/ | |
this.loadAggregators(this.selectedNetworkArr.networkNo); | |
that.bulkKeys = ["scheduleName", "schedItemNo", "startDate", "dayOfWeek", "startTime", "blockDuration", "endTime", "programName", "programType", "actualStartTime", "actualEndTime", "actualDuration", "masterSeries", "titleName", "episode", "season", "version", "schedulingType", "format", "notes", "hd", "record", "scheduleItem", "title", "addedUser", "dateAdded", "updatedUser", "dateUpdated"]; | |
$('kendo-grid-template').on('change', '.unlockCheckbox', function () { | |
let rowStat = $(this).prop('checked'); | |
if (rowStat) { | |
that.selectedRowsUID.push($(this).closest('tr').attr('data-uid')); | |
// $(this).closest('tr').addClass("k-state-selected"); | |
$(this).closest('tr').attr('checked', "true"); | |
} else { | |
//$(this).closest('tr').removeClass("k-state-selected"); | |
$(this).closest('tr').attr('checked', "false"); | |
let currentUid = that.selectedRowsUID.indexOf($(this).closest('tr').attr('data-uid')); | |
that.selectedRowsUID.splice(currentUid, 1); | |
} | |
}); | |
$("#KendoGridView").on('change', '#unlockCheck', function () { | |
console.log(" unlockCheck checkbox here--->"); | |
that.selectAll = $('#unlockCheck').prop('checked'); | |
var checkboxes: any = document.getElementsByClassName('gridCheckBox'); | |
let grid = that.gridkendo.getGrid(); | |
var gridData = grid.dataSource.data(); | |
if (that.selectAll) { | |
for (var i = 0; i < gridData.length; i++) { | |
gridData[i].gridCheck = true; | |
} | |
for (var i = 0; i < checkboxes.length; i++) { | |
checkboxes[i].checked = true; | |
} | |
$('.unlockCheckbox').prop('checked', 'checked'); | |
let grid = that.gridkendo.getGrid(); | |
let gridlen = grid.dataSource.data(); | |
that.totalAiringsCount = gridlen.length; | |
for (let i = 0; i < gridlen.length; i++) { | |
that.selectedRowsUID.push(gridlen[i].uid); | |
} | |
that.selectedRowsUID.length != 0; | |
} else { | |
for (var i = 0; i < gridData.length; i++) { | |
gridData[i].gridCheck = false; | |
} | |
for (var i = 0; i < checkboxes.length; i++) { | |
checkboxes[i].checked = false; | |
} | |
that.totalAiringsCount = 0; | |
$('.unlockCheckbox').removeAttr('checked'); | |
$('tr').removeClass("k-state-selected"); | |
that.selectAll = false; | |
that.selectedRowsUID = []; | |
} | |
}); | |
$("#playerStartTime").kendoTimePicker({ | |
format: "h:mm:ss tt", | |
interval: that.timeInterval, | |
parseFormats: ["HH:mm:ss"], | |
min: new Date(2000, 0, 1, 5, 0, 0), | |
max: new Date(2000, 0, 1, 5, 0, 0), | |
open: function () { | |
that.onTimeWidth('playerStartTime', that.timeInterval); | |
}, | |
change: function () { | |
} | |
}); | |
$("#kgrid").on("mousedown", ".k-grid-content tbody tr[role='row']:not(.rowDisabled)", function (e: any) { | |
e.stopPropagation(); | |
if (e.which === 3) { | |
let cellIndex = e.target.cellIndex; | |
if (cellIndex == undefined) { | |
cellIndex = $('#KendoGridView .k-grid-content td.k-edit-cell').index(); | |
} | |
let gview = that.gridkendo.getGrid(); | |
$("tr").removeClass("k-state-selected"); | |
$(this).addClass("k-state-selected"); | |
let selectedRow = gview.dataItem($(this)); | |
let selectRow = gview.select(); | |
let gridrow = gview.dataItem(selectRow); | |
that.getGridColumn.getColumns = gview.columns; | |
//that.getGridColumn.selectedRowIndex = cellIndex + 1; | |
that.getGridColumn.selectedRowIndex = cellIndex; | |
that.getGridColumn.selectedRow = selectedRow; | |
that.getGridColumn.selectedRowId = gridrow; | |
} | |
}); | |
$("#context-menu").kendoContextMenu({ | |
target: "#KendoGridView", | |
filter: ".k-grid-content tbody tr[role='row']", | |
select: function (e) { | |
// handle event | |
console.log(e) | |
let selectedMenuItem = $(e.item).children(".k-link").text(); | |
console.log(selectedMenuItem); | |
console.log($(e.item).innetrText); | |
if (selectedMenuItem == "Apply Episodes") { | |
// that.openEpisode(that.getGridColumn.selectedRowId); | |
} else if (selectedMenuItem == "Apply Versions") { | |
// that.bulkApplyVersion(that.getGridColumn.selectedRowId); | |
} else if (selectedMenuItem == "Add New") { | |
// that.addNewRows(that.getGridColumn.selectedRowId); | |
} else if (selectedMenuItem == "Remove") { | |
// that.removeRows("Remove"); | |
} else if (selectedMenuItem == "Unscheduled Title") { | |
// that.unScheduleTitle("Unscheduled Title"); | |
} else if (selectedMenuItem == "Open Title") { | |
// that.openTitle(that.getGridColumn.selectedRowId); | |
} else { | |
let selectedColumn = that.getGridColumn.getColumns[that.getGridColumn.selectedRowIndex]; | |
let field = selectedColumn.field; | |
let value = that.getGridColumn.selectedRow[selectedColumn.field]; | |
that.applyValueToAllRow(field, value); | |
} | |
}, | |
activate: function (e) { }, | |
open: function (e) { | |
//setTimeout(function(){ | |
if (that.getGridColumn.getColumns.length && that.getGridColumn.getColumns[that.getGridColumn.selectedRowIndex] && that.getGridColumn.getColumns[that.getGridColumn.selectedRowIndex].title) { | |
that.dynamicPropertyName = that.getGridColumn.getColumns[that.getGridColumn.selectedRowIndex].title; | |
let columnField = that.getGridColumn.getColumns[that.getGridColumn.selectedRowIndex].field; | |
if (columnField == 'userAddedName') { | |
columnField = 'userAdded' | |
} | |
if (columnField == 'userUpdatedName') { | |
columnField = 'userUpdated' | |
} | |
let grid = that.gridkendo.getGrid(); | |
let editable = grid.dataSource.options.schema.model.fields[columnField].editable; | |
if (editable == true) { | |
that.columnEditableOpt = false; | |
} else { | |
that.columnEditableOpt = true; | |
} | |
} else { | |
that.dynamicPropertyName = ''; | |
that.contextDisableAllOpt = true; | |
} | |
if (that.getGridColumn.selectedRowId != undefined && (that.getGridColumn.selectedRowId.titleNo == null || that.getGridColumn.selectedRowId.titleNo == "")) { | |
that.contextTitleBtn = true; | |
} else { | |
that.contextTitleBtn = false; | |
} | |
that.hideContext(); | |
$(".context-menu").parent().css({ 'width': 'auto !important' }) | |
// },100); | |
} | |
}); | |
// let getGridColumn: any = { | |
// selectedRowIndex: null, | |
// getColumns: [], | |
// selectedRow: null | |
// }; | |
$("#KendoGridView tr.rowDisabled").on("mousedown contextmenu", function (e) { | |
e.stopPropagation(); | |
var contextMenu1 = $("#context-menu").data("kendoContextMenu"); | |
if (contextMenu1) { | |
contextMenu1.close($("#context-menu")); | |
} | |
return true; | |
}); | |
// row col context menu | |
// $("#context-menu").kendoContextMenu({ | |
// target: "#KendoGridView", | |
// filter: ".k-grid-content tbody tr[role='row']", | |
// select: function (e) { | |
// // handle event | |
// }, | |
// activate: function (e) { }, | |
// open: function (e) { | |
// if (getGridColumn.getColumns.length && getGridColumn.getColumns[getGridColumn.selectedRowIndex + 1] && getGridColumn.getColumns[getGridColumn.selectedRowIndex + 1].title) { | |
// that.dynamicPropertyName = getGridColumn.getColumns[getGridColumn.selectedRowIndex + 1].title; | |
// that.notThreeDotDisable = true; | |
// } else { | |
// } | |
// } | |
// }); | |
// $("#KendoGridView tr.rowDisabled").on("mousedown contextmenu", function (e) { | |
// e.stopPropagation(); | |
// var contextMenu1 = $("#context-menu").data("kendoContextMenu"); | |
// if (contextMenu1) { | |
// contextMenu1.close($("#context-menu")); | |
// } | |
// return true; | |
// }); | |
// setTimeout(function () { | |
// $("#bulk-context-menu").kendoContextMenu({ | |
// target: "#KendoGridView .k-grid-header thead tr:nth-child(1)", | |
// animation: { | |
// open: { | |
// effects: "fadeIn" | |
// } | |
// } | |
// }); | |
// $('#bulk-context-menu').on('click', '.hideShowColumn', function (e) { | |
// e.stopPropagation(); | |
// }); | |
// }, 100); | |
setTimeout(function () { | |
$('#startTime_timeview li,#endTime_timeview li,#actualStartTime_timeview li,#actualEndTime_timeview li,#playerStartTime_timeview li,#playerEndTime_timeview li').css({ "float": "left", "width": 76, "font-size": "12px" }); | |
/*if(that.timeInterval==30){ | |
$('#startTime_timeview,#endTime_timeview,#actualStartTime_timeview,#actualEndTime_timeview,#playerStartTime_timeview,#playerEndTime_timeview').parent().css({"width":200}); | |
} else if(that.timeInterval==15){ | |
$('#startTime_timeview,#endTime_timeview,#actualStartTime_timeview,#actualEndTime_timeview,#playerStartTime_timeview,#playerEndTime_timeview').parent().css({"width":386}); | |
}else{ | |
}*/ | |
}, 100) | |
$("#KendoGridView tr.rowDisabled").on("mousedown contextmenu", function (e) { | |
e.stopPropagation(); | |
var contextMenu1 = $("#context-menu").data("kendoContextMenu"); | |
if (contextMenu1) { | |
contextMenu1.close($("#context-menu")); | |
} | |
return true; | |
}); | |
//playerFlagCheck | |
$(document).on('change', '#playerFlagCheck', function () { | |
if(this.checked){ | |
$('#editIconplayer').addClass("gridUpdateIcon"); | |
alert("I am inside if"); | |
}else{ | |
alert("I am inside else"); | |
if(!$('#editIconplayer').hasClass("gridUpdateIcon")){ | |
$('#editIconplayer').removeClass("gridUpdateIcon"); | |
} | |
} | |
}); | |
// $(document).on('load', '.unlockCheckbox', function () { | |
// //alert("querySelectorAlle--->" + document.querySelectorAll('.unlockCheckbox').length); | |
// //alert("I am inside change"); | |
// //$(this).parents('tr').find('td').eq(1).addClass("gridUpdateIcon"); | |
// }); | |
} | |
loadAggregators(networkNo) { | |
let data = {}; | |
this.progress.requestStart(); | |
this.sportsuService.getResponse('schedules/v1/playerbulkupdate/', 'get', data) | |
.subscribe(response => { | |
this.playerBulkUpdateLovs = response.data | |
this.setNetworks(response.data); | |
this.checkboxplayerFlag(response.data) | |
this.progress.requestEnd(); | |
}, | |
err => { | |
this.progress.requestEnd(); | |
}); | |
} | |
clearBtnClick() { | |
this.loadAggregators(-1); | |
//let response={"code":"S001","message":"Success","data":{"added":7,"updated":0,"deleted":7,"conflicts":[{"weekDay":"Wednesday","date":"04/11/2018","time":"10:00:00 AM","programName":"LAW & ORDER: SVU ","titleName":"ROCKABYE","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"},{"weekDay":"Thursday","date":"04/12/2018","time":"10:00:00 AM","programName":"CHICAGO P.D.","titleName":"WRONG SIDE OF THE BARS","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"},{"weekDay":"Friday","date":"04/13/2018","time":"10:00:00 AM","programName":"NCIS: LOS ANGELES (F)","titleName":"PURITY","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"},{"weekDay":"Saturday","date":"04/14/2018","time":"10:00:00 AM","programName":"NCIS (LUCKY DUCKY MARATHON)","titleName":"BLOWBACK","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"},{"weekDay":"Sunday","date":"04/15/2018","time":"10:00:00 AM","programName":"LAW & ORDER: SVU (NOTORIOUS S.V.U. MARATHON)","titleName":"ROOFTOP","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"},{"weekDay":"Monday","date":"04/16/2018","time":"10:00:00 AM","programName":"NCIS","titleName":"ENEMY COMBATANT","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"},{"weekDay":"Tuesday","date":"04/10/2018","time":"10:00:00 AM","programName":"NCIS ","titleName":"DEJA VU","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}]}} | |
} | |
goBtnPayload() { | |
let reqPayload; | |
reqPayload = jQuery.extend(true, {}, this.playerBulkUpdateVal); | |
reqPayload.startDate = kendo.toString(reqPayload.startDate, 'MM/dd/yyyy'); | |
reqPayload.endDate = kendo.toString(reqPayload.endDate, 'MM/dd/yyyy'); | |
return reqPayload; | |
} | |
goBtnClick() { | |
this.goBtnServiceCall(); | |
// let that = this; | |
// //if (that.bulkGridData.length > 0) { | |
// if (true) { | |
// let strMessage = 'Do you want to continue and loss existing changes?'; | |
// $('#commonPopup .kPopUpTitle').text('animal'); | |
// $("#commonPopup .kendoContent").text(strMessage); | |
// let dialogConfirm = $("#commonPopup").data("kendoWindow").center().open(); | |
// $("#popupOK").unbind().click(function () { | |
// that.goBtnServiceCall(); | |
// dialogConfirm.close(); | |
// }); | |
// $("#popupCancel").unbind().click(function () { | |
// dialogConfirm.close(); | |
// }); | |
// } else { | |
// that.goBtnServiceCall(); | |
// } | |
} | |
ObjectKeyChange(key1: any, key2: any, object: any): any { | |
return object != null ? object.map(function (obj) { | |
obj["id"] = obj[key1]; | |
obj["name"] = obj[key2]; | |
delete obj[key1]; | |
delete obj[key2]; | |
return obj; | |
}) : []; | |
} | |
getDeafultSchedule(schedules) { | |
let filterSchedules = schedules.filter(scheduleObj => scheduleObj.default === true); | |
let mapSchedules = filterSchedules.map((schedule) => { | |
return schedule.scheduleNo; | |
}) | |
this.scheduleSelect.data = this.ObjectKeyChange("schedItemNo", "scheduleName", schedules); | |
this.bulkCreateVal.scheduleIds = mapSchedules; | |
} | |
goBtnServiceCall() { | |
let that = this; | |
this.progress.requestStart(); | |
let reqPayload = this.goBtnPayload(); | |
// that.resetPreferenceContext = jQuery.extend(true, {}, this.bulkCreateLovs.changeColumns); | |
//that.resetPreferenceContext = jQuery.extend(true, {}, this.columns); | |
//console.log("reqPayload--->", reqPayload); | |
this.sportsuService.getResponse("schedules/v1/playerbulkupdate/", "post", reqPayload).subscribe(response => { | |
this.bulkCreateValplayer.unlockSchedules = jQuery.extend(true, [], this.bulkCreateVal.scheduleIds); | |
console.log("data--->" + response); | |
this.playerDataAPI = response.data.players; | |
this.gridDataLoad(); | |
this.lockedScheduleMsgShow(response.data.playerProps); | |
this.originalValueMethod(response.data.players); | |
this.progress.requestEnd(); | |
}, err => { this.progress.requestEnd(); }); | |
} | |
originalValueMethod(data) { | |
console.log("originalValueMethod originalValueMethod--->" + data); | |
return data; | |
} | |
getTabLevelSaveData(datasource: any, gridKey: any): any { | |
//get the new and the updated records | |
let currentData = datasource._data; | |
let records = []; | |
let TotalAmount = 0 | |
for (let i = 0; i < currentData.length; i++) { | |
if (currentData[i].amount) { | |
TotalAmount = TotalAmount + currentData[i].amount; | |
} | |
if (currentData[i].isNew()) { | |
//this record is new | |
this.dataPush(records, currentData[i], "Create"); | |
} else if (currentData[i].dirty) { | |
this.dataPush(records, currentData[i], "Update"); | |
} | |
} | |
//this records are deleted | |
for (let i = 0; i < datasource._destroyed.length; i++) { | |
this.dataPush(records, datasource._destroyed[i], 'Delete'); | |
} | |
let mergeObject = {}; | |
mergeObject['validate'] = true; | |
mergeObject['keyName'] = gridKey; | |
mergeObject['totalAmount'] = TotalAmount; | |
this.commonCastStaffData[gridKey] = records; | |
mergeObject['data'] = this.commonCastStaffData; | |
return mergeObject | |
} | |
dataPush(records, data, operationType): void { | |
data.operationType = operationType; | |
$.each(data, function (k, v) { | |
if (k.indexOf("FilterRowId") !== -1) { | |
delete data[k]; | |
} | |
}); | |
records.push(data.toJSON()); | |
} | |
saveGrid() { | |
let that = this; | |
let grid = that.gridkendo.getGrid(); | |
this.playerDataAPI = this.originalValueMethod("data"); | |
console.log("dirty Data", this.gridkendo.getTabLevelSaveData()); | |
// this.playerDataAPI; | |
// "updates": [ | |
// { | |
// "schedItemNo": 26113992, | |
// "player": "Y", | |
// "playerStartTime": "07:30 PM", | |
// "playerEndTime": "09:49 PM", | |
// "playerDuration": "02:19", | |
// "playerDate": "01/02/2017", | |
// "playerSource": 3903, | |
// "playerNotes": "Airs live, record for captioning gfoLL", | |
// "record": "Y", | |
// "hd": "Y", | |
// "bug": 3999, | |
// "ticker": 3478 | |
// }, | |
// this.progress.requestStart(); | |
//let gridData = { "networkStartSeconds": this.bulkCreateVal.networkStartSeconds, "schedItems": grid.dataSource.data() }; | |
// let gridData = { | |
// "networkStartSeconds": 21600, | |
// "schedItems": [{ | |
// "duplicateRow": false, | |
// "gridCheck": true, | |
// "removeType": false, | |
// "overlap": null, | |
// "schedItemNo": 0, | |
// "dayOfWeekNo": 2, | |
// "day": "Wednesday", | |
// "seqNo": 1, | |
// "scheduleNo": 89833, | |
// "scheduleName": "sports Sports Bay Area", | |
// "titleNo": null, | |
// "seriesNo": "", | |
// "titleVersionNo": null, | |
// "houseNo": "", | |
// "versionName": null, | |
// "versionLength": null, | |
// "formatName": null, | |
// "calPeriodNo": null, | |
// "schedCategoryNo": null, | |
// "schedProgTypeNo": null, | |
// "startTime": "08:00 AM", | |
// "endTime": "08:30 AM", | |
// "actualStartTime": "08:00 AM", | |
// "actualDuration": "00:30", | |
// "actualEndTime": "06:00 AM", | |
// "programStartTime": null, | |
// "programEndTime": null, | |
// "startDate": "04/18/2018", | |
// "endDate": "04/18/2018", | |
// "programName": "", | |
// "programLength": null, | |
// "programType": "", | |
// "noOfGridBlocks": null, | |
// "notableEventFlag": null, | |
// "specialEventFlag": null, | |
// "subnetBlock": null, | |
// "locked": null, | |
// "promoRun": null, | |
// "addedUser": null, | |
// "dateAdded": null, | |
// "updatedUser": null, | |
// "dateUpdated": null, | |
// "seasonNo": null, | |
// "feedNo": 37, | |
// "formatNo": "", | |
// "networkNo": 237, | |
// "manualChangeFlag": null, | |
// "crossPlatform": null, | |
// "translation": null, | |
// "longFormEventFlag": null, | |
// "nrcstitleNo": null, | |
// "listValue01": null, | |
// "listValue02": "", | |
// "listValue03": null, | |
// "listValue04": null, | |
// "listValue05": null, | |
// "dateTimeValue01": null, | |
// "textValue01": null, | |
// "listValue06": null, | |
// "isLockedFlag": null, | |
// "customFormatDescription": null, | |
// "player": false, | |
// "playerDate": "", | |
// "playerStartTime": "", | |
// "playerDuration": "", | |
// "playerEndTime": "", | |
// "playerSource": "", | |
// "playerNotes": null, | |
// "playerHDFlag": null, | |
// "playerRecordFlag": null, | |
// "record": false, | |
// "hd": false, | |
// "bug": "", | |
// "ticker": "", | |
// "network": null, | |
// "sddelivery": "", | |
// "hddelivery": "", | |
// "dbsspotbeam": "", | |
// "tvestatus": "", | |
// "titleName": null, | |
// "action": "Added", | |
// "seriesName": "", | |
// "contractName": null, | |
// "scheduleTypeNo": "", | |
// "distEpisodeID": null, | |
// "stereoFlag": null, | |
// "closeCaptionFlag": null, | |
// "commentSeq": null, | |
// "titleType": null, | |
// "desNetwork": "", | |
// "userAddedName": null, | |
// // "updatedUser": null, | |
// "titleOwnerNetwork": "", | |
// "tveRightPropertyNo": null, | |
// "multipleSelectedID": null, | |
// "seasonName": null, | |
// "commentNo": null, | |
// "commentText": "", | |
// "schedCategory": "", | |
// "schedProgType": "", | |
// "blockDuration": "00:30", | |
// "contractNo": null, | |
// "programCode": "", | |
// "scheduleDefinitionNo": "", | |
// "pgrating": null, | |
// "readyFlag": null, | |
// "alternateColor": null, | |
// "des": null, | |
// "vod": null, | |
// "closedCaptioning": null, | |
// "id": "" | |
// }] | |
// }; | |
// let gridData = { | |
// "networkNo": 237, | |
// "updates": [ | |
// { | |
// "schedItemNo": 26113992, | |
// "player": "Y", | |
// "playerStartTime": "07:30 PM", | |
// "playerEndTime": "09:49 PM", | |
// "playerDuration": "02:19", | |
// "playerDate": "01/02/2017", | |
// "playerSource": 3903, | |
// "playerNotes": "Airs live, record for captioning gfoLL", | |
// "record": "Y", | |
// "hd": "Y", | |
// "bug": 3999, | |
// "ticker": 3478 | |
// }, | |
// { | |
// "schedItemNo": 26113993, | |
// "player": "Y", | |
// "playerStartTime": "07:30 PM", | |
// "playerEndTime": "10:13 PM", | |
// "playerDuration": "02:43", | |
// "playerDate": "01/04/2017", | |
// "playerSource": 3903, | |
// "playerNotes": "Airs live, record for captioning Fqvui", | |
// "record": "Y", | |
// "hd": "Y", | |
// "bug": 3999, | |
// "ticker": 3478 | |
// } | |
// ], | |
// "originals": [ | |
// { | |
// "dateAdded": "11/28/2016 08:28:01 PM", | |
// "dateUpdated": "01/06/2017 02:36:23 PM", | |
// "scheduleStartDate": "01/02/2017", | |
// "scheduleStartTime": "7:30 PM", | |
// "scheduleEndTime": "9:48 PM", | |
// "scheduleName": "sports Sports Bay Area", | |
// "feedName": "Main", | |
// "schedItemNo": 26113992, | |
// "titleNo": 950429, | |
// "matId": "BAGSW010217H", | |
// "titleVersionNo": 553396, | |
// "player": "Y", | |
// "playerStartTime": "07:30 PM", | |
// "playerEndTime": "09:49 PM", | |
// "playerDuration": "02:19", | |
// "playerDate": "01/02/2017", | |
// "playerSource": 3903, | |
// "playerNotes": "Airs live, record for captioning", | |
// "record": "Y", | |
// "hd": "Y", | |
// "bug": 3999, | |
// "ticker": 3478, | |
// "titleName": "Denver Nuggets vs. Golden State Warriors", | |
// "programName": "Warriors Basketball", | |
// "addedUser": "Ben Rodrigues", | |
// "updatedUser": "Ben Rodrigues", | |
// "checkedOutUserId": null, | |
// "checkedOutUserName": null, | |
// "versionNetwork": "sports Sports Bay Area", | |
// "titleOwnerNetwork": null, | |
// "playerPudId": null, | |
// "hdPudId": null, | |
// "playerDatePudId": null, | |
// "playerSourcePudId": null, | |
// "playerStartTimePudId": null, | |
// "playerDurationPudId": null, | |
// "playerNotesPudId": null, | |
// "recordPudId": null, | |
// "bugPudId": null, | |
// "tickerPudId": null, | |
// "groupOrder": 2 | |
// }, | |
// { | |
// "dateAdded": "11/28/2016 08:28:01 PM", | |
// "dateUpdated": "01/05/2017 09:24:44 PM", | |
// "scheduleStartDate": "01/04/2017", | |
// "scheduleStartTime": "7:30 PM", | |
// "scheduleEndTime": "10:00 PM", | |
// "scheduleName": "sports Sports Bay Area", | |
// "feedName": "Main", | |
// "schedItemNo": 26113993, | |
// "titleNo": 950430, | |
// "matId": "BAGSW010417H", | |
// "titleVersionNo": 553397, | |
// "player": "Y", | |
// "playerStartTime": "07:30 PM", | |
// "playerEndTime": "10:13 PM", | |
// "playerDuration": "02:43", | |
// "playerDate": "01/04/2017", | |
// "playerSource": 3903, | |
// "playerNotes": "Airs live, record for captioning", | |
// "record": "Y", | |
// "hd": "Y", | |
// "bug": 3999, | |
// "ticker": 3478, | |
// "titleName": "Portland Trail Blazers vs. Golden State Warriors", | |
// "programName": "Warriors Basketball", | |
// "addedUser": "Ben Rodrigues", | |
// "updatedUser": "Ben Rodrigues", | |
// "checkedOutUserId": null, | |
// "checkedOutUserName": null, | |
// "versionNetwork": "sports Sports Bay Area", | |
// "titleOwnerNetwork": null, | |
// "playerPudId": null, | |
// "hdPudId": null, | |
// "playerDatePudId": null, | |
// "playerSourcePudId": null, | |
// "playerStartTimePudId": null, | |
// "playerDurationPudId": null, | |
// "playerNotesPudId": null, | |
// "recordPudId": null, | |
// "bugPudId": null, | |
// "tickerPudId": null, | |
// "groupOrder": 2 | |
// } | |
// ] | |
// }; | |
//that.gridkendo.getGrid() | |
let gridData = { | |
"networkNo": this.bulkCreateValplayer.networkNo, | |
"updates": [{ | |
"schedItemNo": 26113992, | |
"player": "Y", | |
"playerStartTime": "07:30 PM", | |
"playerEndTime": "09:49 PM", | |
"playerDuration": "02:19", | |
"playerDate": "01/02/2017", | |
"playerSource": 3903, | |
"playerNotes": "Airs live, record for captioning gfoLL", | |
"record": "Y", | |
"hd": "Y", | |
"bug": 3999, | |
"ticker": 3478 | |
}], | |
"originals": grid.dataSource.data() | |
}; | |
console.log(gridData); | |
// let response={ | |
// "code":"S001", | |
// "message":"Success", | |
// "data":{ | |
// "added":7,"updated":0,"deleted":7, | |
// "conflicts":[ | |
// {"weekDay":"Wednesday","date":"04/11/2018","time":"10:00:00 AM","programName":"LAW & ORDER: SVU ","titleName":"ROCKABYE","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}, | |
// {"weekDay":"Thursday","date":"04/12/2018","time":"10:00:00 AM","programName":"CHICAGO P.D.","titleName":"WRONG SIDE OF THE BARS","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}, | |
// {"weekDay":"Friday","date":"04/13/2018","time":"10:00:00 AM","programName":"NCIS: LOS ANGELES (F)","titleName":"PURITY","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}, | |
// {"weekDay":"Saturday","date":"04/14/2018","time":"10:00:00 AM","programName":"NCIS (LUCKY DUCKY MARATHON)","titleName":"BLOWBACK","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}, | |
// {"weekDay":"Sunday","date":"04/15/2018","time":"10:00:00 AM","programName":"LAW & ORDER: SVU (NOTORIOUS S.V.U. MARATHON)","titleName":"ROOFTOP","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}, | |
// {"weekDay":"Monday","date":"04/16/2018","time":"10:00:00 AM","programName":"NCIS","titleName":"ENEMY COMBATANT","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"}, | |
// {"weekDay":"Tuesday","date":"04/10/2018","time":"10:00:00 AM","programName":"NCIS ","titleName":"DEJA VU","prevUpdatedBy":"Brian Marquis","prevUpdatedDate":"2018-03-27 17:59:22.0","action":"Overlaps deleted","scheduleName":"April 2018 old as of 3.23.18"} | |
// ] | |
// } | |
// } | |
//this.sportsuService.getResponse("schedules/v1/bulkcreate/save/", "post", gridData).subscribe(response => { | |
this.sportsuService.getResponse("schedules/v1/playerbulkupdate/", "put", gridData).subscribe(response => { | |
console.log("saveResponseNotify--->" + response); | |
//this.totalAiringsCount = response.data.added; | |
//this.totalUpdates = response.data.updated; | |
//this.totalDeletes = response.data.deleted; | |
//this.saveResponseNotify(response.data); | |
// this.progress.requestEnd(); | |
}, err => { | |
//this.progress.requestEnd(); | |
}); | |
} | |
gridDataLoad() { | |
let that = this; | |
that.checkedRowsUID = []; | |
let grid = this.gridkendo.getGrid(); | |
grid.setOptions({ | |
dataBound: function (e) { | |
var gridData = e.sender.dataSource.data(); | |
that.onDataBound(e); | |
}, | |
columnReorder: function (e) { | |
console.log(e.newIndex, e.oldIndex, e.column) | |
} | |
}); | |
this.gridkendo.reloadDataSource(this.playerDataAPI); | |
this.gridkendo.setContextMenu(); | |
//this.gridHeaderMenu.addDummyHeader(); | |
//that.totalAiringsCount = grid.data.length; | |
that.totalAiringsCount = grid.dataSource.data().length | |
// that.totalAiringsCount = that.getGridLength("Added"); | |
// that.totalDeletes = that.getGridLength("Delete"); | |
// that.disableBtn = false; | |
/* Start - Open context menu on right click */ | |
// setTimeout(function () { | |
// $("#bulk-context-menu").kendoContextMenu({ | |
// target: "#KendoGridView .k-grid-header thead tr:nth-child(1) ", | |
// animation: { | |
// open: { | |
// effects: "fadeIn" | |
// } | |
// } | |
// }); | |
// $('#bulk-context-menu').on('click', '.hideShowColumn', function (e) { | |
// e.stopPropagation(); | |
// }); | |
// }, 100); | |
that.bulkContextMenu(); | |
that.bulkKeys = ["scheduleName", "schedItemNo", "startDate", "day", "startTime", "blockDuration", "endTime", "programName", "programType", "actualStartTime", "actualEndTime", "actualDuration", "seriesName", "titleName", "episodeNote", "seasonName", "versionName", "schedulingType", "formatName", "notes", "scheduleItem", "record", "hd", "title", "playerStartTime", "addedUser", "dateAdded", "updatedUser", "dateUpdated"]; | |
} | |
getGridLength(type) { | |
let that = this; | |
var totalRecords = 0; | |
var gridrecords = that.gridkendo.getGrid(); | |
var gridData = gridrecords.dataSource.data(); | |
if (type == 'Added') { | |
$.each(gridData, function (i, item) { | |
if (item.action == "Added") { | |
totalRecords = totalRecords + 1; | |
} | |
}); | |
} else { | |
$.each(gridData, function (i, item) { | |
if (item.action == "Delete") { | |
totalRecords = totalRecords + 1; | |
} | |
}); | |
} | |
return totalRecords; | |
} | |
private gridCancel() { | |
let that = this; | |
let strMessage = 'Do you want to continue and loss existing changes?'; | |
$('#commonPopup .kPopUpTitle').text('animal'); | |
$("#commonPopup .kendoContent").text(strMessage); | |
let dialogConfirm = $("#commonPopup").data("kendoWindow").center().open(); | |
$("#popupOK").unbind().click(function () { | |
let grid = that.gridkendo.getGrid(); | |
that.bulkGridData = []; | |
grid.dataSource.data([]); | |
that.totalAiringsCount = 0; | |
that.totalDeletes = 0; | |
dialogConfirm.close(); | |
}); | |
$("#popupCancel").unbind().click(function () { | |
dialogConfirm.close(); | |
}); | |
} | |
// loadPreference(networkNo) { | |
// let data = {}; | |
// //this.progress.requestStart(); | |
// // this.sportsuService.getResponse('authorization/v1/loadPreferences?networkNo=1', 'get', data).subscribe(data => { | |
// // //this.sportsuService.getlocalResponse("bulk-create-pref", "get", prefData).subscribe(data => { | |
// // this.preferenceData = data; | |
// // this.progress.requestEnd(); | |
// // }, | |
// // err => { this.progress.requestEnd(); }); | |
// } | |
loadPreference(networkNo) { | |
let data = {}; | |
this.progress.requestStart(); | |
// this.sportsuService.getResponse('authorization/v1/loadPreferences?networkNo=' + this.bulkCreateVal.networkNo, 'get', data).subscribe(data => { | |
this.sportsuService.getResponse('authorization/v1/loadPreferences?networkNo=' + this.bulkCreateValplayer.networkNo, 'get', data).subscribe(data => { | |
// bulkCreateValplayer | |
//this.sportsuService.getlocalResponse("bulk-create-pref", "get", data).subscribe(data => { | |
this.preferenceData = data; | |
console.log(this.preferenceData) | |
this.progress.requestEnd(); | |
}, | |
err => { this.progress.requestEnd(); }); | |
} | |
ngAfterContentInit() { | |
$('.triggerGridScrollFunctions').trigger('click'); | |
// $("#context-menuAspect").kendoContextMenu({ | |
// target: ".contextMenuRow", | |
// showOn: "click", | |
// select: function (e) { | |
// let selectedMenuItem = $(e.item).children(".k-link").text(); | |
// } | |
// }); | |
//create preferences Popup | |
function onClosePop() { | |
$("html, body").css("overflow", ""); | |
} | |
// this.createPreferencesPopUpWindow = $("#createPreferencesPopUpWindow"); | |
// this.createPreferencesPopUpWindow.kendoWindow({ | |
// width: "350px", | |
// title: false, | |
// visible: false, | |
// actions: [], | |
// draggable: false, | |
// close: onClosePop, | |
// modal: true, | |
// open: function(e) { $("html, body").css("overflow", "hidden"); } | |
// }).data("kendoWindow").center(); | |
this.createDialog("#createPreferencesPopup"); | |
this.createDialog("#commonPopup"); | |
this.lockedSchedulePopup("#lockedSchedulePopup"); | |
} | |
loadView() { | |
let that = this; | |
$("#overlaps0").prop("checked", true); | |
let navHeaderHeight = $('.navHeaderBox').outerHeight(); | |
$('.breadCrumbBox').css('top', navHeaderHeight + 'px'); | |
this.playerBulkUpdateVal.endDate = that.calculateEndDate(this.playerBulkUpdateVal.startDate, this.playerBulkUpdateVal.weekCount); | |
// start datepicker | |
$("#startDate").kendoDatePicker({ | |
min: new Date(1000, 0, 1), | |
max: new Date(3000, 11, 31), | |
formatName: "MM/dd/yyyy", | |
parseformatNames: ["MM/dd/yyyy"], | |
value: that.playerBulkUpdateVal.startDate, | |
open: function (e) { }, | |
change: function () { | |
let dateEntered = $("#startDate").val(); | |
if (this.value() !== null && dateEntered.length > 0) { | |
that.playerBulkUpdateVal.startDate = this.value(); | |
that.playerBulkUpdateVal.endDate = that.calculateEndDate(this.value(), that.playerBulkUpdateVal.weekCount); | |
let endDatePicker = $("#endDate").data("kendoDatePicker"); | |
endDatePicker.value(that.playerBulkUpdateVal.endDate); | |
} | |
that.validateSearch(); | |
} | |
}); | |
// end datepicker | |
$("#endDate").kendoDatePicker({ | |
min: new Date(1000, 0, 1), | |
max: new Date(3000, 11, 31), | |
formatName: "MM/dd/yyyy", | |
parseformatNames: ["MM/dd/yyyy"], | |
value: that.playerBulkUpdateVal.endDate, | |
change: function () { | |
let dateEntered = $("#endDate").val(); | |
if (this.value() !== null && dateEntered.length > 0) { | |
that.playerBulkUpdateVal.endDate = this.value(); | |
} | |
let end; | |
let start = $("#startDate").data("kendoDatePicker").value(); | |
end = this.value() ? this.value() : new Date(); | |
start = start ? start : new Date(); | |
let startDate = new Date(start); | |
let endDate = new Date(end); | |
startDate.setHours(0, 0, 0); | |
endDate.setHours(0, 0, 0); | |
if (endDate === undefined && (startDate.toString() === endDate.toString()) || (startDate < endDate)) { | |
let timeDiff = Math.abs(end.getTime() - start.getTime()); | |
let diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); | |
let weekDiff = Math.floor(diffDays / 7) + 1; | |
that.playerBulkUpdateVal.weekCount = weekDiff; | |
} | |
that.validateSearch(); | |
} | |
}); | |
$('#startDate').on('dblclick', function () { | |
let currentDate = new Date(); | |
$("#startDate").data("kendoDatePicker").value(currentDate); | |
$("#startDate").data("kendoDatePicker").trigger("change"); | |
}); | |
$('#endDate').on('dblclick', function () { | |
let currentDate = new Date(); | |
$("#endDate").data("kendoDatePicker").value(currentDate); | |
$("#endDate").data("kendoDatePicker").trigger("change"); | |
}); | |
this.kendocommand.model = { | |
id: "isSelected", | |
fields: { | |
contextRow: { editable: false }, | |
gridCheck: { type: "boolean", editable: false, filterable: false }, | |
gridType: { type: "boolean", editable: false, filterable: false }, | |
scheduleName: { type: "string", editable: false }, | |
schedItemNo: { type: "string", editable: false }, | |
scheduleStartDate: { type: "string", filterable: true, editable: false, }, | |
scheduleStartTime: { type: "string", editable: false }, | |
scheduleEndTime: { type: "string", editable: false }, | |
feedName: { type: "string", editable: false }, | |
programName: { type: "string", editable: false }, | |
title: { type: "string", editable: false }, | |
titleName: { type: "string", editable: false }, | |
matId: { type: "string", editable: false }, | |
versionNetwork: { type: "string", editable: false }, | |
player: { type: "string", editable: true }, | |
playerDate: { type: "string", editable: true }, | |
playerStartTime: { type: "dateTime", editable: true }, | |
playerDuration: { editable: true }, | |
playerEndTime: { type: "string", editable: false }, | |
playerSource: { type: "string", editable: true }, | |
playerNotes: { type: "string", editable: true }, | |
bug: { type: "string", editable: true }, | |
ticker: { type: "string", editable: true }, | |
hd: { type: "string", editable: true }, | |
record: { type: "string", editable: true }, | |
addedUser: { type: "string", editable: false }, | |
dateAdded: { type: "string", editable: false }, | |
updatedUser: { type: "string", editable: false }, | |
dateUpdated: { type: "string", editable: false } | |
} | |
} | |
this.kendocommand.columns = [ | |
{ | |
field: "contextRow", | |
template: "<span class='contextMenuRow'></span>", | |
width: 25, | |
}, { | |
filterable: false, | |
width: 30, | |
//<input type="checkbox" checked="checked" class="checkBox" /> | |
headerTemplate: '<span class="displayBlock"><input type="checkbox" checked="checked" id="unlockCheck" (click) = "masterCheckboxClick($event)" /></span>', | |
resizable: false, | |
sortable: false, | |
field: "gridCheck", | |
editable: false, | |
title: "Is Selected ", | |
//template:function(container){ return that.checkboxchecker(container,"isSelected")}, | |
template: "<input type='checkbox' class='gridCheckBox'>", | |
attributes: { | |
style: "padding: 0 8px 0 12px;" | |
} | |
}, { | |
filterable: false, | |
width: 30, | |
resizable: false, | |
sortable: false, | |
field: "gridType", | |
editable: false, | |
title: " ", | |
// template: "<span class='eventType newEvent text-succcess'><span id='editIconplayer' class='displayBlock'></span></span> " | |
template: "<span *ngIf = 'isDisplayEdit' class='eventType newEvent text-succcess'><span id='editIconplayer' *ngIf = 'isDisplayEdit' class=' displayBlock'></span></span> " | |
}, { | |
field: "scheduleName", | |
title: "Schedule Name", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
}, | |
}, { | |
field: "schedItemNo", | |
title: "Schedule Item #", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
}, | |
}, { | |
field: "scheduleStartDate", | |
title: "Start Date", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "scheduleStartTime", | |
title: "Start Time", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "scheduleEndTime", | |
title: "End Time", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "feedName", | |
title: "Feed Name", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "programName", | |
title: "Program Name", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "titleNo", | |
title: "Title #", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "titleName", | |
title: "Title Name", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "matId", | |
title: "Material ID", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "versionNetwork", | |
title: "Version Network", | |
width: 200, | |
editable: false, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "player", | |
title: "player Flag", | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
width: 30, | |
resizable: false, | |
sortable: false, | |
editable: true, | |
editor: function () { | |
//this.isDisplayEdit = true; | |
}, | |
template: function playerFunc(player) { | |
return that.playerCheckBox(player, that); | |
}, | |
}, | |
//template: function () { return that.checkboxplayerFlag("") }, | |
// template: function () { | |
// var tem = ""; | |
// if(this.player=="N"){ | |
// tem = '<input type="checkbox" class="checkBox" />', | |
// }else{ | |
// '<input type="checkbox" checked="checked" class="checkBox" />', | |
// } | |
// // return that.actualEndTimeTemplate(actualEndTime, that); | |
// }, | |
// { | |
// field: "playerFlag", | |
// title: "player Flag", | |
// width: 150, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// sortable: false, | |
// template: '<input type="checkbox" #= (playerFlag!=undefined || playerFlag!=null || playerFlag!="" || playerFlag==false) ? "" : \'checked="checked"\' # class="checkBox" />', | |
// // template: function playerFunc(playerFlag) { | |
// // return that.playerCheckBox(playerFlag, that); | |
// // }, | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
// { | |
// field: "playerDate", | |
// title: "player Date", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// template: function fromDatefunction(startDate) { | |
// return that.playerDateTemplate(startDate, that); | |
// }, | |
// editor: function (container, options) { | |
// that.dateEditor(container, options, that); | |
// }, | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
{ | |
field: "playerDate", | |
title: "player Date", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
sortable: false, | |
template: function datefunction(playerDate) { | |
return that.playerDateTemplate(playerDate, that); | |
}, | |
editor: function (container, options) { | |
that.playerDateEditor(container, options, that); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
// { | |
// field: "playerStartTime", | |
// title: "player Start Time", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// template: function timefunction(startTime) { | |
// return that.startTimeTemplate(startTime, that); | |
// }, | |
// editor: function (container, options) { | |
// return that.startTimeEditor(container, options, that); | |
// }, | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
{ | |
field: "playerStartTime", | |
title: "player Start Time", | |
width: 200, | |
filterable: false, | |
sortable: false, | |
template: function playerStartTime(playerStartTime) { | |
return that.playerStartTimeTemplate(playerStartTime, that); | |
}, | |
editor: function (container, options) { | |
return that.playerTimeEditor(container, options, that, "playerStartTime"); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "playerDuration", | |
title: "player Duration", | |
width: 200, | |
filterable: false, | |
sortable: false, | |
template: function playerDuration(playerDuration) { | |
return that.playerDurationTemplate(playerDuration, that); | |
}, | |
editor: function (container, options) { | |
return that.playerDurationEditor(container, options, that); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, { | |
field: "playerEndTime", | |
title: "player End Time", | |
width: 200, | |
filterable: false, | |
sortable: false, | |
template: function playerEndTime(playerEndTime) { | |
return that.playerEndTimeTemplate(playerEndTime, that); | |
}, | |
editor: function (container, options) { | |
return that.playerTimeEditor(container, options, that, "playerEndTime"); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
// { | |
// field: "playerDuration", | |
// title: "player Duration", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
// { | |
// field: "playerEndTime", | |
// title: "player End Time", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
// { | |
// field: "playerSourceProvider", | |
// title: "player Source Provider", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// template: function productfunction(programType) { | |
// return that.productTemplate(programType, that); | |
// }, | |
// editor: function (container, options) { | |
// return that.productEditor(container, options, that); | |
// }, | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
{ | |
field: "playerSource", | |
title: "player Source/Provider", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
sortable: false, | |
template: function sourcefunction(playerSource) { | |
return that.playerSourceTemplate(playerSource, that); | |
}, | |
editor: function (container, options) { | |
return that.playerSourceEditor(container, options, that); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
// { | |
// field: "playerNotes", | |
// title: "player Notes", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
{ | |
field: "playerNotes", | |
title: "player Notes", | |
width: 200, | |
filterable: false, | |
sortable: false, | |
template: function inputFunc(playerNotes) { | |
return that.textboxTemplate(playerNotes, that, "playerNotes"); | |
}, | |
editor: function (container, options) { | |
return that.textboxEditor(container, options, that, "playerNotes"); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "hd", | |
title: "HD", | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
width: 30, | |
resizable: false, | |
sortable: false, | |
editable: true, | |
editor: function () { | |
// this.isDisplayEdit = true; | |
}, | |
template: function hdFunc(hd) { | |
return that.hdCheckBox(hd, that); | |
}, | |
}, | |
{ | |
field: "record", | |
title: "Record", | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
width: 30, | |
resizable: false, | |
sortable: false, | |
editable: true, | |
editor: function () { | |
// this.isDisplayEdit = true; | |
}, | |
template: function recordFunc(record) { | |
return that.recordCheckBox(record, that); | |
}, | |
}, | |
{ | |
field: "bug", | |
title: "Bug", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
sortable: false, | |
// editable: true, | |
template: function bugfunction(bug) { | |
return that.bugTemplate(bug, that); | |
}, | |
editor: function (container, options) { | |
return that.bugEditor(container, options, that); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
// { | |
// field: "ticker", | |
// title: "Ticker", | |
// width: 200, | |
// filterable: that.gridkendo.getAutoFilter("contains"), | |
// template: function productfunction(programType) { | |
// return that.productTemplate(programType, that); | |
// }, | |
// editor: function (container, options) { | |
// return that.productEditor(container, options, that); | |
// }, | |
// headerAttributes: { | |
// class: "multiCheckboxFilterEnabled" | |
// } | |
// }, | |
{ | |
field: "ticker", | |
title: "Ticker", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
sortable: false, | |
template: function tickerfunction(ticker) { | |
return that.tickerTemplate(ticker, that); | |
}, | |
editor: function (container, options) { | |
return that.tickerEditor(container, options, that); | |
}, | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "addedUser", | |
title: "User Added", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "dateAdded", | |
title: "Date Added", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "updatedUser", | |
title: "User Updated", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
}, | |
{ | |
field: "dateUpdated", | |
title: "Date Updated", | |
width: 200, | |
filterable: that.gridkendo.getAutoFilter("contains"), | |
headerAttributes: { | |
class: "multiCheckboxFilterEnabled" | |
} | |
} | |
]; | |
$('<div class="gridScrollIconsBox"><i class="fa fa-chevron-left previousGridColumns"></i><i class="fa fa-chevron-right nextGridColumns" ></i></div>').insertBefore('.k-grid-header'); | |
} | |
getDefault(data: any) { | |
for (var i = 0; i < data.length; i++) { | |
if (data[i].hasOwnProperty("isDefault")) { | |
if (data[i].isDefault) | |
return data[i]; | |
break; | |
} | |
} | |
} | |
/* player checkbox template */ | |
private playerCheckBox(type: any, that: any) { | |
let value; | |
if (type.player == "N" || type.player == null) { | |
value = '<input type="checkbox" id = "playerFlagCheck" class="checkBox" />'; | |
} else if (type.player == "Y") { | |
value = '<input type="checkbox" id = "playerFlagCheck" checked="checked" class="checkBox" />'; | |
} | |
return value; | |
} | |
/* hd checkbox template */ | |
private hdCheckBox(type: any, that: any) { | |
let value; | |
if (type.hd == "N" || type.hd == null) { | |
value = '<input type="checkbox" class="checkBox" />'; | |
} else if (type.hd == "Y") { | |
value = '<input type="checkbox" checked="checked" class="checkBox" />'; | |
} | |
return value; | |
} | |
/* record checkbox template */ | |
private recordCheckBox(type: any, that: any) { | |
let value; | |
if (type.record == "N" || type.record == null) { | |
value = '<input type="checkbox" class="checkBox" />'; | |
} else if (type.record == "Y") { | |
value = '<input type="checkbox" checked="checked" class="checkBox" />'; | |
} | |
return value; | |
} | |
private masterCheckboxClick(event: any) { | |
console.log("masterCheckboxClick--->"); | |
if (event.target.checked) { | |
} | |
} | |
/* notes template column */ | |
private textboxTemplate(note: any, that: any, field: any): any { | |
// if(field=='programName'){ | |
// if (note.programName == undefined || note.programName == null || note.programName == "") { | |
// note.programName = ""; | |
// return note.programName; | |
// } else { | |
// return note.programName; | |
// } | |
// } | |
if (field == 'playerNotes') { | |
if (note.playerNotes == undefined || note.playerNotes == null || note.playerNotes == "") { | |
note.playerNotes = ""; | |
return note.playerNotes; | |
} else { | |
return note.playerNotes; | |
} | |
} | |
// else if(field=='commentText'){ | |
// if (note.commentText == undefined || note.commentText == null || note.commentText == "") { | |
// note.commentText = ""; | |
// return note.commentText; | |
// } else { | |
// return note.commentText; | |
// } | |
// } | |
// else if(field=='userAddedName'){ | |
// if (note.userAddedName == undefined || note.userAddedName == null || note.userAddedName == "") { | |
// note.userAddedName = ""; | |
// return note.userAddedName; | |
// } else { | |
// return note.userAddedName; | |
// } | |
// } | |
// else if(field=='userUpdatedName'){ | |
// if (note.userUpdatedName == undefined || note.userUpdatedName == null || note.userUpdatedName == "") { | |
// note.userUpdatedName = ""; | |
// return note.userUpdatedName; | |
// } else { | |
// return note.userUpdatedName; | |
// } | |
// } | |
// else{ | |
// } | |
} | |
/* notes template editor column */ | |
private textboxEditor(container, options, that, field): any { | |
this.rowDotMenuClick("true"); | |
let grid = this.gridkendo.getGrid(); | |
if (options.field == 'userAddedName') { options.field = 'userAdded'; } | |
if (options.field == 'userUpdatedName') { options.field = 'userUpdated'; } | |
let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
// if(field=='programName'){ | |
// if (editable == false) { | |
// $('<span>' + options.model.programName + '</span>' + '</span>').appendTo(container); | |
// } else { | |
// var input = $('<input type="text" class="commentText" data-bind="value:' + options.field + '"/>'); | |
// input.appendTo(container); | |
// } | |
// } | |
if (field == 'playerNotes') { | |
if (editable == false) { | |
$('<span>' + options.model.playerNotes + '</span>' + '</span>').appendTo(container); | |
} else { | |
var input = $('<input type="text" class="commentText" data-bind="value:' + options.field + '"/>'); | |
input.appendTo(container); | |
} | |
} | |
// else if(field=='commentText'){ | |
// if (editable == false) { | |
// $('<span>' + options.model.commentText + '</span>' + '</span>').appendTo(container); | |
// } else { | |
// var input = $('<input type="text" class="commentText" data-bind="value:' + options.field + '"/>'); | |
// input.appendTo(container); | |
// } | |
// } | |
// else if(field=='userAddedName'){ | |
// if (editable == false) { | |
// $('<span>' + options.model.commentText + '</span>' + '</span>').appendTo(container); | |
// } | |
// } | |
// else if(field=='userUpdatedName'){ | |
// if (editable == false) { | |
// $('<span>' + options.model.commentText + '</span>' + '</span>').appendTo(container); | |
// } | |
// } | |
} | |
checkboxplayerFlag(data: any) { | |
let that = this; | |
console.log("gridDataAll checkboxplayerFlag--->", data.players); | |
// var tem = ""; | |
// if(that.player=="N"){ | |
// tem = '<input type="checkbox" class="checkBox" />', | |
// }else{ | |
// '<input type="checkbox" checked="checked" class="checkBox" />', | |
// } | |
// // return that.actualEndTimeTemplate(actualEndTime, that); | |
// if ((this.selectedRowsUID.indexOf(container.uid) != -1) || this.selectAll) { | |
// container.isSelected = true; | |
// return '<input type="checkbox" checked="checked" style="display:block;" class="textAligncenter unlockCheckbox" #= fieldName ? \'checked="checked"\' : "false" #= fieldName/>'; | |
// } else { | |
// this.count = true; | |
// container.isSelected = false; | |
// return '<input type="checkbox" style="display:block;" class="textAligncenter unlockCheckbox" #= fieldName ? \'checked="checked"\' : "false" #= fieldName/>'; | |
// } | |
} | |
setNetworks(data: any) { | |
// var playermoons =[{Lion: 237, birds: "Animal Sports Bay Area", fish: 1, isDefault: true, wire: ""}, | |
// {Lion: 238, birds: "Animal Sports California", fish: 1, wire: ""}, | |
// {Lion: 239, birds: "Animal Sports Washington", fish: 1, wire: ""}, | |
// {Lion: 240, birds: "Animal Sports Philadelphia", fish: 1, wire: ""}]; | |
// function getDefault(playermoons){ | |
// for(var i=0; i<playermoons.length; i++){ | |
// if(playermoons[i].hasOwnProperty("isDefault")) | |
// { | |
// if(playermoons[i].isDefault) | |
// return playermoons[i]; | |
// break; | |
// } | |
// } | |
// } | |
// for(var i=0; i<data.length; i++){ | |
// if(data[i].hasOwnProperty("isDefault")) | |
// { | |
// if(data[i].isDefault) | |
// return data[i]; | |
// break; | |
// } | |
// } | |
//console.log(getDefault(playermoons)) | |
let that = this; | |
let tempObj = {}; | |
//tempObj['networkNo'] = 237; | |
//tempObj['Lion'] = getDefault(playermoons).Lion | |
//tempObj['networkNo'] = this.getDefault(data).networkNo; | |
console.log("data outside if---->", data); | |
//console.log("after data check---->" + tempObj['networkNo')); | |
console.log(data instanceof Array); | |
// if(data && data.length > 0){ | |
console.log(" inside if---->" + data); | |
let defauktNetworkNOData = data.playerNetworks.find((elem) => { return elem.isDefault; }); | |
//that.gridDataAll.find((elem) => { return elem.isDefault; }); | |
tempObj['networkNo'] = defauktNetworkNOData.networkNo; | |
//} | |
// tempObj['networkNo'] = data.playerNetworks[0].networkNo; | |
//tempObj['networkName'] = 'sports Sports Bay Area'; | |
// tempObj['networkNo'] = data.selectedNetworkNo; | |
tempObj['networkName'] = defauktNetworkNOData.networkName; | |
this.networkTempArray = []; | |
this.networkTempArray.push(tempObj); | |
let networksdata = data.playerNetworks; | |
let networksDataList = this.networkTempArray; | |
//let selectedNetwork = networksdata.find(elem => elem.networkNo == 237); | |
this.playerBulkUpdateVal.networkNo = defauktNetworkNOData.networkNo; | |
let selectedNetwork = networksdata.find(elem => elem.networkNo == defauktNetworkNOData.networkNo); | |
// this.bulkCreateVal.networkNo = defauktNetworkNOData.networkNo; | |
this.selectedNetworkArr = selectedNetwork; | |
//this.networkCarousel.setNetworkData(networksdata, networksDataList, 237); | |
this.networkCarousel.setNetworkData(networksdata, networksDataList, defauktNetworkNOData.networkNo); | |
$("#networkCarouselLabel .networkHint").css("display", "none"); | |
setTimeout(function () { | |
$("#unSelectedNetworksLogoBox1 .currentNwLogo").bind("click", function (e) { | |
e.stopPropagation(); | |
that.singleSelection(data, e); | |
}); | |
}, 100); | |
} | |
networksEvent(data: any) { | |
let network = this.networkCarousel.getselectedNetworkID(); | |
let selectedNetworkId = data.networkData; | |
//this.networkCarousel.clearnetworksearch(data); | |
} | |
singleSelection(data, e: any) { | |
this.networkCarousel.getClearNetworks(); | |
this.networkCarousel.networkLogoClick(e); | |
var getSelect = this.networkCarousel.getselectedNetwork(); | |
let networksdata = data.playerNetworks; | |
let selectedNetwork = networksdata.find(elem => elem.networkNo == getSelect[0].networkNo); | |
this.playerBulkUpdateVal.networkNo = getSelect[0].networkNo; | |
this.selectedNetworkArr = selectedNetwork; | |
//this.loadAggregators(this.selectedNetworkArr.networkNo); | |
} | |
validateSearch() { | |
let that = this; | |
let isValidDate = true; | |
let isValidTime = true; | |
this.isValidDates = false; | |
let startDate = $('#startDate').data("kendoDatePicker").value(); | |
let endDate = $('#endDate').data("kendoDatePicker").value(); | |
if (!startDate || !endDate) { | |
this.isValidDates = false; | |
} | |
else { | |
startDate.setHours(0, 0, 0); | |
endDate.setHours(0, 0, 0); | |
if (startDate.toString() == endDate.toString()) { | |
this.isValidDates = true; | |
$('#endDate').closest('.formRow').removeClass('mandatoryField'); | |
$('#endDate').closest('.formRow').attr({ "title": "" }); | |
//that.scheduleService.datevalidate(false); | |
} | |
else { | |
if (startDate < endDate) { | |
this.isValidDates = true; | |
$('#endDate').closest('.formRow').removeClass('mandatoryField'); | |
$('#endDate').closest('.formRow').attr({ "title": "" }); | |
//that.scheduleService.datevalidate(false); | |
} | |
else { | |
$('#endDate').closest('.formRow').addClass('mandatoryField'); | |
$('#endDate').closest('.formRow').attr({ "title": "Start date can't be grater than end date " }); | |
//that.scheduleService.datevalidate(true); | |
this.isValidDates = false; | |
} | |
} | |
} | |
if (isValidDate && isValidTime && this.bulkCreateVal.days.length > 0 && !this.feedMandatoryClass) { | |
return this.goBtnEnableDisable = false; | |
} else { return this.goBtnEnableDisable = true; } | |
// this.goBtnEnableDisable(); | |
} | |
// clear_fields() { | |
// } | |
// goBtnEnableDisable() { | |
// } | |
setDate(date: any) { | |
let setDate = ""; | |
let numberOnly = /^[0-9]*$/; | |
if (numberOnly.test(date) && date.length == 8) { | |
let dateSplit = date.split(""); | |
let dateFormat = "" | |
for (var i = 0; i < dateSplit.length; i++) { | |
if (i == 2 || i == 4) | |
dateFormat = dateFormat + '/'; | |
dateFormat = dateFormat + dateSplit[i]; | |
} | |
var parsedDate = Date.parse(dateFormat); | |
if (!isNaN(parsedDate)) { | |
setDate = kendo.toString(new Date(parsedDate), "MM/dd/yyyy"); | |
} | |
else { | |
setDate = kendo.toString(new Date(), "MM/dd/yyyy"); | |
} | |
} | |
else if (date.length != 0) { | |
setDate = kendo.toString(new Date(), "MM/dd/yyyy"); | |
} | |
return setDate; | |
} | |
// checkboxchecker(container, options, fieldName: any): any { | |
// if ((this.selectedRowsUID.indexOf(container.uid) != -1) || this.selectAll) { | |
// container.isSelected = true; | |
// return '<input type="checkbox" checked="checked" style="display:block;" class="textAligncenter unlockCheckbox" #= ' + fieldName + ' ? \'checked="checked"\' : "false" #= ' + fieldName + '/>'; | |
// } else { | |
// this.count = true; | |
// container.isSelected = false; | |
// return '<input type="checkbox" style="display:block;" class="textAligncenter unlockCheckbox" #= ' + fieldName + ' ? \'checked="checked"\' : "false" #= ' + fieldName + '/>'; | |
// } | |
// } | |
checkboxchecker(container, fieldName: any): any { | |
if ((this.selectedRowsUID.indexOf(container.uid) != -1) || this.selectAll) { | |
container.isSelected = true; | |
return '<input type="checkbox" checked="checked" style="display:block;" class="textAligncenter unlockCheckbox" #= fieldName ? \'checked="checked"\' : "false" #= fieldName/>'; | |
} else { | |
this.count = true; | |
container.isSelected = false; | |
return '<input type="checkbox" style="display:block;" class="textAligncenter unlockCheckbox" #= fieldName ? \'checked="checked"\' : "false" #= fieldName/>'; | |
} | |
} | |
checkboxcheckerLocker(container, fieldName: any): any { | |
if ((this.selectedRowsUID.indexOf(container.uid) != -1) || this.selectAll) { | |
container.isSelected = true; | |
return '<input type="checkbox" checked="checked" style="display:block;" class="textAligncenter lockCheckbox" #= ' + fieldName + ' ? \'checked="checked"\' : "false" #= ' + fieldName + '/>'; | |
} else { | |
this.count = true; | |
container.isSelected = false; | |
return '<input type="checkbox" style="display:block;" class="textAligncenter lockCheckbox" #= ' + fieldName + ' ? \'checked="checked"\' : "false" #= ' + fieldName + '/>'; | |
} | |
} | |
private gridPageSize(value): void { | |
this.gridkendo.gridPageSizeChange(value); | |
} | |
private gridTemplate(options: any, fieldName: any, mandatory: any) { | |
let value = options[fieldName]; | |
if (options[fieldName] == null || options[fieldName] == undefined) { | |
value = ""; | |
options[fieldName] = " "; | |
} | |
options[fieldName + "FilterRowId"] = value; | |
return value; | |
} | |
/*==================================================================== | |
=================== kendo grid template editor======================== | |
======================================================================*/ | |
/* From Date Template */ | |
private fromDateTemplate(fromDate: any, that: any): any { | |
let dateValue = ""; | |
fromDate.currentTab = "airFormatList"; | |
fromDate.categoryDescription = "Format"; | |
if (fromDate.startDate == undefined || fromDate.startDate == null || fromDate.startDate == "") { | |
//dateValue = "<i></i>" | |
dateValue = "" | |
return dateValue; | |
} | |
if (fromDate.startDate != null && fromDate.startDate != undefined && fromDate.startDate != "") { | |
let myDate = new Date(fromDate.startDate); | |
dateValue = (myDate.getMonth() + 1) + "/" + myDate.getDate() + "/" + myDate.getFullYear(); | |
return dateValue; | |
} | |
} | |
private playerDateTemplate(type: any, that: any): any { | |
let dateValue = ""; | |
if (type.playerDate == undefined || type.playerDate == null || type.playerDate == "") { | |
type.playerDate = "" | |
return type.playerDate; | |
} else { | |
let myDate = new Date(type.playerDate); | |
dateValue = (myDate.getMonth() + 1) + "/" + myDate.getDate() + "/" + myDate.getFullYear(); | |
return dateValue; | |
} | |
} | |
/* player date Editor */ | |
private playerDateEditor(container, options, that): any { | |
let grid = this.gridkendo.getGrid(); | |
let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
if (editable == false) { | |
$('<span>' + options.model.playerDate + '</span>').appendTo(container); | |
} else { | |
var input = $('<input data-bind="value:' + options.field + '"/>'); | |
input.appendTo(container) | |
.kendoDatePicker({ | |
formatName: "MM/dd/yyyy", | |
parseformatNames: "MM/dd/yyyy", | |
open: function (e) { | |
}, | |
change: function (e) { | |
let grid = that.gridkendo.getGrid(); | |
let selectRow = grid.select(); | |
let gridrow = grid.dataItem(selectRow); | |
let setDate = ""; | |
if (options.model.playerDate) { | |
setDate = kendo.toString(new Date(options.model.playerDate), "MM/dd/yyyy"); | |
} | |
that.setValue(setDate, "", options.field); | |
// that.validateOverlap(setDate, selectRow, 'playerDate'); | |
} | |
}); | |
var datePicker = input.data("kendoDatePicker"); | |
} | |
} | |
/* Date Editor for grid */ | |
dateEditor(container, options, that): any { | |
this.isDisplayEdit = true; | |
if (options.model.archiveFlag == "Y") { | |
switch (options.field) { | |
case "startDate": | |
$('<label>' + options.model.startDate + '</label>').appendTo(container); | |
break; | |
case "to": | |
$('<label>' + options.model.to + '</label>').appendTo(container); | |
break; | |
} | |
} else { | |
var input = $('<input data-bind="value:' + options.field + '"/>'); | |
input.appendTo(container) | |
.kendoDatePicker({ | |
format: "MM/dd/yyyy", | |
parseFormats: "MM/dd/yyyy", | |
open: function (e) { | |
switch (options.field) { | |
case "startDate": | |
if (options.model.to) { | |
datePicker.max(options.model.to); | |
} | |
break; | |
case "to": | |
if (options.model.startDate) { | |
datePicker.min(options.model.startDate); | |
} | |
break; | |
} | |
}, | |
change: function (e) { | |
let grid = that.gridkendo.getGrid(); | |
let gridrow = grid.dataItem(grid.select()); | |
let setDate = ""; | |
switch (options.field) { | |
case "startDate": | |
if (options.model.startDate) { | |
setDate = kendo.toString(new Date(options.model.startDate), "MM/dd/yyyy"); | |
if (options.model.to) { | |
if (new Date(options.model.startDate) > new Date(options.model.to)) { | |
setDate = ""; | |
} | |
} | |
} | |
break; | |
case "to": | |
if (options.model.to) { | |
setDate = kendo.toString(new Date(options.model.to), "MM/dd/yyyy"); | |
if (options.model.startDate) { | |
if (new Date(options.model.startDate) > new Date(options.model.to)) { | |
setDate = ""; | |
} | |
} | |
} | |
break; | |
} | |
that.setValue(setDate, "", options.field); | |
that.enableSave(); | |
} | |
}); | |
var datePicker = input.data("kendoDatePicker"); | |
} | |
} | |
/* kendo grid for start date: Adding Date and Time pickers methods */ | |
private startTimeTemplate(time: any, that: any): any { | |
if (time.startTime == undefined || time.startTime == null || time.startTime == "") { | |
time.startTime = ""; | |
return time.startTime; | |
} | |
// else { | |
// return time.startTime; | |
// } | |
else { | |
console.log("gridDataAll bugTemplate--->", that.gridDataAll); | |
//var sType = that.bulkCreateLovs.bug == undefined ? [] : that.bulkCreateLovs.bug; | |
// var sType = that.gridDataAll.startTime == undefined ? [] : that.gridDataAll.startTime; | |
// var sValue = ''; | |
// var sTypeBug = sType.find(elem => elem.startTime == time.startTime); | |
// if (sTypeBug) { | |
// return sValue = sTypeBug.propertyListValue; | |
// } | |
} | |
} | |
/* Start Time Editor */ | |
private startTimeEditor(container, options, that) { | |
if (options.model.archiveFlag == "Y") { | |
$('<label>' + options.model.startTime + '</label>').appendTo(container); | |
} else { | |
$('<input name="' + options.field + '"/>').appendTo(container).kendoTimePicker({ | |
format: "hh:mm:ss tt", parseFormats: ["hh:mm:ss tt"], value: new Date(), | |
change: function (e) { | |
let grid = that.gridkendo.getGrid(); | |
let gridrow = grid.dataItem(grid.select());//that.gridkendo.getGridselectedRow(); | |
let setTime = ""; | |
if (this.value() != null) { | |
setTime = kendo.toString(new Date(this.value()), "hh:mm:ss tt"); | |
} | |
gridrow.set("startTime", setTime); | |
gridrow.trigger("change"); | |
that.enableSave(); | |
} | |
}); | |
} | |
} | |
/* kendo grid for end date: Adding Date and Time pickers methods */ | |
private endTimeTemplate(time: any, that: any): any { | |
if (time.endTime == undefined || time.endTime == null || time.endTime == "") { | |
time.endTime = "05:00:00 AM"; | |
return "05:00:00 AM"; | |
} else { | |
return time.endTime; | |
} | |
} | |
/* End Time Editor */ | |
private endTimeEditor(container, options, that) { | |
if (options.model.archiveFlag == "Y") { | |
$('<label>' + options.model.endTime + '</label>').appendTo(container); | |
} else { | |
$('<input name="' + options.field + '"/>').appendTo(container).kendoTimePicker({ | |
format: "hh:mm:ss tt", parseFormats: ["hh:mm:ss tt"], value: new Date(2011, 0, 1, 5, 0, 0, 0), | |
change: function (e) { | |
let grid = that.gridkendo.getGrid(); | |
let gridrow = grid.dataItem(grid.select()); | |
let setTime = ""; | |
if (this.value() != null) { | |
setTime = kendo.toString(new Date(this.value()), "hh:mm:ss tt"); | |
} | |
gridrow.set("endTime", setTime); | |
gridrow.trigger("change"); | |
that.enableSave(); | |
} | |
}); | |
} | |
} | |
/* player duration template */ | |
private playerDurationTemplate(type: any, that: any): any { | |
if (type.playerDuration == undefined || type.playerDuration == null || type.playerDuration == "" || type.playerDuration == "-1") { | |
type.playerDuration = ""; | |
return "00:00"; | |
} | |
else { | |
return type.playerDuration; | |
} | |
} | |
/* player end time template*/ | |
private playerEndTimeTemplate(type: any, that: any): any { | |
if (type.playerEndTime == undefined || type.playerEndTime == null || type.playerEndTime == "") { | |
type.playerEndTime = ""; | |
return ""; | |
} | |
else { | |
return type.playerEndTime; | |
} | |
} | |
/* player Duration Editor*/ | |
private playerDurationEditor(container, options, that) { | |
let grid = this.gridkendo.getGrid(); | |
let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
if (editable == false) { | |
$('<span>' + options.model.playerDuration + '</span>').appendTo(container); | |
} else { | |
$('<input name="' + options.field + '"/>').appendTo(container).kendoMaskedTextBox({ | |
mask: "00:00", | |
promptChar: "0", | |
value: options.model.playerDuration, | |
change: function (e) { | |
} | |
}).on("keyup", function (e) { | |
let grid = that.gridkendo.getGrid(); | |
let gridrow = grid.dataItem(grid.select()); | |
let playerEndTimeInx: number = 0; | |
grid.columns.find(function (v, i) { | |
if (grid.columns[i].field == 'playerDuration') { | |
playerEndTimeInx = i - 1; | |
} | |
}); | |
if (!that.validateDurationError($(this).val())) { | |
grid.tbody.find("tr[data-uid='" + gridrow.uid + "']").find("td:eq( " + playerEndTimeInx + " )").removeClass('mandatoryField'); | |
let playerstartTime = that.convertTo24Hour(gridrow.playerStartTime); | |
let endTimeDuration = that.addTimes(playerstartTime, $(this).val()); | |
gridrow.set("playerEndTime", endTimeDuration); | |
if ($(this).val() == "") { | |
gridrow.set("playerDuration", "00:00"); | |
} | |
} else { | |
grid.tbody.find("tr[data-uid='" + gridrow.uid + "']").find("td:eq( " + playerEndTimeInx + " )").addClass('mandatoryField'); | |
} | |
gridrow.trigger("change"); | |
}); | |
} | |
} | |
/* product template method:For displaying and editing days field */ | |
private productTemplate(proType: any, that: any): any { | |
if (that.programList) { | |
for (let i = 0; i < that.programList.length; i++) { | |
if (proType.programType == undefined || proType.programType == null || proType.programType == "") { | |
proType.programType = "product1"; | |
return "product1"; | |
} else if (that.programList[i].program == proType.programType) { | |
let data = that.programList[i].name; | |
console.log("data--->" + data); | |
let value = "<i>" + data + "</i>"; | |
return value; | |
} | |
} | |
} | |
} | |
/* productEditor method:For displaying and editing product field */ | |
private productEditor(container, options, that) { | |
console.log("options--->" + options); | |
this.rowDotMenuClick("true"); | |
if (options.model.archiveFlag == "Y") { | |
console.log("options.model.programType--->" + options.model.programType); | |
$('<label>' + options.model.programType + '</label>').appendTo(container); | |
} else { | |
console.log("options.field--->" + options.field); | |
let input = $('<input name="' + options.field + '" class="k-input" />').appendTo(container); | |
input.kendoComboBox(that.kendoComboBoxOptionProgramEditor).appendTo(container); | |
$('.k-input-readonly').prop('readonly', true); | |
} | |
} | |
// private feedTemplate(type: any, that: any): any { | |
// let dateValue = ""; | |
// if (type.bug == undefined || type.bug == null || type.bug == "") { | |
// type.bug = "" | |
// return type.bug; | |
// } else { | |
// console.log("that.gridDataAll--->" + that.gridDataAll); | |
// // console.log("that.gridDataAll--->" + that.gridDataAll); | |
// var sType = that.gridDataAll.feeds == undefined ? [] : that.gridDataAll.feeds; | |
// var sValue = ''; | |
// var sTypeFeed = sType.find(elem => elem.bug == type.bug); | |
// if (sTypeFeed) { | |
// return sValue = sTypeFeed.feedName; | |
// } | |
// } | |
// } | |
/*Feed Name editor */ | |
// private feedEditor(container, options, that) { | |
// let grid = this.gridkendo.getGrid(); | |
// console.log("feedEditor--->" + grid); | |
// let gridIndex = grid.select().index(); | |
// //let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
// let editable = true; | |
// let scheduleList: any = []; | |
// let scheduleListNo = ''; | |
// let scheduleFeed = ''; | |
// // if (editable == false) { | |
// if (!editable) { | |
// $('<span>' + options.model.bug + '</span>').appendTo(container); | |
// } else { | |
// this.rowDotMenuClick("true"); | |
// console.log("that.gridDataAll feedEditor--->" + that.gridDataAll); | |
// var sType = that.gridDataAll.Bug; | |
// var input = $('<input data-bind="value:' + options.field + '"/>'); | |
// input.appendTo(container) | |
// .kendoComboBox({ | |
// dataSource: sType, | |
// dataTextField: "feedName", | |
// dataValueField: "bug", | |
// change: function (e) { | |
// var value = this.value(); | |
// var sTypeFeed = sType.find(elem => elem.bug == value); | |
// if (sTypeFeed) { | |
// scheduleFeed = sTypeFeed.feedName; | |
// scheduleList = sTypeFeed.schedules; | |
// } | |
// if (scheduleList != null) { | |
// scheduleList = scheduleList[0].scheduleName; | |
// scheduleListNo = scheduleList[0].scheduleNo; | |
// } else { | |
// scheduleList = scheduleFeed; | |
// } | |
// that.setValue(scheduleList, "", 'scheduleName'); | |
// } | |
// }); | |
// } | |
// } | |
//playerSourceTemplate | |
/* Bug template */ | |
private playerSourceTemplate(type: any, that: any): any { | |
if (type.playerSource == undefined || type.playerSource == null || type.playerSource == "") { | |
type.playerSource = ""; | |
return type.playerSource; | |
} else { | |
// console.log("gridDataAll playerSourceTemplate--->", that.gridDataAll); | |
//var sType = that.bulkCreateLovs.bug == undefined ? [] : that.bulkCreateLovs.bug; | |
//that.gridDataAll["player Source/Provider"] | |
var sType = that.gridDataAll.player_SOURCE == undefined ? [] : that.gridDataAll.player_SOURCE; | |
// var sType = that.gridDataAll["player Source/Provider"] == undefined ? [] : that.gridDataAll["player Source/Provider"]; | |
var sValue = ''; | |
var sTypeBug = sType.find(elem => elem.propertyListValueID == type.playerSource); | |
if (sTypeBug) { | |
return sValue = sTypeBug.propertyListValue; | |
} | |
} | |
} | |
// /* Bug template editor */ | |
private playerSourceEditor(container, options, that) { | |
this.rowDotMenuClick("true"); | |
let grid = this.gridkendo.getGrid(); | |
//let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
let editable = true; | |
if (!editable) { | |
$('<span>' + options.model.playerSource + '</span>').appendTo(container); | |
} else { | |
//console.log("gridDataAll bugEditor--->", that.gridDataAll); | |
//var sType = that.gridDataAll["player Source/Provider"]; | |
var sType = that.gridDataAll.player_SOURCE == undefined ? [] : that.gridDataAll.player_SOURCE; | |
var input = $('<input data-text-field="propertyListValue" data-value-field="propertyListValueID" data-bind="value:' + options.field + '"/>'); | |
input.appendTo(container) | |
.kendoComboBox({ | |
dataSource: sType, | |
dataTextField: "propertyListValue", | |
dataValueField: "propertyListValueID", | |
valuePrimitive: true | |
}); | |
} | |
} | |
/* Bug template */ | |
private bugTemplate(type: any, that: any): any { | |
if (type.bug == undefined || type.bug == null || type.bug == "") { | |
type.bug = ""; | |
return type.bug; | |
} else { | |
//console.log("gridDataAll bugTemplate--->", that.gridDataAll); | |
//var sType = that.bulkCreateLovs.bug == undefined ? [] : that.bulkCreateLovs.bug; | |
var sType = that.gridDataAll.BUG == undefined ? [] : that.gridDataAll.BUG; | |
var sValue = ''; | |
var sTypeBug = sType.find(elem => elem.propertyListValueID == type.bug); | |
if (sTypeBug) { | |
return sValue = sTypeBug.propertyListValue; | |
} | |
} | |
} | |
/* Bug template editor */ | |
private bugEditor(container, options, that) { | |
this.rowDotMenuClick("true"); | |
let grid = this.gridkendo.getGrid(); | |
//let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
let editable = true; | |
if (!editable) { | |
$('<span>' + options.model.bug + '</span>').appendTo(container); | |
} else { | |
// console.log("gridDataAll bugEditor--->", that.gridDataAll); | |
var sType = that.gridDataAll.BUG; | |
var input = $('<input data-text-field="propertyListValue" data-value-field="propertyListValueID" data-bind="value:' + options.field + '"/>'); | |
input.appendTo(container) | |
.kendoComboBox({ | |
dataSource: sType, | |
dataTextField: "propertyListValue", | |
dataValueField: "propertyListValueID", | |
valuePrimitive: true | |
}); | |
} | |
} | |
/* ticker template */ | |
private tickerTemplate(type: any, that: any): any { | |
if (type.ticker == undefined || type.ticker == null || type.ticker == "") { | |
type.ticker = ""; | |
return type.ticker; | |
} else { | |
// console.log("gridDataAll tickerTemplate--->", that.gridDataAll); | |
var sType = that.gridDataAll.TICKER == undefined ? [] : that.gridDataAll.TICKER; | |
var sValue = ''; | |
var sTypeTicker = sType.find(elem => elem.propertyListValueID == type.ticker); | |
if (sTypeTicker) { | |
return sValue = sTypeTicker.propertyListValue; | |
} | |
} | |
} | |
/* ticker template editor */ | |
private tickerEditor(container, options, that) { | |
this.rowDotMenuClick("true"); | |
let grid = this.gridkendo.getGrid(); | |
//let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
let editable = true; | |
if (!editable) { | |
//if (editable == false) { | |
$('<span>' + options.model.ticker + '</span>').appendTo(container); | |
} else { | |
console.log("gridDataAll tickerEditor--->", that.gridDataAll); | |
var sType = that.gridDataAll.TICKER; | |
var input = $('<input data-text-field="propertyListValue" data-value-field="propertyListValueID" data-bind="value:' + options.field + '"/>'); | |
input.appendTo(container) | |
.kendoComboBox({ | |
dataSource: sType, | |
dataTextField: "propertyListValue", | |
dataValueField: "propertyListValueID" | |
}); | |
} | |
} | |
/* For displaying and editing days field */ | |
private dayTemplate(day: any, that: any): any { | |
if (that.dayList) { | |
for (let i = 0; i < that.dayList.length; i++) { | |
if (day.dayOfWeek == undefined || day.dayOfWeek == null || day.dayOfWeek == "") { | |
day.dayOfWeek = "Monday"; | |
return "Monday"; | |
} | |
else if (that.dayList[i].day == day.dayOfWeek) { | |
let data = that.dayList[i].name; | |
let value = "<i>" + data + "</i>"; | |
return value; | |
} | |
} | |
} | |
} | |
/* dayEditor method:For displaying and editing days field */ | |
private dayEditor(container, options, that) { | |
this.rowDotMenuClick("true"); | |
if (options.model.archiveFlag == "Y") { | |
$('<label>' + options.model.dayOfWeek + '</label>').appendTo(container); | |
} else { | |
let input = $('<input name="' + options.field + '" class="k-input" />').appendTo(container); | |
input.kendoComboBox(that.kendoComboBoxOptionDayEditor).appendTo(container); | |
$('.k-input-readonly').prop('readonly', true); | |
//that.enableSave(); | |
} | |
} | |
/* player start time template */ | |
private playerStartTimeTemplate(type: any, that: any): any { | |
if (type.playerStartTime == undefined || type.playerStartTime == null || type.playerStartTime == "") { | |
type.playerStartTime = ""; | |
return ""; | |
} | |
else { | |
return type.playerStartTime; | |
} | |
} | |
private playerTimeEditor(container, options, that, timeType) { | |
let grid = this.gridkendo.getGrid(); | |
let editable = grid.dataSource.options.schema.model.fields[options.field].editable; | |
if (editable == false) { | |
if (timeType == "playerStartTime") { | |
$('<span>' + options.model.playerStartTime + '</span>').appendTo(container); | |
} else { | |
$('<span>' + options.model.playerEndTime + '</span>').appendTo(container); | |
} | |
} else { | |
if (timeType == "playerStartTime") { | |
var defaultVal = options.model.playerStartTime; | |
} else { | |
var defaultVal = options.model.playerEndTime; | |
} | |
var blockSnapTimeInterval = that.blockSnapTimeInterval; | |
$('<input name="' + options.field + '"/>').appendTo(container).kendoTimePicker({ | |
format: "hh:mm tt", parseFormats: ["hh:mm tt"], value: defaultVal, min: new Date(2000, 0, 1, 6, 0, 0), | |
max: new Date(2000, 0, 1, 6, 0, 0), interval: blockSnapTimeInterval, | |
change: function (e) { | |
let grid = that.gridkendo.getGrid(); | |
let gridrow = grid.dataItem(grid.select()); | |
let setTime = ""; | |
let playerEndTimeInx: number = 0; | |
grid.columns.find(function (v, i) { | |
if (grid.columns[i].field == 'playerEndTime') { | |
playerEndTimeInx = i - 1; | |
} | |
}); | |
if (this.value() != null) { | |
setTime = kendo.toString(new Date(this.value()), "hh:mm tt"); | |
} | |
if (timeType == "playerStartTime") { | |
let playerDuration = ""; | |
if (gridrow.playerDuration == "") { | |
playerDuration = gridrow.blockDuration; | |
gridrow.set("playerDuration", gridrow.blockDuration); | |
} | |
gridrow.set("playerStartTime", setTime); | |
let playerStartTime = that.convertTo24Hour(setTime); | |
let endTime = that.addTimes(playerStartTime, gridrow.playerDuration); | |
gridrow.set("playerEndTime", endTime); | |
} /* else { | |
gridrow.set("playerEndTime", setTime); | |
let startval = that.convertTo24Hour(gridrow.playerStartTime); | |
let endval = that.convertTo24Hour(gridrow.playerEndTime); | |
let differ = that.TimeDifference(endval, startval); | |
if (parseInt(startval) < parseInt(endval)) { | |
grid.tbody.find("tr[data-uid='" + gridrow.uid + "']").find("td:eq( " + playerEndTimeInx + " )").removeClass('mandatoryField'); | |
gridrow.set("playerDuration", differ); | |
} else { | |
grid.tbody.find("tr[data-uid='" + gridrow.uid + "']").find("td:eq( " + playerEndTimeInx + " )").addClass('mandatoryField'); | |
} | |
} */ | |
gridrow.trigger("change"); | |
} | |
}); | |
} | |
} | |
scheduleNotesEditor(container: any, options: any, that: any) { | |
let activeRow = that.gridkendo.selectedDotRow; | |
if (options.model.archiveFlag === "Y" || activeRow.statusName === "Approved") { | |
$("<label class='notesToolTip'><span title='" + options.model.description + "'>" + options.model.description + "</span></label>").appendTo(container); | |
} else { | |
$('<input name="' + options.field + '" class="k-input-readonly"/>').appendTo(container); | |
$("#notesDialogFeed").kendoWindow({ | |
title: false, | |
width: "650px", | |
visible: false, | |
resizable: false, | |
draggable: false, | |
actions: false, | |
modal: true, | |
open: function (e) { $("html, body").css("overflow", "hidden"); }, | |
close: function (e) { $("html, body").css("overflow", ""); }, | |
activate: function () { | |
$('#notesData').focus(); | |
} | |
}); | |
let dialog = $("#notesDialogFeed").data("kendoWindow").center().open(); | |
let notes = options.model.description; | |
if (options.model.description != null) { | |
notes = options.model.description | |
} else { | |
notes = ""; | |
} | |
$(".notesDatacls").val(notes); | |
$(".notestOkCls").unbind().click(function () { | |
dialog.close(); | |
let grid = that.gridkendo.getGrid(); | |
let selectedRow = that.gridkendo.getGridselectedRow(); | |
let notesVal = $(".notesDatacls").val() | |
if (selectedRow) { | |
let currentcell = grid.tbody.find(".k-edit-cell"); | |
selectedRow.set("description", $.trim(notesVal)); | |
grid.editCell(currentcell.next()); | |
grid.closeCell(currentcell); | |
if (selectedRow.dirty == true) { | |
that.enableSave(); | |
that.disableSavebutton = false; | |
that.disableOpenbutton = true; | |
} | |
} | |
$(".notesToolTip").kendoTooltip({ filter: "span[title]" }); | |
}); | |
$("#notesCancel").unbind().click(function () { | |
dialog.close(); | |
let grid = that.gridkendo.getGrid(); | |
let currentcell = grid.tbody.find(".k-edit-cell"); | |
grid.editCell(currentcell.next()); | |
grid.closeCell(currentcell); | |
$(".notesToolTip").kendoTooltip({ filter: "span[title]" }); | |
//that.enableSave(); | |
}); | |
} | |
} | |
rowDotMenuClick(values: any): void { | |
let that = this; | |
if (values.selectedMenuItem == 'Delete') { | |
let strMessage = 'Are you sure you want to delete the selected schedule?'; | |
this.gridkendo.gridDeleteRow(values.Selectedrow, strMessage); | |
} | |
} | |
onTimeWidth(id, interval) { | |
setTimeout(function () { | |
let split = 1; | |
if (interval == 30) { | |
split = 2; | |
} else if (interval == 15) { | |
split = 4; | |
} | |
$('.k-animation-container').find('.k-list-container ul#' + id + '_timeview').parent().addClass('timeSplit' + split); | |
$('.k-animation-container').find('.k-list-container ul#' + id + '_timeview').parent().parent().addClass('timeSplit' + split); | |
$('#' + id + '_timeview li').css({ "float": "left", "width": 76, "font-size": "12px" }); | |
}, 200); | |
} | |
/* Calculates week count based on start and end date */ | |
calculateEndDate(givenDate, weekCount) { | |
let weekDaysCount = parseInt(weekCount) * 7; | |
weekDaysCount = weekDaysCount - 1; | |
let newDate = new Date(givenDate.getFullYear(), givenDate.getMonth(), givenDate.getDate() + weekDaysCount); | |
return newDate; | |
} | |
// handleWeek(newValue) { | |
// let SelectedStartDate = $('#startDate').data("kendoDatePicker").value(); | |
// if (SelectedStartDate == undefined || SelectedStartDate == null) { | |
// SelectedStartDate = new Date(); | |
// } | |
// let weekDays = this.calculateEndDate(SelectedStartDate, this.playerBulkUpdateVal.weekCount); | |
// $('#endDate').data("kendoDatePicker").value(weekDays); | |
// this.validateSearch(); | |
// } | |
handleWeek(newValue) { | |
if (newValue) { | |
let SelectedStartDate = this.playerBulkUpdateVal.startDate; | |
if (SelectedStartDate === undefined || SelectedStartDate === null) { | |
SelectedStartDate = new Date(); | |
} | |
this.playerBulkUpdateVal.endDate = this.calculateEndDate(SelectedStartDate, this.playerBulkUpdateVal.weekCount); | |
$("#endDate").data("kendoDatePicker").value(this.playerBulkUpdateVal.endDate); | |
this.validateSearch(); | |
} | |
} | |
updateEditOrReadonly(changeEditOrRead: any): void { | |
let that = this; | |
this.ccRadioFlags = { | |
"locked": changeEditOrRead.locked, | |
"startDate": changeEditOrRead.startDate, | |
"startTime": changeEditOrRead.startTime, | |
"blockDuration": changeEditOrRead.blockDuration, | |
"endTime": changeEditOrRead.endTime, | |
"programName": "false", | |
"programType": changeEditOrRead.programType, | |
"playerStartTime": "false", | |
"actualEndTime": changeEditOrRead.actualEndTime, | |
"actualDuration": changeEditOrRead.actualDuration, | |
"masterSeries": changeEditOrRead.masterSeries, | |
"version": changeEditOrRead.version, | |
"schedulingType": changeEditOrRead.schedulingType, | |
"format": changeEditOrRead.format, | |
"notes": changeEditOrRead.notes | |
}; | |
let grid = that.gridkendo.getGrid(); | |
let data = grid.dataSource.at(0); | |
data.fields["startDate"].editable = this.ccRadioFlags.startDate == "editable" ? true : false; | |
data.fields["startTime"].editable = this.ccRadioFlags.startTime == "editable" ? true : false; | |
data.fields["blockDuration"].editable = this.ccRadioFlags.blockDuration == "editable" ? true : false; | |
data.fields["endTime"].editable = this.ccRadioFlags.endTime == "editable" ? true : false; | |
data.fields["programName"].editable = this.ccRadioFlags.programName == "editable" ? true : false; | |
data.fields["programType"].editable = this.ccRadioFlags.programType == "editable" ? true : false; | |
data.fields["playerStartTime"].editable = this.ccRadioFlags.playerStartTime == "editable" ? true : false; | |
data.fields["actualEndTime"].editable = this.ccRadioFlags.actualEndTime == "editable" ? true : false; | |
data.fields["actualDuration"].editable = this.ccRadioFlags.actualDuration == "editable" ? true : false; | |
data.fields["masterSeries"].editable = this.ccRadioFlags.masterSeries == "editable" ? true : false; | |
data.fields["version"].editable = this.ccRadioFlags.version == "editable" ? true : false; | |
data.fields["schedulingType"].editable = this.ccRadioFlags.schedulingType == "editable" ? true : false; | |
data.fields["format"].editable = this.ccRadioFlags.format == "editable" ? true : false; | |
data.fields["notes"].editable = this.ccRadioFlags.notes == "editable" ? true : false; | |
} | |
// createPreferences() { | |
// this.createPreferencesPopUpWindow.data("kendoWindow").open(); | |
// } | |
// cancelPreferences(): void { | |
// this.createPreferencesPopUpWindow.data("kendoWindow").close(); | |
// } | |
// okPreferences(): void { | |
// this.createPreferencesPopUpWindow.data("kendoWindow").close(); | |
// } | |
openCheck() { | |
//console.log('openCheck--->'); | |
} | |
playerCheckBoxClick(e) { | |
// console.log('playerCheckBoxClick--->', e); | |
// this.count1 = this.count1 + 1; | |
// console.log('count 4--->' + this.count1); | |
// if (this.count1 % 3 == 0) { | |
// // apply new style | |
// console.log('multiple of 4--->' + this.count1); | |
// this.multipleOf3 = true; | |
// } else { | |
// this.multipleOf3 = false; | |
// } | |
} | |
// public threeState(event) { | |
// // attach event to button | |
// this.count1 = this.count1 + 1; | |
// //console.log('this.count--->' + this.count); | |
// if (this.count1 % 3 == 0) { | |
// // apply new style | |
// //console.log('multiple of 3--->' + this.count); | |
// this.multipleOf3 = true; | |
// } else { | |
// this.multipleOf3 = false; | |
// } | |
// } | |
/* player checkbox template */ | |
// private playerCheckBox(type: any, that: any) { | |
// let value; | |
// if (type.fieldName == undefined || type.fieldName == null || type.fieldName == "") { | |
// value = "<input type='checkbox' class='checkBox playerFlagBtn' id='playerFlagBtn' />"; | |
// } else { | |
// value = "<input type='checkbox' checked class='checkBox playerFlagBtn' id='playerFlagBtn' />"; | |
// } | |
// return value; | |
// } | |
public playerExport(): void { | |
//console.log("playerExport--->" + this.bulkGridData); | |
//this.bulkGridData; | |
let grid = this.gridkendo.getGrid(); | |
//console.log("playerExport--->" + grid); | |
grid.hideColumn(1); | |
//console.log("datasource---->", datasource); | |
this.gridkendo.exportExcel(); | |
//console.log("exportExcel--->", this.gridkendo.exportExcel()); | |
grid.showColumn(1); | |
//console.log("playerExport---->"); | |
this.gridkendo.setContextMenu(); | |
//console.log("playerExport--->", this.gridkendo.setContextMenu()); | |
} | |
private gridValidate() { | |
let that = this; | |
var rowData = []; | |
var grid = that.gridkendo.getGrid(); | |
var gridData = grid.dataSource.data(); | |
$.each(gridData, function (k, v) { | |
if (gridData[k].duplicateRow == true) { | |
rowData.push(gridData[k]); | |
} | |
}); | |
if (rowData.length == 0) { | |
that.enableSave(false); | |
this.gridkendo.setdialog('No validation errors or warnings', "ok", null); | |
} | |
else { | |
that.enableSave(true); | |
//that.validateGridPopup.validateGrid(rowData); | |
} | |
} | |
// enableSave(action) { | |
// let that = this; | |
// that.saveEnable = action; | |
// } | |
public threeState(event) { | |
console.log("event--->" + event); | |
if (event.target.checked) { | |
this.playerBulkUpdateVal.player = true; | |
} else { | |
this.playerBulkUpdateVal.player = false; | |
} | |
// attach event to button | |
this.count1 = this.count1 + 1; | |
console.log('this.count--->' + this.count); | |
if (this.count1 % 3 == 0) { | |
// apply new style | |
this.playerBulkUpdateVal.player = ""; | |
console.log('multiple of 3--->' + this.count); | |
this.multipleOf3 = true; | |
} else { | |
this.multipleOf3 = false; | |
} | |
} | |
// changePreference(event) { | |
// let that = this; | |
// let value = event.target.value; | |
// let grid = this.gridkendo.getGrid(); | |
// if (value != '') { | |
// that.preferenceName = value; | |
// that.disablePrefAddEdit = true; | |
// /* selected pref details */ | |
// let prefData = that.preferenceData; | |
// /* end */ | |
// for (var k = 0; k < prefData.length; k++) { | |
// if (prefData[k].preferenceName == value) { | |
// let prefList = prefData[k].preferenceList; | |
// that.preferenceSetting(prefList); | |
// } | |
// } | |
// } else { | |
// that.disablePrefAddEdit = false; | |
// that.resetColumns(grid); | |
// this.gridCustomization(); | |
// } | |
// } | |
// changePreference(event) { | |
// let that = this; | |
// let value = event.target.value; | |
// let grid = this.gridkendo.getGrid(); | |
// if (value != '') { | |
// that.preferenceName = value; | |
// that.disablePrefAddEdit = true; | |
// /* selected pref details */ | |
// let prefData = that.preferenceData; | |
// /* end */ | |
// let getPrefList = prefData.find(elem => elem.preferenceName == value); | |
// if (getPrefList) { | |
// that.preferenceSetting(getPrefList.preferenceList); | |
// } | |
// } else { | |
// that.disablePrefAddEdit = false; | |
// that.resetColumns(grid); | |
// that.columns = Object.keys(this.resetPreferenceContext).map(i => this.resetPreferenceContext[i]); | |
// this.metaAggregateCopy.changeColumns = Object.keys(this.resetPreferenceContext).map(i => this.resetPreferenceContext[i]); | |
// this.gridCustomization(); | |
// } | |
// } | |
changePreference(event) { | |
let that = this; | |
let value = event.target.value; | |
let grid = this.gridkendo.getGrid(); | |
if (value != '') { | |
that.preferenceName = value; | |
that.disablePrefAddEdit = true; | |
/* selected pref details */ | |
let prefData = that.preferenceData; | |
/* end */ | |
let getPrefList = prefData.find(elem => elem.preferenceName == value); | |
if (getPrefList) { | |
that.preferenceSetting(getPrefList.preferenceList); | |
} | |
} else { | |
that.disablePrefAddEdit = false; | |
that.resetColumns(grid); | |
that.columns = Object.keys(this.resetPreferenceContext).map(i => this.resetPreferenceContext[i]); | |
//this.metaAggregateCopy.changeColumns = Object.keys(this.resetPreferenceContext).map(i => this.resetPreferenceContext[i]); | |
this.gridCustomization(); | |
} | |
} | |
resetColumns(grid) { | |
for (var i = 0; i < grid.options.columns.length; i++) { | |
var field = grid.options.columns[i].field; | |
for (var j = 0; j < grid.columns.length; j++) { | |
if (grid.columns[j].field == field) { | |
grid.reorderColumn(i, grid.columns[j]); | |
} | |
} | |
} | |
} | |
gridCustomization() { | |
let that = this; | |
let columnData = that.columns; | |
// let columnData = [ | |
// { | |
// airingProperty: "Schedule Name", | |
// airingPropertyParms: "scheduleName", | |
// readOnly: false, | |
// editable: true, | |
// default: true, | |
// visible: false | |
// } | |
// ]; | |
that.changeColsProperty(); | |
let grid = this.gridkendo.getGrid(); | |
let gridLen = grid.dataSource.data().length | |
let colLen = columnData.length; | |
for (let j = 3; j < grid.columns.length; j++) { | |
console.log("(gridCustomization grid.columns[j]---->", grid.columns[j]); | |
console.log("(gridCustomization grid.columns[j].field);---->", grid.columns[j].field); | |
let hide = grid.hideColumn(grid.columns[j].field); | |
console.log("gridCustomization grid.hideColumn(grid.columns[j].field);---->", hide); | |
} | |
for (var i = 0; i < colLen; i++) { | |
//Default ->true AND Visible -> true | |
//show in grid and hide in right click | |
if (columnData[i].default == true && columnData[i].visible == true) { | |
grid.showColumn(columnData[i].airingPropertyParms); | |
} | |
//Default ->true AND Visible -> False | |
//hide both grid and right click | |
if (columnData[i].default == true && columnData[i].visible == false) { | |
grid.hideColumn(columnData[i].airingPropertyParms); | |
} | |
//Default ->false AND Visible -> true | |
//show in grid and show in right click with checked items | |
if (columnData[i].default == false && columnData[i].visible == true) { | |
grid.showColumn(columnData[i].airingPropertyParms); | |
} | |
//Default ->false AND Visible -> False | |
//hide in grid, show in right click with unchecked items | |
if (columnData[i].default == false && columnData[i].visible == false) { | |
grid.hideColumn(columnData[i].airingPropertyParms); | |
} | |
} | |
} | |
changeColsProperty() { | |
let props = this.tempset; | |
let grid = this.gridkendo.getGrid(); | |
if (props) { | |
for (var i = 0; i < props.length; i++) { | |
var fName = props[i].airingPropertyParms; | |
if (grid.dataSource.options.schema.model.fields[fName]) { | |
grid.dataSource.options.schema.model.fields[fName].editable = props[i].editable; | |
} | |
} | |
} | |
console.log(grid) | |
} | |
private preferenceSetting(list) { | |
let gridCol; | |
let grid = this.gridkendo.getGrid(); | |
for (let j = 0; j < grid.columns.length; j++) { | |
console.log("(preferenceSetting grid.columns[j]---->", grid.columns[j]); | |
console.log("(preferenceSetting grid.columns[j].field);---->", grid.columns[j].field); | |
console.log("preferenceSetting grid.hideColumn(grid.columns[j].field);---->", grid.hideColumn(grid.columns[j].field)); | |
grid.hideColumn(grid.columns[j].field); | |
} | |
for (let i = 0; i < list.length; i++) { | |
let position = parseInt(list[i].visiblePosition + ""); | |
if (list[i].columnName == 'day') { list[i].columnName = 'dayOfWeekNo'; } | |
if (list[i].visibleState) { | |
grid.showColumn(list[i].columnName); | |
} | |
gridCol = grid.columns.find(function (m, n) { return grid.columns[n].field == list[i].columnName; }) | |
grid.reorderColumn(position, gridCol); | |
} | |
} | |
createPreferences() { | |
let that = this; | |
$('#createPreferencesPopup .kPopUpTitle').text('Add Preferences'); | |
$('.preferenceName').val(''); | |
let dialogConfirm = $("#createPreferencesPopup").data("kendoWindow").center().open(); | |
$("#okPreferences").unbind().click(function () { | |
that.createUpdatePreference('create'); | |
dialogConfirm.close(); | |
}); | |
$("#cancelPreferences").unbind().click(function () { | |
dialogConfirm.close(); | |
}); | |
} | |
editPreferences() { | |
let that = this; | |
$('#createPreferencesPopup .kPopUpTitle').text('Edit Preferences'); | |
//let dialogConfirm = $("#createPreferencesPopUpWindow").data("kendoWindow").center().open(); | |
let dialogConfirm = $("#createPreferencesPopup").data("kendoWindow").center().open(); | |
$('.preferenceName').val(that.preferenceName); | |
$('.okPreferences').attr('disabled', 'disabled'); | |
$("#okPreferences").unbind().click(function () { | |
that.createUpdatePreference('update'); | |
dialogConfirm.close(); | |
}); | |
$("#cancelPreferences").unbind().click(function () { | |
dialogConfirm.close(); | |
}); | |
} | |
checkPrefName(event) { | |
let that = this; | |
let value = event.target.value; | |
if ($.trim(value) != '') { | |
$('.okPreferences').removeAttr('disabled'); | |
} else { | |
$('.okPreferences').attr('disabled', 'disabled'); | |
} | |
} | |
createUpdatePreference(type) { | |
let that = this; | |
let prefValue = $('.preferenceName').val(); | |
//console.log(" createUpdatePreference prefValue--->" + prefValue); | |
let len = that.preferenceData.length; | |
let checkExist = false; | |
for (let i = 0; i < len; i++) { | |
if (that.preferenceData[i].preferenceName.toLowerCase() == prefValue.toLowerCase()) { | |
// if (that.preferenceData[i].preferenceName.toLowerCase() == prefValue.toLowerCase()) { | |
// if (true) { | |
checkExist = true; | |
break; | |
} | |
} | |
if (type == 'create') { | |
if (checkExist) { | |
let strMessage = 'Preferences name already exist.'; | |
that.gridkendo.setdialog(strMessage, "ok", null); | |
} else { | |
let preferenceData = this.getPreference(); | |
let createPref: any = { | |
//"networkNo": this.bulkCreateVal.networkNo, | |
//bulkCreateValplayer | |
"networkNo": this.bulkCreateValplayer.networkNo, | |
"operationType": "Create", | |
"preferenceName": prefValue, | |
"preferenceNo": "", | |
"preferenceList": preferenceData | |
}; | |
that.preferenceData.push(createPref); | |
that.preferenceName = prefValue; | |
console.log(" that.preferenceName--->", that.preferenceName); | |
that.prefSelectedName = prefValue; | |
} | |
} else { | |
for (let i = 0; i < len; i++) { | |
if (that.preferenceData[i].preferenceName == that.preferenceName) { | |
that.preferenceData[i].preferenceName = prefValue; | |
console.log(" that.preferenceData[i].preferenceName--->", that.preferenceData[i].preferenceName); | |
that.preferenceData[i].operationType = 'update'; | |
break; | |
} | |
} | |
} | |
that.disablePrefSave = false; | |
} | |
clearPreferences() { | |
let that = this; | |
let prefValue = $('.preferenceName').val(); | |
console.log(" clearPreferences prefValue--->" + prefValue); | |
let len = that.preferenceData.length; | |
let checkExist = that.preferenceData.includes(prefValue); | |
let strMessage = 'Are you sure you want to delete the selected preferences?'; | |
let getPrefNo; | |
$('#commonPopup .kPopUpTitle').text('animal'); | |
$("#commonPopup .kendoContent").text(strMessage); | |
let dialogConfirm = $("#commonPopup").data("kendoWindow").center().open(); | |
$("#popupOK").unbind().click(function () { | |
// that.progress.requestStart(); | |
for (let i = 0; i < len; i++) { | |
if (that.preferenceData[i].preferenceName == that.preferenceName) { | |
getPrefNo = that.preferenceData[i].preferenceNo; | |
that.preferenceData.splice(i, 1); | |
break; | |
} | |
} | |
that.sportsuService.getResponse('authorization/v1/deletePreferences?preferenceNo=' + getPrefNo, 'delete', {}).subscribe(data => { | |
that.disablePrefSave = true; | |
that.disablePrefAddEdit = false; | |
// that.progress.requestEnd(); | |
}, err => { | |
console.log("clearPreferences error"); | |
// that.progress.requestEnd(); | |
}); | |
dialogConfirm.close(); | |
}); | |
$("#popupCancel").unbind().click(function () { | |
dialogConfirm.close(); | |
}); | |
} | |
cancelPreferences() { | |
$("#createPreferencesPopup").data("kendoWindow").close(); | |
} | |
// private savePreferences() { | |
// let that = this; | |
// let preferenceData = this.getPreference(); | |
// // console.log(preferenceData); | |
// let data = { | |
// "networkNo": this.bulkCreateVal.networkNo, | |
// "operationType": "Create", | |
// "preferenceName": this.preferenceName, | |
// "preferenceNo": "", | |
// "preferenceList": preferenceData | |
// }; | |
// for (var i = 0; i < this.preferenceData.length; i++) { | |
// if (that.preferenceData[i].preferenceName == that.preferenceName) { | |
// that.preferenceData[i].preferenceList = []; | |
// that.preferenceData[i].preferenceList = preferenceData; | |
// break; | |
// } | |
// } | |
// // this.preferenceData.push(data); | |
// //this.progress.requestStart(); | |
// console.log(preferenceData); | |
// this.sportsuService.getResponse('authorization/v1/savePreferences', 'post', data).subscribe( | |
// data => { | |
// console.log(data); | |
// this.disablePrefSave = true; | |
// // this.progress.requestEnd(); | |
// }, | |
// err => { | |
// console.log("error"); | |
// // this.progress.requestEnd(); | |
// }); | |
// } | |
private savePreferences() { | |
let that = this; | |
let preferenceData = this.getPreference(); | |
// console.log(preferenceData); | |
let data = { | |
"networkNo": this.bulkCreateVal.networkNo, | |
"operationType": "Create", | |
"preferenceName": this.preferenceName, | |
"preferenceNo": "", | |
"preferenceList": preferenceData | |
}; | |
for (var i = 0; i < this.preferenceData.length; i++) { | |
if (that.preferenceData[i].preferenceName == that.preferenceName) { | |
that.preferenceData[i].preferenceList = []; | |
that.preferenceData[i].preferenceList = preferenceData; | |
break; | |
} | |
} | |
// this.preferenceData.push(data); | |
//this.progress.requestStart(); | |
console.log(preferenceData); | |
this.sportsuService.getResponse('authorization/v1/savePreferences', 'post', data).subscribe( | |
data => { | |
console.log(data); | |
this.disablePrefSave = true; | |
// this.progress.requestEnd(); | |
}, | |
err => { | |
console.log("error"); | |
// this.progress.requestEnd(); | |
}); | |
} | |
private getPreference(): any { | |
let savePreference = []; | |
//let columns=this.metaAggregateCopy.changeColumns; | |
// let columns = [{}]; | |
let that = this; | |
let columns = that.columns; | |
let grid = this.gridkendo.getGrid(); | |
for (let i = 0; i < grid.columns.length; i++) { | |
let visibleState = false; | |
if (grid.columns[i].hidden) { | |
visibleState = false | |
} else { | |
visibleState = true; | |
} | |
let preferenceValue = { | |
"columnName": grid.columns[i].field, | |
"visiblePosition": i, | |
"visibleState": visibleState | |
} | |
savePreference.push(preferenceValue); | |
} | |
return savePreference; | |
} | |
lockedScheduleMsgShow(responseData) { | |
let that = this; | |
//let lockedScheduleMsg = responseData.msg; | |
let lockedScheduleMsg = ["Schedule April 2018 old 2.13.18 (packet) for USA N…cked out by Thirukumaran Palani (SSO: 206492110)."] | |
let getMessageDetail = ""; | |
for (let k = 0; k < lockedScheduleMsg.length; k++) { | |
getMessageDetail = getMessageDetail + ("<div style='margin: 15px 0px;'>" + lockedScheduleMsg[k] + "</div>"); | |
} | |
$('#lockedSchedulePopup .kPopUpTitle').text('Scheduling'); | |
$("#lockedSchedulePopup .kendoContent").html(getMessageDetail); | |
let confirm = $("#lockedSchedulePopup").data("kendoWindow").center().open(); | |
$("#lockedSchedulePopupOK").unbind().click(function () { | |
confirm.close(); | |
that.callGridLoadData(responseData); | |
}); | |
$("#lockedSchedulePopupCancel").unbind().click(function () { | |
confirm.close(); | |
}); | |
} | |
callGridLoadData(responseData) { | |
let that = this; | |
//if (responseData.schedItems.length > 0) { | |
// if (responseData > 0) { | |
// response.data.properties | |
this.bulkGridData = responseData; | |
this.gridDataAll = responseData; | |
console.log("callGridLoadData this.gridDataAll--->", that.gridDataAll); | |
this.gridDataLoad(); | |
//bulkCreateValplayer | |
//this.loadPreference(this.bulkCreateVal.networkNo); | |
this.loadPreference(this.bulkCreateValplayer.networkNo); | |
//} | |
} | |
showSchedulesDaterangePopup(responseData) { | |
let that = this; | |
$("#airingsDatarangePopup .kendoContent").html("Airings are created only for the selected schedule(s) date range"); | |
let warningMsg = $("#airingsDatarangePopup").data("kendoWindow").center().open(); | |
$("#airingsDatarangePopupOk").unbind().click(function () { | |
warningMsg.close(); | |
if (responseData.msg.length > 0) { | |
that.lockedScheduleMsgShow(responseData); | |
} else { | |
that.callGridLoadData(responseData); | |
} | |
}); | |
} | |
lockedSchedulePopup(dialogId) { | |
$(dialogId).kendoWindow({ | |
title: false, | |
width: "700px", | |
visible: false, | |
resizable: false, | |
draggable: false, | |
modal: true, | |
actions: {}, | |
open: function (e) { $("html, body").css("overflow", "hidden"); }, | |
close: function (e) { $("html, body").css("overflow", ""); } | |
}); | |
} | |
reloadGridDataSource() { | |
this.gridkendo.reloadDataSource(this.bulkGridData); | |
} | |
hideContext() { | |
var contextMenu1 = $("#context-menu").data("kendoContextMenu"); | |
if (contextMenu1) | |
// contextMenu1.close(); | |
var contextMenu2 = $("#bulk-context-menu").data("kendoContextMenu"); | |
if (contextMenu2) | |
// contextMenu2.close(); | |
return true; | |
} | |
saveResponseNotify(savedResponse) { | |
let that = this; | |
this.createDialog("#saveWarningPopup"); | |
let dialogConfirm = $("#saveWarningPopup").data("kendoWindow").center().open(); | |
$("#saveWarningPopupOk").unbind().click(function () { | |
dialogConfirm.close(); | |
if (savedResponse.conflicts.length > 0) { | |
//that.bulkcreateConflictGridPopup.conflictGridOpen(savedResponse.conflicts); | |
that.playerConflictGridPopup.conflictGridOpen(savedResponse.conflicts); | |
} else { | |
that.bulkGridData = []; | |
that.reloadGridDataSource(); | |
that.enableSave(true); | |
} | |
}); | |
} | |
closeConflictGrid() { | |
this.bulkGridData = []; | |
this.gridkendo.reloadDataSource(this.bulkGridData); | |
this.enableSave(true); | |
} | |
enableSave(action) { | |
let that = this; | |
that.saveBtnEnableDisable = action; | |
} | |
createDialog(dialogId) { | |
$(dialogId).kendoWindow({ | |
title: false, | |
width: "350px", | |
visible: false, | |
resizable: false, | |
draggable: false, | |
modal: true, | |
actions: {}, | |
open: function (e) { $("html, body").css("overflow", "hidden"); }, | |
close: function (e) { $("html, body").css("overflow", ""); } | |
}); | |
} | |
onDataBound(e) { | |
let that = this; | |
let grid = that.gridkendo.getGrid(); | |
var gridData = e.sender.dataSource.data(); | |
that.totalAiringsCount = gridData.length; | |
//console.log(e) | |
for (var i = 0; i < gridData.length; i++) { | |
//if (gridData[i].gridCheck == true) { | |
gridData[i].gridCheck = true | |
e.sender.tbody.find("tr[data-uid='" + gridData[i].uid + "'] td .gridCheckBox").attr('checked', true); | |
//else { | |
// e.sender.tbody.find("tr[data-uid='" + gridData[i].uid + "'] td .gridCheckBox").removeAttr('checked'); | |
// } | |
if (gridData[i].duplicateRow == true) { | |
$('.bulkCreateGrid .k-grid-content tbody').find("tr[data-uid='" + gridData[i].uid + "']").addClass('duplicateRows'); | |
console.log('called exist highlight') | |
} | |
// if (that.showOverlap == false) { | |
// if (gridData[i].action == 'Delete') { | |
// e.sender.tbody.find("tr[data-uid='" + gridData[i].uid + "']").hide(); | |
// $('.bulkCreateGrid .k-grid-content-locked tbody').find("tr[data-uid='" + gridData[i].uid + "']").hide(); | |
// } | |
// } else { | |
// if (gridData[i].action == 'Delete') { | |
// e.sender.tbody.find("tr[data-uid='" + gridData[i].uid + "']").show(); | |
// $('.bulkCreateGrid .k-grid-content-locked tbody').find("tr[data-uid='" + gridData[i].uid + "']").show(); | |
// e.sender.tbody.find("tr[data-uid='" + gridData[i].uid + "']").addClass("rowDisabled"); | |
// $('.bulkCreateGrid .k-grid-content-locked tbody').find("tr[data-uid='" + gridData[i].uid + "']").addClass("rowDisabled"); | |
// } | |
// } | |
} | |
$(".gridCheckBox").unbind().bind("click", function (e) { | |
var myItem = grid.dataItem($(this).closest("tr")); | |
myItem.gridCheck = (myItem.gridCheck) ? false : true; | |
if (myItem.gridCheck == false) { | |
that.totalAiringsCount -= 1; | |
} else { | |
that.totalAiringsCount += 1; | |
} | |
if (that.totalAiringsCount == 0) { | |
that.disableNoAirings = true; | |
} else { | |
that.disableNoAirings = false; | |
} | |
}); | |
} | |
bulkContextMenu() { | |
let that = this; | |
//var contextMenu = $("#bulk-context-menu").kendoContextMenu().data("kendoContextMenu"); | |
setTimeout(function () { | |
$("#bulk-context-menu").kendoContextMenu({ | |
target: "#KendoGridView .k-grid-header thead tr:nth-child(1)", | |
animation: { | |
open: { | |
effects: "fadeIn" | |
} | |
//, | |
//closeOnClick: false | |
}, | |
open: function (e) { | |
that.bulkKeys = []; | |
let contextRow = ''; | |
var columns = that.columns; | |
//var columns = that.metaAggregateCopy.changeColumns; | |
// var columns = [ | |
// { airingProperty: "Locked", airingPropertyParms: "locked", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Schedule Name", airingPropertyParms: "scheduleName", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Feed Name", airingPropertyParms: "feedNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Start Date", airingPropertyParms: "startDate", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Day Of Week", airingPropertyParms: "dayOfWeekNo", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Start Time", airingPropertyParms: "startTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Block Duration", airingPropertyParms: "blockDuration", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "End Time", airingPropertyParms: "endTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Actual Start Time", airingPropertyParms: "actualStartTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Actual Duration", airingPropertyParms: "actualDuration", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Actual End Time", airingPropertyParms: "actualEndTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Program Name", airingPropertyParms: "programName", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Flag", airingPropertyParms: "playerFlag", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Date", airingPropertyParms: "playerDate", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Start Time", airingPropertyParms: "playerStartTime", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Duration", airingPropertyParms: "playerDuration", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player End Time", airingPropertyParms: "playerEndTime", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "player Source/Provider", airingPropertyParms: "playerSource", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "player Notes", airingPropertyParms: "playerNotes", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "HD", airingPropertyParms: "playerHDFlag", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Record", airingPropertyParms: "playerRecordFlag", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Bug", airingPropertyParms: "bug", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Ticker", airingPropertyParms: "ticker", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Network", airingPropertyParms: "desNetwork", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "SD Delivery", airingPropertyParms: "sddelivery", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "HD Delivery", airingPropertyParms: "hddelivery", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "DBS Spotbeam", airingPropertyParms: "dbsspotbeam", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "TVE Status", airingPropertyParms: "tvestatus", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Program Type", airingPropertyParms: "programType", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Master Series", airingPropertyParms: "seriesNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Program Code", airingPropertyParms: "programCode", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Alternate Color", airingPropertyParms: "alternateColor", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Title Name", airingPropertyParms: "titleName", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Title Owner Network", airingPropertyParms: "titleOwnerNetwork", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Episode #", airingPropertyParms: "distEpisodeID", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Season", airingPropertyParms: "seasonName", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Version", airingPropertyParms: "houseNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Scheduling Type", airingPropertyParms: "scheduleTypeNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Closed Captioning", airingPropertyParms: "closedCaptioning", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "VOD", airingPropertyParms: "vod", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "DES", airingPropertyParms: "des", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Scheduling Category", airingPropertyParms: "schedCategory", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Definition", airingPropertyParms: "scheduleDefinitionNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Format", airingPropertyParms: "formatNo", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Format Description", airingPropertyParms: "formatName", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Notes", airingPropertyParms: "commentText", readOnly: false, editable: true, editableDisabled: false }, | |
// { airingProperty: "Schedule Item #", airingPropertyParms: "schedItemNo", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Title #", airingPropertyParms: "titleNo", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "User Added", airingPropertyParms: "userAddedName", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Date Added", airingPropertyParms: "dateAdded", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "User Updated", airingPropertyParms: "userUpdatedName", readOnly: true, editable: false, editableDisabled: true }, | |
// { airingProperty: "Date Updated", airingPropertyParms: "dateUpdated", readOnly: true, editable: false, editableDisabled: true } | |
// ] | |
$('.bulkSpan').html(''); | |
var windowHeight = $(window).height(); | |
let cols = []; | |
let grid = $("#KendoGridView").data("kendoGrid"); | |
var gridColumns = grid.columns; | |
if (gridColumns.length > 0) { | |
for (var i = 3; i < gridColumns.length; i++) { | |
var colx = gridColumns[i]; | |
if (colx.field != undefined) { | |
//cols.push(col.field); | |
var index = -1; | |
var val = colx.field; | |
var filteredObj = columns.find(function (item, k) { | |
if (item.airingPropertyParms === val) { | |
index = k; | |
return k; | |
} | |
}); | |
var col = columns[index]; | |
if (col != undefined) { | |
//Default ->true AND Visible -> true | |
//show in grid and hide in right click | |
if (col.visible == true) { | |
contextRow += ''; | |
} | |
//Default ->true AND Visible -> False | |
//hide both grid and right click | |
if (col.visible == false) { | |
contextRow += ''; | |
} | |
//Default ->false AND Visible -> true | |
//show in grid and show in right click with checked items | |
// if (col.default == false && col.visible == true) { | |
// if (col.visible == true) { | |
if (grid.columns[i].hidden) { | |
contextRow += '<li><label><input type="checkbox" id="' + col.airingPropertyParms + '" class="hideShowColumn"> ' + col.airingProperty + '</label></li>' | |
} else { | |
contextRow += '<li><label><input type="checkbox" checked="checked" id="' + col.airingPropertyParms + '" class="hideShowColumn"> ' + col.airingProperty + '</label></li>' | |
} | |
// } | |
//Default ->false AND Visible -> False | |
//hide in grid, show in right click with unchecked items | |
// if ( col.visible == false) { | |
// //if (true) { | |
// if (grid.columns[i].hidden) { | |
// contextRow += '<li><label><input type="checkbox" id="' + col.airingPropertyParms + '" class="hideShowColumn" > ' + col.airingProperty + '</label></li>' | |
// } else { | |
// contextRow += '<li><label><input type="checkbox" id="' + col.airingPropertyParms + '" class="hideShowColumn" > ' + col.airingProperty + '</label></li>' | |
// } | |
// } | |
} | |
} | |
} | |
} | |
// | |
// if (columns.length > 0) { | |
// for (var i = 0; i < columns.length; i++) { | |
// var col = columns[i]; | |
// if (col.airingPropertyParms != undefined) { | |
// if (col.airingPropertyParms == 'userAdded') { | |
// col.airingPropertyParms = 'userAddedName'; | |
// } | |
// if (col.airingPropertyParms == 'userUpdated') { | |
// col.airingPropertyParms = 'userUpdatedName'; | |
// } | |
// //Default ->true AND Visible -> true | |
// //show in grid and hide in right click | |
// if ( col.visible == true) { | |
// contextRow += ''; | |
// } | |
// //Default ->true AND Visible -> False | |
// //hide both grid and right click | |
// if ( col.visible == false) { | |
// contextRow += ''; | |
// } | |
// //Default ->false AND Visible -> true | |
// //show in grid and show in right click with checked items | |
// if (col.default == false && col.visible == true) { | |
// contextRow += '<li><label><input type="checkbox" checked="checked" id="' + col.airingPropertyParms + '" class="hideShowColumn" data-value="' + i + '"> ' + col.airingProperty + '</label></li>' | |
// // contextRowArr.push(col.airingPropertyParms) | |
// } | |
// //Default ->false AND Visible -> False | |
// //hide in grid, show in right click with unchecked items | |
// if (col.default == false && col.visible == false) { | |
// contextRow += '<li><label><input type="checkbox" id="' + col.airingPropertyParms + '" class="hideShowColumn" data-value="' + i + '"> ' + col.airingProperty + '</label></li>' | |
// //contextRowArr.push(col.airingPropertyParms); | |
// } | |
// } | |
// } | |
// } | |
//contextRow=contextRow.move(0,3); | |
var gridStates = that.getPreference(); | |
//console.log(gridStates) | |
//console.log(contextRowArr) | |
//that.contextmenuReorder(contextRowArr,0,3) | |
$('.bulkSpan').append(contextRow); | |
$('.bulkSpan').parent().parent().css({ "height": (windowHeight - 100), "overflow": "auto", "width": "auto !important" }) | |
$('.bulkSpan').parent().css({ "height": (windowHeight - 100), "overflow": "auto", "width": "auto !important" }) | |
} | |
}); | |
}, 10); | |
$('#bulk-context-menu').on('mousedown', function (e) { | |
e.stopImmediatePropagation(); | |
}); | |
$('#bulk-context-menu').on('change', '.hideShowColumn', function (e) { | |
e.stopImmediatePropagation(); | |
let grid = that.gridkendo.getGrid(); | |
let gridColumns = that.gridkendo.getGrid().columns; | |
let val = $(this).attr("id"); | |
//let columns = that.metaAggregateCopy.changeColumns; | |
let columns = that.columns; | |
var index = -1; | |
var filteredObj = columns.find(function (item, k) { | |
if (item.airingPropertyParms === 'userAdded') { | |
item.airingPropertyParms = 'userAddedName'; | |
} | |
if (item.airingPropertyParms === 'userUpdated') { | |
item.airingPropertyParms = 'userUpdateName' | |
} | |
if (item.airingPropertyParms === val) { | |
index = k; | |
return k; | |
} | |
}); | |
let dataVal = index; | |
that.columns[dataVal].visible = (that.columns[dataVal].visible == true) ? false : true; | |
//that.metaAggregateCopy.changeColumns[dataVal].visible = (that.metaAggregateCopy.changeColumns[dataVal].visible == true) ? false : true; | |
var colIndex = -1; | |
var filteredObj = gridColumns.find(function (item, m) { | |
if (item.field === val) { | |
index = m; | |
return m; | |
} | |
}); | |
colIndex = index; | |
if ($(this).is(':checked')) { | |
grid.showColumn(that.columns[dataVal].airingPropertyParms); | |
//grid.showColumn(that.metaAggregateCopy.changeColumns[dataVal].airingPropertyParms); | |
$("#KendoGridView table th:nth-child(" + colIndex + "),td:nth-child(" + (colIndex) + "),col:nth-child(" + (colIndex - 1) + ")").show(); | |
} | |
else { | |
// setTimeout(function(){ | |
grid.hideColumn(that.columns[dataVal].airingPropertyParms); | |
//grid.hideColumn(that.metaAggregateCopy.changeColumns[dataVal].airingPropertyParms); | |
$("#KendoGridView table th:nth-child(" + colIndex + "),td:nth-child(" + (colIndex) + "),col:nth-child(" + (colIndex - 1) + ")").hide(); | |
// },100) | |
} | |
}); | |
// $('#bulk-context-menu').on('change', '.hideShowColumn', function (e) { | |
// e.stopImmediatePropagation(); | |
// let grid = that.gridkendo.getGrid(); | |
// let val = $(this).attr("id"); | |
// let columns = that.columns; | |
// // let columns = that.metaAggregateCopy.changeColumns; | |
// var index = -1; | |
// var filteredObj = columns.find(function (item, k) { | |
// if (item.airingPropertyParms === 'userAddedName') { | |
// item.airingPropertyParms = 'userAdded'; | |
// } | |
// if (item.airingPropertyParms === 'userUpdatedName') { | |
// item.airingPropertyParms = 'userUpdate' | |
// } | |
// if (item.airingPropertyParms === val) { | |
// index = k; | |
// return k; | |
// } | |
// }); | |
// let dataVal = index; | |
// /*if(val=="dayOfWeek"){that.metaAggregateCopy.changeColumns[dataVal].airingPropertyParms="day";}*/ | |
// if (val == "userAdded") { that.columns[dataVal].airingPropertyParms = "userAddedName"; } | |
// if (val == "userUpdated") { that.columns[dataVal].airingPropertyParms = "userUpdatedName"; } | |
// //that.metaAggregateCopy.changeColumns[dataVal].visible = false; | |
// that.columns[dataVal].visible = (that.columns[dataVal].visible == true) ? false : true; | |
// // that.metaAggregateCopy.changeColumns[dataVal].visible = (that.metaAggregateCopy.changeColumns[dataVal].visible == true) ? false : true; | |
// if ($(this).is(':checked')) { | |
// //grid.showColumn(that.metaAggregateCopy.changeColumns[dataVal].airingPropertyParms); | |
// // grid.showColumn("scheduleName"); | |
// grid.showColumn(that.columns[dataVal].airingPropertyParms); | |
// } | |
// else { | |
// // setTimeout(function(){ | |
// // grid.hideColumn(that.metaAggregateCopy.changeColumns[dataVal].airingPropertyParms); | |
// // grid.hideColumn("scheduleName"); | |
// grid.hideColumn(that.columns[dataVal].airingPropertyParms); | |
// // },100) | |
// } | |
// }); | |
} | |
convertTo24Hour(time) { | |
var hours = parseInt(time.substr(0, 2)); | |
if (time.indexOf('AM') != -1 && hours == 12) { | |
time = time.replace('12', '0'); | |
} | |
if (time.indexOf('PM') != -1 && hours < 12) { | |
time = time.replace(hours, (hours + 12)); | |
} | |
return time.replace(/(AM|PM)/, ''); | |
} | |
addTimes(start: any, end: any) { | |
if (start && end) { | |
let times = []; | |
let times1 = start.split(':'); | |
let times2 = end.split(':'); | |
let timeCondition = "AM"; | |
for (let i = 0; i < 3; i++) { | |
times1[i] = (isNaN(parseInt(times1[i]))) ? 0 : parseInt(times1[i]) | |
times2[i] = (isNaN(parseInt(times2[i]))) ? 0 : parseInt(times2[i]) | |
times[i] = times1[i] + times2[i]; | |
} | |
let seconds = times[2]; | |
let minutes = times[1]; | |
let hours = times[0]; | |
if (seconds % 60 === 0) { | |
hours += seconds / 60; | |
} | |
if (minutes % 60 === 0) { | |
let res = minutes / 60; | |
hours += res; | |
minutes = minutes - (60 * res); | |
} | |
if (minutes > 60) { | |
minutes = minutes - 60; | |
hours = hours + 1; | |
} | |
if (hours >= 12 && hours < 25) { | |
hours = hours - 12; | |
if (start.indexOf('AM') != -1) { | |
timeCondition = "PM"; | |
} | |
} else if (hours > 24) { | |
hours = hours - 24; | |
if (start.indexOf('AM') == -1) { | |
timeCondition = "PM"; | |
} | |
} | |
if (hours == 0) { | |
hours = 12; | |
} | |
if (end == "00:00") { | |
if (start.indexOf('AM') == -1) { | |
timeCondition = "PM"; | |
} else { | |
timeCondition = "AM"; | |
} | |
} | |
hours = hours < 10 ? "0" + hours : hours; | |
minutes = minutes < 10 ? "0" + minutes : minutes; | |
return hours + ':' + minutes + ' ' + timeCondition; | |
} | |
} | |
validateStartEndTime(sTime, eTime) { | |
let isValidTime = false; | |
// if (eTime == "" || eTime == undefined) { | |
// return isValidTime; | |
// } | |
// if (sTime == "" || sTime == undefined) { | |
// return isValidTime; | |
// } | |
if (eTime == undefined) { | |
return isValidTime; | |
} | |
if (sTime == undefined) { | |
return isValidTime; | |
} | |
// console.log("kendo.parseDate(eTime)----->", kendo.parseDate(eTime)); | |
// console.log("kendo.parseDate(eTime).getTime()----->", kendo.parseDate(eTime).getTime()); | |
// console.log("eTime----->"+eTime); | |
eTime = "7:00 AM "; | |
sTime = "6:00 PM"; | |
// if(eTime != null || eTime !="" ){ | |
// eTime = kendo.parseDate(eTime).getTime(); | |
// } | |
// if(sTime != null || sTime !=""){ | |
// console.log("sTime----->"+sTime); | |
// sTime = kendo.parseDate(sTime).getTime(); | |
// // console.log("kendo.parseDate(sTime)----->", kendo.parseDate(sTime)); | |
// // console.log("kendo.parseDate(sTime).getTime()----->", kendo.parseDate(sTime).getTime()); | |
// } | |
if (eTime == kendo.parseDate("6:00 AM").getTime()) { | |
isValidTime = true; | |
} | |
if (eTime >= kendo.parseDate("12:00 AM").getTime()) { | |
//checking between 12am to 6 am | |
if (sTime >= (kendo.parseDate("12:00 AM").getTime()) | |
&& sTime < (kendo.parseDate("6:00 AM").getTime()) | |
&& eTime < (kendo.parseDate("6:00 AM").getTime()) | |
&& eTime > (kendo.parseDate("12:00 AM").getTime()) | |
) { | |
if (sTime < eTime) { | |
isValidTime = true; | |
} | |
} | |
// checking between (start time)6am to 12 and (ent time) bw 12 to 6am | |
else if (sTime < (kendo.parseDate("11:59 PM").getTime()) | |
&& sTime >= (kendo.parseDate("6:00 AM").getTime()) | |
&& eTime < (kendo.parseDate("6:00 AM").getTime()) | |
&& eTime >= (kendo.parseDate("12:00 AM").getTime())) { | |
isValidTime = true; | |
} | |
} | |
// checking between 6am to 12 | |
if (eTime < (kendo.parseDate("11:59 PM").getTime()) | |
&& sTime >= (kendo.parseDate("6:00 AM").getTime())) { | |
if (sTime < eTime) { | |
isValidTime = true; | |
} | |
} | |
console.log("isValidTime--->", isValidTime); | |
// return isValidTime; | |
return true; | |
} | |
TimeDifference(end, start) { | |
var startTimeArray = start.split(":"); | |
var startInputHrs = parseInt(startTimeArray[0]); | |
var startInputMins = parseInt(startTimeArray[1]); | |
var endTimeArray = end.split(":"); | |
var endInputHrs = parseInt(endTimeArray[0]); | |
var endInputMins = parseInt(endTimeArray[1]); | |
var startMin = startInputHrs * 60 + startInputMins; | |
var endMin = endInputHrs * 60 + endInputMins; | |
var result; | |
if (endMin < startMin) { | |
var minutesPerDay = 24 * 60; | |
result = minutesPerDay - startMin; | |
result += endMin; | |
} else { | |
result = endMin - startMin; | |
} | |
var minutesElapsed = result % 60; | |
var hoursElapsed = (result - minutesElapsed) / 60; | |
return (hoursElapsed < 9 ? "0" : "") + hoursElapsed + ":" + (minutesElapsed < 9 ? "0" : "") + minutesElapsed; | |
} | |
applyValueToAllRow(field, value) { | |
console.log("field==>", field, "value===>", value); | |
let that = this; | |
let grid = that.gridkendo.getGrid(); | |
let gridData = grid.dataSource.data(); | |
let sel = $(".gridCheckBox:checked", grid.tbody).closest("tr"); | |
// if (field == "blockDuration") { | |
// let changedRows = sel.map((index, event) => { | |
// let dataItem: any = grid.dataItem(event); | |
// let endTimeDuration = that.addTimes(dataItem.startTime, value); | |
// let startTime = that.convertTo24Hour(dataItem.startTime); | |
// let endTime = that.addTimes(startTime, value); | |
// let actualStartTime = that.convertTo24Hour(dataItem.actualStartTime); | |
// let actualEndTime = that.addTimes(actualStartTime, value); | |
// if (value == "00:00" && dataItem.startTime != "06:00 AM") { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } else { | |
// if (that.validateStartEndTime(startTime, endTimeDuration)) { | |
// if (!that.validateStartEndTime(actualStartTime, actualEndTime)) { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } else { | |
// dataItem[field] = value; | |
// dataItem["endTime"] = endTimeDuration; | |
// dataItem["actualDuration"] = value; | |
// dataItem["actualEndTime"] = actualEndTime; | |
// } | |
// } else { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } | |
// } | |
// }) | |
// } | |
// else if (field == "startTime") { | |
//if (true) { | |
if (field == "playerStartTime") { | |
let changedRows = sel.map((index, event) => { | |
let dataItem: any = grid.dataItem(event); | |
let startTime = that.convertTo24Hour(value); | |
// let endTime = that.addTimes(startTime, dataItem.playerDuration); | |
let endTime = that.addTimes(startTime, "1:00"); | |
let actualStartTime = that.convertTo24Hour(value); | |
// let actualEndTime = that.addTimes(actualStartTime, dataItem.playerDuration); | |
let actualEndTime = that.addTimes(actualStartTime, "1:00"); | |
if (that.validateStartEndTime(value, endTime)) { | |
if (!that.validateStartEndTime(actualStartTime, actualEndTime)) { | |
console.log("that.validateStartEndTime Cannot span across--->"); | |
that.gridkendo.setdialog("Cannot span across", "ok", null); | |
} else { | |
dataItem["playerStartTime"] = value; | |
dataItem["actualStartTime"] = value; | |
dataItem["endTime"] = endTime; | |
dataItem["actualEndTime"] = actualEndTime; | |
} | |
} else { | |
console.log("bottom Cannot span across--->"); | |
that.gridkendo.setdialog("Cannot span across", "ok", null); | |
} | |
}) | |
} | |
else if (field == "playerEndTime") { | |
let changedRows = sel.map((index, event) => { | |
let dataItem: any = grid.dataItem(event); | |
if (that.validateStartEndTime(dataItem.playerStartTime, value)) { | |
if (!that.validateStartEndTime(dataItem.actualStartTime, dataItem.playerEndTime)) { | |
that.gridkendo.setdialog("Cannot span across", "ok", null); | |
} else { | |
dataItem["playerEndTime"] = value; | |
let startval = that.convertTo24Hour(dataItem.playerStartTime); | |
let endval = that.convertTo24Hour(dataItem.playerEndTime); | |
let differ = that.TimeDifference(endval, startval); | |
dataItem["playerEndTime"] = value; | |
// dataItem["blockDuration"] = differ; | |
let actualStartTime = that.convertTo24Hour(dataItem.playerStartTime); | |
let actualEndTime = that.convertTo24Hour(dataItem.playerEndTime); | |
let actualDiffer = that.TimeDifference(actualEndTime, actualStartTime); | |
dataItem["actualDuration"] = actualDiffer; | |
} | |
} else { | |
that.gridkendo.setdialog("Cannot span across", "ok", null); | |
} | |
}) | |
} | |
//else if (field == "actualStartTime") { | |
// let changedRows = sel.map((index, event) => { | |
// let dataItem: any = grid.dataItem(event); | |
// let actualStartTime = that.convertTo24Hour(value); | |
// let endTime = that.addTimes(actualStartTime, dataItem.actualDuration); | |
// if (that.validateStartEndTime(value, endTime)) { | |
// if (!that.validateStartEndTime(dataItem.startTime, dataItem.endTime)) { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } else { | |
// dataItem["actualStartTime"] = value; | |
// dataItem["actualEndTime"] = endTime; | |
// if (that.bulkCreateLovs.bulkRippleActualTimeChangesToBlockTimeFlag == "Y") { | |
// dataItem["startTime"] = value; | |
// let endTime = that.addTimes(value, dataItem.blockDuration); | |
// dataItem["endTime"] = endTime; | |
// } | |
// } | |
// } else { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } | |
// }) | |
// } else if (field == "actualEndTime") { | |
// let changedRows = sel.map((index, event) => { | |
// let dataItem: any = grid.dataItem(event); | |
// let startTime = that.convertTo24Hour(dataItem.startTime); | |
// let endTime = that.addTimes(startTime, dataItem.blockDuration); | |
// let actualStartval = that.convertTo24Hour(dataItem.actualStartTime); | |
// let actualEndval = that.convertTo24Hour(value); | |
// let differ = that.TimeDifference(actualEndval, actualStartval); | |
// if (that.validateStartEndTime(actualStartval, value)) { | |
// if (!that.validateStartEndTime(dataItem.startTime, dataItem.endTime)) { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } else { | |
// dataItem["actualEndTime"] = value; | |
// dataItem["actualDuration"] = differ; | |
// if (that.bulkCreateLovs.bulkRippleActualTimeChangesToBlockTimeFlag == "Y") { | |
// dataItem["endTime"] = value; | |
// let endTime = that.convertTo24Hour(value); | |
// let differ = that.TimeDifference(endTime, startTime); | |
// dataItem["blockDuration"] = differ; | |
// } | |
// } | |
// } else { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } | |
// }) | |
// } else if (field == "actualDuration") { | |
// let changedRows = sel.map((index, event) => { | |
// let dataItem: any = grid.dataItem(event); | |
// if (value == "00:00" && dataItem.actualStartTime != "06:00 AM") { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } else { | |
// let endTimeDuration = that.addTimes(dataItem.startTime, dataItem.blockDuration); | |
// let startTime = that.convertTo24Hour(dataItem.startTime); | |
// let endTime = that.addTimes(startTime, dataItem.blockDuration); | |
// let actualStartTime = that.convertTo24Hour(dataItem.actualStartTime); | |
// let actualEndTime = that.addTimes(actualStartTime, dataItem.actualDuration); | |
// if (that.validateStartEndTime(actualStartTime, actualEndTime)) { | |
// if (!that.validateStartEndTime(startTime, endTimeDuration)) { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } else { | |
// if (that.bulkCreateLovs.bulkRippleActualTimeChangesToBlockTimeFlag == "Y") { | |
// that.roundOffTimeGrid(value, "blockDuration", dataItem); | |
// let endTimeDuration = that.addTimes(dataItem.startTime, dataItem.blockDuration); | |
// dataItem["endTime"] = endTimeDuration; | |
// } | |
// dataItem["actualDuration"] = value; | |
// let actualEndTime = that.addTimes(actualStartTime, dataItem.actualDuration); | |
// dataItem["actualEndTime"] = actualEndTime; | |
// } | |
// } else { | |
// that.gridkendo.setdialog("Cannot span across", "ok", null); | |
// } | |
// } | |
// }) | |
// } | |
else { | |
let changedRows = sel.map((index, event) => { | |
let dataItem: any = grid.dataItem(event); | |
dataItem[field] = value; | |
}) | |
} | |
this.gridkendo.getGrid().refresh(); | |
that.highlightoverlap(); | |
} | |
highlightoverlap() { | |
let that = this; | |
let grid = that.gridkendo.getGrid(); | |
let gridData = grid.dataSource.data(); | |
$('.bulkCreateGrid .k-grid-content tbody').find("tr").removeClass('duplicateRows'); | |
for (let k = 0; k < gridData.length; k++) { | |
gridData[k].duplicateRow = false; | |
let startDate = kendo.toString(new Date(gridData[k].startDate), "dd/MM/yyyy"); | |
let startTime = kendo.parseDate(gridData[k].startTime); | |
let endTime = kendo.parseDate(gridData[k].endTime); | |
let actutalStartTime = kendo.parseDate(gridData[k].actualStartTime); | |
let actualEndTime = kendo.parseDate(gridData[k].actualEndTime); | |
for (var i = k; i < gridData.length; i++) { | |
if (gridData[k].action != 'Delete' && gridData[i].action != 'Delete' && i != k) { | |
let startSelTime = kendo.parseDate(gridData[i].startTime); | |
let endSelTime = kendo.parseDate(gridData[i].endTime); | |
let actualStartSelTime = kendo.parseDate(gridData[i].actualStartTime); | |
let actualEndSelTime = kendo.parseDate(gridData[i].actualEndTime); | |
let startSelDate = kendo.toString(new Date(gridData[i].startDate), "dd/MM/yyyy"); | |
if (startDate == startSelDate && ((startTime == startSelTime || (endTime == endSelTime) || (startTime < endSelTime && endTime > startSelTime)) || (actutalStartTime == actualStartSelTime || (actualEndTime == actualEndSelTime) || (actutalStartTime < actualEndSelTime && actualEndTime > actualStartSelTime)))) { | |
gridData[i].duplicateRow = true; | |
gridData[k].duplicateRow = true; | |
$('.bulkCreateGrid .k-grid-content tbody').find("tr[data-uid='" + gridData[i].uid + "']").addClass('duplicateRows'); | |
$('.bulkCreateGrid .k-grid-content tbody').find("tr[data-uid='" + gridData[k].uid + "']").addClass('duplicateRows'); | |
} | |
} | |
} | |
} | |
} | |
// gridSave() { | |
// let rowData = []; | |
// this.validateGridPopup.validateGrid(rowData); | |
// } | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment