=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/report/hibernate/Report.hbm.xml' --- dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/report/hibernate/Report.hbm.xml 2013-01-16 10:31:12 +0000 +++ dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/report/hibernate/Report.hbm.xml 2013-01-17 15:31:26 +0000 @@ -42,4 +42,4 @@ - \ No newline at end of file + === modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/reporttable/hibernate/ReportTable.hbm.xml' --- dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/reporttable/hibernate/ReportTable.hbm.xml 2012-11-07 13:38:42 +0000 +++ dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/reporttable/hibernate/ReportTable.hbm.xml 2013-01-17 15:31:26 +0000 @@ -1,9 +1,9 @@ ] - > + "-//Hibernate/Hibernate Mapping DTD 3.0//EN" + "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd" + [] + > @@ -24,7 +24,7 @@ + foreign-key="fk_reporttable_dataelements_dataelementid" /> @@ -32,7 +32,7 @@ + foreign-key="fk_reporttable_indicators_indicatorid" /> @@ -40,19 +40,19 @@ + foreign-key="fk_reporttable_datasets_datasetid" /> + column="categorycomboid" + foreign-key="fk_reporttable_categorycombo" /> + foreign-key="fk_reporttable_periods_periodid" /> @@ -60,7 +60,7 @@ + foreign-key="fk_reporttable_organisationunits_organisationunitid" /> @@ -68,7 +68,7 @@ + foreign-key="fk_reporttable_orgunitgroups_orgunitgroupid" /> @@ -109,5 +109,16 @@ + + + + + + + + + + + === modified file 'dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java' --- dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java 2013-01-16 13:25:48 +0000 +++ dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java 2013-01-17 15:31:26 +0000 @@ -349,7 +349,7 @@ private Query getQueryAllACL() { String hql = "select distinct c from " + clazz.getName() + " c" - + " where c.publicAccess like 'r%' or c.user=:user" + + " where c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')"; @@ -376,7 +376,7 @@ private Query getQueryAllLikeNameACL( String name ) { String hql = "select distinct c from " + clazz.getName() + " c" - + " where lower(name) like :name and ( c.publicAccess like 'r%' or c.user=:user" + + " where lower(name) like :name and ( c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " ) order by c.name"; @@ -408,7 +408,7 @@ private Query getQueryAllOrderedNameACL() { String hql = "select distinct c from " + clazz.getName() + " c" - + " where c.publicAccess like 'r%' or c.user=:user" + + " where c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " order by c.name"; @@ -451,7 +451,7 @@ private Query getQueryAllOrderedLastUpdatedACL() { String hql = "select distinct c from " + clazz.getName() + " c" - + " where c.publicAccess like 'r%' or c.user=:user" + + " where c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " order by c.lastUpdated desc"; @@ -482,7 +482,7 @@ private Query getQueryAllLikeNameOrderedNameACL( String name ) { String hql = "select distinct c from " + clazz.getName() + " c" - + " where lower(c.name) like :name and ( c.publicAccess like 'r%' or c.user=:user" + + " where lower(c.name) like :name and ( c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " ) order by c.name"; @@ -513,7 +513,7 @@ private Query getQueryCountACL() { String hql = "select count(distinct c) from " + clazz.getName() + " c" - + " where c.publicAccess like 'r%' or c.user=:user" + + " where c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')"; @@ -539,7 +539,7 @@ private Query getQueryCountLikeNameACL( String name ) { String hql = "select count(distinct c) from " + clazz.getName() + " c" - + " where lower(name) like :name and (c.publicAccess like 'r%' or c.user=:user" + + " where lower(name) like :name and (c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " )"; @@ -570,7 +570,7 @@ private Query getQueryCountGeLastUpdatedACL( Date lastUpdated ) { String hql = "select count(distinct c) from " + clazz.getName() + " c" - + " where c.lastUpdated >= :lastUpdated and (c.publicAccess like 'r%' or c.user=:user" + + " where c.lastUpdated >= :lastUpdated and (c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " )"; @@ -602,7 +602,7 @@ private Query getQueryAllGeLastUpdatedACL( Date lastUpdated ) { String hql = "select distinct c from " + clazz.getName() + " c" - + " where c.lastUpdated >= :lastUpdated and ( c.publicAccess like 'r%' or c.user=:user" + + " where c.lastUpdated >= :lastUpdated and ( c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " )"; @@ -634,7 +634,7 @@ private Query getQueryAllGeCreatedACL( Date created ) { String hql = "select distinct c from " + clazz.getName() + " c" - + " where c.created >= :created and ( c.publicAccess like 'r%' or c.user=:user" + + " where c.created >= :created and ( c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " ) order by c.name"; @@ -666,7 +666,7 @@ private Query getQueryAllGeLastUpdatedOrderedNameACL( Date lastUpdated ) { String hql = "select distinct c from " + clazz.getName() + " c" - + " where c.lastUpdated >= :lastUpdated and ( c.publicAccess like 'r%' or c.user=:user" + + " where c.lastUpdated >= :lastUpdated and ( c.publicAccess like 'r%' or c.user IS NULL or c.user=:user" + " or exists " + " (from c.userGroupAccesses uga join uga.userGroup ug join ug.members ugm where ugm = :user and uga.access like 'r%')" + " ) order by c.name"; === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/SharingController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/SharingController.java 2013-01-16 10:31:12 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/SharingController.java 2013-01-17 15:31:26 +0000 @@ -37,6 +37,7 @@ import org.hisp.dhis.document.Document; import org.hisp.dhis.dxf2.utils.JacksonUtils; import org.hisp.dhis.report.Report; +import org.hisp.dhis.reporttable.ReportTable; import org.hisp.dhis.security.SecurityService; import org.hisp.dhis.user.CurrentUserService; import org.hisp.dhis.user.UserGroup; @@ -72,6 +73,7 @@ { TYPE_MAP.put( "document", Document.class ); TYPE_MAP.put( "report", Report.class ); + TYPE_MAP.put( "reportTable", ReportTable.class ); } @Autowired === modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/viewReportForm.vm' --- dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/viewReportForm.vm 2013-01-16 10:31:12 +0000 +++ dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/viewReportForm.vm 2013-01-17 15:31:26 +0000 @@ -59,7 +59,7 @@ $i18n.getString( 'add_to_dashboard' ) - #if( $auth.hasAccess( "dhis-web-reporting", "removeReport" ) ) + #if( $auth.hasAccess( "dhis-web-reporting", "removeReport" ) && $security.canDelete( $report )) $i18n.getString( 'remove_report' ) #else #end $i18n.getString( 'show_details' ) === modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/viewTableForm.vm' --- dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/viewTableForm.vm 2012-10-18 13:27:17 +0000 +++ dhis-2/dhis-web/dhis-web-reporting/src/main/webapp/dhis-web-reporting/viewTableForm.vm 2013-01-17 15:31:26 +0000 @@ -1,3 +1,6 @@ + +#sharingDialog() +