$(document) .ready( function() { $(".rowShowHide").hide(); $(".tablesShowHide").hide(); // Listener odpowiadający za akcje po kliknięciu na przycisk // "Exportuj do programu Excel" $("#excelEksport").click(excelExport); $("#pdfEksport").click(pdfExport); function pdfExport() { var url = $(location).attr('href'); url = url + "&toPDF=1&to_pdf=1"; window.location.href = url; } $(".showTables") .bind( "click", function() { if ($(this).attr("class") == "plusStyle showTables") { // pobieramy następny wiersz tabeli // którą chcemy pokazac po czym go // wyswietlamy var nextTBody = $(this).parent() .parent().parent().next(); while ($(nextTBody).attr("id") != "stopTables") { // sprawdzamy czy kategoria if ($(nextTBody).attr("class") == "tablesorter-infoOnly tablesShowHide") { $(nextTBody).show(); } nextTBody = $(nextTBody).next(); } $(this).html("[-]"); $(this).attr("class", "plusStyle hideTables"); } else if ($(this).attr("class") == "plusStyle hideTables") { // pobieramy następny wiersz tabeli // którą chcemy schowac po czym go // chowamy var nextTBody = $(this).parent() .parent().parent().next(); while ($(nextTBody).attr("id") != "stopTables") { // tu chowamy wszystko więc nie // sprawdzamy kategori $(nextTBody).hide(); var changePlusMinus = $( nextTBody).children() .children(); if ($(changePlusMinus[0]) .children("a").attr( "class") == "hideRows") { $(changePlusMinus[0]) .children("a") .attr("class", "showRows"); $(changePlusMinus[0]) .children("a") .html("[+]"); } nextTBody = $(nextTBody).next(); } $(this).html("[+]"); $(this).attr("class", "plusStyle showTables"); } }); $(".showRows") .bind( "click", function() { if ($(this).attr("class") == "showRows") { // pobieramy następny wiersz tabeli // którą chcemy pokazac po czym go // wyswietlamy var nextTBody = $(this).parent() .parent().parent().next(); while ($(nextTBody).attr("id") != "stopRows") { $(nextTBody).show(); nextTBody = $(nextTBody).next(); } $(this).html("[-]"); $(this).attr("class", "hideRows"); } else if ($(this).attr("class") == "hideRows") { // pobieramy następny wiersz tabeli // którą chcemy schowac po czym go // chowamy var nextTBody = $(this).parent() .parent().parent().next(); while ($(nextTBody).attr("id") != "stopRows") { $(nextTBody).hide(); nextTBody = $(nextTBody).next(); } $(this).html("[+]"); $(this).attr("class", "showRows"); } }); // dodatkowe dane dla kontrahenta $(".showProducts") .click( function() { if ($(this).attr("class") === "showProducts") { var parent = $(this).parent(); var children = $(parent).children(); var contractor = $(children[1]) .attr("contractor"); var category = $(this).attr( "category"); var subcategory = $(this).attr( "subcategory"); var date_from = $("#date_from") .attr("value"); var date_to = $("#date_to").attr( "value"); var type = $( "#type option:selected") .attr("value"); var user = $( "#user option:selected") .attr("value"); var pdf_type = $( "#pdf_type option:selected") .attr("value"); var group_ks = $( "#group_ks option:selected") .attr("value"); var Con = { contractor : contractor, date_from : date_from, date_to : date_to, type : type, category : category, subcategory : subcategory, user : user, pdf_type : pdf_type, group_ks : group_ks }; $(this).attr("class", "hideProducts"); var ajax_url = "index.php?module=EcmReports&action=ReportSalesByProducts&to_pdf=1"; $ .blockUI({ css : { border : 'none', padding : '15px', backgroundColor : '#000', '-webkit-border-radius' : '10px', '-moz-border-radius' : '10px', opacity : .5, 'font-weight' : 'bold', 'font-size' : '16px', color : '#fff', }, message : "Proszę czekać..." }); $ .ajax({ type : "POST", url : ajax_url, dataType : "text", success : function(data) { var parparent = $( parent) .parent(); parparent .after("" + data + ""); $.unblockUI(); }, data : Con }); } else if ($(this).attr("class") === "hideProducts") { var parent = $(this).parent() .parent(); $(parent).next().remove( ".productsTable"); $(this).attr("class", "showProducts"); } }); // dodatkowe dane dla produktu $(".showContractors") .click( function() { if ($(this).attr("class") === "showContractors") { var parent = $(this).parent(); var children = $(parent).children(); var date_from = $("#date_from") .attr("value"); var date_to = $("#date_to").attr( "value"); var type = $( "#type option:selected") .attr("value"); var productid = $(this).data( "productid"); var pdf_type = $( "#pdf_type option:selected") .attr("value"); var group_ks = $( "#group_ks option:selected") .attr("value"); var Con = { date_from : date_from, date_to : date_to, type : type, pdf_type : pdf_type, group_ks : group_ks, productid : productid }; $(this).attr("class", "hideContractors"); var ajax_url = "index.php?module=EcmReports&action=getContractorsByProduct&to_pdf=1"; $ .blockUI({ css : { border : 'none', padding : '15px', backgroundColor : '#000', '-webkit-border-radius' : '10px', '-moz-border-radius' : '10px', opacity : .5, 'font-weight' : 'bold', 'font-size' : '16px', color : '#fff', }, message : "Proszę czekać..." }); $ .ajax({ type : "POST", url : ajax_url, dataType : "text", success : function(data) { var parparent = $( parent) .parent(); parparent .after("" + data + ""); $.unblockUI(); }, data : Con }); } else if ($(this).attr("class") === "hideContractors") { var parent = $(this).parent() .parent(); $(parent).next().remove( ".productsTable"); $(this).attr("class", "showContractors"); } }); function excelExport() { var url = $(location).attr('href').replace( "ReportSales", "ReportSalesToExcelFile"); url = url + "&to_pdf=1"; var fileUrl = url.slice(0, url.indexOf("index")) + "modules/EcmReports/ExcelFiles/ReportSales.xls"; $.blockUI({ css : { border : 'none', padding : '15px', backgroundColor : '#000', '-webkit-border-radius' : '10px', '-moz-border-radius' : '10px', opacity : .5, 'font-weight' : 'bold', 'font-size' : '16px', color : '#fff', }, message : "Trwa generowanie pliku..." }); $.ajax({ url : url, success : function(data) { $.unblockUI(); window.location.href = fileUrl }, error : function() { $.unblockUI(); alert('Eksport zakończony niepowodzeniem!'); } }); } $.tablesorter.addParser({ // use a unique id id : 'number', is : function(s, table, cell) { // s is the text from the cell // table is the current table (as a DOM element; not // jQuery object) // cell is the current table cell (DOM element) // return false if you don't want this parser to be // auto detected return false; }, format : function(s, table, cell, cellIndex) { // s is the text from the cell // table is the current table (as a DOM element; not // jQuery object) // cell is the current table cell (DOM element) // cellIndex is the current cell's column index // format your data for normalization // (i.e. do something to get and/or modify your // data, then return it) return $(cell).attr('data-value'); }, // flag for filter widget (true = ALWAYS search parsed // values; false = search cell text) parsed : false, // set the type to either numeric or text (text uses a // natural sort function // so it will work for everything, but numeric is faster // for numbers type : 'numeric' }); // assign the sortStart event $("#myTable thead").click(function() { // alert($(this).attr("id")); $(".productsTable").remove(); var minus = $(".hideProducts"); $.each(minus, function() { $(this).html("[+]"); $(this).attr("class", "showProducts"); }); }); }); function getProductOrders(pid, date,element) { var params = { job : 'getProductOrders', id : pid, date : date, type: $('#date_type').val(), wz: $('#no_wz').is(':checked') }; $.ajax({ type : "POST", url : 'index.php?module=EcmReports&action=javahelper&to_pdf=1', dataType : "json", async : false, success : function(data) { if (data !== undefined) { var content = "" for ( var key in data.items) { content += ''; } content += "
Numer zamówieniaKontrahentIlośćStatus
' + data.items[key].document_no +'' + data.items[key].parent_name +'' + data.items[key].quantity +'' + data.items[key].status +'

"; content += ""; content += ''; content += "
Stan magazynowy:' + data.stock +'

Zamknij okno"; $('#'+element).attr("data-content",content); var tooltip = $( "#"+element ).tooltip({ items: "[data-content]", disabled: true, content: function() { var current = $( this ); if ($(current).attr( "data-content" )!==undefined) { return $(current).attr( "data-content" ); } if ( current.is( "[title]" ) ) { return current.attr( "title" ); } }}).on('mouseout focusout', function(event) { event.stopImmediatePropagation(); }); tooltip.tooltip('open'); } }, data : params }); $('#'+element).data('status','show'); }