← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 13240: Replace fixed attributes to dynamic attributes (WIP)

 

------------------------------------------------------------
revno: 13240
committer: Tran Chau <tran.hispvietnam@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2013-12-16 11:39:49 +0700
message:
  Replace fixed attributes to dynamic attributes (WIP)
modified:
  dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/javascript/programStageCompleteness.js
  dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/jsonProgramMetaData.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeGroupForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientIdentifierTypeForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramIndicator.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageSectionForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addRelationshipTypeForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addSingleProgramValidationForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addValidationCriteria.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregationList.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/caseaggregation.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttribute.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttributeGroup.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientIdentifierType.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/program.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programIndicator.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programStage.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programValidation.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/relationship.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/validationcriteria.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/viewPatientRegistationForm.js
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttribute.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttributeGroup.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientIdentifierType.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientRegistrationForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programIndicator.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programList.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programStage.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programValidationList.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/relationshipType.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteGroupForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientIdentifierType.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramIndicator.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageSectionForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateRelationshipTypeForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateSingleProgramValidationForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateValidationCriteria.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/validationCriteria.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewDataEntryForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewPatientRegistationForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewScheduledCaseAggTasks.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
=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/javascript/programStageCompleteness.js'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/javascript/programStageCompleteness.js	2013-12-10 12:17:17 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/javascript/programStageCompleteness.js	2013-12-16 04:39:49 +0000
@@ -1,17 +1,16 @@
 isAjax = true;
 
-$(function() {
-  selectionTreeSelection.setListenerFunction( orgunitSelected );
-});
-
 function orgunitSelected( orgUnits, orgUnitNames )
 {
 	showById('selectDiv');
 	hideById('showDataBtn');
 	hideById("listPatientDiv");
+	setFieldValue('orgunitName', orgUnitNames[0]);
 	setFieldValue('orgunitId', orgUnits[0]);
 }
 
+selection.setListenerFunction( orgunitSelected );
+
 function generateStageCompleteness()
 {
 	hideById('selectDiv');

=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/jsonProgramMetaData.vm'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/jsonProgramMetaData.vm	2013-12-09 21:32:59 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/webapp/dhis-web-caseentry/jsonProgramMetaData.vm	2013-12-16 04:39:49 +0000
@@ -7,7 +7,7 @@
 "$encoder.jsonEncode( $program.uid )":{
     "id":"${program.id}",
     "uid":"$encoder.jsonEncode( ${program.uid} )",
-    "name":"$encoder.jsonEncode( ${program.displayName} )",
+	"name":"$encoder.jsonEncode( ${program.displayName} )",
     "description":"$encoder.jsonEncode( ${program.description} )",
     "enrollmentDescription":"$encoder.jsonEncode( ${program.dateOfEnrollmentDescription} )",
     "incidentDescription":"$encoder.jsonEncode( ${program.dateOfIncidentDescription} )",
@@ -15,17 +15,17 @@
     "programStages":[#set( $pssize = $program.programStages.size() )
     #foreach( $ps in $program.programStages )
     {
-      "id": "${ps.id}",
-      "uid": "$encoder.jsonEncode( ${ps.uid} )",
-      "name": "$encoder.jsonEncode( ${ps.displayName} )",
-      "reportDateDescription": "$encoder.jsonEncode( ${ps.reportDateDescription} )",
-      "irregular": "$!{ps.irregular}",
-      "displayGenerateEventBox": "$!{ps.displayGenerateEventBox}",
-      "validCompleteOnly": "$!{ps.validCompleteOnly}",
-      "captureCoordinates": "$!{ps.captureCoordinates}",
-      "blockEntryForm": "$!ps.blockEntryForm",
-      "remindCompleted": "$!ps.remindCompleted",
-		  "allowGenerateNextVisit": "$!ps.allowGenerateNextVisit"
+        "id": "${ps.id}",
+        "uid": "$encoder.jsonEncode( ${ps.uid} )",
+        "name": "$encoder.jsonEncode( ${ps.displayName} )",
+        "reportDateDescription": "$encoder.jsonEncode( ${ps.reportDateDescription} )",
+        "irregular": "$!{ps.irregular}",
+        "displayGenerateEventBox": "$!{ps.displayGenerateEventBox}",
+        "validCompleteOnly": "$!{ps.validCompleteOnly}",
+        "captureCoordinates": "$!{ps.captureCoordinates}",
+        "blockEntryForm": "$!ps.blockEntryForm",
+        "remindCompleted": "$!ps.remindCompleted",
+		"allowGenerateNextVisit": "$!ps.allowGenerateNextVisit"
     }#if( $velocityCount < $pssize ),#end
     #end],
     "programAssociations": [

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeForm.vm	2013-12-16 04:39:49 +0000
@@ -1,7 +1,7 @@
 <script type="text/javascript" src="javascript/addPatientAttributeForm.js"></script>
 																		
 <h3>$i18n.getString( "create_new_patient_attribute" )</h3>
-<form id="addPatientAttributeForm" action="addPatientAttribute.action" method="post" class="inputForm">
+<form id="addPatientAttributeForm" action="addPatientAttribute.action" method="post" >
 
 <table id="attrTable"> 
 	<thead>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeGroupForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientAttributeGroupForm.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h3>$i18n.getString( "create_new_patient_attribute_group" )</h3>
 																			
-<form id="addPatientAttributeGroupForm" name="addPatientAttributeGroupForm" action="addPatientAttributeGroup.action" method="post" class="inputForm">
+<form id="addPatientAttributeGroupForm" name="addPatientAttributeGroupForm" action="addPatientAttributeGroup.action" method="post" >
 
 <table>
 	<tr>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientIdentifierTypeForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientIdentifierTypeForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addPatientIdentifierTypeForm.vm	2013-12-16 04:39:49 +0000
@@ -5,7 +5,7 @@
 
 <h3>$i18n.getString( "create_new_patient_identifier_type" )</h3>
 								
-<form id="addPatientIdentifierTypeForm" name="addPatientIdentifierTypeForm" action="addPatientIdentifierType.action" method="post" class="inputForm">
+<form id="addPatientIdentifierTypeForm" name="addPatientIdentifierTypeForm" action="addPatientIdentifierType.action" method="post" >
 
 <table>	
 	 <thead>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramForm.vm	2013-12-16 04:39:49 +0000
@@ -85,7 +85,7 @@
 
 <h3>$i18n.getString( "create_new_program" )</h3>
 									
-<form id="addProgramForm" name="addProgramForm" action="addProgram.action" method="get" class="inputForm">
+<form id="addProgramForm" name="addProgramForm" action="addProgram.action" method="get" >
 	<select id='daysAllowedSendMessages' name="daysAllowedSendMessages" multiple="multiple" class="hidden"></select>
 	<select id='templateMessages' name="templateMessages" multiple="multiple" class="hidden"></select>
 	<select id='datesToCompare' name="datesToCompare" multiple="multiple" class="hidden"></select>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramIndicator.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramIndicator.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramIndicator.vm	2013-12-16 04:39:49 +0000
@@ -13,7 +13,7 @@
 
 <h3>$i18n.getString( "create_new_program_indicator" )</h3>
 									
-<form id="programIndicatorForm" action="addProgramIndicator.action" method="post" class="inputForm">
+<form id="programIndicatorForm" action="addProgramIndicator.action" method="post" >
 <input type='hidden' id='programId' name='programId' value='$program.id'>
 
 <table>	 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageForm.vm	2013-12-16 04:39:49 +0000
@@ -11,7 +11,7 @@
 
 <h4>$program.displayName</h4>
 		
-<form id="addProgramStageForm" name="addProgramStageForm" action="addProgramStage.action" method="get" class="inputForm">
+<form id="addProgramStageForm" name="addProgramStageForm" action="addProgramStage.action" method="get">
 	<input type="hidden" id="programId" name="programId" value="$program.id"/>
 	<input type='hidden' id="id" name="id" value="$program.id"/>
 	<select id='daysAllowedSendMessages' name="daysAllowedSendMessages" multiple="multiple" class="hidden"></select>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageSectionForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageSectionForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addProgramStageSectionForm.vm	2013-12-16 04:39:49 +0000
@@ -18,7 +18,7 @@
 
 <h4>$programStage.displayName</h4>
 																		
-<form id="programStageSectionForm" name="programStageSectionForm" action="addProgramStageSection.action" method="post" class="inputForm">
+<form id="programStageSectionForm" name="programStageSectionForm" action="addProgramStageSection.action" method="post">
 
 <input type="hidden" id="programStageId" name="programStageId" value="$programStage.id"/>
 <table>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addRelationshipTypeForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addRelationshipTypeForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addRelationshipTypeForm.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h3>$i18n.getString( "create_new_relationship_type" )</h3>
 																					
-<form id="addRelationshipTypeForm" name="addRelationshipTypeForm" action="addRelationshipType.action" method="post" class="inputForm">
+<form id="addRelationshipTypeForm" name="addRelationshipTypeForm" action="addRelationshipType.action" method="post">
 
 <table> 
 	 <thead>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addSingleProgramValidationForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addSingleProgramValidationForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addSingleProgramValidationForm.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h4>$program.displayName</h4>
 
-<form id='programValidationForm' name='programValidationForm' method='post' action='addProgramValidation.action' class="inputForm">
+<form id='programValidationForm' name='programValidationForm' method='post' action='addProgramValidation.action'>
 
 <input type='hidden' id='programId' name='programId' value='$program.id'>
 <table>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addValidationCriteria.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addValidationCriteria.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addValidationCriteria.vm	2013-12-16 04:39:49 +0000
@@ -1,7 +1,7 @@
 <script type="text/javascript" src="javascript/addValidationCriteria.js"></script>																
 
 <h3>$i18n.getString( "create_validation_criteria" )</h3>
-<form id="validationCriteriaForm" action="addValidationCriteria.action" method="post" class="inputForm">
+<form id="validationCriteriaForm" action="addValidationCriteria.action" method="post" >
 <table>
 	<tr><th colspan="3">$i18n.getString('validation_criteria_details')</th></tr>
     <tr>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm	2013-12-16 04:39:49 +0000
@@ -1,23 +1,5 @@
-<script>
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-</script>
-
 <h3>$i18n.getString( 'patient_aggregation_query_builder_management' ) #openHelp( "patient_aggregation_query_builder" )</h3>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdateCaseAggregationForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removeCaseAggregation"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showCaseAggregationDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
   <tr>
     <td style="vertical-align:top">
@@ -35,8 +17,8 @@
 			</td>
 		</tr>
 		<tr>
-      <td>$i18n.getString( "filter_by_name" )</td>
-      <td>
+		  	<td>$i18n.getString( "filter_by_name" )</td>
+			<td>
 				<input type="text" onkeyup="filterValues( this.value , 1)" />
 			</td>
 			<td colspan="3" style="text-align:right">
@@ -47,29 +29,33 @@
 			
 		<table class="listTable">
 			<col>
+			<col width="120">   
 			<thead>
 				<tr>
 					<th>$i18n.getString( "name" )</th>
+					<th>$i18n.getString( "operations" )</th>
 				</tr>
 			</thead>
 			<tbody id="list">
 				#parse( "/dhis-web-maintenance-patient/caseAggregationList.vm" )
 			</tbody>
-      </table>
+
+        </table>
     </td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( "hide_details" )"><img src="../images/close.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>				
-        <p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>
-        <p><label class="bold">$i18n.getString( "operator" ):</label><br><span id="operatorField"></span></p>
-        <p><label class="bold">$i18n.getString( "aggregation_data_element" ):</label><br><span id="aggregationDataElementField"></span></p>
+                <p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>
+                <p><label class="bold">$i18n.getString( "operator" ):</label><br><span id="operatorField"></span></p>
+                <p><label class="bold">$i18n.getString( "aggregation_data_element" ):</label><br><span id="aggregationDataElementField"></span></p>
 				<p><label class="bold">$i18n.getString( "option_combo" ):</label><br><span id="optionComboField"></span></p>
-        <p><label class="bold">$i18n.getString( "data_element_for_sum_avg_min_max" ):</label><br><span id="deSumField"></span></p>
-        <p><label class="bold">$i18n.getString( "aggregation_expression" ):</label><br><span id="aggregationExpressionField"></span></p>
+                <p><label class="bold">$i18n.getString( "data_element_for_sum_avg_min_max" ):</label><br><span id="deSumField"></span></p>
+                <p><label class="bold">$i18n.getString( "aggregation_expression" ):</label><br><span id="aggregationExpressionField"></span></p>
 			</div>
+
 		</td>
   </tr>
 </table>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregationList.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregationList.vm	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregationList.vm	2013-12-16 04:39:49 +0000
@@ -1,10 +1,13 @@
-
+#set($mark=false)
 #foreach( $aggregationCondition in $aggregationConditions )
-	<tr id="tr${aggregationCondition.id}" data-id="$!aggregationCondition.id" data-uid="$!aggregationCondition.uid" data-type="CaseAggregationCondition"
-      data-name="$encoder.htmlEncode( $!aggregationCondition.displayName )"
-	    data-can-manage="$security.canManage( $aggregationCondition )"
-	    data-can-update="$security.canUpdate( $aggregationCondition )"
-	    data-can-delete="$security.canDelete( $aggregationCondition )">
-	    <td>$encoder.htmlEncode( $!aggregationCondition.displayName )</td>
+	<tr id="tr${aggregationCondition.id}" #alternate( $mark )>
+		<td onclick="javascript:showCaseAggregationDetails( $aggregationCondition.id )" >$encoder.htmlEncode( $aggregationCondition.displayName )</td>                
+		<td>
+		  <a href="showUpdateCaseAggregationForm.action?id=$aggregationCondition.id&dataSetId=$!dataSetId" title="$i18n.getString( "edit" )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+		  <a href="javascript:translate( 'CaseAggregationCondition', '$aggregationCondition.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>  
+		  <a href="javascript:removeCaseAggregation( '$aggregationCondition.id', '$encoder.jsEncode( $aggregationCondition.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+		  <a href="javascript:showCaseAggregationDetails( $aggregationCondition.id )" title="$i18n.getString( "show_details" )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+		</td>
 	</tr>
-#end
+	#set($mark=!$mark)
+#end
\ No newline at end of file

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/caseaggregation.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/caseaggregation.js	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/caseaggregation.js	2013-12-16 04:39:49 +0000
@@ -1,502 +1,552 @@
+
 //------------------------------------------------------------------------------
 // Get dataelements by dataset
 //------------------------------------------------------------------------------
 
-function getDataElementsByDataset() {
-  var dataSets = document.getElementById('dataSets');
-  var dataSetId = dataSets.options[ dataSets.selectedIndex ].value;
-  setFieldValue('aggregationDataElementId', '');
-  setFieldValue('aggregationDataElementInput', '');
-
-  if( dataSetId == "" ) {
-    disable('dataElementsButton');
-    setFieldValue('aggregationDataElementInput', '');
-    return;
-  }
-  autoCompletedField();
+function getDataElementsByDataset()
+{
+	var dataSets = document.getElementById( 'dataSets' );
+	var dataSetId = dataSets.options[ dataSets.selectedIndex ].value;
+	setFieldValue('aggregationDataElementId','');
+	setFieldValue('aggregationDataElementInput','');
+	
+	if( dataSetId == "" ){
+		disable( 'dataElementsButton' );
+		setFieldValue( 'aggregationDataElementInput','');
+		return;
+	}
+	autoCompletedField();
 }
 
-function autoCompletedField() {
-  $("#dataElementsButton").unbind('click');
-  enable('dataElementsButton');
-
-  var input = jQuery("#aggregationDataElementInput")
-    .autocomplete({
-      delay: 0,
-      minLength: 0,
-      source: function( request, response ) {
-        $.ajax({
-          url: "getDataElementsByDataset.action?id=" + getFieldValue('dataSets') + "&query=" + input.val(),
-          dataType: "json",
-          success: function( data ) {
-            response($.map(data.dataElements, function( item ) {
-              return {
-                label: item.name,
-                id: item.id
-              };
-            }));
-          }
-        });
-      },
-      select: function( event, ui ) {
-        input.val(ui.item.value);
-        setFieldValue('aggregationDataElementId', ui.item.id);
-        input.autocomplete("close");
-      },
-      change: function( event, ui ) {
-        if( !ui.item ) {
-          var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex($(this).val()) + "$", "i"),
-            valid = false;
-          select.children("option").each(function() {
-            if( $(this).text().match(matcher) ) {
-              this.selected = valid = true;
-              return false;
-            }
-          });
-          if( !valid ) {
-            // remove invalid value, as it didn't match anything
-            $(this).val("");
-            select.val("");
-            input.data("autocomplete").term = "";
-            return false;
-          }
-        }
-      }
-    }).addClass("ui-widget");
-
-  input.data("autocomplete")._renderItem = function( ul, item ) {
-    return $("<li></li>")
-      .data("item.autocomplete", item)
-      .append("<a>" + item.label + "</a>")
-      .appendTo(ul);
-  };
-
-  var wrapper = this.wrapper = $("<span style='width:200px'>")
-    .addClass("ui-combobox")
-    .insertAfter(input);
-
-  var button = $("#dataElementsButton")
-    .attr("tabIndex", -1)
-    .attr("title", i18n_show_all_items)
-    .appendTo(wrapper)
-    .button({
-      icons: {
-        primary: "ui-icon-triangle-1-s"
-      },
-      text: false
-    })
-    .click(function() {
-      // close if already visible
-      if( input.autocomplete("widget").is(":visible") ) {
-        input.autocomplete("close");
-        return;
-      }
-      // work around a bug (likely same cause as #5265)
-      $(this).blur();
-      // pass empty string as value to search for, displaying all results
-      input.autocomplete("search", "");
-      input.focus();
-    });
+function autoCompletedField()
+{
+	$( "#dataElementsButton" ).unbind('click');
+	enable( 'dataElementsButton' );
+	
+	var input = jQuery( "#aggregationDataElementInput" )
+		.autocomplete({
+			delay: 0,
+			minLength: 0,
+			source: function( request, response ){
+				$.ajax({
+					url: "getDataElementsByDataset.action?id=" + getFieldValue('dataSets') + "&query=" + input.val(),
+					dataType: "json",
+					success: function(data) {
+						response($.map(data.dataElements, function(item) {
+							return {
+								label: item.name,
+								id: item.id
+							};
+						}));
+					}
+				});
+			},
+			select: function( event, ui ) {
+				input.val(ui.item.value);
+				setFieldValue('aggregationDataElementId',ui.item.id);
+				input.autocomplete( "close" );
+			},
+			change: function( event, ui ) {
+				if ( !ui.item ) {
+					var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ),
+						valid = false;
+					select.children( "option" ).each(function() {
+						if ( $( this ).text().match( matcher ) ) {
+							this.selected = valid = true;
+							return false;
+						}
+					});
+					if ( !valid ) {
+						// remove invalid value, as it didn't match anything
+						$( this ).val( "" );
+						select.val( "" );
+						input.data( "autocomplete" ).term = "";
+						return false;
+					}
+				}
+			}
+		}).addClass( "ui-widget" );
+
+	input.data( "autocomplete" )._renderItem = function( ul, item ) {
+		return $( "<li></li>" )
+			.data( "item.autocomplete", item )
+			.append( "<a>" + item.label + "</a>" )
+			.appendTo( ul );
+	};
+	
+	var wrapper = this.wrapper = $( "<span style='width:200px'>" )
+			.addClass( "ui-combobox" )
+			.insertAfter( input );
+	
+	var button = $( "#dataElementsButton" )
+		.attr( "tabIndex", -1 )
+		.attr( "title", i18n_show_all_items )
+		.appendTo( wrapper )
+		.button({
+			icons: {
+				primary: "ui-icon-triangle-1-s"
+			},
+			text: false
+		})
+		.click(function() {
+			// close if already visible
+			if ( input.autocomplete( "widget" ).is( ":visible" ) ) {
+				input.autocomplete( "close" );
+				return;
+			}
+			// work around a bug (likely same cause as #5265)
+			$( this ).blur();
+			// pass empty string as value to search for, displaying all results
+			input.autocomplete( "search", "" );
+			input.focus();
+		});
 }
 
 //------------------------------------------------------------------------------
 // Get Program Stages
 //------------------------------------------------------------------------------
 
-function getParams() {
-  clearListById('programStageId');
-  clearListById('dataElements');
-  clearListById('caseProperty');
-  var programId = getFieldValue('programId');
-  if( programId == '' ) {
-    var caseProperty = jQuery('#caseProperty');
-    caseProperty.append('<option suggested="" title="' + i18n_total_of_patient_registration + '" value="[PT:count]">' + i18n_total_of_patient_registration + '</option>');
-    caseProperty.append('<option suggested="F, M" title="' + i18n_gender + '" value="[CP:gender]">' + i18n_gender + '</option>');
-    caseProperty.append('<option suggested="" title="' + i18n_dob_type + '" value="[CP:dobType]">' + i18n_dob_type + '</option>');
-    caseProperty.append('<option suggested="" title="' + i18n_age_days + '" value="[CP:age]">' + i18n_age_days + '</option>');
-
-    disable('programProperty');
-    disable('programStageProperty');
-  }
-
-  if( jQuery('#programId option:selected').attr('programType') == 3 ) {
-    jQuery("[name=multiProgram]").remove();
-    if( jQuery("[value=times]").attr('checked') != undefined
-      && jQuery("[value=times]").attr('checked') != 'true' ) {
-      jQuery("[value=times]").attr('checked', true);
-    }
-  }
-
-  jQuery.getJSON('getParamsByProgram.action', { programId: programId }
-    , function( json ) {
-      enable('programProperty');
-      var programstage = jQuery('#programStageId');
-
-      for( i in json.programStages ) {
-        var id = json.programStages[i].id;
-        var formularId = "[PS:" + id + "]";
-        var name = json.programStages[i].name;
-
-        programstage.append("<option value='" + id + "' title='" + name + "'>" + name + "</option>");
-      }
-
-      if( json.programStages.length > 1 ) {
-        programstage.prepend("<option value='' title='" + i18n_all + "'>" + i18n_all + "</option>");
-      }
-      byId('programStageId').options[0].selected = true;
-      getPatientDataElements();
-
-      clearListById('caseProperty');
-      var type = jQuery('#programId option:selected').attr('programType');
-      if( type != '3' ) {
-        var caseProperty = jQuery('#caseProperty');
-        for( i in json.fixedAttributes ) {
-          var id = json.fixedAttributes[i].id;
-          var name = json.fixedAttributes[i].name;
-
-          caseProperty.append("<option value='" + id + "' title='" + name + "' suggested='" + json.fixedAttributes[i].suggested + "'>" + name + "</option>");
-        }
-
-        for( i in json.patientAttributes ) {
-          var id = json.patientAttributes[i].id;
-          var name = json.patientAttributes[i].name;
-          var suggested = json.patientAttributes[i].suggested;
-
-          caseProperty.append("<option value='" + id + "' title='" + name + "' suggested='" + suggested + "'>" + name + "</option>");
-        }
-      }
-    });
+function getParams()
+{
+	clearListById( 'programStageId' );
+  	clearListById( 'dataElements' );
+	clearListById('caseProperty');
+	var programId = getFieldValue( 'programId' );
+	if( programId == ''){
+		var caseProperty = jQuery( '#caseProperty' );
+		caseProperty.append( '<option suggested="" title="' + i18n_total_of_patient_registration + '" value="[PT:count]">'+ i18n_total_of_patient_registration +'</option>' );
+		caseProperty.append( '<option suggested="F, M" title="' + i18n_gender + '" value="[CP:gender]">'+ i18n_gender +'</option>' );
+		caseProperty.append( '<option suggested="" title="' + i18n_dob_type + '" value="[CP:dobType]">'+ i18n_dob_type +'</option>' );
+		caseProperty.append( '<option suggested="" title="' + i18n_age_days + '" value="[CP:age]">'+ i18n_age_days +'</option>' );
+		
+		disable('programProperty');
+		disable('programStageProperty');
+	}
+	
+	if(jQuery('#programId option:selected').attr('programType')==3){
+		jQuery("[name=multiProgram]").remove();
+		if( jQuery("[value=times]").attr('checked')!=undefined
+			&& jQuery("[value=times]").attr('checked')!='true'  )
+		{
+			jQuery("[value=times]").attr('checked',true);
+		}
+	}
+	
+	jQuery.getJSON( 'getParamsByProgram.action',{ programId:programId }
+		,function( json ) 
+		{
+			enable('programProperty');
+			var programstage = jQuery('#programStageId');
+			
+			for ( i in json.programStages ) 
+			{ 
+				var id = json.programStages[i].id;
+				var formularId = "[PS:" + id + "]";
+				var name = json.programStages[i].name;
+
+				programstage.append( "<option value='" + id + "' title='" + name + "'>" + name + "</option>" );
+			}
+			
+			if( json.programStages.length > 1 )
+			{
+				programstage.prepend( "<option value='' title='" + i18n_all + "'>" + i18n_all + "</option>" );
+			}
+			byId('programStageId').options[0].selected = true;
+			getPatientDataElements();
+			
+			clearListById( 'caseProperty' );
+			var type = jQuery('#programId option:selected').attr('programType');
+			if( type!='3')
+			{
+				var caseProperty = jQuery( '#caseProperty' );
+				for ( i in json.fixedAttributes )
+				{
+					var id = json.fixedAttributes[i].id;
+					var name = json.fixedAttributes[i].name;
+					
+					caseProperty.append( "<option value='" + id + "' title='" + name + "' suggested='" + json.fixedAttributes[i].suggested + "'>" + name + "</option>" );
+				}
+				
+				for ( i in json.patientAttributes )
+				{ 
+					var id = json.patientAttributes[i].id;
+					var name = json.patientAttributes[i].name;
+					var suggested = json.patientAttributes[i].suggested;
+					
+					caseProperty.append( "<option value='" + id + "' title='" + name + "' suggested='" + suggested + "'>" + name + "</option>" );	
+				}
+			}
+		});
 }
 
-function getProgramStages() {
-  var programId = getFieldValue('orgunitProgramId');
-  if( programId == '' ) return;
-
-  clearListById('orgunitProgramStageId');
-
-  jQuery.getJSON('getProgramStages.action', { id: programId }
-    , function( json ) {
-      enable('programProperty');
-      var programstage = jQuery('#orgunitProgramStageId');
-
-      for( i in json.programStages ) {
-        var id = json.programStages[i].id;
-        var formularId = "[PSIC:" + id + "]";
-        var name = json.programStages[i].name;
-
-        programstage.append("<option value='" + formularId + "' title='" + name + "'>" + name + "</option>");
-      }
-    });
+function getProgramStages()
+{
+	var programId = getFieldValue( 'orgunitProgramId' );
+	if(programId=='') return;
+	
+	clearListById( 'orgunitProgramStageId' );
+	
+	jQuery.getJSON( 'getProgramStages.action',{ id:programId }
+		,function( json ) 
+		{
+			enable('programProperty');
+			var programstage = jQuery('#orgunitProgramStageId');
+			
+			for ( i in json.programStages ) 
+			{ 
+				var id = json.programStages[i].id;
+				var formularId = "[PSIC:" + id + "]";
+				var name = json.programStages[i].name;
+
+				programstage.append( "<option value='" + formularId + "' title='" + name + "'>" + name + "</option>" );
+			}
+		});
 }
 
 //------------------------------------------------------------------------------
 // Get DataElements of Program-Stage
 //------------------------------------------------------------------------------
 
-function getPatientDataElements() {
-  clearListById('dataElements');
-  clearListById('dataElementBackups');
-  clearListById('deSumId');
-  var programStageId = getFieldValue('programStageId');
-
-  jQuery.getJSON('getPatientDataElements.action',
-    {
-      programId: getFieldValue('programId'),
-      programStageId: programStageId
-    }
-    , function( json ) {
-      if( programStageId != '' ) {
-        enable('programStageProperty');
-      }
-      else {
-        disable('programStageProperty');
-      }
-
-      var dataElements = jQuery('#dataElements');
-      var dataElementBackups = jQuery('#dataElementBackups');
-      clearListById('dataElements');
-      clearListById('dataElementBackups');
-      var deSumId = jQuery('#deSumId');
-      deSumId.append("<option value='' >" + i18n_please_select + "</option>");
-      for( i in json.dataElements ) {
-        dataElements.append("<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' dename='" + json.dataElements[i].name + "' decode='" + json.dataElements[i].code + "' suggested='" + json.dataElements[i].optionset + "' valuetype='" + json.dataElements[i].type + "'>" + json.dataElements[i].name + "</option>");
-        dataElementBackups.append("<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' dename='" + json.dataElements[i].name + "' decode='" + json.dataElements[i].code + "' suggested='" + json.dataElements[i].optionset + "' valuetype='" + json.dataElements[i].type + "'>" + json.dataElements[i].name + "</option>");
-        if( json.dataElements[i].type == 'int' ) {
-          deSumId.append("<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' suggested='" + json.dataElements[i].optionset + "' valuetype='" + json.dataElements[i].type + "'>" + json.dataElements[i].name + "</option>");
-        }
-      }
-
-    });
+function getPatientDataElements()
+{
+	clearListById( 'dataElements' );
+	clearListById( 'dataElementBackups' );
+	clearListById( 'deSumId' );
+	var programStageId = getFieldValue('programStageId');
+	
+	jQuery.getJSON( 'getPatientDataElements.action',
+		{ 
+			programId:getFieldValue( 'programId' ),
+			programStageId:programStageId
+		}
+		,function( json )
+		{
+			if( programStageId!='' ){
+				enable('programStageProperty');
+			}
+			else{
+				disable('programStageProperty');
+			}
+			
+			var dataElements = jQuery('#dataElements');
+			var dataElementBackups = jQuery('#dataElementBackups');
+			clearListById( 'dataElements' );
+			clearListById( 'dataElementBackups' );
+			var deSumId = jQuery('#deSumId');
+			deSumId.append( "<option value='' >" + i18n_please_select + "</option>" );
+			for ( i in json.dataElements )
+			{ 
+				dataElements.append( "<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' dename='" + json.dataElements[i].name + "' decode='" + json.dataElements[i].code + "' suggested='" + json.dataElements[i].optionset + "' valuetype='" + json.dataElements[i].type + "'>" + json.dataElements[i].name + "</option>" );
+				dataElementBackups.append( "<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' dename='" + json.dataElements[i].name + "' decode='" + json.dataElements[i].code + "' suggested='" + json.dataElements[i].optionset + "' valuetype='" + json.dataElements[i].type + "'>" + json.dataElements[i].name + "</option>" );
+				if( json.dataElements[i].type=='int')
+				{
+					deSumId.append( "<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' suggested='" + json.dataElements[i].optionset + "' valuetype='" + json.dataElements[i].type + "'>" + json.dataElements[i].name + "</option>" );
+				}
+			}
+			
+		});
 }
 
 //-----------------------------------------------------------------
 // Insert items into Condition
 //-----------------------------------------------------------------
 
-function insertDataElement( element ) {
-  var progamId = getFieldValue('programId');
-  var programStageId = getFieldValue('programStageId');
-  programStageId = ( programStageId == "" ) ? "*" : programStageId;
-  var dataElementId = element.options[element.selectedIndex].value;
-
-  insertTextCommon('aggregationCondition', "[DE:" + progamId + "." + programStageId + "." + dataElementId + "]");
-  getConditionDescription();
-}
-
-function insertInfo( element, isProgramStageProperty ) {
-  var id = "";
-  if( isProgramStageProperty ) {
-    id = getFieldValue('programStageId');
-  }
-  else {
-    id = getFieldValue('programId');
-  }
-
-  value = element.options[element.selectedIndex].value.replace('*', id);
-  insertTextCommon('aggregationCondition', value);
-  getConditionDescription();
-}
-
-function insertOperator( value ) {
-  insertTextCommon('aggregationCondition', ' ' + value + ' ');
-  getConditionDescription();
-}
-
-function insertBoolValue( value ) {
-  insertTextCommon("aggregationCondition", " ='" + value + "' ");
-  getConditionDescription();
+function insertDataElement( element )
+{
+	var progamId = getFieldValue('programId');
+	var programStageId = getFieldValue('programStageId');
+	programStageId = ( programStageId == "" ) ? "*" : programStageId;
+	var dataElementId = element.options[element.selectedIndex].value;
+	
+	insertTextCommon( 'aggregationCondition', "[DE:" + progamId + "." + programStageId + "." + dataElementId + "]" );
+	getConditionDescription();
+}
+
+function insertInfo( element, isProgramStageProperty )
+{
+	var id = "";
+	if( isProgramStageProperty )
+	{
+		id = getFieldValue('programStageId');
+	}
+	else
+	{
+		id = getFieldValue('programId');
+	}
+	
+	value = element.options[element.selectedIndex].value.replace( '*', id );
+	insertTextCommon('aggregationCondition', value );
+	getConditionDescription();
+}
+
+function insertOperator( value )
+{
+	insertTextCommon('aggregationCondition', ' ' + value + ' ' );
+	getConditionDescription();
+}
+
+function insertBoolValue( value )
+{
+	insertTextCommon("aggregationCondition", " ='" + value + "' " );
+	getConditionDescription();
 }
 
 // -----------------------------------------------------------------------------
 // Remove Case Aggregation Condition
 // -----------------------------------------------------------------------------
 
-function removeCaseAggregation( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removeCaseAggregation.action');
-}
-
-// -----------------------------------------------------------------------------
-// View details
-// -----------------------------------------------------------------------------
-
-function showUpdateCaseAggregationForm( context ) {
-  location.href = 'showUpdateCaseAggregationForm.action?id=' + context.id;
-}
-
-function showCaseAggregationDetails( context ) {
-  jQuery.getJSON('getCaseAggregation.action', { id: context.id }, function( json ) {
-    setInnerHTML('nameField', json.caseAggregation.name);
-    setInnerHTML('operatorField', json.caseAggregation.operator);
-    setInnerHTML('aggregationDataElementField', json.caseAggregation.aggregationDataElement);
-    setInnerHTML('optionComboField', json.caseAggregation.optionCombo);
-    setInnerHTML('aggregationExpressionField', json.caseAggregation.aggregationExpression);
-    setInnerHTML('deSumField', json.caseAggregation.deSum);
-    showDetails();
-  });
-}
-
-// -----------------------------------------------------------------------------
-// View details
-// -----------------------------------------------------------------------------
-
-function getConditionDescription() {
-  $.postUTF8('getCaseAggregationDescription.action',
-    {
-      condition: getFieldValue('aggregationCondition')
-    }, function( data ) {
-      byId('aggregationDescription').innerHTML = data;
-    }, 'html');
+function removeCaseAggregation( caseAggregationId, caseAggregationName )
+{
+	removeItem( caseAggregationId, caseAggregationName, i18n_confirm_delete, 'removeCaseAggregation.action' );
+}
+
+// -----------------------------------------------------------------------------
+// View details
+// -----------------------------------------------------------------------------
+
+function showCaseAggregationDetails( caseAggregationId )
+{
+    jQuery.getJSON( 'getCaseAggregation.action', { id:caseAggregationId }, function ( json )
+	{
+		setInnerHTML( 'nameField', json.caseAggregation.name );	
+		setInnerHTML( 'operatorField', json.caseAggregation.operator );
+		setInnerHTML( 'aggregationDataElementField', json.caseAggregation.aggregationDataElement );
+		setInnerHTML( 'optionComboField', json.caseAggregation.optionCombo );	
+		setInnerHTML( 'aggregationExpressionField', json.caseAggregation.aggregationExpression );
+		setInnerHTML( 'deSumField', json.caseAggregation.deSum );
+		showDetails();
+	});
+}
+
+// -----------------------------------------------------------------------------
+// View details
+// -----------------------------------------------------------------------------
+
+function getConditionDescription()
+{
+	$.postUTF8( 'getCaseAggregationDescription.action', 
+		{ 
+			condition:getFieldValue('aggregationCondition') 
+		},function (data)
+		{
+			byId('aggregationDescription').innerHTML = data;
+		},'html');
 }
 
 // -----------------------------------------------------------------------------
 // Test condition
 // -----------------------------------------------------------------------------
 
-function testCaseAggregationCondition() {
-  var operator = jQuery('[name=operator]:checked').val();
-  $.postUTF8('testCaseAggregationCondition.action',
-    {
-      condition: getFieldValue('aggregationCondition'),
-      deSumId: getFieldValue('deSumId'),
-      operator: operator
-    }, function( json ) {
-      var type = json.response;
-
-      if( type == "input" ) {
-        showWarningMessage(i18n_run_fail);
-      }
-      else {
-        showSuccessMessage(i18n_run_success);
-      }
-    });
-}
-
-function getSuggestedValues( sourceId, targetId ) {
-  clearListById(targetId);
-
-  var suggestedValues = jQuery('select[id=' + sourceId + '] option:selected').attr('suggested');
-  if( suggestedValues ) {
-    var arrValues = new Array();
-    arrValues = suggestedValues.replace(/[//[]+/g, '').replace(/]/g, '').split(', ');
-
-    var suggestedValueSelector = byId(targetId);
-    for( var i = 0; i < arrValues.length; i++ ) {
-      var option = document.createElement("option");
-      var value = jQuery.trim(arrValues[i]);
-      option.value = "'" + value + "'";
-      option.text = value;
-      option.title = value;
-
-      suggestedValueSelector.add(option, null);
-    }
-  }
-}
-
-function insertSingleValue( elementId ) {
-  var element = byId(elementId);
-  insertTextCommon('aggregationCondition', "=" + element.options[element.selectedIndex].value);
-  getConditionDescription();
-}
-
-function insertMultiValues( elementId ) {
-  var list = jQuery('select[id=' + elementId + '] option:selected')
-  if( list.length == 0 ) {
-    return;
-  }
-  if( list.length > 1 ) {
-    var selectedValues = "";
-    list.each(function() {
-      selectedValues += jQuery(this).val() + ", ";
-    });
-    selectedValues = " IN @ " + selectedValues.substring(0, selectedValues.length - 2) + " #";
-
-    insertTextCommon('aggregationCondition', selectedValues);
-    getConditionDescription();
-  }
-  else {
-    insertSingleValue(elementId);
-  }
-}
-
-function getCaseAggConditionByDataset() {
-  $.get('getCaseAggConditionByDataset.action',
-    {
-      dataSetId: getFieldValue('dataSetId')
-    }
-    , function( html ) {
-      setTableStyles();
-      setInnerHTML('list', html);
-    });
-}
-
-function showAddCaseAggregationForm() {
-  window.location.href = 'showAddCaseAggregationForm.action?dataSetId=' + getFieldValue('dataSetId');
-}
-
-function operatorOnchange( operator ) {
-  if( operator == 'sum' || operator == 'avg'
-    || operator == 'min' || operator == 'max' ) {
-    enable('deSumId');
-  }
-  else {
-    disable('deSumId');
-  }
-}
-
-function filterDataElement( event, value, fieldName, backupFieldsName ) {
-  // Remove all options in data element fields
-  var field = jQuery('#' + fieldName + " option ").remove();
-  var valueType = getFieldValue('deValueType');
-
-  jQuery('#' + backupFieldsName + " option ").each(function() {
-    var option = jQuery(this);
-    if( valueType == '' || valueType == option.attr('valueType') ) {
-      if( value.length == 0 ) {
-        jQuery('#' + fieldName).append("<option value='" + option.attr('value') + "' title='" + option.text() + "' suggested='" + option.attr('optionset') + "' valueType='" + option.attr('valueType') + "'>" + option.text() + "</option>");
-      }
-      else if( option.text().toLowerCase().indexOf(value.toLowerCase()) != -1 ) {
-        jQuery('#' + fieldName).append("<option value='" + option.attr('value') + "' title='" + option.text() + "' suggested='" + option.attr('optionset') + "' valueType='" + option.attr('valueType') + "'>" + option.text() + "</option>");
-      }
-    }
-  });
-
-}
-
-function sortByOnChange( sortBy ) {
-  if( sortBy == 1 ) {
-    jQuery('#dataElements').each(function() {
-
-      // Keep track of the selected option.
-      var selectedValue = $(this).val();
-
-      // sort it out
-      $(this).html($("option", $(this)).sort(function( a, b ) {
-        return $(a).attr('dename') == $(b).attr('dename') ? 0 : $(a).attr('dename') < $(b).attr('dename') ? -1 : 1
-      }));
-
-      // Select one option.
-      $(this).val(selectedValue);
-
-    });
-  }
-  else {
-    jQuery('#dataElements').each(function() {
-
-      // Keep track of the selected option.
-      var selectedValue = $(this).val();
-
-      // sort it out
-      $(this).html($("option", $(this)).sort(function( a, b ) {
-        return $(a).attr('decode') == $(b).attr('decode') ? 0 : $(a).attr('decode') < $(b).attr('decode') ? -1 : 1
-      }));
-
-      // Select one option.
-      $(this).val(selectedValue);
-
-    });
-  }
-}
-
-function displayNameOnChange( displayName ) {
-  // display - name
-  if( displayName == '1' ) {
-    jQuery('#dataElements option').each(function() {
-      var item = jQuery(this);
-      item[0].text = item.attr('dename');
-      item[0].title = item[0].text;
-    });
-    jQuery('#dataElementBackups option').each(function() {
-      var item = jQuery(this);
-      item[0].text = item.attr('dename');
-    });
-  }
-  // display - code
-  else if( displayName == '2' ) {
-    jQuery('#dataElements option').each(function() {
-      var item = jQuery(this);
-      item[0].text = item.attr('decode');
-      item[0].title = item[0].text;
-    });
-    jQuery('#dataElementBackups option').each(function() {
-      var item = jQuery(this);
-      item[0].text = item.attr('decode');
-    });
-  }
-  // display - code and name
-  else {
-    jQuery('#dataElements option').each(function() {
-      var item = jQuery(this);
-      item[0].text = "(" + item.attr('decode') + ") " + item.attr('dename');
-      item[0].title = item[0].text;
-    });
-    jQuery('#dataElementBackups option').each(function() {
-      var item = jQuery(this);
-      item[0].text = "(" + item.attr('decode') + ") " + item.attr('dename');
-    });
-  }
-}
-
-function cancelOnClick() {
-  var dataSetId = getFieldValue("dataSets");
-  window.location.href = 'caseAggregation.action?dataSetId=' + dataSetId;
+function testCaseAggregationCondition()
+{
+	var operator = jQuery('[name=operator]:checked').val();
+	$.postUTF8( 'testCaseAggregationCondition.action', 
+		{ 
+			condition: getFieldValue('aggregationCondition'),
+			deSumId: getFieldValue('deSumId'),
+			operator: operator
+		},function (json)
+		{
+			var type = json.response;
+			
+			if ( type == "input" )
+			{
+				showWarningMessage( i18n_run_fail );
+			}
+			else
+			{
+				showSuccessMessage( i18n_run_success );
+			}
+		});
+}
+
+function getSuggestedValues( sourceId, targetId )
+{
+	clearListById( targetId );
+	
+	var suggestedValues = jQuery('select[id=' + sourceId + '] option:selected').attr('suggested');	
+	if( suggestedValues )
+	{
+		var arrValues = new Array();
+		arrValues = suggestedValues.replace(/[//[]+/g,'').replace(/]/g, '').split(', ');
+
+		var suggestedValueSelector = byId( targetId );
+		for( var i=0; i< arrValues.length; i++ )
+		{
+			var option = document.createElement("option");
+			var value = jQuery.trim( arrValues[i] );
+			option.value = "'" + value + "'";
+			option.text = value;
+			option.title = value;
+
+			suggestedValueSelector.add(option, null); 
+		}
+	}
+}
+
+function insertSingleValue( elementId )
+{
+	var element = byId( elementId );
+	insertTextCommon('aggregationCondition', "=" + element.options[element.selectedIndex].value );
+	getConditionDescription();
+}
+
+function insertMultiValues( elementId )
+{
+	var list = jQuery('select[id=' + elementId + '] option:selected')
+	if( list.length == 0 )
+	{
+		return;
+	}
+	if( list.length > 1 )
+	{
+		var selectedValues = "";
+		list.each(function(){
+			selectedValues += jQuery(this).val() + ", ";
+		});
+		selectedValues = " IN @ " + selectedValues.substring( 0, selectedValues.length - 2) + " #";
+		
+		insertTextCommon('aggregationCondition', selectedValues );
+		getConditionDescription();
+	}
+	else
+	{
+		insertSingleValue( elementId );
+	}
+}
+
+function getCaseAggConditionByDataset()
+{
+	$.get( 'getCaseAggConditionByDataset.action',
+		{
+			dataSetId: getFieldValue( 'dataSetId' )
+		}
+		, function( html ) 
+		{
+			setTableStyles();
+			setInnerHTML('list', html );
+		} );
+}
+
+function showAddCaseAggregationForm()
+{
+	window.location.href='showAddCaseAggregationForm.action?dataSetId=' + getFieldValue( 'dataSetId' );
+}
+
+function operatorOnchange(operator)
+{
+	if( operator=='sum' || operator=='avg' 
+		|| operator=='min' || operator=='max' ){
+		enable('deSumId');
+	}
+	else{
+		disable('deSumId');
+	}
+}
+
+function filterDataElement( event, value, fieldName, backupFieldsName )
+{
+	// Remove all options in data element fields
+	var field = jQuery('#' + fieldName + " option " ).remove();
+	var valueType = getFieldValue('deValueType');
+			
+	jQuery('#' + backupFieldsName + " option ").each( function(){
+		var option = jQuery(this);
+		if (valueType=='' || valueType == option.attr('valueType') )
+		{
+			if(value.length == 0 )
+			{
+				jQuery('#' + fieldName ).append( "<option value='" + option.attr('value') + "' title='" + option.text() + "' suggested='" + option.attr('optionset') + "' valueType='" + option.attr('valueType') + "'>" + option.text() + "</option>" );				
+			}
+			else if (option.text().toLowerCase().indexOf( value.toLowerCase() ) != -1 )
+			{
+				jQuery('#' + fieldName ).append( "<option value='" + option.attr('value') + "' title='" + option.text() + "' suggested='" + option.attr('optionset') + "' valueType='" + option.attr('valueType') + "'>" + option.text() + "</option>" );				
+			}
+		}
+	});
+		    
+}
+
+function sortByOnChange( sortBy )
+{
+	if( sortBy == 1)
+	{
+		jQuery('#dataElements').each(function() {
+
+			// Keep track of the selected option.
+			var selectedValue = $(this).val();
+
+			// sort it out
+			$(this).html($("option", $(this)).sort(function(a, b) { 
+				return $(a).attr('dename') == $(b).attr('dename') ? 0 : $(a).attr('dename') < $(b).attr('dename') ? -1 : 1 
+			}));
+
+			// Select one option.
+			$(this).val(selectedValue);
+
+		});
+	}
+	else
+	{
+		jQuery('#dataElements').each(function() {
+
+			// Keep track of the selected option.
+			var selectedValue = $(this).val();
+
+			// sort it out
+			$(this).html($("option", $(this)).sort(function(a, b) { 
+				return $(a).attr('decode') == $(b).attr('decode') ? 0 : $(a).attr('decode') < $(b).attr('decode') ? -1 : 1 
+			}));
+
+			// Select one option.
+			$(this).val(selectedValue);
+
+		});
+	} 
+}
+
+function displayNameOnChange( displayName )
+{
+	// display - name
+	if(displayName=='1'){
+		jQuery('#dataElements option').each(function(){
+			var item = jQuery(this);
+			item[0].text = item.attr('dename');
+			item[0].title = item[0].text;
+		});
+		jQuery('#dataElementBackups option').each(function(){
+			var item = jQuery(this);
+			item[0].text = item.attr('dename');
+		});
+	}
+	// display - code
+	else if(displayName=='2'){
+		jQuery('#dataElements option').each(function(){
+			var item = jQuery(this);
+			item[0].text = item.attr('decode');
+			item[0].title = item[0].text;
+		});
+		jQuery('#dataElementBackups option').each(function(){
+			var item = jQuery(this);
+			item[0].text = item.attr('decode');
+		});
+	}
+	// display - code and name
+	else{
+		jQuery('#dataElements option').each(function(){
+			var item = jQuery(this);
+			item[0].text = "(" + item.attr('decode') + ") " + item.attr('dename');
+			item[0].title = item[0].text;
+		});
+		jQuery('#dataElementBackups option').each(function(){
+			var item = jQuery(this);
+			item[0].text = "(" + item.attr('decode') + ") " + item.attr('dename');
+		});
+	}
+}
+
+function cancelOnClick()
+{
+	var dataSetId = getFieldValue("dataSets"); 
+	window.location.href='caseAggregation.action?dataSetId=' + dataSetId;
 }

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttribute.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttribute.js	2013-12-05 11:31:19 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttribute.js	2013-12-16 04:39:49 +0000
@@ -1,21 +1,10 @@
-
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showUpdatePatientAttributeForm( context ) {
-  location.href = 'showUpdatePatientAttributeForm.action?id=' + context.id;
-}
-
-function showPatientAttributeDetails( context ) {
-	jQuery.getJSON( 'getPatientAttribute.action', { id: context.id },
+function showPatientAttributeDetails( patientAttributeId )
+{
+	jQuery.getJSON( 'getPatientAttribute.action', { id: patientAttributeId },
 		function ( json ) {
 			setInnerHTML( 'nameField', json.patientAttribute.name );	
 			setInnerHTML( 'descriptionField', json.patientAttribute.description );
@@ -48,9 +37,9 @@
 // Remove Patient Attribute
 // -----------------------------------------------------------------------------
 
-function removePatientAttribute( context )
+function removePatientAttribute( patientAttributeId, name )
 {
-	removeItem( context.id, context.name, i18n_confirm_delete, 'removePatientAttribute.action' );
+	removeItem( patientAttributeId, name, i18n_confirm_delete, 'removePatientAttribute.action' );	
 }
 
 ATTRIBUTE_OPTION = 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttributeGroup.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttributeGroup.js	2013-12-05 11:31:19 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientAttributeGroup.js	2013-12-16 04:39:49 +0000
@@ -1,33 +1,24 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showUpdatePatientAttributeGroupForm( context ) {
-  location.href = 'showUpdatePatientAttributeGroupForm.action?id=' + context.id;
-}
-
-function showPatientAttributeGroupDetails( context ) {
-  jQuery.getJSON('getPatientAttributeGroup.action', { id: context.id },
-    function( json ) {
-      setInnerHTML('nameField', json.patientAttributeGroup.name);
-      setInnerHTML('descriptionField', json.patientAttributeGroup.description);
-      setInnerHTML('noAttributeField', json.patientAttributeGroup.noAttribute);
-
-      showDetails();
-    });
+function showPatientAttributeGroupDetails( patientAttributeGroupId )
+{
+	jQuery.getJSON( 'getPatientAttributeGroup.action', { id: patientAttributeGroupId },
+		function ( json ) {
+			setInnerHTML( 'nameField', json.patientAttributeGroup.name );	
+			setInnerHTML( 'descriptionField', json.patientAttributeGroup.description );
+			setInnerHTML( 'noAttributeField', json.patientAttributeGroup.noAttribute );
+
+			showDetails();
+	});
 }
 
 // -----------------------------------------------------------------------------
 // Remove Patient Attribute
 // -----------------------------------------------------------------------------
 
-function removePatientAttributeGroup( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removePatientAttributeGroup.action');
-}
+function removePatientAttributeGroup( patientAttributeGroupId, name )
+{
+    removeItem( patientAttributeGroupId, name, i18n_confirm_delete, 'removePatientAttributeGroup.action' );
+}
\ No newline at end of file

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientIdentifierType.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientIdentifierType.js	2013-12-05 12:21:59 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/patientIdentifierType.js	2013-12-16 04:39:49 +0000
@@ -1,54 +1,48 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showUpdatePatientIdentifierTypeForm( context ) {
-  location.href = 'showUpdatePatientIdentifierTypeForm.action?id=' + context.id;
-}
-
-function showPatientIdentifierTypeDetails( context ) {
-  jQuery.getJSON('getPatientIdentifierType.action', { id: context.id },
-    function( json ) {
-      setInnerHTML('nameField', json.patientIdentifierType.name);
-      setInnerHTML('descriptionField', json.patientIdentifierType.description);
-
-      var boolValueMap = { 'true': i18n_yes, 'false': i18n_no };
-      var boolType = json.patientIdentifierType.mandatory;
-      setInnerHTML('mandatoryField', boolValueMap[boolType]);
-
-      boolType = json.patientIdentifierType.related;
-      setInnerHTML('relatedField', boolValueMap[boolType]);
-      setInnerHTML('noCharsField', json.patientIdentifierType.noChars);
-
-      var valueTypeMap = { 'string': i18n_string, 'number': i18n_number, 'letter': i18n_letter_only, 'orgunitCount': i18n_orgunit_count };
-      var valueType = json.patientIdentifierType.type;
-      setInnerHTML('typeField', valueTypeMap[valueType]);
-
-      showDetails();
-    });
+function showPatientIdentifierTypeDetails( patientIdentifierTypeId )
+{
+	jQuery.getJSON( 'getPatientIdentifierType.action', { id: patientIdentifierTypeId },
+		function ( json ) {
+			setInnerHTML( 'nameField', json.patientIdentifierType.name );	
+			setInnerHTML( 'descriptionField', json.patientIdentifierType.description );
+			
+			var boolValueMap = { 'true':i18n_yes, 'false':i18n_no };
+			var boolType = json.patientIdentifierType.mandatory;
+			setInnerHTML( 'mandatoryField', boolValueMap[boolType] );
+			
+			boolType = json.patientIdentifierType.related;
+			setInnerHTML( 'relatedField', boolValueMap[boolType] );
+			setInnerHTML( 'noCharsField', json.patientIdentifierType.noChars );
+			
+			var valueTypeMap = { 'string':i18n_string, 'number':i18n_number, 'letter':i18n_letter_only, 'orgunitCount': i18n_orgunit_count };
+			var valueType = json.patientIdentifierType.type;
+			setInnerHTML( 'typeField', valueTypeMap[valueType] );
+			
+			showDetails();
+	});
 }
 
 // -----------------------------------------------------------------------------
 // Remove Patient Identifier Type
 // -----------------------------------------------------------------------------
 
-function removePatientIdentifierType( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removePatientIdentifierType.action');
+function removePatientIdentifierType( patientIdentifierTypeId, name )
+{
+    removeItem( patientIdentifierTypeId, name, i18n_confirm_delete, 'removePatientIdentifierType.action' );
 }
 
-function typeOnChange() {
-  var type = getFieldValue('type');
-  if( type == 'localId' ) {
-    jQuery('[name=localIdField]').show();
-  }
-  else {
-    jQuery('[name=localIdField]').hide();
-  }
-}
+function typeOnChange()
+{
+	var type = getFieldValue('type');
+	if(type=='localId')
+	{
+		jQuery('[name=localIdField]').show();
+	}
+	else
+	{
+		jQuery('[name=localIdField]').hide();
+	}
+}
\ No newline at end of file

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/program.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/program.js	2013-12-06 08:54:56 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/program.js	2013-12-16 04:39:49 +0000
@@ -1,454 +1,456 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function programIndicatorManagementForm( context ) {
-  location.href = 'programIndicator.action?programId=' + context.id;
-}
-
-function showProgramUserRoleForm( context ) {
-  location.href = 'showProgramUserroleForm.action?id=' + context.id;
-}
-
-function showUpdateProgramForm( context ) {
-  location.href = 'showUpdateProgramForm.action?id=' + context.id;
-}
-
-function programStageManagement( context ) {
-  location.href = 'programStage.action?id=' + context.id;
-}
-
-function programValidationManagement( context ) {
-  location.href = 'programValidation.action?programId=' + context.id;
-}
-
-function defineProgramAssociationsForm( context ) {
-  location.href = 'defineProgramAssociationsForm.action?id=' + context.id;
-}
-
-function showProgramDetails( context ) {
-  jQuery.getJSON("getProgram.action", {
-    id: context.id
-  }, function( json ) {
-    setInnerHTML('nameField', json.program.name);
-    setInnerHTML('descriptionField', json.program.description);
-
-    var type = i18n_multiple_events_with_registration;
-    if( json.program.type == "2" )
-      type = i18n_single_event_with_registration;
-    else if( json.program.type == "3" )
-      type = i18n_single_event_without_registration;
-    setInnerHTML('typeField', type);
-
-    var displayIncidentDate = ( json.program.displayIncidentDate == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('displayIncidentDateField', displayIncidentDate);
-
-    var ignoreOverdueEvents = ( json.program.ignoreOverdueEvents == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('ignoreOverdueEventsField', ignoreOverdueEvents);
-
-    var onlyEnrollOnce = ( json.program.onlyEnrollOnce == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('onlyEnrollOnceField', onlyEnrollOnce);
-
-    var displayOnAllOrgunit = ( json.program.displayOnAllOrgunit == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('displayOnAllOrgunitField', displayOnAllOrgunit);
-
-    var useBirthDateAsIncidentDate = ( json.program.useBirthDateAsIncidentDate == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('useBirthDateAsIncidentDateField', useBirthDateAsIncidentDate);
-
-    var useBirthDateAsEnrollmentDate = ( json.program.useBirthDateAsEnrollmentDate == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('useBirthDateAsEnrollmentDateField', useBirthDateAsEnrollmentDate);
-
-    var selectEnrollmentDatesInFuture = ( json.program.selectEnrollmentDatesInFuture == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('selectEnrollmentDatesInFutureField', selectEnrollmentDatesInFuture);
-
-    var selectIncidentDatesInFuture = ( json.program.selectIncidentDatesInFuture == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('selectIncidentDatesInFutureField', selectIncidentDatesInFuture);
-
-    var dataEntryMethod = ( json.program.dataEntryMethod == 'true') ? i18n_yes : i18n_no;
-    setInnerHTML('dataEntryMethodField', dataEntryMethod);
-
-    setInnerHTML('dateOfEnrollmentDescriptionField', json.program.dateOfEnrollmentDescription);
-    setInnerHTML('dateOfIncidentDescriptionField', json.program.dateOfIncidentDescription);
-    setInnerHTML('programStageCountField', json.program.programStageCount);
-    setInnerHTML('noAttributesField', json.program.noAttributes);
-    setInnerHTML('noIdentifierTypesField', json.program.noIdentifierTypes);
-
-    showDetails();
-  });
+function showProgramDetails( programId )
+{
+	jQuery.getJSON( "getProgram.action", {
+		id:programId
+	}, function(json){
+		setInnerHTML( 'nameField', json.program.name );
+		setInnerHTML( 'descriptionField', json.program.description );
+		
+		var type = i18n_multiple_events_with_registration;
+		if( json.program.type == "2" )
+			type = i18n_single_event_with_registration;
+		else if( json.program.type == "3"  )
+			type = i18n_single_event_without_registration;
+		setInnerHTML( 'typeField', type ); 
+		
+		var displayIncidentDate = ( json.program.displayIncidentDate == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'displayIncidentDateField', displayIncidentDate );   	
+		
+		var ignoreOverdueEvents = ( json.program.ignoreOverdueEvents == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'ignoreOverdueEventsField', ignoreOverdueEvents );   	
+		
+		var onlyEnrollOnce = ( json.program.onlyEnrollOnce == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'onlyEnrollOnceField', onlyEnrollOnce );   	
+		
+		var displayOnAllOrgunit= ( json.program.displayOnAllOrgunit == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'displayOnAllOrgunitField', displayOnAllOrgunit );   	
+		
+		var useBirthDateAsIncidentDate = ( json.program.useBirthDateAsIncidentDate == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'useBirthDateAsIncidentDateField', useBirthDateAsIncidentDate );   	
+		
+		var useBirthDateAsEnrollmentDate = ( json.program.useBirthDateAsEnrollmentDate == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'useBirthDateAsEnrollmentDateField', useBirthDateAsEnrollmentDate );   	
+		
+		var selectEnrollmentDatesInFuture= ( json.program.selectEnrollmentDatesInFuture == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'selectEnrollmentDatesInFutureField', selectEnrollmentDatesInFuture );   	
+		
+		var selectIncidentDatesInFuture= ( json.program.selectIncidentDatesInFuture == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'selectIncidentDatesInFutureField', selectIncidentDatesInFuture );   	
+		
+		var dataEntryMethod= ( json.program.dataEntryMethod == 'true') ? i18n_yes : i18n_no;
+		setInnerHTML( 'dataEntryMethodField', dataEntryMethod );   	
+		
+		setInnerHTML( 'dateOfEnrollmentDescriptionField', json.program.dateOfEnrollmentDescription );   
+		setInnerHTML( 'dateOfIncidentDescriptionField', json.program.dateOfIncidentDescription );   		
+		setInnerHTML( 'programStageCountField',  json.program.programStageCount );
+		setInnerHTML( 'noAttributesField', json.program.noAttributes );
+		setInnerHTML( 'noIdentifierTypesField', json.program.noIdentifierTypes );
+		
+		showDetails();
+	});   
 }
 
 // -----------------------------------------------------------------------------
 // Remove Program
 // -----------------------------------------------------------------------------
 
-function removeProgram( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removeProgram.action');
-}
-
-function relationshipTypeOnchange() {
-  clearListById('relationshipSide');
-  var relationshipType = jQuery('#relationshipTypeId option:selected');
-  if( relationshipType.val() != "" ) {
-    var aIsToB = relationshipType.attr('aIsToB');
-    var bIsToA = relationshipType.attr('bIsToA');
-
-    var relationshipSide = jQuery("#relationshipFromA");
-    relationshipSide.append('<option value="false">' + aIsToB + '</option>');
-    relationshipSide.append('<option value="true">' + bIsToA + '</option>');
-  }
-}
-
-function programOnChange() {
-  var type = getFieldValue('type');
-
-  // anonymous
-  if( type == "3" ) {
-    disable('onlyEnrollOnce');
-    disable('dateOfEnrollmentDescription');
-    disable("displayIncidentDate");
-    disable("dateOfIncidentDescription");
-    disable("generatedByEnrollmentDate");
-    disable("availablePropertyIds");
-    disable('ignoreOverdueEvents');
-    hideById('selectedList');
-    hideById('programMessageTB');
-
-    jQuery("[name=displayed]").attr("disabled", true);
-    jQuery("[name=displayed]").removeAttr("checked");
-
-    jQuery("[name=nonAnonymous]").hide();
-  }
-  else {
-    enable('onlyEnrollOnce');
-    jQuery("[name=displayed]").prop("disabled", false);
-    enable("availablePropertyIds");
-    enable("generatedByEnrollmentDate");
-    enable('dateOfEnrollmentDescription');
-    enable("displayIncidentDate");
-    enable('ignoreOverdueEvents');
-    showById('programMessageTB');
-    showById("selectedList");
-
-    jQuery("[name=nonAnonymous]").show();
-    if( type == 2 ) {
-      disable('ignoreOverdueEvents');
-      disable('onlyEnrollOnce');
-      disable('generatedByEnrollmentDate');
-    }
-
-    if( byId('displayIncidentDate').checked ) {
-      enable("dateOfIncidentDescription");
-    }
-    else {
-      disable("dateOfIncidentDescription");
-    }
-  }
+function removeProgram( programId, name )
+{
+	removeItem( programId, name, i18n_confirm_delete, 'removeProgram.action' );
+}
+
+function relationshipTypeOnchange()
+{
+	clearListById( 'relationshipSide' );
+	var relationshipType = jQuery('#relationshipTypeId option:selected');
+	if( relationshipType.val() != "")
+	{
+		var aIsToB = relationshipType.attr('aIsToB');
+		var bIsToA = relationshipType.attr('bIsToA');
+		
+		var relationshipSide = jQuery("#relationshipFromA");
+		relationshipSide.append( '<option value="false">' + aIsToB + '</option>' );
+		relationshipSide.append( '<option value="true">' + bIsToA + '</option>' );
+	}
+}
+
+function programOnChange()
+{
+	var type = getFieldValue('type');
+	
+	// anonymous
+	if(type == "3")
+	{
+		disable('onlyEnrollOnce');
+		disable('dateOfEnrollmentDescription');
+		disable("displayIncidentDate");
+		disable("dateOfIncidentDescription");
+		disable("generatedByEnrollmentDate");
+		disable("availablePropertyIds");
+		disable('ignoreOverdueEvents');
+		hideById('selectedList');
+		hideById('programMessageTB');
+		
+		jQuery("[name=displayed]").attr("disabled", true);
+		jQuery("[name=displayed]").removeAttr("checked");
+		
+		jQuery("[name=nonAnonymous]").hide();
+	}
+	else{
+		enable('onlyEnrollOnce');
+		jQuery("[name=displayed]").prop("disabled", false);
+		enable("availablePropertyIds");
+		enable("generatedByEnrollmentDate");
+		enable('dateOfEnrollmentDescription');
+		enable("displayIncidentDate");
+		enable('ignoreOverdueEvents');
+		showById('programMessageTB');
+		showById("selectedList");
+		
+		jQuery("[name=nonAnonymous]").show();
+		if( type == 2 ){
+			disable('ignoreOverdueEvents');
+			disable('onlyEnrollOnce');
+			disable('generatedByEnrollmentDate');
+		}
+		
+		if(byId('displayIncidentDate').checked){
+			enable("dateOfIncidentDescription");
+		}
+		else {
+			disable("dateOfIncidentDescription");
+		}
+	}
 }
 
 // -----------------------------------------------------------------------------
 // select identifiers / attributes
 // -----------------------------------------------------------------------------
 
-function selectProperties() {
-  var selectedList = jQuery("#selectedList");
-  jQuery("#availablePropertyIds").children().each(function( i, item ) {
-    if( item.selected ) {
-      html = "<tr class='selected' id='" + item.value + "' ondblclick='unSelectProperties( this )'><td onmousedown='select(event,this)'>" + item.text + "</td>";
-      html += "<td align='center'><input type='checkbox' name='displayed' value='" + item.value + "'";
-      if( item.value.match("^attr_") == "attr_" ) {
-        html += " style='display:none' ";
-      }
-      html += "></td></tr>";
-      selectedList.append(html);
-      jQuery(item).remove();
-    }
-  });
-
-  if( getFieldValue('type') == "3" ) {
-    jQuery("[name=displayed]").attr("disabled", true);
-  }
-}
-
-function selectAllProperties() {
-  var selectedList = jQuery("#selectedList");
-  jQuery("#availablePropertyIds").children().each(function( i, item ) {
-    html = "<tr class='selected' id='" + item.value + "' ondblclick='unSelectDataElement( this )'><td onmousedown='select(this)'>" + item.text + "</td>";
-    html += "<td align='center'><input type='checkbox' name='displayed' value='" + item.value + "'";
-    if( item.value.match("^attr_") == "attr_" ) {
-      html += " style='display:none' ";
-    }
-    html += "'></td></tr>";
-    selectedList.append(html);
-    jQuery(item).remove();
-  });
-}
-
-function unSelectProperties() {
-  var availableList = jQuery("#availablePropertyIds");
-  jQuery("#selectedList").find("tr").each(function( i, item ) {
-    item = jQuery(item);
-    if( item.hasClass("selected") ) {
-      availableList.append("<option value='" + item.attr("id") + "' selected='true'>" + item.find("td:first").text() + "</option>");
-      item.remove();
-    }
-  });
-}
-
-function unSelectAllProperties() {
-  var availableList = jQuery("#availablePropertyIds");
-  jQuery("#selectedList").find("tr").each(function( i, item ) {
-    item = jQuery(item);
-    availableList.append("<option value='" + item.attr("id") + "' selected='true'>" + item.find("td:first").text() + "</option>");
-    item.remove();
-  });
-}
-
-function select( event, element ) {
-  if( !getKeyCode(event) )// Ctrl
-  {
-    jQuery("#selectedList .selected").removeClass('selected');
-  }
-
-  element = jQuery(element).parent();
-  if( element.hasClass('selected') ) element.removeClass('selected');
-  else element.addClass('selected');
-}
-
-function getKeyCode( e ) {
-  var ctrlPressed = 0;
-
-  if( parseInt(navigator.appVersion) > 3 ) {
-
-    var evt = e ? e : window.event;
-
-    if( document.layers && navigator.appName == "Netscape"
-      && parseInt(navigator.appVersion) == 4 ) {
-      // NETSCAPE 4 CODE
-      var mString = (e.modifiers + 32).toString(2).substring(3, 6);
-      ctrlPressed = (mString.charAt(1) == "1");
-    }
-    else {
-      // NEWER BROWSERS [CROSS-PLATFORM]
-      ctrlPressed = evt.ctrlKey;
-    }
-  }
-  return ctrlPressed;
+function selectProperties()
+{
+	var selectedList = jQuery("#selectedList");
+	jQuery("#availablePropertyIds").children().each(function(i, item){
+		if( item.selected ){
+			html = "<tr class='selected' id='" + item.value + "' ondblclick='unSelectProperties( this )'><td onmousedown='select(event,this)'>" + item.text + "</td>";
+			html += "<td align='center'><input type='checkbox' name='displayed' value='" + item.value + "'";
+			if( item.value.match("^attr_")=="attr_" )
+			{
+				html += " style='display:none' ";
+			}
+			html += "></td></tr>";
+			selectedList.append( html );
+			jQuery( item ).remove();
+		}
+	});
+	
+	if(getFieldValue('type') == "3")
+	{
+		jQuery("[name=displayed]").attr("disabled", true);
+	}
+}
+
+function selectAllProperties()
+{
+	var selectedList = jQuery("#selectedList");
+	jQuery("#availablePropertyIds").children().each(function(i, item){
+		html = "<tr class='selected' id='" + item.value + "' ondblclick='unSelectDataElement( this )'><td onmousedown='select(this)'>" + item.text + "</td>";
+		html += "<td align='center'><input type='checkbox' name='displayed' value='" + item.value + "'";
+		if( item.value.match("^attr_")=="attr_" )
+		{
+			html += " style='display:none' ";
+		}
+		html += "'></td></tr>";
+		selectedList.append( html );
+		jQuery( item ).remove();
+	});
+}
+
+function unSelectProperties()
+{
+	var availableList = jQuery("#availablePropertyIds");
+	jQuery("#selectedList").find("tr").each( function( i, item ){
+		item = jQuery(item);
+		if( item.hasClass("selected") )
+		{		
+			availableList.append( "<option value='" + item.attr( "id" ) + "' selected='true'>" + item.find("td:first").text() + "</option>" );
+			item.remove();
+		}
+	});
+}
+
+function unSelectAllProperties()
+{
+	var availableList = jQuery("#availablePropertyIds");
+	jQuery("#selectedList").find("tr").each( function( i, item ){
+		item = jQuery(item);
+		availableList.append( "<option value='" + item.attr( "id" ) + "' selected='true'>" + item.find("td:first").text() + "</option>" );
+		item.remove();
+	});
+}
+
+function select( event, element )
+{
+	if ( !getKeyCode( event ) )// Ctrl
+	{
+		jQuery("#selectedList .selected").removeClass( 'selected' );
+	}
+	
+	element = jQuery( element ).parent();
+	if( element.hasClass( 'selected') ) element.removeClass( 'selected' );
+	else element.addClass( 'selected' );
+}
+
+function getKeyCode(e)
+{
+	var ctrlPressed=0;
+
+	if (parseInt(navigator.appVersion)>3) {
+
+		var evt = e ? e:window.event;
+
+		if (document.layers && navigator.appName=="Netscape"
+		&& parseInt(navigator.appVersion)==4) {
+			// NETSCAPE 4 CODE
+			var mString =(e.modifiers+32).toString(2).substring(3,6);
+			ctrlPressed =(mString.charAt(1)=="1");
+		}
+		else {
+			// NEWER BROWSERS [CROSS-PLATFORM]
+			ctrlPressed=evt.ctrlKey;
+		}
+	}
+	return ctrlPressed;
 }
 
 //-----------------------------------------------------------------------------
 //Move Table Row Up and Down
 //-----------------------------------------------------------------------------
 
-function moveUpPropertyList() {
-  var selectedList = jQuery("#selectedList");
+function moveUpPropertyList()
+{
+	var selectedList = jQuery("#selectedList");
 
-  jQuery("#selectedList").find("tr").each(function( i, item ) {
-    item = jQuery(item);
-    if( item.hasClass("selected") ) {
-      var prev = item.prev('#selectedList tr');
-      if( prev.length == 1 ) {
-        prev.before(item);
-      }
-    }
-  });
+	jQuery("#selectedList").find("tr").each( function( i, item ){
+		item = jQuery(item);
+		if( item.hasClass("selected") )
+		{
+			var prev = item.prev('#selectedList tr');
+			if (prev.length == 1) 
+			{ 
+				prev.before(item);
+			}
+		}
+	});
 }
 
-function moveDownPropertyList() {
-  var selectedList = jQuery("#selectedList");
-  var items = new Array();
-  jQuery("#selectedList").find("tr").each(function( i, item ) {
-    items.push(jQuery(item));
-  });
-
-  for( var i = items.length - 1; i >= 0; i-- ) {
-    var item = items[i];
-    if( item.hasClass("selected") ) {
-      var next = item.next('#selectedList tr');
-      if( next.length == 1 ) {
-        next.after(item);
-      }
-    }
-  }
+function moveDownPropertyList()
+{
+	var selectedList = jQuery("#selectedList");
+	var items = new Array();
+	jQuery("#selectedList").find("tr").each( function( i, item ){
+		items.push(jQuery(item));
+	});
+	
+	for( var i=items.length-1;i>=0;i--)
+	{	
+		var item = items[i];
+		if( item.hasClass("selected") )
+		{
+			var next = item.next('#selectedList tr');
+			if (next.length == 1) 
+			{ 
+				next.after(item);
+			}
+		}
+	}
 }
 
 // --------------------------------------------------------------------
 // Generate template message form
 // --------------------------------------------------------------------
 
-function generateTemplateMessageForm() {
-  var rowId = jQuery('.daysAllowedSendMessage').length + 1;
-  var contend = '<tr name="tr' + rowId + '" class="listAlternateRow" >'
-    + '<td colspan="2">' + i18n_reminder + ' ' + rowId + '<a href="javascript:removeTemplateMessageForm(' + rowId + ')"> ( ' + i18n_remove_reminder + ' )</a></td>'
-    + '</tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '<td><label>' + i18n_send_when_to + '</label></td>'
-    + '<td>'
-    + '<select id="whenToSend' + rowId + '" name="whenToSend' + rowId + '" class="whenToSend" onchange="whenToSendOnChange(' + rowId + ')" >'
-    + '<option value="">' + i18n_days_scheduled + '</option>'
-    + '<option value="3">' + i18n_complete_program + '</option>'
-    + '<option value="1">' + i18n_program_enrollment + '</option>'
-    + '</select>'
-    + '</td>'
-    + '</tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '<td><label>' + i18n_date_to_compare + '</label></td>'
-    + '<td>'
-    + '<select id="dateToCompare' + rowId + '" class="dateToCompare">'
-    + '<option value="dateofincident">' + i18n_incident_date + '</option>'
-    + '<option value="enrollmentdate">' + i18n_enrollment_date + '</option>'
-    + '</select>'
-    + '</td>'
-    + '</tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '<td><label>' + i18n_send_message + '</label></td>'
-    + '<td>'
-    + '<input type="text" onchange="setRealDays(' + rowId + ')" style="width:100px;" realvalue="" id="daysAllowedSendMessage' + rowId + '" name="daysAllowedSendMessage' + rowId + '" class="daysAllowedSendMessage {validate:{required:true,number:true}}"/> '
-    + i18n_days
-    + ' <select id="time' + rowId + '" name="time' + rowId + '" style="width:100px;" onchange="setRealDays(' + rowId + ')" >'
-    + '<option value="1">' + i18n_before + '</option>'
-    + '<option value="-1">' + i18n_after + '</option>'
-    + '</select> '
-    + i18n_scheduled_date
-    + ' </td>'
-    + '</tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '<td><label>' + i18n_recipients + '</label></td>'
-    + '<td>'
-    + '<select id="sendTo' + rowId + '" name="sendTo' + rowId + '" class="sendTo" onchange="onchangeUserGroup(' + rowId + ')">'
-    + '<option value="1">' + i18n_patient_sms_only + '</option>'
-    + '<option value="3">' + i18n_orgunit_phone_number_sms_only + '</option>'
-    + '<option value="2">' + i18n_health_worker_assigned_to_person + '</option>'
-    + '<option value="4">' + i18n_all_users_at_orgunit + '</option>'
-    + '<option value="5">' + i18n_user_group + '</option>'
-    + '</select>'
-    + '</td>'
-    + '/<tr>'
-    + '<tr name="tr' + rowId + '" id="tr' + rowId + '">'
-    + '<td><label>' + i18n_user_group + '</label></td>'
-    + '<td>'
-    + program_SMS_reminder_form
-    + '</td>'
-    + '/<tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '	<td><label>' + i18n_message_type + '</label></td>'
-    + '	<td>'
-    + '		<select type="text" id="messageType' + rowId + '" name="messageType' + rowId + '" class="messageType {validate:{required:true,number:true}}" >'
-    + '			<option value="1">' + i18n_direct_sms + '</option>'
-    + '			<option value="2">' + i18n_message + '</option>'
-    + '			<option value="3">' + i18n_both + '</option>'
-    + '		</select>'
-    + '	</td>'
-    + '</tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '<td>' + i18n_params + '</td>'
-    + '<td>'
-    + '<select multiple size="4" id="params' + rowId + '" name="params" ondblclick="insertParams(this.value, ' + rowId + ');">'
-    + '<option value="{patient-name}">' + i18n_patient_name + '</option>'
-    + '<option value="{program-name}">' + i18n_program_name + '</option>'
-    + '<option value="{incident-date}">' + i18n_incident_date + '</option>'
-    + '<option value="{days-since-incident-date}">' + i18n_days_since_incident_date + '</option>'
-    + '<option value="{enrollement-date}">' + i18n_enrollment_date + '</option>'
-    + '<option value="{days-since-enrollement-date}">' + i18n_days_since_enrollment_date + '</option>'
-    + '<option value="{orgunit-name}">' + i18n_orgunit_name + '</option>'
-    + '</select>'
-    + '</td>'
-    + '</tr>'
-    + '<tr name="tr' + rowId + '">'
-    + '<td><label>' + i18n_message + '</label></td>'
-    + '<td><textarea onkeyup="getMessageLength( ' + rowId + ');" id="templateMessage' + rowId + '" name="templateMessage' + rowId + '" style="width:320px" class="templateMessage {validate:{required:true}}"></textarea></td>'
-    + '</tr>'
-    + '<tr>'
-    + '<td></td>'
-    + '<td id="messageLengthTD' + rowId + '"></td>'
-    + '</tr>';
-
-  jQuery('#programStageMessage').append(contend);
-  showHideUserGroup();
-}
-
-function showHideUserGroup() {
-  jQuery(".sendTo").each(function( i, item ) {
-    var numb = i + 1;
-    if( item.value == 5 ) {
-      showById('tr' + numb);
-    }
-    else
-      hideById('tr' + numb);
-  });
-}
-
-function removeTemplateMessageForm( rowId ) {
-  jQuery("[name=tr" + rowId + "]").remove();
-}
-
-function insertParams( paramValue, rowId ) {
-  var templateMessage = paramValue;
-  insertTextCommon('templateMessage' + rowId, templateMessage);
-  getMessageLength(rowId);
-}
-
-function whenToSendOnChange( index ) {
-  var whenToSend = getFieldValue('whenToSend' + index);
-  if( whenToSend == "" ) {
-    enable('dateToCompare' + index);
-    enable('daysAllowedSendMessage' + index);
-    enable('time' + index);
-  }
-  else {
-    disable('dateToCompare' + index);
-    disable('daysAllowedSendMessage' + index);
-    disable('time' + index);
-  }
-}
-
-function getMessageLength( rowId ) {
-  var message = getFieldValue('templateMessage' + rowId);
-  var length = 0;
-  var idx = message.indexOf('{');
-  while( idx >= 0 ) {
-    length += message.substr(0, idx).length;
-    var end = message.indexOf('}');
-    if( end >= 0 ) {
-      message = message.substr(end + 1, message.length);
-      idx = message.indexOf('{');
-    }
-  }
-  length += message.length;
-  setInnerHTML('messageLengthTD' + rowId, length + " " + i18n_characters_without_params);
-  if( length >= 160 ) {
-    jQuery('#templateMessage' + rowId).attr('maxlength', 160);
-  }
-  else {
-    jQuery('#templateMessage' + rowId).removeAttr('maxlength');
-  }
-}
-
-function setRealDays( rowId ) {
-  var daysAllowedSendMessage = jQuery("#daysAllowedSendMessage" + rowId);
-  var time = jQuery("#time" + rowId + " option:selected ").val();
-  daysAllowedSendMessage.attr("realvalue", time * eval(daysAllowedSendMessage).val());
-  var aasdf = 0;
-}
-
-function onchangeUserGroup( id ) {
-  var value = document.getElementById('sendTo' + id).value;
-  hideById('tr' + id);
-
-  if( value == "1" || value == "3" ) {
-    setFieldValue('messageType' + id, '1');
-    disable('messageType' + id);
-  }
-  else {
-    if( value == "5" ) {
-      showById('tr' + id);
-    }
-    enable('messageType' + id);
-  }
+function generateTemplateMessageForm()
+{
+	var rowId = jQuery('.daysAllowedSendMessage').length + 1;
+	var contend = '<tr name="tr' + rowId + '" class="listAlternateRow" >'
+				+ 	'<td colspan="2">' + i18n_reminder + ' ' + rowId + '<a href="javascript:removeTemplateMessageForm('+ rowId +')"> ( '+ i18n_remove_reminder + ' )</a></td>'
+				+ '</tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+ 	'<td><label>' + i18n_send_when_to + '</label></td>'
+				+ 	'<td>'
+				+ 		'<select id="whenToSend' + rowId + '" name="whenToSend' + rowId + '" class="whenToSend" onchange="whenToSendOnChange(' + rowId + ')" >'
+				+ 			'<option value="">' + i18n_days_scheduled + '</option>'
+				+ 			'<option value="3">' + i18n_complete_program + '</option>'
+				+ 			'<option value="1">' + i18n_program_enrollment + '</option>'
+				+ 		'</select>'
+				+	'</td>'
+				+ '</tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+ 	'<td><label>' + i18n_date_to_compare + '</label></td>'
+				+ 	'<td>'
+				+		'<select id="dateToCompare' + rowId + '" class="dateToCompare">'
+				+			'<option value="dateofincident">' + i18n_incident_date + '</option>'
+				+			'<option value="enrollmentdate">' + i18n_enrollment_date + '</option>'
+				+ 		'</select>'
+				+   '</td>'
+				+ '</tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+ 	'<td><label>' + i18n_send_message + '</label></td>'
+				+ 	'<td>'
+				+		'<input type="text" onchange="setRealDays(' + rowId + ')" style="width:100px;" realvalue="" id="daysAllowedSendMessage' + rowId + '" name="daysAllowedSendMessage' + rowId + '" class="daysAllowedSendMessage {validate:{required:true,number:true}}"/> '
+				+ 		i18n_days
+				+		' <select id="time' + rowId + '" name="time' + rowId + '" style="width:100px;" onchange="setRealDays(' + rowId + ')" >'
+				+			'<option value="1">' + i18n_before + '</option>'
+				+			'<option value="-1">' + i18n_after + '</option>'
+				+		'</select> '
+				+		i18n_scheduled_date
+				+   ' </td>'
+				+ '</tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+ 	'<td><label>' + i18n_recipients + '</label></td>'
+				+ 	'<td>'
+				+ 		'<select id="sendTo' + rowId + '" name="sendTo' + rowId + '" class="sendTo" onchange="onchangeUserGroup('+ rowId +')">'
+				+ 			'<option value="1">' + i18n_patient_sms_only + '</option>'
+				+ 			'<option value="3">' + i18n_orgunit_phone_number_sms_only + '</option>'
+				+ 			'<option value="2">' + i18n_health_worker_assigned_to_person + '</option>'
+				+ 			'<option value="4">' + i18n_all_users_at_orgunit + '</option>'
+				+ 			'<option value="5">' + i18n_user_group + '</option>'
+				+ 		'</select>'
+				+	'</td>'
+				+ '/<tr>'
+				+ '<tr name="tr' + rowId + '" id="tr' + rowId + '">'
+				+ 	'<td><label>' + i18n_user_group + '</label></td>'
+				+ 	'<td>'
+				+	program_SMS_reminder_form
+				+	'</td>'
+				+ '/<tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+ '	<td><label>' + i18n_message_type + '</label></td>'
+				+ '	<td>'
+				+ '		<select type="text" id="messageType' + rowId + '" name="messageType' + rowId + '" class="messageType {validate:{required:true,number:true}}" >'
+				+ '			<option value="1">' + i18n_direct_sms + '</option>'
+				+ '			<option value="2">' + i18n_message + '</option>'
+				+ '			<option value="3">' + i18n_both + '</option>'
+				+ '		</select>'
+				+ '	</td>'
+				+ '</tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+	'<td>' + i18n_params + '</td>'
+				+	'<td>'
+				+		'<select multiple size="4" id="params' + rowId +'" name="params" ondblclick="insertParams(this.value, ' + rowId + ');">'
+				+			'<option value="{patient-name}">' + i18n_patient_name + '</option>'
+				+			'<option value="{program-name}">' + i18n_program_name + '</option>'
+				+			'<option value="{incident-date}">' + i18n_incident_date + '</option>'
+				+			'<option value="{days-since-incident-date}">' + i18n_days_since_incident_date + '</option>'
+				+			'<option value="{enrollement-date}">' + i18n_enrollment_date + '</option>'
+				+			'<option value="{days-since-enrollement-date}">' + i18n_days_since_enrollment_date + '</option>'
+				+			'<option value="{orgunit-name}">' + i18n_orgunit_name + '</option>'
+				+		'</select>'
+				+	'</td>'
+				+ '</tr>'
+				+ '<tr name="tr' + rowId + '">'
+				+	'<td><label>' + i18n_message + '</label></td>'
+				+	'<td><textarea onkeyup="getMessageLength( ' + rowId + ');" id="templateMessage' + rowId + '" name="templateMessage' + rowId + '" style="width:320px" class="templateMessage {validate:{required:true}}"></textarea></td>'
+				+ '</tr>'
+				+ '<tr>'
+				+	'<td></td>'
+				+ 	'<td id="messageLengthTD' + rowId + '"></td>'
+				+ '</tr>';
+
+	jQuery('#programStageMessage').append( contend );
+	showHideUserGroup();
+}
+
+function showHideUserGroup()
+{
+	jQuery(".sendTo").each( function( i, item ){
+		var numb = i+1;
+		if( item.value == 5){
+			showById( 'tr'+numb );
+		}
+		else
+			hideById ( 'tr'+numb );
+	});
+}
+
+function removeTemplateMessageForm( rowId )
+{
+	jQuery("[name=tr" + rowId + "]").remove();
+}
+
+function insertParams( paramValue, rowId )
+{
+	var templateMessage = paramValue;
+	insertTextCommon('templateMessage' + rowId, templateMessage);
+	getMessageLength(rowId );
+}
+
+function whenToSendOnChange(index)
+{
+	var whenToSend = getFieldValue('whenToSend' + index );
+	if(whenToSend==""){
+		enable('dateToCompare' + index );
+		enable('daysAllowedSendMessage' + index );
+		enable('time' + index );
+	}
+	else{
+		disable('dateToCompare' + index );
+		disable('daysAllowedSendMessage' + index );
+		disable('time' + index );
+	}
+}
+
+function getMessageLength(rowId)
+{
+	var message = getFieldValue( 'templateMessage' + rowId );
+	var length = 0;
+	var idx = message.indexOf('{');
+	while( idx >=0 ){
+		length += message.substr(0,idx).length;
+		var end = message.indexOf('}');
+		if(end>=0){
+			message = message.substr(end + 1, message.length);
+			idx = message.indexOf('{');
+		}
+	}
+	length += message.length;
+	setInnerHTML('messageLengthTD' + rowId, length + " " + i18n_characters_without_params);
+	if( length>=160 )
+	{
+		jQuery('#templateMessage' + rowId ).attr('maxlength', 160);
+	}
+	else
+	{
+		jQuery('#templateMessage' + rowId ).removeAttr('maxlength');
+	}
+}
+
+function setRealDays(rowId)
+{
+	var daysAllowedSendMessage = jQuery("#daysAllowedSendMessage" + rowId);
+	var time = jQuery("#time" + rowId + " option:selected ").val();
+	daysAllowedSendMessage.attr("realvalue", time * eval(daysAllowedSendMessage).val());
+	var aasdf= 0;
+}
+
+function onchangeUserGroup( id )
+{
+	var value = document.getElementById( 'sendTo' + id ).value;
+	hideById( 'tr'+id );
+	
+	if( value=="1" || value=="3" ){
+		setFieldValue('messageType' + id , '1');
+		disable('messageType' + id );
+	}
+	else{
+		if ( value == "5") {
+			showById( 'tr' + id );
+		}
+		enable ('messageType' + id );
+	}
 }

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programIndicator.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programIndicator.js	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programIndicator.js	2013-12-16 04:39:49 +0000
@@ -1,118 +1,119 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
 
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showUpdateProgramIndicator( context ) {
-  location.href = 'showUpdateProgramIndicator.action?id=' + context.id;
-}
-
-function removeIndicator( context ) {
-  removeItem( context.id, context.name, i18n_confirm_delete , 'removeProgramIndicator.action' );
-}
-
-function showProgramIndicatorDetails( context ) {
-  jQuery.getJSON('getProgramIndicator.action', { id: context.id }, function( json ) {
-    setInnerHTML('nameField', json.programIndicator.name);
-    setInnerHTML('codeField', json.programIndicator.code);
-    setInnerHTML('descriptionField', json.programIndicator.description);
-    setInnerHTML('valueTypeField', json.programIndicator.valueType);
-    setInnerHTML('rootDateField', json.programIndicator.rootDate);
-    setInnerHTML('expressionField', json.programIndicator.expression);
-
-    showDetails();
-  });
+function showProgramIndicatorDetails( programIndicatorId )
+{
+	jQuery.getJSON( 'getProgramIndicator.action', { id: programIndicatorId }, function ( json ) {
+		setInnerHTML( 'nameField', json.programIndicator.name );	
+		setInnerHTML( 'codeField', json.programIndicator.code );	
+		setInnerHTML( 'descriptionField', json.programIndicator.description );
+		setInnerHTML( 'valueTypeField', json.programIndicator.valueType );
+		setInnerHTML( 'rootDateField', json.programIndicator.rootDate );
+		setInnerHTML( 'expressionField', json.programIndicator.expression );
+		
+		showDetails();
+	});
 }
 
 // -----------------------------------------------------------------------------
 // Remove Program Indicator
 // -----------------------------------------------------------------------------
 
-function removeProgramIndicator( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removeProgramIndicator.action');
-}
-
-function getPatientDataElements() {
-  clearListById('dataElements');
-  clearListById('deSumId');
-  var programStageId = getFieldValue('programStageId');
-
-  jQuery.getJSON('getPatientDataElements.action',
-    {
-      programId: getFieldValue('programId'),
-      programStageId: programStageId
-    }
-    , function( json ) {
-      if( programStageId != '' ) {
-        enable('programStageProperty');
-      }
-      else {
-        disable('programStageProperty');
-      }
-      var dataElements = jQuery('#dataElements');
-      var deSumId = jQuery('#deSumId');
-      for( i in json.dataElements ) {
-        if( json.dataElements[i].type == 'int' || json.dataElements[i].type == 'date' ) {
-          dataElements.append("<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' suggested='" + json.dataElements[i].optionset + "'>" + json.dataElements[i].name + "</option>");
-          if( json.dataElements[i].type == 'int' ) {
-            deSumId.append("<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' suggested='" + json.dataElements[i].optionset + "'>" + json.dataElements[i].name + "</option>");
-          }
-        }
-      }
-
-    });
-}
-
-function insertDataElement( element ) {
-  var programStageId = getFieldValue('programStageId');
-  var dataElementId = element.options[element.selectedIndex].value;
-
-  insertTextCommon('expression', "[DE:" + programStageId + "." + dataElementId + "]");
-  getConditionDescription();
-}
-
-function insertInfo( element, isProgramStageProperty ) {
-  var id = "";
-  if( isProgramStageProperty ) {
-    id = getFieldValue('programStageId');
-  }
-  else {
-    id = getFieldValue('programId');
-  }
-
-  value = element.options[element.selectedIndex].value.replace('*', id);
-  insertTextCommon('expression', value);
-  getConditionDescription();
-}
-
-function insertOperator( value ) {
-  insertTextCommon('expression', ' ' + value + ' ');
-  getConditionDescription();
-}
-
-function getConditionDescription() {
-  $.postJSON('getProgramIndicatorDescripttion.action',
-    {
-      expression: getFieldValue('expression')
-    }, function( json ) {
-      byId('aggregationDescription').innerHTML = json.message;
-    })
-}
-
-function programIndicatorOnChange() {
-  var valueType = getFieldValue('valueType');
-  if( valueType == 'int' ) {
-    hideById('rootDateTR');
-    disable('rootDate');
-  }
-  else {
-    showById('rootDateTR');
-    enable('rootDate');
-  }
+function removeProgramIndicator( programIndicatorId, name )
+{
+	removeItem( programIndicatorId, name, i18n_confirm_delete, 'removeProgramIndicator.action' );	
+}
+
+function getPatientDataElements()
+{
+	clearListById( 'dataElements' );
+	clearListById( 'deSumId' );
+	var programStageId = getFieldValue('programStageId');
+	
+	jQuery.getJSON( 'getPatientDataElements.action',
+		{ 
+			programId:getFieldValue( 'programId' ),
+			programStageId:programStageId
+		}
+		,function( json )
+		{
+			if( programStageId!='' ){
+				enable('programStageProperty');
+			}
+			else{
+				disable('programStageProperty');
+			}
+			var dataElements = jQuery('#dataElements');
+			var deSumId = jQuery('#deSumId');
+			for ( i in json.dataElements )
+			{ 
+				if( json.dataElements[i].type=='int' || json.dataElements[i].type=='date'  )
+				{
+					dataElements.append( "<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' suggested='" + json.dataElements[i].optionset + "'>" + json.dataElements[i].name + "</option>" );
+					if( json.dataElements[i].type=='int')
+					{
+						deSumId.append( "<option value='" + json.dataElements[i].id + "' title='" + json.dataElements[i].name + "' suggested='" + json.dataElements[i].optionset + "'>" + json.dataElements[i].name + "</option>" );
+					}
+				}
+			}
+			
+		});
+}
+
+function insertDataElement( element )
+{
+	var programStageId = getFieldValue('programStageId');
+	var dataElementId = element.options[element.selectedIndex].value;
+	
+	insertTextCommon( 'expression', "[DE:" + programStageId + "." + dataElementId + "]" );
+	getConditionDescription();
+}
+
+function insertInfo( element, isProgramStageProperty )
+{
+	var id = "";
+	if( isProgramStageProperty )
+	{
+		id = getFieldValue('programStageId');
+	}
+	else
+	{
+		id = getFieldValue('programId');
+	}
+	
+	value = element.options[element.selectedIndex].value.replace( '*', id );
+	insertTextCommon('expression', value );
+	getConditionDescription();
+}
+
+function insertOperator( value )
+{
+	insertTextCommon('expression', ' ' + value + ' ' );
+	getConditionDescription();
+}
+
+function getConditionDescription ()
+{
+	$.postJSON( 'getProgramIndicatorDescripttion.action', 
+	{ 
+		expression:getFieldValue('expression') 
+	},function (json)
+	{
+		byId('aggregationDescription').innerHTML = json.message;
+	})
+}
+
+function programIndicatorOnChange()
+{
+	var valueType = getFieldValue('valueType');
+	if(valueType=='int'){
+		hideById('rootDateTR');
+		disable('rootDate');
+	}
+	else{
+		showById('rootDateTR');
+		enable('rootDate');
+	}
 }

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programStage.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programStage.js	2013-12-06 08:54:56 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programStage.js	2013-12-16 04:39:49 +0000
@@ -1,25 +1,3 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
-function removeProgramStage( context ) {
-  removeItem( context.id, context.name, i18n_confirm_delete , 'removeProgramStage.action' );
-}
-
-function showUpdateProgramStageForm( context ) {
-  location.href = 'showUpdateProgramStageForm.action?id=' + context.id;
-}
-
-function viewDataEntryForm( context ) {
-  location.href = 'viewDataEntryForm.action?programStageId=' + context.id;
-}
-
-function programStageSectionList( context ) {
-  location.href = 'programStageSectionList.action?id=' + context.id;
-}
 
 function getStageByProgram( programId )
 {
@@ -71,9 +49,9 @@
 // View details
 // -----------------------------------------------------------------------------
 
-function showProgramStageDetails( context )
+function showProgramStageDetails( programStageId )
 {
-	jQuery.getJSON( 'getProgramStage.action', { id: context.id }, function ( json ) {
+	jQuery.getJSON( 'getProgramStage.action', { id: programStageId }, function ( json ) {
 		setInnerHTML( 'nameField', json.programStage.name );	
 		setInnerHTML( 'descriptionField', json.programStage.description );
 		setInnerHTML( 'scheduledDaysFromStartField', json.programStage.minDaysFromStart ); 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programValidation.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programValidation.js	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/programValidation.js	2013-12-16 04:39:49 +0000
@@ -1,209 +1,224 @@
 var COLOR_GREEN = '#b9ffb9';
 var COLOR_WHITE = '#ffffff'
 
-jQuery(document).ready(function() {
-  validation('programValidationForm', function( form ) {
-    form.submit();
-  });
-
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
+jQuery(document).ready(	function(){
+	validation( 'programValidationForm', function( form ){			
+		form.submit();
+	});
 });
 
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showUpdateSingleProgramValidationForm( context ) {
-  location.href = 'showUpdateSingleProgramValidationForm.action?validationId=' + context.id;
-}
-
-function showProgramValidationDetails( context ) {
-  jQuery.getJSON('getProgramValidation.action', { validationId: context.id }, function( json ) {
-    setInnerHTML('descriptionField', json.validation.description);
-
-    var operator = json.validation.operator;
-    setInnerHTML('operatorField', i18nalizeOperator(operator));
-
-    setInnerHTML('leftSideDescriptionField', json.validation.leftSideDescription);
-    setInnerHTML('leftSideExpressionField', json.validation.leftSideExpression);
-    setInnerHTML('rightSideDescriptionField', json.validation.rightSideDescription);
-    setInnerHTML('rightSideExpressionField', json.validation.rightSideExpression);
-
-    showDetails();
-  });
-}
-
-function i18nalizeOperator( operator ) {
-  if( operator == "equal_to" ) {
-    return i18n_equal_to;
-  }
-  else if( operator == "not_equal_to" ) {
-    return i18n_not_equal_to;
-  }
-  else if( operator == "greater_than" ) {
-    return i18n_greater_than;
-  }
-  else if( operator == "greater_than_or_equal_to" ) {
-    return i18n_greater_than_or_equal_to;
-  }
-  else if( operator == "less_than" ) {
-    return i18n_less_than;
-  }
-  else if( operator == "less_than_or_equal_to" ) {
-    return i18n_less_than_or_equal_to;
-  }
-
-  return null;
+function showProgramValidationDetails ( programValidationId )
+{
+    jQuery.getJSON( 'getProgramValidation.action', { validationId: programValidationId }, function ( json ) {
+		setInnerHTML( 'descriptionField', json.validation.description );
+		
+		var operator = json.validation.operator;
+		setInnerHTML( 'operatorField', i18nalizeOperator( operator ) );
+		
+		setInnerHTML( 'leftSideDescriptionField', json.validation.leftSideDescription );
+		setInnerHTML( 'leftSideExpressionField', json.validation.leftSideExpression );
+		setInnerHTML( 'rightSideDescriptionField', json.validation.rightSideDescription );
+		setInnerHTML( 'rightSideExpressionField', json.validation.rightSideExpression );
+		
+		showDetails();
+	});
+}
+
+function i18nalizeOperator( operator )
+{
+    if ( operator == "equal_to" )
+    {
+        return i18n_equal_to;
+    }
+    else if ( operator == "not_equal_to" )
+    {
+        return i18n_not_equal_to;
+    }
+    else if ( operator == "greater_than" )
+    {
+        return i18n_greater_than;       
+    }
+    else if ( operator == "greater_than_or_equal_to" )
+    {
+        return i18n_greater_than_or_equal_to;
+    }
+    else if ( operator == "less_than" )
+    {
+        return i18n_less_than;
+    }
+    else if ( operator == "less_than_or_equal_to" )
+    {
+        return i18n_less_than_or_equal_to;
+    }
+    
+    return null;
 }
 
 // -----------------------------------------------------------------------------
 // Remove ProgramValidation
 // -----------------------------------------------------------------------------
 
-function removeProgramValidation( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removeProgramValidation.action');
+function removeProgramValidation( programValidationId, name )
+{
+	removeItem( programValidationId, name, i18n_confirm_delete, 'removeProgramValidation.action' );	
 }
 
 //------------------------------------------------------------------------------
 // Load data-elements of each program-stage
 //------------------------------------------------------------------------------
 
-function getLeftPrgramStageDataElements() {
-  clearListById('dataElementId');
-
-  var programStage = document.getElementById('leftStage');
-  var programStageId = programStage.options[ programStage.selectedIndex ].value;
-  if( programStageId == '' ) return;
-
-  jQuery.getJSON("getPatientDataElements.action", {
-    programStageId: programStageId
-  }, function( json ) {
-    jQuery('#dataElementId').append('<option value="DUE_DATE">' + i18n_due_date + '</option>');
-    jQuery('#dataElementId').append('<option value="REPORT_DATE">' + i18n_report_date + '</option>');
-    for( i in json.dataElements ) {
-      var id = '[DE:' + programStageId + '.' + json.dataElements[i].id + ']';
-      jQuery('#dataElementId').append('<option value="' + id + '">' + json.dataElements[i].name + '</option>');
-    }
-  });
+function getLeftPrgramStageDataElements()
+{
+	clearListById( 'dataElementId' );
+	
+	var programStage = document.getElementById( 'leftStage' );
+	var programStageId = programStage.options[ programStage.selectedIndex ].value;
+	if( programStageId == '') return;
+	
+	jQuery.getJSON( "getPatientDataElements.action", {
+		programStageId:programStageId
+	}, function(json){
+		jQuery( '#dataElementId').append( '<option value="DUE_DATE">' + i18n_due_date + '</option>' );
+		jQuery( '#dataElementId').append( '<option value="REPORT_DATE">' + i18n_report_date + '</option>' );
+		for ( i in json.dataElements ) {
+			var id = '[DE:' + programStageId + '.' + json.dataElements[i].id + ']';
+			jQuery( '#dataElementId').append( '<option value="' + id + '">' + json.dataElements[i].name + '</option>' );
+		}
+	});   
 }
 
-function getRightPrgramStageDataElements() {
-  clearListById('rightSideDE');
-
-  var programStage = document.getElementById('rightStage');
-  var programStageId = programStage.options[ programStage.selectedIndex ].value;
-  if( programStageId == '' ) return;
-
-  jQuery.getJSON("getPatientDataElements.action", {
-    programStageId: programStageId
-  }, function( json ) {
-    jQuery('#dataElementId').append('<option value="DUE_DATE">' + i18n_due_date + '</option>');
-    jQuery('#dataElementId').append('<option value="REPORT_DATE">' + i18n_report_date + '</option>');
-    for( i in json.dataElements ) {
-      var id = '[DE:' + programStageId + '.' + json.dataElements[i].id + ']';
-      jQuery('#rightSideDE').append('<option value="' + id + '">' + json.dataElements[i].name + '</option>');
-    }
-  });
-
+function getRightPrgramStageDataElements()
+{
+	clearListById( 'rightSideDE' );
+  	
+	var programStage = document.getElementById( 'rightStage' );
+	var programStageId = programStage.options[ programStage.selectedIndex ].value;
+	if( programStageId == '') return;
+  
+	jQuery.getJSON( "getPatientDataElements.action", {
+		programStageId:programStageId
+	}, function(json){
+		jQuery( '#dataElementId').append( '<option value="DUE_DATE">' + i18n_due_date + '</option>' );
+		jQuery( '#dataElementId').append( '<option value="REPORT_DATE">' + i18n_report_date + '</option>' );
+		for ( i in json.dataElements ) {
+			var id = '[DE:' + programStageId + '.' + json.dataElements[i].id + ']';
+			jQuery( '#rightSideDE').append( '<option value="' + id + '">' + json.dataElements[i].name + '</option>' );
+		}
+	}); 
+	
 }
 
 //------------------------------------------------------------------------------
 // Show Left side form for designing
 //------------------------------------------------------------------------------
 
-function editLeftExpression() {
-  left = true;
-
-  $('#expression').val($('#leftSideExpression').val());
-  $('#expression-container [id=description]').val($('#leftSideDescription').val());
-  $('#formulaText').text($('#leftSideTextualExpression').val());
-  $('#nullIfBlank').attr('checked', ( $('#leftSideNullIfBlank').val() == 'true' || $('#leftSideNullIfBlank').val() == '' ));
-  setInnerHTML("exp-descriptionInfo", "");
-  setInnerHTML("exp-expressionInfo", "");
-  $("#expression-container [id=description]").css("background-color", "#ffffff");
-  $("#expression-container [id=expression]").css("background-color", "#ffffff");
-
-  dialog.dialog("open");
+function editLeftExpression()
+{		
+	left = true;
+	
+	$( '#expression' ).val( $( '#leftSideExpression' ).val() );
+	$( '#expression-container [id=description]' ).val( $( '#leftSideDescription' ).val() );
+	$( '#formulaText' ).text( $( '#leftSideTextualExpression' ).val() );
+	$( '#nullIfBlank' ).attr( 'checked', ( $( '#leftSideNullIfBlank' ).val() == 'true' || $( '#leftSideNullIfBlank' ).val() == '' ) );
+	setInnerHTML( "exp-descriptionInfo", "" );
+	setInnerHTML( "exp-expressionInfo", "" );
+	$("#expression-container [id=description]" ).css( "background-color", "#ffffff" );
+	$("#expression-container [id=expression]" ).css( "background-color", "#ffffff" );
+	
+	dialog.dialog("open");
 }
 
-function editRightExpression() {
-  left = false;
-
-  $('#expression').val($('#rightSideExpression').val());
-  $('#expression-container [id=description]').val($('#rightSideDescription').val());
-  $('#formulaText').text($('#rightSideTextualExpression').val());
-  $('#nullIfBlank').attr('checked', ( $('#rightSideNullIfBlank').val() == 'true' || $('#rightSideNullIfBlank').val() == '' ));
-
-  dialog.dialog("open");
+function editRightExpression()
+{
+	left = false;
+	
+	$( '#expression' ).val( $( '#rightSideExpression' ).val() );
+	$( '#expression-container [id=description]' ).val( $( '#rightSideDescription' ).val() );
+	$( '#formulaText' ).text( $( '#rightSideTextualExpression' ).val() );
+	$( '#nullIfBlank' ).attr( 'checked', ( $( '#rightSideNullIfBlank' ).val() == 'true' || $( '#rightSideNullIfBlank' ).val() == '' ) );
+	
+	dialog.dialog("open");
 }
 
 //------------------------------------------------------------------------------
 // Insert formulas
 //------------------------------------------------------------------------------
 
-function insertText( inputAreaName, inputText ) {
-  insertTextCommon(inputAreaName, inputText);
-
-  getExpressionText();
+function insertText( inputAreaName, inputText )
+{
+	insertTextCommon( inputAreaName, inputText );
+	
+	getExpressionText();
 }
 
 
-function getExpressionText() {
-  $.postUTF8("getProgramExpressionDescription.action",
-    {
-      programExpression: $('#expression').val()
-    },
-    function( data ) {
-      setInnerHTML("formulaText", data);
-    }, 'html');
+function getExpressionText()
+{
+	$.postUTF8("getProgramExpressionDescription.action",
+		{
+			programExpression: $( '#expression' ).val()
+		},
+		function (data)
+		{
+			setInnerHTML( "formulaText", data );
+		},'html');
 }
 
 var left = true;
-function insertExpression() {
-  var expression = $('#expression').val();
-  var description = $('#expression-container [id=description]').val();
-
-  if( left ) {
-    $('#leftSideExpression').val(expression);
-    $('#leftSideDescription').val(description);
-    $('#leftSideTextualExpression').val($('#formulaText').text());
-    $('#leftSideNullIfBlank').val($('#nullIfBlank').is(':checked'));
-  }
-  else {
-    $('#rightSideExpression').val(expression);
-    $('#rightSideDescription').val(description);
-    $('#rightSideTextualExpression').val($('#formulaText').text());
-    $('#rightSideNullIfBlank').val($('#nullIfBlank').is(':checked'));
-  }
-
-  dialog.dialog("close");
-}
-
-function validateExpression() {
-  if( checkNotEmpty(jQuery("#expression-container [id=description]"), i18n_description_not_null) == false )
-    return;
-  if( checkNotEmpty(jQuery("#expression-container [id=expression]"), i18n_expression_not_null) == false )
-    return;
-  insertExpression();
-}
-
-function checkNotEmpty( field, message ) {
-  if( field.val().length == 0 ) {
-    setInnerHTML("exp-" + field.attr("name") + "Info", message);
-    $('#expression-container [id=' + field.attr("name") + "]").css("background-color", "#ffc5c5");
-    return false;
-  } else {
-    setInnerHTML("exp-" + field.attr("name") + "Info", '');
-    $('#expression-container [id=' + field.attr("name") + "]").css("background-color", "#ffffff");
-  }
-
-  return true;
-}
-
-function clearSearchText() {
-  setFieldValue('filter', '');
-  filterList('', 'dataElementId')
+function insertExpression()
+{
+	var expression = $( '#expression' ).val();
+	var description = $( '#expression-container [id=description]' ).val();
+							
+	if ( left )
+	{
+		$( '#leftSideExpression' ).val( expression );
+		$( '#leftSideDescription' ).val( description );					
+		$( '#leftSideTextualExpression' ).val( $( '#formulaText' ).text() );
+		$( '#leftSideNullIfBlank' ).val( $( '#nullIfBlank' ).is( ':checked' ) );
+	}
+	else
+	{
+		$( '#rightSideExpression' ).val( expression );
+		$( '#rightSideDescription' ).val( description );					
+		$( '#rightSideTextualExpression' ).val( $( '#formulaText' ).text() );
+		$( '#rightSideNullIfBlank' ).val( $( '#nullIfBlank' ).is( ':checked' ) );								
+	}
+	
+	dialog.dialog( "close" );
+}
+
+function validateExpression()
+{
+    if ( checkNotEmpty( jQuery( "#expression-container [id=description]" ), i18n_description_not_null ) == false )
+        return;
+    if ( checkNotEmpty( jQuery( "#expression-container [id=expression]" ), i18n_expression_not_null ) == false )
+        return;
+	insertExpression();
+}
+
+function checkNotEmpty( field, message )
+{
+    if ( field.val().length == 0 )
+    {
+        setInnerHTML( "exp-" + field.attr("name") + "Info", message );
+        $('#expression-container [id=' + field.attr("name") + "]" ).css( "background-color", "#ffc5c5" );
+        return false;
+    } else
+    {
+        setInnerHTML( "exp-" + field.attr("name") + "Info", '' );
+        $('#expression-container [id=' + field.attr("name") + "]" ).css( "background-color", "#ffffff" );
+    }
+
+    return true;
+}
+
+function clearSearchText()
+{
+	setFieldValue('filter', '');
+	filterList( '', 'dataElementId' )
 }
\ No newline at end of file

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/relationship.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/relationship.js	2013-12-05 12:21:59 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/relationship.js	2013-12-16 04:39:49 +0000
@@ -1,83 +1,84 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showUpdateRelationshipTypeForm( context ) {
-  location.href = 'showUpdateRelationshipTypeForm.action?id=' + context.id;
-}
-
-function showRelationshipTypeDetails( context ) {
-  jQuery.getJSON('getRelationshipType.action', { id: context.id }, function( json ) {
-    setInnerHTML('aIsToBField', json.relationshipType.aIsToB);
-    setInnerHTML('bIsToAField', json.relationshipType.bIsToA);
-    setInnerHTML('descriptionField', json.relationshipType.description);
-
-    showDetails();
-  });
+function showRelationshipTypeDetails( relationshipTypeId )
+{
+  	jQuery.getJSON( 'getRelationshipType.action', { id: relationshipTypeId }, function ( json ) {
+		setInnerHTML( 'aIsToBField', json.relationshipType.aIsToB );	
+		setInnerHTML( 'bIsToAField', json.relationshipType.bIsToA );       
+		setInnerHTML( 'descriptionField', json.relationshipType.description );
+   
+		showDetails();
+	});
 }
 
 // -----------------------------------------------------------------------------
 // Add RelationshipType
 // -----------------------------------------------------------------------------
 
-function validateAddRelationshipType() {
-  $.postUTF8(
-    'validateRelationshipType.action',
-    {
-      "aIsToB": getFieldValue('aIsToB'),
-      "bIsToA": getFieldValue('bIsToA')
-    },
-    function( json ) {
-      if( json.response == "success" ) {
-        var form = document.getElementById('addRelationshipTypeForm');
-        form.submit();
-      } else if( json.response == "input" ) {
-        setHeaderMessage(json.message);
-      }
-      else if( json.response == "error" ) {
-        setHeaderMessage(json.message);
-      }
-    }
-  );
+function validateAddRelationshipType()
+{
+	$.postUTF8(
+    	    'validateRelationshipType.action',
+    	    {
+    	        "aIsToB": getFieldValue( 'aIsToB' ),
+				"bIsToA": getFieldValue( 'bIsToA' )
+    	    },
+    	    function( json )
+    	    {
+    	    	if ( json.response == "success" )
+    	    	{
+					var form = document.getElementById( 'addRelationshipTypeForm' );        
+					form.submit();
+    	    	}else if ( json.response == "input" )
+    	    	{
+    	    		setHeaderMessage( json.message );
+    	    	}
+    	    	else if ( json.response == "error" )
+    	    	{
+    	    		setHeaderMessage( json.message );
+    	    	}
+    	    }
+    	);
 }
 
 // -----------------------------------------------------------------------------
 // Update RelationshipType
 // -----------------------------------------------------------------------------
 
-function validateUpdateRelationshipType() {
-  $.postJSON(
-    'validateRelationshipType.action',
-    {
-      "id": getFieldValue('id'),
-      "aIsToB": getFieldValue('aIsToB'),
-      "bIsToA": getFieldValue('bIsToA')
-    },
-    function( json ) {
-      if( json.response == "success" ) {
-        var form = document.getElementById('updateRelationshipTypeForm');
-        form.submit();
-      } else if( json.response == "input" ) {
-        setHeaderMessage(json.message);
-      }
-      else if( json.response == "error" ) {
-        setHeaderMessage(json.message);
-      }
-    }
-  );
+function validateUpdateRelationshipType()
+{
+	$.postJSON(
+    	    'validateRelationshipType.action',
+    	    {
+				"id": getFieldValue( 'id' ),
+    	        "aIsToB": getFieldValue( 'aIsToB' ),
+				"bIsToA": getFieldValue( 'bIsToA' )
+    	    },
+    	    function( json )
+    	    {
+    	    	if ( json.response == "success" )
+    	    	{
+					var form = document.getElementById( 'updateRelationshipTypeForm' );        
+					form.submit();
+    	    	}else if ( json.response == "input" )
+    	    	{
+    	    		setHeaderMessage( json.message );
+    	    	}
+    	    	else if ( json.response == "error" )
+    	    	{
+    	    		setHeaderMessage( json.message );
+    	    	}
+    	    }
+    	);
 }
 
 // -----------------------------------------------------------------------------
 // Remove RelationshipType
 // -----------------------------------------------------------------------------	
 
-function removeRelationshipType( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removeRelationshipType.action');
+function removeRelationshipType( relationshipTypeId, aIsToB, bIsToA )
+{
+    removeItem( relationshipTypeId, aIsToB + "/" + bIsToA, i18n_confirm_delete, 'removeRelationshipType.action' );
 }

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/validationcriteria.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/validationcriteria.js	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/validationcriteria.js	2013-12-16 04:39:49 +0000
@@ -1,85 +1,74 @@
-$(function() {
-  dhis2.contextmenu.makeContextMenu({
-    menuId: 'contextMenu',
-    menuItemActiveClass: 'contextMenuItemActive'
-  });
-});
-
-function showProgramsForValidationCriteriaForm( context ) {
-  location.href = 'showProgramsForValidationCriteriaForm.action?criteriaId=' + context.id;
-}
-
-function showUpdateValidationCriteriaForm( context ) {
-  location.href = 'showUpdateValidationCriteriaForm.action?id=' + context.id;
-}
-
 // -----------------------------------------------------------------------------
 // Remove Criteria
 // -----------------------------------------------------------------------------
 
-function removeCriteria( context ) {
-  removeItem(context.id, context.name, i18n_confirm_delete, 'removeValidationCriteria.action');
+function removeCriteria( id, name )
+{
+	removeItem( id, name, i18n_confirm_delete, 'removeValidationCriteria.action' );
 }
 
 // -----------------------------------------------------------------------------
 // View details
 // -----------------------------------------------------------------------------
 
-function showValidationCriteriaDetails( context ) {
-  jQuery.getJSON('getValidationCriteria.action', { id: context.id }, function( json ) {
-    setInnerHTML('nameField', json.validationCriteria.name);
-    setInnerHTML('descriptionField', json.validationCriteria.description);
-
-    var property = json.validationCriteria.property;
-    var operator = json.validationCriteria.operator;
-    var value = json.validationCriteria.value;
-
-    // get operator
-    if( operator == 0 ) {
-      operator = '=';
-    } else if( operator == -1 ) {
-      operator = '<';
-    } else {
-      operator = '>';
-    }
-
-    setInnerHTML('criteriaField', property + " " + operator + " " + value);
-    showDetails();
-  });
+function showValidationCriteriaDetails( criteriaId )
+{
+	jQuery.getJSON( 'getValidationCriteria.action', { id: criteriaId }, function ( json ) {
+		setInnerHTML( 'nameField', json.validationCriteria.name );
+		setInnerHTML( 'descriptionField', json.validationCriteria.description );
+		
+		var property = json.validationCriteria.property;
+		var operator = json.validationCriteria.operator;
+		var	value = json.validationCriteria.value;
+		
+		// get operator
+		if(operator == 0 ){
+			operator = '=';
+		}else if(operator == -1 ){
+			operator = '<';
+		}else {
+			operator = '>';
+		}
+		
+		setInnerHTML('criteriaField', property + " " + operator + " " + value );
+		showDetails();
+	});
 }
 
 // ----------------------------------------------------------------------------------------
 // Show div to Add or Update Validation-Criteria
 // ----------------------------------------------------------------------------------------
-function showDivValue() {
-
-  var propertyName = byId('property').value;
-  hideDiv();
-  if( propertyName != '' ) {
-    hideById('emptyCriteria');
-
-    var div = byId(propertyName + 'Div');
-    div.style.display = 'block';
-    if( propertyName == 'gender' ||
-      propertyName == 'dobType' ) {
-
-      byId('operator').selectedIndex = 1;
-      disable('operator');
-    }
-    else {
-      enable('operator');
-    }
-  }
-}
-
-function hideDiv() {
-  hideById('genderDiv');
-  hideById('integerValueOfAgeDiv');
-  hideById('birthDateDiv');
-  hideById('dobTypeDiv');
-  showById('emptyCriteria');
-}
-
-function fillValue( value ) {
-  byId('value').value = value;
-}
+function showDivValue(){
+	
+	var propertyName = byId('property').value;
+	hideDiv();
+	if(propertyName != '')
+	{
+		hideById('emptyCriteria');
+		
+		var div = byId(propertyName + 'Div');
+		div.style.display = 'block';
+		if( propertyName == 'gender' || 
+			propertyName == 'dobType' ){
+				
+			byId('operator').selectedIndex = 1;
+			disable('operator');
+		}
+		else{
+			enable('operator');
+		}
+	 }
+}
+
+function hideDiv()
+{
+	hideById('genderDiv');
+	hideById('integerValueOfAgeDiv');
+	hideById('birthDateDiv');
+	hideById('dobTypeDiv');	
+	showById('emptyCriteria');
+}
+
+function fillValue( value ){
+	byId('value').value = value;
+}
\ No newline at end of file

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/viewPatientRegistationForm.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/viewPatientRegistationForm.js	2013-07-09 06:45:49 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/javascript/viewPatientRegistationForm.js	2013-12-16 04:39:49 +0000
@@ -371,17 +371,7 @@
 	
 	var htmlCode = "<input " + id + " value=\"[" + value + "]\" title=\"" + value + "\" ";
 	
-	var suggestedValue = getFieldValue('genderSelector');
-	if( jQuery('#genderSelector').is(":visible") )
-	{
-		htmlCode += " suggested='" + suggestedValue + "' ";
-	}
-	suggestedValue = getFieldValue('dobTypeSelector');
-	if( jQuery('#dobTypeSelector').is(":visible") )
-	{
-		htmlCode += " suggested='" + suggestedValue + "' ";
-	}
-	suggestedValue = getFieldValue('suggestedField');
+	var suggestedValue = getFieldValue('suggestedField');
 	if( jQuery('#suggestedField').is(":visible") )
 	{
 		htmlCode += " suggested='" + suggestedValue + "' ";
@@ -505,19 +495,3 @@
 		window.location.href = 'delRegistrationEntryFormAction.action?id=' + getFieldValue('id');
 	}
 }
-
-function suggestionSelectorToggle()
-{
-	hideById('genderSelector');
-	hideById('dobTypeSelector');
-	showById('suggestedField');
-	if( getFieldValue('fixedAttrSelector')=='gender' ){
-		hideById('suggestedField');
-		showById('genderSelector');
-	}
-	else if(getFieldValue('fixedAttrSelector')=='dobType'){
-		hideById('suggestedField');
-		showById('dobTypeSelector');
-	}
-}
-

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttribute.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttribute.vm	2013-12-05 11:31:19 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttribute.vm	2013-12-16 04:39:49 +0000
@@ -1,15 +1,6 @@
 
 <h3>$i18n.getString( "patient_attribute_management" ) #openHelp( "patient_attribute" )</h3>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdatePatientAttributeForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removePatientAttribute"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showPatientAttributeDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
   <tr>
     <td style="vertical-align:top">
@@ -24,33 +15,43 @@
 			
 		<table class="listTable">
 			<col>          
+			<col width="120">          		  
 			<thead>
 			  <tr>
 				<th>$i18n.getString( "name" )</th>
+				<th colspan="3">$i18n.getString( "operations" )</th>
 			  </tr>
 			</thead>
 			<tbody id="list">
-          #foreach( $patientAttribute in $patientAttributes )
-            <tr id="tr${patientAttribute.id}" data-id="$!patientAttribute.id" data-uid="$!patientAttribute.uid" data-type="PatientAttribute" data-name="$encoder.htmlEncode( $!patientAttribute.displayName )"
-                data-can-manage="$security.canManage( $patientAttribute )"
-                data-can-update="$security.canUpdate( $patientAttribute )"
-                data-can-delete="$security.canDelete( $patientAttribute )">
-                <td>$encoder.htmlEncode( $!patientAttribute.displayName )</td>
-            </tr>
-          #end
-      </tbody>
-      </table>
+            #foreach( $patientAttribute in $patientAttributes )
+              <tr id="tr${patientAttribute.id}">
+              
+                <td onclick="showPatientAttributeDetails( $patientAttribute.id )">$encoder.htmlEncode( $patientAttribute.displayName )</td>                
+                
+                <td style="text-align:center">
+                  <a href="showUpdatePatientAttributeForm.action?id=$patientAttribute.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+				  <a href="javascript:translate( 'PatientAttribute', '$patientAttribute.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+				  <a href="javascript:removePatientAttribute( '$patientAttribute.id', '$encoder.jsEncode( $patientAttribute.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+                  <a href="javascript:showPatientAttributeDetails( $patientAttribute.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+                </td>
+                
+              </tr>
+			#end
+
+          </tbody>
+
+        </table>
     </td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
-          <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
-				</div>
-        <p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>
-        <p><label class="bold">$i18n.getString( "description" ):</label><br><span id="descriptionField"></span></p>
-        <p><label class="bold">$i18n.getString( "mandatory" ):</label><br><span id="mandatoryField"></span></p>
-        <p><label class="bold">$i18n.getString( "inherit" ):</label><br><span id="inheritField"></span></p>
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
+					<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
+				</div>				
+                <p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>
+                <p><label class="bold">$i18n.getString( "description" ):</label><br><span id="descriptionField"></span></p>
+                <p><label class="bold">$i18n.getString( "mandatory" ):</label><br><span id="mandatoryField"></span></p>
+                <p><label class="bold">$i18n.getString( "inherit" ):</label><br><span id="inheritField"></span></p>
 				<p><label class="bold">$i18n.getString( "value_type" ):</label><br><span id="valueTypeField"></span></p>
 			</div>
 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttributeGroup.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttributeGroup.vm	2013-12-05 11:31:19 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientAttributeGroup.vm	2013-12-16 04:39:49 +0000
@@ -1,59 +1,56 @@
+
 <h3>$i18n.getString( "patient_attribute_group_management" ) #openHelp( "patient_attribute_group" )</h3>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdatePatientAttributeGroupForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removePatientAttributeGroup"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showPatientAttributeGroupDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
   <tr>
     <td style="vertical-align:top">
-		<table width="100%">
-			<tr>
-				<td>
-					$i18n.getString( "filter_by_name" ): <input type="text" onkeyup="filterValues( this.value , 1)" style="width:250px"/>
-				</td>
-				<td colspan="3" style="text-align:right">
-          <input type="button" value="$i18n.getString( 'add_new' )" onclick="window.location.href='showAddPatientAttributeGroupForm.action'" style="width:75px">
-          <input type="button" value="$i18n.getString( 'sort' )" onclick="window.location.href='showSortPatientAttributeGroup.action'" style="width:75px"><br>
-        </td>
-			</tr>
-		</table>
-
-    <table class="listTable">
-      <col>
-      <thead>
-        <tr>
-          <th>$i18n.getString( "name" )</th>
-        </tr>
-      </thead>
-      <tbody id="list">
-        #foreach( $patientAttributeGroup in $patientAttributeGroups )
-          <tr id="tr${patientAttributeGroup.id}" data-id="$!patientAttributeGroup.id" data-uid="$!patientAttributeGroup.uid" data-type="PatientAttributeGroup" data-name="$encoder.htmlEncode( $!patientAttributeGroup.displayName )"
-              data-can-manage="$security.canManage( $patientAttributeGroup )"
-              data-can-update="$security.canUpdate( $patientAttributeGroup )"
-              data-can-delete="$security.canDelete( $patientAttributeGroup )">
-              <td>$encoder.htmlEncode( $!patientAttributeGroup.displayName )</td>
+    
+      <table class="listTable">
+          <col>          
+          <col width="120">       		  
+		  <tr>
+		  	<td></td>
+			<td style="text-align:right">
+				<input type="button" value="$i18n.getString( 'add_new' )" onclick="window.location.href='showAddPatientAttributeGroupForm.action'" style="width:75px">
+				<input type="button" value="$i18n.getString( 'sort' )" onclick="window.location.href='showSortPatientAttributeGroup.action'" style="width:75px"><br>
+			</td>
+		  </tr>
+          <tr>
+            <th>$i18n.getString( "name" )</th>
+            <th>$i18n.getString( "operations" )</th>
           </tr>
-        #end
-      </tbody>
-      </table>
-
+
+          <tbody id="list">
+            #foreach( $patientAttributeGroup in $patientAttributeGroups )
+              <tr id="tr${patientAttributeGroup.id}">
+              
+                <td onclick="showPatientAttributeGroupDetails( $patientAttributeGroup.id )">$encoder.htmlEncode( $patientAttributeGroup.displayName )</td>                
+                
+                <td>
+                  <a href="showUpdatePatientAttributeGroupForm.action?id=$patientAttributeGroup.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+                  <a href="javascript:translate( 'PatientAttributeGroup', '$patientAttributeGroup.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+			      <a href="javascript:removePatientAttributeGroup( '$patientAttributeGroup.id', '$encoder.jsEncode( $patientAttributeGroup.name )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+                  <a href="javascript:showPatientAttributeGroupDetails( $patientAttributeGroup.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+                </td>
+                
+              </tr>
+            #end
+
+          </tbody>
+
+        </table>
     </td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
-          <a href="javascript:hideDetails()" title="$i18n.getString( "hide_details" )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
-        </div>
-        <p><label class="bold">$i18n.getString( "name" )</label><br><span id="nameField"></span></p>
-        <p><label class="bold">$i18n.getString( "description" ):</label><br><span id="descriptionField"></span></p>
-        <p><label class="bold">$i18n.getString( "number_of_attribute" ):</label><br><span id="noAttributeField"></span></p>
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
+					<a href="javascript:hideDetails()" title="$i18n.getString( "hide_details" )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
+				</div>				
+                <p><label class="bold">$i18n.getString( "name" )</label><br><span id="nameField"></span></p>
+                <p><label class="bold">$i18n.getString( "description" ):</label><br><span id="descriptionField"></span></p>
+                <p><label class="bold">$i18n.getString( "number_of_attribute" ):</label><br><span id="noAttributeField"></span></p>
 			</div>
+
 		</td>
   </tr>
 </table>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientIdentifierType.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientIdentifierType.vm	2013-12-05 12:21:59 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientIdentifierType.vm	2013-12-16 04:39:49 +0000
@@ -1,50 +1,46 @@
 
 <h3>$i18n.getString( "patient_identifier_type_management" ) #openHelp( "patient_identifier_type" )</h3>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdatePatientIdentifierTypeForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removePatientIdentifierType"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showPatientIdentifierTypeDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
   <tr>
     <td style="vertical-align:top">
-    <table width="100%">
-      <tr>
-        <td>
-          $i18n.getString( "filter_by_name" ): <input type="text" onkeyup="filterValues( this.value , 1)" style="width:250px"/>
-        </td>
-        <td colspan="3" style="text-align:right">
-          <input type="button" value="$i18n.getString( "add_new" )" onclick="window.location.href='showAddPatientIdentifierTypeForm.action'" style="width:70px">
-        </td>
-      </tr>
-    </table>
-
-    <table class="listTable">
-      <tr>
-        <th>$i18n.getString( "name" )</th>
-      </tr>
-
-      <tbody id="list">
-      #foreach( $identifierType in $identifierTypes )
-        <tr id="tr${identifierType.id}" data-id="$!identifierType.id" data-uid="$!identifierType.uid" data-type="PatientIdentifierType" data-name="$encoder.htmlEncode( $!identifierType.displayName )"
-            data-can-manage="$security.canManage( $identifierType )"
-            data-can-update="$security.canUpdate( $identifierType )"
-            data-can-delete="$security.canDelete( $identifierType )">
-            <td>$encoder.htmlEncode( $!identifierType.displayName )</td>
-        </tr>
-      #end
-      </tbody>
-    </table>
+    
+      <table class="listTable">
+          <col>          
+          <col width="120">
+		  <tr>
+		  	<td></td>
+			<td colspan="4" style="text-align:right"><input type="button" value="$i18n.getString( "add_new" )" onclick="window.location.href='showAddPatientIdentifierTypeForm.action'" style="width:70px"></td>
+		  </tr>
+          <tr>            
+            <th>$i18n.getString( "name" )</th>
+            <th colspan="4">$i18n.getString( "operations" )</th>
+          </tr>
+
+          <tbody id="list">
+            #foreach( $identifierType in $identifierTypes )
+              <tr id="tr${identifierType.id}">
+              
+                <td onclick="showPatientIdentifierTypeDetails( $identifierType.id )">$encoder.htmlEncode( $identifierType.displayName )</td>                
+                
+                <td style="text-align:center"#alternate( $mark )>
+                  <a href="showUpdatePatientIdentifierTypeForm.action?id=$identifierType.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+                  <a href="javascript:translate( 'PatientIdentifierType', '$identifierType.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+				  <a href="javascript:removePatientIdentifierType( '$identifierType.id', '$encoder.jsEncode( $identifierType.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+                  <a href="javascript:showPatientIdentifierTypeDetails( $identifierType.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+                </td>
+                
+              </tr>
+            #end
+
+          </tbody>
+
+        </table>
     </td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>				
 				<p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientRegistrationForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientRegistrationForm.vm	2013-12-06 11:34:43 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/patientRegistrationForm.vm	2013-12-16 04:39:49 +0000
@@ -1,9 +1,3 @@
-<style>
-  .listTable > tbody > tr > td {
-    padding: 8px 0 8px 5px;
-  }
-</style>
-
 <h3>$i18n.getString( "patient_registration_form_management" ) #openHelp( "person_registration_form" )</h3>
 
 <table class='mainPageTable'>
@@ -36,7 +30,7 @@
 							$i18n.getString('no_program')
 							#set($hasCommonForm = 'true')
 						#end	
-					</td>
+					</td>					
 					<td style="text-align:center">
 					  <a href="javascript:updateNewForm($registrationForm.id, '$!registrationForm.program.id')" title="$i18n.getString( 'edit' )"><img src="../images/edit_layout.png" alt="$i18n.getString( 'design_data_entry_form' )"></a>
 					  <a href="javascript:removeRegistrationForm( '$!registrationForm.program.id', '$!encoder.jsEncode( $registrationForm.program.name )')" title="$i18n.getString( "remove" )"><img id='active_$registrationForm.program.id' src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programIndicator.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programIndicator.vm	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programIndicator.vm	2013-12-16 04:39:49 +0000
@@ -1,14 +1,5 @@
 <h3>$i18n.getString( "program_indicator_management_form" )</h3>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdateProgramIndicator"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removeIndicator"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showProgramIndicatorDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <h4>$program.displayName</h4>
 
 <input type='hidden' id='id' name='id' value='$program.id'>
@@ -25,31 +16,38 @@
 			<table class="listTable" id="listTable">
 				<col>
 				<col>     
+				<col width="180">	 
 				<thead>
 					<tr>            
 						<th>$i18n.getString( "name" )</th>
 						<th>$i18n.getString( "description" )</th>
+						<th>$i18n.getString( "operations" )</th>
 					</tr>
 				</thead>
 		  
 				<tbody id="list">
 					#set( $mark = false )
 					#foreach( $programIndicator in $programIndicators )
-						<tr id="tr${programIndicator.id}" data-id="$!programIndicator.id" data-uid="$!programIndicator.uid" data-type="ProgramIndicator" data-name="$encoder.htmlEncode( $!programIndicator.displayName )"
-						    data-can-manage="$security.canManage( $programIndicator )"
-						    data-can-update="$security.canUpdate( $programIndicator )"
-						    data-can-delete="$security.canDelete( $programIndicator )">
-						    <td>$encoder.htmlEncode( $!programIndicator.displayName )</td>
-						    <td>$encoder.htmlEncode( $!programIndicator.description )</td>
+						<tr id="tr${programIndicator.id}" #alternate( $mark )>			  
+							<td onclick="showProgramIndicatorDetails( $programIndicator.id )">$encoder.htmlEncode( $programIndicator.displayName )</td>                
+							<td onclick="showProgramIndicatorDetails( $programIndicator.id )">$encoder.htmlEncode( $programIndicator.description )</td>
+							<td style="text-align:center"#alternate( $mark )>
+							  <a href="showUpdateProgramIndicator.action?id=$programIndicator.id" title="$i18n.getString( "edit" )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+							  <a href="javascript:translate( 'ProgramIndicator', '$programIndicator.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+							  <a href="javascript:removeItem( '$programIndicator.id', '$encoder.jsEncode( $programIndicator.displayName )', i18n_confirm_delete , 'removeProgramIndicator.action' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+							  <a href="javascript:showProgramIndicatorDetails( $programIndicator.id )" title="$i18n.getString( "show_details" )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+							</td>
 						</tr>
+						#set( $mark = !$mark )
 					#end
 				</tbody>
 			</table>
 		</td>
 		
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>				
 				<p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programList.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programList.vm	2013-12-06 08:54:56 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programList.vm	2013-12-16 04:39:49 +0000
@@ -2,56 +2,86 @@
 
 <h3>$i18n.getString( "program_management" ) #openHelp( "program" )</h3>
 
-<div id="contextMenu" class="contextMenu" style="width: 250px;">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li data-enabled="canUpdate"><a data-target-fn="defineProgramAssociationsForm"><i class="fa fa-plus"></i>&nbsp;&nbsp;$i18n.getString( "assign_program_to_orgunits" )</a></li>
-    <li data-enabled="canUpdate"><a data-target-fn="showProgramUserRoleForm"><i class="fa fa-plus"></i>&nbsp;&nbsp;$i18n.getString( "assign_program_to_userroles" )</a></li>
-    <li data-enabled="canUpdate"><a data-target-fn="showUpdateProgramForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li data-enabled="canUpdate"><a data-target-fn="programStageManagement"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "view_program_stages" )</a></li>
-    <li data-enabled="canUpdate"><a data-target-fn="programValidationManagement"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "program_validation_rule_management" )</a></li>
-    <li data-enabled="canManageForm"><a data-target-fn="programIndicatorManagementForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "program_indicator_management_form" )</a></li>
-    <li data-enabled="canManage"><a data-target-fn="showSharingDialogWithContext"><i class="fa fa-share"></i>&nbsp;&nbsp;$i18n.getString( "sharing_settings" )</a></li>
-    <li data-enabled="canUpdate"><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li data-enabled="canDelete"><a data-target-fn="removeProgram"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showProgramDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
   <tr>
-	  <td align="right">
-      <input type="button" value="$i18n.getString( "add_new" )" onclick="window.location.href='showAddProgramForm.action'" style="width:70px">
-    </td>
+	<td align="right"><input type="button" value="$i18n.getString( "add_new" )" onclick="window.location.href='showAddProgramForm.action'" style="width:70px"></td>
   </tr>
-
   <tr>
     <td style="vertical-align:top">
 		
 		<table class="listTable" id="listTable">
-      <col>
-			<thead>
+			  <col>          
+			  <col width="300">
+			<thead>			  
 			  <tr>            
 				<th>$i18n.getString( "name" )</th>
+				<th class="{sorter: false}">$i18n.getString( "operations" )</th>
 			  </tr>
 			</thead>
-      <tbody id="list">
-      #foreach( $program in $programs )
-      <tr id="tr${program.id}" data-id="$!program.id" data-uid="$!program.uid" data-type="Program" data-name="$encoder.htmlEncode( $!program.displayName )"
-          data-can-manage="$security.canManage( $program )"
-          data-can-update="$security.canUpdate( $program )"
-          data-can-delete="$security.canDelete( $program )"
-          data-can-manage-form="#if( $auth.hasAccess( "dhis-web-maintenance-patient", "programIndicator" ) && $program.type !='3' )true#{else}false#end">
-          <td>$encoder.htmlEncode( $!program.displayName )</td>
-      </tr>
-      #end
+			  <tbody id="list">
+				#foreach( $program in $programs )
+				  <tr id="tr${program.id}">
+				  
+					<td onclick="showProgramDetails( $program.id )">$encoder.htmlEncode( $program.displayName )</td>                
+					
+					<td style="text-align:center">
+					  <!-- assign orgunit -->
+					  #if( $security.canUpdate( $program ) )
+					  <a href="defineProgramAssociationsForm.action?id=$program.id" title="$i18n.getString( 'assign_program_to_orgunits' )"><img src="../images/assign.png" alt="$i18n.getString( 'assign_program_to_orgunits' )"></a>					  
+					  #else
+					  <img src="../images/assign-denied.png">
+					  #end
+					  
+					  #if( $security.canUpdate( $program ) )
+					   <!-- assign userrole -->
+					  <a href="showProgramUserroleForm.action?id=$program.id" title="$i18n.getString( 'assign_program_to_userroles' )"><img src="images/userrole.png" alt="$i18n.getString( 'assign_program_to_userroles' )"></a>
+					  <a href="showUpdateProgramForm.action?id=$program.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+					  <a href="programStage.action?id=$program.id" title="$i18n.getString( 'view_program_stages' )"><img src="../images/add_section.png" alt="$i18n.getString( 'view_stage_management' )"></a>
+					  <a href="programValidation.action?programId=$program.id" title="$i18n.getString( 'program_validation_rule_management' )"><img src="../images/assign_b.png" alt="$i18n.getString( 'program_validation_rule_management' )"></a>					  
+					  #else
+					  <img src="images/userrole-defined.png">
+					  <img src="../images/edit-denied.png">
+					  <img src="images/programstage-denied.png">
+					  <img src="../images/assign_b-denied.png">
+					  #end
+					  
+					  #if( $auth.hasAccess( "dhis-web-maintenance-patient", "programIndicator" ) && $program.type !='3' )
+						<a href="programIndicator.action?programId=$program.id" title="$i18n.getString( 'program_indicator_management_form' )"><img src="images/indicator.png" ></a>
+					  #else
+						<img src="images/indicator_denied.png">
+					  #end
+					  
+					  #if ( $security.canManage( $program ) )
+					  <a href="javascript:showSharingDialog('program', '$program.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( $program ) )
+					  <a href="javascript:translate( 'Program', '$program.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+					  #else
+						<img src="../images/i18n-denied.png">
+					  #end
+					  
+					  #if( $security.canDelete( $program ) )
+					  <a href="javascript:removeProgram( '$program.id', '$encoder.jsEncode( $program.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:showProgramDetails( $program.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+					</td>
+					
+				  </tr>
+				#end
 
-      </tbody>
-      </table>
+			  </tbody>
+        </table>
 		</td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( "hide_details" )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>				
 				<p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>
@@ -83,6 +113,6 @@
 	var i18n_yes = '$encoder.jsEscape( $i18n.getString( "yes" ) , "'" )';
 	var i18n_no = '$encoder.jsEscape( $i18n.getString( "no" ), "'")';	
 	var i18n_multiple_events_with_registration = '$encoder.jsEscape( $i18n.getString( "multiple_events_with_registration" ) , "'")';
-  var i18n_single_event_with_registration = '$encoder.jsEscape( $i18n.getString( "single_event_with_registration" ) , "'")';
-  var i18n_single_event_without_registration = '$encoder.jsEscape( $i18n.getString( "single_event_without_registration" ) , "'")';
+    var i18n_single_event_with_registration = '$encoder.jsEscape( $i18n.getString( "single_event_with_registration" ) , "'")';
+    var i18n_single_event_without_registration = '$encoder.jsEscape( $i18n.getString( "single_event_without_registration" ) , "'")';
 </script>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programStage.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programStage.vm	2013-12-06 08:54:56 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programStage.vm	2013-12-16 04:39:49 +0000
@@ -2,17 +2,6 @@
 
 <h4>$program.displayName</h4>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdateProgramStageForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li data-enabled="canRemove"><a data-target-fn="removeProgramStage"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showProgramStageDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-    <li><a data-target-fn="programStageSectionList"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "section_management" )</a></li>
-    <li><a data-target-fn="viewDataEntryForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "design_data_entry_form" )</a></li>
-  </ul>
-</div>
-
 <input type='hidden' id='id' name='id' value='$program.id'>
 
 <table class="mainPageTable">
@@ -30,31 +19,43 @@
 			<table class="listTable" id="listTable">
 				<col>
 				<col>     
+				<col width="180">	 
 				<thead>
-					<tr>
+					<tr>            
 						<th>$i18n.getString( "name" )</th>
 						<th>$i18n.getString( "description" )</th>
+						<th>$i18n.getString( "operations" )</th>
 					</tr>
 				</thead>
 		  
 				<tbody id="list">
+					#set( $mark = false )
 					#foreach( $association in $associations )
-						<tr id="tr${association.id}" data-id="$!association.id" data-uid="$!association.uid" data-type="ProgramStage" data-name="$encoder.htmlEncode( $!association.displayName )"
-						    data-can-manage="$security.canManage( $association )"
-						    data-can-update="$security.canUpdate( $association )"
-						    data-can-delete="$security.canDelete( $association )"
-						    data-can-remove="#if( $program.type=='1' )true#{else}false#end">
-						    <td>$encoder.htmlEncode( $!association.displayName )</td>
-						    <td>$encoder.htmlEncode( $!association.description )</td>
+						<tr id="tr${association.id}" #alternate( $mark )>			  
+							<td onclick="showProgramStageDetails( $association.id )">$encoder.htmlEncode( $association.displayName )</td>                
+							<td onclick="showProgramStageDetails( $association.id )">$encoder.htmlEncode( $association.description )</td>
+							
+							<td style="text-align:center"#alternate( $mark )>
+							  <a href="showUpdateProgramStageForm.action?id=$association.id" title="$i18n.getString( "edit" )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+							  <a href="javascript:translate( 'ProgramStage', '$association.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
+							  #if( $program.type=='1' )
+								<a href="javascript:removeItem( '$association.id', '$encoder.jsEncode( $association.name )', i18n_confirm_delete , 'removeProgramStage.action' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+							  #end
+							  <a href="javascript:showProgramStageDetails( $association.id )" title="$i18n.getString( "show_details" )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+							  <a href="programStageSectionList.action?id=$association.id" title="$i18n.getString( 'section_management' )"><img src="images/sections.png" alt="$i18n.getString( 'section_management' )"></a>
+							  <a href="viewDataEntryForm.action?programStageId=$association.id" title="$i18n.getString( "design_data_entry_form" )"><img src="../images/edit_layout.png" alt="$i18n.getString( 'design_data_entry_form' )"></a>
+							</td>
 						</tr>
+						#set( $mark = !$mark )
 					#end
 				</tbody>
 			</table>
 		</td>
 		
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>				
 				<p><label class="bold">$i18n.getString( "name" ):</label><br><span id="nameField"></span></p>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programValidationList.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programValidationList.vm	2013-12-06 11:18:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/programValidationList.vm	2013-12-16 04:39:49 +0000
@@ -2,14 +2,6 @@
 
 <h4>$program.displayName</h4>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdateSingleProgramValidationForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="removeProgramValidation"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showProgramValidationDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
 	<tr>
 		<td style="vertical-align:top">
@@ -28,30 +20,37 @@
 				</td>
 			</tr>
 		</table>
-
 		<table class="listTable">
-      <col>
-      <thead>
+			  <col>          
+			  <col width="100"> 
 			  <tr>
+				<td></td>
+				<td></td>
+			  </tr>
+			  <tr>            
 				<th>$i18n.getString( "name" )</th>
+				<th colspan='2'>$i18n.getString( "operations" )</th>
 			  </tr>
-      </thead>
-      <tbody id="list">
-      #foreach( $validation in $validations )
-        <tr id="tr${validation.id}" data-id="$!validation.id" data-uid="$!validation.uid" data-type="ProgramValidation" data-name="$encoder.htmlEncode( $!validation.displayName )"
-            data-can-manage="$security.canManage( $validation )"
-            data-can-update="$security.canUpdate( $validation )"
-            data-can-delete="$security.canDelete( $validation )">
-          <td>$encoder.htmlEncode( $!validation.displayName )</td>
-        </tr>
-      #end
-      </tbody>
-    </table>
+
+			  <tbody id="list">
+				#foreach( $validation in $validations )
+				  <tr id="tr${validation.id}">
+					
+					<td onclick="showProgramValidationDetails( $validation.id )">$validation.name</td>
+					<td>
+						<a href="showUpdateSingleProgramValidationForm.action?validationId=$validation.id&id=$program.id" title="$i18n.getString( "edit" )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+						<a href="javascript:removeProgramValidation( '$validation.id', '$encoder.jsEncode( $validation.description )' )" title="$i18n.getString( "remove" )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+					  <a href="javascript:showProgramValidationDetails( $validation.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+					</td>
+				  </tr>
+				#end
+			  </tbody>
+			</table>
 		</td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>			
 				<p><label class="bold">$i18n.getString( "name" ):</label><br><span id="descriptionField"></span></p>
@@ -61,6 +60,7 @@
 				<p><label class="bold">$i18n.getString( "right_side_description" ):</label><br><span id="rightSideDescriptionField"></span></p>
 				<p><label class="bold">$i18n.getString( "right_side_expression" ):</label><br><span id="rightSideExpressionField"></span></p>
 			</div>
+
 		</td>
   </tr>
 </table>
@@ -68,13 +68,13 @@
 <script type="text/javascript">
 	var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_patient_attribute" ) , "'" )';
 	var i18n_none = '$encoder.jsEscape( $i18n.getString( "none" ), "'")';	
-  var i18n_yes = '$encoder.jsEscape( $i18n.getString( "yes" ) , "'")';
-  var i18n_no = '$encoder.jsEscape( $i18n.getString( "no" ) , "'")';
-  var i18n_number = '$encoder.jsEscape( $i18n.getString( "number" ) , "'")';
-  var i18n_yes_no = '$encoder.jsEscape( $i18n.getString( "yes_no" ) , "'")';
-  var i18n_text = '$encoder.jsEscape( $i18n.getString( "text" ) , "'")';
-  var i18n_date = '$encoder.jsEscape( $i18n.getString( "date" ) , "'")';
-  var i18n_combo = '$encoder.jsEscape( $i18n.getString( "combo" ) , "'")';
+    var i18n_yes = '$encoder.jsEscape( $i18n.getString( "yes" ) , "'")';
+    var i18n_no = '$encoder.jsEscape( $i18n.getString( "no" ) , "'")';
+    var i18n_number = '$encoder.jsEscape( $i18n.getString( "number" ) , "'")';
+    var i18n_yes_no = '$encoder.jsEscape( $i18n.getString( "yes_no" ) , "'")';
+    var i18n_text = '$encoder.jsEscape( $i18n.getString( "text" ) , "'")';
+    var i18n_date = '$encoder.jsEscape( $i18n.getString( "date" ) , "'")';
+    var i18n_combo = '$encoder.jsEscape( $i18n.getString( "combo" ) , "'")';
 	var i18n_processing = '$encoder.jsEscape( $i18n.getString( "processing" ) , "'")';
 	var i18n_done = '$encoder.jsEscape( $i18n.getString( "done" ) , "'")';
 	var i18n_left_side = '$encoder.jsEscape( $i18n.getString( "left_side" ) , "'")';

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/relationshipType.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/relationshipType.vm	2013-12-05 12:21:59 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/relationshipType.vm	2013-12-16 04:39:49 +0000
@@ -1,57 +1,56 @@
 
 <h3>$i18n.getString( "relationship_type_management" ) #openHelp( "relationship_type" )</h3>
 
-<div id="contextMenu" class="contextMenu">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showUpdateRelationshipTypeForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removeRelationshipType"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showRelationshipTypeDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
   <tr>
     <td style="vertical-align:top">
-    <table width="100%">
-      <tr>
-        <td>
-          $i18n.getString( "filter_by_name" ): <input type="text" onkeyup="filterValues( this.value , 1)" style="width:250px"/>
-        </td>
-        <td colspan="3" style="text-align:right">
-          <input type="button" value="$i18n.getString( "add_new" )" onclick="window.location.href='showAddRelationshipTypeForm.action'" style="width:70px">
-        </td>
-      </tr>
-    </table>
-
-      <table class="listTable">
-        <tr>
-          <th>$i18n.getString( "relationship_type" )</th>
-          <th>$i18n.getString( "name" )</th>
-        </tr>
-        <tbody id="list">
-        #foreach( $relationshipType in $relationshipTypes )
-          <tr id="tr${relationshipType.id}" data-id="$!relationshipType.id" data-uid="$!relationshipType.uid" data-type="RelationshipType" data-name="$encoder.htmlEncode( $relationshipType.aIsToB )/$encoder.htmlEncode( $relationshipType.bIsToA )"
-              data-can-manage="$security.canManage( $relationshipType )"
-              data-can-update="$security.canUpdate( $relationshipType )"
-              data-can-delete="$security.canDelete( $relationshipType )">
-              <td>$encoder.htmlEncode( $relationshipType.aIsToB )/$encoder.htmlEncode( $relationshipType.bIsToA )</td>
-              <td>$encoder.htmlEncode( $!relationshipType.displayName )</td>
+    
+      <table class="listTable">          
+          <col>
+		  <col>
+          <col width="120">
+		  <tr>
+		  	<td></td>
+		  	<td></td>
+			<td colspan="3" style="text-align:right"><input type="button" value="$i18n.getString( "add_new" )" onclick="window.location.href='showAddRelationshipTypeForm.action'" style="width:70px"></td>
+		  </tr>
+          <tr>
+            <th>$i18n.getString( "relationship_type" )</th>            
+            <th>$i18n.getString( "name" )</th>
+            <th>$i18n.getString( "operations" )</th>
           </tr>
-        #end
-        </tbody>
+
+          <tbody id="list">
+            #foreach( $relationshipType in $relationshipTypes )
+              <tr id="tr${relationshipType.id}">
+              
+                <td onclick="showRelationshipTypeDetails( $relationshipType.id )">$encoder.htmlEncode( $relationshipType.aIsToB )/$encoder.htmlEncode( $relationshipType.bIsToA )</td>
+                
+                <td onclick="showRelationshipTypeDetails( $relationshipType.id )">$encoder.htmlEncode( $relationshipType.displayName )</td>               
+                
+                <td style="text-align:center"#alternate( $mark )>
+                  <a href="showUpdateRelationshipTypeForm.action?id=$relationshipType.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+				  <a href="javascript:translate( 'RelationshipType', '$relationshipType.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>  
+				  <a href="javascript:removeRelationshipType( '$relationshipType.id', '$encoder.jsEncode( $relationshipType.aIsToB )', '$encoder.jsEncode( $relationshipType.bIsToA )'  )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+                  <a href="javascript:showRelationshipTypeDetails( $relationshipType.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+                </td>           
+                
+              </tr>
+            #end
+
+          </tbody>
+
         </table>
     </td>
-
     <td id="detailsData">
-        <div id="detailsArea">
-          <div id="hideDetailsArea">
-            <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
-          </div>
-          <p><label class="bold">$i18n.getString( "a_is_to_b" ):</label><br><span id="aIsToBField"></span></p>
-          <p><label class="bold">$i18n.getString( "b_is_to_a" ):</label><br><span id="bIsToAField"></span></p>
-          <p><label class="bold">$i18n.getString( "description" ):</label><br><span id="descriptionField"></span></p>
-      </div>
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
+                <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
+            </div>              
+            <p><label class="bold">$i18n.getString( "a_is_to_b" ):</label><br><span id="aIsToBField"></span></p>
+            <p><label class="bold">$i18n.getString( "b_is_to_a" ):</label><br><span id="bIsToAField"></span></p>
+            <p><label class="bold">$i18n.getString( "description" ):</label><br><span id="descriptionField"></span></p>                            
+        </div>
     </td>
   </tr>
 </table>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm	2013-12-16 04:39:49 +0000
@@ -9,7 +9,7 @@
 
 <h3>$i18n.getString( "edit_aggregation_query_builder" )</h3>
 
-<form id="updateCaseAggregationForm" action="updateCaseAggregation.action" method="post" onsubmit='setFieldValue("dataSetId",getFieldValue("dataSets") );' class="inputForm">
+<form id="updateCaseAggregationForm" action="updateCaseAggregation.action" method="post" onsubmit='setFieldValue("dataSetId",getFieldValue("dataSets") );' >
 
 <input type='hidden' id='id' name='id' value='$caseAggregation.id'>
 <input type='hidden' id='dataSetId' name='dataSetId' value='$dataSet.id'>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteForm.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h3>$i18n.getString( "edit_patient_attribute" )</h3>
 
-<form id="updatePatientAttributeForm" name="updatePatientAttributeForm" action="updatePatientAttribute.action" method="post" class="inputForm">
+<form id="updatePatientAttributeForm" name="updatePatientAttributeForm" action="updatePatientAttribute.action" method="post" >
 
 <div style="display:inline">
   <input type="hidden" id="id" name="id" value="$patientAttribute.id">

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteGroupForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientAttibuteGroupForm.vm	2013-12-16 04:39:49 +0000
@@ -1,7 +1,7 @@
 <script type="text/javascript" src="javascript/updatePatientAttributeGroupForm.js"></script>
 
 <h3>$i18n.getString( "edit_patient_attribute_group" )</h3>
-<form id="updatePatientAttributeGroupForm" name="updatePatientAttributeGroupForm" action="updatePatientAttributeGroup.action" method="post" class="inputForm">
+<form id="updatePatientAttributeGroupForm" name="updatePatientAttributeGroupForm" action="updatePatientAttributeGroup.action" method="post" >
 
 <div style="display:inline">
   <input type="hidden" id="id" name="id" value="$!patientAttributeGroup.id"/>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientIdentifierType.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientIdentifierType.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updatePatientIdentifierType.vm	2013-12-16 04:39:49 +0000
@@ -5,7 +5,7 @@
 
 <h3>$i18n.getString( "edit_patient_identifier_type" )</h3>
 
-<form id="updatePatientIdentifierTypeForm" action="updatePatientIdentifierType.action" method="post" class="inputForm">
+<form id="updatePatientIdentifierTypeForm" action="updatePatientIdentifierType.action" method="post" >
 <input type="hidden" id="id" name="id" value="$patientIdentifierType.id"/>
 <table>	
 	 <thead>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm	2013-12-16 04:39:49 +0000
@@ -85,7 +85,7 @@
 
 <h3>$i18n.getString( "edit_program" )</h3>
 
-<form id="updateProgramForm" name="updateProgramForm" action="updateProgram.action" method="post" onsubmit="selectAllById('selectedPropertyIds');" class="inputForm">
+<form id="updateProgramForm" name="updateProgramForm" action="updateProgram.action" method="post" onsubmit="selectAllById('selectedPropertyIds');" >
   <select id='daysAllowedSendMessages' name="daysAllowedSendMessages" multiple="multiple" class="hidden"></select>
   <select id='templateMessages' name="templateMessages" multiple="multiple" class="hidden"></select>
   <select id='datesToCompare' name="datesToCompare" multiple="multiple" class="hidden"></select>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramIndicator.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramIndicator.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramIndicator.vm	2013-12-16 04:39:49 +0000
@@ -13,7 +13,7 @@
 
 <h3>$i18n.getString( "update_program_indicator" )</h3>
 									
-<form id="programIndicatorForm" action="updateProgramIndicator.action" method="post" class="inputForm">
+<form id="programIndicatorForm" action="updateProgramIndicator.action" method="post" >
 <input type='hidden' id='programId' name='programId' value='$program.id'>
 <input type='hidden' id='id' name='id' value='$programIndicator.id'>
 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageForm.vm	2013-12-16 04:39:49 +0000
@@ -12,7 +12,7 @@
 
 <h4>$programStage.program.displayName</h4>
 
-<form id="updateProgramStageForm" name="updateProgramStageForm" action="updateProgramStage.action" method="post" class="inputForm">
+<form id="updateProgramStageForm" name="updateProgramStageForm" action="updateProgramStage.action" method="post">
 	<input type="hidden" id="id" name="id" value="$programStage.id"/>
 	<input type="hidden" id="programId" name="programId" value="$programStage.program.id"/>
 	<select id='daysAllowedSendMessages' name="daysAllowedSendMessages" multiple="multiple" class="hidden"></select>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageSectionForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageSectionForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramStageSectionForm.vm	2013-12-16 04:39:49 +0000
@@ -19,7 +19,7 @@
 			
 <h4>$programStage.displayName</h4>
 			
-<form id="programStageSectionForm" name="programStageSectionForm" action="updateProgramStageSection.action" method="post" class="inputForm">
+<form id="programStageSectionForm" name="programStageSectionForm" action="updateProgramStageSection.action" method="post">
 	<input type="hidden" id="programStageId" name="programStageId" value="$programStage.id"/>
 	<input type="hidden" id="id" name="id" value="$section.id"/>
 

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateRelationshipTypeForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateRelationshipTypeForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateRelationshipTypeForm.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h3>$i18n.getString( "edit_relationship_type" )</h3>
 
-<form id="updateRelationshipTypeForm" name="updateRelationshipTypeForm" action="updateRelationshipType.action" method="post" class="inputForm">
+<form id="updateRelationshipTypeForm" name="updateRelationshipTypeForm" action="updateRelationshipType.action" method="post">
 
 <input type="hidden" id="id" name="id" value="$relationshipType.id"/>
   

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateSingleProgramValidationForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateSingleProgramValidationForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateSingleProgramValidationForm.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h4>$validation.program.displayName</h4>
 
-<form id='programValidationForm' name='programValidationForm' method='post' action='updateProgramValidation.action' class="inputForm">
+<form id='programValidationForm' name='programValidationForm' method='post' action='updateProgramValidation.action'>
 
 <input type='hidden' id='id' name='id' value='$validation.id'>
 <input type='hidden' id='programId' name='programId' value='$validation.program.id'>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateValidationCriteria.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateValidationCriteria.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateValidationCriteria.vm	2013-12-16 04:39:49 +0000
@@ -2,7 +2,7 @@
 
 <h3>$i18n.getString( "edit_validation_criteria" )</h3>
 
-<form id="validationCriteriaForm" action="updateValidationCriteria.action" method="post" class="inputForm">
+<form id="validationCriteriaForm" action="updateValidationCriteria.action" method="post" >
 	<table>
 		<input type='hidden' id='id' name='id' value='$validationCriteria.id'/>
 		<tr>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/validationCriteria.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/validationCriteria.vm	2013-12-06 11:34:43 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/validationCriteria.vm	2013-12-16 04:39:49 +0000
@@ -1,15 +1,5 @@
 <h3>$i18n.getString( "validation_criteria_management" ) #openHelp( "validation_criteria" )</h3>
 
-<div id="contextMenu" class="contextMenu" style="width: 210px;">
-  <ul id="contextMenuItems" class="contextMenuItems">
-    <li><a data-target-fn="showProgramsForValidationCriteriaForm"><i class="fa fa-plus"></i>&nbsp;&nbsp;$i18n.getString( "assign_validation_for_programs" )</a></li>
-    <li><a data-target-fn="showUpdateValidationCriteriaForm"><i class="fa fa-edit"></i>&nbsp;&nbsp;$i18n.getString( "edit" )</a></li>
-    <li><a data-target-fn="translateWithContext"><i class="fa fa-globe"></i>&nbsp;&nbsp;$i18n.getString( "translation_translate" )</a></li>
-    <li><a data-target-fn="removeCriteria"><i class="fa fa-trash-o"></i>&nbsp;&nbsp;$i18n.getString( "remove" )</a></li>
-    <li><a data-target-fn="showValidationCriteriaDetails"><i class="fa fa-info-circle"></i>&nbsp;&nbsp;$i18n.getString( "show_details" )</a></li>
-  </ul>
-</div>
-
 <table class="mainPageTable">
 	<tr>
 		<td style="vertical-align:top">
@@ -28,24 +18,29 @@
 				<thead>	
 				 <tr>
 				  <th>$i18n.getString('name')</th>
+				  <th style="width:140px;" class="{sorter: false}">$i18n.getString('operator')</th>
 				</tr>
 				</thead>
 				<tbody id="list">
 				#foreach($criteria in $criterias)
-				<tr id="tr${criteria.id}" data-id="$!criteria.id" data-uid="$!criteria.uid" data-type="ValidationCriteria" data-name="$encoder.htmlEncode( $!criteria.displayName )"
-				    data-can-manage="$security.canManage( $criteria )"
-				    data-can-update="$security.canUpdate( $criteria )"
-				    data-can-delete="$security.canDelete( $criteria )">
-				    <td>$encoder.htmlEncode( $!criteria.displayName )</td>
+				<tr id="tr${criteria.id}">
+				  <td onclick="javascript:showValidationCriteriaDetails( '$criteria.id' )">$criteria.displayName</td>
+				  <td>
+					<a href="showProgramsForValidationCriteriaForm.action?criteriaId=$criteria.id" title="$i18n.getString( 'assign_validation_for_programs' )"><img src="../images/assign.png" alt="$i18n.getString( 'assign_validation_for_programs' )"></a>
+					<a href="showUpdateValidationCriteriaForm.action?id=$criteria.id" title="$i18n.getString( "edit" )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"></a>
+					<a href="javascript:translate( 'ValidationCriteria', '$criteria.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>  
+					<a href="javascript:removeCriteria( '$criteria.id', '$encoder.jsEncode( $criteria.displayName )' )" title="$i18n.getString( "remove" )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"></a>
+					<a href="javascript:showValidationCriteriaDetails( '$criteria.id' )" title="$i18n.getString( "show_details" )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"></a>
+				  </td>
 				</tr>
 				#end
 				</tbody>
 			</table>
 		</td>
-
 		<td id="detailsData">
-      <div id="detailsArea">
-        <div id="hideDetailsArea">
+
+            <div id="detailsArea">
+                <div id="hideDetailsArea">
 					<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"></a>
 				</div>				
 				<p><label class="bold">$i18n.getString( "name" ):</label><br><span id='nameField'></span></p>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewDataEntryForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewDataEntryForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewDataEntryForm.vm	2013-12-16 04:39:49 +0000
@@ -66,7 +66,7 @@
 
 </style>
 
-<form id="saveDataEntryForm" name="saveDataEntryForm" action="saveDataEntryForm.action" method="post" class="inputForm">
+<form id="saveDataEntryForm" name="saveDataEntryForm" action="saveDataEntryForm.action" method="post">
 <input type="hidden" name="programStageId" id="programStageId" uid="$!programStage.uid" value="$!programStage.id"/>
 <h3>$i18n.getString( "dataentryform_management_for_program_stage" )</h3>
 <h4>$programStage.displayName</h4>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewPatientRegistationForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewPatientRegistationForm.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewPatientRegistationForm.vm	2013-12-16 04:39:49 +0000
@@ -48,7 +48,7 @@
 }
 </style>
 
-<form id="saveDataEntryForm" name="saveDataEntryForm" action="savePatientRegistrationForm.action" method="get" class="inputForm">
+<form id="saveDataEntryForm" name="saveDataEntryForm" action="savePatientRegistrationForm.action" method="get">
 
 <input type="hidden" name="programId" id="programId" value="$!program.id"/>
 <input type="hidden" name="dataEntryFormId" id="dataEntryFormId" value="$!registrationForm.dataEntryForm.id"/>
@@ -119,36 +119,10 @@
 		</tr>
 		<tr>
 			<td>
-				<select id="fixedAttrSelector" multiple="multiple" style="width:450px;height:270px" onclick='suggestionSelectorToggle()' ondblclick="insertElement( 'fixedAttr' )">
-					<option value="registrationDate">$i18n.getString('registration_date')</option>
-					<option value="fullName">$i18n.getString('full_name')</option>
-					<option value="gender">$i18n.getString('gender')</option>
-					<option value="birthDate">$i18n.getString('birth_date')</option>
-					<option value="age">$i18n.getString('age_years')</option>
+				<select id="fixedAttrSelector" multiple="multiple" style="width:450px;height:270px" ondblclick="insertElement( 'fixedAttr' )">
 					<option value="phoneNumber">$i18n.getString('phone_number')</option>
-					<option value="deathDate">$i18n.getString('death_date')</option>
-					<option value="isDead">$i18n.getString('is_dead')</option>
-					<option value="healthWorker">$i18n.getString('health_worker')</option>
-				</select>
-			</td>
-		</tr>
-		<tr>
-			<td>
-				$i18n.getString("default_value")
-				<input type='text' id='suggestedField' style='width:295px;'>
-				<select style='width:300px;display:none;' id='genderSelector'>
-					<option value="">[$i18n.getString( "please_select" )]</option>
-					<option value="M">$i18n.getString( "male" )</option>
-					<option value="F">$i18n.getString( "female" )</option>
-					<option value="T">$i18n.getString( "transgender" )</option>
-				</select>
-				<select style='width:300px;display:none;' id='dobTypeSelector'>
-					<option value="">[$i18n.getString( "please_select" )]</option>
-					<option value="V">$i18n.getString( "verified" )</option>
-					<option value="D">$i18n.getString( "declared" )</option>
-					<option value="A">$i18n.getString( "approximated" )</option>
-				</select>
-				<input type='checkbox' id='hiddenField'/>$i18n.getString("is_hidden")
+					<option value="associate">$i18n.getString('health_worker')</option>
+				</select>
 			</td>
 		</tr>
 	</table>

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewScheduledCaseAggTasks.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewScheduledCaseAggTasks.vm	2013-12-12 12:42:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/viewScheduledCaseAggTasks.vm	2013-12-16 04:39:49 +0000
@@ -13,7 +13,7 @@
 
 <input id="isRunning" type="hidden" value="${running}">
 
-<form id="schedulingForm" action="scheduleCaseAggTasks.action" method="post" class="inputForm">
+<form id="schedulingForm" action="scheduleCaseAggTasks.action" method="post">
 <input type='hidden' id='execute' name='execute'/>
 	
 <table>