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: Addressed Julian's comments Created Aug. 24, 2016, 11:48 a.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') | static/css/simple.css » ('J')
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>
@@ -35,7 +35,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)
@@ -45,11 +45,25 @@
reasonsContainer.appendChild(reasonElement);
}
- var reasonOtherCheckbox = document.getElementById("reason-other");
- var reasonOther = document.getElementById("reason-other-container");
- reasonOtherCheckbox.addEventListener("change", function()
+ reasonsContainer.addEventListener("click", function(event)
juliandoucette 2016/09/24 16:49:33 NIT: I would suggest listening to the "change" ev
saroyanm 2016/09/27 12:10:14 I agree that in this case we can go with the chang
juliandoucette 2016/09/28 13:35:26 Acknowledged.
{
- reasonOther.classList.toggle("hidden");
+ var toggleView = event.target.getAttribute("data-toggle-view");
+ if (toggleView)
+ document.getElementById(toggleView).classList.toggle("hidden");
juliandoucette 2016/09/24 16:49:33 Minor bug: If you check the "Other, namely..." c
saroyanm 2016/09/27 12:10:14 Good catch, Chrome wasn't refreshing the selected
+ }, false);
+
+ var adblockersList = document.querySelector("#adblockers select");
+ adblockersList.addEventListener("change", function()
+ {
+ 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");
+ }
}, false);
var reasonOtherInput = document.getElementById("reason-other-input");
@@ -80,32 +94,47 @@
</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}}" />
+ <fieldset>
+ <ul id="reasons">
+ {%- for reasonId, stringId, value, adblockers in reasons %}
+ <li>
+ <input type="checkbox" name="reason" {% if adblockers %} data-toggle-view="adblockers" {% endif %} 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>
+ {%- 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>
juliandoucette 2016/09/24 16:49:34 This textarea is pretty small (it fits about 100 c
saroyanm 2016/09/27 12:10:14 It has height and width specified, AFAIK it was re
juliandoucette 2016/09/28 13:35:26 Acknowledged.
+ <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') | static/css/simple.css » ('J')

Powered by Google App Engine
This is Rietveld