File: //usr/local/CyberCP/emailMarketing/templates/emailMarketing/manageLists.html
{% extends "baseTemplate/index.html" %}
{% load i18n %}
{% block title %}{% trans "Manage Email Lists - CyberPanel" %}{% endblock %}
{% block content %}
{% load static %}
{% get_current_language as LANGUAGE_CODE %}
<!-- Current language: {{ LANGUAGE_CODE }} -->
<div class="container">
<div id="page-title">
<h2>{% trans "Manage Email Lists" %} - <span id="domainNamePage">{{ domain }}</span></h2>
<p>{% trans "On this page you can manage your email lists (Delete, Verify, Add More Emails)." %}</p>
</div>
<div ng-controller="manageEmailLists" class="panel" style="background: var(--bg-primary, white); border-color: var(--border-color, #ddd);">
<div class="panel-body" style="background: var(--bg-primary, white); color: var(--text-primary, #333);">
<h3 class="title-hero">
{% trans "Manage Email Lists" %} <img ng-hide="cyberPanelLoading"
src="{% static 'images/loading.gif' %}">
</h3>
<div class="example-box-wrapper">
<form action="/" class="form-horizontal bordered-row">
<div class="form-group">
<label class="col-sm-3 control-label">{% trans "Select List" %} </label>
<div class="col-sm-6">
<select ng-change="fetchEmails(1)" ng-model="listName" class="form-control">
{% for items in listNames %}
<option>{{ items }}</option>
{% endfor %}
</select>
</div>
</div>
<div ng-hide="currentRecords" class="form-group">
<div class="row">
<div class="col-sm-1">
<button data-toggle="modal" data-target="#deleteList"
class="btn ra-100 btn-danger">{% trans 'Delete' %}</button>
<!--- Delete Pool --->
<div class="modal fade" id="deleteList" tabindex="-1" role="dialog"
aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content" style="background: var(--bg-primary, white); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"
aria-hidden="true">×
</button>
<h4 class="modal-title">{% trans "You are doing to delete this list.." %}
<img ng-hide="cyberPanelLoading"
src="{% static 'images/loading.gif' %}"></h4>
</div>
<div class="modal-body">
<p>{% trans 'Are you sure?' %}</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default"
data-dismiss="modal">{% trans 'Close' %}</button>
<button data-dismiss="modal" ng-click="deleteList()" type="button"
class="btn btn-primary">{% trans 'Confirm' %}</button>
</div>
</div>
</div>
</div>
<!--- Delete Pool --->
</div>
<div class="col-sm-1">
<button ng-disabled="verificationButton" ng-click="startVerification()"
class="btn ra-100 btn-blue-alt">{% trans 'Verify' %}</button>
</div>
<div class="col-sm-3">
<button onclick="location.href='/emailMarketing/{{ domain }}/configureVerify'"
class="btn ra-100 btn-blue-alt">{% trans 'Configure Verification' %}</button>
</div>
<div class="col-sm-3">
<button ng-click="fetchLogs()" data-toggle="modal" data-target="#verificationLogs"
class="btn ra-100 btn-blue-alt">{% trans 'Verfications Logs' %}</button>
<!--- Delete Pool --->
<div class="modal fade" id="verificationLogs" tabindex="-1" role="dialog"
aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content" style="background: var(--bg-primary, white); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"
aria-hidden="true">×
</button>
<h4 class="modal-title">{% trans "Verification Logs" %}
<img ng-hide="cyberPanelLoading"
src="{% static 'images/loading.gif' %}"></h4>
</div>
<div class="modal-body">
<!------ List of records --------------->
<div ng-hide="currentRecords" class="form-group">
<table style="margin: 0px; padding-bottom: 2%; background: var(--bg-primary, white); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);" class="table">
<thead>
<tr>
<th>{% trans "Total Emails" %}</th>
<th>{% trans "Verified" %}</th>
<th>{% trans "Not-Verified" %}</th>
</tr>
</thead>
<tbody>
<tr>
<td>{$ totalEmails $}</td>
<td>{$ verified $}</td>
<td>{$ notVerified $}</td>
</tr>
</tbody>
</table>
<div class="col-sm-10">
<input placeholder="Search Logs..." name="dom" type="text"
class="form-control" ng-model="searchLogs"
required>
</div>
<div style="margin-bottom: 1%;" class="col-sm-2">
<select ng-change="fetchLogs()" ng-model="recordsToShowLogs"
class="form-control">
<option>10</option>
<option>50</option>
<option>100</option>
<option>500</option>
</select>
</div>
<div class="col-sm-12">
<table style="margin: 0px; background: var(--bg-primary, white); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);" class="table">
<thead>
<tr>
<th>{% trans "Status" %}</th>
<th>{% trans "Message" %}</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="record in recordsLogs | filter:searchLogs">
<td ng-bind="record.status"></td>
<td ng-bind="record.message"></td>
</tr>
</tbody>
</table>
<div style="margin-top: 2%" class="row">
<div class="col-md-12">
<div class="row">
<div class="col-md-8">
</div>
<div class="col-md-3">
<div class="form-group">
<select ng-model="currentPageLogs"
class="form-control"
ng-change="fetchLogs()">
<option ng-repeat="page in paginationLogs">
{$ $index + 1
$}
</option>
</select>
</div>
</div>
</div> <!-- end row -->
</div>
</div>
</div>
</div>
<!------ List of records --------------->
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default"
data-dismiss="modal">{% trans 'Close' %}</button>
</div>
</div>
</div>
</div>
<!--- Delete Pool --->
</div>
<div class="col-sm-2">
<button ng-click="showAddEmails()"
class="btn ra-100 btn-blue-alt">{% trans 'Add More Emails' %}</button>
</div>
</div>
</div>
<!---- Create Email List --->
<div ng-hide="installationDetailsForm" class="form-group">
<label class="col-sm-3 control-label">{% trans "Path" %}</label>
<div class="col-sm-6">
<input placeholder="Path to emails file (.txt and .csv accepted)" type="text"
class="form-control" ng-model="path" required>
</div>
</div>
<div ng-hide="installationDetailsForm" class="form-group">
<label class="col-sm-3 control-label"></label>
<div class="col-sm-4">
<button type="button" ng-click="createEmailList()"
class="btn btn-primary btn-lg btn-block">{% trans "Load Emails" %}</button>
</div>
</div>
<div ng-hide="installationProgress" class="form-group">
<label class="col-sm-2 control-label"></label>
<div class="col-sm-7">
<div class="alert alert-success text-center" style="background: var(--bg-secondary, #f8f9ff); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);">
<h2>{$ currentStatus $}</h2>
</div>
</div>
</div>
<div ng-hide="installationProgress" class="form-group">
<label class="col-sm-3 control-label"></label>
<div class="col-sm-4">
<button type="button" ng-disabled="goBackDisable" ng-click="goBack()"
class="btn btn-primary btn-lg btn-block">{% trans "Go Back" %}</button>
</div>
</div>
<!---- Create Email List --->
<!---- Email List Verification --->
<div ng-hide="verificationStatus" class="form-group">
<label class="col-sm-2 control-label"></label>
<div class="col-sm-7">
<div class="alert alert-success text-center" style="background: var(--bg-secondary, #f8f9ff); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);">
<h2>{$ currentStatusVerification $}</h2>
</div>
</div>
</div>
<!---- Create Email List --->
<!------ List of records --------------->
<div ng-hide="currentRecords" class="form-group">
<div class="col-sm-10">
<input placeholder="Search Emails..." ng-model="searchEmails" name="dom" type="text"
class="form-control" ng-model="domainNameCreate" required>
</div>
<div style="margin-bottom: 1%;" class="col-sm-2">
<select ng-change="fetchRecords()" ng-model="recordstoShow" class="form-control">
<option>10</option>
<option>50</option>
<option>100</option>
</select>
</div>
<div class="col-sm-12">
<table class="table" style="background: var(--bg-primary, white); color: var(--text-primary, #333); border-color: var(--border-color, #ddd);">
<thead>
<tr>
<th>{% trans "ID" %}</th>
<th>{% trans "email" %}</th>
<th>{% trans "Verification Status" %}</th>
<th>{% trans "Date Created" %}</th>
<th>{% trans "Actions" %}</th>
<th></th>
</tr>
</thead>
<tbody>
<tr ng-repeat="record in records | filter:searchEmails">
<td ng-bind="record.id"></td>
<td ng-bind="record.email"></td>
<td ng-bind="record.verificationStatus"></td>
<td ng-bind="record.dateCreated"></td>
<td>
<button type="button" ng-click="deleteEmail(record.id)"
class="btn ra-100 btn-purple">{% trans "Delete" %}</button>
</td>
</tr>
</tbody>
</table>
<div class="row">
<div class="col-sm-4 col-sm-offset-8">
<nav aria-label="Page navigation">
<ul class="pagination">
<li ng-click="fetchEmails(page)" ng-repeat="page in pagination"><a
href="">{$ page $}</a></li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<!------ List of records --------------->
</form>
</div>
</div>
</div>
</div>
{% endblock %}