{% extends 'layouts/backend_old.jinja2' %}
{% block title %}buyercall Admin - Dashboard{% endblock %}
{% block heading %}My Administrative Dashboard{% endblock %}
{% block body %}
<div class="content">
<div class="container-fluid">
<div class="col-md-10 col-md-offset-1">
{% if current_user.role in ['sysadmin', 'limitsysadmin', 'admin', 'partner'] or (current_user.role == 'partner' and current_user.partnership.billing_type == 'account')%}
<div class="card">
<div class="card-header card-header-tabs" data-background-color="light-blue">
<div class="nav-tabs-navigation">
<div class="nav-tabs-wrapper">
<span class="nav-tabs-title">Administrative Overview:</span>
<ul class="nav nav-tabs" data-tabs="tabs">
{% if current_user.role in ['sysadmin', 'limitsysadmin', 'partner'] %}
<li class="active">
<a href="#billing" data-toggle="tab">
<i class="material-icons">info_outline</i> Billing
<div class="ripple-container"></div>
</a>
</li>
{% endif %}
{% if current_user.role in ['sysadmin'] %}
<li>
<a href="#coupon" data-toggle="tab">
<i class="material-icons">loyalty</i> Coupons
<div class="ripple-container"></div>
</a>
</li>
{% endif %}
<li {% if current_user.role in ['admin'] %}class="active"{% endif %}>
<a href="#users" data-toggle="tab">
<i class="material-icons">people_outline</i> Users
<div class="ripple-container"></div>
</a>
</li>
{% if current_user.role in ['sysadmin', 'limitsysadmin', 'partner'] %}
<li>
<a href="#issues" data-toggle="tab">
<i class="material-icons">error_outline</i> Issues
<div class="ripple-container"></div>
</a>
</li>
{% endif %}
{% if current_user.role in ['sysadmin'] %}
<li>
<a href="#exports" data-toggle="tab">
<i class="material-icons">drive_file_move</i> Exports
<div class="ripple-container"></div>
</a>
</li>
{% endif %}
</ul>
</div>
</div>
</div>
<div class="card-content">
<div class="tab-content">
{% if current_user.role in ['sysadmin', 'limitsysadmin', 'partner'] %}
<div class="tab-pane active" id="billing">
<div class="row">
<div class="col-md-12">
<h4><a href="{{ url_for('partnership.accounts') }}">Account Subscriptions</a>
<span class="text-muted">
({{ group_and_count_plans.total }})
</span>
</h4>
</div>
</div>
<div class="row">
<div class="col-md-12">
{% for item in group_and_count_plans.query %}
{% set percent = ((item[0] / group_and_count_plans.total) * 100) | round %}
<label>
{{ item[1] | title }}
<span class="text-muted">({{ item[0] }})</span>
</label>
<div class="progress">
<div class="progress-bar" role="progressbar"
aria-valuenow="{{ percent }}" aria-valuemin="0"
aria-valuemax="100" style="width: {{ percent }}%;">
{{ percent }}%
</div>
</div>
{% endfor %}
</div>
</div>
</div>
{% endif %}
{% if current_user.role in ['sysadmin'] %}
<div class="tab-pane" id="coupon">
<div class="row">
<div class="col-md-12">
<h4><a href="{{ url_for('admin.coupons') }}">Account Coupons</a>
<span class="text-muted">
Subscribers are using
{{ group_and_count_coupons[0] }} coupon(s)
</span>
</h4>
<a href="{{ url_for('admin.coupons_new') }}"
class="btn btn-fill btn-light-blue pull-right">Add</a>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="progress">
<div class="progress-bar" role="progressbar"
aria-valuenow="{{ group_and_count_coupons[2] }}"
aria-valuemin="0"
aria-valuemax="100"
style="width: {{ group_and_count_coupons[2] }}%;">
{{ group_and_count_coupons[2] }}%
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% if current_user.role in ['sysadmin'] %}
<div class="tab-pane" id="exports">
<div class="row">
<div class="col-md-12">
<h4>Generate form lead PDF exports</h4>
<div class="input-group label-floating">
<input type="text" class="form-control" placeholder="Partnership Account ID" id="txtPartnershipAccountId"/>
</div>
<div class="btn btn-fill btn-light-blue pull-right" id="btnGenerateExport">Generate</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div id="divExportFeedback" class="alert" style="display:none;" role="alert"></div>
</div>
</div>
</div>
{% endif %}
<div class="tab-pane {% if current_user.role in ['admin'] %}active{% endif %}" id="users">
<div class="row">
{% if current_user.role in ['admin', 'partner'] %}
<div class="col-md-12">
<h4><a href="{{ url_for('admin.users') }}">Users Overview</a>
<span class="text-muted">
({{ group_and_count_users.total }})
</span>
</h4>
</div>
{% else %}
<div class="col-md-12">
<h4>Users Overview
<span class="text-muted">
({{ group_and_count_users.total }})
</span>
</h4>
</div>
{% endif %}
</div>
<div class="row">
<div class="col-md-12">
{% for item in group_and_count_users.query %}
{% set percent = ((item[0] / group_and_count_users.total) * 100) | round %}
<label>
{{ item[1] | title }}
<span class="text-muted">({{ item[0] }})</span>
</label>
<div class="progress">
<div class="progress-bar" role="progressbar"
aria-valuenow="{{ percent }}" aria-valuemin="0"
aria-valuemax="100" style="width: {{ percent }}%;">
{{ percent }}%
</div>
</div>
{% endfor %}
</div>
</div>
</div>
<div class="tab-pane" id="issues">
<div class="row">
<div class="col-md-12">
<h4><a href="{{ url_for('admin.issues') }}">Issues Overview</a>
<span class="text-muted">
({{ group_and_count_issues.total }})
</span>
</h4>
</div>
</div>
<div class="row">
<div class="col-md-12">
{% for item in group_and_count_issues.query %}
{% set percent = ((item[0] / group_and_count_issues.total) * 100) | round %}
<label>
{{ item[1] | title }}
<span class="text-muted">({{ item[0] }})</span>
</label>
<div class="progress">
<div class="progress-bar" role="progressbar"
aria-valuenow="{{ percent }}" aria-valuemin="0"
aria-valuemax="100" style="width: {{ percent }}%;">
{{ percent }}%
</div>
</div>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
</div>
{% endif %}
</div>
</div>
</div>
{% if current_user.role in ['sysadmin'] %}
<div class="container-fluid">
<div class="col-md-10 col-md-offset-1">
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header card-header-icon" data-background-color="light-blue">
<i class="material-icons">brightness_auto</i>
</div>
<div class="card-content">
<h4 class="card-title">
Administrative Services -
<small class="text-muted">You may want to include a list of
external links so you can easily get to those services.</small>
</h4>
<div class="row">
<div class="col-md-6">
<dl>
<dt>Primary e-mail</dt>
<dd class="sm-margin-bottom"><a href="#">buyercall@gmail.com</a></dd>
<dt>Hosting provider</dt>
<dd><a href="#">Digital Ocean</a></dd>
</dl>
</div>
<div class="col-md-6">
<dl>
<dt>System metrics</dt>
<dd class="sm-margin-bottom"><a href="{{ config.get('ENDPOINT_CADVISOR') }}">cAdvisor</a></dd>
<dt>Task status</dt>
<dd class="sm-margin-bottom"><a href="{{ config.get('ENDPOINT_FLOWER') }}">Flower</a></dd>
</dl>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% endblock %}
{% block scripts %}
<script>
$("#btnGenerateExport").on("click", function() {
const paid = $("#txtPartnershipAccountId").val();
var feedback = $("#divExportFeedback");
feedback.hide();
if (isNaN(paid) || paid.length == 0) {
feedback.addClass("alert-danger").removeClass("alert-success");
feedback.html("Please enter a valid number.");
feedback.show();
} else {
$.ajax({
url: "/form_leads/" + paid + "/generate_leads/pdf",
type: "GET",
dataType: "json",
success: function(response) {
if (response.account_name == "") {
feedback.addClass("alert-danger").removeClass("alert-success");
feedback.html("No account found.");
feedback.show();
} else
if (response.form_lead_count == 0) {
feedback.addClass("alert-danger").removeClass("alert-success");
feedback.html("No form leads found.");
feedback.show();
} else {
feedback.addClass("alert-success").removeClass("alert-danger");
feedback.html("Processing of " + response.form_lead_count + " form lead(s) for " + response.account_name + " started.");
feedback.show();
}
}
});
}
});
</script>
{% endblock %}