Skip to content

TODOPopupControl

TODOPopupControl prompts the user to confirm creation of a Diary/Claim task, optionally requiring a Mail ID and validating any entered Mail ID against employee data before allowing confirmation (OP-6). It supports two presentation modes driven by the supplied clsPopupTask.TaskType: an optional task (Yes/No choice) and a required task (acknowledgement only, no decline option).

Purpose

  • Confirm or decline creation of a Diary/Claim task, using a caller-supplied clsPopupTask describing the task and whether a Mail ID is required.
  • Validate any entered Mail ID against employee data before allowing confirmation (BR-POPUP-004).
  • Restrict "required" tasks to an acknowledgement-only UI with no decline path (BR-POPUP-005).

Context

  • Namespace: SAIF.Presentation.Web.Controls.PopUps
  • Assembly/package: SAIF.Presentation.Web.Controls.PopUps.Infragistics111 (package)

Public members

Member Signature Purpose
Task Public Property Task() As clsPopupTask The task description object driving the popup's message, Mail ID requirement, and Yes/No vs. acknowledgement-only presentation
Active Public Property Active() As Boolean Toggles whether the popup renders markup
Top Public Property Top() As Integer Vertical pixel offset for popup positioning
Left Public Property Left() As Integer Horizontal pixel offset for popup positioning
ConfirmAction Public Event ConfirmAction(ByVal Confirm As Boolean, ByVal e As TODOTaskEventArgs) Raised on Yes (Confirm = True, only after Mail ID validation succeeds) or No (Confirm = False)
TODOTaskEventArgs (nested type) Public Class TODOTaskEventArgs — constructor New(inMailid As String, inTask As clsPopupTask) with read-only MailID, Task Immutable payload delivered with ConfirmAction, carrying the entered Mail ID and the originating task
clsPopupTask (nested type, Serializable) Public Class clsPopupTask — 3 overloaded constructors; read-only TaskId, TaskMsg, TaskType (PopupTypes.OptionalTask/RequiredTask), MailidRequired, ClaimID, myGuid Immutable description of the task being confirmed, supplied by the hosting page before setting Active = True
PopupTypes (nested enum) Public Enum PopupTypes Distinguishes OptionalTask (Yes/No choice) from RequiredTask (acknowledgement only) for clsPopupTask.TaskType

Behavioral notes

  • On Yes, if a Mail ID is entered (required or not), it must resolve to a valid employee record via clsEmployeeData.GetDataByMailID(DataPortalInfo, mailid).IsValid (referenced package call, not traced further)** (BR-POPUP-004).
  • On Mail ID validation failure, the popup remains active and the Mail ID field is flagged with an "errorbackcolor" CSS class rather than raising ConfirmAction.
  • RequiredTask-typed tasks hide the No button entirely and relabel Yes as "OK" — the task cannot be declined through this popup (BR-POPUP-005).

Constraints and usage notes

  • Task must be assigned by the hosting page before Active is set to True; Render() reads Task.MailidRequired/Task.TaskType to choose the presentation mode*.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Presentation.Web.Controls.PopUps.Infragistics111\TODOPopupControl.vb
  • SAIF.Presentation.Web.Controls.PopUps.Infragistics111\TODOPopup.ascx