You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
PhishingAwarenessSimulation/Assets/Scripts/EmailOpenPanel.cs

61 lines
1.6 KiB
C#

using UnityEngine;
using TMPro;
using UnityEngine.UI;
public class EmailOpenPanel : MonoBehaviour
{
public TextMeshProUGUI senderName;
public TextMeshProUGUI senderEmail;
public TextMeshProUGUI subject;
public TextMeshProUGUI bodyText;
public TextMeshProUGUI linkPreview;
public GameObject phishingIcon;
public TextMeshProUGUI senderInitial;
public Image senderBg;
public Button reportBtn;
public Button ignoreBtn;
private EmailData emailData;
public void Setup(EmailData data, string initial, Sprite iconSprite)
{
emailData = data;
senderName?.SetText(data.senderName);
senderEmail?.SetText(data.senderEmail);
subject?.SetText(data.subject);
bodyText?.SetText(data.fullBodyText);
linkPreview?.SetText(data.linkPreview);
if (phishingIcon != null)
phishingIcon.SetActive(data.isPhishing);
senderInitial?.SetText(initial);
if (senderBg != null)
senderBg.sprite = iconSprite; // ✅ can't use ?. here
reportBtn?.onClick.RemoveAllListeners();
reportBtn?.onClick.AddListener(() => OnAction("report"));
ignoreBtn?.onClick.RemoveAllListeners();
ignoreBtn?.onClick.AddListener(() => OnAction("ignore"));
}
void OnAction(string action)
{
Destroy(gameObject);
switch (action)
{
case "report":
SceneOutcomeManager.Instance.Reported(emailData);
break;
case "ignore":
SceneOutcomeManager.Instance.Ignored(emailData);
break;
}
}
}