diff options
Diffstat (limited to 'tpl')
-rw-r--r-- | tpl/default/css/shaarli.css | 45 | ||||
-rw-r--r-- | tpl/default/js/shaarli.js | 9 | ||||
-rw-r--r-- | tpl/default/linklist.html | 50 | ||||
-rw-r--r-- | tpl/default/linklist.paging.html | 11 | ||||
-rw-r--r-- | tpl/default/page.footer.html | 2 | ||||
-rw-r--r-- | tpl/default/page.header.html | 39 | ||||
-rw-r--r-- | tpl/default/tag.cloud.html | 7 | ||||
-rw-r--r-- | tpl/default/tag.list.html | 5 |
8 files changed, 81 insertions, 87 deletions
diff --git a/tpl/default/css/shaarli.css b/tpl/default/css/shaarli.css index 39bbd0a3..e1868c59 100644 --- a/tpl/default/css/shaarli.css +++ b/tpl/default/css/shaarli.css | |||
@@ -226,6 +226,12 @@ body, .pure-g [class*="pure-u"] { | |||
226 | border-radius: 2px; | 226 | border-radius: 2px; |
227 | color: #252525; | 227 | color: #252525; |
228 | } | 228 | } |
229 | @media screen and (max-width: 64em) { | ||
230 | .searchform { | ||
231 | max-width: 260px; | ||
232 | margin: 0 auto; | ||
233 | } | ||
234 | } | ||
229 | 235 | ||
230 | /* because chrome */ | 236 | /* because chrome */ |
231 | #search input[type="text"]::-webkit-input-placeholder, | 237 | #search input[type="text"]::-webkit-input-placeholder, |
@@ -236,43 +242,37 @@ body, .pure-g [class*="pure-u"] { | |||
236 | #search button, | 242 | #search button, |
237 | #search-tagcloud button, | 243 | #search-tagcloud button, |
238 | #search-linklist button { | 244 | #search-linklist button { |
239 | background: transparent; | 245 | padding: 4px 8px 6px 8px; |
246 | background-color: #1B926C; | ||
247 | color: #f5f5f5; | ||
240 | border: none; | 248 | border: none; |
249 | border-radius: 2px; | ||
241 | } | 250 | } |
242 | 251 | ||
243 | #search button { | 252 | #search-tagcloud button { |
244 | color: #f5f5f5; | 253 | width: 90%; |
245 | } | 254 | } |
246 | 255 | ||
247 | #search-linklist button { | 256 | @media screen and (max-width: 64em) { |
248 | color: #252525; | 257 | #search-linklist button { |
258 | width: 100%; | ||
259 | } | ||
260 | #search-linklist .awesomplete { | ||
261 | margin: 5px 0; | ||
262 | } | ||
249 | } | 263 | } |
250 | 264 | ||
251 | #search button:hover, | 265 | #search button:hover, |
252 | #search-linklist button:hover { | 266 | #search-linklist button:hover, |
253 | color: #fff; | ||
254 | } | ||
255 | #search-tagcloud button:hover { | 267 | #search-tagcloud button:hover { |
256 | color: #d0d0d0; | 268 | color: #d0d0d0; |
257 | } | 269 | } |
258 | 270 | ||
271 | #search, | ||
259 | #search-linklist { | 272 | #search-linklist { |
260 | padding: 5px 0; | 273 | padding: 6px 0; |
261 | } | 274 | } |
262 | 275 | ||
263 | @media screen and (min-width: 64em) { | ||
264 | #search .searchform, | ||
265 | #search-linklist .searchform { | ||
266 | margin-right: 25px; | ||
267 | text-align: right; | ||
268 | } | ||
269 | |||
270 | #search .tagfilter, | ||
271 | #search-linklist .tagfilter { | ||
272 | margin-left: 25px; | ||
273 | text-align: left; | ||
274 | } | ||
275 | } | ||
276 | @media screen and (max-width: 64em) { | 276 | @media screen and (max-width: 64em) { |
277 | #search, #search * { | 277 | #search, #search * { |
278 | visibility: hidden; | 278 | visibility: hidden; |
@@ -321,7 +321,6 @@ body, .pure-g [class*="pure-u"] { | |||
321 | } | 321 | } |
322 | 322 | ||
323 | .subheader-form input[type="text"], .subheader-form input[type="password"], .subheader-form .remember-me { | 323 | .subheader-form input[type="text"], .subheader-form input[type="password"], .subheader-form .remember-me { |
324 | margin: 0 0 5px 0; | ||
325 | padding: 5px 5px 3px 15px; | 324 | padding: 5px 5px 3px 15px; |
326 | height: 20px; | 325 | height: 20px; |
327 | width: 20%; | 326 | width: 20%; |
diff --git a/tpl/default/js/shaarli.js b/tpl/default/js/shaarli.js index 4ebb7815..4f49affa 100644 --- a/tpl/default/js/shaarli.js +++ b/tpl/default/js/shaarli.js | |||
@@ -418,7 +418,8 @@ window.onload = function () { | |||
418 | * | 418 | * |
419 | * TODO: support error code in the backend for AJAX requests | 419 | * TODO: support error code in the backend for AJAX requests |
420 | */ | 420 | */ |
421 | var existingTags = document.querySelector('input[name="taglist"]').value.split(' '); | 421 | var tagList = document.querySelector('input[name="taglist"]'); |
422 | var existingTags = tagList ? tagList.value.split(' ') : []; | ||
422 | var awesomepletes = []; | 423 | var awesomepletes = []; |
423 | 424 | ||
424 | // Display/Hide rename form | 425 | // Display/Hide rename form |
@@ -515,7 +516,7 @@ window.onload = function () { | |||
515 | }); | 516 | }); |
516 | }); | 517 | }); |
517 | 518 | ||
518 | updateAwesompleteList('.rename-tag-input', document.querySelector('input[name="taglist"]').value.split(' '), awesomepletes); | 519 | updateAwesompleteList('.rename-tag-input', existingTags, awesomepletes); |
519 | }; | 520 | }; |
520 | 521 | ||
521 | /** | 522 | /** |
@@ -605,7 +606,7 @@ function htmlEntities(str) | |||
605 | 606 | ||
606 | function activateFirefoxSocial(node) { | 607 | function activateFirefoxSocial(node) { |
607 | var loc = location.href; | 608 | var loc = location.href; |
608 | var baseURL = loc.substring(0, loc.lastIndexOf("/")); | 609 | var baseURL = loc.substring(0, loc.lastIndexOf("/") + 1); |
609 | 610 | ||
610 | // Keeping the data separated (ie. not in the DOM) so that it's maintainable and diffable. | 611 | // Keeping the data separated (ie. not in the DOM) so that it's maintainable and diffable. |
611 | var data = { | 612 | var data = { |
@@ -618,7 +619,7 @@ function activateFirefoxSocial(node) { | |||
618 | icon32URL: baseURL + "/images/favicon.ico", | 619 | icon32URL: baseURL + "/images/favicon.ico", |
619 | icon64URL: baseURL + "/images/favicon.ico", | 620 | icon64URL: baseURL + "/images/favicon.ico", |
620 | 621 | ||
621 | shareURL: baseURL + "{noparse}?post=%{url}&title=%{title}&description=%{text}&source=firefoxsocialapi{/noparse}", | 622 | shareURL: baseURL + "?post=%{url}&title=%{title}&description=%{text}&source=firefoxsocialapi", |
622 | homepageURL: baseURL | 623 | homepageURL: baseURL |
623 | }; | 624 | }; |
624 | node.setAttribute("data-service", JSON.stringify(data)); | 625 | node.setAttribute("data-service", JSON.stringify(data)); |
diff --git a/tpl/default/linklist.html b/tpl/default/linklist.html index 2568a5d6..685821e3 100644 --- a/tpl/default/linklist.html +++ b/tpl/default/linklist.html | |||
@@ -19,30 +19,21 @@ | |||
19 | 19 | ||
20 | <div id="search-linklist"> | 20 | <div id="search-linklist"> |
21 | 21 | ||
22 | <div class="pure-g"> | 22 | <form method="GET" class="pure-form searchform" name="searchform"> |
23 | <div class="pure-u-1 pure-u-lg-1-2"> | 23 | <input type="text" tabindex="1" name="searchterm" class="searchterm" placeholder="{'Search text'|t}" |
24 | <form method="GET" class="searchform" name="searchform"> | 24 | {if="!empty($search_term)"} |
25 | <input type="text" tabindex="1" name="searchterm" placeholder="{'Search text'|t}" | 25 | value="{$search_term}" |
26 | {if="!empty($search_term)"} | 26 | {/if} |
27 | value="{$search_term}" | 27 | > |
28 | {/if} | 28 | <input type="text" tabindex="2" name="searchtags" class="searchtags" placeholder="{'Filter by tag'|t}" |
29 | > | 29 | {if="!empty($search_tags)"} |
30 | <button type="submit" class="search-button"><i class="fa fa-search"></i></button> | 30 | value="{$search_tags}" |
31 | </form> | 31 | {/if} |
32 | </div> | 32 | autocomplete="off" data-multiple data-autofirst data-minChars="1" |
33 | <div class="pure-u-1 pure-u-lg-1-2"> | 33 | data-list="{loop="$tags"}{$key}, {/loop}" |
34 | <form method="GET" class="tagfilter" name="tagfilter"> | 34 | > |
35 | <input type="text" tabindex="2" name="searchtags" placeholder="{'Filter by tag'|t}" | 35 | <button type="submit" class="search-button"><i class="fa fa-search"></i></button> |
36 | {if="!empty($search_tags)"} | 36 | </form> |
37 | value="{$search_tags}" | ||
38 | {/if} | ||
39 | autocomplete="off" data-multiple data-autofirst data-minChars="1" | ||
40 | data-list="{loop="$tags"}{$key}, {/loop}" | ||
41 | > | ||
42 | <button type="submit" class="search-button"><i class="fa fa-search"></i></button> | ||
43 | </form> | ||
44 | </div> | ||
45 | </div> | ||
46 | </div> | 37 | </div> |
47 | 38 | ||
48 | {loop="$plugins_header.fields_toolbar"} | 39 | {loop="$plugins_header.fields_toolbar"} |
@@ -91,7 +82,7 @@ | |||
91 | <div id="searchcriteria">{'Nothing found.'|t}</div> | 82 | <div id="searchcriteria">{'Nothing found.'|t}</div> |
92 | </div> | 83 | </div> |
93 | </div> | 84 | </div> |
94 | {elseif="!empty($search_term) or $search_tags !== '' or !empty($visibility)"} | 85 | {elseif="!empty($search_term) or $search_tags !== '' or !empty($visibility) or $untaggedonly"} |
95 | <div class="pure-g pure-alert pure-alert-success search-result"> | 86 | <div class="pure-g pure-alert pure-alert-success search-result"> |
96 | <div class="pure-u-2-24"></div> | 87 | <div class="pure-u-2-24"></div> |
97 | <div class="pure-u-20-24"> | 88 | <div class="pure-u-20-24"> |
@@ -107,10 +98,6 @@ | |||
107 | <a href="?removetag={function="urlencode($value)"}">{$value}<span class="remove"><i class="fa fa-times"></i></span></a> | 98 | <a href="?removetag={function="urlencode($value)"}">{$value}<span class="remove"><i class="fa fa-times"></i></span></a> |
108 | </span> | 99 | </span> |
109 | {/loop} | 100 | {/loop} |
110 | {elseif="$search_tags === false"} | ||
111 | <span class="label label-tag" title="{'Remove tag'|t}"> | ||
112 | <a href="?">{'untagged'|t}<span class="remove"><i class="fa fa-times"></i></span></a> | ||
113 | </span> | ||
114 | {/if} | 101 | {/if} |
115 | {if="!empty($visibility)"} | 102 | {if="!empty($visibility)"} |
116 | {'with status'|t} | 103 | {'with status'|t} |
@@ -118,6 +105,11 @@ | |||
118 | {$visibility|t} | 105 | {$visibility|t} |
119 | </span> | 106 | </span> |
120 | {/if} | 107 | {/if} |
108 | {if="$untaggedonly"} | ||
109 | <span class="label label-private"> | ||
110 | {'without any tag'|t} | ||
111 | </span> | ||
112 | {/if} | ||
121 | </div> | 113 | </div> |
122 | </div> | 114 | </div> |
123 | {/if} | 115 | {/if} |
diff --git a/tpl/default/linklist.paging.html b/tpl/default/linklist.paging.html index d8c1e76e..41e9fa34 100644 --- a/tpl/default/linklist.paging.html +++ b/tpl/default/linklist.paging.html | |||
@@ -6,10 +6,13 @@ | |||
6 | {'Filters'|t} | 6 | {'Filters'|t} |
7 | </span> | 7 | </span> |
8 | {if="isLoggedIn()"} | 8 | {if="isLoggedIn()"} |
9 | <a href="?privateonly" title="{'Filter private links'|t}" | 9 | <a href="?privateonly" title="{'Filter private links'|t}" |
10 | class={if="$privateonly"}"filter-on"{else}"filter-off"{/if} | 10 | class={if="$privateonly"}"filter-on"{else}"filter-off"{/if} |
11 | ><i class="fa fa-key"></i></a> | 11 | ><i class="fa fa-key"></i></a> |
12 | {/if} | 12 | {/if} |
13 | <a href="?untaggedonly" title="{'Filter untagged links'|t}" | ||
14 | class={if="$untaggedonly"}"filter-on"{else}"filter-off"{/if} | ||
15 | ><i class="fa fa-tag"></i></a> | ||
13 | <a href="#" class="filter-off fold-all pure-u-lg-0" title="Fold all"> | 16 | <a href="#" class="filter-off fold-all pure-u-lg-0" title="Fold all"> |
14 | <i class="fa fa-chevron-up"></i> | 17 | <i class="fa fa-chevron-up"></i> |
15 | </a> | 18 | </a> |
@@ -55,4 +58,4 @@ | |||
55 | </a> | 58 | </a> |
56 | </div> | 59 | </div> |
57 | </div> | 60 | </div> |
58 | </div> \ No newline at end of file | 61 | </div> |
diff --git a/tpl/default/page.footer.html b/tpl/default/page.footer.html index 02fc7642..94f771a2 100644 --- a/tpl/default/page.footer.html +++ b/tpl/default/page.footer.html | |||
@@ -9,7 +9,7 @@ | |||
9 | {/if} | 9 | {/if} |
10 | · | 10 | · |
11 | The personal, minimalist, super-fast, database free, bookmarking service by the Shaarli community · | 11 | The personal, minimalist, super-fast, database free, bookmarking service by the Shaarli community · |
12 | <a href="doc/Home.html" rel="nofollow">Documentation</a> | 12 | <a href="doc/html/index.html" rel="nofollow">Documentation</a> |
13 | {loop="$plugins_footer.text"} | 13 | {loop="$plugins_footer.text"} |
14 | {$value} | 14 | {$value} |
15 | {/loop} | 15 | {/loop} |
diff --git a/tpl/default/page.header.html b/tpl/default/page.header.html index 6c71a718..2411703c 100644 --- a/tpl/default/page.header.html +++ b/tpl/default/page.header.html | |||
@@ -97,30 +97,21 @@ | |||
97 | 97 | ||
98 | <div id="content"> | 98 | <div id="content"> |
99 | <div id="search" class="subheader-form"> | 99 | <div id="search" class="subheader-form"> |
100 | <div class="pure-g"> | 100 | <form method="GET" class="pure-form searchform" name="searchform"> |
101 | <div class="pure-u-1 pure-u-lg-1-2"> | 101 | <input type="text" tabindex="1" id="searchform_value" name="searchterm" placeholder="{'Search text'|t}" |
102 | <form method="GET" class="searchform" name="searchform"> | 102 | {if="!empty($search_term)"} |
103 | <input type="text" tabindex="1" id="searchform_value" name="searchterm" placeholder="{'Search text'|t}" | 103 | value="{$search_term}" |
104 | {if="!empty($search_term)"} | 104 | {/if} |
105 | value="{$search_term}" | 105 | > |
106 | {/if} | 106 | <input type="text" tabindex="2" name="searchtags" id="tagfilter_value" placeholder="{'Filter by tag'|t}" |
107 | > | 107 | {if="!empty($search_tags)"} |
108 | <button type="submit" class="search-button"><i class="fa fa-search"></i></button> | 108 | value="{$search_tags}" |
109 | </form> | 109 | {/if} |
110 | </div> | 110 | autocomplete="off" data-multiple data-autofirst data-minChars="1" |
111 | <div class="pure-u-1 pure-u-lg-1-2"> | 111 | data-list="{loop="$tags"}{$key}, {/loop}" |
112 | <form method="GET" class="tagfilter" name="tagfilter"> | 112 | > |
113 | <input type="text" tabindex="2" name="searchtags" id="tagfilter_value" placeholder="{'Filter by tag'|t}" | 113 | <button type="submit" class="search-button"><i class="fa fa-search"></i></button> |
114 | {if="!empty($search_tags)"} | 114 | </form> |
115 | value="{$search_tags}" | ||
116 | {/if} | ||
117 | autocomplete="off" data-multiple data-autofirst data-minChars="1" | ||
118 | data-list="{loop="$tags"}{$key}, {/loop}" | ||
119 | > | ||
120 | <button type="submit" class="search-button"><i class="fa fa-search"></i></button> | ||
121 | </form> | ||
122 | </div> | ||
123 | </div> | ||
124 | </div> | 115 | </div> |
125 | <div id="actions" class="subheader-form"> | 116 | <div id="actions" class="subheader-form"> |
126 | <div class="pure-g"> | 117 | <div class="pure-g"> |
diff --git a/tpl/default/tag.cloud.html b/tpl/default/tag.cloud.html index 59aa2ee0..96b357a3 100644 --- a/tpl/default/tag.cloud.html +++ b/tpl/default/tag.cloud.html | |||
@@ -13,6 +13,11 @@ | |||
13 | <div class="pure-u-lg-2-3 pure-u-22-24 page-form page-visitor"> | 13 | <div class="pure-u-lg-2-3 pure-u-22-24 page-form page-visitor"> |
14 | {$countTags=count($tags)} | 14 | {$countTags=count($tags)} |
15 | <h2 class="window-title">{'Tag cloud'|t} - {$countTags} {'tags'|t}</h2> | 15 | <h2 class="window-title">{'Tag cloud'|t} - {$countTags} {'tags'|t}</h2> |
16 | {if="!empty($search_tags)"} | ||
17 | <p class="enter"> | ||
18 | <a href="?searchtags={$search_tags|urlencode}">{'List all links with those tags'|t}</a> | ||
19 | </p> | ||
20 | {/if} | ||
16 | 21 | ||
17 | <div id="search-tagcloud" class="pure-g"> | 22 | <div id="search-tagcloud" class="pure-g"> |
18 | <div class="pure-u-lg-1-4"></div> | 23 | <div class="pure-u-lg-1-4"></div> |
@@ -40,7 +45,7 @@ | |||
40 | 45 | ||
41 | <div id="cloudtag"> | 46 | <div id="cloudtag"> |
42 | {loop="tags"} | 47 | {loop="tags"} |
43 | <a href="?searchtags={$key|urlencode}" style="font-size:{$value.size}em;">{$key}</a | 48 | <a href="?searchtags={$key|urlencode} {$search_tags|urlencode}" style="font-size:{$value.size}em;">{$key}</a |
44 | ><a href="?addtag={$key|urlencode}" title="{'Filter by tag'|t}" class="count">{$value.count}</a> | 49 | ><a href="?addtag={$key|urlencode}" title="{'Filter by tag'|t}" class="count">{$value.count}</a> |
45 | {loop="$value.tag_plugin"} | 50 | {loop="$value.tag_plugin"} |
46 | {$value} | 51 | {$value} |
diff --git a/tpl/default/tag.list.html b/tpl/default/tag.list.html index 62e2e7c6..81d6e5af 100644 --- a/tpl/default/tag.list.html +++ b/tpl/default/tag.list.html | |||
@@ -13,6 +13,9 @@ | |||
13 | <div class="pure-u-lg-2-3 pure-u-22-24 page-form page-visitor"> | 13 | <div class="pure-u-lg-2-3 pure-u-22-24 page-form page-visitor"> |
14 | {$countTags=count($tags)} | 14 | {$countTags=count($tags)} |
15 | <h2 class="window-title">{'Tag list'|t} - {$countTags} {'tags'|t}</h2> | 15 | <h2 class="window-title">{'Tag list'|t} - {$countTags} {'tags'|t}</h2> |
16 | <p style="text-align: center"> | ||
17 | <a href="?searchtags={$search_tags|urlencode}">{'List all links with those tags'|t}</a> | ||
18 | </p> | ||
16 | 19 | ||
17 | <div id="search-tagcloud" class="pure-g"> | 20 | <div id="search-tagcloud" class="pure-g"> |
18 | <div class="pure-u-lg-1-4"></div> | 21 | <div class="pure-u-lg-1-4"></div> |
@@ -50,7 +53,7 @@ | |||
50 | {/if} | 53 | {/if} |
51 | 54 | ||
52 | <a href="?addtag={$key|urlencode}" title="{'Filter by tag'|t}" class="count">{$value}</a> | 55 | <a href="?addtag={$key|urlencode}" title="{'Filter by tag'|t}" class="count">{$value}</a> |
53 | <a href="?searchtags={$key|urlencode}" class="tag-link">{$key}</a> | 56 | <a href="?searchtags={$key|urlencode} {$search_tags|urlencode}" class="tag-link">{$key}</a> |
54 | 57 | ||
55 | {loop="$value.tag_plugin"} | 58 | {loop="$value.tag_plugin"} |
56 | {$value} | 59 | {$value} |