PDF rausgenommen

This commit is contained in:
aschwarz
2023-01-23 11:03:31 +01:00
parent 82d562a322
commit a6523903eb
28078 changed files with 4247552 additions and 2 deletions

View File

@ -0,0 +1,4 @@
<h1>License for {{ pluginName|raw }}</h1>
{{ license|raw }}

View File

@ -0,0 +1,304 @@
{% macro tablePluginUpdates(pluginsHavingUpdate, updateNonce, isMultiServerEnvironment) %}
{% import '@Marketplace/macros.twig' as marketplaceMacro %}
<div>
<a id="update-selected-plugins" href="javascript:" class="btn">{{ 'CorePluginsAdmin_UpdateSelected'|translate }}</a>
</div>
<table piwik-content-table>
<thead>
<tr>
<th>
<span class="checkbox-container">
<input type="checkbox" id="select-plugin-all" />
<label for="select-plugin-all"></label>
</span>
</th>
<th>{{ 'General_Plugin'|translate }}</th>
<th class="num">{{ 'CorePluginsAdmin_Version'|translate }}</th>
<th>{{ 'General_Description'|translate }}</th>
<th class="status">{{ 'CorePluginsAdmin_Status'|translate }}</th>
<th class="action-links">{{ 'General_Action'|translate }}</th>
</tr>
</thead>
<tbody id="plugins">
{% for name,plugin in pluginsHavingUpdate %}
<tr {% if plugin.isActivated|default(false) %}class="active-plugin"{% else %}class="inactive-plugin"{% endif %}>
<td class="select-cell">
<span class="checkbox-container">
<input type="checkbox" id="select-plugin-{{ plugin.name|e('html_attr') }}" {% if plugin.isDownloadable is defined and not plugin.isDownloadable %}disabled="disabled"{% endif %} />
<label for="select-plugin-{{ plugin.name|e('html_attr') }}"></label>
</span>
</td>
<td class="name">
<a href="javascript:void(0);" piwik-plugin-name="{{ plugin.name|e('html_attr') }}" class="plugin-details">
{{ plugin.name }}
</a>
</td>
<td class="vers">
{% if plugin.changelog is defined and plugin.changelog and plugin.changelog.url is defined and plugin.changelog.url %}
<a href="{{ plugin.changelog.url|e('html_attr') }}" title="{{ 'CorePluginsAdmin_Changelog'|translate }}"
target="_blank" rel="noreferrer noopener"
>{{ plugin.currentVersion }} => {{ plugin.latestVersion }}</a>
{% else %}
{{ plugin.currentVersion }} => {{ plugin.latestVersion }}
{% endif %}
</td>
<td class="desc">
{{ plugin.description }}
{{ marketplaceMacro.missingRequirementsPleaseUpdateNotice(plugin) }}
</td>
<td class="status">
{% if plugin.isActivated %}
{{ 'CorePluginsAdmin_Active'|translate }}
{% else %}
{{ 'CorePluginsAdmin_Inactive'|translate }}
{% endif %}
</td>
<td class="togl action-links">
{% if plugin.isDownloadable is defined and not plugin.isDownloadable %}
<span title="{{ 'CorePluginsAdmin_PluginNotDownloadable'|translate|e('html_attr') }} {% if plugin.isPaid %}{{ 'CorePluginsAdmin_PluginNotDownloadablePaidReason'|translate|e('html_attr') }}{% endif %}"
>{{ 'CorePluginsAdmin_NotDownloadable'|translate|e('html_attr') }}</span>
{% elseif isMultiServerEnvironment %}
<a onclick="$(this).css('display', 'none')" href="{{ linkTo({'action':'download', 'module': 'Marketplace', 'pluginName': plugin.name, 'nonce': (plugin.name|nonce)}) }}">{{ 'General_Download'|translate }}</a>
{% elseif 0 == plugin.missingRequirements|length %}
<a href="{{ linkTo({'action':'updatePlugin', 'module': 'Marketplace', 'pluginName': plugin.name, 'nonce': updateNonce}) }}">{{ 'CoreUpdater_UpdateTitle'|translate }}</a>
{% else %}
-
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
<script>
$(function () {
$('#update-selected-plugins').on('click', function () {
var pluginsToUpdate = [];
$('tbody#plugins td.select-cell input').each(function () {
if (!this.checked) {
return;
}
var pluginName = $(this).closest('tr').find('.name .plugin-details').attr('piwik-plugin-name');
pluginsToUpdate.push(pluginName);
});
var url = '{{ linkTo({'module':'Marketplace','action':'updatePlugin','nonce':updateNonce})|raw }}&pluginName=' + encodeURIComponent(pluginsToUpdate.join(','));
window.location.href = url;
$(this).prop('disabled', true);
});
$('#select-plugin-all').on('change', function () {
var self = this;
$('tbody#plugins td.select-cell input[type=checkbox]').each(function () {
if ($(this).prop('disabled')) {
return;
}
$(this).prop('checked', self.checked);
});
});
});
</script>
{% endmacro %}
{% macro pluginActivateDeactivateAction(name, isActivated, missingRequirements, deactivateNonce, activateNonce) -%}
{%- if isActivated -%}
<a href='index.php?module=CorePluginsAdmin&action=deactivate&pluginName={{ name }}&nonce={{ deactivateNonce }}&redirectTo=referrer'>{{ 'CorePluginsAdmin_Deactivate'|translate }}</a>
{%- elseif missingRequirements %}
-
{% else -%}
<a href='index.php?module=CorePluginsAdmin&action=activate&pluginName={{ name }}&nonce={{ activateNonce }}&redirectTo=referrer'>{{ 'CorePluginsAdmin_Activate'|translate }}</a>
{%- endif -%}
{%- endmacro %}
{% macro pluginsFilter() %}
<p class="row pluginsFilter" piwik-plugin-filter>
<span class="origin">
<strong>{{ 'CorePluginsAdmin_Origin'|translate }}</strong>
<a data-filter-origin="all" href="#" class="active">{{ 'General_All'|translate }}<span class="counter"></span></a> |
<a data-filter-origin="core" href="#">{{ 'CorePluginsAdmin_OriginCore'|translate }}<span class="counter"></span></a> |
<a data-filter-origin="official" href="#">{{ 'CorePluginsAdmin_OriginOfficial'|translate }}<span class="counter"></span></a> |
<a data-filter-origin="thirdparty" href="#">{{ 'CorePluginsAdmin_OriginThirdParty'|translate }}<span class="counter"></span></a>
</span>
<span class="status">
<strong>{{ 'CorePluginsAdmin_Status'|translate }}</strong>
<a data-filter-status="all" href="#" class="active">{{ 'General_All'|translate }}<span class="counter"></span></a> |
<a data-filter-status="active" href="#">{{ 'CorePluginsAdmin_Active'|translate }}<span class="counter"></span></a> |
<a data-filter-status="inactive" href="#">{{ 'CorePluginsAdmin_Inactive'|translate }}<span class="counter"></span></a>
</span>
</p>
{% endmacro %}
{% macro tablePlugins(pluginsInfo, pluginNamesHavingSettings, activateNonce, deactivateNonce, uninstallNonce, isTheme, marketplacePluginNames, displayAdminLinks) %}
<div id="confirmUninstallPlugin" class="ui-confirm">
<h2 id="uninstallPluginConfirm">{{ 'CorePluginsAdmin_UninstallConfirm'|translate }}</h2>
<input role="yes" type="button" value="{{ 'General_Yes'|translate }}"/>
<input role="no" type="button" value="{{ 'General_No'|translate }}"/>
</div>
<table piwik-content-table>
<thead>
<tr>
<th>{% if isTheme %}{{ 'CorePluginsAdmin_Theme'|translate }}{% else %}{{ 'General_Plugin'|translate }}{% endif %}</th>
<th>{{ 'General_Description'|translate }}</th>
<th class="status">{{ 'CorePluginsAdmin_Status'|translate }}</th>
{% if (displayAdminLinks) %}
<th class="action-links">{{ 'General_Action'|translate }}</th>
{% endif %}
</tr>
</thead>
<tbody id="plugins">
{% for name,plugin in pluginsInfo %}
{% set isDefaultTheme = isTheme and name == 'Morpheus' %}
{% if (plugin.alwaysActivated is defined and not plugin.alwaysActivated) or isTheme %}
<tr {% if plugin.activated %}class="active-plugin"{% else %}class="inactive-plugin"{% endif %} data-filter-status="{% if plugin.activated %}active{% else %}inactive{% endif %}" data-filter-origin="{% if plugin.isCorePlugin %}core{% elseif plugin.isOfficialPlugin %}official{% else %}thirdparty{% endif %}">
<td class="name">
<a name="{{ name|e('html_attr') }}"></a>
{% if not plugin.isCorePlugin and name in marketplacePluginNames -%}
<a href="javascript:void(0);"
piwik-plugin-name="{{ name|e('html_attr') }}"
>{{ name }}</a>
{%- else %}
{{ name }}
{% endif %}
<span class="plugin-version" {% if plugin.isCorePlugin %}title="{{ 'CorePluginsAdmin_CorePluginTooltip'|translate }}"{% endif %}>({% if plugin.isCorePlugin %}{{ 'CorePluginsAdmin_OriginCore'|translate }}{% else %}v{{ plugin.info.version }}{% endif %})</span>
{% if name in pluginNamesHavingSettings %}
<br /><br />
<a href="{{ linkTo({'module':'CoreAdminHome', 'action': 'generalSettings'}) }}#{{ name|e('html_attr') }}" class="settingsLink">{{ 'General_Settings'|translate }}</a>
{% endif %}
</td>
<td class="desc">
<div class="plugin-desc-missingrequirements">
{% if plugin.missingRequirements is defined and plugin.missingRequirements %}
{{ plugin.missingRequirements }}
<br />
{% endif %}
</div>
<div class="plugin-desc-text">
{{ plugin.info.description|nl2br }}
{% if plugin.info.homepage|default is not empty and plugin.info.homepage not in [
'http://piwik.org', 'http://www.piwik.org', 'http://piwik.org/', 'http://www.piwik.org/',
'https://piwik.org', 'https://www.piwik.org', 'https://piwik.org/', 'https://www.piwik.org/',
'http://matomo.org', 'http://www.matomo.org', 'http://matomo.org/', 'http://www.matomo.org/',
'https://matomo.org', 'https://www.matomo.org', 'https://matomo.org/', 'https://www.matomo.org/'
] %}
<span class="plugin-homepage">
<a target="_blank" rel="noreferrer noopener" href="{{ plugin.info.homepage|e('html_attr') }}">({{ 'CorePluginsAdmin_PluginHomepage'|translate|replace({' ': '&nbsp;'})|raw }})</a>
</span>
{% endif %}
{% if plugin.info.donate is defined and plugin.info.donate|length %}
<div class="plugin-donation">
{{ 'CorePluginsAdmin_LikeThisPlugin'|translate }} <a href="javascript:;" class="plugin-donation-link" data-overlay-id="overlay-{{ name|escape('html_attr') }}">{{ 'CorePluginsAdmin_ConsiderDonating'|translate }}</a>
<div id="overlay-{{ name|escape('html_attr') }}" class="donation-overlay ui-confirm" title="{{ 'CorePluginsAdmin_LikeThisPlugin'|translate }}">
<p>{{ 'CorePluginsAdmin_CommunityContributedPlugin'|translate }}</p>
<p>{{ 'CorePluginsAdmin_ConsiderDonatingCreatorOf'|translate("<b>" ~ name ~ "</b>")|raw }}</p>
<div class="donation-links">
{% if plugin.info.donate.paypal is defined and plugin.info.donate.paypal %}
<a class="donation-link paypal" target="_blank" rel="noreferrer noopener" href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&item_name=Matomo%20Plugin%20{{ name|escape('url') }}&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted&business={{ plugin.info.donate.paypal|escape('url') }}"><img src="plugins/CorePluginsAdmin/images/paypal_donate.png" height="30"/></a>
{% endif %}
{% if plugin.info.donate.flattr is defined and plugin.info.donate.flattr %}
<a class="donation-link flattr" target="_blank" rel="noreferrer noopener" href="{{ plugin.info.donate.flattr }}"><img class="alignnone" title="Flattr" alt="" src="plugins/CorePluginsAdmin/images/flattr.png" height="29" /></a>
{% endif %}
{% if plugin.info.donate.bitcoin is defined and plugin.info.donate.bitcoin %}
<div class="donation-link bitcoin">
<span>Donate Bitcoins to:</span>
<a href="bitcoin:{{ plugin.info.donate.bitcoin|escape('url') }}">{{ plugin.info.donate.bitcoin }}</a>
</div>
{% endif %}
</div>
<input role="no" type="button" value="{{ 'General_Close'|translate }}"/>
</div>
</div>
{% endif %}
</div>
{% if plugin.info.license is defined %}
<div class="plugin-license">
{% if plugin.info.license_file is defined %}<a title="{{ 'CorePluginsAdmin_LicenseHomepage'|translate }}" rel="noreferrer noopener" target="_blank" href="index.php?module=CorePluginsAdmin&action=showLicense&pluginName={{ name }}">{% endif %}{{ plugin.info.license }}{% if plugin.info.license_file is defined %}</a>{% endif %}
</div>
{% endif %}
{% if plugin.info.authors is defined %}
<div class="plugin-author">
By
{% if plugin.info.authors is defined -%}
{% spaceless %}
{% for author in plugin.info.authors if author.name %}
{% if author.homepage is defined %}
<a title="{{ 'CorePluginsAdmin_AuthorHomepage'|translate }}" href="{{ author.homepage }}" rel="noreferrer noopener" target="_blank">{{ author.name }}</a>
{% else %}
{{ author.name }}
{% endif %}
{% if loop.index < plugin.info.authors|length %}
,
{% endif %}
{% endfor %}
{% endspaceless %}
{%- endif %}.
</div>
{% endif %}
</td>
<td class="status" {% if isDefaultTheme %}style="border-left-width:0px;"{% endif %}>
{% if not isDefaultTheme -%}
{% if plugin.activated %}
{{ 'CorePluginsAdmin_Active'|translate }}
{% else %}
{{ 'CorePluginsAdmin_Inactive'|translate }}
{% if plugin.uninstallable and displayAdminLinks %} <br/> - <a data-plugin-name="{{ name|escape('html_attr') }}" class="uninstall" href='index.php?module=CorePluginsAdmin&action=uninstall&pluginName={{ name }}&nonce={{ uninstallNonce }}'>{{ 'CorePluginsAdmin_ActionUninstall'|translate }}</a>{% endif %}
{% endif %}
{%- endif %}
</td>
{% if displayAdminLinks %}
<td class="togl action-links" {% if isDefaultTheme %}style="border-left-width:0px;"{% endif %}>
{% if not isDefaultTheme -%}
{% if plugin.invalid is defined or plugin.alwaysActivated %}
-
{% else %}
{{ _self.pluginActivateDeactivateAction(name, plugin.activated, plugin.missingRequirements, deactivateNonce, activateNonce) }}
{% endif %}
{%- endif %}
</td>
{% endif %}
</tr>
{% endif %}
{% endfor %}
</tbody>
</table>
<div class="tableActionBar">
{% if isTheme %}
<a href="{{ linkTo({'action':'browseThemes', 'sort': ''}) }}"><span class="icon-add"></span> {{ 'CorePluginsAdmin_InstallNewThemes'|translate }}</a>
{% else %}
<a href="{{ linkTo({'action':'browsePlugins', 'sort': ''}) }}"><span class="icon-add"></span> {{ 'CorePluginsAdmin_InstallNewPlugins'|translate }}</a>
{% endif %}
</div>
<div class="footer-message">
{% set pluginsAlwaysActivated %}
{% for name,plugin in pluginsInfo %}
{% if plugin.alwaysActivated is defined and plugin.alwaysActivated %}
{{ name }}{% if not loop.last %}, {% endif %}
{% endif %}
{% endfor %}
{% endset %}
{{ 'CorePluginsAdmin_AlwaysActivatedPluginsList'|translate(pluginsAlwaysActivated) }}
</div>
{% endmacro %}

View File

@ -0,0 +1,56 @@
{% extends 'admin.twig' %}
{% import '@CorePluginsAdmin/macros.twig' as plugins %}
{% set title %}{{ 'CorePluginsAdmin_PluginsManagement'|translate }}{% endset %}
{% block content %}
{% include '@Marketplace/uploadPluginDialog.twig' %}
<div piwik-content-intro>
<h2 piwik-enriched-headline>
{{ title|e('html_attr') }}
</h2>
<p>{{ 'CorePluginsAdmin_PluginsExtendPiwik'|translate }}
{{ 'CorePluginsAdmin_OncePluginIsInstalledYouMayActivateHere'|translate }}
{% if isMarketplaceEnabled %}
{{ 'CorePluginsAdmin_TeaserExtendPiwikByPlugin'|translate(
'<a href="' ~ linkTo({'action':'browsePlugins', 'sort': null, 'activated': null})|e('html_attr') ~ '">',
'</a>',
'<a href="#" class="uploadPlugin">',
'</a>'
)|raw }}
{% endif %}
{% if not isPluginsAdminEnabled %}
<br/>{{ 'CorePluginsAdmin_DoMoreContactPiwikAdmins'|translate }}
{% endif %}
{{ 'CorePluginsAdmin_ChangeLookByManageThemes'|translate('<a href="' ~ linkTo({'action': 'themes', 'activated': null})|e('html_attr') ~'">', '</a>')|raw }}
</p>
</div>
{% if pluginsHavingUpdate|length %}
<div piwik-content-block content-title="{{ pluginsHavingUpdate|length }} Update(s) available">
<p>{{ 'CorePluginsAdmin_InfoPluginUpdateIsRecommended'|translate }}</p>
{{ plugins.tablePluginUpdates(pluginsHavingUpdate, updateNonce, isMultiServerEnvironment) }}
</div>
{% endif %}
<div piwik-content-block content-title="{{ 'CorePluginsAdmin_InstalledPlugins'|translate|e('html_attr') }}"
class="pluginsManagement"
piwik-plugin-management>
{{ plugins.pluginsFilter() }}
{{ plugins.tablePlugins(pluginsInfo, pluginNamesHavingSettings, activateNonce, deactivateNonce, uninstallNonce, false, marketplacePluginNames, isPluginsAdminEnabled) }}
</div>
{% endblock %}

View File

@ -0,0 +1,149 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="robots" content="noindex,nofollow">
<meta name="google" content="notranslate">
<style type="text/css">
html, body {
background-color: white;
}
td {
border: 1px solid #ccc;
border-collapse: collapse;
padding: 5px;
}
table {
border-collapse: collapse;
border: 0px;
}
a {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
</style>
<title>A fatal error occurred</title>
</head>
<body>
<h1>A fatal error occurred</h1>
<div style="width: 640px">
{% if isAllowedToTroubleshootAsSuperUser or not isAnonymousUser %}
<p>
The following error just broke Matomo{% if showVersion %} (v{{ piwikVersion }}){% endif %}:
</p>
<pre>{{ lastError.message }}
{% if lastError.backtrace is defined %}{{ lastError.backtrace }}{% else %}in {{ lastError.file }} line {{ lastError.line }}{% endif %}
</pre>
<hr>
<h3>Troubleshooting</h3>
Follow these steps to solve the issue or report it to the team:
<ul>
<li>
If you have just updated Matomo to the latest version, please try to restart your web server.
This will clear the PHP opcache which may solve the problem.
</li>
<li>
If this is the first time you see this error, please try refresh the page.
</li>
<li>
<strong>If this error continues to happen</strong>, we appreciate if you send the
<a href="mailto:hello@matomo.org?subject={{ 'Fatal error in Matomo ' ~ piwikVersion|e('url') }}&body={{ lastError.message|e('url') }}%20in%20{{ lastError.file|e('url') }}%20{{ lastError.line|e('url') }}%20using%20PHP%20{{ constant('PHP_VERSION') }}">error report</a>
to the Matomo team.
</li>
</ul>
<hr/>
{% endif %}
{% if isAllowedToTroubleshootAsSuperUser or isSuperUser %}
<h3>Further troubleshooting</h3>
<p>
If this error continues to happen, you may be able to fix this issue by disabling one or more of
the Third-Party plugins. If you don't know which plugin is causing this error, we recommend to first disable any plugin not created by "Matomo" and not created by "InnoCraft".
You can enable plugin again afterwards in the
<a rel="noreferrer noopener" target="_blank" href="index.php?module=CorePluginsAdmin&action=plugins">Plugins</a>
or <a target="_blank" href="index.php?module=CorePluginsAdmin&action=themes">Themes</a> page under
settings at any time.
{% if pluginCausesIssue %}
Based on the error message, the issue is probably caused by the plugin <strong>{{ pluginCausesIssue }}</strong>.
{% endif %}
</p>
<table>
{% for pluginName, plugin in plugins if plugin.uninstallable and plugin.activated %}
<tr {% if loop.index is divisibleby(2) %}style="background-color: #eeeeee"{% endif %}>
<td style="min-width:200px;">
{{ pluginName }}
</td>
<td>
{{ plugin.info.version|default('') }}
</td>
<td>
<a href="index.php?module=CorePluginsAdmin&action=deactivate&pluginName={{ pluginName }}&nonce={{ deactivateNonce }}{% if deactivateIAmSuperUserSalt is not empty %}&i_am_super_user={{ deactivateIAmSuperUserSalt }}{% endif %}"
target="_blank">deactivate</a>
</td>
</tr>
{% endfor %}
</table>
{% set uninstalledPluginsFound = false %}
{% for pluginName, plugin in plugins if plugin.uninstallable and not plugin.activated %}
{% set uninstalledPluginsFound = true %}
{% endfor %}
{% if uninstalledPluginsFound %}
<p>
If this error still occurs after disabling all plugins, you might want to consider uninstalling some
plugins. Keep in mind: The plugin will be completely removed from your platform.
</p>
<table>
{% for pluginName, plugin in plugins if plugin.uninstallable and not plugin.activated %}
<tr {% if loop.index is divisibleby(2) %}style="background-color: #eeeeee"{% endif %}>
<td style="min-width:200px;">
{{ pluginName }}
</td>
<td>
<a href="index.php?module=CorePluginsAdmin&action=uninstall&pluginName={{ pluginName }}&nonce={{ uninstallNonce }}"
target="_blank" onclick="return confirm('{{ 'CorePluginsAdmin_UninstallConfirm'|translate(pluginName)|e('js') }}')">uninstall</a>
</td>
</tr>
{% endfor %}
</table>
{% endif %}
{% elseif isAnonymousUser %}
<p>Please contact the system administrator, or <a href="?module={{ loginModule }}">login to Matomo</a> to learn more.</p>
{% else %}
<p>
If this error continues to happen you may want to send an
<a href="mailto:{{ emailSuperUser }}?subject={{ 'Fatal error in Matomo ' ~ piwikVersion|e('url') }}&body={{ lastError.message|e('url') }}%20in%20{{ lastError.file|e('url') }}%20{{ lastError.line|e('url') }}%20using%20PHP%20{{ constant('PHP_VERSION') }}">error report</a>
to your system administrator.
</p>
{% endif %}
{% if not isAllowedToTroubleshootAsSuperUser and not isSuperUser %}
<p>If you are Super User, but cannot login because of this error, you can still troubleshoot further. Follow these steps:
<br/>1) open the config/config.ini.php file and look for the <code>salt</code> value under <code>[General]</code>.
<br/>2) edit this current URL you are viewing and add the following text (replacing <code>salt_value_from_config</code> by the <code>salt</code> value from the config file):
<br/><br/><code>index.php?i_am_super_user=salt_value_from_config&....</code>
</p>
{% endif %}
</div>
</body>
</html>

View File

@ -0,0 +1,73 @@
{% extends 'dashboard.twig' %}
{% block topcontrols %}
{% endblock %}
{% block content %}
<div class="activateTagManager">
<div class="row">
<div class="col s12" style="text-align: center;">
<h2>{{ 'CorePluginsAdmin_TagManagerNowAvailableTitle'|translate }}</h2>
<p>{{ 'CorePluginsAdmin_TagManagerNowAvailableSubtitle'|translate }}</p>
</div>
</div>
{% set actionBlock %}
<div class="row">
<div class="col s12">
<div style="text-align: center;">
{% if isSuperUser %}
<a href="{{ linkTo({'module': 'CorePluginsAdmin', 'action': 'activate', 'nonce': nonce, 'pluginName': 'TagManager', 'redirectTo': 'tagmanager'}) }}"
class="btn activateTagManagerPlugin"><span class="icon-rocket"></span> {{ 'CorePluginsAdmin_ActivateTagManagerNow'|translate }} <span class="icon-rocket"></span></a>
{% else %}
<a href="mailto:{{ superUserEmails|e('url') }}?subject={{ 'CorePluginsAdmin_TagManagerNowAvailableTitle'|translate|e('url') }}&body={{ 'CorePluginsAdmin_TagManagerTeaserEmailSuperUserBody'|translate("\n\n", "\n\n", piwikUrl, "\n\n")|e('url') }}"
class="btn activateTagManagerPlugin"><span class="icon-rocket"></span> {{ 'CorePluginsAdmin_TagManagerEmailSuperUserToActivate'|translate }} <span class="icon-rocket"></span></a>
{% endif %}
<a href="{{ linkTo({'module': 'CorePluginsAdmin', 'action': 'disableActivateTagManagerPage'}) }}"
class="btn dontShowAgainBtn"><span class="icon-hide"></span>
{% if isSuperUser %}{{ 'CorePluginsAdmin_TagManagerTeaserHideSuperUser'|translate }}{% else %}{{ 'CorePluginsAdmin_TagManagerTeaserHideNonSuperUser'|translate }}{% endif %}
</a>
</div>
</div>
</div>
{% endset %}
{{ actionBlock|raw }}
<div class="row">
<div class="col {% if isSuperUser %}l4{% else %}l6{% endif %} m12 s12">
<div piwik-content-block content-title="{{ 'CorePluginsAdmin_WhatIsTagManager'|translate }}">
<p>
{{ 'CorePluginsAdmin_WhatIsTagManagerDetails1'|translate }}<br /><br />
{{ 'CorePluginsAdmin_WhatIsTagManagerDetails2'|translate }}<br /><br />
<a href="https://matomo.org/docs/tag-manager" rel="noreferrer noopener">{{ 'CorePluginsAdmin_TagManagerLearnMoreInUserGuide'|translate }}</a>
</p>
</div>
</div>
<div class="col {% if isSuperUser %}l4{% else %}l6{% endif %} m12 s12">
<div piwik-content-block content-title="{{ 'CorePluginsAdmin_WhyUsingATagManager'|translate }}">
<p>
{{ 'CorePluginsAdmin_WhyUsingATagManagerDetails1'|translate }}
<br /><br />
{{ 'CorePluginsAdmin_WhyUsingATagManagerDetails2'|translate }}
<br /><br />
{{ 'CorePluginsAdmin_WhyUsingATagManagerDetails3'|translate }}
<br /><br /><br />
<a href="https://matomo.org/docs/tag-manager" rel="noreferrer noopener">{{ 'CorePluginsAdmin_TagManagerLearnMoreInUserGuide'|translate }}</a>
</p>
</div>
</div>
{% if isSuperUser %}
<div class="col l4 m12 s12">
<div piwik-content-block content-title="{{ 'CorePluginsAdmin_AreThereAnyRisks'|translate }}">
{{ 'CorePluginsAdmin_AreThereAnyRisksDetails1'|translate('<a rel="noreferrer noopener" href="https://en.wikipedia.org/wiki/Cross-site_scripting">', '</a>')|raw }}
<br /><br />
{{ 'CorePluginsAdmin_AreThereAnyRisksDetails2'|translate }}
<br /><br /><br />
<a href="https://matomo.org/docs/tag-manager/#website-security" rel="noreferrer noopener">{{ 'CorePluginsAdmin_TagManagerLearnMoreInUserGuide'|translate }}</a>
</div>
</div>
{% endif %}
</div>
{{ actionBlock|raw }}
</div>
{% endblock %}

View File

@ -0,0 +1,41 @@
{% extends 'admin.twig' %}
{% import '@CorePluginsAdmin/macros.twig' as plugins %}
{% set title %}{{ 'CorePluginsAdmin_ThemesManagement'|translate }}{% endset %}
{% block content %}
<div piwik-content-intro>
<h2 piwik-enriched-headline>
{{ title|e('html_attr') }}
</h2>
<p>
{{ 'CorePluginsAdmin_ThemesDescription'|translate }}
{% if isMarketplaceEnabled %}
{{ 'CorePluginsAdmin_TeaserExtendPiwikByTheme'|translate('<a href="' ~ linkTo({'action':'browseThemes', 'sort': ''}) ~ '">', '</a>')|raw }}
{% endif %}
{% if otherUsersCount > 0 %}
<br/> {{ 'CorePluginsAdmin_InfoThemeIsUsedByOtherUsersAsWell'|translate(otherUsersCount, themeEnabled) }}
{% endif %}
{% if not isPluginsAdminEnabled %}
<br/>{{ 'CorePluginsAdmin_DoMoreContactPiwikAdmins'|translate }}
{% endif %}
</p>
</div>
<div piwik-content-block content-title="{{ 'CorePluginsAdmin_InstalledThemes'|translate|e('html_attr') }}"
piwik-plugin-management>
<p>
</p>
{{ plugins.pluginsFilter() }}
{{ plugins.tablePlugins(pluginsInfo, pluginNamesHavingSettings, activateNonce, deactivateNonce, uninstallNonce, true, marketplacePluginNames, isPluginsAdminEnabled ) }}
</div>
{% endblock %}

View File

@ -0,0 +1,44 @@
{% extends 'admin.twig' %}
{% block content %}
<div style="max-width:980px;">
<div>
<h2>{{ 'Marketplace_InstallingPlugin'|translate(plugin.name) }}</h2>
{% if plugin.isTheme %}
<p>{{ 'Marketplace_StepUnzippingTheme'|translate }}</p>
<p>{{ 'Marketplace_StepThemeSuccessfullyInstalled'|translate(plugin.name, plugin.version) }}</p>
<p>
{% if not plugin.isActivated %}
<strong><a class="btn" href="{{ linkTo({'action': 'activate', 'module': 'CorePluginsAdmin', 'pluginName': plugin.name, 'nonce': nonce}) }}">{{ 'Marketplace_ActionActivateTheme'|translate }}</a></strong>
|
{% endif %}
<a href="{{ linkTo({'module': 'Marketplace', 'action': 'overview'}) }}">{{ 'Marketplace_BackToMarketplace'|translate }}</a>
</p>
{% else %}
<p>{{ 'Marketplace_StepUnzippingPlugin'|translate }}</p>
<p>{{ 'Marketplace_StepPluginSuccessfullyInstalled'|translate(plugin.name, plugin.version) }}</p>
<p>
{% if not plugin.isActivated %}
<strong><a class="btn" href="{{ linkTo({'action': 'activate', 'module': 'CorePluginsAdmin', 'pluginName': plugin.name, 'nonce': nonce}) }}">{{ 'Marketplace_ActionActivatePlugin'|translate }}</a></strong>
|
{% endif %}
<a href="{{ linkTo({'module': 'Marketplace', 'action': 'overview'}) }}">{{ 'Marketplace_BackToMarketplace'|translate }}</a>
</p>
{% endif %}
</div>
</div>
{% endblock %}