Initial import

This commit is contained in:
Andris Reinman 2016-04-04 15:36:30 +03:00
commit 54fa30701e
278 changed files with 37868 additions and 0 deletions

34
views/lists/create.hbs Normal file
View file

@ -0,0 +1,34 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li class="active">Create List</li>
</ol>
<h2>Create List</h2>
<hr>
<form class="form-horizontal" method="post" action="/lists/create">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Name</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" name="name" id="name" value="{{name}}" placeholder="List Name" autofocus required>
</div>
</div>
<div class="form-group">
<label for="description" class="col-sm-2 control-label">Description</label>
<div class="col-sm-10">
<textarea class="form-control" rows="3" name="description" id="description">{{description}}</textarea>
<span class="help-block">HTML is allowed</span>
</div>
</div>
<hr />
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-plus"></i> Create List</button>
</div>
</div>
</form>

51
views/lists/edit.hbs Normal file
View file

@ -0,0 +1,51 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{id}}">{{name}}</a></li>
<li class="active">Edit List</li>
</ol>
<h2>Edit List <a class="btn btn-default btn-xs" href="/lists/view/{{id}}" role="button"><span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span> View list</a></h2>
<hr>
<form method="post" class="delete-form" id="lists-delete" action="/lists/delete">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{id}}">
</form>
<form class="form-horizontal" method="post" action="/lists/edit">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{id}}" />
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Name</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" name="name" id="name" value="{{name}}" placeholder="List Name" autofocus required>
</div>
</div>
<div class="form-group">
<label for="name" class="col-sm-2 control-label">List ID</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="cid" value="{{cid}}" readonly>
<span class="help-block">This is the list ID displayed to the subscribers</span>
</div>
</div>
<div class="form-group">
<label for="description" class="col-sm-2 control-label">Description</label>
<div class="col-sm-10">
<textarea class="form-control" rows="3" name="description" id="description">{{description}}</textarea>
<span class="help-block">HTML is allowed</span>
</div>
</div>
<hr />
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="pull-right">
<button type="submit" form="lists-delete" class="btn btn-danger"><i class="glyphicon glyphicon-remove"></i> Delete List</button>
</div>
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-ok"></i> Update</button>
</div>
</div>
</form>

View file

@ -0,0 +1,82 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/fields/{{list.id}}">Custom Fields</a></li>
<li class="active">Create Field</li>
</ol>
<h2>{{list.name}} <small>Create Custom Field</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/fields/{{list.id}}/create">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Field Name</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" name="name" id="name" value="{{name}}" placeholder="Field Name" required>
</div>
</div>
<div class="form-group">
<label for="type" class="col-sm-2 control-label">Field Type</label>
<div class="col-sm-10">
<select class="form-control" name="type">
<option value="text" {{#if selectedText}} selected {{/if}}>Text</option>
<option value="number" {{#if selectedNumber}} selected {{/if}}>Number</option>
<option value="website" {{#if selectedWebsite}} selected {{/if}}>Website</option>
<optgroup label="Date">
<option value="date-us" {{#if selectedDateUs}} selected {{/if}}>Date (MM/DD/YYYY)</option>
<option value="date-eur" {{#if selectedDateEur}} selected {{/if}}>Date (DD/MM/YYYY)</option>
</optgroup>
<optgroup label="Birthday">
<option value="birthday-us" {{#if selectedBirthdayUs}} selected {{/if}}>Birthday (MM/DD)</option>
<option value="birthday-eur" {{#if selectedBirthdayEur}} selected {{/if}}>Birthday (DD/MM)</option>
</optgroup>
<optgroup label="Grouped">
<option value="dropdown" {{#if selectedDropdown}} selected {{/if}}>Drop Downs</option>
<option value="radio" {{#if selectedRadio}} selected {{/if}}>Radio Buttons</option>
<option value="checkbox" {{#if selectedCheckbox}} selected {{/if}}>Checkboxes</option>
</optgroup>
<option value="option" {{#if selectedOption}} selected {{/if}}>Option for a group value</option>
</select>
</div>
</div>
<div class="form-group">
<label for="group" class="col-sm-2 control-label">Group</label>
<div class="col-sm-10">
<select class="form-control" name="group">
<option value=""> Select </option>
{{#each groups}}
<option value="{{id}}" {{#if selected}} selected {{/if}}>{{name}}</option>
{{/each}}
</select>
<span class="help-block">Required for group options</span>
</div>
</div>
<div class="form-group">
<label for="default-value" class="col-sm-2 control-label">Default merge tag value</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="default-value" id="default-value" value="{{field.defaultValue}}" placeholder="Default merge tag value">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-xs-4">
<div class="checkbox">
<label>
<input type="checkbox" name="visible" {{#if visible}} checked {{/if}}> Visible
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-plus"></i> Add Field</button>
</div>
</div>
</form>

104
views/lists/fields/edit.hbs Normal file
View file

@ -0,0 +1,104 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/fields/{{list.id}}">Custom Fields</a></li>
<li class="active">Edit Field</li>
</ol>
<h2>{{list.name}} <small>Edit Custom Field</small> <a class="btn btn-default btn-xs" href="/fields/{{list.id}}" role="button"><span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span> Back to fields</a></h2>
<hr>
<form method="post" class="delete-form" id="fields-delete" action="/fields/{{list.id}}/delete">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{field.id}}" />
</form>
<form class="form-horizontal" method="post" action="/fields/{{list.id}}/edit">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{field.id}}" />
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Field Name</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" name="name" id="name" value="{{field.name}}" placeholder="Field Name" required>
</div>
</div>
<div class="form-group">
<label for="type" class="col-sm-2 control-label">Field Type</label>
<div class="col-sm-10">
<select class="form-control" disabled>
<option value="text" {{#if selectedText}} selected {{/if}}>Text</option>
<option value="number" {{#if selectedNumber}} selected {{/if}}>Number</option>
<option value="website" {{#if selectedWebsite}} selected {{/if}}>Website</option>
<optgroup label="Date">
<option value="date-us" {{#if selectedDateUs}} selected {{/if}}>Date (MM/DD/YYYY)</option>
<option value="date-eur" {{#if selectedDateEur}} selected {{/if}}>Date (DD/MM/YYYY)</option>
</optgroup>
<optgroup label="Birthday">
<option value="birthday-us" {{#if selectedBirthdayUs}} selected {{/if}}>Birthday (MM/DD)</option>
<option value="birthday-eur" {{#if selectedBirthdayEur}} selected {{/if}}>Birthday (DD/MM)</option>
</optgroup>
<optgroup label="Grouped">
<option value="dropdown" {{#if selectedDropdown}} selected {{/if}}>Drop Downs</option>
<option value="radio" {{#if selectedRadio}} selected {{/if}}>Radio Buttons</option>
<option value="checkbox" {{#if selectedCheckbox}} selected {{/if}}>Checkboxes</option>
</optgroup>
<option value="option" {{#if selectedOption}} selected {{/if}}>Option for a group value</option>
</select>
</div>
</div>
{{#if groups}}
<div class="form-group">
<label for="group" class="col-sm-2 control-label">Group</label>
<div class="col-sm-10">
<select class="form-control" name="group">
<option value=""> Select </option>
{{#each groups}}
<option value="{{id}}" {{#if selected}} selected {{/if}}>{{name}}</option>
{{/each}}
</select>
<span class="help-block">Required for group options)</span>
</div>
</div>
{{/if}}
<div class="form-group">
<label for="key" class="col-sm-2 control-label">Merge tag</label>
<div class="col-sm-10">
<input type="text" class="form-control text-uppercase" name="key" id="key" value="{{field.key}}" placeholder="Merge Tag">
<span class="help-block">Put this tag in your content: <strong>[{{#if field.key}}{{field.key}}{{else}}TAG_VALUE{{/if}}]</strong></span>
</div>
</div>
<div class="form-group">
<label for="default-value" class="col-sm-2 control-label">Default merge tag value</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="default-value" id="default-value" value="{{field.defaultValue}}" placeholder="Default merge tag value">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-xs-4">
<div class="checkbox">
<label>
<input type="checkbox" name="visible" {{#if field.visible}} checked {{/if}}> Visible
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="pull-right">
<button type="submit" form="fields-delete" class="btn btn-danger"><i class="glyphicon glyphicon-remove"></i> Delete Field</button>
</div>
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-ok"></i> Update</button>
</div>
</div>
</form>

View file

@ -0,0 +1,95 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li class="active">Custom Fields</li>
</ol>
<div class="pull-right">
<a class="btn btn-primary" href="/fields/{{list.id}}/create" role="button"><i class="glyphicon glyphicon-plus"></i> Create Custom Field</a>
</div>
<h2>{{list.name}} <small>Custom Fields</small></h2>
<hr>
<div class="table-responsive">
<table class="table table-bordered table-hover" data-row-sort="0,1,1,1,0,0">
<thead>
<th class="col-md-1">
#
</th>
<th>
Name
</th>
<th class="col-md-2">
Type
</th>
<th class="col-md-2">
Merge tag
</th>
<th class="col-md-2">
Default merge tag value
</th>
<th class="col-md-1">
&nbsp;
</th>
</thead>
<tbody>
{{#each rows}}
<tr>
<th scope="row">
{{index}}
</th>
<td>
<span class="glyphicon glyphicon-tasks" aria-hidden="true"></span> {{name}}
</td>
<td>
{{type}}
</td>
<td>
<strong>[{{key}}]</strong>
</td>
<td class="text-muted">
{{defaultValue}}
</td>
<td>
<span class="glyphicon glyphicon-wrench" aria-hidden="true"></span>
<a href="/fields/{{../list.id}}/edit/{{id}}">
Edit
</a>
</td>
</tr>
{{#if options}}
{{#each options}}
<tr>
<th scope="row">
{{index}}
</th>
<td colspan="2">
<span class="glyphicon glyphicon-record" aria-hidden="true"></span> {{name}}
</td>
<td>
<strong>[{{key}}]</strong>
</td>
<td class="text-muted">
{{defaultValue}}
</td>
<td>
<span class="glyphicon glyphicon-wrench" aria-hidden="true"></span>
<a href="/fields/{{../../list.id}}/edit/{{id}}">Edit</a>
</td>
</tr>
{{/each}}
{{/if}}
{{/each}}
{{#unless rows}}
<tr>
<td colspan="6">
No data available in table
</td>
</tr>
{{/unless}}
</tbody>
</table>
</div>

64
views/lists/lists.hbs Normal file
View file

@ -0,0 +1,64 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li class="active">Lists</li>
</ol>
<div class="pull-right">
<a class="btn btn-primary" href="/lists/create" role="button"><i class="glyphicon glyphicon-plus"></i> Create List</a>
</div>
<h2>Lists</h2>
<hr>
<div class="table-responsive">
<table class="table table-bordered table-hover data-table display nowrap" width="100%" data-row-sort="0,1,1,0,0">
<thead>
<th class="col-md-1">
#
</th>
<th>
Name
</th>
<th class="col-md-1">
Subscribers
</th>
<th>
Description
</th>
<th class="col-md-1">
&nbsp;
</th>
</thead>
{{#if rows}}
<tbody>
{{#each rows}}
<tr>
<th scope="row">
{{index}}
</th>
<td>
<span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span>
<a href="/lists/view/{{id}}">
{{name}}
</a>
</td>
<td>
<p class="text-center">{{subscribers}}</p>
</td>
<td>
<p class="text-muted">{{description}}</p>
</td>
<td>
<span class="glyphicon glyphicon-wrench" aria-hidden="true"></span>
<a href="/lists/edit/{{id}}">
Edit
</a>
</td>
</tr>
{{/each}}
</tbody>
{{/if}}
</table>
</div>

View file

@ -0,0 +1,38 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/segments/{{list.id}}">Segments</a></li>
<li class="active">Create Segment</li>
</ol>
<h2>{{list.name}} <small>Create Segment</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/segments/{{list.id}}/create">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Segment Name</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" name="name" id="name" value="{{name}}" placeholder="Segment Name" required>
</div>
</div>
<div class="form-group">
<label for="group" class="col-sm-2 control-label">Rule match</label>
<div class="col-sm-10">
<select class="form-control" name="type">
<option value=""> Select </option>
<option value="1" {{#if matchAll}} selected {{/if}}>All rules must match</option>
<option value="2" {{#if matchAny}} selected {{/if}}>Any rule can match</option>
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-plus"></i> Add Segment</button>
</div>
</div>
</form>

View file

@ -0,0 +1,48 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/segments/{{list.id}}">Segments</a></li>
<li class="active">Edit Segment</li>
</ol>
<h2>{{list.name}} <small>Edit Segment</small> <a class="btn btn-default btn-xs" href="/segments/{{list.id}}" role="button"><span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span> Back to segments</a></h2>
<hr>
<form method="post" class="delete-form" id="segments-delete" action="/segments/{{list.id}}/delete">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{id}}" />
</form>
<form class="form-horizontal" method="post" action="/segments/{{list.id}}/edit">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{id}}" />
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Segment Name</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" name="name" id="name" value="{{name}}" placeholder="Segment Name" required>
</div>
</div>
<div class="form-group">
<label for="group" class="col-sm-2 control-label">Rule match</label>
<div class="col-sm-10">
<select class="form-control" name="type">
<option value=""> Select </option>
<option value="1" {{#if matchAll}} selected {{/if}}>All rules must match</option>
<option value="2" {{#if matchAny}} selected {{/if}}>Any rule can match</option>
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="pull-right">
<button type="submit" form="segments-delete" class="btn btn-danger"><i class="glyphicon glyphicon-remove"></i> Delete Segment</button>
</div>
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-ok"></i> Update</button>
</div>
</div>
</form>

View file

@ -0,0 +1,201 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/segments/{{list.id}}">Segments</a></li>
<li><a href="/segments/{{list.id}}/view/{{id}}">{{name}}</a></li>
<li class="active">Create Segment</li>
</ol>
<h2>{{list.name}} <small>Create Rule</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/segments/{{list.id}}/rules/{{id}}/create">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="column" value="{{column.column}}">
<div class="form-group">
<label for="column" class="col-sm-2 control-label">Rule</label>
<div class="col-sm-10">
<p class="form-control-static"><strong>{{column.name}}</strong></p>
</div>
</div>
{{#if columnTypeString}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="value" id="value" value="{{value.value}}" placeholder="Value">
<span class="help-block">Use % for wildcard character, eg. "%test" to match all values that end with "test"</span>
</div>
</div>
{{/if}}
{{#if columnTypeNumber}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10 radio">
<label>
<input type="radio" name="range" value="" {{#unless value.range}} checked {{/unless}}> Use exact match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-5">
<input type="number" class="form-control" name="value" id="value" value="{{value.value}}" placeholder="0">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<label>
<input type="radio" name="range" value="yes" {{#if value.range}} checked {{/if}}> Use range match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<div class="row">
<div class="col-md-1">
<p class="form-control-static">From</p>
</div>
<div class="col-md-2">
<input type="number" class="form-control" name="start" value="{{value.start}}" placeholder="0">
</div>
<div class="col-md-1">
<p class="form-control-static text-center">to</p>
</div>
<div class="col-md-2">
<input type="number" class="form-control" name="end" value="{{value.end}}" placeholder="0">
</div>
</div>
</div>
</div>
{{/if}}
{{#if columnTypeDate}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10 radio">
<label>
<input type="radio" name="range" value="" {{#unless value.range}} checked {{/unless}}> Use exact match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-5">
<div class="input-group date fm-date-generic">
<input type="text" class="form-control" name="value" placeholder="YYYY-MM-DD" value="{{value.value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<label>
<input type="radio" name="range" value="yes" {{#if value.range}} checked {{/if}}> Use range match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<div class="row">
<div class="col-md-1">
<p class="form-control-static">From</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-date-generic">
<input type="text" class="form-control" name="start" placeholder="YYYY-MM-DD" value="{{value.start}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
<div class="col-md-1">
<p class="form-control-static text-center">to</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-date-generic">
<input type="text" class="form-control" name="end" placeholder="YYYY-MM-DD" value="{{value.end}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
</div>
</div>
{{/if}}
{{#if columnTypeBirthday}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10 radio">
<label>
<input type="radio" name="range" value="" {{#unless isRange}} checked {{/unless}}> Use exact match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-5">
<div class="input-group date fm-birthday-generic">
<input type="text" class="form-control" name="value" placeholder="MM-DD" value="{{value.value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<label>
<input type="radio" name="range" value="yes" {{#if isRange}} checked {{/if}}> Use range match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<div class="row">
<div class="col-md-1">
<p class="form-control-static">From</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-birthday-generic">
<input type="text" class="form-control" name="start" placeholder="MM-DD" value="{{value.start}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
<div class="col-md-1">
<p class="form-control-static text-center">to</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-birthday-generic">
<input type="text" class="form-control" name="end" placeholder="MM-DD" value="{{value.end}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
</div>
</div>
{{/if}}
{{#if columnTypeBoolean}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10">
<div class="radio">
<label>
<input type="radio" name="value" value="yes" {{#if value.value}} checked {{/if}}> Selected
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="value" value="" {{#unless value.value}} checked {{/unless}}> Not selected
</label>
</div>
</div>
</div>
{{/if}}
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-plus"></i> Add Rule</button>
</div>
</div>
</form>

View file

@ -0,0 +1,34 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/segments/{{list.id}}">Segments</a></li>
<li><a href="/segments/{{list.id}}/view/{{id}}">{{name}}</a></li>
<li class="active">Create Segment</li>
</ol>
<h2>{{list.name}} <small>Create Rule</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/segments/{{list.id}}/rules/{{id}}/next">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<div class="form-group">
<label for="column" class="col-sm-2 control-label">Rule</label>
<div class="col-sm-10">
<select id="column" class="form-control" name="column" required>
<option value=""> Select </option>
{{#each columns}}
<option value="{{column}}" {{#if selected}} selected {{/if}}>{{name}}</option>
{{/each}}
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> Next</button>
</div>
</div>
</form>

View file

@ -0,0 +1,209 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/segments/{{list.id}}">Segments</a></li>
<li><a href="/segments/{{list.id}}/view/{{segment.id}}">{{name}}</a></li>
<li class="active">Create Segment</li>
</ol>
<h2>{{list.name}} <small>Create Rule</small></h2>
<hr>
<form method="post" class="delete-form" id="rule-delete" action="/segments/{{list.id}}/rules/{{segment.id}}/delete">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{id}}" />
</form>
<form class="form-horizontal" method="post" action="/segments/{{list.id}}/rules/{{segment.id}}/edit">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="id" value="{{id}}">
<div class="form-group">
<label for="column" class="col-sm-2 control-label">Rule</label>
<div class="col-sm-10">
<p class="form-control-static"><strong>{{column.name}}</strong></p>
</div>
</div>
{{#if columnTypeString}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="value" id="value" value="{{value.value}}" placeholder="Value">
<span class="help-block">Use % for wildcard character, eg. "%test" to match all values that end with "test"</span>
</div>
</div>
{{/if}}
{{#if columnTypeNumber}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10 radio">
<label>
<input type="radio" name="range" value="" {{#unless value.range}} checked {{/unless}}> Use exact match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-5">
<input type="number" class="form-control" name="value" id="value" value="{{value.value}}" placeholder="0">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<label>
<input type="radio" name="range" value="yes" {{#if value.range}} checked {{/if}}> Use range match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<div class="row">
<div class="col-md-1">
<p class="form-control-static">From</p>
</div>
<div class="col-md-2">
<input type="number" class="form-control" name="start" value="{{value.start}}" placeholder="0">
</div>
<div class="col-md-1">
<p class="form-control-static text-center">to</p>
</div>
<div class="col-md-2">
<input type="number" class="form-control" name="end" value="{{value.end}}" placeholder="0">
</div>
</div>
</div>
</div>
{{/if}}
{{#if columnTypeDate}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10 radio">
<label>
<input type="radio" name="range" value="" {{#unless value.range}} checked {{/unless}}> Use exact match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-5">
<div class="input-group date fm-date-generic">
<input type="text" class="form-control" name="value" placeholder="YYYY-MM-DD" value="{{value.value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<label>
<input type="radio" name="range" value="yes" {{#if value.range}} checked {{/if}}> Use range match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<div class="row">
<div class="col-md-1">
<p class="form-control-static">From</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-date-generic">
<input type="text" class="form-control" name="start" placeholder="YYYY-MM-DD" value="{{value.start}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
<div class="col-md-1">
<p class="form-control-static text-center">to</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-date-generic">
<input type="text" class="form-control" name="end" placeholder="YYYY-MM-DD" value="{{value.end}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
</div>
</div>
{{/if}}
{{#if columnTypeBirthday}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10 radio">
<label>
<input type="radio" name="range" value="" {{#unless isRange}} checked {{/unless}}> Use exact match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-5">
<div class="input-group date fm-birthday-generic">
<input type="text" class="form-control" name="value" placeholder="MM-DD" value="{{value.value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<label>
<input type="radio" name="range" value="yes" {{#if isRange}} checked {{/if}}> Use range match
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10 radio">
<div class="row">
<div class="col-md-1">
<p class="form-control-static">From</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-birthday-generic">
<input type="text" class="form-control" name="start" placeholder="MM-DD" value="{{value.start}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
<div class="col-md-1">
<p class="form-control-static text-center">to</p>
</div>
<div class="col-md-3">
<div class="input-group date fm-birthday-generic">
<input type="text" class="form-control" name="end" placeholder="MM-DD" value="{{value.end}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
</div>
</div>
</div>
</div>
{{/if}}
{{#if columnTypeBoolean}}
<div class="form-group">
<label for="value" class="col-sm-2 control-label">Value</label>
<div class="col-sm-10">
<div class="radio">
<label>
<input type="radio" name="value" value="yes" {{#if value.value}} checked {{/if}}> Selected
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="value" value="" {{#unless value.value}} checked {{/unless}}> Not selected
</label>
</div>
</div>
</div>
{{/if}}
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="pull-right">
<button type="submit" form="rule-delete" class="btn btn-danger"><i class="glyphicon glyphicon-remove"></i> Delete Rule</button>
</div>
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-ok"></i> Update</button>
</div>
</div>
</form>

View file

@ -0,0 +1,57 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li class="active">Segments</li>
</ol>
<div class="pull-right">
<a class="btn btn-primary" href="/segments/{{list.id}}/create" role="button"><i class="glyphicon glyphicon-plus"></i> Create Segment</a>
</div>
<h2>{{list.name}} <small>Segments</small></h2>
<hr>
<div class="table-responsive">
<table class="table table-bordered table-hover data-table display nowrap" width="100%" data-row-sort="0,1,1,0">
<thead>
<th class="col-md-1">
#
</th>
<th>
Name
</th>
<th class="col-md-2">
Match
</th>
<th class="col-md-1">
&nbsp;
</th>
</thead>
{{#if rows}}
<tbody>
{{#each rows}}
<tr>
<th scope="row">
{{index}}
</th>
<td>
<span class="glyphicon glyphicon-filter" aria-hidden="true"></span>
<a href="/segments/{{../list.id}}/view/{{id}}">{{name}}</a>
</td>
<td>
{{type}}
</td>
<td>
<span class="glyphicon glyphicon-wrench" aria-hidden="true"></span>
<a href="/segments/{{../list.id}}/edit/{{id}}">
Edit
</a>
</td>
</tr>
{{/each}}
</tbody>
{{/if}}
</table>
</div>

View file

@ -0,0 +1,68 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li><a href="/segments/{{list.id}}">Segments</a></li>
<li class="active">{{name}}</li>
</ol>
<div class="pull-right">
<a class="btn btn-primary" href="/segments/{{list.id}}/rules/{{id}}/create" role="button"><i class="glyphicon glyphicon-plus"></i> Create Rule</a>
</div>
<h2>{{list.name}} <small><span class="glyphicon glyphicon-filter" aria-hidden="true"></span> Segment {{name}}</small></h2>
<hr>
<div class="well well-sm">
<div class="pull-right">
<a class="btn btn-primary btn-sm" href="/segments/{{list.id}}/edit/{{id}}" role="button"><i class="glyphicon glyphicon-wrench"></i> Edit Segment</a>
</div>
Match rules: <span class="label label-default">{{type}}</span>
<br /> Matching subscribers: <span class="label label-default">{{subscribers}}</span> (
<a href="/lists/view/{{list.id}}?segment={{id}}">show</a>)
<br />
<div class="clearfix"></div>
</div>
<div class="table-responsive">
<table class="table table-bordered table-hover data-table display nowrap" width="100%" data-row-sort="0,1,0,0">
<thead>
<th class="col-md-1">
#
</th>
<th>
Rule
</th>
<th class="col-md-2">
Value
</th>
<th class="col-md-1">
&nbsp;
</th>
</thead>
{{#if rules}}
<tbody>
{{#each rules}}
<tr>
<th scope="row">
{{index}}
</th>
<td>
{{name}}
</td>
<td>
{{formatted}}
</td>
<td>
<span class="glyphicon glyphicon-wrench" aria-hidden="true"></span>
<a href="/segments/{{../list.id}}/rules/{{../id}}/edit/{{id}}">
Edit
</a>
</td>
</tr>
{{/each}}
</tbody>
{{/if}}
</table>
</div>

View file

@ -0,0 +1,122 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li class="active">Add subscriber</li>
</ol>
<h2>{{list.name}} <small>Add subscriber</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/lists/subscription/add">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="list" value="{{list.id}}">
<div class="form-group">
<label for="email" class="col-sm-2 control-label">Email address</label>
<div class="col-sm-10">
<input type="email" class="form-control input-lg" name="email" id="email" placeholder="" value="{{email}}" required>
</div>
</div>
<div class="form-group">
<label for="first-name" class="col-sm-2 control-label">First Name</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="first-name" id="first-name" placeholder="" value="{{firstName}}">
</div>
</div>
<div class="form-group">
<label for="last-name" class="col-sm-2 control-label">Last Name</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="last-name" id="last-name" placeholder="" value="{{lastName}}">
</div>
</div>
{{#each customFields}}
<div class="form-group">
<label class="col-sm-2 control-label">{{name}}</label>
<div class="col-sm-10">
{{#if typeText}}
<input type="text" class="form-control" name="{{column}}" value="{{value}}">
{{/if}}
{{#if typeNumber}}
<input type="number" class="form-control" name="{{column}}" value="{{value}}">
{{/if}}
{{#if typeWebsite}}
<input type="url" class="form-control" name="{{column}}" value="{{value}}">
{{/if}}
{{#if typeDateUs}}
<div class="input-group date fm-date-us">
<input type="text" class="form-control" name="{{column}}" placeholder="MM/DD/YYYY" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeDateEur}}
<div class="input-group date fm-date-eur">
<input type="text" class="form-control" name="{{column}}" placeholder="DD/MM/YYYY" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeBirthdayUs}}
<div class="input-group date fm-birthday-us">
<input type="text" class="form-control" name="{{column}}" placeholder="MM/DD" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeBirthdayEur}}
<div class="input-group date fm-birthday-eur">
<input type="text" class="form-control" name="{{column}}" placeholder="DD/MM" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeDropdown}}
<select name="{{key}}" class="form-control">
<option value="">
Select
</option>
{{#each options}}
<option value="{{column}}" {{#if value}} selected {{/if}}>{{name}}</option>
{{/each}}
</select>
{{/if}}
{{#if typeRadio}}
{{#each options}}
<div class="radio">
<label>
<input type="radio" name="{{../key}}" value="{{column}}" {{#if value}} checked {{/if}}> {{name}}
</label>
</div>
{{/each}}
{{/if}}
{{#if typeCheckbox}}
{{#each options}}
<div class="checkbox">
<label>
<input type="checkbox" name="{{column}}" value="1" {{#if value}} checked {{/if}}> {{name}}
</label>
</div>
{{/each}}
{{/if}}
</div>
</div>
{{/each}}
<hr />
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<p class="text-warning">
This person will not receive a confirmation email so make sure you have a permission to email them
</p>
<button type="submit" class="btn btn-primary">Subscribe</button>
</div>
</div>
</form>

View file

@ -0,0 +1,138 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li class="active">Edit subscriber</li>
</ol>
<h2>{{list.name}} <small>Edit subscriber</small> <a class="btn btn-default btn-xs" href="/lists/view/{{list.id}}" role="button"><span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span> Back to list</a></h2>
<hr>
<form method="post" class="delete-form" id="subscriber-unsubscribe" action="/lists/subscription/unsubscribe">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="list" value="{{list.id}}">
<input type="hidden" name="cid" value="{{cid}}">
</form>
<form method="post" class="delete-form" id="subscriber-delete" action="/lists/subscription/delete">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="list" value="{{list.id}}">
<input type="hidden" name="cid" value="{{cid}}">
</form>
<form class="form-horizontal" method="post" action="/lists/subscription/edit">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="list" value="{{list.id}}">
<input type="hidden" name="cid" value="{{cid}}">
<div class="form-group">
<label for="email" class="col-sm-2 control-label">Email address</label>
<div class="col-sm-10">
<input type="email" class="form-control input-lg" name="email" id="email" placeholder="" value="{{email}}" required>
</div>
</div>
<div class="form-group">
<label for="first-name" class="col-sm-2 control-label">First Name</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="first-name" id="first-name" placeholder="" value="{{firstName}}">
</div>
</div>
<div class="form-group">
<label for="last-name" class="col-sm-2 control-label">Last Name</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="last-name" id="last-name" placeholder="" value="{{lastName}}">
</div>
</div>
{{#each customFields}}
<div class="form-group">
<label class="col-sm-2 control-label">{{name}}</label>
<div class="col-sm-10">
{{#if typeText}}
<input type="text" class="form-control" name="{{column}}" value="{{value}}">
{{/if}}
{{#if typeNumber}}
<input type="number" class="form-control" name="{{column}}" value="{{value}}">
{{/if}}
{{#if typeWebsite}}
<input type="url" class="form-control" name="{{column}}" value="{{value}}">
{{/if}}
{{#if typeDateUs}}
<div class="input-group date fm-date-us">
<input type="text" class="form-control" name="{{column}}" placeholder="MM/DD/YYYY" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeDateEur}}
<div class="input-group date fm-date-eur">
<input type="text" class="form-control" name="{{column}}" placeholder="DD/MM/YYYY" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeBirthdayUs}}
<div class="input-group date fm-birthday-us">
<input type="text" class="form-control" name="{{column}}" placeholder="MM/DD" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeBirthdayEur}}
<div class="input-group date fm-birthday-eur">
<input type="text" class="form-control" name="{{column}}" placeholder="DD/MM" value="{{value}}"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span>
</div>
{{/if}}
{{#if typeDropdown}}
<select name="{{key}}" class="form-control">
<option value="">
Select
</option>
{{#each options}}
<option value="{{column}}" {{#if value}} selected {{/if}}>{{name}}</option>
{{/each}}
</select>
{{/if}}
{{#if typeRadio}}
{{#each options}}
<div class="radio">
<label>
<input type="radio" name="{{../key}}" value="{{column}}" {{#if value}} checked {{/if}}> {{name}}
</label>
</div>
{{/each}}
{{/if}}
{{#if typeCheckbox}}
{{#each options}}
<div class="checkbox">
<label>
<input type="checkbox" name="{{column}}" value="1" {{#if value}} checked {{/if}}> {{name}}
</label>
</div>
{{/each}}
{{/if}}
</div>
</div>
{{/each}}
<hr />
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="pull-right">
{{#if isSubscribed}}
<button type="submit" form="subscriber-unsubscribe" class="btn btn-default"><i class="glyphicon glyphicon-ban-circle"></i> Unsubscribe</button>
{{/if}}
<button type="submit" form="subscriber-delete" class="btn btn-danger"><i class="glyphicon glyphicon-remove"></i> Delete Subscription</button>
</div>
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-ok"></i> Update</button>
</div>
</div>
</form>

View file

@ -0,0 +1,54 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li class="active">Import subscribers</li>
</ol>
<h2>{{list.name}} <small>Import subscribers</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/lists/subscription/import-confirm">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="list" value="{{list.id}}">
<input type="hidden" name="import" value="{{id}}">
{{#each mapping.columns}}
<div class="form-group">
<label for="column-{{@index}}" class="col-sm-2 control-label">{{this}}</label>
<div class="col-sm-10">
<select class="form-control" id="column-{{@index}}" name="column-{{@index}}">
<option value=""> Select </option>
<option value="email">Email address</option>
<option value="first_name">First Name</option>
<option value="last_name">Last Name</option>
{{#each ../customFields}}
{{#if column}}
<option value="{{column}}">{{name}}</option>
{{else}}
<optgroup label="{{name}}">
{{#each options}}
<option value="{{column}}">{{name}}</option>
{{/each}}
</optgroup>
{{/if}}
{{/each}}
</select>
<span id="helpBlock" class="help-block">Example: "{{lookup ../mapping.example @index}}"</span>
</div>
</div>
{{/each}}
<hr />
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary">Start import</button>
</div>
</div>
</form>

View file

@ -0,0 +1,53 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li><a href="/lists/view/{{list.id}}">{{list.name}}</a></li>
<li class="active">Import subscribers</li>
</ol>
<h2>{{list.name}} <small>Import subscribers</small></h2>
<hr>
<form class="form-horizontal" method="post" action="/lists/subscription/import" enctype="multipart/form-data">
<input type="hidden" name="_csrf" value="{{csrfToken}}">
<input type="hidden" name="list" value="{{list.id}}">
<div class="form-group">
<label for="listimport" class="col-sm-2 control-label">CSV File</label>
<div class="col-sm-6">
<input type="file" class="form-control" name="listimport" id="listimport" required>
</div>
</div>
<div class="form-group">
<label for="delimiter" class="col-sm-2 control-label">CSV delimiter</label>
<div class="col-sm-1">
<input type="text" class="form-control" name="delimiter" id="delimiter" placeholder="" value="{{delimiter}}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">Categorize the imported subscribers as:</label>
<div class="col-sm-6">
<div class="radio">
<label>
<input type="radio" name="type" id="type" value="subscribed" checked> Subscribed <span class="text-muted">Regular subscriber addresses</span>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="type" id="type" value="unsubscribed"> Unsubscribed <span class="text-muted">Suppressed emails that will be unsubscribed from your list</span>
</label>
</div>
</div>
</div>
<hr />
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> Next</button>
</div>
</div>
</form>

188
views/lists/view.hbs Normal file
View file

@ -0,0 +1,188 @@
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li><a href="/lists/">Lists</a></li>
<li class="active">{{name}}</li>
</ol>
<div class="pull-right">
<a class="btn btn-default" href="/subscription/{{cid}}" target="_blank" role="button"><span class="glyphicon glyphicon-share-alt" aria-hidden="true"></span> Subscription Form</a>
<div class="btn-group">
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
List Actions <span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li><a href="/fields/{{id}}" role="button"><span class="glyphicon glyphicon-tasks" aria-hidden="true"></span> Custom Fields</a></li>
<li><a href="/segments/{{id}}" role="button"><span class="glyphicon glyphicon-filter" aria-hidden="true"></span> Segments</a></li>
<li><a href="/lists/edit/{{id}}" role="button"><span class="glyphicon glyphicon-wrench" aria-hidden="true"></span> Edit List</a></li>
<li role="separator" class="divider"></li>
<li><a href="/lists/subscription/{{id}}/add" role="button"><span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span> Add subscriber</a></li>
<li><a href="/lists/subscription/{{id}}/import" role="button"><span class="glyphicon glyphicon-cloud-upload" aria-hidden="true"></span> Import subscribers</a></li>
</ul>
</div>
</div>
<h2><span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span> {{name}}</h2>
<hr>
{{#if description}}
<div class="well well-sm">{{{description}}}</div>
{{/if}}
<div class="well well-sm">
{{#if useSegment}}
<div class="pull-right">
<a class="btn btn-primary btn-sm" href="/segments/{{id}}/edit/{{segment}}" role="button"><span class="glyphicon glyphicon-wrench" aria-hidden="true"></span> Edit Segment</a>
</div>
{{/if}}
<form class="form-inline" method="get">
<div class="form-group">
<label for="exampleInputName2">Segment</label>
<select name="segment" class="form-control">
<option value="0">All subscriptions</option>
{{#if segments}}
<optgroup label="Segments">
{{#each segments}}
<option value="{{id}}" {{#if selected}} selected {{/if}}>{{name}}</option>
{{/each}}
</optgroup>
{{/if}}
<optgroup label="Actions">
<option value="-1">Create new segment…</option>
</optgroup>
</select>
</div>
<button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-filter" aria-hidden="true"></span> Filter</button>
</form>
<div class="clearfix"></div>
</div>
<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="{{#if showSubscriptions}}active{{/if}}"><a href="#subscriptions" aria-controls="subscriptions" role="tab" data-toggle="tab">Subscriptions</a></li>
<li role="presentation" class="{{#if showImports}}active{{/if}}"><a href="#imports" aria-controls="imports" role="tab" data-toggle="tab">Imports</a></li>
</ul>
<div class="tab-content">
<div role="tabpanel" class="tab-pane {{#if showSubscriptions}}active{{/if}}" id="subscriptions">
<p></p>
<div class="table-responsive">
<table data-list-id="{{id}}" {{#if useSegment}} data-list-args="segment={{useSegment}}" {{/if}} class="table table-bordered table-hover data-table-ajax display nowrap" width="100%" data-row-sort="0,1,1,1{{customSort}},1,0">
<thead>
<tr>
<th class="col-md-1">
#
</th>
<th>
Address
</th>
<th>
First Name
</th>
<th>
Last Name
</th>
{{#each customFields}}
<th>
{{name}}
</th>
{{/each}}
<th>
Status
</th>
<th></th>
</tr>
</thead>
</table>
</div>
</div>
<div role="tabpanel" class="tab-pane {{#if showImports}}active{{/if}}" id="imports">
<p></p>
<div class="table-responsive">
<table class="table table-bordered table-hover">
<thead>
<th class="col-md-1">
#
</th>
<th>
Created
</th>
<th>
Finished
</th>
<th>
Type
</th>
<th>
Processed
</th>
<th>
Status
</th>
<th>
</th>
</thead>
<tbody>
{{#if imports}}
{{#each imports}}
<tr>
<th scope="row">
{{index}}
</th>
<td>
<span class="datestring" data-date="{{created}}" title="{{created}}">{{created}}</span>
</td>
<td>
{{#if finished}}
<span class="datestring" data-date="{{finished}}" title="{{finished}}">{{finished}}</span>
{{else}}
No
{{/if}}
</td>
<td>
{{importType}}
</td>
<td>
{{processed}}
</td>
<td class="{{#if error}}text-danger{{/if}}">
{{#if error}}
<strong><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> {{importStatus}}</strong>
{{else}}
<strong>{{importStatus}}</strong>
{{/if}}
</td>
<td class="text-center">
<form method="post" class="confirm-submit" data-confirm-message="Are you sure? This action should only be called to resolve stalled imports" action="/lists/subscription/import-restart">
<input type="hidden" name="_csrf" value="{{../csrfToken}}">
<input type="hidden" name="list" value="{{list}}">
<input type="hidden" name="import" value="{{id}}">
<button type="submit" class="btn btn-info btn-xs"><span class="glyphicon glyphicon-repeat" aria-hidden="true"></span> Restart</button>
</form>
</td>
</tr>
{{/each}}
{{else}}
<tr>
<td colspan="7">
No data available in table
</td>
</tr>
{{/if}}
</tbody>
</table>
</div>
</div>
</div>