|
|
@ -421,6 +421,23 @@ class VariableClMigrateAdmin(UserHelper, Variable):
|
|
|
|
return map(lambda x: x if x else self.default_value, value)
|
|
|
|
return map(lambda x: x if x else self.default_value, value)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class VariableOsAvailableGroups(ReadonlyVariable):
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
Список доступных в дистрибутиве групп
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
type = 'list'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get(self):
|
|
|
|
|
|
|
|
image = self.Get('cl_image')
|
|
|
|
|
|
|
|
if image:
|
|
|
|
|
|
|
|
with image:
|
|
|
|
|
|
|
|
try:
|
|
|
|
|
|
|
|
distrPath = image.getDirectory()
|
|
|
|
|
|
|
|
return getGroups(distrPath)
|
|
|
|
|
|
|
|
except DistributiveError:
|
|
|
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
return getGroups()
|
|
|
|
|
|
|
|
|
|
|
|
class VariableClMigrateUserGroups(UserHelper, Variable):
|
|
|
|
class VariableClMigrateUserGroups(UserHelper, Variable):
|
|
|
|
"""
|
|
|
|
"""
|
|
|
|
Migrate users groups
|
|
|
|
Migrate users groups
|
|
|
@ -442,15 +459,17 @@ class VariableClMigrateUserGroups(UserHelper, Variable):
|
|
|
|
return value
|
|
|
|
return value
|
|
|
|
|
|
|
|
|
|
|
|
def getDefaultGroups(self):
|
|
|
|
def getDefaultGroups(self):
|
|
|
|
return list(set(self.defaultGroupList) & set(getGroups()))
|
|
|
|
return list(set(self.defaultGroupList) & set(self.Get('os_available_groups')))
|
|
|
|
|
|
|
|
|
|
|
|
def init(self):
|
|
|
|
def init(self):
|
|
|
|
self.label = _("Groups")
|
|
|
|
self.label = _("Groups")
|
|
|
|
|
|
|
|
|
|
|
|
def process_groups(self, values):
|
|
|
|
def process_groups(self, values):
|
|
|
|
|
|
|
|
groupslist = list(set(self.defaultGroupList)
|
|
|
|
|
|
|
|
& set(self.Get('os_available_groups')))
|
|
|
|
for value in values:
|
|
|
|
for value in values:
|
|
|
|
if value == self.default_value:
|
|
|
|
if value == self.default_value:
|
|
|
|
for i in self.defaultGroupList:
|
|
|
|
for i in groupslist:
|
|
|
|
yield i
|
|
|
|
yield i
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
yield value
|
|
|
|
yield value
|
|
|
|