derailed-ziya 2.0.8 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest.txt +240 -432
- data/README.txt +104 -97
- data/Rakefile +3 -2
- data/bin/ziyafy +33 -10
- data/examples/charts/basic_chart.rb +47 -0
- data/{charts → examples/charts/public/charts}/AC_RunActiveContent.js +0 -0
- data/{charts → examples/charts/public/charts}/charts.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/ar3d.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/arno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/ars3.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/arst.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/brfl.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/brno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/brst.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/buno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/cl3d.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/clfl.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/clim.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/clno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/clp3.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/cls3.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/clst.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/cnno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/dono.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/lnno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/mxno.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/pi3d.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/piim.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/pino.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/pono.swf +0 -0
- data/{charts → examples/charts/public/charts}/charts_library/scno.swf +0 -0
- data/{charts → examples/charts/public/charts}/full_screen.swf +0 -0
- data/{charts → examples/charts/public/charts}/scripts/output_jpg.php +0 -0
- data/{charts → examples/charts/public/charts}/sliders/black.swf +0 -0
- data/{charts → examples/charts/public/charts}/sliders/preview_handle_1.swf +0 -0
- data/{charts → examples/charts/public/charts}/sliders/preview_handle_2.swf +0 -0
- data/examples/charts/public/charts/themes/cool_theme/column_chart.yml +150 -0
- data/{charts → examples/charts/public/charts}/themes/readme.txt +0 -0
- data/examples/charts/views/index.erb +12 -0
- data/examples/maps/basic_map.rb +72 -0
- data/examples/maps/helpers/map_helper.rb +15 -0
- data/examples/maps/models/confidential_herpes_report.rb +78 -0
- data/examples/maps/public/javascripts/jquery-1.3.2.js +4376 -0
- data/examples/maps/public/map.xml +336 -0
- data/examples/maps/public/maps/js/Exception.js +45 -0
- data/examples/maps/public/maps/js/FlashProxy.js +72 -0
- data/examples/maps/public/maps/js/FlashSerializer.js +165 -0
- data/examples/maps/public/maps/js/FlashTag.js +111 -0
- data/examples/maps/public/maps/js/JavaScriptFlashGateway.js +455 -0
- data/examples/maps/public/maps/js/JavaScriptFlashGateway.swf +0 -0
- data/examples/maps/public/maps/map_library/australia.swf +0 -0
- data/examples/maps/public/maps/map_library/belgium.swf +0 -0
- data/examples/maps/public/maps/map_library/brazil.swf +0 -0
- data/examples/maps/public/maps/map_library/canada.swf +0 -0
- data/examples/maps/public/maps/map_library/europe.swf +0 -0
- data/examples/maps/public/maps/map_library/france.swf +0 -0
- data/examples/maps/public/maps/map_library/germany.swf +0 -0
- data/examples/maps/public/maps/map_library/italy.swf +0 -0
- data/examples/maps/public/maps/map_library/mexico.swf +0 -0
- data/examples/maps/public/maps/map_library/sweden.swf +0 -0
- data/examples/maps/public/maps/map_library/uk_ireland.swf +0 -0
- data/examples/maps/public/maps/map_library/us.swf +0 -0
- data/examples/maps/public/maps/map_library/us_canada.swf +0 -0
- data/examples/maps/public/maps/map_library/world.swf +0 -0
- data/examples/maps/public/maps/themes/default/base_map.yml +27 -0
- data/examples/maps/public/maps/themes/default/us_map.yml +20 -0
- data/examples/maps/public/maps/themes/default/us_map_2.yml +17 -0
- data/examples/maps/public/maps/themes/readme.txt +13 -0
- data/examples/maps/public/stylesheets/map.css +16 -0
- data/examples/maps/views/index.erb +26 -0
- data/examples/maps/views/layout.erb +21 -0
- data/lib/ziya/charts/base.rb +15 -14
- data/lib/ziya/{components → charts/support}/area.rb +2 -2
- data/lib/ziya/{components → charts/support}/axis_category.rb +1 -1
- data/lib/ziya/{components → charts/support}/axis_ticks.rb +1 -1
- data/lib/ziya/{components → charts/support}/axis_value.rb +1 -1
- data/lib/ziya/{components → charts/support}/base.rb +9 -21
- data/lib/ziya/{components → charts/support}/bevel.rb +1 -1
- data/lib/ziya/{components → charts/support}/blur.rb +1 -1
- data/lib/ziya/{components → charts/support}/button.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_border.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_grid_h.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_grid_v.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_guide.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_label.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_note.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_pref.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_rect.rb +1 -1
- data/lib/ziya/{components → charts/support}/chart_transition.rb +1 -1
- data/lib/ziya/{components → charts/support}/circle.rb +1 -1
- data/lib/ziya/{components → charts/support}/context_menu.rb +1 -3
- data/lib/ziya/{components → charts/support}/draw.rb +31 -8
- data/lib/ziya/{components → charts/support}/draw_base.rb +1 -1
- data/lib/ziya/{components → charts/support}/filter.rb +1 -1
- data/lib/ziya/{components → charts/support}/flash_to_javascript.rb +1 -3
- data/lib/ziya/{components → charts/support}/glow.rb +1 -1
- data/lib/ziya/{components → charts/support}/image.rb +1 -1
- data/lib/ziya/{components → charts/support}/legend.rb +1 -1
- data/lib/ziya/{components → charts/support}/line.rb +1 -1
- data/lib/ziya/{components → charts/support}/link.rb +1 -1
- data/lib/ziya/{components → charts/support}/link_data.rb +1 -1
- data/lib/ziya/{components → charts/support}/rect.rb +1 -1
- data/lib/ziya/{components → charts/support}/scroll.rb +1 -3
- data/lib/ziya/{components → charts/support}/series.rb +1 -3
- data/lib/ziya/{components → charts/support}/series_color.rb +1 -1
- data/lib/ziya/{components → charts/support}/series_explode.rb +1 -1
- data/lib/ziya/{components → charts/support}/shadow.rb +1 -1
- data/lib/ziya/{components → charts/support}/text.rb +9 -1
- data/lib/ziya/{components → charts/support}/tooltip.rb +1 -1
- data/lib/ziya/{components → charts/support}/update.rb +1 -1
- data/lib/ziya/core_ext/string.rb +31 -0
- data/lib/ziya/gauges/base.rb +17 -12
- data/lib/ziya/gauges/support/base.rb +4 -12
- data/lib/ziya/gauges/support/radial_numbers.rb +1 -1
- data/lib/ziya/html_helpers/base.rb +91 -0
- data/lib/ziya/html_helpers/charts.rb +200 -0
- data/lib/ziya/html_helpers/gauges.rb +90 -0
- data/lib/ziya/html_helpers/maps.rb +74 -0
- data/lib/ziya/html_helpers.rb +1 -0
- data/lib/ziya/maps/australia.rb +9 -0
- data/lib/ziya/maps/base.rb +409 -0
- data/lib/ziya/maps/belgium.rb +7 -0
- data/lib/ziya/maps/brazil.rb +7 -0
- data/lib/ziya/maps/canada.rb +7 -0
- data/lib/ziya/maps/europe.rb +7 -0
- data/lib/ziya/maps/france.rb +7 -0
- data/lib/ziya/maps/geocode.rb +18 -0
- data/lib/ziya/maps/germany.rb +7 -0
- data/lib/ziya/maps/italy.rb +7 -0
- data/lib/ziya/maps/mexico.rb +7 -0
- data/lib/ziya/maps/support/arc.rb +7 -0
- data/lib/ziya/maps/support/arc_color.rb +7 -0
- data/lib/ziya/maps/support/arc_range.rb +7 -0
- data/lib/ziya/maps/support/background_color.rb +7 -0
- data/lib/ziya/maps/support/base.rb +34 -0
- data/lib/ziya/maps/support/default_color.rb +7 -0
- data/lib/ziya/maps/support/default_point.rb +7 -0
- data/lib/ziya/maps/support/first_zoom.rb +7 -0
- data/lib/ziya/maps/support/heat_range.rb +35 -0
- data/lib/ziya/maps/support/hover.rb +7 -0
- data/lib/ziya/maps/support/line.rb +7 -0
- data/lib/ziya/maps/support/line_color.rb +7 -0
- data/lib/ziya/maps/support/line_range.rb +7 -0
- data/lib/ziya/maps/support/outline_color.rb +7 -0
- data/lib/ziya/maps/support/point.rb +8 -0
- data/lib/ziya/maps/support/point_range.rb +7 -0
- data/lib/ziya/maps/support/range.rb +31 -0
- data/lib/ziya/maps/support/ranges.rb +18 -0
- data/lib/ziya/maps/support/region.rb +7 -0
- data/lib/ziya/maps/support/scale_points.rb +7 -0
- data/lib/ziya/maps/support/show_name.rb +7 -0
- data/lib/ziya/maps/support/state.rb +7 -0
- data/lib/ziya/maps/support/state_info_icon.rb +7 -0
- data/lib/ziya/maps/support/zoom_mode.rb +7 -0
- data/lib/ziya/maps/support/zoom_out_button.rb +7 -0
- data/lib/ziya/maps/support/zoom_out_scale.rb +7 -0
- data/lib/ziya/maps/sweden.rb +7 -0
- data/lib/ziya/maps/uk.rb +7 -0
- data/lib/ziya/maps/us.rb +7 -0
- data/lib/ziya/maps/world.rb +7 -0
- data/lib/ziya/version.rb +3 -3
- data/lib/ziya/yaml_helpers/base.rb +20 -0
- data/lib/ziya/yaml_helpers/charts.rb +49 -0
- data/lib/ziya/yaml_helpers/gauges.rb +33 -0
- data/lib/ziya/yaml_helpers/maps.rb +17 -0
- data/lib/ziya/yaml_helpers.rb +1 -0
- data/lib/ziya.rb +20 -11
- data/resources/charts/AC_RunActiveContent.js +292 -0
- data/resources/charts/charts.swf +0 -0
- data/resources/charts/charts_library/ar3d.swf +0 -0
- data/resources/charts/charts_library/arno.swf +0 -0
- data/resources/charts/charts_library/ars3.swf +0 -0
- data/resources/charts/charts_library/arst.swf +0 -0
- data/resources/charts/charts_library/brfl.swf +0 -0
- data/resources/charts/charts_library/brno.swf +0 -0
- data/resources/charts/charts_library/brst.swf +0 -0
- data/resources/charts/charts_library/buno.swf +0 -0
- data/resources/charts/charts_library/cl3d.swf +0 -0
- data/resources/charts/charts_library/clfl.swf +0 -0
- data/resources/charts/charts_library/clim.swf +0 -0
- data/resources/charts/charts_library/clno.swf +0 -0
- data/resources/charts/charts_library/clp3.swf +0 -0
- data/resources/charts/charts_library/cls3.swf +0 -0
- data/resources/charts/charts_library/clst.swf +0 -0
- data/resources/charts/charts_library/cnno.swf +0 -0
- data/resources/charts/charts_library/dono.swf +0 -0
- data/resources/charts/charts_library/lnno.swf +0 -0
- data/resources/charts/charts_library/mxno.swf +0 -0
- data/resources/charts/charts_library/pi3d.swf +0 -0
- data/resources/charts/charts_library/piim.swf +0 -0
- data/resources/charts/charts_library/pino.swf +0 -0
- data/resources/charts/charts_library/pono.swf +0 -0
- data/resources/charts/charts_library/scno.swf +0 -0
- data/resources/charts/full_screen.swf +0 -0
- data/resources/charts/scripts/output_jpg.php +23 -0
- data/resources/charts/sliders/black.swf +0 -0
- data/resources/charts/sliders/preview_handle_1.swf +0 -0
- data/resources/charts/sliders/preview_handle_2.swf +0 -0
- data/resources/charts/themes/readme.txt +13 -0
- data/{gauges → resources/gauges}/designs/circle.yml +0 -0
- data/{gauges → resources/gauges}/designs/signal.yml +0 -0
- data/{gauges → resources/gauges}/designs/thermo.yml +0 -0
- data/{gauges → resources/gauges}/designs/title.yml +0 -0
- data/{gauges → resources/gauges}/gauge.swf +0 -0
- data/resources/maps/js/Exception.js +45 -0
- data/resources/maps/js/FlashProxy.js +72 -0
- data/resources/maps/js/FlashSerializer.js +165 -0
- data/resources/maps/js/FlashTag.js +111 -0
- data/resources/maps/js/JavaScriptFlashGateway.js +455 -0
- data/resources/maps/js/JavaScriptFlashGateway.swf +0 -0
- data/resources/maps/map_library/australia.swf +0 -0
- data/resources/maps/map_library/belgium.swf +0 -0
- data/resources/maps/map_library/brazil.swf +0 -0
- data/resources/maps/map_library/canada.swf +0 -0
- data/resources/maps/map_library/europe.swf +0 -0
- data/resources/maps/map_library/france.swf +0 -0
- data/resources/maps/map_library/germany.swf +0 -0
- data/resources/maps/map_library/italy.swf +0 -0
- data/resources/maps/map_library/mexico.swf +0 -0
- data/resources/maps/map_library/sweden.swf +0 -0
- data/resources/maps/map_library/uk_ireland.swf +0 -0
- data/resources/maps/map_library/us.swf +0 -0
- data/resources/maps/map_library/us_canada.swf +0 -0
- data/resources/maps/map_library/world.swf +0 -0
- data/resources/maps/themes/readme.txt +13 -0
- data/spec/charts/base_spec.rb +2 -2
- data/spec/charts/chart_type_spec.rb +3 -4
- data/spec/{components → charts/support}/area_spec.rb +8 -8
- data/spec/charts/support/draw_spec.rb +41 -0
- data/spec/{components → charts/support}/filter_spec.rb +6 -6
- data/spec/{components → charts/support}/link_spec.rb +6 -6
- data/spec/{components → charts/support}/series.rb +4 -4
- data/spec/{components → charts/support}/series_color_spec.rb +4 -4
- data/spec/{components → charts/support}/series_explode.rb +4 -4
- data/spec/{components → charts/support}/series_explode_spec.rb +4 -4
- data/spec/core_ext/string_spec.rb +40 -0
- data/spec/gauges/base_spec.rb +1 -1
- data/spec/html_helpers/base_spec.rb +50 -0
- data/spec/html_helpers/charts_spec.rb +23 -0
- data/spec/html_helpers/gauges_spec.rb +16 -0
- data/spec/html_helpers/maps_spec.rb +20 -0
- data/spec/maps/base_spec.rb +82 -0
- data/spec/maps/support/default_color_spec.rb +29 -0
- data/spec/maps/support/heat_range_spec.rb +29 -0
- data/spec/maps/us_spec.rb +12 -0
- data/spec/maps/world_spec.rb +18 -0
- data/spec/spec_helper.rb +5 -4
- data/spec/themes/maps/base_map.yml +81 -0
- data/spec/themes/maps/us_map.yml +6 -0
- data/spec/themes/maps/world_map.yml +6 -0
- data/spec/themes/maps/world_ov_map.yml +6 -0
- data/spec/{helpers/base_helper_spec.rb → yaml_helpers/charts_spec.rb} +10 -13
- data/spec/yaml_helpers/gauges_spec.rb +15 -0
- data/spec/ziya_helper_spec.rb +118 -116
- data/tasks/gem.rake +1 -1
- data/tasks/setup.rb +1 -1
- data/ziya.gemspec +39 -0
- metadata +259 -438
- data/lib/ziya/helpers/base_helper.rb +0 -91
- data/lib/ziya/utils/text.rb +0 -39
- data/lib/ziya/ziya_helper.rb +0 -362
- data/spec/components/draw_spec.rb +0 -37
- data/spec/utils/text_spec.rb +0 -33
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'ziya/maps/support/base'
|
2
|
+
|
3
|
+
module Ziya::Maps::Support
|
4
|
+
class Range < Base
|
5
|
+
class << self
|
6
|
+
def define_mappings( mappings )
|
7
|
+
@mappings = mappings
|
8
|
+
end
|
9
|
+
|
10
|
+
def mappings
|
11
|
+
@mappings
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
has_attribute :color, :level
|
16
|
+
define_mappings :level => :data
|
17
|
+
|
18
|
+
def flatten( xml )
|
19
|
+
xml.state( :id => to_component_id ) do |b|
|
20
|
+
options.keys.sort { |a,b| a.to_s <=> b.to_s }.each { |k| self.class.module_eval "xml.#{find_key_for_attr(k)}( '#{options[k]}' )" }
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def find_key_for_attr( k )
|
27
|
+
return Range.mappings[k] if Range.mappings.has_key? k
|
28
|
+
k
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# -----------------------------------------------------------------------------
|
2
|
+
#
|
3
|
+
# Author:: Fernand Galiana
|
4
|
+
# -----------------------------------------------------------------------------
|
5
|
+
module Ziya::Maps::Support
|
6
|
+
class Ranges < Base
|
7
|
+
has_attribute :ranges
|
8
|
+
|
9
|
+
# -------------------------------------------------------------------------
|
10
|
+
# Dump has_attribute into xml element
|
11
|
+
def flatten( xml )
|
12
|
+
ranges.each do |range|
|
13
|
+
range["range"].flatten( xml )
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
data/lib/ziya/maps/uk.rb
ADDED
data/lib/ziya/maps/us.rb
ADDED
data/lib/ziya/version.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
module Ziya
|
2
2
|
module Version
|
3
3
|
MAJOR = 2
|
4
|
-
MINOR =
|
5
|
-
TINY =
|
4
|
+
MINOR = 1
|
5
|
+
TINY = 0
|
6
6
|
|
7
7
|
# Returns the version string for the library.
|
8
8
|
def self.version
|
9
|
-
[ MAJOR, MINOR, TINY].join( "." )
|
9
|
+
[ MAJOR, MINOR, TINY ].join( "." )
|
10
10
|
end
|
11
11
|
end
|
12
12
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require "ziya/core_ext/string"
|
2
|
+
|
3
|
+
module Ziya
|
4
|
+
module YamlHelpers
|
5
|
+
module Base
|
6
|
+
# indent yaml content vy multiples of 2 spaces
|
7
|
+
def indent( multiple= 1 )
|
8
|
+
" " * multiple
|
9
|
+
end
|
10
|
+
|
11
|
+
# generates a yaml class declaration
|
12
|
+
def clazz( class_name, module_name=nil ) #:nodoc:
|
13
|
+
buff = "!ruby/object:Ziya::"
|
14
|
+
buff << "#{module_name}::" unless module_name.nil?
|
15
|
+
buff << class_name.to_s.camelize_it
|
16
|
+
buff
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'ziya/yaml_helpers/base'
|
2
|
+
require 'ziya/html_helpers/charts'
|
3
|
+
|
4
|
+
module Ziya
|
5
|
+
module YamlHelpers
|
6
|
+
module Charts
|
7
|
+
include Ziya::YamlHelpers::Base, Ziya::HtmlHelpers::Charts
|
8
|
+
|
9
|
+
# Defines various helpers to assist in writing ZiYa yaml stylesheets.
|
10
|
+
|
11
|
+
# generates a swf chart path from the given url. Used as helper to embed a chart
|
12
|
+
# within a chart
|
13
|
+
# ==== Example
|
14
|
+
# <%= chart_url( chart_1_path, "fred" ) %>
|
15
|
+
#
|
16
|
+
# => /charts/charts.swf?library_path=/charts/charts_library&xml_source=http://fred/load_chart_1.xml&chart_id=fred
|
17
|
+
def chart_url( url, swf_chart_dir="/charts", id=nil )
|
18
|
+
gen_composite_path( swf_chart_dir, url, id )
|
19
|
+
end
|
20
|
+
|
21
|
+
# generates a component yaml class declaration
|
22
|
+
# ==== Example
|
23
|
+
# <%= component :axis_category %>
|
24
|
+
# => axis_category: --- !ruby/object:Ziya::Charts::Support::AxisCategory
|
25
|
+
def component( component_name )
|
26
|
+
"#{component_name}: #{clazz component_name, 'Charts::Support' }"
|
27
|
+
end
|
28
|
+
alias :comp :component
|
29
|
+
|
30
|
+
# generates a drawing yaml class declaration
|
31
|
+
# ==== Example
|
32
|
+
# <%=drawing :rect %>
|
33
|
+
# => --- !ruby/object:Ziya::Charts::Support::Rect
|
34
|
+
def drawing( class_name )
|
35
|
+
clazz( class_name, 'Charts::Support' )
|
36
|
+
end
|
37
|
+
alias_method :filter_type, :drawing
|
38
|
+
alias_method :area , :drawing
|
39
|
+
|
40
|
+
# generates a yaml chart declaration
|
41
|
+
# ==== Example
|
42
|
+
# <%= chart :bar %>
|
43
|
+
# => --- !ruby/object:Ziya::Charts::Bar
|
44
|
+
def chart( class_name )
|
45
|
+
"--- #{clazz( class_name, :Charts )}"
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module Ziya::YamlHelpers::Gauges
|
2
|
+
include Ziya::YamlHelpers::Base
|
3
|
+
|
4
|
+
# generates a gauge yaml class declaration
|
5
|
+
# ==== Example
|
6
|
+
# <%= gauge :thermo %>
|
7
|
+
#
|
8
|
+
# produces:
|
9
|
+
#
|
10
|
+
# --- !ruby/object:Ziya::Gauges::Thermo
|
11
|
+
# components: !omap
|
12
|
+
def gauge( class_name )
|
13
|
+
"--- #{clazz( class_name, 'Gauges' )}\n#{dials}"
|
14
|
+
end
|
15
|
+
|
16
|
+
# generates a gauge element declaration
|
17
|
+
# ==== Example
|
18
|
+
# <%= dial :rect %>
|
19
|
+
# => --- !ruby/object:Ziya::Gauges::Support::Rect
|
20
|
+
def dial( comp_class, comp_name=nil )
|
21
|
+
clazz = clazz( comp_class, "Gauges::Support" )
|
22
|
+
comp_name ? "- :#{comp_name}: #{clazz}" : "- #{clazz}"
|
23
|
+
end
|
24
|
+
|
25
|
+
# generates a yaml hash of dials
|
26
|
+
# ==== Example
|
27
|
+
# <%= dials %>
|
28
|
+
# => components: !omap
|
29
|
+
def dials
|
30
|
+
"components: !omap"
|
31
|
+
end
|
32
|
+
alias :components :dials
|
33
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Ziya::YamlHelpers::Maps
|
2
|
+
include Ziya::YamlHelpers::Base
|
3
|
+
|
4
|
+
# Defines various helpers to assist in writing ZiYa yaml stylesheets.
|
5
|
+
|
6
|
+
def map( class_name )
|
7
|
+
"--- #{clazz( class_name, :Maps )}"
|
8
|
+
end
|
9
|
+
|
10
|
+
def config( component_name )
|
11
|
+
"#{component_name}: #{clazz component_name, 'Maps::Support'}"
|
12
|
+
end
|
13
|
+
|
14
|
+
def level
|
15
|
+
"- " + config( :range )
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
Ziya.require_all_libs_relative_to __FILE__, "yaml_helpers"
|
data/lib/ziya.rb
CHANGED
@@ -1,9 +1,5 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
# BOZO !! Document !!
|
4
|
-
|
5
|
-
# Equivalent to a header guard in C/C++
|
6
|
-
# Used to prevent the class/module from being loaded more than once
|
1
|
+
# Initializes the ziya framework. Call Ziya.initialize(...) somewhere in your
|
2
|
+
# framework initialization routine
|
7
3
|
unless defined? Ziya
|
8
4
|
module Ziya
|
9
5
|
# :stopdoc:
|
@@ -11,22 +7,30 @@ unless defined? Ziya
|
|
11
7
|
PATH = ::File.dirname(LIBPATH) + ::File::SEPARATOR
|
12
8
|
|
13
9
|
def self.default_configuration
|
14
|
-
{
|
10
|
+
{
|
11
|
+
:themes_dir => File.join( File.dirname(__FILE__), %w[.. charts themes] ),
|
15
12
|
:log_file => $stdout,
|
16
|
-
:log_level => :info
|
13
|
+
:log_level => :info
|
14
|
+
}
|
17
15
|
end
|
18
16
|
|
19
17
|
def self.initialize( opts={} )
|
20
|
-
|
21
|
-
|
18
|
+
if opts[:log_level] == :debug
|
19
|
+
puts ">>> No logger specified. Using ZiYa default logger" unless opts[:logger]
|
20
|
+
puts ">>> No themes_dir specified. Using ZiYa default themes" unless opts[:themes_dir]
|
21
|
+
end
|
22
22
|
@config = default_configuration.merge( opts )
|
23
23
|
@logger = opts[:logger] if opts[:logger]
|
24
24
|
|
25
|
-
# Verify
|
25
|
+
# Verify existence of themes, designs and helper dirs if any
|
26
26
|
if themes_dir
|
27
27
|
raise "Unable to find themes directory `#{themes_dir}" unless File.exists?( themes_dir )
|
28
28
|
end
|
29
29
|
|
30
|
+
if map_themes_dir
|
31
|
+
raise "Unable to find map themes directory `#{map_themes_dir}" unless File.exists?( map_themes_dir )
|
32
|
+
end
|
33
|
+
|
30
34
|
if designs_dir
|
31
35
|
raise "Unable to find designs directory `#{designs_dir}" unless File.exists?( designs_dir )
|
32
36
|
end
|
@@ -57,6 +61,11 @@ unless defined? Ziya
|
|
57
61
|
config[:themes_dir]
|
58
62
|
end
|
59
63
|
|
64
|
+
# the map themes root directory location
|
65
|
+
def self.map_themes_dir
|
66
|
+
config[:map_themes_dir]
|
67
|
+
end
|
68
|
+
|
60
69
|
# the gauges designs root directory location
|
61
70
|
def self.designs_dir
|
62
71
|
config[:designs_dir]
|
@@ -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
|
+
}
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|