Add _cfg support

develop 3.1.3
parent 7f701c1056
commit d81cf5f56f

@ -23,7 +23,7 @@ from OpenSSL import crypto
import shlex
from sudsds import MethodNotFound
from calculate.core.server.cert_cmd import getHwAddr, getIpLocal
from calculate.core.server.replace_class import printTable
from calculate.core.server.replace_class import printTable,Methods
from calculate.core.client.progressbar import Bar,Percentage,ETA,ProgressBar
from calculate.lib.cl_lang import setLocalTranslate
@ -358,7 +358,11 @@ def analysis(client, sid, s):
def get_message(client, item, sid, pid):
""" get one message by its type """
for case in switch(item.type):
if case('normal') or case('plain'):
if case('normal'):
if item.message:
Methods().printSUCCESS(item.message)
return 1
if case('plain'):
# sys.stdout.flush()
# sys.stdout.write('\x1b[1;33m' + item.message + '\033[0m')
if item.message:
@ -366,6 +370,17 @@ def get_message(client, item, sid, pid):
print p.sub('', item.message)
# print item.message
return 1
if case('pre'):
Methods().printPre(item.message)
return 1
if case('choice'):
message,answers = item.message.split('|')
answers = map(lambda x:(x[0],x[1].strip(')')),
map(lambda x:x.split('('),
answers.split(',')))
answer = Methods().askChoice(message,answers)
client.service.send_message(sid, pid, answer)
return 1
if case('progress'):
if not client.no_progress:
get_Progress(client, sid, pid, item.id)
@ -387,6 +402,9 @@ def get_message(client, item, sid, pid):
if case('question'):
send_Message(client, sid, pid, item)
return 1
if case('confirm'):
send_Confirm(client, sid, pid, item)
return 1
if case('password'):
send_Password(client, sid, pid, item)
return 1
@ -547,8 +565,26 @@ def get_Table(client, sid, pid, item):
table = client.service.get_table(sid, pid, item.id)
show_table(table, item)
def send_Confirm(client,sid,pid,item):
print
ask = ""
while not ask:
try:
ask = raw_input(item.message+ '(yes/no): ')
except KeyboardInterrupt:
ask = 'no'
print
if ask.lower() in ['n', 'no']:
ask = "no"
elif ask.lower() in ['y', 'yes']:
ask = "yes"
else:
ask = ""
client.service.send_message(sid, pid, ask)
def send_Message(client, sid, pid, item):
""" send answer to the question """
print
answer = raw_input (item.message)
client.service.send_message(sid, pid, answer)
# show_result(result)

@ -126,51 +126,54 @@ def call_method(client, args, unknown_args, wait_thread):
sys.stdout.flush()
_print (_('Unknown parameter'), i)
raise Exception(1)
param_object, steps = collect_object(client, param_object, view, args,
wait_thread,stdin_passwd=stdin_passwd)
if steps.label and hasattr (param_object, 'CheckOnly'):
param_object['CheckOnly'] = True
check_res = {}
while True:
method_result = client.service[0][method](client.sid,param_object)
if not method_result:
print _('Method not available')
return None
if method_result.ReturnedMessage[0].type and \
method_result.ReturnedMessage[0].type != "pid":
wait_thread.stop()
check_res = check_result_msg(method_result, view, check_res)
if not check_res:
return None
else:
param_object = get_param_pwd(check_res, view,
param_object, client)
else:
break
view_params = get_view_params(client, method + '_view', step = None, \
expert = True, brief = True)
view = get_view(client, method, client.sid, view_params)
wait_thread.stop()
sys.stdout.write('\r')
sys.stdout.flush()
print_brief(view, steps.label)
if not no_questions:
if not view.groups is None:
param_object, steps = collect_object(client, param_object, view, args,
wait_thread,stdin_passwd=stdin_passwd)
if steps.label and hasattr (param_object, 'CheckOnly'):
param_object['CheckOnly'] = True
check_res = {}
while True:
try:
ask = raw_input('\n' + _('Run the process? (yes/no): '))
red = '\033[31m * \033[0m'
except KeyboardInterrupt:
ask = 'no'
red = '\n'+'\033[31m * \033[0m'
if ask.lower() in ['n', 'no']:
print red + _("Manually interrupted")
method_result = client.service[0][method](client.sid,param_object)
if not method_result:
print _('Method not available')
return None
if ask.lower() in ['y', 'yes']:
if method_result.ReturnedMessage[0].type and \
method_result.ReturnedMessage[0].type != "pid":
wait_thread.stop()
check_res = check_result_msg(method_result, view, check_res)
if not check_res:
return None
else:
param_object = get_param_pwd(check_res, view,
param_object, client)
else:
break
param_object['CheckOnly'] = False
view_params = get_view_params(client, method + '_view', step = None, \
expert = True, brief = True)
view = get_view(client, method, client.sid, view_params)
wait_thread.stop()
sys.stdout.write('\r')
sys.stdout.flush()
print_brief(view, steps.label)
if not no_questions:
while True:
try:
ask = raw_input('\n' + _('Run the process? (yes/no): '))
red = '\033[31m * \033[0m'
except KeyboardInterrupt:
ask = 'no'
red = '\n'+'\033[31m * \033[0m'
if ask.lower() in ['n', 'no']:
print red + _("Manually interrupted")
return None
if ask.lower() in ['y', 'yes']:
break
param_object['CheckOnly'] = False
else:
param_object = {}
method_result = client.service[0][method](client.sid, param_object)
if not method_result:
print _('Method not available')

Loading…
Cancel
Save