derailed-ziya 2.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +0 -0
- data/Manifest.txt +405 -0
- data/README.txt +232 -0
- data/Rakefile +44 -0
- data/bin/ziyafy +53 -0
- data/charts/AC_RunActiveContent.js +292 -0
- data/charts/charts.swf +0 -0
- data/charts/charts_library/ar3d.swf +0 -0
- data/charts/charts_library/arno.swf +0 -0
- data/charts/charts_library/ars3.swf +0 -0
- data/charts/charts_library/arst.swf +0 -0
- data/charts/charts_library/brfl.swf +0 -0
- data/charts/charts_library/brno.swf +0 -0
- data/charts/charts_library/brst.swf +0 -0
- data/charts/charts_library/buno.swf +0 -0
- data/charts/charts_library/cl3d.swf +0 -0
- data/charts/charts_library/clfl.swf +0 -0
- data/charts/charts_library/clno.swf +0 -0
- data/charts/charts_library/clp3.swf +0 -0
- data/charts/charts_library/cls3.swf +0 -0
- data/charts/charts_library/clst.swf +0 -0
- data/charts/charts_library/cnno.swf +0 -0
- data/charts/charts_library/dono.swf +0 -0
- data/charts/charts_library/lnno.swf +0 -0
- data/charts/charts_library/mxno.swf +0 -0
- data/charts/charts_library/pi3d.swf +0 -0
- data/charts/charts_library/pino.swf +0 -0
- data/charts/charts_library/pono.swf +0 -0
- data/charts/charts_library/scno.swf +0 -0
- data/charts/full_screen.swf +0 -0
- data/charts/scripts/output_jpg.php +23 -0
- data/charts/sliders/black.swf +0 -0
- data/charts/sliders/preview_handle_1.swf +0 -0
- data/charts/sliders/preview_handle_2.swf +0 -0
- data/gauges/designs/circle.yml +18 -0
- data/gauges/designs/signal.yml +14 -0
- data/gauges/designs/thermo.yml +119 -0
- data/gauges/designs/title.yml +11 -0
- data/gauges/gauge.swf +0 -0
- data/lib/ziya/charts/area.rb +18 -0
- data/lib/ziya/charts/area_threed.rb +16 -0
- data/lib/ziya/charts/bar.rb +16 -0
- data/lib/ziya/charts/base.rb +510 -0
- data/lib/ziya/charts/bubble.rb +18 -0
- data/lib/ziya/charts/candle_stick.rb +16 -0
- data/lib/ziya/charts/column.rb +16 -0
- data/lib/ziya/charts/column_threed.rb +16 -0
- data/lib/ziya/charts/donut.rb +18 -0
- data/lib/ziya/charts/floating_bar.rb +16 -0
- data/lib/ziya/charts/floating_column.rb +16 -0
- data/lib/ziya/charts/line.rb +16 -0
- data/lib/ziya/charts/mixed.rb +16 -0
- data/lib/ziya/charts/parallel_threed_column.rb +16 -0
- data/lib/ziya/charts/pie.rb +16 -0
- data/lib/ziya/charts/pie_threed.rb +16 -0
- data/lib/ziya/charts/polar.rb +16 -0
- data/lib/ziya/charts/scatter.rb +16 -0
- data/lib/ziya/charts/stacked_area.rb +16 -0
- data/lib/ziya/charts/stacked_bar.rb +16 -0
- data/lib/ziya/charts/stacked_column.rb +16 -0
- data/lib/ziya/charts/stacked_threed_area.rb +16 -0
- data/lib/ziya/charts/stacked_threed_column.rb +16 -0
- data/lib/ziya/components/area.rb +17 -0
- data/lib/ziya/components/axis_category.rb +17 -0
- data/lib/ziya/components/axis_ticks.rb +35 -0
- data/lib/ziya/components/axis_value.rb +16 -0
- data/lib/ziya/components/base.rb +142 -0
- data/lib/ziya/components/bevel.rb +15 -0
- data/lib/ziya/components/blur.rb +13 -0
- data/lib/ziya/components/chart_border.rb +14 -0
- data/lib/ziya/components/chart_grid_h.rb +26 -0
- data/lib/ziya/components/chart_grid_v.rb +27 -0
- data/lib/ziya/components/chart_guide.rb +16 -0
- data/lib/ziya/components/chart_label.rb +16 -0
- data/lib/ziya/components/chart_pref.rb +22 -0
- data/lib/ziya/components/chart_rect.rb +37 -0
- data/lib/ziya/components/chart_transition.rb +25 -0
- data/lib/ziya/components/circle.rb +16 -0
- data/lib/ziya/components/context_menu.rb +15 -0
- data/lib/ziya/components/draw.rb +47 -0
- data/lib/ziya/components/draw_base.rb +10 -0
- data/lib/ziya/components/filter.rb +26 -0
- data/lib/ziya/components/glow.rb +14 -0
- data/lib/ziya/components/image.rb +17 -0
- data/lib/ziya/components/legend.rb +18 -0
- data/lib/ziya/components/line.rb +16 -0
- data/lib/ziya/components/link.rb +29 -0
- data/lib/ziya/components/link_data.rb +18 -0
- data/lib/ziya/components/rect.rb +18 -0
- data/lib/ziya/components/scroll.rb +26 -0
- data/lib/ziya/components/series.rb +16 -0
- data/lib/ziya/components/series_color.rb +35 -0
- data/lib/ziya/components/series_explode.rb +38 -0
- data/lib/ziya/components/shadow.rb +14 -0
- data/lib/ziya/components/text.rb +17 -0
- data/lib/ziya/components/update.rb +19 -0
- data/lib/ziya/gauges/base.rb +172 -0
- data/lib/ziya/gauges/radial.rb +18 -0
- data/lib/ziya/gauges/signal.rb +138 -0
- data/lib/ziya/gauges/support/area.rb +13 -0
- data/lib/ziya/gauges/support/base.rb +33 -0
- data/lib/ziya/gauges/support/circle.rb +14 -0
- data/lib/ziya/gauges/support/design.rb +5 -0
- data/lib/ziya/gauges/support/image.rb +12 -0
- data/lib/ziya/gauges/support/line.rb +12 -0
- data/lib/ziya/gauges/support/link.rb +24 -0
- data/lib/ziya/gauges/support/move.rb +15 -0
- data/lib/ziya/gauges/support/point.rb +12 -0
- data/lib/ziya/gauges/support/polygon.rb +13 -0
- data/lib/ziya/gauges/support/radial_base.rb +21 -0
- data/lib/ziya/gauges/support/radial_numbers.rb +41 -0
- data/lib/ziya/gauges/support/radial_ticks.rb +29 -0
- data/lib/ziya/gauges/support/rect.rb +14 -0
- data/lib/ziya/gauges/support/rotate.rb +15 -0
- data/lib/ziya/gauges/support/scale.rb +15 -0
- data/lib/ziya/gauges/support/text.rb +21 -0
- data/lib/ziya/gauges/support/update.rb +12 -0
- data/lib/ziya/gauges/thermo.rb +121 -0
- data/lib/ziya/helpers/base_helper.rb +70 -0
- data/lib/ziya/utils/logger.rb +125 -0
- data/lib/ziya/utils/text.rb +39 -0
- data/lib/ziya/version.rb +15 -0
- data/lib/ziya/ziya_helper.rb +374 -0
- data/lib/ziya.rb +112 -0
- data/spec/charts/base_spec.rb +134 -0
- data/spec/charts/chart_type_spec.rb +63 -0
- data/spec/components/area_spec.rb +67 -0
- data/spec/components/draw_spec.rb +32 -0
- data/spec/components/filter_spec.rb +27 -0
- data/spec/components/link_spec.rb +22 -0
- data/spec/components/series.rb +18 -0
- data/spec/components/series_color_spec.rb +39 -0
- data/spec/components/series_explode.rb +39 -0
- data/spec/components/series_explode_spec.rb +39 -0
- data/spec/designs/circle.yml +7 -0
- data/spec/designs/crapping_out.yml +8 -0
- data/spec/designs/gauge_1.yml +43 -0
- data/spec/designs/gauge_2.yml +11 -0
- data/spec/designs/gauge_no_name.yml +43 -0
- data/spec/designs/gauge_raw.yml +5 -0
- data/spec/designs/thermo.yml +13 -0
- data/spec/gauges/base_spec.rb +90 -0
- data/spec/gauges/signal_spec.rb +36 -0
- data/spec/gauges/support/area_spec.rb +40 -0
- data/spec/gauges/support/circle_spec.rb +78 -0
- data/spec/gauges/support/image_spec.rb +35 -0
- data/spec/gauges/support/line_spec.rb +34 -0
- data/spec/gauges/support/link_spec.rb +35 -0
- data/spec/gauges/support/move_spec.rb +45 -0
- data/spec/gauges/support/polygon_spec.rb +36 -0
- data/spec/gauges/support/radial_numbers_spec.rb +35 -0
- data/spec/gauges/support/radial_ticks_spec.rb +30 -0
- data/spec/gauges/support/rotate_spec.rb +45 -0
- data/spec/gauges/support/scale_spec.rb +46 -0
- data/spec/gauges/support/text_spec.rb +40 -0
- data/spec/gauges/thermo_spec.rb +49 -0
- data/spec/helpers/base_helper_spec.rb +36 -0
- data/spec/spec_helper.rb +10 -0
- data/spec/test_helpers/gauge_2_helper.rb +17 -0
- data/spec/themes/default/fred.yml +6 -0
- data/spec/themes/default/line_chart.yml +6 -0
- data/spec/utils/logger_spec.rb +55 -0
- data/spec/utils/text_spec.rb +33 -0
- data/spec/ziya_helper_spec.rb +117 -0
- data/spec/ziya_spec.rb +19 -0
- data/tasks/ann.rake +76 -0
- data/tasks/annotations.rake +22 -0
- data/tasks/doc.rake +48 -0
- data/tasks/gem.rake +110 -0
- data/tasks/manifest.rake +49 -0
- data/tasks/post_load.rake +26 -0
- data/tasks/rubyforge.rake +57 -0
- data/tasks/setup.rb +227 -0
- data/tasks/spec.rake +61 -0
- data/tasks/svn.rake +44 -0
- data/tasks/test.rake +38 -0
- metadata +468 -0
data/bin/ziyafy
ADDED
@@ -0,0 +1,53 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
require 'optparse'
|
3
|
+
require 'ostruct'
|
4
|
+
|
5
|
+
require File.expand_path( File.join(File.dirname(__FILE__), '..', 'lib', 'ziya') )
|
6
|
+
|
7
|
+
module Ziya
|
8
|
+
class Ziyafy
|
9
|
+
# Copy necessary ZiYa components to a ruby web application
|
10
|
+
def initialize( argv=ARGV )
|
11
|
+
option_parser = default_option_parser
|
12
|
+
option_parser.parse!(argv)
|
13
|
+
puts "Installing ZiYa artifacts in `#{options.public_dir}"
|
14
|
+
copy_artifacts
|
15
|
+
end
|
16
|
+
|
17
|
+
# copies ziya artifacts to public app directory
|
18
|
+
def copy_artifacts
|
19
|
+
source_dir = File.expand_path( File.join( File.dirname(__FILE__), %w[.. charts]) )
|
20
|
+
FileUtils.cp_r( source_dir, options.public_dir )
|
21
|
+
source_dir = File.expand_path( File.join( File.dirname(__FILE__), %w[.. gauges]) )
|
22
|
+
FileUtils.cp_r( source_dir, options.public_dir )
|
23
|
+
end
|
24
|
+
|
25
|
+
# access the options
|
26
|
+
def options #:nodoc:
|
27
|
+
if not @options then
|
28
|
+
@options = OpenStruct.new
|
29
|
+
# Unless specified copy artifacts to the public directory
|
30
|
+
@options.public_dir = File.join( Dir.pwd, %w[public] )
|
31
|
+
end
|
32
|
+
return @options
|
33
|
+
end
|
34
|
+
|
35
|
+
# sets up cmd line args
|
36
|
+
def default_option_parser #:nodoc:
|
37
|
+
OptionParser.new do |op|
|
38
|
+
op.separator ""
|
39
|
+
op.separator "Ziyafy options"
|
40
|
+
|
41
|
+
op.on( "-p", "--public_dir FILE", "The location of the public app directory." ) do |dir|
|
42
|
+
options.public_dir = dir
|
43
|
+
end
|
44
|
+
op.separator ""
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
Ziya::Ziyafy.new(ARGV)
|
51
|
+
|
52
|
+
|
53
|
+
|
@@ -0,0 +1,292 @@
|
|
1
|
+
//v1.7
|
2
|
+
// Flash Player Version Detection
|
3
|
+
// Detect Client Browser type
|
4
|
+
// Copyright 2005-2007 Adobe Systems Incorporated. All rights reserved.
|
5
|
+
var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
|
6
|
+
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
|
7
|
+
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
|
8
|
+
|
9
|
+
function ControlVersion()
|
10
|
+
{
|
11
|
+
var version;
|
12
|
+
var axo;
|
13
|
+
var e;
|
14
|
+
|
15
|
+
// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry
|
16
|
+
|
17
|
+
try {
|
18
|
+
// version will be set for 7.X or greater players
|
19
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
|
20
|
+
version = axo.GetVariable("$version");
|
21
|
+
} catch (e) {
|
22
|
+
}
|
23
|
+
|
24
|
+
if (!version)
|
25
|
+
{
|
26
|
+
try {
|
27
|
+
// version will be set for 6.X players only
|
28
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
|
29
|
+
|
30
|
+
// installed player is some revision of 6.0
|
31
|
+
// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
|
32
|
+
// so we have to be careful.
|
33
|
+
|
34
|
+
// default to the first public version
|
35
|
+
version = "WIN 6,0,21,0";
|
36
|
+
|
37
|
+
// throws if AllowScripAccess does not exist (introduced in 6.0r47)
|
38
|
+
axo.AllowScriptAccess = "always";
|
39
|
+
|
40
|
+
// safe to call for 6.0r47 or greater
|
41
|
+
version = axo.GetVariable("$version");
|
42
|
+
|
43
|
+
} catch (e) {
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
if (!version)
|
48
|
+
{
|
49
|
+
try {
|
50
|
+
// version will be set for 4.X or 5.X player
|
51
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
|
52
|
+
version = axo.GetVariable("$version");
|
53
|
+
} catch (e) {
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
if (!version)
|
58
|
+
{
|
59
|
+
try {
|
60
|
+
// version will be set for 3.X player
|
61
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
|
62
|
+
version = "WIN 3,0,18,0";
|
63
|
+
} catch (e) {
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
if (!version)
|
68
|
+
{
|
69
|
+
try {
|
70
|
+
// version will be set for 2.X player
|
71
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
|
72
|
+
version = "WIN 2,0,0,11";
|
73
|
+
} catch (e) {
|
74
|
+
version = -1;
|
75
|
+
}
|
76
|
+
}
|
77
|
+
|
78
|
+
return version;
|
79
|
+
}
|
80
|
+
|
81
|
+
// JavaScript helper required to detect Flash Player PlugIn version information
|
82
|
+
function GetSwfVer(){
|
83
|
+
// NS/Opera version >= 3 check for Flash plugin in plugin array
|
84
|
+
var flashVer = -1;
|
85
|
+
|
86
|
+
if (navigator.plugins != null && navigator.plugins.length > 0) {
|
87
|
+
if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
|
88
|
+
var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
|
89
|
+
var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
|
90
|
+
var descArray = flashDescription.split(" ");
|
91
|
+
var tempArrayMajor = descArray[2].split(".");
|
92
|
+
var versionMajor = tempArrayMajor[0];
|
93
|
+
var versionMinor = tempArrayMajor[1];
|
94
|
+
var versionRevision = descArray[3];
|
95
|
+
if (versionRevision == "") {
|
96
|
+
versionRevision = descArray[4];
|
97
|
+
}
|
98
|
+
if (versionRevision[0] == "d") {
|
99
|
+
versionRevision = versionRevision.substring(1);
|
100
|
+
} else if (versionRevision[0] == "r") {
|
101
|
+
versionRevision = versionRevision.substring(1);
|
102
|
+
if (versionRevision.indexOf("d") > 0) {
|
103
|
+
versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
|
104
|
+
}
|
105
|
+
}
|
106
|
+
var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
|
107
|
+
}
|
108
|
+
}
|
109
|
+
// MSN/WebTV 2.6 supports Flash 4
|
110
|
+
else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
|
111
|
+
// WebTV 2.5 supports Flash 3
|
112
|
+
else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
|
113
|
+
// older WebTV supports Flash 2
|
114
|
+
else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
|
115
|
+
else if ( isIE && isWin && !isOpera ) {
|
116
|
+
flashVer = ControlVersion();
|
117
|
+
}
|
118
|
+
return flashVer;
|
119
|
+
}
|
120
|
+
|
121
|
+
// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
|
122
|
+
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
|
123
|
+
{
|
124
|
+
versionStr = GetSwfVer();
|
125
|
+
if (versionStr == -1 ) {
|
126
|
+
return false;
|
127
|
+
} else if (versionStr != 0) {
|
128
|
+
if(isIE && isWin && !isOpera) {
|
129
|
+
// Given "WIN 2,0,0,11"
|
130
|
+
tempArray = versionStr.split(" "); // ["WIN", "2,0,0,11"]
|
131
|
+
tempString = tempArray[1]; // "2,0,0,11"
|
132
|
+
versionArray = tempString.split(","); // ['2', '0', '0', '11']
|
133
|
+
} else {
|
134
|
+
versionArray = versionStr.split(".");
|
135
|
+
}
|
136
|
+
var versionMajor = versionArray[0];
|
137
|
+
var versionMinor = versionArray[1];
|
138
|
+
var versionRevision = versionArray[2];
|
139
|
+
|
140
|
+
// is the major.revision >= requested major.revision AND the minor version >= requested minor
|
141
|
+
if (versionMajor > parseFloat(reqMajorVer)) {
|
142
|
+
return true;
|
143
|
+
} else if (versionMajor == parseFloat(reqMajorVer)) {
|
144
|
+
if (versionMinor > parseFloat(reqMinorVer))
|
145
|
+
return true;
|
146
|
+
else if (versionMinor == parseFloat(reqMinorVer)) {
|
147
|
+
if (versionRevision >= parseFloat(reqRevision))
|
148
|
+
return true;
|
149
|
+
}
|
150
|
+
}
|
151
|
+
return false;
|
152
|
+
}
|
153
|
+
}
|
154
|
+
|
155
|
+
function AC_AddExtension(src, ext)
|
156
|
+
{
|
157
|
+
if (src.indexOf('?') != -1)
|
158
|
+
return src.replace(/\?/, ext+'?');
|
159
|
+
else
|
160
|
+
return src + ext;
|
161
|
+
}
|
162
|
+
|
163
|
+
function AC_Generateobj(objAttrs, params, embedAttrs)
|
164
|
+
{
|
165
|
+
var str = '';
|
166
|
+
if (isIE && isWin && !isOpera)
|
167
|
+
{
|
168
|
+
str += '<object ';
|
169
|
+
for (var i in objAttrs)
|
170
|
+
{
|
171
|
+
str += i + '="' + objAttrs[i] + '" ';
|
172
|
+
}
|
173
|
+
str += '>';
|
174
|
+
for (var i in params)
|
175
|
+
{
|
176
|
+
str += '<param name="' + i + '" value="' + params[i] + '" /> ';
|
177
|
+
}
|
178
|
+
str += '</object>';
|
179
|
+
}
|
180
|
+
else
|
181
|
+
{
|
182
|
+
str += '<embed ';
|
183
|
+
for (var i in embedAttrs)
|
184
|
+
{
|
185
|
+
str += i + '="' + embedAttrs[i] + '" ';
|
186
|
+
}
|
187
|
+
str += '> </embed>';
|
188
|
+
}
|
189
|
+
|
190
|
+
document.write(str);
|
191
|
+
}
|
192
|
+
|
193
|
+
function AC_FL_RunContent(){
|
194
|
+
var ret =
|
195
|
+
AC_GetArgs
|
196
|
+
( arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
|
197
|
+
, "application/x-shockwave-flash"
|
198
|
+
);
|
199
|
+
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
|
200
|
+
}
|
201
|
+
|
202
|
+
function AC_SW_RunContent(){
|
203
|
+
var ret =
|
204
|
+
AC_GetArgs
|
205
|
+
( arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
|
206
|
+
, null
|
207
|
+
);
|
208
|
+
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
|
209
|
+
}
|
210
|
+
|
211
|
+
function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
|
212
|
+
var ret = new Object();
|
213
|
+
ret.embedAttrs = new Object();
|
214
|
+
ret.params = new Object();
|
215
|
+
ret.objAttrs = new Object();
|
216
|
+
for (var i=0; i < args.length; i=i+2){
|
217
|
+
var currArg = args[i].toLowerCase();
|
218
|
+
|
219
|
+
switch (currArg){
|
220
|
+
case "classid":
|
221
|
+
break;
|
222
|
+
case "pluginspage":
|
223
|
+
ret.embedAttrs[args[i]] = args[i+1];
|
224
|
+
break;
|
225
|
+
case "src":
|
226
|
+
case "movie":
|
227
|
+
args[i+1] = AC_AddExtension(args[i+1], ext);
|
228
|
+
ret.embedAttrs["src"] = args[i+1];
|
229
|
+
ret.params[srcParamName] = args[i+1];
|
230
|
+
break;
|
231
|
+
case "onafterupdate":
|
232
|
+
case "onbeforeupdate":
|
233
|
+
case "onblur":
|
234
|
+
case "oncellchange":
|
235
|
+
case "onclick":
|
236
|
+
case "ondblclick":
|
237
|
+
case "ondrag":
|
238
|
+
case "ondragend":
|
239
|
+
case "ondragenter":
|
240
|
+
case "ondragleave":
|
241
|
+
case "ondragover":
|
242
|
+
case "ondrop":
|
243
|
+
case "onfinish":
|
244
|
+
case "onfocus":
|
245
|
+
case "onhelp":
|
246
|
+
case "onmousedown":
|
247
|
+
case "onmouseup":
|
248
|
+
case "onmouseover":
|
249
|
+
case "onmousemove":
|
250
|
+
case "onmouseout":
|
251
|
+
case "onkeypress":
|
252
|
+
case "onkeydown":
|
253
|
+
case "onkeyup":
|
254
|
+
case "onload":
|
255
|
+
case "onlosecapture":
|
256
|
+
case "onpropertychange":
|
257
|
+
case "onreadystatechange":
|
258
|
+
case "onrowsdelete":
|
259
|
+
case "onrowenter":
|
260
|
+
case "onrowexit":
|
261
|
+
case "onrowsinserted":
|
262
|
+
case "onstart":
|
263
|
+
case "onscroll":
|
264
|
+
case "onbeforeeditfocus":
|
265
|
+
case "onactivate":
|
266
|
+
case "onbeforedeactivate":
|
267
|
+
case "ondeactivate":
|
268
|
+
case "type":
|
269
|
+
case "codebase":
|
270
|
+
case "id":
|
271
|
+
ret.objAttrs[args[i]] = args[i+1];
|
272
|
+
break;
|
273
|
+
case "width":
|
274
|
+
case "height":
|
275
|
+
case "align":
|
276
|
+
case "vspace":
|
277
|
+
case "hspace":
|
278
|
+
case "class":
|
279
|
+
case "title":
|
280
|
+
case "accesskey":
|
281
|
+
case "name":
|
282
|
+
case "tabindex":
|
283
|
+
ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
|
284
|
+
break;
|
285
|
+
default:
|
286
|
+
ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
|
287
|
+
}
|
288
|
+
}
|
289
|
+
ret.objAttrs["classid"] = classid;
|
290
|
+
if (mimeType) ret.embedAttrs["type"] = mimeType;
|
291
|
+
return ret;
|
292
|
+
}
|
data/charts/charts.swf
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<?php
|
2
|
+
if(!function_exists("imagecreate")) die("Sorry, the GD library is needed to run this script.");
|
3
|
+
|
4
|
+
$data = explode(",", $_POST['img']);
|
5
|
+
$width = $_POST['width'];
|
6
|
+
$height = $_POST['height'];
|
7
|
+
$image=imagecreatetruecolor( $width ,$height );
|
8
|
+
$background = imagecolorallocate( $image ,0 , 0 , 0 );
|
9
|
+
//Copy pixels
|
10
|
+
$i = 0;
|
11
|
+
for($x=0; $x<=$width; $x++){
|
12
|
+
for($y=0; $y<=$height; $y++){
|
13
|
+
$int = hexdec($data[$i++]);
|
14
|
+
$color = ImageColorAllocate ($image, 0xFF & ($int >> 0x10), 0xFF & ($int >> 0x8), 0xFF & $int);
|
15
|
+
imagesetpixel ( $image , $x , $y , $color );
|
16
|
+
}
|
17
|
+
}
|
18
|
+
//Output image and clean
|
19
|
+
header( "Content-type: image/jpeg" );
|
20
|
+
ImageJPEG( $image );
|
21
|
+
imagedestroy( $image );
|
22
|
+
?>
|
23
|
+
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<%= gauge :base %>
|
2
|
+
<%= dial :circle, :circle_1 %>
|
3
|
+
x: 10
|
4
|
+
y: 20
|
5
|
+
radius: 30
|
6
|
+
fill_alpha: 0
|
7
|
+
line_thickness: 5
|
8
|
+
|
9
|
+
<%= dial :text, :title %>
|
10
|
+
rotation: -90
|
11
|
+
size: 78
|
12
|
+
alpha: 10
|
13
|
+
x: -15
|
14
|
+
y: 300
|
15
|
+
color: ffffff
|
16
|
+
width: 300
|
17
|
+
text: Hello World
|
18
|
+
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<%= gauge :signal %>
|
2
|
+
<%= dial :text, :signal %>
|
3
|
+
x: 20
|
4
|
+
y: 30
|
5
|
+
width: 40
|
6
|
+
size: 16
|
7
|
+
align: center
|
8
|
+
color: <%= colorizer( options[:signal] ) %>
|
9
|
+
text: <%= options[:signal] %>
|
10
|
+
|
11
|
+
# show current signal
|
12
|
+
<%= signal_indicator( options[:x], options[:y], 20, 30, 10, 0, 360, 10, 20, "88ff00" ) %>
|
13
|
+
# shows delta from previous signal
|
14
|
+
<%= delta_indicator( options[:x]+35, options[:y]-22 ) %>
|
@@ -0,0 +1,119 @@
|
|
1
|
+
# -----------------------------------------------------------------------------
|
2
|
+
# Thermometer design
|
3
|
+
# -----------------------------------------------------------------------------
|
4
|
+
<%= gauge :thermo %>
|
5
|
+
# -----------------------------------------------------------------------------
|
6
|
+
# Gauge Title
|
7
|
+
<%= dial :text, :gauge_title %>
|
8
|
+
rotation: -90
|
9
|
+
size: 75
|
10
|
+
alpha: 10
|
11
|
+
x: <%= options[:x] - 150 %>
|
12
|
+
y: <%= options[:y] + 270 %>
|
13
|
+
color: ffffff
|
14
|
+
width: 300
|
15
|
+
text: <%= options[:title] %>
|
16
|
+
|
17
|
+
# -----------------------------------------------------------------------------
|
18
|
+
# Thermo tube
|
19
|
+
<%= dial :rect, :neck %>
|
20
|
+
x: <%= options[:x] + 20 %>
|
21
|
+
y: <%= options[:y] + 20 %>
|
22
|
+
height: 150
|
23
|
+
width: 40
|
24
|
+
fill_alpha: 20
|
25
|
+
fill_color: <%= options[:gauge_color] %>
|
26
|
+
line_thickness: 8
|
27
|
+
|
28
|
+
# -----------------------------------------------------------------------------
|
29
|
+
# Thermo bottom
|
30
|
+
<%= dial :circle, :vase %>
|
31
|
+
x: <%= options[:x] + 40 %>
|
32
|
+
y: <%= options[:y] + 190 %>
|
33
|
+
radius: 48
|
34
|
+
line_thickness: 8
|
35
|
+
fill_color: <%= options[:gauge_color] %>
|
36
|
+
fill_alpha: 100
|
37
|
+
|
38
|
+
# main
|
39
|
+
<%= dial :circle, :vase_main %>
|
40
|
+
radius: 40
|
41
|
+
x: <%= options[:x] + 40 %>
|
42
|
+
y: <%= options[:y] + 190 %>
|
43
|
+
fill_color: <%= options[:gauge_color] %>
|
44
|
+
|
45
|
+
# reflection
|
46
|
+
<%= dial :circle, :vase_reflection_1 %>
|
47
|
+
x: <%= options[:x] + 40 %>
|
48
|
+
y: <%= options[:y] + 190 %>
|
49
|
+
radius: 27
|
50
|
+
fill_alpha: 50
|
51
|
+
fill_color: ffff00
|
52
|
+
|
53
|
+
# inside
|
54
|
+
<%= dial :circle, :vase_reflection_2 %>
|
55
|
+
x: <%= options[:x] + 35 %>
|
56
|
+
y: <%= options[:y] + 190 %>
|
57
|
+
radius: 28
|
58
|
+
fill_color: <%= options[:gauge_color] %>
|
59
|
+
|
60
|
+
# -----------------------------------------------------------------------------
|
61
|
+
# Scale Legends
|
62
|
+
<%= dial :text, :legend %>
|
63
|
+
x: <%= options[:x] %>
|
64
|
+
y: <%= options[:y] %>
|
65
|
+
size: 14
|
66
|
+
color: cccccc
|
67
|
+
width: 200
|
68
|
+
text: C F
|
69
|
+
|
70
|
+
# degree
|
71
|
+
<%= dial :circle, :degrees %>
|
72
|
+
x: <%= options[:x] %>
|
73
|
+
y: <%= options[:y] + 5 %>
|
74
|
+
radius: 2
|
75
|
+
fill_alpha: 0
|
76
|
+
line_color: cccccc
|
77
|
+
line_thickness: 1
|
78
|
+
|
79
|
+
# farenheit
|
80
|
+
<%= dial :circle, :farenheit %>
|
81
|
+
x: <%= options[:x] + 65 %>
|
82
|
+
y: <%= options[:y] + 5 %>
|
83
|
+
radius: 2
|
84
|
+
fill_alpha: 0
|
85
|
+
line_color: cccccc
|
86
|
+
line_thickness: 1
|
87
|
+
|
88
|
+
# -----------------------------------------------------------------------------
|
89
|
+
# Current Temperature
|
90
|
+
<%= dial :scale, :animation %>
|
91
|
+
x: <%= options[:x] + 40 %>
|
92
|
+
y: <%= options[:y] + 133 %>
|
93
|
+
direction: vertical
|
94
|
+
step: 5
|
95
|
+
start_scale: 100
|
96
|
+
end_scale: <%= options[:end_scale] %>
|
97
|
+
shake_span: 1
|
98
|
+
shake_frequency: 10
|
99
|
+
shadow_alpha: 0
|
100
|
+
<%= dials %>
|
101
|
+
<%= dial :rect, :due_point %>
|
102
|
+
x: <%= options[:x] + 24 %>
|
103
|
+
y: <%= options[:y] + 32 %>
|
104
|
+
height: 100
|
105
|
+
width: 32
|
106
|
+
fill_color: <%= options[:gauge_color] %>
|
107
|
+
|
108
|
+
# hides to of thermo base circle
|
109
|
+
<%= dial :rect, :z_patch %>
|
110
|
+
x: <%= options[:x] + 24 %>
|
111
|
+
y: <%= options[:y] + 132 %>
|
112
|
+
height: 30
|
113
|
+
width: 32
|
114
|
+
fill_alpha: 100
|
115
|
+
# fill_color: ff0000
|
116
|
+
fill_color: <%= options[:gauge_color] %>
|
117
|
+
|
118
|
+
<%= draw_celsius_scale( -10, 50 ) %>
|
119
|
+
<%= draw_farenheit_scale( 20, 120 ) %>
|
data/gauges/gauge.swf
ADDED
Binary file
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# -----------------------------------------------------------------------------
|
2
|
+
# Generates necessary xml for area chart
|
3
|
+
#
|
4
|
+
# Author: Fernand
|
5
|
+
# -----------------------------------------------------------------------------
|
6
|
+
require 'ziya/charts/base'
|
7
|
+
|
8
|
+
module Ziya::Charts
|
9
|
+
class Area < Base
|
10
|
+
# Creates an area chart
|
11
|
+
# <tt>:license</tt>:: the XML/SWF charts license
|
12
|
+
# <tt>:chart_id</tt>:: the name of the chart style sheet.
|
13
|
+
def initialize( license=nil, chart_id=nil )
|
14
|
+
super( license, chart_id )
|
15
|
+
@type = "area"
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# -----------------------------------------------------------------------------
|
2
|
+
# Generates necessary xml for a 3d area chart
|
3
|
+
#
|
4
|
+
# Author: Fernand
|
5
|
+
# -----------------------------------------------------------------------------
|
6
|
+
module Ziya::Charts
|
7
|
+
class AreaThreed < Base
|
8
|
+
# Creates a 3d area chart
|
9
|
+
# <tt>:license</tt>:: the XML/SWF charts license
|
10
|
+
# <tt>:chart_id</tt>:: the name of the chart style sheet.
|
11
|
+
def initialize( license=nil, chart_id=nil )
|
12
|
+
super( license, chart_id )
|
13
|
+
@type = "3d area"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# -----------------------------------------------------------------------------
|
2
|
+
# Generates necessary xml for a Bar chart
|
3
|
+
#
|
4
|
+
# Author: Fernand
|
5
|
+
# -----------------------------------------------------------------------------
|
6
|
+
module Ziya::Charts
|
7
|
+
class Bar < Base
|
8
|
+
# Creates a bar chart
|
9
|
+
# <tt>:license</tt>:: the XML/SWF charts license
|
10
|
+
# <tt>:chart_id</tt>:: the name of the chart style sheet.
|
11
|
+
def initialize( license=nil, chart_id=nil )
|
12
|
+
super( license, chart_id )
|
13
|
+
@type = "bar"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|