Index: sql/testdbinsertionscript.sql
===================================================================
--- sql/testdbinsertionscript.sql	(revision 12248)
+++ sql/testdbinsertionscript.sql	(working copy)
@@ -66,148 +66,154 @@
 /*master data for table FIELD_CONFIGURATION */
 /*Second Last Name for client and personnel*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(1,'SecondLastName',1,1,1);
+VALUES(1,'SecondLastName',1,1,0);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
 VALUES(2,'SecondLastName',17,1,1);
+/*Middle Name for client and personnel*/
+INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
+VALUES(3,'MiddleName',1,1,0);
 /*Government id*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(3,'GovernmentId',1,0,1);
+VALUES(4,'GovernmentId',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(4,'GovernmentId',17,0,1);
+VALUES(5,'GovernmentId',17,0,1);
 /*External id for cleint group center personnel*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(5,'ExternalId',1,1,1);
+VALUES(6,'ExternalId',1,1,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(6,'ExternalId',12,1,1);
+VALUES(7,'ExternalId',12,1,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(7,'ExternalId',20,1,1);
+VALUES(8,'ExternalId',20,1,1);
 /*Ethnicity, Citizenship, Handicapped, business Activities, Education Level, Photo*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(8,'Ethinicity',1,1,1);
+VALUES(9,'Ethinicity',1,1,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(9,'Citizenship',1,1,1);
+VALUES(10,'Citizenship',1,1,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(10,'Handicapped',1,1,1);
+VALUES(11,'Handicapped',1,1,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(11,'BusinessActivities',1,0,1);
+VALUES(12,'BusinessActivities',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(12,'EducationLevel',1,1,1);
+VALUES(13,'EducationLevel',1,1,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(13,'Photo',1,0,1);
+VALUES(14,'Photo',1,0,1);
 /*SpouseFatharSecondLastName for Client*/ 
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(14,'SpouseFatherSecondLastName',1,1,1);
+VALUES(15,'SpouseFatherSecondLastName',1,1,1);
+/*SpouseFatharMiddleName for Client*/ 
+INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
+VALUES(16,'SpouseFatherMiddleName',1,1,1);
 /*Trained and trained date*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(15,'Trained',1,0,1);
+VALUES(17,'Trained',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(16,'Trained',12,0,1);
+VALUES(18,'Trained',12,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(17,'TrainedDate',1,0,1);
+VALUES(19,'TrainedDate',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(18,'TrainedDate',12,0,1);
+VALUES(20,'TrainedDate',12,0,1);
 /*Entire Address for client*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(19,'Address',1,0,1);
+VALUES(21,'Address',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(20,'Address',12,1,0);
+VALUES(22,'Address',12,1,0);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(21,'Address',20,0,0);
+VALUES(23,'Address',20,0,0);
 /**Address 1 for client group and center*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(22,'Address1',1,0,1,19);
+VALUES(24,'Address1',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(23,'Address1',12,1,1,20);
+VALUES(25,'Address1',12,1,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(24,'Address1',20,0,1,21);
+VALUES(26,'Address1',20,0,1,21);
 /**Address 2 for client group and center*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(25,'Address2',1,0,1,19);
+VALUES(27,'Address2',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(26,'Address2',12,0,1,20);
+VALUES(28,'Address2',12,0,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(27,'Address2',20,0,1,21);
+VALUES(29,'Address2',20,0,1,21);
 /**Address 3*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(28,'Address3',1,0,1,19);
+VALUES(30,'Address3',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(29,'Address3',12,0,1,20);
+VALUES(31,'Address3',12,0,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(30,'Address3',20,0,1,21);
+VALUES(32,'Address3',20,0,1,21);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(31,'Address3',15,0,1);
+VALUES(33,'Address3',15,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(32,'Address3',17,0,1);
+VALUES(34,'Address3',17,0,1);
 /*City*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(33,'City',1,0,1,19);
+VALUES(35,'City',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(34,'City',12,1,1,20);
+VALUES(36,'City',12,1,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(35,'City',20,0,1,21);
+VALUES(37,'City',20,0,1,21);
 /*State*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(36,'State',1,0,1,19);
+VALUES(38,'State',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(37,'State',12,1,1,20);
+VALUES(39,'State',12,1,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(38,'State',20,0,1,21);
+VALUES(40,'State',20,0,1,21);
 /*Country*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(39,'Country',1,0,1,19);
+VALUES(41,'Country',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(40,'Country',12,1,1,20);
+VALUES(42,'Country',12,1,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(41,'Country',20,0,1,21);
+VALUES(43,'Country',20,0,1,21);
 /*Postal Code*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(42,'PostalCode',1,0,1,19);
+VALUES(44,'PostalCode',1,0,1,19);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(43,'PostalCode',12,1,1,20);
+VALUES(45,'PostalCode',12,1,1,20);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG,PARENT_FIELD_CONFIG_ID)
-VALUES(44,'PostalCode',20,1,0,21);
+VALUES(46,'PostalCode',20,1,0,21);
 /**Phone number*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(45,'PhoneNumber',1,0,1);
+VALUES(47,'PhoneNumber',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(46,'PhoneNumber',12,0,1);
+VALUES(48,'PhoneNumber',12,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(47,'PhoneNumber',20,0,1);
+VALUES(49,'PhoneNumber',20,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(48,'PhoneNumber',17,1,1);
+VALUES(50,'PhoneNumber',17,1,1);
 /*Purpose Of Loan*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(49,'PurposeOfLoan',22,1,0);
+VALUES(51,'PurposeOfLoan',22,1,0);
 /*Collateral Type and Notes For Loan*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(50,'CollateralType',22,0,1);
+VALUES(52,'CollateralType',22,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(51,'CollateralNotes',22,0,1);
+VALUES(53,'CollateralNotes',22,0,1);
 /*Receipt id and date*/
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(52,'ReceiptId',1,0,1);
+VALUES(54,'ReceiptId',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(53,'ReceiptId',12,0,1);
+VALUES(55,'ReceiptId',12,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(54,'ReceiptId',20,0,1);
+VALUES(56,'ReceiptId',20,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(55,'ReceiptId',21,0,1);
+VALUES(57,'ReceiptId',21,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(56,'ReceiptId',22,0,1);
+VALUES(58,'ReceiptId',22,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(57,'ReceiptId',23,0,1);
+VALUES(59,'ReceiptId',23,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(58,'ReceiptDate',1,0,1);
+VALUES(60,'ReceiptDate',1,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(59,'ReceiptDate',12,0,1);
+VALUES(61,'ReceiptDate',12,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(60,'ReceiptDate',20,0,1);
+VALUES(62,'ReceiptDate',20,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(61,'ReceiptDate',21,0,1);
+VALUES(63,'ReceiptDate',21,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(62,'ReceiptDate',22,0,1);
+VALUES(64,'ReceiptDate',22,0,1);
 INSERT INTO FIELD_CONFIGURATION(FIELD_CONFIG_ID,FIELD_NAME,ENTITY_ID,MANDATORY_FLAG,HIDDEN_FLAG)
-VALUES(63,'ReceiptDate',23,0,1);
+VALUES(65,'ReceiptDate',23,0,1);
 
 
 
Index: src/org/mifos/framework/components/fieldConfiguration/util/helpers/FieldConfig.java
===================================================================
--- src/org/mifos/framework/components/fieldConfiguration/util/helpers/FieldConfig.java	(revision 12248)
+++ src/org/mifos/framework/components/fieldConfiguration/util/helpers/FieldConfig.java	(working copy)
@@ -64,7 +64,7 @@
 				if ((fieldConfigurationEntity.getHiddenFlag().equals(
 						FieldConfigurationConstant.YES) || (parentfieldConfigurationEntity != null && parentfieldConfigurationEntity
 						.getHiddenFlag().equals(FieldConfigurationConstant.YES)))
-						&& fieldConfigurationEntity.getFieldName().endsWith(
+						&& fieldConfigurationEntity.getFieldName().equals(
 								fieldName)) {
 					return true;
 				}
Index: test/org/mifos/framework/components/fieldConfiguration/util/helpers/FieldConfigTest.java
===================================================================
--- test/org/mifos/framework/components/fieldConfiguration/util/helpers/FieldConfigTest.java	(revision 12248)
+++ test/org/mifos/framework/components/fieldConfiguration/util/helpers/FieldConfigTest.java	(working copy)
@@ -25,10 +25,12 @@
 		for(EntityMaster entityMaster : entityMasterList){
 			fieldConfig.getEntityFieldMap().put(entityMaster.getId(),persistence.getListOfFields(entityMaster.getId()));
 		}
+		assertEquals(fieldConfig.isFieldHidden("Client.MiddleName"),false);
 		assertEquals(fieldConfig.isFieldHidden("Loan.PurposeOfLoan"),false);
 		assertEquals(fieldConfig.isFieldHidden("Group.City"),true);
 		fieldConfig.getEntityFieldMap().clear();
 	}
+	
 
 	public void testIsFieldMandatory() throws HibernateProcessException, PersistenceException {
 		EntityMasterData.getInstance().init();
