update Piwik to version 2.16 (fixes #91)
This commit is contained in:
parent
296343bf3b
commit
d885a4baa9
5833 changed files with 418860 additions and 226988 deletions
11
www/analytics/plugins/Morpheus/templates/_iframeBuster.twig
Normal file
11
www/analytics/plugins/Morpheus/templates/_iframeBuster.twig
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{% if (enableFrames is defined and enableFrames == false) %}
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
$('body').css("display", "none");
|
||||
if (self == top) {
|
||||
var theBody = document.getElementsByTagName('body')[0];
|
||||
theBody.style.display = 'block';
|
||||
} else { top.location = self.location; }
|
||||
});
|
||||
</script>
|
||||
{% endif %}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{% autoescape false %}
|
||||
{{ includeAssets({"type": "css"}) }}
|
||||
{{ includeAssets({"type":"js"}) }}
|
||||
{% endautoescape %}
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
<script type="text/javascript">
|
||||
var piwik = {};
|
||||
piwik.token_auth = "{{ token_auth }}";
|
||||
piwik.piwik_url = "{{ piwikUrl }}";
|
||||
piwik.cacheBuster = "{{ cacheBuster }}";
|
||||
|
||||
piwik.numbers = {
|
||||
patternNumber: "{{ 'Intl_NumberFormatNumber'|translate }}",
|
||||
patternPercent: "{{ 'Intl_NumberFormatPercent'|translate }}",
|
||||
patternCurrency: "{{ 'Intl_NumberFormatCurrency'|translate }}",
|
||||
symbolPlus: "{{ 'Intl_NumberSymbolPlus'|translate }}",
|
||||
symbolMinus: "{{ 'Intl_NumberSymbolMinus'|translate }}",
|
||||
symbolPercent: "{{ 'Intl_NumberSymbolPercent'|translate }}",
|
||||
symbolGroup: "{{ 'Intl_NumberSymbolGroup'|translate }}",
|
||||
symbolDecimal: "{{ 'Intl_NumberSymbolDecimal'|translate }}"
|
||||
};
|
||||
|
||||
{% if userLogin %}piwik.userLogin = "{{ userLogin|e('js')}}";{% endif %}
|
||||
|
||||
{% if idSite is defined %}piwik.idSite = "{{ idSite }}";{% endif %}
|
||||
|
||||
{% if siteName is defined %}piwik.siteName = "{{ siteName|e('js') }}";{% endif %}
|
||||
|
||||
{% if siteMainUrl is defined %}piwik.siteMainUrl = "{{ siteMainUrl|e('js') }}";{% endif %}
|
||||
|
||||
{% if period is defined %}piwik.period = "{{ period }}";{% endif %}
|
||||
|
||||
{# piwik.currentDateString should not be used other than by the calendar Javascript
|
||||
(it is not set to the expected value when period=range)
|
||||
Use broadcast.getValueFromUrl('date') instead
|
||||
#}
|
||||
piwik.currentDateString = "{{ date|default(endDate|default('')) }}";
|
||||
{% if startDate is defined %}
|
||||
piwik.startDateString = "{{ startDate }}";
|
||||
piwik.endDateString = "{{ endDate }}";
|
||||
piwik.minDateYear = {{ minDateYear }};
|
||||
piwik.minDateMonth = parseInt("{{ minDateMonth }}", 10);
|
||||
piwik.minDateDay = parseInt("{{ minDateDay }}", 10);
|
||||
piwik.maxDateYear = {{ maxDateYear }};
|
||||
piwik.maxDateMonth = parseInt("{{ maxDateMonth }}", 10);
|
||||
piwik.maxDateDay = parseInt("{{ maxDateDay }}", 10);
|
||||
{% endif %}
|
||||
{% if language is defined %}piwik.language = "{{ language }}";{% endif %}
|
||||
|
||||
piwik.hasSuperUserAccess = {{ hasSuperUserAccess|default(0)|e('js')}};
|
||||
piwik.config = {};
|
||||
{% if clientSideConfig is defined %}
|
||||
piwik.config = {{ clientSideConfig|json_encode|raw }};
|
||||
{% endif %}
|
||||
{{ postEvent("Template.jsGlobalVariables") }}
|
||||
</script>
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
<script type="text/javascript">
|
||||
$(function () {
|
||||
initializeSparklines();
|
||||
});
|
||||
</script>
|
||||
58
www/analytics/plugins/Morpheus/templates/admin.twig
Normal file
58
www/analytics/plugins/Morpheus/templates/admin.twig
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
{% extends 'layout.twig' %}
|
||||
|
||||
{% set categoryTitle %}{{ 'CoreAdminHome_Administration'|translate }}{% endset %}
|
||||
|
||||
{% set bodyClass = postEvent('Template.bodyClass', 'admin') %}
|
||||
|
||||
{% block body %}
|
||||
{% if isSuperUser %}
|
||||
{% set topMenuModule = 'CoreAdminHome' %}
|
||||
{% set topMenuAction = 'generalSettings' %}
|
||||
{% else %}
|
||||
{% set topMenuModule = 'SitesManager' %}
|
||||
{% set topMenuAction = 'index' %}
|
||||
{% endif %}
|
||||
{{ parent() }}
|
||||
{% endblock %}
|
||||
|
||||
{% block root %}
|
||||
{% include "@CoreHome/_topScreen.twig" %}
|
||||
|
||||
{% import 'ajaxMacros.twig' as ajax %}
|
||||
{{ ajax.requestErrorDiv(emailSuperUser|default(''), arePiwikProAdsEnabled) }}
|
||||
{{ postEvent("Template.beforeContent", "admin", currentModule) }}
|
||||
|
||||
<div class="page">
|
||||
|
||||
{% if showMenu is not defined or showMenu %}
|
||||
{% import '@CoreHome/_menu.twig' as menu %}
|
||||
{{ menu.menu(adminMenu, false, 'Menu--admin') }}
|
||||
{% endif %}
|
||||
|
||||
<div class="pageWrap">
|
||||
|
||||
<div class="top_controls">
|
||||
{% block topcontrols %}
|
||||
{% endblock %}
|
||||
|
||||
{% include "@CoreHome/_headerMessage.twig" %}
|
||||
</div>
|
||||
|
||||
<div class="admin" id="content">
|
||||
{% include "@CoreHome/_notifications.twig" %}
|
||||
{% include "@CoreHome/_warningInvalidHost.twig" %}
|
||||
|
||||
<div class="ui-confirm" id="alert">
|
||||
<h2></h2>
|
||||
<input role="no" type="button" value="{{ 'General_Ok'|translate }}"/>
|
||||
</div>
|
||||
|
||||
{% block content %}
|
||||
{% endblock %}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
38
www/analytics/plugins/Morpheus/templates/ajaxMacros.twig
Normal file
38
www/analytics/plugins/Morpheus/templates/ajaxMacros.twig
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{% macro errorDiv(id='ajaxError') %}
|
||||
<div id="{{ id }}" style="display:none"></div>
|
||||
{% endmacro %}
|
||||
|
||||
{% macro loadingDiv(id='ajaxLoadingDiv') %}
|
||||
<div id="{{ id }}" style="display:none;">
|
||||
<div class="loadingPiwik">
|
||||
<img src="plugins/Morpheus/images/loading-blue.gif" alt="{{ 'General_LoadingData'|translate }}" />{{ 'General_LoadingData'|translate }}
|
||||
</div>
|
||||
<div class="loadingSegment">
|
||||
{{ 'SegmentEditor_LoadingSegmentedDataMayTakeSomeTime'|translate }}
|
||||
</div>
|
||||
</div>
|
||||
{% endmacro %}
|
||||
|
||||
{% macro requestErrorDiv(emailSuperUser, arePiwikProAdsEnabled = false) %}
|
||||
<div id="loadingError">
|
||||
<div class="alert alert-danger">
|
||||
|
||||
{% if emailSuperUser is defined and emailSuperUser %}
|
||||
{{ 'General_ErrorRequest'|translate('<a href="mailto:' ~ emailSuperUser ~ '">', '</a>')|raw }}
|
||||
{% else %}
|
||||
{{ 'General_ErrorRequest'|translate('', '') }}
|
||||
{% endif %}
|
||||
|
||||
<br /><br />
|
||||
{{ 'General_NeedMoreHelp'|translate }}
|
||||
|
||||
<a rel="noreferrer" target="_blank" href="https://piwik.org/faq/troubleshooting/faq_19489/">{{ 'General_Faq'|translate }}</a> –
|
||||
<a rel="noreferrer" target="_blank" href="http://forum.piwik.org/">{{ 'Feedback_CommunityHelp'|translate }}</a>
|
||||
|
||||
{% if arePiwikProAdsEnabled %}
|
||||
–
|
||||
<a rel="noreferrer" target="_blank" href="{{ 'https://piwik.pro/'|piwikProCampaignParameters('Help', 'AjaxError')|e('html_attr') }}">{{ 'Feedback_ProfessionalHelp'|translate }}</a>
|
||||
{%- endif %}.
|
||||
</div>
|
||||
</div>
|
||||
{% endmacro %}
|
||||
60
www/analytics/plugins/Morpheus/templates/dashboard.twig
Normal file
60
www/analytics/plugins/Morpheus/templates/dashboard.twig
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
{% extends 'layout.twig' %}
|
||||
|
||||
{% block head %}
|
||||
{{ parent() }}
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script language="javascript" type="text/javascript" src="libs/jqplot/excanvas.min.js"></script>
|
||||
<![endif]-->
|
||||
{% endblock %}
|
||||
|
||||
{% set title %}{{ siteName|raw }}{% if prettyDateLong is defined %} - {{ prettyDateLong }}{% endif %} - {{ 'CoreHome_WebAnalyticsReports'|translate }}{% endset %}
|
||||
|
||||
{% block pageDescription %}Web Analytics report for {{ siteName|escape("html_attr") }} - Piwik{% endblock %}
|
||||
|
||||
{% set bodyClass = postEvent('Template.bodyClass', 'dashboard') %}
|
||||
|
||||
{% block body %}
|
||||
{{ parent() }}
|
||||
{{ postEvent("Template.footer") }}
|
||||
{% endblock %}
|
||||
|
||||
{% block root %}
|
||||
{% include "@CoreHome/_warningInvalidHost.twig" %}
|
||||
{% include "@CoreHome/_topScreen.twig" %}
|
||||
|
||||
<div class="ui-confirm" id="alert">
|
||||
<h2></h2>
|
||||
<input role="yes" type="button" value="{{ 'General_Ok'|translate }}"/>
|
||||
</div>
|
||||
|
||||
{{ postEvent("Template.beforeContent", "dashboard", currentModule) }}
|
||||
|
||||
<div class="page">
|
||||
|
||||
{% if (menu is defined and menu) %}
|
||||
{% import '@CoreHome/_menu.twig' as menuMacro %}
|
||||
{{ menuMacro.menu(menu, true, 'Menu--dashboard') }}
|
||||
{% endif %}
|
||||
|
||||
<div class="pageWrap">
|
||||
|
||||
|
||||
<div class="top_controls">
|
||||
{% block topcontrols %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
|
||||
<a name="main"></a>
|
||||
{% block notification %}
|
||||
{% include "@CoreHome/_notifications.twig" %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{% endblock %}
|
||||
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
599
www/analytics/plugins/Morpheus/templates/demo.twig
Normal file
599
www/analytics/plugins/Morpheus/templates/demo.twig
Normal file
|
|
@ -0,0 +1,599 @@
|
|||
{% extends 'layout.twig' %}
|
||||
|
||||
{% set title %}Piwik UI demo{% endset %}
|
||||
|
||||
{% block head %}
|
||||
{{ parent() }}
|
||||
|
||||
<style>
|
||||
.grid-demo .row {
|
||||
font-size: 13px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
.grid-demo [class^=col-] {
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
background-color: #eee;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
.demo {
|
||||
margin: 0 0 15px 0;
|
||||
background-color: #fff;
|
||||
border: solid 1px #ddd;
|
||||
border-radius: 4px 4px 0 0;
|
||||
padding: 25px;
|
||||
}
|
||||
.demo-code {
|
||||
padding: 9px 14px;
|
||||
background-color: #f7f7f9;
|
||||
border: 1px solid #e1e1e8;
|
||||
margin: -16px 0 15px;
|
||||
border-bottom-right-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
}
|
||||
.demo-code pre {
|
||||
color: inherit;
|
||||
font-size: 14px;
|
||||
padding: 0;
|
||||
background-color: transparent;
|
||||
margin: 0;
|
||||
}
|
||||
.demo .div-block {
|
||||
max-width: 400px;
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
min-height: 20px;
|
||||
padding: 19px;
|
||||
background-color: #f5f5f5;
|
||||
border: 1px solid #e3e3e3;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.icons h4 {
|
||||
padding-top: 15px;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
.icons .icon {
|
||||
font-family: monospace, monospace;
|
||||
padding-top: 5px;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
</style>
|
||||
{% endblock %}
|
||||
|
||||
{% block root %}
|
||||
|
||||
<div class="container">
|
||||
|
||||
<h1>{{ title }}</h1>
|
||||
<p>
|
||||
This page is intended to show all the UI components and styles available to use in Piwik.
|
||||
</p>
|
||||
|
||||
<h2>Containers</h2>
|
||||
<p>
|
||||
All HTML should be in a container:
|
||||
</p>
|
||||
<ul>
|
||||
<li><code>.container-fluid</code>: this container is fluid and will take 100% of the width</li>
|
||||
<li><code>.container</code>: this container has a max-width that adapts to the screen size</li>
|
||||
</ul>
|
||||
<p>
|
||||
Read more about <a href="http://getbootstrap.com/css/#overview-container">Bootstrap's containers</a>.
|
||||
</p>
|
||||
|
||||
<h2>Grid system</h2>
|
||||
<p>
|
||||
Bootstrap's grid system allows to organize the content in columns, all the while staying responsive for smaller screens.
|
||||
</p>
|
||||
<div class="grid-demo">
|
||||
<div class="row">
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
<div class="col-md-1">.col-md-1</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-8">.col-md-8</div>
|
||||
<div class="col-md-4">.col-md-4</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">.col-md-4</div>
|
||||
<div class="col-md-4">.col-md-4</div>
|
||||
<div class="col-md-4">.col-md-4</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">.col-md-6</div>
|
||||
<div class="col-md-6">.col-md-6</div>
|
||||
</div>
|
||||
</div>
|
||||
<p>
|
||||
Read more about <a href="http://getbootstrap.com/css/#grid">Bootstrap's grid system</a>.
|
||||
</p>
|
||||
|
||||
<h2>Typography</h2>
|
||||
|
||||
<div class="demo">
|
||||
<h1>h1. heading</h1>
|
||||
<h2>h2. heading</h2>
|
||||
<h3>h3. heading</h3>
|
||||
<h4>h4. heading</h4>
|
||||
<h5>h5. heading</h5>
|
||||
<h6>h6. heading</h6>
|
||||
<p>
|
||||
This is a paragraph, and <a href="#">this is a link</a>.
|
||||
</p>
|
||||
<p>
|
||||
Another paragraph, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h3>Alignment classes</h3>
|
||||
|
||||
<div class="demo">
|
||||
<p class="text-left">Left aligned text.</p>
|
||||
<p class="text-center">Center aligned text.</p>
|
||||
<p class="text-right">Right aligned text.</p>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><p class="text-left">Left aligned text.</p>
|
||||
<p class="text-center">Center aligned text.</p>
|
||||
<p class="text-right">Right aligned text.</p></pre>
|
||||
</div>
|
||||
|
||||
<h3>Lists</h3>
|
||||
|
||||
<div class="demo">
|
||||
<ul>
|
||||
<li>First item</li>
|
||||
<li>Second item</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><ul>
|
||||
<li>...</li>
|
||||
</ul></pre>
|
||||
</div>
|
||||
|
||||
<h2>Buttons</h2>
|
||||
|
||||
<div class="demo">
|
||||
<a class="btn" href="#">Link</a>
|
||||
<input type="button" class="btn" value="Input">
|
||||
<input type="submit" value="Submit">
|
||||
<button type="submit">Button</button>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><a class="btn" href="#">Link</a>
|
||||
<input type="button" class="btn" value="Input">
|
||||
<input type="submit" value="Submit">
|
||||
<button type="submit">Button</button></pre>
|
||||
</div>
|
||||
|
||||
<div class="demo">
|
||||
<button class="btn btn-lg">Large button</button>
|
||||
<a class="btn btn-lg" href="#">Large button</a>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><button class="btn btn-lg">Large button</button>
|
||||
<a class="btn btn-lg" href="#">Large button</a></pre>
|
||||
</div>
|
||||
|
||||
<div class="demo">
|
||||
<div class="div-block">
|
||||
<a class="btn btn-block" href="#">Block button</a>
|
||||
<a class="btn btn-lg btn-block" href="#">Large block button</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><a class="btn btn-block" href="#">Block button</a>
|
||||
<a class="btn btn-lg btn-block" href="#">Large block button</a></pre>
|
||||
</div>
|
||||
|
||||
<h3>Link buttons</h3>
|
||||
|
||||
<div class="demo">
|
||||
<a class="btn btn-link" href="#">Link button</a>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><a class="btn btn-link" href="#">Flat button</a></pre>
|
||||
</div>
|
||||
|
||||
<h3>Flat buttons</h3>
|
||||
|
||||
<div class="demo">
|
||||
<a class="btn btn-flat" href="#">Flat button</a>
|
||||
<a class="btn btn-flat" href="#"><span class="icon-add"></span></a>
|
||||
<a class="btn btn-flat btn-lg" href="#">Flat button</a>
|
||||
<a class="btn btn-flat btn-lg" href="#"><span class="icon-add"></span></a>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><a class="btn btn-flat" href="#">Flat button</a>
|
||||
<a class="btn btn-flat" href="#"><span class="icon-add"></span></a>
|
||||
<a class="btn btn-flat btn-lg" href="#">Flat button</a>
|
||||
<a class="btn btn-flat btn-lg" href="#"><span class="icon-add"></span></a></pre>
|
||||
</div>
|
||||
|
||||
<h2>Alerts</h2>
|
||||
|
||||
<div class="demo">
|
||||
<div class="alert alert-info">
|
||||
<strong>Info!</strong> This alert needs <a>your attention</a>, but it's not super important.
|
||||
</div>
|
||||
<div class="alert alert-success">
|
||||
<strong>Success!</strong> You successfully read this important <a>alert message</a>.
|
||||
</div>
|
||||
<div class="alert alert-warning">
|
||||
<strong>Warning!</strong> Better <a>check</a> yourself, you're not looking too good.
|
||||
</div>
|
||||
<div class="alert alert-danger">
|
||||
<strong>Error!</strong> Change <a>a few things</a> up and try submitting again.
|
||||
</div>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><div class="alert alert-info">...</div>
|
||||
<div class="alert alert-success">...</div>
|
||||
<div class="alert alert-warning">...</div>
|
||||
<div class="alert alert-danger">...</div></pre>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Read more about <a href="http://getbootstrap.com/components/#alerts">Bootstrap's alerts</a>.
|
||||
</p>
|
||||
|
||||
<h2>Forms</h2>
|
||||
|
||||
<h3>Simple form</h3>
|
||||
|
||||
<div class="demo">
|
||||
<form action="#">
|
||||
<div class="form-group">
|
||||
<label for="username">
|
||||
Username
|
||||
</label>
|
||||
<input type="text" id="username" placeholder="Some text here..."/>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email">
|
||||
Email
|
||||
</label>
|
||||
<div class="form-help">
|
||||
Here is more information.
|
||||
</div>
|
||||
<input type="email" id="email" placeholder="Some email here..."/>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>
|
||||
Report to load by default
|
||||
</label>
|
||||
<div class="form-help">
|
||||
This is a help text that can be used to describe the field.
|
||||
This help text may extend over several lines.
|
||||
</div>
|
||||
<label class="radio">
|
||||
<input type="radio" name="defaultReport" value="today">
|
||||
Today
|
||||
</label>
|
||||
<label class="radio">
|
||||
<input type="radio" name="defaultReport" value="yesterday">
|
||||
Yesterday
|
||||
</label>
|
||||
<label class="radio">
|
||||
<input type="radio" name="defaultReport" value="week">
|
||||
Previous 30 days (not including today)
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="language">
|
||||
Language
|
||||
</label>
|
||||
<select id="language">
|
||||
<option>English</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="description">
|
||||
Description
|
||||
</label>
|
||||
<textarea id="description" rows="5"></textarea>
|
||||
</div>
|
||||
|
||||
<input type="submit" value="Submit">
|
||||
</form>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><form action="#">
|
||||
<div class="form-group">
|
||||
<label for="username">
|
||||
Username
|
||||
</label>
|
||||
<input type="text" id="username" placeholder="Some text here..."/>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email">
|
||||
Email
|
||||
</label>
|
||||
<div class="form-help">
|
||||
Here is more information.
|
||||
</div>
|
||||
<input type="email" id="email" placeholder="Some email here..."/>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>
|
||||
Report to load by default
|
||||
</label>
|
||||
<div class="form-help">
|
||||
This is a help text that can be used to describe the field.
|
||||
This help text may extend over several lines.
|
||||
</div>
|
||||
<label class="radio">
|
||||
<input type="radio" name="defaultReport" value="today">
|
||||
Today
|
||||
</label>
|
||||
<label class="radio">
|
||||
<input type="radio" name="defaultReport" value="yesterday">
|
||||
Yesterday
|
||||
</label>
|
||||
<label class="radio">
|
||||
<input type="radio" name="defaultReport" value="week">
|
||||
Previous 30 days (not including today)
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="language">
|
||||
Language
|
||||
</label>
|
||||
<select id="language">
|
||||
<option>English</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="description">
|
||||
Description
|
||||
</label>
|
||||
<textarea id="description" rows="5"></textarea>
|
||||
</div>
|
||||
|
||||
<input type="submit" value="Submit">
|
||||
</form></pre>
|
||||
</div>
|
||||
|
||||
<h3>Input group</h3>
|
||||
|
||||
<div class="demo">
|
||||
<div class="form-group">
|
||||
<label for="deleteOlderThan">
|
||||
Input with a text addon
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<input type="text" id="deleteOlderThan" value="180"/>
|
||||
<span class="input-group-addon">days</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><div class="form-group">
|
||||
<label for="foo">
|
||||
Input with a text addon
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<input type="text" id="foo" value="180"/>
|
||||
<span class="input-group-addon">days</span>
|
||||
</div>
|
||||
</div></pre>
|
||||
</div>
|
||||
|
||||
<h2>Code</h2>
|
||||
|
||||
<h3>Inline</h3>
|
||||
|
||||
<div class="demo">
|
||||
<p>
|
||||
You can put code in a text using the <code>code</code> tag.
|
||||
</p>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre>You can put code in a text using the <code>code</code> tag.</pre>
|
||||
</div>
|
||||
|
||||
<h3>Block</h3>
|
||||
|
||||
<div class="demo">
|
||||
<p>Or you can display a code block:</p>
|
||||
<pre><!-- Piwik -->
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
<!-- End Piwik Code --></pre>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre>...</pre>
|
||||
</div>
|
||||
|
||||
<h2>Tables</h2>
|
||||
|
||||
<div class="demo">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>First Name</th>
|
||||
<th>Last Name</th>
|
||||
<th>Username</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Mark</td>
|
||||
<td>Otto</td>
|
||||
<td>@mdo</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jacob</td>
|
||||
<td>Thornton</td>
|
||||
<td>@fat</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Larry</td>
|
||||
<td>the Bird</td>
|
||||
<td>@twitter</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><table>...</table></pre>
|
||||
</div>
|
||||
|
||||
<h2>Icons</h2>
|
||||
|
||||
<div id="icons" class="demo icons">
|
||||
</div>
|
||||
<div class="demo-code">
|
||||
<pre><span class="icon-ok"></span></pre>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
|
||||
var icons = {
|
||||
'Manage': [
|
||||
'add',
|
||||
'edit',
|
||||
'delete',
|
||||
'plus',
|
||||
'minus',
|
||||
],
|
||||
'Alerts': [
|
||||
'error',
|
||||
'warning',
|
||||
'info',
|
||||
'success',
|
||||
'help',
|
||||
'help-alt',
|
||||
'ok',
|
||||
],
|
||||
'Navigation': [
|
||||
'arrow-left',
|
||||
'arrow-right',
|
||||
'arrow-top',
|
||||
'arrow-bottom',
|
||||
'arrow-collapsed',
|
||||
'zoom-in',
|
||||
'zoom-out',
|
||||
'show',
|
||||
'hide',
|
||||
'search',
|
||||
'menu-hamburger',
|
||||
'more-horiz',
|
||||
'more-verti'
|
||||
],
|
||||
'Window-Widget': [
|
||||
'minimise',
|
||||
'fullscreen',
|
||||
'close',
|
||||
'maximise',
|
||||
'newtab',
|
||||
'refresh',
|
||||
'reload',
|
||||
],
|
||||
'Reports': [
|
||||
'table',
|
||||
'table-more',
|
||||
'chart-bar',
|
||||
'chart-pie',
|
||||
'chart-line',
|
||||
'chart-line-details',
|
||||
],
|
||||
'Users': [
|
||||
'user',
|
||||
'user-add',
|
||||
'users',
|
||||
'alien',
|
||||
],
|
||||
'Date-picker': [
|
||||
'calendar',
|
||||
],
|
||||
'Annotations': [
|
||||
'annotation',
|
||||
],
|
||||
'E-commerce': [
|
||||
'ecommerce-order',
|
||||
'ecommerce-abandoned-cart',
|
||||
],
|
||||
'Goals': [
|
||||
'goal',
|
||||
],
|
||||
'Insights': [
|
||||
'insights',
|
||||
],
|
||||
'Segments': [
|
||||
'segment',
|
||||
],
|
||||
'Visitors': [
|
||||
'visitor-profile',
|
||||
],
|
||||
'Lock': [
|
||||
'locked',
|
||||
'locked-2',
|
||||
'locked-3',
|
||||
'locked-4',
|
||||
],
|
||||
'Other': [
|
||||
'configure',
|
||||
'document',
|
||||
'email',
|
||||
'export',
|
||||
'feed',
|
||||
'download',
|
||||
'image',
|
||||
'code',
|
||||
'star',
|
||||
'drop',
|
||||
'business',
|
||||
'finance',
|
||||
'folder',
|
||||
'folder-charts',
|
||||
'open-source',
|
||||
'puzzle',
|
||||
'server',
|
||||
'server-alt',
|
||||
'tag-cloud',
|
||||
'play',
|
||||
'sign-in',
|
||||
'sign-out'
|
||||
],
|
||||
};
|
||||
|
||||
var iconsDiv = $('#icons');
|
||||
for(var category in icons) {
|
||||
if (icons.hasOwnProperty(category)) {
|
||||
iconsDiv.append('<h4>' + category + '</h4>');
|
||||
var row = $('<div class="row"></div>');
|
||||
icons[category].forEach(function(icon) {
|
||||
icon = 'icon-' + icon;
|
||||
row.append('<div class="col-sm-4 icon"><span class="' + icon + '"></span> ' + icon + '</div>');
|
||||
});
|
||||
iconsDiv.append(row);
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
2
www/analytics/plugins/Morpheus/templates/empty.twig
Normal file
2
www/analytics/plugins/Morpheus/templates/empty.twig
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
{% block content %}
|
||||
{% endblock %}
|
||||
36
www/analytics/plugins/Morpheus/templates/genericForm.twig
Normal file
36
www/analytics/plugins/Morpheus/templates/genericForm.twig
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{% if form_data.errors %}
|
||||
<div class="alert alert-warning">
|
||||
<strong>{{ 'Installation_PleaseFixTheFollowingErrors'|translate }}:</strong>
|
||||
<ul>
|
||||
{% for data in form_data.errors %}
|
||||
<li>{{ data|raw }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<form {{ form_data.attributes|raw }}>
|
||||
{# display any hidden input field #}
|
||||
{{ form_data.hidden|join|raw }}
|
||||
|
||||
{% for fieldname in element_list %}
|
||||
{% if form_data[fieldname] is defined %}
|
||||
<div class="form-group">
|
||||
{% if form_data[fieldname].type == 'checkbox' %}
|
||||
<label class="checkbox">
|
||||
{{ form_data[fieldname].html|raw }}
|
||||
</label>
|
||||
{% elseif form_data[fieldname].label %}
|
||||
<label>
|
||||
{{ form_data[fieldname].label|raw }}
|
||||
</label>
|
||||
{{ form_data[fieldname].html|raw }}
|
||||
{% elseif form_data[fieldname].type == 'hidden' %}
|
||||
{{ form_data[fieldname].html|raw }}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{{ form_data.submit.html|raw }}
|
||||
</form>
|
||||
15
www/analytics/plugins/Morpheus/templates/javascriptCode.tpl
Normal file
15
www/analytics/plugins/Morpheus/templates/javascriptCode.tpl
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<!-- Piwik -->
|
||||
<script type="text/javascript">
|
||||
var _paq = _paq || [];
|
||||
{$options} _paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
{$setTrackerUrl}
|
||||
{$optionsBeforeTrackerUrl}_paq.push(['setTrackerUrl', u+'piwik.php']);
|
||||
_paq.push(['setSiteId', {$idSite}]);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<noscript><p><img src="{$protocol}{$piwikUrl}/piwik.php?idsite={$idSite}" style="border:0;" alt="" /></p></noscript>
|
||||
<!-- End Piwik Code -->
|
||||
53
www/analytics/plugins/Morpheus/templates/layout.twig
Normal file
53
www/analytics/plugins/Morpheus/templates/layout.twig
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
<!DOCTYPE html>
|
||||
<html id="ng-app" {% if language is defined %}lang="{{ language }}"{% endif %} ng-app="piwikApp">
|
||||
<head>
|
||||
{% block head %}
|
||||
<meta charset="utf-8">
|
||||
<title>
|
||||
{%- block pageTitle -%}
|
||||
{%- if title is defined %}{{ title }} - {% endif %}
|
||||
{%- if categoryTitle is defined %}{{ categoryTitle }} - {% endif %}
|
||||
{%- if not isCustomLogo %}Piwik{% endif %}
|
||||
{%- endblock -%}
|
||||
</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=EDGE,chrome=1"/>
|
||||
<meta name="viewport" content="initial-scale=1.0"/>
|
||||
<meta name="generator" content="Piwik - free/libre analytics platform"/>
|
||||
<meta name="description" content="{% block pageDescription %}{% endblock %}"/>
|
||||
<meta name="apple-itunes-app" content="app-id=737216887" />
|
||||
<meta name="google-play-app" content="app-id=org.piwik.mobile2">
|
||||
{% block meta %}
|
||||
<meta name="robots" content="noindex,nofollow">
|
||||
{% endblock %}
|
||||
|
||||
{% include "@CoreHome/_favicon.twig" %}
|
||||
{% include "_jsGlobalVariables.twig" %}
|
||||
{% include "_jsCssIncludes.twig" %}
|
||||
|
||||
<!--[if IE]>
|
||||
<link rel="stylesheet" type="text/css" href="plugins/Morpheus/stylesheets/ieonly.css"/>
|
||||
<![endif]-->
|
||||
{% endblock %}
|
||||
</head>
|
||||
<!--[if lt IE 9 ]>
|
||||
<body id="{{ bodyId|default('') }}" ng-app="app" class="old-ie {{ bodyClass|default('') }}">
|
||||
<![endif]-->
|
||||
<!--[if (gte IE 9)|!(IE)]><!-->
|
||||
<body id="{{ bodyId|default('') }}" ng-app="app" class="{{ bodyClass|default('') }}">
|
||||
<!--<![endif]-->
|
||||
|
||||
{% block body %}
|
||||
|
||||
{% include "_iframeBuster.twig" %}
|
||||
{% include "@CoreHome/_javaScriptDisabled.twig" %}
|
||||
|
||||
<div id="root">
|
||||
{% block root %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% include "@CoreHome/_adblockDetect.twig" %}
|
||||
</body>
|
||||
</html>
|
||||
24
www/analytics/plugins/Morpheus/templates/macros.twig
Normal file
24
www/analytics/plugins/Morpheus/templates/macros.twig
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{% macro logoHtml(metadata, alt='') %}
|
||||
{% if metadata['logo'] is defined %}
|
||||
{% if metadata['logoWidth'] is defined %}
|
||||
{% set width %}width="{{ metadata['logoWidth'] }}"{% endset %}
|
||||
{% endif %}
|
||||
{% if metadata['logoHeight'] is defined %}
|
||||
{% set height %}height="{{ metadata['logoHeight'] }}"{% endset %}
|
||||
{% endif %}
|
||||
{% if metadata['logoWidth'] is defined %}
|
||||
{% set width %}width="{{ metadata['logoWidth'] }}"{% endset %}
|
||||
{% endif %}
|
||||
{% if alt is not empty %}
|
||||
{% set alt %}title='{{ alt }}' alt='{{ alt }}'{% endset %}
|
||||
{% endif %}
|
||||
<img {{ alt }} {{ width|default('') }} {{ height|default('') }} src='{{ metadata['logo'] }}' />
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
|
||||
{# Deprecated: use form-group and form-help DIVs instead #}
|
||||
{% macro inlineHelp(text) %}
|
||||
<div class="ui-inline-help" >
|
||||
{{ text|raw }}
|
||||
</div>
|
||||
{% endmacro %}
|
||||
36
www/analytics/plugins/Morpheus/templates/maintenance.tpl
Normal file
36
www/analytics/plugins/Morpheus/templates/maintenance.tpl
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="robots" content="noindex,nofollow">
|
||||
<title>Piwik is undergoing maintenance</title>
|
||||
<link rel="shortcut icon" href="%faviconUrl%" />
|
||||
<link rel="stylesheet" type="text/css" href="plugins/Morpheus/stylesheets/simple_structure.css" />
|
||||
</head>
|
||||
<body id="simple">
|
||||
|
||||
<div class="logo">
|
||||
<img title="Piwik" alt="Piwik" src="%logoUrl%" />
|
||||
<br/>
|
||||
<a href='http://piwik.org/'>%piwikTitle%</a>
|
||||
</div>
|
||||
|
||||
<div class="box">
|
||||
|
||||
<div class="header">
|
||||
<h1>Piwik is undergoing maintenance</h1>
|
||||
</div>
|
||||
|
||||
<div class="content">
|
||||
<p>
|
||||
We will be back up and running again soon, so please try again later. Your analytics data will continue to be tracked as normal. Thank you for your patience.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
137
www/analytics/plugins/Morpheus/templates/settingsMacros.twig
Normal file
137
www/analytics/plugins/Morpheus/templates/settingsMacros.twig
Normal file
|
|
@ -0,0 +1,137 @@
|
|||
{% macro singleSetting(setting, index = 0) %}
|
||||
|
||||
{% set settingValue = setting.getValue %}
|
||||
|
||||
<div class="form-group">
|
||||
|
||||
{% if setting.introduction %}
|
||||
<p class="settingIntroduction">{{ setting.introduction }}</p>
|
||||
{% endif %}
|
||||
|
||||
{{ _self.field(setting, index) }}
|
||||
|
||||
</div>
|
||||
|
||||
{% endmacro %}
|
||||
|
||||
{% macro field(setting, index = -1) %}
|
||||
|
||||
{% if index == -1 %}
|
||||
{% set index = setting.getName %}
|
||||
{% endif %}
|
||||
|
||||
{% set settingValue = setting.getValue %}
|
||||
|
||||
{% if setting.uiControlType != 'checkbox' %}
|
||||
<label>{{ setting.title }}</label>
|
||||
{% endif %}
|
||||
|
||||
{% if setting.inlineHelp %}
|
||||
<div class="form-help">
|
||||
{{ setting.inlineHelp }}
|
||||
{% if setting.defaultValue and setting.uiControlType != 'checkbox' and setting.uiControlType != 'radio' %}
|
||||
<br/>
|
||||
{{ 'General_Default'|translate }}:
|
||||
{% if setting.defaultValue is iterable %}
|
||||
{{ setting.defaultValue|join(', ')|truncate(50) }}
|
||||
{% else %}
|
||||
{{ setting.defaultValue|truncate(50) }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if setting.uiControlType == 'select' or setting.uiControlType == 'multiselect' %}
|
||||
<select
|
||||
{% for attr, val in setting.uiControlAttributes %}
|
||||
{{ attr|e('html_attr') }}="{{ val|e('html_attr') }}"
|
||||
{% endfor %}
|
||||
name="{{ setting.getKey|e('html_attr') }}"
|
||||
{% if setting.uiControlType == 'multiselect' %}multiple{% endif %}>
|
||||
|
||||
{% for key, value in setting.availableValues %}
|
||||
<option value='{{ key }}'
|
||||
{% if settingValue is iterable and key in settingValue %}
|
||||
selected='selected'
|
||||
{% elseif settingValue==key %}
|
||||
selected='selected'
|
||||
{% endif %}>
|
||||
{{ value }}
|
||||
</option>
|
||||
{% endfor %}
|
||||
|
||||
</select>
|
||||
{% elseif setting.uiControlType == 'textarea' %}
|
||||
<textarea style="width: 376px; height: 250px;"
|
||||
{% for attr, val in setting.uiControlAttributes %}
|
||||
{{ attr|e('html_attr') }}="{{ val|e('html_attr') }}"
|
||||
{% endfor %}
|
||||
name="{{ setting.getKey|e('html_attr') }}"
|
||||
>
|
||||
{{- settingValue -}}
|
||||
</textarea>
|
||||
{% elseif setting.uiControlType == 'radio' %}
|
||||
|
||||
{% for key, value in setting.availableValues %}
|
||||
<label class="radio">
|
||||
<input
|
||||
id="name-value-{{ index }}"
|
||||
{% for attr, val in setting.uiControlAttributes %}
|
||||
{{ attr|e('html_attr') }}="{{ val|e('html_attr') }}"
|
||||
{% endfor %}
|
||||
{% if settingValue is sameas(key) %}
|
||||
checked="checked"
|
||||
{% endif %}
|
||||
type="radio"
|
||||
value="{{ key|e('html_attr') }}"
|
||||
name="{{ setting.getKey|e('html_attr') }}" />
|
||||
|
||||
{{ value }}
|
||||
|
||||
{% if setting.description %}
|
||||
<span class='form-description'>{{ setting.description }}</span>
|
||||
{% endif %}
|
||||
|
||||
</label>
|
||||
{% endfor %}
|
||||
|
||||
{% elseif setting.uiControlType == 'checkbox' %}
|
||||
|
||||
<label class="checkbox">
|
||||
<input id="name-value-{{ index }}"
|
||||
{% for attr, val in setting.uiControlAttributes %}
|
||||
{{ attr|e('html_attr') }}="{{ val|e('html_attr') }}"
|
||||
{% endfor %}
|
||||
value="1"
|
||||
{% if settingValue %}
|
||||
checked="checked"
|
||||
{% endif %}
|
||||
type="checkbox"
|
||||
name="{{ setting.getKey|e('html_attr') }}">
|
||||
|
||||
{{ setting.title }}
|
||||
|
||||
{% if setting.description %}
|
||||
<span class='form-description'>{{ setting.description }}</span>
|
||||
{% endif %}
|
||||
</label>
|
||||
|
||||
{% else %}
|
||||
|
||||
<input
|
||||
{% for attr, val in setting.uiControlAttributes %}
|
||||
{{ attr|e('html_attr') }}="{{ val|e('html_attr') }}"
|
||||
{% endfor %}
|
||||
class="control_{{ setting.uiControlType|e('html_attr') }}"
|
||||
type="{{ setting.uiControlType|e('html_attr') }}"
|
||||
name="{{ setting.getKey|e('html_attr') }}"
|
||||
value="{{ settingValue|e('html_attr') }}">
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% if setting.uiControlType != 'checkbox' and setting.uiControlType != 'radio' %}
|
||||
<span class='form-description'>{{ setting.description }}</span>
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% endmacro %}
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
</div>
|
||||
|
||||
<div class="footer">
|
||||
<a href="index.php">« Back to Piwik</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="robots" content="noindex,nofollow">
|
||||
<title>{$HTML_TITLE}</title>
|
||||
<link rel="shortcut icon" href="%faviconUrl%" />
|
||||
<link rel="stylesheet" type="text/css" href="plugins/Morpheus/stylesheets/simple_structure.css" />
|
||||
</head>
|
||||
<body id="simple">
|
||||
|
||||
<div class="logo">
|
||||
<img title="Piwik" alt="Piwik" src="%logoUrl%"/>
|
||||
<br/>
|
||||
<a href='http://piwik.org/'>free/libre analytics platform</a>
|
||||
</div>
|
||||
|
||||
<div class="box">
|
||||
|
||||
<div class="header">
|
||||
<h1>An error occurred</h1>
|
||||
</div>
|
||||
|
||||
<div class="content">
|
||||
56
www/analytics/plugins/Morpheus/templates/user.twig
Normal file
56
www/analytics/plugins/Morpheus/templates/user.twig
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
{% extends 'layout.twig' %}
|
||||
|
||||
{% set categoryTitle %}{{ 'CoreAdminHome_Administration'|translate }}{% endset %}
|
||||
|
||||
{% set bodyClass = postEvent('Template.bodyClass', 'admin') %}
|
||||
|
||||
{% block body %}
|
||||
{% if userIsAnonymous %}
|
||||
{% set topMenuModule = 'ScheduledReports' %}
|
||||
{% set topMenuAction = 'index' %}
|
||||
{% else %}
|
||||
{% if currentModule != 'Feedback' %}
|
||||
{% set topMenuModule = 'UsersManager' %}
|
||||
{% set topMenuAction = 'userSettings' %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{{ parent() }}
|
||||
{% endblock %}
|
||||
|
||||
{% block root %}
|
||||
{% include "@CoreHome/_topScreen.twig" %}
|
||||
|
||||
{% import 'ajaxMacros.twig' as ajax %}
|
||||
{{ ajax.requestErrorDiv(emailSuperUser|default(''), arePiwikProAdsEnabled) }}
|
||||
{{ postEvent("Template.beforeContent", "user", currentModule) }}
|
||||
|
||||
<div class="page">
|
||||
|
||||
{% if showMenu is not defined or showMenu %}
|
||||
{% import '@CoreHome/_menu.twig' as menu %}
|
||||
{{ menu.menu(userMenu, false, 'Menu--admin') }}
|
||||
{% endif %}
|
||||
|
||||
<div class="pageWrap">
|
||||
|
||||
<div class="top_controls">
|
||||
{% block topcontrols %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
|
||||
<div id="content" class="admin user">
|
||||
|
||||
{% include "@CoreHome/_notifications.twig" %}
|
||||
|
||||
<div class="ui-confirm" id="alert">
|
||||
<h2></h2>
|
||||
<input role="no" type="button" value="{{ 'General_Ok'|translate }}"/>
|
||||
</div>
|
||||
|
||||
{% block content %}
|
||||
{% endblock %}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
Loading…
Add table
Add a link
Reference in a new issue