浏览代码

add advanced settings for logicodev style

Noemi Vanyi 8 年前
父节点
当前提交
2e8ab34d76

+ 1
- 1
searx/static/themes/oscar/css/logicodev.min.css
文件差异内容过多而无法显示
查看文件


+ 70
- 0
searx/static/themes/oscar/less/logicodev/advanced.less 查看文件

@@ -0,0 +1,70 @@
1
+#advanced-search-container {
2
+    display:none;
3
+    text-align:left;
4
+    margin-bottom:1rem;
5
+
6
+    label, .input-group-addon {
7
+        font-size: 1.2rem;
8
+        font-weight:normal;
9
+        background-color: white;
10
+        border: @mild-gray 1px solid;
11
+        border-right: none;
12
+        color: @dark-gray;
13
+        padding-bottom: 0.4rem;
14
+        padding-top: 0.4rem;
15
+        padding-left: 0.5rem;
16
+        padding-right: 0.5rem;
17
+    }
18
+
19
+    label:last-child, .input-group-addon:last-child {
20
+        border-right: @mild-gray 1px solid;
21
+    }
22
+
23
+    input[type="radio"] {
24
+        display: none;
25
+    }
26
+
27
+    input[type="radio"]:checked + label{
28
+        color: @black;
29
+        font-weight:bold;
30
+        border-bottom: @light-green 5px solid;
31
+    }
32
+    select {
33
+        appearance: none;
34
+        -webkit-appearance: none;
35
+        -moz-appearance: none;
36
+        font-size: 1.2rem;
37
+        font-weight:normal;
38
+        background-color: white;
39
+        border: @mild-gray 1px solid;
40
+        color: @dark-gray;
41
+        padding-bottom: 0.4rem;
42
+        padding-top: 0.4rem;
43
+        padding-left: 1rem;
44
+        padding-right: 5rem;
45
+        margin-right: 0.5rem;
46
+        background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAQAAACR313BAAAABGdBTUEAALGPC/xhBQAAACBjSFJN
47
+AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAJcEhZ
48
+cwAABFkAAARZAVnbJUkAAAAHdElNRQfgBxgLDwB20OFsAAAAbElEQVQY073OsQ3CMAAEwJMYwJGn
49
+sAehpoXJItltBkmcdZBYgIIiQoLglnz3ui+eP+bk5uneteTMZJa6OJuIqvYzSJoqwqBq8gdmTTW8
50
+6/dghxAUq4xsVYT9laBYXCw93Aajh7GPEF23t4fkBYevGFTANkPRAAAAJXRFWHRkYXRlOmNyZWF0
51
+ZQAyMDE2LTA3LTI0VDExOjU1OjU4KzAyOjAwRFqFOQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNi0w
52
+Ny0yNFQxMToxNTowMCswMjowMP7RDgQAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb
53
+7jwaAAAAAElFTkSuQmCC) 96% no-repeat;
54
+    }
55
+}
56
+
57
+#check-advanced {
58
+    display: none;
59
+}
60
+
61
+#check-advanced:checked ~ #advanced-search-container {
62
+    display:block;
63
+}
64
+
65
+.advanced {
66
+    margin-top:1rem;
67
+    text-align:right;
68
+}
69
+
70
+

+ 2
- 0
searx/static/themes/oscar/less/logicodev/oscar.less 查看文件

@@ -12,6 +12,8 @@
12 12
 
13 13
 @import "search.less";
14 14
 
15
+@import "advanced.less";
16
+
15 17
 @import "cursor.less";
16 18
 
17 19
 @import "code.less";

+ 18
- 26
searx/static/themes/oscar/less/logicodev/search.less 查看文件

@@ -1,36 +1,28 @@
1 1
 .search_categories, #categories {
2
-  margin: 10px 0 4px 0;
3 2
   text-transform: capitalize;
4
-  
5
-  label{
6
-    border: none;
7
-    box-shadow: none;
8
-    font-size: 13px;
9
-    padding-bottom: 2px;
10
-    color: @gray;
11
-    margin-bottom: 5px;
12
-
13
-    &:hover{
14
-        color: @black;
15
-        background-color: transparent;
16
-    }
3
+  margin-bottom: 0.5rem;
17 4
 
18
-      &:active{
19
-        box-shadow: none;
20
-      }
5
+  label, .input-group-addon {
6
+    font-size: 1.2rem;
7
+    font-weight:normal;
8
+    background-color: white;
9
+    border: @mild-gray 1px solid;
10
+    border-right: none;
11
+    color: @dark-gray;
12
+    padding-bottom: 0.4rem;
13
+    padding-top: 0.4rem;
14
+    padding-left: 0.5rem;
15
+    padding-right: 0.5rem;
16
+  }
17
+  label:last-child, .input-group-addon:last-child {
18
+      border-right: @mild-gray 1px solid;
21 19
   }
22 20
 
23
-  .active, .btn-primary{
21
+  input[type="checkbox"]:checked + label {
24 22
     color: @black;
25
-    font-weight: 700;
26
-    border-bottom: 5px solid @light-green;
27
-    background-color: transparent;
23
+    font-weight:bold;
24
+    border-bottom: @light-green 5px solid;
28 25
   }
29
-
30
-}
31
-
32
-#categories{
33
-    margin: 0;
34 26
 }
35 27
 
36 28
 #main-logo{

+ 2
- 0
searx/static/themes/oscar/less/logicodev/variables.less 查看文件

@@ -2,6 +2,8 @@
2 2
 @gray: #A4A4A4;
3 3
 @dim-gray: #F6F9FA;
4 4
 @dark-gray: #666;
5
+@middle-gray: #F5F5F5;
6
+@mild-gray: #DDD;
5 7
 @blue: #0088CC; 
6 8
 @red: #F35E77;
7 9
 @violet: #684898;

+ 11
- 0
searx/templates/oscar/advanced.html 查看文件

@@ -0,0 +1,11 @@
1
+<div class="input-group col-sm-12 advanced">
2
+    <input type="checkbox" id="check-advanced">
3
+    <label for="check-advanced">
4
+        <span class="glyphicon glyphicon-cog"></span>
5
+        Advanced settings
6
+    </label>
7
+    <div id="advanced-search-container">
8
+        {% include 'oscar/categories.html' %}
9
+        {% include 'oscar/time-range.html' %}
10
+    </div>
11
+</div>

+ 10
- 38
searx/templates/oscar/categories.html 查看文件

@@ -1,42 +1,14 @@
1
-<!-- used if scripts are disabled -->
2
-<noscript>
3
-<div id="categories" class="btn-group btn-toggle">
1
+<div id="categories">
4 2
 {% if rtl %}
5
-{% for category in categories | reverse %}
6
-    <!--<div class="checkbox">-->
7
-        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}_nojs" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />
8
-        <label class="btn btn-sm btn-primary active label_hide_if_not_checked" for="checkbox_{{ category|replace(' ', '_') }}_nojs">{{ _(category) }}</label>
9
-        <label class="btn btn-sm btn-default label_hide_if_checked" for="checkbox_{{ category|replace(' ', '_') }}_nojs">{{ _(category) }}</label>
10
-    <!--</div>-->
11
-    {% if category in selected_categories %}<input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}_dis_activation" name="category_{{ category }}" value="off" checked="checked"/>{% endif %}
12
-{% endfor %}
3
+    {% for category in categories | reverse %}
4
+        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />
5
+        <label class="input-group-addon" for="checkbox_{{ category|replace(' ', '_') }}">{{ _(category) }}</label>
6
+        </label>
7
+    {% endfor %}
13 8
 {% else %}
14
-{% for category in categories %}
15
-    <!--<div class="checkbox">-->
16
-        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}_nojs" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />
17
-        <label class="btn btn-sm btn-primary active label_hide_if_not_checked" for="checkbox_{{ category|replace(' ', '_') }}_nojs">{{ _(category) }}</label>
18
-        <label class="btn btn-sm btn-default label_hide_if_checked" for="checkbox_{{ category|replace(' ', '_') }}_nojs">{{ _(category) }}</label>
19
-    <!--</div>-->
20
-    {% if category in selected_categories %}<input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}_dis_activation" name="category_{{ category }}" value="off" checked="checked"/>{% endif %}
21
-{% endfor %}
9
+    {% for category in categories %}
10
+        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />
11
+        <label class="input-group-addon" for="checkbox_{{ category|replace(' ', '_') }}">{{ _(category) }}</label>
12
+    {% endfor %}
22 13
 {% endif %}
23 14
 </div>
24
-</noscript>
25
-
26
-<div id="categories" class="btn-group btn-toggle hide_if_nojs" data-toggle="buttons">
27
-{% if rtl %}
28
-{% for category in categories | reverse %}
29
-	<label class="btn btn-sm {% if category in selected_categories %}btn-primary active{% else %}btn-default{% endif %}" data-btn-class="primary">
30
-        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />{{ _(category) }}
31
-    </label>
32
-{% endfor %}
33
-{% else %}
34
-{% for category in categories %}
35
-    <label class="btn btn-sm {% if category in selected_categories %}btn-primary active{% else %}btn-default{% endif %}" data-btn-class="primary">
36
-        <input class="hidden" type="checkbox" id="checkbox_{{ category|replace(' ', '_') }}" name="category_{{ category }}" {% if category in selected_categories %}checked="checked"{% endif %} />{{ _(category) }}
37
-    </label>
38
-{% endfor %}
39
-{% endif %}
40
-</div>
41
-
42
-

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

@@ -36,7 +36,7 @@
36 36
                         <label class="col-sm-3 col-md-2">{{ _('Default categories') }}</label>
37 37
                         {% else %}
38 38
                         <label class="col-sm-3 col-md-2">{{ _('Default categories') }}</label>
39
-                        <div class="col-sm-11 col-md-10">
39
+                        <div class="col-sm-11 col-md-10 search-categories">
40 40
                             {% include 'oscar/categories.html' %}
41 41
                         </div>
42 42
                         {% endif %}

+ 7
- 2
searx/templates/oscar/results.html 查看文件

@@ -1,6 +1,6 @@
1 1
 {% extends "oscar/base.html" %}
2 2
 {% block title %}{{ q }} - {% endblock %}
3
-{% block meta %}<link rel="alternate" type="application/rss+xml" title="Searx search: {{ q }}" href="{{ url_for('index') }}?q={{ q|urlencode }}&amp;format=rss&amp;{% for category in selected_categories %}category_{{ category }}=1&amp;{% endfor %}pageno={{ pageno }}">{% endblock %}
3
+{% block meta %}<link rel="alternate" type="application/rss+xml" title="Searx search: {{ q }}" href="{{ url_for('index') }}?q={{ q|urlencode }}&amp;format=rss&amp;{% for category in selected_categories %}category_{{ category }}=1&amp;{% endfor %}pageno={{ pageno }}&amp;time_range={{ time_range }}">{% endblock %}
4 4
 {% block content %}
5 5
     <div class="row">
6 6
         <div class="col-sm-8" id="main_results">
@@ -41,6 +41,7 @@
41 41
                         {% for category in selected_categories %}<input type="hidden" name="category_{{ category }}" value="1"/>{% endfor %}
42 42
                         <input type="hidden" name="q" value="{{ q }}" />
43 43
                         <input type="hidden" name="pageno" value="{{ pageno+1 }}" />
44
+                        <input type="hidden" name="time_range" value="{{ time_range }}" />
44 45
                         <button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-backward"></span> {{ _('next page') }}</button>
45 46
                     </form>
46 47
                 </div>
@@ -48,6 +49,7 @@
48 49
                     <form method="{{ method or 'POST' }}" action="{{ url_for('index') }}"  class="pull-left">
49 50
                         {% for category in selected_categories %}<input type="hidden" name="category_{{ category }}" value="1"/>{% endfor %}
50 51
                         <input type="hidden" name="pageno" value="{{ pageno-1 }}" />
52
+                        <input type="hidden" name="time_range" value="{{ time_range }}" />
51 53
                         <button type="submit" class="btn btn-default" {% if pageno == 1 %}disabled{% endif %}><span class="glyphicon glyphicon-forward"></span> {{ _('previous page') }}</button>
52 54
                     </form>
53 55
                 </div>
@@ -60,6 +62,7 @@
60 62
                         <input type="hidden" name="q" value="{{ q }}" />
61 63
                         {% for category in selected_categories %}<input type="hidden" name="category_{{ category }}" value="1"/>{% endfor %}
62 64
                         <input type="hidden" name="pageno" value="{{ pageno-1 }}" />
65
+                        <input type="hidden" name="time_range" value="{{ time_range }}" />
63 66
                         <button type="submit" class="btn btn-default" {% if pageno == 1 %}disabled{% endif %}><span class="glyphicon glyphicon-backward"></span> {{ _('previous page') }}</button>
64 67
                     </form>
65 68
                 </div>
@@ -68,6 +71,7 @@
68 71
                         {% for category in selected_categories %}<input type="hidden" name="category_{{ category }}" value="1"/>{% endfor %}
69 72
                         <input type="hidden" name="q" value="{{ q }}" />
70 73
                         <input type="hidden" name="pageno" value="{{ pageno+1 }}" />
74
+                        <input type="hidden" name="time_range" value="{{ time_range }}" />
71 75
                         <button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-forward"></span> {{ _('next page') }}</button>
72 76
                     </form>
73 77
                 </div>
@@ -118,7 +122,7 @@
118 122
                     <form role="form">
119 123
                         <div class="form-group">
120 124
                             <label for="search_url">{{ _('Search URL') }}</label>
121
-                            <input id="search_url" type="url" class="form-control select-all-on-click cursor-text" name="search_url" value="{{ base_url }}?q={{ q|urlencode }}{% if selected_categories %}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}{% endif %}{% if pageno > 1 %}&amp;pageno={{ pageno }}{% endif %}" readonly>
125
+                            <input id="search_url" type="url" class="form-control select-all-on-click cursor-text" name="search_url" value="{{ base_url }}?q={{ q|urlencode }}{% if selected_categories %}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}{% endif %}{% if pageno > 1 %}&amp;pageno={{ pageno }}{% endif %}{% if time_range %}&amp;time_range={{ time_range }}{% endif %}" readonly>
122 126
                         </div>
123 127
                     </form>
124 128
 
@@ -130,6 +134,7 @@
130 134
                         <input type="hidden" name="format" value="{{ output_type }}">
131 135
                         {% for category in selected_categories %}<input type="hidden" name="category_{{ category }}" value="1">{% endfor %}
132 136
                         <input type="hidden" name="pageno" value="{{ pageno }}">
137
+                        <input type="hidden" name="time_range" value="{{ time_range }}" />
133 138
                         <button type="submit" class="btn btn-default">{{ output_type }}</button>
134 139
                     </form>
135 140
                     {% endfor %}

+ 1
- 3
searx/templates/oscar/search.html 查看文件

@@ -6,7 +6,5 @@
6 6
             <button type="submit" class="btn btn-default"><span class="hide_if_nojs">{{ icon('search') }}</span><span class="hidden active_if_nojs">{{ _('Start search') }}</span></button>
7 7
         </span>
8 8
     </div>
9
-    <div class="search_categories">
10
-            {% include 'oscar/categories.html' %}
11
-    </div><!-- / #search_categories -->
9
+    {% include 'oscar/advanced.html' %}
12 10
 </form><!-- / #search_form_full -->

+ 3
- 6
searx/templates/oscar/search_full.html 查看文件

@@ -11,11 +11,8 @@
11 11
             <button type="submit" class="btn btn-default input-lg"><span class="hide_if_nojs">{{ icon('search') }}</span><span class="hidden active_if_nojs">{{ _('Start search') }}</span></button>
12 12
         </span>
13 13
     </div>
14
+    <div class="input-group col-md-8 col-md-offset-2">
15
+        {% include 'oscar/advanced.html' %}
16
+    </div>
14 17
 
15
-    <button type="button" class="btn btn-link btn-collapse center-block collapsed hide_if_nojs" data-toggle="collapse" data-target="#search_categories" data-btn-text-collapsed="{{ _('Show search filters') }}" data-btn-text-not-collapsed="{{ _('Hide search filters') }}">{{ _('Show search filters') }}</button>
16
-    <div class="row collapse active_if_nojs margin_top_if_nojs" id="search_categories">
17
-        <div class="col-md-12 text-center">
18
-            {% include 'oscar/categories.html' %}
19
-        </div>
20
-    </div><!-- / #search_categories -->
21 18
 </form><!-- / #search_form_full -->

+ 11
- 0
searx/templates/oscar/time-range.html 查看文件

@@ -0,0 +1,11 @@
1
+<!-- Time range -->
2
+<div class="input-group">
3
+    <input type="radio" id="time-range-anytime" name="time_range" value="" {{ "checked" if time_range=="" or not time_range  else ""}}>
4
+    <label for="time-range-anytime" class="input-group-addon">Anytime</label>
5
+    <input type="radio" id="time-range-day" name="time_range" value="day" {{ "checked" if time_range=="day" else ""}}>
6
+    <label for="time-range-day" class="input-group-addon">Last day</label>
7
+    <input type="radio" id="time-range-week" name="time_range" value="week" {{ "checked" if time_range=="week" else ""}}>
8
+    <label for="time-range-week" class="input-group-addon">Last week</label>
9
+    <input type="radio" id="time-range-month" name="time_range" value="month" {{ "checked" if time_range=="month" else ""}}>
10
+    <label for="time-range-month" class="input-group-addon">Last month</label>
11
+</div>