← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 12559: implemented sharing for data-elements and orgunitgroups

 

------------------------------------------------------------
revno: 12559
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Thu 2013-10-10 17:32:40 +0200
message:
  implemented sharing for data-elements and orgunitgroups
modified:
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java
  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java
  dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/DataElement.hbm.xml
  dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/organisationunit/hibernate/OrganisationUnitGroup.hbm.xml
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/resources/struts.xml
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/addOrganisationUnitGroupForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnit.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnitGroup.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_es.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_fr.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_id.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_my.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt_BR.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_ru.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_tg.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_vi.properties
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_zh.properties


--
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
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java	2013-10-07 18:38:10 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java	2013-10-10 15:32:40 +0000
@@ -31,12 +31,14 @@
 import org.hisp.dhis.chart.Chart;
 import org.hisp.dhis.dashboard.Dashboard;
 import org.hisp.dhis.datadictionary.DataDictionary;
+import org.hisp.dhis.dataelement.DataElement;
 import org.hisp.dhis.dataset.DataSet;
 import org.hisp.dhis.document.Document;
 import org.hisp.dhis.indicator.Indicator;
 import org.hisp.dhis.indicator.IndicatorGroup;
 import org.hisp.dhis.indicator.IndicatorGroupSet;
 import org.hisp.dhis.interpretation.Interpretation;
+import org.hisp.dhis.organisationunit.OrganisationUnitGroup;
 import org.hisp.dhis.patientreport.PatientAggregateReport;
 import org.hisp.dhis.patientreport.PatientTabularReport;
 import org.hisp.dhis.program.Program;
@@ -99,6 +101,8 @@
         addType( Report.class, "report", null, "F_REPORT_PUBLIC_ADD", "F_REPORT_PRIVATE_ADD" );
         addType( DataSet.class, "dataSet", null, "F_DATASET_PUBLIC_ADD", "F_DATASET_PRIVATE_ADD" );
         addType( DataDictionary.class, "dataDictionary", null, "F_DATADICTIONARY_PUBLIC_ADD", "F_DATADICTIONARY_PRIVATE_ADD" );
+        addType( DataElement.class, "dataElement", null, "F_DATAELEMENT_PUBLIC_ADD", "F_DATAELEMENT_PRIVATE_ADD" );
+        addType( OrganisationUnitGroup.class, "organisationUnitGroup", null, "F_ORGUNITGROUP_PUBLIC_ADD", "F_ORGUNITGROUP_PRIVATE_ADD" );
         addType( Indicator.class, "indicator", null, "F_INDICATOR_PUBLIC_ADD", "F_INDICATOR_PRIVATE_ADD" );
         addType( IndicatorGroup.class, "indicatorGroup", null, "F_INDICATORGROUP_PUBLIC_ADD", "F_INDICATORGROUP_PRIVATE_ADD" );
         addType( IndicatorGroupSet.class, "indicatorGroupSet", null, "F_INDICATORGROUPSET_PUBLIC_ADD", "F_INDICATORGROUPSET_PRIVATE_ADD" );

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java	2013-10-08 17:16:47 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java	2013-10-10 15:32:40 +0000
@@ -513,7 +513,6 @@
         executeSql( "UPDATE categorycombo SET skiptotal = false WHERE skiptotal IS NULL" );
 
         // short names
-
         executeSql( "ALTER TABLE dataelement ALTER COLUMN shortname TYPE character varying(50)" );
         executeSql( "ALTER TABLE indicator ALTER COLUMN shortname TYPE character varying(50)" );
         executeSql( "ALTER TABLE dataset ALTER COLUMN shortname TYPE character varying(50)" );
@@ -523,7 +522,6 @@
         executeSql( "update report set type='jasperJdbc' where type is null and reporttableid is null" );
 
         // upgrade authorities
-
         executeSql( "UPDATE userroleauthorities SET authority='F_DOCUMENT_PUBLIC_ADD' WHERE authority='F_DOCUMENT_ADD'" );
         executeSql( "UPDATE userroleauthorities SET authority='F_REPORT_PUBLIC_ADD' WHERE authority='F_REPORT_ADD'" );
         executeSql( "UPDATE userroleauthorities SET authority='F_REPORTTABLE_PUBLIC_ADD' WHERE authority='F_REPORTTABLE_ADD'" );
@@ -534,6 +532,8 @@
         executeSql( "UPDATE userroleauthorities SET authority='F_DATAELEMENTGROUP_PUBLIC_ADD' WHERE authority='F_DATAELEMENTGROUP_ADD'" );
         executeSql( "UPDATE userroleauthorities SET authority='F_DATAELEMENTGROUPSET_PUBLIC_ADD' WHERE authority='F_DATAELEMENTGROUPSET_ADD'" );
 
+        executeSql( "UPDATE userroleauthorities SET authority='F_ORGUNITGROUP_PUBLIC_ADD' WHERE authority='F_ORGUNITGROUP_ADD'" );
+
         executeSql( "UPDATE userroleauthorities SET authority='F_INDICATOR_PUBLIC_ADD' WHERE authority='F_INDICATOR_ADD'" );
         executeSql( "UPDATE userroleauthorities SET authority='F_INDICATORGROUP_PUBLIC_ADD' WHERE authority='F_INDICATORGROUP_ADD'" );
         executeSql( "UPDATE userroleauthorities SET authority='F_INDICATORGROUPSET_PUBLIC_ADD' WHERE authority='F_INDICATORGROUPSET_ADD'" );

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/DataElement.hbm.xml'
--- dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/DataElement.hbm.xml	2013-09-06 08:24:36 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/DataElement.hbm.xml	2013-10-10 15:32:40 +0000
@@ -62,6 +62,17 @@
 
     <property name="zeroIsSignificant" not-null="true" />
 
+    <!-- Access properties -->
+    <many-to-one name="user" class="org.hisp.dhis.user.User" column="userid" foreign-key="fk_indicator_userid" />
+
+    <property name="publicAccess" length="8" />
+
+    <set name="userGroupAccesses" table="dataelementusergroupaccesses">
+      <cache usage="read-write" />
+      <key column="dataelementid" />
+      <many-to-many class="org.hisp.dhis.user.UserGroupAccess" column="usergroupaccessid" unique="true" />
+    </set>
+
     <!-- Dynamic attribute values -->
 
     <set name="attributeValues" table="dataelementattributevalues">

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/organisationunit/hibernate/OrganisationUnitGroup.hbm.xml'
--- dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/organisationunit/hibernate/OrganisationUnitGroup.hbm.xml	2013-03-01 05:14:56 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/organisationunit/hibernate/OrganisationUnitGroup.hbm.xml	2013-10-10 15:32:40 +0000
@@ -3,7 +3,7 @@
   "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
   "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd";
   [<!ENTITY identifiableProperties SYSTEM "classpath://org/hisp/dhis/common/identifiableProperties.hbm">]
->
+  >
 
 <hibernate-mapping>
   <class name="org.hisp.dhis.organisationunit.OrganisationUnitGroup" table="orgunitgroup">
@@ -17,7 +17,7 @@
 
     <property name="name" column="name" not-null="true" unique="true" length="230" />
 
-	<property name="shortName" column="shortname" unique="true" length="50" />
+    <property name="shortName" column="shortname" unique="true" length="50" />
 
     <property name="symbol" />
 
@@ -27,13 +27,24 @@
       <many-to-many class="org.hisp.dhis.organisationunit.OrganisationUnit" column="organisationunitid"
         foreign-key="fk_orgunitgroup_organisationunitid" />
     </set>
-	
-	<set name="dataSets" table="orgunitgroupdatasets">
-	  <cache usage="read-write" />
-	  <key column="orgunitgroupid" foreign-key="fk_orgunitgroupdatasets_orgunitgroupid" />
-	  <many-to-many class="org.hisp.dhis.dataset.DataSet" column="datasetid"
-	    foreign-key="fk_orgunitgroup_datasetid" />
-	</set>
+
+    <set name="dataSets" table="orgunitgroupdatasets">
+      <cache usage="read-write" />
+      <key column="orgunitgroupid" foreign-key="fk_orgunitgroupdatasets_orgunitgroupid" />
+      <many-to-many class="org.hisp.dhis.dataset.DataSet" column="datasetid"
+        foreign-key="fk_orgunitgroup_datasetid" />
+    </set>
+
+    <!-- Access properties -->
+    <many-to-one name="user" class="org.hisp.dhis.user.User" column="userid" foreign-key="fk_indicator_userid" />
+
+    <property name="publicAccess" length="8" />
+
+    <set name="userGroupAccesses" table="orgunitgroupusergroupaccesses">
+      <cache usage="read-write" />
+      <key column="orgunitgroupid" />
+      <many-to-many class="org.hisp.dhis.user.UserGroupAccess" column="usergroupaccessid" unique="true" />
+    </set>
 
     <!-- Dynamic attribute values -->
 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm	2013-07-12 09:21:55 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm	2013-10-10 15:32:40 +0000
@@ -60,7 +60,7 @@
 			<div id="content">
 			<table class="listTable" id="dataElementList">
 				<col/>				
-				<col width="125px"/>
+				<col width="145px"/>
                 <thead>
 					<tr>
 						<th>$i18n.getString( "name" )</th>
@@ -72,9 +72,31 @@
 				<tr id="tr${dataElement.id}">
 					<td onclick="showDataElementDetails( $dataElement.id )">$encoder.htmlEncode( $dataElement.displayName )</td>
 					<td style="text-align:right">
+
+                        #if ( $security.canManage( $dataElement ) )
+                        <a href="javascript:showSharingDialog('dataElement', '$dataElement.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
+                        #else
+                        <img src="../images/relationship-denied.png">
+                        #end
+
+                        #if( $security.canUpdate( $dataElement ) )
                         <a href="showUpdateDataElementForm.action?id=$dataElement.id&update=true" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
+                        #else
+                        <img src="../images/edit-denied.png">
+                        #end
+
+                        #if( $security.canUpdate( $dataElement ) )
                         <a href="javascript:translate( 'DataElement', '$dataElement.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+                        #else
+                        <img src="../images/edit-denied.png">
+                        #end
+
+                        #if( $security.canDelete( $dataElement ) )
                         <a href="javascript:removeDataElement( $dataElement.id, '$encoder.jsEncode( $dataElement.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
+                        #else
+                        <img src="../images/delete-denied.png">
+                        #end
+
                         <a href="javascript:showDataElementDetails( $dataElement.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
 					</td>
 				</tr>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementForm.vm	2013-10-08 17:16:47 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementForm.vm	2013-10-10 15:32:40 +0000
@@ -39,6 +39,7 @@
 <h3>$i18n.getString( "edit_data_element" )</h3>
 #else
 <h3>$i18n.getString( "create_new_data_element" )</h3>
+#sharingCreateNotification( "dataElement" )
 #end
 
 #if( $update )

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/resources/struts.xml'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/resources/struts.xml	2013-07-25 09:37:43 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/resources/struts.xml	2013-10-10 15:32:40 +0000
@@ -106,25 +106,25 @@
       <result name="success" type="velocity">/main.vm</result>
       <param name="page">/dhis-web-maintenance-organisationunit/addOrganisationUnitGroupForm.vm</param>
       <param name="javascripts">javascript/organisationUnitGroup.js</param>
-      <param name="requiredAuthorities">F_ORGUNITGROUP_ADD</param>
+      <param name="anyAuthorities">F_ORGUNITGROUP_PUBLIC_ADD, F_ORGUNITGROUP_PRIVATE_ADD</param>
     </action>
 
     <action name="addOrganisationUnitGroup" class="org.hisp.dhis.oum.action.organisationunitgroup.AddOrganisationUnitGroupAction">
       <result name="success" type="redirect">organisationUnitGroup.action
       </result>
-      <param name="requiredAuthorities">F_ORGUNITGROUP_ADD</param>
+      <param name="anyAuthorities">F_ORGUNITGROUP_PUBLIC_ADD, F_ORGUNITGROUP_PRIVATE_ADD</param>
     </action>
 
     <action name="openUpdateOrganisationUnitGroup" class="org.hisp.dhis.oum.action.organisationunitgroup.GetOrganisationUnitGroupAction">
       <result name="success" type="velocity">/main.vm</result>
       <param name="page">/dhis-web-maintenance-organisationunit/updateOrganisationUnitGroupForm.vm</param>
       <param name="javascripts">javascript/organisationUnitGroup.js</param>
-      <param name="requiredAuthorities">F_ORGUNITGROUP_ADD</param>
+      <param name="anyAuthorities">F_ORGUNITGROUP_PUBLIC_ADD, F_ORGUNITGROUP_PRIVATE_ADD</param>
     </action>
 
     <action name="updateOrganisationUnitGroup" class="org.hisp.dhis.oum.action.organisationunitgroup.UpdateOrganisationUnitGroupAction">
       <result name="success" type="redirect">organisationUnitGroup.action?currentPage=${keyCurrentPage}</result>
-      <param name="requiredAuthorities">F_ORGUNITGROUP_ADD</param>
+      <param name="anyAuthorities">F_ORGUNITGROUP_PUBLIC_ADD, F_ORGUNITGROUP_PRIVATE_ADD</param>
     </action>
 
     <action name="removeOrganisationUnitGroup" class="org.hisp.dhis.oum.action.organisationunitgroup.RemoveOrganisationUnitGroupAction">

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/addOrganisationUnitGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/addOrganisationUnitGroupForm.vm	2013-09-25 15:52:05 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/addOrganisationUnitGroupForm.vm	2013-10-10 15:32:40 +0000
@@ -36,6 +36,8 @@
 
 <h3>$i18n.getString( "crease_new_org_unit_group" ) #openHelp( "ou_groups_edit" )</h3>
 
+#sharingCreateNotification( "organisationUnitGroup" )
+
 <form name="addOrganisationUnitGroupForm" id="addOrganisationUnitGroupForm" action="addOrganisationUnitGroup.action" method="post" class="inputForm">
 
 <input type="hidden" id="symbol" name="symbol">

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnit.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnit.vm	2013-09-16 17:07:25 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnit.vm	2013-10-10 15:32:40 +0000
@@ -37,10 +37,15 @@
 				<tr id="tr${organisationUnit.id}">
 					<td onclick="showOrganisationUnitDetails( $organisationUnit.id )">$encoder.htmlEncode( $organisationUnit.name )</td>
 					<td style="text-align:right">
+
 						<a href="showUpdateOrganisationUnitForm.action?id=$organisationUnit.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
+
 						#if( $organisationUnit.children.size() == 0 && $auth.hasAccess( "dhis-web-maintenance-organisationunit", "removeOrganisationUnit" ) )
 						<a href="javascript:removeOrganisationUnit( $organisationUnit.id, '$encoder.jsEncode( $organisationUnit.name )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
-						#else <img src="../images/delete-denied.png" alt="$i18n.getString( 'remove' )"/> #end
+						#else
+                        <img src="../images/delete-denied.png" alt="$i18n.getString( 'remove' )"/>
+                        #end
+
 						<a href="javascript:showOrganisationUnitDetails( $organisationUnit.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
 					</td>
 				</tr>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnitGroup.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnitGroup.vm	2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-organisationunit/src/main/webapp/dhis-web-maintenance-organisationunit/organisationUnitGroup.vm	2013-10-10 15:32:40 +0000
@@ -1,3 +1,6 @@
+
+#sharingDialog()
+
 <script type="text/javascript">
 	jQuery(document).ready(function(){	
 		tableSorter( 'listTable' );	
@@ -19,7 +22,7 @@
 			</table>
 			<table class="listTable" id="listTable">
 				<col/>
-				<col width="120px"/>				
+				<col width="145px"/>
                 <thead>				
 				<tr>
 					<th>$i18n.getString( "name" )</th>
@@ -31,11 +34,31 @@
 				<tr id="tr${organisationUnitGroup.id}">
 					<td onclick="showOrganisationUnitGroupDetails( $organisationUnitGroup.id )">$encoder.htmlEncode( $organisationUnitGroup.displayName )</td>
 					<td style="text-align:right">
-						<a href="openUpdateOrganisationUnitGroup.action?id=$organisationUnitGroup.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
-						<a href="javascript:translate( 'OrganisationUnitGroup', '$organisationUnitGroup.id' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
-						#if( $auth.hasAccess( "dhis-web-maintenance-organisationunit", "removeOrganisationUnitGroup" ) )
-						<a href="javascript:removeOrganisationUnitGroup( $organisationUnitGroup.id, '$encoder.jsEncode( $organisationUnitGroup.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
-						#else <img src="../images/delete-denied.png" alt="$i18n.getString( 'remove' )"/> #end
+
+                        #if ( $security.canManage( $organisationUnitGroup ) )
+                        <a href="javascript:showSharingDialog('organisationUnitGroup', '$organisationUnitGroup.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
+                        #else
+                        <img src="../images/relationship-denied.png">
+                        #end
+
+                        #if( $security.canUpdate( $organisationUnitGroup ) )
+                        <a href="openUpdateOrganisationUnitGroup.action?id=$organisationUnitGroup.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
+                        #else
+                        <img src="../images/edit-denied.png">
+                        #end
+
+                        #if( $security.canUpdate( $organisationUnitGroup ) )
+                        <a href="javascript:translate( 'OrganisationUnitGroup', '$organisationUnitGroup.id' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+                        #else
+                        <img src="../images/edit-denied.png">
+                        #end
+
+                        #if( $security.canDelete( $organisationUnitGroup ) )
+                        <a href="javascript:removeOrganisationUnitGroup( $organisationUnitGroup.id, '$encoder.jsEncode( $organisationUnitGroup.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
+                        #else
+                        <img src="../images/delete-denied.png">
+                        #end
+
 						<a href="javascript:showOrganisationUnitGroupDetails( $organisationUnitGroup.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
 					</td>
 				</tr>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties	2013-10-08 17:16:47 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties	2013-10-10 15:32:40 +0000
@@ -80,7 +80,8 @@
 F_ORGANISATIONUNIT_ADD=Add/Update Organisation Unit
 F_ORGANISATIONUNIT_DELETE=Delete Organisation Unit
 F_ORGANISATIONUNIT_MOVE=Move Organisation Unit
-F_ORGUNITGROUP_ADD=Add/Update Organisation Unit Group
+F_ORGUNITGROUP_PUBLIC_ADD=Add/Update Public Organisation Unit Group
+F_ORGUNITGROUP_PRIVATE_ADD=Add/Update Private Organisation Unit Group
 F_ORGUNITGROUP_DELETE=Delete Organisation Unit Group
 F_ORGUNITGROUPSET_ADD=Add/Update Organisation Unit Group Set
 F_ORGUNITGROUPSET_DELETE=Delete Organisation Unit Group Set

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_es.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_es.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_es.properties	2013-10-10 15:32:40 +0000
@@ -64,7 +64,7 @@
 F_GIS_CONFIGURATION_UPDATE=Cambiar Configuraci\u00f3n del SIG
 M_dhis-web-importexport=Ver m\u00f3dulo Importar-Exportar
 add_new=A\u00f1adir nuevo
-F_ORGUNITGROUP_ADD=A\u00f1adir Grupo de Unidad Organizativa
+F_ORGUNITGROUP_PUBLIC_ADD=A\u00f1adir Grupo de Unidad Organizativa
 F_DATASET_LOCK=Bloquear Conjunto de Datos
 create_new_user=Crear nuevo usuario
 password=Contrase\u00f1a

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_fr.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_fr.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_fr.properties	2013-10-10 15:32:40 +0000
@@ -44,7 +44,7 @@
 F_REPORT_PRIVATE_ADD=Ajouter Rapport Priv\u00E9
 M_dhis-web-dataentry=Voir module Saisie des Donn\u00E9es
 M_dhis-web-reporting=Voir module Rapport
-F_ORGUNITGROUP_ADD=Ajouter groupe d'unit\u00E9s d'organisation
+F_ORGUNITGROUP_PUBLIC_ADD=Ajouter groupe d'unit\u00E9s d'organisation
 M_dhis-web-validationrule-local-in=Voir module Analyse de Validation
 F_PROGRAM_ATTRIBUTE_ADD=Ajouter Attribut de Programme
 F_PATIENT_DATAVALUE_DELETE=Supprimer valeur de donn\u00E9es de personne

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_id.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_id.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_id.properties	2013-10-10 15:32:40 +0000
@@ -77,7 +77,7 @@
 F_ORGANISATIONUNIT_ADD=Tambah Unit Organisasi
 F_ORGANISATIONUNIT_DELETE=Hapus Unit Organisasi
 F_ORGANISATIONUNIT_MOVE=Pindah Unit Organisasi
-F_ORGUNITGROUP_ADD=Tambah Kelompok Unit Organisasi
+F_ORGUNITGROUP_PUBLIC_ADD=Tambah Kelompok Unit Organisasi
 F_ORGUNITGROUP_DELETE=Hapus Kelompok Unit Organisasi
 F_ORGUNITGROUPSET_ADD=Tambah Set Kelompok Unit Organisasi
 F_ORGUNITGROUPSET_DELETE=Hapus Set Kelompok Unit Organisasi

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_my.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_my.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_my.properties	2013-10-10 15:32:40 +0000
@@ -65,7 +65,7 @@
 F_ORGANISATIONUNIT_ADD=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a \u1015\u1031\u102b\u1004\u103a\u1038\u1011\u100a\u1037\u103a\u101e\u100a\u103a\u104b
 F_ORGANISATIONUNIT_DELETE=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a \u1016\u103b\u1000\u103a\u101e\u100a\u103a\u104b
 F_ORGANISATIONUNIT_MOVE=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a \u101b\u103d\u1031\u1037\u101e\u100a\u103a\u104b
-F_ORGUNITGROUP_ADD=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a\u1021\u102f\u1015\u103a\u1005\u102f\u1000\u102d\u102f \u1015\u1031\u102b\u1004\u103a\u1038\u1011\u100a\u1037\u103a\u101e\u100a\u103a\u104b
+F_ORGUNITGROUP_PUBLIC_ADD=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a\u1021\u102f\u1015\u103a\u1005\u102f\u1000\u102d\u102f \u1015\u1031\u102b\u1004\u103a\u1038\u1011\u100a\u1037\u103a\u101e\u100a\u103a\u104b
 F_ORGUNITGROUP_DELETE=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a\u1021\u102f\u1015\u103a\u1005\u102f\u1000\u102d\u102f \u1016\u103b\u1000\u103a\u101e\u100a\u103a\u104b
 F_ORGUNITGROUPSET_ADD=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a\u1021\u102f\u1015\u103a\u1005\u102f\u104f \u1021\u1005\u102f\u1000\u102d\u102f\u1015\u1031\u102b\u1004\u103a\u1038\u1011\u100a\u1037\u103a\u101e\u100a\u103a\u104b
 F_ORGUNITGROUPSET_DELETE=\u1021\u1016\u103d\u1032\u1037\u1021\u1005\u100a\u103a\u1038\u101a\u1030\u1014\u1005\u103a\u1021\u102f\u1015\u103a\u1005\u102f\u104f \u1021\u1005\u102f\u1000\u102d\u102f \u1016\u103b\u1000\u103a\u101e\u100a\u103a\u104b

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt.properties	2013-10-10 15:32:40 +0000
@@ -45,7 +45,7 @@
 F_REPORT_PRIVATE_ADD=Adicionar um relat\u00F3rio privado
 M_dhis-web-dataentry=Ver m\u00F3dulo de Entrada de Dados
 M_dhis-web-reporting=Ver m\u00F3dulo de Relat\u00F3rios
-F_ORGUNITGROUP_ADD=Adicionar Grupo de Unidade Organizacional
+F_ORGUNITGROUP_PUBLIC_ADD=Adicionar Grupo de Unidade Organizacional
 M_dhis-web-validationrule-local-in=Ver m\u00F3dulo de An\u00E1lise de Valida\u00E7\u00E3o
 F_PROGRAM_ATTRIBUTE_ADD=Adiccionar Atributo de Programa
 F_PATIENT_DATAVALUE_DELETE=Eliminar valores de dados por benefici\u00E1rio
@@ -249,7 +249,7 @@
 F_EXCEL_TEMPLATE_MAMAGEMENT_UPLOAD=Carregar Modelo de Excel
 F_REPORT_DELETE=Apagar Relat\u00F3rio
 F_PROGRAM_TRACKING_LIST=Ver programa de rastreamento
-F_DATAELEMENT_ADD=Adicionar Elemento de Dados
+F_DATAELEMENT_PUBLIC_ADD=Adicionar Elemento de Dados
 M_dhis-web-dashboard=Ver m\u00F3dulo de painel de instrumentos
 M_dhis-web-dashboard-integration=Ver m\u00F3dulo de integra\u00E7\u00E3o do painel de instrumentos
 F_VIEW_DATABROWSER=Ver navegador de dados

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt_BR.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt_BR.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_pt_BR.properties	2013-10-10 15:32:40 +0000
@@ -45,7 +45,7 @@
 F_REPORT_PRIVATE_ADD=Adicionar um relat\u00F3rio privado
 M_dhis-web-dataentry=Ver m\u00F3dulo de Entrada de Dados
 M_dhis-web-reporting=Ver m\u00F3dulo de Relat\u00F3rios
-F_ORGUNITGROUP_ADD=Adicionar Grupo de Unidade Organizacional
+F_ORGUNITGROUP_PUBLIC_ADD=Adicionar Grupo de Unidade Organizacional
 M_dhis-web-validationrule-local-in=Ver m\u00F3dulo de An\u00E1lise de Valida\u00E7\u00E3o
 F_PROGRAM_ATTRIBUTE_ADD=Adiccionar Atributo de Programa
 F_PATIENT_DATAVALUE_DELETE=Eliminar valores de dados por benefici\u00E1rio
@@ -249,7 +249,7 @@
 F_EXCEL_TEMPLATE_MAMAGEMENT_UPLOAD=Carregar Modelo de Excel
 F_REPORT_DELETE=Apagar Relat\u00F3rio
 F_PROGRAM_TRACKING_LIST=Ver programa de rastreamento
-F_DATAELEMENT_ADD=Adicionar Elemento de Dados
+F_DATAELEMENT_PUBLIC_ADD=Adicionar Elemento de Dados
 M_dhis-web-dashboard=Ver m\u00F3dulo de painel de instrumentos
 M_dhis-web-dashboard-integration=Ver m\u00F3dulo de integra\u00E7\u00E3o do painel de instrumentos
 F_VIEW_DATABROWSER=Ver navegador de dados

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_ru.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_ru.properties	2013-09-27 05:25:22 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_ru.properties	2013-10-10 15:32:40 +0000
@@ -80,7 +80,7 @@
 F_ORGANISATIONUNIT_ADD = \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u044E
 F_ORGANISATIONUNIT_DELETE = \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u044E
 F_ORGANISATIONUNIT_MOVE = \u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u044E
-F_ORGUNITGROUP_ADD = \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0439
+F_ORGUNITGROUP_PUBLIC_ADD = \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0439
 F_ORGUNITGROUP_DELETE = \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0439
 F_ORGUNITGROUPSET_ADD = \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u0430\u0431\u043E\u0440 \u0433\u0440\u0443\u043F\u043F \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0439
 F_ORGUNITGROUPSET_DELETE = \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043D\u0430\u0431\u043E\u0440 \u0433\u0440\u0443\u043F\u043F \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0439

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_tg.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_tg.properties	2013-09-27 05:25:22 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_tg.properties	2013-10-10 15:32:40 +0000
@@ -80,7 +80,7 @@
 F_ORGANISATIONUNIT_ADD = \u0418\u043B\u043E\u0432\u0430\u0438 \u0412\u043E\u04B3\u0438\u0434\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
 F_ORGANISATIONUNIT_DELETE = \u041D\u0435\u0441\u0442 \u043A\u0430\u0440\u0434\u0430\u043D\u0438 \u0412\u043E\u04B3\u0438\u0434\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
 F_ORGANISATIONUNIT_MOVE = \u0418\u043D\u0442\u0438\u049B\u043E\u043B\u0438 \u0412\u043E\u04B3\u0438\u0434\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
-F_ORGUNITGROUP_ADD = \u0418\u043B\u043E\u0432\u0430\u0438 \u0413\u0443\u0440\u04EF\u04B3\u0438 \u0432\u043E\u04B3\u0438\u0434\u04B3\u043E\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
+F_ORGUNITGROUP_PUBLIC_ADD = \u0418\u043B\u043E\u0432\u0430\u0438 \u0413\u0443\u0440\u04EF\u04B3\u0438 \u0432\u043E\u04B3\u0438\u0434\u04B3\u043E\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
 F_ORGUNITGROUP_DELETE = \u041D\u0435\u0441\u0442 \u043A\u0430\u0440\u0434\u0430\u043D\u0438 \u0413\u0443\u0440\u04EF\u04B3\u0438 \u0432\u043E\u04B3\u0438\u0434\u04B3\u043E\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
 F_ORGUNITGROUPSET_ADD = \u0418\u043B\u043E\u0432\u0430\u0438 \u041C\u0430\u04B7\u043C\u04EF\u0438 \u0433\u0443\u0440\u04EF\u04B3\u0438 \u0432\u043E\u04B3\u0438\u0434\u04B3\u043E\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3
 F_ORGUNITGROUPSET_DELETE = \u041D\u0435\u0441\u0442 \u043A\u0430\u0440\u0434\u0430\u043D\u0438 \u041C\u0430\u04B7\u043C\u04EF\u0438 \u0433\u0443\u0440\u04EF\u04B3\u0438 \u0432\u043E\u04B3\u0438\u0434\u04B3\u043E\u0438 \u0441\u043E\u0445\u0442\u043E\u0440\u04E3

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_vi.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_vi.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_vi.properties	2013-10-10 15:32:40 +0000
@@ -106,7 +106,7 @@
 _dhis-web-dashboard=Xem ch\u1ee9c n\u0103ng b\u1ea3ng \u0111i\u1ec1u khi\u1ec3n
 F_DATAMART_ADMIN=Qu\u1ea3n tr\u1ecb d\u1eef li\u1ec7u t\u1ed5ng h\u1ee3p
 add_new=Th\u00eam m\u1edbi
-F_ORGUNITGROUP_ADD=Th\u00eam nh\u00f3m \u0111\u01a1n v\u1ecb
+F_ORGUNITGROUP_PUBLIC_ADD=Th\u00eam nh\u00f3m \u0111\u01a1n v\u1ecb
 password_is_not_valid=M\u1eadt kh\u1ea9u kh\u00f4ng h\u1ee3p l\u1ec7
 F_DATASET_LOCK=Kh\u00f3a t\u1eadp h\u1ee3p d\u1eef li\u1ec7u
 M_dhis-web-reporttool=Xem module xu\u1ea5t b\u00e1o c\u00e1o

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_zh.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_zh.properties	2013-07-26 03:52:08 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module_zh.properties	2013-10-10 15:32:40 +0000
@@ -36,7 +36,7 @@
 edit_user=\u7528\u6237\u66F4\u65B0
 M_dhis-web-dataentry=\u6570\u636E\u8F93\u5165
 M_dhis-web-reporting=\u62A5\u8868\u6A21\u5757
-F_ORGUNITGROUP_ADD=\u6DFB\u52A0\u7EC4\u7EC7\u673A\u6784\u7EC4
+F_ORGUNITGROUP_PUBLIC_ADD=\u6DFB\u52A0\u7EC4\u7EC7\u673A\u6784\u7EC4
 filter=\u7B5B\u9009
 M_dhis-web-validationrule-local-in=\u9A8C\u8BC1\u5206\u6790\u6A21\u5757
 F_PROGRAM_ATTRIBUTE_ADD=\u6DFB\u52A0\u9879\u76EE\u5C5E\u6027