? .svn ? FusionCharts ? fusioncharts-integration-487596-1.patch ? fusioncharts-integration-487596-4.patch ? fusioncharts-remove_br-486190-0.patch ? contrib/.svn ? contrib/fusioncharts_system/.svn ? contrib/fusioncharts_webform/.svn ? fusioncharts_cck/.svn ? fusioncharts_node/.svn ? fusioncharts_test/.svn Index: fusioncharts.info =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/fusioncharts/fusioncharts.info,v retrieving revision 1.2.2.1 diff -u -p -r1.2.2.1 fusioncharts.info --- fusioncharts.info 16 Dec 2008 07:33:43 -0000 1.2.2.1 +++ fusioncharts.info 10 Jun 2009 15:51:47 -0000 @@ -1,4 +1,4 @@ name = Fusion Charts core = 6.x package = Fusion Charts -description = Integration with Fusion Charts Free. +description = Integration with Fusion Charts. Index: fusioncharts.install =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/fusioncharts/fusioncharts.install,v retrieving revision 1.5.2.3 diff -u -p -r1.5.2.3 fusioncharts.install --- fusioncharts.install 5 Mar 2009 08:03:39 -0000 1.5.2.3 +++ fusioncharts.install 10 Jun 2009 15:51:47 -0000 @@ -1,5 +1,5 @@ 'fusioncharts_data_jscallback', 'type' => MENU_CALLBACK, 'access arguments' => array('access content'), - ); + ); return $items; } @@ -35,7 +35,6 @@ function fusioncharts_menu() { * @param array $args Any further arguments recieved by the function. These arguments will be passed to the callback function. optional * @return the XML data to draw the chart */ - function fusioncharts_data() { $args = func_get_args(); $jsid = array_shift($args); @@ -47,7 +46,7 @@ function fusioncharts_data() { $callbackfn = strtolower($param); $callback_data = call_user_func($callbackfn .'_fusionchart_callback', $args); } - + if (isset($callback_data->query)) { $data = fusioncharts_prepare_data_query($callback_data); } @@ -55,7 +54,7 @@ function fusioncharts_data() { $data = $callback_data->data; } $data = (array)$data; - + //populate some colors into attributes if none are set if (!isset($callback_data->attributes['color'])) { $attributes = fusioncharts_settings('fusioncharts-defattr'); @@ -66,8 +65,8 @@ function fusioncharts_data() { } } } - - $str_xml = "\nsettings as $key => $value) { if ($value === '') { //exclude unset keys } @@ -75,7 +74,7 @@ function fusioncharts_data() { $str_xml .= " ". $key ."='". fusioncharts_entities($value) ."'"; } } - $str_xml .= ">\n"; + $str_xml .= ">"; //build the data structure switch ($callback_data->chart_type) { case 'Column 3D': @@ -89,7 +88,7 @@ function fusioncharts_data() { case 'Funnel Chart': $str_xml .= _fusioncharts_data_single($data, $callback_data->attributes, $jsid); break; - + case 'Multi-series Column 2D': case 'Multi-series Column 3D': case 'Multi-series Line 2D': @@ -101,38 +100,73 @@ function fusioncharts_data() { case 'Stacked Area 2D': $str_xml .= _fusioncharts_data_multi($data, $callback_data->attributes, $jsid); break; - + case 'Multi-series Column 2D + Line - Dual Y Axis': case 'Multi-series Column 3D + Line - Dual Y Axis': $str_xml .= _fusioncharts_data_combination($data, $callback_data->attributes, $jsid); break; - + case 'Candlestick Chart': break; - + case 'Gantt Chart': break; } if (isset($callback_data->attributes['trendline'])) { - $str_xml .= "\n"; + $str_xml .= ""; if (is_array($callback_data->attributes['trendline'][0])) { foreach ($callback_data->attributes['trendline'] as $line) { $attrs = ''; foreach ($line as $atrib => $value) { $attrs .= "$atrib='$value'"; } - $str_xml .= "\n"; + $str_xml .= ""; } } else { foreach ($callback_data->attributes['trendline'] as $atrib => $value) { $attrs .= "$atrib='$value' "; } - $str_xml .= "\n"; + $str_xml .= ""; + } + $str_xml .= ""; + } + + // FusionCharts commercial package has extra settings for styles, see the + // documentation at http://www.fusioncharts.com/docs/. + // + // Examples of the input data expected: + // attributes['styles']['definition'][0]['name'] = 'myBevel'; + // attributes['styles']['application'][0]['toObject'] = 'tooltip'; + if (isset($callback_data->attributes['styles'])) { + $str_xml .= ""; + if (is_array($callback_data->attributes['styles']['definition'])) { + $str_xml .= ""; + foreach ($callback_data->attributes['styles']['definition'] as $style_def) { + $attrs = ''; + foreach ($style_def as $key => $val) { + $attrs .= "$key='$val'"; + } + $str_xml .= "