浏览代码

oscar template: make the categories clickable

Thomas Pointhuber 10 年前
父节点
当前提交
25919de608

+ 31
- 0
searx/static/oscar/js/scripts.js 查看文件

@@ -0,0 +1,31 @@
1
+/**
2
+ _                 _       _                  
3
+| |__   ___   ___ | |_ ___| |_ _ __ __ ___  __
4
+| '_ \ / _ \ / _ \| __/ __| __| '__/ _` \ \/ /
5
+| |_) | (_) | (_) | |_\__ | |_| | | (_| |>  < 
6
+|_.__/ \___/ \___/ \__|___/\__|_|  \__,_/_/\_\.js
7
+
8
+*/
9
+
10
+$(document).ready(function(){
11
+    $('.btn-toggle .btn').click(function() {
12
+        var btnClass = 'btn-' + $(this).data('btn-class');
13
+        var btnLabelDefault = $(this).data('btn-label-default');
14
+        var btnLabelToggled = $(this).data('btn-label-toggled');
15
+        if(btnLabelToggled != '')
16
+        {
17
+            if($(this).hasClass('btn-default'))
18
+            {
19
+                
20
+                var html = $(this).html().replace(btnLabelDefault, btnLabelToggled);
21
+            }
22
+            else
23
+            {
24
+                var html = $(this).html().replace(btnLabelToggled, btnLabelDefault);
25
+            }
26
+            $(this).html(html);
27
+        }
28
+        $(this).toggleClass(btnClass);
29
+        $(this).toggleClass('btn-default');
30
+    });
31
+});

+ 1
- 0
searx/templates/oscar/base.html 查看文件

@@ -61,5 +61,6 @@
61 61
     </div>
62 62
     <script src="{{ url_for('static', filename='js/jquery-1.11.1.min.js') }}"></script>
63 63
     <script src="{{ url_for('static', filename='js/bootstrap.min.js') }}"></script>
64
+    <script src="{{ url_for('static', filename='js/scripts.js') }}"></script>
64 65
 </body>
65 66
 </html>

+ 6
- 0
searx/templates/oscar/categories.html 查看文件

@@ -0,0 +1,6 @@
1
+<div id="categories" class="btn-group btn-toggle" data-toggle="buttons">
2
+{% for category in categories %}
3
+    <label class="btn btn-sm {% if category in selected_categories %}btn-primary active{% else %}btn-default{% endif %}" data-btn-class="primary">
4
+        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />{{ _(category) }}</label>
5
+{% endfor %}
6
+</div>

+ 8
- 11
searx/templates/oscar/preferences.html 查看文件

@@ -16,15 +16,14 @@
16 16
     <div class="tab-content">
17 17
         <div class="tab-pane active" id="tab_general">
18 18
             <fieldset>
19
-                <legend>{{ _('Default categories') }}</legend>
20
-                <p>
21
-                {% include 'default/categories.html' %}
22
-                </p>
23
-            </fieldset>
24
-
25
-            <fieldset>
26 19
             <div class="container-fluid">
27 20
                 <div class="row form-group">
21
+                    <label class="col-sm-3 col-md-2">{{ _('Default categories') }}</label>
22
+                    <div class="col-sm-11 col-md-10">
23
+                        {% include 'oscar/categories.html' %}
24
+                    </div>
25
+                </div>
26
+                <div class="row form-group">
28 27
                     <label class="col-sm-3 col-md-2">{{ _('Search language') }}</label>
29 28
                     <div class="col-sm-4 col-md-4">
30 29
                         <select class="form-control" name='language'>
@@ -36,8 +35,6 @@
36 35
                     </div>
37 36
                     <span class="col-sm-5 col-md-6 help-block">{{ _('What language do you prefer for search?') }}</span>
38 37
                 </div>
39
-                
40
-                
41 38
                 <div class="row form-group">
42 39
                     <label class="col-sm-3 col-md-2">{{ _('Interface language') }}</label>
43 40
                     <div class="col-sm-4 col-md-4">
@@ -91,7 +88,7 @@
91 88
             <!-- Nav tabs -->
92 89
             <ul class="nav nav-tabs" role="tablist" style="margin-bottom:20px;">
93 90
                 {% for (categ,search_engines) in categs %}
94
-                <li{% if loop.first %} class="active"{% endif %}><a href="#tab_engine_{{ categ|replace(' ', '') }}" role="tab" data-toggle="tab">{{ _(categ) }}</a></li>
91
+                <li{% if loop.first %} class="active"{% endif %}><a href="#tab_engine_{{ categ|replace(' ', '_') }}" role="tab" data-toggle="tab">{{ _(categ) }}</a></li>
95 92
                 {% endfor %}
96 93
             </ul>
97 94
         
@@ -99,7 +96,7 @@
99 96
             <!-- Tab panes -->
100 97
             <div class="tab-content">
101 98
                 {% for (categ,search_engines) in categs %}
102
-                <div class="tab-pane{% if loop.first %} active{% endif %}" id="tab_engine_{{ categ|replace(' ', '') }}">
99
+                <div class="tab-pane{% if loop.first %} active{% endif %}" id="tab_engine_{{ categ|replace(' ', '_') }}">
103 100
                     <div class="container-fluid">
104 101
                     <fieldset>
105 102
                     {% for search_engine in search_engines %}