aboutsummaryrefslogtreecommitdiff
path: root/resources/assets/javascripts/lib
diff options
context:
space:
mode:
authorRon Lucke <lucke@elan-ev.de>2025-01-15 15:55:58 +0000
committerRon Lucke <lucke@elan-ev.de>2025-01-15 15:55:58 +0000
commit0976104ecb76e24d9b7ff0891f40dcebde1e13f8 (patch)
treebc380ab9c0ecbb12ce1e5c6940180dfd13b3cb75 /resources/assets/javascripts/lib
parent3c29dd6d1a1b903de26e4108120bc3d2d40e49a2 (diff)
Design der Formulare inkonsistent
Closes #5091 Merge request studip/studip!3828
Diffstat (limited to 'resources/assets/javascripts/lib')
-rw-r--r--resources/assets/javascripts/lib/i18n.js14
1 files changed, 8 insertions, 6 deletions
diff --git a/resources/assets/javascripts/lib/i18n.js b/resources/assets/javascripts/lib/i18n.js
index 694716f..0ee07e9 100644
--- a/resources/assets/javascripts/lib/i18n.js
+++ b/resources/assets/javascripts/lib/i18n.js
@@ -1,9 +1,11 @@
const i18n = {
init: function(root) {
$('.i18n_group', root).each(function() {
- var languages = $(this).children('.i18n'),
- select = $('<select tabindex="-1">')
- .addClass('i18n')
+ let languages = $(this).children('.i18n');
+ const isInput = $(this).find('input').length > 0;
+ const selectClasses = isInput ? 'i18n i18n-input' : 'i18n i18n-textarea';
+ let select = $('<select tabindex="0">')
+ .addClass(selectClasses)
.css(
'background-image',
$(languages)
@@ -11,8 +13,8 @@ const i18n = {
.data('icon')
);
select.change(function() {
- var opt = $(this).find('option:selected'),
- index = opt.index();
+ let opt = $(this).find('option:selected');
+ let index = opt.index();
languages.not(':eq(' + index + ')').hide();
languages
.eq(index)
@@ -30,7 +32,7 @@ const i18n = {
languages.not(':eq(0)').hide();
$('div.i18n input[required], div.i18n textarea[required]', this).on('invalid', function() {
- var element = $(this).closest('.i18n');
+ let element = $(this).closest('.i18n');
element
.siblings('select')
.val($(element).data('lang'))