------------------------------------------------------------ revno: 1811 committer: hieu <[email protected]> branch nick: trunk timestamp: Mon 2010-04-26 16:09:48 +0700 message: Fixed bug <545688> using JQuery to improve the printing function and applied this one into Excel reporting module also. added: dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/util/jquery.jqprint.0.3.js modified: dhis-2/dhis-web/dhis-web-excel-reporting/src/main/resources/struts.xml dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/preview.js dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/reportparams.vm dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/javascript/dataSetReport.js dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/previewCustomDataSetReportForm.vm
-- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== added file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/util/jquery.jqprint.0.3.js' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/util/jquery.jqprint.0.3.js 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/util/jquery.jqprint.0.3.js 2010-04-26 09:09:48 +0000 @@ -0,0 +1,76 @@ +// ----------------------------------------------------------------------- +// Eros Fratini - [email protected] +// jqprint 0.3 +// +// - 19/06/2009 - some new implementations, added Opera support +// - 11/05/2009 - first sketch +// +// Printing plug-in for jQuery, evolution of jPrintArea: http://plugins.jquery.com/project/jPrintArea +// requires jQuery 1.3.x +// +// Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php +//------------------------------------------------------------------------ + +(function($) { + var opt; + + $.fn.jqprint = function (options) { + opt = $.extend({}, $.fn.jqprint.defaults, options); + + var $element = (this instanceof jQuery) ? this : $(this); + + if (opt.operaSupport && $.browser.opera) + { + var tab = window.open("","jqPrint-preview"); + tab.document.open(); + + var doc = tab.document; + } + else + { + var $iframe = $("<iframe />"); + + if (!opt.debug) { $iframe.css({ position: "absolute", width: "0px", height: "0px", left: "-600px", top: "-600px" }); } + + $iframe.appendTo("body"); + var doc = $iframe[0].contentWindow.document; + } + + if (opt.importCSS) + { + if ($("link[media=print]").length > 0) + { + $("link[media=print]").each( function() { + doc.write("<link type='text/css' rel='stylesheet' href='" + $(this).attr("href") + "' media='print' />"); + }); + } + else + { + $("link").each( function() { + doc.write("<link type='text/css' rel='stylesheet' href='" + $(this).attr("href") + "' />"); + }); + } + } + + if (opt.printContainer) { doc.write($element.outer()); } + else { $element.each( function() { doc.write($(this).html()); }); } + + doc.close(); + + (opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).focus(); + setTimeout( function() { (opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).print(); if (tab) { tab.close(); } }, 1000); + } + + $.fn.jqprint.defaults = { + debug: false, + importCSS: true, + printContainer: true, + operaSupport: true + }; + + // Thanks to 9__, found at http://users.livejournal.com/9__/380664.html + jQuery.fn.outer = function() { + return $($('<div></div>').html(this.clone())).html(); + } +})(jQuery); + === modified file 'dhis-2/dhis-web/dhis-web-excel-reporting/src/main/resources/struts.xml' --- dhis-2/dhis-web/dhis-web-excel-reporting/src/main/resources/struts.xml 2010-04-26 08:34:42 +0000 +++ dhis-2/dhis-web/dhis-web-excel-reporting/src/main/resources/struts.xml 2010-04-26 09:09:48 +0000 @@ -479,11 +479,12 @@ <param name="stylesheets">style/previewStyle.css, style/ui.all.css</param> <param name="javascripts"> - ../dhis-web-commons/ouwt/ouwt.js, javascript/export.js, javascript/commons.js, javascript/preview.js, - ../dhis-web-commons/util/jquery-ui.js + ../dhis-web-commons/ouwt/ouwt.js, + ../dhis-web-commons/util/jquery-ui.js, + ../dhis-web-commons/util/jquery.jqprint.0.3.js </param> </action> === modified file 'dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/preview.js' --- dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/preview.js 2009-12-17 02:15:50 +0000 +++ dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/preview.js 2010-04-26 09:09:48 +0000 @@ -180,8 +180,18 @@ } showById("tabs"); + showById("printExcelReportButton"); window.status = "DATAWARE HOUSE"; window.stop(); } +function printExcelReportPreview() +{ + var o = $("div#previewDiv"); + o.jqprint(); + + // or + //$("#tabs").jqprint(); + //$('#divOpera').jqprint({ operaSupport: true }); +} \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/reportparams.vm' --- dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/reportparams.vm 2010-03-09 09:36:40 +0000 +++ dhis-2/dhis-web/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/reportparams.vm 2010-04-26 09:09:48 +0000 @@ -59,6 +59,11 @@ <div id="previewDiv"> </div> +<br/> + +<div id="printDiv"> + <input type="button" id="printExcelReportButton" value='$i18n.getString("print")' onclick="printExcelReportPreview();" disabled /> +</div> <span id="info" style="display:none;top:70px;right:5px;position:fixed;" onclick="hideById(this.id)"> === modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml' --- dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml 2010-04-13 11:48:30 +0000 +++ dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml 2010-04-26 09:09:48 +0000 @@ -374,22 +374,22 @@ <param name="menuTreeHeight">420</param> <param name="page">/dhis-web-reporting/dataSetReportForm.vm</param> <param name="menu">/dhis-web-reporting/menu.vm</param> - <param name="javascripts">../dhis-web-commons/oust/oust.js,javascript/dataSetReport.js,../dhis-web-commons/calendar/calendar.js,../dhis-web-commons/calendar/calendar-lang.js,../dhis-web-commons/calendar/calendar-setup.js</param> + <param name="javascripts">../dhis-web-commons/oust/oust.js,javascript/dataSetReport.js,../dhis-web-commons/calendar/calendar.js,../dhis-web-commons/calendar/calendar-lang.js,../dhis-web-commons/calendar/calendar-setup.js</param> <interceptor-ref name="organisationUnitTreeStack"/> </action> <action name="getDataSetReportTypeForPDF" class="org.hisp.dhis.reporting.dataset.action.GetDataSetReportTypeAction"> - <result name="customreport" type="chain">generateCustomDataSetReport</result> - <result name="defaultreport" type="chain">generateDefaultDataSetReport</result> + <result name="customreport" type="chain">generateCustomDataSetReport</result> + <result name="defaultreport" type="chain">generateDefaultDataSetReport</result> <result name="error" type="chain">showDataSetReportForm</result> - <interceptor-ref name="organisationUnitTreeStack"/> + <interceptor-ref name="organisationUnitTreeStack"/> </action> <action name="generateCustomDataSetReport" class="org.hisp.dhis.reporting.dataset.action.GenerateCustomDataSetReportAction"> <result name="success" type="velocity">/popup.vm</result> <result name="error" type="chain">showDataSetReportForm</result> <param name="page">/dhis-web-reporting/previewCustomDataSetReportForm.vm</param> - <param name="javascripts">javascript/dataSetReport.js</param> + <param name="javascripts">javascript/dataSetReport.js,../dhis-web-commons/util/jquery.jqprint.0.3.js</param> <interceptor-ref name="organisationUnitTreeStack"/> </action> @@ -406,10 +406,10 @@ </action> <action name="getDataSetReportTypeForPreview" class="org.hisp.dhis.reporting.dataset.action.GetDataSetReportTypeAction"> - <result name="customreport" type="chain">previewCustomDataSetReport</result> - <result name="defaultreport" type="chain">previewDefaultDataSetReport</result> - <result name="error" type="chain">showDataSetReportForm</result> - <interceptor-ref name="organisationUnitTreeStack"/> + <result name="customreport" type="chain">previewCustomDataSetReport</result> + <result name="defaultreport" type="chain">previewDefaultDataSetReport</result> + <result name="error" type="chain">showDataSetReportForm</result> + <interceptor-ref name="organisationUnitTreeStack"/> </action> <action name="previewCustomDataSetReport" class="org.hisp.dhis.reporting.dataset.action.GenerateCustomDataSetReportAction"> @@ -417,12 +417,12 @@ <param name="menuTreeHeight">420</param> <result name="error" type="chain">showQuickReportForm</result> <param name="page">/dhis-web-reporting/previewCustomDataSetReportForm.vm</param> - <param name="javascripts">javascript/dataSetReport.js</param> - <interceptor-ref name="organisationUnitTreeStack"/> + <param name="javascripts">javascript/dataSetReport.js,../dhis-web-commons/util/jquery.jqprint.0.3.js</param> + <interceptor-ref name="organisationUnitTreeStack"/> </action> <action name="previewDefaultDataSetReport" class="org.hisp.dhis.reporting.dataset.action.GenerateDefaultDataSetReportAction"> - <result name="success" type="chain">previewDefaultDataSetHtmlReport</result> + <result name="success" type="chain">previewDefaultDataSetHtmlReport</result> <result name="error" type="chain">showDataSetReportForm</result> <param name="preview">true</param> <interceptor-ref name="organisationUnitTreeStack"/> === modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/javascript/dataSetReport.js' --- dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/javascript/dataSetReport.js 2010-02-01 20:21:20 +0000 +++ dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/javascript/dataSetReport.js 2010-04-26 09:09:48 +0000 @@ -109,3 +109,9 @@ setTimeout( "getDataSetReportStatus();", 2000 ); } } + +function printDateSetReportPreview() +{ + var o = $("div#printDateSetPreviewDiv"); + o.jqprint(); +} \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/previewCustomDataSetReportForm.vm' --- dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/previewCustomDataSetReportForm.vm 2009-03-03 16:46:36 +0000 +++ dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/previewCustomDataSetReportForm.vm 2010-04-26 09:09:48 +0000 @@ -4,9 +4,9 @@ <td><h3>$i18n.getString('reporting_unit'): </h3></td> <td><h3>$reportingUnit</h3></td> <td><input type="button" value="$i18n.getString( 'back' )" style="width:100px" - onclick="javascript:window.location.href='showDataSetReportForm.action'"> + onclick="javascript:window.location.href='showDataSetReportForm.action'"/> <input type="button" value="$i18n.getString( 'print' )" style="width:100px" - onclick="javascript:window.print()"></td> + onclick="printDateSetReportPreview();"/></td> </tr> <tr> <td><h3>$i18n.getString('reporting_period'): </h3></td> @@ -18,4 +18,6 @@ </tr> </table> -$customDataEntryFormCode \ No newline at end of file +<div id="printDateSetPreviewDiv"> + $customDataEntryFormCode +</div> \ No newline at end of file
_______________________________________________ Mailing list: https://launchpad.net/~dhis2-devs Post to : [email protected] Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp

