redmineup 1.1.15 → 1.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/icons.svg +9 -0
  3. data/app/assets/javascripts/select2_helpers.js +2 -0
  4. data/app/assets/stylesheets/redmineup.css +28 -10
  5. data/config/locales/ar.yml +13 -0
  6. data/config/locales/az.yml +13 -0
  7. data/config/locales/bg.yml +13 -0
  8. data/config/locales/bs.yml +13 -0
  9. data/config/locales/ca.yml +13 -0
  10. data/config/locales/cs.yml +1 -0
  11. data/config/locales/da.yml +13 -0
  12. data/config/locales/de.yml +1 -0
  13. data/config/locales/el.yml +13 -0
  14. data/config/locales/en-GB.yml +14 -0
  15. data/config/locales/es-PA.yml +14 -0
  16. data/config/locales/es.yml +1 -0
  17. data/config/locales/et.yml +13 -0
  18. data/config/locales/eu.yml +13 -0
  19. data/config/locales/fa.yml +13 -0
  20. data/config/locales/fi.yml +13 -0
  21. data/config/locales/fr.yml +13 -0
  22. data/config/locales/gl.yml +13 -0
  23. data/config/locales/he.yml +13 -0
  24. data/config/locales/hr.yml +13 -0
  25. data/config/locales/hu.yml +13 -0
  26. data/config/locales/id.yml +13 -0
  27. data/config/locales/it.yml +13 -0
  28. data/config/locales/ja.yml +13 -0
  29. data/config/locales/ko.yml +13 -0
  30. data/config/locales/lt.yml +13 -0
  31. data/config/locales/lv.yml +13 -0
  32. data/config/locales/mk.yml +13 -0
  33. data/config/locales/mn.yml +13 -0
  34. data/config/locales/nl.yml +13 -0
  35. data/config/locales/no.yml +13 -0
  36. data/config/locales/pl.yml +13 -0
  37. data/config/locales/pt-BR.yml +13 -0
  38. data/config/locales/pt.yml +13 -0
  39. data/config/locales/ro.yml +13 -0
  40. data/config/locales/ru.yml +1 -1
  41. data/config/locales/sk.yml +13 -0
  42. data/config/locales/sl.yml +13 -0
  43. data/config/locales/sq.yml +13 -0
  44. data/config/locales/sr-YU.yml +13 -0
  45. data/config/locales/sr.yml +13 -0
  46. data/config/locales/sv.yml +13 -0
  47. data/config/locales/ta-IN.yml +13 -0
  48. data/config/locales/th.yml +13 -0
  49. data/config/locales/tr.yml +13 -0
  50. data/config/locales/uk.yml +13 -0
  51. data/config/locales/vi.yml +13 -0
  52. data/config/locales/zh-TW.yml +13 -0
  53. data/config/locales/zh.yml +13 -0
  54. data/doc/CHANGELOG +14 -0
  55. data/doc/tagging-and-select2.md +7 -0
  56. data/lib/action_cable/server/rup_server.rb +5 -1
  57. data/lib/redmineup/acts_as_viewed/up_acts_as_viewed.rb +7 -2
  58. data/lib/redmineup/currency/formatting.rb +1 -0
  59. data/lib/redmineup/helpers/tags_helper.rb +67 -0
  60. data/lib/redmineup/version.rb +1 -1
  61. data/test/acts_as_viewed/rup_acts_as_viewed_test.rb +12 -0
  62. data/test/currency_test.rb +7 -0
  63. data/test/locales_test.rb +12 -0
  64. data/test/tags_helper_view_test.rb +61 -0
  65. metadata +49 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 497432257e3dd60a1140adb02b491af3e36a669a8c2af4cb42fb810f09b26b4c
4
- data.tar.gz: e07c21fc5a9358e9706fb2d922919c994a17013704d583cfd87282162a03c40e
3
+ metadata.gz: e7ef56cb9d7465fe5dab138bb27ff1c61bc0e8ca150e7bbaed7f2251deeb7291
4
+ data.tar.gz: da0ed59b5e23cc244d63ef70793d6b37a374254f256f2520d39d8a1e8d6df74c
5
5
  SHA512:
6
- metadata.gz: '09ea94ec0283833d3c2daa10ca34239374eb64dccbfd8130dabea3f292947c0d9f88e92e33b5e17c544bacf0014f782aa712fbc280a5b7e45e5368d1f07ebb17'
7
- data.tar.gz: 959335aba0d22370913ced0db6b826a93eb2a856422aa0e22a3f85d21a2c6d0cba6a5788068391441944db221ac300a555b7339dca588ee40a6348011bc58ab4
6
+ metadata.gz: d5499b14f2026f9fab97e79a7effc512ba1c74129d2d255e85ce7d19992cd19b6fe0c2f7fd4d44d30eb6ad2fc241ab7447b9df28446ca9262c6388968bba3d7e
7
+ data.tar.gz: 2072701fba9e5b4b147e7221058fa1afbc35acaf292c1330a286df888122aefa04817d58a05fb1271963cf97f3ce5339454789e174ab77bf7f02267fa0959858
@@ -4,5 +4,14 @@
4
4
  <symbol viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round" id="icon--money">
5
5
  <path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M16 6m-5 0a5 3 0 1 0 10 0a5 3 0 1 0 -10 0" /><path d="M11 6v4c0 1.657 2.239 3 5 3s5 -1.343 5 -3v-4" /><path d="M11 10v4c0 1.657 2.239 3 5 3s5 -1.343 5 -3v-4" /><path d="M11 14v4c0 1.657 2.239 3 5 3s5 -1.343 5 -3v-4" /><path d="M7 9h-2.5a1.5 1.5 0 0 0 0 3h1a1.5 1.5 0 0 1 0 3h-2.5" /><path d="M5 15v1m0 -8v1" />
6
6
  </symbol>
7
+ <symbol viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round" id="icon--tag">
8
+ <path d="M7.5 7.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0"/>
9
+ <path d="M3 6v5.172a2 2 0 0 0 .586 1.414l7.71 7.71a2.41 2.41 0 0 0 3.408 0l5.592 -5.592a2.41 2.41 0 0 0 0 -3.408l-7.71 -7.71a2 2 0 0 0 -1.414 -.586h-5.172a3 3 0 0 0 -3 3z"/>
10
+ </symbol>
11
+ <symbol viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round" id="icon--tag-merge">
12
+ <path d="M8 7l4 -4l4 4"/>
13
+ <path d="M12 3v5.394a6.737 6.737 0 0 1 -3 5.606a6.737 6.737 0 0 0 -3 5.606v1.394"/>
14
+ <path d="M12 3v5.394a6.737 6.737 0 0 0 3 5.606a6.737 6.737 0 0 1 3 5.606v1.394"/>
15
+ </symbol>
7
16
  </defs>
8
17
  </svg>
@@ -112,6 +112,7 @@ function transformToSelect2(field, options) {
112
112
  selectField.select2(buildSelect2Options(options));
113
113
 
114
114
  var select2Instance = selectField.data('select2');
115
+ if (/(_tags|tag_list)$/.test(field)) { select2Instance.$container.addClass('rup-tag-select'); }
115
116
  select2Instance.on('results:message', function(params){
116
117
  this.dropdown._resizeDropdown();
117
118
  this.dropdown._positionDropdown();
@@ -126,6 +127,7 @@ function select2Tag(id, options) {
126
127
  bindSelectHandler(selectField, options);
127
128
 
128
129
  var select2Instance = selectField.data('select2');
130
+ if (options['tags']) { select2Instance.$container.addClass('rup-tag-select'); }
129
131
  select2Instance.on('results:message', function(params){
130
132
  this.dropdown._resizeDropdown();
131
133
  this.dropdown._positionDropdown();
@@ -165,7 +165,7 @@
165
165
 
166
166
  .select2-container--default .select2-selection--single .select2-selection__rendered {
167
167
  line-height: 21px;
168
- font-size: 11px;
168
+ font-size: 12px;
169
169
  }
170
170
 
171
171
  .select2-container--default .select2-selection--single.icon .select2-selection__rendered {
@@ -259,6 +259,13 @@
259
259
  margin-top: 2px;
260
260
  padding: 0 3px;
261
261
  }
262
+ .rup-tag-select.select2-container--default .select2-selection--multiple .select2-selection__choice {
263
+ border: 1px solid rgba(0, 0, 0, 0.2);
264
+ border-radius: 3px;
265
+ font-size: 10px;
266
+ line-height: 1.3;
267
+ padding: 2px 4px;
268
+ }
262
269
  .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
263
270
  color: #aaa;
264
271
  cursor: pointer;
@@ -384,26 +391,38 @@
384
391
 
385
392
  div.tags-cloud { text-align: center; }
386
393
 
387
- .tag-label-color {
394
+ /* .tag-label-color alone is what tag_link of gem < 1.1.16 and old plugins emit */
395
+ .tag-label, .tag-label-color {
388
396
  border: 1px solid rgba(0, 0, 0, 0.2);
389
397
  border-radius: 3px;
390
398
  padding: 2px 4px;
391
399
  display: inline-block;
392
- font-size: 10px;
400
+ font-size: 0.85em;
401
+ line-height: 1.3;
393
402
  margin: 0 0 5px 2px;
394
- color: white;
403
+ overflow-wrap: anywhere;
404
+ max-width: 100%;
405
+ box-sizing: border-box;
406
+ vertical-align: top;
395
407
  }
396
408
 
397
- table.list tr.issue .tag-label-color a,
398
- .tag-label-color a { color: white; text-decoration: none; font-weight: normal; }
409
+ .tag-label-color { color: white; }
410
+ .tag-label-plain { background-color: #efefef; color: #333; }
411
+
412
+ .tag-label a, .tag-label-color a { color: inherit; text-decoration: none; font-weight: normal; }
413
+ .tag-label a:hover, .tag-label a:focus, .tag-label-color a:hover, .tag-label-color a:focus { text-decoration: none; }
399
414
 
400
- .tag-label-color:hover { filter: brightness(0.85); }
415
+ .tag-label:hover, .tag-label-color:hover { filter: brightness(0.85); }
416
+ table.list .tag-label, table.list .tag-label-color { margin-bottom: 0; }
417
+
418
+ .tag-link a { font-weight: normal; }
401
419
 
402
420
  .tag_list { margin-top: 5px; display: inline-block; }
403
421
 
404
- span.tag-label,
405
422
  span.tag-input { display: inline-block; }
406
423
 
424
+ .tabular .select2-container.rup-tag-select { max-width: 95%; }
425
+
407
426
  tr.issue td.tags,
408
427
  table.list tr td.tags { text-align: left; white-space: normal; }
409
428
 
@@ -416,8 +435,7 @@ div.tags-cloud .tag-nube-6 { font-size: 1.3em; }
416
435
  div.tags-cloud .tag-nube-7 { font-size: 1.4em; }
417
436
  div.tags-cloud .tag-nube-8 { font-size: 1.5em; }
418
437
 
419
- .tag-label .tag-count,
420
- .tag-label-color .tag-count { font-size: .75em; margin-left: .5em; }
438
+ .tag-label .tag-count, .tag-link .tag-count { font-size: .75em; margin-left: .5em; }
421
439
 
422
440
  /* ===== Calendars ===== */
423
441
  table.cal {width: 100%; margin: 0 0 6px 0; border: 1px solid #c0c0c0; border-spacing: 0; border-radius: 3px;}
@@ -0,0 +1,13 @@
1
+ ar:
2
+ label_redmineup_settings: إعدادات المال
3
+ label_redmineup_money: المال
4
+ label_redmineup_disable_taxes: تعطيل الضرائب
5
+ label_redmineup_default_tax: قيمة الضريبة الافتراضية
6
+ label_redmineup_tax_type: نوع الضريبة
7
+ label_redmineup_tax_type_exclusive: الضريبة غير شاملة
8
+ label_redmineup_tax_type_inclusive: الضريبة شاملة
9
+ label_redmineup_default_currency: العملة الافتراضية
10
+ label_redmineup_major_currencies: العملات الرئيسية
11
+ label_redmineup_thousands_delimiter: فاصل الآلاف
12
+ label_redmineup_decimal_separator: الفاصل العشري
13
+ lable_redmineup_add_tag: إضافة وسم
@@ -0,0 +1,13 @@
1
+ az:
2
+ label_redmineup_settings: Pul ayarları
3
+ label_redmineup_money: Pul
4
+ label_redmineup_disable_taxes: Vergiləri deaktiv et
5
+ label_redmineup_default_tax: Standart vergi dəyəri
6
+ label_redmineup_tax_type: Vergi növü
7
+ label_redmineup_tax_type_exclusive: Vergi daxil deyil
8
+ label_redmineup_tax_type_inclusive: Vergi daxildir
9
+ label_redmineup_default_currency: Standart valyuta
10
+ label_redmineup_major_currencies: Əsas valyutalar
11
+ label_redmineup_thousands_delimiter: Minlik ayırıcı
12
+ label_redmineup_decimal_separator: Onluq ayırıcı
13
+ lable_redmineup_add_tag: etiket əlavə et
@@ -0,0 +1,13 @@
1
+ bg:
2
+ label_redmineup_settings: Парични настройки
3
+ label_redmineup_money: Пари
4
+ label_redmineup_disable_taxes: Изключване на данъците
5
+ label_redmineup_default_tax: Данък по подразбиране
6
+ label_redmineup_tax_type: Тип данък
7
+ label_redmineup_tax_type_exclusive: Без включен данък
8
+ label_redmineup_tax_type_inclusive: С включен данък
9
+ label_redmineup_default_currency: Валута по подразбиране
10
+ label_redmineup_major_currencies: Основни валути
11
+ label_redmineup_thousands_delimiter: Разделител на хилядите
12
+ label_redmineup_decimal_separator: Десетичен разделител
13
+ lable_redmineup_add_tag: добави етикет
@@ -0,0 +1,13 @@
1
+ bs:
2
+ label_redmineup_settings: Postavke novca
3
+ label_redmineup_money: Novac
4
+ label_redmineup_disable_taxes: Onemogući poreze
5
+ label_redmineup_default_tax: Zadana vrijednost poreza
6
+ label_redmineup_tax_type: Vrsta poreza
7
+ label_redmineup_tax_type_exclusive: Porez nije uključen
8
+ label_redmineup_tax_type_inclusive: Porez je uključen
9
+ label_redmineup_default_currency: Zadana valuta
10
+ label_redmineup_major_currencies: Glavne valute
11
+ label_redmineup_thousands_delimiter: Razdjelnik hiljada
12
+ label_redmineup_decimal_separator: Decimalni razdjelnik
13
+ lable_redmineup_add_tag: dodaj oznaku
@@ -0,0 +1,13 @@
1
+ ca:
2
+ label_redmineup_settings: Configuració de moneda
3
+ label_redmineup_money: Moneda
4
+ label_redmineup_disable_taxes: Desactiva els impostos
5
+ label_redmineup_default_tax: Valor d'impost per defecte
6
+ label_redmineup_tax_type: Tipus d'impost
7
+ label_redmineup_tax_type_exclusive: Impost exclòs
8
+ label_redmineup_tax_type_inclusive: Impost inclòs
9
+ label_redmineup_default_currency: Moneda per defecte
10
+ label_redmineup_major_currencies: Monedes principals
11
+ label_redmineup_thousands_delimiter: Separador de milers
12
+ label_redmineup_decimal_separator: Separador decimal
13
+ lable_redmineup_add_tag: afegeix etiqueta
@@ -11,3 +11,4 @@ cs:
11
11
  label_redmineup_major_currencies: Hlavní měny
12
12
  label_redmineup_thousands_delimiter: Oddělovač tisíců
13
13
  label_redmineup_decimal_separator: Desetinný oddělovač
14
+ lable_redmineup_add_tag: přidat štítek
@@ -0,0 +1,13 @@
1
+ da:
2
+ label_redmineup_settings: Valutaindstillinger
3
+ label_redmineup_money: Valuta
4
+ label_redmineup_disable_taxes: Deaktiver skatter
5
+ label_redmineup_default_tax: Standardskatteværdi
6
+ label_redmineup_tax_type: Skattetype
7
+ label_redmineup_tax_type_exclusive: Moms eksklusive
8
+ label_redmineup_tax_type_inclusive: Moms inklusive
9
+ label_redmineup_default_currency: Standardvaluta
10
+ label_redmineup_major_currencies: Hovedvalutaer
11
+ label_redmineup_thousands_delimiter: Tusindtalsseparator
12
+ label_redmineup_decimal_separator: Decimalseparator
13
+ lable_redmineup_add_tag: tilføj tag
@@ -11,3 +11,4 @@ de:
11
11
  label_redmineup_major_currencies: Aktive Währungen
12
12
  label_redmineup_thousands_delimiter: Tausendertrennzeichen
13
13
  label_redmineup_decimal_separator: Dezimaltrennzeichen
14
+ lable_redmineup_add_tag: Tag hinzufügen
@@ -0,0 +1,13 @@
1
+ el:
2
+ label_redmineup_settings: Ρυθμίσεις νομίσματος
3
+ label_redmineup_money: Νόμισμα
4
+ label_redmineup_disable_taxes: Απενεργοποίηση φόρων
5
+ label_redmineup_default_tax: Προεπιλεγμένη τιμή φόρου
6
+ label_redmineup_tax_type: Τύπος φόρου
7
+ label_redmineup_tax_type_exclusive: Χωρίς φόρο
8
+ label_redmineup_tax_type_inclusive: Με φόρο
9
+ label_redmineup_default_currency: Προεπιλεγμένο νόμισμα
10
+ label_redmineup_major_currencies: Κύρια νομίσματα
11
+ label_redmineup_thousands_delimiter: Διαχωριστικό χιλιάδων
12
+ label_redmineup_decimal_separator: Διαχωριστικό δεκαδικών
13
+ lable_redmineup_add_tag: προσθήκη ετικέτας
@@ -0,0 +1,14 @@
1
+ en-GB:
2
+ label_redmineup_settings: Money Settings
3
+ label_redmineup_money: Money
4
+
5
+ label_redmineup_disable_taxes: Disable taxes
6
+ label_redmineup_default_tax: Default tax value
7
+ label_redmineup_tax_type: Tax type
8
+ label_redmineup_tax_type_exclusive: Tax exclusive
9
+ label_redmineup_tax_type_inclusive: Tax inclusive
10
+ label_redmineup_default_currency: Default currency
11
+ label_redmineup_major_currencies: Major currencies
12
+ label_redmineup_thousands_delimiter: Thousands delimiter
13
+ label_redmineup_decimal_separator: Decimal separator
14
+ lable_redmineup_add_tag: add tag
@@ -0,0 +1,14 @@
1
+ es-PA:
2
+ label_redmineup_settings: Configuración
3
+ label_redmineup_money: Dinero
4
+
5
+ label_redmineup_disable_taxes: Deshabilitar impuestos
6
+ label_redmineup_default_tax: Impuesto por defecto
7
+ label_redmineup_tax_type: Tipo de impuesto
8
+ label_redmineup_tax_type_exclusive: Excluir
9
+ label_redmineup_tax_type_inclusive: Incluir
10
+ label_redmineup_default_currency: Moneda por defecto
11
+ label_redmineup_major_currencies: Monedas usadas
12
+ label_redmineup_thousands_delimiter: Separador de miles
13
+ label_redmineup_decimal_separator: Separador de decimales
14
+ lable_redmineup_add_tag: añadir etiqueta
@@ -11,3 +11,4 @@ es:
11
11
  label_redmineup_major_currencies: Monedas usadas
12
12
  label_redmineup_thousands_delimiter: Separador de miles
13
13
  label_redmineup_decimal_separator: Separador de decimales
14
+ lable_redmineup_add_tag: añadir etiqueta
@@ -0,0 +1,13 @@
1
+ et:
2
+ label_redmineup_settings: Rahaseaded
3
+ label_redmineup_money: Raha
4
+ label_redmineup_disable_taxes: Keela maksud
5
+ label_redmineup_default_tax: Vaikimisi maksuväärtus
6
+ label_redmineup_tax_type: Maksu tüüp
7
+ label_redmineup_tax_type_exclusive: Maksuta
8
+ label_redmineup_tax_type_inclusive: Maksuga
9
+ label_redmineup_default_currency: Vaikevaluuta
10
+ label_redmineup_major_currencies: Põhivaluutad
11
+ label_redmineup_thousands_delimiter: Tuhandete eraldaja
12
+ label_redmineup_decimal_separator: Kümnenderaldaja
13
+ lable_redmineup_add_tag: lisa silt
@@ -0,0 +1,13 @@
1
+ eu:
2
+ label_redmineup_settings: Diru ezarpenak
3
+ label_redmineup_money: Dirua
4
+ label_redmineup_disable_taxes: Desgaitu zergak
5
+ label_redmineup_default_tax: Zerga balio lehenetsia
6
+ label_redmineup_tax_type: Zerga mota
7
+ label_redmineup_tax_type_exclusive: Zerga barne ez
8
+ label_redmineup_tax_type_inclusive: Zerga barne
9
+ label_redmineup_default_currency: Moneta lehenetsia
10
+ label_redmineup_major_currencies: Moneta nagusiak
11
+ label_redmineup_thousands_delimiter: Milakoen bereizlea
12
+ label_redmineup_decimal_separator: Hamartar bereizlea
13
+ lable_redmineup_add_tag: gehitu etiketa
@@ -0,0 +1,13 @@
1
+ fa:
2
+ label_redmineup_settings: تنظیمات پول
3
+ label_redmineup_money: پول
4
+ label_redmineup_disable_taxes: غیرفعال کردن مالیات
5
+ label_redmineup_default_tax: مقدار پیش‌فرض مالیات
6
+ label_redmineup_tax_type: نوع مالیات
7
+ label_redmineup_tax_type_exclusive: بدون مالیات
8
+ label_redmineup_tax_type_inclusive: با مالیات
9
+ label_redmineup_default_currency: ارز پیش‌فرض
10
+ label_redmineup_major_currencies: ارزهای اصلی
11
+ label_redmineup_thousands_delimiter: جداکننده هزارگان
12
+ label_redmineup_decimal_separator: جداکننده اعشار
13
+ lable_redmineup_add_tag: افزودن برچسب
@@ -0,0 +1,13 @@
1
+ fi:
2
+ label_redmineup_settings: Rahaasetukset
3
+ label_redmineup_money: Raha
4
+ label_redmineup_disable_taxes: Poista verot käytöstä
5
+ label_redmineup_default_tax: Oletusveroarvo
6
+ label_redmineup_tax_type: Veron tyyppi
7
+ label_redmineup_tax_type_exclusive: Vero ei sisälly
8
+ label_redmineup_tax_type_inclusive: Vero sisältyy
9
+ label_redmineup_default_currency: Oletusvaluutta
10
+ label_redmineup_major_currencies: Päävaluutat
11
+ label_redmineup_thousands_delimiter: Tuhaterotin
12
+ label_redmineup_decimal_separator: Desimaalierotin
13
+ lable_redmineup_add_tag: lisää tunniste
@@ -0,0 +1,13 @@
1
+ fr:
2
+ label_redmineup_settings: Paramètres monétaires
3
+ label_redmineup_money: Monnaie
4
+ label_redmineup_disable_taxes: Désactiver les taxes
5
+ label_redmineup_default_tax: Valeur de taxe par défaut
6
+ label_redmineup_tax_type: Type de taxe
7
+ label_redmineup_tax_type_exclusive: Hors taxes
8
+ label_redmineup_tax_type_inclusive: Taxes comprises
9
+ label_redmineup_default_currency: Devise par défaut
10
+ label_redmineup_major_currencies: Devises principales
11
+ label_redmineup_thousands_delimiter: Séparateur de milliers
12
+ label_redmineup_decimal_separator: Séparateur décimal
13
+ lable_redmineup_add_tag: ajouter un tag
@@ -0,0 +1,13 @@
1
+ gl:
2
+ label_redmineup_settings: Configuración de moeda
3
+ label_redmineup_money: Moeda
4
+ label_redmineup_disable_taxes: Desactivar impostos
5
+ label_redmineup_default_tax: Valor de imposto por defecto
6
+ label_redmineup_tax_type: Tipo de imposto
7
+ label_redmineup_tax_type_exclusive: Imposto excluído
8
+ label_redmineup_tax_type_inclusive: Imposto incluído
9
+ label_redmineup_default_currency: Moeda por defecto
10
+ label_redmineup_major_currencies: Moedas principais
11
+ label_redmineup_thousands_delimiter: Separador de miles
12
+ label_redmineup_decimal_separator: Separador decimal
13
+ lable_redmineup_add_tag: engadir etiqueta
@@ -0,0 +1,13 @@
1
+ he:
2
+ label_redmineup_settings: הגדרות כסף
3
+ label_redmineup_money: כסף
4
+ label_redmineup_disable_taxes: השבתת מסים
5
+ label_redmineup_default_tax: ערך מס ברירת מחדל
6
+ label_redmineup_tax_type: סוג מס
7
+ label_redmineup_tax_type_exclusive: לא כולל מס
8
+ label_redmineup_tax_type_inclusive: כולל מס
9
+ label_redmineup_default_currency: מטבע ברירת מחדל
10
+ label_redmineup_major_currencies: מטבעות עיקריים
11
+ label_redmineup_thousands_delimiter: מפריד אלפים
12
+ label_redmineup_decimal_separator: מפריד עשרוני
13
+ lable_redmineup_add_tag: הוסף תגית
@@ -0,0 +1,13 @@
1
+ hr:
2
+ label_redmineup_settings: Postavke novca
3
+ label_redmineup_money: Novac
4
+ label_redmineup_disable_taxes: Onemogući poreze
5
+ label_redmineup_default_tax: Zadana vrijednost poreza
6
+ label_redmineup_tax_type: Vrsta poreza
7
+ label_redmineup_tax_type_exclusive: Porez nije uključen
8
+ label_redmineup_tax_type_inclusive: Porez je uključen
9
+ label_redmineup_default_currency: Zadana valuta
10
+ label_redmineup_major_currencies: Glavne valute
11
+ label_redmineup_thousands_delimiter: Razdjelnik tisućica
12
+ label_redmineup_decimal_separator: Decimalni razdjelnik
13
+ lable_redmineup_add_tag: dodaj oznaku
@@ -0,0 +1,13 @@
1
+ hu:
2
+ label_redmineup_settings: Pénzügyi beállítások
3
+ label_redmineup_money: Pénz
4
+ label_redmineup_disable_taxes: Adók kikapcsolása
5
+ label_redmineup_default_tax: Alapértelmezett adóérték
6
+ label_redmineup_tax_type: Adó típusa
7
+ label_redmineup_tax_type_exclusive: Adó nélkül
8
+ label_redmineup_tax_type_inclusive: Adóval
9
+ label_redmineup_default_currency: Alapértelmezett pénznem
10
+ label_redmineup_major_currencies: Fő pénznemek
11
+ label_redmineup_thousands_delimiter: Ezres elválasztó
12
+ label_redmineup_decimal_separator: Tizedeselválasztó
13
+ lable_redmineup_add_tag: címke hozzáadása
@@ -0,0 +1,13 @@
1
+ id:
2
+ label_redmineup_settings: Pengaturan uang
3
+ label_redmineup_money: Uang
4
+ label_redmineup_disable_taxes: Nonaktifkan pajak
5
+ label_redmineup_default_tax: Nilai pajak bawaan
6
+ label_redmineup_tax_type: Jenis pajak
7
+ label_redmineup_tax_type_exclusive: Belum termasuk pajak
8
+ label_redmineup_tax_type_inclusive: Termasuk pajak
9
+ label_redmineup_default_currency: Mata uang bawaan
10
+ label_redmineup_major_currencies: Mata uang utama
11
+ label_redmineup_thousands_delimiter: Pemisah ribuan
12
+ label_redmineup_decimal_separator: Pemisah desimal
13
+ lable_redmineup_add_tag: tambah tag
@@ -0,0 +1,13 @@
1
+ it:
2
+ label_redmineup_settings: Impostazioni valuta
3
+ label_redmineup_money: Valuta
4
+ label_redmineup_disable_taxes: Disattiva le tasse
5
+ label_redmineup_default_tax: Valore di tassa predefinito
6
+ label_redmineup_tax_type: Tipo di tassa
7
+ label_redmineup_tax_type_exclusive: Tasse escluse
8
+ label_redmineup_tax_type_inclusive: Tasse incluse
9
+ label_redmineup_default_currency: Valuta predefinita
10
+ label_redmineup_major_currencies: Valute principali
11
+ label_redmineup_thousands_delimiter: Separatore delle migliaia
12
+ label_redmineup_decimal_separator: Separatore decimale
13
+ lable_redmineup_add_tag: aggiungi tag
@@ -0,0 +1,13 @@
1
+ ja:
2
+ label_redmineup_settings: 通貨設定
3
+ label_redmineup_money: 通貨
4
+ label_redmineup_disable_taxes: 税を無効にする
5
+ label_redmineup_default_tax: デフォルトの税額
6
+ label_redmineup_tax_type: 税の種類
7
+ label_redmineup_tax_type_exclusive: 税別
8
+ label_redmineup_tax_type_inclusive: 税込
9
+ label_redmineup_default_currency: デフォルト通貨
10
+ label_redmineup_major_currencies: 主要通貨
11
+ label_redmineup_thousands_delimiter: 桁区切り
12
+ label_redmineup_decimal_separator: 小数点記号
13
+ lable_redmineup_add_tag: タグを追加
@@ -0,0 +1,13 @@
1
+ ko:
2
+ label_redmineup_settings: 통화 설정
3
+ label_redmineup_money: 통화
4
+ label_redmineup_disable_taxes: 세금 사용 안 함
5
+ label_redmineup_default_tax: 기본 세금 값
6
+ label_redmineup_tax_type: 세금 유형
7
+ label_redmineup_tax_type_exclusive: 세금 별도
8
+ label_redmineup_tax_type_inclusive: 세금 포함
9
+ label_redmineup_default_currency: 기본 통화
10
+ label_redmineup_major_currencies: 주요 통화
11
+ label_redmineup_thousands_delimiter: 천 단위 구분 기호
12
+ label_redmineup_decimal_separator: 소수점 기호
13
+ lable_redmineup_add_tag: 태그 추가
@@ -0,0 +1,13 @@
1
+ lt:
2
+ label_redmineup_settings: Pinigų nustatymai
3
+ label_redmineup_money: Pinigai
4
+ label_redmineup_disable_taxes: Išjungti mokesčius
5
+ label_redmineup_default_tax: Numatytoji mokesčio reikšmė
6
+ label_redmineup_tax_type: Mokesčio tipas
7
+ label_redmineup_tax_type_exclusive: Mokestis neįtrauktas
8
+ label_redmineup_tax_type_inclusive: Mokestis įtrauktas
9
+ label_redmineup_default_currency: Numatytoji valiuta
10
+ label_redmineup_major_currencies: Pagrindinės valiutos
11
+ label_redmineup_thousands_delimiter: Tūkstančių skirtukas
12
+ label_redmineup_decimal_separator: Dešimtainis skirtukas
13
+ lable_redmineup_add_tag: pridėti žymą
@@ -0,0 +1,13 @@
1
+ lv:
2
+ label_redmineup_settings: Valūtas iestatījumi
3
+ label_redmineup_money: Valūta
4
+ label_redmineup_disable_taxes: Atslēgt nodokļus
5
+ label_redmineup_default_tax: Noklusētā nodokļa vērtība
6
+ label_redmineup_tax_type: Nodokļa veids
7
+ label_redmineup_tax_type_exclusive: Nodoklis nav iekļauts
8
+ label_redmineup_tax_type_inclusive: Nodoklis iekļauts
9
+ label_redmineup_default_currency: Noklusētā valūta
10
+ label_redmineup_major_currencies: Galvenās valūtas
11
+ label_redmineup_thousands_delimiter: Tūkstošu atdalītājs
12
+ label_redmineup_decimal_separator: Decimālais atdalītājs
13
+ lable_redmineup_add_tag: pievienot tagu
@@ -0,0 +1,13 @@
1
+ mk:
2
+ label_redmineup_settings: Поставки за пари
3
+ label_redmineup_money: Пари
4
+ label_redmineup_disable_taxes: Оневозможи даноци
5
+ label_redmineup_default_tax: Стандардна вредност на данок
6
+ label_redmineup_tax_type: Тип на данок
7
+ label_redmineup_tax_type_exclusive: Данокот не е вклучен
8
+ label_redmineup_tax_type_inclusive: Данокот е вклучен
9
+ label_redmineup_default_currency: Стандардна валута
10
+ label_redmineup_major_currencies: Главни валути
11
+ label_redmineup_thousands_delimiter: Разделувач на илјади
12
+ label_redmineup_decimal_separator: Децимален разделувач
13
+ lable_redmineup_add_tag: додај ознака
@@ -0,0 +1,13 @@
1
+ mn:
2
+ label_redmineup_settings: Мөнгөний тохиргоо
3
+ label_redmineup_money: Мөнгө
4
+ label_redmineup_disable_taxes: Татварыг идэвхгүй болгох
5
+ label_redmineup_default_tax: Татварын анхны утга
6
+ label_redmineup_tax_type: Татварын төрөл
7
+ label_redmineup_tax_type_exclusive: Татвар оруулаагүй
8
+ label_redmineup_tax_type_inclusive: Татвар орсон
9
+ label_redmineup_default_currency: Үндсэн валют
10
+ label_redmineup_major_currencies: Үндсэн валютууд
11
+ label_redmineup_thousands_delimiter: Мянгатын тусгаарлагч
12
+ label_redmineup_decimal_separator: Аравтын тусгаарлагч
13
+ lable_redmineup_add_tag: шошго нэмэх
@@ -0,0 +1,13 @@
1
+ nl:
2
+ label_redmineup_settings: Geldinstellingen
3
+ label_redmineup_money: Geld
4
+ label_redmineup_disable_taxes: Belastingen uitschakelen
5
+ label_redmineup_default_tax: Standaardbelastingwaarde
6
+ label_redmineup_tax_type: Belastingtype
7
+ label_redmineup_tax_type_exclusive: Exclusief belasting
8
+ label_redmineup_tax_type_inclusive: Inclusief belasting
9
+ label_redmineup_default_currency: Standaardvaluta
10
+ label_redmineup_major_currencies: Hoofdvaluta's
11
+ label_redmineup_thousands_delimiter: Duizendtalscheidingsteken
12
+ label_redmineup_decimal_separator: Decimaal scheidingsteken
13
+ lable_redmineup_add_tag: tag toevoegen
@@ -0,0 +1,13 @@
1
+ "no":
2
+ label_redmineup_settings: Pengeinnstillinger
3
+ label_redmineup_money: Penger
4
+ label_redmineup_disable_taxes: Deaktiver skatter
5
+ label_redmineup_default_tax: Standard skatteverdi
6
+ label_redmineup_tax_type: Skattetype
7
+ label_redmineup_tax_type_exclusive: Eksklusive skatt
8
+ label_redmineup_tax_type_inclusive: Inklusive skatt
9
+ label_redmineup_default_currency: Standardvaluta
10
+ label_redmineup_major_currencies: Hovedvalutaer
11
+ label_redmineup_thousands_delimiter: Tusenskilletegn
12
+ label_redmineup_decimal_separator: Desimalskilletegn
13
+ lable_redmineup_add_tag: legg til tagg
@@ -0,0 +1,13 @@
1
+ pl:
2
+ label_redmineup_settings: Ustawienia walut
3
+ label_redmineup_money: Waluta
4
+ label_redmineup_disable_taxes: Wyłącz podatki
5
+ label_redmineup_default_tax: Domyślna wartość podatku
6
+ label_redmineup_tax_type: Typ podatku
7
+ label_redmineup_tax_type_exclusive: Podatek nie jest wliczony
8
+ label_redmineup_tax_type_inclusive: Podatek wliczony
9
+ label_redmineup_default_currency: Domyślna waluta
10
+ label_redmineup_major_currencies: Główne waluty
11
+ label_redmineup_thousands_delimiter: Separator tysięcy
12
+ label_redmineup_decimal_separator: Separator dziesiętny
13
+ lable_redmineup_add_tag: dodaj tag
@@ -0,0 +1,13 @@
1
+ pt-BR:
2
+ label_redmineup_settings: Configurações de moeda
3
+ label_redmineup_money: Moeda
4
+ label_redmineup_disable_taxes: Desativar impostos
5
+ label_redmineup_default_tax: Valor de imposto padrão
6
+ label_redmineup_tax_type: Tipo de imposto
7
+ label_redmineup_tax_type_exclusive: Imposto não incluído
8
+ label_redmineup_tax_type_inclusive: Imposto incluído
9
+ label_redmineup_default_currency: Moeda padrão
10
+ label_redmineup_major_currencies: Moedas principais
11
+ label_redmineup_thousands_delimiter: Separador de milhares
12
+ label_redmineup_decimal_separator: Separador decimal
13
+ lable_redmineup_add_tag: adicionar tag
@@ -0,0 +1,13 @@
1
+ pt:
2
+ label_redmineup_settings: Definições de moeda
3
+ label_redmineup_money: Moeda
4
+ label_redmineup_disable_taxes: Desativar impostos
5
+ label_redmineup_default_tax: Valor de imposto predefinido
6
+ label_redmineup_tax_type: Tipo de imposto
7
+ label_redmineup_tax_type_exclusive: Imposto excluído
8
+ label_redmineup_tax_type_inclusive: Imposto incluído
9
+ label_redmineup_default_currency: Moeda predefinida
10
+ label_redmineup_major_currencies: Moedas principais
11
+ label_redmineup_thousands_delimiter: Separador de milhares
12
+ label_redmineup_decimal_separator: Separador decimal
13
+ lable_redmineup_add_tag: adicionar etiqueta
@@ -0,0 +1,13 @@
1
+ ro:
2
+ label_redmineup_settings: Setări monedă
3
+ label_redmineup_money: Monedă
4
+ label_redmineup_disable_taxes: Dezactivează taxele
5
+ label_redmineup_default_tax: Valoarea implicită a taxei
6
+ label_redmineup_tax_type: Tip de taxă
7
+ label_redmineup_tax_type_exclusive: Taxă exclusă
8
+ label_redmineup_tax_type_inclusive: Taxă inclusă
9
+ label_redmineup_default_currency: Moneda implicită
10
+ label_redmineup_major_currencies: Monede principale
11
+ label_redmineup_thousands_delimiter: Separator de mii
12
+ label_redmineup_decimal_separator: Separator zecimal
13
+ lable_redmineup_add_tag: adaugă etichetă
@@ -6,7 +6,7 @@ ru:
6
6
  label_redmineup_default_tax: Ставка налога
7
7
  label_redmineup_tax_type: Тип налога
8
8
  label_redmineup_tax_type_exclusive: Налог добавлен к общей сумме
9
- label_redmineup_tax_type_inclusive: Налог включен с общую сумму
9
+ label_redmineup_tax_type_inclusive: Налог включен в общую сумму
10
10
  label_redmineup_default_currency: Валюта по умолчанию
11
11
  label_redmineup_major_currencies: Основные валюты
12
12
  label_redmineup_thousands_delimiter: Разделитель разрядов
@@ -0,0 +1,13 @@
1
+ sk:
2
+ label_redmineup_settings: Nastavenia meny
3
+ label_redmineup_money: Mena
4
+ label_redmineup_disable_taxes: Vypnúť dane
5
+ label_redmineup_default_tax: Predvolená hodnota dane
6
+ label_redmineup_tax_type: Typ dane
7
+ label_redmineup_tax_type_exclusive: Daň nie je zahrnutá
8
+ label_redmineup_tax_type_inclusive: Daň je zahrnutá
9
+ label_redmineup_default_currency: Predvolená mena
10
+ label_redmineup_major_currencies: Hlavné meny
11
+ label_redmineup_thousands_delimiter: Oddeľovač tisícov
12
+ label_redmineup_decimal_separator: Desatinný oddeľovač
13
+ lable_redmineup_add_tag: pridať štítok
@@ -0,0 +1,13 @@
1
+ sl:
2
+ label_redmineup_settings: Nastavitve valute
3
+ label_redmineup_money: Valuta
4
+ label_redmineup_disable_taxes: Onemogoči davke
5
+ label_redmineup_default_tax: Privzeta vrednost davka
6
+ label_redmineup_tax_type: Vrsta davka
7
+ label_redmineup_tax_type_exclusive: Davek ni vključen
8
+ label_redmineup_tax_type_inclusive: Davek je vključen
9
+ label_redmineup_default_currency: Privzeta valuta
10
+ label_redmineup_major_currencies: Glavne valute
11
+ label_redmineup_thousands_delimiter: Ločilo tisočic
12
+ label_redmineup_decimal_separator: Decimalno ločilo
13
+ lable_redmineup_add_tag: dodaj oznako
@@ -0,0 +1,13 @@
1
+ sq:
2
+ label_redmineup_settings: Cilësimet e parasë
3
+ label_redmineup_money: Para
4
+ label_redmineup_disable_taxes: Çaktivizo taksat
5
+ label_redmineup_default_tax: Vlera e parazgjedhur e taksës
6
+ label_redmineup_tax_type: Lloji i taksës
7
+ label_redmineup_tax_type_exclusive: Pa taksë të përfshirë
8
+ label_redmineup_tax_type_inclusive: Me taksë të përfshirë
9
+ label_redmineup_default_currency: Monedha e parazgjedhur
10
+ label_redmineup_major_currencies: Monedhat kryesore
11
+ label_redmineup_thousands_delimiter: Ndarësi i mijësheve
12
+ label_redmineup_decimal_separator: Ndarësi dhjetor
13
+ lable_redmineup_add_tag: shto etiketë
@@ -0,0 +1,13 @@
1
+ sr-YU:
2
+ label_redmineup_settings: Podešavanja novca
3
+ label_redmineup_money: Novac
4
+ label_redmineup_disable_taxes: Onemogući poreze
5
+ label_redmineup_default_tax: Podrazumevana vrednost poreza
6
+ label_redmineup_tax_type: Vrsta poreza
7
+ label_redmineup_tax_type_exclusive: Porez nije uključen
8
+ label_redmineup_tax_type_inclusive: Porez je uključen
9
+ label_redmineup_default_currency: Podrazumevana valuta
10
+ label_redmineup_major_currencies: Glavne valute
11
+ label_redmineup_thousands_delimiter: Razdvajač hiljada
12
+ label_redmineup_decimal_separator: Decimalni razdvajač
13
+ lable_redmineup_add_tag: dodaj oznaku
@@ -0,0 +1,13 @@
1
+ sr:
2
+ label_redmineup_settings: Подешавања новца
3
+ label_redmineup_money: Новац
4
+ label_redmineup_disable_taxes: Онемогући порезе
5
+ label_redmineup_default_tax: Подразумевана вредност пореза
6
+ label_redmineup_tax_type: Врста пореза
7
+ label_redmineup_tax_type_exclusive: Порез није укључен
8
+ label_redmineup_tax_type_inclusive: Порез је укључен
9
+ label_redmineup_default_currency: Подразумевана валута
10
+ label_redmineup_major_currencies: Главне валуте
11
+ label_redmineup_thousands_delimiter: Раздвајач хиљада
12
+ label_redmineup_decimal_separator: Децимални раздвајач
13
+ lable_redmineup_add_tag: додај ознаку
@@ -0,0 +1,13 @@
1
+ sv:
2
+ label_redmineup_settings: Penninginställningar
3
+ label_redmineup_money: Pengar
4
+ label_redmineup_disable_taxes: Inaktivera skatter
5
+ label_redmineup_default_tax: Standardskattevärde
6
+ label_redmineup_tax_type: Skatttyp
7
+ label_redmineup_tax_type_exclusive: Exklusive skatt
8
+ label_redmineup_tax_type_inclusive: Inklusive skatt
9
+ label_redmineup_default_currency: Standardvaluta
10
+ label_redmineup_major_currencies: Huvudvalutor
11
+ label_redmineup_thousands_delimiter: Tusentalsavgränsare
12
+ label_redmineup_decimal_separator: Decimalavgränsare
13
+ lable_redmineup_add_tag: lägg till tagg
@@ -0,0 +1,13 @@
1
+ ta-IN:
2
+ label_redmineup_settings: நாணய அமைப்புகள்
3
+ label_redmineup_money: நாணயம்
4
+ label_redmineup_disable_taxes: வரிகளை முடக்கு
5
+ label_redmineup_default_tax: இயல்புநிலை வரி மதிப்பு
6
+ label_redmineup_tax_type: வரி வகை
7
+ label_redmineup_tax_type_exclusive: வரி சேர்க்கப்படாதது
8
+ label_redmineup_tax_type_inclusive: வரி சேர்க்கப்பட்டது
9
+ label_redmineup_default_currency: இயல்புநிலை நாணயம்
10
+ label_redmineup_major_currencies: முக்கிய நாணயங்கள்
11
+ label_redmineup_thousands_delimiter: ஆயிரம் பிரிப்பான்
12
+ label_redmineup_decimal_separator: தசம பிரிப்பான்
13
+ lable_redmineup_add_tag: குறிச்சொல் சேர்
@@ -0,0 +1,13 @@
1
+ th:
2
+ label_redmineup_settings: การตั้งค่าเงิน
3
+ label_redmineup_money: เงิน
4
+ label_redmineup_disable_taxes: ปิดใช้งานภาษี
5
+ label_redmineup_default_tax: ค่าภาษีเริ่มต้น
6
+ label_redmineup_tax_type: ประเภทภาษี
7
+ label_redmineup_tax_type_exclusive: ไม่รวมภาษี
8
+ label_redmineup_tax_type_inclusive: รวมภาษี
9
+ label_redmineup_default_currency: สกุลเงินเริ่มต้น
10
+ label_redmineup_major_currencies: สกุลเงินหลัก
11
+ label_redmineup_thousands_delimiter: ตัวคั่นหลักพัน
12
+ label_redmineup_decimal_separator: ตัวคั่นทศนิยม
13
+ lable_redmineup_add_tag: เพิ่มแท็ก
@@ -0,0 +1,13 @@
1
+ tr:
2
+ label_redmineup_settings: Para ayarları
3
+ label_redmineup_money: Para
4
+ label_redmineup_disable_taxes: Vergileri devre dışı bırak
5
+ label_redmineup_default_tax: Varsayılan vergi değeri
6
+ label_redmineup_tax_type: Vergi türü
7
+ label_redmineup_tax_type_exclusive: Vergi hariç
8
+ label_redmineup_tax_type_inclusive: Vergi dahil
9
+ label_redmineup_default_currency: Varsayılan para birimi
10
+ label_redmineup_major_currencies: Ana para birimleri
11
+ label_redmineup_thousands_delimiter: Binlik ayracı
12
+ label_redmineup_decimal_separator: Ondalık ayracı
13
+ lable_redmineup_add_tag: etiket ekle
@@ -0,0 +1,13 @@
1
+ uk:
2
+ label_redmineup_settings: Налаштування грошей
3
+ label_redmineup_money: Гроші
4
+ label_redmineup_disable_taxes: Вимкнути податки
5
+ label_redmineup_default_tax: Типове значення податку
6
+ label_redmineup_tax_type: Тип податку
7
+ label_redmineup_tax_type_exclusive: Податок не включено
8
+ label_redmineup_tax_type_inclusive: Податок включено
9
+ label_redmineup_default_currency: Типова валюта
10
+ label_redmineup_major_currencies: Основні валюти
11
+ label_redmineup_thousands_delimiter: Роздільник тисяч
12
+ label_redmineup_decimal_separator: Десятковий роздільник
13
+ lable_redmineup_add_tag: додати тег
@@ -0,0 +1,13 @@
1
+ vi:
2
+ label_redmineup_settings: Cài đặt tiền tệ
3
+ label_redmineup_money: Tiền tệ
4
+ label_redmineup_disable_taxes: Tắt thuế
5
+ label_redmineup_default_tax: Giá trị thuế mặc định
6
+ label_redmineup_tax_type: Loại thuế
7
+ label_redmineup_tax_type_exclusive: Chưa bao gồm thuế
8
+ label_redmineup_tax_type_inclusive: Đã bao gồm thuế
9
+ label_redmineup_default_currency: Tiền tệ mặc định
10
+ label_redmineup_major_currencies: Tiền tệ chính
11
+ label_redmineup_thousands_delimiter: Dấu phân cách hàng nghìn
12
+ label_redmineup_decimal_separator: Dấu phân cách thập phân
13
+ lable_redmineup_add_tag: thêm thẻ
@@ -0,0 +1,13 @@
1
+ zh-TW:
2
+ label_redmineup_settings: 貨幣設定
3
+ label_redmineup_money: 貨幣
4
+ label_redmineup_disable_taxes: 停用稅金
5
+ label_redmineup_default_tax: 預設稅額
6
+ label_redmineup_tax_type: 稅金類型
7
+ label_redmineup_tax_type_exclusive: 未含稅
8
+ label_redmineup_tax_type_inclusive: 含稅
9
+ label_redmineup_default_currency: 預設貨幣
10
+ label_redmineup_major_currencies: 主要貨幣
11
+ label_redmineup_thousands_delimiter: 千位分隔符
12
+ label_redmineup_decimal_separator: 小數分隔符
13
+ lable_redmineup_add_tag: 新增標籤
@@ -0,0 +1,13 @@
1
+ zh:
2
+ label_redmineup_settings: 货币设置
3
+ label_redmineup_money: 货币
4
+ label_redmineup_disable_taxes: 禁用税费
5
+ label_redmineup_default_tax: 默认税额
6
+ label_redmineup_tax_type: 税费类型
7
+ label_redmineup_tax_type_exclusive: 不含税
8
+ label_redmineup_tax_type_inclusive: 含税
9
+ label_redmineup_default_currency: 默认货币
10
+ label_redmineup_major_currencies: 主要货币
11
+ label_redmineup_thousands_delimiter: 千位分隔符
12
+ label_redmineup_decimal_separator: 小数分隔符
13
+ lable_redmineup_add_tag: 添加标签
data/doc/CHANGELOG CHANGED
@@ -4,6 +4,20 @@ Redmine UP gem - general functions for plugins (tags, vote, viewing, currency)
4
4
  Copyright (C) 2011-2026 Kirill Bezrukov (RedmineUP)
5
5
  https://www.redmineup.com/
6
6
 
7
+ == 2026-10-24 v1.1.17
8
+
9
+ * Fixed gem breaking Redmine 5.0-6.0 on start (Norwegian locale)
10
+
11
+ == 2026-10-24 v1.1.16
12
+
13
+ * Added shared styles for tag chips: colored, gray, link
14
+ * Added tag_label, tag_label_link(s), tag_sidebar_cloud helpers
15
+ * Added tag and tag-merge icons
16
+ * Added translations for all languages supported by Redmine
17
+ * Fixed websocket reconnection every minute behind nginx
18
+ * Fixed error on deleting a person when the viewed model loads later
19
+ * Fixed trailing ".0" in amounts of currencies without a fractional unit
20
+
7
21
  == 2026-10-11 v1.1.15
8
22
 
9
23
  * Speeded up the tags list query (available_tags) on pages with a lot of tagged records
@@ -11,6 +11,13 @@ Provided by `Redmineup::TagsHelper`:
11
11
  - `tag_links(tag_list, options = {}) { |tag| url }`
12
12
  - `tag_cloud(tags, classes) { |tag, css_class| ... }`
13
13
  - `tag_cloud_links(tags, key, options = {})`
14
+
15
+ Since 1.1.16 (the display mode, sidebar style, counts and order come from the Tags plugin when it is installed; without it tags are colored chips in a cloud):
16
+
17
+ - `tag_display_mode` returns `color`, `plain` or `link`
18
+ - `tag_label(inner, color)` wraps markup in a chip (`span.tag-label.tag-label-color` / `.tag-label-plain`) or `span.tag-link`
19
+ - `tag_label_link(url, tag_name, options = {})`, `tag_label_links(tag_list, options = {}) { |tag| url }`, `tag_label_separator`
20
+ - `tag_sidebar_cloud(tags, key)` renders the sidebar tags (list, cloud or simple cloud) and resolves links through `{key}_tag_url`
14
21
  - `tag_separator`
15
22
 
16
23
  ### Recommended pattern
@@ -1,6 +1,8 @@
1
1
  module ActionCable
2
2
  module Server
3
3
  class RupServer < ActionCable::Server::Base
4
+ BEAT_INTERVAL = 10
5
+
4
6
  attr_reader :config
5
7
 
6
8
  def initialize(config: self.class.config)
@@ -10,7 +12,9 @@ module ActionCable
10
12
  end
11
13
 
12
14
  def setup_heartbeat_timer
13
- Rails.logger.info('Heartbeat timer disabled for RupServer')
15
+ @heartbeat_timer ||= event_loop.timer(BEAT_INTERVAL) do
16
+ event_loop.post { connections.each(&:beat) }
17
+ end
14
18
  end
15
19
  end
16
20
  end
@@ -113,8 +113,13 @@ module Redmineup
113
113
  # Add to the User (or whatever the viewer is) a has_many viewings
114
114
  viewer_as_class = viewer_class.constantize
115
115
  return if viewer_as_class.instance_methods.include?('find_in_viewings')
116
- viewer_as_class.class_eval do
117
- has_many :viewings, foreign_key: :viewer_id, class_name: viewing_class.to_s, dependent: :delete_all
116
+ # Subclasses loaded earlier (Person < User) keep their own association set, so add it to them as well.
117
+ ([viewer_as_class] + viewer_as_class.descendants).each do |klass|
118
+ next if klass.reflect_on_association(:viewings)
119
+
120
+ klass.class_eval do
121
+ has_many :viewings, foreign_key: :viewer_id, class_name: viewing_class.to_s, dependent: :delete_all
122
+ end
118
123
  end
119
124
  end
120
125
  end
@@ -59,6 +59,7 @@ module Redmineup
59
59
  decimal_part << '0' while decimal_part.length < (currency.decimal_places + 1)
60
60
  decimal_part
61
61
  end
62
+ formatted.sub!(/\..*/, '') if currency.decimal_places.zero?
62
63
  formatted.gsub!(/\./, rules[:decimal_mark]) unless '.' == rules[:decimal_mark]
63
64
  end
64
65
 
@@ -50,5 +50,72 @@ module Redmineup
50
50
  end
51
51
  end
52
52
 
53
+
54
+ def tag_display_mode
55
+ if defined?(RedmineupTags::TagDisplay)
56
+ RedmineupTags::TagDisplay.mode
57
+ elsif defined?(RedmineupTags) && RedmineupTags.respond_to?(:use_colors?)
58
+ RedmineupTags.use_colors? ? 'color' : 'plain'
59
+ else
60
+ 'color'
61
+ end
62
+ end
63
+
64
+ def tag_label_separator
65
+ tag_display_mode == 'link' ? ', ' : ' '
66
+ end
67
+
68
+ def tag_label(inner, color)
69
+ case tag_display_mode
70
+ when 'color' then content_tag(:span, inner, class: 'tag-label tag-label-color', style: "background-color: #{color}")
71
+ when 'plain' then content_tag(:span, inner, class: 'tag-label tag-label-plain')
72
+ else content_tag(:span, inner, class: 'tag-link')
73
+ end
74
+ end
75
+
76
+ def tag_label_link(url, tag_name, options = {})
77
+ options = options.dup
78
+ count = options.delete(:count)
79
+ color = options.delete(:color) || Redmineup::ActsAsTaggable::Tag.color_from_name(tag_name)
80
+ inner = link_to(tag_name, url, options)
81
+ inner << content_tag('span', "(#{count})", class: 'tag-count') if count
82
+ tag_label(inner, color)
83
+ end
84
+
85
+ def tag_label_links(tag_list, options = {}, &url_block)
86
+ return if tag_list.blank?
87
+
88
+ content_tag(:span, class: 'tag_list') do
89
+ safe_join(Array(tag_list).map { |tag| tag_label_link(url_block.call(tag), tag, options) }, tag_label_separator)
90
+ end
91
+ end
92
+
93
+ def tag_sidebar_cloud(tags, key)
94
+ return if tags.blank?
95
+
96
+ settings = defined?(RedmineupTags::TagDisplay) ? RedmineupTags::TagDisplay : nil
97
+ style = settings ? settings.sidebar_style : 'cloud'
98
+ counts = settings ? settings.sidebar_counts? : true
99
+ sort_by, sort_order = settings ? [settings.sort_by, settings.sort_order] : %w[name asc]
100
+
101
+ url_method = :"#{key}_tag_url"
102
+ raise NoMethodError, "#{url_method} is not defined in view context" unless respond_to?(url_method, true)
103
+
104
+ tags = tags.to_a.sort_by { |tag| sort_by == 'count' ? tag.count.to_i : tag.name.downcase }
105
+ tags.reverse! if sort_order == 'desc'
106
+ group_by_letter = style == 'list' && sort_by == 'name'
107
+ groups = group_by_letter ? tags.group_by { |tag| tag.name.downcase.first } : { nil => tags }
108
+ list_el, item_el = style == 'list' ? %w[ul li] : %w[div span]
109
+ separator = style == 'simple_cloud' ? tag_label_separator : ' '
110
+ content = groups.map do |letter, grouped|
111
+ items = []
112
+ tag_cloud(grouped, (1..8).to_a) do |tag, weight|
113
+ items << content_tag(item_el, tag_label_link(send(url_method, tag.name), tag.name, count: (tag.count if counts && tag.count.to_i > 0), color: (tag.color if tag.respond_to?(:color))), class: "tag-nube-#{weight}", style: ('font-size: 1em;' if style == 'simple_cloud'))
114
+ end
115
+ safe_join([(content_tag(item_el, letter.upcase, class: 'letter') if letter), safe_join(items, separator)])
116
+ end
117
+ content_tag(list_el, safe_join(content), class: 'tags-cloud', style: ('text-align: left;' if style == 'simple_cloud'))
118
+ end
119
+
53
120
  end
54
121
  end
@@ -1,3 +1,3 @@
1
1
  module Redmineup
2
- VERSION = '1.1.15'
2
+ VERSION = '1.1.17'
3
3
  end
@@ -44,4 +44,16 @@ class RupActsAsViewedTest < ActiveSupport::TestCase
44
44
  issue.view '127.0.0.1', user
45
45
  assert_equal [issue], Issue.find_viewed_by(user)
46
46
  end
47
+
48
+ def test_viewer_subclass_loaded_before_the_macro_gets_viewings
49
+ Object.const_set(:TmpViewer, Class.new(ActiveRecord::Base) { self.table_name = 'users' })
50
+ Object.const_set(:TmpViewerChild, Class.new(TmpViewer) { has_many :own_issues, class_name: 'Issue', foreign_key: :author_id })
51
+ viewed = Class.new(ActiveRecord::Base) { self.table_name = 'issues'; def self.name; 'TmpViewed'; end }
52
+ viewed.up_acts_as_viewed(viewer_class: 'TmpViewer')
53
+ assert TmpViewer.reflect_on_association(:viewings)
54
+ assert TmpViewerChild.reflect_on_association(:viewings), 'subclass has no viewings association'
55
+ ensure
56
+ Object.send(:remove_const, :TmpViewerChild) if Object.const_defined?(:TmpViewerChild)
57
+ Object.send(:remove_const, :TmpViewer) if Object.const_defined?(:TmpViewer)
58
+ end
47
59
  end
@@ -283,6 +283,13 @@ module Redmineup
283
283
  assert Currency.new(:usd).decimal_places == 2
284
284
  end
285
285
 
286
+ def test_format_zero_decimal_currency_has_no_fraction
287
+ assert_equal '₩3,500,000', Currency.format(3500000, Currency.new(:krw))
288
+ assert_equal '¥1,200', Currency.format(1200, Currency.new(:jpy))
289
+ assert_equal '₫3.500.000', Currency.format(3500000, Currency.new(:vnd))
290
+ assert_equal '$1,234.50', Currency.format(1234.5, Currency.new(:usd))
291
+ end
292
+
286
293
  def test_proper_place_for_custom_currency
287
294
  register_foo
288
295
  assert_equal 2, Currency.new(:foo).decimal_places
@@ -0,0 +1,12 @@
1
+ require File.dirname(__FILE__) + '/test_helper'
2
+ require 'yaml'
3
+
4
+ class LocalesTest < ActiveSupport::TestCase
5
+ Dir[File.expand_path('../../config/locales/*.yml', __FILE__)].sort.each do |file|
6
+ name = File.basename(file, '.yml')
7
+
8
+ define_method("test_#{name}_root_key_is_the_locale_name_string") do
9
+ assert_equal [name], YAML.load_file(file).keys
10
+ end
11
+ end
12
+ end
@@ -29,6 +29,67 @@ class TagsHelperViewTest < ActionView::TestCase
29
29
  assert_raises(NoMethodError) { tag_cloud_links(Issue.tag_counts, :unknown_xyz) }
30
30
  end
31
31
 
32
+ def with_tag_display(mode, style: 'cloud', counts: true)
33
+ settings = Module.new do
34
+ define_singleton_method(:mode) { mode }
35
+ define_singleton_method(:sidebar_style) { style }
36
+ define_singleton_method(:sidebar_counts?) { counts }
37
+ define_singleton_method(:sort_by) { 'name' }
38
+ define_singleton_method(:sort_order) { 'asc' }
39
+ end
40
+ created = !Object.const_defined?(:RedmineupTags)
41
+ Object.const_set(:RedmineupTags, Module.new) if created
42
+ RedmineupTags.const_set(:TagDisplay, settings)
43
+ yield
44
+ ensure
45
+ RedmineupTags.send(:remove_const, :TagDisplay) if RedmineupTags.const_defined?(:TagDisplay, false)
46
+ Object.send(:remove_const, :RedmineupTags) if created
47
+ end
48
+
49
+ def test_tag_label_without_tags_plugin_is_color
50
+ result = tag_label('x', '#112233')
51
+ assert_includes result, 'tag-label tag-label-color'
52
+ assert_includes result, 'background-color: #112233'
53
+ assert_equal ' ', tag_label_separator
54
+ end
55
+
56
+ def test_tag_label_modes
57
+ with_tag_display('plain') do
58
+ assert_includes tag_label('x', '#112233'), 'tag-label tag-label-plain'
59
+ assert_not_includes tag_label('x', '#112233'), 'background-color'
60
+ end
61
+ with_tag_display('link') do
62
+ assert_equal '<span class="tag-link">x</span>', tag_label('x', '#112233')
63
+ assert_equal ', ', tag_label_separator
64
+ end
65
+ end
66
+
67
+ def test_tag_label_link_and_links
68
+ result = tag_label_link('/tags/error', 'error', count: 3, color: '#abcdef', class: 'x')
69
+ assert_includes result, 'background-color: #abcdef'
70
+ assert_includes result, '(3)'
71
+ assert_includes result, 'class="x"'
72
+ links = tag_label_links(%w[a b]) { |t| "/tags/#{t}" }
73
+ assert_includes links, 'class="tag_list"'
74
+ assert_includes links, '/tags/a'
75
+ assert_nil tag_label_links([]) { |t| "/tags/#{t}" }
76
+ end
77
+
78
+ def test_tag_sidebar_cloud_styles
79
+ tags = Issue.tag_counts
80
+ assert_nil tag_sidebar_cloud([], :stub)
81
+ assert_includes tag_sidebar_cloud(tags, :stub), 'class="tags-cloud"'
82
+ with_tag_display('plain', style: 'list') do
83
+ result = tag_sidebar_cloud(tags, :stub)
84
+ assert_includes result, '<ul'
85
+ assert_includes result, 'class="letter"'
86
+ end
87
+ with_tag_display('color', counts: false) do
88
+ assert_not_includes tag_sidebar_cloud(tags, :stub), 'tag-count'
89
+ end
90
+ assert_raises(NoMethodError) { tag_sidebar_cloud(tags, :unknown_xyz) }
91
+ end
92
+
32
93
  def test_tag_list_field_tag
33
94
  result = tag_list_field_tag('issue[tag_list]', ['bug'],
34
95
  url: '/auto_completes/taggable_tags',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redmineup
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.15
4
+ version: 1.1.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - RedmineUP
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-11 00:00:00.000000000 Z
11
+ date: 2026-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -131,11 +131,56 @@ files:
131
131
  - app/views/redmineup/_money.html.erb
132
132
  - app/views/redmineup/settings.html.erb
133
133
  - config/currency_iso.json
134
+ - config/locales/ar.yml
135
+ - config/locales/az.yml
136
+ - config/locales/bg.yml
137
+ - config/locales/bs.yml
138
+ - config/locales/ca.yml
134
139
  - config/locales/cs.yml
140
+ - config/locales/da.yml
135
141
  - config/locales/de.yml
142
+ - config/locales/el.yml
143
+ - config/locales/en-GB.yml
136
144
  - config/locales/en.yml
145
+ - config/locales/es-PA.yml
137
146
  - config/locales/es.yml
147
+ - config/locales/et.yml
148
+ - config/locales/eu.yml
149
+ - config/locales/fa.yml
150
+ - config/locales/fi.yml
151
+ - config/locales/fr.yml
152
+ - config/locales/gl.yml
153
+ - config/locales/he.yml
154
+ - config/locales/hr.yml
155
+ - config/locales/hu.yml
156
+ - config/locales/id.yml
157
+ - config/locales/it.yml
158
+ - config/locales/ja.yml
159
+ - config/locales/ko.yml
160
+ - config/locales/lt.yml
161
+ - config/locales/lv.yml
162
+ - config/locales/mk.yml
163
+ - config/locales/mn.yml
164
+ - config/locales/nl.yml
165
+ - config/locales/no.yml
166
+ - config/locales/pl.yml
167
+ - config/locales/pt-BR.yml
168
+ - config/locales/pt.yml
169
+ - config/locales/ro.yml
138
170
  - config/locales/ru.yml
171
+ - config/locales/sk.yml
172
+ - config/locales/sl.yml
173
+ - config/locales/sq.yml
174
+ - config/locales/sr-YU.yml
175
+ - config/locales/sr.yml
176
+ - config/locales/sv.yml
177
+ - config/locales/ta-IN.yml
178
+ - config/locales/th.yml
179
+ - config/locales/tr.yml
180
+ - config/locales/uk.yml
181
+ - config/locales/vi.yml
182
+ - config/locales/zh-TW.yml
183
+ - config/locales/zh.yml
139
184
  - config/routes.rb
140
185
  - doc/CHANGELOG
141
186
  - doc/LICENSE.txt
@@ -235,6 +280,7 @@ files:
235
280
  - test/liquid/filters/base_filter_test.rb
236
281
  - test/liquid/filters/colors_filter_test.rb
237
282
  - test/liquid/liquid_helper.rb
283
+ - test/locales_test.rb
238
284
  - test/models/attachment.rb
239
285
  - test/models/issue.rb
240
286
  - test/models/issue_relation.rb
@@ -307,6 +353,7 @@ test_files:
307
353
  - test/liquid/filters/base_filter_test.rb
308
354
  - test/liquid/filters/colors_filter_test.rb
309
355
  - test/liquid/liquid_helper.rb
356
+ - test/locales_test.rb
310
357
  - test/models/attachment.rb
311
358
  - test/models/issue.rb
312
359
  - test/models/issue_relation.rb