ISOM5240GP4 commited on
Commit
345319f
·
verified ·
1 Parent(s): 7c483c8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -10
app.py CHANGED
@@ -45,10 +45,9 @@ def main():
45
  st.session_state.result = ""
46
 
47
  # Text area for email input
48
- email_body = st.text_area("Email Body", value=st.session_state.email_body, height=200, key="email_input",
49
- on_change=lambda: st.session_state.update({"result": analyze_email(st.session_state.email_input)}))
50
 
51
- # Sample emails (stored as variables, not button labels)
52
  sample_spam = """
53
  Subject: Urgent: Verify Your Account Now!
54
  Dear Customer,
@@ -58,6 +57,7 @@ Failure to verify within 24 hours will result in your account being locked. This
58
  Best regards,
59
  The Security Team
60
  """
 
61
 
62
  sample_not_spam_positive = """
63
  Subject: Great News About Your Project!
@@ -66,6 +66,7 @@ I just wanted to let you know that the project is progressing wonderfully! Every
66
  Best,
67
  Alex
68
  """
 
69
 
70
  sample_not_spam_negative = """
71
  Subject: Issue with Recent Delivery
@@ -74,25 +75,52 @@ I received my package today, but it was damaged, and two items were missing. Thi
74
  Thanks,
75
  Sarah
76
  """
 
77
 
78
- # Buttons with concise labels (in columns)
79
  col1, col2, col3 = st.columns(3)
80
  with col1:
81
- if st.button("Spam Sample"):
82
  st.session_state.email_body = sample_spam
83
- st.session_state.result = analyze_email(sample_spam)
84
  st.rerun()
85
  with col2:
86
- if st.button("Positive Sample"):
87
  st.session_state.email_body = sample_not_spam_positive
88
- st.session_state.result = analyze_email(sample_not_spam_positive)
89
  st.rerun()
90
  with col3:
91
- if st.button("Negative Sample"):
92
  st.session_state.email_body = sample_not_spam_negative
93
- st.session_state.result = analyze_email(sample_not_spam_negative)
94
  st.rerun()
95
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
96
  # Display result
97
  if st.session_state.result:
98
  st.write(st.session_state.result)
 
45
  st.session_state.result = ""
46
 
47
  # Text area for email input
48
+ email_body = st.text_area("Email Body", value=st.session_state.email_body, height=200, key="email_input")
 
49
 
50
+ # Sample emails (shortened snippets for button labels)
51
  sample_spam = """
52
  Subject: Urgent: Verify Your Account Now!
53
  Dear Customer,
 
57
  Best regards,
58
  The Security Team
59
  """
60
+ spam_snippet = "Subject: Urgent: Verify Your Account Now! Dear Customer, We have detected unusual activity..."
61
 
62
  sample_not_spam_positive = """
63
  Subject: Great News About Your Project!
 
66
  Best,
67
  Alex
68
  """
69
+ positive_snippet = "Subject: Great News About Your Project! Hi Team, I just wanted to let you know..."
70
 
71
  sample_not_spam_negative = """
72
  Subject: Issue with Recent Delivery
 
75
  Thanks,
76
  Sarah
77
  """
78
+ negative_snippet = "Subject: Issue with Recent Delivery Dear Support, I received my package today, but..."
79
 
80
+ # Buttons with sample content (in columns)
81
  col1, col2, col3 = st.columns(3)
82
  with col1:
83
+ if st.button(spam_snippet, key="spam_sample"):
84
  st.session_state.email_body = sample_spam
85
+ st.session_state.result = "" # Clear result until Analyze is clicked
86
  st.rerun()
87
  with col2:
88
+ if st.button(positive_snippet, key="positive_sample"):
89
  st.session_state.email_body = sample_not_spam_positive
90
+ st.session_state.result = ""
91
  st.rerun()
92
  with col3:
93
+ if st.button(negative_snippet, key="negative_sample"):
94
  st.session_state.email_body = sample_not_spam_negative
95
+ st.session_state.result = ""
96
  st.rerun()
97
 
98
+ # Custom styled Analyze button
99
+ st.markdown("""
100
+ <style>
101
+ .analyze-button {
102
+ background-color: #4CAF50; /* Green */
103
+ color: white;
104
+ padding: 10px 20px;
105
+ border: none;
106
+ border-radius: 5px;
107
+ cursor: pointer;
108
+ font-size: 16px;
109
+ display: block;
110
+ margin-top: 10px;
111
+ }
112
+ .analyze-button:hover {
113
+ background-color: #45a049;
114
+ }
115
+ </style>
116
+ """, unsafe_allow_html=True)
117
+
118
+ if st.button("Analyze Email", key="analyze", help="Click to analyze the email"):
119
+ if email_body:
120
+ st.session_state.result = analyze_email(email_body)
121
+ else:
122
+ st.session_state.result = "Please enter an email body or select a sample to analyze."
123
+
124
  # Display result
125
  if st.session_state.result:
126
  st.write(st.session_state.result)