1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# coding: utf-8
'''
Created on 22.10.2014
@author: m.prudyvus
'''
import json
from common.sysfunctions import toHexForXml
from workflow.processUtils import ActivitiObject
from ru.curs.celesta.showcase.utils import XMLJSONConverter
from workflow.processUtils import ActivitiObject, getBase64Image
try:
from ru.curs.showcase.core.jython import JythonDTO
except:
from ru.curs.celesta.showcase import JythonDTO
def webtextData(context, main=None, add=None, filterinfo=None,
session=None, elementId=None):
activiti = ActivitiObject()
taskService = activiti.taskService;
session = json.loads(session)['sessioncontext']
drawInstance = False
drawProcess = False
for params in session['urlparams']['urlparam']:
if params['@name'] == 'processId':
procInstId = params['@value'][0]
drawInstance = True
if params['@name'] == 'processKey':
procKey = params['@value'][0]
drawProcess = True
if drawInstance:
data = {"image":{"@align":"center",
"@src": u"data:image/png;base64," + getBase64Image(activiti.getExecutionModel(procInstId))}}
elif drawProcess:
data = {"image":{"@align":"center",
"@src": u"data:image/png;base64," + getBase64Image(activiti.getDeployedProcessModel(procKey))}}
return JythonDTO(XMLJSONConverter.jsonToXml(json.dumps(data)), None)