=== modified file 'dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/sqlview/DefaultSqlViewService.java' --- dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/sqlview/DefaultSqlViewService.java 2014-09-08 13:02:43 +0000 +++ dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/sqlview/DefaultSqlViewService.java 2014-10-02 17:01:16 +0000 @@ -159,11 +159,12 @@ @Override public Grid getSqlViewGrid( SqlView sqlView, Map criteria ) { - Grid sqlViewGrid = new ListGrid(); - - sqlViewExpandStore.setUpDataSqlViewTable( sqlViewGrid, sqlView.getViewName(), criteria ); - - return sqlViewGrid; + Grid grid = new ListGrid(); + grid.setTitle( sqlView.getName() ); + + sqlViewExpandStore.setUpDataSqlViewTable( grid, sqlView.getViewName(), criteria ); + + return grid; } @Override === modified file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/grid/GridUtils.java' --- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/grid/GridUtils.java 2014-09-25 10:17:34 +0000 +++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/grid/GridUtils.java 2014-10-02 17:01:16 +0000 @@ -124,6 +124,7 @@ private static final String KEY_PARAMS = "params"; private static final String JASPER_TEMPLATE = "grid.vm"; private static final String HTML_TEMPLATE = "grid-html.vm"; + private static final String HTML_CSS_TEMPLATE = "grid-html-css.vm"; private static final String ATTR_GRID = "grid"; private static final String ATTR_TITLE = "title"; @@ -395,13 +396,22 @@ } /** - * Writes a JRXML (Jasper Reports XML) representation of the given Grid to the given Writer. + * Writes a HTML representation of the given Grid to the given Writer. */ public static void toHtml( Grid grid, Writer writer ) throws Exception { render( grid, null, writer, HTML_TEMPLATE ); } + + /** + * Writes a HTML representation of the given Grid to the given Writer. + */ + public static void toHtmlCss( Grid grid, Writer writer ) + throws Exception + { + render( grid, null, writer, HTML_CSS_TEMPLATE ); + } /** * Writes an XML representation of the given Grid to the given OutputStream. === added file 'dhis-2/dhis-support/dhis-support-system/src/main/resources/grid-html-css.vm' --- dhis-2/dhis-support/dhis-support-system/src/main/resources/grid-html-css.vm 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-support/dhis-support-system/src/main/resources/grid-html-css.vm 2014-10-02 17:01:16 +0000 @@ -0,0 +1,22 @@ + + +#parse( "grid-html.vm" ) \ No newline at end of file === modified file 'dhis-2/dhis-support/dhis-support-system/src/main/resources/grid-html.vm' --- dhis-2/dhis-support/dhis-support-system/src/main/resources/grid-html.vm 2013-08-07 10:03:12 +0000 +++ dhis-2/dhis-support/dhis-support-system/src/main/resources/grid-html.vm 2014-10-02 17:01:16 +0000 @@ -1,10 +1,11 @@ +

$!encoder.htmlEncode( $grid.title )

$!encoder.htmlEncode( $grid.subtitle )

#foreach( $header in $grid.getVisibleHeaders() ) - +$!encoder.htmlEncode( $header.name ) #end @@ -22,4 +23,5 @@ #end -
$!encoder.htmlEncode( $header.name )
\ No newline at end of file + +
\ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/AnalyticsController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/AnalyticsController.java 2014-09-29 16:10:58 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/AnalyticsController.java 2014-10-02 17:01:16 +0000 @@ -156,6 +156,33 @@ GridUtils.toHtml( substituteMetaData( grid ), response.getWriter() ); } + @RequestMapping( value = RESOURCE_PATH + ".html+css", method = RequestMethod.GET ) + public void getHtmlCss( + @RequestParam Set dimension, + @RequestParam( required = false ) Set filter, + @RequestParam( required = false ) AggregationType aggregationType, + @RequestParam( required = false ) String measureCriteria, + @RequestParam( required = false ) boolean skipMeta, + @RequestParam( required = false ) boolean skipRounding, + @RequestParam( required = false ) boolean hierarchyMeta, + @RequestParam( required = false ) boolean ignoreLimit, + @RequestParam( required = false ) boolean tableLayout, + @RequestParam( required = false ) boolean hideEmptyRows, + @RequestParam( required = false ) boolean showHierarchy, + @RequestParam( required = false ) DisplayProperty displayProperty, + @RequestParam( required = false ) String columns, + @RequestParam( required = false ) String rows, + Model model, + HttpServletResponse response ) throws Exception + { + DataQueryParams params = analyticsService.getFromUrl( dimension, filter, aggregationType, measureCriteria, + skipMeta, skipRounding, hierarchyMeta, ignoreLimit, hideEmptyRows, showHierarchy, displayProperty, i18nManager.getI18nFormat() ); + + contextUtils.configureResponse( response, ContextUtils.CONTENT_TYPE_HTML, CacheStrategy.RESPECT_SYSTEM_SETTING ); + Grid grid = analyticsService.getAggregatedDataValues( params, tableLayout, getDimensionsFromParam( columns ), getDimensionsFromParam( rows ) ); + GridUtils.toHtmlCss( substituteMetaData( grid ), response.getWriter() ); + } + @RequestMapping( value = RESOURCE_PATH + ".csv", method = RequestMethod.GET ) public void getCsv( @RequestParam Set dimension, === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/ReportTableController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/ReportTableController.java 2014-06-11 20:00:39 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/ReportTableController.java 2014-10-02 17:01:16 +0000 @@ -177,6 +177,20 @@ GridUtils.toHtml( grid, response.getWriter() ); } + @RequestMapping( value = "/{uid}/data.html+css", method = RequestMethod.GET ) + public void getReportTableHtmlCss( @PathVariable( "uid" ) String uid, + @RequestParam( value = "ou", required = false ) String organisationUnitUid, + @RequestParam( value = "date", required = false ) @DateTimeFormat( pattern = DATE_PATTERN ) Date date, + HttpServletResponse response ) throws Exception + { + Grid grid = getReportTableGrid( uid, organisationUnitUid, date ); + + String filename = filenameEncode( grid.getTitle() ) + ".html"; + contextUtils.configureResponse( response, ContextUtils.CONTENT_TYPE_HTML, CacheStrategy.RESPECT_SYSTEM_SETTING, filename, false ); + + GridUtils.toHtmlCss( grid, response.getWriter() ); + } + @RequestMapping( value = "/{uid}/data.xml", method = RequestMethod.GET ) public void getReportTableXml( @PathVariable( "uid" ) String uid, @RequestParam( value = "ou", required = false ) String organisationUnitUid, === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/SqlViewController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/SqlViewController.java 2014-05-22 12:40:24 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/SqlViewController.java 2014-10-02 17:01:16 +0000 @@ -130,6 +130,19 @@ GridUtils.toHtml( grid, response.getWriter() ); } + @RequestMapping( value = "/{uid}/data.html+css", method = RequestMethod.GET ) + public void getViewHtmlCss( @PathVariable( "uid" ) String uid, + @RequestParam(required=false) Set criteria, HttpServletResponse response ) throws Exception + { + SqlView sqlView = sqlViewService.getSqlViewByUid( uid ); + + Grid grid = sqlViewService.getSqlViewGrid( sqlView, SqlView.getCriteria( criteria ) ); + + contextUtils.configureResponse( response, ContextUtils.CONTENT_TYPE_HTML, CacheStrategy.RESPECT_SYSTEM_SETTING ); + + GridUtils.toHtmlCss( grid, response.getWriter() ); + } + @RequestMapping( value = "/{uid}/data.pdf", method = RequestMethod.GET ) public void getViewPdf( @PathVariable( "uid" ) String uid, @RequestParam(required=false) Set criteria, HttpServletResponse response ) throws Exception === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/showDataSqlViewForm.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/showDataSqlViewForm.vm 2014-08-28 08:47:36 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/showDataSqlViewForm.vm 2014-10-02 17:01:16 +0000 @@ -20,7 +20,7 @@ - +