Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///// <reference path="../jquery-3.1.1.min.js" />
- //var dataView = [];
- //var index = 0;
- var grid = [];
- var template = $('#DeliveryDinamicTableDivMs').html();
- //var selectedCell;
- //var data = [];
- //var searchCriteria = [];
- //var selectedRow = 0;
- //var validColumns = [];//"sifra","kolicina"
- //var robaUslugaOptions;
- //var currencyOptions;
- //var msanOptions;
- //var programOptions;
- //var backQueue = [];
- //var forwardQueue = [];
- //var gridName = "Dinamic_grid"; //grid
- //var columns = [];
- //var searchString = "";
- //var newGrid = [];
- //var NewComponent;
- //var calculationColumns;
- var radioButtonValueGlobal = " ";
- var date1 = " ";
- var date2 = " ";
- var as = [];
- var data;
- $(function () {
- $("#datepicker1").datepicker({
- //dateFormat: 'dd/mm/yy',
- showOn: "button",
- buttonImage: "images/calendar.gif",
- buttonImageOnly: true,
- buttonText: "Select date",
- onSelect: function (date) {
- date1 = date;
- }
- });
- $("#datepicker2").datepicker({
- //dateFormat: 'dd/mm/yy',
- showOn: "button",
- buttonImage: "images/calendar.gif",
- buttonImageOnly: true,
- buttonText: "Select date",
- onSelect: function (date) {
- date2 = date;
- }
- });
- MakePlanDelivery();
- getCheckedRadio();
- });
- function TakeMonthFromDateString(date) {
- var tmp = date.split('/');
- var month = tmp[1];
- return month;
- }
- function GenerateColumsMonthly(date1, date2) {
- var split_date1 = date1.split("/");
- var split_date2 = date2.split("/");
- var beginDate = moment("" + split_date1[0] + " " + "" + split_date1[1] + " " + "" + split_date1[2], "MM DD YYYY");
- var endDate = moment("" + split_date2[0] + " " + "" + split_date2[1] + " " + "" + split_date2[2], "MM DD YYYY");
- var MonthCount = Math.floor(endDate.diff(beginDate, "months"));
- var i = 1;
- while (i <= MonthCount) {
- appendColumn1Months(i);
- i++;
- }
- }
- function QuatersCountDiff(date1, date2) {
- var split_date1 = date1.split("/");
- var split_date2 = date2.split("/");
- var beginDate = moment("" + split_date1[0] + " " + "" + split_date1[1] + " " + "" + split_date1[2], "DD MM YYYY");
- var endDate = moment("" + split_date2[0] + " " + "" + split_date2[1] + " " + "" + split_date2[2], "DD MM YYYY");
- var countDiff = Math.floor(endDate.diff(beginDate, "months") / 3);
- return countDiff;
- }
- function GenerateColumsQuarterly(date1, date2) {
- var countQuaters = QuatersCountDiff(date1, date2);
- var i = 0;
- while (i < countQuaters) {
- appendColumn1();
- i++;
- }
- }
- function DevidePeriodMode(date1, date2) {
- if (radioButtonValueGlobal == "monthly") {
- createMonths(new Date(date1), new Date(date2));
- } else {
- createQuartals(new Date(date1), new Date(date2));
- }
- }
- function RenderPlanDeal() {
- InitMockData();
- // var parsered=Mustache.parse(template); // optional, speeds up future uses
- // var rendered = Mustache.render(template);
- //var to_Html1 = Mustache.to_html(data[index], template);
- //$('#template-container').html(template);
- //var to_Html1 = Mustache.to_html(data[index], template);
- var rendered = Mustache.render(template, data[index]);
- $('#template-container').html(rendered);
- console.log(typeof rendered);
- DevidePeriodMode(date1, date2);
- NextPreviousPeriod(date1, date2);
- //var template = $("#DeliveryDinamicTableDivMs").html();
- //var html = Mustache.to_html(template, data[index]);
- //$('#template-container').html(html);
- // console.log(QuatersCountDiff(date1, date2));
- // DevidePeriodMode(date1, date2);
- // createQuartals(new Date(date1), new Date(date2));
- // GenerateColumsMonthly(date1, date2);
- //createMonths(new Date(date1), new Date(date2));
- }
- function MakePlanDelivery() {
- $("#btnMakePlan").click(function () {
- RenderPlanDeal();
- });
- }
- function InitMockData() {
- data[index] = [];
- data[index].push(Mapping(CreateNewItem("ask169", "group69", "soft69", 9999.65, 55663.65)));
- data[index].push(Mapping(CreateNewItem("ask169", "group69", "soft69", 9999.65, 55663.65)));
- data[index].push(Mapping(CreateNewItem("ask169", "group69", "soft69", 9999.65, 55663.65)));
- data[index].push(Mapping(CreateNewItem("ask1", "group", "soft1", 55663.65, 55663.65)));
- data[index].push(Mapping(CreateNewItem("ask2", "group", "soft2", 55663.65, 55663.65)));
- data[index].push(Mapping(CreateNewItem("ask3", "group", "soft3", 556632.65, 556632.65)));
- data[index].push(Mapping(CreateNewItem("ask4", "group", "soft4", 556632.65, 556632.65)));
- data[index].push(Mapping(CreateNewItem("ask5", "group", "soft5", 556632.65, 556632.65)));
- data[index].push(Mapping(CreateNewItem("ask6", "group", "soft6", 556632.65, 556632.65)));
- data[index].push(Mapping(CreateNewItem("ask169", "group69", "soft69", 9999.65, 55663.65)));
- data[index].push(Mapping(CreatePriceStructureNewItem("ask2", "group", "soft2", 55663.65, 55663.65)));
- data[index].push(Mapping(CreatePriceStructureNewItem("ask3", "group", "soft3", 556632.65, 556632.65)));
- data[index].push(Mapping(CreatePriceStructureNewItem("ask4", "group", "soft4", 556632.65, 556632.65)));
- data[index].push(Mapping(CreateNewItem("ask5", "group", "soft5", 556632.65, 556632.65)));
- data[index].push(Mapping(CreateNewItem("ask6", "group", "soft6", 556632.65, 556632.65)));
- }
- // var radioBtn_value = document.getElementById('radio1').value;
- function getCheckedRadio() {
- // var radioButtons = document.getElementsByName('planning');
- $('input[name=planning]').click(function () {
- var tmp = ($('input[name=planning]:checked').val());
- // console.log(tmp);
- radioButtonValueGlobal = tmp;
- console.log(radioButtonValueGlobal);
- //return radioButtonValueGlobal;
- });
- }
- function PreparingPlan(date1, date2) {
- //if (tmp_global == "monthly") {
- // var timeSpan = date2.val() - date1.val();
- // console(timeSpan);
- //}
- //if (tmp_global == "quartarly") {
- //}
- var date11 = parseDate(date1);
- var date21 = parseDate(date2);
- var timeDiff = 0;
- timeDiff = daydiff(date11, date21);
- // console.log(timeDiff);
- for (var i = 0; i < timeDiff; i++) {
- if (i > 30)
- appendColumn1();
- }
- //var timeSpan = date2 - date1;
- //return timeSpan;
- }
- function parseDate(str) {
- var mdy = str.split('/');
- return new Date(mdy[2], mdy[0] - 1, mdy[1]);
- }
- function daydiff(first, second) {
- return Math.round((second - first) / (1000 * 60 * 60 * 24));
- }
- function appendColumn1Months(number,year) {
- $('#table-resurse tr').append($("<td>"));
- $('#table-resurse thead tr>td:last').html("" + moment().month(number).format('MMM')+" "+year);
- $('#table-resurse tbody tr').each(function () { $(this).children('td:last').append($(' ')) });
- }
- function appendColumn1Quartals(number, year) {
- $('#table-resurse tr').append($("<td>"));
- $('#table-resurse thead tr>td:last').html("Q"+number+"/"+year);
- $('#table-resurse tbody tr').each(function () { $(this).children('td:last').append($(' ')) });
- }
- function appendColumn1() {
- $('#table-resurse tr').append($("<td>"));
- $('#table-resurse thead tr>td:last').html("new col");
- $('#table-resurse tbody tr').each(function () { $(this).children('td:last').append($(' ')) });
- }
- //$('#irow').click(function () {
- // if ($('#row').val()) {
- // $('#mtable tbody').append($("#mtable tbody tr:last").clone());
- // $('#mtable tbody tr:last :checkbox').attr('checked', false);
- // $('#mtable tbody tr:last td:first').html($('#row').val());
- // } else { alert('Enter Text'); }
- //});
- function appendColumn() {
- var tbl = document.getElementById('table-resurse'), // table reference
- i;
- // open loop for each row and append cell
- for (i = 0; i < tbl.rows.length; i++) {
- createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), " ", 'col');
- }
- }
- // create DIV element and append to the table cell
- function createCell(cell, text, style) {
- var div = document.createElement('div'), // create DIV element
- txt = document.createTextNode(text); // create text node
- div.appendChild(txt); // append text node to the DIV
- div.setAttribute('class', style); // set DIV class attribute
- div.setAttribute('className', style); // set DIV class attribute for IE (?!)
- cell.appendChild(div); // append DIV to the table cell
- }
- function NextPreviousPeriod(date1,date2) {
- if (radioButtonValueGlobal == "monthly") {
- $("#btnPreviousPeriod").click(function () {
- var test_date1 = new Date(date1);
- test_date1.setMonth(test_date1.getMonth() - 1);
- var test_date2 = new Date(date2);
- test_date2.setMonth(test_date2.getMonth() - 1);
- createMonths(new Date(test_date1), new Date(test_date2));
- });
- $("#btnNextPeriod").click(function () {
- var test_date1 = new Date(date1);
- test_date1.setMonth(test_date1.getMonth() + 1);
- var test_date2 = new Date(date2);
- test_date2.setMonth(test_date2.getMonth() + 1);
- createMonths(new Date(test_date1), new Date(test_date2));
- });
- } else {
- $("#btnPreviousPeriod").click(function () {
- });
- $("#btnNextPeriod").click(function () {
- });
- }
- }
- //quartals
- function createQuartals(startDate, endDate) {
- var quartalList = [];
- //Calculate frst quartal containing start date.
- var currentDate = findQuartal(startDate, quartalList);
- if (currentDate != null) {
- //Calculate other quartals in the interval.
- while (endDate > currentDate) {
- findQuartal(currentDate, quartalList);
- currentDate = new Date(currentDate.setMonth(currentDate.getMonth() + 3));
- }
- }
- console.log(quartalList);
- }
- function createQuartal(year, number) {
- return { "year": year, "number": number };
- }
- function createQuartalInitList(year) {
- var quartals = [];
- var startDate = new Date(parseInt(year), 0, 1);
- for (i = 3; i >= 0; i--) {
- var stdate = new Date(startDate);
- var endDate = new Date(startDate.setMonth(startDate.getMonth() + 3) + 1);
- quartals.push({
- "StartDate": stdate,
- "EndDate": endDate,
- "Number": i + 1
- });
- startDate = new Date(startDate.setDate(startDate.getDate()));
- };
- return quartals;
- }
- function findQuartal(currentDate, quartalList) {
- var quartal = createQuartalInitList(currentDate.getFullYear());
- for (i = 3; i >= 0; i--) {
- if (quartal[i].StartDate <= currentDate && quartal[i].EndDate >= currentDate) {
- var startQuartal = createQuartal(currentDate.getFullYear(), i + 1);
- quartalList.push(startQuartal);
- appendColumn1Quartals(i + 1, currentDate.getFullYear());
- return quartal[i].EndDate;
- }
- }
- return null;
- }
- //months
- function createMonths(startDate, endDate) {
- var monthsList = [];
- //Calculate frst quartal containing start date.
- var currentDate = findMonth(startDate, monthsList);
- if (currentDate != null) {
- //Calculate other quartals in the interval.
- while (endDate > currentDate) {
- findMonth(currentDate, monthsList);
- currentDate = new Date(currentDate.setMonth(currentDate.getMonth() + 1));
- }
- }
- console.log(monthsList);
- }
- function createMonth(year, number) {
- return { "year": year, "number": number };
- }
- function createMonthInitList(year) {
- var months = [];
- var startDate = new Date(parseInt(year), 0, 1);
- for (i = 12; i >= 0; i--) {
- var stdate = new Date(startDate);
- var endDate = new Date(startDate.setMonth(startDate.getMonth() +1));
- months.push({
- "StartDate": stdate,
- "EndDate": endDate,
- "Number": i
- });
- startDate = new Date(startDate.setDate(startDate.getDate()));
- }
- return months;
- }
- function findMonth(currentDate, monthList) {
- var month = createMonthInitList(currentDate.getFullYear());
- for (i = 12; i >= 0; i--) {
- if (month[i].StartDate <= currentDate && month[i].EndDate >= currentDate) {
- var startMonth = createMonth(currentDate.getFullYear(), i);
- monthList.push(startMonth);
- appendColumn1Months(i, currentDate.getFullYear());
- return month[i].EndDate;
- }
- }
- return null;
- }
- function GenerateMonths() {
- var d = new Date(2015, 11, 31);
- d.setDate(d.getDate() + 1);
- for (i = 1; i < 13; i++) {
- d.setMonth(d.getMonth() + 1);
- d.setDate(1);
- d.setDate(d.getDate() - 1);
- console.log(d.getDate() + "-" + ("0" + (d.getMonth() + 1)).slice(-2) + '-' + d.getFullYear());
- d.setDate(d.getDate() + 1);
- }
- }
- function CheckInseredDataInQuartal(newItemDateQuartal, as) {
- // var quarter = Math.floor((newItemDateQuartal.getMonth() + 3) / 3);
- var i = 0;
- while (Quartal[i].EndDate < newItemDateQuartal.EndDate) {
- i++;
- }
- as.push(newItemDateQuartal);
- }
- /*
- while(lastQ.enddate < enddate) {
- lastQ=LastQ + 3*months(nextQ);
- as.add(lastQ);
- }
- */
- function Mapping(item2) {
- // var item1 = CustomPriceStructureNewItems(item2["id"], item2["naziv"], item2["program"], item2["rola"], item2["ukupniUlaz"], item2["ukupniUlazZT"]);
- var item1 = {
- "id": item2["id"],
- "ime_komponenta": item2["naziv"],
- "grupa": item2["program"],
- "rola": item2["rola"],
- "izracunska": item2["ukupniUlaz"],
- "vkupno": item2["ukupniUlazZT"],
- "indent": item2["indent"],
- "parent": item2["parent"],
- "isPriceStructure": item2["isPriceStructure"]
- };
- //item1["id"] = item2["id"];
- //item1["grupa"] = item2["program"];
- //item1["rola"] = item2["rola"];
- //item1["ime_komponenta"] = item2["naziv"];
- //item1["izracunska"] = item2["ukupniUlaz"];
- //item1["vkupno"] = item2["ukupniUlazZT"];
- //item1["indent"] = item2["indent"];
- //item1["parent"] = item2["parent"];
- //item1["isPriceStructure"] = item2["isPriceStructure"];
- return item1;
- }
- function CustomPriceStructureNewItems(id, name, group, role, calculation, sum) {
- var item = {
- "id": id,
- "grupa": group,
- "rola": role,
- "ime_komponenta": name,
- "izracunska": calculation,
- "vkupno": sum,
- "indent": 0,
- "parent": null,
- "isPriceStructure": true
- };
- return item;
- }
- function CreatePriceStructureNewItem(name, group, role, calculation, sum) {
- var item = {
- "id": 2,
- "naziv": name,
- "program": group,
- "rola": role,
- "jedinecniUlazLP": 0,
- "jedinecniUlaz": 0,
- "ukupniUlaz": calculation,
- "ukupniUlazZT": sum,
- "msanNabavnaJC": 0,
- "msanNabavna": 0,
- "jc": 0,
- "izlaz": 0,
- "kingRuc": 0,
- "rucNaUcSaZt": 0,
- "rucNaUcBezZt": 0,
- "msanRuc": 0,
- "rekapKol": 0,
- "totalKol": 0,
- "bundleIzlaz": 0,
- "bundleUlaz": 0,
- "bundleRuc": 0,
- "prgIzlaz": 0,
- "indent": 0,
- "parent": null,
- "isPriceStructure": true
- };
- return item;
- }
- function CreateNewItem(name, group, role, calculation, sum) {
- var item = {
- "id": 1,
- "naziv": name,
- "program": group,
- "rola": role,
- "jedinecniUlazLP": 0,
- "jedinecniUlaz": 0,
- "ukupniUlaz": calculation,
- "ukupniUlazZT": sum,
- "msanNabavnaJC": 0,
- "msanNabavna": 0,
- "jc": 0,
- "izlaz": 0,
- "kingRuc": 0,
- "rucNaUcSaZt": 0,
- "rucNaUcBezZt": 0,
- "msanRuc": 0,
- "rekapKol": 0,
- "totalKol": 0,
- "bundleIzlaz": 0,
- "bundleUlaz": 0,
- "bundleRuc": 0,
- "prgIzlaz": 0,
- "indent": 0,
- "parent": 2,
- "isPriceStructure": false
- };
- return item;
- }
- function initializeDinamicDeliveryColumns() {
- return [
- { id: "#", name: "", width: 40, behavior: "selectAndMove", selectable: false, resizable: true, cssClass: "cell-reorder dnd" },
- { id: "naziv", name: resource_PriceStructureTable_Grupa, field: "naziv", width: 220, cssClass: "cell-title ", formatter: TaskNameFormatter, editor: Slick.Editors.Text, validator: requiredFieldValidator },
- { id: "rola", name: resource_PriceStructureTable_Rola, width: 80, minWidth: 20, maxWidth: 80, cssClass: "cell-effort-driven", field: "rola", formatter: Slick.Formatters.Text, editor: Slick.Editors.Text, cannotTriggerInsert: true },
- { id: "ukupniUlaz", name: resource_PriceStructureTable_UkupniUlaz, field: "ukupniUlaz", minWidth: 60 }
- // { id: "ukupno", name: resource_PriceStructureTable_Ukupno, field: "ukupno", minWidth: 60 }
- ];
- }
- // var NewDinamicDeliveryComponent = function (id, naziv, parent, indent, isPriceStructure) {
- // var newItem = {
- // "id": id,
- // "naziv": naziv,
- // "robausluga": '',
- // "ukupniUlaz": 0,
- // "ukupno": 0,
- // "indent": indent,
- // "parent": parent,
- // "isPriceStructure": isPriceStructure
- // };
- // return newItem;
- // }
- // function calculateDinamicDeliveryPriceStructure(item) {
- // item.ukupniUlaz = 0;
- // item.ukupniUlazZT = 0;
- // for (var i = item.id; i < data[index].length; i++) {
- // if (item.id == data[index][i].parent) {
- // (item.ukupniUlaz) += parseDecimalComma(data[index][i].ukupniUlaz);
- // (item.ukupniUlazZT) += parseDecimalComma(data[index][i].ukupniUlazZT);
- // (item.msanNabavnaJC) += parseDecimalComma(data[index][i].msanNabavnaJC);
- // (item.msanNabavna) += parseDecimalComma(data[index][i].msanNabavna);
- // (item.izlaz) += parseDecimalComma(data[index][i].izlaz);
- // (item.kingRuc) += parseDecimalComma(data[index][i].kingRuc);
- // (item.rucNaUcSaZt) += parseDecimalComma(data[index][i].rucNaUcSaZt);
- // (item.rucNaUcBezZt) += parseDecimalComma(data[index][i].rucNaUcBezZt);
- // (item.msanRuc) += parseDecimalComma(data[index][i].msanRuc);
- // (item.rekapKol) += parseDecimalComma(data[index][i].rekapKol);
- // (item.totalKol) += parseDecimalComma(data[index][i].totalKol);
- // (item.bundleIzlaz) += parseDecimalComma(data[index][i].bundleIzlaz);
- // (item.bundleUlaz) += parseDecimalComma(data[index][i].bundleUlaz);
- // (item.bundleRuc) += parseDecimalComma(data[index][i].bundleRuc);
- // (item.prgIzlaz) += parseDecimalComma(data[index][i].prgIzlaz);
- // }
- // }
- // item.jedinecniUlazLP = parseFloat(item.jedinecniUlazLP).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.jedinecniUlaz = parseFloat(item.jedinecniUlaz).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.ukupniUlaz = parseFloat(item.ukupniUlaz).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.ukupniUlazZT = parseFloat(item.ukupniUlazZT).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.msanNabavnaJC = parseFloat(item.msanNabavnaJC).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.msanNabavna = parseFloat(item.msanNabavna).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.jc = parseFloat(item.jc).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.izlaz = parseFloat(item.izlaz).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.kingRuc = parseFloat(item.kingRuc).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.rucNaUcSaZt = parseFloat(item.rucNaUcSaZt).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.rucNaUcBezZt = parseFloat(item.rucNaUcBezZt).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.msanRuc = parseFloat(item.msanRuc).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.rekapKol = parseFloat(item.rekapKol).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.totalKol = parseFloat(item.totalKol).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.bundleIzlaz = parseFloat(item.bundleIzlaz).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.bundleUlaz = parseFloat(item.bundleUlaz).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.bundleRuc = parseFloat(item.bundleRuc).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // item.prgIzlaz = parseFloat(item.prgIzlaz).toLocaleString("HR-hr", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
- // return item;
- // }
- var Denamic_Delivery_options = {
- editable: true,
- enableAddRow: false,
- enableCellNavigation: true,
- asyncEditorLoading: false,
- forceFitColumns: false,
- autoHeight: true,
- autoEdit: false,
- editCommandHandler: queueAndExecuteCommand,
- frozenColumn: 3
- };
- // $(function () {
- // var windowSize = $(window).width() * 0.95;
- // $(".slickgrid_5209891").css('width', 3800);
- // DinamicDeliveryinitializeCachedData();
- // $(".slickgrid_5209891").css('width', '');
- // });
- // function DinamicDeliveryinitializeCachedData() {
- // $.when(
- // $.ajax({
- // url: "CalculationTable/GetRobaUsluga",
- // type: "get",
- // success: function (data) {
- // robaUslugaOptions = data;
- // },
- // error: function () {
- // }
- // }),
- // $.ajax({
- // url: "CalculationTable/GetCurrency",
- // type: "get",
- // success: function (data) {
- // currencyOptions = data;
- // },
- // error: function () {
- // }
- // }),
- // //$.ajax({
- // // url: "CalculationTable/GetCurrencyRates",
- // // type: "get",
- // // success: function (data) {
- // // var result = JSON.parse(data);
- // // for (var i = 0; i < result.length; i++) {
- // // currency[result[i].Symbol] = result[i].ExchangeRate;
- // // };
- // // },
- // // error: function () {
- // // }
- // //}),
- // $.ajax({
- // url: "CalculationTable/GetDisabledColumns",
- // type: "get",
- // success: function (data) {
- // validColumns = data;
- // },
- // error: function () {
- // }
- // })).done(function () {
- // if (gridName == "Dinamic_grid") {
- // calculationColumns = initializeDinamicDeliveryColumns();
- // columns = calculationColumns;
- // NewComponent = NewDinamicDeliveryComponent;
- // }
- // else if (gridName == "segrid") {
- // columns = smartColumns;
- // NewComponent = NewSmartComponent;
- // }
- // loadTempCalculations1();
- // });
- // }
- //function loadTempCalculations1() {
- // $.ajax({
- // type: "POST",
- // url: domainUrl + "/calculation/OpenAllDraftCalculation",
- // success: function (data) {
- // if (data != null && data.length > 0) {
- // showCalculationTab();
- // for (i = 0; i < data.length; i++) {
- // data[i].index = i;
- // addCalculationTab1(data[i], "CalculationTabs", "CalculationTabsContent", data[i].index, data[i].Name + '*', 'tab' + data[i].index + ' content', 'fa-file-o');
- // }
- // $('#CalculationTabs li:eq(0) a').tab('show');
- // }
- // index = 0;
- // },
- // error: function (jqXhr, textStatus, errorThrown) {
- // console.log(textStatus);
- // }
- // });
- //}
- //function addCalculationTab1(data, tabsContainerId, tabsContentContainerId, tabNumber, header, content, statusIconClass) {
- // createTabContent(data, tabsContainerId, tabsContentContainerId, tabNumber, header, content, statusIconClass);
- // loadTabData1(data, tabNumber);
- //}
- //function createTabContent(data, tabsContainerId, tabsContentContainerId, tabNumber, header, content, statusIconClass) {
- // var newTabId = 'calcTab' + tabNumber;
- // var newTabContentId = 'tab' + tabNumber;
- // // create the tab
- // $('<li><a id="' + newTabId + '" href="#' + newTabContentId + '" data-toggle="tab" ><i class="fa ' + statusIconClass + '" style="margin-right:1em;"></i>' + header + '<i class="fa fa-close" style="margin-left:1em;" data-toggle="modal" data-target="#CLoseTabDialog"></i></a></li>').appendTo('#' + tabsContainerId);
- // // create the tab content
- // $('<div class="tab-pane" id="' + newTabContentId + '">' + content + '</div>').appendTo('#' + tabsContentContainerId);
- // var template = $("#DeliveryDinamicTableDivMs").html();
- // var html = Mustache.to_html(template, data);
- // $('#' + newTabContentId).html(html);
- //}
- // function initializeDinamicDeliveryGrid(nameGrid, newindex) {
- // if (newindex != null && newindex != undefined)
- // index = newindex;
- // var indent = 0;
- // var parents = [];
- // data.push([]);
- // data[index] = [];
- // var editable = document.getElementById(nameGrid);
- // var pasteHandler1 = function (e, args) {
- // newGrid[index] = new Slick.Data.DataView({ inlineFilters: true });
- // var isIndent = 0;
- // var parentNum = null;
- // var indentNum = 0;
- // var strLength = 0;
- // var totalItems = 0;
- // var isNewPriceStructure = false;
- // var num = 0;
- // do {
- // if (num < selectedRow || num > selectedRow) {
- // var item = dataView[index].getItemById(num);
- // if (item.parent != null) {
- // item.parent = item.parent + strLength;
- // }
- // item.id = newGrid[index].getLength();
- // newGrid[index].addItem(item);
- // totalItems++;
- // }
- // else {
- // var pastedText = "";
- // if (dataView[index].getItems().length > 0) {
- // var item = dataView[index].getItemById(num);
- // newGrid[index].addItem(item);
- // totalItems++;
- // parentNum = num;
- // indentNum = item.indent + 1;
- // }
- // else {
- // isNewPriceStructure = true;
- // indentNum = 1;
- // }
- // if (window.clipboardData && window.clipboardData.getData) { // IE
- // pastedText = window.clipboardData.getData('Text');
- // }
- // else if (e.clipboardData && e.clipboardData.getData) {
- // pastedText = e.clipboardData.getData('text/plain');
- // }
- // var str = pastedText.split('\n');
- // for (var i = 0; i < str.length - 1; i++) {
- // var attr = str[i].split('\t');
- // var item = {
- // "id": newGrid[index].getLength(),
- // "naziv": attr[0],
- // "robausluga": attr[1],
- // "jedinecniUlaz": attr[12],
- // "ukupniUlaz": attr[13],
- // "indent": indentNum,
- // "parent": parentNum,
- // "isPriceStructure": false
- // };
- // if (item.naziv != '') {
- // if (isNewPriceStructure) {
- // var itemParent = NewComponent(newGrid[index].getLength(), attr[0], null, indentNum - 1, true);
- // newGrid[index].addItem(itemParent);
- // totalItems++;
- // item.parent = null;
- // parentNum = totalItems - 1;
- // strLength++;
- // }
- // item.parent = parentNum;
- // item.id = newGrid[index].getLength();
- // newGrid[index].addItem(item);
- // totalItems++;
- // isNewPriceStructure = false;
- // strLength++;
- // }
- // else {
- // isNewPriceStructure = true;
- // }
- // }
- // }
- // num++;
- // } while (num < dataView[index].getItems().length)
- // data[index] = newGrid[index].getItems();
- // newGrid[index].getItemMetadata = function (index) {
- // var item = newGrid[index].getItemById(index);
- // if (item.isPriceStructure === true) {
- // return { 'cssClasses': 'parentRow' }
- // }
- // else {
- // return { cssClasses: 'childRow' };
- // }
- // };
- // dataView[index].setItems(newGrid[index].getItems());
- // newGrid[index].setFilter(myFilter);
- // grid[index].render();
- // $('.toggle.priceStructure1').parent().parent().addClass('parentRow');
- // LoadComponentGrid(index);
- // };
- // editable.addEventListener('paste', pasteHandler1, false);
- // removeHiddenColumns();
- // // initialize the model
- // dataView[index] = new Slick.Data.DataView({ inlineFilters: true });
- // dataView[index].setFilter(myFilter);
- // // initialize the grid
- // grid[index] = new Slick.Grid("#" + nameGrid, dataView[index], columns, options);
- // initSelectionModeCopyPaste(grid[index]);
- // grid[index].setSelectionModel(new Slick.RowSelectionModel());
- // grid[index].onCellChange.subscribe(function (e, args) {
- // var selectedRows = grid[index].getSelectedRows();
- // var newValue = '';
- // var oldValue = commandQueue.pop();
- // for (var i = selectedRows.length - 1; i >= 0; i--) {
- // var item = dataView[index].getItem(selectedRows[i]);
- // if (newValue == '')
- // newValue = item[columns[args.cell].id];
- // else {
- // item[columns[args.cell].id] = newValue;
- // }
- // dataView[index].updateItem(selectedRows[i], item);
- // var oldItem = $.extend(true, {}, item);
- // oldItem[columns[args.cell].id] = oldValue.prevSerializedValue;
- // backQueue.push([3, 1, oldItem]);
- // }
- // var parentDataContext = args.item;
- // while (parentDataContext.parent != null) {
- // var tmpDataContext = dataView[index].getItem(parentDataContext.parent);
- // parentDataContext = calculatePriceStructure(tmpDataContext);
- // dataView[index].updateItem(tmpDataContext.id, parentDataContext);
- // }
- // $('.toggle.priceStructure1').parent().parent().addClass('parentRow');
- // });
- // grid[index].onAddNewRow.subscribe(function (e, args) {
- // var item = {
- // "id": dataView[index].getLength(),
- // "naziv": '',
- // "ukupniUlaz": 0,
- // "ukupno": 0,
- // "ukupniUlazZT": 0,
- // "msanNabavnaJC": 0,
- // "msanNabavna": 0,
- // "parent": null,
- // "isPriceStructure": true
- // };
- // newGrid[index] = new Slick.Data.DataView({ inlineFilters: true });
- // newGrid[index].setItems(data[index]);
- // $.extend(item, args.item);
- // dataView[index].addItem(item);
- // $('.toggle.priceStructure1').parent().parent().addClass('parentRow');
- // });
- // grid[index].onClick.subscribe(function (e, args) {
- // selectedRow = args.row;
- // selectedCell = args.cell;
- // if ($(e.target).hasClass("toggle")) {
- // var item = dataView[index].getItem(args.row);
- // if (item) {
- // if (!item._collapsed) {
- // item._collapsed = true;
- // } else {
- // item._collapsed = false;
- // }
- // dataView[index].updateItem(item.id, item);
- // }
- // e.stopImmediatePropagation();
- // RefreshGrid();
- // }
- // });
- // // wire up model events to drive the grid[index]
- // dataView[index].onRowCountChanged.subscribe(function (e, args) {
- // grid[index].updateRowCount();
- // grid[index].render();
- // });
- // dataView[index].onRowsChanged.subscribe(function (e, args) {
- // grid[index].invalidateRows(args.rows);
- // grid[index].render();
- // RefreshGrid();
- // LoadComponentGrid(index);
- // });
- // var moveRowsPlugin = new Slick.RowMoveManager({
- // cancelEditOnDrag: true
- // });
- // moveRowsPlugin.onBeforeMoveRows.subscribe(function (e, data) {
- // for (var i = 0; i < data.rows.length; i++) {
- // // no point in moving before or after itself
- // if (data.rows[i] == data.insertBefore || data.rows[i] == data.insertBefore - 1) {
- // e.stopPropagation();
- // return false;
- // }
- // }
- // return true;
- // });
- // moveRowsPlugin.onMoveRows.subscribe(function (e, args) {
- // moveComponent(args.insertBefore, args.rows);
- // RefreshGrid();
- // var newRow = args.insertBefore < args.rows[0] ? args.rows[0] + 1 : args.rows[0];
- // var oldRow = args.insertBefore < args.rows[0] ? args.insertBefore : args.insertBefore - 1;
- // backQueue.push([4, newRow, $.extend(true, {}, dataView[index].getItem(oldRow))]);
- // });
- // grid[index].registerPlugin(moveRowsPlugin);
- // grid[index].onDragInit.subscribe(function (e, dd) {
- // // prevent the grid from cancelling drag'n'drop by default
- // e.stopImmediatePropagation();
- // });
- // //$('.collapseAll').unbind('click').bind('click', function () {
- // // for (var i = 0; i < data[index].length; i++) {
- // // if (data[index][i].isPriceStructure)
- // // data[index][i]._collapsed = true;
- // // }
- // // dataView[index].collapseAllGroups();
- // // RefreshGrid();
- // //});
- // }
- // function loadTabData1(data, tabNumber) {
- // initializeGrid("Dinamic_grid" + data.index, data.index);
- // $('dinamic-cacl-container-' + data.index).enhsplitter({ position: "70%", vertical: false, collapse: "down", bottomMinSize: 0, rightMinSize: 0 });
- // //fillData(data, tabNumber);
- // LoadComponentGrid1(tabNumber);
- // ChangeTab1();
- // grid[index].render();
- // AddCalculationId1(data.index, data.CalculationId);
- // }
- // function AddCalculationId1(index, calculationId) {
- // data[index].CalculationId = calculationId;
- // }
- // function DinamicDeliveryInitSelectionModeCopyPaste(grid) {
- // function FormulaEditor(args) {
- // var _self = this;
- // var _editor = new Slick.Editors.Text(args);
- // var _selector;
- // $.extend(this, _editor);
- // function init() {
- // // register a plugin to select a range and append it to the textbox
- // // since events are fired in reverse order (most recently added are executed first),
- // // this will override other plugins like moverows or selection model and will
- // // not require the grid to not be in the edit mode
- // _selector = new Slick.CellRangeSelector();
- // _selector.onCellRangeSelected.subscribe(_self.handleCellRangeSelected);
- // args.grid.registerPlugin(_selector);
- // }
- // this.destroy = function () {
- // _selector.onCellRangeSelected.unsubscribe(_self.handleCellRangeSelected);
- // grid.unregisterPlugin(_selector);
- // _editor.destroy();
- // };
- // this.handleCellRangeSelected = function (e, args) {
- // _editor.setValue(
- // _editor.getValue() +
- // grid.getColumns()[args.range.fromCell].name +
- // args.range.fromRow +
- // ":" +
- // grid.getColumns()[args.range.toCell].name +
- // args.range.toRow
- // );
- // };
- // init();
- // }
- // // grid.setSelectionModel(new Slick.CellSelectionModel());
- // grid.registerPlugin(new Slick.AutoTooltips());
- // // set keyboard focus on the grid
- // grid.getCanvasNode().focus();
- // var copyManager = new Slick.CellCopyManager();
- // grid.registerPlugin(copyManager);
- // copyManager.onPasteCells.subscribe(function (e, args) {
- // if (args.from.length !== 1 || args.to.length !== 1) {
- // throw "This implementation only supports single range copy and paste operations";
- // }
- // var from = args.from[0];
- // var to = args.to[0];
- // var val;
- // for (var i = 0; i <= from.toRow - from.fromRow; i++) {
- // for (var j = 0; j <= from.toCell - from.fromCell; j++) {
- // if (i <= to.toRow - to.fromRow && j <= to.toCell - to.fromCell) {
- // val = data[from.fromRow + i][columns[from.fromCell + j].field];
- // data[to.fromRow + i][columns[to.fromCell + j].field] = val;
- // grid.invalidateRow(to.fromRow + i);
- // }
- // }
- // }
- // grid.render();
- // });
- // grid.onAddNewRow.subscribe(function (e, args) {
- // var item = args.item;
- // var column = args.column;
- // grid.invalidateRow(data.length);
- // data.push(item);
- // grid.updateRowCount();
- // grid.render();
- // });
- // };
Add Comment
Please, Sign In to add comment