EBernhardson has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/286242

Change subject: Split js/css out of the view file into static assets
......................................................................

Split js/css out of the view file into static assets

Change-Id: Ic3969afd8fae80b477beed79340daff6000230e2
---
A public/css/scoring.css
A public/js/scoring.js
M views/score_query.twig
3 files changed, 98 insertions(+), 97 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/wikimedia/discovery/discernatron 
refs/changes/42/286242/1

diff --git a/public/css/scoring.css b/public/css/scoring.css
new file mode 100644
index 0000000..70e3de5
--- /dev/null
+++ b/public/css/scoring.css
@@ -0,0 +1,32 @@
+.result .row {
+    display: flex;
+    align-items: center;
+}
+.row.relevant {
+    background-color: green;
+}
+.row.probably {
+    background-color: yellow;
+}
+.row.maybe {
+    background-color: orange;
+}
+.row.irrelevant {
+    background-color: red;
+}
+.errors p {
+    padding: 15px;
+}
+.snippet {
+    padding-left: 1em;
+}
+@media (max-width: 768px) {
+    .border-xs {
+        border: 1px solid black;
+    }
+}
+@media (max-width: 991px) and (min-width: 768px) {
+    .border-sm {
+        border: 1px solid black;
+    }
+}
diff --git a/public/js/scoring.js b/public/js/scoring.js
new file mode 100644
index 0000000..a293cbf
--- /dev/null
+++ b/public/js/scoring.js
@@ -0,0 +1,60 @@
+(function ($) {
+    var valueToClass = ['irrelevant', 'maybe', 'probably', 'relevant'],
+        onChange = function () {
+            var $this = $(this),
+                value = parseInt($this.val()),
+                $row = $this.closest('.row');
+    
+            $row.removeClass(valueToClass.join(' '));
+            if (!isNaN(value)) {
+                $row.addClass(valueToClass[value]);
+                $row.find('.rating').text($this.siblings('label').text());
+            } else {
+                $row.find('.rating').text('');
+            }
+        },
+        onClickForNext = function (evt) {
+            // Find the currently selected choice
+            var next,
+                row = $(this).closest('.row'),
+                selected = parseInt(row.find('input:checked').val()),
+                skip = 'label, input, a, .glyphicon';
+    
+            // Don't override real clicks. We have to check originalEvent 
because toElement
+            // isn't populated in firefox 46
+            if ($(evt.toElement).is(skip) || 
$(evt.originalEvent.target).is(skip)) {
+                return;
+            }
+    
+            // if nothing selected default to last so we wrap to beginning
+            if (isNaN(selected)) {
+                selected = 4;
+            }
+            next = (selected + 1) % 5;
+            if (next == 4) {
+                // non existent value means unselect
+                row.find('input:checked').prop('checked', false);
+                onChange.apply(row);
+            } else {
+                onChange.apply(row.find('input[value=' + (next) + 
']').prop('checked', true));
+            }
+        },
+        onShowSnippet = function (evt) {
+            $(this).toggle(false);
+            
$(this).siblings('.hide-snippet').removeClass('hidden').toggle(true);
+            
$(this).closest('.result').find('.snippet').removeClass('hidden').toggle(true);
+        },
+        onHideSnippet = function (evt) {
+            $(this).toggle(false);
+            $(this).siblings('.show-snippet').toggle(true);
+            $(this).closest('.result').find('.snippet').toggle(false);
+        };
+    
+    $(document).ready(function () {
+        $('input:checked').each(onChange);
+        $('input[type=radio]').change(onChange);
+        $('.click-for-next').click(onClickForNext);
+        $('.show-snippet').removeClass('hidden').click(onShowSnippet);
+        $('.hide-snippet').click(onHideSnippet);
+    });
+}(jQuery));
diff --git a/views/score_query.twig b/views/score_query.twig
index 17b2d6b..85676cc 100644
--- a/views/score_query.twig
+++ b/views/score_query.twig
@@ -20,40 +20,12 @@
 
 {% block head %}
     {{ parent() }}
-    <style type="text/css">
-        .result .row {
-            display: flex;
-            align-items: center;
-        }
-        .row.relevant {
-            background-color: green;
-        }
-        .row.probably {
-            background-color: yellow;
-        }
-        .row.maybe {
-            background-color: orange;
-        }
-        .row.irrelevant {
-            background-color: red;
-        }
-        .errors p {
-            padding: 15px;
-        }
-        .snippet {
-            padding-left: 1em;
-        }
-        @media (max-width: 768px) {
-            .border-xs {
-                border: 1px solid black;
-            }
-        }
-        @media (max-width: 991px) and (min-width: 768px) {
-            .border-sm {
-                border: 1px solid black;
-            }
-        }
-    </style>
+    <link href="/css/scoring.css" rel="stylesheet" type="text/css">
+{% endblock %}
+
+{% block js %}
+    {{ parent() }}
+    <script src="/js/scoring.js"></script>
 {% endblock %}
 
 {% block content %}
@@ -120,66 +92,3 @@
     </form>
 {% endblock %}
 
-{% block js %}
-    {{ parent() }}
-    <script>
-        var valueToClass = ['irrelevant', 'maybe', 'probably', 'relevant'],
-            onChange = function () {
-                var $this = $(this),
-                    value = parseInt($this.val()),
-                    $row = $this.closest('.row');
-
-                $row.removeClass(valueToClass.join(' '));
-                if (!isNaN(value)) {
-                    $row.addClass(valueToClass[value]);
-                    $row.find('.rating').text($this.siblings('label').text());
-                } else {
-                    $row.find('.rating').text('');
-                }
-            },
-            onClickForNext = function (evt) {
-                // Find the currently selected choice
-                var next,
-                    row = $(this).closest('.row'),
-                    selected = parseInt(row.find('input:checked').val()),
-                    skip = 'label, input, a, .glyphicon';
-
-                // Don't override real clicks. We have to check originalEvent 
because toElement
-                // isn't populated in firefox 46
-                if ($(evt.toElement).is(skip) || 
$(evt.originalEvent.target).is(skip)) {
-                    return;
-                }
-
-                // if nothing selected default to last so we wrap to beginning
-                if (isNaN(selected)) {
-                    selected = 4;
-                }
-                next = (selected + 1) % 5;
-                if (next == 4) {
-                    // non existent value means unselect
-                    row.find('input:checked').prop('checked', false);
-                    onChange.apply(row);
-                } else {
-                    onChange.apply(row.find('input[value=' + (next) + 
']').prop('checked', true));
-                }
-            },
-            onShowSnippet = function (evt) {
-                $(this).toggle(false);
-                
$(this).siblings('.hide-snippet').removeClass('hidden').toggle(true);
-                
$(this).closest('.result').find('.snippet').removeClass('hidden').toggle(true);
-            },
-            onHideSnippet = function (evt) {
-                $(this).toggle(false);
-                $(this).siblings('.show-snippet').toggle(true);
-                $(this).closest('.result').find('.snippet').toggle(false);
-            };
-
-        $(document).ready(function () {
-            $('input:checked').each(onChange);
-            $('input[type=radio]').change(onChange);
-            $('.click-for-next').click(onClickForNext);
-            $('.show-snippet').removeClass('hidden').click(onShowSnippet);
-            $('.hide-snippet').click(onHideSnippet);
-        });
-    </script>
-{% endblock %}

-- 
To view, visit https://gerrit.wikimedia.org/r/286242
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic3969afd8fae80b477beed79340daff6000230e2
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/discovery/discernatron
Gerrit-Branch: master
Gerrit-Owner: EBernhardson <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to