|
|
|
@ -38,6 +38,11 @@ class DetailGroupInfo(ClassSerializer):
|
|
|
|
|
cl_group_name = String
|
|
|
|
|
cl_group_rights = Array(String)
|
|
|
|
|
|
|
|
|
|
class AddGroupInfo(ClassSerializer):
|
|
|
|
|
"""Parameters for method install"""
|
|
|
|
|
cl_group_add = String
|
|
|
|
|
cl_group_rights = Array(String)
|
|
|
|
|
|
|
|
|
|
def catchExcept():
|
|
|
|
|
class wrapper:
|
|
|
|
|
def __init__(self,f):
|
|
|
|
@ -116,8 +121,8 @@ class ApiWsdl:
|
|
|
|
|
i+=1
|
|
|
|
|
|
|
|
|
|
if body:
|
|
|
|
|
self.printTable(head, body, "Groups Table", fields = fields, \
|
|
|
|
|
onClick = 'detail_group')
|
|
|
|
|
self.printTable("Groups Table", head, body, fields = fields, \
|
|
|
|
|
onClick = 'detail_group', addAction = 'add_group')
|
|
|
|
|
except Exception,e:
|
|
|
|
|
for i in apply(traceback.format_exception, sys.exc_info()):
|
|
|
|
|
print i
|
|
|
|
@ -359,18 +364,8 @@ class ApiWsdl:
|
|
|
|
|
dv = datavars.DataVarsApi()
|
|
|
|
|
dv.importApi()
|
|
|
|
|
dv.flIniFile()
|
|
|
|
|
#try:
|
|
|
|
|
dv.Set('cl_group_name', info.cl_group_name)
|
|
|
|
|
dv.Set('cl_group_rights', info.cl_group_rights)
|
|
|
|
|
#except VariableError, e:
|
|
|
|
|
#errors = []
|
|
|
|
|
#mess = ''
|
|
|
|
|
#messages = e.message if type(e.message) == list else [e.message]
|
|
|
|
|
#for error in messages:
|
|
|
|
|
#mess += str(error) + '\n'
|
|
|
|
|
#errors.append(ReturnedMessage(type = 'error',
|
|
|
|
|
#field = 'cl_group_name', message = mess))
|
|
|
|
|
#return errors
|
|
|
|
|
self.set_cache(sid, 'change_group', "vars", dv, smart=False)
|
|
|
|
|
return self.changeGroupCommon(sid,info,'change_group')
|
|
|
|
|
|
|
|
|
@ -401,18 +396,13 @@ class ApiWsdl:
|
|
|
|
|
self.set_cache(sid, 'change_group', "vars", dv, smart=False)
|
|
|
|
|
return view
|
|
|
|
|
############### END CONFIRM GROUP METHODS ###################################
|
|
|
|
|
############### BEGIN DELETE GROUP METHODS ##################################
|
|
|
|
|
def delGroupCommon(self,sid,info,methodname):
|
|
|
|
|
"""
|
|
|
|
|
Install common method
|
|
|
|
|
"""
|
|
|
|
|
try:
|
|
|
|
|
dv = self.get_cache(sid,methodname,"vars")
|
|
|
|
|
#if not dv:
|
|
|
|
|
#reload(cl_install)
|
|
|
|
|
#dv = cl_install.DataVarsInstall()
|
|
|
|
|
#dv.importInstall()
|
|
|
|
|
#dv.flIniFile()
|
|
|
|
|
#initfunc(dv)
|
|
|
|
|
errors = self.check_req_params(dv, info,
|
|
|
|
|
ordered=['cl_group_name'],
|
|
|
|
|
allvars=True)
|
|
|
|
@ -434,11 +424,6 @@ class ApiWsdl:
|
|
|
|
|
return []
|
|
|
|
|
|
|
|
|
|
def del_group_meth(self, dv):
|
|
|
|
|
#ob = datavars.DataVarsApi()
|
|
|
|
|
#ob.importApi()
|
|
|
|
|
|
|
|
|
|
# set var env
|
|
|
|
|
#ob.flIniFile()
|
|
|
|
|
try:
|
|
|
|
|
group_rights_file = dv.Get('cl_api_group_rights')
|
|
|
|
|
cl_group_name = str(dv.Get('cl_group_name'))
|
|
|
|
@ -503,7 +488,7 @@ class ApiWsdl:
|
|
|
|
|
dv = datavars.DataVarsApi()
|
|
|
|
|
dv.importApi()
|
|
|
|
|
dv.flIniFile()
|
|
|
|
|
dv.Get('cl_req_id')
|
|
|
|
|
dv.Get('cl_group_name')
|
|
|
|
|
|
|
|
|
|
dv.addGroup(_("Group delete"),
|
|
|
|
|
normal=('cl_group_name', 'cl_group_rights'),
|
|
|
|
@ -512,3 +497,110 @@ class ApiWsdl:
|
|
|
|
|
view = getViewForVariables (dv,step,expert)
|
|
|
|
|
self.set_cache(sid, 'delete_group', "vars", dv, smart=False)
|
|
|
|
|
return view
|
|
|
|
|
|
|
|
|
|
############### END DELETE GROUP METHODS ####################################
|
|
|
|
|
############### BEGIN ADD GROUP METHODS #####################################
|
|
|
|
|
def addGroupCommon(self,sid,info,methodname):
|
|
|
|
|
"""
|
|
|
|
|
Install common method
|
|
|
|
|
"""
|
|
|
|
|
try:
|
|
|
|
|
dv = self.get_cache(sid,methodname,"vars")
|
|
|
|
|
errors = self.check_req_params(dv, info,
|
|
|
|
|
ordered=['cl_group_add', cl_group_rights],
|
|
|
|
|
allvars=True)
|
|
|
|
|
if errors:
|
|
|
|
|
return errors
|
|
|
|
|
request_meth = type("delGroupCommon",(self.Common,
|
|
|
|
|
ApiWsdl, object), {})
|
|
|
|
|
pid = self.startprocess(sid, target=request_meth,
|
|
|
|
|
method="add_group_meth",\
|
|
|
|
|
args_proc = (dv,))
|
|
|
|
|
returnmess = ReturnedMessage(type = 'pid', message = pid)
|
|
|
|
|
returnmess.type = "pid"
|
|
|
|
|
returnmess.message = pid
|
|
|
|
|
dv = self.clear_cache(sid,methodname)
|
|
|
|
|
return [returnmess]
|
|
|
|
|
finally:
|
|
|
|
|
if dv:
|
|
|
|
|
self.set_cache(sid,methodname,"vars",dv,smart=False)
|
|
|
|
|
return []
|
|
|
|
|
|
|
|
|
|
def add_group_meth(self, dv):
|
|
|
|
|
try:
|
|
|
|
|
group_rights_file = dv.Get('cl_api_group_rights')
|
|
|
|
|
cl_group_add = str(dv.Get('cl_group_add'))
|
|
|
|
|
|
|
|
|
|
self.printSUCCESS ("cl_group_add = %s" %cl_group_add)
|
|
|
|
|
self.printSUCCESS ("cl_group_rights = %s" %','.join(cl_group_rights))
|
|
|
|
|
return True
|
|
|
|
|
#result = []
|
|
|
|
|
#deleted_flag = False
|
|
|
|
|
#for line in readLinesFile(group_rights_file):
|
|
|
|
|
#if line.startswith('#') or not line:
|
|
|
|
|
#result.append(line)
|
|
|
|
|
#continue
|
|
|
|
|
#words = line.split(' ',1)
|
|
|
|
|
## first word in line equal name input method
|
|
|
|
|
#if words[0] != cl_group_name:
|
|
|
|
|
#result.append(line)
|
|
|
|
|
#else:
|
|
|
|
|
#deleted_flag = True
|
|
|
|
|
|
|
|
|
|
#fd = open (group_rights_file, 'w')
|
|
|
|
|
#for lines in result:
|
|
|
|
|
#fd.write(lines + '\n')
|
|
|
|
|
#fd.close()
|
|
|
|
|
|
|
|
|
|
#if deleted_flag:
|
|
|
|
|
#self.printSUCCESS ('<b>'+_('Group %s deleted') %cl_group_name \
|
|
|
|
|
#+ '!</b>')
|
|
|
|
|
#else:
|
|
|
|
|
#self.printSUCCESS ('<b>'+_('Group %s is not deleted') \
|
|
|
|
|
#%cl_group_name + '!</b>')
|
|
|
|
|
#return True
|
|
|
|
|
|
|
|
|
|
except KeyboardInterrupt:
|
|
|
|
|
self.endTask()
|
|
|
|
|
return False
|
|
|
|
|
except Exception, e:
|
|
|
|
|
msg = e.message
|
|
|
|
|
if not msg:
|
|
|
|
|
msg = e.reason
|
|
|
|
|
self.printERROR (_("Exception!%s") %msg)
|
|
|
|
|
return False
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@rpc(Integer, AddGroupInfo, _returns = Array(ReturnedMessage))
|
|
|
|
|
@Dec.check_permissions(["edit-group"])
|
|
|
|
|
#@Dec.console('cl-show-request')
|
|
|
|
|
#@Dec.gui(_('Api'),_('Delete Request'),'view-certificate-import')
|
|
|
|
|
@catchExcept()
|
|
|
|
|
def add_group ( self, sid, info):
|
|
|
|
|
#dv = self.get_cache(sid,'delete_request',"vars")
|
|
|
|
|
#if not dv:
|
|
|
|
|
dv = datavars.DataVarsApi()
|
|
|
|
|
dv.importApi()
|
|
|
|
|
dv.flIniFile()
|
|
|
|
|
dv.Set('cl_group_add', info.cl_group_add)
|
|
|
|
|
dv.Set('cl_group_rights', info.cl_group_rights)
|
|
|
|
|
self.set_cache(sid, 'add_group', "vars", dv, smart=False)
|
|
|
|
|
return self.delGroupCommon(sid,info,'add_group')
|
|
|
|
|
|
|
|
|
|
@rpc(Integer, Integer, Boolean, _returns = ViewInfo)
|
|
|
|
|
@catchExcept()
|
|
|
|
|
def add_group_view (self, sid, step, expert):
|
|
|
|
|
dv = self.get_cache(sid, 'add_group', 'dv')
|
|
|
|
|
if not dv:
|
|
|
|
|
dv = datavars.DataVarsApi()
|
|
|
|
|
dv.importApi()
|
|
|
|
|
dv.flIniFile()
|
|
|
|
|
dv.Get('cl_group_name')
|
|
|
|
|
|
|
|
|
|
dv.addGroup(_("Group add"),
|
|
|
|
|
normal=('cl_group_add', 'cl_group_rights'),
|
|
|
|
|
next_label=_("Add"))
|
|
|
|
|
|
|
|
|
|
view = getViewForVariables (dv,step,expert)
|
|
|
|
|
self.set_cache(sid, 'add_group', "vars", dv, smart=False)
|
|
|
|
|
return view
|
|
|
|
|