Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: pages/uninstalled.tmpl

Issue 29348067: Issue 4049 - reinstall button and adbockers list added to uninstallation page (Closed)
Patch Set: And again addressed comments Created Sept. 27, 2016, 12:02 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | static/css/simple.css » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pages/uninstalled.tmpl
===================================================================
--- a/pages/uninstalled.tmpl
+++ b/pages/uninstalled.tmpl
@@ -2,12 +2,12 @@
template=simple
{% set reasons = [
- ("1v0", "reason-not-installed", "I didn't install Adblock Plus."),
- ("2v0", "reason-slowing-down", "Adblock Plus slowed down my browser."),
- ("3v0", "reason-acceptable-ads", "I don't like the Acceptable Ads program."),
- ("4v0", "reason-see-ads", "Adblock Plus didn't block all ads."),
- ("5v0", "reason-better-adblocker", "I found better ad blocking software."),
- ("6v0", "reason-break-websites", "Adblock Plus breaks websites that I visit.")
+ ("1v0", "reason-not-installed", "I didn't install Adblock Plus.", ""),
+ ("2v0", "reason-slowing-down", "Adblock Plus slowed down my browser.", ""),
+ ("3v0", "reason-acceptable-ads", "I don't like the Acceptable Ads program.", ""),
+ ("4v0", "reason-see-ads", "Adblock Plus didn't block all ads.", ""),
+ ("5v0", "reason-better-adblocker", "I found better ad blocking software.", ["AdBlock", "uBlock", "uBlock Origin", "Ghostery"]),
+ ("6v0", "reason-break-websites", "Adblock Plus breaks websites that I visit.", "")
] %}
<head>
@@ -15,6 +15,27 @@
<script type="text/javascript">
(function()
{
+ var adblockersList = null;
+ function toggleView(element)
+ {
+ var targetId = element.getAttribute("data-toggle-view");
+ if (targetId)
+ document.getElementById(targetId).classList.toggle("hidden");
+ }
+
+ function checkSelectedAdblocker()
+ {
+ var selectedOption = adblockersList[adblockersList.selectedIndex];
+ var element = selectedOption.getAttribute("data-show-element");
+ if (element)
+ document.getElementById(element).classList.remove("hidden");
+ else
+ {
+ element = selectedOption.getAttribute("data-hide-element");
+ document.getElementById(element).classList.add("hidden");
+ }
+ }
+
function init()
{
var form = document.getElementById("reasons-form");
@@ -35,7 +56,7 @@
// Randomly add reasons
var reasonsContainer = document.getElementById("reasons");
- var reasons = reasonsContainer.getElementsByTagName("li");
+ var reasons = document.querySelectorAll("#reasons > li");
reasons = Array.prototype.slice.call(reasons);
reasonsContainer.innerHTML = "";
while (reasons.length)
@@ -43,14 +64,22 @@
var randomIndex = Math.floor(Math.random() * (reasons.length -1));
var reasonElement = reasons.splice(randomIndex, 1)[0];
reasonsContainer.appendChild(reasonElement);
+ var checkbox = reasonElement.querySelector("input[type=checkbox]");
+ if (checkbox.checked)
+ toggleView(checkbox);
+
+ checkbox.addEventListener("change", function(event)
+ {
+ toggleView(event.target);
+ }, false);
}
- var reasonOtherCheckbox = document.getElementById("reason-other");
- var reasonOther = document.getElementById("reason-other-container");
- reasonOtherCheckbox.addEventListener("change", function()
+ adblockersList = document.querySelector("#adblockers select");
+ adblockersList.addEventListener("change", function()
{
- reasonOther.classList.toggle("hidden");
+ checkSelectedAdblocker();
}, false);
+ checkSelectedAdblocker();
var reasonOtherInput = document.getElementById("reason-other-input");
var maxLength = reasonOtherInput.getAttribute("maxlength");
@@ -80,32 +109,49 @@
</script>
</head>
+<div class="notification">
+ <strong>{{"Did you uninstall Adblock Plus by accident?"|translate("reinstall-headline", "Text next to the Reinstallation button")}}</strong>
+ {{"index"|linkify}}{{"Reinstall Now"|translate("reinstall", "Reinstall button text")}}</a>
+</div>
<section class="highlighted">
<h1>{{"Please select the reason(s) why you uninstalled Adblock Plus:"|translate("reasons-header", "Form heading")}}</h1>
<form id="reasons-form" action="uninstalled-submit" method="get">
- <ul id="reasons">
- {%- for reasonId, stringId, value in reasons %}
- <li>
- <label>
- <input type="checkbox" name="reason" value="{{reasonId}}" />
- {{value|translate(stringId, "Uninstallation reason")}}
- </label>
- </li>
- {%- endfor %}
- <li>
- <label>
- <input id="reason-other" type="checkbox" name="reason" value="0v0" />
- {{"Other, namely..."|translate("reason-other", "Last uninstallation reason")}}
- </label>
- <div id="reason-other-container" class="hidden">
- <textarea id="reason-other-input" name="reasonOther" maxlength="300" placeholder="{{"Please explain why you are uninstalling Adblock Plus"|translate("reason-other-placeholder", "Textarea placeholder text, appears after selecting 'Other, namely...' option")}}"></textarea>
- <div>
- {{"Characters remaining:"|translate("countdown-text", "Text of character limit counter appears after selecting 'Other, namely...' option")}}
- <span id="characters-countdown"></span>
- </div>
- </div>
- </li>
- </ul>
+ <fieldset>
+ <ul id="reasons">
+ {%- for reasonId, stringId, value, adblockers in reasons %}
+ <li>
+ <label>
+ <input type="checkbox" name="reason" {% if adblockers %} data-toggle-view="adblockers" {% endif %} value="{{reasonId}}" />
+ {{value|translate(stringId, "Uninstallation reason")}}
+ </label>
+ {%- if adblockers %}
+ <fieldset class="hidden" id="adblockers">
+ <select>
+ {%- for name in adblockers %}
+ <option name="otherAdblockerPredefined" data-hide-element="other-adblocker" value="{{name}}">{{name}}</option>
+ {%- endfor %}
+ <option name="otherAdblockerPredefined" data-show-element="other-adblocker" value="Other">{{"Other"|translate("other", "Option in list of Adblockers")}}</option>
+ </select>
+ <input id="other-adblocker" class="hidden" type="text" name="otherAdblocker" />
+ </fieldset>
+ {%- endif %}
+ </li>
+ {%- endfor %}
+ <li>
+ <label>
+ <input id="reason-other" data-toggle-view="reason-other-container" type="checkbox" name="reason" value="0v0" />
+ {{"Other, namely..."|translate("reason-other", "Last uninstallation reason")}}
+ </label>
+ <fieldset id="reason-other-container" class="hidden">
+ <textarea id="reason-other-input" name="reasonOther" maxlength="300" placeholder="{{"Please explain why you are uninstalling Adblock Plus"|translate("reason-other-placeholder", "Textarea placeholder text, appears after selecting 'Other, namely...' option")}}"></textarea>
+ <div>
+ {{"Characters remaining:"|translate("countdown-text", "Text of character limit counter appears after selecting 'Other, namely...' option")}}
+ <span id="characters-countdown"></span>
+ </div>
+ </fieldset>
+ </li>
+ </ul>
+ </fieldset>
<button id="submit-form">{{"Submit"|translate("submit", "Submit button text")}}</button>
<span class="error-label">{{"Please select at least one of the options above"|translate("error-msg", "Error message, is being shown after submission if no item selected")}}</span>
</form>
« no previous file with comments | « no previous file | static/css/simple.css » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld