← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 6375: (local) Add function to search data elements by dataset in data entry form.

 

------------------------------------------------------------
revno: 6375
committer: Tran Chau <tran.hispvietnam@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2012-03-26 09:41:46 +0700
message:
  (local) Add function to search data elements by dataset in data entry form.
removed:
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_en_GB.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_pt_PT.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_vi_VN.properties
added:
  local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/
  local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/DefaultLocalAttributeValueService.java
  local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueService.java
  local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueStore.java
  local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/hibernate/
  local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/hibernate/HibernateLocalAttributeValueStore.java
  local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadAttributeValuesByAttributeAction.java
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_es_ES.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_fr_FR.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_pt_PT.properties
  local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_vi_VN.properties
  local/vn/dhis-web-dataentry-hospital/src/main/webapp/main.vm
modified:
  local/vn/dhis-service-vn/src/main/resources/META-INF/dhis/beans.xml
  local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadFormAction.java
  local/vn/dhis-web-dataentry-hospital/src/main/resources/META-INF/dhis/beans.xml
  local/vn/dhis-web-dataentry-hospital/src/main/resources/struts.xml


--
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
=== added directory 'local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute'
=== added file 'local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/DefaultLocalAttributeValueService.java'
--- local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/DefaultLocalAttributeValueService.java	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/DefaultLocalAttributeValueService.java	2012-03-26 02:41:46 +0000
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ *   be used to endorse or promote products derived from this software without
+ *   specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package org.hisp.dhis.attribute;
+
+import java.util.Collection;
+
+import org.hisp.dhis.attribute.Attribute;
+import org.hisp.dhis.attribute.AttributeValue;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * @author Chau Thu Tran
+ * 
+ * @version $DefaultLocalAttributeValueService.java Mar 24, 2012 8:30:05 AM$
+ */
+@Transactional
+public class DefaultLocalAttributeValueService
+    implements LocalAttributeValueService
+{
+    // -------------------------------------------------------------------------
+    // Dependency
+    // -------------------------------------------------------------------------
+
+    private LocalAttributeValueStore localAttributeValueStore;
+
+    public void setLocalAttributeValueStore( LocalAttributeValueStore localAttributeValueStore )
+    {
+        this.localAttributeValueStore = localAttributeValueStore;
+    }
+
+    // -------------------------------------------------------------------------
+    // Implementation methods
+    // -------------------------------------------------------------------------
+
+    public Collection<AttributeValue> getAttributeValuesByAttribute( Attribute attribute )
+    {
+        return localAttributeValueStore.getByAttribute( attribute );
+    }
+}

=== added file 'local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueService.java'
--- local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueService.java	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueService.java	2012-03-26 02:41:46 +0000
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ *   be used to endorse or promote products derived from this software without
+ *   specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package org.hisp.dhis.attribute;
+
+import java.util.Collection;
+
+import org.hisp.dhis.attribute.Attribute;
+import org.hisp.dhis.attribute.AttributeValue;
+
+/**
+ * @author Chau Thu Tran
+ *
+ * @version $LocalAttributeValueService.java Mar 24, 2012 8:30:12 AM$
+ */
+public interface LocalAttributeValueService
+{
+    Collection<AttributeValue> getAttributeValuesByAttribute( Attribute attribute );
+}

=== added file 'local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueStore.java'
--- local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueStore.java	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/LocalAttributeValueStore.java	2012-03-26 02:41:46 +0000
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ *   be used to endorse or promote products derived from this software without
+ *   specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package org.hisp.dhis.attribute;
+
+import java.util.Collection;
+
+import org.hisp.dhis.attribute.Attribute;
+import org.hisp.dhis.attribute.AttributeValue;
+
+/**
+ * @author Chau Thu Tran
+ *
+ * @version $LocalAttributeValueStore.java Mar 24, 2012 8:31:40 AM$
+ */
+public interface LocalAttributeValueStore
+{
+    Collection<AttributeValue> getByAttribute( Attribute attribute );
+}

=== added directory 'local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/hibernate'
=== added file 'local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/hibernate/HibernateLocalAttributeValueStore.java'
--- local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/hibernate/HibernateLocalAttributeValueStore.java	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-service-vn/src/main/java/org/hisp/dhis/attribute/hibernate/HibernateLocalAttributeValueStore.java	2012-03-26 02:41:46 +0000
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ *   be used to endorse or promote products derived from this software without
+ *   specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package org.hisp.dhis.attribute.hibernate;
+
+import java.util.Collection;
+
+import org.hibernate.criterion.Restrictions;
+import org.hisp.dhis.attribute.Attribute;
+import org.hisp.dhis.attribute.AttributeValue;
+import org.hisp.dhis.attribute.LocalAttributeValueStore;
+import org.hisp.dhis.hibernate.HibernateGenericStore;
+
+/**
+ * @author Chau Thu Tran
+ * 
+ * @version $HibernateLocalAttributeValueStore.java Mar 24, 2012 8:30:37 AM$
+ */
+public class HibernateLocalAttributeValueStore
+    extends HibernateGenericStore<AttributeValue>
+    implements LocalAttributeValueStore
+{
+    @SuppressWarnings("unchecked")
+    @Override
+    public Collection<AttributeValue> getByAttribute( Attribute attribute )
+    {
+        return getCriteria().add( Restrictions.eq( "attribute", attribute ) ).list();
+    }
+}

=== modified file 'local/vn/dhis-service-vn/src/main/resources/META-INF/dhis/beans.xml'
--- local/vn/dhis-service-vn/src/main/resources/META-INF/dhis/beans.xml	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-service-vn/src/main/resources/META-INF/dhis/beans.xml	2012-03-26 02:41:46 +0000
@@ -17,4 +17,17 @@
 		<property name="sessionFactory" ref="sessionFactory" />
 	</bean>
 	
+	<!-- LocalAttributeValue -->
+	
+	<bean id="org.hisp.dhis.attribute.LocalAttributeValueService"
+		class="org.hisp.dhis.attribute.DefaultLocalAttributeValueService">
+		<property name="localAttributeValueStore" ref="org.hisp.dhis.attribute.LocalAttributeValueStore"/>
+	</bean>
+	
+	<bean id="org.hisp.dhis.attribute.LocalAttributeValueStore" 
+		class="org.hisp.dhis.attribute.hibernate.HibernateLocalAttributeValueStore">		
+		<property name="clazz" value="org.hisp.dhis.attribute.AttributeValue" />
+		<property name="sessionFactory" ref="sessionFactory" />
+	</bean>
+	
 </beans>

=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadAttributeValuesByAttributeAction.java'
--- local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadAttributeValuesByAttributeAction.java	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadAttributeValuesByAttributeAction.java	2012-03-26 02:41:46 +0000
@@ -0,0 +1,103 @@
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ *   be used to endorse or promote products derived from this software without
+ *   specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package org.hisp.dhis.dataelement;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.hisp.dhis.attribute.Attribute;
+import org.hisp.dhis.attribute.AttributeService;
+import org.hisp.dhis.attribute.AttributeValue;
+import org.hisp.dhis.attribute.LocalAttributeValueService;
+import org.hisp.dhis.system.util.AttributeUtils;
+
+import com.opensymphony.xwork2.Action;
+
+/**
+ * @author Chau Thu Tran
+ * 
+ * @version $LoadAttributeValuesByAttributeAction.java Mar 24, 2012 9:10:52 AM$
+ */
+public class LoadAttributeValuesByAttributeAction
+    implements Action
+{
+    // -------------------------------------------------------------------------
+    // Dependencies
+    // -------------------------------------------------------------------------
+
+    private LocalAttributeValueService localAttributeValueService;
+
+    private AttributeService attributeService;
+
+    // -------------------------------------------------------------------------
+    // Input && Output
+    // -------------------------------------------------------------------------
+
+    private Integer attributeId;
+
+    private Collection<String> values;
+
+    public Collection<String> getValues()
+    {
+        return values;
+    }
+
+    public void setLocalAttributeValueService( LocalAttributeValueService localAttributeValueService )
+    {
+        this.localAttributeValueService = localAttributeValueService;
+    }
+
+    public void setAttributeService( AttributeService attributeService )
+    {
+        this.attributeService = attributeService;
+    }
+
+    public void setAttributeId( Integer attributeId )
+    {
+        this.attributeId = attributeId;
+    }
+
+    // -------------------------------------------------------------------------
+    // Action implementation
+    // -------------------------------------------------------------------------
+
+    @Override
+    public String execute()
+        throws Exception
+    {
+        Attribute attribute = attributeService.getAttribute( attributeId );
+        Set<AttributeValue> attributeValues = new HashSet<AttributeValue>( localAttributeValueService
+            .getAttributeValuesByAttribute( attribute ) );
+
+        values = AttributeUtils.getAttributeValueMap( attributeValues ).values();
+
+        return SUCCESS;
+    }
+
+}

=== modified file 'local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadFormAction.java'
--- local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadFormAction.java	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/java/org/hisp/dhis/dataelement/LoadFormAction.java	2012-03-26 02:41:46 +0000
@@ -226,8 +226,7 @@
 
     public String execute()
         throws Exception
-    {System.out.println("\n\n\n dataSetService : " + dataSetService );
-    System.out.println("\n\n\n dataSetId : " + dataSetId ); 
+    {
         DataSet dataSet = dataSetService.getDataSet( dataSetId, true, false, false );
 
         List<DataElement> dataElements = new ArrayList<DataElement>( dataSet.getDataElements() );

=== modified file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/META-INF/dhis/beans.xml'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/META-INF/dhis/beans.xml	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/META-INF/dhis/beans.xml	2012-03-26 02:41:46 +0000
@@ -11,6 +11,10 @@
 		<property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
 		<property name="localDataElementService" ref="org.hisp.dhis.dataelement.LocalDataElementService" />
   	</bean>
+  	
+  	<bean id="org.hisp.dhis.dataelement.LoadAttributeValuesByAttributeAction" class="org.hisp.dhis.dataelement.LoadAttributeValuesByAttributeAction" scope="prototype">
+	    <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+		<property name="localAttributeValueService" ref="org.hisp.dhis.attribute.LocalAttributeValueService" />
+  	</bean>
 	
-
 </beans>

=== added directory 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement'
=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module.properties	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module.properties	2012-03-26 02:41:46 +0000
@@ -0,0 +1,5 @@
+please_select_attribute = Please select attribute
+attribute = Attribute
+load_entry_form = Load entry form
+show_all_items = Show all items
+value = Value
\ No newline at end of file

=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_es_ES.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_es_ES.properties	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_es_ES.properties	2012-03-26 02:41:46 +0000
@@ -0,0 +1,79 @@
+ajax_login_failed=Fallo en el inicio de sesi\u00f3n, compruebe su nombre de usuario y contrase\u00f1a y vuelva a intentarlo
+change_from=cambiar de
+data_entry=Entrada de datos
+datavalue_history=Historial de valores de datos
+enter_digits=Introduzca solo n\u00fameros
+field_unallowed_save_zero=Este elemento no permite valores 0. El valor original no ser\u00e1 modificado
+followup=Seguimiento
+incomplete=Incompleto
+mark_value_for_followup=Marca el valor para el seguimiento
+max_must_be_greater_than_min=M\u00e1ximo debe ser mayor que el m\u00ednimo
+min_max_limits=Min-Max L\u00edmites
+need_to_sync_notification=Hay datos locales almacenados, por favor actualice el servidor
+next=Siguiente
+no_response_from_server=No hay respuesta del servidor, compruebe la conectividad y vuelva a intentarlo
+offline_notification=Trabajando sin conexi\u00f3n, los datos se guardar\u00e1n localmente
+on=En
+online_notification=Estas conectado
+operation_not_available_offline=No se puede realizar la operaci\u00f3n trabajando sin conexi\u00f3n
+prev=Anterior
+undo_register_complete_dataset_success=Registro completo de Conjunto de datos Desecho
+unmark_value_for_followup=Eliminar selecci\u00f3n de valor para seguimiento
+register_complete_dataset_failed=Ha fallado el Registro completo del Conjunto de Datos
+register_complete_dataset_success=Conjunto de Datos completo
+save_comment=Guardar comentario
+select_data_set=Seleccionar Conjunto de Datos
+select_from_tree=Seleccione del arbol de la izquierda
+stored_date=Datos almacenados
+sync_failed=Fallo al subir al servidor, int\u00e9ntelo de nuevo
+sync_now=Subir
+sync_success=Subido al servidor correctamente
+the_following_values_are_outliers=Los siguientes Valores estan considerados at\u00edpicos (min - max o desv std )
+the_following_values_violate_rules=Los siguientes valores violan las reglas de validaci\u00f3n
+uploading_data_notification=Subiendo datos locales al servidor
+value_is_too_long=El valor es demasiado largo
+value_must_negative_integer=El valor debe ser un entero negativo
+value_must_number=El valor debe ser un n\u00famero
+value_must_positive_integer=El valor debe ser un entero positivo
+min_limit=Limite Minimo
+later_periods=Ultimos Periodos
+period=Per\u00EDodo
+complete=Completo
+timestamp=Fechado
+move=Mover
+saving_comment_failed_status_code=Guardando comentario fallido con codigo de estado
+entry=Entrada
+data_set=Conjunto de Datos
+dataelement_comment=Comentario
+confirm_undo=Confirmar deshacer el registro
+successful_validation=Los valores pasaron la Validaci\u00F3n Exitosamente\!
+stored_by=Guardado por
+saving_value_failed_status_code=Guardando valor fallido con codigo de estado
+max_limit=Limite Maximo
+saving_comment_failed_error_code=Guardando comentario fallido con codigo de error
+organisation_unit=Unidad Organizativa
+value_of_data_element_greater=Valor del Elemento de Datos mayor que el valor M\u00E1ximo aceptado
+max=Max
+validation_result=Resultado de Validaci\u00F3n
+value_of_data_element_less=Valor del Elemento de Datos menor que el valor M\u00EDnimo aceptado
+save=Guardar
+saving_minmax_failed_error_code=Guardando Minimo/Maximo fallido con codigo de error
+dataelement_history=Historia del Elemento de Datos
+unsuccessful_validation=Los valores no pasaron la Validaci\u00F3n. Han ocurrido los siguientes errores\:
+value=Valor
+operator=Operador
+no_dataelement_selected=No se ha seleccionado Elementos de Datos
+data_element=Elemento de Dato
+history_not_valid=Historia no valida para este Elemento de Dato
+no_organisationunit_selected=No se ha seleccionado Unidad Organizativa
+nr=\#
+no_value=No existe valor
+expression=Expresi\u00F3n
+earlier_periods=Periodos Anteriores
+confirm_complete=Confirmar Conjunto de Datos como completo
+maximum=Maximo
+value_must_integer=El valor debe ser un entero
+select=Seleccionar
+min=Min
+no_period_selected=No se ha seleccionado Periodo
+run_validation=Correr Validaci\u00F3n

=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_fr_FR.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_fr_FR.properties	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_fr_FR.properties	2012-03-26 02:41:46 +0000
@@ -0,0 +1,97 @@
+dataelement_comment=Commentaire
+history_not_valid=Historique non applicable pour cet \u00e9l\u00e9ment de donn\u00e9e
+data_element=Element de donn\u00e9e
+min=Min
+entry=Entr\u00e9e
+max=Max
+timestamp=Timestamp
+stored_by=Stock\u00e9 par
+stored_date=Date d'enregistrement
+no_value=Pas de valeur
+maximum=Maximum
+organisation_unit=Unit\u00e9 d'organisation
+data_set=Ensemble de donn\u00e9es
+select=S\u00e9lectionner
+period=P\u00e9riode
+earlier_periods=P\u00e9riodes pr\u00e9c\u00e9dentes
+later_periods=Periodes suivantes
+value_of_data_element_less=La valeur de l'\u00e9l\u00e9ment de donn\u00e9e suivant est inf\u00e9rieure au minimum admis
+value_of_data_element_greater=La valeur de la donn\u00e9e suivante est sup\u00e9rieure au maximum admis
+value_must_integer=La valeur doit \u00eatre un nombre entier et ne doit pas d\u00e9passer 255 caract\u00e8res
+saving_value_failed_status_code=Enregistrement de la valeur a \u00e9chou\u00e9 avec le code de statut
+saving_comment_failed_status_code=L'enregistrement du commentaire a \u00e9chou\u00e9 avec le code de statut
+saving_comment_failed_error_code=L'enregistrement du commentaire a \u00e9chou\u00e9 avec le code d'erreur
+saving_minmax_failed_error_code=Enregistrement de la valeur min/max a \u00e9chou\u00e9 avec le code d'erreur
+move=D\u00e9placer
+date=Date
+min_limit=Limite inf\u00e9rieure
+max_limit=Limite sup\u00e9rieure
+dataelement_history=Historique des \u00e9l\u00e9ments de donn\u00e9es
+nr=Nr
+min_max_limits=Limites Min-max
+run_validation=Ex\u00e9cuter la validation
+validation_result=Resultat de validation
+expression=Expression
+successful_validation=La validation de ce formulaire a r\u00e9ussi
+unsuccessful_validation=La validation de ce formulaire a \u00e9chou\u00e9
+the_following_values_violate_rules=Les valeurs suivantes violent les r\u00e8gles de validation
+the_following_values_are_outliers=The following values are considered as outliers (min-max or std dev).
+value=Valeur
+operator=Op\u00e9rateur
+no_organisationunit_selected=Aucune unit\u00e9 d'organisation s\u00e9lectionn\u00e9e
+no_period_selected=Pas de p\u00e9riode s\u00e9lectionn\u00e9e
+no_dataelement_selected=Aucun \u00e9l\u00e9ment de donn\u00e9e s\u00e9lectionn\u00e9
+complete=Finir
+incomplete=Incompl\u00e8te
+confirm_complete=Etes-vous que ce formulaire est complement rempli?
+confirm_undo=Etes-vous s\u00fbr d'annuler l'enregistrement?
+data_entry=Saisie de donn\u00e9es
+followup=Suivi
+validation_rule=R\u00e8gle de validation
+the_following_values_are_outliers=The following values are considered as outliers (min-max or std dev).
+register_complete_dataset_success=Ensemble de donn\u00e9es\u00a0enregitr\u00e9es comme complet
+register_complete_dataset_failed=Echec d'enregistrement du formulaire comme complet\u00a0
+undo_register_complete_dataset_success=Annuler registre complet de succ\u00e8s ensemble de donn\u00e9es
+datavalue_history=Historique des valeurs de donn\u00e9es
+enter_digits=Saisir que des chiffres
+value_must_number=La valeur doit \u00eatre un nombre
+value_must_positive_integer=La valeur doit \u00eatre un entier positif
+value_must_negative_integer=La valeur doit \u00eatre un entier n\u00e9gatif
+value_is_too_long=La valeur est trop long
+field_unallowed_save_zero=Cet \u00e9l\u00e9ment ne permet valeur 0.\u00a0La valeur d'origine ne seront pas affect\u00e9s.
+datavalue_history=Historique des valeurs de donn\u00e9es
+max_must_be_greater_than_min=Le max doit \u00eatre superieur au min
+next=Suivant
+prev=Pr\u00e9c\u00e9dente
+select_from_tree=S\u00e9lectionnez a partir de l'arborescence \u00e0 gauche
+select_data_set=S\u00e9lectionner l'ensemble de donn\u00e9es\u00a0
+select_period=S\u00e9lectionner une p\u00e9riode\u00a0
+change_from=Changer \u00e0 partir de
+to=\u00e0
+on=Sur
+value=Valeur
+no_response_from_server=Pas de r\u00e9ponse du serveur, s'il vous pla\u00eet v\u00e9rifier la connectivit\u00e9 et essayez \u00e0 nouveau
+save=Enregistrer
+save_comment=Enregistrer commentaires\u00a0
+operation_not_available_offline=Cette op\u00e9ration n'est pas disponible en mode hors-ligne
+online_notification=Vous \u00eates en ligne
+offline_notification=Vous \u00eates d\u00e9connect\u00e9, les donn\u00e9es seront stock\u00e9es localement
+need_to_sync_notification=Il ya des donn\u00e9es stock\u00e9es localement, s'il vous pla\u00eet t\u00e9l\u00e9charger vers le serveur
+sync_now=Upload\u00a0
+sync_success=Upload\u00a0
+sync_failed=Echec du t\u00e9l\u00e9chargement vers le serveur, veuillez r\u00e9essayer plus tard\u00a0
+uploading_data_notification=Le t\u00e9l\u00e9chargement de donn\u00e9es stock\u00e9es localement sur \u200b\u200ble serveur
+ajax_login_failed=Echec de connexion, v\u00e9rifier votre nom d'utilisateur et mot de passe puis re\u00e9ssayer
+mark_value_for_followup=Marquer la valeur pour suivi
+unmark_value_for_followup=D\u00e9cocher la valeur pour le suivi
+completed_by=Compl\u00e9t\u00e9 par des
+at=au
+prev_year=Ann\u00e9e pr\u00e9c\u00e9dente
+next_year=Ann\u00e9e prochaine
+saving_value_failed_dataset_is_locked=Ensemble de donn\u00e9es est verrouill\u00e9, s'il vous pla\u00eet contactez-administrateur.
+dataset_is_locked=Ensemble de donn\u00e9es est verrouill\u00e9
+see_details=Voir les d\u00e9tails
+username=Nom d'utilisateur
+user_roles=Les r\u00f4les des utilisateurs
+register_complete_failed_dataset_is_locked=Ensemble de donn\u00e9es est verrouill\u00e9, l'enregistrement a \u00e9chou\u00e9, s'il vous pla\u00eet contactez-administrateur
+unregister_complete_failed_dataset_is_locked=Ensemble de donn\u00e9es est verrouill\u00e9, non-enregistrement a \u00e9chou\u00e9, s'il vous pla\u00eet contactez-administrateur

=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_pt_PT.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_pt_PT.properties	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_pt_PT.properties	2012-03-26 02:41:46 +0000
@@ -0,0 +1,97 @@
+dataelement_comment=Coment\u00e1rio
+data_element=Elemento de Dados
+min=Min
+entry=Entrada
+max=Max
+timestamp=Timestamp
+stored_by=Ordenar por
+stored_date=Data armazenada
+no_value=Sem Valor
+maximum=M\u00e1ximo
+organisation_unit=Unidade organizacional
+data_set=Conjunto de Dados
+select=Seleccione
+period=Per\u00edodo
+earlier_periods=Per\u00edodos anteriores
+later_periods=Ultimos per\u00edodos
+value_of_data_element_less=O valor do elemento de dado \u00e9 inferior ao valor m\u00ednimo aceite
+value_of_data_element_greater=O valor do elemento de dados \u00e9 maior ao valor m\u00ednimo aceite
+value_must_integer=Valor deve ser um n\u00famero inteiro
+saving_value_failed_status_code=Gravac\u00e3o de valor falhou com c\u00f3digo de status
+saving_comment_failed_status_code=Gravac\u00e3o de coment\u00e1rio falhou com c\u00f3digo de status
+saving_comment_failed_error_code=Gravac\u00e3o de coment\u00e1rio falhou com c\u00f3digo de erro
+saving_minmax_failed_error_code=O processo de grava\u00e7\u00e3o do min/max falhou com c\u00f3digo de erro
+move=Mover
+date=Data
+min_limit=Limite Min
+max_limit=Limite Max
+dataelement_history=Historial de Elemento de dados
+nr=Nr
+min_max_limits=Limites Min-Max
+run_validation=Executar valida\u00e7\u00e3o
+validation_result=Resultado de Valida\u00e7\u00e3o
+expression=Express\u00e3o
+successful_validation=O ecr\u00e3 de entrada de dados passou a valida\u00e7\u00e3o com sucesso
+unsuccessful_validation=O ecr\u00e3 de entrada de dado tem erros de valida\u00e7\u00e3o, por favor corrija-os antes prosseguir
+the_following_values_violate_rules=Os seguintes valores violam as regras de valida\u00e7\u00e3o
+the_following_values_are_outliers=Os seguintes valores s\u00e3o considerados outliers (min-max ou desvio padr\u00e3o).
+value=Valor
+operator=Operador
+no_organisationunit_selected=Nenhuma Unidade Organizacional foi Seleccionada
+no_period_selected=Nenhum per\u00edodo foi Seleccionado
+no_dataelement_selected=Nenhum Elemento de Dado foi Seleccionado
+complete=Entrada de dados completa
+incomplete=Incompleto
+confirm_complete=Tem certeza que este conjunto de dados est\u00e1 completo?
+confirm_undo=Tem certeza que pretende desfazer o registo?
+data_entry=Entrada de Dados
+followup=Seguimento
+validation_rule=Regra de valida\u00e7\u00e3o
+the_following_values_are_outliers=The following values are considered as outliers (min-max or std dev).
+register_complete_dataset_success=Conjunto de dados completo registrado
+register_complete_dataset_failed=O registo de conjunto de dado completo falhou
+undo_register_complete_dataset_success=Desfazer o registrar do conjunto de dados completado com sucesso
+datavalue_history=Historial do valor de dado
+enter_digits=Introduza s\u00f3 digitos.
+value_must_number=Valor deve ser um n\u00famero
+value_must_positive_integer=Valor deve ser um numero positivo inteiro
+value_must_negative_integer=Valor deve ser um numero negativo inteiro
+value_is_too_long=Valor \u00e9 muito longo
+field_unallowed_save_zero=Estes elementos n\u00e3o permitem valores zero (0). O valor orginal n\u00e3o ser\u00e1 afectado.
+datavalue_history=Historial do valor de dado
+max_must_be_greater_than_min=Max deve ser maior que Min
+next=Pr\u00f3ximo
+prev=Ant
+select_from_tree=Seleccione a partir da \u00e1rvore do lado esquerdo
+select_data_set=Selecione conjunto de dados
+select_period=Seleccione o per\u00edodo
+change_from=mudar para
+to=para
+on=Em
+value=Valor
+no_response_from_server=Sem resposta do servidor, por favor, verifique a conectividade e tente novamente
+save=Salvar
+save_comment=Grave coment\u00e1rio
+operation_not_available_offline=Esta opera\u00e7\u00e3o n\u00e3o est\u00e1 dispon\u00edvel no modo off-line
+online_notification=Est\u00e1 online
+offline_notification=Est\u00e1 desligado do servidor, os dados ser\u00e3o armazenados localmente
+need_to_sync_notification=Existem dados armazenados localmente, envie para o servidor
+sync_now=Carregar
+sync_success=Envio para o servidor foi bem-sucedida
+sync_failed=Envio para o servidor falhou, por favor, tente novamente mais tarde
+uploading_data_notification=Enviando dados armazenados localmente para o servidor
+ajax_login_failed=Falha no login, verifique o seu nome de usu\u00e1rio e senha e tente novamente
+mark_value_for_followup=Marcar valor para acompanhamento
+unmark_value_for_followup=Desmarcar valor para acompanhamento
+completed_by=Preenchido por
+at=em
+prev_year=ano anterior
+next_year=ano seguinte
+history_not_valid=Hist\u00f3ria n\u00e3o \u00e9 aplicada para este elemento de dados!
+saving_value_failed_dataset_is_locked=Conjunto de dados est\u00e1 bloqueado, por favor entre em contacto com administrador
+dataset_is_locked=O conjunto de dados est\u00e1 bloqueado
+see_details=Veja detalhes
+username=Nome de Usu\u00e1rio
+user_roles=Fun\u00e7\u00f5es de usu\u00e1rio
+register_complete_failed_dataset_is_locked=Conjunto de dados est\u00e1 bloqueado, registro falhou, por favor entre em contato com administrador
+unregister_complete_failed_dataset_is_locked=Conjunto de dados est\u00e1 bloqueado, falha no cancelamento do registo, por favor entre em contato com administrador

=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_vi_VN.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_vi_VN.properties	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/dataelement/i18n_module_vi_VN.properties	2012-03-26 02:41:46 +0000
@@ -0,0 +1,102 @@
+unmark_value_for_followup=H\u1ee7y ch\u1ecdn gi\u00e1 tr\u1ecb theo d\u00f5i
+expression=Bi\u1ec3u th\u1ee9c
+data_set=Bi\u1ec3u nh\u1eadp li\u1ec7u
+value_must_positive_integer=Gi\u00e1 tr\u1ecb ph\u1ea3i l\u00e0 m\u1ed9t s\u1ed1 nguy\u00ean d\u01b0\u01a1ng v\u00e0 \u0111\u1ed9 \u0111\u00e0i d\u01b0\u1edbi 255 k\u00fd t\u1ef1.
+value=Gi\u00e1 tr\u1ecb
+select_from_tree=Ch\u1ecdn \u0111\u01a1n v\u1ecb nh\u1eadp \u1edf ph\u00eda tay tr\u00e1i
+the_following_values_are_outliers=The following values are considered as outliers (min-max or std dev).
+register_complete_dataset_success=M\u1eabu d\u1eef li\u1ec7u \u0111\u00e3 \u0111\u0103ng k\u00fd
+register_complete_dataset_failed=\u0110\u0103ng k\u00fd m\u1eabu d\u1eef li\u1ec7u th\u1ea5t b\u1ea1i
+min_limit=Gi\u1edbi h\u1ea1n th\u1ea5p nh\u1ea5t
+no_value=Kh\u00f4ng c\u00f3 gi\u00e1 tr\u1ecb
+timestamp=Th\u1eddi \u0111i\u1ec3m
+complete=Ho\u00e0n ch\u1ec9nh
+validate=Ki\u1ec3m tra t\u00ednh h\u1ee3p l\u1ec7
+value_must_negative_integer=Gi\u00e1 tr\u1ecb ph\u1ea3i l\u00e0 m\u1ed9t s\u1ed1 nguy\u00ean \u00e2m v\u00e0 \u0111\u1ed9 \u0111\u00e0i d\u01b0\u1edbi 255 k\u00fd t\u1ef1.
+saving_minmax_failed_error_code=L\u01b0u gi\u00e1 tr\u1ecb l\u1edbn nh\u1ea5t/nh\u1ecf nh\u1ea5t kh\u00f4ng th\u00e0nh c\u00f4ng v\u1edbi m\u00e3 l\u1ed7i
+stored_date=Ng\u00e0y l\u01b0u tr\u1eef
+maximum=L\u1edbn nh\u1ea5t
+select_data_set=Ch\u1ecdn bi\u1ec3u nh\u1eadp
+type=Ki\u1ec3u d\u1eef li\u1ec7u
+followup=Ti\u1ebfp theo
+up=L\u00ean
+down=Xu\u1ed1ng
+dataelement_comment=G\u00f3p \u00fd
+field_unallowed_save_zero=Ph\u1ea7n t\u1eed n\u00e0y kh\u00f4ng l\u01b0u gi\u00e1 tr\u1ecb 0. Gi\u00e1 tr\u1ecb c\u0169 kh\u00f4ng b\u1ecb \u1ea3nh h\u01b0\u1edfng.
+offline_notification=B\u1ea1n \u0111ang offline, d\u1eef li\u1ec7u s\u1ebd \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef c\u1ee5c b\u1ed9
+mark_value_for_followup=Ch\u1ecdn gi\u00e1 tr\u1ecb \u0111\u1ec3 theo d\u00f5i
+later_periods=Th\u1eddi k\u1ef3 sau
+move=Chuy\u1ec3n
+to=th\u00e0nh
+earlier_periods=Th\u1eddi k\u1ef3 tr\u01b0\u1edbc
+max=L\u1edbn nh\u1ea5t
+value_must_number=Gi\u00e1 tr\u1ecb ph\u1ea3i l\u00e0 m\u1ed9t s\u1ed1 th\u1ef1c v\u00e0 \u0111\u1ed9 \u0111\u00e0i d\u01b0\u1edbi 255 k\u00fd t\u1ef1.
+confirm_undo=B\u1ea1n c\u00f3 ch\u1eafc ch\u1eafn s\u1eeda \u0111\u1ed5i d\u1eef li\u1ec7u nh\u1eadp?
+change_from=thay \u0111\u1ed5i t\u1eeb
+incomplete=S\u1eeda \u0111\u1ed5i d\u1eef li\u1ec7u nh\u1eadp
+period=Th\u1eddi \u0111i\u1ec3m
+confirm_complete=B\u1ea1n c\u00f3 ch\u1eafc ch\u1eafn d\u1eef li\u1ec7u nh\u1eadp n\u00e0y \u0111\u00e3 ho\u00e0n ch\u1ec9nh?
+no_period_selected=Kh\u00f4ng th\u1eddi \u0111i\u1ec3m n\u00e0o \u0111\u01b0\u1ee3c ch\u1ecdn
+next=Sau
+value_of_data_element_less=Gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh ph\u1ea7n d\u1eef li\u1ec7u th\u1ea5p h\u01a1n gi\u00e1 tr\u1ecb nh\u1ecf nh\u1ea5t cho ph\u00e9p
+operator=To\u00e1n t\u1eed
+operation_not_available_offline=Ph\u00e9p t\u00ednh kh\u00f4ng th\u1ef1c hi\u1ec7n \u0111\u01b0\u1ee3c \u1edf ch\u1ebf \u0111\u1ed9 offline
+data_entry=Nh\u1eadp d\u1eef li\u1ec7u
+validation_result=K\u1ebft qu\u1ea3 ki\u1ec3m tra t\u00ednh h\u1ee3p l\u1ec7
+enter_digits=Ch\u1ec9 nh\u1eadp k\u00fd t\u1ef1 s\u1ed1
+max_limit=Gi\u1edbi h\u1ea1n cao nh\u1ea5t
+value_of_data_element_greater=Gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh ph\u1ea7n d\u1eef li\u1ec7u sau l\u1edbn h\u01a1n gi\u00e1 tr\u1ecb l\u1edbn nh\u1ea5t cho ph\u00e9p
+greater_than=L\u1edbn h\u01a1n
+code=M\u00e3 ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
+change=Thay \u0111\u1ed5i
+unsuccessful_validation=Gi\u00e1 tr\u1ecb kh\u00f4ng h\u1ee3p l\u1ec7. C\u1ee5 th\u1ec3 nh\u01b0 sau:
+history_not_valid=L\u1ecbch s\u1eed d\u1eef li\u1ec7u kh\u00f4ng \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng cho ph\u1ea7n t\u1eed d\u1eef li\u1ec7u n\u00e0y!
+sync_failed=T\u1ea3i l\u00ean m\u00e1y ch\u1ee7 th\u1ea5t b\u1ea1i, h\u00e3y th\u1eed l\u1ea1i
+sync_now=T\u1ea3i l\u00ean
+no_dataelement_selected=Kh\u00f4ng th\u00e0nh ph\u1ea7n d\u1eef li\u1ec7u n\u00e0o \u0111\u01b0\u1ee3c ch\u1ecdn
+date=Ng\u00e0y
+no_response_from_server=Kh\u00f4ng c\u00f3 ph\u1ea3n h\u1ed3i t\u1eeb m\u00e1y ch\u1ee7, h\u00e3y ki\u1ec3m tra k\u1ebft n\u1ed1i m\u1ea1ng v\u00e0 th\u1eed l\u1ea1i
+datavalue_history=L\u1ecbch s\u1eed gi\u00e1 tr\u1ecb d\u1eef li\u1ec7u
+undo_register_complete_dataset_success=H\u1ee7y \u0111\u0103ng k\u00fd bi\u1ec3u nh\u1eadp th\u00e0nh c\u00f4ng
+value_must_integer=Gi\u00e1 tr\u1ecb ph\u1ea3i l\u00e0 m\u1ed9t s\u1ed1 nguy\u00ean v\u00e0 \u0111\u1ed9 \u0111\u00e0i d\u01b0\u1edbi 255 k\u00fd t\u1ef1.
+the_following_values_violate_rules=C\u00e1c gi\u00e1 tr\u1ecb sau vi ph\u1ea1m \u0111i\u1ec1u ki\u1ec7n
+saving_comment_failed_error_code=L\u01b0u ch\u00fa th\u00edch kh\u00f4ng th\u00e0nh c\u00f4ng v\u1edbi m\u00e3 l\u1ed7i
+need_to_sync_notification=D\u1eef li\u1ec7u \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef c\u1ee5c b\u1ed9, h\u00e3y t\u1ea3i l\u00ean m\u00e1y ch\u1ee7
+min=Nh\u1ecf nh\u1ea5t
+save=L\u01b0u
+on=V\u00e0o l\u00fac
+online_notification=B\u1ea1n \u0111ang online
+prev=Tr\u01b0\u1edbc
+entry=Gi\u00e1 tr\u1ecb
+uploading_data_notification=\u0110ang t\u1ea3i d\u1eef li\u1ec7u c\u1ee5c b\u1ed9 \u0111\u1ebfn m\u00e1y ch\u1ee7
+successful_validation=M\u00e0n h\u00ecnh nh\u1eadp li\u1ec7u th\u00e0nh c\u00f4ng ki\u1ec3m tra d\u1eef li\u1ec7u
+nr=S\u1ed1
+sync_success=Th\u00e0nh c\u00f4ng t\u1ea3i l\u00ean m\u00e1y ch\u1ee7
+select_period=Ch\u1ecdn th\u1eddi \u0111i\u1ec3m
+organisation_unit=\u0110\u01a1n v\u1ecb
+select=Ch\u1ecdn
+stored_by=Ng\u01b0\u1eddi nh\u1eadp li\u1ec7u
+no_organisationunit_selected=Kh\u00f4ng \u0111\u01a1n v\u1ecb n\u00e0o \u0111\u01b0\u1ee3c ch\u1ecdn
+saving_comment_failed_status_code=L\u01b0u ch\u00fa th\u00edch kh\u00f4ng th\u00e0nh c\u00f4ng v\u1edbi m\u00e3 tr\u1ea1ng th\u00e1i
+run_validation=Ki\u1ec3m tra d\u1eef li\u1ec7u
+value_is_too_long=Gi\u00e1 tr\u1ecb qu\u00e1 d\u00e0i
+saving_value_failed_status_code=L\u01b0u gi\u00e1 tr\u1ecb kh\u00f4ng th\u00e0nh c\u00f4ng v\u1edbi m\u00e3 tr\u1ea1ng th\u00e1i
+validation_rule=Quy t\u1eafc ki\u1ec3m tra t\u00ednh h\u1ee3p l\u1ec7
+min_max_limits=Gi\u1edbi h\u1ea1n l\u1edbn nh\u1ea5t - nh\u1ecf nh\u1ea5t
+undo=S\u1eeda l\u1ea1i b\u00e1o c\u00e1o
+save_comment=L\u01b0u \u00fd ki\u1ebfn
+ajax_login_failed=\u0110\u0103ng nh\u1eadp kh\u00f4ng th\u00e0nh c\u00f4ng. Ki\u1ec3m tra l\u1ea1i t\u00ean t\u00e0i kho\u1ea3n v\u00e0 m\u1eadt kh\u1ea9u m\u1ed9t l\u1ea7n n\u1eefa
+dataelement_history=L\u1ecbch s\u1eed d\u1eef li\u1ec7u
+data_element=D\u1eef li\u1ec7u
+max_must_be_greater_than_min=Gi\u00e1 tr\u1ecb l\u1edbn nh\u1ea5t ph\u1ea3i h\u01a1n gi\u00e1 tr\u1ecb nh\u1ecf nh\u1ea5t
+saving_value_failed_dataset_is_locked=Bi\u1ec3u nh\u1eadp li\u1ec7u \u0111\u00e3 b\u1ecb kh\u00f3a, h\u00e3y li\u00ean h\u1ec7 ng\u01b0\u1eddi qu\u1ea3n tr\u1ecb h\u1ec7 th\u1ed1ng
+dataset_is_locked=Bi\u1ec3u nh\u1eadp \u0111\u00e3 b\u1ecb kh\u00f3a
+completed_by=\u0110\u01b0\u1ee3c ho\u00e0n th\u00e0nh b\u1edfi
+at=t\u1ea1i
+prev_year=N\u0103m tr\u01b0\u1edbc
+next_year=N\u0103m sau
+see_details=Xem th\u00eam
+username=T\u00ean ng\u01b0\u1eddi d\u00f9ng
+user_roles=Vai tr\u00f2 ng\u01b0\u1eddi d\u00f9ng
+register_complete_failed_dataset_is_locked=Bi\u1ec3u nh\u1eadp b\u1ecb kh\u00f3a, vi\u1ec7c \u0111\u0103ng k\u00fd kh\u00f4ng th\u00e0nh c\u00f4ng. H\u00e3y li\u00ean h\u1ec7 v\u1edbi ng\u01b0\u1eddi qu\u1ea3n tr\u1ecb
+unregister_complete_failed_dataset_is_locked=Bi\u1ec3u nh\u1eadp b\u1ecb kh\u00f3a, vi\u1ec7c h\u1ee7y \u0111\u0103ng k\u00fd kh\u00f4ng th\u00e0nh c\u00f4ng. H\u00e3y li\u00ean h\u1ec7 v\u1edbi ng\u01b0\u1eddi qu\u1ea3n tr\u1ecb

=== removed file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module.properties	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module.properties	1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
-please_select_attribute = Please select attribute
-attribute = Attribute
-load_entry_form = Load entry form
\ No newline at end of file

=== removed file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_en_GB.properties'
=== removed file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_pt_PT.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_pt_PT.properties	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_pt_PT.properties	1970-01-01 00:00:00 +0000
@@ -1,304 +0,0 @@
-reports=List of report
-row=Row
-column=Column
-export_report_type=Export report type
-import_report_type=Import report type
-PERIOD_COLUMN_LISTING=Period Column Listing
-NORMAL=Normal
-CATEGORY=Category
-export_items=Export Items
-period_postion_column=Period Position Column
-organisation_position_column=Organisation Position Column
-excel_is_null=Please enter excel template !
-name_ready_exist=Name Ready Exist !
-confirm_delete=Are you sure you want to delete this?
-period_type=Period type
-export_report=Export Report
-quaterly=Quarterly
-6_month=Six monthly
-yealy=Yearly
-last_3_month=Last 3 Month
-so_far_this_year=So Far This year
-element_optioncombo=Element with OptionCombo
-expression=Expression
-extra_expression=Extra expression
-indicator=Indicator
-expression_is_null=Please enter expression !
-row_is_null=Please enter row number !
-column_is_null=Please enter column number !
-listing=Listing
-period=Period
-organisation=Organisation
-generate_report=Generate Report
-please_wait=Please waiting for process !
-organisationunit_is_null=Please select organisation unit !
-period_is_null=Please select period !
-report_is_null=Please select report !
-formula=Formula
-left_brackets=Left Brackets
-divide=Divide
-plus=Plus
-clean_up=Clean temporary directory
-org_unit_group_management=Organisation unit group management
-available_groups=Available groups
-sheet_no=Sheet No
-filter_by_sheet=Filter by sheet
-configuration=Configuration
-excel_file_directory=Excel template directory
-copy_import_item_to_exportreport=Copy import items to Export report
-select_excel_file=Select excel file
-upload_file=Upload
-dataset_completed_report=Data Set completed reports
-dataset=Dataset
-selected_period=Selected Period
-selected_dataset=Selected Dataset
-view=View Report
-number_datavalue=Number of Data Value
-view_data_status=View Data Entry Status
-data_status=Data Entry Status
-data_status_management=Data Entry Status Management\t
-make_default=Make as default
-completed=Completed
-entried=Entried
-group=Group
-periodlisting=Period Listing
-report_roles=Report and User Roles
-formulaexcel=Excel Formula
-import=Import data
-dhis-web-chr-form=Child Health Records
-remove_all=Un-Select All
-import_excel_file=Import Data Form Report Excel
-dataelement_groups=Data Element Groups
-temp_place=Temp Place
-update_sorted_dataelement=Update Sorted Data Element
-dataelement_name=Data Element Name
-dataelement_code=Data Element Code
-available_dataelementgroups=Available Data Element Groups
-selected_dataelementgroups=Selected Data Element Groups
-preview=Preview
-select=[Select]
-sheet_of_excel_file=Sheet of Excel file
-generate_report_by_orgunit_group=Generate report by orgunit group
-cleanup_success=Clean up successful
-individual_report=Individual reports
-available_data_elements=Available dataelement
-selected_data_elements=Selected dataelement
-category_option_combo=Category option combo list
-selected_periods=Selected periods
-generate=Generate report
-bookmark=Bookmark
-generate_advanced_report=Generate advanced report
-choose_orgunit_group=Organisation group
-report_ready_exist=Report ready exist
-please_enter_sheet_no=Please enter 'Sheet No'
-please_enter_group_name=Please enter group name
-import_items=Excel items
-choose_import_item=Please choose import items
-copy_items_duplicated=Warning! Cannot copy the duplicated item(s)
-import_report=Import Report
-copy_items=Copy items
-import_data=Import data
-startdate_null=Please enter start date
-enddate_null=Please enter end date
-not_null=not null
-choose_org_unit=Not choose organisation yet
-choose_period=Not choose period yet
-choose_export_report=Not choose export report yet
-warning_upload_is_null=Please choose your excel file to upload !
-list_of_import_items=List of import items
-selected_dataelements=Selected Data Elements
-no_item=Don't have any items chosen
-upload_successful=Uploading is success !
-override_successful=Overriding is success !
-cannot_write_file_being_used=Unable to write to this file as being used by another program
-filename_wellformed=How to get a well-formed name of file?
-length_filename_min5_max30=Length of file's name is at least 5 and at most 30 
-use_only_letters_numbers_dot_only=Please enter Letters, Numbers for file's name and Dot for extension only
-file_used_system=This file is being used in the system
-confirm_rename=Do you really want to rename it?
-rename_successful=File name changed
-template_status=Template status
-cell_exist=Exist one cell same sheet, row and column with this.
-download=Download
-file_type_not_supported=File type not supported
-association_roles=Association roles
-override_confirm=File is exist. Do you want to override ?
-ready_in_use=File is ready in use. Can not delete !
-intro_configuration=Set the path to the directory only store excel template files on server.
-Notes:This is a relative path.
-For example: \templatefiles for Windows or /templatefiles for Linux.
-intro_clean_up=This feature allows users to delete the temporary files generated during the generating report or previewing report.
-intro_excel_template_management=Upload, rename, search, download and delete the file extension .xls or .xlsx. Users can identify which files are used and unused files to. Automatically, allowing to update excel reporting system when file names which are used to be changed.
-translation_translate=Translate
-basic=Basic
-advanced=Advanced
-assign_exportreport_userrole=Assign user role for export report
-print=Print draft...
-chart=Chart
-de_in_chart=Data Element/Indicator Chart
-select_chart_type=Selection Chart Type
-pie_char=Pie Chart
-line_chart=Line Chart
-view_chart=View Chart
-indicator_groups=Indicator Groups
-period_chart=Period Chart
-organisation_chart=Organisation Unit Chart
-bookmark_chart=Bookmarked Charts
-bookmark_success=Bookmarked
-description_is_null=Please enter description !
-specify_report=Please specify a report
-specify_template_directory=Please specify template directory
-choose_orgunit_has_children=Please choose an orgaisation unit has children
-choose_orgunit=Please choose an orgaisation unit
-select_period_type=[Select period type]
-report_import_item=Report Excel Item
-add_import_item=Add Import Item
-add_export_item=Add Export Item
-update_import_item=Update Import Item
-import_type=Import type
-excel_importing=Excel Importing
-import_item=Import Item
-intro_chart=Create, Edit, View & Delete Hight Chart.
-selected_indicators=Selected Indicators
-available_indicators=Available Indicators
-color_selection=Color Selection
-LOAD_PERIOD_AUTO=Load period automatic up to now
-LOAD_PERIOD_SELECTED=Load period from your selection
-load_period_by=Load period by
-title=Title
-subtitle=Subtitle
-legend=Legend
-enable=Enable
-layout=Layout
-right=Right
-top=Top
-bottom=Bottom
-vertical=Vertical
-color=Color
-series=Series
-select_organisation=Please select organisation unit
-category=Category
-incompleted=Imcompleted
-import_import_items_cannot_be_empty=Excel items for importing cannot be empty
-access_denied_to_folder=Access denied to folder on server
-template_folder_is_null=Warning! The template folder configuration is not created yet.
-template_folder_is_not_empty=Warning! The old template directory of system is not empty.
-Would you like to move its children to the new one before it deleted ?
-template_file_is_not_exist=Warning! The corresponding file is not exist.
-export_reports=Export Reports
-generate_export_report=Generate export report
-set_organisationunit_group_level=Set up Organisation unit group level
-import_unsuccessfully=Import unsuccessfully
-import_successfully=Import successfully
-period_listing_importing_not_support=Sorry! Period Listing Importing is not supported.
-missing_template=Warning! Missing template.
-the_specified_report_is_not_exist=Warning! The specified report is not available/non-existance.
-select_sheet_for_filter=Select sheet for filter
-remove_item=Remove item
-number_of_members=Number of members
-edit_excel_template=Edit name of excel template
-has_no_element=has no element
-indicator_with_id=Indicator with id
-does_not_exist=does not exist
-period_columns=Period columns
-i18n_date_format=yy-mm-dd
-excel_template=Excel Template
-ORGANIZATION_GROUP_LISTING=Organization Unit Listing
-period_postion_row=Period Position Row
-organisation_position_row=Organisation Position Row
-name_is_null=Please enter name !
-item_type=Item type
-update=Update
-report_design=Report Design
-export_item=Export Item
-daily=Daily
-so_far_this_month=So far this month
-so_far_this_quarter=So far this quarter
-last_6_month=Last 6 month
-selected_month=Selected Month
-calculation=Calculation
-normal=Normal
-preview_report=Preview Report
-right_brackets=Right Brackets
-multiply=Multiply
-minus=Minus
-selected_groups=Selected groups
-organisation_unit_group=Organisation unit group
-copy_export_item_to_exportreport=Copy export items to Export report
-copy_export_item_to_importreport=Copy export items to Import report
-copy_import_item_to_importreport=Copy import items to Import report
-import_excel_file_manager=Import excel files
-available_user_roles=Available user roles
-selected_user_roles=Selected user roles
-administration=Administration
-select_report=[Select report]
-grouplisting=Group Organization
-formula_is_invalid=Formula is invalid !
-icd_code=ICD codes
-serial=Serial
-template_excel_file=Template excel file
-define_associations=Report Associations
-update_sort_dataelement_success=Update Sorted Data Element Success
-sort_dataelement=Sort Data Element
-dataelements=Data Elements
-view_by=View by
-update_order=Update Order Sorted
-sort_order_help=Use mouse drap emlement that you want set order and click on Update Order Sorted
-working_in_progress=Working in progress...
-available_periods=Available periods
-upload_file_first=Upload file first !
-associations=Associations
-sheetNo=Sheet
-copy_successful=Copy successful !
-filter_by_name=Filter by name
-choose_dataelement=Not choose dataelement yet
-i18n_name_is_null=Please enter name!
-input_sheet_no=Not input sheet yet
-choose_import_report=Not choose import report yet
-available_dataelements=Available Data Elements
-value_rounded=This value maybe have been rounded
-level_and_orgunit_group=Level and Organisation Unit Group
-levels=Level
-excel_template_management=Excel Template Management
-file_exists=File is existing
-confirm_override=Do you sure want to override this file? 
-confirm_update_system=Would you like to update reporting system?
-rename_failed=Rename failed
-update_successful=Update success !
-upload_file_null=Upload file null
-intro_export_reports=Create, update, view and delete the excel report. A report excel containing many report items. Excel report can in a variety of different reports. Excel report for assignment to one or more units or group units and options list.
-intro_data_status_management=This function is used to view the status input of data (Data is entered or not done or any missing one, etc...).
-intro_import_reports=Create, update, delete and view the elements for importing data from excel files. This import items closer to export items.
-template_using=File is using
-template_pending=File is pending
-expression_not_well_formed=Expression is not well formed
-axis_x=Axis X
-axis_y=Axis Y
-column_chart=Column Chart
-full_style_chart=Full Style Chart
-dataset_is_null=Please selecte dataset !
-description=Description
-name_ready_exist_in_sheet=This report item name was exits in this sheet 
-please_enter_row_and_column_first=Please enter row and column first
-update_export_item=Update Export Item
-report_excel=Report Excel
-show_legend=Show Legend
-left=Left
-center=Center
-middle=Middle
-horizontal=Horizontal
-position=Postion
-line=Line
-pie=Pie
-bar=Bar
-select_paramater_to_draw_chart=Select parameters to draw a chart
-draw_chart=Draw Chart
-access_denied_to_file=Access denied to file on server
-config_path_invalid=Invalid configuration! Only Alphabetic, Numbers, Undercore, Middlecore and Space alow.
-there_is_no_import_report=There is no Import Report/Import Item in system
-import_reports=Import Reports
-file_format_structure_broken=Warning! File format structure is broken.
-no_group_order_created_for_category=No group order created for this category report
-group_order=Data element group order
-dataelement_with_id=Dataelement with id
-cate_option_combo_with_id=Option combo with id

=== removed file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_vi_VN.properties'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_vi_VN.properties	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/org/hisp/dhis/i18n_module_vi_VN.properties	1970-01-01 00:00:00 +0000
@@ -1,343 +0,0 @@
-#Resource generated by I18n Resource Editor
-#Tue Nov 01 14:58:20 ICT 2011
-import_data=T\u00edch h\u1ee3p d\u1eef li\u1ec7u
-template_folder_is_not_empty=C\u1ea3nh b\u00e1o! Th\u01b0 m\u1ee5c c\u0169 c\u1ee7a h\u1ec7 th\u1ed1ng hi\u1ec7n \u0111ang ch\u1ee9a c\u00e1c t\u1eadp tin b\u1ea3ng m\u1eabu.\nB\u1ea1n c\u00f3 mu\u1ed1n di chuy\u1ec3n ch\u00fang qua th\u01b0 m\u1ee5c m\u1edbi tr\u01b0\u1edbc khi n\u00f3 b\u1ecb x\u00f3a?
-template_file_is_not_exist=C\u1ea3nh b\u00e1o! T\u1eadp tin li\u00ean quan kh\u00f4ng t\u1ed3n t\u1ea1i
-so_far_this_year=t\u1eeb \u0111\u1ea7u n\u0103m \u0111\u1ebfn nay
-description=M\u00f4 t\u1ea3
-period_postion_=\u0111\u1ecbnh v\u1ecb th\u1eddi gian
-top=Tr\u00ean
-ORGANIZATION_GROUP_LISTING=Li\u1ec7t k\u00ea \u0111\u01a1n v\u1ecb
-category_option_combo=Danh s\u00e1ch t\u1eadp ph\u00e2n lo\u1ea1i
-period_=theo th\u1eddi gian
-6_month=H\u1eb1ng 6 th\u00e1ng
-dataelement_name=T\u00ean ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
-report_excel=B\u00e1o c\u00e1o excel
-line=\u0110\u01b0\u1eddng
-export_report_type=Ki\u1ec3u b\u00e1o c\u00e1o
-export_report=B\u00e1o c\u00e1o xu\u1ea5t
-copy_export_item_to_importreport=Sao ch\u00e9p ph\u1ea7n t\u1eed Xu\u1ea5t t\u1edbi b\u00e1o c\u00e1o Nh\u1eadp
-right_brackets=\u0110\u00f3ng ngo\u1eb7c
-update_order=C\u1eadp nh\u1eadt th\u1ee9 t\u1ef1
-line_chart=Bi\u1ec3u \u0111\u1ed3 \u0111\u01b0\u1eddng
-group=Nh\u00f3m
-move_selected=B\u1ecf v\u00e0o
-intro_clean_up=Ch\u1ee9c n\u0103ng n\u00e0y cho ph\u00e9p ng\u01b0\u1eddi d\u00f9ng x\u00f3a c\u00e1c t\u1eadp tin t\u1ea1m sinh ra trong qu\u00e1 tr\u00ecnh sinh b\u00e1o c\u00e1o ho\u1eb7c xem tr\u01b0\u1edbc b\u00e1o c\u00e1o.
-not_null=kh\u00f4ng r\u1ed7ng
-upload_file=T\u1ea3i l\u00ean
-add_export_item=Th\u00eam ph\u1ea7n t\u1eed
-choose_orgunit=H\u00e3y ch\u1ecdn m\u1ed9t \u0111\u01a1n v\u1ecb
-organisation_position_column=V\u1ecb tr\u00ed \u00f4 \u0111\u01a1n v\u1ecb (c\u1ed9t)
-report_is_null=Vui l\u00f2ng ch\u1ecdn b\u00e1o c\u00e1o!
-period_is_null=Vui l\u00f2ng ch\u1ecdn th\u1eddi \u0111i\u1ec3m!
-de_in_=theo ph\u1ea7n t\u1eed d\u1eef li\u1ec7u/ch\u1ec9 s\u1ed1
-import_report_type=Lo\u1ea1i b\u00e1o c\u00e1o t\u00edch h\u1ee3p
-column_chart=Bi\u1ec3u \u0111\u1ed3 c\u1ed9t
-list_of_import_items=Danh s\u00e1ch c\u00e1c ph\u1ea7n t\u1eed t\u00edch h\u1ee3p
-override_successful=T\u1eadp tin n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c ghi \u0111\u00e8!
-rename_successful=T\u00ean t\u1eadp tin \u0111\u00e3 \u0111\u1ed5i
-i18n_name_is_null=H\u00e3y nh\u1eadp t\u00ean!
-no_item=Kh\u00f4ng c\u00f3 ph\u1ea7n t\u1eed \u0111\u01b0\u1ee3c ch\u1ecdn
-dataelement_code=M\u00e3 ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
-selected_dataelementgroups=Nh\u00f3m d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c ch\u1ecdn
-cannot_write_file_being_used=Kh\u00f4ng th\u1ec3 ghi l\u00ean t\u1eadp tin n\u00e0y v\u00ec \u0111ang \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng b\u1edfi m\u1ed9t ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c
-position=V\u1ecb tr\u00ed
-select_sheet_for_filter=Ch\u1ecdn b\u1ea3ng \u0111\u1ec3 l\u1ecdc
-add_import_item=Th\u00eam ph\u1ea7n t\u1eed Nh\u1eadp
-sort_order_help=D\u00f9ng chu\u1ed9t k\u00e9o m\u1ee5c mu\u1ed1n s\u1eafp x\u1ebfp t\u1edbi v\u1ecb tr\u00ed c\u1ea7n thi\u1ebft, sau \u0111\u00f3 ch\u1ecdn C\u1eadp nh\u1eadt th\u1ee9 t\u1ef1
-bar=Thanh
-template_using=\u0110ANG s\u1eed d\u1ee5ng t\u1eadp tin n\u00e0y
-upload_file_null=T\u1ea3i l\u00ean t\u1eadp tin r\u1ed7ng
-choose_import_report=Ch\u01b0a ch\u1ecdn b\u00e1o c\u00e1o t\u00edch h\u1ee3p
-report_design=Thi\u1ebft k\u1ebf b\u00e1o c\u00e1o
-select_excel_file=Ch\u1ecdn t\u1eadp tin b\u1ea3ng
-view_by=Bi\u1ec3u di\u1ec5n theo
-available_groups=Nh\u00f3m c\u00f3 s\u1eb5n 
-input_sheet_no=Ch\u01b0a nh\u1eadp s\u1ed1 b\u1ea3ng
-please_enter_row_and_column_first=Vui l\u00f2ng nh\u1eadp d\u00f2ng v\u00e0 c\u1ed9t tr\u01b0\u1edbc
-import_excel_items_cannot_be_empty=Vui l\u00f2ng t\u1ea1o ph\u1ea7n t\u1eed excel cho import d\u1eef li\u1ec7u
-full_style_chart=C\u1ed9t/\u0110\u01b0\u1eddng
-template_pending=CH\u01afA s\u1eed d\u1ee5ng t\u1eadp tin n\u00e0y
-center=Gi\u1eefa
-periodlisting=Li\u1ec7t k\u00ea theo th\u1eddi gian
-expression=Bi\u1ec3u th\u1ee9c
-extra_expression=Bi\u1ec3u th\u1ee9c ph\u1ee5
-reports=Danh s\u00e1ch b\u00e1o c\u00e1o
-bottom=D\u01b0\u1edbi
-choose_period=Ch\u01b0a ch\u1ecdn th\u1eddi \u0111i\u1ec3m
-missing_template=C\u1ea3nh b\u00e1o! T\u1eadp tin b\u1ea3ng b\u1ecb thi\u1ebfu.
-no_group_order_created_for_category=Kh\u00f4ng c\u00f3 nh\u00f3m ph\u1ea7n t\u1eed th\u1ee9 t\u1ef1 \u0111\u01b0\u1ee3c t\u1ea1o cho lo\u1ea1i b\u00e1o c\u00e1o n\u00e0y
-dataelements=Ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
-so_far_this_month=D\u1eef li\u1ec7u t\u1eeb \u0111\u1ea7u th\u00e1ng \u0111\u1ebfn ng\u00e0y \u0111\u01b0\u1ee3c ch\u1ecdn
-basic=C\u01a1 b\u1ea3n
-yearly=H\u00e0ng n\u0103m
-confirm_rename=B\u1ea1n c\u00f3 mu\u1ed1n \u0111\u1ed5i t\u00ean n\u00f3 kh\u00f4ng?
-line_=\u0111\u01b0\u1eddng
-specify_template_directory=H\u00e3y x\u00e1c \u0111\u1ecbnh th\u01b0 m\u1ee5c m\u1eabu
-individual_report=B\u00e1o c\u00e1o \u0111\u01a1n l\u1ebb
-jumping_step=D\u00f2ng tr\u1ed1ng
-data_status_management=Qu\u1ea3n l\u00fd t\u00ecnh tr\u1ea1ng nh\u1eadp li\u1ec7u
-legend=Ch\u00fa th\u00edch
-select_paramater_to_draw_chart=Ch\u1ecdn tham s\u1ed1 \u0111\u1ec3 v\u1ebd bi\u1ec3u \u0111\u1ed3
-print=In nh\u00e1p...
-enddate_null=H\u00e3y nh\u1eadp ng\u00e0y cu\u1ed1i
-download=T\u1ea3i v\u1ec1
-organisation_=theo \u0111\u01a1n v\u1ecb
-formula=C\u00f4ng th\u1ee9c
-update_report=C\u1eadp nh\u1eadt b\u00e1o c\u00e1o
-view_data_status=Xem b\u00e1o c\u00e1o t\u00ecnh tr\u1ea1ng nh\u1eadp li\u1ec7u
-completed=\u0110\u00e3 ho\u00e0n ch\u1ec9nh
-access_denied_to_file=Truy c\u1eadp b\u1ecb t\u1eeb ch\u1ed1i \u0111\u00ea\u0301n t\u1eadp tin tr\u00ean m\u00e1y ch\u1ee7
-organisation_unit_group=Nh\u00f3m \u0111\u01a1n v\u1ecb
-dataelement_use_for_categoryreport=Ph\u1ea7n t\u1eed d\u1eef li\u1ec7u s\u1eed d\u1ee5ng cho B\u00e1o c\u00e1o \u0111a chi\u1ec1u
-org_unit_group_management=Qu\u1ea3n l\u00fd nh\u00f3m \u0111\u01a1n v\u1ecb
-remove_item=X\u00f3a ph\u1ea7n t\u1eed
-edit_excel_template=Ch\u1ec9nh s\u1eeda t\u00ean t\u1eadp tin
-data_status=T\u00ecnh tr\u1ea1ng nh\u1eadp li\u1ec7u
-sheet_of_excel_file=B\u1ea3ng t\u00ednh c\u1ee7a t\u1eadp tin
-import_report=Ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-specify_report=H\u00e3y x\u00e1c \u0111\u1ecbnh m\u1ed9t b\u00e1o c\u00e1o
-file_used_system=T\u1eadp tin n\u00e0y \u0111ang \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng
-please_enter_group_name=Vui l\u00f2ng nh\u1eadp t\u00ean nh\u00f3m
-icd_code=M\u00e3 ICD
-pie=Tr\u00f2n
-template_folder_is_null=C\u1ea3nh b\u00e1o! C\u1ea5u h\u00ecnh th\u01b0 m\u1ee5c ch\u1ee9a t\u1eadp tin m\u1eabu ch\u01b0a \u0111\u01b0\u1ee3c thi\u1ebft l\u1eadp.
-import_items=Danh s\u00e1ch ph\u1ea7n t\u1eed Nh\u1eadp
-excel_template_management=Qu\u1ea3n l\u00fd c\u00e1c b\u1ea3ng m\u1eabu
-formulaexcel=C\u00f4ng th\u1ee9c b\u1ea3ng t\u00ednh
-selected_periods=Th\u1eddi \u0111i\u1ec3m \u0111\u01b0\u1ee3c ch\u1ecdn
-color_selection=Ch\u1ecdn m\u00e0u
-series=\u0110\u01b0\u1eddng bi\u1ec3u di\u1ec5n
-multiply=Ph\u00e9p nh\u00e2n
-available=Hi\u1ec7n c\u00f3
-generate_report_by_orgunit_group=Xu\u1ea5t b\u00e1o c\u00e1o theo nh\u00f3m \u0111\u01a1n v\u1ecb
-import_import_items_cannot_be_empty=Ph\u1ea7n t\u1eed \u0111\u1ec3 t\u00edch h\u1ee3p kh\u00f4ng \u0111\u01b0\u1ee3c r\u1ed7ng
-i18n_date_format=dd-mm-yy
-period_postion_column=V\u1ecb tr\u00ed \u00f4 th\u1eddi \u0111i\u1ec3m (c\u1ed9t)
-available_user_roles=C\u00e1c quy\u1ec1n c\u00f3 s\u1eb5n
-embed=M\u00e3 HTML \u0111\u1ec3 nh\u00fang v\u00e0o trang web
-left=Tr\u00e1i
-period=Th\u1eddi \u0111i\u1ec3m
-temp_place=V\u00f9ng L\u01b0u T\u1ea1m
-number_of_members=S\u1ed1 ph\u1ea7n t\u1eed trong nh\u00f3m
-left_brackets=M\u1edf ngo\u1eb7c
-select_chart_type=Ch\u1ecdn ki\u1ec3u bi\u1ec3u \u0111\u1ed3
-selected_indicators=Ch\u1ec9 s\u1ed1 \u0111\u01b0\u1ee3c ch\u1ecdn
-bookmark_success=\u0110\u00e3 \u0111\u00e1nh d\u1ea5u
-export_items=Danh s\u00e1ch ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-dhis-web-chr-form=Phi\u1ebfu s\u1ee9c kh\u1ecfe tr\u1ebb em
-selected_month=th\u00e1ng \u0111\u01b0\u1ee3c ch\u1ecdn
-show_legend=Hi\u1ec3n th\u1ecb ch\u00fa th\u00edch
-selected_=\u0111\u01b0\u1ee3c ch\u1ecdn
-update_report_import_item=Ch\u1ec9nh s\u1eeda ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-create_date=Ng\u00e0y gi\u1edd t\u1ea1o
-available_periods=Th\u1eddi \u0111i\u1ec3m hi\u1ec7n c\u00f3
-filter_by_name=L\u1ecdc theo t\u00ean
-selected_groups=C\u00e1c nh\u00f3m \u0111\u00e3 ch\u1ecdn
-excel_template=M\u1eabu b\u00e1o c\u00e1o b\u1ea3ng
-chart=Bi\u1ec3u \u0111\u1ed3
-filters=B\u1ed9 l\u1ecdc
-set_organisationunit_group_level=Thi\u1ebft l\u1eadp c\u1ea5p cho nh\u00f3m \u0111\u01a1n v\u1ecb
-loading=\u0110ang t\u1ea3i d\u1eef li\u1ec7u
-right=Ph\u1ea3i
-filter_by_sheet=L\u1ecdc theo b\u1ea3ng t\u00ednh
-improt_report=B\u00e1o c\u00e1o Nh\u1eadp
-report_roles=B\u00e1o c\u00e1o v\u00e0 ph\u00e2n quy\u1ec1n
-so_far_this_quarter=D\u1eef li\u1ec7u t\u1eeb \u0111\u1ea7u qu\u00fd \u0111\u1ebfn ng\u00e0y \u0111\u01b0\u1ee3c ch\u1ecdn
-pie_char=Bi\u1ec3u \u0111\u1ed3 tr\u00f2n
-number_datavalue=S\u1ed1 d\u1eef li\u1ec7u
-daily=H\u00e0ng ng\u00e0y
-copy_export_item_to_exportreport=Sao ch\u00e9p ph\u1ea7n t\u1eed Xu\u1ea5t t\u1edbi b\u00e1o c\u00e1o Xu\u1ea5t
-selected_dataelements=Ph\u1ea7n t\u1eed c\u00f3 s\u1eb5n
-LOAD_PERIOD_SELECTED=T\u1ea3i th\u1eddi \u0111i\u1ec3m t\u1eeb ch\u1ecdn l\u1ef1a
-copy_items_duplicated=Ph\u1ea7n t\u1eed b\u1ecb tr\u00f9ng l\u1eb7p, kh\u00f4ng th\u1ec3 sao ch\u00e9p !
-select=[Ch\u1ecdn]
-access_denied_to_folder=Ba\u0323n kh\u00f4ng \u0111u\u0309 quy\u00ea\u0300n truy c\u00e2\u0323p va\u0300o th\u01b0 mu\u0323c tr\u00ean ma\u0301y chu\u0309
-dataset=T\u1eadp d\u1eef li\u1ec7u
-choose_org_unit=Ch\u01b0a ch\u1ecdn \u0111\u01a1n v\u1ecb
-minus=Ph\u00e9p tr\u1eeb
-assign_exportreport_userrole=G\u00e1n quy\u1ec1n cho b\u00e1o c\u00e1o xu\u1ea5t
-generate_report=Xu\u1ea5t b\u00e1o c\u00e1o
-association_roles=Li\u00ean k\u1ebft vai tr\u00f2
-report_excel_item=Ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-name_ready_exist_in_sheet=Ph\u1ea7n t\u1eed tr\u00f9ng v\u1edbi ph\u1ea7n t\u1eed \u0111\u00e3 t\u1ed3n t\u1ea1i trong b\u1ea3ng n\u00e0y
-update=C\u1eadp nh\u1eadt
-element_optioncombo=Ph\u1ea7n t\u1eed v\u1edbi t\u00f9y ch\u1ecdn
-available_data_elements=D\u1eef li\u1ec7u hi\u1ec7n c\u00f3
-enable=K\u00edch ho\u1ea1t
-serial=S\u1ed1 th\u1ee9 t\u1ef1
-filename_wellformed=L\u00e0m c\u00e1ch n\u00e0o \u0111\u1ec3 c\u00f3 t\u00ean t\u1eadp tin h\u1ee3p l\u1ec7?
-sort_dataelement=S\u1eafp x\u1ebfp d\u1eef li\u1ec7u
-normal=B\u00ecnh th\u01b0\u1eddng
-generate=Xu\u1ea5t b\u00e1o c\u00e1o
-copy_items=Sao ch\u00e9p ph\u1ea7n t\u1eed
-calculation=S\u1ef1 t\u00ednh to\u00e1n
-please_wait=Vui l\u00f2ng ch\u1edd \u0111\u1ee3i trong gi\u00e2y l\u00e1t!
-row=D\u00f2ng
-preview_report=Xem tr\u01b0\u1edbc b\u00e1o c\u00e1o
-intro_configuration=Thi\u1ebft l\u1eadp \u0111\u01b0\u1eddng d\u1eabn tr\u1ecf t\u1edbi th\u01b0 m\u1ee5c l\u01b0u tr\u1eef c\u00e1c t\u1eadp tin m\u1eabu tr\u00ean m\u00e1y ch\u1ee7.\nCh\u00fa \u00fd: \u0110\u00e2y l\u00e0 \u0111\u01b0\u1eddng d\u1eabn t\u01b0\u01a1ng \u0111\u1ed1i.\nV\u00ed d\u1ee5: \\templatefiles d\u00e0nh cho Windows ho\u1eb7c /templatefiles cho Linux.
-warning_upload_is_null=Xin vui l\u00f2ng ch\u1ecdn t\u1eadp tin b\u1ea3ng c\u1ea7n t\u1ea3i l\u00ean!
-excel_file_directory=Th\u01b0 m\u1ee5c ch\u1ee9a m\u1eabu b\u00e1o c\u00e1o
-incompleted=Ch\u01b0a ho\u00e0n ch\u1ec9nh
-choose_orgunit_has_children=H\u00e3y ch\u1ecdn m\u1ed9t \u0111\u01a1n v\u1ecb cha
-layout=S\u1eafp x\u1ebfp
-last_3_month=3 th\u00e1ng g\u1ea7n nh\u1ea5t
-generate_export_report=Xu\u1ea5t b\u00e1o c\u00e1o
-vertical=H\u00e0ng d\u1ecdc
-organisation=\u0110\u01a1n v\u1ecb
-sheetNo=B\u1ea3ng s\u1ed1
-copy_successful=Sao ch\u00e9p th\u00e0nh c\u00f4ng!
-listing=Danh s\u00e1ch
-available_dataelementgroups=Nh\u00f3m d\u1eef li\u1ec7u c\u00f3 s\u1eb5n
-please_enter_sheet_no=Vui l\u00f2ng nh\u1eadp 's\u1ed1 b\u1ea3ng'
-configuration=C\u1ea5u h\u00ecnh
-level_and_orgunit_group=C\u1ea5p v\u00e0 nh\u00f3m \u0111\u01a1n v\u1ecb
-startdate_null=H\u00e3y nh\u1eadp v\u00e0o m\u1ed9t ng\u00e0y b\u1eaft \u0111\u1ea7u
-period_type=Period type
-confirm_delete=C\u00f3 ch\u1eafc l\u00e0 b\u1ea1n mu\u1ed1n x\u00f3a kh\u00f4ng?
-choose_category_combo=Ch\u1ecdn Lo\u1ea1i t\u1eadp h\u1ee3p k\u1ebft h\u1ee3p
-view_data=Xem d\u1eef li\u1ec7u
-import_item=Ph\u1ea7n t\u1eed t\u00edch h\u1ee3p
-intro_excel_template_management=T\u1ea3i l\u00ean, \u0111\u1ed5i t\u00ean, t\u00ecm ki\u1ebfm, t\u1ea3i v\u1ec1 v\u00e0 x\u00f3a c\u00e1c t\u1eadp tin c\u00f3 \u0111u\u00f4i m\u1edf r\u1ed9ng .xls ho\u1eb7c .xlsx. Ng\u01b0\u1eddi d\u00f9ng c\u00f3 th\u1ec3 nh\u1eadn bi\u1ebft t\u1eadp tin n\u00e0o \u0111ang \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng v\u00e0 t\u1eadp tin n\u00e0o ch\u01b0a d\u00f9ng \u0111\u1ebfn. Cho ph\u00e9p t\u1ef1 \u0111\u1ed9ng c\u1eadp nh\u1eadt l\u1ea1i h\u1ec7 th\u1ed1ng b\u00e1o c\u00e1o b\u1ea3ngl khi t\u00ean t\u1eadp tin \u0111ang s\u1eed d\u1ee5ng thay \u0111\u1ed5i.
-full_style_=\u0111\u1ea7y \u0111\u1ee7
-category=Ph\u00e2n lo\u1ea1i
-update_successful=C\u1eadp nh\u1eadt th\u00e0nh c\u00f4ng!
-row_is_null=Vui l\u00f2ng nh\u1eadp v\u1ecb tr\u00ed d\u00f2ng!
-bookmark_chart=Bi\u1ec3u \u0111\u1ed3 \u0111\u01b0\u1ee3c \u0111\u00e1nh d\u1ea5u
-view_chart=Xem bi\u1ec3u \u0111\u1ed3
-selected_period=th\u1eddi \u0111i\u1ec3m \u0111\u01b0\u1ee3c ch\u1ecdn
-preview=Xem tr\u01b0\u1edbc
-column=C\u1ed9t
-NORMAL=B\u00ecnh th\u01b0\u1eddng
-name_is_null=Vui l\u00f2ng nh\u1eadp t\u00ean!
-file_exists=T\u1eadp tin b\u1ea3ng n\u00e0y \u0111ang t\u1ed3n t\u1ea1i!
-choose_dataelement=Ch\u01b0a ch\u1ecdn ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
-select_categorycombo=Ch\u1ecdn Lo\u1ea1i t\u1eadp h\u1ee3p k\u1ebft h\u1ee3p
-plus=Ph\u00e9p c\u1ed9ng
-column_is_null=Vui l\u00f2ng nh\u1eadp s\u1ed1 c\u1ed9t!
-update_sorted_dataelement=C\u1eadp nh\u1eadt th\u1ee9 t\u1ef1 d\u1eef li\u1ec7u
-last_6_month=6 th\u00e1ng g\u1ea7n nh\u1ea5t
-organisation_chart=Bi\u1ec3u \u0111\u1ed3 \u0111\u01a1n v\u1ecb
-intro_export_reports=T\u1ea1o m\u1edbi, c\u1eadp nh\u1eadt, xem v\u00e0 x\u00f3a c\u00e1c b\u00e1o c\u00e1o b\u1ea3ngl. M\u1ed9t b\u00e1o c\u00e1o b\u1ea3ngl ch\u1ee9a nhi\u1ec1u ph\u1ea7n t\u1eed. B\u00e1o c\u00e1o b\u1ea3ng c\u00f3 th\u1ec3 thu\u1ed9c nhi\u1ec1u lo\u1ea1i b\u00e1o c\u00e1o kh\u00e1c nhau. Cho ph\u00e9p g\u00e1n b\u00e1o c\u00e1o cho m\u1ed9t hay nhi\u1ec1u \u0111\u01a1n v\u1ecb ho\u1eb7c nh\u00f3m \u0111\u01a1n v\u1ecb v\u00e0 m\u1ed9t s\u1ed1 t\u00f9y ch\u1ecdn kh\u00e1c.
-subtitle=Ph\u1ee5 \u0111\u1ec1
-import_type=Lo\u1ea1i t\u00edch h\u1ee3p
-expression_not_well_formed=Bi\u1ec3u th\u1ee9c sai \u0111\u1ecbnh d\u1ea1ng
-advanced=N\u00e2ng cao
-file_type_not_supported=Lo\u1ea1i t\u1eadp tin n\u00e0y kh\u00f4ng \u0111\u01b0\u1ee3c h\u1ed7 tr\u1ee3
-confirm_update_system=B\u1ea1n c\u00f3 mu\u1ed1n c\u1eadp nh\u1eadt l\u1ea1i H\u1ec7 th\u1ed1ng b\u00e1o c\u00e1o?
-CATEGORY=Ph\u00e2n lo\u1ea1i
-the_specified_report_is_not_exist=C\u1ea3nh b\u00e1o! B\u00e1o c\u00e1o n\u00e0y hi\u1ec7n t\u1ea1i kh\u00f4ng c\u00f2n hi\u1ec7u l\u1ef1c/t\u1ed3n t\u1ea1i.
-yealy=H\u1eb1ng n\u0103m
-export_reports=B\u00e1o c\u00e1o Xu\u1ea5t
-excel_importing=\u0110ang t\u00edch h\u1ee3p b\u1ea3ng
-organisationunit_is_null=Vui l\u00f2ng ch\u1ecdn \u0111\u01a1n v\u1ecb!
-intro_chart=T\u1ea1o m\u1edbi, thay \u0111\u1ed5i, x\u00f3a, v\u00e0 xem bi\u1ec3u \u0111\u1ed3
-cleanup_success=\u0110\u00e3 x\u00f3a th\u01b0 m\u1ee5c t\u1ea1m
-LOAD_PERIOD_AUTO=T\u1ea3i th\u1eddi \u0111i\u1ec3m t\u1ef1 \u0111\u1ed9ng t\u00ednh \u0111\u1ebfn nay
-sheet_no=S\u1ed1 b\u1ea3ng
-intro_import_reports=T\u1ea1o m\u1edbi, c\u1eadp nh\u1eadt, x\u00f3a v\u00e0 xem c\u00e1c ph\u1ea7n t\u1eed \u0111\u1ec3 t\u00edch h\u1ee3p d\u1eef li\u1ec7u t\u1eeb c\u00e1c t\u1eadp tin b\u1ea3ng. C\u00e1c ph\u1ea7n t\u1eed n\u00e0y t\u01b0\u01a1ng \u0111\u01b0\u01a1ng v\u1edbi c\u00e1c ph\u1ea7n t\u1eed b\u00e1o c\u00e1o.
-filter_by_group=L\u1ecdc theo Nh\u00f3m ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
-size=K\u00edch th\u01b0\u1edbc
-middle=Gi\u1eefa
-period_chart=Bi\u1ec3u \u0111\u1ed3 th\u1eddi gian
-select_report=[Select report]
-levels=C\u1ea5p
-move_all=Ch\u1ecdn t\u1ea5t c\u1ea3
-import_reports=B\u00e1o c\u00e1o Nh\u1eadp
-intro_data_status=Ch\u1ee9c n\u0103ng n\u00e0y d\u00f9ng \u0111\u1ec3 xem tr\u1ea1ng th\u00e1i nh\u1eadp d\u1eef li\u1ec7u (D\u1eef li\u1ec7u \u0111\u01b0\u1ee3c nh\u1eadp xong hay ch\u01b0a ho\u1eb7c s\u1ed1 li\u1ec7u n\u00e0o c\u00f2n thi\u1ebfu v.v...).
-remove_all=B\u1ecf t\u1ea5t c\u1ea3
-update_import_item=Ch\u1ec9nh s\u1eeda ph\u1ea7n t\u1eed b\u00e1o c\u00e1o Nh\u1eadp
-name_ready_exist=T\u00ean n\u00e0y \u0111\u00e3 t\u1ed3n t\u1ea1i!
-length_filename_min5_max30=\u0110\u1ed9 d\u00e0i c\u1ee7a t\u00ean t\u1eadp tin t\u1ed1i thi\u1ec3u l\u00e0 5 v\u00e0 t\u1ed1i \u0111a l\u00e0 30 
-category_list=Danh s\u00e1ch c\u00e1c Lo\u1ea1i t\u1eadp h\u1ee3p
-indicator=Ch\u1ec9 s\u1ed1
-clean=X\u00f3a t\u1ea5t c\u1ea3
-period_listing_importing_not_support=R\u1ea5t ti\u1ebfc, hi\u00ean t\u1ea1i lo\u1ea1i th\u1eddi \u0111i\u1ec3m t\u00edch h\u1ee3p n\u00e0y ch\u01b0a \u0111\u01b0\u1ee3c h\u1ed7 tr\u1ee3.
-available_dataelements=Ph\u1ea7n t\u1eed \u0111\u01b0\u1ee3c ch\u1ecdn
-choose_import_item=Ch\u1ecdn ph\u1ea7n t\u1eed c\u1ea7n t\u00edch h\u1ee3p
-import_excel_file_manager=T\u00edch h\u1ee3p t\u1eadp tin b\u1ea3ng
-template_excel_file=T\u1eadp tin b\u1ea3ng m\u1eabu
-define_associations=G\u00e1n b\u00e1o c\u00e1o v\u1edbi \u0111\u01a1n v\u1ecb
-description_is_null=H\u00e3y nh\u1eadp v\u00e0o m\u00f4 t\u1ea3!
-choose_orgunit_group=Nh\u00f3m \u0111\u01a1n v\u1ecb
-temp_folder_is_empty=\u0110\u00e3 d\u1ecdn s\u1ea1ch r\u00e1c
-entried=\u0110\u00e3 nh\u1eadp
-select_period_type=[Ch\u1ecdn th\u1eddi \u0111i\u1ec3m]
-value_rounded=Gi\u00e1 tr\u1ecb n\u00e0y c\u00f3 th\u1ec3 \u0111\u00e3 \u0111\u01b0\u1ee3c l\u00e0m tr\u00f2n
-selected_dataset=T\u1eadp d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c ch\u1ecdn
-clean_up=Clean temporary directory
-column_=c\u1ed9t
-ready_in_use=T\u1eadp tin s\u1eb5n s\u00e0ng \u0111\u1ec3 s\u1eed d\u1ee5ng. Kh\u00f4ng \u0111\u01b0\u1ee3c x\u00f3a!
-selected_user_roles=Ph\u00e2n quy\u1ec1n \u0111\u01b0\u1ee3c ch\u1ecdn
-generate_advanced_report=Xu\u1ea5t b\u00e1o c\u00e1o m\u1edf r\u1ed9ng
-dataelement_groups=Nh\u00f3m ph\u1ea7n t\u1eed d\u1eef li\u1ec7u
-expression_is_null=Vui l\u00f2ng nh\u1eadp bi\u1ec3u th\u1ee9c!
-export_item=Ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-administration=Qu\u1ea3n tr\u1ecb
-_excel_item=Th\u00eam ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-import=T\u00edch h\u1ee3p d\u1eef li\u1ec7u
-copy_import_item_to_importreport=Sao ch\u00e9p ph\u1ea7n t\u1eed Nh\u1eadp t\u1edbi b\u00e1o c\u00e1o Nh\u1eadp
-import_excel_file=T\u00edch h\u1ee3p d\u1eef li\u1ec7u t\u1eeb b\u00e1o c\u00e1o b\u1ea3ng
-select_organisation=Vui l\u00f2ng ch\u1ecdn \u0111\u01a1n v\u1ecb
-import_unsuccessfully=T\u00edch h\u1ee3p kh\u00f4ng th\u00e0nh c\u00f4ng
-translation_translate=D\u1ecbch
-update_sort_dataelement_success=S\u1eafp x\u1ebfp th\u1ee9 t\u1ef1 ph\u1ea7n t\u1eed th\u00e0nh c\u00f4ng
-axis_y=Tr\u1ee5c tung (y)
-axis_x=Tr\u1ee5c ho\u00e0nh (x)
-associations=Li\u00ean k\u1ebft
-selected_data_elements=D\u1eef li\u1ec7u \u0111\u01b0\u1ee3c ch\u1ecdn
-title=Ti\u00eau \u0111\u1ec1
-intro_data_status_management=\u0110\u00e2y l\u00e0 ch\u1ee9c n\u0103ng xem t\u00ecnh tr\u1ea1ng d\u1eef li\u1ec7u nh\u1eadp (D\u1eef li\u1ec7u \u0111\u01b0\u1ee3c nh\u1eadp v\u00e0o, ho\u00e0n th\u00e0nh hay thi\u1ebfu s\u00f3t, v.v.).
-use_only_letters_numbers_dot_only=Ch\u1ec9 nh\u1eadp K\u00fd t\u1ef1 v\u00e0 S\u1ed1 cho t\u00ean t\u1eadp tin v\u00e0 D\u1ea5u ch\u1ea5m(.) cho ph\u1ea7n \u0111u\u00f4i m\u1edf r\u1ed9ng
-report_import_item=Ph\u1ea7n t\u1eed b\u00e1o c\u00e1o
-period_postion_row=H\u00e0ng \u0111\u1ecbnh v\u1ecb th\u1eddi gian
-file_format_structure_broken=C\u1ea3nh b\u00e1o! C\u1ea5u tr\u00fac \u0111\u1ecbnh d\u1ea1ng t\u1eadp tin kh\u00f4ng b\u1ecb ph\u00e1 v\u1ee1.
-color=M\u00e0u s\u1eafc
-remove_available=Tr\u1ea3 v\u1ec1
-template_status=Tr\u1ea1ng th\u00e1i t\u1eadp tin
-bookmark=\u0110\u00e1nh d\u1ea5u
-divide=Ph\u00e9p chia
-de_in_chart=Bi\u1ec3u \u0111\u1ed3 d\u1eef li\u1ec7u/ch\u1ec9 s\u1ed1
-load_period_by=Th\u1eddi \u0111i\u1ec3m theo
-grouplisting=Danh s\u00e1ch nh\u00f3m
-config_path_invalid=C\u1ea5u h\u00ecnh kh\u00f4ng h\u1ee3p l\u1ec7! Ch\u1ec9 cho ph\u00e9p nh\u1eadp ch\u1eef c\u00e1i, ch\u1eef s\u1ed1, k\u00fd t\u1ef1 g\u1ea1ch d\u01b0\u1edbi, g\u1ea1ch ngang v\u00e0 kho\u1ea3ng tr\u1eafng.
-quaterly=H\u1eb1ng qu\u00fd
-confirm_override=B\u1ea1n c\u00f3 mu\u1ed1n ghi \u0111\u00e8 l\u00ean t\u1eadp tin \u0111\u00e3 c\u00f3?
-dataset_is_null=H\u00e3y ch\u1ecdn t\u1eadp d\u1eef li\u1ec7u!
-there_is_no_import_report=Kh\u00f4ng c\u00f3 ph\u1ea7n t\u1eed t\u00edch h\u1ee3p/b\u00e1o c\u00e1o n\u00e0o trong h\u1ec7 th\u1ed1ng
-upload_file_first=T\u1ea3i l\u00ean t\u1eadp tin tr\u01b0\u1edbc!
-copy_import_item_to_exportreport=Sao ch\u00e9p ph\u1ea7n t\u1eed Nh\u1eadp t\u1edbi b\u00e1o c\u00e1o Xu\u1ea5t
-make_default=Ch\u1ecdn l\u00e0m m\u1eb7c \u0111\u1ecbnh
-report_ready_exist=B\u00e1o c\u00e1o \u0111\u00e3 t\u1ed3n t\u1ea1i
-choose_export_report=Ch\u01b0a ch\u1ecdn b\u00e1o c\u00e1o xu\u1ea5t
-update_export_item=Ch\u1ec9nh s\u1eeda ph\u1ea7n t\u1eed b\u00e1o c\u00e1o Xu\u1ea5t
-indicator_groups=Nh\u00f3m ch\u1ec9 s\u1ed1
-import_successfully=T\u00edch h\u1ee3p th\u00e0nh c\u00f4ng
-excel_is_null=Vui l\u00f2ng nh\u1eadp \u0111\u01b0\u1eddng d\u1eabn m\u1eabu b\u00e1o c\u00e1o!
-intro_import_report=T\u1ea1o m\u1edbi, c\u1eadp nh\u1eadt, xem v\u00e0o x\u00f3a c\u00e1c ph\u1ea7n t\u1eed excel cho qu\u00e1 tr\u00ecnh import d\u1eef li\u1ec7u t\u1eeb t\u1eadp tin excel. Ph\u1ea7n t\u1eed import excel n\u00e0y c\u00f3 ch\u1ee9c n\u0103ng g\u1ea7n gi\u1ed1ng v\u1edbi ph\u1ea7n t\u1eed export excel.
-horizontal=H\u00e0ng ngang
-item_type=Ki\u1ec3u ph\u1ea7n t\u1eed
-draw_chart=V\u1ebd bi\u1ec3u \u0111\u1ed3
-available_indicators=Ch\u1ec9 s\u1ed1 c\u00f3 s\u1eb5n
-dataset_completed_report=Xem t\u00ecnh h\u00ecnh nh\u1eadp b\u00e1o c\u00e1o
-selected=\u0110\u01b0\u1ee3c ch\u1ecdn
-working_in_progress=\u0110ang x\u1eed l\u00fd ...
-organisation_position_=\u0111\u1ecbnh v\u1ecb \u0111\u01a1n v\u1ecb
-organisation_position_row=C\u1ed9t \u0111\u1ecbnh v\u1ecb d\u00f2ng
-cell_exist=\u0110\u00e3 t\u1ed3n t\u1ea1i ph\u1ea7n t\u1eed c\u00f3 c\u00f9ng d\u00f2ng, c\u1ed9t v\u00e0 b\u1ea3ng.
-rename_failed=\u0110\u1ed5i t\u00ean kh\u00f4ng th\u00e0nh c\u00f4ng
-formula_is_invalid=Bi\u1ec3u th\u1ee9c kh\u00f4ng h\u1ee3p l\u1ec7 !
-view=Xem b\u00e1o c\u00e1o
-deleted_file=C\u00e1c t\u1eadp tin \u0111\u00e3 x\u00f3a
-PERIOD_COLUMN_LISTING=Li\u1ec7t k\u00ea th\u1eddi \u0111i\u1ec3m theo c\u1ed9t
-upload_successful=T\u1ea3i t\u1eadp tin th\u00e0nh c\u00f4ng !
-override_confirm=B\u1ea3ng m\u1eabu \u0111\u00e3 t\u1ed3n t\u1ea1i. B\u1ea1n c\u00f3 mu\u1ed1n ghi \u0111\u00e8 hay kh\u00f4ng ?
-no_group_order_created_for_category=Kh\u00f4ng c\u00f3 nh\u00f3m s\u1eafp x\u1ebfp \u0111\u01b0\u1ee3c t\u1ea1o cho b\u00e1o c\u00e1o ph\u00e2n lo\u1ea1i n\u00e0y
-group_order=Nh\u00f3m ph\u1ea7n t\u1eed d\u1eef li\u1ec7u s\u1eafp x\u1ebfp (Category)
-has_no_element=kh\u00f4ng c\u00f3 t\u1eadp con
-indicator_with_id=Ch\u1ec9 s\u1ed1 c\u00f3 m\u00e3
-dataelement_with_id=Ph\u1ea7n t\u1eed d\u1eef li\u1ec7u c\u00f3 m\u00e3
-cate_option_combo_with_id=T\u1eadp m\u1ee5c ch\u1ecdn ph\u00e2n lo\u1ea1i c\u00f3 m\u00e3
-does_not_exist=kh\u00f4ng t\u1ed3n t\u1ea1i
-Period_columns=C\u1ed9t th\u1eddi \u0111i\u1ec3m
-period_columns=Period columns

=== modified file 'local/vn/dhis-web-dataentry-hospital/src/main/resources/struts.xml'
--- local/vn/dhis-web-dataentry-hospital/src/main/resources/struts.xml	2012-03-24 01:29:01 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/resources/struts.xml	2012-03-26 02:41:46 +0000
@@ -10,7 +10,7 @@
 		namespace="/dhis-web-dataentry-hospital">
 
 		<action name="index" class="org.hisp.dhis.dataelement.LoadFormAction">
-			<result name="success" type="redirect">loadForm.action
+			<result name="success" type="redirect">../dhis-web-dataentry/index.action
 			</result>
 		</action>
 
@@ -22,6 +22,10 @@
 	      <result name="default" type="velocity">/dhis-web-dataentry/defaultForm.vm</result>
 	      <result name="input" type="velocity">/dhis-web-dataentry/responseVoid.vm</result>
 	    </action>
+	    
+	    <action name="loadAttributeValuesByAttribute" class="org.hisp.dhis.dataelement.LoadAttributeValuesByAttributeAction">
+	      <result name="success" type="velocity-json">/dhis-web-dataentry/jsonAttributeValues.vm</result>
+	    </action>
 
 	</package>
 </struts>
\ No newline at end of file

=== added file 'local/vn/dhis-web-dataentry-hospital/src/main/webapp/main.vm'
--- local/vn/dhis-web-dataentry-hospital/src/main/webapp/main.vm	1970-01-01 00:00:00 +0000
+++ local/vn/dhis-web-dataentry-hospital/src/main/webapp/main.vm	2012-03-26 02:41:46 +0000
@@ -0,0 +1,206 @@
+<!DOCTYPE HTML>
+<html#if( $offline && $offline == "true" ) manifest="../dhis-web-commons/cacheManifest.action"#end>
+  <head>
+    <title>DHIS 2</title>
+	<link type="text/css" rel="stylesheet" media="screen" href="../dhis-web-commons/javascripts/jQuery/ui/css/redmond/jquery-ui-1.8.12.custom.css" />
+    <link type="text/css" rel="stylesheet" media="screen" href="../dhis-web-commons/css/${stylesheet}" />
+    <link type="text/css" rel="stylesheet" media="screen" href="../dhis-web-commons/css/widgets.css" />
+
+    <link type="image/png" rel="icon" href="../images/favicon.png" />
+
+    #foreach ( $style in $stylesheets )
+      <link type="text/css" rel="stylesheet" href="$style">
+    #end
+    
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+
+    <script type="text/javascript">
+		var dateFormat = 'yy-mm-dd';
+	</script>
+
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.min.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.ext.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.metadata.js"></script>	
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.tablesorter.min.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.upload-1.0.2.min.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.dhisAjaxSelect.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.utils.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/ui/jquery-ui-1.8.12.custom.min.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/ui/jquery.blockUI.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.validate.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.validate.ext.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.cookie.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.glob.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.date.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/javascripts/jQuery/jquery.tmpl.js"></script>
+	<script type="text/javascript" src="../dhis-web-commons/i18nJavaScript.action"></script>
+	<script type="text/javascript" src="../dhis-web-commons/messagesJavaScript.action"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/commons.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/commons.ajax.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/lists.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/periodType.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/date.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/json2.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/validationRules.js"></script>
+
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/dhis2/dhis2.util.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/dhis2/dhis2.array.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/dhis2/dhis2.select.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/dhis2/dhis2.comparator.js"></script>
+    <script type="text/javascript" src="../dhis-web-commons/javascripts/dhis2/dhis2.availability.js"></script>
+
+    <script type="text/javascript" src="../dhis-web-commons/css/${stylesheetDirectory}/dom.js"></script>
+		
+    <script type="text/javascript" src="../main.js"></script>
+  
+    <script type="text/javascript" src="../request.js"></script>
+    #foreach( $javascript in $javascripts )
+      <script type="text/javascript" src="$javascript"></script>
+    #end
+
+	<script type="text/javascript">
+		jQuery(document).ready(function() {
+			#if ( $maintenanceModules.size() > 0 )
+			jQuery("#menuLink1").hover(function() {
+				showDropDown( 'menuDropDown1' );
+			}, function() {
+				hideDropDownTimeout();
+			});
+			#end
+
+			#if ( $serviceModules.size() > 0 )
+			jQuery("#menuLink2").hover(function() {
+				showDropDown( 'menuDropDown2' );
+			}, function() {
+				hideDropDownTimeout();
+			});
+			#end
+
+			jQuery("#menuLink3").hover(function() {
+				showDropDown( 'menuDropDown3' );
+			}, function() {
+				hideDropDownTimeout();
+			});
+
+			jQuery("#menuLink4").click( function() {
+				jQuery.cookie('pageSize', null, {path:'/'});
+				window.location.href='../dhis-web-commons-security/logout.action';
+			});
+
+			jQuery("#menuDropDown1, #menuDropDown2, #menuDropDown3").hover(function() {
+				cancelHideDropDownTimeout();
+			}, function() {
+				hideDropDownTimeout();
+			});
+		});
+	</script>
+  </head>
+  
+  <body>
+    
+    #parse( "macros.vm" )
+        
+    <div id="header">
+      <img id="headerBanner" src="../dhis-web-commons/css/${stylesheetDirectory}/logo_banner.png" 
+        onclick="window.location.href='../dhis-web-commons-about/modules.action'" style="cursor:pointer" title="$i18n.getString( 'go_to_system_overview' )">
+      
+      <img id="menuSeparator1" src="../dhis-web-commons/css/${stylesheetDirectory}/logo_separator.png">
+      <img id="menuSeparator2" src="../dhis-web-commons/css/${stylesheetDirectory}/logo_separator.png">
+      <img id="menuSeparator3" src="../dhis-web-commons/css/${stylesheetDirectory}/logo_separator.png">
+      <img id="menuSeparator4" src="../dhis-web-commons/css/${stylesheetDirectory}/logo_separator.png">
+      <img id="menuSeparator5" src="../dhis-web-commons/css/${stylesheetDirectory}/logo_separator.png">
+
+      <div id="menuLink1" class="menuLink">$i18n.getString( "maintenance" )</div>
+      <div id="menuLink2" class="menuLink">$i18n.getString( "services" )</div>
+      <div id="menuLink3" class="menuLink">$i18n.getString( "help" )</div>
+      <div id="menuLink4" class="menuLink">$i18n.getString( "log_out" )</div>
+
+      <div id="menuDropDown1" class="menuDropDownArea" >
+        <ul class="menuDropDownBox">
+        #foreach( $module in $maintenanceModules )
+          #if( $auth.hasAccess( $module.name, "index" ) )
+            <li class="menuDropDownItem" onclick="window.location.href='${module.defaultAction}'">
+            	<a href="${module.defaultAction}">$i18n.getString( $module.name )&nbsp;</a>
+            </li>
+          #end
+        #end
+        </ul>      
+      </div>
+
+      <div id="menuDropDown2" class="menuDropDownArea">
+        <ul class="menuDropDownBox">
+        #foreach( $module in $serviceModules )
+          #if( $auth.hasAccess( $module.name, "index" ) )
+            #if( $module.name!='dhis-web-dataentry-hospital' )
+				<li class="menuDropDownItem" onclick="window.location.href='${module.defaultAction}'">
+					<a href="${module.defaultAction}">$i18n.getString( $module.name )&nbsp;</a>
+				</li>
+			#end
+          #end
+        #end
+        </ul>      
+      </div>
+	  
+      <div id="menuDropDown3" class="menuDropDownArea">
+        <ul class="menuDropDownBox">
+		  <li class="menuDropDownItem" id="menuDropDownHelpCenter">$i18n.getString( "help_center" )&nbsp;</li>
+          <li class="menuDropDownItem" id="menuDropDownChangeLog">$i18n.getString( "change_log" )&nbsp;</li>
+          <li class="menuDropDownItem" id="menuDropDownSupportiveSoftware">$i18n.getString( "supportive_software" )&nbsp;</li>
+          <li class="menuDropDownItem" id="menuDropDownUserAccount">$i18n.getString( "user_account" )&nbsp;</li>
+          <li class="menuDropDownItem" id="menuDropDownModuleOverview">$i18n.getString( "system_overview" )&nbsp;</li>
+          <li class="menuDropDownItem" id="menuDropDownWebApi">$i18n.getString( "web_api" )&nbsp;</li>
+          <li class="menuDropDownItem" id="menuDropDownAboutDHIS2">$i18n.getString( "about_dhis2" )&nbsp;</li>
+        </ul>
+      </div>
+	  
+      <span id="headerText" onclick="window.location.href='../dhis-web-commons-about/modules.action'" style="cursor:pointer">
+        #if ( $applicationTitle )
+          $encoder.htmlEncode( $applicationTitle )
+        #else
+          District Health Information Software 2
+        #end
+      </span>
+      
+      <span id="showLeftBar">
+        <a href="javascript:leftBar.showAnimated()" title="$i18n.getString( "show_menu" )">
+          <img src="../images/show_menu.png" width="16" height="16" alt="$i18n.getString( "show_menu" )"></a>
+      </span>
+    </div>
+
+    <div id="leftBar">    
+      <span id="hideLeftBar">
+        <a href="index.action" title="$i18n.getString( "show_main_menu" )" id="showMainMenuLink">
+          <img src="../images/home_small.png" width="16" height="16" title="$i18n.getString( "show_main_menu" )"></a>
+        <a href="javascript:leftBar.hideAnimated()" title="$i18n.getString( "hide_menu" )" id="hideMainMenuLink">
+          <img src="../images/hide_menu.png" width="16" height="16" title="$i18n.getString( "hide_menu" )"></a>
+      </span>
+      
+      <div id="leftBarContents">
+        #parse( $menu )
+      </div>
+    </div>
+        
+    <div id="headerMessage" class="bold"></div>
+        
+    <div class="page" id="mainPage">
+      #if( !$page )
+        <p>$i18n.getString( "no_page_specified" )</p>
+      #else
+        #parse( $page )
+      #end
+    </div>
+    #if( !$menuState.visible )
+      <script type="text/javascript">
+        leftBar.hide();
+      </script>
+    #end
+    
+    <div id="rightBar">
+      <span id="hideRightBar"><a href="javascript:hideHelpContent()" title="$i18n.getString( 'close' )">
+        <img id="hideRightBarImg" src="../images/hide.png" alt="$i18n.getString( 'close' )"></a>
+      </span>
+      <div id="rightBarContents"/>
+    </div>
+	
+  </body>
+</html>