=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/patient/PatientRegistrationFormService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/patient/PatientRegistrationFormService.java 2013-09-27 07:43:07 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/patient/PatientRegistrationFormService.java 2013-09-27 11:10:25 +0000
@@ -59,6 +59,10 @@
final Pattern TITLE_TAG_PATTERN = Pattern.compile( "title=\"(.*?)\"", Pattern.DOTALL );
+ final Pattern SUGGESTED_VALUE_PATTERN = Pattern.compile( "suggested=('|\")(\\w*)('|\")" );
+
+ final Pattern CLASS_PATTERN = Pattern.compile( "class='(\\w*)'" );
+
// --------------------------------------------------------------------------
// ProgramDataEntryService
// --------------------------------------------------------------------------
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramPatientProperty.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramPatientProperty.java 2013-09-27 07:43:07 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramPatientProperty.java 2013-09-27 11:10:25 +0000
@@ -54,7 +54,7 @@
private String defaultValue;
- private boolean hidden = false;
+ private boolean hidden;
private int sortOrder;
=== modified file 'dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/patient/DefaultPatientRegistrationFormService.java'
--- dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/patient/DefaultPatientRegistrationFormService.java 2013-09-27 07:43:07 +0000
+++ dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/patient/DefaultPatientRegistrationFormService.java 2013-09-27 11:10:25 +0000
@@ -39,8 +39,6 @@
import org.hisp.dhis.patientattributevalue.PatientAttributeValueService;
import org.hisp.dhis.program.Program;
import org.hisp.dhis.program.ProgramInstance;
-import org.hisp.dhis.program.ProgramPatientProperty;
-import org.hisp.dhis.program.ProgramPatientPropertyService;
import org.hisp.dhis.user.User;
import org.springframework.transaction.annotation.Transactional;
@@ -100,13 +98,6 @@
this.attributeValueService = attributeValueService;
}
- private ProgramPatientPropertyService programPatientPropertyService;
-
- public void setProgramPatientPropertyService( ProgramPatientPropertyService programPatientPropertyService )
- {
- this.programPatientPropertyService = programPatientPropertyService;
- }
-
// -------------------------------------------------------------------------
// PatientRegistrationForm implementation
// -------------------------------------------------------------------------
@@ -174,6 +165,8 @@
Matcher identifierMatcher = IDENTIFIER_PATTERN.matcher( inputHtml );
Matcher dynamicAttrMatcher = DYNAMIC_ATTRIBUTE_PATTERN.matcher( inputHtml );
Matcher programMatcher = PROGRAM_PATTERN.matcher( inputHtml );
+ Matcher suggestedMarcher = SUGGESTED_VALUE_PATTERN.matcher( inputHtml );
+ Matcher classMarcher = CLASS_PATTERN.matcher( inputHtml );
index++;
@@ -184,14 +177,6 @@
// Get value
String value = "";
String hidden = "";
-
- ProgramPatientProperty programPatientProperty = programPatientPropertyService.getProgramPatientProperty( program, fixedAttr );
- if (programPatientProperty != null)
- {
- hidden = programPatientProperty.isHidden() ? "hidden" : "";
- value = programPatientProperty.getDefaultValue();
- }
-
if ( patient != null )
{
Object object = getValueFromPatient( fixedAttr, patient );
@@ -211,6 +196,15 @@
}
}
}
+ else if ( suggestedMarcher.find() )
+ {
+ value = suggestedMarcher.group( 2 );
+ }
+
+ if ( classMarcher.find() )
+ {
+ hidden = classMarcher.group( 1 );
+ }
inputHtml = getFixedAttributeField( inputHtml, fixedAttr, value.toString(), hidden, healthWorkers,
i18n, index );
@@ -229,15 +223,6 @@
int id = identifierType.getId();
// Get value
String value = "";
- String hidden = "";
-
- ProgramPatientProperty programPatientProperty = programPatientPropertyService.getProgramPatientProperty( program, identifierType );
- if (programPatientProperty != null)
- {
- hidden = programPatientProperty.isHidden() ? "hidden" : "";
- value = programPatientProperty.getDefaultValue();
- }
-
if ( patient != null )
{
PatientIdentifier patientIdentifier = identifierService.getPatientIdentifier( identifierType,
@@ -252,7 +237,7 @@
inputHtml = "
-
fixedProperties;
-
- public Collection getFixedProperties()
- {
- return fixedProperties;
- }
-
private PatientRegistrationForm registrationForm;
public PatientRegistrationForm getRegistrationForm()
@@ -194,15 +187,10 @@
else
{
program = programService.getProgram( programId );
-
+
identifierTypes.addAll( programPatientPropertyService.getPatientIdentifierTypes( program ) );
attributes.addAll( programPatientPropertyService.getPatientAttributes( program ) );
- fixedProperties = programPatientPropertyService.getPatientProperties( program );
- if ( fixedProperties == null )
- {
- fixedProperties = new HashSet();
- }
-
+
registrationForm = patientRegistrationFormService.getPatientRegistrationForm( program );
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/program/UpdateProgramAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/program/UpdateProgramAction.java 2013-09-27 07:43:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/program/UpdateProgramAction.java 2013-09-27 11:10:25 +0000
@@ -483,6 +483,7 @@
}
else
{
+ programPatientProperty.setProgram( program );
programPatientProperty.setHidden( hiddens.get( index ) );
programPatientProperty.setDefaultValue( defaultValues.get( index ) );
programPatientProperty.setSortOrder( index );
@@ -508,6 +509,7 @@
}
else
{
+ programPatientProperty.setProgram( program );
programPatientProperty.setHidden( hiddens.get( index ) );
programPatientProperty.setDefaultValue( defaultValues.get( index ) );
programPatientProperty.setSortOrder( index );
@@ -529,11 +531,12 @@
}
else
{
+ programPatientProperty.setProgram( program );
programPatientProperty.setHidden( hiddens.get( index ) );
programPatientProperty.setDefaultValue( defaultValues.get( index ) );
programPatientProperty.setSortOrder( index );
programPatientPropertyService.updateProgramPatientProperty( programPatientProperty );
-
+
removeProgramProperties.remove( programPatientProperty );
}
}