diff --git a/composer.json b/composer.json index ad3bd6aa47..1468ba9d82 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,6 @@ { "name": "humhub/humhub", - "description": "TBD", + "description": "HumHub - The flexible Open Source Social Network Kit for Collaboration", "keywords": ["humhub", "yii2", "framework"], "homepage": "http://www.humhub.com/", "type": "project", @@ -24,7 +24,8 @@ "zendframework/zend-http": "*", "nqxcode/zendsearch": "^2.0", "xj/yii2-jplayer-widget": "*", - "zendframework/zend-ldap": "^2.5" + "zendframework/zend-ldap": "^2.5", + "bower-asset/jquery-timeago": "1.4.*" }, "require-dev": { "yiisoft/yii2-codeception": "*", diff --git a/js/jquery.timeago.js b/js/jquery.timeago.js deleted file mode 100644 index ef9327aacc..0000000000 --- a/js/jquery.timeago.js +++ /dev/null @@ -1,221 +0,0 @@ -/** - * Timeago is a jQuery plugin that makes it easy to support automatically - * updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago"). - * - * @name timeago - * @version 1.4.1 - * @requires jQuery v1.2.3+ - * @author Ryan McGeary - * @license MIT License - http://www.opensource.org/licenses/mit-license.php - * - * For usage and examples, visit: - * http://timeago.yarp.com/ - * - * Copyright (c) 2008-2013, Ryan McGeary (ryan -[at]- mcgeary [*dot*] org) - */ - -(function (factory) { - if (typeof define === 'function' && define.amd) { - // AMD. Register as an anonymous module. - define(['jquery'], factory); - } else { - // Browser globals - factory(jQuery); - } -}(function ($) { - $.timeago = function(timestamp) { - if (timestamp instanceof Date) { - return inWords(timestamp); - } else if (typeof timestamp === "string") { - return inWords($.timeago.parse(timestamp)); - } else if (typeof timestamp === "number") { - return inWords(new Date(timestamp)); - } else { - return inWords($.timeago.datetime(timestamp)); - } - }; - var $t = $.timeago; - - $.extend($.timeago, { - settings: { - refreshMillis: 60000, - allowPast: true, - allowFuture: false, - localeTitle: false, - cutoff: 0, - strings: { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "ago", - suffixFromNow: "from now", - inPast: 'any moment now', - seconds: "less than a minute", - minute: "about a minute", - minutes: "%d minutes", - hour: "about an hour", - hours: "about %d hours", - day: "a day", - days: "%d days", - month: "about a month", - months: "%d months", - year: "about a year", - years: "%d years", - wordSeparator: " ", - numbers: [] - } - }, - - inWords: function(distanceMillis) { - if(!this.settings.allowPast && ! this.settings.allowFuture) { - throw 'timeago allowPast and allowFuture settings can not both be set to false.'; - } - - var $l = this.settings.strings; - var prefix = $l.prefixAgo; - var suffix = $l.suffixAgo; - if (this.settings.allowFuture) { - if (distanceMillis < 0) { - prefix = $l.prefixFromNow; - suffix = $l.suffixFromNow; - } - } - - if(!this.settings.allowPast && distanceMillis >= 0) { - return this.settings.strings.inPast; - } - - var seconds = Math.abs(distanceMillis) / 1000; - var minutes = seconds / 60; - var hours = minutes / 60; - var days = hours / 24; - var years = days / 365; - - function substitute(stringOrFunction, number) { - var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction; - var value = ($l.numbers && $l.numbers[number]) || number; - return string.replace(/%d/i, value); - } - - var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) || - seconds < 90 && substitute($l.minute, 1) || - minutes < 45 && substitute($l.minutes, Math.round(minutes)) || - minutes < 90 && substitute($l.hour, 1) || - hours < 24 && substitute($l.hours, Math.round(hours)) || - hours < 42 && substitute($l.day, 1) || - days < 30 && substitute($l.days, Math.round(days)) || - days < 45 && substitute($l.month, 1) || - days < 365 && substitute($l.months, Math.round(days / 30)) || - years < 1.5 && substitute($l.year, 1) || - substitute($l.years, Math.round(years)); - - var separator = $l.wordSeparator || ""; - if ($l.wordSeparator === undefined) { separator = " "; } - return $.trim([prefix, words, suffix].join(separator)); - }, - - parse: function(iso8601) { - var s = $.trim(iso8601); - s = s.replace(/\.\d+/,""); // remove milliseconds - s = s.replace(/-/,"/").replace(/-/,"/"); - s = s.replace(/T/," ").replace(/Z/," UTC"); - s = s.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // -04:00 -> -0400 - s = s.replace(/([\+\-]\d\d)$/," $100"); // +09 -> +0900 - return new Date(s); - }, - datetime: function(elem) { - var iso8601 = $t.isTime(elem) ? $(elem).attr("datetime") : $(elem).attr("title"); - return $t.parse(iso8601); - }, - isTime: function(elem) { - // jQuery's `is()` doesn't play well with HTML5 in IE - return $(elem).get(0).tagName.toLowerCase() === "time"; // $(elem).is("time"); - } - }); - - // functions that can be called via $(el).timeago('action') - // init is default when no action is given - // functions are called with context of a single element - var functions = { - init: function(){ - var refresh_el = $.proxy(refresh, this); - refresh_el(); - var $s = $t.settings; - if ($s.refreshMillis > 0) { - this._timeagoInterval = setInterval(refresh_el, $s.refreshMillis); - } - }, - update: function(time){ - var parsedTime = $t.parse(time); - $(this).data('timeago', { datetime: parsedTime }); - if($t.settings.localeTitle) $(this).attr("title", parsedTime.toLocaleString()); - refresh.apply(this); - }, - updateFromDOM: function(){ - $(this).data('timeago', { datetime: $t.parse( $t.isTime(this) ? $(this).attr("datetime") : $(this).attr("title") ) }); - refresh.apply(this); - }, - dispose: function () { - if (this._timeagoInterval) { - window.clearInterval(this._timeagoInterval); - this._timeagoInterval = null; - } - } - }; - - $.fn.timeago = function(action, options) { - var fn = action ? functions[action] : functions.init; - if(!fn){ - throw new Error("Unknown function name '"+ action +"' for timeago"); - } - // each over objects here and call the requested function - this.each(function(){ - fn.call(this, options); - }); - return this; - }; - - function refresh() { - //check if it's still visible - if(!$.contains(document.documentElement,this)){ - //stop if it has been removed - $(this).timeago("dispose"); - return this; - } - - var data = prepareData(this); - var $s = $t.settings; - - if (!isNaN(data.datetime)) { - if ( $s.cutoff == 0 || Math.abs(distance(data.datetime)) < $s.cutoff) { - $(this).text(inWords(data.datetime)); - } - } - return this; - } - - function prepareData(element) { - element = $(element); - if (!element.data("timeago")) { - element.data("timeago", { datetime: $t.datetime(element) }); - var text = $.trim(element.text()); - if ($t.settings.localeTitle) { - element.attr("title", element.data('timeago').datetime.toLocaleString()); - } else if (text.length > 0 && !($t.isTime(element) && element.attr("title"))) { - element.attr("title", text); - } - } - return element.data("timeago"); - } - - function inWords(date) { - return $t.inWords(distance(date)); - } - - function distance(date) { - return (new Date().getTime() - date.getTime()); - } - - // fix for IE6 suckage - document.createElement("abbr"); - document.createElement("time"); -})); diff --git a/js/locales/README.md b/js/locales/README.md deleted file mode 100644 index 7557112da6..0000000000 --- a/js/locales/README.md +++ /dev/null @@ -1,27 +0,0 @@ -# Locale override examples for timeago - -You can represent time statements in most western languages where -a prefix and/or suffix is used. - -The default case is to use suffix only (as in English), which you -do by providing the `suffixAgo` and `suffixFromNow` settings in -the strings hash (earlier versions of timeago used the deprecated -`ago` and `fromNow` options). If present, they are used. - - 2 minutes [suffixAgo] - 2 minutes [suffixFromNow] - -In case you want to use prefix only instead of -suffix (e.g. Greek), you provide the `prefixAgo` and -`prefixFromNow` options in the strings hash and leave `suffixAgo` -and `suffixFromNow` empty or null. - - [prefixAgo] 2 minutes - [prefixFromNow] 2 minutes - -For languages where you want to use a prefix only for future -tense and prefix/suffix for past tense (for example swedish), you -can combine the prefix and suffixes as needed. - - [prefixAgo] 2 minutes [suffixAgo] - [prefixFromNow] 2 minutes diff --git a/js/locales/jquery.timeago.ar.js b/js/locales/jquery.timeago.ar.js deleted file mode 100644 index 9e73d7455e..0000000000 --- a/js/locales/jquery.timeago.ar.js +++ /dev/null @@ -1,96 +0,0 @@ -(function() { - function numpf(n, a) { - return a[plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5]; - } - -jQuery.timeago.settings.strings = { - prefixAgo: "منذ", - prefixFromNow: "بعد", - suffixAgo: null, - suffixFromNow: null, // null OR "من الآن" - second: function(value) { return numpf(value, [ - 'أقل من ثانية', - 'ثانية واحدة', - 'ثانيتين', - '%d ثوانٍ', - '%d ثانية', - '%d ثانية']); }, - seconds: function(value) { return numpf(value, [ - 'أقل من ثانية', - 'ثانية واحدة', - 'ثانيتين', - '%d ثوانٍ', - '%d ثانية', - '%d ثانية']); }, - minute: function(value) { return numpf(value, [ - 'أقل من دقيقة', - 'دقيقة واحدة', - 'دقيقتين', - '%d دقائق', - '%d دقيقة', - 'دقيقة']); }, - minutes: function(value) { return numpf(value, [ - 'أقل من دقيقة', - 'دقيقة واحدة', - 'دقيقتين', - '%d دقائق', - '%d دقيقة', - 'دقيقة']); }, - hour: function(value) { return numpf(value, [ - 'أقل من ساعة', - 'ساعة واحدة', - 'ساعتين', - '%d ساعات', - '%d ساعة', - '%d ساعة']); }, - hours: function(value) { return numpf(value, [ - 'أقل من ساعة', - 'ساعة واحدة', - 'ساعتين', - '%d ساعات', - '%d ساعة', - '%d ساعة']); }, - day: function(value) { return numpf(value, [ - 'أقل من يوم', - 'يوم واحد', - 'يومين', - '%d أيام', - '%d يومًا', - '%d يوم']); }, - days: function(value) { return numpf(value, [ - 'أقل من يوم', - 'يوم واحد', - 'يومين', - '%d أيام', - '%d يومًا', - '%d يوم']); }, - month: function(value) { return numpf(value, [ - 'أقل من شهر', - 'شهر واحد', - 'شهرين', - '%d أشهر', - '%d شهرًا', - '%d شهر']); }, - months: function(value) { return numpf(value, [ - 'أقل من شهر', - 'شهر واحد', - 'شهرين', - '%d أشهر', - '%d شهرًا', - '%d شهر']); }, - year: function(value) { return numpf(value, [ - 'أقل من عام', - 'عام واحد', - '%d عامين', - '%d أعوام', - '%d عامًا']); - }, - years: function(value) { return numpf(value, [ - 'أقل من عام', - 'عام واحد', - 'عامين', - '%d أعوام', - '%d عامًا', - '%d عام']);} - }; -})(); diff --git a/js/locales/jquery.timeago.bg.js b/js/locales/jquery.timeago.bg.js deleted file mode 100644 index df6b865ec6..0000000000 --- a/js/locales/jquery.timeago.bg.js +++ /dev/null @@ -1,18 +0,0 @@ -// Bulgarian -jQuery.timeago.settings.strings = { - prefixAgo: "преди", - prefixFromNow: "след", - suffixAgo: null, - suffixFromNow: null, - seconds: "по-малко от минута", - minute: "една минута", - minutes: "%d минути", - hour: "един час", - hours: "%d часа", - day: "един ден", - days: "%d дни", - month: "един месец", - months: "%d месеца", - year: "една година", - years: "%d години" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.bs.js b/js/locales/jquery.timeago.bs.js deleted file mode 100644 index 01530feaa2..0000000000 --- a/js/locales/jquery.timeago.bs.js +++ /dev/null @@ -1,49 +0,0 @@ -// Bosnian -(function() { - var numpf; - - numpf = function(n, f, s, t) { - var n10; - n10 = n % 10; - if (n10 === 1 && (n === 1 || n > 20)) { - return f; - } else if (n10 > 1 && n10 < 5 && (n > 20 || n < 10)) { - return s; - } else { - return t; - } - }; - - jQuery.timeago.settings.strings = { - prefixAgo: "prije", - prefixFromNow: "za", - suffixAgo: null, - suffixFromNow: null, - second: "sekund", - seconds: function(value) { - return numpf(value, "%d sekund", "%d sekunde", "%d sekundi"); - }, - minute: "oko minut", - minutes: function(value) { - return numpf(value, "%d minut", "%d minute", "%d minuta"); - }, - hour: "oko sat", - hours: function(value) { - return numpf(value, "%d sat", "%d sata", "%d sati"); - }, - day: "oko jednog dana", - days: function(value) { - return numpf(value, "%d dan", "%d dana", "%d dana"); - }, - month: "mjesec dana", - months: function(value) { - return numpf(value, "%d mjesec", "%d mjeseca", "%d mjeseci"); - }, - year: "prije godinu dana ", - years: function(value) { - return numpf(value, "%d godinu", "%d godine", "%d godina"); - }, - wordSeparator: " " - }; - -}).call(this); \ No newline at end of file diff --git a/js/locales/jquery.timeago.ca.js b/js/locales/jquery.timeago.ca.js deleted file mode 100644 index 59014ea50a..0000000000 --- a/js/locales/jquery.timeago.ca.js +++ /dev/null @@ -1,18 +0,0 @@ -// Catalan -jQuery.timeago.settings.strings = { - prefixAgo: "fa", - prefixFromNow: "d'aqui a", - suffixAgo: null, - suffixFromNow: null, - seconds: "menys d'1 minut", - minute: "1 minut", - minutes: "uns %d minuts", - hour: "1 hora", - hours: "unes %d hores", - day: "1 dia", - days: "%d dies", - month: "aproximadament un mes", - months: "%d mesos", - year: "aproximadament un any", - years: "%d anys" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.cs.js b/js/locales/jquery.timeago.cs.js deleted file mode 100644 index 1d9fb804e2..0000000000 --- a/js/locales/jquery.timeago.cs.js +++ /dev/null @@ -1,24 +0,0 @@ -// Czech -(function() { - function f(n, d, a) { - return a[d>=0 ? 0 : a.length==2 || n<5 ? 1 : 2]; - } - - jQuery.timeago.settings.strings = { - prefixAgo: 'před', - prefixFromNow: 'za', - suffixAgo: null, - suffixFromNow: null, - seconds: function(n, d) {return f(n, d, ['méně než minutou', 'méně než minutu'])}, - minute: function(n, d) {return f(n, d, ['minutou', 'minutu'])}, - minutes: function(n, d) {return f(n, d, ['%d minutami', '%d minuty', '%d minut'])}, - hour: function(n, d) {return f(n, d, ['hodinou', 'hodinu'])}, - hours: function(n, d) {return f(n, d, ['%d hodinami', '%d hodiny', '%d hodin'])}, - day: function(n, d) {return f(n, d, ['%d dnem', '%d den'])}, - days: function(n, d) {return f(n, d, ['%d dny', '%d dny', '%d dní'])}, - month: function(n, d) {return f(n, d, ['%d měsícem', '%d měsíc'])}, - months: function(n, d) {return f(n, d, ['%d měsící', '%d měsíce', '%d měsíců'])}, - year: function(n, d) {return f(n, d, ['%d rokem', '%d rok'])}, - years: function(n, d) {return f(n, d, ['%d lety', '%d roky', '%d let'])} - }; -})(); diff --git a/js/locales/jquery.timeago.cy.js b/js/locales/jquery.timeago.cy.js deleted file mode 100644 index a285ff4e84..0000000000 --- a/js/locales/jquery.timeago.cy.js +++ /dev/null @@ -1,20 +0,0 @@ -// Welsh -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "yn ôl", - suffixFromNow: "o hyn", - seconds: "llai na munud", - minute: "am funud", - minutes: "%d munud", - hour: "tua awr", - hours: "am %d awr", - day: "y dydd", - days: "%d diwrnod", - month: "tua mis", - months: "%d mis", - year: "am y flwyddyn", - years: "%d blynedd", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.da.js b/js/locales/jquery.timeago.da.js deleted file mode 100644 index ff50e873f3..0000000000 --- a/js/locales/jquery.timeago.da.js +++ /dev/null @@ -1,18 +0,0 @@ -// Danish -jQuery.timeago.settings.strings = { - prefixAgo: "for", - prefixFromNow: "om", - suffixAgo: "siden", - suffixFromNow: "", - seconds: "mindre end et minut", - minute: "ca. et minut", - minutes: "%d minutter", - hour: "ca. en time", - hours: "ca. %d timer", - day: "en dag", - days: "%d dage", - month: "ca. en måned", - months: "%d måneder", - year: "ca. et år", - years: "%d år" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.de.js b/js/locales/jquery.timeago.de.js deleted file mode 100644 index f10b06eebb..0000000000 --- a/js/locales/jquery.timeago.de.js +++ /dev/null @@ -1,18 +0,0 @@ -// German -jQuery.timeago.settings.strings = { - prefixAgo: "vor", - prefixFromNow: "in", - suffixAgo: "", - suffixFromNow: "", - seconds: "wenigen Sekunden", - minute: "etwa einer Minute", - minutes: "%d Minuten", - hour: "etwa einer Stunde", - hours: "%d Stunden", - day: "etwa einem Tag", - days: "%d Tagen", - month: "etwa einem Monat", - months: "%d Monaten", - year: "etwa einem Jahr", - years: "%d Jahren" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.el.js b/js/locales/jquery.timeago.el.js deleted file mode 100644 index 61aaafe495..0000000000 --- a/js/locales/jquery.timeago.el.js +++ /dev/null @@ -1,18 +0,0 @@ -// Greek -jQuery.timeago.settings.strings = { - prefixAgo: "πριν", - prefixFromNow: "σε", - suffixAgo: "", - suffixFromNow: "", - seconds: "λιγότερο από ένα λεπτό", - minute: "περίπου ένα λεπτό", - minutes: "%d λεπτά", - hour: "περίπου μία ώρα", - hours: "περίπου %d ώρες", - day: "μία μέρα", - days: "%d μέρες", - month: "περίπου ένα μήνα", - months: "%d μήνες", - year: "περίπου ένα χρόνο", - years: "%d χρόνια" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.en-short.js b/js/locales/jquery.timeago.en-short.js deleted file mode 100644 index 4cab7ff6ff..0000000000 --- a/js/locales/jquery.timeago.en-short.js +++ /dev/null @@ -1,20 +0,0 @@ -// English shortened -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "", - suffixFromNow: "", - seconds: "1m", - minute: "1m", - minutes: "%dm", - hour: "1h", - hours: "%dh", - day: "1d", - days: "%dd", - month: "1mo", - months: "%dmo", - year: "1yr", - years: "%dyr", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.en.js b/js/locales/jquery.timeago.en.js deleted file mode 100644 index 3d6652c230..0000000000 --- a/js/locales/jquery.timeago.en.js +++ /dev/null @@ -1,20 +0,0 @@ -// English (Template) -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "ago", - suffixFromNow: "from now", - seconds: "less than a minute", - minute: "about a minute", - minutes: "%d minutes", - hour: "about an hour", - hours: "about %d hours", - day: "a day", - days: "%d days", - month: "about a month", - months: "%d months", - year: "about a year", - years: "%d years", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.es-short.js b/js/locales/jquery.timeago.es-short.js deleted file mode 100644 index 65d85c7154..0000000000 --- a/js/locales/jquery.timeago.es-short.js +++ /dev/null @@ -1,20 +0,0 @@ -// Spanish shortened -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "", - suffixFromNow: "", - seconds: "1m", - minute: "1m", - minutes: "%dm", - hour: "1h", - hours: "%dh", - day: "1d", - days: "%dd", - month: "1me", - months: "%dme", - year: "1a", - years: "%da", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.es.js b/js/locales/jquery.timeago.es.js deleted file mode 100644 index 00c6d0a6cb..0000000000 --- a/js/locales/jquery.timeago.es.js +++ /dev/null @@ -1,18 +0,0 @@ -// Spanish -jQuery.timeago.settings.strings = { - prefixAgo: "hace", - prefixFromNow: "dentro de", - suffixAgo: "", - suffixFromNow: "", - seconds: "menos de un minuto", - minute: "un minuto", - minutes: "unos %d minutos", - hour: "una hora", - hours: "%d horas", - day: "un día", - days: "%d días", - month: "un mes", - months: "%d meses", - year: "un año", - years: "%d años" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.et.js b/js/locales/jquery.timeago.et.js deleted file mode 100644 index 7d17eb5c61..0000000000 --- a/js/locales/jquery.timeago.et.js +++ /dev/null @@ -1,18 +0,0 @@ -// Estonian -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "tagasi", - suffixFromNow: "pärast", - seconds: function(n, d) { return d < 0 ? "vähem kui minuti aja" : "vähem kui minut aega" }, - minute: function(n, d) { return d < 0 ? "umbes minuti aja" : "umbes minut aega" }, - minutes: function(n, d) { return d < 0 ? "%d minuti" : "%d minutit" }, - hour: function(n, d) { return d < 0 ? "umbes tunni aja" : "umbes tund aega" }, - hours: function(n, d) { return d < 0 ? "%d tunni" : "%d tundi" }, - day: function(n, d) { return d < 0 ? "umbes päeva" : "umbes päev" }, - days: function(n, d) { return d < 0 ? "%d päeva" : "%d päeva" }, - month: function(n, d) { return d < 0 ? "umbes kuu aja" : "umbes kuu aega" }, - months: function(n, d) { return d < 0 ? "%d kuu" : "%d kuud" }, - year: function(n, d) { return d < 0 ? "umbes aasta aja" : "umbes aasta aega" }, - years: function(n, d) { return d < 0 ? "%d aasta" : "%d aastat" } -}; diff --git a/js/locales/jquery.timeago.fa.js b/js/locales/jquery.timeago.fa.js deleted file mode 100644 index 36bdb449f3..0000000000 --- a/js/locales/jquery.timeago.fa.js +++ /dev/null @@ -1,22 +0,0 @@ - -// Persian -// Use DIR attribute for RTL text in Persian Language for ABBR tag . -// By MB.seifollahi@gmail.com -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "پیش", - suffixFromNow: "از حال", - seconds: "کمتر از یک دقیقه", - minute: "حدود یک دقیقه", - minutes: "%d دقیقه", - hour: "حدود یک ساعت", - hours: "حدود %d ساعت", - day: "یک روز", - days: "%d روز", - month: "حدود یک ماه", - months: "%d ماه", - year: "حدود یک سال", - years: "%d سال", - wordSeparator: " " -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.fi.js b/js/locales/jquery.timeago.fi.js deleted file mode 100644 index 06b12ee0bc..0000000000 --- a/js/locales/jquery.timeago.fi.js +++ /dev/null @@ -1,28 +0,0 @@ -// Finnish -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "sitten", - suffixFromNow: "tulevaisuudessa", - seconds: "alle minuutti", - minute: "minuutti", - minutes: "%d minuuttia", - hour: "tunti", - hours: "%d tuntia", - day: "päivä", - days: "%d päivää", - month: "kuukausi", - months: "%d kuukautta", - year: "vuosi", - years: "%d vuotta" -}; - -// The above is not a great localization because one would usually -// write "2 days ago" in Finnish as "2 päivää sitten", however -// one would write "2 days into the future" as "2:n päivän päästä" -// which cannot be achieved with localization support this simple. -// This is because Finnish has word suffixes (attached directly -// to the end of the word). The word "day" is "päivä" in Finnish. -// As workaround, the above localizations will say -// "2 päivää tulevaisuudessa" which is understandable but -// not as fluent. \ No newline at end of file diff --git a/js/locales/jquery.timeago.fr-short.js b/js/locales/jquery.timeago.fr-short.js deleted file mode 100644 index dbfe3bb019..0000000000 --- a/js/locales/jquery.timeago.fr-short.js +++ /dev/null @@ -1,16 +0,0 @@ -// French shortened -jQuery.timeago.settings.strings = { - prefixAgo: "il y a", - prefixFromNow: "d'ici", - seconds: "moins d'une minute", - minute: "une minute", - minutes: "%d minutes", - hour: "une heure", - hours: "%d heures", - day: "un jour", - days: "%d jours", - month: "un mois", - months: "%d mois", - year: "un an", - years: "%d ans" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.fr.js b/js/locales/jquery.timeago.fr.js deleted file mode 100644 index 5028342306..0000000000 --- a/js/locales/jquery.timeago.fr.js +++ /dev/null @@ -1,17 +0,0 @@ -// French -jQuery.timeago.settings.strings = { - // environ ~= about, it's optional - prefixAgo: "il y a", - prefixFromNow: "d'ici", - seconds: "moins d'une minute", - minute: "environ une minute", - minutes: "environ %d minutes", - hour: "environ une heure", - hours: "environ %d heures", - day: "environ un jour", - days: "environ %d jours", - month: "environ un mois", - months: "environ %d mois", - year: "un an", - years: "%d ans" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.gl.js b/js/locales/jquery.timeago.gl.js deleted file mode 100644 index 14bc56ddc3..0000000000 --- a/js/locales/jquery.timeago.gl.js +++ /dev/null @@ -1,18 +0,0 @@ -// Galician -jQuery.timeago.settings.strings = { - prefixAgo: "hai", - prefixFromNow: "dentro de", - suffixAgo: "", - suffixFromNow: "", - seconds: "menos dun minuto", - minute: "un minuto", - minutes: "uns %d minutos", - hour: "unha hora", - hours: "%d horas", - day: "un día", - days: "%d días", - month: "un mes", - months: "%d meses", - year: "un ano", - years: "%d anos" -}; diff --git a/js/locales/jquery.timeago.he.js b/js/locales/jquery.timeago.he.js deleted file mode 100644 index ac44458a5f..0000000000 --- a/js/locales/jquery.timeago.he.js +++ /dev/null @@ -1,16 +0,0 @@ -// Hebrew -jQuery.timeago.settings.strings = { - prefixAgo: "לפני", - prefixFromNow: "עוד", - seconds: "פחות מדקה", - minute: "דקה", - minutes: "%d דקות", - hour: "שעה", - hours: function(number){return (number==2) ? "שעתיים" : "%d שעות"}, - day: "יום", - days: function(number){return (number==2) ? "יומיים" : "%d ימים"}, - month: "חודש", - months: function(number){return (number==2) ? "חודשיים" : "%d חודשים"}, - year: "שנה", - years: function(number){return (number==2) ? "שנתיים" : "%d שנים"} -}; diff --git a/js/locales/jquery.timeago.hr.js b/js/locales/jquery.timeago.hr.js deleted file mode 100644 index a85bd803bc..0000000000 --- a/js/locales/jquery.timeago.hr.js +++ /dev/null @@ -1,49 +0,0 @@ -// Croatian -(function () { - var numpf; - - numpf = function (n, f, s, t) { - var n10; - n10 = n % 10; - if (n10 === 1 && (n === 1 || n > 20)) { - return f; - } else if (n10 > 1 && n10 < 5 && (n > 20 || n < 10)) { - return s; - } else { - return t; - } - }; - - jQuery.timeago.settings.strings = { - prefixAgo: "prije", - prefixFromNow: "za", - suffixAgo: null, - suffixFromNow: null, - second: "sekundu", - seconds: function (value) { - return numpf(value, "%d sekundu", "%d sekunde", "%d sekundi"); - }, - minute: "oko minutu", - minutes: function (value) { - return numpf(value, "%d minutu", "%d minute", "%d minuta"); - }, - hour: "oko jedan sat", - hours: function (value) { - return numpf(value, "%d sat", "%d sata", "%d sati"); - }, - day: "jedan dan", - days: function (value) { - return numpf(value, "%d dan", "%d dana", "%d dana"); - }, - month: "mjesec dana", - months: function (value) { - return numpf(value, "%d mjesec", "%d mjeseca", "%d mjeseci"); - }, - year: "prije godinu dana", - years: function (value) { - return numpf(value, "%d godinu", "%d godine", "%d godina"); - }, - wordSeparator: " " - }; - -}).call(this); \ No newline at end of file diff --git a/js/locales/jquery.timeago.hu.js b/js/locales/jquery.timeago.hu.js deleted file mode 100644 index 3079c22b72..0000000000 --- a/js/locales/jquery.timeago.hu.js +++ /dev/null @@ -1,18 +0,0 @@ -// Hungarian -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: null, - suffixFromNow: null, - seconds: "kevesebb mint egy perce", - minute: "körülbelül egy perce", - minutes: "%d perce", - hour: "körülbelül egy órája", - hours: "körülbelül %d órája", - day: "körülbelül egy napja", - days: "%d napja", - month: "körülbelül egy hónapja", - months: "%d hónapja", - year: "körülbelül egy éve", - years: "%d éve" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.hy.js b/js/locales/jquery.timeago.hy.js deleted file mode 100644 index cd6e195e20..0000000000 --- a/js/locales/jquery.timeago.hy.js +++ /dev/null @@ -1,18 +0,0 @@ -// Armenian -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "առաջ", - suffixFromNow: "հետո", - seconds: "վայրկյաններ", - minute: "մեկ րոպե", - minutes: "%d րոպե", - hour: "մեկ ժամ", - hours: "%d ժամ", - day: "մեկ օր", - days: "%d օր", - month: "մեկ ամիս", - months: "%d ամիս", - year: "մեկ տարի", - years: "%d տարի" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.id.js b/js/locales/jquery.timeago.id.js deleted file mode 100644 index 296d84e241..0000000000 --- a/js/locales/jquery.timeago.id.js +++ /dev/null @@ -1,18 +0,0 @@ -// Indonesian -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "yang lalu", - suffixFromNow: "dari sekarang", - seconds: "kurang dari semenit", - minute: "sekitar satu menit", - minutes: "%d menit", - hour: "sekitar sejam", - hours: "sekitar %d jam", - day: "sehari", - days: "%d hari", - month: "sekitar sebulan", - months: "%d bulan", - year: "sekitar setahun", - years: "%d tahun" -}; diff --git a/js/locales/jquery.timeago.is.js b/js/locales/jquery.timeago.is.js deleted file mode 100644 index d8074cf01a..0000000000 --- a/js/locales/jquery.timeago.is.js +++ /dev/null @@ -1,19 +0,0 @@ -jQuery.timeago.settings.strings = { - prefixAgo: "fyrir", - prefixFromNow: "eftir", - suffixAgo: "síðan", - suffixFromNow: null, - seconds: "minna en mínútu", - minute: "mínútu", - minutes: "%d mínútum", - hour: "klukkutíma", - hours: "um %d klukkutímum", - day: "degi", - days: "%d dögum", - month: "mánuði", - months: "%d mánuðum", - year: "ári", - years: "%d árum", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.it.js b/js/locales/jquery.timeago.it.js deleted file mode 100644 index 6308dd30cc..0000000000 --- a/js/locales/jquery.timeago.it.js +++ /dev/null @@ -1,16 +0,0 @@ -// Italian -jQuery.timeago.settings.strings = { - suffixAgo: "fa", - suffixFromNow: "da ora", - seconds: "meno di un minuto", - minute: "circa un minuto", - minutes: "%d minuti", - hour: "circa un'ora", - hours: "circa %d ore", - day: "un giorno", - days: "%d giorni", - month: "circa un mese", - months: "%d mesi", - year: "circa un anno", - years: "%d anni" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.ja.js b/js/locales/jquery.timeago.ja.js deleted file mode 100644 index fd81f275d0..0000000000 --- a/js/locales/jquery.timeago.ja.js +++ /dev/null @@ -1,19 +0,0 @@ -// Japanese -jQuery.timeago.settings.strings = { - prefixAgo: "", - prefixFromNow: "今から", - suffixAgo: "前", - suffixFromNow: "後", - seconds: "1 分未満", - minute: "約 1 分", - minutes: "%d 分", - hour: "約 1 時間", - hours: "約 %d 時間", - day: "約 1 日", - days: "約 %d 日", - month: "約 1 月", - months: "約 %d 月", - year: "約 1 年", - years: "約 %d 年", - wordSeparator: "" -}; diff --git a/js/locales/jquery.timeago.jv.js b/js/locales/jquery.timeago.jv.js deleted file mode 100644 index 98f43ef220..0000000000 --- a/js/locales/jquery.timeago.jv.js +++ /dev/null @@ -1,18 +0,0 @@ -// Javanesse (Boso Jowo) -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "kepungkur", - suffixFromNow: "seko saiki", - seconds: "kurang seko sakmenit", - minute: "kurang luwih sakmenit", - minutes: "%d menit", - hour: "kurang luwih sakjam", - hours: "kurang luwih %d jam", - day: "sedina", - days: "%d dina", - month: "kurang luwih sewulan", - months: "%d wulan", - year: "kurang luwih setahun", - years: "%d tahun" -}; diff --git a/js/locales/jquery.timeago.ko.js b/js/locales/jquery.timeago.ko.js deleted file mode 100644 index a192b97bf6..0000000000 --- a/js/locales/jquery.timeago.ko.js +++ /dev/null @@ -1,17 +0,0 @@ -// Korean -jQuery.timeago.settings.strings = { - suffixAgo: "전", - suffixFromNow: "후", - seconds: "1분 이내", - minute: "1분", - minutes: "%d분", - hour: "1시간", - hours: "%d시간", - day: "하루", - days: "%d일", - month: "한 달", - months: "%d달", - year: "1년", - years: "%d년", - wordSeparator: " " -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.lt.js b/js/locales/jquery.timeago.lt.js deleted file mode 100644 index 0814555763..0000000000 --- a/js/locales/jquery.timeago.lt.js +++ /dev/null @@ -1,20 +0,0 @@ -//Lithuanian -jQuery.timeago.settings.strings = { - prefixAgo: "prieš", - prefixFromNow: null, - suffixAgo: null, - suffixFromNow: "nuo dabar", - seconds: "%d sek.", - minute: "min.", - minutes: "%d min.", - hour: "val.", - hours: "%d val.", - day: "1 d.", - days: "%d d.", - month: "mėn.", - months: "%d mėn.", - year: "metus", - years: "%d metus", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.mk.js b/js/locales/jquery.timeago.mk.js deleted file mode 100644 index 9afdd46268..0000000000 --- a/js/locales/jquery.timeago.mk.js +++ /dev/null @@ -1,20 +0,0 @@ -// Macedonian -(function() { - jQuery.timeago.settings.strings={ - prefixAgo: "пред", - prefixFromNow: "за", - suffixAgo: null, - suffixFromNow: null, - seconds: "%d секунди", - minute: "%d минута", - minutes: "%d минути", - hour: "%d час", - hours: "%d часа", - day: "%d ден", - days: "%d денови" , - month: "%d месец", - months: "%d месеци", - year: "%d година", - years: "%d години" - } -})(); diff --git a/js/locales/jquery.timeago.nl.js b/js/locales/jquery.timeago.nl.js deleted file mode 100644 index cd68438cca..0000000000 --- a/js/locales/jquery.timeago.nl.js +++ /dev/null @@ -1,20 +0,0 @@ -// Dutch -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "", - suffixAgo: "geleden", - suffixFromNow: "van nu", - seconds: "minder dan een minuut", - minute: "ongeveer een minuut", - minutes: "%d minuten", - hour: "ongeveer een uur", - hours: "ongeveer %d uur", - day: "een dag", - days: "%d dagen", - month: "ongeveer een maand", - months: "%d maanden", - year: "ongeveer een jaar", - years: "%d jaar", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.no.js b/js/locales/jquery.timeago.no.js deleted file mode 100644 index 65d1b0d836..0000000000 --- a/js/locales/jquery.timeago.no.js +++ /dev/null @@ -1,18 +0,0 @@ -// Norwegian -jQuery.timeago.settings.strings = { - prefixAgo: "for", - prefixFromNow: "om", - suffixAgo: "siden", - suffixFromNow: "", - seconds: "mindre enn et minutt", - minute: "ca. et minutt", - minutes: "%d minutter", - hour: "ca. en time", - hours: "ca. %d timer", - day: "en dag", - days: "%d dager", - month: "ca. en måned", - months: "%d måneder", - year: "ca. et år", - years: "%d år" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.pl.js b/js/locales/jquery.timeago.pl.js deleted file mode 100644 index 21d26fc1c1..0000000000 --- a/js/locales/jquery.timeago.pl.js +++ /dev/null @@ -1,31 +0,0 @@ -// Polish -(function() { - function numpf(n, s, t) { - // s - 2-4, 22-24, 32-34 ... - // t - 5-21, 25-31, ... - var n10 = n % 10; - if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) { - return s; - } else { - return t; - } - } - - jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "za", - suffixAgo: "temu", - suffixFromNow: null, - seconds: "mniej niż minutę", - minute: "minutę", - minutes: function(value) { return numpf(value, "%d minuty", "%d minut"); }, - hour: "godzinę", - hours: function(value) { return numpf(value, "%d godziny", "%d godzin"); }, - day: "dzień", - days: "%d dni", - month: "miesiąc", - months: function(value) { return numpf(value, "%d miesiące", "%d miesięcy"); }, - year: "rok", - years: function(value) { return numpf(value, "%d lata", "%d lat"); } - }; -})(); \ No newline at end of file diff --git a/js/locales/jquery.timeago.pt-br.js b/js/locales/jquery.timeago.pt-br.js deleted file mode 100644 index c72ea386a7..0000000000 --- a/js/locales/jquery.timeago.pt-br.js +++ /dev/null @@ -1,18 +0,0 @@ -// Brazilian Portuguese -jQuery.timeago.settings.strings = { - prefixAgo: "há", - prefixFromNow: "em", - suffixAgo: null, - suffixFromNow: null, - seconds: "alguns segundos", - minute: "um minuto", - minutes: "%d minutos", - hour: "uma hora", - hours: "%d horas", - day: "um dia", - days: "%d dias", - month: "um mês", - months: "%d meses", - year: "um ano", - years: "%d anos" -}; diff --git a/js/locales/jquery.timeago.pt.js b/js/locales/jquery.timeago.pt.js deleted file mode 100644 index 416333c655..0000000000 --- a/js/locales/jquery.timeago.pt.js +++ /dev/null @@ -1,16 +0,0 @@ -// Portuguese -jQuery.timeago.settings.strings = { - suffixAgo: "atrás", - suffixFromNow: "a partir de agora", - seconds: "menos de um minuto", - minute: "cerca de um minuto", - minutes: "%d minutos", - hour: "cerca de uma hora", - hours: "cerca de %d horas", - day: "um dia", - days: "%d dias", - month: "cerca de um mês", - months: "%d meses", - year: "cerca de um ano", - years: "%d anos" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.ro.js b/js/locales/jquery.timeago.ro.js deleted file mode 100644 index 2cee429902..0000000000 --- a/js/locales/jquery.timeago.ro.js +++ /dev/null @@ -1,18 +0,0 @@ -// Romanian -jQuery.timeago.settings.strings = { - prefixAgo: "acum", - prefixFromNow: "in timp de", - suffixAgo: "", - suffixFromNow: "", - seconds: "mai putin de un minut", - minute: "un minut", - minutes: "%d minute", - hour: "o ora", - hours: "%d ore", - day: "o zi", - days: "%d zile", - month: "o luna", - months: "%d luni", - year: "un an", - years: "%d ani" -}; diff --git a/js/locales/jquery.timeago.rs.js b/js/locales/jquery.timeago.rs.js deleted file mode 100644 index 0809c9101d..0000000000 --- a/js/locales/jquery.timeago.rs.js +++ /dev/null @@ -1,49 +0,0 @@ -// Serbian -(function () { - var numpf; - - numpf = function (n, f, s, t) { - var n10; - n10 = n % 10; - if (n10 === 1 && (n === 1 || n > 20)) { - return f; - } else if (n10 > 1 && n10 < 5 && (n > 20 || n < 10)) { - return s; - } else { - return t; - } - }; - - jQuery.timeago.settings.strings = { - prefixAgo: "pre", - prefixFromNow: "za", - suffixAgo: null, - suffixFromNow: null, - second: "sekund", - seconds: function (value) { - return numpf(value, "%d sekund", "%d sekunde", "%d sekundi"); - }, - minute: "oko minut", - minutes: function (value) { - return numpf(value, "%d minut", "%d minuta", "%d minuta"); - }, - hour: "oko jedan sat", - hours: function (value) { - return numpf(value, "%d sat", "%d sata", "%d sati"); - }, - day: "jedan dan", - days: function (value) { - return numpf(value, "%d dan", "%d dana", "%d dana"); - }, - month: "mesec dana", - months: function (value) { - return numpf(value, "%d mesec", "%d meseca", "%d meseci"); - }, - year: "godinu dana", - years: function (value) { - return numpf(value, "%d godinu", "%d godine", "%d godina"); - }, - wordSeparator: " " - }; - -}).call(this); diff --git a/js/locales/jquery.timeago.ru.js b/js/locales/jquery.timeago.ru.js deleted file mode 100644 index 4cdc01b1ce..0000000000 --- a/js/locales/jquery.timeago.ru.js +++ /dev/null @@ -1,34 +0,0 @@ -// Russian -(function() { - function numpf(n, f, s, t) { - // f - 1, 21, 31, ... - // s - 2-4, 22-24, 32-34 ... - // t - 5-20, 25-30, ... - var n10 = n % 10; - if ( (n10 == 1) && ( (n == 1) || (n > 20) ) ) { - return f; - } else if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) { - return s; - } else { - return t; - } - } - - jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "через", - suffixAgo: "назад", - suffixFromNow: null, - seconds: "меньше минуты", - minute: "минуту", - minutes: function(value) { return numpf(value, "%d минута", "%d минуты", "%d минут"); }, - hour: "час", - hours: function(value) { return numpf(value, "%d час", "%d часа", "%d часов"); }, - day: "день", - days: function(value) { return numpf(value, "%d день", "%d дня", "%d дней"); }, - month: "месяц", - months: function(value) { return numpf(value, "%d месяц", "%d месяца", "%d месяцев"); }, - year: "год", - years: function(value) { return numpf(value, "%d год", "%d года", "%d лет"); } - }; -})(); \ No newline at end of file diff --git a/js/locales/jquery.timeago.sk.js b/js/locales/jquery.timeago.sk.js deleted file mode 100644 index 24493a2bd7..0000000000 --- a/js/locales/jquery.timeago.sk.js +++ /dev/null @@ -1,18 +0,0 @@ -// Slovak -jQuery.timeago.settings.strings = { - prefixAgo: "pred", - prefixFromNow: null, - suffixAgo: null, - suffixFromNow: null, - seconds: "menej než minútou", - minute: "minútou", - minutes: "%d minútami", - hour: "hodinou", - hours: "%d hodinami", - day: "1 dňom", - days: "%d dňami", - month: "1 mesiacom", - months: "%d mesiacmi", - year: "1 rokom", - years: "%d rokmi" -}; diff --git a/js/locales/jquery.timeago.sl.js b/js/locales/jquery.timeago.sl.js deleted file mode 100644 index e546c0d502..0000000000 --- a/js/locales/jquery.timeago.sl.js +++ /dev/null @@ -1,44 +0,0 @@ -// Slovenian with support for dual -(function () { - var numpf; - numpf = function (n, d, m) { - if (n == 2) { - return d; - } else { - return m; - } - }; - - jQuery.timeago.settings.strings = { - prefixAgo: "pred", - prefixFromNow: "čez", - suffixAgo: null, - suffixFromNow: null, - second: "sekundo", - seconds: function (value) { - return numpf(value, "%d sekundama", "%d sekundami"); - }, - minute: "minuto", - minutes: function (value) { - return numpf(value, "%d minutama", "%d minutami"); - }, - hour: "uro", - hours: function (value) { - return numpf(value, "%d urama", "%d urami"); - }, - day: "dnevom", - days: function (value) { - return numpf(value, "%d dnevi", "%d dnevi"); - }, - month: "enim mescem", - months: function (value) { - return numpf(value, "%d mesecema", "%d meseci"); - }, - year: "enim letom", - years: function (value) { - return numpf(value, "%d letoma", "%d leti"); - }, - wordSeparator: " " - }; - -}).call(this); diff --git a/js/locales/jquery.timeago.sv.js b/js/locales/jquery.timeago.sv.js deleted file mode 100644 index b5c3947179..0000000000 --- a/js/locales/jquery.timeago.sv.js +++ /dev/null @@ -1,18 +0,0 @@ -// Swedish -jQuery.timeago.settings.strings = { - prefixAgo: "för", - prefixFromNow: "om", - suffixAgo: "sedan", - suffixFromNow: "", - seconds: "mindre än en minut", - minute: "ungefär en minut", - minutes: "%d minuter", - hour: "ungefär en timme", - hours: "ungefär %d timmar", - day: "en dag", - days: "%d dagar", - month: "ungefär en månad", - months: "%d månader", - year: "ungefär ett år", - years: "%d år" -}; \ No newline at end of file diff --git a/js/locales/jquery.timeago.th.js b/js/locales/jquery.timeago.th.js deleted file mode 100644 index 894bf7fc83..0000000000 --- a/js/locales/jquery.timeago.th.js +++ /dev/null @@ -1,20 +0,0 @@ -// Thai -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: null, - suffixAgo: "ที่แล้ว", - suffixFromNow: "จากตอนนี้", - seconds: "น้อยกว่าหนึ่งนาที", - minute: "ประมาณหนึ่งนาที", - minutes: "%d นาที", - hour: "ประมาณหนึ่งชั่วโมง", - hours: "ประมาณ %d ชั่วโมง", - day: "หนึ่งวัน", - days: "%d วัน", - month: "ประมาณหนึ่งเดือน", - months: "%d เดือน", - year: "ประมาณหนึ่งปี", - years: "%d ปี", - wordSeparator: "", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.tr.js b/js/locales/jquery.timeago.tr.js deleted file mode 100644 index 160190d026..0000000000 --- a/js/locales/jquery.timeago.tr.js +++ /dev/null @@ -1,16 +0,0 @@ -// Turkish -jQuery.timeago.settings.strings = { - suffixAgo: 'önce', - suffixFromNow: null, - seconds: '1 dakikadan', - minute: '1 dakika', - minutes: '%d dakika', - hour: '1 saat', - hours: '%d saat', - day: '1 gün', - days: '%d gün', - month: '1 ay', - months: '%d ay', - year: '1 yıl', - years: '%d yıl' -}; diff --git a/js/locales/jquery.timeago.uk.js b/js/locales/jquery.timeago.uk.js deleted file mode 100644 index 4382549f0f..0000000000 --- a/js/locales/jquery.timeago.uk.js +++ /dev/null @@ -1,34 +0,0 @@ -// Ukrainian -(function() { - function numpf(n, f, s, t) { - // f - 1, 21, 31, ... - // s - 2-4, 22-24, 32-34 ... - // t - 5-20, 25-30, ... - var n10 = n % 10; - if ( (n10 == 1) && ( (n == 1) || (n > 20) ) ) { - return f; - } else if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) { - return s; - } else { - return t; - } - } - - jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "через", - suffixAgo: "тому", - suffixFromNow: null, - seconds: "менше хвилини", - minute: "хвилина", - minutes: function(value) { return numpf(value, "%d хвилина", "%d хвилини", "%d хвилин"); }, - hour: "година", - hours: function(value) { return numpf(value, "%d година", "%d години", "%d годин"); }, - day: "день", - days: function(value) { return numpf(value, "%d день", "%d дні", "%d днів"); }, - month: "місяць", - months: function(value) { return numpf(value, "%d місяць", "%d місяці", "%d місяців"); }, - year: "рік", - years: function(value) { return numpf(value, "%d рік", "%d роки", "%d років"); } - }; -})(); \ No newline at end of file diff --git a/js/locales/jquery.timeago.uz.js b/js/locales/jquery.timeago.uz.js deleted file mode 100644 index 380f18dc04..0000000000 --- a/js/locales/jquery.timeago.uz.js +++ /dev/null @@ -1,19 +0,0 @@ -//Uzbek -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "keyin", - suffixAgo: "avval", - suffixFromNow: null, - seconds: "bir necha soniya", - minute: "1 daqiqa", - minutes: function(value) { return "%d daqiqa" }, - hour: "1 soat", - hours: function(value) { return "%d soat" }, - day: "1 kun", - days: function(value) { return "%d kun" }, - month: "1 oy", - months: function(value) { return "%d oy" }, - year: "1 yil", - years: function(value) { return "%d yil" }, - wordSeparator: " " -}; diff --git a/js/locales/jquery.timeago.vi.js b/js/locales/jquery.timeago.vi.js deleted file mode 100644 index 84d6618558..0000000000 --- a/js/locales/jquery.timeago.vi.js +++ /dev/null @@ -1,20 +0,0 @@ -// Vietnamese -jQuery.timeago.settings.strings = { - prefixAgo: 'cách đây', - prefixFromNow: null, - suffixAgo: null, - suffixFromNow: "trước", - seconds: "chưa đến một phút", - minute: "khoảng một phút", - minutes: "%d phút", - hour: "khoảng một tiếng", - hours: "khoảng %d tiếng", - day: "một ngày", - days: "%d ngày", - month: "khoảng một tháng", - months: "%d tháng", - year: "khoảng một năm", - years: "%d năm", - wordSeparator: " ", - numbers: [] -}; diff --git a/js/locales/jquery.timeago.zh-cn.js b/js/locales/jquery.timeago.zh-cn.js deleted file mode 100644 index f7b979798a..0000000000 --- a/js/locales/jquery.timeago.zh-cn.js +++ /dev/null @@ -1,20 +0,0 @@ -// Simplified Chinese -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "从现在开始", - suffixAgo: "之前", - suffixFromNow: null, - seconds: "不到1分钟", - minute: "大约1分钟", - minutes: "%d分钟", - hour: "大约1小时", - hours: "大约%d小时", - day: "1天", - days: "%d天", - month: "大约1个月", - months: "%d月", - year: "大约1年", - years: "%d年", - numbers: [], - wordSeparator: "" -}; diff --git a/js/locales/jquery.timeago.zh-tw.js b/js/locales/jquery.timeago.zh-tw.js deleted file mode 100644 index 52633900f3..0000000000 --- a/js/locales/jquery.timeago.zh-tw.js +++ /dev/null @@ -1,20 +0,0 @@ -// Traditional Chinese, zh-tw -jQuery.timeago.settings.strings = { - prefixAgo: null, - prefixFromNow: "從現在開始", - suffixAgo: "之前", - suffixFromNow: null, - seconds: "不到1分鐘", - minute: "大約1分鐘", - minutes: "%d分鐘", - hour: "大約1小時", - hours: "%d小時", - day: "大約1天", - days: "%d天", - month: "大約1個月", - months: "%d個月", - year: "大約1年", - years: "%d年", - numbers: [], - wordSeparator: "" -}; diff --git a/protected/humhub/assets/AppAsset.php b/protected/humhub/assets/AppAsset.php index 1378fb4a2a..421d53e3b0 100755 --- a/protected/humhub/assets/AppAsset.php +++ b/protected/humhub/assets/AppAsset.php @@ -31,7 +31,6 @@ class AppAsset extends AssetBundle 'js/jquery.cookie.js', 'js/jquery.highlight.min.js', 'js/jquery.autosize.min.js', - 'js/jquery.timeago.js', 'js/jquery.knob.min.js', 'js/wysihtml5-0.3.0.js', 'js/bootstrap3-wysihtml5.js', @@ -56,6 +55,7 @@ class AppAsset extends AssetBundle 'yii\web\YiiAsset', 'yii\bootstrap\BootstrapAsset', 'yii\bootstrap\BootstrapPluginAsset', + 'humhub\assets\TimeAgoAsset' ]; } diff --git a/protected/humhub/assets/TimeAgoAsset.php b/protected/humhub/assets/TimeAgoAsset.php new file mode 100644 index 0000000000..819e2cb875 --- /dev/null +++ b/protected/humhub/assets/TimeAgoAsset.php @@ -0,0 +1,69 @@ + 'no', + 'pt_br' => 'pt-br', + 'zh_cn' => 'zh-CN', + 'zh_tw' => 'zh-TW', + 'fa_ir' => 'fa', + ]; + + /** + * @inheritdoc + */ + public function init() + { + parent::init(); + $this->registerLocale(); + } + + /** + * Adds the correct locale file to js files + */ + protected function registerLocale() + { + $languageCode = Yii::$app->language; + + if (array_key_exists($languageCode, $this->languageMapping)) { + $languageCode = $this->languageMapping[$languageCode]; + } + + $localeFile = 'locales' . DIRECTORY_SEPARATOR . 'jquery.timeago.' . $languageCode . '.js'; + if (file_exists(Yii::getAlias($this->sourcePath . '/' . $localeFile))) { + $this->js[] = $localeFile; + } + } + +} diff --git a/protected/humhub/config/common.php b/protected/humhub/config/common.php index 99d93c551c..10f4faeeba 100644 --- a/protected/humhub/config/common.php +++ b/protected/humhub/config/common.php @@ -7,7 +7,7 @@ Yii::setAlias('@humhub', '@app/humhub'); $config = [ 'name' => 'HumHub', - 'version' => '1.0.0-beta.2', + 'version' => '1.0.0-beta.3', 'basePath' => dirname(__DIR__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR, 'bootstrap' => ['log', 'humhub\components\bootstrap\ModuleAutoLoader'], 'sourceLanguage' => 'en', @@ -130,16 +130,25 @@ $config = [ 'lt' => 'lietuvių kalba', ], 'user' => [ + // Minimum username length 'minUsernameLength' => 4, ], 'formatter' => [ + // Default date format, used especially in DatePicker widgets 'defaultDateFormat' => 'short', + // Seconds before switch from relative time to date format + // Set to false to always use relative time in TimeAgo Widget + 'timeAgoBefore' => 172800, + // Use static timeago instead of timeago js + 'timeAgoStatic' => false, ], 'humhub' => [ + // Marketplace / New Version Check 'apiEnabled' => true, 'apiUrl' => 'https://api.humhub.com', ], 'curl' => [ + // Check SSL certificates on CURL requests 'validateSsl' => true, ], ] diff --git a/protected/humhub/widgets/TimeAgo.php b/protected/humhub/widgets/TimeAgo.php index d69440874a..5f47444fec 100644 --- a/protected/humhub/widgets/TimeAgo.php +++ b/protected/humhub/widgets/TimeAgo.php @@ -8,6 +8,8 @@ namespace humhub\widgets; +use Yii; + /** * Shows a given date & time as automatically updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago"). * @@ -21,17 +23,81 @@ class TimeAgo extends \yii\base\Widget */ public $timestamp; - public function run() + /** + * @inheritdoc + */ + public function init() { + parent::init(); + + // Make sure we get an timestamp in server tz if (is_numeric($this->timestamp)) { $this->timestamp = date('Y-m-d H:i:s', $this->timestamp); } + $this->timestamp = strtotime($this->timestamp); + } + + /** + * @inheritdoc + */ + public function run() + { + $elapsed = time() - $this->timestamp; + + if (Yii::$app->params['formatter']['timeAgoBefore'] !== false && $elapsed > Yii::$app->params['formatter']['timeAgoBefore']) { + return $this->renderDateTime($elapsed); + } + + return $this->renderTimeAgo(); + } + + /** + * Render TimeAgo Javascript + * + * @return string timeago span + */ + public function renderTimeAgo() + { + // Use static timeago + if (Yii::$app->params['formatter']['timeAgoStatic']) { + return '' . Yii::$app->formatter->asRelativeTime($this->timestamp) . ''; + } // Convert timestamp to ISO 8601 - $this->timestamp = date("c", strtotime($this->timestamp)); + $this->timestamp = date("c", $this->timestamp); $this->getView()->registerJs('$(".time").timeago();', \yii\web\View::POS_END, 'timeago'); - return '' . $this->timestamp . ''; + return '' . $this->getFullDateTime() . ''; + + #$date = Yii::$app->formatter->asRelativeTime($this->timestamp); + } + + /** + * Show full date + * + * @param int $elasped time in seconds + * @return string output of full date and time + */ + public function renderDateTime($elapsed) + { + $date = Yii::$app->formatter->asDate($this->timestamp, 'medium'); + + // Show time within the last 72 hours + if ($elapsed < 60 * 60 * 24 * 3) { + $date .= " " . Yii::$app->formatter->asTime($this->timestamp, 'short'); + } + + return '' . $date . ''; + } + + /** + * Returns full date as text + * + * @return string + */ + protected function getFullDateTime() + { + return Yii::$app->formatter->asDate($this->timestamp, 'full') . ' - ' . Yii::$app->formatter->asTime($this->timestamp, 'short'); } }