mirror of https://github.com/gophish/gophish
180 lines
8.5 KiB
HTML
180 lines
8.5 KiB
HTML
{{define "body"}}
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-sm-3 col-md-2 sidebar">
|
|
<ul class="nav nav-sidebar">
|
|
<li><a href="/">{{T "Dashboard"}}</a>
|
|
</li>
|
|
<li class="active"><a href="/campaigns">{{T "Campaigns"}}</a>
|
|
</li>
|
|
<li><a href="/users">{{T "Users & Groups"}}</a>
|
|
</li>
|
|
<li><a href="/templates">{{T "Email Templates"}}</a>
|
|
</li>
|
|
<li><a href="/landing_pages">{{T "Landing Pages"}}</a>
|
|
</li>
|
|
<li><a href="/sending_profiles">{{T "Sending Profiles"}}</a>
|
|
</li>
|
|
<li><a href="/settings">{{T "Settings"}}</a>
|
|
</li>
|
|
<li><hr></li>
|
|
<li><a href="https://gophish.gitbooks.io/user-guide/content/">{{T "User Guide"}}</a>
|
|
</li>
|
|
<li><a href="/api/">{{T "API Documentation"}}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
|
|
<div class="row">
|
|
<h1 class="page-header">
|
|
{{T "Campaigns"}}
|
|
</h1>
|
|
</div>
|
|
<div id="flashes" class="row"></div>
|
|
<div class="row">
|
|
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#modal" onclick="edit('new')"><i class="fa fa-plus"></i> {{T "New Campaign"}}</button>
|
|
</div>
|
|
|
|
<div id="loading">
|
|
<i class="fa fa-spinner fa-spin fa-4x"></i>
|
|
</div>
|
|
<div id="emptyMessage" class="row" style="display:none;">
|
|
<div class="alert alert-info">
|
|
{{T "No campaigns created yet. Let's create one!"}}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<table id="campaignTable" class="table" style="display:none;">
|
|
<thead>
|
|
<tr>
|
|
<th class="col-md-3">{{T "Name"}}</th>
|
|
<th class="col-md-4">{{T "Created Date"}}</th>
|
|
<th class="col-md-2">{{T "Status"}}</th>
|
|
<th class="col-md-3 no-sort"></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<!-- Modal -->
|
|
<div class="modal fade" id="modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close" onclick="dismiss()"><span aria-hidden="true">×</span></button>
|
|
<h4 class="modal-title" id="campaignModalLabel">{{T "New Campaign"}}</h4>
|
|
</div>
|
|
<div class="modal-body" id="modal_body">
|
|
<div class="row" id="modal.flashes"></div>
|
|
<div class="form-group">
|
|
<label for="name">{{T "Name"}}:</label>
|
|
<input type="text" class="form-control" id="name" placeholder="{{T "Campaign name"}}" autofocus>
|
|
<label class="control-label" for="template">{{T "Email Template"}}:</label>
|
|
<select class="form-control" placeholder="{{T "Template Name"}}" id="template"/>
|
|
<option></option>
|
|
</select>
|
|
<label class="control-label" for="page">{{T "Landing Page"}}:</label>
|
|
<select class="form-control" placeholder="Landing Page" id="page"/>
|
|
<option></option>
|
|
</select>
|
|
<label class="control-label" for="url">{{T "URL"}}: <i class="fa fa-question-circle" data-toggle="tooltip" data-placement="right" title="{{T "Location of gophish listener (must be reachable by targets!)"}}"></i></label>
|
|
<input type="text" class="form-control" placeholder="http://192.168.1.1" id="url"/>
|
|
<label class="control-label" for="url">{{T "Schedule"}}: </label>
|
|
<input type="text" class="form-control" id="launch_date"/>
|
|
<label class="control-label" for="profile">{{T "Sending Profile"}}:</label>
|
|
<div class="input-group">
|
|
<select class="form-control" placeholder="{{T "Sending Profile"}}" id="profile"/>
|
|
<option></option>
|
|
</select>
|
|
<span class="input-group-btn">
|
|
<button type="button" data-toggle="modal" data-target="#sendTestEmailModal" class="btn btn-primary button"><i class="fa fa-envelope"></i> {{T "Send Test Email"}}</button>
|
|
</span>
|
|
</div>
|
|
<label class="control-label" for="users">{{T "Groups"}}:</label>
|
|
<select class="form-control" id="users" multiple="multiple"></select>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" class="btn btn-default" data-dismiss="modal" onclick="dismiss()">{{T "Close"}}</button>
|
|
<button type="button" id="launchButton" class="btn btn-primary" onclick="launch()"><i class="fa fa-rocket"></i> {{T "Launch Campaign"}}</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- Send Test Email Modal -->
|
|
<div class="modal" id="sendTestEmailModal" tabindex="-1" role="dialog" aria-labelledby="modalLabel">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<!-- New Email Modal -->
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<h4 class="modal-title" id="sendTestEmailModalTitle">{{T "Send Test Email"}}</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div class="row" id="sendTestEmailModal.flashes"></div>
|
|
<div class="row">
|
|
<div class="col-sm-12">
|
|
<label class="control-label" for="to">{{T "Send Test Email to"}}:</label>
|
|
</div>
|
|
<br>
|
|
<div class="col-sm-2">
|
|
<input type="text" class="form-control" placeholder="{{T "First Name"}}" name="to_first_name">
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<input type="text" class="form-control" placeholder="{{T "Last Name"}}" name="to_last_name">
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<input type="email" class="form-control" placeholder="{{T "Email"}}" name="to_email" required>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<input type="text" class="form-control" placeholder="{{T "Position"}}" name="to_position">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" data-dismiss="modal" class="btn btn-default">{{T "Cancel"}}</button>
|
|
<button type="button" class="btn btn-primary" id="sendTestModalSubmit" onclick="sendTestEmail()"><i class="fa fa-envelope"></i> {{T "Send"}}</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
{{define "scripts"}}
|
|
<script>
|
|
localizedDatas = {
|
|
"In progress": "{{T "In progress"}}",
|
|
"Queued": "{{T "Queued"}}",
|
|
"Completed": "{{T "Completed"}}",
|
|
"Emails Sent": "{{T "Emails Sent"}}",
|
|
"Error": "{{T "Error"}}",
|
|
"Are you sure?": "{{T "Are you sure?"}}",
|
|
"This will schedule the campaign to be launched.": "{{T "This will schedule the campaign to be launched."}}",
|
|
"Campaign Scheduled!": "{{T "Campaign Scheduled!"}}",
|
|
"This campaign has been scheduled for launch!": "{{T "This campaign has been scheduled for launch!"}}",
|
|
"Sending": "{{T "Sending"}}",
|
|
"Email Sent!": "{{T "Email Sent!"}}",
|
|
"This will delete the campaign. This can't be undone!": "{{T "This will delete the campaign. This can't be undone!"}}",
|
|
"Delete": "{{T "Delete"}}",
|
|
"Campaign Deleted!": "{{T "Campaign Deleted!"}}",
|
|
"This campaign has been deleted!": "{{T "This campaign has been deleted!"}}",
|
|
"No groups found!": "{{T "No groups found!"}}",
|
|
"Select Groups": "{{T "Select Groups"}}",
|
|
"Select a Template": "{{T "Select a Template"}}",
|
|
"No pages found!": "{{T "No pages found!"}}",
|
|
"Select a Landing Page":"{{T "Select a Landing Page"}}",
|
|
"No profiles found!": "{{T "No profiles found!"}}",
|
|
"Select a Sending Profile": "{{T "Select a Sending Profile"}}",
|
|
"Copy of": "{{T "Copy of"}}",
|
|
"View Results": "{{T "View Results"}}",
|
|
"Copy Campaign": "{{T "Copy Campaign"}}",
|
|
"Delete Campaign": "{{T "Delete Campaign"}}",
|
|
"Error fetching campaigns": "{{T "Error fetching campaigns"}}"
|
|
}
|
|
</script>
|
|
<script src="/js/dist/app/campaigns.min.js"></script>
|
|
{{end}}
|