Skip to content

Commit

Permalink
See the branch 2.x-twig for list of commits on twig... Kuddos @halfdan
Browse files Browse the repository at this point in the history
…for your work!

Here are some updates:
 * Removing |raw from the codebase.
 * Disabling autoescape by default (in Twig_Environment constructor: 'autoescape' => false )
 * Adding |e('html') where html entities are needed
 * Fixing parse error in goals
  • Loading branch information
mattab committed Jun 24, 2013
1 parent 0b83450 commit c263308
Show file tree
Hide file tree
Showing 80 changed files with 237 additions and 235 deletions.
1 change: 1 addition & 0 deletions core/Twig.php
Expand Up @@ -40,6 +40,7 @@ public function __construct($theme = self::DEFAULT_THEME)
// Create new Twig Environment and set cache dir
$this->twig = new Twig_Environment($chainLoader,
array(
'autoescape' => false
//'cache' => PIWIK_DOCUMENT_ROOT . '/tmp/templates_c',
)
);
Expand Down
6 changes: 3 additions & 3 deletions plugins/API/templates/listAllAPI.twig
Expand Up @@ -18,17 +18,17 @@
{% endif %}

<p>
<b>{{ 'API_MoreInformation'|translate("<a target='_blank' href='?module=Proxy&action=redirect&url=http://piwik.org/docs/analytics-api'>","</a>","<a target='_blank' href='?module=Proxy&action=redirect&url=http://piwik.org/docs/analytics-api/reference'>","</a>")|raw }}</b>
<b>{{ 'API_MoreInformation'|translate("<a target='_blank' href='?module=Proxy&action=redirect&url=http://piwik.org/docs/analytics-api'>","</a>","<a target='_blank' href='?module=Proxy&action=redirect&url=http://piwik.org/docs/analytics-api/reference'>","</a>") }}</b>
</p>

<h2>{{ 'API_UserAuthentication'|translate }}</h2>

<p>
{{ 'API_UsingTokenAuth'|translate('<b>','</b>',"")|raw }}<br/>
{{ 'API_UsingTokenAuth'|translate('<b>','</b>',"") }}<br/>
<span id='token_auth'>&amp;token_auth=<b>{{ token_auth }}</b></span><br/>
{{ 'API_KeepTokenSecret'|translate('<b>','</b>') }}
<!-- {'API_LoadedAPIs'|translate:$countLoadedAPI} -->
{{ list_api_methods_with_links|raw }}
{{ list_api_methods_with_links }}
<br/>
</div>
{% endblock %}
8 changes: 4 additions & 4 deletions plugins/Actions/templates/indexSiteSearch.twig
@@ -1,17 +1,17 @@
<div id='leftcolumn'>
<h2>{{ 'Actions_WidgetSearchKeywords'|translate }}</h2>
{{ keywords|raw }}
{{ keywords }}

<h2>{{ 'Actions_WidgetSearchNoResultKeywords'|translate }}</h2>
{{ noResultKeywords|raw }}
{{ noResultKeywords }}

{% if categories is defined %}
<h2>{{ 'Actions_WidgetSearchCategories'|translate }}</h2>
{{ categories|raw }}
{{ categories }}
{% endif %}
</div>

<div id='rightcolumn'>
<h2>{{ 'Actions_WidgetPageUrlsFollowingSearch'|translate }}</h2>
{{ pagesUrlsFollowingSiteSearch|raw }}
{{ pagesUrlsFollowingSiteSearch }}
</div>
16 changes: 8 additions & 8 deletions plugins/CoreAdminHome/templates/generalSettings.twig
Expand Up @@ -24,14 +24,14 @@
<label>
<input type="radio" value="0" name="enableBrowserTriggerArchiving"{% if enableBrowserTriggerArchiving==0 %} checked="checked"{% endif %} />
{{ 'General_No'|translate }} <br/>
<span class="form-description">{{ 'General_ArchivingTriggerDescription'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/docs/setup-auto-archiving/' target='_blank'>","</a>")|raw }}</span>
<span class="form-description">{{ 'General_ArchivingTriggerDescription'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/docs/setup-auto-archiving/' target='_blank'>","</a>") }}</span>
</label>
</fieldset>
<td>
{% set browserArchivingHelp %}
{{ 'General_ArchivingInlineHelp'|translate }}
<br/>
{{ 'General_SeeTheOfficialDocumentationForMoreInformation'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/docs/setup-auto-archiving/' target='_blank'>","</a>")|raw }}
{{ 'General_SeeTheOfficialDocumentationForMoreInformation'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/docs/setup-auto-archiving/' target='_blank'>","</a>") }}
{% endset %}
{{ piwik.inlineHelp(browserArchivingHelp) }}
</td>
Expand All @@ -43,7 +43,7 @@
</label>
</td>
<td>
{{ 'General_NSeconds'|translate("<input size='3' value='" ~ todayArchiveTimeToLive ~ "' id='todayArchiveTimeToLive' />")|raw }}
{{ 'General_NSeconds'|translate("<input size='3' value='" ~ todayArchiveTimeToLive ~ "' id='todayArchiveTimeToLive' />") }}
</td>
<td width='450px'>
{% set archiveTodayTTLHelp %}
Expand Down Expand Up @@ -77,9 +77,9 @@
</fieldset>
<td>
{% set checkReleaseHelp %}
{{ 'CoreAdminHome_DevelopmentProcess'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/participate/development-process/' target='_blank'>","</a>")|raw }}
{{ 'CoreAdminHome_DevelopmentProcess'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/participate/development-process/' target='_blank'>","</a>") }}
<br/>
{{ 'CoreAdminHome_StableReleases'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/participate/user-feedback/' target='_blank'>","</a>")|raw }}
{{ 'CoreAdminHome_StableReleases'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/participate/user-feedback/' target='_blank'>","</a>") }}
{% endset %}
{{ piwik.inlineHelp(checkReleaseHelp) }}
</td>
Expand Down Expand Up @@ -215,7 +215,7 @@
<div id='logoSettings'>
{% set giveUsFeedbackText %}"{{ 'General_GiveUsYourFeedback'|translate }}"{% endset %}
{% set customLogoHelp %}
{{ 'CoreAdminHome_CustomLogoFeedbackInfo'|translate(giveUsFeedbackText,"<a href='?module=CorePluginsAdmin&action=index' target='_blank'>","</a>")|raw }}
{{ 'CoreAdminHome_CustomLogoFeedbackInfo'|translate(giveUsFeedbackText,"<a href='?module=CorePluginsAdmin&action=index' target='_blank'>","</a>") }}
{% endset %}
{{ piwik.inlineHelp(customLogoHelp) }}
<form id="logoUploadForm" method="post" enctype="multipart/form-data" action="index.php?module=CoreAdminHome&format=json&action=uploadCustomLogo">
Expand All @@ -233,7 +233,7 @@
</td>
{% else %}
<td>
<span class="ajaxSuccess">{{ 'CoreAdminHome_LogoNotWriteable'|translate("<ul style='list-style: disc inside;'><li>/misc/user/</li><li>/misc/user/logo.png</li><li>/misc/user/logo-header.png</li></ul>")|raw }}</span>
<span class="ajaxSuccess">{{ 'CoreAdminHome_LogoNotWriteable'|translate("<ul style='list-style: disc inside;'><li>/misc/user/</li><li>/misc/user/logo.png</li><li>/misc/user/logo-header.png</li></ul>") }}</span>
</td>
{% endif %}
</tr>
Expand Down Expand Up @@ -262,7 +262,7 @@
{% endset %}
<code>{{ iframeOptOut }}</code>
<br/>
{{ 'CoreAdminHome_OptOutExplanationBis'|translate("<a href='" ~ optOutUrl ~ "' target='_blank'>","</a>")|raw }}
{{ 'CoreAdminHome_OptOutExplanationBis'|translate("<a href='" ~ optOutUrl ~ "' target='_blank'>","</a>") }}
</p>

{% endblock %}
24 changes: 12 additions & 12 deletions plugins/CoreAdminHome/templates/trackingCodeGenerator.twig
Expand Up @@ -7,7 +7,7 @@
{% endblock %}

{% block content %}
<div id="js-tracking-generator-data" data-currencies="{{ currencySymbols|json_encode }}"></div>
<div id="js-tracking-generator-data" data-currencies="{{ currencySymbols|json_encode|e('html') }}"></div>

<h2>{{ 'CoreAdminHome_JavaScriptTracking'|translate }}</h2>

Expand All @@ -16,11 +16,11 @@
<p>
{{ 'CoreAdminHome_JSTrackingIntro1'|translate }}
<br/><br/>
{{ 'CoreAdminHome_JSTrackingIntro2'|translate }} {{ 'CoreAdminHome_JSTrackingIntro3'|translate('<a href="http://piwik.org/integrate/" target="_blank">','</a>')|raw }}
{{ 'CoreAdminHome_JSTrackingIntro2'|translate }} {{ 'CoreAdminHome_JSTrackingIntro3'|translate('<a href="http://piwik.org/integrate/" target="_blank">','</a>') }}
<br/><br/>
{{ 'CoreAdminHome_JSTrackingIntro4'|translate('<a href="#image-tracking-link">','</a>')|raw }}
{{ 'CoreAdminHome_JSTrackingIntro4'|translate('<a href="#image-tracking-link">','</a>') }}
<br/><br/>
{{ 'CoreAdminHome_JSTrackingIntro5'|translate('<a target="_blank" href="http://piwik.org/docs/javascript-tracking/">','</a>')|raw }}
{{ 'CoreAdminHome_JSTrackingIntro5'|translate('<a target="_blank" href="http://piwik.org/docs/javascript-tracking/">','</a>') }}
</p>

<div>
Expand Down Expand Up @@ -49,7 +49,7 @@
</label>

<div class="small-form-description">
{{ 'CoreAdminHome_JSTracking_MergeSubdomainsDesc'|translate("x.<span class='current-site-host'>"~defaultReportSiteDomain~"</span>","y.<span class='current-site-host'>"~defaultReportSiteDomain~"</span>")|raw }}
{{ 'CoreAdminHome_JSTracking_MergeSubdomainsDesc'|translate("x.<span class='current-site-host'>"~defaultReportSiteDomain~"</span>","y.<span class='current-site-host'>"~defaultReportSiteDomain~"</span>") }}
</div>
</div>

Expand All @@ -59,7 +59,7 @@
<label for="javascript-tracking-group-by-domain">{{ 'CoreAdminHome_JSTracking_GroupPageTitlesByDomain'|translate }}</label>

<div class="small-form-description">
{{ 'CoreAdminHome_JSTracking_GroupPageTitlesByDomainDesc1'|translate("<span class='current-site-host'>" ~ defaultReportSiteDomain ~ "</span>")|raw }}
{{ 'CoreAdminHome_JSTracking_GroupPageTitlesByDomainDesc1'|translate("<span class='current-site-host'>" ~ defaultReportSiteDomain ~ "</span>") }}
</div>
</div>

Expand All @@ -71,7 +71,7 @@
</label>

<div class="small-form-description">
{{ 'CoreAdminHome_JSTracking_MergeAliasesDesc'|translate("<span class='current-site-alias'>"~defaultReportSiteAlias~"</span>")|raw }}
{{ 'CoreAdminHome_JSTracking_MergeAliasesDesc'|translate("<span class='current-site-alias'>"~defaultReportSiteAlias~"</span>") }}
</div>
</div>

Expand Down Expand Up @@ -148,7 +148,7 @@
<label for="custom-campaign-query-params-check">{{ 'CoreAdminHome_JSTracking_CustomCampaignQueryParam'|translate }}</label>

<div class="small-form-description">
{{ 'CoreAdminHome_JSTracking_CustomCampaignQueryParamDesc'|translate('<a href="http://piwik.org/faq/general/#faq_119" target="_blank">','</a>')|raw }}
{{ 'CoreAdminHome_JSTracking_CustomCampaignQueryParamDesc'|translate('<a href="http://piwik.org/faq/general/#faq_119" target="_blank">','</a>') }}
</div>

<table style="display:none" id="js-campaign-query-param-extra">
Expand All @@ -172,7 +172,7 @@
<div id="javascript-output-section">
<h3>{{ 'Installation_JsTag'|translate }}</h3>

<p class="form-description">{{ 'CoreAdminHome_JSTracking_CodeNote'|translate("&lt;/body&gt;")|raw }}</p>
<p class="form-description">{{ 'CoreAdminHome_JSTracking_CodeNote'|translate("&lt;/body&gt;") }}</p>

<div id="javascript-text">
<textarea> </textarea>
Expand All @@ -185,9 +185,9 @@
<div id="image-tracking-code-options" class="adminTable">

<p>
{{ 'CoreAdminHome_ImageTrackingIntro1'|translate }} {{ 'CoreAdminHome_ImageTrackingIntro2'|translate("<em>&lt;noscript&gt;&lt;/noscript&gt;</em>")|raw }}
{{ 'CoreAdminHome_ImageTrackingIntro1'|translate }} {{ 'CoreAdminHome_ImageTrackingIntro2'|translate("<em>&lt;noscript&gt;&lt;/noscript&gt;</em>") }}
<br/><br/>
{{ 'CoreAdminHome_ImageTrackingIntro3'|translate('<a href="http://piwik.org/docs/tracking-api/reference/" target="_blank">','</a>')|raw }}
{{ 'CoreAdminHome_ImageTrackingIntro3'|translate('<a href="http://piwik.org/docs/tracking-api/reference/" target="_blank">','</a>') }}
</p>

<div>
Expand Down Expand Up @@ -253,7 +253,7 @@
<h2>{{ 'CoreAdminHome_ImportingServerLogs'|translate }}</h2>

<p>
{{ 'CoreAdminHome_ImportingServerLogsDesc'|translate('<a href="http://piwik.org/log-analytics/" target="_blank">','</a>')|raw }}
{{ 'CoreAdminHome_ImportingServerLogsDesc'|translate('<a href="http://piwik.org/log-analytics/" target="_blank">','</a>') }}
</p>

{% endblock %}
Expand Up @@ -7,7 +7,7 @@
<ul class='listCircle'>
{% for idx, dimension in dimensions %}
<li class="reportDimension {% if idx == 0 and loop.parent.index0 == 0 %}activeDimension{% endif %}"
data-url="{{ dimension.url }}">
data-url="{{ dimension.url|e('html') }}">
<span class='dimension'>{{ dimension.title|translate }}</span>
</li>
{% endfor %}
Expand All @@ -21,7 +21,7 @@
<img src="plugins/Zeitgeist/images/loading-blue.gif" alt=""/>{{ 'General_LoadingData'|translate }}
</div>

<div class="dimensionReport">{{ firstReport|raw }}</div>
<div class="dimensionReport">{{ firstReport }}</div>
</div>
<div class="clear"></div>

Expand Down
2 changes: 1 addition & 1 deletion plugins/CoreHome/templates/_dataTable.twig
@@ -1,4 +1,4 @@
<div class="dataTable" data-table-type="dataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode }}">
<div class="dataTable" data-table-type="dataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode|e('html') }}">
<div class="reportDocumentation">
{% if reportDocumentation is not empty %}<p>{{ reportDocumentation }}</p>{% endif %}
{% if properties.metadata.archived_date is defined %}<span class='helpDate'>{{ properties.metadata.archived_date }}</span>{% endif %}
Expand Down
4 changes: 2 additions & 2 deletions plugins/CoreHome/templates/_dataTableActions.twig
@@ -1,6 +1,6 @@
<div class="dataTable" data-table-type="actionDataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode }}">
<div class="dataTable" data-table-type="actionDataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode|e('html') }}">
<div class="reportDocumentation">
{% if reportDocumentation is not empty %}<p>{{ reportDocumentation|raw }}</p>{% endif %}
{% if reportDocumentation is not empty %}<p>{{ reportDocumentation }}</p>{% endif %}
{% if properties.metadata.archived_date is defined %}<span class='helpDate'>{{ properties.metadata.archived_date }}</span>{% endif %}
</div>
<div class="dataTableActionsWrapper">
Expand Down
@@ -1,4 +1,4 @@
<div class="dataTable" data-table-type="actionDataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode }}">
<div class="dataTable" data-table-type="actionDataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode|e('html') }}">
<div class="dataTableActionsWrapper">
{% if arrayDataTable.result is define and arrayDataTable.result == 'error' %}
{{ arrayDataTable.message }}
Expand Down
4 changes: 2 additions & 2 deletions plugins/CoreHome/templates/_dataTableCell.twig
@@ -1,5 +1,5 @@
{% set tooltipIndex = column ~ '_tooltip' %}
{% if row.metadata[tooltipIndex] is defined %}<span class="cell-tooltip" data-tooltip="{{ row.metadata[tooltipIndex] }}">{% endif %}
{% if row.metadata[tooltipIndex] is defined %}<span class="cell-tooltip" data-tooltip="{{ row.metadata[tooltipIndex]|e('html') }}">{% endif %}
{% if not row.idsubdatatable and column=='label' and row.metadata.url is not empty %}
<a target="_blank" href='{% if row.metadata.url|slice(0,4) not in ['http','ftp:'] %}http://{% endif %}{{ row.metadata.url }}'>
{% if row.metadata.logo is empty %}
Expand All @@ -15,7 +15,7 @@
{# make sure there are no whitespaces inside the span #}
{% if row.metadata.html_label_suffix is not empty %}<span class='label-suffix'>{{ row.metadata.html_label_suffix }}</span>{% endif %}
{% endif %}
{% if row.columns[column] is defined %}{{ row.columns[column]|raw }}{% else %}{{ defaultWhenColumnValueNotDefined }}{% endif %}
{% if row.columns[column] is defined %}{{ row.columns[column] }}{% else %}{{ defaultWhenColumnValueNotDefined }}{% endif %}
{% if column=='label' %}</span>{% endif %}
{% if not row.idsubdatatable and column=='label' and row.metadata.url is not empty %}
</a>
Expand Down
2 changes: 1 addition & 1 deletion plugins/CoreHome/templates/_dataTableCloud.twig
@@ -1,4 +1,4 @@
<div class="dataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode }}">
<div class="dataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode|e('html') }}">
{% if reportDocumentation is not empty and javascriptVariablesToSet.viewDataTable != 'tableGoals' %}
<div class="reportDocumentation"><p>{{ reportDocumentation }}</p></div>
{% endif %}
Expand Down
2 changes: 1 addition & 1 deletion plugins/CoreHome/templates/_dataTableGraph.twig
@@ -1,4 +1,4 @@
<div class="dataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode }}">
<div class="dataTable" data-report="{{ properties.uniqueId }}" data-params="{{ javascriptVariablesToSet|json_encode|e('html') }}">

<div class="reportDocumentation">
{% if reportDocumentation is not empty %}<p>{{ reportDocumentation }}</p>{% endif %}
Expand Down
2 changes: 1 addition & 1 deletion plugins/CoreHome/templates/_donate.twig
Expand Up @@ -5,7 +5,7 @@
{% else %}
<p>{{ 'CoreHome_DonateCall1'|translate }}</p>
<p><strong><em>{{ 'CoreHome_DonateCall2'|translate }}</em></strong></p>
<p>{{ 'CoreHome_DonateCall3'|translate('<em><strong>','</strong></em>')|raw }}</p>
<p>{{ 'CoreHome_DonateCall3'|translate('<em><strong>','</strong></em>') }}</p>
{% endif %}
</div>

Expand Down
8 changes: 4 additions & 4 deletions plugins/CoreHome/templates/_headerMessage.twig
Expand Up @@ -17,17 +17,17 @@
{% if piwikUrl == 'http://demo.piwik.org/' %}
{{ 'General_YouAreViewingDemoShortMessage'|translate }}
<br/>
{{ 'General_DownloadFullVersion'|translate("<a href='http://piwik.org/'>","</a>","<a href='http://piwik.org'>piwik.org</a>")|raw }}
{{ 'General_DownloadFullVersion'|translate("<a href='http://piwik.org/'>","</a>","<a href='http://piwik.org'>piwik.org</a>") }}
{% elseif latest_version_available %}
{% if isSuperUser %}
{{ 'General_PiwikXIsAvailablePleaseUpdateNow'|translate(latest_version_available,"<br /><a href='index.php?module=CoreUpdater&amp;action=newVersionAvailable'>","</a>","<a href='?module=Proxy&amp;action=redirect&amp;url=http://piwik.org/changelog/' target='_blank'>","</a>")|raw }}
{{ 'General_PiwikXIsAvailablePleaseUpdateNow'|translate(latest_version_available,"<br /><a href='index.php?module=CoreUpdater&amp;action=newVersionAvailable'>","</a>","<a href='?module=Proxy&amp;action=redirect&amp;url=http://piwik.org/changelog/' target='_blank'>","</a>") }}
<br/>
{{ 'General_YouAreCurrentlyUsing'|translate(piwik_version) }}
{% else %}
{{ 'General_PiwikXIsAvailablePleaseNotifyPiwikAdmin'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/' target='_blank'>Piwik</a> <a href='?module=Proxy&action=redirect&url=http://piwik.org/changelog/' target='_blank'>{{ latest_version_available }}</a>")|raw }}
{{ 'General_PiwikXIsAvailablePleaseNotifyPiwikAdmin'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org/' target='_blank'>Piwik</a> <a href='?module=Proxy&action=redirect&url=http://piwik.org/changelog/' target='_blank'>{{ latest_version_available }}</a>") }}
{% endif %}
{% else %}
{{ 'General_PiwikIsACollaborativeProjectYouCanContributeAndDonate'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org' target='_blank'>",piwik_version+"</a>","<br />","<a target='_blank' href='?module=Proxy&action=redirect&url=http://piwik.org/contribute/'>","</a>",'<br/>',"<a href='http://piwik.org/donate/' target='_blank'><strong><em>","</em></strong></a>")|raw }}
{{ 'General_PiwikIsACollaborativeProjectYouCanContributeAndDonate'|translate("<a href='?module=Proxy&action=redirect&url=http://piwik.org' target='_blank'>",piwik_version+"</a>","<br />","<a target='_blank' href='?module=Proxy&action=redirect&url=http://piwik.org/contribute/'>","</a>",'<br/>',"<a href='http://piwik.org/donate/' target='_blank'><strong><em>","</em></strong></a>") }}
{% endif %}
{% if hasSomeAdminAccess %}
<br/>
Expand Down
2 changes: 1 addition & 1 deletion plugins/CoreHome/templates/_javaScriptDisabled.twig
@@ -1,3 +1,3 @@
<noscript>
<div id="javascriptDisabled">{{ 'CoreHome_JavascriptDisabled'|translate('<a href="">','</a>')|raw }}</div>
<div id="javascriptDisabled">{{ 'CoreHome_JavascriptDisabled'|translate('<a href="">','</a>') }}</div>
</noscript>

3 comments on commit c263308

@halfdan
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will revert this as discussed.

@mattab
Copy link
Member Author

@mattab mattab commented on c263308 Jun 25, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

reverted! @halfdan @diosmosis let's get all these bugs fixed now 🎱

@halfdan
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On it! :)

Please sign in to comment.