Hi all,
I was find simple solution how to pass variables into DTML method of
ZGDChart product. It was discussed few years ago via SESSION - see http://mail.zope.org/pipermail/zope/2003-April/135196.html
Note, that for my old Zope 2.5.1 is
functional version ZGDChart-0.6.4babel.tgz only
So here are DTML document from where we
calling image:
<dtml-if users_id>
<dtml-elif user_id>
<dtml-call
"REQUEST.set('users_id', [])">
<dtml-call
"users_id.append(user_id)">
<dtml-else>
<dtml-call
"REQUEST.set('users_id', [0])">
</dtml-if>
<dtml-call
"REQUEST.set('temp_labels', [])">
<dtml-call
"REQUEST.set('temp_data1', [])">
<dtml-call
"REQUEST.set('temp_data2', [])">
<dtml-in ZSQL_query>
<dtml-call
"temp_labels.append(month + ' ' + year)">
<dtml-call
"temp_data1.append((time1 or 0.00000) / _.len(users_id) ))">
<dtml-call
"temp_data2.append((time2 or 0.00000) / _.len(users_id) ))">
</dtml-in>
<img src="ZGDChart_graph/?data0=<dtml-var
"_.string.join(temp_labels, ',') ">&data1=<dtml-var
"_.string.join(temp_data1, ',') ">&data2=<dtml-var
"_.string.join(temp_data2, ',') ">">
-----------
And here are DTML method from inside of
ZDGChart_graph:
<dtml-call
"REQUEST.set('temp_labels', _.string.split(data0, ',' ) )">
<dtml-call
"REQUEST.set('x_data1', _.string.split(data1, ',' ) )">
<dtml-call
"REQUEST.set('x_data2', _.string.split(data2, ',' ) )">
<dtml-call
"REQUEST.set('temp_data1', [] )">
<dtml-call
"REQUEST.set('temp_data2', [] )">
<dtml-in x_data1 prefix=cislo>
<dtml-call
"temp_data1.append(_.float(cislo_item))">
</dtml-in>
<dtml-in x_data2 prefix=cislo>
<dtml-call
"temp_data2.append(_.float(cislo_item))">
</dtml-in>
<dtml-return "(temp_labels,
temp_data1, temp_data2)">
Happy using!
Regards, JL.