You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by la...@apache.org on 2020/07/07 00:02:56 UTC
[incubator-mxnet] branch master updated: User Feedback Widget
(#18639)
This is an automated email from the ASF dual-hosted git repository.
lausen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-mxnet.git
The following commit(s) were added to refs/heads/master by this push:
new 54c0155 User Feedback Widget (#18639)
54c0155 is described below
commit 54c0155b7581f5e10b1469a17ddf127d3c75e156
Author: Yang Shi <ya...@amazon.com>
AuthorDate: Mon Jul 6 17:01:42 2020 -0700
User Feedback Widget (#18639)
* user feedback widget implementation
* add user feedback widget to python docs site
* update margin
* add apache license
* one more license
* turn off feedback widget on python site
* update copy
* format
* add event value field
* turn on widget on Python site
---
docs/python_docs/_static/feedback.css | 37 ++++++++++++++++++++
docs/python_docs/_static/feedback.js | 33 ++++++++++++++++++
.../themes/mx-theme/mxtheme/feedback.html | 10 ++++++
.../themes/mx-theme/mxtheme/layout.html | 5 ++-
docs/static_site/src/_includes/feedback.html | 10 ++++++
docs/static_site/src/_includes/head.html | 3 ++
docs/static_site/src/_layouts/page_api.html | 3 ++
docs/static_site/src/_sass/feedback.scss | 39 ++++++++++++++++++++++
docs/static_site/src/assets/js/feedback.js | 33 ++++++++++++++++++
docs/static_site/src/assets/main.scss | 1 +
10 files changed, 173 insertions(+), 1 deletion(-)
diff --git a/docs/python_docs/_static/feedback.css b/docs/python_docs/_static/feedback.css
new file mode 100644
index 0000000..b4a64ec
--- /dev/null
+++ b/docs/python_docs/_static/feedback.css
@@ -0,0 +1,37 @@
+.feedback-container {
+ text-align: center;
+}
+
+.feedback-answer-container {
+ display: inline-block;
+}
+
+.feedback-question {
+ display: inline-block;
+ padding: 0.5em 1em 0.5em 1em;
+}
+
+.feedback-answer {
+ display: inline-block;
+ padding: 0.5em 1em 0.5em 1em;
+ color: #048ccc;
+ cursor: pointer;
+}
+
+.feedback-answer:hover {
+ color: #ffffff;
+ background-color: #048ccc;
+}
+
+.feedback-thank-you {
+ display: none;
+ padding: 0.5em 1em 0.5em 1em;
+}
+
+.feedback-hr-top {
+ margin-top: 50px;
+}
+
+.feedback-hr-bottom {
+ margin-bottom: 30px;
+}
diff --git a/docs/python_docs/_static/feedback.js b/docs/python_docs/_static/feedback.js
new file mode 100644
index 0000000..f454237
--- /dev/null
+++ b/docs/python_docs/_static/feedback.js
@@ -0,0 +1,33 @@
+/*!
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+$(document).ready(function() {
+ $(".feedback-answer").on("click", function () {
+ $(".feedback-question").remove();
+ $(".feedback-answer-container").remove();
+ $(".feedback-thank-you").show();
+ ga("send", {
+ hitType: "event",
+ eventCategory: "Did this page help you?",
+ eventAction: $(this).attr("data-response"),
+ eventLabel: window.location.pathname || "unknown",
+ eventValue: $(this).attr("data-response") === "yes" ? 1 : 0
+ });
+ });
+});
diff --git a/docs/python_docs/themes/mx-theme/mxtheme/feedback.html b/docs/python_docs/themes/mx-theme/mxtheme/feedback.html
new file mode 100644
index 0000000..8a9b1b5
--- /dev/null
+++ b/docs/python_docs/themes/mx-theme/mxtheme/feedback.html
@@ -0,0 +1,10 @@
+<hr class="feedback-hr-top" />
+<div class="feedback-container">
+ <div class="feedback-question">Did this page help you?</div>
+ <div class="feedback-answer-container">
+ <div class="feedback-answer yes-link" data-response="yes">Yes</div>
+ <div class="feedback-answer no-link" data-response="no">No</div>
+ </div>
+ <div class="feedback-thank-you">Thanks for your feedback!</div>
+</div>
+<hr class="feedback-hr-bottom" />
diff --git a/docs/python_docs/themes/mx-theme/mxtheme/layout.html b/docs/python_docs/themes/mx-theme/mxtheme/layout.html
index 03189c8..994da38 100644
--- a/docs/python_docs/themes/mx-theme/mxtheme/layout.html
+++ b/docs/python_docs/themes/mx-theme/mxtheme/layout.html
@@ -64,10 +64,12 @@
'_static/sphinx_materialdesign_theme.css',
'_static/fontawesome/all.css',
'_static/fonts.css',
+ '_static/feedback.css',
] %}
{%- block header %}
- <script type="text/javascript" src="{{ pathto('_static/sphinx_materialdesign_theme.js', 1) }} "></script>
+ <script type="text/javascript" src="{{ pathto('_static/sphinx_materialdesign_theme.js', 1) }} "></script>
+ <script type="text/javascript" src="{{ pathto('_static/feedback.js', 1) }}"></script>
{% endblock %}
{%- block relbar1 %}{% endblock %}
{%- block relbar2 %}{% include "relations.html" %}{% endblock %}
@@ -85,6 +87,7 @@
{%- block document %}
<div class="page-content" role="main">
{% block body %} {% endblock %}
+ {% include "feedback.html" %}
</div>
<div class="side-doc-outline">
<div class="side-doc-outline--content">
diff --git a/docs/static_site/src/_includes/feedback.html b/docs/static_site/src/_includes/feedback.html
new file mode 100644
index 0000000..08b52b6
--- /dev/null
+++ b/docs/static_site/src/_includes/feedback.html
@@ -0,0 +1,10 @@
+<hr class="feedback-hr-top" />
+<div class="feedback-container">
+ <div class="feedback-question">Did this page help you?</div>
+ <div class="feedback-answer-container">
+ <div class="feedback-answer yes-link" data-response="yes">Yes</div>
+ <div class="feedback-answer no-link" data-response="no">No</div>
+ </div>
+ <div class="feedback-thank-you">Thanks for your feedback!</div>
+</div>
+<hr class="feedback-hr-bottom" />
diff --git a/docs/static_site/src/_includes/head.html b/docs/static_site/src/_includes/head.html
index f0710cc..5ec779c 100644
--- a/docs/static_site/src/_includes/head.html
+++ b/docs/static_site/src/_includes/head.html
@@ -20,4 +20,7 @@
<script src="{{'/assets/js/globalSearch.js'|relative_url}}" defer></script>
<script src="{{'/assets/js/clipboard.js'|relative_url}}" defer></script>
<script src="{{'/assets/js/copycode.js'|relative_url}}" defer></script>
+ {%- if page.feedback == true and jekyll.environment == "production" -%}
+ <script src="{{'/assets/js/feedback.js'|relative_url}}" defer></script>
+ {%- endif -%}
</head>
diff --git a/docs/static_site/src/_layouts/page_api.html b/docs/static_site/src/_layouts/page_api.html
index bd9d553..457bd5e 100644
--- a/docs/static_site/src/_layouts/page_api.html
+++ b/docs/static_site/src/_layouts/page_api.html
@@ -48,5 +48,8 @@ layout: page
</div>
<div class="col-9">
{{ content }}
+ {%- if page.feedback == true and jekyll.environment == "production" -%}
+ {%- include feedback.html -%}
+ {%- endif -%}
</div>
</div>
diff --git a/docs/static_site/src/_sass/feedback.scss b/docs/static_site/src/_sass/feedback.scss
new file mode 100644
index 0000000..9e4ebf1
--- /dev/null
+++ b/docs/static_site/src/_sass/feedback.scss
@@ -0,0 +1,39 @@
+.feedback-container {
+ text-align: center;
+}
+
+.feedback-answer-container {
+ display: inline-block;
+}
+
+.feedback-question {
+ display: inline-block;
+ padding: 0.5em 1em 0.5em 1em;
+}
+
+.feedback-answer {
+ display: inline-block;
+ padding: 0.5em 1em 0.5em 1em;
+ color: #048ccc;
+ cursor: pointer;
+}
+
+.feedback-answer:hover {
+ color: #ffffff;
+ background-color: #048ccc;
+}
+
+.feedback-thank-you {
+ display: none;
+ padding: 0.5em 1em 0.5em 1em;
+}
+
+.feedback-hr-top {
+ margin: 1em;
+ margin-top: 50px;
+}
+
+.feedback-hr-bottom {
+ margin: 1em;
+ margin-bottom: 30px;
+}
diff --git a/docs/static_site/src/assets/js/feedback.js b/docs/static_site/src/assets/js/feedback.js
new file mode 100644
index 0000000..f454237
--- /dev/null
+++ b/docs/static_site/src/assets/js/feedback.js
@@ -0,0 +1,33 @@
+/*!
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+$(document).ready(function() {
+ $(".feedback-answer").on("click", function () {
+ $(".feedback-question").remove();
+ $(".feedback-answer-container").remove();
+ $(".feedback-thank-you").show();
+ ga("send", {
+ hitType: "event",
+ eventCategory: "Did this page help you?",
+ eventAction: $(this).attr("data-response"),
+ eventLabel: window.location.pathname || "unknown",
+ eventValue: $(this).attr("data-response") === "yes" ? 1 : 0
+ });
+ });
+});
diff --git a/docs/static_site/src/assets/main.scss b/docs/static_site/src/assets/main.scss
index 9816a84..849bcb0 100644
--- a/docs/static_site/src/assets/main.scss
+++ b/docs/static_site/src/assets/main.scss
@@ -8,3 +8,4 @@ body {
@import "minima";
@import "globalSearch";
@import "generalVersionDropdown";
+@import "feedback";