001: /*
002: *
003: * Copyright (c) 2004 SourceTap - www.sourcetap.com
004: *
005: * The contents of this file are subject to the SourceTap Public License
006: * ("License"); You may not use this file except in compliance with the
007: * License. You may obtain a copy of the License at http://www.sourcetap.com/license.htm
008: * Software distributed under the License is distributed on an "AS IS" basis,
009: * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
010: * the specific language governing rights and limitations under the License.
011: *
012: * The above copyright notice and this permission notice shall be included
013: * in all copies or substantial portions of the Software.
014: *
015: */
016:
017: package com.sourcetap.sfa.ui;
018:
019: import java.util.ArrayList;
020: import java.util.List;
021: import java.util.Map;
022: import java.util.Vector;
023:
024: import org.ofbiz.base.util.Debug;
025: import org.ofbiz.entity.GenericDelegator;
026: import org.ofbiz.entity.GenericEntityException;
027:
028: import com.sourcetap.sfa.util.UserInfo;
029:
030: /**
031: * DOCUMENT ME!
032: *
033: */
034: public class UIHistoryDropDown extends UIDropDown {
035: public static final String module = UIHistoryDropDown.class
036: .getName();
037:
038: /**
039: * Return a list of values for a drop down using a UI Display Object defined in the data base.
040: * This method overrides the parent class. Note: This
041: * method is only used when the screen is first drawn. If the drop down list is updated dynamically, the
042: * getDropDownValuesDynamic method is used.
043: *
044: * @see #getDropDownValuesDynamic(GenericDelegator, Map, UserInfo)
045: *
046: * @author Allan Anderson
047: *
048: * @param delegator Reference to the OFBIZ delegator being used to connect to the data base
049: * @param uiDisplayObject Reference to a display object defined in the data base and attached to the field to be displayed by the UI builder
050: * @param orderDef List of fields defining the sort order of the drop down values
051: * @param entityDetailsVector Vector of generic values containing the values to be displayed on the screen for all fields
052: * @param fieldInfo Reference to field info object containing attributes of the current field
053: * @param userInfo Reference to user info object containing information about the currently logged-in user
054: *
055: * @return List of generic values to be displayed in the drop down. This will be null if an error occurs.
056: */
057:
058: public UIHistoryDropDown() {
059: }
060:
061: /**
062: * DOCUMENT ME!
063: *
064: * @param delegator
065: * @param uiDisplayObject
066: * @param orderDef
067: * @param entityDetailsVector
068: * @param fieldInfo
069: * @param userInfo
070: *
071: * @return
072: */
073: public List getDropDownValues(GenericDelegator delegator,
074: UIDisplayObject uiDisplayObject, ArrayList orderDef,
075: Vector entityDetailsVector, UIFieldInfo fieldInfo,
076: UserInfo userInfo) {
077: return getDropDownValuesDynamic(delegator, null, userInfo);
078: }
079:
080: /**
081: * Return a list of values based on filter criteria. This is used by the dynamic filtered drop downs
082: * which are modified via DHTML. This method overrides the standard method.<BR><BR>Note: This method
083: * is only used when the drop down is updated dynamically.
084: * When the screen is first displayed, the getDropDownValues method is used.
085: *
086: * @see #getDropDownValues(GenericDelegator, UIDisplayObject, ArrayList, Vector, UIFieldInfo, UserInfo)
087: *
088: * @author Allan Anderson
089: *
090: * @param delegator Reference to the OFBIZ delegator being used to connect to the data base
091: * @param filterValues Map containing field/value pairs to be used for filtering the drop down list
092: * @param userInfo Reference to user info object containing information about the currently logged-in user
093: *
094: * @return List of generic values to be displayed in the drop down. This will be null if an error occurs.
095: */
096: public List getDropDownValuesDynamic(GenericDelegator delegator,
097: Map filterValues, UserInfo userInfo) {
098: String partyId = userInfo.getPartyId();
099: List returnList = null;
100:
101: UIHistoryManager historyManager = new UIHistoryManager(
102: delegator);
103:
104: try {
105: returnList = historyManager.getUserHistoryEvents(partyId);
106: } catch (GenericEntityException e) {
107: Debug.logError(
108: "[getDropDownValuesDynamic] Error getting usage history: "
109: + e.getLocalizedMessage(), module);
110:
111: return null;
112: }
113:
114: return returnList;
115: }
116: }
|