001package org.kuali.ole.select.lookup;
002
003import org.kuali.rice.kns.lookup.KualiLookupableImpl;
004import org.kuali.rice.kns.web.struts.form.LookupForm;
005import org.kuali.rice.kns.web.ui.Field;
006import org.kuali.rice.kns.web.ui.Row;
007
008import java.util.Iterator;
009
010/**
011 * Created with IntelliJ IDEA.
012 * User: vivekb
013 * Date: 2/26/14
014 * Time: 7:54 PM
015 * To change this template use File | Settings | File Templates.
016 */
017public class OLEPurchaseOrderItemLookupableImpl  extends KualiLookupableImpl{
018
019    /**
020     * calls the lookup helper service to do "clear" behaviors
021     *
022     */
023    @Override
024    public void performClear(LookupForm lookupForm) {
025        for (Iterator iter = this.getRows().iterator(); iter.hasNext();) {
026            Row row = (Row) iter.next();
027            for (Iterator iterator = row.getFields().iterator(); iterator.hasNext();) {
028                Field field = (Field) iterator.next();
029                if (!field.getPropertyName().equalsIgnoreCase("vendorHeaderGeneratedIdentifier") &&
030                        !field.getPropertyName().equalsIgnoreCase("vendorDetailAssignedIdentifier")) {
031                    if (field.isSecure()) {
032                        field.setSecure(false);
033                        field.setDisplayMaskValue(null);
034                        field.setEncryptedValue(null);
035                    }
036
037                    if (!field.getFieldType().equals(Field.RADIO)) {
038                        field.setPropertyValue(field.getDefaultValue());
039                        if (field.getFieldType().equals(Field.MULTISELECT)) {
040                            field.setPropertyValues(null);
041                        }
042                    }
043                }
044            }
045        }
046    }
047}