diff --git a/muk_utils/__manifest__.py b/muk_utils/__manifest__.py
index bade4e6..b9ae057 100644
--- a/muk_utils/__manifest__.py
+++ b/muk_utils/__manifest__.py
@@ -20,7 +20,7 @@
{
"name": "MuK Utils",
"summary": """Utility Features""",
- "version": '11.0.1.0.15',
+ "version": '11.0.1.0.16',
"category": 'Extra Tools',
"license": "AGPL-3",
"website": "https://www.mukit.at",
diff --git a/muk_utils/models/res_groups.py b/muk_utils/models/res_groups.py
index e539a94..32298ac 100644
--- a/muk_utils/models/res_groups.py
+++ b/muk_utils/models/res_groups.py
@@ -62,7 +62,7 @@ class ResGroups(models.Model):
model = self.env[model_name].sudo()
if not model._abstract:
model_recs[model_name] = model.search([['groups', 'in', self.mapped('id')]])
- result = super(ResGroups, self).unlink()
+ result = super(ResGroups, self).unlink(vals)
for tuple in model_recs.items():
tuple[1].trigger_computation(['users'])
- return result
+ return result
\ No newline at end of file
diff --git a/muk_utils/tools/helper.py b/muk_utils/tools/helper.py
index 1810483..c35663f 100644
--- a/muk_utils/tools/helper.py
+++ b/muk_utils/tools/helper.py
@@ -1,55 +1,54 @@
-###################################################################################
-#
-# Copyright (C) 2018 MuK IT GmbH
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-###################################################################################
-
-import re
-import sys
-import time
-import logging
-import unicodedata
-
-_logger = logging.getLogger(__name__)
-
-#----------------------------------------------------------
-# Functions
-#----------------------------------------------------------
-
-def slugify(value):
- value = str(unicodedata.normalize('NFKD', value))
- if sys.version_info < (3,):
- value = str(value.encode('ascii', 'ignore'))
- value = str(re.sub('[^\w\s-]', '', value).strip().lower())
- value = str(re.sub('[-\s]+', '-', value))
- return value
-
-#----------------------------------------------------------
-# Decorators
-#----------------------------------------------------------
-
-def timeout(func, delay=30):
- def wrapper(*args, **kwargs):
- if args[0]._name in wrapper.timeouts:
- timeout = wrapper.timeouts[args[0]._name]
- if time.time() > timeout + delay:
- wrapper.timeouts[args[0]._name] = time.time()
- return func(*args, **kwargs)
- else:
- wrapper.timeouts[args[0]._name] = time.time()
- return func(*args, **kwargs)
- wrapper.timeouts = {}
+###################################################################################
+#
+# Copyright (C) 2018 MuK IT GmbH
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+###################################################################################
+
+import re
+import sys
+import time
+import logging
+import unicodedata
+
+_logger = logging.getLogger(__name__)
+
+#----------------------------------------------------------
+# Functions
+#----------------------------------------------------------
+
+def slugify(value):
+ value = str(unicodedata.normalize('NFKD', value))
+ value = str(value.encode('ascii', 'ignore'))
+ value = str(re.sub('[^\w\s-]', '', value).strip().lower())
+ value = str(re.sub('[-\s]+', '-', value))
+ return value
+
+#----------------------------------------------------------
+# Decorators
+#----------------------------------------------------------
+
+def timeout(func, delay=30):
+ def wrapper(*args, **kwargs):
+ if args[0]._name in wrapper.timeouts:
+ timeout = wrapper.timeouts[args[0]._name]
+ if time.time() > timeout + delay:
+ wrapper.timeouts[args[0]._name] = time.time()
+ return func(*args, **kwargs)
+ else:
+ wrapper.timeouts[args[0]._name] = time.time()
+ return func(*args, **kwargs)
+ wrapper.timeouts = {}
return wrapper
\ No newline at end of file