Make the multiselect widget translatable

This commit is contained in:
Johannes Zellner
2021-03-31 17:21:45 +02:00
parent 92cb5f3583
commit bc45423eca
3 changed files with 20 additions and 5 deletions
+10 -3
View File
@@ -1,5 +1,12 @@
"use strict";
// -------------------------------
// WARNING
// -------------------------------
// This file is taken from https://github.com/sebastianha/angular-bootstrap-multiselect
// There are local modifications like support for translation
// -------------------------------
angular.module("ui.multiselect", ["multiselect.tpl.html"])
//from bootstrap-ui typeahead parser
.factory("optionParser", ["$parse", function($parse) {
@@ -23,7 +30,7 @@ angular.module("ui.multiselect", ["multiselect.tpl.html"])
}
};
}])
.directive("multiselect", ["$parse", "$document", "$compile", "$interpolate", "optionParser", function($parse, $document, $compile, $interpolate, optionParser) {
.directive("multiselect", ["$parse", "$document", "$compile", "$interpolate", "$translate", "optionParser", function($parse, $document, $compile, $interpolate, $translate, optionParser) {
return {
restrict: "E",
require : "ngModel",
@@ -154,7 +161,7 @@ angular.module("ui.multiselect", ["multiselect.tpl.html"])
function getHeaderText() {
if(isEmpty(modelCtrl.$modelValue)) {
scope.header = attrs.msHeader || "Select";
scope.header = attrs.msHeader || $translate.instant('main.multiselect.select');
return scope.header;
}
@@ -162,7 +169,7 @@ angular.module("ui.multiselect", ["multiselect.tpl.html"])
if(attrs.msSelected) {
scope.header = $interpolate(attrs.msSelected)(scope);
} else {
scope.header = modelCtrl.$modelValue.length + " " + "selected";
scope.header = $translate.instant('main.multiselect.selected', { n: modelCtrl.$modelValue.length });
}
} else {
var local = {};