aboutsummaryrefslogtreecommitdiffhomepage
path: root/inc
diff options
context:
space:
mode:
Diffstat (limited to 'inc')
-rw-r--r--inc/awesomplete-multiple-tags.js49
-rw-r--r--inc/awesomplete.js184
-rw-r--r--inc/awesomplete.min.js11
-rw-r--r--inc/languages/fr/LC_MESSAGES/shaarli.po1367
-rw-r--r--inc/plugin_admin.js50
-rw-r--r--inc/reset.css6
-rw-r--r--inc/shaarli.css1198
7 files changed, 1575 insertions, 1290 deletions
diff --git a/inc/awesomplete-multiple-tags.js b/inc/awesomplete-multiple-tags.js
index 4cc8429f..c38dc38e 100644
--- a/inc/awesomplete-multiple-tags.js
+++ b/inc/awesomplete-multiple-tags.js
@@ -1,13 +1,44 @@
1/** @licstart The following is the entire license notice for the
2 * JavaScript code in this page.
3 *
4 * Copyright: (c) 2011-2015 Sébastien SAUVAGE <sebsauvage@sebsauvage.net>
5 * (c) 2011-2017 The Shaarli Community, see AUTHORS
6 *
7 * This software is provided 'as-is', without any express or implied warranty.
8 * In no event will the authors be held liable for any damages arising from
9 * the use of this software.
10 *
11 * Permission is granted to anyone to use this software for any purpose,
12 * including commercial applications, and to alter it and redistribute it
13 * freely, subject to the following restrictions:
14 *
15 * 1. The origin of this software must not be misrepresented; you must not
16 * claim that you wrote the original software. If you use this software
17 * in a product, an acknowledgment in the product documentation would
18 * be appreciated but is not required.
19 *
20 * 2. Altered source versions must be plainly marked as such, and must
21 * not be misrepresented as being the original software.
22 *
23 * 3. This notice may not be removed or altered from any source distribution.
24 *
25 * @licend The above is the entire license notice
26 * for the JavaScript code in this page.
27 */
28
1var awp = Awesomplete.$; 29var awp = Awesomplete.$;
2awesomplete = new Awesomplete(awp('input[data-multiple]'), { 30var autocompleteFields = document.querySelectorAll('input[data-multiple]');
3 filter: function(text, input) { 31[].forEach.call(autocompleteFields, function(autocompleteField) {
4 return Awesomplete.FILTER_CONTAINS(text, input.match(/[^ ]*$/)[0]); 32 awesomplete = new Awesomplete(awp(autocompleteField), {
5 }, 33 filter: function (text, input) {
6 replace: function(text) { 34 return Awesomplete.FILTER_CONTAINS(text, input.match(/[^ ]*$/)[0]);
7 var before = this.input.value.match(/^.+ \s*|/)[0]; 35 },
8 this.input.value = before + text + " "; 36 replace: function (text) {
9 }, 37 var before = this.input.value.match(/^.+ \s*|/)[0];
10 minChars: 1 38 this.input.value = before + text + " ";
39 },
40 minChars: 1
41 })
11}); 42});
12 43
13/** 44/**
diff --git a/inc/awesomplete.js b/inc/awesomplete.js
index fae550e2..32f49e5b 100644
--- a/inc/awesomplete.js
+++ b/inc/awesomplete.js
@@ -12,26 +12,23 @@
12 12
13 // Setup 13 // Setup
14 14
15 this.isOpened = false;
16
15 this.input = $(input); 17 this.input = $(input);
18 this.input.setAttribute("autocomplete", "off");
16 this.input.setAttribute("aria-autocomplete", "list"); 19 this.input.setAttribute("aria-autocomplete", "list");
17 20
18 o = o || {}; 21 o = o || {};
19 22
20 configure.call(this, { 23 configure(this, {
21 minChars: 2, 24 minChars: 2,
22 maxItems: 10, 25 maxItems: 10,
23 autoFirst: false, 26 autoFirst: false,
27 data: _.DATA,
24 filter: _.FILTER_CONTAINS, 28 filter: _.FILTER_CONTAINS,
25 sort: _.SORT_BYLENGTH, 29 sort: _.SORT_BYLENGTH,
26 item: function (text, input) { 30 item: _.ITEM,
27 return $.create("li", { 31 replace: _.REPLACE
28 innerHTML: text.replace(RegExp($.regExpEscape(input.trim()), "gi"), "<mark>$&</mark>"),
29 "aria-selected": "false"
30 });
31 },
32 replace: function (text) {
33 this.input.value = text;
34 }
35 }, o); 32 }, o);
36 33
37 this.index = -1; 34 this.index = -1;
@@ -44,7 +41,7 @@
44 }); 41 });
45 42
46 this.ul = $.create("ul", { 43 this.ul = $.create("ul", {
47 hidden: "", 44 hidden: "hidden",
48 inside: this.container 45 inside: this.container
49 }); 46 });
50 47
@@ -60,7 +57,7 @@
60 57
61 $.bind(this.input, { 58 $.bind(this.input, {
62 "input": this.evaluate.bind(this), 59 "input": this.evaluate.bind(this),
63 "blur": this.close.bind(this), 60 "blur": this.close.bind(this, { reason: "blur" }),
64 "keydown": function(evt) { 61 "keydown": function(evt) {
65 var c = evt.keyCode; 62 var c = evt.keyCode;
66 63
@@ -72,7 +69,7 @@
72 me.select(); 69 me.select();
73 } 70 }
74 else if (c === 27) { // Esc 71 else if (c === 27) { // Esc
75 me.close(); 72 me.close({ reason: "esc" });
76 } 73 }
77 else if (c === 38 || c === 40) { // Down/Up arrow 74 else if (c === 38 || c === 40) { // Down/Up arrow
78 evt.preventDefault(); 75 evt.preventDefault();
@@ -82,7 +79,7 @@
82 } 79 }
83 }); 80 });
84 81
85 $.bind(this.input.form, {"submit": this.close.bind(this)}); 82 $.bind(this.input.form, {"submit": this.close.bind(this, { reason: "submit" })});
86 83
87 $.bind(this.ul, {"mousedown": function(evt) { 84 $.bind(this.ul, {"mousedown": function(evt) {
88 var li = evt.target; 85 var li = evt.target;
@@ -93,15 +90,16 @@
93 li = li.parentNode; 90 li = li.parentNode;
94 } 91 }
95 92
96 if (li) { 93 if (li && evt.button === 0) { // Only select on left click
97 me.select(li); 94 evt.preventDefault();
95 me.select(li, evt.target);
98 } 96 }
99 } 97 }
100 }}); 98 }});
101 99
102 if (this.input.hasAttribute("list")) { 100 if (this.input.hasAttribute("list")) {
103 this.list = "#" + input.getAttribute("list"); 101 this.list = "#" + this.input.getAttribute("list");
104 input.removeAttribute("list"); 102 this.input.removeAttribute("list");
105 } 103 }
106 else { 104 else {
107 this.list = this.input.getAttribute("data-list") || o.list || []; 105 this.list = this.input.getAttribute("data-list") || o.list || [];
@@ -122,9 +120,18 @@
122 list = $(list); 120 list = $(list);
123 121
124 if (list && list.children) { 122 if (list && list.children) {
125 this._list = slice.apply(list.children).map(function (el) { 123 var items = [];
126 return el.innerHTML.trim(); 124 slice.apply(list.children).forEach(function (el) {
125 if (!el.disabled) {
126 var text = el.textContent.trim();
127 var value = el.value || text;
128 var label = el.label || text;
129 if (value !== "") {
130 items.push({ label: label, value: value });
131 }
132 }
127 }); 133 });
134 this._list = items;
128 } 135 }
129 } 136 }
130 137
@@ -138,18 +145,24 @@
138 }, 145 },
139 146
140 get opened() { 147 get opened() {
141 return this.ul && this.ul.getAttribute("hidden") == null; 148 return this.isOpened;
142 }, 149 },
143 150
144 close: function () { 151 close: function (o) {
152 if (!this.opened) {
153 return;
154 }
155
145 this.ul.setAttribute("hidden", ""); 156 this.ul.setAttribute("hidden", "");
157 this.isOpened = false;
146 this.index = -1; 158 this.index = -1;
147 159
148 $.fire(this.input, "awesomplete-close"); 160 $.fire(this.input, "awesomplete-close", o || {});
149 }, 161 },
150 162
151 open: function () { 163 open: function () {
152 this.ul.removeAttribute("hidden"); 164 this.ul.removeAttribute("hidden");
165 this.isOpened = true;
153 166
154 if (this.autoFirst && this.index === -1) { 167 if (this.autoFirst && this.index === -1) {
155 this.goto(0); 168 this.goto(0);
@@ -160,14 +173,14 @@
160 173
161 next: function () { 174 next: function () {
162 var count = this.ul.children.length; 175 var count = this.ul.children.length;
163 176 this.goto(this.index < count - 1 ? this.index + 1 : (count ? 0 : -1) );
164 this.goto(this.index < count - 1? this.index + 1 : -1);
165 }, 177 },
166 178
167 previous: function () { 179 previous: function () {
168 var count = this.ul.children.length; 180 var count = this.ul.children.length;
181 var pos = this.index - 1;
169 182
170 this.goto(this.selected? this.index - 1 : count - 1); 183 this.goto(this.selected && pos !== -1 ? pos : count - 1);
171 }, 184 },
172 185
173 // Should not be used, highlights specific item without any checks! 186 // Should not be used, highlights specific item without any checks!
@@ -183,28 +196,37 @@
183 if (i > -1 && lis.length > 0) { 196 if (i > -1 && lis.length > 0) {
184 lis[i].setAttribute("aria-selected", "true"); 197 lis[i].setAttribute("aria-selected", "true");
185 this.status.textContent = lis[i].textContent; 198 this.status.textContent = lis[i].textContent;
186 }
187 199
188 $.fire(this.input, "awesomplete-highlight"); 200 // scroll to highlighted element in case parent's height is fixed
201 this.ul.scrollTop = lis[i].offsetTop - this.ul.clientHeight + lis[i].clientHeight;
202
203 $.fire(this.input, "awesomplete-highlight", {
204 text: this.suggestions[this.index]
205 });
206 }
189 }, 207 },
190 208
191 select: function (selected) { 209 select: function (selected, origin) {
192 selected = selected || this.ul.children[this.index]; 210 if (selected) {
211 this.index = $.siblingIndex(selected);
212 } else {
213 selected = this.ul.children[this.index];
214 }
193 215
194 if (selected) { 216 if (selected) {
195 var prevented; 217 var suggestion = this.suggestions[this.index];
196 218
197 $.fire(this.input, "awesomplete-select", { 219 var allowed = $.fire(this.input, "awesomplete-select", {
198 text: selected.textContent, 220 text: suggestion,
199 preventDefault: function () { 221 origin: origin || selected
200 prevented = true;
201 }
202 }); 222 });
203 223
204 if (!prevented) { 224 if (allowed) {
205 this.replace(selected.textContent); 225 this.replace(suggestion);
206 this.close(); 226 this.close({ reason: "select" });
207 $.fire(this.input, "awesomplete-selectcomplete"); 227 $.fire(this.input, "awesomplete-selectcomplete", {
228 text: suggestion
229 });
208 } 230 }
209 } 231 }
210 }, 232 },
@@ -218,25 +240,28 @@
218 // Populate list with options that match 240 // Populate list with options that match
219 this.ul.innerHTML = ""; 241 this.ul.innerHTML = "";
220 242
221 this._list 243 this.suggestions = this._list
244 .map(function(item) {
245 return new Suggestion(me.data(item, value));
246 })
222 .filter(function(item) { 247 .filter(function(item) {
223 return me.filter(item, value); 248 return me.filter(item, value);
224 }) 249 })
225 .sort(this.sort) 250 .sort(this.sort)
226 .every(function(text, i) { 251 .slice(0, this.maxItems);
227 me.ul.appendChild(me.item(text, value));
228 252
229 return i < me.maxItems - 1; 253 this.suggestions.forEach(function(text) {
230 }); 254 me.ul.appendChild(me.item(text, value));
255 });
231 256
232 if (this.ul.children.length === 0) { 257 if (this.ul.children.length === 0) {
233 this.close(); 258 this.close({ reason: "nomatches" });
234 } else { 259 } else {
235 this.open(); 260 this.open();
236 } 261 }
237 } 262 }
238 else { 263 else {
239 this.close(); 264 this.close({ reason: "nomatches" });
240 } 265 }
241 } 266 }
242 }; 267 };
@@ -261,27 +286,58 @@
261 return a < b? -1 : 1; 286 return a < b? -1 : 1;
262 }; 287 };
263 288
289 _.ITEM = function (text, input) {
290 var html = input.trim() === '' ? text : text.replace(RegExp($.regExpEscape(input.trim()), "gi"), "<mark>$&</mark>");
291 return $.create("li", {
292 innerHTML: html,
293 "aria-selected": "false"
294 });
295 };
296
297 _.REPLACE = function (text) {
298 this.input.value = text.value;
299 };
300
301 _.DATA = function (item/*, input*/) { return item; };
302
264// Private functions 303// Private functions
265 304
266 function configure(properties, o) { 305 function Suggestion(data) {
306 var o = Array.isArray(data)
307 ? { label: data[0], value: data[1] }
308 : typeof data === "object" && "label" in data && "value" in data ? data : { label: data, value: data };
309
310 this.label = o.label || o.value;
311 this.value = o.value;
312 }
313 Object.defineProperty(Suggestion.prototype = Object.create(String.prototype), "length", {
314 get: function() { return this.label.length; }
315 });
316 Suggestion.prototype.toString = Suggestion.prototype.valueOf = function () {
317 return "" + this.label;
318 };
319
320 function configure(instance, properties, o) {
267 for (var i in properties) { 321 for (var i in properties) {
268 var initial = properties[i], 322 var initial = properties[i],
269 attrValue = this.input.getAttribute("data-" + i.toLowerCase()); 323 attrValue = instance.input.getAttribute("data-" + i.toLowerCase());
270 324
271 if (typeof initial === "number") { 325 if (typeof initial === "number") {
272 this[i] = +attrValue; 326 instance[i] = parseInt(attrValue);
273 } 327 }
274 else if (initial === false) { // Boolean options must be false by default anyway 328 else if (initial === false) { // Boolean options must be false by default anyway
275 this[i] = attrValue !== null; 329 instance[i] = attrValue !== null;
276 } 330 }
277 else if (initial instanceof Function) { 331 else if (initial instanceof Function) {
278 this[i] = null; 332 instance[i] = null;
279 } 333 }
280 else { 334 else {
281 this[i] = attrValue; 335 instance[i] = attrValue;
282 } 336 }
283 337
284 this[i] = this[i] || o[i] || initial; 338 if (!instance[i] && instance[i] !== 0) {
339 instance[i] = (i in o)? o[i] : initial;
340 }
285 } 341 }
286 } 342 }
287 343
@@ -343,23 +399,29 @@
343 evt[j] = properties[j]; 399 evt[j] = properties[j];
344 } 400 }
345 401
346 target.dispatchEvent(evt); 402 return target.dispatchEvent(evt);
347 }; 403 };
348 404
349 $.regExpEscape = function (s) { 405 $.regExpEscape = function (s) {
350 return s.replace(/[-\\^$*+?.()|[\]{}]/g, "\\$&"); 406 return s.replace(/[-\\^$*+?.()|[\]{}]/g, "\\$&");
351 } 407 };
408
409 $.siblingIndex = function (el) {
410 /* eslint-disable no-cond-assign */
411 for (var i = 0; el = el.previousElementSibling; i++);
412 return i;
413 };
352 414
353// Initialization 415// Initialization
354 416
355 function init() { 417 function init() {
356 $$("input.awesomplete").forEach(function (input) { 418 $$("input.awesomplete").forEach(function (input) {
357 new Awesomplete(input); 419 new _(input);
358 }); 420 });
359 } 421 }
360 422
361// Are we in a browser? Check for Document constructor 423// Are we in a browser? Check for Document constructor
362 if (typeof Document !== 'undefined') { 424 if (typeof Document !== "undefined") {
363 // DOM already loaded? 425 // DOM already loaded?
364 if (document.readyState !== "loading") { 426 if (document.readyState !== "loading") {
365 init(); 427 init();
@@ -374,15 +436,15 @@
374 _.$$ = $$; 436 _.$$ = $$;
375 437
376// Make sure to export Awesomplete on self when in a browser 438// Make sure to export Awesomplete on self when in a browser
377 if (typeof self !== 'undefined') { 439 if (typeof self !== "undefined") {
378 self.Awesomplete = _; 440 self.Awesomplete = _;
379 } 441 }
380 442
381// Expose Awesomplete as a CJS module 443// Expose Awesomplete as a CJS module
382 if (typeof exports === 'object') { 444 if (typeof module === "object" && module.exports) {
383 module.exports = _; 445 module.exports = _;
384 } 446 }
385 447
386 return _; 448 return _;
387 449
388}()); 450}()); \ No newline at end of file
diff --git a/inc/awesomplete.min.js b/inc/awesomplete.min.js
index 3bfb05e8..cd08c949 100644
--- a/inc/awesomplete.min.js
+++ b/inc/awesomplete.min.js
@@ -1,10 +1,3 @@
1// Awesomplete - Lea Verou - MIT license 1// Awesomplete - Lea Verou - MIT license
2(function(){function m(a,b){for(var c in a){var f=a[c],e=this.input.getAttribute("data-"+c.toLowerCase());this[c]="number"===typeof f?+e:!1===f?null!==e:f instanceof Function?null:e;this[c]=this[c]||b[c]||f}}function d(a,b){return"string"===typeof a?(b||document).querySelector(a):a||null}function h(a,b){return k.call((b||document).querySelectorAll(a))}function l(){h("input.awesomplete").forEach(function(a){new Awesomplete(a)})}var g=self.Awesomplete=function(a,b){var c=this;this.input=d(a);this.input.setAttribute("aria-autocomplete", 2!function(){function t(t){var e=Array.isArray(t)?{label:t[0],value:t[1]}:"object"==typeof t&&"label"in t&&"value"in t?t:{label:t,value:t};this.label=e.label||e.value,this.value=e.value}function e(t,e,i){for(var n in e){var s=e[n],r=t.input.getAttribute("data-"+n.toLowerCase());"number"==typeof s?t[n]=parseInt(r):s===!1?t[n]=null!==r:s instanceof Function?t[n]=null:t[n]=r,t[n]||0===t[n]||(t[n]=n in i?i[n]:s)}}function i(t,e){return"string"==typeof t?(e||document).querySelector(t):t||null}function n(t,e){return o.call((e||document).querySelectorAll(t))}function s(){n("input.awesomplete").forEach(function(t){new r(t)})}var r=function(t,n){var s=this;this.isOpened=!1,this.input=i(t),this.input.setAttribute("autocomplete","off"),this.input.setAttribute("aria-autocomplete","list"),n=n||{},e(this,{minChars:2,maxItems:10,autoFirst:!1,data:r.DATA,filter:r.FILTER_CONTAINS,sort:r.SORT_BYLENGTH,item:r.ITEM,replace:r.REPLACE},n),this.index=-1,this.container=i.create("div",{className:"awesomplete",around:t}),this.ul=i.create("ul",{hidden:"hidden",inside:this.container}),this.status=i.create("span",{className:"visually-hidden",role:"status","aria-live":"assertive","aria-relevant":"additions",inside:this.container}),i.bind(this.input,{input:this.evaluate.bind(this),blur:this.close.bind(this,{reason:"blur"}),keydown:function(t){var e=t.keyCode;s.opened&&(13===e&&s.selected?(t.preventDefault(),s.select()):27===e?s.close({reason:"esc"}):38!==e&&40!==e||(t.preventDefault(),s[38===e?"previous":"next"]()))}}),i.bind(this.input.form,{submit:this.close.bind(this,{reason:"submit"})}),i.bind(this.ul,{mousedown:function(t){var e=t.target;if(e!==this){for(;e&&!/li/i.test(e.nodeName);)e=e.parentNode;e&&0===t.button&&(t.preventDefault(),s.select(e,t.target))}}}),this.input.hasAttribute("list")?(this.list="#"+this.input.getAttribute("list"),this.input.removeAttribute("list")):this.list=this.input.getAttribute("data-list")||n.list||[],r.all.push(this)};r.prototype={set list(t){if(Array.isArray(t))this._list=t;else if("string"==typeof t&&t.indexOf(",")>-1)this._list=t.split(/\s*,\s*/);else if(t=i(t),t&&t.children){var e=[];o.apply(t.children).forEach(function(t){if(!t.disabled){var i=t.textContent.trim(),n=t.value||i,s=t.label||i;""!==n&&e.push({label:s,value:n})}}),this._list=e}document.activeElement===this.input&&this.evaluate()},get selected(){return this.index>-1},get opened(){return this.isOpened},close:function(t){this.opened&&(this.ul.setAttribute("hidden",""),this.isOpened=!1,this.index=-1,i.fire(this.input,"awesomplete-close",t||{}))},open:function(){this.ul.removeAttribute("hidden"),this.isOpened=!0,this.autoFirst&&this.index===-1&&this.goto(0),i.fire(this.input,"awesomplete-open")},next:function(){var t=this.ul.children.length;this.goto(this.index<t-1?this.index+1:t?0:-1)},previous:function(){var t=this.ul.children.length,e=this.index-1;this.goto(this.selected&&e!==-1?e:t-1)},goto:function(t){var e=this.ul.children;this.selected&&e[this.index].setAttribute("aria-selected","false"),this.index=t,t>-1&&e.length>0&&(e[t].setAttribute("aria-selected","true"),this.status.textContent=e[t].textContent,i.fire(this.input,"awesomplete-highlight",{text:this.suggestions[this.index]}))},select:function(t,e){if(t?this.index=i.siblingIndex(t):t=this.ul.children[this.index],t){var n=this.suggestions[this.index],s=i.fire(this.input,"awesomplete-select",{text:n,origin:e||t});s&&(this.replace(n),this.close({reason:"select"}),i.fire(this.input,"awesomplete-selectcomplete",{text:n}))}},evaluate:function(){var e=this,i=this.input.value;i.length>=this.minChars&&this._list.length>0?(this.index=-1,this.ul.innerHTML="",this.suggestions=this._list.map(function(n){return new t(e.data(n,i))}).filter(function(t){return e.filter(t,i)}).sort(this.sort).slice(0,this.maxItems),this.suggestions.forEach(function(t){e.ul.appendChild(e.item(t,i))}),0===this.ul.children.length?this.close({reason:"nomatches"}):this.open()):this.close({reason:"nomatches"})}},r.all=[],r.FILTER_CONTAINS=function(t,e){return RegExp(i.regExpEscape(e.trim()),"i").test(t)},r.FILTER_STARTSWITH=function(t,e){return RegExp("^"+i.regExpEscape(e.trim()),"i").test(t)},r.SORT_BYLENGTH=function(t,e){return t.length!==e.length?t.length-e.length:t<e?-1:1},r.ITEM=function(t,e){var n=""===e?t:t.replace(RegExp(i.regExpEscape(e.trim()),"gi"),"<mark>$&</mark>");return i.create("li",{innerHTML:n,"aria-selected":"false"})},r.REPLACE=function(t){this.input.value=t.value},r.DATA=function(t){return t},Object.defineProperty(t.prototype=Object.create(String.prototype),"length",{get:function(){return this.label.length}}),t.prototype.toString=t.prototype.valueOf=function(){return""+this.label};var o=Array.prototype.slice;return i.create=function(t,e){var n=document.createElement(t);for(var s in e){var r=e[s];if("inside"===s)i(r).appendChild(n);else if("around"===s){var o=i(r);o.parentNode.insertBefore(n,o),n.appendChild(o)}else s in n?n[s]=r:n.setAttribute(s,r)}return n},i.bind=function(t,e){if(t)for(var i in e){var n=e[i];i.split(/\s+/).forEach(function(e){t.addEventListener(e,n)})}},i.fire=function(t,e,i){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0);for(var s in i)n[s]=i[s];return t.dispatchEvent(n)},i.regExpEscape=function(t){return t.replace(/[-\\^$*+?.()|[\]{}]/g,"\\$&")},i.siblingIndex=function(t){for(var e=0;t=t.previousElementSibling;e++);return e},"undefined"!=typeof Document&&("loading"!==document.readyState?s():document.addEventListener("DOMContentLoaded",s)),r.$=i,r.$$=n,"undefined"!=typeof self&&(self.Awesomplete=r),"object"==typeof module&&module.exports&&(module.exports=r),r}();
3 "list");b=b||{};m.call(this,{minChars:2,maxItems:10,autoFirst:!1,filter:g.FILTER_CONTAINS,sort:g.SORT_BYLENGTH,item:function(a,b){return d.create("li",{innerHTML:a.replace(RegExp(d.regExpEscape(b.trim()),"gi"),"<mark>$&</mark>"),"aria-selected":"false"})},replace:function(a){this.input.value=a}},b);this.index=-1;this.container=d.create("div",{className:"awesomplete",around:a});this.ul=d.create("ul",{hidden:"",inside:this.container});this.status=d.create("span",{className:"visually-hidden",role:"status", 3//# sourceMappingURL=awesomplete.min.js.map \ No newline at end of file
4 "aria-live":"assertive","aria-relevant":"additions",inside:this.container});d.bind(this.input,{input:this.evaluate.bind(this),blur:this.close.bind(this),keydown:function(a){var b=a.keyCode;if(c.opened)if(13===b&&c.selected)a.preventDefault(),c.select();else if(27===b)c.close();else if(38===b||40===b)a.preventDefault(),c[38===b?"previous":"next"]()}});d.bind(this.input.form,{submit:this.close.bind(this)});d.bind(this.ul,{mousedown:function(a){a=a.target;if(a!==this){for(;a&&!/li/i.test(a.nodeName);)a=
5 a.parentNode;a&&c.select(a)}}});this.input.hasAttribute("list")?(this.list="#"+a.getAttribute("list"),a.removeAttribute("list")):this.list=this.input.getAttribute("data-list")||b.list||[];g.all.push(this)};g.prototype={set list(a){Array.isArray(a)?this._list=a:"string"===typeof a&&-1<a.indexOf(",")?this._list=a.split(/\s*,\s*/):(a=d(a))&&a.children&&(this._list=k.apply(a.children).map(function(a){return a.innerHTML.trim()}));document.activeElement===this.input&&this.evaluate()},get selected(){return-1<
6this.index},get opened(){return this.ul&&null==this.ul.getAttribute("hidden")},close:function(){this.ul.setAttribute("hidden","");this.index=-1;d.fire(this.input,"awesomplete-close")},open:function(){this.ul.removeAttribute("hidden");this.autoFirst&&-1===this.index&&this.goto(0);d.fire(this.input,"awesomplete-open")},next:function(){this.goto(this.index<this.ul.children.length-1?this.index+1:-1)},previous:function(){var a=this.ul.children.length;this.goto(this.selected?this.index-1:a-1)},goto:function(a){var b=
7 this.ul.children;this.selected&&b[this.index].setAttribute("aria-selected","false");this.index=a;-1<a&&0<b.length&&(b[a].setAttribute("aria-selected","true"),this.status.textContent=b[a].textContent)},select:function(a){if(a=a||this.ul.children[this.index]){var b;d.fire(this.input,"awesomplete-select",{text:a.textContent,preventDefault:function(){b=!0}});b||(this.replace(a.textContent),this.close(),d.fire(this.input,"awesomplete-selectcomplete"))}},evaluate:function(){var a=this,b=this.input.value;
8 b.length>=this.minChars&&0<this._list.length?(this.index=-1,this.ul.innerHTML="",this._list.filter(function(c){return a.filter(c,b)}).sort(this.sort).every(function(c,d){a.ul.appendChild(a.item(c,b));return d<a.maxItems-1}),0===this.ul.children.length?this.close():this.open()):this.close()}};g.all=[];g.FILTER_CONTAINS=function(a,b){return RegExp(d.regExpEscape(b.trim()),"i").test(a)};g.FILTER_STARTSWITH=function(a,b){return RegExp("^"+d.regExpEscape(b.trim()),"i").test(a)};g.SORT_BYLENGTH=function(a,
9 b){return a.length!==b.length?a.length-b.length:a<b?-1:1};var k=Array.prototype.slice;d.create=function(a,b){var c=document.createElement(a),f;for(f in b){var e=b[f];"inside"===f?d(e).appendChild(c):"around"===f?(e=d(e),e.parentNode.insertBefore(c,e),c.appendChild(e)):f in c?c[f]=e:c.setAttribute(f,e)}return c};d.bind=function(a,b){if(a)for(var c in b){var d=b[c];c.split(/\s+/).forEach(function(b){a.addEventListener(b,d)})}};d.fire=function(a,b,c){var d=document.createEvent("HTMLEvents");d.initEvent(b,
10 !0,!0);for(var e in c)d[e]=c[e];a.dispatchEvent(d)};d.regExpEscape=function(a){return a.replace(/[-\\^$*+?.()|[\]{}]/g,"\\$&")};"loading"!==document.readyState?l():document.addEventListener("DOMContentLoaded",l);g.$=d;g.$$=h})();
diff --git a/inc/languages/fr/LC_MESSAGES/shaarli.po b/inc/languages/fr/LC_MESSAGES/shaarli.po
new file mode 100644
index 00000000..323c6111
--- /dev/null
+++ b/inc/languages/fr/LC_MESSAGES/shaarli.po
@@ -0,0 +1,1367 @@
1msgid ""
2msgstr ""
3"Project-Id-Version: Shaarli\n"
4"POT-Creation-Date: 2017-11-11 10:59+0100\n"
5"PO-Revision-Date: 2017-11-11 11:00+0100\n"
6"Last-Translator: \n"
7"Language-Team: Shaarli\n"
8"Language: fr_FR\n"
9"MIME-Version: 1.0\n"
10"Content-Type: text/plain; charset=UTF-8\n"
11"Content-Transfer-Encoding: 8bit\n"
12"X-Generator: Poedit 2.0.4\n"
13"X-Poedit-Basepath: ../../../..\n"
14"Plural-Forms: nplurals=2; plural=(n > 1);\n"
15"X-Poedit-SourceCharset: UTF-8\n"
16"X-Poedit-KeywordsList: t:1,2;t\n"
17"X-Poedit-SearchPath-0: .\n"
18
19#: application/ApplicationUtils.php:153
20#, php-format
21msgid ""
22"Your PHP version is obsolete! Shaarli requires at least PHP %s, and thus "
23"cannot run. Your PHP version has known security vulnerabilities and should "
24"be updated as soon as possible."
25msgstr ""
26"Votre version de PHP est obsolète ! Shaarli nécessite au moins PHP %s, et ne "
27"peut donc pas fonctionner. Votre version de PHP a des failles de sécurités "
28"connues et devrait être mise à jour au plus tôt."
29
30#: application/ApplicationUtils.php:183 application/ApplicationUtils.php:195
31msgid "directory is not readable"
32msgstr "le répertoire n'est pas accessible en lecture"
33
34#: application/ApplicationUtils.php:198
35msgid "directory is not writable"
36msgstr "le répertoire n'est pas accessible en écriture"
37
38#: application/ApplicationUtils.php:216
39msgid "file is not readable"
40msgstr "le fichier n'est pas accessible en lecture"
41
42#: application/ApplicationUtils.php:219
43msgid "file is not writable"
44msgstr "le fichier n'est pas accessible en écriture"
45
46#: application/Cache.php:16
47#, php-format
48msgid "Cannot purge %s: no directory"
49msgstr "Impossible de purger %s: le répertoire n'existe pas"
50
51#: application/FeedBuilder.php:151
52msgid "Direct link"
53msgstr "Liens directs"
54
55#: application/FeedBuilder.php:153
56#: tmp/daily.b91ef64efc3688266305ea9b42e5017e.rtpl.php:88
57#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:178
58msgid "Permalink"
59msgstr "Permalien"
60
61#: application/History.php:174
62msgid "History file isn't readable or writable"
63msgstr "Le fichier d'historique n'est pas accessible en lecture ou en écriture"
64
65#: application/History.php:185
66msgid "Could not parse history file"
67msgstr "Format incorrect pour le fichier d'historique"
68
69#: application/Languages.php:159
70msgid "Automatic"
71msgstr "Automatique"
72
73#: application/Languages.php:160
74msgid "English"
75msgstr "Anglais"
76
77#: application/Languages.php:161
78msgid "French"
79msgstr "Français"
80
81#: application/LinkDB.php:136
82msgid "You are not authorized to add a link."
83msgstr "Vous n'êtes pas autorisé à ajouter un lien."
84
85#: application/LinkDB.php:139
86msgid "Internal Error: A link should always have an id and URL."
87msgstr "Erreur interne : un lien devrait toujours avoir un ID et une URL."
88
89#: application/LinkDB.php:142
90msgid "You must specify an integer as a key."
91msgstr "Vous devez utiliser un entier comme clé."
92
93#: application/LinkDB.php:145
94msgid "Array offset and link ID must be equal."
95msgstr "La clé du tableau et l'ID du lien doivent être égaux."
96
97#: application/LinkDB.php:251
98#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:14
99#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:48
100#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:14
101#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:48
102msgid ""
103"The personal, minimalist, super-fast, database free, bookmarking service"
104msgstr ""
105"Le gestionnaire de marque-page personnel, minimaliste, et sans base de "
106"données"
107
108#: application/LinkDB.php:253
109msgid ""
110"Welcome to Shaarli! This is your first public bookmark. To edit or delete "
111"me, you must first login.\n"
112"\n"
113"To learn how to use Shaarli, consult the link \"Documentation\" at the "
114"bottom of this page.\n"
115"\n"
116"You use the community supported version of the original Shaarli project, by "
117"Sebastien Sauvage."
118msgstr ""
119"Bienvenue sur Shaarli ! Ceci est votre premier marque-page public. Pour me "
120"modifier ou me supprimer, vous devez d'abord vous connecter.\n"
121"\n"
122"Pour apprendre comment utiliser Shaarli, consultez le lien « Documentation » "
123"en bas de page.\n"
124"\n"
125"Vous utilisez la version supportée par la communauté du projet original "
126"Shaarli, de Sébastien Sauvage."
127
128#: application/LinkDB.php:267
129msgid "My secret stuff... - Pastebin.com"
130msgstr "Mes trucs secrets... - Pastebin.com"
131
132#: application/LinkDB.php:269
133msgid "Shhhh! I'm a private link only YOU can see. You can delete me too."
134msgstr ""
135"Pssst ! Je suis un lien privé que VOUS êtes le seul à voir. Vous pouvez me "
136"supprimer aussi."
137
138#: application/LinkFilter.php:452
139msgid "The link you are trying to reach does not exist or has been deleted."
140msgstr "Le lien que vous essayez de consulter n'existe pas ou a été supprimé."
141
142#: application/NetscapeBookmarkUtils.php:35
143msgid "Invalid export selection:"
144msgstr "Sélection d'export invalide :"
145
146#: application/NetscapeBookmarkUtils.php:81
147#, php-format
148msgid "File %s (%d bytes) "
149msgstr "Le fichier %s (%d octets) "
150
151#: application/NetscapeBookmarkUtils.php:83
152msgid "has an unknown file format. Nothing was imported."
153msgstr "a un format inconnu. Rien n'a été importé."
154
155#: application/NetscapeBookmarkUtils.php:86
156#, php-format
157msgid ""
158"was successfully processed in %d seconds: %d links imported, %d links "
159"overwritten, %d links skipped."
160msgstr ""
161"a été importé avec succès en %d secondes : %d liens importés, %d liens "
162"écrasés, %d liens ignorés."
163
164#: application/PageBuilder.php:167
165msgid "The page you are trying to reach does not exist or has been deleted."
166msgstr "La page que vous essayez de consulter n'existe pas ou a été supprimée."
167
168#: application/PageBuilder.php:169
169msgid "404 Not Found"
170msgstr "404 Introuvable"
171
172#: application/PluginManager.php:243
173#, php-format
174msgid "Plugin \"%s\" files not found."
175msgstr "Les fichiers de l'extension \"%s\" sont introuvables."
176
177#: application/Updater.php:76
178msgid "Couldn't retrieve Updater class methods."
179msgstr "Impossible de récupérer les méthodes de la classe Updater."
180
181#: application/Updater.php:493
182msgid "An error occurred while running the update "
183msgstr "Une erreur s'est produite lors de l'exécution de la mise à jour "
184
185#: application/Updater.php:533
186msgid "Updates file path is not set, can't write updates."
187msgstr ""
188"Le chemin vers le fichier de mise à jour n'est pas défini, impossible "
189"d'écrire les mises à jour."
190
191#: application/Updater.php:538
192msgid "Unable to write updates in "
193msgstr "Impossible d'écrire les mises à jour dans "
194
195#: application/Utils.php:376 tests/UtilsTest.php:340
196msgid "Setting not set"
197msgstr "Paramètre non défini"
198
199#: application/Utils.php:383 tests/UtilsTest.php:338 tests/UtilsTest.php:339
200msgid "Unlimited"
201msgstr "Illimité"
202
203#: application/Utils.php:386 tests/UtilsTest.php:335 tests/UtilsTest.php:336
204#: tests/UtilsTest.php:350
205msgid "B"
206msgstr "o"
207
208#: application/Utils.php:386 tests/UtilsTest.php:329 tests/UtilsTest.php:330
209#: tests/UtilsTest.php:337
210msgid "kiB"
211msgstr "ko"
212
213#: application/Utils.php:386 tests/UtilsTest.php:331 tests/UtilsTest.php:332
214#: tests/UtilsTest.php:348 tests/UtilsTest.php:349
215msgid "MiB"
216msgstr "Mo"
217
218#: application/Utils.php:386 tests/UtilsTest.php:333 tests/UtilsTest.php:334
219msgid "GiB"
220msgstr "Go"
221
222#: application/config/ConfigJson.php:52 application/config/ConfigPhp.php:121
223msgid ""
224"Shaarli could not create the config file. Please make sure Shaarli has the "
225"right to write in the folder is it installed in."
226msgstr ""
227"Shaarli n'a pas pu créer le fichier de configuration. Merci de vérifier que "
228"Shaarli a les droits d'écriture dans le dossier dans lequel il est installé."
229
230#: application/config/ConfigManager.php:135
231msgid "Invalid setting key parameter. String expected, got: "
232msgstr "Clé de paramétrage invalide. Chaîne de caractères obtenue, attendu : "
233
234#: application/config/exception/MissingFieldConfigException.php:21
235#, php-format
236msgid "Configuration value is required for %s"
237msgstr "Le paramètre %s est obligatoire"
238
239#: application/config/exception/PluginConfigOrderException.php:15
240msgid "An error occurred while trying to save plugins loading order."
241msgstr ""
242"Une erreur s'est produite lors de la sauvegarde de l'ordre des extensions."
243
244#: application/config/exception/UnauthorizedConfigException.php:16
245msgid "You are not authorized to alter config."
246msgstr "Vous n'êtes pas autorisé à modifier la configuration."
247
248#: application/exceptions/IOException.php:19
249msgid "Error accessing"
250msgstr "Une erreur s'est produite en accédant à"
251
252#: index.php:135
253msgid "Shared links on "
254msgstr "Liens partagés sur "
255
256#: index.php:157
257msgid "Insufficient permissions:"
258msgstr "Permissions insuffisantes :"
259
260#: index.php:384
261msgid "I said: NO. You are banned for the moment. Go away."
262msgstr "NON. Vous êtes banni pour le moment. Revenez plus tard."
263
264#: index.php:449
265msgid "Wrong login/password."
266msgstr "Nom d'utilisateur ou mot de passe incorrects."
267
268#: index.php:1092
269msgid "You are not supposed to change a password on an Open Shaarli."
270msgstr ""
271"Vous n'êtes pas censé modifier le mot de passe d'un Shaarli en mode ouvert."
272
273#: index.php:1097 index.php:1138 index.php:1214 index.php:1244 index.php:1344
274msgid "Wrong token."
275msgstr "Jeton invalide."
276
277#: index.php:1102
278msgid "The old password is not correct."
279msgstr "L'ancien mot de passe est incorrect."
280
281#: index.php:1122
282msgid "Your password has been changed"
283msgstr "Votre mot de passe a été modifié"
284
285#: index.php:1175
286msgid "Configuration was saved."
287msgstr "La configuration a été sauvegardé."
288
289#: index.php:1226
290#, php-format
291msgid "The tag was removed from %d link."
292msgid_plural "The tag was removed from %d links."
293msgstr[0] "Le tag a été supprimé de %d lien."
294msgstr[1] "Le tag a été supprimé de %d liens."
295
296#: index.php:1227
297#, php-format
298msgid "The tag was renamed in %d link."
299msgid_plural "The tag was renamed in %d links."
300msgstr[0] "Le tag a été renommé dans %d lien."
301msgstr[1] "Le tag a été renommé dans %d liens."
302
303#: index.php:1443
304msgid "Note: "
305msgstr "Note : "
306
307#: index.php:1552
308#, php-format
309msgid ""
310"The file you are trying to upload is probably bigger than what this "
311"webserver can accept (%s). Please upload in smaller chunks."
312msgstr ""
313"Le fichier que vous essayer d'envoyer est probablement plus lourd que ce que "
314"le serveur web peut accepter (%s). Merci de l'envoyer en parties plus "
315"légères."
316
317#: index.php:1972
318#, php-format
319msgid ""
320"<pre>Sessions do not seem to work correctly on your server.<br>Make sure the "
321"variable \"session.save_path\" is set correctly in your PHP config, and that "
322"you have write access to it.<br>It currently points to %s.<br>On some "
323"browsers, accessing your server via a hostname like 'localhost' or any "
324"custom hostname without a dot causes cookie storage to fail. We recommend "
325"accessing your server via it's IP address or Fully Qualified Domain Name.<br>"
326msgstr ""
327"<pre>Les sesssions ne semble pas fonctionner sur ce serveur.<br>Assurez vous "
328"que la variable « session.save_path » est correctement définie dans votre "
329"fichier de configuration PHP, et que vous y avez les droits d'écriture."
330"<br>Ce paramètre pointe actuellement sur %s.<br>Sur certains navigateurs, "
331"accéder à votre serveur depuis un nom d'hôte comme « localhost » ou autre "
332"nom personnalisé sans point '.' entraine l'échec de la sauvegarde des "
333"cookies. Nous vous recommandons d'accéder à votre serveur depuis son adresse "
334"IP ou un <em>Fully Qualified Domain Name</em>.<br>"
335
336#: index.php:1982
337msgid "Click to try again."
338msgstr "Cliquer ici pour réessayer."
339
340#: plugins/addlink_toolbar/addlink_toolbar.php:29
341msgid "URI"
342msgstr "URI"
343
344#: plugins/addlink_toolbar/addlink_toolbar.php:33
345#: tmp/addlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:19
346msgid "Add link"
347msgstr "Shaare"
348
349#: plugins/addlink_toolbar/addlink_toolbar.php:50
350msgid "Adds the addlink input on the linklist page."
351msgstr "Ajout le formulaire d'ajout de liens sur la page principale."
352
353#: plugins/archiveorg/archiveorg.php:23
354msgid "View on archive.org"
355msgstr "Voir sur archive.org"
356
357#: plugins/archiveorg/archiveorg.php:36
358msgid "For each link, add an Archive.org icon."
359msgstr "Pour chaque lien, ajoute une icône pour Archive.org."
360
361#: plugins/demo_plugin/demo_plugin.php:469
362msgid ""
363"A demo plugin covering all use cases for template designers and plugin "
364"developers."
365msgstr ""
366"Une extension de démonstration couvrant tous les cas d'utilisation pour les "
367"designers et les développeurs."
368
369#: plugins/isso/isso.php:20
370msgid ""
371"Isso plugin error: Please define the \"ISSO_SERVER\" setting in the plugin "
372"administration page."
373msgstr ""
374"Erreur de l'extension Isso : Merci de définir le paramètre « ISSO_SERVER » "
375"dans la page d'administration des extensions."
376
377#: plugins/isso/isso.php:63
378msgid "Let visitor comment your shaares on permalinks with Isso."
379msgstr ""
380"Permet aux visiteurs de commenter vos shaares sur les permaliens avec Isso."
381
382#: plugins/isso/isso.php:64
383msgid "Isso server URL (without 'http://')"
384msgstr "URL du serveur Isso (sans 'http://')"
385
386#: plugins/markdown/markdown.php:159
387msgid "Description will be rendered with"
388msgstr "La description sera générée avec"
389
390#: plugins/markdown/markdown.php:160
391msgid "Markdown syntax documentation"
392msgstr "Documentation sur la syntaxe Markdown"
393
394#: plugins/markdown/markdown.php:161
395msgid "Markdown syntax"
396msgstr "la syntaxe Markdown"
397
398#: plugins/markdown/markdown.php:340
399msgid ""
400"Render shaare description with Markdown syntax.<br><strong>Warning</"
401"strong>:\n"
402"If your shaared descriptions contained HTML tags before enabling the "
403"markdown plugin,\n"
404"enabling it might break your page.\n"
405"See the <a href=\"https://github.com/shaarli/Shaarli/tree/master/plugins/"
406"markdown#html-rendering\">README</a>."
407msgstr ""
408"Utilise la syntaxe Markdown pour la description des liens."
409"<br><strong>Attention</strong> :\n"
410"Si vous aviez des descriptions contenant du HTML avant d'activer cette "
411"extension,\n"
412"l'activer pourrait déformer vos pages.\n"
413"Voir le <a href=\"https://github.com/shaarli/Shaarli/tree/master/plugins/"
414"markdown#html-rendering\">README</a>."
415
416#: plugins/piwik/piwik.php:21
417msgid ""
418"Piwik plugin error: Please define PIWIK_URL and PIWIK_SITEID in the plugin "
419"administration page."
420msgstr ""
421"Erreur de l'extension Piwik : Merci de définir les paramètres PIWIK_URL et "
422"PIWIK_SITEID dans la page d'administration des extensions."
423
424#: plugins/piwik/piwik.php:70
425msgid "A plugin that adds Piwik tracking code to Shaarli pages."
426msgstr "Ajoute le code de traçage de Piwik sur les pages de Shaarli."
427
428#: plugins/piwik/piwik.php:71
429msgid "Piwik URL"
430msgstr "URL de Piwik"
431
432#: plugins/piwik/piwik.php:72
433msgid "Piwik site ID"
434msgstr "Site ID de Piwik"
435
436#: plugins/playvideos/playvideos.php:22
437msgid "Video player"
438msgstr "Lecteur vidéo"
439
440#: plugins/playvideos/playvideos.php:25
441msgid "Play Videos"
442msgstr "Jouer les vidéos"
443
444#: plugins/playvideos/playvideos.php:56
445msgid "Add a button in the toolbar allowing to watch all videos."
446msgstr ""
447"Ajoute un bouton dans la barre de menu pour regarder toutes les vidéos."
448
449#: plugins/playvideos/youtube_playlist.js:214
450msgid "plugins/playvideos/jquery-1.11.2.min.js"
451msgstr ""
452
453#: plugins/pubsubhubbub/pubsubhubbub.php:69
454#, php-format
455msgid "Could not publish to PubSubHubbub: %s"
456msgstr "Impossible de publier vers PubSubHubbub : %s"
457
458#: plugins/pubsubhubbub/pubsubhubbub.php:95
459#, php-format
460msgid "Could not post to %s"
461msgstr "Impossible de publier vers %s"
462
463#: plugins/pubsubhubbub/pubsubhubbub.php:99
464#, php-format
465msgid "Bad response from the hub %s"
466msgstr "Mauvaise réponse du hub %s"
467
468#: plugins/pubsubhubbub/pubsubhubbub.php:110
469msgid "Enable PubSubHubbub feed publishing."
470msgstr "Active la publication de flux vers PubSubHubbub."
471
472#: plugins/qrcode/qrcode.php:69 plugins/wallabag/wallabag.php:68
473msgid "For each link, add a QRCode icon."
474msgstr "Pour chaque liens, ajouter une icône de QRCode."
475
476#: plugins/wallabag/wallabag.php:21
477msgid ""
478"Wallabag plugin error: Please define the \"WALLABAG_URL\" setting in the "
479"plugin administration page."
480msgstr ""
481"Erreur de l'extension Wallabag : Merci de définir le paramètre « "
482"WALLABAG_URL » dans la page d'administration des extensions."
483
484#: plugins/wallabag/wallabag.php:47
485msgid "Save to wallabag"
486msgstr "Sauvegarder dans Wallabag"
487
488#: plugins/wallabag/wallabag.php:69
489msgid "Wallabag API URL"
490msgstr "URL de l'API Wallabag"
491
492#: plugins/wallabag/wallabag.php:70
493msgid "Wallabag API version (1 or 2)"
494msgstr "Version de l'API Wallabag (1 ou 2)"
495
496#: tests/LanguagesTest.php:188 tests/LanguagesTest.php:201
497#: tests/languages/fr/LanguagesFrTest.php:160
498#: tests/languages/fr/LanguagesFrTest.php:173
499#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:81
500#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:81
501msgid "Search"
502msgid_plural "Search"
503msgstr[0] "Rechercher"
504msgstr[1] "Rechercher"
505
506#: tmp/404.b91ef64efc3688266305ea9b42e5017e.rtpl.php:12
507msgid "Sorry, nothing to see here."
508msgstr "Désolé, il y a rien à voir ici."
509
510#: tmp/addlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:13
511msgid "Shaare a new link"
512msgstr "Partager un nouveau lien"
513
514#: tmp/addlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
515msgid "URL or leave empty to post a note"
516msgstr "URL ou laisser vide pour créer une note"
517
518#: tmp/changepassword.b91ef64efc3688266305ea9b42e5017e.rtpl.php:13
519#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:29
520msgid "Change password"
521msgstr "Modification du mot de passe"
522
523#: tmp/changepassword.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
524msgid "Current password"
525msgstr "Mot de passe actuel"
526
527#: tmp/changepassword.b91ef64efc3688266305ea9b42e5017e.rtpl.php:19
528msgid "New password"
529msgstr "Nouveau mot de passe"
530
531#: tmp/changepassword.b91ef64efc3688266305ea9b42e5017e.rtpl.php:23
532msgid "Change"
533msgstr "Changer"
534
535#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:13
536#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:36
537msgid "Manage tags"
538msgstr "Gérer les tags"
539
540#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
541#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:77
542msgid "Tag"
543msgstr "Tag"
544
545#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:24
546msgid "New name"
547msgstr "Nouveau nom"
548
549#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:31
550msgid "Case sensitive"
551msgstr "Sensible à la casse"
552
553#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:34
554msgid "Rename"
555msgstr "Renommer"
556
557#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:35
558#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:79
559#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:172
560msgid "Delete"
561msgstr "Supprimer"
562
563#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:39
564msgid "You can also edit tags in the"
565msgstr "Vous pouvez aussi modifier les tags dans la"
566
567#: tmp/changetag.b91ef64efc3688266305ea9b42e5017e.rtpl.php:39
568msgid "tag list"
569msgstr "liste des tags"
570
571#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:24
572msgid "Configure"
573msgstr "Configurer"
574
575#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:29
576msgid "title"
577msgstr "titre"
578
579#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:43
580msgid "Home link"
581msgstr "Lien vers l'accueil"
582
583#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:44
584msgid "Default value"
585msgstr "Valeur par défaut"
586
587#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:58
588msgid "Theme"
589msgstr "Thème"
590
591#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:87
592#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:78
593msgid "Language"
594msgstr "Langue"
595
596#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:116
597#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:102
598msgid "Timezone"
599msgstr "Fuseau horaire"
600
601#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:117
602#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:103
603msgid "Continent"
604msgstr "Continent"
605
606#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:117
607#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:103
608msgid "City"
609msgstr "Ville"
610
611#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:164
612msgid "Disable session cookie hijacking protection"
613msgstr "Désactiver la protection contre le détournement de cookies"
614
615#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:166
616msgid "Check this if you get disconnected or if your IP address changes often"
617msgstr ""
618"Cocher cette case si vous êtes souvent déconnecté ou si votre adresse IP "
619"change souvent"
620
621#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:183
622msgid "Private links by default"
623msgstr "Liens privés par défaut"
624
625#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:184
626msgid "All new links are private by default"
627msgstr "Tous les nouveaux liens sont privés par défaut"
628
629#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:199
630msgid "RSS direct links"
631msgstr "Liens directs dans le flux RSS"
632
633#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:200
634msgid "Check this to use direct URL instead of permalink in feeds"
635msgstr ""
636"Cocher cette case pour utiliser des liens directs au lieu des permaliens "
637"dans le flux RSS"
638
639#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:215
640msgid "Hide public links"
641msgstr "Cacher les liens publics"
642
643#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:216
644msgid "Do not show any links if the user is not logged in"
645msgstr "N'afficher aucun lien sans être connecté"
646
647#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:231
648#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:150
649msgid "Check updates"
650msgstr "Vérifier les mises à jour"
651
652#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:232
653#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:152
654msgid "Notify me when a new release is ready"
655msgstr "Me notifier lorsqu'une nouvelle version est disponible"
656
657#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:247
658#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:169
659msgid "Enable REST API"
660msgstr "Activer l'API REST"
661
662#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:248
663#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:170
664msgid "Allow third party software to use Shaarli such as mobile application"
665msgstr ""
666"Permets aux applications tierces d'utiliser Shaarli, par exemple les "
667"applications mobiles"
668
669#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:263
670msgid "API secret"
671msgstr "Clé d'API secrète"
672
673#: tmp/configure.b91ef64efc3688266305ea9b42e5017e.rtpl.php:274
674#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:74
675#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:139
676#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:199
677msgid "Save"
678msgstr "Enregistrer"
679
680#: tmp/daily.b91ef64efc3688266305ea9b42e5017e.rtpl.php:15
681msgid "The Daily Shaarli"
682msgstr "Le Quotidien Shaarli"
683
684#: tmp/daily.b91ef64efc3688266305ea9b42e5017e.rtpl.php:17
685msgid "1 RSS entry per day"
686msgstr "1 entrée RSS par jour"
687
688#: tmp/daily.b91ef64efc3688266305ea9b42e5017e.rtpl.php:37
689msgid "Previous day"
690msgstr "Jour précédent"
691
692#: tmp/daily.b91ef64efc3688266305ea9b42e5017e.rtpl.php:44
693msgid "All links of one day in a single page."
694msgstr "Tous les liens d'un jour sur une page."
695
696#: tmp/daily.b91ef64efc3688266305ea9b42e5017e.rtpl.php:51
697msgid "Next day"
698msgstr "Jour suivant"
699
700#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:14
701#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:170
702msgid "Edit"
703msgstr "Modifier"
704
705#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
706#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:26
707#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:26
708msgid "Shaare"
709msgstr "Shaare"
710
711#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:25
712msgid "Created:"
713msgstr "Création :"
714
715#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:28
716msgid "URL"
717msgstr "URL"
718
719#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:34
720msgid "Title"
721msgstr "Titre"
722
723#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:40
724#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:42
725#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:75
726#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:99
727#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:124
728msgid "Description"
729msgstr "Description"
730
731#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:46
732msgid "Tags"
733msgstr "Tags"
734
735#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:59
736#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:36
737#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:168
738msgid "Private"
739msgstr "Privé"
740
741#: tmp/editlink.b91ef64efc3688266305ea9b42e5017e.rtpl.php:74
742msgid "Apply Changes"
743msgstr "Appliquer les changements"
744
745#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
746msgid "Export Database"
747msgstr "Exporter les données"
748
749#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:24
750msgid "Selection"
751msgstr "Choisir"
752
753#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:31
754msgid "All"
755msgstr "Tous"
756
757#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:41
758msgid "Public"
759msgstr "Publics"
760
761#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:52
762msgid "Prepend note permalinks with this Shaarli instance's URL"
763msgstr "Préfixer les liens de notes avec l'URL de l'instance de Shaarli"
764
765#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:53
766msgid "Useful to import bookmarks in a web browser"
767msgstr "Utile pour importer les marques-pages dans un navigateur"
768
769#: tmp/export.b91ef64efc3688266305ea9b42e5017e.rtpl.php:65
770msgid "Export"
771msgstr "Exporter"
772
773#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
774msgid "Import Database"
775msgstr "Importer des données"
776
777#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:23
778msgid "Maximum size allowed:"
779msgstr "Taille maximum autorisée :"
780
781#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:29
782msgid "Visibility"
783msgstr "Visibilité"
784
785#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:36
786msgid "Use values from the imported file, default to public"
787msgstr ""
788"Utiliser les valeurs présentes dans le fichier d'import, public par défaut"
789
790#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:41
791msgid "Import all bookmarks as private"
792msgstr "Importer tous les liens comme privés"
793
794#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:46
795msgid "Import all bookmarks as public"
796msgstr "Importer tous les liens comme publics"
797
798#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:57
799msgid "Overwrite existing bookmarks"
800msgstr "Remplacer les liens existants"
801
802#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:58
803msgid "Duplicates based on URL"
804msgstr "Les doublons s'appuient sur les URL"
805
806#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:72
807msgid "Add default tags"
808msgstr "Ajouter des tags par défaut"
809
810#: tmp/import.b91ef64efc3688266305ea9b42e5017e.rtpl.php:83
811msgid "Import"
812msgstr "Importer"
813
814#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:22
815msgid "Install Shaarli"
816msgstr "Installation de Shaarli"
817
818#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:25
819msgid "It looks like it's the first time you run Shaarli. Please configure it."
820msgstr ""
821"Il semblerait que ça soit la première fois que vous lancez Shaarli. Merci de "
822"le configurer."
823
824#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:33
825#: tmp/loginform.b91ef64efc3688266305ea9b42e5017e.rtpl.php:30
826#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:147
827#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:147
828msgid "Username"
829msgstr "Nom d'utilisateur"
830
831#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:48
832#: tmp/loginform.b91ef64efc3688266305ea9b42e5017e.rtpl.php:34
833#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:148
834#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:148
835msgid "Password"
836msgstr "Mot de passe"
837
838#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:63
839msgid "Shaarli title"
840msgstr "Titre du Shaarli"
841
842#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:69
843msgid "My links"
844msgstr "Mes liens"
845
846#: tmp/install.b91ef64efc3688266305ea9b42e5017e.rtpl.php:182
847msgid "Install"
848msgstr "Installer"
849
850#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:14
851#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:80
852msgid "shaare"
853msgid_plural "shaares"
854msgstr[0] "shaare"
855msgstr[1] "shaares"
856
857#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:18
858#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:84
859msgid "private link"
860msgid_plural "private links"
861msgstr[0] "lien privé"
862msgstr[1] "liens privés"
863
864#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:31
865#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:117
866#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:117
867msgid "Search text"
868msgstr "Recherche texte"
869
870#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:38
871#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:124
872#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:124
873#: tmp/tag.cloud.b91ef64efc3688266305ea9b42e5017e.rtpl.php:33
874#: tmp/tag.cloud.b91ef64efc3688266305ea9b42e5017e.rtpl.php:61
875#: tmp/tag.list.b91ef64efc3688266305ea9b42e5017e.rtpl.php:33
876#: tmp/tag.list.b91ef64efc3688266305ea9b42e5017e.rtpl.php:71
877msgid "Filter by tag"
878msgstr "Filtrer par tag"
879
880#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:111
881msgid "Nothing found."
882msgstr "Aucun résultat."
883
884#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:119
885#, php-format
886msgid "%s result"
887msgid_plural "%s results"
888msgstr[0] "%s résultat"
889msgstr[1] "%s résultats"
890
891#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:123
892msgid "for"
893msgstr "pour"
894
895#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:130
896msgid "tagged"
897msgstr "taggé"
898
899#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:134
900msgid "Remove tag"
901msgstr "Retirer le tag"
902
903#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:143
904msgid "with status"
905msgstr "avec le statut"
906
907#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:154
908msgid "without any tag"
909msgstr "sans tag"
910
911#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:174
912#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:42
913#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:42
914msgid "Fold"
915msgstr "Replier"
916
917#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:176
918msgid "Edited: "
919msgstr "Modifié : "
920
921#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:180
922msgid "permalink"
923msgstr "permalien"
924
925#: tmp/linklist.b91ef64efc3688266305ea9b42e5017e.rtpl.php:182
926msgid "Add tag"
927msgstr "Ajouter un tag"
928
929#: tmp/linklist.paging.b91ef64efc3688266305ea9b42e5017e.rtpl.php:7
930#: tmp/linklist.paging.cedf684561d925457130839629000a81.rtpl.php:7
931msgid "Filters"
932msgstr "Filtres"
933
934#: tmp/linklist.paging.b91ef64efc3688266305ea9b42e5017e.rtpl.php:12
935#: tmp/linklist.paging.cedf684561d925457130839629000a81.rtpl.php:12
936msgid "Filter private links"
937msgstr "Filtrer par liens privés"
938
939#: tmp/linklist.paging.b91ef64efc3688266305ea9b42e5017e.rtpl.php:18
940#: tmp/linklist.paging.cedf684561d925457130839629000a81.rtpl.php:18
941msgid "Filter untagged links"
942msgstr "Filtrer par liens privés"
943
944#: tmp/linklist.paging.b91ef64efc3688266305ea9b42e5017e.rtpl.php:22
945#: tmp/linklist.paging.b91ef64efc3688266305ea9b42e5017e.rtpl.php:74
946#: tmp/linklist.paging.cedf684561d925457130839629000a81.rtpl.php:22
947#: tmp/linklist.paging.cedf684561d925457130839629000a81.rtpl.php:74
948#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:43
949#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:43
950msgid "Fold all"
951msgstr "Replier tout"
952
953#: tmp/linklist.paging.b91ef64efc3688266305ea9b42e5017e.rtpl.php:67
954#: tmp/linklist.paging.cedf684561d925457130839629000a81.rtpl.php:67
955msgid "Links per page"
956msgstr "Liens par page"
957
958#: tmp/loginform.b91ef64efc3688266305ea9b42e5017e.rtpl.php:15
959msgid ""
960"You have been banned after too many failed login attempts. Try again later."
961msgstr ""
962"Vous avez été banni après trop d'échec d'authentification. Merci de "
963"réessayer plus tard."
964
965#: tmp/loginform.b91ef64efc3688266305ea9b42e5017e.rtpl.php:28
966#: tmp/loginform.b91ef64efc3688266305ea9b42e5017e.rtpl.php:44
967#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:71
968#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:95
969#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:71
970#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:95
971msgid "Login"
972msgstr "Connexion"
973
974#: tmp/loginform.b91ef64efc3688266305ea9b42e5017e.rtpl.php:41
975#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:151
976#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:151
977msgid "Remember me"
978msgstr "Rester connecté"
979
980#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:14
981#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:48
982#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:14
983#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:48
984msgid "by the Shaarli community"
985msgstr "par la communauté Shaarli"
986
987#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:15
988#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:15
989msgid "Documentation"
990msgstr "Documentation"
991
992#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:44
993#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:44
994msgid "Expand"
995msgstr "Déplier"
996
997#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:45
998#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:45
999msgid "Expand all"
1000msgstr "Déplier tout"
1001
1002#: tmp/page.footer.b91ef64efc3688266305ea9b42e5017e.rtpl.php:46
1003#: tmp/page.footer.cedf684561d925457130839629000a81.rtpl.php:46
1004msgid "Are you sure you want to delete this link?"
1005msgstr "Êtes-vous sûr de vouloir supprimer ce lien ?"
1006
1007#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:31
1008#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:31
1009msgid "Tools"
1010msgstr "Outils"
1011
1012#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:36
1013#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:36
1014#: tmp/tag.cloud.b91ef64efc3688266305ea9b42e5017e.rtpl.php:19
1015msgid "Tag cloud"
1016msgstr "Nuage de tags"
1017
1018#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:39
1019#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:39
1020msgid "Picture wall"
1021msgstr "Mur d'images"
1022
1023#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:42
1024#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:42
1025msgid "Daily"
1026msgstr "Quotidien"
1027
1028#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:61
1029#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:86
1030#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:61
1031#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:86
1032msgid "RSS Feed"
1033msgstr "Flux RSS"
1034
1035#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:66
1036#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:102
1037#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:66
1038#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:102
1039msgid "Logout"
1040msgstr "Déconnexion"
1041
1042#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:169
1043#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:169
1044msgid "is available"
1045msgstr "est disponible"
1046
1047#: tmp/page.header.b91ef64efc3688266305ea9b42e5017e.rtpl.php:176
1048#: tmp/page.header.cedf684561d925457130839629000a81.rtpl.php:176
1049msgid "Error"
1050msgstr "Erreur"
1051
1052#: tmp/picwall.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
1053msgid "Picture Wall"
1054msgstr "Mur d'images"
1055
1056#: tmp/picwall.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
1057msgid "pics"
1058msgstr "images"
1059
1060#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:15
1061msgid "You need to enable Javascript to change plugin loading order."
1062msgstr ""
1063"Vous devez activer Javascript pour pouvoir modifier l'ordre des extensions."
1064
1065#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:26
1066#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:22
1067msgid "Plugin administration"
1068msgstr "Administration des extensions"
1069
1070#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:29
1071msgid "Enabled Plugins"
1072msgstr "Extensions activées"
1073
1074#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:34
1075#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:155
1076msgid "No plugin enabled."
1077msgstr "Aucune extension activée."
1078
1079#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:40
1080#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:73
1081msgid "Disable"
1082msgstr "Désactiver"
1083
1084#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:41
1085#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:74
1086#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:98
1087#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:123
1088msgid "Name"
1089msgstr "Nom"
1090
1091#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:43
1092#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:76
1093msgid "Order"
1094msgstr "Ordre"
1095
1096#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:86
1097msgid "Disabled Plugins"
1098msgstr "Extensions désactivées"
1099
1100#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:91
1101msgid "No plugin disabled."
1102msgstr "Aucune extension désactivée."
1103
1104#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:97
1105#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:122
1106msgid "Enable"
1107msgstr "Activer"
1108
1109#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:134
1110msgid "More plugins available"
1111msgstr "Plus d'extensions disponibles"
1112
1113#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:136
1114msgid "in the documentation"
1115msgstr "dans la documentation"
1116
1117#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:150
1118msgid "Plugin configuration"
1119msgstr "Configuration des extensions"
1120
1121#: tmp/pluginsadmin.b91ef64efc3688266305ea9b42e5017e.rtpl.php:195
1122msgid "No parameter available."
1123msgstr "Aucun paramètre disponible."
1124
1125#: tmp/tag.cloud.b91ef64efc3688266305ea9b42e5017e.rtpl.php:19
1126#: tmp/tag.list.b91ef64efc3688266305ea9b42e5017e.rtpl.php:19
1127msgid "tags"
1128msgstr "tags"
1129
1130#: tmp/tag.cloud.b91ef64efc3688266305ea9b42e5017e.rtpl.php:23
1131#: tmp/tag.list.b91ef64efc3688266305ea9b42e5017e.rtpl.php:23
1132msgid "List all links with those tags"
1133msgstr "Lister tous les liens avec ces tags"
1134
1135#: tmp/tag.list.b91ef64efc3688266305ea9b42e5017e.rtpl.php:19
1136msgid "Tag list"
1137msgstr "List des tags"
1138
1139#: tmp/tag.sort.b91ef64efc3688266305ea9b42e5017e.rtpl.php:3
1140#: tmp/tag.sort.cedf684561d925457130839629000a81.rtpl.php:3
1141msgid "Sort by:"
1142msgstr "Trier par :"
1143
1144#: tmp/tag.sort.b91ef64efc3688266305ea9b42e5017e.rtpl.php:5
1145#: tmp/tag.sort.cedf684561d925457130839629000a81.rtpl.php:5
1146msgid "Cloud"
1147msgstr "Nuage"
1148
1149#: tmp/tag.sort.b91ef64efc3688266305ea9b42e5017e.rtpl.php:6
1150#: tmp/tag.sort.cedf684561d925457130839629000a81.rtpl.php:6
1151msgid "Most used"
1152msgstr "Plus utilisés"
1153
1154#: tmp/tag.sort.b91ef64efc3688266305ea9b42e5017e.rtpl.php:7
1155#: tmp/tag.sort.cedf684561d925457130839629000a81.rtpl.php:7
1156msgid "Alphabetical"
1157msgstr "Alphabétique"
1158
1159#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:14
1160msgid "Settings"
1161msgstr "Paramètres"
1162
1163#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:16
1164msgid "Change Shaarli settings: title, timezone, etc."
1165msgstr "Changer les paramètres de Shaarli : titre, fuseau horaire, etc."
1166
1167#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:17
1168msgid "Configure your Shaarli"
1169msgstr "Conguration de Shaarli"
1170
1171#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:21
1172msgid "Enable, disable and configure plugins"
1173msgstr "Activer, désactiver et configurer les extensions"
1174
1175#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:28
1176msgid "Change your password"
1177msgstr "Modification du mot de passe"
1178
1179#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:35
1180msgid "Rename or delete a tag in all links"
1181msgstr "Rename or delete a tag in all links"
1182
1183#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:41
1184msgid ""
1185"Import Netscape HTML bookmarks (as exported from Firefox, Chrome, Opera, "
1186"delicious...)"
1187msgstr ""
1188"Importer des marques pages au format Netscape HTML (comme exportés depuis "
1189"Firefox, Chrome, Opera, delicious...)"
1190
1191#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:42
1192msgid "Import links"
1193msgstr "Importer des liens"
1194
1195#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:47
1196msgid ""
1197"Export Netscape HTML bookmarks (which can be imported in Firefox, Chrome, "
1198"Opera, delicious...)"
1199msgstr ""
1200"Exporter les marques pages au format Netscape HTML (comme exportés depuis "
1201"Firefox, Chrome, Opera, delicious...)"
1202
1203#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:48
1204msgid "Export database"
1205msgstr "Exporter les données"
1206
1207#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:71
1208msgid ""
1209"Drag one of these button to your bookmarks toolbar or right-click it and "
1210"\"Bookmark This Link\""
1211msgstr ""
1212"Glisser un de ces bouttons dans votre barre de favoris ou cliquer droit "
1213"dessus et « Ajouter aux favoris »"
1214
1215#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:72
1216msgid "then click on the bookmarklet in any page you want to share."
1217msgstr ""
1218"puis cliquer sur le marque page depuis un site que vous souhaitez partager."
1219
1220#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:76
1221#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:100
1222msgid ""
1223"Drag this link to your bookmarks toolbar or right-click it and Bookmark This "
1224"Link"
1225msgstr ""
1226"Glisser ce lien dans votre barre de favoris ou cliquer droit dessus et « "
1227"Ajouter aux favoris »"
1228
1229#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:77
1230msgid "then click ✚Shaare link button in any page you want to share"
1231msgstr "puis cliquer sur ✚Shaare depuis un site que vous souhaitez partager"
1232
1233#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:86
1234#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:108
1235msgid "The selected text is too long, it will be truncated."
1236msgstr "Le texte sélectionné est trop long, il sera tronqué."
1237
1238#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:96
1239msgid "Shaare link"
1240msgstr "Shaare"
1241
1242#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:101
1243msgid ""
1244"Then click ✚Add Note button anytime to start composing a private Note (text "
1245"post) to your Shaarli"
1246msgstr ""
1247"Puis cliquer sur ✚Add Note pour commencer à rédiger une Note sur Shaarli"
1248
1249#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:117
1250msgid "Add Note"
1251msgstr "Ajouter une Note"
1252
1253#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:129
1254msgid ""
1255"You need to browse your Shaarli over <strong>HTTPS</strong> to use this "
1256"functionality."
1257msgstr ""
1258"Vous devez utiliser Shaarli en <strong>HTTPS</strong> pour utiliser cette "
1259"fonctionalité."
1260
1261#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:134
1262msgid "Add to"
1263msgstr "Ajouter à"
1264
1265#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:145
1266msgid "3rd party"
1267msgstr "Applications tierces"
1268
1269#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:147
1270#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:153
1271msgid "Plugin"
1272msgstr "Extension"
1273
1274#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:148
1275#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:154
1276msgid "plugin"
1277msgstr "extension"
1278
1279#: tmp/tools.b91ef64efc3688266305ea9b42e5017e.rtpl.php:175
1280msgid ""
1281"Drag this link to your bookmarks toolbar, or right-click it and choose "
1282"Bookmark This Link"
1283msgstr ""
1284"Glisser ce lien dans votre barre de favoris ou cliquer droit dessus et « "
1285"Ajouter aux favoris »"
1286
1287#~ msgid "Redirector"
1288#~ msgstr "Redirecteur"
1289
1290#~ msgid "e. g."
1291#~ msgstr "ex :"
1292
1293#~ msgid "will mask the HTTP_REFERER"
1294#~ msgstr "masque le HTTP_REFERER"
1295
1296#~ msgid ""
1297#~ "An error occurred while parsing JSON configuration file (%s): error code #"
1298#~ "%d"
1299#~ msgstr ""
1300#~ "Une erreur s'est produite lors de la lecture du fichier de configuration "
1301#~ "JSON (%s) : code d'erreur #%d"
1302
1303#~ msgid ""
1304#~ "Please check your JSON syntax (without PHP comment tags) using a JSON "
1305#~ "lint tool such as "
1306#~ msgstr ""
1307#~ "Merci de vérifier la syntaxe JSON (sans les balises de commentaires PHP) "
1308#~ "en utilisant un validateur de JSON tel que "
1309
1310#~ msgid ""
1311#~ "Error: missing Composer dependencies\n"
1312#~ "\n"
1313#~ "If you installed Shaarli through Git or using the development branch,\n"
1314#~ "please refer to the installation documentation to install PHP "
1315#~ "dependencies using Composer:\n"
1316#~ msgstr ""
1317#~ "Erreur : les dépendances Composer sont manquantes\n"
1318#~ "\n"
1319#~ "Si vous avez installé Shaarli avec Git ou depuis la branche de "
1320#~ "développement\n"
1321#~ "merci de consulter la documentation d'installation pour installer les "
1322#~ "dépendances Composer :\n"
1323#~ "\n"
1324
1325#~ msgid "Sessions do not seem to work correctly on your server."
1326#~ msgstr "Les sessions ne semblent "
1327
1328#~ msgid "Tag was renamed in "
1329#~ msgstr "Le tag a été renommé dans "
1330
1331#, fuzzy
1332#~| msgid "My links"
1333#~ msgid " links"
1334#~ msgstr "Mes liens"
1335
1336#, fuzzy
1337#~| msgid ""
1338#~| "Error: missing Composer configuration\n"
1339#~| "\n"
1340#~ msgid "Error: missing Composer configuration"
1341#~ msgstr ""
1342#~ "Erreur : la configuration Composer est manquante\n"
1343#~ "\n"
1344
1345#, fuzzy
1346#~| msgid ""
1347#~| "Shaarli could not create the config file. Please make sure Shaarli has "
1348#~| "the right to write in the folder is it installed in."
1349#~ msgid ""
1350#~ "Shaarli could not create the config file. \n"
1351#~ " Please make sure Shaarli has the right to write in the "
1352#~ "folder is it installed in."
1353#~ msgstr ""
1354#~ "Shaarli n'a pas pu créer le fichier de configuration. Merci de vérifier "
1355#~ "que Shaarli a les droits d'écriture dans le dossier dans lequel il est "
1356#~ "installé."
1357
1358#, fuzzy
1359#~| msgid "Plugin"
1360#~ msgid "Plugin \""
1361#~ msgstr "Extension"
1362
1363#~ msgid "Your PHP version is obsolete!"
1364#~ msgstr "Votre version de PHP est obsolète !"
1365
1366#~ msgid " Shaarli requires at least PHP "
1367#~ msgstr "Shaarli nécessite au moins PHP"
diff --git a/inc/plugin_admin.js b/inc/plugin_admin.js
index 134ffb33..4b55e0f3 100644
--- a/inc/plugin_admin.js
+++ b/inc/plugin_admin.js
@@ -1,3 +1,31 @@
1/** @licstart The following is the entire license notice for the
2 * JavaScript code in this page.
3 *
4 * Copyright: (c) 2011-2015 Sébastien SAUVAGE <sebsauvage@sebsauvage.net>
5 * (c) 2011-2017 The Shaarli Community, see AUTHORS
6 *
7 * This software is provided 'as-is', without any express or implied warranty.
8 * In no event will the authors be held liable for any damages arising from
9 * the use of this software.
10 *
11 * Permission is granted to anyone to use this software for any purpose,
12 * including commercial applications, and to alter it and redistribute it
13 * freely, subject to the following restrictions:
14 *
15 * 1. The origin of this software must not be misrepresented; you must not
16 * claim that you wrote the original software. If you use this software
17 * in a product, an acknowledgment in the product documentation would
18 * be appreciated but is not required.
19 *
20 * 2. Altered source versions must be plainly marked as such, and must
21 * not be misrepresented as being the original software.
22 *
23 * 3. This notice may not be removed or altered from any source distribution.
24 *
25 * @licend The above is the entire license notice
26 * for the JavaScript code in this page.
27 */
28
1/** 29/**
2 * Change the position counter of a row. 30 * Change the position counter of a row.
3 * 31 *
@@ -22,14 +50,22 @@ function changePos(elem, toPos)
22function changeOrder(pos, move) 50function changeOrder(pos, move)
23{ 51{
24 var newpos = parseInt(pos) + move; 52 var newpos = parseInt(pos) + move;
25 var line = document.querySelector('[data-order="'+ pos +'"]'); 53 var lines = document.querySelectorAll('[data-order="'+ pos +'"]');
26 var changeline = document.querySelector('[data-order="'+ newpos +'"]'); 54 var changelines = document.querySelectorAll('[data-order="'+ newpos +'"]');
27 var parent = changeline.parentNode; 55
56 // If we go down reverse lines to preserve the rows order
57 if (move > 0) {
58 lines = [].slice.call(lines).reverse();
59 }
60
61 for (var i = 0 ; i < lines.length ; i++) {
62 var parent = changelines[0].parentNode;
63 changePos(lines[i], newpos);
64 changePos(changelines[i], parseInt(pos));
65 var changeItem = move < 0 ? changelines[0] : changelines[changelines.length - 1].nextSibling;
66 parent.insertBefore(lines[i], changeItem);
67 }
28 68
29 changePos(line, newpos);
30 changePos(changeline, parseInt(pos));
31 var changeItem = move < 0 ? changeline : changeline.nextSibling;
32 parent.insertBefore(line, changeItem);
33} 69}
34 70
35/** 71/**
diff --git a/inc/reset.css b/inc/reset.css
deleted file mode 100644
index e29699e2..00000000
--- a/inc/reset.css
+++ /dev/null
@@ -1,6 +0,0 @@
1/* CSS Reset from Yahoo to cope with browsers CSS inconsistencies. */
2/*
3 Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html
4 version: 2.8.2r1
5 */
6html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var,optgroup{font-style:inherit;font-weight:inherit;}del,ins{text-decoration:none;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:baseline;}sub{vertical-align:baseline;}legend{color:#000;}input,button,textarea,select,optgroup,option{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;}input,button,textarea,select{*font-size:100%;} \ No newline at end of file
diff --git a/inc/shaarli.css b/inc/shaarli.css
deleted file mode 100644
index a24d4b7c..00000000
--- a/inc/shaarli.css
+++ /dev/null
@@ -1,1198 +0,0 @@
1/* Cascading Stylesheet for Shaarli - https://github.com/shaarli/Shaarli */
2
3body {
4 font-family: "Trebuchet MS",Verdana,Arial,Helvetica,sans-serif;
5 font-size: 10pt;
6 background-color: #ffffff;
7 word-wrap: break-word;
8}
9
10input, textarea {
11 background-color: #dedede;
12 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dedede), to(#ffffff));
13 background: -webkit-linear-gradient(#dedede, #ffffff);
14 background: -moz-linear-gradient(#dedede, #ffffff);
15 background: -ms-linear-gradient(#dedede, #ffffff);
16 background: -o-linear-gradient(#dedede, #ffffff);
17 background: linear-gradient(#dedede, #ffffff);
18 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
19 padding: 5px;
20 border-radius: 3px 3px 3px 3px;
21 border: none;
22 color: #000;
23}
24
25a {
26 text-decoration: none;
27}
28
29h1 {
30 font-size: 20pt;
31 font-weight: bold;
32 font-style: italic;
33 margin-bottom: 20px;
34}
35
36em {
37 font-style: italic;
38}
39
40strong {
41 font-weight: bold;
42}
43
44/* Buttons */
45.bigbutton {
46 background-color: #c0c0c0;
47 background: -moz-linear-gradient(#c0c0c0, #ffffff) repeat scroll 0 0 transparent;
48 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#c0c0c0), to(#ffffff));
49 background: -webkit-linear-gradient(#c0c0c0, #ffffff);
50 background: -ms-linear-gradient(#c0c0c0, #ffffff);
51 background: -o-linear-gradient(#c0c0c0, #ffffff);
52 background: linear-gradient(#c0c0c0, #ffffff);
53 border-radius: 3px 3px 3px 3px;
54 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
55 cursor: pointer;
56 height: 24px;
57 margin-left: 5px;
58 padding: 0 5px;
59 color: #606060;
60 border-style: outset;
61 border-width: 1px;
62}
63
64.smallbutton {
65 background-color: #c0c0c0;
66 background: -moz-linear-gradient(#c0c0c0, #ffffff) repeat scroll 0 0 transparent;
67 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#c0c0c0), to(#ffffff));
68 background: -webkit-linear-gradient(#c0c0c0, #ffffff);
69 background: -ms-linear-gradient(#c0c0c0, #ffffff);
70 background: -o-linear-gradient(#c0c0c0, #ffffff);
71 background: linear-gradient(#c0c0c0, #ffffff);
72 border-radius: 3px 3px 3px 3px;
73 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
74 cursor: pointer;
75 height: 20px;
76 margin-left: 5px;
77 padding: 0 5px;
78 color: #606060;
79 border-style: outset;
80 border-width: 1px;
81}
82
83/* Small tab on the left of each link with edit/delete buttons. */
84.button_edit, .button_delete {
85 border-radius: 0;
86 box-shadow: none;
87 border-style: none;
88 border-width: 0;
89 padding: 0;
90 background: none;
91}
92
93.linkeditbuttons {
94 position: absolute;
95 left: 2px;
96 padding: 4px 2px 2px 2px;
97
98 -webkit-border-radius: 0px 6px 6px 0px;
99 -moz-border-radius: 0px 6px 6px 0px;
100 -o-border-radius: 0px 6px 6px 0px;
101 -ms-border-radius: 0px 6px 6px 0px;
102 border-radius: 0px 6px 6px 0px;
103}
104
105#pageheader #logo {
106 background-image: url('../images/logo.png');
107 background-repeat: no-repeat;
108 float: left;
109 margin: 0 10px 0 10px;
110 width: 105px;
111 height: 55px;
112 cursor: pointer;
113}
114
115#pageheader #menu {
116 width: 100%;
117}
118
119#pageheader #menu ul {
120 margin: auto;
121 padding: 7px 0px 0px 0px;
122 float: none;
123}
124
125#pageheader #menu ul li {
126 list-style: none;
127 display: inline;
128 position: relative;
129 box-sizing: border-box;
130}
131
132#pageheader a {
133 background-color: #333333;
134 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#333333), to(#000000));
135 background: -webkit-linear-gradient(#333333, #000000);
136 background: -moz-linear-gradient(#333333, #000000);
137 background: -ms-linear-gradient(#333333, #000000);
138 background: -o-linear-gradient(#333333, #000000);
139 background: linear-gradient(#333333, #000000);
140 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
141 padding: 5px;
142 border-radius: 3px 3px 3px 3px;
143 margin: 10px 3px 3px 3px;
144 color: #A2DD42;
145 text-decoration: none;
146 line-height: 2.5;
147 white-space: nowrap;
148}
149
150#pageheader #linkcount {
151 float: right;
152 font-style: italic;
153 color: #bbb;
154 text-align: right;
155 padding-right: 5px;
156 margin: 3px 3px 0px 0px;
157}
158
159#pageheader {
160 background-color: #333333;
161 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#333333), to(#111111));
162 background: -webkit-linear-gradient(#333333, #111111);
163 background: -moz-linear-gradient(#333333, #111111);
164 background: -ms-linear-gradient(#333333, #111111);
165 background: -o-linear-gradient(#333333, #111111);
166 background: linear-gradient(#333333, #111111);
167 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
168 width: auto;
169 padding: 0 10px 5px 10px;
170 margin: auto;
171}
172
173#pageheader .search {
174 width: 100%;
175 white-space: nowrap;
176}
177
178#toolsdiv a {
179 clear: both;
180}
181
182#toolsdiv #bookmark {
183 clear: none;
184}
185
186#toolsdiv a span {
187 color: #ffffff;
188}
189
190.linksperpage, .tagfilter, .searchform, .addform {
191 background-color: #dedede;
192 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dedede), to(#ffffff));
193 background: -webkit-linear-gradient(#dedede, #ffffff);
194 background: -moz-linear-gradient(#dedede, #ffffff);
195 background: -ms-linear-gradient(#dedede, #ffffff);
196 background: -o-linear-gradient(#dedede, #ffffff);
197 background: linear-gradient(#dedede, #ffffff);
198 display: inline;
199 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
200 padding: 5px;
201 border: none;
202 border-radius: 3px 3px 3px 3px;
203 margin: 10px 3px 3px 3px;
204 color: #cecece;
205}
206
207.linksperpage {
208 box-shadow: 0 0 0 rgba(0, 0, 0, 0.5);
209 padding: 3px;
210}
211
212.linksperpage input, .tagfilter input, .searchform input, .addform input {
213 border: none;
214 color: #606060;
215 background: none;
216 box-shadow: none;
217 padding: 5px;
218}
219
220.linksperpage input {
221 padding: 0;
222}
223
224.searchform #searchform_value {
225 width: 30%;
226}
227
228.tagfilter {
229 margin-left:24px;
230}
231
232.tagfilter div.awesomplete {
233 width: 15%;
234}
235
236.tagfilter #tagfilter_value {
237 display: inline;
238}
239
240.tagfilter li {
241 color: black;
242}
243
244.tagfilter input.bigbutton, .searchform input.bigbutton, .addform input.bigbutton {
245 background-color: #dedede;
246 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dedede), to(#ffffff));
247 background: -webkit-linear-gradient(#dedede, #ffffff);
248 background: -moz-linear-gradient(#dedede, #ffffff);
249 background: -ms-linear-gradient(#dedede, #ffffff);
250 background: -o-linear-gradient(#dedede, #ffffff);
251 background: linear-gradient(#dedede, #ffffff);
252 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
253 padding: 0 5px 0 5px;
254 margin: 5px 0 5px 0;
255 height: 20px;
256 border-radius: 3px 3px 3px 3px;
257 cursor: pointer;
258}
259
260#shaarli_title {
261 font-weight: bold;
262 font-style: italic;
263 margin-top: 0;
264}
265
266#shaarli_title a {
267 color: #fff !important;
268}
269
270#pageheader a:visited {
271 color: #98C943;
272 text-decoration: none;
273}
274
275#pageheader a:hover {
276 color: #FFFFC9;
277 text-decoration: none;
278}
279
280#pageheader a:active {
281 color: #bbb;
282 text-decoration: none;
283}
284
285#searchcriteria {
286 padding: 4px 0px 5px 5px;
287 font-weight: bold;
288}
289
290.paging {
291 padding: 5px;
292 background-color: #777;
293 color: #ccc;
294 text-align: center;
295 clear: both;
296}
297
298.paging a:link {
299 color: #ccc;
300 text-decoration: none;
301}
302
303.paging a:visited {
304 color: #ccc;
305}
306
307.paging a:hover {
308 color: #FFFFC9;
309}
310
311.paging a:active {
312 color: #fff;
313}
314
315.paging_privatelinks {
316 float: left;
317}
318
319.paging_linksperpage {
320 float: right;
321 padding-right: 5px;
322 margin: 0px 10px 2px 0px;
323}
324
325.paging_linksperpage form.linksperpage {
326 display: inline;
327}
328
329.paging_linksperpage form.linksperpage input {
330 height: 15px;
331}
332
333.paging_current {
334 display: inline;
335 color: #fff;
336 padding: 0 20 0 20;
337}
338
339.paging_older {
340 margin-right: 15px;
341}
342
343.paging_newer {
344 margin-left: 15px;
345}
346
347#headerform {
348 color: #ffffff;
349 padding: 5px 5px 5px 5px;
350 clear: both;
351}
352
353#headerform input.linkurl {
354 width: 50%;
355 font-size: inherit;
356}
357
358#headerform label {
359 cursor: pointer;
360 margin-right: 10px;
361}
362
363#headerform label[for=longlastingsession] {
364 display: block;
365 width: 100%;
366 margin-top: 5px;
367}
368
369#toolsdiv {
370 color: #ffffff;
371 padding: 5px 5px 5px 5px;
372 clear: left;
373}
374
375#uploaddiv {
376 color: #ffffff;
377 padding: 5px 5px 5px 5px;
378 clear: left;
379}
380
381#editlinkform {
382 height: 100%;
383 padding: 5px 5px 5px 15px;
384 width: 80%;
385 clear: left;
386}
387
388#editlinkform label {
389 cursor: pointer;
390 color: #ffffff;
391}
392
393#editlinkform textarea, #editlinkform .lf_input {
394 width: 100%;
395}
396
397#linklist li {
398 padding: 4px 10px 15px 20px;
399 border-top: 1px solid #bbb;
400 clear: both;
401 background-color: #F2F2F2;
402 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#F2F2F2), to(#ffffff));
403 background: -webkit-linear-gradient(#F2F2F2, #ffffff);
404 background: -moz-linear-gradient(#F2F2F2, #ffffff);
405 background: -ms-linear-gradient(#F2F2F2, #ffffff);
406 background: -o-linear-gradient(#F2F2F2, #ffffff);
407 background: linear-gradient(#F2F2F2, #ffffff);
408}
409
410/*
411#linklist li.publicLinkHightLight:hover, #linklist li:hover {
412 background: #E9FFCE;
413}
414*/
415
416.linkdate {
417 font-size:8pt;
418 color:#888;
419}
420
421.linkdate a {
422 color:#E28E3F;
423}
424
425#linklist li.private {
426 background: url('../images/private.png') no-repeat 4px center;
427 padding-left: 30px;
428}
429
430#linklist li {
431 padding-left: 30px;
432}
433
434.private .linktitle a {
435 color: #969696;
436}
437
438.linktitle {
439 font-size: 14pt;
440 font-weight: bold;
441}
442
443.linktitle a {
444 text-decoration: none;
445 color: #80AD48;
446}
447
448.linktitle a:hover {
449 color: #F57900;
450}
451
452.linkdate {
453 font-size: 8pt;
454 color: #888;
455}
456
457.linkdate a {
458 background-image: url('../images/calendar.png');
459 padding: 2px 0 3px 20px;
460 background-repeat: no-repeat;
461 text-decoration: none;
462 color: #E28E3F;
463}
464
465.linkdate a:hover {
466 color: #F57900 }
467
468.linkurl {
469 font-size: 8pt;
470 color: #4BAA74;
471}
472
473.linkdescription {
474 color: #000;
475 margin-top: 0;
476 margin-bottom: 12px;
477 font-weight: normal;
478 overflow: auto;
479}
480
481.linkdescription a {
482 text-decoration: none;
483 color: #3465A4;
484}
485
486.linkdescription a:hover {
487 color: #F57900;
488}
489
490.linktaglist {
491 padding-top: 10px;
492 line-height: 200%;
493}
494
495.linktag {
496 font-size: 9pt;
497 background-color: #F2F2F2;
498 background: -webkit-gradient(linear, 0 0, 0 bottom, from(#F2F2F2), to(#ffffff));
499 background: -webkit-linear-gradient(#F2F2F2, #ffffff);
500 background: -moz-linear-gradient(#F2F2F2, #ffffff);
501 background: -ms-linear-gradient(#F2F2F2, #ffffff);
502 background: -o-linear-gradient(#F2F2F2, #ffffff);
503 background: linear-gradient(#F2F2F2, #ffffff);
504 box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
505 padding: 3px 5px 3px 20px;
506 height: 20px;
507 border-radius: 3px;
508 cursor: pointer;
509 background-image: url('../images/tag_blue.png');
510 background-repeat: no-repeat;
511 background-position: 3px center;
512 background-color: #ffffff;
513}
514
515.linktag:hover {
516 border-color: #555573;
517 color: #000;
518}
519
520.linktag a {
521 color: #777;
522 text-decoration: none;
523}
524
525.linktag .remove {
526 border-left: 1px solid #aaa;
527 padding-left: 5px;
528 color:#6767A7;
529}
530
531.linkshort {
532 font-size: 8pt;
533 color: #888;
534}
535
536.linkshort a {
537 text-decoration: none;
538 color: #393964;
539}
540
541.linkshort a:hover {
542 text-decoration: underline;
543}
544
545.buttoneditform {
546 display: inline;
547}
548
549#footer {
550 font-size: 8pt;
551 text-align: center;
552 color: #888;
553 clear: both;
554 max-width: 30em;
555 margin: 15px auto 15px auto;
556}
557
558#footer a {
559 color: #486D08;
560}
561
562#footer a:hover {
563 color: #000000;
564}
565
566#newversion {
567 background-color: #FFFFA0;
568 color: #000;
569 position: absolute;
570 top: 0;
571 right: 0;
572 padding: 2 7 2 7;
573 font-size: 9pt;
574}
575
576#newversion #version_id {
577 text-decoration: blink;
578}
579
580#cloudtag {
581 padding-left: 10%;
582 padding-right: 10%;
583}
584
585#cloudtag .count {
586 color: #99f;
587 font-size: 9pt;
588 padding-left: 5px;
589 padding-right: 2px;
590}
591
592#cloudtag a {
593 color: black;
594 text-decoration: none;
595}
596
597#install {
598 margin: 0 20px;
599}
600
601#installform {
602 border: 1px solid black;
603 padding: 10px;
604}
605
606#installform table {
607 border: none;
608}
609
610#installform td {
611 font-size: 10pt;
612 color: black;
613 padding: 10px 5px 10px 5px;
614 clear: left;
615}
616
617#installform input.bigbutton {
618 float: right;
619}
620
621#changepasswordform {
622 color: #ccc;
623 padding: 10px 5px 10px 5px;
624 clear: left;
625}
626
627#changetag {
628 color: #ccc;
629 padding: 10px 5px 10px 5px;
630 clear: left;
631}
632
633#changetag #totag {
634 margin-left: 40px;
635}
636
637#changetag div {
638 float:left;
639}
640
641#changetag label {
642 padding: 5px;
643}
644
645#changetag li {
646 color: #000;
647}
648#configform td {
649 color: #ccc;
650 font-size: 10pt;
651 padding: 10px 5px 10px 5px;
652}
653
654#configform {
655 color: #ccc;
656 padding: 10px 5px 10px 5px;
657 clear: left;
658}
659
660.thumbnail {
661 float: right;
662 margin: 0px 10px 0px 10px;
663}
664
665.thumbnail img {
666 border-radius: 3px;
667 box-shadow: 0.5px 0.5px 0.5px 1px #dde4e6;
668}
669
670/* If you want thumbnails on the left:
671.thumbnail {
672 float: left;
673 margin-right: 10px;
674}
675.linkcontainer {
676 position: static;
677 margin-left: 130px;
678}
679*/
680
681/* --- Picture wall CSS --- */
682#picwall_container {
683 color: #fff;
684 background-color: #000;
685 clear: both;
686}
687
688.picwall_pictureframe {
689 background-color: #000;
690 z-index: 5;
691 position: relative;
692 display: table-cell;
693 vertical-align: middle;
694 width: 90px;
695 height: 90px;
696 overflow: hidden;
697 text-align: center;
698 float: left;
699}
700
701.b-lazy {
702 -webkit-transition: opacity 500ms ease-in-out;
703 -moz-transition: opacity 500ms ease-in-out;
704 -o-transition: opacity 500ms ease-in-out;
705 transition: opacity 500ms ease-in-out;
706 opacity: 0;
707}
708.b-lazy.b-loaded {
709 opacity: 1;
710}
711
712.picwall_pictureframe img {
713 max-width: 100%;
714 height: auto;
715 color: transparent;
716} /* Adapt the width of the image */
717
718.picwall_pictureframe a {
719 text-decoration: none;
720}
721
722/* CSS to show title when hovering an image - no javascript required. */
723.picwall_pictureframe span.info {
724 display: none;
725}
726
727.picwall_pictureframe:hover span.info {
728 display: block;
729 position: absolute;
730 top: 0;
731 left: 0;
732 width: 90px;
733 font-weight: bold;
734 font-size: 8pt;
735 color: #fff;
736 text-align: left;
737 background-color: transparent;
738 background-color: rgba(0, 0, 0, 0.4);
739 /* FF3+, Saf3+, Opera 10.10+, Chrome, IE9 */
740 filter: progid: DXImageTransform.Microsoft.gradient(startColorstr=#66000000, endColorstr=#66000000);
741 /* IE6–IE9 */
742 text-shadow: 2px 2px 1px #000000;
743}
744
745#linklist li.publicLinkHightLight {
746 background: #ffffff;
747}
748
749div.daily {
750 font-family: Georgia, 'DejaVu Serif', Norasi, serif;
751 background-color: #E6D6BE;
752 /* Background paper texture by BashCorpo:
753 http://www.bashcorpo.dk/textures.php
754 http://bashcorpo.deviantart.com/art/Grungy-paper-texture-v-5-22966998 */
755 background-image: url("../images/Paper_texture_v5_by_bashcorpo_w1000.jpg");
756 -webkit-background-size: cover;
757 -moz-background-size: cover;
758 -o-background-size: cover;
759 background-size: cover;
760 position: relative;
761 border-bottom: 2px solid black;
762}
763
764#daily_col1 {
765 float: left;
766 position: relative;
767 width: 33%;
768 padding-left: 1%;
769}
770
771#daily_col2 {
772 float: left;
773 position: relative;
774 width: 33%;
775}
776
777#daily_col3 {
778 float: left;
779 position: relative;
780 width: 33%;
781}
782
783div.dailyAbout {
784 float: left;
785 border: 1px solid black;
786 font-size: 8pt;
787 position: absolute;
788 left: 10px;
789 top: 15px;
790 padding: 5px 5px 5px 5px;
791 text-align: center;
792}
793
794div.dailyAbout a {
795 color: #890500;
796}
797
798div.dailyAbout img {
799 position: relative;
800 top: 3px;
801 margin-right: 4px;
802 width: 14px;
803 height: 14px;
804}
805
806div.dailyTitle {
807 font-weight: bold;
808 font-size: 44pt;
809 text-align: center;
810 padding: 10px 20px 0px 20px;
811}
812
813div.dailyDate {
814 font-size: 12pt;
815 font-weight: bold;
816 text-align: center;
817 padding: 0px 20px 30px 20px;
818}
819
820/* Individual entries in "Daily": */
821div.dailyEntry {
822 margin: 5px 10px 2px 5px;
823 font-size: 11pt;
824 border-top: 1px solid #555;
825}
826
827div.dailyEntry a {
828 text-decoration: none;
829 color: #890500;
830}
831
832div.dailyEntryTags {
833 font-size: 7.75pt;
834}
835
836div.dailyEntryTitle {
837 font-size: 18pt;
838 font-weight: bold;
839}
840
841div.dailyEntryLinkdate {
842 font-size: 8pt;
843}
844
845div.dailyEntryThumbnail {
846 width: 100%;
847 text-align: center;
848 background-color: rgb(128, 128, 128);
849 background: url(../images/50pc_transparent.png);
850 padding: 4px 0px 2px 0px;
851}
852
853div.dailyEntryDescription {
854 margin-top: 10px;
855 margin-bottom: 30px;
856 text-align: justify;
857 overflow: auto;
858}
859
860div.dailyNoEntry {
861 text-align: center;
862 padding: 40px 0px 90px 0px;
863}
864
865.daily #closing {
866 clear: both;
867 text-align: center;
868 padding-bottom: 20px;
869}
870
871/* Common CSS screwdriver */
872.clear {
873 clear: both;
874}
875
876.right {
877 text-align: right;
878}
879
880.white {
881 color: white;
882}
883
884/* For lazy images loading in picture wall.
885 Using http://www.appelsiini.net/projects/lazyload
886*/
887.lazyimage {
888 display: none;
889}
890
891#configuration_table td {
892 border: none;
893 padding: 10px;
894 vertical-align: top;
895}
896
897@media print {
898 html {
899 border: none;
900 background: #fff !important;
901 color: #000 !important;
902 }
903
904 body {
905 font-size: 12pt;
906 width: auto !important;
907 margin: auto !important;
908 }
909
910 /* Minimum numer of lines to display when splitting a paragraph
911 over two pages */
912 p {
913 orphans: 3;
914 widows: 3;
915 }
916
917 a {
918 color: #000 !important;
919 text-decoration: none !important;
920 }
921
922 #pageheader, .paging, #linklist li form, #footer {
923 display: none;
924 }
925
926 #linklist li {
927 padding: 2 0 10 0;
928 border-top: 2px solid #000;
929 clear: both;
930 }
931
932 #linklist li.private {
933 background-color: none;
934 border-left: 0;
935 }
936
937 .linkdate {
938 line-height: 2;
939 }
940
941 .linkurl {
942 color: #000;
943 }
944
945 .linkdescription {
946 font-size: 10pt;
947 }
948
949 .linktag {
950 border: 1px solid black;
951 font-style: italic;
952 font-size: 8pt;
953 }
954}
955
956@media handheld, only screen and (max-width: 480px), only screen and (max-device-width: 854px) {
957 /* A few fixes for mobile devices (far from perfect). */
958
959 .tagfilter div.awesomplete {
960 width: 70%;
961 }
962
963 .nomobile {
964 display: none;
965 }
966
967 #logo {
968 display: none;
969 }
970
971 #pageheader #menu ul {
972 text-align: center;
973 }
974
975 #pageheader #menu a {
976 padding: 5px;
977 border-radius: 3px 3px 3px 3px;
978 margin: 3px;
979 }
980
981 #headerform label {
982 width: 100%;
983 display: block;
984 height: auto;
985 line-height: 25px;
986 padding-bottom: 10px;
987 }
988
989 #headerform label input[type=text],
990 #headerform label input[type=password]{
991 float: right;
992 width: 70%;
993 }
994
995 .searchform, .tagfilter {
996 display: block !important;
997 margin: 0px 3px 7px 0px !important;
998 padding: 0px !important;
999 width: 97% !important;
1000 }
1001
1002 .searchform input, .tagfilter input {
1003 margin: 0px !important;
1004 padding: 0px !important;
1005 display: inline !important;
1006 }
1007
1008 .tagfilter input.bigbutton, .searchform input.bigbutton, .addform input.bigbutton {
1009 width: 30%;
1010 font-size: smaller;
1011 }
1012
1013 #searchform_value {
1014 width: 70% !important;
1015 }
1016
1017 #tagfilter_value {
1018 width: 70% !important;
1019 }
1020
1021 div.qrcode {
1022 position: relative;
1023 float: left;
1024 top: -10px;
1025 left: 0px;
1026 }
1027
1028 .paging_privatelinks {
1029 float: none;
1030 }
1031
1032 .paging_linksperpage {
1033 float: none;
1034 margin-bottom: 10px;
1035 font-size: smaller;
1036 }
1037
1038 #paging_older, #paging_newer, .paging_linksperpage a {
1039 border: 1px solid black;
1040 padding: 3px 5px 3px 5px;
1041 background-color: #666;
1042 color: #fff;
1043 border-radius: 3px 3px 3px 3px;
1044 }
1045
1046 .thumbnail {
1047 float: none;
1048 height: auto;
1049 margin: 0px;
1050 text-align: center;
1051 }
1052
1053 #cloudtag {
1054 padding: 0px;
1055 }
1056
1057 div.dailyAbout {
1058 float: none;
1059 position: relative;
1060 width: 100%;
1061 clear: both;
1062 padding: 0px;
1063 top: 0px;
1064 left: 0px;
1065 }
1066
1067 #daily_col1, #daily_col2, #daily_col3 {
1068 float: none;
1069 width: 100%;
1070 padding: 0px;
1071 }
1072
1073 div.dailyTitle {
1074 font-size: 18pt;
1075 margin-top: 5px;
1076 padding: 0px;
1077 }
1078
1079 div.dailyDate {
1080 font-size: 11pt;
1081 padding: 0px;
1082 display: block;
1083 }
1084
1085 div.dailyEntryTitle {
1086 font-size: 16pt;
1087 font-weight: bold;
1088 }
1089
1090 div.dailyEntryDescription {
1091 font-size: 10pt;
1092 }
1093}
1094
1095#toolsdiv a.button-description {
1096 clear: none;
1097}
1098
1099/* Highlight search results */
1100.highlight {
1101 background-color: #FFFF33;
1102}
1103
1104.center {
1105 text-align: center;
1106}
1107
1108ul.errors {
1109 color: red;
1110 float: left;
1111}
1112
1113#pluginsadmin {
1114 width: 80%;
1115 padding: 20px 0 0 20px;
1116}
1117
1118#pluginsadmin section {
1119 padding: 20px 0;
1120}
1121
1122#pluginsadmin .plugin_parameters {
1123 margin: 10px 0;
1124}
1125
1126#pluginsadmin h1 {
1127 font-style: normal;
1128}
1129
1130#pluginsadmin h2 {
1131 font-size: 1.4em;
1132 font-weight: bold;
1133}
1134
1135#pluginsadmin table {
1136 width: 100%;
1137}
1138
1139#pluginsadmin table, #pluginsadmin th, #pluginsadmin td {
1140 border-width: 1px 0;
1141 border-style: solid;
1142 border-color: #c0c0c0;
1143}
1144
1145#pluginsadmin table th {
1146 font-weight: bold;
1147 padding: 10px 0;
1148}
1149
1150#pluginsadmin table td {
1151 padding: 5px 0;
1152}
1153
1154#pluginsadmin input[type=submit] {
1155 margin: 10px 0;
1156}
1157
1158#pluginsadmin label {
1159 cursor: pointer;
1160}
1161
1162#pluginsadmin .plugin_parameter {
1163 padding: 10px 0;
1164 border-width: 1px 0;
1165 border-style: solid;
1166 border-color: #c0c0c0;
1167}
1168
1169#pluginsadmin .float_label {
1170 float: left;
1171 width: 40%;
1172}
1173
1174#pluginsadmin a {
1175 color: #486D08;
1176}
1177
1178#pluginsadmin a.arrow {
1179 color: black;
1180}
1181
1182/* 404 page */
1183.error-container {
1184
1185 margin: 50px;
1186 margin-top: 20px;
1187}
1188
1189.error-container h1 {
1190 text-decoration: none;
1191 font-style: normal;
1192 color: #80AD48;
1193}
1194
1195.linklist-plugin-icon {
1196 width: 13px;
1197 height: 13px;
1198}