From c81854ad14f265d6cf1d409fa174eb68b166fb04 Mon Sep 17 00:00:00 2001 From: Sam Date: Fri, 4 May 2018 16:11:33 +1000 Subject: [PATCH] FEATURE: Rename discourse-cronos to discourse-local-dates --- lib/plugin/metadata.rb | 2 +- .../assets/javascripts/discourse-cronos.js | 75 ----------- .../discourse-cronos-create-form.js.es6 | 116 ------------------ .../discourse-cronos-create-form.hbs | 77 ------------ .../modal/discourse-cronos-create-modal.hbs | 1 - .../initializers/discourse-cronos.js.es6 | 37 ------ .../discourse-cronos.js.es6 | 73 ----------- .../assets/stylesheets/discourse-cronos.scss | 83 ------------- .../config/locales/server.de.yml | 12 -- .../config/locales/server.en.yml | 5 - .../config/locales/server.es.yml | 12 -- .../config/locales/server.fr.yml | 12 -- .../config/locales/server.he.yml | 12 -- .../config/locales/server.ru.yml | 12 -- .../config/locales/server.ur.yml | 12 -- .../lib/discourse_cronos/engine.rb | 8 -- plugins/discourse-cronos/plugin.rb | 13 -- .../.discourse-cronos-create-form.js.es6.swp | Bin 0 -> 12288 bytes .../.discourse-cronos.js.es6.swp | Bin 0 -> 12288 bytes .../bin/pull_translations.rb | 0 .../config/locales/client.ar.yml | 0 .../config/locales/client.bs_BA.yml | 0 .../config/locales/client.ca.yml | 0 .../config/locales/client.cs.yml | 0 .../config/locales/client.da.yml | 0 .../config/locales/client.de.yml | 2 +- .../config/locales/client.el.yml | 0 .../config/locales/client.en.yml | 2 +- .../config/locales/client.es.yml | 2 +- .../config/locales/client.et.yml | 0 .../config/locales/client.fa_IR.yml | 2 +- .../config/locales/client.fi.yml | 0 .../config/locales/client.fr.yml | 2 +- .../config/locales/client.gl.yml | 0 .../config/locales/client.he.yml | 2 +- .../config/locales/client.id.yml | 0 .../config/locales/client.it.yml | 0 .../config/locales/client.ja.yml | 0 .../config/locales/client.ko.yml | 0 .../config/locales/client.lv.yml | 0 .../config/locales/client.nb_NO.yml | 0 .../config/locales/client.nl.yml | 0 .../config/locales/client.pl_PL.yml | 0 .../config/locales/client.pt.yml | 0 .../config/locales/client.pt_BR.yml | 0 .../config/locales/client.ro.yml | 0 .../config/locales/client.ru.yml | 2 +- .../config/locales/client.sk.yml | 0 .../config/locales/client.sq.yml | 0 .../config/locales/client.sv.yml | 0 .../config/locales/client.te.yml | 0 .../config/locales/client.th.yml | 0 .../config/locales/client.tr_TR.yml | 0 .../config/locales/client.uk.yml | 0 .../config/locales/client.ur.yml | 2 +- .../config/locales/client.vi.yml | 0 .../config/locales/client.zh_CN.yml | 2 +- .../config/locales/client.zh_TW.yml | 0 .../config/locales/server.ar.yml | 0 .../config/locales/server.bs_BA.yml | 0 .../config/locales/server.ca.yml | 0 .../config/locales/server.cs.yml | 0 .../config/locales/server.da.yml | 0 .../config/locales/server.de.yml | 12 ++ .../config/locales/server.el.yml | 0 .../config/locales/server.en.yml | 5 + .../config/locales/server.es.yml | 12 ++ .../config/locales/server.et.yml | 0 .../config/locales/server.fa_IR.yml | 0 .../config/locales/server.fi.yml | 0 .../config/locales/server.fr.yml | 12 ++ .../config/locales/server.gl.yml | 0 .../config/locales/server.he.yml | 12 ++ .../config/locales/server.id.yml | 0 .../config/locales/server.it.yml | 0 .../config/locales/server.ja.yml | 0 .../config/locales/server.ko.yml | 0 .../config/locales/server.lv.yml | 0 .../config/locales/server.nb_NO.yml | 0 .../config/locales/server.nl.yml | 0 .../config/locales/server.pl_PL.yml | 0 .../config/locales/server.pt.yml | 0 .../config/locales/server.pt_BR.yml | 0 .../config/locales/server.ro.yml | 0 .../config/locales/server.ru.yml | 12 ++ .../config/locales/server.sk.yml | 0 .../config/locales/server.sq.yml | 0 .../config/locales/server.sv.yml | 0 .../config/locales/server.te.yml | 0 .../config/locales/server.th.yml | 0 .../config/locales/server.tr_TR.yml | 0 .../config/locales/server.uk.yml | 0 .../config/locales/server.ur.yml | 12 ++ .../config/locales/server.vi.yml | 0 .../config/locales/server.zh_CN.yml | 0 .../config/locales/server.zh_TW.yml | 0 .../config/settings.yml | 6 +- plugins/discourse-local-dates/plugin.rb | 13 ++ .../spec/lib/pretty_text_spec.rb | 2 +- 99 files changed, 104 insertions(+), 574 deletions(-) delete mode 100644 plugins/discourse-cronos/assets/javascripts/discourse-cronos.js delete mode 100644 plugins/discourse-cronos/assets/javascripts/discourse/components/discourse-cronos-create-form.js.es6 delete mode 100644 plugins/discourse-cronos/assets/javascripts/discourse/templates/components/discourse-cronos-create-form.hbs delete mode 100644 plugins/discourse-cronos/assets/javascripts/discourse/templates/modal/discourse-cronos-create-modal.hbs delete mode 100644 plugins/discourse-cronos/assets/javascripts/initializers/discourse-cronos.js.es6 delete mode 100644 plugins/discourse-cronos/assets/javascripts/lib/discourse-markdown/discourse-cronos.js.es6 delete mode 100644 plugins/discourse-cronos/assets/stylesheets/discourse-cronos.scss delete mode 100644 plugins/discourse-cronos/config/locales/server.de.yml delete mode 100644 plugins/discourse-cronos/config/locales/server.en.yml delete mode 100644 plugins/discourse-cronos/config/locales/server.es.yml delete mode 100644 plugins/discourse-cronos/config/locales/server.fr.yml delete mode 100644 plugins/discourse-cronos/config/locales/server.he.yml delete mode 100644 plugins/discourse-cronos/config/locales/server.ru.yml delete mode 100644 plugins/discourse-cronos/config/locales/server.ur.yml delete mode 100644 plugins/discourse-cronos/lib/discourse_cronos/engine.rb delete mode 100644 plugins/discourse-cronos/plugin.rb create mode 100644 plugins/discourse-local-dates/assets/javascripts/discourse/components/.discourse-cronos-create-form.js.es6.swp create mode 100644 plugins/discourse-local-dates/assets/javascripts/lib/discourse-markdown/.discourse-cronos.js.es6.swp rename plugins/{discourse-cronos => discourse-local-dates}/bin/pull_translations.rb (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ar.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.bs_BA.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ca.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.cs.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.da.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.de.yml (97%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.el.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.en.yml (96%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.es.yml (97%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.et.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.fa_IR.yml (92%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.fi.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.fr.yml (97%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.gl.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.he.yml (96%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.id.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.it.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ja.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ko.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.lv.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.nb_NO.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.nl.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.pl_PL.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.pt.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.pt_BR.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ro.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ru.yml (98%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.sk.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.sq.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.sv.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.te.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.th.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.tr_TR.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.uk.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.ur.yml (96%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.vi.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.zh_CN.yml (93%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/client.zh_TW.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.ar.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.bs_BA.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.ca.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.cs.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.da.yml (100%) create mode 100644 plugins/discourse-local-dates/config/locales/server.de.yml rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.el.yml (100%) create mode 100644 plugins/discourse-local-dates/config/locales/server.en.yml create mode 100644 plugins/discourse-local-dates/config/locales/server.es.yml rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.et.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.fa_IR.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.fi.yml (100%) create mode 100644 plugins/discourse-local-dates/config/locales/server.fr.yml rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.gl.yml (100%) create mode 100644 plugins/discourse-local-dates/config/locales/server.he.yml rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.id.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.it.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.ja.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.ko.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.lv.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.nb_NO.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.nl.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.pl_PL.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.pt.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.pt_BR.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.ro.yml (100%) create mode 100644 plugins/discourse-local-dates/config/locales/server.ru.yml rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.sk.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.sq.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.sv.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.te.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.th.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.tr_TR.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.uk.yml (100%) create mode 100644 plugins/discourse-local-dates/config/locales/server.ur.yml rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.vi.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.zh_CN.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/locales/server.zh_TW.yml (100%) rename plugins/{discourse-cronos => discourse-local-dates}/config/settings.yml (61%) create mode 100644 plugins/discourse-local-dates/plugin.rb rename plugins/{discourse-cronos => discourse-local-dates}/spec/lib/pretty_text_spec.rb (90%) diff --git a/lib/plugin/metadata.rb b/lib/plugin/metadata.rb index d6f7b64f548..f9dfabc622a 100644 --- a/lib/plugin/metadata.rb +++ b/lib/plugin/metadata.rb @@ -39,7 +39,7 @@ class Plugin::Metadata "discourse-voting", "docker_manager", "discourse-signatures", - "discourse-cronos", + "discourse-local-dates", "discourse-crowd", "discourse-footnote", "discourse-gradle-issue", diff --git a/plugins/discourse-cronos/assets/javascripts/discourse-cronos.js b/plugins/discourse-cronos/assets/javascripts/discourse-cronos.js deleted file mode 100644 index 6ac50584e12..00000000000 --- a/plugins/discourse-cronos/assets/javascripts/discourse-cronos.js +++ /dev/null @@ -1,75 +0,0 @@ -(function($) { - $.fn.cronos = function(repeat) { - function _formatTimezone(timezone) { - return timezone.replace("_", " ").split("/"); - } - - function processElement($element, options) { - repeat = repeat || true; - - if (this.timeout) { - clearTimeout(this.timeout); - } - - var relativeTime = moment.utc(options.date + " " + options.time, "YYYY-MM-DD HH:mm"); - - if (options.recurring && relativeTime < moment().utc()) { - var parts = options.recurring.split("."); - var count = parseInt(parts[0], 10); - var type = parts[1]; - var diff = moment().diff(relativeTime, type); - var add = Math.ceil(diff + count); - - relativeTime = relativeTime.add(add, type); - } - - var previews = options.timezones.split("|").map(function(timezone) { - var dateTime = relativeTime.tz(timezone).format(options.format); - var timezoneParts = _formatTimezone(timezone); - - if (dateTime.match(/TZ/)) { - return dateTime.replace("TZ", timezoneParts.join(": ")); - } else { - var output = timezoneParts[0]; - if (timezoneParts[1]) { - output += " (" + timezoneParts[1] + ")"; - } - output += " " + dateTime; - return output; - } - }); - - relativeTime = relativeTime.tz(moment.tz.guess()).format(options.format); - - var html = ""; - html += ""; - html += relativeTime.replace("TZ", _formatTimezone(moment.tz.guess()).join(": ")); - html += ""; - - $element - .html(html) - .attr("title", previews.join("\n")) - .attr("onclick", "alert('" + previews.join("\\n") + "');return false;") - .addClass("cooked"); - - if (repeat) { - this.timeout = setTimeout(function() { - processElement($element, options); - }, 10000); - } - } - - return this.each(function() { - var $this = $(this); - - var options = {}; - options.format = $this.attr("data-format"); - options.date = $this.attr("data-date"); - options.time = $this.attr("data-time"); - options.recurring = $this.attr("data-recurring"); - options.timezones = $this.attr("data-timezones") || "Etc/UTC"; - - processElement($this, options); - }); - }; -})(jQuery); diff --git a/plugins/discourse-cronos/assets/javascripts/discourse/components/discourse-cronos-create-form.js.es6 b/plugins/discourse-cronos/assets/javascripts/discourse/components/discourse-cronos-create-form.js.es6 deleted file mode 100644 index d873c5b643d..00000000000 --- a/plugins/discourse-cronos/assets/javascripts/discourse/components/discourse-cronos-create-form.js.es6 +++ /dev/null @@ -1,116 +0,0 @@ -import computed from "ember-addons/ember-computed-decorators"; -import { observes } from 'ember-addons/ember-computed-decorators'; - -export default Ember.Component.extend({ - timeFormat: "HH:mm", - dateFormat: "YYYY-MM-DD", - dateTimeFormat: "YYYY-MM-DD HH:mm", - config: null, - date: null, - time: null, - format: null, - formats: null, - recurring: null, - advancedMode: false, - - init() { - this._super(); - - this.set("date", moment().format(this.dateFormat)); - this.set("time", moment().format(this.timeFormat)); - this.set("format", `LLL`); - this.set("timezones", (this.siteSettings.discourse_cronos_default_timezones || "").split("|").filter(f => f)); - this.set("formats", (this.siteSettings.discourse_cronos_default_formats || "").split("|")); - }, - - didInsertElement() { - this._super(); - - this._setConfig(); - }, - - @computed - currentUserTimezone() { - return moment.tz.guess(); - }, - - @computed - recurringOptions() { - return [ - { name: "Every day", id: "1.days" }, - { name: "Every week", id: "1.weeks" }, - { name: "Every two weeks", id: "2.weeks" }, - { name: "Every month", id: "1.months" }, - { name: "Every two months", id: "2.months" }, - { name: "Every three months", id: "3.months" }, - { name: "Every six months", id: "6.months" }, - { name: "Every year", id: "1.years" }, - ]; - }, - - @computed() - allTimezones() { - return _.map(moment.tz.names(), (z) => z); - }, - - @observes("date", "time", "recurring", "format", "timezones") - _setConfig() { - const date = this.get("date"); - const time = this.get("time"); - const recurring = this.get("recurring"); - const format = this.get("format"); - const timezones = this.get("timezones"); - const dateTime = moment(`${date} ${time}`, this.dateTimeFormat).utc(); - - this.set("config", { - date: dateTime.format(this.dateFormat), - time: dateTime.format(this.timeFormat), - dateTime, - recurring, - format, - timezones, - }); - }, - - getTextConfig(config) { - let text = `[date=${config.date} `; - if (config.recurring) text += `recurring=${config.recurring} `; - text += `time=${config.time} `; - text += `format=${config.format} `; - text += `timezones="${config.timezones.join("|")}"`; - text += `]`; - return text; - }, - - @computed("config.dateTime") - validDate(dateTime) { - if (!dateTime) return false; - return dateTime.isValid(); - }, - - actions: { - advancedMode() { - this.toggleProperty("advancedMode"); - }, - - save() { - this._closeModal(); - - const textConfig = this.getTextConfig(this.get("config")); - this.get("toolbarEvent").addText(textConfig); - }, - - fillFormat(format) { - this.set("format", format); - }, - - cancel() { - this._closeModal(); - } - }, - - _closeModal() { - const composer = Discourse.__container__.lookup("controller:composer"); - composer.send("closeModal"); - } -}); diff --git a/plugins/discourse-cronos/assets/javascripts/discourse/templates/components/discourse-cronos-create-form.hbs b/plugins/discourse-cronos/assets/javascripts/discourse/templates/components/discourse-cronos-create-form.hbs deleted file mode 100644 index 1ba16de2abd..00000000000 --- a/plugins/discourse-cronos/assets/javascripts/discourse/templates/components/discourse-cronos-create-form.hbs +++ /dev/null @@ -1,77 +0,0 @@ -{{#d-modal-body - title="discourse_cronos.create.modal_title" - class="discourse-cronos-create-modal" - style="overflow: auto"}} - -
-
-
- {{date-picker-future class="date" value=date defaultDate="DD-MM-YYYY"}} - {{input type="time" value=time class="time"}} - {{currentUserTimezone}} -
-
- -

{{i18n "discourse_cronos.create.form.recurring_title"}}

-
- {{#if advancedMode}} - - {{/if}} -
- {{combo-box content=recurringOptions value=recurring none="discourse_cronos.create.form.recurring_none"}} -
-
- - {{d-button - class="advanced-mode-btn" - action=(action "advancedMode") - icon="cog" - label="discourse_cronos.create.form.advanced_mode"}} - - {{#if advancedMode}} -
-
- -
- {{text-field value=format}} -
-
-
-
    - {{#each formats as |format|}} -
  • - {{format}} -
  • - {{/each}} -
-
- -

{{i18n "discourse_cronos.create.form.timezones_title"}}

-
- -
- {{multi-select allowAny=false maximum=5 content=allTimezones values=timezones}} -
-
-
- {{/if}} -
-{{/d-modal-body}} - - diff --git a/plugins/discourse-cronos/assets/javascripts/discourse/templates/modal/discourse-cronos-create-modal.hbs b/plugins/discourse-cronos/assets/javascripts/discourse/templates/modal/discourse-cronos-create-modal.hbs deleted file mode 100644 index 4c5b8309a29..00000000000 --- a/plugins/discourse-cronos/assets/javascripts/discourse/templates/modal/discourse-cronos-create-modal.hbs +++ /dev/null @@ -1 +0,0 @@ -{{discourse-cronos-create-form config=config toolbarEvent=toolbarEvent}} diff --git a/plugins/discourse-cronos/assets/javascripts/initializers/discourse-cronos.js.es6 b/plugins/discourse-cronos/assets/javascripts/initializers/discourse-cronos.js.es6 deleted file mode 100644 index 55be4ec55d4..00000000000 --- a/plugins/discourse-cronos/assets/javascripts/initializers/discourse-cronos.js.es6 +++ /dev/null @@ -1,37 +0,0 @@ -import { withPluginApi } from "discourse/lib/plugin-api"; -import showModal from "discourse/lib/show-modal"; - -function initializeDiscourseCronos(api) { - api.decorateCooked($elem => { - $(".discourse-cronos", $elem).cronos(); - }); - - api.addToolbarPopupMenuOptionsCallback(() => { - return { - action: "insertDiscourseCronos", - icon: "globe", - label: "discourse_cronos.title" - }; - }); - - api.modifyClass('controller:composer', { - actions: { - insertDiscourseCronos() { - showModal("discourse-cronos-create-modal").setProperties({ - toolbarEvent: this.get("toolbarEvent") - }); - } - } - }); -} - -export default { - name: "discourse-cronos", - - initialize(container) { - const siteSettings = container.lookup("site-settings:main"); - if (siteSettings.discourse_cronos_enabled) { - withPluginApi("0.8.8", initializeDiscourseCronos); - } - } -}; diff --git a/plugins/discourse-cronos/assets/javascripts/lib/discourse-markdown/discourse-cronos.js.es6 b/plugins/discourse-cronos/assets/javascripts/lib/discourse-markdown/discourse-cronos.js.es6 deleted file mode 100644 index 5e38a3fbba4..00000000000 --- a/plugins/discourse-cronos/assets/javascripts/lib/discourse-markdown/discourse-cronos.js.es6 +++ /dev/null @@ -1,73 +0,0 @@ -import { parseBBCodeTag } from 'pretty-text/engines/discourse-markdown/bbcode-block'; - -function addcronos(buffer, matches, state) { - let token; - - let config = { - date: null, - time: null, - format: "YYYY-MM-DD HH:mm", - timezones: "" - }; - - let parsed = parseBBCodeTag("[date date" + matches[1] + "]", 0, matches[1].length + 11); - - config.date = parsed.attrs.date; - config.time = parsed.attrs.time; - config.format = parsed.attrs.format || config.format; - config.timezones = parsed.attrs.timezones || config.timezones; - - token = new state.Token('a_open', 'a', 1); - token.attrs = [ - ['class', 'discourse-cronos'], - ['data-date', config.date], - ['data-time', config.time], - ['data-recurring', config.recurring], - ['data-format', config.format], - ['data-timezones', config.timezones], - ]; - buffer.push(token); - - const previews = config.timezones.split("|").filter(t => t).map(timezone => { - const dateTime = moment - .utc(`${config.date} ${config.time}`, "YYYY-MM-DD HH:mm") - .tz(timezone) - .format(config.format); - - const formattedTimezone = timezone.replace("/", ": ").replace("_", " "); - - if (dateTime.match(/TZ/)) { - return dateTime.replace("TZ", formattedTimezone); - } else { - return `${dateTime} (${formattedTimezone})`; - } - }); - - token = new state.Token('text', '', 0); - token.content = previews.join(", "); - buffer.push(token); - - token = new state.Token('a_close', 'a', -1); - buffer.push(token); -} - -export function setup(helper) { - helper.whiteList([ - 'a.discourse-cronos', - 'a[data-*]', - 'a[title]' - ]); - - helper.registerOptions((opts, siteSettings) => { - opts.features['discourse-cronos'] = !!siteSettings.discourse_cronos_enabled; - }); - - helper.registerPlugin(md => { - const rule = { - matcher: /\[date(.*?)\]/, - onMatch: addcronos - }; - - md.core.textPostProcess.ruler.push('discourse-cronos', rule); - }); -} diff --git a/plugins/discourse-cronos/assets/stylesheets/discourse-cronos.scss b/plugins/discourse-cronos/assets/stylesheets/discourse-cronos.scss deleted file mode 100644 index 64547d5584c..00000000000 --- a/plugins/discourse-cronos/assets/stylesheets/discourse-cronos.scss +++ /dev/null @@ -1,83 +0,0 @@ -.discourse-cronos { - display: inline-block; - vertical-align: top; - - &.cooked { - color: $primary; - font-weight: bold; - cursor: pointer; - - .d-icon-globe { - margin-right: .25em; - color: $primary-medium; - - &:hover { - color: $primary-high; - } - } - - &:hover .d-icon-globe { - color: $primary-high; - } - } - - + .discourse-cronos { - margin-left: .5em; - } -} - -.discourse-cronos-create-modal-footer { - display: flex; - align-items: center; - justify-content: space-between; - - .validation-error { - color: $danger; - } - - &:before, &:after { - content: none; - } -} - -.discourse-cronos-create-modal { - min-height: 300px; - display: flex; - flex-direction: row; - - .form { - flex: 1; - .controls { - &.date-time { - display: flex; - justify-content: flex-start; - align-items: center; - margin-bottom: 1em; - - .date { - margin: 0 0.5em 0 0; - } - - .date-picker { - padding-top: 5px; - bottom: 5px; - margin: 0; - } - - .time { - margin: 0 0.5em 0 0; - max-width: 100px; - } - } - } - - .advanced-mode-btn { - margin-top: 2em; - margin-bottom: 1em; - } - } - - .select-kit.multi-select { - width: 90%; - } -} diff --git a/plugins/discourse-cronos/config/locales/server.de.yml b/plugins/discourse-cronos/config/locales/server.de.yml deleted file mode 100644 index 5d7267a1b33..00000000000 --- a/plugins/discourse-cronos/config/locales/server.de.yml +++ /dev/null @@ -1,12 +0,0 @@ -# encoding: utf-8 -# -# Never edit this file. It will be overwritten when translations are pulled from Transifex. -# -# To work with us on translations, join this project: -# https://www.transifex.com/projects/p/discourse-org/ - -de: - site_settings: - discourse_cronos_enabled: "Aktiviert das discourse-cronos Plugin. Wenn du diese Einstellung änderst, musst du alle Beiträge mit \"rake posts:rebake\" neu generieren." - discourse_cronos_default_formats: "Häufig verwendete Datums- und Zeitformate, siehe: momentjs string format" - discourse_cronos_default_timezones: "Standard-Liste von Zeitzonen, muss eine gültige TZ sein" diff --git a/plugins/discourse-cronos/config/locales/server.en.yml b/plugins/discourse-cronos/config/locales/server.en.yml deleted file mode 100644 index a7cc7711e56..00000000000 --- a/plugins/discourse-cronos/config/locales/server.en.yml +++ /dev/null @@ -1,5 +0,0 @@ -en: - site_settings: - discourse_cronos_enabled: "Enable the discourse-cronos plugin. If you change this, you must rebake all posts with: \"rake posts:rebake\"." - discourse_cronos_default_formats: "Frequently used date time formats, see: momentjs string format" - discourse_cronos_default_timezones: "Default list of timezones, must be a valid TZ" diff --git a/plugins/discourse-cronos/config/locales/server.es.yml b/plugins/discourse-cronos/config/locales/server.es.yml deleted file mode 100644 index f718519d2fc..00000000000 --- a/plugins/discourse-cronos/config/locales/server.es.yml +++ /dev/null @@ -1,12 +0,0 @@ -# encoding: utf-8 -# -# Never edit this file. It will be overwritten when translations are pulled from Transifex. -# -# To work with us on translations, join this project: -# https://www.transifex.com/projects/p/discourse-org/ - -es: - site_settings: - discourse_cronos_enabled: "Activar el plugin discourse-cronos. Si cambias esto, debes hacer rebake de todos los posts con \"rake posts:rebake\"." - discourse_cronos_default_formats: "Formatos de fecha utilizados frecuentemente, ver: momentjs string format" - discourse_cronos_default_timezones: "Lista de zonas horarias por defecto, deben ser TZ válidas" diff --git a/plugins/discourse-cronos/config/locales/server.fr.yml b/plugins/discourse-cronos/config/locales/server.fr.yml deleted file mode 100644 index 7605c16c011..00000000000 --- a/plugins/discourse-cronos/config/locales/server.fr.yml +++ /dev/null @@ -1,12 +0,0 @@ -# encoding: utf-8 -# -# Never edit this file. It will be overwritten when translations are pulled from Transifex. -# -# To work with us on translations, join this project: -# https://www.transifex.com/projects/p/discourse-org/ - -fr: - site_settings: - discourse_cronos_enabled: "Activer le plugin discourse-cronos. Si vous modifiez ceci, vous devez regénérer tous les messages avec : \"rake posts:rebake\"." - discourse_cronos_default_formats: "Formats de date fréquemment utilisés, voir : momentjs string format" - discourse_cronos_default_timezones: "Liste de fuseaux horaires par défaut, doit être un fuseaux horaire valide Wikipedia (anglais)" diff --git a/plugins/discourse-cronos/config/locales/server.he.yml b/plugins/discourse-cronos/config/locales/server.he.yml deleted file mode 100644 index 7bdee729cec..00000000000 --- a/plugins/discourse-cronos/config/locales/server.he.yml +++ /dev/null @@ -1,12 +0,0 @@ -# encoding: utf-8 -# -# Never edit this file. It will be overwritten when translations are pulled from Transifex. -# -# To work with us on translations, join this project: -# https://www.transifex.com/projects/p/discourse-org/ - -he: - site_settings: - discourse_cronos_enabled: "הפעלת התוסף discourse-cronos. שינוי ההגדרה הזאת יאלץ אותך לאפות את כל הרשומות מחדש עם: „rake posts:rebake”." - discourse_cronos_default_formats: "תבניות זמן נפוצות, ניתן לעיין ב: תבנית מחרוזת momentjs" - discourse_cronos_default_timezones: "רשימת בררת מחדל של אזורי זמן, חיי להיות TZ תקני" diff --git a/plugins/discourse-cronos/config/locales/server.ru.yml b/plugins/discourse-cronos/config/locales/server.ru.yml deleted file mode 100644 index 3e62866b1ff..00000000000 --- a/plugins/discourse-cronos/config/locales/server.ru.yml +++ /dev/null @@ -1,12 +0,0 @@ -# encoding: utf-8 -# -# Never edit this file. It will be overwritten when translations are pulled from Transifex. -# -# To work with us on translations, join this project: -# https://www.transifex.com/projects/p/discourse-org/ - -ru: - site_settings: - discourse_cronos_enabled: "Включить плагин discourse-cronos. Если вы измените это, вы должны rebake все посты: \"rake posts:rebake\"." - discourse_cronos_default_formats: "Часто используемые форматы даты и времени, см.: формат строки momentjs" - discourse_cronos_default_timezones: "Список часовых поясов по умолчанию должен быть допустимым TZ" diff --git a/plugins/discourse-cronos/config/locales/server.ur.yml b/plugins/discourse-cronos/config/locales/server.ur.yml deleted file mode 100644 index 2607da958ae..00000000000 --- a/plugins/discourse-cronos/config/locales/server.ur.yml +++ /dev/null @@ -1,12 +0,0 @@ -# encoding: utf-8 -# -# Never edit this file. It will be overwritten when translations are pulled from Transifex. -# -# To work with us on translations, join this project: -# https://www.transifex.com/projects/p/discourse-org/ - -ur: - site_settings: - discourse_cronos_enabled: "ڈِسکورس-کرَونَوس پلگ اِن فعال کریں۔ اگر آپ اس کو تبدیل کرتے ہیں تو، آپ کو تمام پوسٹس کو دوبارہ رِیبَیک کرنا ہوگا: \"rake posts:rebake\"" - discourse_cronos_default_formats: "اکثر استعمال ہونے والے تاریخ ٹائم فارمیٹس، دیکھیے: momentjs سٹرِنگ فارمَیٹ" - discourse_cronos_default_timezones: "ٹائم زَونَوں کی ڈِیفالٹ فہرست، ایک درست TZ ہونا لازمی ہے" diff --git a/plugins/discourse-cronos/lib/discourse_cronos/engine.rb b/plugins/discourse-cronos/lib/discourse_cronos/engine.rb deleted file mode 100644 index 5e7d1c98458..00000000000 --- a/plugins/discourse-cronos/lib/discourse_cronos/engine.rb +++ /dev/null @@ -1,8 +0,0 @@ -module ::DiscourseCronos - PLUGIN_NAME = "discourse-cronos" - - class Engine < ::Rails::Engine - engine_name DiscourseCronos::PLUGIN_NAME - isolate_namespace DiscourseCronos - end -end diff --git a/plugins/discourse-cronos/plugin.rb b/plugins/discourse-cronos/plugin.rb deleted file mode 100644 index f4a69a003ff..00000000000 --- a/plugins/discourse-cronos/plugin.rb +++ /dev/null @@ -1,13 +0,0 @@ -# name: discourse-cronos -# about: Display a date in your local timezone -# version: 0.1 -# author: Joffrey Jaffeux - -register_asset "javascripts/discourse-cronos.js" -register_asset "stylesheets/discourse-cronos.scss" -register_asset "moment.js", :vendored_core_pretty_text -register_asset "moment-timezone.js", :vendored_core_pretty_text - -enabled_site_setting :discourse_cronos_enabled - -load File.expand_path('../lib/discourse_cronos/engine.rb', __FILE__) diff --git a/plugins/discourse-local-dates/assets/javascripts/discourse/components/.discourse-cronos-create-form.js.es6.swp b/plugins/discourse-local-dates/assets/javascripts/discourse/components/.discourse-cronos-create-form.js.es6.swp new file mode 100644 index 0000000000000000000000000000000000000000..0d6133e0334fa3a31e85072734b8a408870dae74 GIT binary patch literal 12288 zcmeI2?`s@I7{{m9-)*(Ef`V_RYp{Em+cYhdl9*CyT2e?y_IWPQ!ZMFbo= znPh354Fw^u;}>T`tteXvV_w!&>uC}ve8}gV2|l#wFZ;ZnhAsRqz3NG`mBcJwU#T7O z#eBi4jU;V)i`--UVE?gM3#-5ltw1Ik)k8bTf&IgIsz2!Lp}X&yxuK_QCubF~3RnfK z0#*U5fK|XMU=^?mbSofQTgcO>x=B|H{k^56|f3e1*`&A0jq#jz$#!B zunJfOtOEZ-1^j@JSMbOG<(n~h{QtlC`~Ty+3AqS5U_-RKd?X2>Alk!B+6+c0&FD--FM=XW)Hs4ZI7kf|tNkAOcIE1}4BL*a^Pf zhPw*j8SogmAAENwA@6~=!5iRpa0NUMPJsz>QTb`G_$EB@FORWA^l@6iYRo9j+>iAUaf{k;fFCxYc(%Q zlBKML9#EGiQN+>_)3=IMlYOh;ZiTjq9O7U;Mm17O#o3U1U1o9~7=s_zS!A3FH|>C1 zORgg?ANj%=r0Rzrd?Spa<9Um#>s7zKAr@o^ktET)pB`JrEhneq`9Uzv&I?!IpQB0K z2p4ovqe(EYf)Fa z7ga@!hzaF^$<0bJN@H2lcHR3%_1Tjl#ojAsuTqEV4R1=t5KM(x0aKR#Bjv&?UDRHc zO~>ax!Fd!CGH21v#{$xXhPksw=|NfSxt&JDC>Wrq&5bLHm-RUR2j z9p1}C-Rw++#&J}LurBkEz!-nNSxh!4V>QJtOI6ivRw&nHS=4qL%dWcYWJR}$oJ5z2 ztWYL3sB|<>5S^n(l6f4_%Z$5DZZ$~r$v{D;8~_S>+`3uMbz^4Lyr$oBmB^l0^maTG^siET7coLuL)KqnRoK8%P zG@Fj>vYbqpMcyWRE4+;hJKsuDLG|XK$C~qa-#uz>tb2I7kng^D7=^gR4#PGz=Pm8f rMw&F~UM792c<00OWk?mwSy&BNJxP6$q%yz{=# z%-C9G+A~*{SLiuwhTwXPkk*}F)=pRrGW8T8+zw>zp;y{YLy;b8M&5wK`sFB199DNd z?%;{DdhDlNFXUxS%}Js#;&q#ICU||*zGibL@nSstUVF$cu#+t}+75@RR99=0Ta2GQ zJR)tO6}U$fNJXc1?l^ho>Dg?nKUtZiPdxteJ(9dmQ!Ahq&^W0cXIStRBE2Va9P!ENvvxCu7E zC9n)mg8RS`Fadsgh>&l=ZSVnj7u*7GgIB>(FaZeo5qf+FJ_YZAcfc)h2`mAr*K^<` zcnN$6-Uq9|0KY-gUxB`~0$KsBfL1^&@Lwy??-NS<)p`7-G;l2^N|+_sb+H<8v6@5< znwWpVXYc$7xriY=Vp9JO6n9qY^55xJ~p z$sDa;ZMwE#rgi$+>eW_#I%{{Lkc-SCU7$Ot>M=h?MhWYBT(D#{J8ozOE?qc}b{Gs4 ziEzTu>M&cR3FFQ2I9qTyImtc2E;Av#u*?q$ha@Y!b51LDTkS+ z!)~fYD6M>Q47({j;j@;J<%A*hH9!H6woiuc0 z02F5`)7VtORiyxOp4(}sqh`HlifD_4Ssd9Dk`CE62f5_HBommBt#v8*`I|OR3kP zX3-^ElV-iKRsV;SxgA`@ex~$5?A=2CUWhvJt#_4$7yp#ub zfVH?`4#usL@pf5brNS{GWA0IA*QZ5M_U>;WsMm1SR#s|DOZ4K!xge-0e=6UBBuF!e z0!%r^QZ0jtM@v4yARcb<*!P54*@XZd&&M`3u~g1eQMCd)F5)is$-yhFrDhjfS8kTV zITp_7crCS!a!aLSX{O5iZ4&0BNrFvZniW<1E#momentjs string format" + discourse_local_dates_default_timezones: "Standard-Liste von Zeitzonen, muss eine gültige TZ sein" diff --git a/plugins/discourse-cronos/config/locales/server.el.yml b/plugins/discourse-local-dates/config/locales/server.el.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.el.yml rename to plugins/discourse-local-dates/config/locales/server.el.yml diff --git a/plugins/discourse-local-dates/config/locales/server.en.yml b/plugins/discourse-local-dates/config/locales/server.en.yml new file mode 100644 index 00000000000..f08e768c5a4 --- /dev/null +++ b/plugins/discourse-local-dates/config/locales/server.en.yml @@ -0,0 +1,5 @@ +en: + site_settings: + discourse_local_dates_enabled: "Enable the discourse-local-dates plugin. This will add support to local timezone aware dates in posts using the [date] element." + discourse_local_dates_default_formats: "Frequently used date time formats, see: momentjs string format" + discourse_local_dates_default_timezones: "Default list of timezones, must be a valid TZ" diff --git a/plugins/discourse-local-dates/config/locales/server.es.yml b/plugins/discourse-local-dates/config/locales/server.es.yml new file mode 100644 index 00000000000..8386701c9bb --- /dev/null +++ b/plugins/discourse-local-dates/config/locales/server.es.yml @@ -0,0 +1,12 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +es: + site_settings: + discourse_local_dates_enabled: "Activar el plugin discourse-cronos. Si cambias esto, debes hacer rebake de todos los posts con \"rake posts:rebake\"." + discourse_local_dates_default_formats: "Formatos de fecha utilizados frecuentemente, ver: momentjs string format" + discourse_local_dates_default_timezones: "Lista de zonas horarias por defecto, deben ser TZ válidas" diff --git a/plugins/discourse-cronos/config/locales/server.et.yml b/plugins/discourse-local-dates/config/locales/server.et.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.et.yml rename to plugins/discourse-local-dates/config/locales/server.et.yml diff --git a/plugins/discourse-cronos/config/locales/server.fa_IR.yml b/plugins/discourse-local-dates/config/locales/server.fa_IR.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.fa_IR.yml rename to plugins/discourse-local-dates/config/locales/server.fa_IR.yml diff --git a/plugins/discourse-cronos/config/locales/server.fi.yml b/plugins/discourse-local-dates/config/locales/server.fi.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.fi.yml rename to plugins/discourse-local-dates/config/locales/server.fi.yml diff --git a/plugins/discourse-local-dates/config/locales/server.fr.yml b/plugins/discourse-local-dates/config/locales/server.fr.yml new file mode 100644 index 00000000000..ba62055dcfe --- /dev/null +++ b/plugins/discourse-local-dates/config/locales/server.fr.yml @@ -0,0 +1,12 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +fr: + site_settings: + discourse_local_dates_enabled: "Activer le plugin discourse-cronos. Si vous modifiez ceci, vous devez regénérer tous les messages avec : \"rake posts:rebake\"." + discourse_local_dates_default_formats: "Formats de date fréquemment utilisés, voir : momentjs string format" + discourse_local_dates_default_timezones: "Liste de fuseaux horaires par défaut, doit être un fuseaux horaire valide Wikipedia (anglais)" diff --git a/plugins/discourse-cronos/config/locales/server.gl.yml b/plugins/discourse-local-dates/config/locales/server.gl.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.gl.yml rename to plugins/discourse-local-dates/config/locales/server.gl.yml diff --git a/plugins/discourse-local-dates/config/locales/server.he.yml b/plugins/discourse-local-dates/config/locales/server.he.yml new file mode 100644 index 00000000000..21da34a4969 --- /dev/null +++ b/plugins/discourse-local-dates/config/locales/server.he.yml @@ -0,0 +1,12 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +he: + site_settings: + discourse_local_dates_enabled: "הפעלת התוסף discourse-cronos. שינוי ההגדרה הזאת יאלץ אותך לאפות את כל הרשומות מחדש עם: „rake posts:rebake”." + discourse_local_dates_default_formats: "תבניות זמן נפוצות, ניתן לעיין ב: תבנית מחרוזת momentjs" + discourse_local_dates_default_timezones: "רשימת בררת מחדל של אזורי זמן, חיי להיות TZ תקני" diff --git a/plugins/discourse-cronos/config/locales/server.id.yml b/plugins/discourse-local-dates/config/locales/server.id.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.id.yml rename to plugins/discourse-local-dates/config/locales/server.id.yml diff --git a/plugins/discourse-cronos/config/locales/server.it.yml b/plugins/discourse-local-dates/config/locales/server.it.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.it.yml rename to plugins/discourse-local-dates/config/locales/server.it.yml diff --git a/plugins/discourse-cronos/config/locales/server.ja.yml b/plugins/discourse-local-dates/config/locales/server.ja.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.ja.yml rename to plugins/discourse-local-dates/config/locales/server.ja.yml diff --git a/plugins/discourse-cronos/config/locales/server.ko.yml b/plugins/discourse-local-dates/config/locales/server.ko.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.ko.yml rename to plugins/discourse-local-dates/config/locales/server.ko.yml diff --git a/plugins/discourse-cronos/config/locales/server.lv.yml b/plugins/discourse-local-dates/config/locales/server.lv.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.lv.yml rename to plugins/discourse-local-dates/config/locales/server.lv.yml diff --git a/plugins/discourse-cronos/config/locales/server.nb_NO.yml b/plugins/discourse-local-dates/config/locales/server.nb_NO.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.nb_NO.yml rename to plugins/discourse-local-dates/config/locales/server.nb_NO.yml diff --git a/plugins/discourse-cronos/config/locales/server.nl.yml b/plugins/discourse-local-dates/config/locales/server.nl.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.nl.yml rename to plugins/discourse-local-dates/config/locales/server.nl.yml diff --git a/plugins/discourse-cronos/config/locales/server.pl_PL.yml b/plugins/discourse-local-dates/config/locales/server.pl_PL.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.pl_PL.yml rename to plugins/discourse-local-dates/config/locales/server.pl_PL.yml diff --git a/plugins/discourse-cronos/config/locales/server.pt.yml b/plugins/discourse-local-dates/config/locales/server.pt.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.pt.yml rename to plugins/discourse-local-dates/config/locales/server.pt.yml diff --git a/plugins/discourse-cronos/config/locales/server.pt_BR.yml b/plugins/discourse-local-dates/config/locales/server.pt_BR.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.pt_BR.yml rename to plugins/discourse-local-dates/config/locales/server.pt_BR.yml diff --git a/plugins/discourse-cronos/config/locales/server.ro.yml b/plugins/discourse-local-dates/config/locales/server.ro.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.ro.yml rename to plugins/discourse-local-dates/config/locales/server.ro.yml diff --git a/plugins/discourse-local-dates/config/locales/server.ru.yml b/plugins/discourse-local-dates/config/locales/server.ru.yml new file mode 100644 index 00000000000..3e01ad18922 --- /dev/null +++ b/plugins/discourse-local-dates/config/locales/server.ru.yml @@ -0,0 +1,12 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +ru: + site_settings: + discourse_local_dates_enabled: "Включить плагин discourse-cronos. Если вы измените это, вы должны rebake все посты: \"rake posts:rebake\"." + discourse_local_dates_default_formats: "Часто используемые форматы даты и времени, см.: формат строки momentjs" + discourse_local_dates_default_timezones: "Список часовых поясов по умолчанию должен быть допустимым TZ" diff --git a/plugins/discourse-cronos/config/locales/server.sk.yml b/plugins/discourse-local-dates/config/locales/server.sk.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.sk.yml rename to plugins/discourse-local-dates/config/locales/server.sk.yml diff --git a/plugins/discourse-cronos/config/locales/server.sq.yml b/plugins/discourse-local-dates/config/locales/server.sq.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.sq.yml rename to plugins/discourse-local-dates/config/locales/server.sq.yml diff --git a/plugins/discourse-cronos/config/locales/server.sv.yml b/plugins/discourse-local-dates/config/locales/server.sv.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.sv.yml rename to plugins/discourse-local-dates/config/locales/server.sv.yml diff --git a/plugins/discourse-cronos/config/locales/server.te.yml b/plugins/discourse-local-dates/config/locales/server.te.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.te.yml rename to plugins/discourse-local-dates/config/locales/server.te.yml diff --git a/plugins/discourse-cronos/config/locales/server.th.yml b/plugins/discourse-local-dates/config/locales/server.th.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.th.yml rename to plugins/discourse-local-dates/config/locales/server.th.yml diff --git a/plugins/discourse-cronos/config/locales/server.tr_TR.yml b/plugins/discourse-local-dates/config/locales/server.tr_TR.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.tr_TR.yml rename to plugins/discourse-local-dates/config/locales/server.tr_TR.yml diff --git a/plugins/discourse-cronos/config/locales/server.uk.yml b/plugins/discourse-local-dates/config/locales/server.uk.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.uk.yml rename to plugins/discourse-local-dates/config/locales/server.uk.yml diff --git a/plugins/discourse-local-dates/config/locales/server.ur.yml b/plugins/discourse-local-dates/config/locales/server.ur.yml new file mode 100644 index 00000000000..ed0bcb67f40 --- /dev/null +++ b/plugins/discourse-local-dates/config/locales/server.ur.yml @@ -0,0 +1,12 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +ur: + site_settings: + discourse_local_dates_enabled: "ڈِسکورس-کرَونَوس پلگ اِن فعال کریں۔ اگر آپ اس کو تبدیل کرتے ہیں تو، آپ کو تمام پوسٹس کو دوبارہ رِیبَیک کرنا ہوگا: \"rake posts:rebake\"" + discourse_local_dates_default_formats: "اکثر استعمال ہونے والے تاریخ ٹائم فارمیٹس، دیکھیے: momentjs سٹرِنگ فارمَیٹ" + discourse_local_dates_default_timezones: "ٹائم زَونَوں کی ڈِیفالٹ فہرست، ایک درست TZ ہونا لازمی ہے" diff --git a/plugins/discourse-cronos/config/locales/server.vi.yml b/plugins/discourse-local-dates/config/locales/server.vi.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.vi.yml rename to plugins/discourse-local-dates/config/locales/server.vi.yml diff --git a/plugins/discourse-cronos/config/locales/server.zh_CN.yml b/plugins/discourse-local-dates/config/locales/server.zh_CN.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.zh_CN.yml rename to plugins/discourse-local-dates/config/locales/server.zh_CN.yml diff --git a/plugins/discourse-cronos/config/locales/server.zh_TW.yml b/plugins/discourse-local-dates/config/locales/server.zh_TW.yml similarity index 100% rename from plugins/discourse-cronos/config/locales/server.zh_TW.yml rename to plugins/discourse-local-dates/config/locales/server.zh_TW.yml diff --git a/plugins/discourse-cronos/config/settings.yml b/plugins/discourse-local-dates/config/settings.yml similarity index 61% rename from plugins/discourse-cronos/config/settings.yml rename to plugins/discourse-local-dates/config/settings.yml index 6f4ecae16cf..4f968f7cece 100644 --- a/plugins/discourse-cronos/config/settings.yml +++ b/plugins/discourse-local-dates/config/settings.yml @@ -1,12 +1,12 @@ plugins: - discourse_cronos_enabled: + discourse_local_dates_enabled: default: true client: true - discourse_cronos_default_formats: + discourse_local_dates_default_formats: default: "LLL|LTS|LL|LLLL" client: true type: list - discourse_cronos_default_timezones: + discourse_local_dates_default_timezones: default: "Europe/Paris|America/Los_Angeles" client: true type: list diff --git a/plugins/discourse-local-dates/plugin.rb b/plugins/discourse-local-dates/plugin.rb new file mode 100644 index 00000000000..92d6d3d84a3 --- /dev/null +++ b/plugins/discourse-local-dates/plugin.rb @@ -0,0 +1,13 @@ +# name: discourse-local-dates +# about: Display a date in your local timezone +# version: 0.1 +# author: Joffrey Jaffeux + +register_asset "javascripts/discourse-local-dates.js" +register_asset "stylesheets/discourse-local-dates.scss" +register_asset "moment.js", :vendored_core_pretty_text +register_asset "moment-timezone.js", :vendored_core_pretty_text + +enabled_site_setting :discourse_local_dates_enabled + +load File.expand_path('../lib/discourse_local_dates/engine.rb', __FILE__) diff --git a/plugins/discourse-cronos/spec/lib/pretty_text_spec.rb b/plugins/discourse-local-dates/spec/lib/pretty_text_spec.rb similarity index 90% rename from plugins/discourse-cronos/spec/lib/pretty_text_spec.rb rename to plugins/discourse-local-dates/spec/lib/pretty_text_spec.rb index ad1906f35c4..7df61b7f07b 100644 --- a/plugins/discourse-cronos/spec/lib/pretty_text_spec.rb +++ b/plugins/discourse-local-dates/spec/lib/pretty_text_spec.rb @@ -7,7 +7,7 @@ describe PrettyText do [date=2018-05-08 time=22:00 format=LLL timezones="Europe/Paris|America/Los_Angeles"] MD - expect(cooked).to include('class="discourse-cronos"') + expect(cooked).to include('class="discourse-local-date"') expect(cooked).to include('data-date="2018-05-08"') expect(cooked).to include('data-format="LLL"') expect(cooked).to include('data-timezones="Europe/Paris|America/Los_Angeles"')