1 |
<?php |
---|
2 |
/** |
---|
3 |
* OWTChart Widget class |
---|
4 |
* |
---|
5 |
* @project CWC2 |
---|
6 |
* @revision $Id: |
---|
7 |
* @purpose OWTChart Widget class |
---|
8 |
* @author DM Solutions Group (sfournier@dmsolutions.ca) |
---|
9 |
* @copyright |
---|
10 |
* <b>Copyright (c) 2002, DM Solutions Group Inc.</b> |
---|
11 |
* Permission is hereby granted, free of charge, to any person obtaining a |
---|
12 |
* copy of this software and associated documentation files (the "Software"), |
---|
13 |
* to deal in the Software without restriction, including without limitation |
---|
14 |
* the rights to use, copy, modify, merge, publish, distribute, sublicense, |
---|
15 |
* and/or sell copies of the Software, and to permit persons to whom the |
---|
16 |
* Software is furnished to do so, subject to the following conditions: |
---|
17 |
* |
---|
18 |
* The above copyright notice and this permission notice shall be included |
---|
19 |
* in all copies or substantial portions of the Software. |
---|
20 |
* |
---|
21 |
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
---|
22 |
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
---|
23 |
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
---|
24 |
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
---|
25 |
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
---|
26 |
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
---|
27 |
* DEALINGS IN THE SOFTWARE. |
---|
28 |
*/ |
---|
29 |
|
---|
30 |
|
---|
31 |
include_once(dirname(__FILE__)."/../Widget.php"); |
---|
32 |
|
---|
33 |
/** |
---|
34 |
* OWTChartWidget |
---|
35 |
* |
---|
36 |
* @desc Widget That build a OWTChart url with specified parameters |
---|
37 |
*/ |
---|
38 |
class OWTChart extends CWCWidget |
---|
39 |
{ |
---|
40 |
var $mszBaseOWT = "/cgi-cwc/owtchart"; |
---|
41 |
|
---|
42 |
var $mszSharedResourceName = ""; |
---|
43 |
|
---|
44 |
var $mnWidth = 300; |
---|
45 |
var $mnHeight = 200; |
---|
46 |
var $mszImageType = "PNG"; |
---|
47 |
var $mszTitle = "Default Chart Name"; |
---|
48 |
var $mszBGColor = "FFFFFF"; |
---|
49 |
var $mbTransBG = false; |
---|
50 |
var $mszLineColor = "0000FF"; |
---|
51 |
var $mbGrid = false; |
---|
52 |
var $mszGridColor = "CCCCCC"; |
---|
53 |
var $mnJPEGQuality = 78; |
---|
54 |
var $mszRTitle = ""; |
---|
55 |
var $mszLTitle = ""; |
---|
56 |
var $mszTitleColor = "0F0F0F"; |
---|
57 |
var $mszTitleFont = "M"; |
---|
58 |
var $mbXAxis = true; |
---|
59 |
var $mbYAxis = true; |
---|
60 |
var $mbYAxis2 = false; |
---|
61 |
var $mszXTitle = ""; |
---|
62 |
var $mszXTitleColor = "0F0F0F"; |
---|
63 |
var $mszXTitleFont = "M"; |
---|
64 |
var $mszXLabelFont = "S"; |
---|
65 |
var $mszXLabelColor = "ADADAD"; |
---|
66 |
var $mszXLabelSpacing = "5"; |
---|
67 |
var $mszYLabelFont = "S"; |
---|
68 |
var $mszYLabelColor = "ADADAD"; |
---|
69 |
var $mszYLabelFmt = ""; |
---|
70 |
var $mszYLabelFmt2 = ""; |
---|
71 |
var $mszYTitle = ""; |
---|
72 |
var $mszYTitleColor = "0F0F0F"; |
---|
73 |
var $mszYTitleFont = "M"; |
---|
74 |
var $mszYTitle2 = ""; |
---|
75 |
var $mszYTitleColor2 = "0F0F0F"; |
---|
76 |
var $mszYTitleFont2 = "M"; |
---|
77 |
var $mszYScaleType = "LINEAR"; |
---|
78 |
var $mnYMin = ""; |
---|
79 |
var $mnYMax = ""; |
---|
80 |
var $mnYMin2 = ""; |
---|
81 |
var $mnYMax2 = ""; |
---|
82 |
var $mszPiePCTType = "RIGHT"; |
---|
83 |
var $mszPiePCTFmt = ""; |
---|
84 |
var $mnPieRadius = ""; |
---|
85 |
var $mszPieLabelFont = "S"; |
---|
86 |
var $mnBarWidth = "75"; |
---|
87 |
var $mbBarLabels = false; |
---|
88 |
var $mszBarLabelFmt = ""; |
---|
89 |
var $mszLineStyles = ""; |
---|
90 |
var $mszHLCStyle = ""; |
---|
91 |
var $mnHLCCapWidth = "25"; |
---|
92 |
var $mn3DDepth = "5"; |
---|
93 |
var $mn3DAngle = "45"; |
---|
94 |
var $mszPlotColor = "0000FF"; |
---|
95 |
var $mszExtColors = ""; |
---|
96 |
var $mszVolColor = "0000FF"; |
---|
97 |
var $mszStackType = "DEPTH"; |
---|
98 |
var $mszLineColor = "999999"; |
---|
99 |
|
---|
100 |
/** |
---|
101 |
* OWTChartWidget |
---|
102 |
* |
---|
103 |
* Constructor method for the OWTChart widget. |
---|
104 |
*/ |
---|
105 |
function OWTChart() |
---|
106 |
{ |
---|
107 |
// invoke constructor of parent |
---|
108 |
parent::CWCWidget(); |
---|
109 |
|
---|
110 |
// set the description for this widget |
---|
111 |
$this->szWidgetDescription = <<<EOT |
---|
112 |
OWTChartWidget is a widget that build a OWTChart url with specified parameters. |
---|
113 |
EOT; |
---|
114 |
|
---|
115 |
// Mandatory parameters |
---|
116 |
$this->maAttributes["SHAREDRESOURCENAME"] = new StringAttribute( "SHAREDRESOURCENAME", true); |
---|
117 |
$this->maAttributes["CHARTTYPE"] = new StringAttribute( "CHARTTYPE", false, |
---|
118 |
array("LINE", "AREA", "BAR", "FLOATINGBAR", "HILOCLOSE", "PIE", "HBAR", "H2BAR")); |
---|
119 |
$this->maAttributes["VALS"] = new StringAttribute( "VALS", true); |
---|
120 |
|
---|
121 |
// Optional parameters |
---|
122 |
$this->maAttributes["WIDTH"] = new IntegerAttribute("WIDTH", false); |
---|
123 |
$this->maAttributes["HEIGHT"] = new IntegerAttribute("HEIGHT", false); |
---|
124 |
$this->maAttributes["BGCOLOR"] = new StringAttribute( "BGCOLOR", false); |
---|
125 |
$this->maAttributes["TRANSBG"] = new BooleanAttribute( "TRANSBG", false); |
---|
126 |
$this->maAttributes["LINECOLOR"] = new StringAttribute( "LINECOLOR", false); |
---|
127 |
$this->maAttributes["GRID"] = new BooleanAttribute( "GRID", false); |
---|
128 |
$this->maAttributes["GRIDCOLOR"] = new StringAttribute( "GRIDCOLOR", false); |
---|
129 |
$this->maAttributes["IMAGETYPE"] = new StringAttribute( "IMAGETYPE", false, |
---|
130 |
array("GIF", "PNG", "JPEG", "WBMP")); |
---|
131 |
$this->maAttributes["JPEG_QUALITY"] = new IntegerAttribute("JPEG_QUALITY", false); |
---|
132 |
|
---|
133 |
// 3d options |
---|
134 |
$this->maAttributes["3D"] = new BooleanAttribute( "3D", false); |
---|
135 |
$this->maAttributes["3DDEPTH"] = new IntegerAttribute("3DDEPTH", false); |
---|
136 |
$this->maAttributes["3DANGLE"] = new IntegerAttribute("3DANGLE", false); |
---|
137 |
|
---|
138 |
// Value colors |
---|
139 |
$this->maAttributes["PLOTCOLOR"] = new StringAttribute( "PLOTCOLOR", false); |
---|
140 |
$this->maAttributes["SETCOLORS"] = new StringAttribute( "SETCOLORS", false); |
---|
141 |
$this->maAttributes["EXTCOLORS"] = new StringAttribute( "EXTCOLORS", false); |
---|
142 |
$this->maAttributes["VOLCOLOR"] = new StringAttribute( "VOLCOLOR", false); |
---|
143 |
|
---|
144 |
// Chart title options |
---|
145 |
$this->maAttributes["TITLE"] = new StringAttribute( "TITLE", false); |
---|
146 |
$this->maAttributes["RTITLE"] = new StringAttribute( "RTITLE", false); |
---|
147 |
$this->maAttributes["LTITLE"] = new StringAttribute( "LTITLE", false); |
---|
148 |
$this->maAttributes["TITLECOLOR"] = new StringAttribute( "TITLECOLOR", false); |
---|
149 |
$this->maAttributes["TITLEFONT"] = new StringAttribute( "TITLEFONT", false); |
---|
150 |
|
---|
151 |
// X-Axis options |
---|
152 |
$this->maAttributes["XAXIS"] = new BooleanAttribute( "XAXIS", false); |
---|
153 |
$this->maAttributes["XTITLE"] = new StringAttribute( "XTITLE", false); |
---|
154 |
$this->maAttributes["XTITLEFONT"] = new StringAttribute( "XTITLEFONT", false); |
---|
155 |
$this->maAttributes["XTITLECOLOR"] = new StringAttribute( "XTITLECOLOR", false); |
---|
156 |
$this->maAttributes["XLABELS"] = new StringAttribute( "XLABELS", false); |
---|
157 |
$this->maAttributes["XLABELFONT"] = new StringAttribute( "XLABELFONT", false); |
---|
158 |
$this->maAttributes["XLABELCOLOR"] = new StringAttribute( "XLABELCOLOR", false); |
---|
159 |
$this->maAttributes["XLABELSPACING"] = new IntegerAttribute( "XLABELSPACING", false); |
---|
160 |
|
---|
161 |
// Y-Axis options |
---|
162 |
$this->maAttributes["YAXIS"] = new BooleanAttribute( "YAXIS", false); |
---|
163 |
$this->maAttributes["YSCALETYPE"] = new StringAttribute( "YSCALETYPE", false, |
---|
164 |
array("LINEAR","LOG")); |
---|
165 |
$this->maAttributes["YMIN"] = new IntegerAttribute( "YMIN", false); |
---|
166 |
$this->maAttributes["YMAX"] = new IntegerAttribute( "YMAX", false); |
---|
167 |
$this->maAttributes["YTITLE"] = new StringAttribute( "YTITLE", false); |
---|
168 |
$this->maAttributes["YTITLEFONT"] = new StringAttribute( "YTITLEFONT", false); |
---|
169 |
$this->maAttributes["YTITLECOLOR"] = new StringAttribute( "YTITLECOLOR", false); |
---|
170 |
$this->maAttributes["YLABELFONT"] = new StringAttribute( "YLABELFONT", false); |
---|
171 |
$this->maAttributes["YLABELCOLOR"] = new StringAttribute( "YLABELCOLOR", false); |
---|
172 |
$this->maAttributes["YAXIS2"] = new BooleanAttribute( "YAXIS2", false); |
---|
173 |
$this->maAttributes["YMIN2"] = new IntegerAttribute( "YMIN2", false); |
---|
174 |
$this->maAttributes["YMAX2"] = new IntegerAttribute( "YMAX2", false); |
---|
175 |
$this->maAttributes["YTITLE2"] = new StringAttribute( "YTITLE2", false); |
---|
176 |
$this->maAttributes["YTITLE2COLOR"] = new StringAttribute( "YTITLE2COLOR", false); |
---|
177 |
$this->maAttributes["YLABEL2FONT"] = new StringAttribute( "YLABEL2FONT", false); |
---|
178 |
$this->maAttributes["YLABELFMT"] = new StringAttribute( "YLABELFMT", false); |
---|
179 |
$this->maAttributes["YLABEL2FMT"] = new StringAttribute( "YLABEL2FMT", false); |
---|
180 |
|
---|
181 |
// Pie chart specific options |
---|
182 |
$this->maAttributes["PIEPCTTYPE"] = new StringAttribute( "PIEPCTTYPE", false, |
---|
183 |
array("NONE","ABOVE","BELOW","RIGHT","LEFT")); |
---|
184 |
$this->maAttributes["PIEPCTFMT"] = new StringAttribute( "PIEPCTFMT", false); |
---|
185 |
$this->maAttributes["PIERADIUS"] = new IntegerAttribute( "PIERADIUS", false); |
---|
186 |
$this->maAttributes["PIELABELFONT"] = new StringAttribute( "PIELABELFONT", false); |
---|
187 |
|
---|
188 |
// Bar chart specific options |
---|
189 |
$this->maAttributes["STACKTYPE"] = new StringAttribute( "STACKTYPE", false, |
---|
190 |
array("DEPTH","SUM", "BESIDE","LAYER")); |
---|
191 |
$this->maAttributes["BARWIDTH"] = new IntegerAttribute( "BARWIDTH", false); |
---|
192 |
$this->maAttributes["BARLABELS"] = new BooleanAttribute( "BARLABELS", false); |
---|
193 |
$this->maAttributes["BARLABELFMT"] = new StringAttribute( "BARLABELFMT", false); |
---|
194 |
|
---|
195 |
// Line chart specific options |
---|
196 |
$this->maAttributes["LINESTYLES"] = new StringAttribute( "LINESTYLES", false); |
---|
197 |
|
---|
198 |
// Hi lo close chart specific options |
---|
199 |
$this->maAttributes["HLCSTYLE"] = new StringAttribute( "HLCSTYLE", false); |
---|
200 |
$this->maAttributes["HLCCAPWIDTH"] = new IntegerAttribute( "HLCCAPWIDTH", false); |
---|
201 |
|
---|
202 |
$this->mnPriority = PRIORITY_LOW; |
---|
203 |
$this->mnMaturityLevel = MATURITY_BETA; |
---|
204 |
} |
---|
205 |
|
---|
206 |
function InitDefaults() |
---|
207 |
{ |
---|
208 |
// Mandatory parameters |
---|
209 |
if(isset($this->maParams["SHAREDRESOURCENAME"])) |
---|
210 |
$this->mszSharedResourceName = $this->maParams["SHAREDRESOURCENAME"]; |
---|
211 |
if(isset($this->maParams["CHARTTYPE"])) |
---|
212 |
$this->mszChartType = $this->maParams["CHARTTYPE"]; |
---|
213 |
if(isset($this->maParams["VALS"])) |
---|
214 |
$this->mszVals = $this->maParams["VALS"]; |
---|
215 |
if(isset($this->maParams["WIDTH"])) |
---|
216 |
$this->mnWidth = $this->maParams["WIDTH"]; |
---|
217 |
if(isset($this->maParams["HEIGHT"])) |
---|
218 |
$this->mnHeight = $this->maParams["HEIGHT"]; |
---|
219 |
if(isset($this->maParams["BGCOLOR"])) |
---|
220 |
$this->mszBGColor = $this->maParams["BGCOLOR"]; |
---|
221 |
if(isset($this->maParams["TRANSBG"])) |
---|
222 |
$this->mbTransBG = (strtoupper($this->maParams["TRANSBG"]) == "TRUE") ? true : false; |
---|
223 |
if(isset($this->maParams["LINECOLOR"])) |
---|
224 |
$this->mszLineColor = $this->maParams["LINECOLOR"]; |
---|
225 |
if(isset($this->maParams["GRID"])) |
---|
226 |
$this->mbGrid = (strtoupper($this->maParams["GRID"]) == "TRUE") ? true : false; |
---|
227 |
if(isset($this->maParams["GRIDCOLOR"])) |
---|
228 |
$this->mszGridColor = $this->maParams["GRIDCOLOR"]; |
---|
229 |
if(isset($this->maParams["IMAGETYPE"])) |
---|
230 |
$this->mszImageType = $this->maParams["IMAGETYPE"]; |
---|
231 |
if(isset($this->maParams["JPEG_QUALITY"])) |
---|
232 |
$this->mnJPEGQuality = $this->maParams["JPEG_QUALITY"]; |
---|
233 |
if(isset($this->maParams["3D"])) |
---|
234 |
$this->mb3D = (strtoupper($this->maParams["3D"]) == "TRUE") ? true : false; |
---|
235 |
if(isset($this->maParams["3DDEPTH"])) |
---|
236 |
$this->mn3DDepth = $this->maParams["3DDEPTH"]; |
---|
237 |
if(isset($this->maParams["3DANGLE"])) |
---|
238 |
$this->mn3DAngle = $this->maParams["3DANGLE"]; |
---|
239 |
if(isset($this->maParams["PLOTCOLOR"])) |
---|
240 |
$this->mszPlotColor = $this->maParams["PLOTCOLOR"]; |
---|
241 |
if(isset($this->maParams["SETCOLORS"])) |
---|
242 |
$this->mszSetColors = $this->maParams["SETCOLORS"]; |
---|
243 |
if(isset($this->maParams["EXTCOLORS"])) |
---|
244 |
$this->mszExtColors = $this->maParams["EXTCOLORS"]; |
---|
245 |
if(isset($this->maParams["VOLCOLOR"])) |
---|
246 |
$this->mszVolColor = $this->maParams["VOLCOLOR"]; |
---|
247 |
if(isset($this->maParams["TITLE"])) |
---|
248 |
$this->mszTitle = $this->maParams["TITLE"]; |
---|
249 |
if(isset($this->maParams["RTITLE"])) |
---|
250 |
$this->mszRTitle = $this->maParams["RTITLE"]; |
---|
251 |
if(isset($this->maParams["LTITLE"])) |
---|
252 |
$this->mszLTitle = $this->maParams["LTITLE"]; |
---|
253 |
if(isset($this->maParams["TITLECOLOR"])) |
---|
254 |
$this->mszTitleColor = $this->maParams["TITLECOLOR"]; |
---|
255 |
if(isset($this->maParams["TITLEFONT"])) |
---|
256 |
$this->mszTitleFont = $this->maParams["TITLEFONT"]; |
---|
257 |
|
---|
258 |
// X-Axis options |
---|
259 |
if (isset($this->maParams["XAXIS"])) |
---|
260 |
$this->mbXAxis = (strtoupper($this->maParams["XAXIS"]) == "TRUE") ? true : false; |
---|
261 |
if (isset($this->maParams["XTITLE"])) |
---|
262 |
$this->mszXTitle = $this->maParams["XTITLE"]; |
---|
263 |
if (isset($this->maParams["XTITLEFONT"])) |
---|
264 |
$this->mszXTitleFont = $this->maParams["XTITLEFONT"]; |
---|
265 |
if (isset($this->maParams["XTITLECOLOR"])) |
---|
266 |
$this->mszXTitleColor = $this->maParams["XTITLECOLOR"]; |
---|
267 |
if (isset($this->maParams["XLABELS"])) |
---|
268 |
$this->mszXLabels = $this->maParams["XLABELS"]; |
---|
269 |
if (isset($this->maParams["XLABELFONT"])) |
---|
270 |
$this->mszXLabelFont = $this->maParams["XLABELFONT"]; |
---|
271 |
if (isset($this->maParams["XLABELCOLOR"])) |
---|
272 |
$this->mszXLabelColor = $this->maParams["XLABELCOLOR"]; |
---|
273 |
if (isset($this->maParams["XLABELSPACING"])) |
---|
274 |
$this->mnXLabelSpacing = $this->maParams["XLABELSPACING"]; |
---|
275 |
|
---|
276 |
// Y-Axis options |
---|
277 |
if (isset($this->maParams["YAXIS"])) |
---|
278 |
$this->mbYAxis = (strtoupper($this->maParams["YAXIS"]) == "TRUE") ? true : false; |
---|
279 |
if (isset($this->maParams["YSCALETYPE"])) |
---|
280 |
$this->mszYScaleType = $this->maParams["YSCALETYPE"]; |
---|
281 |
if (isset($this->maParams["YMIN"])) |
---|
282 |
$this->mnYMin = $this->maParams["YMIN"]; |
---|
283 |
if (isset($this->maParams["YMAX"])) |
---|
284 |
$this->mnYMax = $this->maParams["YMAX"]; |
---|
285 |
if (isset($this->maParams["YTITLE"])) |
---|
286 |
$this->mszYTitle = $this->maParams["YTITLE"]; |
---|
287 |
if (isset($this->maParams["YTITLEFONT"])) |
---|
288 |
$this->mszYTitleFont = $this->maParams["YTITLEFONT"]; |
---|
289 |
if (isset($this->maParams["YTITLECOLOR"])) |
---|
290 |
$this->mszYTitleColor = $this->maParams["YTITLECOLOR"]; |
---|
291 |
if (isset($this->maParams["YLABELFONT"])) |
---|
292 |
$this->mszYLabelFont = $this->maParams["YLABELFONT"]; |
---|
293 |
if (isset($this->maParams["YLABELCOLOR"])) |
---|
294 |
$this->mszYLabelColor = $this->maParams["YLABELCOLOR"]; |
---|
295 |
if (isset($this->maParams["YAXIS2"])) |
---|
296 |
$this->mbYAxis2 = (strtoupper($this->maParams["YAXIS2"]) == "TRUE") ? true : false; |
---|
297 |
if (isset($this->maParams["YMIN2"])) |
---|
298 |
$this->mnYMin2 = $this->maParams["YMIN2"]; |
---|
299 |
if (isset($this->maParams["YMAX2"])) |
---|
300 |
$this->mnYMax2 = $this->maParams["YMAX2"]; |
---|
301 |
if (isset($this->maParams["YTITLE2"])) |
---|
302 |
$this->mszYTitle2 = $this->maParams["YTITLE2"]; |
---|
303 |
if (isset($this->maParams["YTITLE2COLOR"])) |
---|
304 |
$this->mszYTitle2Color = $this->maParams["YTITLE2COLOR"]; |
---|
305 |
if (isset($this->maParams["YLABEL2FONT"])) |
---|
306 |
$this->mszYLabel2Font = $this->maParams["YLABEL2FONT"]; |
---|
307 |
if (isset($this->maParams["YLABELFMT"])) |
---|
308 |
$this->mszYLabelFMT = $this->maParams["YLABELFMT"]; |
---|
309 |
if (isset($this->maParams["YLABEL2FMT"])) |
---|
310 |
$this->mszYLabel2FMT = $this->maParams["YLABEL2FMT"]; |
---|
311 |
|
---|
312 |
// Pie chart specific options |
---|
313 |
if (isset($this->maParams["PIEPCTTYPE"])) |
---|
314 |
$this->mszPiePCTType = $this->maParams["PIEPCTTYPE"]; |
---|
315 |
if (isset($this->maParams["PIEPCTFMT"])) |
---|
316 |
$this->mszPiePCTFMT = $this->maParams["PIEPCTFMT"]; |
---|
317 |
if (isset($this->maParams["PIERADIUS"])) |
---|
318 |
$this->mnPieRadius = $this->maParams["PIERADIUS"]; |
---|
319 |
if (isset($this->maParams["PIELABELFONT"])) |
---|
320 |
$this->mszPieLabelFont = $this->maParams["PIELABELFONT"]; |
---|
321 |
|
---|
322 |
// Bar chart specific options |
---|
323 |
if (isset($this->maParams["STACKTYPE"])) |
---|
324 |
$this->mszStackType = $this->maParams["STACKTYPE"]; |
---|
325 |
if (isset($this->maParams["BARWIDTH"])) |
---|
326 |
$this->mnBarWidth = $this->maParams["BARWIDTH"]; |
---|
327 |
if(isset($this->maParams["BARLABELS"])) |
---|
328 |
$this->mbBarLabels = (strtoupper($this->maParams["BARLABELS"]) == "TRUE") ? true : false; |
---|
329 |
if(isset($this->maParams["BARLABELFMT"])) |
---|
330 |
$this->mszBarLabelFmt = $this->maParams["BARLABELFMT"]; |
---|
331 |
|
---|
332 |
// Line chart specific options |
---|
333 |
if (isset($this->maParams["LINESTYLES"])) |
---|
334 |
$this->mszLineStyles = $this->maParams["LINESTYLES"]; |
---|
335 |
|
---|
336 |
// Hi lo close chart specific options |
---|
337 |
if (isset($this->maParams["HLCSTYLE"])) |
---|
338 |
$this->mszHLCStyle = $this->maParams["HLCSTYLE"]; |
---|
339 |
if (isset($this->maParams["HLCCAPWIDTH"])) |
---|
340 |
$this->mnHLCCapWidth = $this->maParams["HLCCAPWIDTH"]; |
---|
341 |
|
---|
342 |
return parent::InitDefaults(); |
---|
343 |
} |
---|
344 |
|
---|
345 |
/** |
---|
346 |
* DrawPublish |
---|
347 |
* |
---|
348 |
* Return the HTML code using the name in the map file and the |
---|
349 |
* parameters of the CWC tag. |
---|
350 |
*/ |
---|
351 |
function DrawPublish() |
---|
352 |
{ |
---|
353 |
$oSR =& $this->maSharedResourceWidgets[$this->mszSharedResourceName]; |
---|
354 |
|
---|
355 |
$aParam = array(); |
---|
356 |
$this->mnNumPoints = 0; |
---|
357 |
foreach($oSR as $aRow) |
---|
358 |
{ |
---|
359 |
foreach($aRow as $szKey => $szVal) |
---|
360 |
{ |
---|
361 |
if (!isset($aParam[$szKey])) |
---|
362 |
$aParam[$szKey] = array(); |
---|
363 |
|
---|
364 |
array_push($aParam[$szKey], $szVal); |
---|
365 |
} |
---|
366 |
$this->mnNumPoints++; |
---|
367 |
} |
---|
368 |
|
---|
369 |
$aVals = explode("!", $this->mszVals); |
---|
370 |
$this->mnNumSets = 0; |
---|
371 |
foreach($aVals as $szVals) |
---|
372 |
{ |
---|
373 |
$szVals = substr($szVals, 1, -1); |
---|
374 |
if (isset($aParam[$szVals])) |
---|
375 |
{ |
---|
376 |
$this->mszVals = str_replace("[".$szVals."]", implode("!", $aParam[$szVals]), $this->mszVals); |
---|
377 |
$this->mnNumSets++; |
---|
378 |
} |
---|
379 |
} |
---|
380 |
|
---|
381 |
$aXLabels = explode(";", $this->mszXLabels); |
---|
382 |
foreach($aXLabels as $szXLabels) |
---|
383 |
if (isset($aParam[$szXLabels])) |
---|
384 |
$this->mszXLabels = str_replace($szXLabels, implode(";", |
---|
385 |
$aParam[$szXLabels]), $this->mszXLabels); |
---|
386 |
|
---|
387 |
$szReturn = ""; |
---|
388 |
|
---|
389 |
$szReturn = "<IMG SRC=\""; |
---|
390 |
$szReturn.= $this->mszBaseOWT."?"; |
---|
391 |
$szReturn.= "ImageType=".urlencode($this->mszImageType)."&"; |
---|
392 |
$szReturn.= "Type=".urlencode((($this->mb3D) ? "3D" : "").$this->mszChartType)."&"; |
---|
393 |
$szReturn.= "Title=".urlencode($this->mszTitle)."&"; |
---|
394 |
$szReturn.= "RTitle=".urlencode($this->mszRTitle)."&"; |
---|
395 |
$szReturn.= "LTitle=".urlencode($this->mszLTitle)."&"; |
---|
396 |
$szReturn.= "TitleColor=".urlencode($this->mszTitleColor)."&"; |
---|
397 |
$szReturn.= "TitleFont=".urlencode($this->mszTitleFont)."&"; |
---|
398 |
$szReturn.= "W=".urlencode($this->mnWidth)."&"; |
---|
399 |
$szReturn.= "H=".urlencode($this->mnHeight)."&"; |
---|
400 |
$szReturn.= "NumPts=".urlencode($this->mnNumPoints)."&"; |
---|
401 |
$szReturn.= "NumSets=".urlencode($this->mnNumSets)."&"; |
---|
402 |
$szReturn.= "Vals=".urlencode($this->mszVals)."&"; |
---|
403 |
$szReturn.= "XAxis=".urlencode((($this->mbXAxis) ? "1" : "0"))."&"; |
---|
404 |
$szReturn.= "XLabels=".urlencode($this->mszXLabels)."&"; |
---|
405 |
$szReturn.= "XTitle=".urlencode($this->mszXTitle)."&"; |
---|
406 |
$szReturn.= "XTitleColor=".urlencode($this->mszXTitleColor)."&"; |
---|
407 |
$szReturn.= "XTitleFont=".urlencode($this->mszXTitleFont)."&"; |
---|
408 |
$szReturn.= "XLabelFont=".urlencode($this->mszXLabelFont)."&"; |
---|
409 |
$szReturn.= "XLabelColor=".urlencode($this->mszXLabelColor)."&"; |
---|
410 |
$szReturn.= "XLabelSpacing=".urlencode($this->mszXLabelSpacing)."&"; |
---|
411 |
$szReturn.= "YAxis=".urlencode((($this->mbYAxis) ? "1" : "0"))."&"; |
---|
412 |
$szReturn.= "YAxis2=".urlencode((($this->mbYAxis2) ? "1" : "0"))."&"; |
---|
413 |
$szReturn.= "YLabelFont=".urlencode($this->mszYLabelFont)."&"; |
---|
414 |
$szReturn.= "YLabelFmt=".urlencode($this->mszYLabelFmt)."&"; |
---|
415 |
$szReturn.= "YLabelFmt2=".urlencode($this->mszYLabelFmt2)."&"; |
---|
416 |
$szReturn.= "YLabelColor=".urlencode($this->mszYLabelColor)."&"; |
---|
417 |
$szReturn.= "YTitle=".urlencode($this->mszYTitle)."&"; |
---|
418 |
$szReturn.= "YTitleColor=".urlencode($this->mszYTitleColor)."&"; |
---|
419 |
$szReturn.= "YTitleFont=".urlencode($this->mszYTitleFont)."&"; |
---|
420 |
$szReturn.= "YTitle2=".urlencode($this->mszYTitle2)."&"; |
---|
421 |
$szReturn.= "YTitleColor2=".urlencode($this->mszYTitleColor2)."&"; |
---|
422 |
$szReturn.= "YTitleFont2=".urlencode($this->mszYTitleFont2)."&"; |
---|
423 |
$szReturn.= "YScaleType=".urlencode($this->mszYScaleType)."&"; |
---|
424 |
$szReturn.= "YMin=".urlencode($this->mnYMin)."&"; |
---|
425 |
$szReturn.= "YMax=".urlencode($this->mnYMax)."&"; |
---|
426 |
$szReturn.= "YMin2=".urlencode($this->mnYMin2)."&"; |
---|
427 |
$szReturn.= "YMax2=".urlencode($this->mnYMax2)."&"; |
---|
428 |
$szReturn.= "PiePCTType=".urlencode($this->mszPiePCTType)."&"; |
---|
429 |
$szReturn.= "PiePCTFmt=".urlencode($this->mszPiePCTFmt)."&"; |
---|
430 |
$szReturn.= "PieRadius=".urlencode($this->mnPieRadius)."&"; |
---|
431 |
$szReturn.= "PieLabelFont=".urlencode($this->mszPieLabelFont)."&"; |
---|
432 |
$szReturn.= "BarWidth=".urlencode($this->mnBarWidth)."&"; |
---|
433 |
$szReturn.= "BarLabels=".urlencode(($this->mbBarLabels)?"1" : "0")."&"; |
---|
434 |
$szReturn.= "BarLabelFmt=".urlencode($this->mszBarLabelFmt)."&"; |
---|
435 |
$szReturn.= "LineStyles=".urlencode($this->mszLineStyles)."&"; |
---|
436 |
$szReturn.= "HLCStyle=".urlencode($this->mszHLCStyle)."&"; |
---|
437 |
$szReturn.= "HLCCapWidth=".urlencode($this->mnHLCCapWidth)."&"; |
---|
438 |
$szReturn.= "StackType=".urlencode($this->mszStackType)."&"; |
---|
439 |
$szReturn.= "SetColors=".urlencode($this->mszSetColors)."&"; |
---|
440 |
$szReturn.= "BGColors=".urlencode($this->mszBGColor)."&"; |
---|
441 |
$szReturn.= "TransBG=".urlencode((($this->mbTransBG) ? "1" : "0"))."&"; |
---|
442 |
$szReturn.= "LineColor=".urlencode($this->mszLineColor)."&"; |
---|
443 |
$szReturn.= "Grid=".urlencode((($this->mbGrid) ? "1" : "0"))."&"; |
---|
444 |
$szReturn.= "3DDepth=".urlencode($this->mn3DDepth)."&"; |
---|
445 |
$szReturn.= "3DAngle=".urlencode($this->mn3DAngle)."&"; |
---|
446 |
$szReturn.= "PlotColor=".urlencode($this->mszPlotColor)."&"; |
---|
447 |
$szReturn.= "ExtColors=".urlencode($this->mszExtColors)."&"; |
---|
448 |
$szReturn.= "VolColor=".urlencode($this->mszVolColor)."&"; |
---|
449 |
$szReturn.= "\">"; |
---|
450 |
return $szReturn; |
---|
451 |
} |
---|
452 |
} |
---|
453 |
?> |
---|