=== modified file 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/GetPatientProgramListAction.java' --- dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/GetPatientProgramListAction.java 2013-03-19 16:49:23 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/GetPatientProgramListAction.java 2013-03-20 03:54:42 +0000 @@ -31,7 +31,6 @@ import java.util.Collection; import java.util.HashMap; import java.util.HashSet; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -48,6 +47,8 @@ import org.hisp.dhis.relationship.RelationshipService; import org.hisp.dhis.relationship.RelationshipType; import org.hisp.dhis.relationship.RelationshipTypeService; +import org.hisp.dhis.user.CurrentUserService; +import org.hisp.dhis.user.User; import com.opensymphony.xwork2.Action; @@ -142,6 +143,18 @@ this.relationshipTypeService = relationshipTypeService; } + private CurrentUserService currentUserService; + + public CurrentUserService getCurrentUserService() + { + return currentUserService; + } + + public void setCurrentUserService( CurrentUserService currentUserService ) + { + this.currentUserService = currentUserService; + } + // ------------------------------------------------------------------------- // Input & Output // ------------------------------------------------------------------------- @@ -249,10 +262,23 @@ return listOfCompletedProgram; } + private User user; + + public User getUser() + { + return user; + } + + public void setUser( User user ) + { + this.user = user; + } + @Override public String execute() throws Exception { + user = currentUserService.getCurrentUser(); programInstances.clear(); relatedPeople = new HashMap(); @@ -321,7 +347,8 @@ programs.add( program ); } else if ( programInstanceService.getProgramInstances( patient, program ).size() > 0 - && !program.getOnlyEnrollOnce() && programInstanceService.getProgramInstances( patient, program, false ).size() == 0) + && !program.getOnlyEnrollOnce() + && programInstanceService.getProgramInstances( patient, program, false ).size() == 0 ) { programs.add( program ); } === modified file 'dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml 2013-03-19 04:35:21 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml 2013-03-20 03:54:42 +0000 @@ -241,6 +241,7 @@ ref="org.hisp.dhis.relationship.RelationshipTypeService" /> + #if( $programInstances.size() > 0) #foreach( $programInstance in $programInstances ) + #set($authorized = false) + #foreach($orgUnit in $user.getOrganisationUnits()) + #if($programInstance.getProgram().getOrganisationUnits().contains($orgUnit)) + #set($authorized = true) + #end + #end + #if($programInstance.getProgram().isSingleEvent()) -
  • $programInstance.getProgram().getName()
  • +
  • + #if ($authorized) + $programInstance.getProgram().getName() + #else + $programInstance.getProgram().getName() + #end +
  • #else
  • + #if ($authorized) $programInstance.getProgram().getName() + #else + $programInstance.getProgram().getName() + #end
  • #set($nextStage = false) @@ -24,7 +41,11 @@ #if($nextStage)
  • - - Next: $nextStage.getProgramStage().getName() + #if ($authorized) + - Next: $nextStage.getProgramStage().getName() + #else + - Next: $nextStage.getProgramStage().getName() + #end
  • #end #end @@ -39,13 +60,31 @@