From cf8f444e8597bf527ef4bfc691b6d45d5704f77f Mon Sep 17 00:00:00 2001 From: pw3t Date: Sun, 12 Jan 2014 18:31:57 +0100 Subject: [PATCH 1/7] [ehn] Add a 'featured result feature'm putting on top of the reasults ddg definitions and wikipedia (ugly html / css) [ehn] Add a templates for videos, so the thumbnails all have the same side --- searx/engines/vimeo.py | 10 +++++++--- searx/engines/youtube.py | 11 +++++++++-- searx/static/css/style.css | 8 ++++++++ searx/templates/result_templates/videos.html | 7 +++++++ searx/templates/results.html | 15 +++++++++++++++ searx/webapp.py | 8 +++++++- 6 files changed, 53 insertions(+), 6 deletions(-) create mode 100644 searx/templates/result_templates/videos.html diff --git a/searx/engines/vimeo.py b/searx/engines/vimeo.py index 52c89ffd..35bc3d50 100644 --- a/searx/engines/vimeo.py +++ b/searx/engines/vimeo.py @@ -35,7 +35,11 @@ def response(resp): for result in dom.xpath(results_xpath): url = base_url + result.xpath(url_xpath)[0] title = p.unescape(extract_text(result.xpath(title_xpath))) - content = ' '.format(url, title, extract_text(result.xpath(content_xpath)[0])) - results.append({'url': url, 'title': title, 'content': content}) - + thumbnail = extract_text(result.xpath(content_xpath)[0]) + content = ' '.format(url, title, thumbnail) + results.append({'url': url + , 'title': title + , 'content': content + , 'template':'videos.html' + , 'thumbnail': thumbnail}) return results diff --git a/searx/engines/youtube.py b/searx/engines/youtube.py index 1331f480..cefdb653 100644 --- a/searx/engines/youtube.py +++ b/searx/engines/youtube.py @@ -26,14 +26,21 @@ def response(resp): url = url[:-1] title = result['title']['$t'] content = '' + + thumbnail = '' if len(result['media$group']['media$thumbnail']): - content += ''.format(url, result['media$group']['media$thumbnail'][0]['url']) + thumbnail = result['media$group']['media$thumbnail'][0]['url'] + content += ''.format(url, thumbnail) if len(content): content += '
' + result['content']['$t'] else: content = result['content']['$t'] - results.append({'url': url, 'title': title, 'content': content}) + results.append({'url': url + , 'title': title + , 'content': content + , 'template':'videos.html' + , 'thumbnail':thumbnail}) return results diff --git a/searx/static/css/style.css b/searx/static/css/style.css index 2e6f450e..90db60d6 100644 --- a/searx/static/css/style.css +++ b/searx/static/css/style.css @@ -70,6 +70,7 @@ a { text-decoration: none; color: #1a11be; } a:visited { color: #7b11be; } .result { margin: 19px 0 18px 0; padding: 0; max-width: 55em; clear: both; } +.result:hover { background: #e8e7e6; } .result_title { margin-bottom: 0; } .result h3 { font-size: 1em; word-wrap:break-word; margin: 5px 0 1px 0; padding: 0 } .result .content { font-size: 0.8em; margin: 0; padding: 0; max-width: 54em; word-wrap:break-word; line-height: 1.24; } @@ -143,6 +144,13 @@ tr:hover td { background: #DDDDDD; } #result_count { font-size: 0.8em; margin: 2px 0 2px 0; padding: 0 } +#fr { padding: 2px 6px; +display: inline-block; +background: #ECF0F1; +border-radius: 4px; +border: 1px solid #3498DB;; +width:55em;} + #suggestions { position: absolute; left: 54em; width: 12em; margin: 0 2px 5px 5px; padding: 0 2px 2px 2px; } #suggestions span { display: block; font-size: 0.8em; margin: 0 2px 10px 2px; padding: 0; } #suggestions form { display: block; } diff --git a/searx/templates/result_templates/videos.html b/searx/templates/result_templates/videos.html new file mode 100644 index 00000000..97c966e4 --- /dev/null +++ b/searx/templates/result_templates/videos.html @@ -0,0 +1,7 @@ +
+

+

{{ result.title|safe }}

+  {{ result.title }} +

{{ result.url }}

+

+
diff --git a/searx/templates/results.html b/searx/templates/results.html index 4ca36c65..411f84c6 100644 --- a/searx/templates/results.html +++ b/searx/templates/results.html @@ -9,9 +9,24 @@ {% if suggestions %}
Suggestions: {% for suggestion in suggestions %}
{% endfor %}
{% endif %} + +
Number of results: {{ number_of_results }}
+ {% if featured_results %} +
+ + {% for result in featured_results %} + {% if result['template'] %} + {% include 'result_templates/'+result['template'] %} + {% else %} + {% include 'result_templates/default.html' %} + {% endif %} + {% endfor %} +
+ {% endif %} + {% for result in results %} {% if result['template'] %} {% include 'result_templates/'+result['template'] %} diff --git a/searx/webapp.py b/searx/webapp.py index 48448eb2..72395709 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -125,6 +125,7 @@ def index(): results, suggestions = search(query, request, selected_engines) + featured_results = [] for result in results: if request_data.get('format', 'html') == 'html': if 'content' in result: @@ -139,6 +140,10 @@ def index(): else: result['pretty_url'] = result['url'] + if 'wikipedia' in result['engines'] or 'ddg definitions' in result['engines']: + featured_results.append(result) + results.remove(result) + if request_data.get('format') == 'json': return Response(json.dumps({'query': query, 'results': results}), mimetype='application/json') elif request_data.get('format') == 'csv': @@ -167,7 +172,8 @@ def index(): ,results=results ,q=request_data['q'] ,selected_categories=selected_categories - ,number_of_results=len(results) + ,number_of_results=len(results)+len(featured_results) + ,featured_results=featured_results ,suggestions=suggestions ) From fdb6fac214c2fb5bdc6c27492bc45c6694483fb4 Mon Sep 17 00:00:00 2001 From: pw3t Date: Mon, 13 Jan 2014 22:24:05 +0100 Subject: [PATCH 2/7] [ehn] Add possibility to add icon in results (more ugly html / css, need fix) --- searx/static/img/icon_wikipedia.png | Bin 0 -> 14858 bytes searx/templates/result_templates/default.html | 11 ++++++++++- .../result_templates/featured_results.html | 10 ++++++++++ searx/templates/results.html | 11 +---------- searx/webapp.py | 11 ++++++++--- 5 files changed, 29 insertions(+), 14 deletions(-) create mode 100644 searx/static/img/icon_wikipedia.png create mode 100644 searx/templates/result_templates/featured_results.html diff --git a/searx/static/img/icon_wikipedia.png b/searx/static/img/icon_wikipedia.png new file mode 100644 index 0000000000000000000000000000000000000000..911fa76f62f60c73c8ab85f7a3b80040642e61d5 GIT binary patch literal 14858 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 -

{{ result.title|safe }}

+ + {% if result['favicon'] %} +
+ {{result['favicon']}}.png +
+ {% endif %} + +
+

{{ result.title|safe }}


{% if result.content %}{{ result.content|safe }}
{% endif %}

{{ result.pretty_url }}

+
diff --git a/searx/templates/result_templates/featured_results.html b/searx/templates/result_templates/featured_results.html new file mode 100644 index 00000000..4aeddfe2 --- /dev/null +++ b/searx/templates/result_templates/featured_results.html @@ -0,0 +1,10 @@ +
+ {% for result in featured_results %} + + {% if result['template'] %} + {% include 'result_templates/'+result['template'] %} + {% else %} + {% include 'result_templates/default.html' %} + {% endif %} + {% endfor %} +
diff --git a/searx/templates/results.html b/searx/templates/results.html index 411f84c6..b35416ff 100644 --- a/searx/templates/results.html +++ b/searx/templates/results.html @@ -15,16 +15,7 @@ Number of results: {{ number_of_results }} {% if featured_results %} -
- - {% for result in featured_results %} - {% if result['template'] %} - {% include 'result_templates/'+result['template'] %} - {% else %} - {% include 'result_templates/default.html' %} - {% endif %} - {% endfor %} -
+ {% include 'result_templates/featured_results.html' %} {% endif %} {% for result in results %} diff --git a/searx/webapp.py b/searx/webapp.py index 72395709..5fc981a8 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -140,9 +140,14 @@ def index(): else: result['pretty_url'] = result['url'] - if 'wikipedia' in result['engines'] or 'ddg definitions' in result['engines']: - featured_results.append(result) - results.remove(result) + for engine in result['engines']: + if engine in ['wikipedia']: + result['favicon'] = engine + featured_results.append(result) + results.remove(result) + elif engine in ['ddg definitions']: + featured_results.append(result) + results.remove(result) if request_data.get('format') == 'json': return Response(json.dumps({'query': query, 'results': results}), mimetype='application/json') From a8ec7fe6a4ad86a8eea4aa6be441984bc5ef7e5a Mon Sep 17 00:00:00 2001 From: pw3t Date: Wed, 15 Jan 2014 22:25:10 +0100 Subject: [PATCH 3/7] [ehn] add favicons for vimeo, soundcloud, twitter and youtube --- searx/engines/mediawiki.py | 8 ++++++++ searx/static/img/icon_soundcloud.png | Bin 0 -> 1150 bytes searx/static/img/icon_twitter.png | Bin 0 -> 1150 bytes searx/static/img/icon_vimeo.png | Bin 0 -> 6518 bytes searx/static/img/icon_youtube.png | Bin 0 -> 1150 bytes searx/templates/result_templates/default.html | 2 +- searx/templates/result_templates/videos.html | 8 ++++++++ searx/webapp.py | 8 +++----- 8 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 searx/static/img/icon_soundcloud.png create mode 100644 searx/static/img/icon_twitter.png create mode 100644 searx/static/img/icon_vimeo.png create mode 100644 searx/static/img/icon_youtube.png diff --git a/searx/engines/mediawiki.py b/searx/engines/mediawiki.py index d4b3fd84..19b4406b 100644 --- a/searx/engines/mediawiki.py +++ b/searx/engines/mediawiki.py @@ -14,5 +14,13 @@ def request(query, params): def response(resp): search_results = loads(resp.text) res = search_results.get('query', {}).get('search', []) + return [{'url': url + 'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8')), 'title': result['title']} for result in res[:int(number_of_results)]] + + if not len(res): + return results + for result in res[:int(number_of_results)]: + results.append({'url': url + 'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8')), 'title': result['title'], 'favicon':'wikipedia'}) + return results + diff --git a/searx/static/img/icon_soundcloud.png b/searx/static/img/icon_soundcloud.png new file mode 100644 index 0000000000000000000000000000000000000000..4130bea1b97673078f1fc9b79fd7c829678b3a19 GIT binary patch literal 1150 zcmb7^O=uHA9K}ac5h{dIp;A9EN&+cHiWIz9pn$P(9u%|L-I>|vo7s)2(Mxvu?c4d!dow$;%L=iKXIq=# zH6aeQ2+<*gNE4P=3F{Qm$G%l7LrmKqS?m#6d?jcSlQG$HtRHCU4Vog>ADH>dA{$`E zPSU3%6m=<*?HaW@z08=bp>?+=ib&#z?DEiRaj8pT-TD;7n6|_R6yp1QbPjpgd)C9I z{Z$MWTqH*vY(M5;$9N^=xPxtntMs~v4@hRiG1`YDu0K?`@mOK*ou>Mjd&~AC4?ija z8jlAhh4w)&$}4n?NX)#_n0g}d;=Q7JREepX|L4tkYY(^(qvjbj)=+bIByK*HnE$A# z9@Vs&cmAFK!xxRtgZ2FSqY~?mcsO&{$HJn*?O7l5pCoS0didFp&);*=d)~2ryMFHf z#?u;!Qxb`j9=7DF7@zjA@L6H{IrG)}{3Wg_apD(!uJzmfXFfGS@*2r=lK4pGT=W#H z$V^o5jO%$_*0}#tvgX)6<4NVY_xAk*T^EB0jjp0Xx+sw@_()%HBdVbmJlkhHCR592 zE(4ay02zzM=1Ypm1{C{s7Z+ oIK)0n6KXQULNNCiZ?q7ji~Ki?k<}z-{}c7ga^7wr?C&Z426T_eApigX literal 0 HcmV?d00001 diff --git a/searx/static/img/icon_twitter.png b/searx/static/img/icon_twitter.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a71699a727c7642612dfa116c748df3c530fe1 GIT binary patch literal 1150 zcmd5)O-lk%6un{KMi>_n?QH2z|AEpUs8vFnq*c3Gwi4VWK~P9g#F)@V5VDO#m`Wj1 zi6iuZF_nfwAvhW{l=i{vUUYJrrd$QR;mo~r?>*-o-Wz}ce5_W$_bAK`0t^Fy9f2jR zbm|xYu%};)G5ANYpck74Bbb{J{XCj*#{Sw6yiXUtu!>fR54lA4 zHxysAN(TX8VhETN?Lj%6j=#4XuHQ7e+FZMypOP~Zhgv@6j|r#P)iCrxe7TzR)b|{s zo~wS72F}r$7-?9PGhaxGak4sZ6qRee>dpf4>0kNuQHi@wj#q#YkM5It&HKEw zvi;RVDGcl(%E?Mi7}N4|k@4L-f%j@_lpk$43b`P#!WuBr&uqC<$yHmqQs8H_v+ADO z8s${K$u7?qQ$D|{Pqm-s_58p820X(Kni$hAfR+uQ$pMtj9i+Q4YXT@CSgFVP0GFBa AX8-^I literal 0 HcmV?d00001 diff --git a/searx/static/img/icon_vimeo.png b/searx/static/img/icon_vimeo.png new file mode 100644 index 0000000000000000000000000000000000000000..4fe4336daf5ccc254f20c869e8ed95a6691027c6 GIT binary patch literal 6518 zcmeHL%We}f6djP*vtUiKp)HNrv17v)1Z)u>fcOC51KocJo6?a?Z%cjLfJQ4UwBJNsPR^)u&3Q>(#@xFZavYFi*W&T7vCLwe)EiJFWXW zakYKXxbf&j_OqR4Xzj+6Y<1??P`Pa{O1(G2WrGF?T-K!vHes>IE&wy529X z2Y=Ajn6SRJcq8{q|KJVSbfa%A!#HLSUDOHc1&z5w4h-ZFJ#aDZFg^0@*8h|91Kaw& z(y8C^LEG;8;D4Lro-CW^qyxMH$PV^+24E+1F;YjSeEaM zj2YSb-;5dajhHsJ!4g~l7c$3r`Y&R|V$`OOZWDVqT}W8rDdWgb))50 z&-oKMbX>eV4rLObdhm%cF%TEmF=t%Lq!<5MU;Ckr&mqLEeOL@RPVt*AT($Qo{_J$p zZ1e3z_W8l_oHrXw;pRNYWBrjol{;+ABYJ+_+B*!5xeIx0J+SY?*|Wk|;K%#Z`I1w{ zBPTK!Ok5)#^qtlR9X1&6beh@v{3V0m+k1aLACE(@>Daw7JwNNuF9q?6CaaGP4~{SR z3mzvYhF~q=&BtZ_Tkmcag$(4ViPhONIS*p5YSm)!9MON+>spYy>oooEmmpwdf_hk) zIc|9nPKAFNYu-ISdfzxE_WHwzG_aPr1k{g?Aq7n>Mt=`H!`Y1#n>UH!iNDS_*7{6Z^CoM$!(nz1F?lYV)7gKBhaZb6MJ&XO{V!low#UF81OE>LzW~o~MkW9N literal 0 HcmV?d00001 diff --git a/searx/static/img/icon_youtube.png b/searx/static/img/icon_youtube.png new file mode 100644 index 0000000000000000000000000000000000000000..977887dbbb8407afcc5c1a9c42109560826fd1a7 GIT binary patch literal 1150 zcmd7Rze@sP7zglI=*Qhzc5100Qe%q{^bhneL~GE{($>;H5CqpyK|^7Q4Vps{I7vg0 z1`S5HR0u&hpSXxFaUgvAo_FY-5|NYd@p<3(p6B}vH=GbYKB_9XFNvKAAtFMEWnzgH zyUs(bu^0B+toLzP((I{BS<)Tg`I}Ey?tu3xDR8C{Mx@Ds3!UI~j!9_~(#-xqeK2Ru zUNwlhzHl^yO63*n8;6)y_Sj2%`mSt4p1bZ4+!o?FRIAmlqvJcM^Sk`MlqcilIeW{x zS0sLeTCLVoD(OhBoDAixIYliDi6#m#45O!BuOoH&F_g1siycKRvey?&6wzw6y4vkF z(wQ%WV)vemlkX_OhX%ndw)hCsG|_B+V{7}(({tzS*|M$#%gpqt(I@2c29m2Up1M2Z m+;xBOStE={^M@)jg?6m~ literal 0 HcmV?d00001 diff --git a/searx/templates/result_templates/default.html b/searx/templates/result_templates/default.html index 3f2d0f36..14f52736 100644 --- a/searx/templates/result_templates/default.html +++ b/searx/templates/result_templates/default.html @@ -2,7 +2,7 @@ {% if result['favicon'] %}
- {{result['favicon']}}.png + {{result['favicon']}}.png
{% endif %} diff --git a/searx/templates/result_templates/videos.html b/searx/templates/result_templates/videos.html index 97c966e4..524c9911 100644 --- a/searx/templates/result_templates/videos.html +++ b/searx/templates/result_templates/videos.html @@ -1,4 +1,12 @@
+ + {% if result['favicon'] %} +
+ {{result['favicon']}}.png +
+ {% endif %} + +

{{ result.title|safe }}

 {{ result.title }} diff --git a/searx/webapp.py b/searx/webapp.py index 5fc981a8..b26e868f 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -141,11 +141,9 @@ def index(): result['pretty_url'] = result['url'] for engine in result['engines']: - if engine in ['wikipedia']: - result['favicon'] = engine - featured_results.append(result) - results.remove(result) - elif engine in ['ddg definitions']: + if engine in ['wikipedia', 'youtube', 'vimeo', 'soundcloud', 'twitter']: + result['favicon'] = engine + if engine in ['wikipedia', 'ddg definitions']: featured_results.append(result) results.remove(result) From d43bd05582c189d8696d58e22c160399ed0b811d Mon Sep 17 00:00:00 2001 From: pw3t Date: Sun, 12 Jan 2014 18:31:57 +0100 Subject: [PATCH 4/7] [ehn] Add a 'featured result feature'm putting on top of the reasults ddg definitions and wikipedia (ugly html / css) [ehn] Add a templates for videos, so the thumbnails all have the same side --- searx/templates/result_templates/videos.html | 4 +--- searx/webapp.py | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/searx/templates/result_templates/videos.html b/searx/templates/result_templates/videos.html index 524c9911..ae6d8f16 100644 --- a/searx/templates/result_templates/videos.html +++ b/searx/templates/result_templates/videos.html @@ -1,12 +1,10 @@
- {% if result['favicon'] %}
- {{result['favicon']}}.png + {{result['favicon']}}.ico
{% endif %} -

{{ result.title|safe }}

 {{ result.title }} diff --git a/searx/webapp.py b/searx/webapp.py index b26e868f..43bef7db 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -141,7 +141,7 @@ def index(): result['pretty_url'] = result['url'] for engine in result['engines']: - if engine in ['wikipedia', 'youtube', 'vimeo', 'soundcloud', 'twitter']: + if engine in ['wikipedia', 'youtube', 'vimeo', 'soundcloud', 'twitter', 'stackoverflow']: result['favicon'] = engine if engine in ['wikipedia', 'ddg definitions']: featured_results.append(result) From 91057682b5f813200ffd887fcb0747aa344dfa0e Mon Sep 17 00:00:00 2001 From: pw3t Date: Mon, 13 Jan 2014 22:24:05 +0100 Subject: [PATCH 5/7] [ehn] Add possibility to add icon in results (more ugly html / css, need fix) --- searx/templates/result_templates/default.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/searx/templates/result_templates/default.html b/searx/templates/result_templates/default.html index 14f52736..ab6d469b 100644 --- a/searx/templates/result_templates/default.html +++ b/searx/templates/result_templates/default.html @@ -2,7 +2,7 @@ {% if result['favicon'] %}
- {{result['favicon']}}.png + {{result['favicon']}}.ico
{% endif %} From dd1baa6d5894c814625cdf19e71b797ab6354d9c Mon Sep 17 00:00:00 2001 From: pw3t Date: Thu, 16 Jan 2014 21:58:18 +0100 Subject: [PATCH 6/7] [fix] replace the png icons by ico's, minor chnage in the html --- searx/static/img/icon_github.ico | Bin 0 -> 6518 bytes .../{icon_soundcloud.png => icon_soundcloud.ico} | Bin searx/static/img/icon_stackoverflow.ico | Bin 0 -> 1150 bytes .../img/{icon_twitter.png => icon_twitter.ico} | Bin .../img/{icon_vimeo.png => icon_vimeo.ico} | Bin .../{icon_wikipedia.png => icon_wikipedia.ico} | Bin .../img/{icon_youtube.png => icon_youtube.ico} | Bin searx/webapp.py | 2 +- 8 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 searx/static/img/icon_github.ico rename searx/static/img/{icon_soundcloud.png => icon_soundcloud.ico} (100%) create mode 100644 searx/static/img/icon_stackoverflow.ico rename searx/static/img/{icon_twitter.png => icon_twitter.ico} (100%) rename searx/static/img/{icon_vimeo.png => icon_vimeo.ico} (100%) rename searx/static/img/{icon_wikipedia.png => icon_wikipedia.ico} (100%) rename searx/static/img/{icon_youtube.png => icon_youtube.ico} (100%) diff --git a/searx/static/img/icon_github.ico b/searx/static/img/icon_github.ico new file mode 100644 index 0000000000000000000000000000000000000000..133f0ca35428bf551b9e37376997c1b681f44cad GIT binary patch literal 6518 zcmeH~KWrRD6vp>1XB|TKf7ixoz@b1XKnf)MM_{F(LQo?`fG`NCCGT zi=t9gj#{mVelFTQ6-C!YQ8YJ~jgu(4AKz|#q>$0|(?t>fVZU}eelCvVFB*+T$8wv^ zX1m=^KEnT$`SSWCNnVTNWP^5!_)eEIJ3W2XrW*V&JAco_zXI+zgsw(UrTbr<*cs#K zbdnEz5ZyNvo0@80U$55>G#bqnIIguEo@HOF)k^h^gJ*eFaq{*w>&;Ef^QBVhRJmN< zq@9K5Hp5q|)p>j;4QoBM-Vnz#Zzaj}CfE(8>0+(czSD4FU$3|C;5mLaJT<&Y``(Qo z2r=Q9=eW=1{{Y`vjhTbr$t{QZIpZ>zKZFsMb}qvo&&kbop>;gNp98<1+2@(dUAX|~ zr2cEb{FPzWSy%7KR?~ZOsktT^^Oi5H-jj_xozCkSs78OKBha{{v2rZm-Z4B&@@WlH z!!4w}L~M<9_MMvM2;adaP|&LsdD- z1#^%*?T_vLO03Dp;QPg|S@vmohWGdt^SNM8!tpo>=^pJR4l(qN;u${nTxMU6zG1{A z&LOgCI6KEy4a=GM8FTq8x{tu~JV{p!;t8MMIMg#2tKuGn&HS_Etr?E}{`8RizHpI# zR>K;A**?%eg9^|0xoK0!Ckly^wm>Z}Fo*Zz3eUG5L#G+)^B?$f(mF8hd1afG}!mNxOXZR~sI z`Wqy+tkV%?eOg6ap4)6`6Z_i6zUTcs&HR*rCQSXzDZ-euxIksp< zATDv{=p1DaEQfxLIr|^|xAeu8ry*_5%O~< z{tuTG3)ihUjL-Md^xV{Q*vDn_-VS6rRd^Q2Innher`b>6@{L|mlTGY&7CWI_aOpi= z99wyl!(Ll9m^K{8d@f`5NAf-`{a^26!)#$PY~TLIcT8HLepbWY?Pv|F#p2>ddvBh$ z`H1iTFKWoN_nS^pPYpMczixGp+lxz_MVeu(duGOmz+T#}zObynL*bqXwTi~wxrmqH yx;Sbb%0+kia-X@V4)%5e-vW1*CBNTP6METxOqP_R+#;??Y%&9r8JNs~X5er7V8d(x literal 0 HcmV?d00001 diff --git a/searx/static/img/icon_soundcloud.png b/searx/static/img/icon_soundcloud.ico similarity index 100% rename from searx/static/img/icon_soundcloud.png rename to searx/static/img/icon_soundcloud.ico diff --git a/searx/static/img/icon_stackoverflow.ico b/searx/static/img/icon_stackoverflow.ico new file mode 100644 index 0000000000000000000000000000000000000000..b2242bc6cb1943b1954bf72b3875091bc9aa9f29 GIT binary patch literal 1150 zcmZQzU<5(|0R|wcz>vYhz#zuJz@P!dKp~(AL>x$gfiO1%0|+C7oSfYMDmJtL@lGJV2gLvFE7t#aEMNQIsciLsm-3Z%F!kuPZN&yH$BMQ8Vc4mB z^&8i+l?R;5SGQVMZw}FFJ{lz2dnXcIAB+#QhtsKIO|eVasz4yt2I}De$w~CwLnfddDnNa0tkd3nW}Eu@KM=oWnen=rx96pRdhSyn{p2Tq^irNQV$;tu?JXxz z{Z**Gmu%Bs*8ug3gVbuLKQRO9`=OHt#xB_OgT#P(bAY&xb=qrDm>S)bCrY}hPo4tx z{s-a+m^d-CUh)%uozy3%p?a%{(F0Qh)XN0aw-%~*AxxYY8t7M$-pNqC2Y@s?y1oWR y28IU45Bul;WMG)U3BmJ$Vh?~S!MK@$;UAFy0fZG97=9f7|NnnG5c31YffxX05k>?6 literal 0 HcmV?d00001 diff --git a/searx/static/img/icon_twitter.png b/searx/static/img/icon_twitter.ico similarity index 100% rename from searx/static/img/icon_twitter.png rename to searx/static/img/icon_twitter.ico diff --git a/searx/static/img/icon_vimeo.png b/searx/static/img/icon_vimeo.ico similarity index 100% rename from searx/static/img/icon_vimeo.png rename to searx/static/img/icon_vimeo.ico diff --git a/searx/static/img/icon_wikipedia.png b/searx/static/img/icon_wikipedia.ico similarity index 100% rename from searx/static/img/icon_wikipedia.png rename to searx/static/img/icon_wikipedia.ico diff --git a/searx/static/img/icon_youtube.png b/searx/static/img/icon_youtube.ico similarity index 100% rename from searx/static/img/icon_youtube.png rename to searx/static/img/icon_youtube.ico diff --git a/searx/webapp.py b/searx/webapp.py index 43bef7db..6bd4e609 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -141,7 +141,7 @@ def index(): result['pretty_url'] = result['url'] for engine in result['engines']: - if engine in ['wikipedia', 'youtube', 'vimeo', 'soundcloud', 'twitter', 'stackoverflow']: + if engine in ['wikipedia', 'youtube', 'vimeo', 'soundcloud', 'twitter', 'stackoverflow', 'github']: result['favicon'] = engine if engine in ['wikipedia', 'ddg definitions']: featured_results.append(result) From 380b440a55ba3b8ec1430843226fa6b4b0dfe289 Mon Sep 17 00:00:00 2001 From: pw3t Date: Thu, 16 Jan 2014 21:58:18 +0100 Subject: [PATCH 7/7] [fix] replace the png icons by ico's, minor chnage in the html --- searx/engines/mediawiki.py | 6 ------ searx/static/css/style.css | 7 ------- searx/templates/result_templates/featured_results.html | 10 ---------- searx/templates/results.html | 3 --- searx/webapp.py | 3 --- 5 files changed, 29 deletions(-) delete mode 100644 searx/templates/result_templates/featured_results.html diff --git a/searx/engines/mediawiki.py b/searx/engines/mediawiki.py index 19b4406b..00ad0f10 100644 --- a/searx/engines/mediawiki.py +++ b/searx/engines/mediawiki.py @@ -18,9 +18,3 @@ def response(resp): return [{'url': url + 'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8')), 'title': result['title']} for result in res[:int(number_of_results)]] - if not len(res): - return results - for result in res[:int(number_of_results)]: - results.append({'url': url + 'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8')), 'title': result['title'], 'favicon':'wikipedia'}) - return results - diff --git a/searx/static/css/style.css b/searx/static/css/style.css index 868f2f81..83d28180 100644 --- a/searx/static/css/style.css +++ b/searx/static/css/style.css @@ -151,13 +151,6 @@ tr:hover td { background: #DDDDDD; } #result_count { font-size: 0.8em; margin: 2px 0 2px 0; padding: 0 } -#fr { padding: 2px 6px; -display: inline-block; -background: #ECF0F1; -border-radius: 4px; -border: 1px solid #3498DB;; -width:55em;} - #suggestions { position: absolute; left: 54em; width: 12em; margin: 0 2px 5px 5px; padding: 0 2px 2px 2px; } #suggestions span { display: block; font-size: 0.8em; margin: 0 2px 10px 2px; padding: 0; } #suggestions form { display: block; } diff --git a/searx/templates/result_templates/featured_results.html b/searx/templates/result_templates/featured_results.html deleted file mode 100644 index 4aeddfe2..00000000 --- a/searx/templates/result_templates/featured_results.html +++ /dev/null @@ -1,10 +0,0 @@ -
- {% for result in featured_results %} - - {% if result['template'] %} - {% include 'result_templates/'+result['template'] %} - {% else %} - {% include 'result_templates/default.html' %} - {% endif %} - {% endfor %} -
diff --git a/searx/templates/results.html b/searx/templates/results.html index b35416ff..be40900c 100644 --- a/searx/templates/results.html +++ b/searx/templates/results.html @@ -14,9 +14,6 @@
Number of results: {{ number_of_results }}
- {% if featured_results %} - {% include 'result_templates/featured_results.html' %} - {% endif %} {% for result in results %} {% if result['template'] %} diff --git a/searx/webapp.py b/searx/webapp.py index bc534d36..07db9545 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -144,9 +144,6 @@ def index(): for engine in result['engines']: if engine in ['wikipedia', 'youtube', 'vimeo', 'soundcloud', 'twitter', 'stackoverflow', 'github']: result['favicon'] = engine - if engine in ['wikipedia', 'ddg definitions']: - featured_results.append(result) - results.remove(result) if request_data.get('format') == 'json': return Response(json.dumps({'query': query, 'results': results}), mimetype='application/json')