Completed
Branch master (72d684)
by Christian
13:26
created
drupal/sites/all/libraries/phpmailer/extras/ntlm_sasl_client.php 3 patches
Doc Comments   +9 added lines patch added patch discarded remove patch
@@ -18,6 +18,9 @@  discard block
 block discarded – undo
18 18
     public $credentials = array();
19 19
     public $state = SASL_NTLM_STATE_START;
20 20
 
21
+    /**
22
+     * @param stdClass $client
23
+     */
21 24
     public function initialize(&$client)
22 25
     {
23 26
         if (!function_exists($function = "mcrypt_encrypt")
@@ -63,6 +66,9 @@  discard block
 block discarded – undo
63 66
         );
64 67
     }
65 68
 
69
+    /**
70
+     * @param string $challenge
71
+     */
66 72
     public function NTLMResponse($challenge, $password)
67 73
     {
68 74
         $unicode = $this->ASCIIToUnicode($password);
@@ -85,6 +91,9 @@  discard block
 block discarded – undo
85 91
         return $response;
86 92
     }
87 93
 
94
+    /**
95
+     * @param string $ntlm_response
96
+     */
88 97
     public function typeMsg3($ntlm_response, $user, $domain, $workstation)
89 98
     {
90 99
         $domain_unicode = $this->ASCIIToUnicode($domain);
Please login to merge, or discard this patch.
Switch Indentation   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -159,26 +159,26 @@
 block discarded – undo
159 159
     public function step(&$client, $response, &$message, &$interactions)
160 160
     {
161 161
         switch ($this->state) {
162
-            case SASL_NTLM_STATE_IDENTIFY_DOMAIN:
163
-                $message = $this->typeMsg1($this->credentials["realm"], $this->credentials["workstation"]);
164
-                $this->state = SASL_NTLM_STATE_RESPOND_CHALLENGE;
165
-                break;
166
-            case SASL_NTLM_STATE_RESPOND_CHALLENGE:
167
-                $ntlm_response = $this->NTLMResponse(substr($response, 24, 8), $this->credentials["password"]);
168
-                $message = $this->typeMsg3(
169
-                    $ntlm_response,
170
-                    $this->credentials["user"],
171
-                    $this->credentials["realm"],
172
-                    $this->credentials["workstation"]
173
-                );
174
-                $this->state = SASL_NTLM_STATE_DONE;
175
-                break;
176
-            case SASL_NTLM_STATE_DONE:
177
-                $client->error = "NTLM authentication was finished without success";
178
-                return (SASL_FAIL);
179
-            default:
180
-                $client->error = "invalid NTLM authentication step state";
181
-                return (SASL_FAIL);
162
+        case SASL_NTLM_STATE_IDENTIFY_DOMAIN:
163
+            $message = $this->typeMsg1($this->credentials["realm"], $this->credentials["workstation"]);
164
+            $this->state = SASL_NTLM_STATE_RESPOND_CHALLENGE;
165
+            break;
166
+        case SASL_NTLM_STATE_RESPOND_CHALLENGE:
167
+            $ntlm_response = $this->NTLMResponse(substr($response, 24, 8), $this->credentials["password"]);
168
+            $message = $this->typeMsg3(
169
+                $ntlm_response,
170
+                $this->credentials["user"],
171
+                $this->credentials["realm"],
172
+                $this->credentials["workstation"]
173
+            );
174
+            $this->state = SASL_NTLM_STATE_DONE;
175
+            break;
176
+        case SASL_NTLM_STATE_DONE:
177
+            $client->error = "NTLM authentication was finished without success";
178
+            return (SASL_FAIL);
179
+        default:
180
+            $client->error = "invalid NTLM authentication step state";
181
+            return (SASL_FAIL);
182 182
         }
183 183
         return (SASL_CONTINUE);
184 184
     }
Please login to merge, or discard this patch.
Spacing   +39 added lines, -39 removed lines patch added patch discarded remove patch
@@ -27,7 +27,7 @@  discard block
 block discarded – undo
27 27
                 "mcrypt_encrypt" => "mcrypt",
28 28
                 "mhash" => "mhash"
29 29
             );
30
-            $client->error = "the extension " . $extensions[$function] .
30
+            $client->error = "the extension ".$extensions[$function].
31 31
                 " required by the NTLM SASL client class is not available in this PHP configuration";
32 32
             return (0);
33 33
         }
@@ -37,7 +37,7 @@  discard block
 block discarded – undo
37 37
     public function ASCIIToUnicode($ascii)
38 38
     {
39 39
         for ($unicode = "", $a = 0; $a < strlen($ascii); $a++) {
40
-            $unicode .= substr($ascii, $a, 1) . chr(0);
40
+            $unicode .= substr($ascii, $a, 1).chr(0);
41 41
         }
42 42
         return ($unicode);
43 43
     }
@@ -49,16 +49,16 @@  discard block
 block discarded – undo
49 49
         $workstation_offset = 32;
50 50
         $domain_offset = $workstation_offset + $workstation_length;
51 51
         return (
52
-            "NTLMSSP\0" .
53
-            "\x01\x00\x00\x00" .
54
-            "\x07\x32\x00\x00" .
55
-            pack("v", $domain_length) .
56
-            pack("v", $domain_length) .
57
-            pack("V", $domain_offset) .
58
-            pack("v", $workstation_length) .
59
-            pack("v", $workstation_length) .
60
-            pack("V", $workstation_offset) .
61
-            $workstation .
52
+            "NTLMSSP\0".
53
+            "\x01\x00\x00\x00".
54
+            "\x07\x32\x00\x00".
55
+            pack("v", $domain_length).
56
+            pack("v", $domain_length).
57
+            pack("V", $domain_offset).
58
+            pack("v", $workstation_length).
59
+            pack("v", $workstation_length).
60
+            pack("V", $workstation_offset).
61
+            $workstation.
62 62
             $domain
63 63
         );
64 64
     }
@@ -67,7 +67,7 @@  discard block
 block discarded – undo
67 67
     {
68 68
         $unicode = $this->ASCIIToUnicode($password);
69 69
         $md4 = mhash(MHASH_MD4, $unicode);
70
-        $padded = $md4 . str_repeat(chr(0), 21 - strlen($md4));
70
+        $padded = $md4.str_repeat(chr(0), 21 - strlen($md4));
71 71
         $iv_size = mcrypt_get_iv_size(MCRYPT_DES, MCRYPT_MODE_ECB);
72 72
         $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
73 73
         for ($response = "", $third = 0; $third < 21; $third += 7) {
@@ -76,7 +76,7 @@  discard block
 block discarded – undo
76 76
             }
77 77
             for ($key = "", $p = 0; $p < strlen($packed); $p += 7) {
78 78
                 $s = substr($packed, $p, 7);
79
-                $b = $s . ((substr_count($s, "1") % 2) ? "0" : "1");
79
+                $b = $s.((substr_count($s, "1")%2) ? "0" : "1");
80 80
                 $key .= chr(bindec($b));
81 81
             }
82 82
             $ciphertext = mcrypt_encrypt(MCRYPT_DES, $key, $challenge, MCRYPT_MODE_ECB, $iv);
@@ -106,31 +106,31 @@  discard block
 block discarded – undo
106 106
         $session_length = strlen($session);
107 107
         $session_offset = $ntlm_offset + $ntlm_length;
108 108
         return (
109
-            "NTLMSSP\0" .
110
-            "\x03\x00\x00\x00" .
111
-            pack("v", $lm_length) .
112
-            pack("v", $lm_length) .
113
-            pack("V", $lm_offset) .
114
-            pack("v", $ntlm_length) .
115
-            pack("v", $ntlm_length) .
116
-            pack("V", $ntlm_offset) .
117
-            pack("v", $domain_length) .
118
-            pack("v", $domain_length) .
119
-            pack("V", $domain_offset) .
120
-            pack("v", $user_length) .
121
-            pack("v", $user_length) .
122
-            pack("V", $user_offset) .
123
-            pack("v", $workstation_length) .
124
-            pack("v", $workstation_length) .
125
-            pack("V", $workstation_offset) .
126
-            pack("v", $session_length) .
127
-            pack("v", $session_length) .
128
-            pack("V", $session_offset) .
129
-            "\x01\x02\x00\x00" .
130
-            $domain_unicode .
131
-            $user_unicode .
132
-            $workstation_unicode .
133
-            $lm .
109
+            "NTLMSSP\0".
110
+            "\x03\x00\x00\x00".
111
+            pack("v", $lm_length).
112
+            pack("v", $lm_length).
113
+            pack("V", $lm_offset).
114
+            pack("v", $ntlm_length).
115
+            pack("v", $ntlm_length).
116
+            pack("V", $ntlm_offset).
117
+            pack("v", $domain_length).
118
+            pack("v", $domain_length).
119
+            pack("V", $domain_offset).
120
+            pack("v", $user_length).
121
+            pack("v", $user_length).
122
+            pack("V", $user_offset).
123
+            pack("v", $workstation_length).
124
+            pack("v", $workstation_length).
125
+            pack("V", $workstation_offset).
126
+            pack("v", $session_length).
127
+            pack("v", $session_length).
128
+            pack("V", $session_offset).
129
+            "\x01\x02\x00\x00".
130
+            $domain_unicode.
131
+            $user_unicode.
132
+            $workstation_unicode.
133
+            $lm.
134 134
             $ntlm
135 135
         );
136 136
     }
Please login to merge, or discard this patch.
drupal/sites/all/themes/zen/template.php 5 patches
Doc Comments   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
  * @param $breadcrumb
33 33
  *   An array containing the breadcrumb links.
34 34
  * @return
35
- *   A string containing the breadcrumb output.
35
+ string   A string containing the breadcrumb output.
36 36
  */
37 37
 function zen_breadcrumb($breadcrumb) {
38 38
   // Determine if we are to display the breadcrumb.
@@ -87,7 +87,7 @@  discard block
 block discarded – undo
87 87
  *   See http://juicystudio.com/article/screen-readers-display-none.php
88 88
  *   and http://www.w3.org/TR/WCAG-TECHS/H42.html for more information.
89 89
  * @return
90
- *   A string containing an unordered list of links.
90
+ string   A string containing an unordered list of links.
91 91
  */
92 92
 function zen_links($links, $attributes = array('class' => 'links'), $heading = '') {
93 93
   global $language;
@@ -600,10 +600,10 @@  discard block
 block discarded – undo
600 600
    * Do not pass one string containing multiple classes as they will be
601 601
    * incorrectly concatenated with dashes, i.e. "one two" will become "one-two".
602 602
    *
603
-   * @param $class
603
+   * @param string $class
604 604
    *   The class name to clean.
605 605
    * @return
606
-   *   The cleaned class name.
606
+   string   The cleaned class name.
607 607
    */
608 608
   function drupal_html_class($class) {
609 609
     // By default, we filter using Drupal's coding standards.
@@ -633,7 +633,7 @@  discard block
 block discarded – undo
633 633
    * @param $id
634 634
    *   The ID to clean.
635 635
    * @return
636
-   *   The cleaned ID.
636
+   string   The cleaned ID.
637 637
    */
638 638
   function drupal_html_id($id) {
639 639
     $id = strtr(drupal_strtolower($id), array(' ' => '-', '_' => '-', '[' => '-', ']' => ''));
Please login to merge, or discard this patch.
Indentation   +242 added lines, -242 removed lines patch added patch discarded remove patch
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
 
14 14
 // Auto-rebuild the theme registry during theme development.
15 15
 if (theme_get_setting('zen_rebuild_registry')) {
16
-  drupal_rebuild_theme_registry();
16
+    drupal_rebuild_theme_registry();
17 17
 }
18 18
 
19 19
 
@@ -21,9 +21,9 @@  discard block
 block discarded – undo
21 21
  * Implements HOOK_theme().
22 22
  */
23 23
 function zen_theme(&$existing, $type, $theme, $path) {
24
-  // When #341140 is fixed, replace _zen_path() with drupal_get_path().
25
-  include_once './' . _zen_path() . '/zen-internals/template.theme-registry.inc';
26
-  return _zen_theme($existing, $type, $theme, $path);
24
+    // When #341140 is fixed, replace _zen_path() with drupal_get_path().
25
+    include_once './' . _zen_path() . '/zen-internals/template.theme-registry.inc';
26
+    return _zen_theme($existing, $type, $theme, $path);
27 27
 }
28 28
 
29 29
 /**
@@ -35,33 +35,33 @@  discard block
 block discarded – undo
35 35
  *   A string containing the breadcrumb output.
36 36
  */
37 37
 function zen_breadcrumb($breadcrumb) {
38
-  // Determine if we are to display the breadcrumb.
39
-  $show_breadcrumb = theme_get_setting('zen_breadcrumb');
40
-  if ($show_breadcrumb == 'yes' || $show_breadcrumb == 'admin' && arg(0) == 'admin') {
38
+    // Determine if we are to display the breadcrumb.
39
+    $show_breadcrumb = theme_get_setting('zen_breadcrumb');
40
+    if ($show_breadcrumb == 'yes' || $show_breadcrumb == 'admin' && arg(0) == 'admin') {
41 41
 
42 42
     // Optionally get rid of the homepage link.
43 43
     $show_breadcrumb_home = theme_get_setting('zen_breadcrumb_home');
44 44
     if (!$show_breadcrumb_home) {
45
-      array_shift($breadcrumb);
45
+        array_shift($breadcrumb);
46 46
     }
47 47
 
48 48
     // Return the breadcrumb with separators.
49 49
     if (!empty($breadcrumb)) {
50
-      $breadcrumb_separator = theme_get_setting('zen_breadcrumb_separator');
51
-      $trailing_separator = $title = '';
52
-      if (theme_get_setting('zen_breadcrumb_title')) {
50
+        $breadcrumb_separator = theme_get_setting('zen_breadcrumb_separator');
51
+        $trailing_separator = $title = '';
52
+        if (theme_get_setting('zen_breadcrumb_title')) {
53 53
         if ($title = drupal_get_title()) {
54
-          $trailing_separator = $breadcrumb_separator;
54
+            $trailing_separator = $breadcrumb_separator;
55 55
         }
56
-      }
57
-      elseif (theme_get_setting('zen_breadcrumb_trailing')) {
56
+        }
57
+        elseif (theme_get_setting('zen_breadcrumb_trailing')) {
58 58
         $trailing_separator = $breadcrumb_separator;
59
-      }
60
-      return '<div class="breadcrumb">' . implode($breadcrumb_separator, $breadcrumb) . "$trailing_separator$title</div>";
59
+        }
60
+        return '<div class="breadcrumb">' . implode($breadcrumb_separator, $breadcrumb) . "$trailing_separator$title</div>";
61 61
     }
62
-  }
63
-  // Otherwise, return an empty string.
64
-  return '';
62
+    }
63
+    // Otherwise, return an empty string.
64
+    return '';
65 65
 }
66 66
 
67 67
 /**
@@ -90,27 +90,27 @@  discard block
 block discarded – undo
90 90
  *   A string containing an unordered list of links.
91 91
  */
92 92
 function zen_links($links, $attributes = array('class' => 'links'), $heading = '') {
93
-  global $language;
94
-  $output = '';
93
+    global $language;
94
+    $output = '';
95 95
 
96
-  if (count($links) > 0) {
96
+    if (count($links) > 0) {
97 97
     // Treat the heading first if it is present to prepend it to the
98 98
     // list of links.
99 99
     if (!empty($heading)) {
100
-      if (is_string($heading)) {
100
+        if (is_string($heading)) {
101 101
         // Prepare the array that will be used when the passed heading
102 102
         // is a string.
103 103
         $heading = array(
104
-          'text' => $heading,
105
-          // Set the default level of the heading.
106
-          'level' => 'h2',
104
+            'text' => $heading,
105
+            // Set the default level of the heading.
106
+            'level' => 'h2',
107 107
         );
108
-      }
109
-      $output .= '<' . $heading['level'];
110
-      if (!empty($heading['class'])) {
108
+        }
109
+        $output .= '<' . $heading['level'];
110
+        if (!empty($heading['class'])) {
111 111
         $output .= drupal_attributes(array('class' => $heading['class']));
112
-      }
113
-      $output .= '>' . check_plain($heading['text']) . '</' . $heading['level'] . '>';
112
+        }
113
+        $output .= '>' . check_plain($heading['text']) . '</' . $heading['level'] . '>';
114 114
     }
115 115
 
116 116
     $output .= '<ul'. drupal_attributes($attributes) .'>';
@@ -119,89 +119,89 @@  discard block
 block discarded – undo
119 119
     $i = 1;
120 120
 
121 121
     foreach ($links as $key => $link) {
122
-      $class = $key;
122
+        $class = $key;
123 123
 
124
-      // Add first, last and active classes to the list of links to help out themers.
125
-      if ($i == 1) {
124
+        // Add first, last and active classes to the list of links to help out themers.
125
+        if ($i == 1) {
126 126
         $class .= ' first';
127
-      }
128
-      if ($i == $num_links) {
127
+        }
128
+        if ($i == $num_links) {
129 129
         $class .= ' last';
130
-      }
131
-      if (isset($link['href']) && ($link['href'] == $_GET['q'] || ($link['href'] == '<front>' && drupal_is_front_page()))
130
+        }
131
+        if (isset($link['href']) && ($link['href'] == $_GET['q'] || ($link['href'] == '<front>' && drupal_is_front_page()))
132 132
           && (empty($link['language']) || $link['language']->language == $language->language)) {
133 133
         $class .= ' active';
134
-      }
135
-      $output .= '<li'. drupal_attributes(array('class' => $class)) .'>';
134
+        }
135
+        $output .= '<li'. drupal_attributes(array('class' => $class)) .'>';
136 136
 
137
-      if (isset($link['href'])) {
137
+        if (isset($link['href'])) {
138 138
         // Pass in $link as $options, they share the same keys.
139 139
         $output .= l($link['title'], $link['href'], $link);
140
-      }
141
-      else if (!empty($link['title'])) {
140
+        }
141
+        else if (!empty($link['title'])) {
142 142
         // Some links are actually not links, but we wrap these in <span> for adding title and class attributes
143 143
         if (empty($link['html'])) {
144
-          $link['title'] = check_plain($link['title']);
144
+            $link['title'] = check_plain($link['title']);
145 145
         }
146 146
         $span_attributes = '';
147 147
         if (isset($link['attributes'])) {
148
-          $span_attributes = drupal_attributes($link['attributes']);
148
+            $span_attributes = drupal_attributes($link['attributes']);
149 149
         }
150 150
         $output .= '<span'. $span_attributes .'>'. $link['title'] .'</span>';
151
-      }
151
+        }
152 152
 
153
-      $i++;
154
-      $output .= "</li>\n";
153
+        $i++;
154
+        $output .= "</li>\n";
155 155
     }
156 156
 
157 157
     $output .= '</ul>';
158
-  }
158
+    }
159 159
 
160
-  return $output;
160
+    return $output;
161 161
 }
162 162
 
163 163
 /**
164 164
  * Implements theme_menu_item_link()
165 165
  */
166 166
 function zen_menu_item_link($link) {
167
-  if (empty($link['localized_options'])) {
167
+    if (empty($link['localized_options'])) {
168 168
     $link['localized_options'] = array();
169
-  }
169
+    }
170 170
 
171
-  // If an item is a LOCAL TASK, render it as a tab
172
-  if ($link['type'] & MENU_IS_LOCAL_TASK) {
171
+    // If an item is a LOCAL TASK, render it as a tab
172
+    if ($link['type'] & MENU_IS_LOCAL_TASK) {
173 173
     $link['title'] = '<span class="tab">' . check_plain($link['title']) . '</span>';
174 174
     $link['localized_options']['html'] = TRUE;
175
-  }
175
+    }
176 176
 
177
-  return l($link['title'], $link['href'], $link['localized_options']);
177
+    return l($link['title'], $link['href'], $link['localized_options']);
178 178
 }
179 179
 
180 180
 /**
181 181
  * Duplicate of theme_menu_local_tasks() but adds clearfix to tabs.
182 182
  */
183 183
 function zen_menu_local_tasks() {
184
-  $output = '';
184
+    $output = '';
185 185
 
186
-  // CTools requires a different set of local task functions.
187
-  if (module_exists('ctools')) {
186
+    // CTools requires a different set of local task functions.
187
+    if (module_exists('ctools')) {
188 188
     ctools_include('menu');
189 189
     $primary = ctools_menu_primary_local_tasks();
190 190
     $secondary = ctools_menu_secondary_local_tasks();
191
-  }
192
-  else {
191
+    }
192
+    else {
193 193
     $primary = menu_primary_local_tasks();
194 194
     $secondary = menu_secondary_local_tasks();
195
-  }
195
+    }
196 196
 
197
-  if ($primary) {
197
+    if ($primary) {
198 198
     $output .= '<ul class="tabs primary clearfix">' . $primary . '</ul>';
199
-  }
200
-  if ($secondary) {
199
+    }
200
+    if ($secondary) {
201 201
     $output .= '<ul class="tabs secondary clearfix">' . $secondary . '</ul>';
202
-  }
202
+    }
203 203
 
204
-  return $output;
204
+    return $output;
205 205
 }
206 206
 
207 207
 /**
@@ -218,32 +218,32 @@  discard block
 block discarded – undo
218 218
  * @see zen_show_blocks_discovery()
219 219
  */
220 220
 function zen_blocks($region, $show_blocks = NULL) {
221
-  // Since Drupal 6 doesn't pass $show_blocks to theme_blocks, we manually call
222
-  // theme('blocks', NULL, $show_blocks) so that this function can remember the
223
-  // value on later calls.
224
-  static $render_sidebars = TRUE;
225
-  if (!is_null($show_blocks)) {
221
+    // Since Drupal 6 doesn't pass $show_blocks to theme_blocks, we manually call
222
+    // theme('blocks', NULL, $show_blocks) so that this function can remember the
223
+    // value on later calls.
224
+    static $render_sidebars = TRUE;
225
+    if (!is_null($show_blocks)) {
226 226
     $render_sidebars = $show_blocks;
227
-  }
227
+    }
228 228
 
229
-  // If zen_blocks was called with a NULL region, its likely we were just
230
-  // setting the $render_sidebars static variable.
231
-  if ($region) {
229
+    // If zen_blocks was called with a NULL region, its likely we were just
230
+    // setting the $render_sidebars static variable.
231
+    if ($region) {
232 232
     $output = '';
233 233
 
234 234
     // If $renders_sidebars is FALSE, don't render any region whose name begins
235 235
     // with "sidebar_".
236 236
     if ($render_sidebars || (strpos($region, 'sidebar_') !== 0)) {
237
-      // Allow context module to set blocks.
238
-      if (function_exists('context_blocks')) {
237
+        // Allow context module to set blocks.
238
+        if (function_exists('context_blocks')) {
239 239
         $output = context_blocks($region);
240
-      }
241
-      else {
240
+        }
241
+        else {
242 242
         foreach (block_list($region) as $key => $block) {
243
-          // $key == module_delta
244
-          $output .= theme('block', $block);
243
+            // $key == module_delta
244
+            $output .= theme('block', $block);
245
+        }
245 246
         }
246
-      }
247 247
     }
248 248
 
249 249
     // Add any content assigned to this region through drupal_set_content() calls.
@@ -255,11 +255,11 @@  discard block
 block discarded – undo
255 255
     // Set the theme hook suggestions.
256 256
     $hook = array('region_' . $region);
257 257
     if (strpos($region, 'sidebar_') === 0) {
258
-      $hook[] = 'region_sidebar';
258
+        $hook[] = 'region_sidebar';
259 259
     }
260 260
     $hook[] = 'region';
261 261
     return $output ? theme($hook, $elements) : '';
262
-  }
262
+    }
263 263
 }
264 264
 
265 265
 /**
@@ -271,11 +271,11 @@  discard block
 block discarded – undo
271 271
  * @see zen_blocks()
272 272
  */
273 273
 function zen_show_blocks_discovery(&$vars) {
274
-  if ($vars['show_blocks'] == FALSE) {
274
+    if ($vars['show_blocks'] == FALSE) {
275 275
     // Allow zen_blocks() to statically cache the $show_blocks variable. A TRUE
276 276
     // value is assumed, so we only need to override when $show_blocks is FALSE.
277 277
     theme('blocks', NULL, FALSE);
278
-  }
278
+    }
279 279
 }
280 280
 
281 281
 /**
@@ -287,25 +287,25 @@  discard block
 block discarded – undo
287 287
  *   The name of the template being rendered.
288 288
  */
289 289
 function zen_preprocess(&$vars, $hook) {
290
-  // In D6, the page.tpl uses a different variable name to hold the classes.
291
-  $key = ($hook == 'page' || $hook == 'maintenance_page') ? 'body_classes' : 'classes';
290
+    // In D6, the page.tpl uses a different variable name to hold the classes.
291
+    $key = ($hook == 'page' || $hook == 'maintenance_page') ? 'body_classes' : 'classes';
292 292
 
293
-  // Create a D7-standard classes_array variable.
294
-  if (array_key_exists($key, $vars)) {
293
+    // Create a D7-standard classes_array variable.
294
+    if (array_key_exists($key, $vars)) {
295 295
     // Views (and possibly other modules) have templates with a $classes
296 296
     // variable that isn't a string, so we leave those variables alone.
297 297
     if (is_string($vars[$key])) {
298
-      $vars['classes_array'] = explode(' ', $hook . ' ' . $vars[$key]);
299
-      unset($vars[$key]);
298
+        $vars['classes_array'] = explode(' ', $hook . ' ' . $vars[$key]);
299
+        unset($vars[$key]);
300
+    }
300 301
     }
301
-  }
302
-  else {
302
+    else {
303 303
     $vars['classes_array'] = array($hook);
304
-  }
305
-  // Add support for Skinr
306
-  if (!empty($vars['skinr']) && array_key_exists('classes_array', $vars)) {
304
+    }
305
+    // Add support for Skinr
306
+    if (!empty($vars['skinr']) && array_key_exists('classes_array', $vars)) {
307 307
     $vars['classes_array'][] = $vars['skinr'];
308
-  }
308
+    }
309 309
 }
310 310
 
311 311
 /**
@@ -317,82 +317,82 @@  discard block
 block discarded – undo
317 317
  *   The name of the template being rendered ("page" in this case.)
318 318
  */
319 319
 function zen_preprocess_page(&$vars, $hook) {
320
-  // If the user is silly and enables Zen as the theme, add some styles.
321
-  if ($GLOBALS['theme'] == 'zen') {
320
+    // If the user is silly and enables Zen as the theme, add some styles.
321
+    if ($GLOBALS['theme'] == 'zen') {
322 322
     include_once './' . _zen_path() . '/zen-internals/template.zen.inc';
323 323
     _zen_preprocess_page($vars, $hook);
324
-  }
325
-  // Add conditional stylesheets.
326
-  elseif (!module_exists('conditional_styles')) {
324
+    }
325
+    // Add conditional stylesheets.
326
+    elseif (!module_exists('conditional_styles')) {
327 327
     $language = $GLOBALS['language']->direction == LANGUAGE_RTL ? '_rtl' : '';
328 328
     $vars['conditional_styles'] = variable_get('conditional_styles_' . $GLOBALS['theme'] . $language, '');
329 329
     $vars['styles'] .= $vars['conditional_styles'];
330
-  }
330
+    }
331 331
 
332
-  // Classes for body element. Allows advanced theming based on context
333
-  // (home page, node of certain type, etc.)
334
-  // Remove the mostly useless page-ARG0 class.
335
-  if ($index = array_search(preg_replace('![^abcdefghijklmnopqrstuvwxyz0-9-_]+!s', '', 'page-'. drupal_strtolower(arg(0))), $vars['classes_array'])) {
332
+    // Classes for body element. Allows advanced theming based on context
333
+    // (home page, node of certain type, etc.)
334
+    // Remove the mostly useless page-ARG0 class.
335
+    if ($index = array_search(preg_replace('![^abcdefghijklmnopqrstuvwxyz0-9-_]+!s', '', 'page-'. drupal_strtolower(arg(0))), $vars['classes_array'])) {
336 336
     unset($vars['classes_array'][$index]);
337
-  }
338
-  if (!$vars['is_front']) {
337
+    }
338
+    if (!$vars['is_front']) {
339 339
     // Add unique class for each page.
340 340
     $path = drupal_get_path_alias($_GET['q']);
341 341
     $vars['classes_array'][] = drupal_html_class('page-' . $path);
342 342
     // Add unique class for each website section.
343 343
     list($section, ) = explode('/', $path, 2);
344 344
     if (arg(0) == 'node') {
345
-      if (arg(1) == 'add') {
345
+        if (arg(1) == 'add') {
346 346
         $section = 'node-add';
347
-      }
348
-      elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) {
347
+        }
348
+        elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) {
349 349
         $section = 'node-' . arg(2);
350
-      }
350
+        }
351 351
     }
352 352
     $vars['classes_array'][] = drupal_html_class('section-' . $section);
353
-  }
354
-  if (theme_get_setting('zen_wireframes')) {
353
+    }
354
+    if (theme_get_setting('zen_wireframes')) {
355 355
     $vars['classes_array'][] = 'with-wireframes'; // Optionally add the wireframes style.
356
-  }
357
-  // We need to re-do the $layout and body classes because
358
-  // template_preprocess_page() assumes sidebars are named 'left' and 'right'.
359
-  $vars['layout'] = 'none';
360
-  if (!empty($vars['sidebar_first'])) {
356
+    }
357
+    // We need to re-do the $layout and body classes because
358
+    // template_preprocess_page() assumes sidebars are named 'left' and 'right'.
359
+    $vars['layout'] = 'none';
360
+    if (!empty($vars['sidebar_first'])) {
361 361
     $vars['layout'] = 'first';
362
-  }
363
-  if (!empty($vars['sidebar_second'])) {
362
+    }
363
+    if (!empty($vars['sidebar_second'])) {
364 364
     $vars['layout'] = ($vars['layout'] == 'first') ? 'both' : 'second';
365
-  }
366
-  // If the layout is 'none', then template_preprocess_page() will already have
367
-  // set a 'no-sidebars' class since it won't find a 'left' or 'right' sidebar.
368
-  if ($vars['layout'] != 'none') {
365
+    }
366
+    // If the layout is 'none', then template_preprocess_page() will already have
367
+    // set a 'no-sidebars' class since it won't find a 'left' or 'right' sidebar.
368
+    if ($vars['layout'] != 'none') {
369 369
     // Remove the incorrect 'no-sidebars' class.
370 370
     if ($index = array_search('no-sidebars', $vars['classes_array'])) {
371
-      unset($vars['classes_array'][$index]);
371
+        unset($vars['classes_array'][$index]);
372 372
     }
373 373
     // Set the proper layout body classes.
374 374
     if ($vars['layout'] == 'both') {
375
-      $vars['classes_array'][] = 'two-sidebars';
375
+        $vars['classes_array'][] = 'two-sidebars';
376 376
     }
377 377
     else {
378
-      $vars['classes_array'][] = 'one-sidebar';
379
-      $vars['classes_array'][] = 'sidebar-' . $vars['layout'];
378
+        $vars['classes_array'][] = 'one-sidebar';
379
+        $vars['classes_array'][] = 'sidebar-' . $vars['layout'];
380
+    }
380 381
     }
381
-  }
382
-  // Store the menu item since it has some useful information.
383
-  $vars['menu_item'] = menu_get_item();
384
-  switch ($vars['menu_item']['page_callback']) {
382
+    // Store the menu item since it has some useful information.
383
+    $vars['menu_item'] = menu_get_item();
384
+    switch ($vars['menu_item']['page_callback']) {
385 385
     case 'views_page':
386 386
       // Is this a Views page?
387 387
       $vars['classes_array'][] = 'page-views';
388
-      break;
388
+        break;
389 389
     case 'page_manager_page_execute':
390 390
     case 'page_manager_node_view':
391 391
     case 'page_manager_contact_site':
392 392
       // Is this a Panels page?
393 393
       $vars['classes_array'][] = 'page-panels';
394
-      break;
395
-  }
394
+        break;
395
+    }
396 396
 }
397 397
 
398 398
 /**
@@ -404,17 +404,17 @@  discard block
 block discarded – undo
404 404
  *   The name of the template being rendered ("maintenance_page" in this case.)
405 405
  */
406 406
 function zen_preprocess_maintenance_page(&$vars, $hook) {
407
-  // If Zen is the maintenance theme, add some styles.
408
-  if ($GLOBALS['theme'] == 'zen') {
407
+    // If Zen is the maintenance theme, add some styles.
408
+    if ($GLOBALS['theme'] == 'zen') {
409 409
     include_once './' . _zen_path() . '/zen-internals/template.zen.inc';
410 410
     _zen_preprocess_page($vars, $hook);
411
-  }
412
-  // Add conditional stylesheets.
413
-  elseif (!module_exists('conditional_styles')) {
411
+    }
412
+    // Add conditional stylesheets.
413
+    elseif (!module_exists('conditional_styles')) {
414 414
     $language = $GLOBALS['language']->direction == LANGUAGE_RTL ? '_rtl' : '';
415 415
     $vars['conditional_styles'] = variable_get('conditional_styles_' . $GLOBALS['theme'] . $language, '');
416 416
     $vars['styles'] .= $vars['conditional_styles'];
417
-  }
417
+    }
418 418
 }
419 419
 
420 420
 /**
@@ -426,67 +426,67 @@  discard block
 block discarded – undo
426 426
  *   The name of the template being rendered ("node" in this case.)
427 427
  */
428 428
 function zen_preprocess_node(&$vars, $hook) {
429
-  // Create the build_mode variable.
430
-  switch ($vars['node']->build_mode) {
429
+    // Create the build_mode variable.
430
+    switch ($vars['node']->build_mode) {
431 431
     case NODE_BUILD_NORMAL:
432 432
       if ($vars['node']->build_mode === NODE_BUILD_NORMAL) {
433 433
         $vars['build_mode'] = $vars['teaser'] ? 'teaser' : 'full';
434
-      }
435
-      else {
434
+        }
435
+        else {
436 436
         $vars['build_mode'] = $vars['node']->build_mode;
437
-      }
438
-      break;
437
+        }
438
+        break;
439 439
     case NODE_BUILD_PREVIEW:
440 440
       $vars['build_mode'] = 'preview';
441
-      break;
441
+        break;
442 442
     case NODE_BUILD_SEARCH_INDEX:
443 443
       $vars['build_mode'] = 'search_index';
444
-      break;
444
+        break;
445 445
     case NODE_BUILD_SEARCH_RESULT:
446 446
       $vars['build_mode'] = 'search_result';
447
-      break;
447
+        break;
448 448
     case NODE_BUILD_RSS:
449 449
       $vars['build_mode'] = 'rss';
450
-      break;
450
+        break;
451 451
     case NODE_BUILD_PRINT:
452 452
       $vars['build_mode'] = 'print';
453
-      break;
453
+        break;
454 454
     default:
455 455
       $vars['build_mode'] = $vars['node']->build_mode;
456
-  }
456
+    }
457 457
 
458
-  // Create the user_picture variable.
459
-  $vars['user_picture'] = $vars['picture'];
458
+    // Create the user_picture variable.
459
+    $vars['user_picture'] = $vars['picture'];
460 460
 
461
-  // Create the Drupal 7 $display_submitted variable.
462
-  $vars['display_submitted'] = theme_get_setting('toggle_node_info_' . $vars['node']->type);
461
+    // Create the Drupal 7 $display_submitted variable.
462
+    $vars['display_submitted'] = theme_get_setting('toggle_node_info_' . $vars['node']->type);
463 463
 
464
-  // Special classes for nodes.
465
-  // Class for node type: "node-type-page", "node-type-story", "node-type-my-custom-type", etc.
466
-  $vars['classes_array'][] = drupal_html_class('node-type-' . $vars['type']);
467
-  if ($vars['promote']) {
464
+    // Special classes for nodes.
465
+    // Class for node type: "node-type-page", "node-type-story", "node-type-my-custom-type", etc.
466
+    $vars['classes_array'][] = drupal_html_class('node-type-' . $vars['type']);
467
+    if ($vars['promote']) {
468 468
     $vars['classes_array'][] = 'node-promoted';
469
-  }
470
-  if ($vars['sticky']) {
469
+    }
470
+    if ($vars['sticky']) {
471 471
     $vars['classes_array'][] = 'node-sticky';
472
-  }
473
-  if (!$vars['status']) {
472
+    }
473
+    if (!$vars['status']) {
474 474
     $vars['classes_array'][] = 'node-unpublished';
475 475
     $vars['unpublished'] = TRUE;
476
-  }
477
-  else {
476
+    }
477
+    else {
478 478
     $vars['unpublished'] = FALSE;
479
-  }
480
-  if ($vars['uid'] && $vars['uid'] == $GLOBALS['user']->uid) {
479
+    }
480
+    if ($vars['uid'] && $vars['uid'] == $GLOBALS['user']->uid) {
481 481
     $vars['classes_array'][] = 'node-by-viewer'; // Node is authored by current user.
482
-  }
483
-  if ($vars['teaser']) {
482
+    }
483
+    if ($vars['teaser']) {
484 484
     $vars['classes_array'][] = 'node-teaser'; // Node is displayed as teaser.
485
-  }
486
-  if (isset($vars['preview'])) {
485
+    }
486
+    if (isset($vars['preview'])) {
487 487
     $vars['classes_array'][] = 'node-preview';
488
-  }
489
-  $vars['classes_array'][] = 'build-mode-' . $vars['build_mode'] ;
488
+    }
489
+    $vars['classes_array'][] = 'build-mode-' . $vars['build_mode'] ;
490 490
 }
491 491
 
492 492
 /**
@@ -498,8 +498,8 @@  discard block
 block discarded – undo
498 498
  *   The name of the template being rendered ("comment" in this case.)
499 499
  */
500 500
 function zen_preprocess_comment(&$vars, $hook) {
501
-  include_once './' . _zen_path() . '/zen-internals/template.comment.inc';
502
-  _zen_preprocess_comment($vars, $hook);
501
+    include_once './' . _zen_path() . '/zen-internals/template.comment.inc';
502
+    _zen_preprocess_comment($vars, $hook);
503 503
 }
504 504
 
505 505
 /**
@@ -511,18 +511,18 @@  discard block
 block discarded – undo
511 511
  * @see region.tpl.php
512 512
  */
513 513
 function zen_preprocess_region(&$vars, $hook) {
514
-  // Create the $content variable that templates expect.
515
-  $vars['content'] = $vars['elements']['#children'];
516
-  $vars['region'] = $vars['elements']['#region'];
514
+    // Create the $content variable that templates expect.
515
+    $vars['content'] = $vars['elements']['#children'];
516
+    $vars['region'] = $vars['elements']['#region'];
517 517
 
518
-  // Setup the default classes.
519
-  $vars['classes_array'] = array('region', 'region-' . str_replace('_', '-', $vars['region']));
518
+    // Setup the default classes.
519
+    $vars['classes_array'] = array('region', 'region-' . str_replace('_', '-', $vars['region']));
520 520
 
521
-  // Sidebar regions get a couple extra classes.
522
-  if (strpos($vars['region'], 'sidebar_') === 0) {
521
+    // Sidebar regions get a couple extra classes.
522
+    if (strpos($vars['region'], 'sidebar_') === 0) {
523 523
     $vars['classes_array'][] = 'column';
524 524
     $vars['classes_array'][] = 'sidebar';
525
-  }
525
+    }
526 526
 }
527 527
 
528 528
 /**
@@ -534,36 +534,36 @@  discard block
 block discarded – undo
534 534
  *   The name of the template being rendered ("block" in this case.)
535 535
  */
536 536
 function zen_preprocess_block(&$vars, $hook) {
537
-  $block = $vars['block'];
537
+    $block = $vars['block'];
538 538
 
539
-  // Drupal 7 uses a $content variable instead of $block->content.
540
-  $vars['content'] = $block->content;
541
-  // Drupal 7 should use a $title variable instead of $block->subject.
542
-  $vars['title'] = $block->subject;
539
+    // Drupal 7 uses a $content variable instead of $block->content.
540
+    $vars['content'] = $block->content;
541
+    // Drupal 7 should use a $title variable instead of $block->subject.
542
+    $vars['title'] = $block->subject;
543 543
 
544
-  // Special classes for blocks.
545
-  $vars['classes_array'][] = 'block-' . $block->module;
546
-  // Classes describing the position of the block within the region.
547
-  if ($vars['block_id'] == 1) {
544
+    // Special classes for blocks.
545
+    $vars['classes_array'][] = 'block-' . $block->module;
546
+    // Classes describing the position of the block within the region.
547
+    if ($vars['block_id'] == 1) {
548 548
     $vars['classes_array'][] = 'first';
549
-  }
550
-  if (!function_exists('context_blocks') && count(block_list($vars['block']->region)) == $vars['block_id']) {
549
+    }
550
+    if (!function_exists('context_blocks') && count(block_list($vars['block']->region)) == $vars['block_id']) {
551 551
     $vars['classes_array'][] = 'last';
552
-  }
553
-  $vars['classes_array'][] = 'region-' . $vars['block_zebra'];
554
-  $vars['classes_array'][] = $vars['zebra'];
555
-  $vars['classes_array'][] = 'region-count-' . $vars['block_id'];
556
-  $vars['classes_array'][] = 'count-' . $vars['id'];
552
+    }
553
+    $vars['classes_array'][] = 'region-' . $vars['block_zebra'];
554
+    $vars['classes_array'][] = $vars['zebra'];
555
+    $vars['classes_array'][] = 'region-count-' . $vars['block_id'];
556
+    $vars['classes_array'][] = 'count-' . $vars['id'];
557 557
 
558
-  // Create the block ID.
559
-  $vars['block_html_id'] = 'block-' . $block->module . '-' . $block->delta;
558
+    // Create the block ID.
559
+    $vars['block_html_id'] = 'block-' . $block->module . '-' . $block->delta;
560 560
 
561
-  $vars['edit_links_array'] = array();
562
-  if (theme_get_setting('zen_block_editing') && user_access('administer blocks')) {
561
+    $vars['edit_links_array'] = array();
562
+    if (theme_get_setting('zen_block_editing') && user_access('administer blocks')) {
563 563
     include_once './' . _zen_path() . '/zen-internals/template.block-editing.inc';
564 564
     zen_preprocess_block_editing($vars, $hook);
565 565
     $vars['classes_array'][] = 'with-block-editing';
566
-  }
566
+    }
567 567
 }
568 568
 
569 569
 /**
@@ -575,10 +575,10 @@  discard block
 block discarded – undo
575 575
  *   The name of the template being rendered.
576 576
  */
577 577
 function zen_process(&$vars, $hook) {
578
-  // Don't clobber Views 3 classes.
579
-  if (array_key_exists('classes_array', $vars) && !array_key_exists('classes', $vars)) {
578
+    // Don't clobber Views 3 classes.
579
+    if (array_key_exists('classes_array', $vars) && !array_key_exists('classes', $vars)) {
580 580
     $vars['classes'] = implode(' ', $vars['classes_array']);
581
-  }
581
+    }
582 582
 }
583 583
 
584 584
 /**
@@ -590,22 +590,22 @@  discard block
 block discarded – undo
590 590
  *   The name of the template being rendered ("block" in this case.)
591 591
  */
592 592
 function zen_process_block(&$vars, $hook) {
593
-  $vars['edit_links'] = !empty($vars['edit_links_array']) ? '<div class="edit">' . implode(' ', $vars['edit_links_array']) . '</div>' : '';
593
+    $vars['edit_links'] = !empty($vars['edit_links_array']) ? '<div class="edit">' . implode(' ', $vars['edit_links_array']) . '</div>' : '';
594 594
 }
595 595
 
596 596
 if (!function_exists('drupal_html_class')) {
597
-  /**
598
-   * Prepare a string for use as a valid class name.
599
-   *
600
-   * Do not pass one string containing multiple classes as they will be
601
-   * incorrectly concatenated with dashes, i.e. "one two" will become "one-two".
602
-   *
603
-   * @param $class
604
-   *   The class name to clean.
605
-   * @return
606
-   *   The cleaned class name.
607
-   */
608
-  function drupal_html_class($class) {
597
+    /**
598
+     * Prepare a string for use as a valid class name.
599
+     *
600
+     * Do not pass one string containing multiple classes as they will be
601
+     * incorrectly concatenated with dashes, i.e. "one two" will become "one-two".
602
+     *
603
+     * @param $class
604
+     *   The class name to clean.
605
+     * @return
606
+     *   The cleaned class name.
607
+     */
608
+    function drupal_html_class($class) {
609 609
     // By default, we filter using Drupal's coding standards.
610 610
     $class = strtr(drupal_strtolower($class), array(' ' => '-', '_' => '-', '/' => '-', '[' => '-', ']' => ''));
611 611
 
@@ -623,19 +623,19 @@  discard block
 block discarded – undo
623 623
     $class = preg_replace('/[^\x{002D}\x{0030}-\x{0039}\x{0041}-\x{005A}\x{005F}\x{0061}-\x{007A}\x{00A1}-\x{FFFF}]/u', '', $class);
624 624
 
625 625
     return $class;
626
-  }
626
+    }
627 627
 } /* End of drupal_html_class conditional definition. */
628 628
 
629 629
 if (!function_exists('drupal_html_id')) {
630
-  /**
631
-   * Prepare a string for use as a valid HTML ID and guarantee uniqueness.
632
-   *
633
-   * @param $id
634
-   *   The ID to clean.
635
-   * @return
636
-   *   The cleaned ID.
637
-   */
638
-  function drupal_html_id($id) {
630
+    /**
631
+     * Prepare a string for use as a valid HTML ID and guarantee uniqueness.
632
+     *
633
+     * @param $id
634
+     *   The ID to clean.
635
+     * @return
636
+     *   The cleaned ID.
637
+     */
638
+    function drupal_html_id($id) {
639 639
     $id = strtr(drupal_strtolower($id), array(' ' => '-', '_' => '-', '[' => '-', ']' => ''));
640 640
 
641 641
     // As defined in http://www.w3.org/TR/html4/types.html#type-name, HTML IDs can
@@ -647,7 +647,7 @@  discard block
 block discarded – undo
647 647
     $id = preg_replace('/[^A-Za-z0-9\-_]/', '', $id);
648 648
 
649 649
     return $id;
650
-  }
650
+    }
651 651
 } /* End of drupal_html_id conditional definition. */
652 652
 
653 653
 /**
@@ -657,12 +657,12 @@  discard block
 block discarded – undo
657 657
  * replace _zen_path() with drupal_get_path('theme', 'zen').
658 658
  */
659 659
 function _zen_path() {
660
-  static $path = FALSE;
661
-  if (!$path) {
660
+    static $path = FALSE;
661
+    if (!$path) {
662 662
     $matches = drupal_system_listing('zen\.info$', 'themes', 'name', 0);
663 663
     if (!empty($matches['zen']->filename)) {
664
-      $path = dirname($matches['zen']->filename);
664
+        $path = dirname($matches['zen']->filename);
665
+    }
665 666
     }
666
-  }
667
-  return $path;
667
+    return $path;
668 668
 }
Please login to merge, or discard this patch.
Switch Indentation   +34 added lines, -34 removed lines patch added patch discarded remove patch
@@ -382,16 +382,16 @@  discard block
 block discarded – undo
382 382
   // Store the menu item since it has some useful information.
383 383
   $vars['menu_item'] = menu_get_item();
384 384
   switch ($vars['menu_item']['page_callback']) {
385
-    case 'views_page':
386
-      // Is this a Views page?
387
-      $vars['classes_array'][] = 'page-views';
388
-      break;
389
-    case 'page_manager_page_execute':
390
-    case 'page_manager_node_view':
391
-    case 'page_manager_contact_site':
392
-      // Is this a Panels page?
393
-      $vars['classes_array'][] = 'page-panels';
394
-      break;
385
+  case 'views_page':
386
+    // Is this a Views page?
387
+    $vars['classes_array'][] = 'page-views';
388
+    break;
389
+  case 'page_manager_page_execute':
390
+  case 'page_manager_node_view':
391
+  case 'page_manager_contact_site':
392
+    // Is this a Panels page?
393
+    $vars['classes_array'][] = 'page-panels';
394
+    break;
395 395
   }
396 396
 }
397 397
 
@@ -428,31 +428,31 @@  discard block
 block discarded – undo
428 428
 function zen_preprocess_node(&$vars, $hook) {
429 429
   // Create the build_mode variable.
430 430
   switch ($vars['node']->build_mode) {
431
-    case NODE_BUILD_NORMAL:
432
-      if ($vars['node']->build_mode === NODE_BUILD_NORMAL) {
433
-        $vars['build_mode'] = $vars['teaser'] ? 'teaser' : 'full';
434
-      }
435
-      else {
436
-        $vars['build_mode'] = $vars['node']->build_mode;
437
-      }
438
-      break;
439
-    case NODE_BUILD_PREVIEW:
440
-      $vars['build_mode'] = 'preview';
441
-      break;
442
-    case NODE_BUILD_SEARCH_INDEX:
443
-      $vars['build_mode'] = 'search_index';
444
-      break;
445
-    case NODE_BUILD_SEARCH_RESULT:
446
-      $vars['build_mode'] = 'search_result';
447
-      break;
448
-    case NODE_BUILD_RSS:
449
-      $vars['build_mode'] = 'rss';
450
-      break;
451
-    case NODE_BUILD_PRINT:
452
-      $vars['build_mode'] = 'print';
453
-      break;
454
-    default:
431
+  case NODE_BUILD_NORMAL:
432
+    if ($vars['node']->build_mode === NODE_BUILD_NORMAL) {
433
+      $vars['build_mode'] = $vars['teaser'] ? 'teaser' : 'full';
434
+    }
435
+    else {
455 436
       $vars['build_mode'] = $vars['node']->build_mode;
437
+    }
438
+    break;
439
+  case NODE_BUILD_PREVIEW:
440
+    $vars['build_mode'] = 'preview';
441
+    break;
442
+  case NODE_BUILD_SEARCH_INDEX:
443
+    $vars['build_mode'] = 'search_index';
444
+    break;
445
+  case NODE_BUILD_SEARCH_RESULT:
446
+    $vars['build_mode'] = 'search_result';
447
+    break;
448
+  case NODE_BUILD_RSS:
449
+    $vars['build_mode'] = 'rss';
450
+    break;
451
+  case NODE_BUILD_PRINT:
452
+    $vars['build_mode'] = 'print';
453
+    break;
454
+  default:
455
+    $vars['build_mode'] = $vars['node']->build_mode;
456 456
   }
457 457
 
458 458
   // Create the user_picture variable.
Please login to merge, or discard this patch.
Spacing   +35 added lines, -35 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@  discard block
 block discarded – undo
22 22
  */
23 23
 function zen_theme(&$existing, $type, $theme, $path) {
24 24
   // When #341140 is fixed, replace _zen_path() with drupal_get_path().
25
-  include_once './' . _zen_path() . '/zen-internals/template.theme-registry.inc';
25
+  include_once './'._zen_path().'/zen-internals/template.theme-registry.inc';
26 26
   return _zen_theme($existing, $type, $theme, $path);
27 27
 }
28 28
 
@@ -57,7 +57,7 @@  discard block
 block discarded – undo
57 57
       elseif (theme_get_setting('zen_breadcrumb_trailing')) {
58 58
         $trailing_separator = $breadcrumb_separator;
59 59
       }
60
-      return '<div class="breadcrumb">' . implode($breadcrumb_separator, $breadcrumb) . "$trailing_separator$title</div>";
60
+      return '<div class="breadcrumb">'.implode($breadcrumb_separator, $breadcrumb)."$trailing_separator$title</div>";
61 61
     }
62 62
   }
63 63
   // Otherwise, return an empty string.
@@ -106,14 +106,14 @@  discard block
 block discarded – undo
106 106
           'level' => 'h2',
107 107
         );
108 108
       }
109
-      $output .= '<' . $heading['level'];
109
+      $output .= '<'.$heading['level'];
110 110
       if (!empty($heading['class'])) {
111 111
         $output .= drupal_attributes(array('class' => $heading['class']));
112 112
       }
113
-      $output .= '>' . check_plain($heading['text']) . '</' . $heading['level'] . '>';
113
+      $output .= '>'.check_plain($heading['text']).'</'.$heading['level'].'>';
114 114
     }
115 115
 
116
-    $output .= '<ul'. drupal_attributes($attributes) .'>';
116
+    $output .= '<ul'.drupal_attributes($attributes).'>';
117 117
 
118 118
     $num_links = count($links);
119 119
     $i = 1;
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
           && (empty($link['language']) || $link['language']->language == $language->language)) {
133 133
         $class .= ' active';
134 134
       }
135
-      $output .= '<li'. drupal_attributes(array('class' => $class)) .'>';
135
+      $output .= '<li'.drupal_attributes(array('class' => $class)).'>';
136 136
 
137 137
       if (isset($link['href'])) {
138 138
         // Pass in $link as $options, they share the same keys.
@@ -147,7 +147,7 @@  discard block
 block discarded – undo
147 147
         if (isset($link['attributes'])) {
148 148
           $span_attributes = drupal_attributes($link['attributes']);
149 149
         }
150
-        $output .= '<span'. $span_attributes .'>'. $link['title'] .'</span>';
150
+        $output .= '<span'.$span_attributes.'>'.$link['title'].'</span>';
151 151
       }
152 152
 
153 153
       $i++;
@@ -169,8 +169,8 @@  discard block
 block discarded – undo
169 169
   }
170 170
 
171 171
   // If an item is a LOCAL TASK, render it as a tab
172
-  if ($link['type'] & MENU_IS_LOCAL_TASK) {
173
-    $link['title'] = '<span class="tab">' . check_plain($link['title']) . '</span>';
172
+  if ($link['type']&MENU_IS_LOCAL_TASK) {
173
+    $link['title'] = '<span class="tab">'.check_plain($link['title']).'</span>';
174 174
     $link['localized_options']['html'] = TRUE;
175 175
   }
176 176
 
@@ -195,10 +195,10 @@  discard block
 block discarded – undo
195 195
   }
196 196
 
197 197
   if ($primary) {
198
-    $output .= '<ul class="tabs primary clearfix">' . $primary . '</ul>';
198
+    $output .= '<ul class="tabs primary clearfix">'.$primary.'</ul>';
199 199
   }
200 200
   if ($secondary) {
201
-    $output .= '<ul class="tabs secondary clearfix">' . $secondary . '</ul>';
201
+    $output .= '<ul class="tabs secondary clearfix">'.$secondary.'</ul>';
202 202
   }
203 203
 
204 204
   return $output;
@@ -253,7 +253,7 @@  discard block
 block discarded – undo
253 253
     $elements['#region'] = $region;
254 254
 
255 255
     // Set the theme hook suggestions.
256
-    $hook = array('region_' . $region);
256
+    $hook = array('region_'.$region);
257 257
     if (strpos($region, 'sidebar_') === 0) {
258 258
       $hook[] = 'region_sidebar';
259 259
     }
@@ -295,7 +295,7 @@  discard block
 block discarded – undo
295 295
     // Views (and possibly other modules) have templates with a $classes
296 296
     // variable that isn't a string, so we leave those variables alone.
297 297
     if (is_string($vars[$key])) {
298
-      $vars['classes_array'] = explode(' ', $hook . ' ' . $vars[$key]);
298
+      $vars['classes_array'] = explode(' ', $hook.' '.$vars[$key]);
299 299
       unset($vars[$key]);
300 300
     }
301 301
   }
@@ -319,37 +319,37 @@  discard block
 block discarded – undo
319 319
 function zen_preprocess_page(&$vars, $hook) {
320 320
   // If the user is silly and enables Zen as the theme, add some styles.
321 321
   if ($GLOBALS['theme'] == 'zen') {
322
-    include_once './' . _zen_path() . '/zen-internals/template.zen.inc';
322
+    include_once './'._zen_path().'/zen-internals/template.zen.inc';
323 323
     _zen_preprocess_page($vars, $hook);
324 324
   }
325 325
   // Add conditional stylesheets.
326 326
   elseif (!module_exists('conditional_styles')) {
327 327
     $language = $GLOBALS['language']->direction == LANGUAGE_RTL ? '_rtl' : '';
328
-    $vars['conditional_styles'] = variable_get('conditional_styles_' . $GLOBALS['theme'] . $language, '');
328
+    $vars['conditional_styles'] = variable_get('conditional_styles_'.$GLOBALS['theme'].$language, '');
329 329
     $vars['styles'] .= $vars['conditional_styles'];
330 330
   }
331 331
 
332 332
   // Classes for body element. Allows advanced theming based on context
333 333
   // (home page, node of certain type, etc.)
334 334
   // Remove the mostly useless page-ARG0 class.
335
-  if ($index = array_search(preg_replace('![^abcdefghijklmnopqrstuvwxyz0-9-_]+!s', '', 'page-'. drupal_strtolower(arg(0))), $vars['classes_array'])) {
335
+  if ($index = array_search(preg_replace('![^abcdefghijklmnopqrstuvwxyz0-9-_]+!s', '', 'page-'.drupal_strtolower(arg(0))), $vars['classes_array'])) {
336 336
     unset($vars['classes_array'][$index]);
337 337
   }
338 338
   if (!$vars['is_front']) {
339 339
     // Add unique class for each page.
340 340
     $path = drupal_get_path_alias($_GET['q']);
341
-    $vars['classes_array'][] = drupal_html_class('page-' . $path);
341
+    $vars['classes_array'][] = drupal_html_class('page-'.$path);
342 342
     // Add unique class for each website section.
343
-    list($section, ) = explode('/', $path, 2);
343
+    list($section,) = explode('/', $path, 2);
344 344
     if (arg(0) == 'node') {
345 345
       if (arg(1) == 'add') {
346 346
         $section = 'node-add';
347 347
       }
348 348
       elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) {
349
-        $section = 'node-' . arg(2);
349
+        $section = 'node-'.arg(2);
350 350
       }
351 351
     }
352
-    $vars['classes_array'][] = drupal_html_class('section-' . $section);
352
+    $vars['classes_array'][] = drupal_html_class('section-'.$section);
353 353
   }
354 354
   if (theme_get_setting('zen_wireframes')) {
355 355
     $vars['classes_array'][] = 'with-wireframes'; // Optionally add the wireframes style.
@@ -376,7 +376,7 @@  discard block
 block discarded – undo
376 376
     }
377 377
     else {
378 378
       $vars['classes_array'][] = 'one-sidebar';
379
-      $vars['classes_array'][] = 'sidebar-' . $vars['layout'];
379
+      $vars['classes_array'][] = 'sidebar-'.$vars['layout'];
380 380
     }
381 381
   }
382 382
   // Store the menu item since it has some useful information.
@@ -406,13 +406,13 @@  discard block
 block discarded – undo
406 406
 function zen_preprocess_maintenance_page(&$vars, $hook) {
407 407
   // If Zen is the maintenance theme, add some styles.
408 408
   if ($GLOBALS['theme'] == 'zen') {
409
-    include_once './' . _zen_path() . '/zen-internals/template.zen.inc';
409
+    include_once './'._zen_path().'/zen-internals/template.zen.inc';
410 410
     _zen_preprocess_page($vars, $hook);
411 411
   }
412 412
   // Add conditional stylesheets.
413 413
   elseif (!module_exists('conditional_styles')) {
414 414
     $language = $GLOBALS['language']->direction == LANGUAGE_RTL ? '_rtl' : '';
415
-    $vars['conditional_styles'] = variable_get('conditional_styles_' . $GLOBALS['theme'] . $language, '');
415
+    $vars['conditional_styles'] = variable_get('conditional_styles_'.$GLOBALS['theme'].$language, '');
416 416
     $vars['styles'] .= $vars['conditional_styles'];
417 417
   }
418 418
 }
@@ -459,11 +459,11 @@  discard block
 block discarded – undo
459 459
   $vars['user_picture'] = $vars['picture'];
460 460
 
461 461
   // Create the Drupal 7 $display_submitted variable.
462
-  $vars['display_submitted'] = theme_get_setting('toggle_node_info_' . $vars['node']->type);
462
+  $vars['display_submitted'] = theme_get_setting('toggle_node_info_'.$vars['node']->type);
463 463
 
464 464
   // Special classes for nodes.
465 465
   // Class for node type: "node-type-page", "node-type-story", "node-type-my-custom-type", etc.
466
-  $vars['classes_array'][] = drupal_html_class('node-type-' . $vars['type']);
466
+  $vars['classes_array'][] = drupal_html_class('node-type-'.$vars['type']);
467 467
   if ($vars['promote']) {
468 468
     $vars['classes_array'][] = 'node-promoted';
469 469
   }
@@ -486,7 +486,7 @@  discard block
 block discarded – undo
486 486
   if (isset($vars['preview'])) {
487 487
     $vars['classes_array'][] = 'node-preview';
488 488
   }
489
-  $vars['classes_array'][] = 'build-mode-' . $vars['build_mode'] ;
489
+  $vars['classes_array'][] = 'build-mode-'.$vars['build_mode'];
490 490
 }
491 491
 
492 492
 /**
@@ -498,7 +498,7 @@  discard block
 block discarded – undo
498 498
  *   The name of the template being rendered ("comment" in this case.)
499 499
  */
500 500
 function zen_preprocess_comment(&$vars, $hook) {
501
-  include_once './' . _zen_path() . '/zen-internals/template.comment.inc';
501
+  include_once './'._zen_path().'/zen-internals/template.comment.inc';
502 502
   _zen_preprocess_comment($vars, $hook);
503 503
 }
504 504
 
@@ -516,7 +516,7 @@  discard block
 block discarded – undo
516 516
   $vars['region'] = $vars['elements']['#region'];
517 517
 
518 518
   // Setup the default classes.
519
-  $vars['classes_array'] = array('region', 'region-' . str_replace('_', '-', $vars['region']));
519
+  $vars['classes_array'] = array('region', 'region-'.str_replace('_', '-', $vars['region']));
520 520
 
521 521
   // Sidebar regions get a couple extra classes.
522 522
   if (strpos($vars['region'], 'sidebar_') === 0) {
@@ -542,7 +542,7 @@  discard block
 block discarded – undo
542 542
   $vars['title'] = $block->subject;
543 543
 
544 544
   // Special classes for blocks.
545
-  $vars['classes_array'][] = 'block-' . $block->module;
545
+  $vars['classes_array'][] = 'block-'.$block->module;
546 546
   // Classes describing the position of the block within the region.
547 547
   if ($vars['block_id'] == 1) {
548 548
     $vars['classes_array'][] = 'first';
@@ -550,17 +550,17 @@  discard block
 block discarded – undo
550 550
   if (!function_exists('context_blocks') && count(block_list($vars['block']->region)) == $vars['block_id']) {
551 551
     $vars['classes_array'][] = 'last';
552 552
   }
553
-  $vars['classes_array'][] = 'region-' . $vars['block_zebra'];
553
+  $vars['classes_array'][] = 'region-'.$vars['block_zebra'];
554 554
   $vars['classes_array'][] = $vars['zebra'];
555
-  $vars['classes_array'][] = 'region-count-' . $vars['block_id'];
556
-  $vars['classes_array'][] = 'count-' . $vars['id'];
555
+  $vars['classes_array'][] = 'region-count-'.$vars['block_id'];
556
+  $vars['classes_array'][] = 'count-'.$vars['id'];
557 557
 
558 558
   // Create the block ID.
559
-  $vars['block_html_id'] = 'block-' . $block->module . '-' . $block->delta;
559
+  $vars['block_html_id'] = 'block-'.$block->module.'-'.$block->delta;
560 560
 
561 561
   $vars['edit_links_array'] = array();
562 562
   if (theme_get_setting('zen_block_editing') && user_access('administer blocks')) {
563
-    include_once './' . _zen_path() . '/zen-internals/template.block-editing.inc';
563
+    include_once './'._zen_path().'/zen-internals/template.block-editing.inc';
564 564
     zen_preprocess_block_editing($vars, $hook);
565 565
     $vars['classes_array'][] = 'with-block-editing';
566 566
   }
@@ -590,7 +590,7 @@  discard block
 block discarded – undo
590 590
  *   The name of the template being rendered ("block" in this case.)
591 591
  */
592 592
 function zen_process_block(&$vars, $hook) {
593
-  $vars['edit_links'] = !empty($vars['edit_links_array']) ? '<div class="edit">' . implode(' ', $vars['edit_links_array']) . '</div>' : '';
593
+  $vars['edit_links'] = !empty($vars['edit_links_array']) ? '<div class="edit">'.implode(' ', $vars['edit_links_array']).'</div>' : '';
594 594
 }
595 595
 
596 596
 if (!function_exists('drupal_html_class')) {
Please login to merge, or discard this patch.
Braces   +9 added lines, -18 removed lines patch added patch discarded remove patch
@@ -53,8 +53,7 @@  discard block
 block discarded – undo
53 53
         if ($title = drupal_get_title()) {
54 54
           $trailing_separator = $breadcrumb_separator;
55 55
         }
56
-      }
57
-      elseif (theme_get_setting('zen_breadcrumb_trailing')) {
56
+      } elseif (theme_get_setting('zen_breadcrumb_trailing')) {
58 57
         $trailing_separator = $breadcrumb_separator;
59 58
       }
60 59
       return '<div class="breadcrumb">' . implode($breadcrumb_separator, $breadcrumb) . "$trailing_separator$title</div>";
@@ -137,8 +136,7 @@  discard block
 block discarded – undo
137 136
       if (isset($link['href'])) {
138 137
         // Pass in $link as $options, they share the same keys.
139 138
         $output .= l($link['title'], $link['href'], $link);
140
-      }
141
-      else if (!empty($link['title'])) {
139
+      } else if (!empty($link['title'])) {
142 140
         // Some links are actually not links, but we wrap these in <span> for adding title and class attributes
143 141
         if (empty($link['html'])) {
144 142
           $link['title'] = check_plain($link['title']);
@@ -188,8 +186,7 @@  discard block
 block discarded – undo
188 186
     ctools_include('menu');
189 187
     $primary = ctools_menu_primary_local_tasks();
190 188
     $secondary = ctools_menu_secondary_local_tasks();
191
-  }
192
-  else {
189
+  } else {
193 190
     $primary = menu_primary_local_tasks();
194 191
     $secondary = menu_secondary_local_tasks();
195 192
   }
@@ -237,8 +234,7 @@  discard block
 block discarded – undo
237 234
       // Allow context module to set blocks.
238 235
       if (function_exists('context_blocks')) {
239 236
         $output = context_blocks($region);
240
-      }
241
-      else {
237
+      } else {
242 238
         foreach (block_list($region) as $key => $block) {
243 239
           // $key == module_delta
244 240
           $output .= theme('block', $block);
@@ -298,8 +294,7 @@  discard block
 block discarded – undo
298 294
       $vars['classes_array'] = explode(' ', $hook . ' ' . $vars[$key]);
299 295
       unset($vars[$key]);
300 296
     }
301
-  }
302
-  else {
297
+  } else {
303 298
     $vars['classes_array'] = array($hook);
304 299
   }
305 300
   // Add support for Skinr
@@ -344,8 +339,7 @@  discard block
 block discarded – undo
344 339
     if (arg(0) == 'node') {
345 340
       if (arg(1) == 'add') {
346 341
         $section = 'node-add';
347
-      }
348
-      elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) {
342
+      } elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) {
349 343
         $section = 'node-' . arg(2);
350 344
       }
351 345
     }
@@ -373,8 +367,7 @@  discard block
 block discarded – undo
373 367
     // Set the proper layout body classes.
374 368
     if ($vars['layout'] == 'both') {
375 369
       $vars['classes_array'][] = 'two-sidebars';
376
-    }
377
-    else {
370
+    } else {
378 371
       $vars['classes_array'][] = 'one-sidebar';
379 372
       $vars['classes_array'][] = 'sidebar-' . $vars['layout'];
380 373
     }
@@ -431,8 +424,7 @@  discard block
 block discarded – undo
431 424
     case NODE_BUILD_NORMAL:
432 425
       if ($vars['node']->build_mode === NODE_BUILD_NORMAL) {
433 426
         $vars['build_mode'] = $vars['teaser'] ? 'teaser' : 'full';
434
-      }
435
-      else {
427
+      } else {
436 428
         $vars['build_mode'] = $vars['node']->build_mode;
437 429
       }
438 430
       break;
@@ -473,8 +465,7 @@  discard block
 block discarded – undo
473 465
   if (!$vars['status']) {
474 466
     $vars['classes_array'][] = 'node-unpublished';
475 467
     $vars['unpublished'] = TRUE;
476
-  }
477
-  else {
468
+  } else {
478 469
     $vars['unpublished'] = FALSE;
479 470
   }
480 471
   if ($vars['uid'] && $vars['uid'] == $GLOBALS['user']->uid) {
Please login to merge, or discard this patch.
drupal/sites/default/boinc/modules/boincimport/boincimport.module 5 patches
Doc Comments   +2 added lines, -1 removed lines patch added patch discarded remove patch
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
  * Set database connection for boincimport
133 133
  *
134 134
  * @return
135
- *   1 if can connect to BOINC database.
135
+ integer   1 if can connect to BOINC database.
136 136
  *
137 137
  * BEWARE: if you test using db_connect and the connection
138 138
  * fails, the process will die() which is a bit too much since we only
@@ -162,6 +162,7 @@  discard block
 block discarded – undo
162 162
 /**
163 163
  * Check if the module is enabled.
164 164
  * 
165
+ * @param string $module
165 166
  * @return array
166 167
  *    $out['html'] = formatted html.
167 168
  *    $out['result'] = boolean.
Please login to merge, or discard this patch.
Indentation   +1723 added lines, -1723 removed lines patch added patch discarded remove patch
@@ -19,9 +19,9 @@  discard block
 block discarded – undo
19 19
  * Implementation of hook_menu()
20 20
  */
21 21
 function boincimport_menu() {
22
-  $items = array();
22
+    $items = array();
23 23
   
24
-  $items['admin/boinc/import'] = array(
24
+    $items['admin/boinc/import'] = array(
25 25
     'title' => 'Environment: Data import',
26 26
     'description' => 'Overview of the BOINC data import process.',
27 27
     'access callback' => 'user_access',
@@ -29,8 +29,8 @@  discard block
 block discarded – undo
29 29
     'page callback' => 'boincimport_main',
30 30
     'file' => 'boincimport.pages.inc',
31 31
     'type' => MENU_NORMAL_ITEM,
32
-  );
33
-  $items['admin/boinc/import/post_configuration'] = array(
32
+    );
33
+    $items['admin/boinc/import/post_configuration'] = array(
34 34
     'title' => 'Post-migration configuration',
35 35
     'description' => 'Tie up a few odds and ends in the system configuration
36 36
       after data importation is complete.',
@@ -39,44 +39,44 @@  discard block
 block discarded – undo
39 39
     'page callback' => 'boincimport_post_configuration', 
40 40
     'file' => 'boincimport.pages.inc',
41 41
     'type' => MENU_CALLBACK,
42
-  );
43
-  $items['admin/boinc/import/cleanup'] = array(
42
+    );
43
+    $items['admin/boinc/import/cleanup'] = array(
44 44
     'title' => 'Cleanup',
45 45
     'access callback' => 'user_access',
46 46
     'access arguments' => array('import boinc data'),
47 47
     'page callback' => 'boincimport_cleanup', 
48 48
     'type' => MENU_CALLBACK,
49
-  );
50
-  $items['admin/boinc/import/complete/%'] = array(
49
+    );
50
+    $items['admin/boinc/import/complete/%'] = array(
51 51
     'title' => 'Complete',
52 52
     'access callback' => 'user_access',
53 53
     'access arguments' => array('import boinc data'),
54 54
     'page callback' => 'boincimport_complete',
55 55
     'page arguments' => array(4),
56 56
     'type' => MENU_CALLBACK,
57
-  );
58
-  $items['admin/boinc/import/process'] = array(
57
+    );
58
+    $items['admin/boinc/import/process'] = array(
59 59
     'title' => 'Execute migration',
60 60
     'access callback' => 'user_access',
61 61
     'access arguments' => array('import boinc data'),
62 62
     'page callback' => 'boincimport_process', 
63 63
     'type' => MENU_CALLBACK,
64
-  );
65
-  $items['admin/boinc/import/reset'] = array(
64
+    );
65
+    $items['admin/boinc/import/reset'] = array(
66 66
     'title' => 'Reset BOINC database URL',
67 67
     'access callback' => 'user_access',
68 68
     'access arguments' => array('import boinc data'),
69 69
     'page callback' => 'boincimport_reset',
70 70
     'type' => MENU_CALLBACK,
71
-  );
72
-  $items['admin/boinc/import/unlock'] = array(
71
+    );
72
+    $items['admin/boinc/import/unlock'] = array(
73 73
     'title' => 'Unlock BOINC import process',
74 74
     'access callback' => 'user_access',
75 75
     'access arguments' => array('import boinc data'),
76 76
     'page callback' => 'boincimport_unlock',
77 77
     'type' => MENU_CALLBACK,
78
-  );
79
-  $items['admin/boinc/import/settings'] = array(
78
+    );
79
+    $items['admin/boinc/import/settings'] = array(
80 80
     'title' => 'BOINC data import settings',
81 81
     'description' => 'Configure the BOINC data import process in preparation
82 82
       for pulling user accounts, teams, and forums into Drupal.',
@@ -86,37 +86,37 @@  discard block
 block discarded – undo
86 86
     'page arguments' => array('boincimport_admin_settings'),
87 87
     'file' => 'boincimport.pages.inc',
88 88
     'type' => MENU_CALLBACK,
89
-  );
90
-  return $items;
89
+    );
90
+    return $items;
91 91
 }
92 92
 
93 93
 /**
94 94
  * Implementation of hook_perm()
95 95
  */
96 96
 function boincimport_perm() {
97
-  return array('import boinc data');
97
+    return array('import boinc data');
98 98
 }
99 99
 
100 100
 /**
101 101
  * Callback admin/boinc/import/reset
102 102
  */
103 103
 function boincimport_reset() {
104
-  global $db_url;
105
-  $boinc_db_url = (is_array($db_url)) ? (isset($db_url['boinc']) ? $db_url['boinc'] : $db_url['default']) : $db_url;
106
-  variable_set('boincimport_db_url', $boinc_db_url);
107
-  variable_set('boincimport_ready', 0);
108
-  return '<p>'. t('The BOINC database URL has been reset. You may now <a href="@configlink">go back to the configuration page</a>.',
109
-      array('@configlink' => url('admin/boinc/import/settings'))) .'</p>';
104
+    global $db_url;
105
+    $boinc_db_url = (is_array($db_url)) ? (isset($db_url['boinc']) ? $db_url['boinc'] : $db_url['default']) : $db_url;
106
+    variable_set('boincimport_db_url', $boinc_db_url);
107
+    variable_set('boincimport_ready', 0);
108
+    return '<p>'. t('The BOINC database URL has been reset. You may now <a href="@configlink">go back to the configuration page</a>.',
109
+        array('@configlink' => url('admin/boinc/import/settings'))) .'</p>';
110 110
 }
111 111
 
112 112
 /**
113 113
  * Callback admin/boinc/import/unlock
114 114
  */
115 115
 function boincimport_unlock() {
116
-  variable_del('boincimport_process_locked');
117
-  return '<p>'. t('The BOINC data import process has been unlocked. You may
116
+    variable_del('boincimport_process_locked');
117
+    return '<p>'. t('The BOINC data import process has been unlocked. You may
118 118
     now !proceed_with_import.', array(
119
-      '!proceed_with_import' => l(t('proceed with the import'),
119
+        '!proceed_with_import' => l(t('proceed with the import'),
120 120
         'admin/boinc/import/process')
121 121
     )) .'</p>';
122 122
 }
@@ -125,7 +125,7 @@  discard block
 block discarded – undo
125 125
  * Callback admin/boinc/import/cleanup
126 126
  */
127 127
 function boincimport_cleanup() {
128
-  return boincimport_process_cleanup() .'<p>'. t('Drupal database cleaned.') .'</p>';
128
+    return boincimport_process_cleanup() .'<p>'. t('Drupal database cleaned.') .'</p>';
129 129
 }
130 130
 
131 131
 /**
@@ -139,23 +139,23 @@  discard block
 block discarded – undo
139 139
  * want to test. Therefore, the test part of the code is not used, now.
140 140
  */
141 141
 function _boincimport_db_connect($test= 0) {
142
-  global $db_url;
143
-  $db_ready = variable_get('boincimport_db_configured', 1);
144
-  if (!$db_ready) {
142
+    global $db_url;
143
+    $db_ready = variable_get('boincimport_db_configured', 1);
144
+    if (!$db_ready) {
145 145
     if (is_array($db_url)) {
146
-      $db_url2 = $db_url;
146
+        $db_url2 = $db_url;
147 147
     } else {
148
-      $db_url2['default'] = $db_url;
148
+        $db_url2['default'] = $db_url;
149 149
     }
150 150
     $db_url2['boinc'] = variable_get('boincimport_db_url', $db_url);
151 151
     $GLOBALS['db_url'] =& $db_url2;
152 152
     if ($test) {
153
-      if (!db_connect($db_url2['boinc'])) {
153
+        if (!db_connect($db_url2['boinc'])) {
154 154
         return 0;
155
-      }
155
+        }
156 156
     }
157
-  }
158
-  return 1;
157
+    }
158
+    return 1;
159 159
   
160 160
 }
161 161
 
@@ -167,17 +167,17 @@  discard block
 block discarded – undo
167 167
  *    $out['result'] = boolean.
168 168
  */
169 169
 function _boincimport_check_module($module) {
170
-  $out['html'] = '<ul>';
171
-  $result = module_exists($module);
172
-  $out['result'] = $result;
173
-  if ($result == 1) {
170
+    $out['html'] = '<ul>';
171
+    $result = module_exists($module);
172
+    $out['result'] = $result;
173
+    if ($result == 1) {
174 174
     $out['html'] .= '<li>'. t('Module %module is enabled. OK!', array('%module' => $module)) .'</li>';
175
-  }
176
-  else {
175
+    }
176
+    else {
177 177
     $out['html'] .= '<li><span class="marker">'. t('Module %module is disabled.', array('%module' => $module)) .'</span></li>';
178
-  }
179
-  $out['html'] .= '</ul>';
180
-  return $out;
178
+    }
179
+    $out['html'] .= '</ul>';
180
+    return $out;
181 181
 }
182 182
 
183 183
 /**
@@ -188,258 +188,258 @@  discard block
 block discarded – undo
188 188
  *   $out['result'] = boolean.
189 189
  */
190 190
 function _boincimport_check_tables($tables = array(), $db = 'default' , $prefix = 1) {
191
-  _boincimport_db_connect();
191
+    _boincimport_db_connect();
192 192
 
193
-  $out['html'] = '<ul>';
194
-  $out['result']= 1;
195
-  foreach ($tables as $table) {
193
+    $out['html'] = '<ul>';
194
+    $out['result']= 1;
195
+    foreach ($tables as $table) {
196 196
     if ($prefix) {
197
-      $table = db_prefix_tables('{'. $table .'}');
197
+        $table = db_prefix_tables('{'. $table .'}');
198 198
     }  
199 199
 
200 200
     db_set_active($db);
201 201
     if ($GLOBALS['db_type'] == 'pgsql') {
202
-      // adapt from db_table_exists in database.pgsql.inc
203
-      $result = (bool) db_result(db_query("SELECT COUNT(*) FROM pg_class WHERE relname = '%s'", $table));
202
+        // adapt from db_table_exists in database.pgsql.inc
203
+        $result = (bool) db_result(db_query("SELECT COUNT(*) FROM pg_class WHERE relname = '%s'", $table));
204 204
     }
205 205
     else {
206
-      // adapt from db_table_exists in database.mysql.inc
207
-      $result = (bool) db_fetch_object(db_query("SHOW TABLES LIKE '%s'", $table));
206
+        // adapt from db_table_exists in database.mysql.inc
207
+        $result = (bool) db_fetch_object(db_query("SHOW TABLES LIKE '%s'", $table));
208 208
     }
209 209
     db_set_active('default');
210 210
     if ($result) {
211
-      $out['html'] .= '<li>'. t('Table %table: OK!', array('%table' => $table)) .'</li>';
211
+        $out['html'] .= '<li>'. t('Table %table: OK!', array('%table' => $table)) .'</li>';
212 212
     }
213 213
     else {
214
-      $out['html'] .= '<li><span class="marker">'. t('Table <strong>%table</strong> does not exist!', array('%table' => $table)) .'</span></li>';
215
-      $out['result']= 0;
214
+        $out['html'] .= '<li><span class="marker">'. t('Table <strong>%table</strong> does not exist!', array('%table' => $table)) .'</span></li>';
215
+        $out['result']= 0;
216 216
     }
217
-  }
218
-  $out['html'] .= '</ul>';
219
-  return $out;
217
+    }
218
+    $out['html'] .= '</ul>';
219
+    return $out;
220 220
 }
221 221
 
222 222
 
223 223
 
224 224
 function boincimport_process() {
225
-  // Start with a quick sanity check on the BOINC environment
226
-  boinc_get_path();
225
+    // Start with a quick sanity check on the BOINC environment
226
+    boinc_get_path();
227 227
   
228
-  if (!variable_get('boincimport_ready', 0)) {
228
+    if (!variable_get('boincimport_ready', 0)) {
229 229
     return '<p>'. t('You cannot import the data now. Please <a href="@settings">complete the setup first</a>', array('@settings' => url('admin/boinc/import/settings'))) .'</p>';
230
-  }
230
+    }
231 231
 
232
-  $output = 'BOINC import process form';
233
-  $output .= drupal_get_form('boincimport_process_form');
234
-  return $output;
232
+    $output = 'BOINC import process form';
233
+    $output .= drupal_get_form('boincimport_process_form');
234
+    return $output;
235 235
 }
236 236
 
237 237
 function boincimport_process_form() {
238
-  $form = array();
239
-  _boincimport_db_connect() ;
240
-  // Causes problems with form api redirect
241
-  //ini_set('display_errors', TRUE);
238
+    $form = array();
239
+    _boincimport_db_connect() ;
240
+    // Causes problems with form api redirect
241
+    //ini_set('display_errors', TRUE);
242 242
 
243
-  // Adjust how long you want the script to run...
244
-  if (!ini_get('safe_mode')) {
243
+    // Adjust how long you want the script to run...
244
+    if (!ini_get('safe_mode')) {
245 245
     set_time_limit(variable_get('boincimport_time_limit', 0));
246
-  }
246
+    }
247 247
   
248
-  // Check for a lock on the import process
249
-  if (variable_get('boincimport_process_locked', 0)) {
248
+    // Check for a lock on the import process
249
+    if (variable_get('boincimport_process_locked', 0)) {
250 250
     drupal_set_message(t('The import process is locked. If you are sure that
251 251
       it is no longer running, you may !unlock_it', 
252
-      array('!unlock_it' => l(t('release the lock'),
252
+        array('!unlock_it' => l(t('release the lock'),
253 253
         'admin/boinc/import/unlock')
254
-      )), 'warning');
254
+        )), 'warning');
255 255
     watchdog('boincimport', 'The import process is locked. If you are sure that
256 256
       it is no longer running, you may !unlock_it', 
257
-      array('!unlock_it' => l(t('release the lock'),
257
+        array('!unlock_it' => l(t('release the lock'),
258 258
         'admin/boinc/import/unlock')
259
-      ), WATCHDOG_WARNING); 
260
-  }
261
-  else {
259
+        ), WATCHDOG_WARNING); 
260
+    }
261
+    else {
262 262
     $boincimport_functions = array(
263
-      'users' => t('Import users'),
264
-      'teams' => t('Import teams'),
265
-      'friends' => t('Import friendships'), 
266
-      'preferences' => t('Import user preferences'),
267
-      'private messages' => t('Import private messages'),
268
-      'categories' => t('Import forum containers'),
269
-      'topics' => t('Import topics'),
270
-      'posts' => t('Import posts'),
271
-      'team forums' => t('Import team forums'),
272
-      'team topics' => t('Import team topics'),
273
-      'team posts' => t('Import team posts'),
274
-      'url' => t('Transform URLs'),
263
+        'users' => t('Import users'),
264
+        'teams' => t('Import teams'),
265
+        'friends' => t('Import friendships'), 
266
+        'preferences' => t('Import user preferences'),
267
+        'private messages' => t('Import private messages'),
268
+        'categories' => t('Import forum containers'),
269
+        'topics' => t('Import topics'),
270
+        'posts' => t('Import posts'),
271
+        'team forums' => t('Import team forums'),
272
+        'team topics' => t('Import team topics'),
273
+        'team posts' => t('Import team posts'),
274
+        'url' => t('Transform URLs'),
275 275
     );
276 276
 
277 277
     $form['import'] = array(
278
-      '#type' => 'select',
279
-      '#title' => t('Next import to perform'),
280
-      '#default_value' => $_SESSION['boincimport_stage_selected'],
281
-      '#options' => $boincimport_functions,
278
+        '#type' => 'select',
279
+        '#title' => t('Next import to perform'),
280
+        '#default_value' => $_SESSION['boincimport_stage_selected'],
281
+        '#options' => $boincimport_functions,
282 282
     );
283 283
     $form[] = array(
284
-      '#type' => 'submit',
285
-      '#value' => t('Import'),
284
+        '#type' => 'submit',
285
+        '#value' => t('Import'),
286 286
     );
287
-  }
288
-  return $form;
287
+    }
288
+    return $form;
289 289
 }
290 290
 
291 291
 function boincimport_process_form_submit($form, $form_state) {
292 292
   
293
-  // Lock the import process
294
-  if (!variable_get('boincimport_process_locked', 0)) {
293
+    // Lock the import process
294
+    if (!variable_get('boincimport_process_locked', 0)) {
295 295
     variable_set('boincimport_process_locked', 1);
296
-  }
297
-  else {
296
+    }
297
+    else {
298 298
     watchdog('boincimport', 'The import process is locked, but another process
299 299
       is trying to access it...', array(), WATCHDOG_WARNING); 
300
-  }
300
+    }
301 301
   
302
-  switch ($form_state['values']['import']) {
302
+    switch ($form_state['values']['import']) {
303 303
     case 'users':
304 304
       boincimport_users();
305
-      break;
305
+        break;
306 306
 
307 307
     case 'teams':
308 308
       boincimport_teams();
309
-      if (!variable_get('boincimport_import_team_successful', 0)) {
309
+        if (!variable_get('boincimport_import_team_successful', 0)) {
310 310
         $_SESSION['boincimport_stage_selected'] = 'teams';
311
-      }
312
-      else {
311
+        }
312
+        else {
313 313
         $_SESSION['boincimport_stage_selected'] = 'friends';
314
-      }
315
-      break;
314
+        }
315
+        break;
316 316
 
317 317
     case 'friends':
318 318
       boincimport_friends();
319
-      if (!variable_get('boincimport_import_friend_successful', 0)) {
319
+        if (!variable_get('boincimport_import_friend_successful', 0)) {
320 320
         $_SESSION['boincimport_stage_selected'] = 'friends';
321
-      }
322
-      else {
321
+        }
322
+        else {
323 323
         $_SESSION['boincimport_stage_selected'] = 'preferences';
324
-      }
325
-      break;
324
+        }
325
+        break;
326 326
 
327 327
     case 'preferences':
328 328
       boincimport_preferences();
329
-      if (!variable_get('boincimport_import_preferences_successful', 0)) {
329
+        if (!variable_get('boincimport_import_preferences_successful', 0)) {
330 330
         $_SESSION['boincimport_stage_selected'] = 'preferences';
331
-      }
332
-      else {
331
+        }
332
+        else {
333 333
         $_SESSION['boincimport_stage_selected'] = 'private messages';
334
-      }
335
-      break;
334
+        }
335
+        break;
336 336
 
337 337
     case 'private messages':
338 338
       boincimport_private_msgs();
339
-      if (!variable_get('boincimport_import_private_msg_successful', 0)) {
339
+        if (!variable_get('boincimport_import_private_msg_successful', 0)) {
340 340
         $_SESSION['boincimport_stage_selected'] = 'private messages';
341
-      }
342
-      else {
341
+        }
342
+        else {
343 343
         $_SESSION['boincimport_stage_selected'] = 'categories';
344
-      }
345
-      break;
344
+        }
345
+        break;
346 346
 
347 347
     case 'categories':
348 348
       boincimport_forum_categories();
349
-      if (!variable_get('boincimport_import_category_successful', 0)) {
349
+        if (!variable_get('boincimport_import_category_successful', 0)) {
350 350
         $_SESSION['boincimport_stage_selected'] = 'categories';
351
-      }
352
-      else {
351
+        }
352
+        else {
353 353
         $_SESSION['boincimport_stage_selected'] = 'topics';
354
-      }
355
-      break;
354
+        }
355
+        break;
356 356
 
357 357
     case 'topics':      
358 358
       boincimport_forum_topics();
359
-      if (!variable_get('boincimport_import_topic_successful', 0)) {
359
+        if (!variable_get('boincimport_import_topic_successful', 0)) {
360 360
         $_SESSION['boincimport_stage_selected'] = 'topics';
361
-      }
362
-      else {
361
+        }
362
+        else {
363 363
         $_SESSION['boincimport_stage_selected'] = 'posts';
364
-      }
365
-      break;
364
+        }
365
+        break;
366 366
       
367 367
     case 'posts':
368 368
       boincimport_forum_posts();
369
-      if (!variable_get('boincimport_import_post_successful', 0)) {
369
+        if (!variable_get('boincimport_import_post_successful', 0)) {
370 370
         $_SESSION['boincimport_stage_selected'] = 'posts';
371
-      }
372
-      else {
371
+        }
372
+        else {
373 373
         $_SESSION['boincimport_stage_selected'] = 'url';
374
-      }
375
-      break;
374
+        }
375
+        break;
376 376
 
377 377
     case 'team forums':
378 378
       boincimport_team_forums();
379
-      if (!variable_get('boincimport_team_forum_successful', 0)) {
379
+        if (!variable_get('boincimport_team_forum_successful', 0)) {
380 380
         $_SESSION['boincimport_stage_selected'] = 'team forums';
381
-      }
382
-      else {
381
+        }
382
+        else {
383 383
         $_SESSION['boincimport_stage_selected'] = 'team topics';
384
-      }
385
-      break;
384
+        }
385
+        break;
386 386
 
387 387
     case 'team topics':      
388 388
       boincimport_team_forum_topics();
389
-      if (!variable_get('boincimport_team_topic_successful', 0)) {
389
+        if (!variable_get('boincimport_team_topic_successful', 0)) {
390 390
         $_SESSION['boincimport_stage_selected'] = 'team topics';
391
-      }
392
-      else {
391
+        }
392
+        else {
393 393
         $_SESSION['boincimport_stage_selected'] = 'team posts';
394
-      }
395
-      break;
394
+        }
395
+        break;
396 396
       
397 397
     case 'team posts':
398 398
       boincimport_team_forum_posts();
399
-      if (!variable_get('boincimport_team_post_successful', 0)) {
399
+        if (!variable_get('boincimport_team_post_successful', 0)) {
400 400
         $_SESSION['boincimport_stage_selected'] = 'team posts';
401
-      }
402
-      else {
401
+        }
402
+        else {
403 403
         $_SESSION['boincimport_stage_selected'] = 'url';
404
-      }
405
-      break;
404
+        }
405
+        break;
406 406
 
407 407
     case 'url':
408 408
       boincimport_replace_urls();
409
-      if (!variable_get('boincimport_replace_url_successful', 0)) {
409
+        if (!variable_get('boincimport_replace_url_successful', 0)) {
410 410
         $_SESSION['boincimport_stage_selected'] = 'url';
411
-      }
412
-      else {
411
+        }
412
+        else {
413 413
         drupal_set_message('Congratulations.  Import Finished');
414 414
         drupal_set_message('Please visit the '. l('Post migration configuration', 'admin/boinc/import/post_configuration') .' page');
415 415
         watchdog('boincimport', 'Import process is complete', array(), WATCHDOG_INFO); 
416 416
         unset($_SESSION['boincimport_stage_selected']);
417
-      }
418
-      break;
417
+        }
418
+        break;
419 419
     default:
420 420
       $_SESSION['boincimport_stage_selected'] = 'users';
421
-      break;
422
-  }
421
+        break;
422
+    }
423 423
 }
424 424
 
425 425
 function boincimport_complete($section) {
426
-  switch ($section) {
427
-  case 'users':
426
+    switch ($section) {
427
+    case 'users':
428 428
     // Set the user import successful flag in the variable table
429 429
     variable_set('boincimport_import_user_successful', '1');
430 430
     $_SESSION['boincimport_stage_selected'] = 'teams';
431 431
     break;
432
-  case 'teams':
432
+    case 'teams':
433 433
     
434 434
     break;
435 435
   
436
-  default:
436
+    default:
437 437
   }
438 438
   
439
-  // Release the lock on the import process
440
-  variable_del('boincimport_process_locked');
439
+    // Release the lock on the import process
440
+    variable_del('boincimport_process_locked');
441 441
   
442
-  drupal_goto('admin/boinc/import/process');
442
+    drupal_goto('admin/boinc/import/process');
443 443
 }
444 444
 
445 445
 
@@ -451,26 +451,26 @@  discard block
 block discarded – undo
451 451
  * Import users (at least those required for further data import)
452 452
  */
453 453
 function boincimport_users() {
454
-  // Check whether the user table has been successfully imported already
455
-  if (variable_get('boincimport_import_user_successful', 0)) {
454
+    // Check whether the user table has been successfully imported already
455
+    if (variable_get('boincimport_import_user_successful', 0)) {
456 456
     drupal_set_message(t('Note: user import has already run successfully'));
457 457
     watchdog(
458
-      'boincimport', 'Note: user import has already run successfully',
459
-      array(), WATCHDOG_INFO
458
+        'boincimport', 'Note: user import has already run successfully',
459
+        array(), WATCHDOG_INFO
460 460
     ); 
461
-  } 
461
+    } 
462 462
 
463
-  if (!variable_get('boincimport_import_user_started', 0)) {
463
+    if (!variable_get('boincimport_import_user_started', 0)) {
464 464
     // Could prepare database tables, if new fields are necessary, etc.
465 465
     variable_set('boincimport_import_user_started', 1);
466
-  }
466
+    }
467 467
 
468
-  $pre = variable_get('boincimport_table_prefix', '');
469
-  $import_lurkers = variable_get('boincimport_import_lurkers', 1);
468
+    $pre = variable_get('boincimport_table_prefix', '');
469
+    $import_lurkers = variable_get('boincimport_import_lurkers', 1);
470 470
 
471
-  // Determine which users need to be processed
472
-  db_set_active('boinc');
473
-  if ($import_lurkers) {
471
+    // Determine which users need to be processed
472
+    db_set_active('boinc');
473
+    if ($import_lurkers) {
474 474
     // Import all users, even those who have no community participation; other
475 475
     // users will be imported when they first try to log into the drupal site
476 476
     $boinc_accounts = db_query('
@@ -478,8 +478,8 @@  discard block
 block discarded – undo
478 478
       ORDER BY id ASC'
479 479
     );
480 480
     $user_count = mysql_num_rows($boinc_accounts);
481
-  }
482
-  else {
481
+    }
482
+    else {
483 483
     // Need to import any user who is currently ignored in order to keep them
484 484
     // ignored... not particularly clean (ignored users are stored in a string)
485 485
     $ignored_user_list = array(0);
@@ -490,7 +490,7 @@  discard block
 block discarded – undo
490 490
       ORDER BY userid ASC"
491 491
     );
492 492
     while ($ignoring_user = db_fetch_object($ignoring_users)) {
493
-      $ignored_user_list = $ignored_user_list + array_fill_keys(explode('|', trim($ignoring_user->ignorelist, '|')), 1);
493
+        $ignored_user_list = $ignored_user_list + array_fill_keys(explode('|', trim($ignoring_user->ignorelist, '|')), 1);
494 494
     }
495 495
     $ignored_user_list = array_keys($ignored_user_list);
496 496
     // Get IDs for all users who will need to be imported now
@@ -506,86 +506,86 @@  discard block
 block discarded – undo
506 506
         (SELECT DISTINCT userid FROM {private_messages}) UNION
507 507
         (SELECT DISTINCT senderid FROM {private_messages})
508 508
       ) AS usersToImport",
509
-      implode(',', $ignored_user_list)
509
+        implode(',', $ignored_user_list)
510 510
     );
511 511
     $user_count = mysql_num_rows($boinc_accounts);
512
-  }
513
-  db_set_active('default');
512
+    }
513
+    db_set_active('default');
514 514
   
515
-  if (!$user_count) {
515
+    if (!$user_count) {
516 516
     drupal_set_message(
517
-      t('There were no users found: Aborting script'), 'error'
517
+        t('There were no users found: Aborting script'), 'error'
518 518
     );
519 519
     watchdog('boincimport',
520
-      'There were no users found: Aborting script', array(), WATCHDOG_INFO
520
+        'There were no users found: Aborting script', array(), WATCHDOG_INFO
521 521
     );
522 522
     // Release the lock on the import process
523 523
     variable_del('boincimport_process_locked');
524 524
     return t('There were no users found: Aborting script.');
525
-  }
525
+    }
526 526
 
527
-  watchdog('boincimport',
527
+    watchdog('boincimport',
528 528
     'Found %user_count users: Beginning import',
529 529
     array('%user_count' => $user_count), WATCHDOG_INFO
530
-  ); 
531
-  
532
-  // User import relies on Drupal and BOINC APIs to manage data being read
533
-  // from one database and saved to the other. This approach keeps things
534
-  // clean and simple, but since a sizable user base will wreak havoc on system
535
-  // resources, the job is broken into batches here and each batch is processed
536
-  // by a separate process. 
537
-  
538
-  //$batch_size = variable_get('boincimport_user_batch_size', 50);
539
-  //$batch_count = $user_count - ($user_count % $batch_size) + $batch_size;
540
-  $operations = array();
541
-  $existing_users = array();
542
-  $duplicates = array();
543
-  
544
-  // Get the list of users already in Drupal to be sure we're not importing
545
-  // any twice
546
-  $result = db_query('
530
+    ); 
531
+  
532
+    // User import relies on Drupal and BOINC APIs to manage data being read
533
+    // from one database and saved to the other. This approach keeps things
534
+    // clean and simple, but since a sizable user base will wreak havoc on system
535
+    // resources, the job is broken into batches here and each batch is processed
536
+    // by a separate process. 
537
+  
538
+    //$batch_size = variable_get('boincimport_user_batch_size', 50);
539
+    //$batch_count = $user_count - ($user_count % $batch_size) + $batch_size;
540
+    $operations = array();
541
+    $existing_users = array();
542
+    $duplicates = array();
543
+  
544
+    // Get the list of users already in Drupal to be sure we're not importing
545
+    // any twice
546
+    $result = db_query('
547 547
     SELECT uid, boinc_id FROM {boincuser}'
548
-  );
549
-  while ($row = db_fetch_object($result)) {
548
+    );
549
+    while ($row = db_fetch_object($result)) {
550 550
     $existing_users[$row->boinc_id] = $row->uid;
551
-  }
551
+    }
552 552
   
553
-  // Create batches to process
554
-  while ($boinc_account = db_fetch_object($boinc_accounts)) {
555
-     if (isset($existing_users[$boinc_account->id])) {
556
-      // This user has already been imported
557
-      $duplicates[] = $boinc_account->id;
553
+    // Create batches to process
554
+    while ($boinc_account = db_fetch_object($boinc_accounts)) {
555
+        if (isset($existing_users[$boinc_account->id])) {
556
+        // This user has already been imported
557
+        $duplicates[] = $boinc_account->id;
558 558
     }
559 559
     else {
560
-      $operations[] = array(
560
+        $operations[] = array(
561 561
         'boincimport_users_op', array(
562
-          $boinc_account->id
562
+            $boinc_account->id
563 563
         )
564
-      );
564
+        );
565
+    }
565 566
     }
566
-  }
567 567
   
568
-  if ($duplicates) {
568
+    if ($duplicates) {
569 569
     drupal_set_message(t(
570
-      'Skipped @count accounts that were already imported',
571
-      array('@count' => count($duplicates))
570
+        'Skipped @count accounts that were already imported',
571
+        array('@count' => count($duplicates))
572 572
     ));
573 573
     watchdog('boincimport',
574
-      'Skipped @count accounts that were already imported',
575
-      array('@count' => count($duplicates)), WATCHDOG_INFO
574
+        'Skipped @count accounts that were already imported',
575
+        array('@count' => count($duplicates)), WATCHDOG_INFO
576 576
     ); 
577
-  }
577
+    }
578 578
   
579
-  $batch = array(
579
+    $batch = array(
580 580
     'operations' => $operations,
581 581
     'finished' => 'boincimport_users_finished',
582 582
     'title' => t('Importing users'),
583 583
     'init_message' => t('Beginning user import...'),
584 584
     'progress_message' => t('Processed @current out of @total users.'),
585 585
     'error_message' => t('User import has encountered an error.'),
586
-  );
586
+    );
587 587
   
588
-  batch_set($batch);
588
+    batch_set($batch);
589 589
 }
590 590
 
591 591
 /**
@@ -593,81 +593,81 @@  discard block
 block discarded – undo
593 593
  */
594 594
 function boincimport_users_op($boinc_id, &$context) {
595 595
   
596
-  // Use the $context['sandbox'] to store information needed to track progress
597
-  // between successive calls.
598
-  if (!isset($context['sandbox']['progress'])) {
596
+    // Use the $context['sandbox'] to store information needed to track progress
597
+    // between successive calls.
598
+    if (!isset($context['sandbox']['progress'])) {
599 599
     $context['sandbox']['progress'] = 0;
600 600
     $context['sandbox']['current_user'] = 0;
601 601
     $context['sandbox']['max'] = 1;
602
-  }
602
+    }
603 603
 
604
-  // Note about batch size: When a batch is processed, the batch update engine
605
-  // determines whether it should continue processing in the same request or
606
-  // provide progress feedback to the user and wait for the next request.
604
+    // Note about batch size: When a batch is processed, the batch update engine
605
+    // determines whether it should continue processing in the same request or
606
+    // provide progress feedback to the user and wait for the next request.
607 607
   
608
-  // Grab the BOINC user object and create a Drupal user from it
609
-  $account = boincuser_register_make_drupal_user($boinc_id);
610
-  $message = '';
611
-  if ($account) {
608
+    // Grab the BOINC user object and create a Drupal user from it
609
+    $account = boincuser_register_make_drupal_user($boinc_id);
610
+    $message = '';
611
+    if ($account) {
612 612
     // Store some result for post-processing in the finished callback.
613 613
     $context['results']['success'][] = $boinc_id;
614 614
     $message = "Successfully imported user {$boinc_id}";
615
-  }
616
-  else {
615
+    }
616
+    else {
617 617
     $context['results']['failure'][] = $boinc_id;
618 618
     $message = "Failed to import user {$boinc_id}!";
619 619
     watchdog('boincimport',
620
-      'Failed to import user @id!',
621
-      array('@id' => $boinc_id), WATCHDOG_WARNING
620
+        'Failed to import user @id!',
621
+        array('@id' => $boinc_id), WATCHDOG_WARNING
622 622
     ); 
623
-  }
623
+    }
624 624
   
625
-  // Update our progress information.
626
-  $context['sandbox']['progress']++;
627
-  $context['sandbox']['current_user'] = $boinc_id;
628
-  $context['message'] = $message;
625
+    // Update our progress information.
626
+    $context['sandbox']['progress']++;
627
+    $context['sandbox']['current_user'] = $boinc_id;
628
+    $context['message'] = $message;
629 629
 
630
-  // Update the progress for the batch engine
631
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
630
+    // Update the progress for the batch engine
631
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
632 632
     $context['finished'] = 1;
633
-  }
634
-  else {
633
+    }
634
+    else {
635 635
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
636
-  }
636
+    }
637 637
 }
638 638
 
639 639
 /**
640 640
  * Batch 'finished' callback
641 641
  */
642 642
 function boincimport_users_finished($success, $results, $operations) {
643
-  if ($success) {
643
+    if ($success) {
644 644
     // Let's count our successes
645 645
     $total_imported = count($results['success']);
646 646
     $total_failures = count($results['failure']);
647 647
     $message = t(
648
-      'Successfully imported @count users (@fail_count failures)',
649
-      array('@count' => $total_imported, '@fail_count' => $total_failures)
648
+        'Successfully imported @count users (@fail_count failures)',
649
+        array('@count' => $total_imported, '@fail_count' => $total_failures)
650 650
     );
651 651
     watchdog('boincimport',
652
-      'Successfully imported @count users (@fail_count failures).',
653
-      array('@count' => $total_imported, '@fail_count' => $total_failures),
654
-      WATCHDOG_INFO
652
+        'Successfully imported @count users (@fail_count failures).',
653
+        array('@count' => $total_imported, '@fail_count' => $total_failures),
654
+        WATCHDOG_INFO
655 655
     ); 
656 656
     // Set the user import successful flag in the variable table
657 657
     variable_set('boincimport_import_user_successful', '1');
658 658
     $_SESSION['boincimport_stage_selected'] = 'teams';
659
-  }
660
-  else {
659
+    }
660
+    else {
661 661
     // An error occurred.
662 662
     // $operations contains the operations that remained unprocessed.
663 663
     $error_operation = reset($operations);
664 664
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
665
-  }
666
-  drupal_set_message($message);
665
+    }
666
+    drupal_set_message($message);
667 667
   
668
-  // Release the lock on the import process
669
-  variable_del('boincimport_process_locked');
670
-  drupal_goto('admin/boinc/import/process');
668
+    // Release the lock on the import process
669
+    variable_del('boincimport_process_locked');
670
+    drupal_goto('admin/boinc/import/process');
671 671
 }
672 672
 
673 673
 
@@ -680,23 +680,23 @@  discard block
 block discarded – undo
680 680
  */
681 681
 function boincimport_teams() {
682 682
   
683
-  // Check whether the team table has been successfully imported already
684
-  if (variable_get('boincimport_import_team_successful', 0)) {
683
+    // Check whether the team table has been successfully imported already
684
+    if (variable_get('boincimport_import_team_successful', 0)) {
685 685
     drupal_set_message(t('Note: team import has already run successfully'));
686 686
     watchdog(
687
-      'boincimport', 'Note: team import has already run successfully',
688
-      array(), WATCHDOG_INFO
687
+        'boincimport', 'Note: team import has already run successfully',
688
+        array(), WATCHDOG_INFO
689 689
     ); 
690
-  }
690
+    }
691 691
 
692
-  if (!variable_get('boincimport_import_team_started', 0)) {
692
+    if (!variable_get('boincimport_import_team_started', 0)) {
693 693
     // Could prepare database tables, if new fields are necessary, etc.
694 694
     variable_set('boincimport_import_team_started', 1);
695
-  }
695
+    }
696 696
   
697
-  // Initialize the map of BOINC team types to taxonomy IDs, if needed
698
-  $team_type_map = variable_get('boincimport_team_types', array());
699
-  if (!$team_type_map) {
697
+    // Initialize the map of BOINC team types to taxonomy IDs, if needed
698
+    $team_type_map = variable_get('boincimport_team_types', array());
699
+    if (!$team_type_map) {
700 700
     // Import team types from BOINC to a Drupal vocabulary
701 701
     require_boinc('team_types');
702 702
     global $team_types;
@@ -704,112 +704,112 @@  discard block
 block discarded – undo
704 704
     // Create vocabulary if it isn't set
705 705
     $team_vid = db_result(db_query('SELECT vid FROM {vocabulary} WHERE name="%s"', 'Teams'));
706 706
     if (!$team_vid) {
707
-      $team_vocab = array(
707
+        $team_vocab = array(
708 708
         'name' => t('Teams'),
709 709
         'description' => t('Types of BOINC teams'),
710
-      );
711
-      taxonomy_save_vocabulary($team_vocab);
712
-      $team_vid = db_result(db_query('SELECT vid FROM {vocabulary} WHERE name="%s"', 'Teams'));
710
+        );
711
+        taxonomy_save_vocabulary($team_vocab);
712
+        $team_vid = db_result(db_query('SELECT vid FROM {vocabulary} WHERE name="%s"', 'Teams'));
713 713
     }
714 714
     
715 715
     foreach ($team_types as $boinc_type_id => $name) {
716
-      // Check for an existing term in the vocabulary
717
-      $team_type_id = db_result(db_query("SELECT tid FROM {term_data} WHERE vid = '{$team_vid}' AND LOWER(name) = LOWER('%s')", trim($name)));
718
-      if ($team_type_id) {
716
+        // Check for an existing term in the vocabulary
717
+        $team_type_id = db_result(db_query("SELECT tid FROM {term_data} WHERE vid = '{$team_vid}' AND LOWER(name) = LOWER('%s')", trim($name)));
718
+        if ($team_type_id) {
719 719
         $team_type = array(
720
-          'tid' => $team_type_id
720
+            'tid' => $team_type_id
721 721
         );
722
-      }
723
-      else {
722
+        }
723
+        else {
724 724
         if (!$name) continue;
725 725
         $team_type = array(
726
-          'name' => strip_tags($name),
727
-          'vid' => $team_vid,
728
-          'description' => '',
729
-          'parent' => 0
726
+            'name' => strip_tags($name),
727
+            'vid' => $team_vid,
728
+            'description' => '',
729
+            'parent' => 0
730 730
         );
731 731
         taxonomy_save_term($team_type);
732
-      }
733
-      // Note the taxonomy ID for mapping forums to categories
734
-      $team_type_map[$boinc_type_id] = $team_type['tid'];
732
+        }
733
+        // Note the taxonomy ID for mapping forums to categories
734
+        $team_type_map[$boinc_type_id] = $team_type['tid'];
735 735
     }
736 736
     variable_set('boincimport_team_types', $team_type_map);
737
-  }
737
+    }
738 738
   
739
-  $pre = variable_get('boincimport_table_prefix', '');
739
+    $pre = variable_get('boincimport_table_prefix', '');
740 740
 
741
-  // Get the list of teams to import
742
-  db_set_active('boinc');
743
-  $boinc_teams = db_query('
741
+    // Get the list of teams to import
742
+    db_set_active('boinc');
743
+    $boinc_teams = db_query('
744 744
     SELECT id, name, description, userid, create_time
745 745
     FROM %steam',
746 746
     $pre
747
-  );
748
-  $team_count = mysql_num_rows($boinc_teams);
749
-  db_set_active('default');
747
+    );
748
+    $team_count = mysql_num_rows($boinc_teams);
749
+    db_set_active('default');
750 750
 
751
-  if (!$team_count) {
751
+    if (!$team_count) {
752 752
     drupal_set_message(
753
-      t('There were no teams found: Aborting script'), 'error'
753
+        t('There were no teams found: Aborting script'), 'error'
754 754
     );
755 755
     watchdog('boincimport',
756
-      'There were no teams found: Aborting script', array(), WATCHDOG_INFO
756
+        'There were no teams found: Aborting script', array(), WATCHDOG_INFO
757 757
     );
758 758
     // Release the lock on the import process
759 759
     variable_del('boincimport_process_locked');
760 760
     return t('There were no teams found: Aborting script.');
761
-  }
761
+    }
762 762
 
763
-  watchdog('boincimport',
763
+    watchdog('boincimport',
764 764
     'Found %team_count teams: Beginning Import',
765 765
     array('%team_count' => $team_count), WATCHDOG_INFO
766
-  );
766
+    );
767 767
   
768
-  $operations = array();
769
-  $existing_teams = array();
770
-  $duplicates = array();
768
+    $operations = array();
769
+    $existing_teams = array();
770
+    $duplicates = array();
771 771
   
772
-  // Get the list of teams already in Drupal to be sure we're not importing
773
-  // any twice
774
-  $result = db_query('
772
+    // Get the list of teams already in Drupal to be sure we're not importing
773
+    // any twice
774
+    $result = db_query('
775 775
     SELECT nid, team_id FROM {boincteam}'
776
-  );
777
-  while ($row = db_fetch_object($result)) {
776
+    );
777
+    while ($row = db_fetch_object($result)) {
778 778
     $existing_teams[$row->team_id] = $row->nid;
779
-  }
779
+    }
780 780
   
781
-  // Create batches to process
782
-  while ($boinc_team = db_fetch_object($boinc_teams)) {
783
-     if (isset($existing_teams[$boinc_team->id])) {
784
-      // This team has already been imported
785
-      $duplicates[] = $boinc_team->id;
781
+    // Create batches to process
782
+    while ($boinc_team = db_fetch_object($boinc_teams)) {
783
+        if (isset($existing_teams[$boinc_team->id])) {
784
+        // This team has already been imported
785
+        $duplicates[] = $boinc_team->id;
786 786
     }
787 787
     else {
788
-      $operations[] = array(
788
+        $operations[] = array(
789 789
         'boincimport_teams_op', array(
790
-          $boinc_team
790
+            $boinc_team
791 791
         )
792
-      );
792
+        );
793
+    }
793 794
     }
794
-  }
795 795
   
796
-  if ($duplicates) {
796
+    if ($duplicates) {
797 797
     drupal_set_message(t(
798
-      'Skipped @count teams that were already imported',
799
-      array('@count' => count($duplicates))
798
+        'Skipped @count teams that were already imported',
799
+        array('@count' => count($duplicates))
800 800
     ));
801
-  }
801
+    }
802 802
   
803
-  $batch = array(
803
+    $batch = array(
804 804
     'operations' => $operations,
805 805
     'finished' => 'boincimport_teams_finished',
806 806
     'title' => t('Importing teams'),
807 807
     'init_message' => t('Beginning team import...'),
808 808
     'progress_message' => t('Processed @current out of @total teams.'),
809 809
     'error_message' => t('Team import has encountered an error.'),
810
-  );
810
+    );
811 811
   
812
-  batch_set($batch);
812
+    batch_set($batch);
813 813
 }
814 814
 
815 815
 /**
@@ -818,67 +818,67 @@  discard block
 block discarded – undo
818 818
  */
819 819
 function boincimport_teams_op($boincteam, &$context) {
820 820
   
821
-  $success = boincteam_import($boincteam);
821
+    $success = boincteam_import($boincteam);
822 822
   
823
-  $message = '';
824
-  if ($success) {
823
+    $message = '';
824
+    if ($success) {
825 825
     // Store some result for post-processing in the finished callback.
826 826
     $context['results']['success'][] = $boincteam->id;
827 827
     $message = "Successfully imported team {$boincteam->id}";
828
-  }
829
-  else {
828
+    }
829
+    else {
830 830
     $context['results']['failure'][] = $boincteam->id;
831 831
     $message = "Failed to import team {$boincteam->id}!";
832 832
     watchdog('boincimport',
833
-      'Failed to import team @id!',
834
-      array('@id' => $boincteam->id), WATCHDOG_WARNING
833
+        'Failed to import team @id!',
834
+        array('@id' => $boincteam->id), WATCHDOG_WARNING
835 835
     ); 
836
-  }
836
+    }
837 837
   
838
-  // Update our progress information.
839
-  $context['sandbox']['progress']++;
840
-  $context['sandbox']['current_team'] = $boincteam->id;
841
-  $context['message'] = $message;
838
+    // Update our progress information.
839
+    $context['sandbox']['progress']++;
840
+    $context['sandbox']['current_team'] = $boincteam->id;
841
+    $context['message'] = $message;
842 842
 
843
-  // Update the progress for the batch engine
844
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
843
+    // Update the progress for the batch engine
844
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
845 845
     $context['finished'] = 1;
846
-  }
847
-  else {
846
+    }
847
+    else {
848 848
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
849
-  }
849
+    }
850 850
 }
851 851
 
852 852
 /**
853 853
  * Batch 'finished' callback
854 854
  */
855 855
 function boincimport_teams_finished($success, $results, $operations) {
856
-  if ($success) {
856
+    if ($success) {
857 857
     // Let's count our successes
858 858
     $total_imported = count($results['success']);
859 859
     $message = t(
860
-      'Successfully imported @count teams',
861
-      array('@count' => $total_imported)
860
+        'Successfully imported @count teams',
861
+        array('@count' => $total_imported)
862 862
     );
863 863
     watchdog('boincimport',
864
-      'Successfully imported @count teams.',
865
-      array('@count' => $total_imported), WATCHDOG_INFO
864
+        'Successfully imported @count teams.',
865
+        array('@count' => $total_imported), WATCHDOG_INFO
866 866
     ); 
867 867
     // Set the team import successful flag in the variable table
868 868
     variable_set('boincimport_import_team_successful', '1');
869 869
     $_SESSION['boincimport_stage_selected'] = 'friends';
870
-  }
871
-  else {
870
+    }
871
+    else {
872 872
     // An error occurred.
873 873
     // $operations contains the operations that remained unprocessed.
874 874
     $error_operation = reset($operations);
875 875
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
876
-  }
877
-  drupal_set_message($message);
876
+    }
877
+    drupal_set_message($message);
878 878
   
879
-  // Release the lock on the import process
880
-  variable_del('boincimport_process_locked');
881
-  drupal_goto('admin/boinc/import/process');
879
+    // Release the lock on the import process
880
+    variable_del('boincimport_process_locked');
881
+    drupal_goto('admin/boinc/import/process');
882 882
 }
883 883
 
884 884
 
@@ -891,25 +891,25 @@  discard block
 block discarded – undo
891 891
  */
892 892
 function boincimport_friends() {
893 893
   
894
-  // Check whether friendships have been successfully imported already
895
-  if (variable_get('boincimport_import_friend_successful', 0)) {
894
+    // Check whether friendships have been successfully imported already
895
+    if (variable_get('boincimport_import_friend_successful', 0)) {
896 896
     drupal_set_message(t('Note: Friends import has already run successfully'));
897 897
     watchdog(
898
-      'boincimport', 'Note: Friends import has already run successfully',
899
-      array(), WATCHDOG_INFO
898
+        'boincimport', 'Note: Friends import has already run successfully',
899
+        array(), WATCHDOG_INFO
900 900
     ); 
901
-  }
901
+    }
902 902
 
903
-  if (!variable_get('boincimport_import_friend_started', 0)) {
903
+    if (!variable_get('boincimport_import_friend_started', 0)) {
904 904
     // Could prepare database tables, if new fields are necessary, etc.
905 905
     variable_set('boincimport_import_friend_started', 1);
906
-  }
906
+    }
907 907
   
908
-  $pre = variable_get('boincimport_table_prefix', '');
908
+    $pre = variable_get('boincimport_table_prefix', '');
909 909
 
910
-  // Get stuff to import
911
-  db_set_active('boinc');
912
-  $friendships = db_query('
910
+    // Get stuff to import
911
+    db_set_active('boinc');
912
+    $friendships = db_query('
913 913
     SELECT
914 914
       f1.user_src,
915 915
       f1.user_dest,
@@ -923,51 +923,51 @@  discard block
 block discarded – undo
923 923
       AND (f2.user_src IS NULL OR f1.create_time < f2.create_time)
924 924
     ORDER BY create_time',
925 925
     $pre, $pre
926
-  );
927
-  $friendship_count = mysql_num_rows($friendships);
928
-  db_set_active('default');
926
+    );
927
+    $friendship_count = mysql_num_rows($friendships);
928
+    db_set_active('default');
929 929
 
930
-  if (!$friendship_count) {
930
+    if (!$friendship_count) {
931 931
     drupal_set_message(
932
-      t('There were no friendships found: Aborting script'), 'error'
932
+        t('There were no friendships found: Aborting script'), 'error'
933 933
     );
934 934
     watchdog('boincimport',
935
-      'There were no friendships found: Aborting script', array(), WATCHDOG_INFO
935
+        'There were no friendships found: Aborting script', array(), WATCHDOG_INFO
936 936
     );
937 937
     // Release the lock on the import process
938 938
     variable_del('boincimport_process_locked');
939 939
     return t('There were no friendships found: Aborting script.');
940
-  }
940
+    }
941 941
 
942
-  watchdog('boincimport',
942
+    watchdog('boincimport',
943 943
     'Found %count friend relationships: Beginning Import',
944 944
     array('%count' => $friendship_count), WATCHDOG_INFO
945
-  );
945
+    );
946 946
   
947
-  $operations = array();
947
+    $operations = array();
948 948
   
949
-  // It doesn't matter if a friend relationship has already been imported, just
950
-  // do it again if so
949
+    // It doesn't matter if a friend relationship has already been imported, just
950
+    // do it again if so
951 951
   
952
-  // Create batches to process
953
-  while ($friendship = db_fetch_object($friendships)) {
952
+    // Create batches to process
953
+    while ($friendship = db_fetch_object($friendships)) {
954 954
     $operations[] = array(
955
-      'boincimport_friends_op', array(
955
+        'boincimport_friends_op', array(
956 956
         $friendship
957
-      )
957
+        )
958 958
     );
959
-  }
959
+    }
960 960
   
961
-  $batch = array(
961
+    $batch = array(
962 962
     'operations' => $operations,
963 963
     'finished' => 'boincimport_friends_finished',
964 964
     'title' => t('Importing friend relationships'),
965 965
     'init_message' => t('Beginning friend import...'),
966 966
     'progress_message' => t('Processed @current out of @total friendships.'),
967 967
     'error_message' => t('Friend import has encountered an error.'),
968
-  );
968
+    );
969 969
   
970
-  batch_set($batch);
970
+    batch_set($batch);
971 971
 }
972 972
 
973 973
 /**
@@ -976,83 +976,83 @@  discard block
 block discarded – undo
976 976
  */
977 977
 function boincimport_friends_op($friendship, &$context) {
978 978
   
979
-  $input_format = variable_get('boincimport_input_format', 0);
980
-  $success = FALSE;
981
-  $message = '';
979
+    $input_format = variable_get('boincimport_input_format', 0);
980
+    $success = FALSE;
981
+    $message = '';
982 982
   
983
-  // Convert BOINC friends to Drupal friends
984
-  $uid = boincuser_lookup_uid($friendship->user_src);
985
-  $friend_uid = boincuser_lookup_uid($friendship->user_dest);
986
-  if ($uid AND $friend_uid) {
983
+    // Convert BOINC friends to Drupal friends
984
+    $uid = boincuser_lookup_uid($friendship->user_src);
985
+    $friend_uid = boincuser_lookup_uid($friendship->user_dest);
986
+    if ($uid AND $friend_uid) {
987 987
     $success = db_query("
988 988
       INSERT IGNORE INTO {flag_friend}
989 989
       SET uid = '%d', friend_uid = '%d', created = '%d'",
990
-      $uid, $friend_uid, $friendship->create_time
990
+        $uid, $friend_uid, $friendship->create_time
991 991
     );
992
-  }
993
-  else {
992
+    }
993
+    else {
994 994
     $boinc_id = ($uid) ? $friendship->user_dest : $friendship->user_src;
995 995
     $message = "No Drupal account exists for BOINC user {$boinc_id}!";
996
-  }
996
+    }
997 997
   
998
-  if ($success) {
998
+    if ($success) {
999 999
     // Store some result for post-processing in the finished callback.
1000 1000
     $context['results']['success'][] = $uid;
1001 1001
     $message = "Successfully made users {$uid} and {$friend_uid} friends";
1002
-  }
1003
-  else {
1002
+    }
1003
+    else {
1004 1004
     $context['results']['failure'][] = $uid;
1005 1005
     if (!$message) {
1006
-      $message = "Failed to make users {$uid} and {$friend_uid} friends!";
1006
+        $message = "Failed to make users {$uid} and {$friend_uid} friends!";
1007 1007
     }
1008 1008
     watchdog('boincimport', $message, array(), WATCHDOG_WARNING);
1009
-  }
1009
+    }
1010 1010
   
1011
-  // Update our progress information.
1012
-  $context['sandbox']['progress']++;
1013
-  $context['sandbox']['current_user'] = $uid;
1014
-  $context['message'] = $message;
1011
+    // Update our progress information.
1012
+    $context['sandbox']['progress']++;
1013
+    $context['sandbox']['current_user'] = $uid;
1014
+    $context['message'] = $message;
1015 1015
 
1016
-  // Update the progress for the batch engine
1017
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1016
+    // Update the progress for the batch engine
1017
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1018 1018
     $context['finished'] = 1;
1019
-  }
1020
-  else {
1019
+    }
1020
+    else {
1021 1021
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1022
-  }
1022
+    }
1023 1023
 }
1024 1024
 
1025 1025
 /**
1026 1026
  * Batch 'finished' callback
1027 1027
  */
1028 1028
 function boincimport_friends_finished($success, $results, $operations) {
1029
-  if ($success) {
1029
+    if ($success) {
1030 1030
     // Let's count our successes
1031 1031
     $total_imported = count($results['success']);
1032 1032
     $failures = count($results['failure']);
1033 1033
     $message = t(
1034
-      'Successfully imported @count friendships (@failed failures)',
1035
-      array(
1034
+        'Successfully imported @count friendships (@failed failures)',
1035
+        array(
1036 1036
         '@count' => $total_imported,
1037 1037
         '@failed' => $failures,
1038
-      )
1038
+        )
1039 1039
     );
1040 1040
     watchdog('boincimport', $message, array(), WATCHDOG_INFO); 
1041 1041
     // Set the friend import successful flag in the variable table
1042 1042
     variable_set('boincimport_import_friend_successful', '1');
1043 1043
     $_SESSION['boincimport_stage_selected'] = 'preferences';
1044
-  }
1045
-  else {
1044
+    }
1045
+    else {
1046 1046
     // An error occurred.
1047 1047
     // $operations contains the operations that remained unprocessed.
1048 1048
     $error_operation = reset($operations);
1049 1049
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1050
-  }
1051
-  drupal_set_message($message);
1050
+    }
1051
+    drupal_set_message($message);
1052 1052
   
1053
-  // Release the lock on the import process
1054
-  variable_del('boincimport_process_locked');
1055
-  drupal_goto('admin/boinc/import/process');
1053
+    // Release the lock on the import process
1054
+    variable_del('boincimport_process_locked');
1055
+    drupal_goto('admin/boinc/import/process');
1056 1056
 }
1057 1057
 
1058 1058
 
@@ -1065,78 +1065,78 @@  discard block
 block discarded – undo
1065 1065
  */
1066 1066
 function boincimport_preferences() {
1067 1067
   
1068
-  // Check whether preferences have been successfully imported already
1069
-  if (variable_get('boincimport_import_preferences_successful', 0)) {
1068
+    // Check whether preferences have been successfully imported already
1069
+    if (variable_get('boincimport_import_preferences_successful', 0)) {
1070 1070
     drupal_set_message(t('Note: preferences import has already run successfully'));
1071 1071
     watchdog(
1072
-      'boincimport', 'Note: preferences import has already run successfully',
1073
-      array(), WATCHDOG_INFO
1072
+        'boincimport', 'Note: preferences import has already run successfully',
1073
+        array(), WATCHDOG_INFO
1074 1074
     ); 
1075
-  }
1075
+    }
1076 1076
 
1077
-  if (!variable_get('boincimport_import_preferences_started', 0)) {
1077
+    if (!variable_get('boincimport_import_preferences_started', 0)) {
1078 1078
     // Could prepare database tables, if new fields are necessary, etc.
1079 1079
     variable_set('boincimport_import_preferences_started', 1);
1080
-  }
1080
+    }
1081 1081
   
1082
-  $pre = variable_get('boincimport_table_prefix', '');
1082
+    $pre = variable_get('boincimport_table_prefix', '');
1083 1083
   
1084
-  // Currently the only preferences being imported are BOINC "filtered users"
1085
-  // This concept of users blocking other users when they don't get along maps
1086
-  // to the Drupal ignore users module
1084
+    // Currently the only preferences being imported are BOINC "filtered users"
1085
+    // This concept of users blocking other users when they don't get along maps
1086
+    // to the Drupal ignore users module
1087 1087
   
1088
-  // Find users who are involved in quarrels
1089
-  db_set_active('boinc');
1090
-  $quarrelers = db_query("
1088
+    // Find users who are involved in quarrels
1089
+    db_set_active('boinc');
1090
+    $quarrelers = db_query("
1091 1091
     SELECT userid, ignorelist
1092 1092
     FROM %sforum_preferences
1093 1093
     WHERE ignorelist <> ''",
1094 1094
     $pre
1095
-  );
1096
-  $quarreler_count = mysql_num_rows($quarrelers);
1097
-  db_set_active('default');
1095
+    );
1096
+    $quarreler_count = mysql_num_rows($quarrelers);
1097
+    db_set_active('default');
1098 1098
 
1099
-  if (!$quarreler_count) {
1099
+    if (!$quarreler_count) {
1100 1100
     drupal_set_message(
1101
-      t('There were no quarrels found: Moving on...')
1101
+        t('There were no quarrels found: Moving on...')
1102 1102
     );
1103 1103
     watchdog('boincimport',
1104
-      'There were no quarrels found: Moving on...', array(), WATCHDOG_INFO
1104
+        'There were no quarrels found: Moving on...', array(), WATCHDOG_INFO
1105 1105
     );
1106 1106
     // Release the lock on the import process
1107 1107
     variable_del('boincimport_process_locked');
1108 1108
     return t('There were no quarrels found: Moving on...');
1109
-  }
1109
+    }
1110 1110
 
1111
-  watchdog('boincimport',
1111
+    watchdog('boincimport',
1112 1112
     'Found %count quarreling users: Beginning Import',
1113 1113
     array('%count' => $quarreler_count), WATCHDOG_INFO
1114
-  );
1114
+    );
1115 1115
   
1116
-  $operations = array();
1116
+    $operations = array();
1117 1117
   
1118
-  // It doesn't matter if a filtered user preference has already been imported,
1119
-  // just do it again if so
1118
+    // It doesn't matter if a filtered user preference has already been imported,
1119
+    // just do it again if so
1120 1120
   
1121
-  // Create batches to process
1122
-  while ($quarreler = db_fetch_object($quarrelers)) {
1121
+    // Create batches to process
1122
+    while ($quarreler = db_fetch_object($quarrelers)) {
1123 1123
     $operations[] = array(
1124
-      'boincimport_quarrels_op', array(
1124
+        'boincimport_quarrels_op', array(
1125 1125
         $quarreler
1126
-      )
1126
+        )
1127 1127
     );
1128
-  }
1128
+    }
1129 1129
   
1130
-  $batch = array(
1130
+    $batch = array(
1131 1131
     'operations' => $operations,
1132 1132
     'finished' => 'boincimport_preferences_finished',
1133 1133
     'title' => t('Importing preferences'),
1134 1134
     'init_message' => t('Beginning preference import...'),
1135 1135
     'progress_message' => t('Processed @current out of @total preferences.'),
1136 1136
     'error_message' => t('Preference import has encountered an error.'),
1137
-  );
1137
+    );
1138 1138
   
1139
-  batch_set($batch);
1139
+    batch_set($batch);
1140 1140
 }
1141 1141
 
1142 1142
 /**
@@ -1145,99 +1145,99 @@  discard block
 block discarded – undo
1145 1145
  */
1146 1146
 function boincimport_quarrels_op($boinc_user, &$context) {
1147 1147
   
1148
-  $success = FALSE;
1149
-  $uid = boincuser_lookup_uid($boinc_user->userid);
1150
-  $ignored_users = explode('|', trim($boinc_user->ignorelist, '|'));
1151
-  foreach ($ignored_users as $ignored_user) {
1148
+    $success = FALSE;
1149
+    $uid = boincuser_lookup_uid($boinc_user->userid);
1150
+    $ignored_users = explode('|', trim($boinc_user->ignorelist, '|'));
1151
+    foreach ($ignored_users as $ignored_user) {
1152 1152
     $ignored_user_uid = boincuser_lookup_uid($ignored_user);
1153 1153
     if (!$ignored_user_uid) {
1154
-      $context['results']['warning'][] = "{$uid}:{$ignored_user_uid}";
1155
-      watchdog('boincimport',
1154
+        $context['results']['warning'][] = "{$uid}:{$ignored_user_uid}";
1155
+        watchdog('boincimport',
1156 1156
         'Error adding to ignore list of user @uid: No Drupal ID found for BOINC user @boinc_id',
1157 1157
         array('@boinc_id' => $ignored_user, '@uid' => $uid),
1158 1158
         WATCHDOG_WARNING
1159
-      );
1160
-      continue;
1159
+        );
1160
+        continue;
1161 1161
     }
1162 1162
     $user_ignored = db_query("
1163 1163
       INSERT IGNORE INTO {ignore_user}
1164 1164
       SET uid = '%d', iuid = '%d'",
1165
-      $uid, $ignored_user_uid
1165
+        $uid, $ignored_user_uid
1166 1166
     );
1167 1167
     if ($user_ignored) {
1168
-      $success = TRUE;
1168
+        $success = TRUE;
1169 1169
     }
1170 1170
     else {
1171
-      $context['results']['warning'][] = "{$uid}:{$ignored_user_uid}";
1172
-      watchdog('boincimport',
1171
+        $context['results']['warning'][] = "{$uid}:{$ignored_user_uid}";
1172
+        watchdog('boincimport',
1173 1173
         'Could not add user @ignored_uid to the ignore list of user @uid',
1174 1174
         array('@ignored_uid' => $ignored_user_uid, '@uid' => $uid),
1175 1175
         WATCHDOG_WARNING
1176
-      );
1176
+        );
1177
+    }
1177 1178
     }
1178
-  }
1179 1179
   
1180
-  $message = '';
1181
-  if ($success) {
1180
+    $message = '';
1181
+    if ($success) {
1182 1182
     // Store some result for post-processing in the finished callback.
1183 1183
     $context['results']['success'][] = $uid;
1184 1184
     $message = "Successfully imported ignored users for user {$uid}";
1185
-  }
1186
-  else {
1185
+    }
1186
+    else {
1187 1187
     $context['results']['failure'][] = $uid;
1188 1188
     $message = "Failed to import any user filter preferences for user {$uid}!";
1189 1189
     watchdog('boincimport',
1190
-      'Failed to import any user filter preferences for user @id!',
1191
-      array('@id' => $uid), WATCHDOG_WARNING
1190
+        'Failed to import any user filter preferences for user @id!',
1191
+        array('@id' => $uid), WATCHDOG_WARNING
1192 1192
     ); 
1193
-  }
1193
+    }
1194 1194
   
1195
-  // Update our progress information.
1196
-  $context['sandbox']['progress']++;
1197
-  $context['sandbox']['current_user'] = $uid;
1198
-  $context['message'] = $message;
1195
+    // Update our progress information.
1196
+    $context['sandbox']['progress']++;
1197
+    $context['sandbox']['current_user'] = $uid;
1198
+    $context['message'] = $message;
1199 1199
 
1200
-  // Update the progress for the batch engine
1201
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1200
+    // Update the progress for the batch engine
1201
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1202 1202
     $context['finished'] = 1;
1203
-  }
1204
-  else {
1203
+    }
1204
+    else {
1205 1205
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1206
-  }
1206
+    }
1207 1207
 }
1208 1208
 
1209 1209
 /**
1210 1210
  * Batch 'finished' callback
1211 1211
  */
1212 1212
 function boincimport_preferences_finished($success, $results, $operations) {
1213
-  if ($success) {
1213
+    if ($success) {
1214 1214
     // Let's count our successes
1215 1215
     $total_imported = count($results['success']);
1216 1216
     $total_warnings = count($results['warning']);
1217 1217
     $message = t(
1218
-      'Successfully imported preferences for @count users (with @warn warnings)',
1219
-      array('@count' => $total_imported, '@warn' => $total_warnings)
1218
+        'Successfully imported preferences for @count users (with @warn warnings)',
1219
+        array('@count' => $total_imported, '@warn' => $total_warnings)
1220 1220
     );
1221 1221
     watchdog('boincimport',
1222
-      'Successfully imported preferences for @count users (with @warn warnings)',
1223
-      array('@count' => $total_imported, '@warn' => $total_warnings),
1224
-      WATCHDOG_INFO
1222
+        'Successfully imported preferences for @count users (with @warn warnings)',
1223
+        array('@count' => $total_imported, '@warn' => $total_warnings),
1224
+        WATCHDOG_INFO
1225 1225
     );
1226 1226
     // Set the preference import successful flag in the variable table
1227 1227
     variable_set('boincimport_import_preferences_successful', '1');
1228 1228
     $_SESSION['boincimport_stage_selected'] = 'private messages';
1229
-  }
1230
-  else {
1229
+    }
1230
+    else {
1231 1231
     // An error occurred.
1232 1232
     // $operations contains the operations that remained unprocessed.
1233 1233
     $error_operation = reset($operations);
1234 1234
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1235
-  }
1236
-  drupal_set_message($message);
1235
+    }
1236
+    drupal_set_message($message);
1237 1237
   
1238
-  // Release the lock on the import process
1239
-  variable_del('boincimport_process_locked');
1240
-  drupal_goto('admin/boinc/import/process');
1238
+    // Release the lock on the import process
1239
+    variable_del('boincimport_process_locked');
1240
+    drupal_goto('admin/boinc/import/process');
1241 1241
 }
1242 1242
 
1243 1243
 
@@ -1250,74 +1250,74 @@  discard block
 block discarded – undo
1250 1250
  */
1251 1251
 function boincimport_private_msgs() {
1252 1252
   
1253
-  // Check whether private messages have been successfully imported already
1254
-  if (variable_get('boincimport_import_private_msg_successful', 0)) {
1253
+    // Check whether private messages have been successfully imported already
1254
+    if (variable_get('boincimport_import_private_msg_successful', 0)) {
1255 1255
     drupal_set_message(t('Private message import has already run successfully -- repeating this process could result in duplicate messages!'), 'warning');
1256 1256
     watchdog(
1257
-      'boincimport', 'Private message import has already run successfully',
1258
-      array(), WATCHDOG_WARNING
1257
+        'boincimport', 'Private message import has already run successfully',
1258
+        array(), WATCHDOG_WARNING
1259 1259
     );
1260 1260
     return;
1261
-  }
1261
+    }
1262 1262
 
1263
-  if (!variable_get('boincimport_import_private_msg_started', 0)) {
1263
+    if (!variable_get('boincimport_import_private_msg_started', 0)) {
1264 1264
     // Could prepare database tables, if new fields are necessary, etc.
1265 1265
     variable_set('boincimport_import_private_msg_started', 1);
1266
-  }
1266
+    }
1267 1267
   
1268
-  $pre = variable_get('boincimport_table_prefix', '');
1268
+    $pre = variable_get('boincimport_table_prefix', '');
1269 1269
 
1270
-  // Get stuff to import
1271
-  db_set_active('boinc');
1272
-  $boinc_private_msgs = db_query('
1270
+    // Get stuff to import
1271
+    db_set_active('boinc');
1272
+    $boinc_private_msgs = db_query('
1273 1273
     SELECT id, subject, content, userid, senderid, date, opened
1274 1274
     FROM %sprivate_messages',
1275 1275
     $pre
1276
-  );
1277
-  $private_msg_count = mysql_num_rows($boinc_private_msgs);
1278
-  db_set_active('default');
1276
+    );
1277
+    $private_msg_count = mysql_num_rows($boinc_private_msgs);
1278
+    db_set_active('default');
1279 1279
 
1280
-  if (!$private_msg_count) {
1280
+    if (!$private_msg_count) {
1281 1281
     drupal_set_message(
1282
-      t('There were no private messages found: Moving on...')
1282
+        t('There were no private messages found: Moving on...')
1283 1283
     );
1284 1284
     watchdog('boincimport',
1285
-      'There were no private messages found: Moving on...', array(), WATCHDOG_INFO
1285
+        'There were no private messages found: Moving on...', array(), WATCHDOG_INFO
1286 1286
     );
1287 1287
     // Release the lock on the import process
1288 1288
     variable_del('boincimport_process_locked');
1289 1289
     return t('There were no private messages found: Moving on...');
1290
-  }
1290
+    }
1291 1291
 
1292
-  watchdog('boincimport',
1292
+    watchdog('boincimport',
1293 1293
     'Found %count private messages: Beginning Import',
1294 1294
     array('%count' => $private_msg_count), WATCHDOG_INFO
1295
-  );
1295
+    );
1296 1296
   
1297
-  $operations = array();
1297
+    $operations = array();
1298 1298
   
1299
-  // We don't know if a given private message has been imported already or not;
1300
-  // if this is needed, a relation table must be added to the Drupal DB
1299
+    // We don't know if a given private message has been imported already or not;
1300
+    // if this is needed, a relation table must be added to the Drupal DB
1301 1301
   
1302
-  // Create batches to process
1303
-  while ($boinc_private_msg = db_fetch_object($boinc_private_msgs)) {
1302
+    // Create batches to process
1303
+    while ($boinc_private_msg = db_fetch_object($boinc_private_msgs)) {
1304 1304
     $operations[] = array(
1305
-      'boincimport_private_msgs_op', array(
1305
+        'boincimport_private_msgs_op', array(
1306 1306
         $boinc_private_msg
1307
-      )
1307
+        )
1308 1308
     );
1309
-  }
1309
+    }
1310 1310
   
1311
-  $batch = array(
1311
+    $batch = array(
1312 1312
     'operations' => $operations,
1313 1313
     'finished' => 'boincimport_private_msgs_finished',
1314 1314
     'title' => t('Importing private messages'),
1315 1315
     'init_message' => t('Beginning private message import...'),
1316 1316
     'progress_message' => t('Processed @current out of @total private messages.'),
1317 1317
     'error_message' => t('Private message import has encountered an error.'),
1318
-  );
1318
+    );
1319 1319
   
1320
-  batch_set($batch);
1320
+    batch_set($batch);
1321 1321
 }
1322 1322
 
1323 1323
 /**
@@ -1326,95 +1326,95 @@  discard block
 block discarded – undo
1326 1326
  */
1327 1327
 function boincimport_private_msgs_op($pm, &$context) {
1328 1328
   
1329
-  $input_format = variable_get('boincimport_input_format', 0);
1329
+    $input_format = variable_get('boincimport_input_format', 0);
1330 1330
   
1331
-  $uid = boincuser_lookup_uid($pm->userid);
1332
-  $sender_uid = boincuser_lookup_uid($pm->senderid);
1331
+    $uid = boincuser_lookup_uid($pm->userid);
1332
+    $sender_uid = boincuser_lookup_uid($pm->senderid);
1333 1333
   
1334
-  $pm->content = _boincimport_strip_bbcode($pm->content);
1335
-  $pm->content = _boincimport_text_sanitize($pm->content);
1334
+    $pm->content = _boincimport_strip_bbcode($pm->content);
1335
+    $pm->content = _boincimport_text_sanitize($pm->content);
1336 1336
   
1337
-  // First save the message
1338
-  $message_added = db_query("
1337
+    // First save the message
1338
+    $message_added = db_query("
1339 1339
     INSERT INTO {pm_message} (subject, author, body, format, timestamp)
1340 1340
     VALUES ('%s', %d, '%s', %d, %d)",
1341 1341
     $pm->subject, $sender_uid, $pm->content, $input_format, $pm->date
1342
-  );
1343
-  $mid = db_last_insert_id('pm_message', 'mid');
1342
+    );
1343
+    $mid = db_last_insert_id('pm_message', 'mid');
1344 1344
   
1345
-  // Then attach recipients and set status (note that threads are not a BOINC
1346
-  // feature, so just consider every message to be a new thread)
1347
-  $recipient_added = db_query("
1345
+    // Then attach recipients and set status (note that threads are not a BOINC
1346
+    // feature, so just consider every message to be a new thread)
1347
+    $recipient_added = db_query("
1348 1348
     INSERT INTO {pm_index} (mid, thread_id, uid, is_new, deleted)
1349 1349
     VALUES (%d, %d, %d, %d, 0)",
1350 1350
     $mid, $mid, $uid, !$pm->opened
1351
-  );
1352
-  // In Drupal, the sender should be attached as well
1353
-  $sender_added = db_query("
1351
+    );
1352
+    // In Drupal, the sender should be attached as well
1353
+    $sender_added = db_query("
1354 1354
     INSERT INTO {pm_index} (mid, thread_id, uid, is_new, deleted)
1355 1355
     VALUES (%d, %d, %d, %d, 0)",
1356 1356
     $mid, $mid, $sender_uid, 0
1357
-  );
1357
+    );
1358 1358
   
1359
-  $message = '';
1360
-  if ($message_added AND $recipient_added AND $sender_added) {
1359
+    $message = '';
1360
+    if ($message_added AND $recipient_added AND $sender_added) {
1361 1361
     // Store some result for post-processing in the finished callback.
1362 1362
     $context['results']['success'][] = $pm->id;
1363 1363
     $message = "Successfully imported private message {$pm->id}";
1364
-  }
1365
-  else {
1364
+    }
1365
+    else {
1366 1366
     $context['results']['failure'][] = $pm->id;
1367 1367
     $message = "Failed to import private message {$pm->id}!";
1368 1368
     watchdog('boincimport',
1369
-      'Failed to import private message @id!',
1370
-      array('@id' => $pm->id), WATCHDOG_WARNING
1369
+        'Failed to import private message @id!',
1370
+        array('@id' => $pm->id), WATCHDOG_WARNING
1371 1371
     ); 
1372
-  }
1372
+    }
1373 1373
   
1374
-  // Update our progress information.
1375
-  $context['sandbox']['progress']++;
1376
-  $context['sandbox']['current_pm'] = $pm->id;
1377
-  $context['message'] = $message;
1374
+    // Update our progress information.
1375
+    $context['sandbox']['progress']++;
1376
+    $context['sandbox']['current_pm'] = $pm->id;
1377
+    $context['message'] = $message;
1378 1378
 
1379
-  // Update the progress for the batch engine
1380
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1379
+    // Update the progress for the batch engine
1380
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1381 1381
     $context['finished'] = 1;
1382
-  }
1383
-  else {
1382
+    }
1383
+    else {
1384 1384
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1385
-  }
1385
+    }
1386 1386
 }
1387 1387
 
1388 1388
 /**
1389 1389
  * Batch 'finished' callback
1390 1390
  */
1391 1391
 function boincimport_private_msgs_finished($success, $results, $operations) {
1392
-  if ($success) {
1392
+    if ($success) {
1393 1393
     // Let's count our successes
1394 1394
     $total_imported = count($results['success']);
1395 1395
     $message = t(
1396
-      'Successfully imported @count private messages',
1397
-      array('@count' => $total_imported)
1396
+        'Successfully imported @count private messages',
1397
+        array('@count' => $total_imported)
1398 1398
     );
1399 1399
     watchdog('boincimport',
1400
-      'Successfully imported @count private messages.',
1401
-      array('@count' => $total_imported), WATCHDOG_INFO
1400
+        'Successfully imported @count private messages.',
1401
+        array('@count' => $total_imported), WATCHDOG_INFO
1402 1402
     ); 
1403 1403
     // Set the private message import successful flag in the variable table
1404 1404
     variable_set('boincimport_import_private_msg_successful', '1');
1405 1405
     $_SESSION['boincimport_stage_selected'] = 'categories';
1406
-  }
1407
-  else {
1406
+    }
1407
+    else {
1408 1408
     // An error occurred.
1409 1409
     // $operations contains the operations that remained unprocessed.
1410 1410
     $error_operation = reset($operations);
1411 1411
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1412
-  }
1413
-  drupal_set_message($message);
1412
+    }
1413
+    drupal_set_message($message);
1414 1414
   
1415
-  // Release the lock on the import process
1416
-  variable_del('boincimport_process_locked');
1417
-  drupal_goto('admin/boinc/import/process');
1415
+    // Release the lock on the import process
1416
+    variable_del('boincimport_process_locked');
1417
+    drupal_goto('admin/boinc/import/process');
1418 1418
 }
1419 1419
 
1420 1420
 
@@ -1427,196 +1427,196 @@  discard block
 block discarded – undo
1427 1427
  */
1428 1428
 function boincimport_forum_categories() {
1429 1429
   
1430
-  // Check whether forums have been successfully imported already
1431
-  if (variable_get('boincimport_import_forum_category_successful', 0)) {
1430
+    // Check whether forums have been successfully imported already
1431
+    if (variable_get('boincimport_import_forum_category_successful', 0)) {
1432 1432
     drupal_set_message(t('Note: forum container import has already run successfully'));
1433 1433
     watchdog(
1434
-      'boincimport', 'Note: forum container import has already run successfully',
1435
-      array(), WATCHDOG_INFO
1434
+        'boincimport', 'Note: forum container import has already run successfully',
1435
+        array(), WATCHDOG_INFO
1436 1436
     ); 
1437
-  }
1437
+    }
1438 1438
 
1439
-  if (!variable_get('boincimport_import_forum_category_started', 0)) {
1439
+    if (!variable_get('boincimport_import_forum_category_started', 0)) {
1440 1440
     // Could prepare database tables, if new fields are necessary, etc.
1441 1441
     variable_set('boincimport_import_forum_category_started', 1);
1442
-  }
1442
+    }
1443 1443
   
1444
-  $pre = variable_get('boincimport_table_prefix', '');
1444
+    $pre = variable_get('boincimport_table_prefix', '');
1445 1445
 
1446
-  // Retrieve the vocabulary vid named "Forums"
1447
-  //$forum_vid = variable_get('forum_nav_vocabulary', 0);
1448
-  $forum_vid = db_result(db_query('
1446
+    // Retrieve the vocabulary vid named "Forums"
1447
+    //$forum_vid = variable_get('forum_nav_vocabulary', 0);
1448
+    $forum_vid = db_result(db_query('
1449 1449
     SELECT vid FROM {vocabulary}
1450 1450
     WHERE name="%s"',
1451 1451
     'Forums'
1452
-  ));
1453
-  if (!$forum_vid) {
1452
+    ));
1453
+    if (!$forum_vid) {
1454 1454
     $forum_vocab = array(
1455
-      'name' => t('Forums'),
1456
-      'description' => t('The different forum categories / containers'),
1455
+        'name' => t('Forums'),
1456
+        'description' => t('The different forum categories / containers'),
1457 1457
     );
1458 1458
     taxonomy_save_vocabulary($forum_vocab);
1459 1459
     $forum_vid = db_result(db_query('
1460 1460
       SELECT vid FROM {vocabulary}
1461 1461
       WHERE name="%s"',
1462
-      'Forums'
1462
+        'Forums'
1463 1463
     ));
1464
-  }
1464
+    }
1465 1465
   
1466
-  // Get both categories and forums from BOINC
1467
-  db_set_active('boinc');
1468
-  $boinc_forum_categories = db_query('
1466
+    // Get both categories and forums from BOINC
1467
+    db_set_active('boinc');
1468
+    $boinc_forum_categories = db_query('
1469 1469
     SELECT id, name
1470 1470
     FROM %scategory
1471 1471
     ORDER BY orderID',
1472 1472
     $pre
1473
-  );
1474
-  $forum_category_count = mysql_num_rows($boinc_forum_categories);
1475
-  $boinc_forums = db_query('
1473
+    );
1474
+    $forum_category_count = mysql_num_rows($boinc_forum_categories);
1475
+    $boinc_forums = db_query('
1476 1476
     SELECT id, category, title, description, orderID
1477 1477
     FROM %sforum
1478 1478
     WHERE parent_type = 0
1479 1479
     ORDER BY category',
1480 1480
     $pre
1481
-  );
1482
-  $forum_count = mysql_num_rows($boinc_forums);
1483
-  db_set_active('default');
1481
+    );
1482
+    $forum_count = mysql_num_rows($boinc_forums);
1483
+    db_set_active('default');
1484 1484
 
1485
-  if (!$forum_category_count) {
1485
+    if (!$forum_category_count) {
1486 1486
     drupal_set_message(
1487
-      t('There were no forum containers found: Aborting script'), 'warning'
1487
+        t('There were no forum containers found: Aborting script'), 'warning'
1488 1488
     );
1489 1489
     watchdog('boincimport',
1490
-      'There were no forum containers found: Aborting script', array(), WATCHDOG_WARNING
1490
+        'There were no forum containers found: Aborting script', array(), WATCHDOG_WARNING
1491 1491
     );
1492 1492
     // Release the lock on the import process
1493 1493
     variable_del('boincimport_process_locked');
1494 1494
     return t('There were no forum containers found: Aborting script.');
1495
-  }
1496
-  if (!$forum_count) {
1495
+    }
1496
+    if (!$forum_count) {
1497 1497
     drupal_set_message(
1498
-      t('There were no forums found: Aborting script'), 'warning'
1498
+        t('There were no forums found: Aborting script'), 'warning'
1499 1499
     );
1500 1500
     watchdog('boincimport',
1501
-      'There were no forums found: Aborting script', array(), WATCHDOG_WARNING
1501
+        'There were no forums found: Aborting script', array(), WATCHDOG_WARNING
1502 1502
     );
1503 1503
     // Release the lock on the import process
1504 1504
     variable_del('boincimport_process_locked');
1505 1505
     return t('There were no forums found: Aborting script.');
1506
-  }
1506
+    }
1507 1507
 
1508
-  watchdog('boincimport',
1508
+    watchdog('boincimport',
1509 1509
     'Found %forum_count forums in %category_count containers: Beginning Import',
1510 1510
     array(
1511
-      '%forum_count' => $forum_count,
1512
-      '%category_count' => $forum_category_count,
1511
+        '%forum_count' => $forum_count,
1512
+        '%category_count' => $forum_category_count,
1513 1513
     ), WATCHDOG_INFO
1514
-  );
1515
-  
1516
-  $operations = array();
1517
-  $existing_categories = array();
1518
-  $existing_forums = array();
1519
-  $duplicate_categories = array();
1520
-  $duplicate_forums = array();
1521
-  $category_map = array();
1522
-  
1523
-  // Get the list of categories already in Drupal so as not to import any twice
1524
-  $category_tree = taxonomy_get_tree($forum_vid, 0, -1, 1);
1525
-  foreach ($category_tree as $term) {
1514
+    );
1515
+  
1516
+    $operations = array();
1517
+    $existing_categories = array();
1518
+    $existing_forums = array();
1519
+    $duplicate_categories = array();
1520
+    $duplicate_forums = array();
1521
+    $category_map = array();
1522
+  
1523
+    // Get the list of categories already in Drupal so as not to import any twice
1524
+    $category_tree = taxonomy_get_tree($forum_vid, 0, -1, 1);
1525
+    foreach ($category_tree as $term) {
1526 1526
     $existing_categories[] = $term->name;
1527
-  }
1527
+    }
1528 1528
   
1529
-  // Get the list of forums already in Drupal
1530
-  $result = db_query('
1529
+    // Get the list of forums already in Drupal
1530
+    $result = db_query('
1531 1531
     SELECT forum_id, tid FROM {boincimport_temp_forum}'
1532
-  );
1533
-  while ($row = db_fetch_object($result)) {
1532
+    );
1533
+    while ($row = db_fetch_object($result)) {
1534 1534
     $existing_forums[$row->forum_id] = $row->tid;
1535
-  }
1535
+    }
1536 1536
   
1537
-  // Create batches to process
1537
+    // Create batches to process
1538 1538
   
1539
-  // Set up the "hidden" category, if necessary
1540
-  // This is to support automatic hiding of empty categories
1541
-  $hidden_forum_tid = db_result(db_query('
1539
+    // Set up the "hidden" category, if necessary
1540
+    // This is to support automatic hiding of empty categories
1541
+    $hidden_forum_tid = db_result(db_query('
1542 1542
     SELECT tid FROM {term_data}
1543 1543
     WHERE vid = %d
1544 1544
     AND name = "%s"',
1545 1545
     $forum_vid, 'Hidden'
1546
-  ));
1547
-  if (!$hidden_forum_tid) {
1546
+    ));
1547
+    if (!$hidden_forum_tid) {
1548 1548
     $operations[] = array(
1549
-      'boincimport_forum_categories_op', array(
1549
+        'boincimport_forum_categories_op', array(
1550 1550
         NULL, $forum_vid, $pre, TRUE
1551
-      )
1551
+        )
1552 1552
     );
1553
-  }
1553
+    }
1554 1554
   
1555
-  // Import categories
1556
-  while ($boinc_forum_category = db_fetch_object($boinc_forum_categories)) {
1555
+    // Import categories
1556
+    while ($boinc_forum_category = db_fetch_object($boinc_forum_categories)) {
1557 1557
     if (in_array($boinc_forum_category->name, $existing_categories)) {
1558
-      // This category has already been imported
1559
-      $duplicate_categories[] = $boinc_forum_category->name;
1558
+        // This category has already been imported
1559
+        $duplicate_categories[] = $boinc_forum_category->name;
1560 1560
     }
1561 1561
     else {
1562
-      $operations[] = array(
1562
+        $operations[] = array(
1563 1563
         'boincimport_forum_categories_op', array(
1564
-          $boinc_forum_category, $forum_vid, $pre, FALSE
1564
+            $boinc_forum_category, $forum_vid, $pre, FALSE
1565 1565
         )
1566
-      );
1566
+        );
1567
+    }
1567 1568
     }
1568
-  }
1569 1569
   
1570
-  // Import forums
1571
-  while ($boinc_forum = db_fetch_object($boinc_forums)) {
1572
-     if (isset($existing_forums[$boinc_forum->id])) {
1573
-      // This forum has already been imported
1574
-      $duplicates[] = $boinc_forum->id;
1570
+    // Import forums
1571
+    while ($boinc_forum = db_fetch_object($boinc_forums)) {
1572
+        if (isset($existing_forums[$boinc_forum->id])) {
1573
+        // This forum has already been imported
1574
+        $duplicates[] = $boinc_forum->id;
1575 1575
     }
1576 1576
     else {
1577
-      $operations[] = array(
1577
+        $operations[] = array(
1578 1578
         'boincimport_forums_op', array(
1579
-          $boinc_forum, $forum_vid, $pre
1579
+            $boinc_forum, $forum_vid, $pre
1580 1580
         )
1581
-      );
1581
+        );
1582
+    }
1582 1583
     }
1583
-  }
1584 1584
   
1585
-  // Report any duplicates that were skipped
1586
-  $skipped_message = array();
1587
-  $categories_skipped = count($duplicate_categories);
1588
-  $forums_skipped = count($duplicate_forums);
1589
-  if ($categories_skipped) {
1585
+    // Report any duplicates that were skipped
1586
+    $skipped_message = array();
1587
+    $categories_skipped = count($duplicate_categories);
1588
+    $forums_skipped = count($duplicate_forums);
1589
+    if ($categories_skipped) {
1590 1590
     $skipped_message[] = format_plural(
1591
-      $categories_skipped,
1592
-      '1 container',
1593
-      '@count containers'
1591
+        $categories_skipped,
1592
+        '1 container',
1593
+        '@count containers'
1594 1594
     );
1595
-  }
1596
-  if ($forums_skipped) {
1595
+    }
1596
+    if ($forums_skipped) {
1597 1597
     $skipped_message[] = format_plural(
1598
-      $forums_skipped,
1599
-      '1 forum',
1600
-      '@count forums'
1598
+        $forums_skipped,
1599
+        '1 forum',
1600
+        '@count forums'
1601 1601
     );
1602
-  }
1603
-  if ($skipped_message) {
1602
+    }
1603
+    if ($skipped_message) {
1604 1604
     drupal_set_message(t('Skipped @forums that were already imported',
1605
-      array('@forums' => implode(' and ', $skipped_message))
1605
+        array('@forums' => implode(' and ', $skipped_message))
1606 1606
     ));
1607
-  }
1607
+    }
1608 1608
   
1609
-  // Create and run the batch
1610
-  $batch = array(
1609
+    // Create and run the batch
1610
+    $batch = array(
1611 1611
     'operations' => $operations,
1612 1612
     'finished' => 'boincimport_forums_finished',
1613 1613
     'title' => t('Importing forums'),
1614 1614
     'init_message' => t('Beginning forum import...'),
1615 1615
     'progress_message' => t('Processed @current out of @total forums.'),
1616 1616
     'error_message' => t('Forum import has encountered an error.'),
1617
-  );
1617
+    );
1618 1618
   
1619
-  batch_set($batch);
1619
+    batch_set($batch);
1620 1620
 }
1621 1621
 
1622 1622
 /**
@@ -1625,92 +1625,92 @@  discard block
 block discarded – undo
1625 1625
  */
1626 1626
 function boincimport_forum_categories_op($category, $forum_vid, $pre, $create_hidden, &$context) {
1627 1627
   
1628
-  // Set term parameters for categories
1629
-  $forum_id = 0;
1630
-  $parent_id = 0;
1631
-  $description = '';
1632
-  $weight = 0;
1633
-  $hidden = FALSE;
1628
+    // Set term parameters for categories
1629
+    $forum_id = 0;
1630
+    $parent_id = 0;
1631
+    $description = '';
1632
+    $weight = 0;
1633
+    $hidden = FALSE;
1634 1634
   
1635
-  $category_map = variable_get('boincimport_forum_category_map', array());
1635
+    $category_map = variable_get('boincimport_forum_category_map', array());
1636 1636
   
1637
-  if (!$category AND $create_hidden) {
1637
+    if (!$category AND $create_hidden) {
1638 1638
     // Create the special "hidden" container
1639 1639
     $category = new stdClass();
1640 1640
     $category->name = 'Hidden';
1641 1641
     $category->id = 0;
1642 1642
     $hidden = TRUE;
1643
-  }
1644
-  else {
1643
+    }
1644
+    else {
1645 1645
     // If this container is empty, put it into the hidden container
1646 1646
     db_set_active('boinc');
1647 1647
     $forums_contained = db_result(db_query('
1648 1648
       SELECT count(*) FROM %sforum
1649 1649
       WHERE parent_type = 0
1650 1650
       AND category = %d',
1651
-      $pre, $category->id));
1651
+        $pre, $category->id));
1652 1652
     db_set_active('default');
1653 1653
     if (!$forums_contained) {
1654
-      $parent_id = $category_map[0];
1655
-      $hidden = TRUE;
1654
+        $parent_id = $category_map[0];
1655
+        $hidden = TRUE;
1656
+    }
1656 1657
     }
1657
-  }
1658 1658
   
1659
-  $forum = array(
1659
+    $forum = array(
1660 1660
     'name' => $category->name,
1661 1661
     'vid' => $forum_vid,
1662 1662
     'description' => $description,
1663 1663
     'parent' => $parent_id,
1664 1664
     'weight' => $weight,
1665
-  );
1666
-  $forum['description'] = strip_tags($forum['description']);
1665
+    );
1666
+    $forum['description'] = strip_tags($forum['description']);
1667 1667
 
1668
-  taxonomy_save_term($forum);
1669
-  $success = isset($forum['tid']);
1668
+    taxonomy_save_term($forum);
1669
+    $success = isset($forum['tid']);
1670 1670
   
1671
-  // Serialize the forum containers
1672
-  $containers = variable_get('forum_containers', array());
1673
-  $containers[] = $forum['tid'];
1674
-  variable_set('forum_containers', $containers);
1671
+    // Serialize the forum containers
1672
+    $containers = variable_get('forum_containers', array());
1673
+    $containers[] = $forum['tid'];
1674
+    variable_set('forum_containers', $containers);
1675 1675
   
1676
-  // Note the taxonomy ID for mapping forums to categories
1677
-  $category_map[$category->id] = $forum['tid'];
1678
-  variable_set('boincimport_forum_category_map', $category_map);
1676
+    // Note the taxonomy ID for mapping forums to categories
1677
+    $category_map[$category->id] = $forum['tid'];
1678
+    variable_set('boincimport_forum_category_map', $category_map);
1679 1679
   
1680
-  boincimport_forum_set_permissions($forum, $hidden);
1680
+    boincimport_forum_set_permissions($forum, $hidden);
1681 1681
   
1682
-  $message = '';
1683
-  if ($success) {
1682
+    $message = '';
1683
+    if ($success) {
1684 1684
     // Store some result for post-processing in the finished callback.
1685 1685
     if (!$category AND $create_hidden) {
1686
-      $message = "Created special hidden container";
1686
+        $message = "Created special hidden container";
1687 1687
     }
1688 1688
     else {
1689
-      $context['results']['categories']['success'][] = $category->id;
1690
-      $message = "Successfully imported container {$category->id}";
1689
+        $context['results']['categories']['success'][] = $category->id;
1690
+        $message = "Successfully imported container {$category->id}";
1691 1691
     }
1692
-  }
1693
-  else {
1692
+    }
1693
+    else {
1694 1694
     $context['results']['categories']['failure'][] = $category->id;
1695 1695
     $message = "Failed to import container {$category->id}!";
1696 1696
     watchdog('boincimport',
1697
-      'Failed to import container @id!',
1698
-      array('@id' => $category->id), WATCHDOG_WARNING
1697
+        'Failed to import container @id!',
1698
+        array('@id' => $category->id), WATCHDOG_WARNING
1699 1699
     ); 
1700
-  }
1700
+    }
1701 1701
   
1702
-  // Update our progress information.
1703
-  $context['sandbox']['progress']++;
1704
-  $context['sandbox']['current_category'] = $category->id;
1705
-  $context['message'] = $message;
1702
+    // Update our progress information.
1703
+    $context['sandbox']['progress']++;
1704
+    $context['sandbox']['current_category'] = $category->id;
1705
+    $context['message'] = $message;
1706 1706
 
1707
-  // Update the progress for the batch engine
1708
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1707
+    // Update the progress for the batch engine
1708
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1709 1709
     $context['finished'] = 1;
1710
-  }
1711
-  else {
1710
+    }
1711
+    else {
1712 1712
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1713
-  }
1713
+    }
1714 1714
 }
1715 1715
 
1716 1716
 /**
@@ -1719,40 +1719,40 @@  discard block
 block discarded – undo
1719 1719
  */
1720 1720
 function boincimport_forums_op($boincforum, $forum_vid, $pre = '', &$context) {
1721 1721
   
1722
-  $hidden_forum = FALSE;
1723
-  $open_forum = FALSE;
1724
-  $category_map = variable_get('boincimport_forum_category_map', array());
1725
-  
1726
-  // Set term parameters for forums
1727
-  $forum_id = $boincforum->id;
1728
-  $parent_id = isset($category_map[$boincforum->category]) ? $category_map[$boincforum->category] : $category_map[0];
1729
-  $name = $boincforum->title;
1730
-  $description = $boincforum->description;
1731
-  $weight = $boincforum->orderID;
1732
-  if ($parent_id == $category_map[0]) {
1722
+    $hidden_forum = FALSE;
1723
+    $open_forum = FALSE;
1724
+    $category_map = variable_get('boincimport_forum_category_map', array());
1725
+  
1726
+    // Set term parameters for forums
1727
+    $forum_id = $boincforum->id;
1728
+    $parent_id = isset($category_map[$boincforum->category]) ? $category_map[$boincforum->category] : $category_map[0];
1729
+    $name = $boincforum->title;
1730
+    $description = $boincforum->description;
1731
+    $weight = $boincforum->orderID;
1732
+    if ($parent_id == $category_map[0]) {
1733 1733
     // If this forum is hidden, flag for appropriate access controls
1734 1734
     $hidden_forum = TRUE;
1735
-  }
1736
-  if ($name == 'Getting Started') {
1735
+    }
1736
+    if ($name == 'Getting Started') {
1737 1737
     // Must allow users to post in this forum even if they have no credit!
1738 1738
     $open_forum = TRUE;
1739
-  }
1739
+    }
1740 1740
   
1741
-  // Try to detect a BOINC news forum and flag it so that news can be
1742
-  // imported into a Drupal news content type later
1743
-  if ($name == 'News') {
1741
+    // Try to detect a BOINC news forum and flag it so that news can be
1742
+    // imported into a Drupal news content type later
1743
+    if ($name == 'News') {
1744 1744
     // Save the ID of the News forum for later import
1745 1745
     variable_set('boincimport_news_forum_id', $forum_id);
1746 1746
     $success = TRUE;
1747
-  }
1748
-  else {
1747
+    }
1748
+    else {
1749 1749
     // Save all other forums as taxonomy terms
1750 1750
     $forum = array(
1751
-      'name' => $name,
1752
-      'vid' => $forum_vid,
1753
-      'description' => $description,
1754
-      'parent' => $parent_id,
1755
-      'weight' => $weight,
1751
+        'name' => $name,
1752
+        'vid' => $forum_vid,
1753
+        'description' => $description,
1754
+        'parent' => $parent_id,
1755
+        'weight' => $weight,
1756 1756
     );
1757 1757
     $forum['description'] = strip_tags($forum['description']);
1758 1758
 
@@ -1764,31 +1764,31 @@  discard block
 block discarded – undo
1764 1764
     
1765 1765
     // Set access controls
1766 1766
     boincimport_forum_set_permissions($forum, $hidden_forum, $open_forum);
1767
-  }
1767
+    }
1768 1768
   
1769
-  $message = '';
1770
-  if ($success) {
1769
+    $message = '';
1770
+    if ($success) {
1771 1771
     // Store some result for post-processing in the finished callback.
1772 1772
     $context['results']['forums']['success'][] = $forum_id;
1773 1773
     $message = "Successfully imported forum {$forum_id}";
1774
-  }
1775
-  else {
1774
+    }
1775
+    else {
1776 1776
     $context['results']['forums']['failure'][] = $forum_id;
1777 1777
     $message = "Failed to import forum {$forum_id}!";
1778
-  }
1778
+    }
1779 1779
   
1780
-  // Update our progress information.
1781
-  $context['sandbox']['progress']++;
1782
-  $context['sandbox']['current_forum'] = $forum_id;
1783
-  $context['message'] = $message;
1780
+    // Update our progress information.
1781
+    $context['sandbox']['progress']++;
1782
+    $context['sandbox']['current_forum'] = $forum_id;
1783
+    $context['message'] = $message;
1784 1784
 
1785
-  // Update the progress for the batch engine
1786
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1785
+    // Update the progress for the batch engine
1786
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1787 1787
     $context['finished'] = 1;
1788
-  }
1789
-  else {
1788
+    }
1789
+    else {
1790 1790
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1791
-  }
1791
+    }
1792 1792
 }
1793 1793
 
1794 1794
 /**
@@ -1796,46 +1796,46 @@  discard block
 block discarded – undo
1796 1796
  */
1797 1797
 function boincimport_forum_set_permissions($forum, $hidden = FALSE, $open = FALSE) {
1798 1798
   
1799
-  // Set access controls
1800
-  $forum_perms = array();
1801
-  $role_map = array_flip(user_roles());
1802
-  $forum_perms[$role_map['anonymous user']] = array(
1799
+    // Set access controls
1800
+    $forum_perms = array();
1801
+    $role_map = array_flip(user_roles());
1802
+    $forum_perms[$role_map['anonymous user']] = array(
1803 1803
     'view' => (int) !$hidden,
1804 1804
     'update' => 0,
1805 1805
     'delete' => 0,
1806 1806
     'create' => 0,
1807
-  );
1808
-  $forum_perms[$role_map['authenticated user']] = array(
1807
+    );
1808
+    $forum_perms[$role_map['authenticated user']] = array(
1809 1809
     'view' => (int) !$hidden,
1810 1810
     'update' => 0,
1811 1811
     'delete' => 0,
1812 1812
     'create' => 0,
1813
-  );
1814
-  $forum_perms[$role_map['community member']] = array(
1813
+    );
1814
+    $forum_perms[$role_map['community member']] = array(
1815 1815
     'view' => (int) !$hidden,
1816 1816
     'update' => 0,
1817 1817
     'delete' => 0,
1818 1818
     'create' => (int) $open,
1819
-  );
1820
-  $forum_perms[$role_map['verified contributor']] = array(
1819
+    );
1820
+    $forum_perms[$role_map['verified contributor']] = array(
1821 1821
     'view' => (int) !$hidden,
1822 1822
     'update' => 0,
1823 1823
     'delete' => 0,
1824 1824
     'create' => (int) !$hidden,
1825
-  );
1826
-  $forum_perms[$role_map['moderator']] = array(
1825
+    );
1826
+    $forum_perms[$role_map['moderator']] = array(
1827 1827
     'view' => (int) !$hidden,
1828 1828
     'update' => (int) !$hidden,
1829 1829
     'delete' => 0,
1830 1830
     'create' => (int) !$hidden,
1831
-  );
1832
-  $forum_perms[$role_map['administrator']] = array(
1831
+    );
1832
+    $forum_perms[$role_map['administrator']] = array(
1833 1833
     'view' => 1,
1834 1834
     'update' => 1,
1835 1835
     'delete' => 1,
1836 1836
     'create' => 1,
1837
-  );
1838
-  foreach ($forum_perms as $role => $perm) {
1837
+    );
1838
+    foreach ($forum_perms as $role => $perm) {
1839 1839
     db_query('
1840 1840
       INSERT INTO {forum_access}
1841 1841
       SET  tid = %d, rid = %d,
@@ -1844,61 +1844,61 @@  discard block
 block discarded – undo
1844 1844
       ON DUPLICATE KEY UPDATE
1845 1845
         grant_view = %d, grant_update = %d,
1846 1846
         grant_delete = %d, grant_create = %d',
1847
-      $forum['tid'], $role,
1848
-      $perm['view'], $perm['update'],
1849
-      $perm['delete'], $perm['create'],
1850
-      $perm['view'], $perm['update'],
1851
-      $perm['delete'], $perm['create']);
1852
-  }
1847
+        $forum['tid'], $role,
1848
+        $perm['view'], $perm['update'],
1849
+        $perm['delete'], $perm['create'],
1850
+        $perm['view'], $perm['update'],
1851
+        $perm['delete'], $perm['create']);
1852
+    }
1853 1853
 }
1854 1854
 
1855 1855
 /**
1856 1856
  * Batch 'finished' callback
1857 1857
  */
1858 1858
 function boincimport_forums_finished($success, $results, $operations) {
1859
-  if ($success) {
1859
+    if ($success) {
1860 1860
     // Let's count our successes
1861 1861
     $categories_imported = count($results['categories']['success']);
1862 1862
     $forums_imported = count($results['forums']['success']);
1863 1863
     
1864 1864
     $success_message = array();
1865 1865
     if ($categories_imported) {
1866
-      $success_message[] = format_plural(
1866
+        $success_message[] = format_plural(
1867 1867
         $categories_imported,
1868 1868
         '1 container',
1869 1869
         '@count containers'
1870
-      );
1870
+        );
1871 1871
     }
1872 1872
     if ($forums_imported) {
1873
-      $success_message[] = format_plural(
1873
+        $success_message[] = format_plural(
1874 1874
         $forums_imported,
1875 1875
         '1 forum',
1876 1876
         '@count forums'
1877
-      );
1877
+        );
1878 1878
     }
1879 1879
     $message = t(
1880
-      'Successfully imported @forums',
1881
-      array('@forums' => implode(' and ', $success_message))
1880
+        'Successfully imported @forums',
1881
+        array('@forums' => implode(' and ', $success_message))
1882 1882
     );
1883 1883
     watchdog('boincimport',
1884
-      'Successfully imported @forums',
1885
-      array('@forums' => implode(' and ', $success_message)), WATCHDOG_INFO
1884
+        'Successfully imported @forums',
1885
+        array('@forums' => implode(' and ', $success_message)), WATCHDOG_INFO
1886 1886
     ); 
1887 1887
     // Set the forum import successful flag in the variable table
1888 1888
     variable_set('boincimport_import_forum_successful', '1');
1889 1889
     $_SESSION['boincimport_stage_selected'] = 'topics';
1890
-  }
1891
-  else {
1890
+    }
1891
+    else {
1892 1892
     // An error occurred.
1893 1893
     // $operations contains the operations that remained unprocessed.
1894 1894
     $error_operation = reset($operations);
1895 1895
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1896
-  }
1897
-  drupal_set_message($message);
1896
+    }
1897
+    drupal_set_message($message);
1898 1898
   
1899
-  // Release the lock on the import process
1900
-  variable_del('boincimport_process_locked');
1901
-  drupal_goto('admin/boinc/import/process');
1899
+    // Release the lock on the import process
1900
+    variable_del('boincimport_process_locked');
1901
+    drupal_goto('admin/boinc/import/process');
1902 1902
 }
1903 1903
 
1904 1904
 
@@ -1910,82 +1910,82 @@  discard block
 block discarded – undo
1910 1910
  */
1911 1911
 function boincimport_forum_topics() {
1912 1912
   
1913
-  // Check whether topics have been successfully imported already
1914
-  if (variable_get('boincimport_import_topic_successful', 0)) {
1913
+    // Check whether topics have been successfully imported already
1914
+    if (variable_get('boincimport_import_topic_successful', 0)) {
1915 1915
     drupal_set_message(t('Topic import has already run successfully'), 'warning');
1916 1916
     watchdog(
1917
-      'boincimport', 'Topic import has already run successfully',
1918
-      array(), WATCHDOG_WARNING
1917
+        'boincimport', 'Topic import has already run successfully',
1918
+        array(), WATCHDOG_WARNING
1919 1919
     );
1920 1920
     // Release the lock on the import process
1921 1921
     variable_del('boincimport_process_locked');
1922 1922
     return;
1923
-  }
1923
+    }
1924 1924
 
1925
-  if (!variable_get('boincimport_import_topic_started', 0)) {
1925
+    if (!variable_get('boincimport_import_topic_started', 0)) {
1926 1926
     // Could prepare database tables, if new fields are necessary, etc.
1927 1927
     variable_set('boincimport_import_topic_started', 1);
1928
-  }
1928
+    }
1929 1929
   
1930
-  $pre = variable_get('boincimport_table_prefix', '');
1930
+    $pre = variable_get('boincimport_table_prefix', '');
1931 1931
 
1932
-  // Get the count of non-team topics to import
1933
-  db_set_active('boinc');
1934
-  $topic_count = db_result(db_query('
1932
+    // Get the count of non-team topics to import
1933
+    db_set_active('boinc');
1934
+    $topic_count = db_result(db_query('
1935 1935
     SELECT COUNT(DISTINCT t.id)
1936 1936
     FROM %sthread t
1937 1937
     JOIN %sforum f ON f.id = t.forum
1938 1938
     JOIN %spost p ON p.thread = t.id
1939 1939
     WHERE f.parent_type = 0',
1940 1940
     $pre, $pre, $pre
1941
-  ));
1942
-  db_set_active('default');
1941
+    ));
1942
+    db_set_active('default');
1943 1943
 
1944
-  if (!$topic_count) {
1944
+    if (!$topic_count) {
1945 1945
     drupal_set_message(
1946
-      t('There were no topics found: Aborting script'), 'warning'
1946
+        t('There were no topics found: Aborting script'), 'warning'
1947 1947
     );
1948 1948
     watchdog('boincimport',
1949
-      'There were no topics found: Aborting script', array(), WATCHDOG_WARNING
1949
+        'There were no topics found: Aborting script', array(), WATCHDOG_WARNING
1950 1950
     );
1951 1951
     // Release the lock on the import process
1952 1952
     variable_del('boincimport_process_locked');
1953 1953
     return t('There were no topics found: Aborting script.');
1954
-  }
1954
+    }
1955 1955
 
1956
-  watchdog('boincimport',
1956
+    watchdog('boincimport',
1957 1957
     'Found %count topics: Beginning Import',
1958 1958
     array('%count' => $topic_count), WATCHDOG_INFO
1959
-  );
1959
+    );
1960 1960
   
1961
-  $operations = array();
1962
-  $batch_size = 100;
1961
+    $operations = array();
1962
+    $batch_size = 100;
1963 1963
   
1964
-  // Create batches to process
1965
-  for ($offset = 0; $offset < $topic_count; $offset+=$batch_size) {
1964
+    // Create batches to process
1965
+    for ($offset = 0; $offset < $topic_count; $offset+=$batch_size) {
1966 1966
     $topics_per_batch = $batch_size;
1967 1967
     if ($offset + $batch_size > $topic_count) {
1968
-      $topics_per_batch = $topic_count - $offset;
1968
+        $topics_per_batch = $topic_count - $offset;
1969 1969
     }
1970 1970
     $operations[] = array(
1971
-      'boincimport_topics_op', array(
1971
+        'boincimport_topics_op', array(
1972 1972
         $offset, $topics_per_batch, $pre
1973
-      )
1973
+        )
1974 1974
     );
1975
-  }
1975
+    }
1976 1976
   
1977
-  $batch = array(
1977
+    $batch = array(
1978 1978
     'operations' => $operations,
1979 1979
     'finished' => 'boincimport_topics_finished',
1980 1980
     'title' => t('Importing topics'),
1981 1981
     'init_message' => t('Beginning topic import...'),
1982 1982
     'progress_message' => t('Processed @current out of @total batches (@size topics per batch).', array(
1983
-      '@size' => $batch_size,
1983
+        '@size' => $batch_size,
1984 1984
     )),
1985 1985
     'error_message' => t('Topic import has encountered an error.'),
1986
-  );
1986
+    );
1987 1987
   
1988
-  batch_set($batch);
1988
+    batch_set($batch);
1989 1989
 }
1990 1990
 
1991 1991
 /**
@@ -1993,18 +1993,18 @@  discard block
 block discarded – undo
1993 1993
  * Create a Drupal node from the given BOINC topic object
1994 1994
  */
1995 1995
 function boincimport_topics_op($offset, $batch_size, $pre = '', &$context) {
1996
-  // Initialize the batch, if needed
1997
-  if (!isset($context['sandbox']['progress'])) {
1996
+    // Initialize the batch, if needed
1997
+    if (!isset($context['sandbox']['progress'])) {
1998 1998
     $context['sandbox']['progress'] = 0;
1999 1999
     $context['sandbox']['max'] = $batch_size;
2000
-  }
2000
+    }
2001 2001
   
2002
-  $input_format = variable_get('boincimport_input_format', 0);
2003
-  $news_forum_id = variable_get('boincimport_news_forum_id', 0);
2002
+    $input_format = variable_get('boincimport_input_format', 0);
2003
+    $news_forum_id = variable_get('boincimport_news_forum_id', 0);
2004 2004
   
2005
-  // Get the topic to import
2006
-  db_set_active('boinc');
2007
-  $topics = db_query('
2005
+    // Get the topic to import
2006
+    db_set_active('boinc');
2007
+    $topics = db_query('
2008 2008
     SELECT DISTINCT t.id, t.title, t.owner, t.forum, t.locked, t.hidden,
2009 2009
         t.sticky, t.timestamp, t.create_time
2010 2010
     FROM %sthread t
@@ -2014,10 +2014,10 @@  discard block
 block discarded – undo
2014 2014
     ORDER BY t.id ASC
2015 2015
     LIMIT %d,%d',
2016 2016
     $pre, $pre, $pre, $offset, $batch_size
2017
-  );
2018
-  db_set_active('default');
2017
+    );
2018
+    db_set_active('default');
2019 2019
   
2020
-  while ($topic = db_fetch_object($topics)) {
2020
+    while ($topic = db_fetch_object($topics)) {
2021 2021
     
2022 2022
     $error_detail = '';
2023 2023
     
@@ -2030,52 +2030,52 @@  discard block
 block discarded – undo
2030 2030
       WHERE thread = %d
2031 2031
       ORDER BY timestamp ASC
2032 2032
       LIMIT 1',
2033
-      $pre, $topic->id
2033
+        $pre, $topic->id
2034 2034
     ));
2035 2035
     db_set_active('default');
2036 2036
       
2037 2037
     $duplicate = db_result(db_query('
2038 2038
       SELECT COUNT(*) FROM {boincimport_temp_topic}
2039 2039
       WHERE topic_id = %d',
2040
-      $topic->id
2040
+        $topic->id
2041 2041
     ));
2042 2042
     
2043 2043
     if ($duplicate OR !$post) {
2044
-      $success = FALSE;
2044
+        $success = FALSE;
2045 2045
     }
2046 2046
     
2047 2047
     else {
2048
-      // Get the user and term IDs along with other data to define the topic
2049
-      $uid = boincuser_lookup_uid($topic->owner);
2050
-      $tid = db_result(db_query('
2048
+        // Get the user and term IDs along with other data to define the topic
2049
+        $uid = boincuser_lookup_uid($topic->owner);
2050
+        $tid = db_result(db_query('
2051 2051
         SELECT tid FROM {boincimport_temp_forum}
2052 2052
         WHERE forum_id = %d',
2053 2053
         $topic->forum
2054
-      ));
2055
-      if (!$topic->owner) {
2054
+        ));
2055
+        if (!$topic->owner) {
2056 2056
         $uid = 0;
2057
-      }
2057
+        }
2058 2058
       
2059
-      $node_type = 'forum';
2060
-      $promote = 0;
2061
-      $comment = ($topic->locked) ? 1 : 2;
2059
+        $node_type = 'forum';
2060
+        $promote = 0;
2061
+        $comment = ($topic->locked) ? 1 : 2;
2062 2062
       
2063
-      $post->content = _boincimport_strip_bbcode($post->content);
2064
-      $post->content = _boincimport_text_sanitize($post->content);
2065
-      $teaser = node_teaser($post->content);
2063
+        $post->content = _boincimport_strip_bbcode($post->content);
2064
+        $post->content = _boincimport_text_sanitize($post->content);
2065
+        $teaser = node_teaser($post->content);
2066 2066
       
2067
-      if ($topic->timestamp < $topic->create_time) {
2067
+        if ($topic->timestamp < $topic->create_time) {
2068 2068
         $topic->timestamp = $topic->create_time;
2069
-      }
2069
+        }
2070 2070
       
2071
-      // If dealing with a News topic, be sure it is imported as such
2072
-      if ($news_forum_id AND $topic->forum == $news_forum_id) {
2071
+        // If dealing with a News topic, be sure it is imported as such
2072
+        if ($news_forum_id AND $topic->forum == $news_forum_id) {
2073 2073
         $node_type = 'news';
2074 2074
         $promote = 1;
2075
-      }
2075
+        }
2076 2076
 
2077
-      // Construct the thread as a forum topic node
2078
-      $node = array(
2077
+        // Construct the thread as a forum topic node
2078
+        $node = array(
2079 2079
         'type' => $node_type,
2080 2080
         'title' => $topic->title,
2081 2081
         'uid' => $uid,
@@ -2089,61 +2089,61 @@  discard block
 block discarded – undo
2089 2089
         'sticky' => $topic->sticky,
2090 2090
         'format' => $input_format,
2091 2091
         'teaser' => $teaser,
2092
-      );
2093
-      $node['tid'] = $tid;
2092
+        );
2093
+        $node['tid'] = $tid;
2094 2094
       
2095
-      // Save the topic node
2096
-      $node = (object) $node; // node_save requires an object form
2097
-      node_save($node);
2098
-      taxonomy_node_save($node, array($tid));
2099
-      $success = ($node->nid) ? TRUE : FALSE;
2100
-      if ($success) {
2095
+        // Save the topic node
2096
+        $node = (object) $node; // node_save requires an object form
2097
+        node_save($node);
2098
+        taxonomy_node_save($node, array($tid));
2099
+        $success = ($node->nid) ? TRUE : FALSE;
2100
+        if ($success) {
2101 2101
         $success = db_query('
2102 2102
           INSERT INTO {boincimport_temp_topic} (topic_id, post_id, nid)
2103 2103
           VALUES (%d, %d, %d)', $topic->id, $post->id, $node->nid
2104 2104
         );
2105 2105
         if ($success) {
2106
-          // Hack to keep the topics in correct order
2107
-          $success = db_query('UPDATE {node_comment_statistics} SET last_comment_timestamp = %d WHERE nid = %d', $node->created, $node->nid);
2108
-          if (!$success) {
2106
+            // Hack to keep the topics in correct order
2107
+            $success = db_query('UPDATE {node_comment_statistics} SET last_comment_timestamp = %d WHERE nid = %d', $node->created, $node->nid);
2108
+            if (!$success) {
2109 2109
             $error_detail = 'topic imported, but failed to set last comment timestamp';
2110
-          }
2110
+            }
2111 2111
         }
2112 2112
         else {
2113
-          $error_detail = 'topic node saved, but failed to link in boincimport_temp_topic table';
2113
+            $error_detail = 'topic node saved, but failed to link in boincimport_temp_topic table';
2114 2114
         }
2115
-      }
2116
-      else {
2115
+        }
2116
+        else {
2117 2117
         $error_detail = 'failed to save topic node to database';
2118
-      }
2118
+        }
2119 2119
     }
2120 2120
     
2121 2121
     // See if the import worked
2122 2122
     $message = '';
2123 2123
     if ($success) {
2124
-      // Store some result for post-processing in the finished callback.
2125
-      $context['results']['success'][] = $topic->id;
2126
-      $message = "Successfully imported topic {$topic->id}";
2124
+        // Store some result for post-processing in the finished callback.
2125
+        $context['results']['success'][] = $topic->id;
2126
+        $message = "Successfully imported topic {$topic->id}";
2127 2127
     }
2128 2128
     elseif ($duplicate) {
2129
-      $context['results']['duplicate'][] = $topic->id;
2130
-      $message = "Topic {$topic->id} was already imported";
2129
+        $context['results']['duplicate'][] = $topic->id;
2130
+        $message = "Topic {$topic->id} was already imported";
2131 2131
     }
2132 2132
     elseif (!$post) {
2133
-      $context['results']['empty'][] = $topic->id;
2134
-      $message = "Skipping topic {$topic->id} as empty";
2133
+        $context['results']['empty'][] = $topic->id;
2134
+        $message = "Skipping topic {$topic->id} as empty";
2135 2135
     }
2136 2136
     else {
2137
-      $context['results']['failure'][] = $topic->id;
2138
-      $message = "Failed to import topic {$topic->id}!";
2139
-      watchdog('boincimport',
2137
+        $context['results']['failure'][] = $topic->id;
2138
+        $message = "Failed to import topic {$topic->id}!";
2139
+        watchdog('boincimport',
2140 2140
         'Failed to import topic @id! (@error)',
2141 2141
         array(
2142
-          '@id' => $topic->id,
2143
-          '@error' => $error_detail,
2142
+            '@id' => $topic->id,
2143
+            '@error' => $error_detail,
2144 2144
         ),
2145 2145
         WATCHDOG_WARNING
2146
-      ); 
2146
+        ); 
2147 2147
     }
2148 2148
     
2149 2149
     // Update our progress information.
@@ -2153,54 +2153,54 @@  discard block
 block discarded – undo
2153 2153
 
2154 2154
     // Update the progress for the batch engine
2155 2155
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2156
-      $context['finished'] = 1;
2156
+        $context['finished'] = 1;
2157 2157
     }
2158 2158
     else {
2159
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2159
+        $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2160
+    }
2160 2161
     }
2161
-  }
2162 2162
 }
2163 2163
 
2164 2164
 /**
2165 2165
  * Batch 'finished' callback
2166 2166
  */
2167 2167
 function boincimport_topics_finished($success, $results, $operations) {
2168
-  if ($success) {
2168
+    if ($success) {
2169 2169
     // Let's count our successes
2170 2170
     $total_imported = count($results['success']);
2171 2171
     $duplicates = count($results['duplicate']);
2172 2172
     $empty_topics = count($results['empty']);
2173 2173
     $message = t(
2174
-      'Successfully imported @count topics (skipped @duplicates already imported, @abandoned empty topics)',
2175
-      array(
2174
+        'Successfully imported @count topics (skipped @duplicates already imported, @abandoned empty topics)',
2175
+        array(
2176 2176
         '@count' => $total_imported,
2177 2177
         '@duplicates' => $duplicates,
2178 2178
         '@abandoned' => $empty_topics,
2179
-      )
2179
+        )
2180 2180
     );
2181 2181
     watchdog('boincimport',
2182
-      'Successfully imported @count topics (skipped @duplicates already imported, @abandoned empty topics).',
2183
-      array(
2182
+        'Successfully imported @count topics (skipped @duplicates already imported, @abandoned empty topics).',
2183
+        array(
2184 2184
         '@count' => $total_imported,
2185 2185
         '@duplicates' => $duplicates,
2186 2186
         '@abandoned' => $empty_topics,
2187
-      ), WATCHDOG_INFO
2187
+        ), WATCHDOG_INFO
2188 2188
     ); 
2189 2189
     // Set the topic import successful flag in the variable table
2190 2190
     variable_set('boincimport_import_topic_successful', '1');
2191 2191
     $_SESSION['boincimport_stage_selected'] = 'posts';
2192
-  }
2193
-  else {
2192
+    }
2193
+    else {
2194 2194
     // An error occurred.
2195 2195
     // $operations contains the operations that remained unprocessed.
2196 2196
     $error_operation = reset($operations);
2197 2197
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2198
-  }
2199
-  drupal_set_message($message);
2198
+    }
2199
+    drupal_set_message($message);
2200 2200
   
2201
-  // Release the lock on the import process
2202
-  variable_del('boincimport_process_locked');
2203
-  drupal_goto('admin/boinc/import/process');
2201
+    // Release the lock on the import process
2202
+    variable_del('boincimport_process_locked');
2203
+    drupal_goto('admin/boinc/import/process');
2204 2204
 }
2205 2205
 
2206 2206
 
@@ -2213,91 +2213,91 @@  discard block
 block discarded – undo
2213 2213
  */
2214 2214
 function boincimport_forum_posts() {
2215 2215
   
2216
-  // Check whether forum posts have been successfully imported already
2217
-  if (variable_get('boincimport_import_post_successful', 0)) {
2216
+    // Check whether forum posts have been successfully imported already
2217
+    if (variable_get('boincimport_import_post_successful', 0)) {
2218 2218
     drupal_set_message(t('Forum post import has already run successfully'), 'warning');
2219 2219
     watchdog(
2220
-      'boincimport', 'Forum post import has already run successfully',
2221
-      array(), WATCHDOG_WARNING
2220
+        'boincimport', 'Forum post import has already run successfully',
2221
+        array(), WATCHDOG_WARNING
2222 2222
     );
2223 2223
     // Release the lock on the import process
2224 2224
     variable_del('boincimport_process_locked');
2225 2225
     return;
2226
-  }
2226
+    }
2227 2227
 
2228
-  if (!variable_get('boincimport_import_post_started', 0)) {
2228
+    if (!variable_get('boincimport_import_post_started', 0)) {
2229 2229
     // Could prepare database tables, if new fields are necessary, etc.
2230 2230
     variable_set('boincimport_import_post_started', 1);
2231
-  }
2231
+    }
2232 2232
   
2233
-  $pre = variable_get('boincimport_table_prefix', '');
2233
+    $pre = variable_get('boincimport_table_prefix', '');
2234 2234
 
2235
-  // Get the BOINC threads and get a count of posts to import
2236
-  db_set_active('boinc');
2237
-  $topic_count = db_result(db_query("
2235
+    // Get the BOINC threads and get a count of posts to import
2236
+    db_set_active('boinc');
2237
+    $topic_count = db_result(db_query("
2238 2238
     SELECT COUNT(DISTINCT t.id) FROM %sthread t
2239 2239
     JOIN %sforum f ON f.id = t.forum
2240 2240
     JOIN %spost p ON p.thread = t.id
2241 2241
     WHERE f.parent_type = 0", $pre, $pre, $pre
2242
-  ));
2243
-  $total_post_count = db_result(db_query("
2242
+    ));
2243
+    $total_post_count = db_result(db_query("
2244 2244
     SELECT COUNT(p.id) FROM %spost p
2245 2245
     JOIN %sthread t ON t.id = p.thread
2246 2246
     JOIN %sforum f ON f.id = t.forum
2247 2247
     WHERE f.parent_type = 0", $pre, $pre, $pre
2248
-  ));
2249
-  $post_count = $total_post_count - $topic_count;
2250
-  db_set_active('default');
2248
+    ));
2249
+    $post_count = $total_post_count - $topic_count;
2250
+    db_set_active('default');
2251 2251
 
2252
-  if ($post_count <= 0) {
2252
+    if ($post_count <= 0) {
2253 2253
     drupal_set_message(
2254
-      t('There were no posts found: Aborting script'), 'warning'
2254
+        t('There were no posts found: Aborting script'), 'warning'
2255 2255
     );
2256 2256
     watchdog('boincimport',
2257
-      'There were no posts found: Aborting script', array(), WATCHDOG_WARNING
2257
+        'There were no posts found: Aborting script', array(), WATCHDOG_WARNING
2258 2258
     );
2259 2259
     // Release the lock on the import process
2260 2260
     variable_del('boincimport_process_locked');
2261 2261
     return t('There were no posts found: Aborting script.');
2262
-  }
2262
+    }
2263 2263
 
2264
-  watchdog('boincimport',
2264
+    watchdog('boincimport',
2265 2265
     'Found %count posts: Beginning Import',
2266 2266
     array('%count' => $post_count), WATCHDOG_INFO
2267
-  );
2267
+    );
2268 2268
   
2269
-  $operations = array();
2270
-  $batch_size = 100;
2269
+    $operations = array();
2270
+    $batch_size = 100;
2271 2271
   
2272
-  // Create batches to process
2273
-  for ($offset = 0; $offset < $topic_count; $offset+=$batch_size) {
2272
+    // Create batches to process
2273
+    for ($offset = 0; $offset < $topic_count; $offset+=$batch_size) {
2274 2274
     $topics_per_batch = $batch_size;
2275 2275
     if ($offset + $batch_size > $topic_count) {
2276
-      $topics_per_batch = $topic_count - $offset;
2276
+        $topics_per_batch = $topic_count - $offset;
2277 2277
     }
2278 2278
     $operations[] = array(
2279
-      'boincimport_posts_op', array(
2279
+        'boincimport_posts_op', array(
2280 2280
         $offset, $topics_per_batch
2281
-      )
2281
+        )
2282 2282
     );
2283
-  }
2283
+    }
2284 2284
   
2285
-  $batch = array(
2285
+    $batch = array(
2286 2286
     'operations' => $operations,
2287 2287
     'finished' => 'boincimport_posts_finished',
2288 2288
     'title' => t('Importing posts'),
2289 2289
     'init_message' => t('Beginning post import...'),
2290 2290
     'progress_message' => t(
2291
-      'Processed posts in @current out of @total batches (@size topics per batch).',
2292
-      array(
2291
+        'Processed posts in @current out of @total batches (@size topics per batch).',
2292
+        array(
2293 2293
         '@size' => $batch_size,
2294 2294
         // @current and @total are managed by the batch API
2295
-      )
2295
+        )
2296 2296
     ),
2297 2297
     'error_message' => t('Post import has encountered an error.'),
2298
-  );
2298
+    );
2299 2299
   
2300
-  batch_set($batch);
2300
+    batch_set($batch);
2301 2301
 }
2302 2302
 
2303 2303
 /**
@@ -2305,17 +2305,17 @@  discard block
 block discarded – undo
2305 2305
  * Create a Drupal comment from the given BOINC post object
2306 2306
  */
2307 2307
 function boincimport_posts_op($offset, $batch_size, &$context) {
2308
-  // Initialize the batch, if needed
2309
-  if (!isset($context['sandbox']['progress'])) {
2308
+    // Initialize the batch, if needed
2309
+    if (!isset($context['sandbox']['progress'])) {
2310 2310
     $context['sandbox']['progress'] = 0;
2311 2311
     $context['sandbox']['max'] = $batch_size;
2312
-  }
2312
+    }
2313 2313
   
2314
-  $input_format = variable_get('boincimport_input_format', 0);
2314
+    $input_format = variable_get('boincimport_input_format', 0);
2315 2315
   
2316
- // Get the topics with posts to import
2317
-  db_set_active('boinc');
2318
-  $boinc_topic_ids = db_query('
2316
+    // Get the topics with posts to import
2317
+    db_set_active('boinc');
2318
+    $boinc_topic_ids = db_query('
2319 2319
     SELECT DISTINCT t.id FROM %sthread t
2320 2320
     JOIN %sforum f ON f.id = t.forum
2321 2321
     JOIN %spost p ON p.thread = t.id
@@ -2323,10 +2323,10 @@  discard block
 block discarded – undo
2323 2323
     ORDER BY t.id
2324 2324
     LIMIT %d,%d', 
2325 2325
     $pre, $pre, $pre, $offset, $batch_size
2326
-  );
2327
-  db_set_active('default');
2326
+    );
2327
+    db_set_active('default');
2328 2328
   
2329
-  while ($boinc_topic = db_fetch_object($boinc_topic_ids)) {
2329
+    while ($boinc_topic = db_fetch_object($boinc_topic_ids)) {
2330 2330
     // Get the posts in this topic
2331 2331
     db_set_active('boinc');
2332 2332
     $boinc_posts = db_query('
@@ -2344,29 +2344,29 @@  discard block
 block discarded – undo
2344 2344
 
2345 2345
     while ($post = db_fetch_object($boinc_posts)) {
2346 2346
       
2347
-      // Skip the first post as it has already been imported as a topic
2348
-      if ($first_post) {
2347
+        // Skip the first post as it has already been imported as a topic
2348
+        if ($first_post) {
2349 2349
         $first_post = false;
2350 2350
         continue;
2351
-      }
2351
+        }
2352 2352
       
2353
-      // Making it this far confirms that there are posts to import
2354
-      $topic_has_responses = TRUE;
2353
+        // Making it this far confirms that there are posts to import
2354
+        $topic_has_responses = TRUE;
2355 2355
       
2356
-      $is_duplicate = db_result(db_query('
2356
+        $is_duplicate = db_result(db_query('
2357 2357
         SELECT COUNT(*) FROM {boincimport_temp_post}
2358 2358
         WHERE post_id = %d',
2359 2359
         $post->id
2360
-      ));
2361
-      if ($is_duplicate) {
2360
+        ));
2361
+        if ($is_duplicate) {
2362 2362
         // This post has already been imported
2363 2363
         $context['results']['posts']['duplicate'][] = $post->id;
2364 2364
         $duplicate_posts++;
2365 2365
         continue;
2366
-      }
2366
+        }
2367 2367
       
2368
-      // Make sure the post is valid
2369
-      if ($post->content) {
2368
+        // Make sure the post is valid
2369
+        if ($post->content) {
2370 2370
         
2371 2371
         // Get user, node, and parent IDs for the post and sanitize
2372 2372
         $uid = boincuser_lookup_uid($post->user);
@@ -2375,14 +2375,14 @@  discard block
 block discarded – undo
2375 2375
           FROM {boincimport_temp_topic} btt
2376 2376
           LEFT JOIN {node_revisions} AS nr ON btt.nid = nr.nid
2377 2377
           WHERE btt.topic_id = %d',
2378
-          $post->thread
2378
+            $post->thread
2379 2379
         ));
2380 2380
         $nid = $node->nid;
2381 2381
         $pid = db_result(db_query('
2382 2382
           SELECT cid
2383 2383
           FROM {boincimport_temp_post}
2384 2384
           WHERE post_id = %d',
2385
-          $post->parent_post));
2385
+            $post->parent_post));
2386 2386
         if (is_null($pid)) $pid = 0;
2387 2387
         if (!$uid) $uid = 0;
2388 2388
         
@@ -2393,85 +2393,85 @@  discard block
 block discarded – undo
2393 2393
           SELECT COUNT(*)
2394 2394
           FROM {comments}
2395 2395
           WHERE nid = %d',
2396
-          $nid
2396
+            $nid
2397 2397
         ));
2398 2398
         $post_reply = $pid;
2399 2399
         
2400 2400
         if ($post_reply OR $topic_reply) {
2401
-          // Create a subject for the post from the post content. The body may be in 
2402
-          // any format, so we:
2403
-          //  1) Filter it into HTML
2404
-          //  2) Strip out all HTML tags
2405
-          //  3) Convert entities back to plain-text.
2406
-          // Note: format is checked by check_markup().
2407
-          $subject = truncate_utf8(trim(decode_entities(strip_tags(check_markup($post->content, $input_format)))), 29, TRUE);
2408
-          // Replace "Quote:" with "RE:"
2409
-          $subject = str_replace('Quote:', 'RE: ', $subject);
2410
-          // Fringe cases where the comment body is populated only by HTML tags
2411
-          // will require a default subject...
2412
-          if ($subject === '')
2401
+            // Create a subject for the post from the post content. The body may be in 
2402
+            // any format, so we:
2403
+            //  1) Filter it into HTML
2404
+            //  2) Strip out all HTML tags
2405
+            //  3) Convert entities back to plain-text.
2406
+            // Note: format is checked by check_markup().
2407
+            $subject = truncate_utf8(trim(decode_entities(strip_tags(check_markup($post->content, $input_format)))), 29, TRUE);
2408
+            // Replace "Quote:" with "RE:"
2409
+            $subject = str_replace('Quote:', 'RE: ', $subject);
2410
+            // Fringe cases where the comment body is populated only by HTML tags
2411
+            // will require a default subject...
2412
+            if ($subject === '')
2413 2413
             $subject = "RE: {$node->title}";
2414 2414
         } else {
2415
-          // This is the first post in the topic
2416
-          $subject = $node->title;
2415
+            // This is the first post in the topic
2416
+            $subject = $node->title;
2417 2417
         }
2418 2418
         
2419 2419
         // Construct the post as a Drupal comment
2420 2420
         $comment = array(
2421
-          'pid' => $pid,
2422
-          'nid' => $nid,
2423
-          'uid' => $uid,
2424
-          'subject' => $subject,
2425
-          'comment' => $post->content,
2426
-          'timestamp' => $post->timestamp,
2427
-          'status' => $post->hidden,
2428
-          'format' => $input_format
2421
+            'pid' => $pid,
2422
+            'nid' => $nid,
2423
+            'uid' => $uid,
2424
+            'subject' => $subject,
2425
+            'comment' => $post->content,
2426
+            'timestamp' => $post->timestamp,
2427
+            'status' => $post->hidden,
2428
+            'format' => $input_format
2429 2429
         );
2430 2430
         
2431 2431
         // Save the comment
2432 2432
         if (boincimport_forum_comment_save($comment)) {
2433
-          $success = db_query('
2433
+            $success = db_query('
2434 2434
             INSERT INTO {boincimport_temp_post} (post_id, cid)
2435 2435
             VALUES (%d, %d)',
2436 2436
             $post->id, $comment['cid']
2437
-          );
2438
-          if ($success) {
2437
+            );
2438
+            if ($success) {
2439 2439
             $posts_imported++;
2440 2440
             $context['results']['posts']['success'][] = $post->id;
2441
-          }
2442
-          else {
2441
+            }
2442
+            else {
2443 2443
             $context['results']['posts']['failure'][] = $post->id;
2444 2444
             $error_posts++;
2445
-          }
2445
+            }
2446 2446
         }
2447 2447
         else {
2448
-          $context['results']['posts']['failure'][] = $post->id;
2449
-          $error_posts++;
2448
+            $context['results']['posts']['failure'][] = $post->id;
2449
+            $error_posts++;
2450
+        }
2450 2451
         }
2451
-      }
2452
-      else {
2452
+        else {
2453 2453
         $context['results']['posts']['empty'][] = $post->id;
2454 2454
         $empty_posts++;
2455
-      }
2455
+        }
2456 2456
     }
2457 2457
     
2458 2458
     $message = '';
2459 2459
     if ($success OR !$topic_has_responses) {
2460
-      // Store some result for post-processing in the finished callback.
2461
-      $context['results']['success'][] = $boinc_topic->id;
2462
-      $message = "Imported {$posts_imported} post(s) for topic {$boinc_topic->id}";
2460
+        // Store some result for post-processing in the finished callback.
2461
+        $context['results']['success'][] = $boinc_topic->id;
2462
+        $message = "Imported {$posts_imported} post(s) for topic {$boinc_topic->id}";
2463 2463
     }
2464 2464
     else {
2465
-      $context['results']['failure'][] = $boinc_topic->id;
2466
-      $message = "Failed to import any posts for topic {$boinc_topic->id} (excluded {$error_posts} errors, {$duplicate_posts} duplicates, and {$empty_posts} empty)";
2467
-      watchdog('boincimport', 'Failed to import any posts for topic @id (excluded @error_posts errors, @duplicate_posts duplicates, and @empty_posts empty)', 
2465
+        $context['results']['failure'][] = $boinc_topic->id;
2466
+        $message = "Failed to import any posts for topic {$boinc_topic->id} (excluded {$error_posts} errors, {$duplicate_posts} duplicates, and {$empty_posts} empty)";
2467
+        watchdog('boincimport', 'Failed to import any posts for topic @id (excluded @error_posts errors, @duplicate_posts duplicates, and @empty_posts empty)', 
2468 2468
         array(
2469
-          '@id' => $boinc_topic->id,
2470
-          '@error_posts' => $error_posts,
2471
-          '@duplicate_posts' => $duplicate_posts,
2472
-          '@empty_posts' => $empty_posts,
2469
+            '@id' => $boinc_topic->id,
2470
+            '@error_posts' => $error_posts,
2471
+            '@duplicate_posts' => $duplicate_posts,
2472
+            '@empty_posts' => $empty_posts,
2473 2473
         ), WATCHDOG_WARNING
2474
-      ); 
2474
+        ); 
2475 2475
     }
2476 2476
     
2477 2477
     // Update our progress information.
@@ -2481,19 +2481,19 @@  discard block
 block discarded – undo
2481 2481
 
2482 2482
     // Update the progress for the batch engine
2483 2483
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2484
-      $context['finished'] = 1;
2484
+        $context['finished'] = 1;
2485 2485
     }
2486 2486
     else {
2487
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2487
+        $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2488
+    }
2488 2489
     }
2489
-  }
2490 2490
 }
2491 2491
 
2492 2492
 /**
2493 2493
  * Batch 'finished' callback
2494 2494
  */
2495 2495
 function boincimport_posts_finished($success, $results, $operations) {
2496
-  if ($success) {
2496
+    if ($success) {
2497 2497
     // Let's count our successes
2498 2498
     $posts_imported = count($results['posts']['success']);
2499 2499
     $topic_count = count($results['success']);
@@ -2502,39 +2502,39 @@  discard block
 block discarded – undo
2502 2502
     $empty_posts = count($results['posts']['empty']);
2503 2503
     $failed_posts = count($results['posts']['failure']);
2504 2504
     $message = t(
2505
-      'Successfully imported @post_count posts in @topic_count topics ' .
2506
-      '(@skipped topics either had no replies or all replies were already imported, ' .
2507
-      '@duplicates posts were skipped as already imported, ' .
2508
-      '@empty_posts had no content, ' .
2509
-      'and @error_posts encountered errors during import)',
2510
-      array(
2505
+        'Successfully imported @post_count posts in @topic_count topics ' .
2506
+        '(@skipped topics either had no replies or all replies were already imported, ' .
2507
+        '@duplicates posts were skipped as already imported, ' .
2508
+        '@empty_posts had no content, ' .
2509
+        'and @error_posts encountered errors during import)',
2510
+        array(
2511 2511
         '@post_count' => $posts_imported,
2512 2512
         '@topic_count' => $topic_count,
2513 2513
         '@skipped' => $topics_skipped,
2514 2514
         '@duplicates' => $duplicates,
2515 2515
         '@empty_posts' => $empty_posts,
2516 2516
         '@error_posts' => $failed_posts,
2517
-      )
2517
+        )
2518 2518
     );
2519 2519
     watchdog('boincimport',
2520
-      $message,
2521
-      array(), WATCHDOG_INFO
2520
+        $message,
2521
+        array(), WATCHDOG_INFO
2522 2522
     ); 
2523 2523
     // Set the post import successful flag in the variable table
2524 2524
     variable_set('boincimport_import_post_successful', '1');
2525 2525
     $_SESSION['boincimport_stage_selected'] = 'team forums';
2526
-  }
2527
-  else {
2526
+    }
2527
+    else {
2528 2528
     // An error occurred.
2529 2529
     // $operations contains the operations that remained unprocessed.
2530 2530
     $error_operation = reset($operations);
2531 2531
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2532
-  }
2533
-  drupal_set_message($message);
2532
+    }
2533
+    drupal_set_message($message);
2534 2534
   
2535
-  // Release the lock on the import process
2536
-  variable_del('boincimport_process_locked');
2537
-  drupal_goto('admin/boinc/import/process');
2535
+    // Release the lock on the import process
2536
+    variable_del('boincimport_process_locked');
2537
+    drupal_goto('admin/boinc/import/process');
2538 2538
 }
2539 2539
 
2540 2540
 
@@ -2547,97 +2547,97 @@  discard block
 block discarded – undo
2547 2547
  */
2548 2548
 function boincimport_team_forums() {
2549 2549
   
2550
-  // Check whether team forums have been successfully imported already
2551
-  if (variable_get('boincimport_import_team_forum_successful', 0)) {
2550
+    // Check whether team forums have been successfully imported already
2551
+    if (variable_get('boincimport_import_team_forum_successful', 0)) {
2552 2552
     drupal_set_message(t('Team forum import has already run successfully'), 'warning');
2553 2553
     watchdog(
2554
-      'boincimport', 'Team forum import has already run successfully',
2555
-      array(), WATCHDOG_WARNING
2554
+        'boincimport', 'Team forum import has already run successfully',
2555
+        array(), WATCHDOG_WARNING
2556 2556
     );
2557
-  }
2557
+    }
2558 2558
 
2559
-  if (!variable_get('boincimport_import_team_forum_started', 0)) {
2559
+    if (!variable_get('boincimport_import_team_forum_started', 0)) {
2560 2560
     // Could prepare database tables, if new fields are necessary, etc.
2561 2561
     variable_set('boincimport_import_team_forum_started', 1);
2562
-  }
2562
+    }
2563 2563
   
2564
-  $pre = variable_get('boincimport_table_prefix', '');
2564
+    $pre = variable_get('boincimport_table_prefix', '');
2565 2565
 
2566
-  // Get team forums from BOINC database
2567
-  db_set_active('boinc');
2568
-  $boincteam_forums = db_query('
2566
+    // Get team forums from BOINC database
2567
+    db_set_active('boinc');
2568
+    $boincteam_forums = db_query('
2569 2569
     SELECT id, title, description, category, timestamp, post_min_interval,
2570 2570
       post_min_total_credit, post_min_expavg_credit
2571 2571
     FROM %sforum
2572 2572
     WHERE parent_type = 1
2573 2573
     ORDER BY id ASC',
2574 2574
     $pre
2575
-  );
2576
-  $team_forum_count = mysql_num_rows($boincteam_forums);
2577
-  db_set_active('default');
2575
+    );
2576
+    $team_forum_count = mysql_num_rows($boincteam_forums);
2577
+    db_set_active('default');
2578 2578
 
2579
-  if (!$team_forum_count) {
2579
+    if (!$team_forum_count) {
2580 2580
     drupal_set_message(
2581
-      t('There were no team forums found: Aborting script'), 'warning'
2581
+        t('There were no team forums found: Aborting script'), 'warning'
2582 2582
     );
2583 2583
     watchdog('boincimport',
2584
-      'There were no team forums found: Aborting script', array(), WATCHDOG_WARNING
2584
+        'There were no team forums found: Aborting script', array(), WATCHDOG_WARNING
2585 2585
     );
2586 2586
     // Release the lock on the import process
2587 2587
     variable_del('boincimport_process_locked');
2588 2588
     return t('There were no BLAH found: Aborting script.');
2589
-  }
2589
+    }
2590 2590
 
2591
-  watchdog('boincimport',
2591
+    watchdog('boincimport',
2592 2592
     'Found %count team forums: Beginning Import',
2593 2593
     array('%count' => $team_forum_count), WATCHDOG_INFO
2594
-  );
2594
+    );
2595 2595
   
2596
-  $operations = array();
2597
-  $existing_team_forums = array();
2598
-  $duplicates = array();
2596
+    $operations = array();
2597
+    $existing_team_forums = array();
2598
+    $duplicates = array();
2599 2599
   
2600
-  // Get the list of team forums already in Drupal to be sure we're not
2601
-  // importing any twice
2602
-  $result = db_query('
2600
+    // Get the list of team forums already in Drupal to be sure we're not
2601
+    // importing any twice
2602
+    $result = db_query('
2603 2603
     SELECT nid, boinc_id FROM {boincteam_forum}'
2604
-  );
2605
-  while ($row = db_fetch_object($result)) {
2604
+    );
2605
+    while ($row = db_fetch_object($result)) {
2606 2606
     $existing_team_forums[$row->boinc_id] = $row->nid;
2607
-  }
2607
+    }
2608 2608
   
2609
-  // Create batches to process
2610
-  while ($boincteam_forum = db_fetch_object($boincteam_forums)) {
2611
-     if (isset($existing_team_forums[$boincteam_forum->id])) {
2612
-      // This team has already been imported
2613
-      $duplicates[] = $boincteam_forum->id;
2609
+    // Create batches to process
2610
+    while ($boincteam_forum = db_fetch_object($boincteam_forums)) {
2611
+        if (isset($existing_team_forums[$boincteam_forum->id])) {
2612
+        // This team has already been imported
2613
+        $duplicates[] = $boincteam_forum->id;
2614 2614
     }
2615 2615
     else {
2616
-      $operations[] = array(
2616
+        $operations[] = array(
2617 2617
         'boincimport_team_forums_op', array(
2618
-          $boincteam_forum
2618
+            $boincteam_forum
2619 2619
         )
2620
-      );
2620
+        );
2621
+    }
2621 2622
     }
2622
-  }
2623 2623
   
2624
-  if ($duplicates) {
2624
+    if ($duplicates) {
2625 2625
     drupal_set_message(t(
2626
-      'Skipped @count team forums that were already imported',
2627
-      array('@count' => count($duplicates))
2626
+        'Skipped @count team forums that were already imported',
2627
+        array('@count' => count($duplicates))
2628 2628
     ));
2629
-  }
2629
+    }
2630 2630
   
2631
-  $batch = array(
2631
+    $batch = array(
2632 2632
     'operations' => $operations,
2633 2633
     'finished' => 'boincimport_team_forums_finished',
2634 2634
     'title' => t('Importing team forums'),
2635 2635
     'init_message' => t('Beginning team forum import...'),
2636 2636
     'progress_message' => t('Processed @current out of @total team forums.'),
2637 2637
     'error_message' => t('Team forum import has encountered an error.'),
2638
-  );
2638
+    );
2639 2639
   
2640
-  batch_set($batch);
2640
+    batch_set($batch);
2641 2641
 }
2642 2642
 
2643 2643
 /**
@@ -2647,15 +2647,15 @@  discard block
 block discarded – undo
2647 2647
  */
2648 2648
 function boincimport_team_forums_op($boincteam_forum, &$context) {
2649 2649
   
2650
-  $input_format = variable_get('boincimport_input_format', 0);
2650
+    $input_format = variable_get('boincimport_input_format', 0);
2651 2651
   
2652
-  // Set term parameters for forums
2653
-  $forum_id = $boincteam_forum->id;
2654
-  $team_id = boincteam_lookup_nid($boincteam_forum->category);
2655
-  $name = $boincteam_forum->title;
2656
-  $description = strip_tags($boincteam_forum->description);
2652
+    // Set term parameters for forums
2653
+    $forum_id = $boincteam_forum->id;
2654
+    $team_id = boincteam_lookup_nid($boincteam_forum->category);
2655
+    $name = $boincteam_forum->title;
2656
+    $description = strip_tags($boincteam_forum->description);
2657 2657
   
2658
-  $success = db_query("
2658
+    $success = db_query("
2659 2659
     INSERT INTO {boincteam_forum} SET 
2660 2660
       boinc_id = %d,
2661 2661
       nid = %d,
@@ -2671,67 +2671,67 @@  discard block
 block discarded – undo
2671 2671
     time(), 0, $boincteam_forum->post_min_interval, 
2672 2672
     $boincteam_forum->post_min_total_credit,
2673 2673
     $boincteam_forum->post_min_expavg_credit
2674
-  );
2674
+    );
2675 2675
   
2676
-  $message = '';
2677
-  if ($success) {
2676
+    $message = '';
2677
+    if ($success) {
2678 2678
     // Store some result for post-processing in the finished callback.
2679 2679
     $context['results']['success'][] = $forum_id;
2680 2680
     $message = "Successfully imported team forum {$forum_id}";
2681
-  }
2682
-  else {
2681
+    }
2682
+    else {
2683 2683
     $context['results']['failure'][] = $forum_id;
2684 2684
     $message = "Failed to import team forum {$forum_id}!";
2685 2685
     watchdog('boincimport',
2686
-      'Failed to import team forum @id!',
2687
-      array('@id' => $forum_id), WATCHDOG_WARNING
2686
+        'Failed to import team forum @id!',
2687
+        array('@id' => $forum_id), WATCHDOG_WARNING
2688 2688
     ); 
2689
-  }
2689
+    }
2690 2690
   
2691
-  // Update our progress information.
2692
-  $context['sandbox']['progress']++;
2693
-  $context['sandbox']['current_forum'] = $forum_id;
2694
-  $context['message'] = $message;
2691
+    // Update our progress information.
2692
+    $context['sandbox']['progress']++;
2693
+    $context['sandbox']['current_forum'] = $forum_id;
2694
+    $context['message'] = $message;
2695 2695
 
2696
-  // Update the progress for the batch engine
2697
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2696
+    // Update the progress for the batch engine
2697
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2698 2698
     $context['finished'] = 1;
2699
-  }
2700
-  else {
2699
+    }
2700
+    else {
2701 2701
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2702
-  }
2702
+    }
2703 2703
 }
2704 2704
 
2705 2705
 /**
2706 2706
  * Batch 'finished' callback
2707 2707
  */
2708 2708
 function boincimport_team_forums_finished($success, $results, $operations) {
2709
-  if ($success) {
2709
+    if ($success) {
2710 2710
     // Let's count our successes
2711 2711
     $total_imported = count($results['success']);
2712 2712
     $message = t(
2713
-      'Successfully imported @count team forums',
2714
-      array('@count' => $total_imported)
2713
+        'Successfully imported @count team forums',
2714
+        array('@count' => $total_imported)
2715 2715
     );
2716 2716
     watchdog('boincimport',
2717
-      'Successfully imported @count team forums.',
2718
-      array('@count' => $total_imported), WATCHDOG_INFO
2717
+        'Successfully imported @count team forums.',
2718
+        array('@count' => $total_imported), WATCHDOG_INFO
2719 2719
     ); 
2720 2720
     // Set the team forum import successful flag in the variable table
2721 2721
     variable_set('boincimport_import_team_forum_successful', '1');
2722 2722
     $_SESSION['boincimport_stage_selected'] = 'team topics';
2723
-  }
2724
-  else {
2723
+    }
2724
+    else {
2725 2725
     // An error occurred.
2726 2726
     // $operations contains the operations that remained unprocessed.
2727 2727
     $error_operation = reset($operations);
2728 2728
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2729
-  }
2730
-  drupal_set_message($message);
2729
+    }
2730
+    drupal_set_message($message);
2731 2731
   
2732
-  // Release the lock on the import process
2733
-  variable_del('boincimport_process_locked');
2734
-  drupal_goto('admin/boinc/import/process');
2732
+    // Release the lock on the import process
2733
+    variable_del('boincimport_process_locked');
2734
+    drupal_goto('admin/boinc/import/process');
2735 2735
 }
2736 2736
 
2737 2737
 
@@ -2744,25 +2744,25 @@  discard block
 block discarded – undo
2744 2744
  */
2745 2745
 function boincimport_team_forum_topics() {
2746 2746
   
2747
-  // Check whether team forum topics have been successfully imported already
2748
-  if (variable_get('boincimport_import_team_topic_successful', 0)) {
2747
+    // Check whether team forum topics have been successfully imported already
2748
+    if (variable_get('boincimport_import_team_topic_successful', 0)) {
2749 2749
     drupal_set_message(t('Team topic import has already run successfully'), 'warning');
2750 2750
     watchdog(
2751
-      'boincimport', 'Team topic import has already run successfully',
2752
-      array(), WATCHDOG_WARNING
2751
+        'boincimport', 'Team topic import has already run successfully',
2752
+        array(), WATCHDOG_WARNING
2753 2753
     );
2754
-  }
2754
+    }
2755 2755
 
2756
-  if (!variable_get('boincimport_import_team_topic_started', 0)) {
2756
+    if (!variable_get('boincimport_import_team_topic_started', 0)) {
2757 2757
     // Could prepare database tables, if new fields are necessary, etc.
2758 2758
     variable_set('boincimport_import_team_topic_started', 1);
2759
-  }
2759
+    }
2760 2760
   
2761
-  $pre = variable_get('boincimport_table_prefix', '');
2761
+    $pre = variable_get('boincimport_table_prefix', '');
2762 2762
 
2763
-  // Get all team topics to import from BOINC
2764
-  db_set_active('boinc');
2765
-  $boincteam_topics = db_query('
2763
+    // Get all team topics to import from BOINC
2764
+    db_set_active('boinc');
2765
+    $boincteam_topics = db_query('
2766 2766
     SELECT DISTINCT t.id, t.title, t.owner, t.forum, t.locked, t.hidden,
2767 2767
       t.sticky, t.timestamp, t.create_time
2768 2768
     FROM %sthread t
@@ -2771,78 +2771,78 @@  discard block
 block discarded – undo
2771 2771
     WHERE f.parent_type = 1
2772 2772
     ORDER BY id',
2773 2773
     $pre, $pre, $pre
2774
-  );
2775
-  $boincteam_topic_count = mysql_num_rows($boincteam_topics);
2776
-  $total_team_topic_count = db_result(db_query('
2774
+    );
2775
+    $boincteam_topic_count = mysql_num_rows($boincteam_topics);
2776
+    $total_team_topic_count = db_result(db_query('
2777 2777
     SELECT COUNT(*) FROM %sthread t
2778 2778
     JOIN %sforum f ON f.id = t.forum
2779 2779
     WHERE f.parent_type = 1', $pre, $pre
2780
-  ));
2781
-  $empty_topic_count = $total_team_topic_count - $boincteam_topic_count;
2782
-  db_set_active('default');
2780
+    ));
2781
+    $empty_topic_count = $total_team_topic_count - $boincteam_topic_count;
2782
+    db_set_active('default');
2783 2783
 
2784
-  if (!$boincteam_topic_count) {
2784
+    if (!$boincteam_topic_count) {
2785 2785
     drupal_set_message(
2786
-      t('There were no team topics found: Aborting script'), 'warning'
2786
+        t('There were no team topics found: Aborting script'), 'warning'
2787 2787
     );
2788 2788
     watchdog('boincimport',
2789
-      'There were no team topics found: Aborting script', array(), WATCHDOG_WARNING
2789
+        'There were no team topics found: Aborting script', array(), WATCHDOG_WARNING
2790 2790
     );
2791 2791
     // Release the lock on the import process
2792 2792
     variable_del('boincimport_process_locked');
2793 2793
     return t('There were no team topics found: Aborting script.');
2794
-  }
2794
+    }
2795 2795
 
2796
-  watchdog('boincimport',
2796
+    watchdog('boincimport',
2797 2797
     'Found %count team topics: Beginning Import',
2798 2798
     array('%count' => $boincteam_topic_count), WATCHDOG_INFO
2799
-  );
2799
+    );
2800 2800
   
2801
-  $operations = array();
2802
-  $existing_team_topics = array();
2803
-  $duplicates = array();
2801
+    $operations = array();
2802
+    $existing_team_topics = array();
2803
+    $duplicates = array();
2804 2804
   
2805
-  // Get the list of team topics already in Drupal to be sure we're not
2806
-  // importing any twice
2807
-  $result = db_query('
2805
+    // Get the list of team topics already in Drupal to be sure we're not
2806
+    // importing any twice
2807
+    $result = db_query('
2808 2808
     SELECT nid, topic_id FROM {boincimport_temp_topic}'
2809
-  );
2810
-  while ($row = db_fetch_object($result)) {
2809
+    );
2810
+    while ($row = db_fetch_object($result)) {
2811 2811
     $existing_team_topics[$row->topic_id] = $row->nid;
2812
-  }
2812
+    }
2813 2813
   
2814
-  // Create batches to process
2815
-  while ($boincteam_topic = db_fetch_object($boincteam_topics)) {
2816
-     if (isset($existing_team_topics[$boincteam_topic->id])) {
2817
-      // This team topic has already been imported
2818
-      $duplicates[] = $boincteam_topic->id;
2814
+    // Create batches to process
2815
+    while ($boincteam_topic = db_fetch_object($boincteam_topics)) {
2816
+        if (isset($existing_team_topics[$boincteam_topic->id])) {
2817
+        // This team topic has already been imported
2818
+        $duplicates[] = $boincteam_topic->id;
2819 2819
     }
2820 2820
     else {
2821
-      $operations[] = array(
2821
+        $operations[] = array(
2822 2822
         'boincimport_team_topics_op', array(
2823
-          $boincteam_topic
2823
+            $boincteam_topic
2824 2824
         )
2825
-      );
2825
+        );
2826
+    }
2826 2827
     }
2827
-  }
2828 2828
   
2829
-  if ($duplicates) {
2829
+    if ($duplicates) {
2830 2830
     drupal_set_message(t(
2831
-      'Skipped @count team topics that were already imported',
2832
-      array('@count' => count($duplicates))
2831
+        'Skipped @count team topics that were already imported',
2832
+        array('@count' => count($duplicates))
2833 2833
     ));
2834
-  }
2834
+    }
2835 2835
   
2836
-  $batch = array(
2836
+    $batch = array(
2837 2837
     'operations' => $operations,
2838 2838
     'finished' => 'boincimport_team_topics_finished',
2839 2839
     'title' => t('Importing team topics'),
2840 2840
     'init_message' => t('Beginning team topic import...'),
2841 2841
     'progress_message' => t('Processed @current out of @total team topics.'),
2842 2842
     'error_message' => t('Team topic import has encountered an error.'),
2843
-  );
2843
+    );
2844 2844
   
2845
-  batch_set($batch);
2845
+    batch_set($batch);
2846 2846
 }
2847 2847
 
2848 2848
 /**
@@ -2851,21 +2851,21 @@  discard block
 block discarded – undo
2851 2851
  */
2852 2852
 function boincimport_team_topics_op($topic, &$context) {
2853 2853
   
2854
-  $input_format = variable_get('boincimport_input_format', 0);
2855
-  $success = FALSE;
2856
-  $missing_parent = array();
2857
-  $empty_topics = array();
2854
+    $input_format = variable_get('boincimport_input_format', 0);
2855
+    $success = FALSE;
2856
+    $missing_parent = array();
2857
+    $empty_topics = array();
2858 2858
   
2859
-  // Verify that the team forum container has been imported
2860
-  $team_forum_id = db_result(db_query("
2859
+    // Verify that the team forum container has been imported
2860
+    $team_forum_id = db_result(db_query("
2861 2861
     SELECT tfid FROM {boincteam_forum}
2862 2862
     WHERE boinc_id = %d",
2863 2863
     $topic->forum
2864
-  ));
2865
-  if (!$team_forum_id) {
2864
+    ));
2865
+    if (!$team_forum_id) {
2866 2866
     $missing_parent[] = $topic->id;
2867
-  }
2868
-  else {
2867
+    }
2868
+    else {
2869 2869
     // Get the content of the post that started the topic
2870 2870
     db_set_active('boinc');
2871 2871
     $query = db_query('
@@ -2874,36 +2874,36 @@  discard block
 block discarded – undo
2874 2874
       WHERE thread = %d
2875 2875
       ORDER BY timestamp ASC
2876 2876
       LIMIT 1',
2877
-      $pre, $topic->id);
2877
+        $pre, $topic->id);
2878 2878
     db_set_active('default');
2879 2879
       
2880 2880
     // Skip this topic if there are no posts
2881 2881
     if (!$post = db_fetch_object($query)) {
2882
-      // Empty topics should have already been filtered out of the import, so
2883
-      // consider this an error condition
2884
-      $empty_topics[] = $topic->id;
2882
+        // Empty topics should have already been filtered out of the import, so
2883
+        // consider this an error condition
2884
+        $empty_topics[] = $topic->id;
2885 2885
     }
2886 2886
     else {
2887
-      // Get the user ID along with other data to define the topic
2888
-      $uid = boincuser_lookup_uid($topic->owner);
2889
-       if (!$topic->owner) {
2887
+        // Get the user ID along with other data to define the topic
2888
+        $uid = boincuser_lookup_uid($topic->owner);
2889
+        if (!$topic->owner) {
2890 2890
         $uid = 0;
2891
-      }
2891
+        }
2892 2892
       
2893
-      $node_type = 'team_forum';
2894
-      $promote = 0;
2895
-      $comment = ($topic->locked) ? 1 : 2;
2893
+        $node_type = 'team_forum';
2894
+        $promote = 0;
2895
+        $comment = ($topic->locked) ? 1 : 2;
2896 2896
       
2897
-      $post->content = _boincimport_strip_bbcode($post->content);
2898
-      $post->content = _boincimport_text_sanitize($post->content);
2899
-      $teaser = node_teaser($post->content);
2897
+        $post->content = _boincimport_strip_bbcode($post->content);
2898
+        $post->content = _boincimport_text_sanitize($post->content);
2899
+        $teaser = node_teaser($post->content);
2900 2900
       
2901
-      if ($topic->timestamp < $topic->create_time) {
2901
+        if ($topic->timestamp < $topic->create_time) {
2902 2902
         $topic->timestamp = $topic->create_time;
2903
-      }
2903
+        }
2904 2904
 
2905
-      // Construct the thread as a team_forum topic node
2906
-      $node = array(
2905
+        // Construct the thread as a team_forum topic node
2906
+        $node = array(
2907 2907
         'type' => $node_type,
2908 2908
         'title' => $topic->title,
2909 2909
         'uid' => $uid,
@@ -2918,89 +2918,89 @@  discard block
 block discarded – undo
2918 2918
         'format' => $input_format,
2919 2919
         'teaser' => $teaser,
2920 2920
         'tfid' => $team_forum_id,
2921
-      );
2921
+        );
2922 2922
       
2923
-      // Save the team topic node
2924
-      $node = (object) $node; // node_save requires an object form
2925
-      node_save($node);
2923
+        // Save the team topic node
2924
+        $node = (object) $node; // node_save requires an object form
2925
+        node_save($node);
2926 2926
 
2927
-      if ($node->nid) {
2927
+        if ($node->nid) {
2928 2928
         db_query('
2929 2929
           INSERT INTO {boincimport_temp_topic} (topic_id, post_id, nid)
2930 2930
           VALUES (%d, %d, %d)',
2931
-          $topic->id, $post->id, $node->nid
2931
+            $topic->id, $post->id, $node->nid
2932 2932
         );
2933 2933
         // Hack to keep the topics in correct order
2934 2934
         db_query('
2935 2935
           UPDATE {node_comment_statistics}
2936 2936
           SET last_comment_timestamp = %d
2937 2937
           WHERE nid = %d',
2938
-          $node->created, $node->nid
2938
+            $node->created, $node->nid
2939 2939
         );
2940 2940
         $success = TRUE;
2941
-      }
2941
+        }
2942
+    }
2942 2943
     }
2943
-  }
2944 2944
   
2945
-  $message = '';
2946
-  if ($success) {
2945
+    $message = '';
2946
+    if ($success) {
2947 2947
     // Store some result for post-processing in the finished callback.
2948 2948
     $context['results']['success'][] = $topic->id;
2949 2949
     $message = "Successfully imported team topic {$topic->id}";
2950
-  }
2951
-  else {
2950
+    }
2951
+    else {
2952 2952
     $context['results']['failure'][] = $topic->id;
2953 2953
     $message = "Failed to import team topic {$topic->id}!";
2954 2954
     watchdog('boincimport',
2955
-      'Failed to import team topic @id!',
2956
-      array('@id' => $topic->id), WATCHDOG_WARNING
2955
+        'Failed to import team topic @id!',
2956
+        array('@id' => $topic->id), WATCHDOG_WARNING
2957 2957
     ); 
2958
-  }
2958
+    }
2959 2959
   
2960
-  // Update our progress information.
2961
-  $context['sandbox']['progress']++;
2962
-  $context['sandbox']['current_topic'] = $topic->id;
2963
-  $context['message'] = $message;
2960
+    // Update our progress information.
2961
+    $context['sandbox']['progress']++;
2962
+    $context['sandbox']['current_topic'] = $topic->id;
2963
+    $context['message'] = $message;
2964 2964
 
2965
-  // Update the progress for the batch engine
2966
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2965
+    // Update the progress for the batch engine
2966
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2967 2967
     $context['finished'] = 1;
2968
-  }
2969
-  else {
2968
+    }
2969
+    else {
2970 2970
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2971
-  }
2971
+    }
2972 2972
 }
2973 2973
 
2974 2974
 /**
2975 2975
  * Batch 'finished' callback
2976 2976
  */
2977 2977
 function boincimport_team_topics_finished($success, $results, $operations) {
2978
-  if ($success) {
2978
+    if ($success) {
2979 2979
     // Let's count our successes
2980 2980
     $total_imported = count($results['success']);
2981 2981
     $message = t(
2982
-      'Successfully imported @count team topics',
2983
-      array('@count' => $total_imported)
2982
+        'Successfully imported @count team topics',
2983
+        array('@count' => $total_imported)
2984 2984
     );
2985 2985
     watchdog('boincimport',
2986
-      'Successfully imported @count team topics.',
2987
-      array('@count' => $total_imported), WATCHDOG_INFO
2986
+        'Successfully imported @count team topics.',
2987
+        array('@count' => $total_imported), WATCHDOG_INFO
2988 2988
     ); 
2989 2989
     // Set the BLAH import successful flag in the variable table
2990 2990
     variable_set('boincimport_import_team_topic_successful', '1');
2991 2991
     $_SESSION['boincimport_stage_selected'] = 'team posts';
2992
-  }
2993
-  else {
2992
+    }
2993
+    else {
2994 2994
     // An error occurred.
2995 2995
     // $operations contains the operations that remained unprocessed.
2996 2996
     $error_operation = reset($operations);
2997 2997
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2998
-  }
2999
-  drupal_set_message($message);
2998
+    }
2999
+    drupal_set_message($message);
3000 3000
   
3001
-  // Release the lock on the import process
3002
-  variable_del('boincimport_process_locked');
3003
-  drupal_goto('admin/boinc/import/process');
3001
+    // Release the lock on the import process
3002
+    variable_del('boincimport_process_locked');
3003
+    drupal_goto('admin/boinc/import/process');
3004 3004
 }
3005 3005
 
3006 3006
 
@@ -3013,81 +3013,81 @@  discard block
 block discarded – undo
3013 3013
  */
3014 3014
 function boincimport_team_forum_posts() {
3015 3015
   
3016
-  // Check whether team forum posts have been successfully imported already
3017
-  if (variable_get('boincimport_import_team_post_successful', 0)) {
3016
+    // Check whether team forum posts have been successfully imported already
3017
+    if (variable_get('boincimport_import_team_post_successful', 0)) {
3018 3018
     drupal_set_message(t('Team forum post import has already run successfully'), 'warning');
3019 3019
     watchdog(
3020
-      'boincimport', 'Team forum post import has already run successfully',
3021
-      array(), WATCHDOG_WARNING
3020
+        'boincimport', 'Team forum post import has already run successfully',
3021
+        array(), WATCHDOG_WARNING
3022 3022
     );
3023 3023
     // Release the lock on the import process
3024 3024
     variable_del('boincimport_process_locked');
3025 3025
     return;
3026
-  }
3026
+    }
3027 3027
 
3028
-  if (!variable_get('boincimport_import_team_post_started', 0)) {
3028
+    if (!variable_get('boincimport_import_team_post_started', 0)) {
3029 3029
     // Could prepare database tables, if new fields are necessary, etc.
3030 3030
     variable_set('boincimport_import_team_post_started', 1);
3031
-  }
3031
+    }
3032 3032
   
3033
-  $pre = variable_get('boincimport_table_prefix', '');
3033
+    $pre = variable_get('boincimport_table_prefix', '');
3034 3034
 
3035
-  // Get the BOINC threads and get a count of team posts to import
3036
-  db_set_active('boinc');
3037
-  $team_topic_ids = db_query('
3035
+    // Get the BOINC threads and get a count of team posts to import
3036
+    db_set_active('boinc');
3037
+    $team_topic_ids = db_query('
3038 3038
     SELECT DISTINCT t.id FROM %sthread t
3039 3039
     JOIN %sforum f ON f.id = t.forum
3040 3040
     JOIN %spost p ON p.thread = t.id
3041 3041
     WHERE f.parent_type = 1
3042 3042
     ORDER BY id', $pre, $pre
3043
-  );
3044
-  $team_topic_count = db_result(db_query("
3043
+    );
3044
+    $team_topic_count = db_result(db_query("
3045 3045
     SELECT COUNT(DISTINCT t.id) FROM %sthread t
3046 3046
     JOIN %sforum f ON f.id = t.forum
3047 3047
     JOIN %spost p ON p.thread = t.id
3048 3048
     WHERE f.parent_type = 1", $pre, $pre, $pre
3049
-  ));
3050
-  $total_team_post_count = db_result(db_query("
3049
+    ));
3050
+    $total_team_post_count = db_result(db_query("
3051 3051
     SELECT COUNT(p.id) FROM %spost p
3052 3052
     JOIN %sthread t ON t.id = p.thread
3053 3053
     JOIN %sforum f ON f.id = t.forum
3054 3054
     WHERE f.parent_type = 1", $pre, $pre, $pre
3055
-  ));
3056
-  $team_post_count = $total_team_post_count - $team_topic_count;
3057
-  db_set_active('default');
3055
+    ));
3056
+    $team_post_count = $total_team_post_count - $team_topic_count;
3057
+    db_set_active('default');
3058 3058
 
3059
-  if ($team_post_count <= 0) {
3059
+    if ($team_post_count <= 0) {
3060 3060
     drupal_set_message(
3061
-      t('There were no team posts found: Aborting script'), 'warning'
3061
+        t('There were no team posts found: Aborting script'), 'warning'
3062 3062
     );
3063 3063
     watchdog('boincimport',
3064
-      'There were no team posts found: Aborting script', array(), WATCHDOG_WARNING
3064
+        'There were no team posts found: Aborting script', array(), WATCHDOG_WARNING
3065 3065
     );
3066 3066
     // Release the lock on the import process
3067 3067
     variable_del('boincimport_process_locked');
3068 3068
     return t('There were no posts found: Aborting script.');
3069
-  }
3069
+    }
3070 3070
 
3071
-  watchdog('boincimport',
3071
+    watchdog('boincimport',
3072 3072
     'Found %count team posts: Beginning Import',
3073 3073
     array('%count' => $team_post_count), WATCHDOG_INFO
3074
-  );
3074
+    );
3075 3075
   
3076
-  $operations = array();
3077
-  $existing_posts = array();
3078
-  $duplicates = array();
3076
+    $operations = array();
3077
+    $existing_posts = array();
3078
+    $duplicates = array();
3079 3079
   
3080
-  // Get the list of team posts already in Drupal to be sure we're not
3081
-  // importing any twice
3082
-  $result = db_query('
3080
+    // Get the list of team posts already in Drupal to be sure we're not
3081
+    // importing any twice
3082
+    $result = db_query('
3083 3083
     SELECT cid, post_id FROM {boincimport_temp_post}'
3084
-  );
3085
-  while ($row = db_fetch_object($result)) {
3084
+    );
3085
+    while ($row = db_fetch_object($result)) {
3086 3086
     $existing_posts[$row->post_id] = $row->cid;
3087
-  }
3087
+    }
3088 3088
   
3089
-  // Create batches to process
3090
-  while ($boincteam_topic = db_fetch_object($team_topic_ids)) {
3089
+    // Create batches to process
3090
+    while ($boincteam_topic = db_fetch_object($team_topic_ids)) {
3091 3091
     
3092 3092
     db_set_active('boinc');
3093 3093
     $boincteam_posts = db_query('
@@ -3095,7 +3095,7 @@  discard block
 block discarded – undo
3095 3095
       FROM %spost
3096 3096
       WHERE thread = %d
3097 3097
       ORDER BY timestamp ASC',
3098
-      $pre, $boincteam_topic->id
3098
+        $pre, $boincteam_topic->id
3099 3099
     );
3100 3100
     db_set_active('default');
3101 3101
     
@@ -3103,43 +3103,43 @@  discard block
 block discarded – undo
3103 3103
 
3104 3104
     while ($boincteam_post = db_fetch_object($boincteam_posts)) {
3105 3105
       
3106
-      // Skip the first post as it has already been imported as a topic
3107
-      if ($first_post) {
3106
+        // Skip the first post as it has already been imported as a topic
3107
+        if ($first_post) {
3108 3108
         $first_post = false;
3109 3109
         continue;
3110
-      }
3110
+        }
3111 3111
 
3112
-      if (isset($existing_posts[$boincteam_post->id])) {
3112
+        if (isset($existing_posts[$boincteam_post->id])) {
3113 3113
         // This post has already been imported
3114 3114
         $duplicates[] = $boincteam_post->id;
3115
-      }
3116
-      else {
3115
+        }
3116
+        else {
3117 3117
         $operations[] = array(
3118
-          'boincimport_team_posts_op', array(
3118
+            'boincimport_team_posts_op', array(
3119 3119
             $boincteam_post
3120
-          )
3120
+            )
3121 3121
         );
3122
-      }
3122
+        }
3123
+    }
3123 3124
     }
3124
-  }
3125 3125
   
3126
-  if ($duplicates) {
3126
+    if ($duplicates) {
3127 3127
     drupal_set_message(t(
3128
-      'Skipped @count team posts that were already imported',
3129
-      array('@count' => count($duplicates))
3128
+        'Skipped @count team posts that were already imported',
3129
+        array('@count' => count($duplicates))
3130 3130
     ));
3131
-  }
3131
+    }
3132 3132
   
3133
-  $batch = array(
3133
+    $batch = array(
3134 3134
     'operations' => $operations,
3135 3135
     'finished' => 'boincimport_team_posts_finished',
3136 3136
     'title' => t('Importing team posts'),
3137 3137
     'init_message' => t('Beginning team post import...'),
3138 3138
     'progress_message' => t('Processed @current out of @total team posts.'),
3139 3139
     'error_message' => t('Team post import has encountered an error.'),
3140
-  );
3140
+    );
3141 3141
   
3142
-  batch_set($batch);
3142
+    batch_set($batch);
3143 3143
 }
3144 3144
 
3145 3145
 /**
@@ -3148,11 +3148,11 @@  discard block
 block discarded – undo
3148 3148
  */
3149 3149
 function boincimport_team_posts_op($post, &$context) {
3150 3150
   
3151
-  $input_format = variable_get('boincimport_input_format', 0);
3152
-  $success = FALSE;
3151
+    $input_format = variable_get('boincimport_input_format', 0);
3152
+    $success = FALSE;
3153 3153
   
3154
-  // Make sure the post is valid
3155
-  if ($post->content) {
3154
+    // Make sure the post is valid
3155
+    if ($post->content) {
3156 3156
     
3157 3157
     // Get user, node, and parent IDs for the post and sanitize
3158 3158
     $uid = boincuser_lookup_uid($post->user);
@@ -3161,14 +3161,14 @@  discard block
 block discarded – undo
3161 3161
       FROM {boincimport_temp_topic} btt
3162 3162
       LEFT JOIN {node_revisions} AS nr ON btt.nid = nr.nid
3163 3163
       WHERE btt.topic_id = %d',
3164
-      $post->thread
3164
+        $post->thread
3165 3165
     ));
3166 3166
     $nid = $node->nid;
3167 3167
     $pid = db_result(db_query('
3168 3168
       SELECT cid
3169 3169
       FROM {boincimport_temp_post}
3170 3170
       WHERE post_id = %d',
3171
-      $post->parent_post));
3171
+        $post->parent_post));
3172 3172
     if (is_null($pid)) $pid = 0;
3173 3173
     if (!$uid) $uid = 0;
3174 3174
     
@@ -3179,110 +3179,110 @@  discard block
 block discarded – undo
3179 3179
       SELECT COUNT(*)
3180 3180
       FROM {comments}
3181 3181
       WHERE nid = %d',
3182
-      $nid
3182
+        $nid
3183 3183
     ));
3184 3184
     $post_reply = $pid;
3185 3185
     
3186 3186
     if ($post_reply OR $topic_reply) {
3187
-      // Create a subject for the post from the post content. The body may be in 
3188
-      // any format, so we:
3189
-      //  1) Filter it into HTML
3190
-      //  2) Strip out all HTML tags
3191
-      //  3) Convert entities back to plain-text.
3192
-      // Note: format is checked by check_markup().
3193
-      $subject = truncate_utf8(trim(decode_entities(strip_tags(check_markup($post->content, $input_format)))), 29, TRUE);
3194
-      // Replace "Quote:" with "RE:"
3195
-      $subject = str_replace('Quote:', 'RE: ', $subject);
3196
-      // Fringe cases where the comment body is populated only by HTML tags
3197
-      // will require a default subject...
3198
-      if ($subject === '')
3187
+        // Create a subject for the post from the post content. The body may be in 
3188
+        // any format, so we:
3189
+        //  1) Filter it into HTML
3190
+        //  2) Strip out all HTML tags
3191
+        //  3) Convert entities back to plain-text.
3192
+        // Note: format is checked by check_markup().
3193
+        $subject = truncate_utf8(trim(decode_entities(strip_tags(check_markup($post->content, $input_format)))), 29, TRUE);
3194
+        // Replace "Quote:" with "RE:"
3195
+        $subject = str_replace('Quote:', 'RE: ', $subject);
3196
+        // Fringe cases where the comment body is populated only by HTML tags
3197
+        // will require a default subject...
3198
+        if ($subject === '')
3199 3199
         $subject = "RE: {$node->title}";
3200 3200
     } else {
3201
-      // This is the first post in the topic
3202
-      $subject = $node->title;
3201
+        // This is the first post in the topic
3202
+        $subject = $node->title;
3203 3203
     }
3204 3204
     
3205 3205
     // Construct the post as a Drupal comment
3206 3206
     $comment = array(
3207
-      'pid' => $pid,
3208
-      'nid' => $nid,
3209
-      'uid' => $uid,
3210
-      'subject' => $subject,
3211
-      'comment' => $post->content,
3212
-      'timestamp' => $post->timestamp,
3213
-      'status' => $post->hidden,
3214
-      'format' => $input_format
3207
+        'pid' => $pid,
3208
+        'nid' => $nid,
3209
+        'uid' => $uid,
3210
+        'subject' => $subject,
3211
+        'comment' => $post->content,
3212
+        'timestamp' => $post->timestamp,
3213
+        'status' => $post->hidden,
3214
+        'format' => $input_format
3215 3215
     );
3216 3216
     
3217 3217
     // Save the comment
3218 3218
     if (boincimport_forum_comment_save($comment)) {
3219
-      $success = db_query('
3219
+        $success = db_query('
3220 3220
         INSERT INTO {boincimport_temp_post} (post_id, cid)
3221 3221
         VALUES (%d, %d)',
3222 3222
         $post->id, $comment['cid']
3223
-      );
3223
+        );
3224
+    }
3224 3225
     }
3225
-  }
3226 3226
   
3227
-  $message = '';
3228
-  if ($success) {
3227
+    $message = '';
3228
+    if ($success) {
3229 3229
     // Store some result for post-processing in the finished callback.
3230 3230
     $context['results']['success'][] = $post->id;
3231 3231
     $message = "Successfully imported team post {$post->id}";
3232
-  }
3233
-  else {
3232
+    }
3233
+    else {
3234 3234
     $context['results']['failure'][] = $post->id;
3235 3235
     $message = "Failed to import team post {$post->id}!";
3236 3236
     watchdog('boincimport',
3237
-      'Failed to import team post @id!',
3238
-      array('@id' => $post->id), WATCHDOG_WARNING
3237
+        'Failed to import team post @id!',
3238
+        array('@id' => $post->id), WATCHDOG_WARNING
3239 3239
     ); 
3240
-  }
3240
+    }
3241 3241
   
3242
-  // Update our progress information.
3243
-  $context['sandbox']['progress']++;
3244
-  $context['sandbox']['current_post'] = $post->id;
3245
-  $context['message'] = $message;
3242
+    // Update our progress information.
3243
+    $context['sandbox']['progress']++;
3244
+    $context['sandbox']['current_post'] = $post->id;
3245
+    $context['message'] = $message;
3246 3246
 
3247
-  // Update the progress for the batch engine
3248
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3247
+    // Update the progress for the batch engine
3248
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3249 3249
     $context['finished'] = 1;
3250
-  }
3251
-  else {
3250
+    }
3251
+    else {
3252 3252
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3253
-  }
3253
+    }
3254 3254
 }
3255 3255
 
3256 3256
 /**
3257 3257
  * Batch 'finished' callback
3258 3258
  */
3259 3259
 function boincimport_team_posts_finished($success, $results, $operations) {
3260
-  if ($success) {
3260
+    if ($success) {
3261 3261
     // Let's count our successes
3262 3262
     $total_imported = count($results['success']);
3263 3263
     $message = t(
3264
-      'Successfully imported @count team posts',
3265
-      array('@count' => $total_imported)
3264
+        'Successfully imported @count team posts',
3265
+        array('@count' => $total_imported)
3266 3266
     );
3267 3267
     watchdog('boincimport',
3268
-      'Successfully imported @count team posts.',
3269
-      array('@count' => $total_imported), WATCHDOG_INFO
3268
+        'Successfully imported @count team posts.',
3269
+        array('@count' => $total_imported), WATCHDOG_INFO
3270 3270
     ); 
3271 3271
     // Set the team post import successful flag in the variable table
3272 3272
     variable_set('boincimport_import_team_post_successful', '1');
3273 3273
     $_SESSION['boincimport_stage_selected'] = 'url';
3274
-  }
3275
-  else {
3274
+    }
3275
+    else {
3276 3276
     // An error occurred.
3277 3277
     // $operations contains the operations that remained unprocessed.
3278 3278
     $error_operation = reset($operations);
3279 3279
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
3280
-  }
3281
-  drupal_set_message($message);
3280
+    }
3281
+    drupal_set_message($message);
3282 3282
   
3283
-  // Release the lock on the import process
3284
-  variable_del('boincimport_process_locked');
3285
-  drupal_goto('admin/boinc/import/process');
3283
+    // Release the lock on the import process
3284
+    variable_del('boincimport_process_locked');
3285
+    drupal_goto('admin/boinc/import/process');
3286 3286
 }
3287 3287
 
3288 3288
 
@@ -3295,71 +3295,71 @@  discard block
 block discarded – undo
3295 3295
  */
3296 3296
 function boincimport_subscriptions() {
3297 3297
   
3298
-  // Check whether subscriptions have been successfully imported already
3299
-  if (variable_get('boincimport_import_subscription_successful', 0)) {
3298
+    // Check whether subscriptions have been successfully imported already
3299
+    if (variable_get('boincimport_import_subscription_successful', 0)) {
3300 3300
     drupal_set_message(t('Subscription import has already run successfully'), 'warning');
3301 3301
     watchdog(
3302
-      'boincimport', 'Subscription import has already run successfully',
3303
-      array(), WATCHDOG_WARNING
3302
+        'boincimport', 'Subscription import has already run successfully',
3303
+        array(), WATCHDOG_WARNING
3304 3304
     );
3305
-  }
3305
+    }
3306 3306
 
3307
-  if (!variable_get('boincimport_import_subscription_started', 0)) {
3307
+    if (!variable_get('boincimport_import_subscription_started', 0)) {
3308 3308
     // Could prepare database tables, if new fields are necessary, etc.
3309 3309
     variable_set('boincimport_import_subscription_started', 1);
3310
-  }
3310
+    }
3311 3311
   
3312
-  $pre = variable_get('boincimport_table_prefix', '');
3312
+    $pre = variable_get('boincimport_table_prefix', '');
3313 3313
 
3314
-  // Get users with subscriptions to import
3315
-  db_set_active('boinc');
3316
-  $users_with_subscriptions = db_query('
3314
+    // Get users with subscriptions to import
3315
+    db_set_active('boinc');
3316
+    $users_with_subscriptions = db_query('
3317 3317
     SELECT DISTINCT userid
3318 3318
     FROM %ssubscriptions
3319 3319
     ORDER BY userid ASC',
3320 3320
     $pre
3321
-  );
3322
-  $user_count = mysql_num_rows($users_with_subscriptions);
3323
-  db_set_active('default');
3321
+    );
3322
+    $user_count = mysql_num_rows($users_with_subscriptions);
3323
+    db_set_active('default');
3324 3324
 
3325
-  if (!$user_count) {
3325
+    if (!$user_count) {
3326 3326
     drupal_set_message(
3327
-      t('There were no subscriptions found: Aborting script'), 'warning'
3327
+        t('There were no subscriptions found: Aborting script'), 'warning'
3328 3328
     );
3329 3329
     watchdog('boincimport',
3330
-      'There were no subscriptions found: Aborting script', array(), WATCHDOG_WARNING
3330
+        'There were no subscriptions found: Aborting script', array(), WATCHDOG_WARNING
3331 3331
     );
3332 3332
     // Release the lock on the import process
3333 3333
     variable_del('boincimport_process_locked');
3334 3334
     return t('There were no subscriptions found: Aborting script.');
3335
-  }
3335
+    }
3336 3336
 
3337
-  watchdog('boincimport',
3337
+    watchdog('boincimport',
3338 3338
     'Found %count users with subscriptions: Beginning import',
3339 3339
     array('%count' => $user_count), WATCHDOG_INFO
3340
-  );
3340
+    );
3341 3341
   
3342
-  $operations = array();
3342
+    $operations = array();
3343 3343
   
3344
-  // Create batches to process
3345
-  while ($subscribed_user = db_fetch_object($users_with_subscriptions)) {
3344
+    // Create batches to process
3345
+    while ($subscribed_user = db_fetch_object($users_with_subscriptions)) {
3346 3346
     $operations[] = array(
3347
-      'boincimport_subscriptions_op', array(
3347
+        'boincimport_subscriptions_op', array(
3348 3348
         $subscribed_user->userid
3349
-      )
3349
+        )
3350 3350
     );
3351
-  }
3351
+    }
3352 3352
   
3353
-  $batch = array(
3353
+    $batch = array(
3354 3354
     'operations' => $operations,
3355 3355
     'finished' => 'boincimport_subscriptions_finished',
3356 3356
     'title' => t('Importing subscriptions'),
3357 3357
     'init_message' => t('Beginning subscription import...'),
3358 3358
     'progress_message' => t('Processed @current out of @total subscriptions.'),
3359 3359
     'error_message' => t('Subscription import has encountered an error.'),
3360
-  );
3360
+    );
3361 3361
   
3362
-  batch_set($batch);
3362
+    batch_set($batch);
3363 3363
 }
3364 3364
 
3365 3365
 /**
@@ -3368,72 +3368,72 @@  discard block
 block discarded – undo
3368 3368
  */
3369 3369
 function boincimport_subscriptions_op($boincuser_id, &$context) {
3370 3370
   
3371
-  // Get the drupal user and pull subscriptions
3372
-  $uid = get_drupal_id($boincuser_id);
3373
-  $count = boincuser_pull_subscriptions($uid);
3371
+    // Get the drupal user and pull subscriptions
3372
+    $uid = get_drupal_id($boincuser_id);
3373
+    $count = boincuser_pull_subscriptions($uid);
3374 3374
   
3375
-  $message = '';
3376
-  if ($count) {
3375
+    $message = '';
3376
+    if ($count) {
3377 3377
     // Store some result for post-processing in the finished callback.
3378 3378
     $context['results']['success'][] = $boincuser_id;
3379 3379
     $context['results']['subscriptions'][$boincuser_id] = $count;
3380 3380
     $message = "Successfully imported {$count} subscriptions for user {$boincuser_id}";
3381
-  }
3382
-  else {
3381
+    }
3382
+    else {
3383 3383
     $context['results']['failure'][] = $boincuser_id;
3384 3384
     $message = "Failed to import subscriptions for user {$boincuser_id}!";
3385 3385
     watchdog('boincimport',
3386
-      'Failed to import subscriptions for user @id!',
3387
-      array('@id' => $boincuser_id), WATCHDOG_WARNING
3386
+        'Failed to import subscriptions for user @id!',
3387
+        array('@id' => $boincuser_id), WATCHDOG_WARNING
3388 3388
     ); 
3389
-  }
3389
+    }
3390 3390
   
3391
-  // Update our progress information.
3392
-  $context['sandbox']['progress']++;
3393
-  $context['sandbox']['current_user'] = $boincuser_id;
3394
-  $context['message'] = $message;
3391
+    // Update our progress information.
3392
+    $context['sandbox']['progress']++;
3393
+    $context['sandbox']['current_user'] = $boincuser_id;
3394
+    $context['message'] = $message;
3395 3395
 
3396
-  // Update the progress for the batch engine
3397
-  if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3396
+    // Update the progress for the batch engine
3397
+    if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3398 3398
     $context['finished'] = 1;
3399
-  }
3400
-  else {
3399
+    }
3400
+    else {
3401 3401
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3402
-  }
3402
+    }
3403 3403
 }
3404 3404
 
3405 3405
 /**
3406 3406
  * Batch 'finished' callback
3407 3407
  */
3408 3408
 function boincimport_subscriptions_finished($success, $results, $operations) {
3409
-  if ($success) {
3409
+    if ($success) {
3410 3410
     // Let's count our successes
3411 3411
     $user_count = count($results['success']);
3412 3412
     $subscriptions_imported = array_sum($results['subscriptions']);
3413 3413
     $message = t(
3414
-      'Successfully imported @count subscriptions for @distinct users',
3415
-      array('@count' => $subscriptions_imported, '@distinct' => $user_count)
3414
+        'Successfully imported @count subscriptions for @distinct users',
3415
+        array('@count' => $subscriptions_imported, '@distinct' => $user_count)
3416 3416
     );
3417 3417
     watchdog('boincimport',
3418
-      'Successfully imported @count subscriptions for @distinct users.',
3419
-      array('@count' => $subscriptions_imported, '@distinct' => $user_count),
3420
-      WATCHDOG_INFO
3418
+        'Successfully imported @count subscriptions for @distinct users.',
3419
+        array('@count' => $subscriptions_imported, '@distinct' => $user_count),
3420
+        WATCHDOG_INFO
3421 3421
     ); 
3422 3422
     // Set the subscription import successful flag in the variable table
3423 3423
     variable_set('boincimport_import_subscription_successful', '1');
3424 3424
     $_SESSION['boincimport_stage_selected'] = 'url';
3425
-  }
3426
-  else {
3425
+    }
3426
+    else {
3427 3427
     // An error occurred.
3428 3428
     // $operations contains the operations that remained unprocessed.
3429 3429
     $error_operation = reset($operations);
3430 3430
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
3431
-  }
3432
-  drupal_set_message($message);
3431
+    }
3432
+    drupal_set_message($message);
3433 3433
   
3434
-  // Release the lock on the import process
3435
-  variable_del('boincimport_process_locked');
3436
-  drupal_goto('admin/boinc/import/process');
3434
+    // Release the lock on the import process
3435
+    variable_del('boincimport_process_locked');
3436
+    drupal_goto('admin/boinc/import/process');
3437 3437
 }
3438 3438
 
3439 3439
 
@@ -3445,112 +3445,112 @@  discard block
 block discarded – undo
3445 3445
  */
3446 3446
 function boincimport_replace_urls() {
3447 3447
   
3448
-  // Check whether URLs have already been fixed
3449
-  if (variable_get('boincimport_replace_url_successful', 0)) {
3448
+    // Check whether URLs have already been fixed
3449
+    if (variable_get('boincimport_replace_url_successful', 0)) {
3450 3450
     drupal_set_message(t('URLs have already been updated'), 'warning');
3451 3451
     watchdog(
3452
-      'boincimport', 'URLs have already been updated',
3453
-      array(), WATCHDOG_WARNING
3452
+        'boincimport', 'URLs have already been updated',
3453
+        array(), WATCHDOG_WARNING
3454 3454
     );
3455
-  }
3455
+    }
3456 3456
 
3457
-  if (!variable_get('boincimport_replace_url_started', 0)) {
3457
+    if (!variable_get('boincimport_replace_url_started', 0)) {
3458 3458
     // Could prepare database tables, if new fields are necessary, etc.
3459 3459
     variable_set('boincimport_replace_url_started', 1);
3460
-  }
3460
+    }
3461 3461
   
3462
-  // Get the count of nodes and comments to process for URL updates
3463
-  $node_count = db_result(db_query('
3462
+    // Get the count of nodes and comments to process for URL updates
3463
+    $node_count = db_result(db_query('
3464 3464
     SELECT COUNT(DISTINCT btt.nid)
3465 3465
     FROM {boincimport_temp_topic} AS btt
3466 3466
     LEFT JOIN {node_revisions} AS nr ON btt.nid = nr.nid'
3467
-  ));
3467
+    ));
3468 3468
   
3469
-  $comment_count = db_result(db_query('
3469
+    $comment_count = db_result(db_query('
3470 3470
     SELECT COUNT(c.cid)
3471 3471
     FROM {boincimport_temp_post} AS p
3472 3472
     LEFT JOIN {comments} AS c ON p.cid = c.cid'
3473
-  ));
3473
+    ));
3474 3474
   
3475
-  $pm_count = db_result(db_query('
3475
+    $pm_count = db_result(db_query('
3476 3476
     SELECT COUNT(*)
3477 3477
     FROM {pm_message} pm'
3478
-  ));
3478
+    ));
3479 3479
   
3480
-  if (!$node_count AND !$comment_count AND !$pm_count) {
3480
+    if (!$node_count AND !$comment_count AND !$pm_count) {
3481 3481
     drupal_set_message(
3482
-      t('There were no nodes, comments, or private messages found: Aborting script'), 'warning'
3482
+        t('There were no nodes, comments, or private messages found: Aborting script'), 'warning'
3483 3483
     );
3484 3484
     watchdog('boincimport',
3485
-      'There were no nodes,comments, or private messages found: Aborting script', array(), WATCHDOG_WARNING
3485
+        'There were no nodes,comments, or private messages found: Aborting script', array(), WATCHDOG_WARNING
3486 3486
     );
3487 3487
     // Release the lock on the import process
3488 3488
     variable_del('boincimport_process_locked');
3489 3489
     return t('There were no nodes, comments, or private messages found: Aborting script.');
3490
-  }
3490
+    }
3491 3491
   
3492
-  watchdog('boincimport',
3492
+    watchdog('boincimport',
3493 3493
     'Found %node_count nodes, %comment_count comments, and %pm_count private messages: Updating URLs...',
3494 3494
     array(
3495
-      '%node_count' => $node_count,
3496
-      '%comment_count' => $comment_count,
3497
-      '%pm_count' => $pm_count,
3495
+        '%node_count' => $node_count,
3496
+        '%comment_count' => $comment_count,
3497
+        '%pm_count' => $pm_count,
3498 3498
     ),
3499 3499
     WATCHDOG_INFO
3500
-  );
3500
+    );
3501 3501
   
3502
-  $operations = array();
3503
-  $batch_size = 100;
3502
+    $operations = array();
3503
+    $batch_size = 100;
3504 3504
   
3505
-  // Create node batches to process
3506
-  for ($offset = 0; $offset < $node_count; $offset+=$batch_size) {
3505
+    // Create node batches to process
3506
+    for ($offset = 0; $offset < $node_count; $offset+=$batch_size) {
3507 3507
     $nodes_per_batch = $batch_size;
3508 3508
     if ($offset + $batch_size > $node_count) {
3509
-      $nodes_per_batch = $node_count - $offset;
3509
+        $nodes_per_batch = $node_count - $offset;
3510 3510
     }
3511 3511
     $operations[] = array(
3512
-      'boincimport_replace_urls_node_op', array(
3512
+        'boincimport_replace_urls_node_op', array(
3513 3513
         $offset, $nodes_per_batch
3514
-      )
3514
+        )
3515 3515
     );
3516
-  }
3517
-  // Add comment batches
3518
-  for ($offset = 0; $offset < $comment_count; $offset+=$batch_size) {
3516
+    }
3517
+    // Add comment batches
3518
+    for ($offset = 0; $offset < $comment_count; $offset+=$batch_size) {
3519 3519
     $comments_per_batch = $batch_size;
3520 3520
     if ($offset + $batch_size > $comment_count) {
3521
-      $comments_per_batch = $comment_count - $offset;
3521
+        $comments_per_batch = $comment_count - $offset;
3522 3522
     }
3523 3523
     $operations[] = array(
3524
-      'boincimport_replace_urls_comment_op', array(
3524
+        'boincimport_replace_urls_comment_op', array(
3525 3525
         $offset, $comments_per_batch
3526
-      )
3526
+        )
3527 3527
     );
3528
-  }
3529
-  // And don't forget to process private messages
3530
-  for ($offset = 0; $offset < $pm_count; $offset+=$batch_size) {
3528
+    }
3529
+    // And don't forget to process private messages
3530
+    for ($offset = 0; $offset < $pm_count; $offset+=$batch_size) {
3531 3531
     $messages_per_batch = $batch_size;
3532 3532
     if ($offset + $batch_size > $pm_count) {
3533
-      $messages_per_batch = $pm_count - $offset;
3533
+        $messages_per_batch = $pm_count - $offset;
3534 3534
     }
3535 3535
     $operations[] = array(
3536
-      'boincimport_replace_urls_pm_op', array(
3536
+        'boincimport_replace_urls_pm_op', array(
3537 3537
         $offset, $messages_per_batch
3538
-      )
3538
+        )
3539 3539
     );
3540
-  }
3540
+    }
3541 3541
   
3542
-  $batch = array(
3542
+    $batch = array(
3543 3543
     'operations' => $operations,
3544 3544
     'finished' => 'boincimport_replace_urls_finished',
3545 3545
     'title' => t('Updating URLs...'),
3546 3546
     'init_message' => t('Beginning URL update...'),
3547 3547
     'progress_message' => t('Processed URLs in @current out of @total batches (@size items per batch).', array(
3548
-      '@size' => $batch_size,
3548
+        '@size' => $batch_size,
3549 3549
     )),
3550 3550
     'error_message' => t('URL update has encountered an error.'),
3551
-  );
3551
+    );
3552 3552
   
3553
-  batch_set($batch);
3553
+    batch_set($batch);
3554 3554
 }
3555 3555
 
3556 3556
 /**
@@ -3558,27 +3558,27 @@  discard block
 block discarded – undo
3558 3558
  * Find URLs for the old system and update them with Drupal paths
3559 3559
  */
3560 3560
 function boincimport_replace_urls_node_op($offset, $batch_size, &$context) {
3561
-  // Initialize the batch, if needed
3562
-  if (!isset($context['sandbox']['progress'])) {
3561
+    // Initialize the batch, if needed
3562
+    if (!isset($context['sandbox']['progress'])) {
3563 3563
     $context['sandbox']['progress'] = 0;
3564 3564
     $context['sandbox']['max'] = $batch_size;
3565
-  }
3565
+    }
3566 3566
   
3567
-  $input_format = variable_get('boincimport_input_format', 0);
3567
+    $input_format = variable_get('boincimport_input_format', 0);
3568 3568
 
3569
-  // Since topics have just been imported, there should be only one vid for
3570
-  // each nid, so we can update node_revisions by nid
3571
-  // Get nodes to process
3572
-  $nodes = db_query('
3569
+    // Since topics have just been imported, there should be only one vid for
3570
+    // each nid, so we can update node_revisions by nid
3571
+    // Get nodes to process
3572
+    $nodes = db_query('
3573 3573
     SELECT btt.nid, nr.body, nr.teaser
3574 3574
     FROM {boincimport_temp_topic} AS btt
3575 3575
     LEFT JOIN {node_revisions} AS nr ON btt.nid = nr.nid
3576 3576
     ORDER BY btt.nid
3577 3577
     LIMIT %d,%d',
3578 3578
     $offset, $batch_size
3579
-  );
3579
+    );
3580 3580
   
3581
-  while ($node = db_fetch_object($nodes)) {
3581
+    while ($node = db_fetch_object($nodes)) {
3582 3582
     $updated = FALSE;
3583 3583
     
3584 3584
     // Update URLs in node contents
@@ -3587,23 +3587,23 @@  discard block
 block discarded – undo
3587 3587
     $node->body = _boincimport_replace_links($node->body);
3588 3588
     $node->teaser = _boincimport_replace_links($node->teaser);
3589 3589
     if ($node->body != $original_body OR $node->teaser != $original_teaser) {
3590
-      $updated = db_query("
3590
+        $updated = db_query("
3591 3591
         UPDATE {node_revisions}
3592 3592
         SET body= '%s', teaser = '%s'
3593 3593
         WHERE nid = %d",
3594 3594
         $node->body, $node->teaser, $node->nid
3595
-      );
3595
+        );
3596 3596
     }
3597 3597
     
3598 3598
     $message = '';
3599 3599
     $context['results']['success'][] = $node->nid;
3600 3600
     if ($updated) {
3601
-      // Store some result for post-processing in the finished callback.
3602
-      $context['results']['nodes']['updated'][] = $node->nid;
3603
-      $message = "Successfully updated node {$node->nid}";
3601
+        // Store some result for post-processing in the finished callback.
3602
+        $context['results']['nodes']['updated'][] = $node->nid;
3603
+        $message = "Successfully updated node {$node->nid}";
3604 3604
     }
3605 3605
     else {
3606
-      $message = "No changes made to node {$node->nid}!";
3606
+        $message = "No changes made to node {$node->nid}!";
3607 3607
     }
3608 3608
     
3609 3609
     // Update our progress information.
@@ -3613,12 +3613,12 @@  discard block
 block discarded – undo
3613 3613
 
3614 3614
     // Update the progress for the batch engine
3615 3615
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3616
-      $context['finished'] = 1;
3616
+        $context['finished'] = 1;
3617 3617
     }
3618 3618
     else {
3619
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3619
+        $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3620
+    }
3620 3621
     }
3621
-  }
3622 3622
 }
3623 3623
 
3624 3624
 /**
@@ -3626,48 +3626,48 @@  discard block
 block discarded – undo
3626 3626
  * Find URLs for the old system and update them with Drupal paths
3627 3627
  */
3628 3628
 function boincimport_replace_urls_comment_op($offset, $batch_size, &$context) {
3629
-  // Initialize the batch, if needed
3630
-  if (!isset($context['sandbox']['progress'])) {
3629
+    // Initialize the batch, if needed
3630
+    if (!isset($context['sandbox']['progress'])) {
3631 3631
     $context['sandbox']['progress'] = 0;
3632 3632
     $context['sandbox']['max'] = $batch_size;
3633
-  }
3633
+    }
3634 3634
   
3635
-  $input_format = variable_get('boincimport_input_format', 0);
3635
+    $input_format = variable_get('boincimport_input_format', 0);
3636 3636
   
3637
-  // Get comments to process
3638
-  $comments = db_query('
3637
+    // Get comments to process
3638
+    $comments = db_query('
3639 3639
     SELECT c.cid, c.comment
3640 3640
     FROM {boincimport_temp_post} AS p
3641 3641
     LEFT JOIN {comments} AS c ON p.cid = c.cid
3642 3642
     ORDER BY c.cid
3643 3643
     LIMIT %d,%d',
3644 3644
     $offset, $batch_size
3645
-  );
3645
+    );
3646 3646
   
3647
-  while ($comment = db_fetch_object($comments)) {
3647
+    while ($comment = db_fetch_object($comments)) {
3648 3648
     $updated = FALSE;
3649 3649
     
3650 3650
     // Update URLs in comment contents
3651 3651
     $original_comment = $comment->comment;
3652 3652
     $comment->comment = _boincimport_replace_links($comment->comment);
3653 3653
     if ($comment->comment != $original_comment) {
3654
-      $updated = db_query("
3654
+        $updated = db_query("
3655 3655
         UPDATE {comments}
3656 3656
         SET comment= '%s'
3657 3657
         WHERE cid = %d",
3658 3658
         $comment->comment, $comment->cid
3659
-      );
3659
+        );
3660 3660
     }
3661 3661
     
3662 3662
     $message = '';
3663 3663
     $context['results']['success'][] = $comment->cid;
3664 3664
     if ($updated) {
3665
-      // Store some result for post-processing in the finished callback.
3666
-      $context['results']['comments']['updated'][] = $comment->cid;
3667
-      $message = "Successfully updated comment {$comment->cid}";
3665
+        // Store some result for post-processing in the finished callback.
3666
+        $context['results']['comments']['updated'][] = $comment->cid;
3667
+        $message = "Successfully updated comment {$comment->cid}";
3668 3668
     }
3669 3669
     else {
3670
-      $message = "No changes made to comment {$comment->cid}!";
3670
+        $message = "No changes made to comment {$comment->cid}!";
3671 3671
     }
3672 3672
     
3673 3673
     // Update our progress information.
@@ -3677,12 +3677,12 @@  discard block
 block discarded – undo
3677 3677
 
3678 3678
     // Update the progress for the batch engine
3679 3679
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3680
-      $context['finished'] = 1;
3680
+        $context['finished'] = 1;
3681 3681
     }
3682 3682
     else {
3683
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3683
+        $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3684
+    }
3684 3685
     }
3685
-  }
3686 3686
 }
3687 3687
 
3688 3688
 /**
@@ -3690,47 +3690,47 @@  discard block
 block discarded – undo
3690 3690
  * Find URLs for the old system and update them with Drupal paths
3691 3691
  */
3692 3692
 function boincimport_replace_urls_pm_op($offset, $batch_size, &$context) {
3693
-  // Initialize the batch, if needed
3694
-  if (!isset($context['sandbox']['progress'])) {
3693
+    // Initialize the batch, if needed
3694
+    if (!isset($context['sandbox']['progress'])) {
3695 3695
     $context['sandbox']['progress'] = 0;
3696 3696
     $context['sandbox']['max'] = $batch_size;
3697
-  }
3697
+    }
3698 3698
   
3699
-  $input_format = variable_get('boincimport_input_format', 0);
3699
+    $input_format = variable_get('boincimport_input_format', 0);
3700 3700
   
3701
-  // Get private messages to process
3702
-  $messages = db_query('
3701
+    // Get private messages to process
3702
+    $messages = db_query('
3703 3703
     SELECT pm.mid, pm.body
3704 3704
     FROM {pm_message} pm
3705 3705
     ORDER BY pm.mid
3706 3706
     LIMIT %d,%d',
3707 3707
     $offset, $batch_size
3708
-  );
3708
+    );
3709 3709
   
3710
-  while ($pm = db_fetch_object($messages)) {
3710
+    while ($pm = db_fetch_object($messages)) {
3711 3711
     $updated = FALSE;
3712 3712
     
3713 3713
     // Update URLs in private message body
3714 3714
     $original_pm_body = $pm->body;
3715 3715
     $pm->body = _boincimport_replace_links($pm->body);
3716 3716
     if ($pm->body != $original_pm_body) {
3717
-      $updated = db_query("
3717
+        $updated = db_query("
3718 3718
         UPDATE {pm_message}
3719 3719
         SET body= '%s'
3720 3720
         WHERE mid = %d",
3721 3721
         $pm->body, $pm->mid
3722
-      );
3722
+        );
3723 3723
     }
3724 3724
     
3725 3725
     $message = '';
3726 3726
     $context['results']['success'][] = $pm->mid;
3727 3727
     if ($updated) {
3728
-      // Store some result for post-processing in the finished callback.
3729
-      $context['results']['pm']['updated'][] = $pm->mid;
3730
-      $message = "Successfully updated private message {$pm->mid}";
3728
+        // Store some result for post-processing in the finished callback.
3729
+        $context['results']['pm']['updated'][] = $pm->mid;
3730
+        $message = "Successfully updated private message {$pm->mid}";
3731 3731
     }
3732 3732
     else {
3733
-      $message = "No changes made to private message {$pm->mid}!";
3733
+        $message = "No changes made to private message {$pm->mid}!";
3734 3734
     }
3735 3735
     
3736 3736
     // Update our progress information.
@@ -3740,85 +3740,85 @@  discard block
 block discarded – undo
3740 3740
 
3741 3741
     // Update the progress for the batch engine
3742 3742
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3743
-      $context['finished'] = 1;
3743
+        $context['finished'] = 1;
3744 3744
     }
3745 3745
     else {
3746
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3746
+        $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3747
+    }
3747 3748
     }
3748
-  }
3749 3749
 }
3750 3750
 
3751 3751
 /**
3752 3752
  * Batch 'finished' callback
3753 3753
  */
3754 3754
 function boincimport_replace_urls_finished($success, $results, $operations) {
3755
-  if ($success) {
3755
+    if ($success) {
3756 3756
     // Let's count our successes
3757 3757
     $total_processed = count($results['success']);
3758 3758
     $nodes_updated = count($results['nodes']['updated']);
3759 3759
     $comments_updated = count($results['comments']['updated']);
3760 3760
     $private_messages_updated = count($results['pm']['updated']);
3761 3761
     $message = t(
3762
-      'Successfully processed @count nodes, comments, and private messages (@nodes_updated nodes, @comments_updated comments, and @pm_updated private messages were updated)',
3763
-      array(
3762
+        'Successfully processed @count nodes, comments, and private messages (@nodes_updated nodes, @comments_updated comments, and @pm_updated private messages were updated)',
3763
+        array(
3764 3764
         '@count' => $total_processed,
3765 3765
         '@nodes_updated' => $nodes_updated,
3766 3766
         '@comments_updated' => $comments_updated,
3767 3767
         '@pm_updated' => $private_messages_updated,
3768
-      )
3768
+        )
3769 3769
     );
3770 3770
     if ($private_messages_updated) {
3771
-      watchdog('boincimport',
3771
+        watchdog('boincimport',
3772 3772
         'Updated URLs in these private_messages: @mid_list',
3773 3773
         array(
3774
-          '@mid_list' => implode(', ', $results['pm']['updated']),
3774
+            '@mid_list' => implode(', ', $results['pm']['updated']),
3775 3775
         ),
3776 3776
         WATCHDOG_INFO
3777
-      );
3777
+        );
3778 3778
     }
3779 3779
     if ($comments_updated) {
3780
-      watchdog('boincimport',
3780
+        watchdog('boincimport',
3781 3781
         'Updated URLs in these comments: @cid_list',
3782 3782
         array(
3783
-          '@cid_list' => implode(', ', $results['comments']['updated']),
3783
+            '@cid_list' => implode(', ', $results['comments']['updated']),
3784 3784
         ),
3785 3785
         WATCHDOG_INFO
3786
-      );
3786
+        );
3787 3787
     }
3788 3788
     if ($nodes_updated) {
3789
-      watchdog('boincimport',
3789
+        watchdog('boincimport',
3790 3790
         'Updated URLs in these nodes: @nid_list',
3791 3791
         array(
3792
-          '@nid_list' => implode(', ', $results['nodes']['updated']),
3792
+            '@nid_list' => implode(', ', $results['nodes']['updated']),
3793 3793
         ),
3794 3794
         WATCHDOG_INFO
3795
-      );
3795
+        );
3796 3796
     }
3797 3797
     watchdog('boincimport',
3798
-      'Successfully processed @count nodes, comments, and private messages (@nodes_updated nodes, @comments_updated comments, and @pm_updated private messages were updated)',
3799
-      array(
3798
+        'Successfully processed @count nodes, comments, and private messages (@nodes_updated nodes, @comments_updated comments, and @pm_updated private messages were updated)',
3799
+        array(
3800 3800
         '@count' => $total_processed,
3801 3801
         '@nodes_updated' => $nodes_updated,
3802 3802
         '@comments_updated' => $comments_updated,
3803 3803
         '@pm_updated' => $private_messages_updated,
3804
-      ),
3805
-      WATCHDOG_INFO
3804
+        ),
3805
+        WATCHDOG_INFO
3806 3806
     );
3807 3807
     // Set the replace URLs successful flag in the variable table
3808 3808
     variable_set('boincimport_replace_urls_successful', '1');
3809 3809
     $_SESSION['boincimport_stage_selected'] = 'users';
3810
-  }
3811
-  else {
3810
+    }
3811
+    else {
3812 3812
     // An error occurred.
3813 3813
     // $operations contains the operations that remained unprocessed.
3814 3814
     $error_operation = reset($operations);
3815 3815
     $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
3816
-  }
3817
-  drupal_set_message($message);
3816
+    }
3817
+    drupal_set_message($message);
3818 3818
   
3819
-  // Release the lock on the import process
3820
-  variable_del('boincimport_process_locked');
3821
-  drupal_goto('admin/boinc/import/process');
3819
+    // Release the lock on the import process
3820
+    variable_del('boincimport_process_locked');
3821
+    drupal_goto('admin/boinc/import/process');
3822 3822
 }
3823 3823
 
3824 3824
 
@@ -3830,43 +3830,43 @@  discard block
 block discarded – undo
3830 3830
  * Remove temporary variables, clear caches, etc.
3831 3831
  */
3832 3832
 function boincimport_process_cleanup() {
3833
-  db_set_active('default');
3834
-  
3835
-  variable_del('boincimport_base_url_boinc');
3836
-  variable_del('boincimport_base_url_drupal');
3837
-  variable_del('boincimport_import_user_successful');
3838
-  variable_del('boincimport_import_user_started');
3839
-  variable_del('boincimport_import_team_successful');
3840
-  variable_del('boincimport_import_team_started');
3841
-  variable_del('boincimport_import_category_successful');
3842
-  variable_del('boincimport_replace_url_successful');
3843
-  variable_del('boincimport_import_category_started');
3844
-  variable_del('boincimport_import_topic_successful');
3845
-  variable_del('boincimport_import_topic_started');
3846
-  variable_del('boincimport_import_post_successful');
3847
-  variable_del('boincimport_import_post_started');
3848
-  variable_del('boincimport_team_forum_successful');
3849
-  variable_del('boincimport_team_topic_successful');
3850
-  variable_del('boincimport_team_post_successful');
3851
-  variable_del('boincimport_team_post_started');
3852
-  variable_del('boincimport_ready');
3853
-  variable_del('boincimport_db_url');
3854
-  variable_del('boincimport_tested');
3855
-  variable_del('boincimport_db_configured');
3856
-  variable_del('boincimport_table_prefix');
3857
-  variable_del('boincimport_team_types');
3858
-  variable_del('boincimport_time_limit');
3859
-  variable_del('boincimport_import_lurkers');
3860
-  variable_del('boincimport_import_polls'); 
3861
-  variable_del('boincimport_import_poll_started');
3862
-  variable_del('boincimport_import_poll_successful');
3863
-  variable_del('boincimport_import_pm_successful');
3864
-  variable_del('boincimport_encode');
3865
-  variable_del('boincimport_encoding_phpbb');
3866
-  variable_del('boincimport_encoding_drupal');
3867
-  variable_del('boincimport_version');
3868
-
3869
-  db_query('DELETE FROM {cache}');
3833
+    db_set_active('default');
3834
+  
3835
+    variable_del('boincimport_base_url_boinc');
3836
+    variable_del('boincimport_base_url_drupal');
3837
+    variable_del('boincimport_import_user_successful');
3838
+    variable_del('boincimport_import_user_started');
3839
+    variable_del('boincimport_import_team_successful');
3840
+    variable_del('boincimport_import_team_started');
3841
+    variable_del('boincimport_import_category_successful');
3842
+    variable_del('boincimport_replace_url_successful');
3843
+    variable_del('boincimport_import_category_started');
3844
+    variable_del('boincimport_import_topic_successful');
3845
+    variable_del('boincimport_import_topic_started');
3846
+    variable_del('boincimport_import_post_successful');
3847
+    variable_del('boincimport_import_post_started');
3848
+    variable_del('boincimport_team_forum_successful');
3849
+    variable_del('boincimport_team_topic_successful');
3850
+    variable_del('boincimport_team_post_successful');
3851
+    variable_del('boincimport_team_post_started');
3852
+    variable_del('boincimport_ready');
3853
+    variable_del('boincimport_db_url');
3854
+    variable_del('boincimport_tested');
3855
+    variable_del('boincimport_db_configured');
3856
+    variable_del('boincimport_table_prefix');
3857
+    variable_del('boincimport_team_types');
3858
+    variable_del('boincimport_time_limit');
3859
+    variable_del('boincimport_import_lurkers');
3860
+    variable_del('boincimport_import_polls'); 
3861
+    variable_del('boincimport_import_poll_started');
3862
+    variable_del('boincimport_import_poll_successful');
3863
+    variable_del('boincimport_import_pm_successful');
3864
+    variable_del('boincimport_encode');
3865
+    variable_del('boincimport_encoding_phpbb');
3866
+    variable_del('boincimport_encoding_drupal');
3867
+    variable_del('boincimport_version');
3868
+
3869
+    db_query('DELETE FROM {cache}');
3870 3870
 }
3871 3871
 
3872 3872
 /**
@@ -3874,15 +3874,15 @@  discard block
 block discarded – undo
3874 3874
  */
3875 3875
 
3876 3876
 function boincimport_forum_comment_save(&$edit) {
3877
-  // Here we are building the thread field.  See the comment in comment_render().
3878
-  if ($edit['pid'] == 0) {
3877
+    // Here we are building the thread field.  See the comment in comment_render().
3878
+    if ($edit['pid'] == 0) {
3879 3879
     // This is a comment with no parent comment (depth 0): we start by retrieving
3880 3880
     // the maximum thread level.
3881 3881
     $max = db_result(db_query('SELECT MAX(thread) FROM {comments} WHERE nid = %d', $edit['nid']));
3882 3882
     // Strip the "/" from the end of the thread.
3883 3883
     $max = rtrim($max, '/');
3884 3884
     $thread = int2vancode(vancode2int($max)+1) .'/';
3885
-  } else {
3885
+    } else {
3886 3886
     // This is comment with a parent comment: we increase the part of the thread
3887 3887
     // value at the proper depth.
3888 3888
     $parent = db_fetch_object(db_query('SELECT * FROM {comments} WHERE cid = %d', $edit['pid']));
@@ -3891,71 +3891,71 @@  discard block
 block discarded – undo
3891 3891
     // Get the max value in _this_ thread.
3892 3892
     $max = db_result(db_query("SELECT MAX(thread) FROM {comments} WHERE thread LIKE '%s.%%' AND nid = %d", $parent->thread, $edit['nid']));
3893 3893
     if ($max == '') {
3894
-      // First child of this parent.
3895
-      $thread = $parent->thread .'.'. int2vancode(1) .'/';
3894
+        // First child of this parent.
3895
+        $thread = $parent->thread .'.'. int2vancode(1) .'/';
3896 3896
     } else {
3897
-      // Strip the "/" at the end of the thread.
3898
-      $max = rtrim($max, '/');
3899
-      // We need to get the value at the correct depth.
3900
-      $parts = explode('.', $max);
3901
-      $parent_depth = count(explode('.', $parent->thread));
3902
-      $last = $parts[$parent_depth];
3903
-      // Finally, build the thread field for this new comment.
3904
-      $thread = $parent->thread .'.'. int2vancode(vancode2int($last) + 1) .'/';
3897
+        // Strip the "/" at the end of the thread.
3898
+        $max = rtrim($max, '/');
3899
+        // We need to get the value at the correct depth.
3900
+        $parts = explode('.', $max);
3901
+        $parent_depth = count(explode('.', $parent->thread));
3902
+        $last = $parts[$parent_depth];
3903
+        // Finally, build the thread field for this new comment.
3904
+        $thread = $parent->thread .'.'. int2vancode(vancode2int($last) + 1) .'/';
3905
+    }
3905 3906
     }
3906
-  }
3907 3907
 
3908
-  $status = 0; // 1 - not published, 0 - published
3909
-  $format = variable_get('boincimport_input_format', 0);
3910
-  $score = 0; // 0 default value, comments get higher score depending on the author's roles
3911
-  $users = serialize(array(0 => 1));  // default value for everybody!!
3908
+    $status = 0; // 1 - not published, 0 - published
3909
+    $format = variable_get('boincimport_input_format', 0);
3910
+    $score = 0; // 0 default value, comments get higher score depending on the author's roles
3911
+    $users = serialize(array(0 => 1));  // default value for everybody!!
3912 3912
   
3913
-  if ($edit['uid'] === $user->uid) { // '===' because we want to modify anonymous users too
3913
+    if ($edit['uid'] === $user->uid) { // '===' because we want to modify anonymous users too
3914 3914
     $edit['name'] = $user->name;
3915
-  }
3915
+    }
3916 3916
 
3917
-  $success = db_query("INSERT INTO {comments} (nid, pid, uid, subject, comment, format, hostname, timestamp, status, thread, name) VALUES (%d, %d, %d, '%s', '%s', %d, '%s', %d, %d, '%s', '%s')", $edit['nid'], $edit['pid'], $edit['uid'], $edit['subject'], $edit['comment'], $edit['format'], ip_address(), $edit['timestamp'], $edit['status'], $thread, $edit['name']);
3918
-  if ($success) {
3917
+    $success = db_query("INSERT INTO {comments} (nid, pid, uid, subject, comment, format, hostname, timestamp, status, thread, name) VALUES (%d, %d, %d, '%s', '%s', %d, '%s', %d, %d, '%s', '%s')", $edit['nid'], $edit['pid'], $edit['uid'], $edit['subject'], $edit['comment'], $edit['format'], ip_address(), $edit['timestamp'], $edit['status'], $thread, $edit['name']);
3918
+    if ($success) {
3919 3919
     $edit['cid'] = db_last_insert_id('comments', 'cid');
3920 3920
     _comment_update_node_statistics($edit['nid']);
3921
-  }
3922
-  return $success;
3921
+    }
3922
+    return $success;
3923 3923
 }
3924 3924
 
3925 3925
 /**
3926 3926
  * Strips text of extra phpbb3 markup and if requested, also strips all bbcode from text.
3927 3927
  */
3928 3928
 function _boincimport_strip_bbcode($text) {
3929
-  // Strip the text of extra markup - regular expressions taken from phpbb3 includes/function.php, function get_preg_expression().
3930
-  $match = array(
3929
+    // Strip the text of extra markup - regular expressions taken from phpbb3 includes/function.php, function get_preg_expression().
3930
+    $match = array(
3931 3931
     '#<!\-\- e \-\-><a href="mailto:(.*?)">.*?</a><!\-\- e \-\->#',
3932 3932
     '#<!\-\- l \-\-><a (?:class="[\w-]+" )?href="(.*?)(?:(&amp;|\?)sid=[0-9a-f]{32})?">.*?</a><!\-\- l \-\->#',
3933 3933
     '#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">.*?</a><!\-\- \1 \-\->#',
3934 3934
     '#<!\-\- s(.*?) \-\-><img src="\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#',
3935 3935
     '#<!\-\- .*? \-\->#s',
3936 3936
     '#<.*?>#s',
3937
-  );
3938
-  $replace = array('$1', '$1', '$2', '$1', '', '');
3939
-  $text = preg_replace($match, $replace, $text);
3937
+    );
3938
+    $replace = array('$1', '$1', '$2', '$1', '', '');
3939
+    $text = preg_replace($match, $replace, $text);
3940 3940
 
3941
-  // If BBcode conversion to has been selected, the following will convert the
3942
-  // BBcode to normal html
3943
-  if (variable_get('boincimport_bbcode', 0)) {
3941
+    // If BBcode conversion to has been selected, the following will convert the
3942
+    // BBcode to normal html
3943
+    if (variable_get('boincimport_bbcode', 0)) {
3944 3944
     $input_format = variable_get('boincimport_input_format', 0);
3945 3945
     $text = bbcode_filter('process', 0 , $input_format, $text);
3946
-  }
3947
-  return $text;
3946
+    }
3947
+    return $text;
3948 3948
 }
3949 3949
 
3950 3950
 /**
3951 3951
  * Function to properly encode strings.
3952 3952
  */
3953 3953
 function _boincimport_text_sanitize($text) {
3954
-  $input_format = variable_get('boincimport_input_format', 0);
3955
-  $text = html_entity_decode($text, ENT_QUOTES, 'utf-8');
3956
-  // Be sure the text is filtered for the default input format
3957
-  $text = check_markup($text, $input_format);
3958
-  return $text;
3954
+    $input_format = variable_get('boincimport_input_format', 0);
3955
+    $text = html_entity_decode($text, ENT_QUOTES, 'utf-8');
3956
+    // Be sure the text is filtered for the default input format
3957
+    $text = check_markup($text, $input_format);
3958
+    return $text;
3959 3959
 }
3960 3960
 
3961 3961
 
@@ -3964,25 +3964,25 @@  discard block
 block discarded – undo
3964 3964
  */
3965 3965
 function _boincimport_replace_links($html) {
3966 3966
   
3967
-  $transformer = new BoincImportUrlTransformer();
3968
-  
3969
-  // Update links to posts, threads, and forums
3970
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_thread\.php\?id=(\d+)&postid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformPostLinks'), $html);
3971
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_thread\.php\?id=(\d+)(&\w+=\w*)*?(#(\d+)?)}i', array($transformer, 'transformOldPostLinks'), $html);
3972
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_thread\.php\?id=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformTopicLinks'), $html);
3973
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_forum\.php\?id=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformForumLinks'), $html);
3974
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)show_user\.php\?userid=(\d+)((&\w+=\w*)+)?}i', array($transformer, 'transformUserLinks'), $html);
3975
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)workunit\.php\?wuid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformWorkUnitLinks'), $html);
3976
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)result\.php\?resultid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformResultLinks'), $html);
3977
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)results\.php\?userid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformUserResultsLinks'), $html);
3978
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)results\.php\?hostid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformHostResultsLinks'), $html);
3979
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)show_host_detail\.php\?hostid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformHostLinks'), $html);
3980
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)hosts_user\.php\?userid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformUserHostsLinks'), $html);
3981
-  
3982
-  // Update any links to the top level index
3983
-  $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_index.php}i', array($transformer, 'transformForumIndexLinks'), $html);
3984
-  
3985
-  return $html;
3967
+    $transformer = new BoincImportUrlTransformer();
3968
+  
3969
+    // Update links to posts, threads, and forums
3970
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_thread\.php\?id=(\d+)&postid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformPostLinks'), $html);
3971
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_thread\.php\?id=(\d+)(&\w+=\w*)*?(#(\d+)?)}i', array($transformer, 'transformOldPostLinks'), $html);
3972
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_thread\.php\?id=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformTopicLinks'), $html);
3973
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_forum\.php\?id=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformForumLinks'), $html);
3974
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)show_user\.php\?userid=(\d+)((&\w+=\w*)+)?}i', array($transformer, 'transformUserLinks'), $html);
3975
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)workunit\.php\?wuid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformWorkUnitLinks'), $html);
3976
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)result\.php\?resultid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformResultLinks'), $html);
3977
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)results\.php\?userid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformUserResultsLinks'), $html);
3978
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)results\.php\?hostid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformHostResultsLinks'), $html);
3979
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)show_host_detail\.php\?hostid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformHostLinks'), $html);
3980
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)hosts_user\.php\?userid=(\d+)(&\w+=\w*)*?}i', array($transformer, 'transformUserHostsLinks'), $html);
3981
+  
3982
+    // Update any links to the top level index
3983
+    $html = preg_replace_callback('{(?:(http|https)://([^\s]*?)|href="(?:/)?)forum_index.php}i', array($transformer, 'transformForumIndexLinks'), $html);
3984
+  
3985
+    return $html;
3986 3986
 }
3987 3987
 
3988 3988
 /**
@@ -3990,14 +3990,14 @@  discard block
 block discarded – undo
3990 3990
  */
3991 3991
 class BoincImportUrlTransformer {
3992 3992
   
3993
-  var $basePath;
3994
-  var $boincDomain;
3995
-  var $drupalDomain;
3993
+    var $basePath;
3994
+    var $boincDomain;
3995
+    var $drupalDomain;
3996 3996
   
3997
-  /**
3998
-   * Constructor
3999
-   */
4000
-  function BoincImportUrlTransformer() {
3997
+    /**
3998
+     * Constructor
3999
+     */
4000
+    function BoincImportUrlTransformer() {
4001 4001
     global $base_url;
4002 4002
     global $base_path;
4003 4003
     $boinc_base_urls = variable_get('boincimport_base_url_boinc', '');
@@ -4007,203 +4007,203 @@  discard block
 block discarded – undo
4007 4007
     $this->boincDomains = array();
4008 4008
     $boinc_base_urls = preg_split('/\s+/', $boinc_base_urls);
4009 4009
     foreach ($boinc_base_urls as $url) {
4010
-      $domain = parse_url($url, PHP_URL_HOST);
4011
-      if ($domain) {
4010
+        $domain = parse_url($url, PHP_URL_HOST);
4011
+        if ($domain) {
4012 4012
         $this->boincDomains[$domain] = TRUE;
4013
-      }
4013
+        }
4014 4014
     }
4015 4015
     if (!$this->boincDomains) {
4016
-      watchdog('boincimport', 'No valid BOINC base URLs found to transform!',
4016
+        watchdog('boincimport', 'No valid BOINC base URLs found to transform!',
4017 4017
         array(), WATCHDOG_WARNING); 
4018 4018
     }
4019
-  }
4019
+    }
4020 4020
   
4021
-  /**
4022
-   * Get what the new base URL should be (needed for every transformation)
4023
-   */
4024
-  function getNewBaseUrl($matches) {
4021
+    /**
4022
+     * Get what the new base URL should be (needed for every transformation)
4023
+     */
4024
+    function getNewBaseUrl($matches) {
4025 4025
     $http = $matches[1];
4026 4026
     $domain = trim($matches[2], '/');
4027 4027
     if ($http) {
4028
-      if (isset($this->boincDomains[$domain])) {
4028
+        if (isset($this->boincDomains[$domain])) {
4029 4029
         // This is a URL configured to be transformed
4030 4030
         return "{$http}://{$this->drupalDomain}{$this->basePath}";
4031
-      }
4032
-      else {
4031
+        }
4032
+        else {
4033 4033
         // This URL should not be transformed
4034 4034
         return NULL;
4035
-      }
4035
+        }
4036 4036
     }
4037 4037
     else {
4038
-      // This is a relative URL
4039
-      return $this->basePath;
4038
+        // This is a relative URL
4039
+        return $this->basePath;
4040
+    }
4040 4041
     }
4041
-  }
4042 4042
   
4043
-  /**
4044
-   * Replace links to specific posts. If the given post is the first in the
4045
-   * thread, it is a topic node in Drupal, not a comment.
4046
-   */
4047
-  function transformPostLinks($matches) {
4043
+    /**
4044
+     * Replace links to specific posts. If the given post is the first in the
4045
+     * thread, it is a topic node in Drupal, not a comment.
4046
+     */
4047
+    function transformPostLinks($matches) {
4048 4048
     $link = $matches[0];
4049 4049
     $newBaseUrl = $this->getNewBaseUrl($matches);
4050 4050
     if ($newBaseUrl !== NULL) {
4051
-      $id = db_result(db_query('
4051
+        $id = db_result(db_query('
4052 4052
         SELECT p.cid
4053 4053
         FROM {boincimport_temp_post} p
4054 4054
         WHERE p.post_id = %d',
4055 4055
         $matches[4]
4056
-      ));
4057
-      if ($id) {
4056
+        ));
4057
+        if ($id) {
4058 4058
         $link = "{$newBaseUrl}goto/comment/{$id}";
4059
-      }
4060
-      else {
4059
+        }
4060
+        else {
4061 4061
         // This post is not in the post import table, so it's probably a topic
4062 4062
         $link = $this->transformTopicLinks($matches);
4063
-      }
4063
+        }
4064 4064
     }
4065 4065
     return $link;
4066
-  }
4066
+    }
4067 4067
   
4068
-  /**
4069
-   * Replace links that include anchors to specific posts. If the given post is
4070
-   * the first in the thread, it is a topic node in Drupal, not a comment.
4071
-   */
4072
-  function transformOldPostLinks($matches) {
4068
+    /**
4069
+     * Replace links that include anchors to specific posts. If the given post is
4070
+     * the first in the thread, it is a topic node in Drupal, not a comment.
4071
+     */
4072
+    function transformOldPostLinks($matches) {
4073 4073
     $link = $matches[0];
4074 4074
     $newBaseUrl = $this->getNewBaseUrl($matches);
4075 4075
     if ($newBaseUrl !== NULL) {
4076
-      $id = db_result(db_query('
4076
+        $id = db_result(db_query('
4077 4077
         SELECT p.cid
4078 4078
         FROM {boincimport_temp_post} p
4079 4079
         WHERE p.post_id = %d',
4080 4080
         $matches[6]
4081
-      ));
4082
-      if ($id) {
4081
+        ));
4082
+        if ($id) {
4083 4083
         $link = "{$newBaseUrl}goto/comment/{$id}";
4084
-      }
4085
-      else {
4084
+        }
4085
+        else {
4086 4086
         // This post is not in the post import table, so it's probably a topic
4087 4087
         $link = $this->transformTopicLinks($matches);
4088
-      }
4088
+        }
4089 4089
     }
4090 4090
     return $link;
4091
-  }
4091
+    }
4092 4092
   
4093
-  function transformTopicLinks($matches) {
4093
+    function transformTopicLinks($matches) {
4094 4094
     $link = $matches[0];
4095 4095
     $newBaseUrl = $this->getNewBaseUrl($matches);
4096 4096
     if ($newBaseUrl !== NULL) {
4097
-      $id = db_result(db_query('
4097
+        $id = db_result(db_query('
4098 4098
         SELECT nid
4099 4099
         FROM {boincimport_temp_topic}
4100 4100
         WHERE topic_id = %d',
4101 4101
         $matches[3]
4102
-      ));
4103
-      $link = "{$newBaseUrl}node/{$id}";
4102
+        ));
4103
+        $link = "{$newBaseUrl}node/{$id}";
4104 4104
     }
4105 4105
     return $link;
4106
-  }
4106
+    }
4107 4107
 
4108
-  function transformForumLinks($matches) {
4108
+    function transformForumLinks($matches) {
4109 4109
     $link = $matches[0];
4110 4110
     $newBaseUrl = $this->getNewBaseUrl($matches);
4111 4111
     if ($newBaseUrl !== NULL) {
4112
-      $forum = db_fetch_object(db_query('
4112
+        $forum = db_fetch_object(db_query('
4113 4113
         SELECT tid
4114 4114
         FROM {boincimport_temp_forum}
4115 4115
         WHERE forum_id = %d',
4116 4116
         $matches[3]
4117
-      ));
4118
-      $link = "{$newBaseUrl}community/forum/{$forum->tid}";
4117
+        ));
4118
+        $link = "{$newBaseUrl}community/forum/{$forum->tid}";
4119 4119
     }
4120 4120
     return $link;
4121
-  }
4121
+    }
4122 4122
 
4123
-  function transformUserLinks($matches) {
4123
+    function transformUserLinks($matches) {
4124 4124
     $link = $matches[0];
4125 4125
     $newBaseUrl = $this->getNewBaseUrl($matches);
4126 4126
     if ($newBaseUrl !== NULL) {
4127
-      // Make sure this isn't an RPC link (no need to transform those)
4128
-      if (!$matches[5]) {
4127
+        // Make sure this isn't an RPC link (no need to transform those)
4128
+        if (!$matches[5]) {
4129 4129
         // TODO: This regex doesn't seem to capture the format=xml part of the
4130 4130
         // URL, making it impossible to distinguish if this is an RPC or not...
4131 4131
         //watchdog('DEBUG', 'matches: @m', array('@m' => print_r($matches,true)), WATCHDOG_DEBUG);
4132 4132
         $uid = boincuser_lookup_uid($matches[3]);
4133 4133
         $link = "{$newBaseUrl}account/{$uid}";
4134
-      }
4134
+        }
4135 4135
     }
4136 4136
     return $link;
4137
-  }
4137
+    }
4138 4138
 
4139
-  function transformWorkUnitLinks($matches) {
4139
+    function transformWorkUnitLinks($matches) {
4140 4140
     $link = $matches[0];
4141 4141
     $newBaseUrl = $this->getNewBaseUrl($matches);
4142 4142
     if ($newBaseUrl !== NULL) {
4143
-      $id = $matches[3];
4144
-      $link = "{$newBaseUrl}workunit/{$id}";
4143
+        $id = $matches[3];
4144
+        $link = "{$newBaseUrl}workunit/{$id}";
4145 4145
     }
4146 4146
     return $link;
4147
-  }
4147
+    }
4148 4148
 
4149
-  function transformResultLinks($matches) {
4149
+    function transformResultLinks($matches) {
4150 4150
     $link = $matches[0];
4151 4151
     $newBaseUrl = $this->getNewBaseUrl($matches);
4152 4152
     if ($newBaseUrl !== NULL) {
4153
-      $id = $matches[3];
4154
-      $link = "{$newBaseUrl}task/{$id}";
4153
+        $id = $matches[3];
4154
+        $link = "{$newBaseUrl}task/{$id}";
4155 4155
     }
4156 4156
     return $link;
4157
-  }
4157
+    }
4158 4158
 
4159
-  function transformHostResultsLinks($matches) {
4159
+    function transformHostResultsLinks($matches) {
4160 4160
     $link = $matches[0];
4161 4161
     $newBaseUrl = $this->getNewBaseUrl($matches);
4162 4162
     if ($newBaseUrl !== NULL) {
4163
-      $id = $matches[3];
4164
-      $link = "{$newBaseUrl}host/{$id}/tasks";
4163
+        $id = $matches[3];
4164
+        $link = "{$newBaseUrl}host/{$id}/tasks";
4165 4165
     }
4166 4166
     return $link;
4167
-  }
4167
+    }
4168 4168
   
4169
-  function transformUserResultsLinks($matches) {
4169
+    function transformUserResultsLinks($matches) {
4170 4170
     $link = $matches[0];
4171 4171
     $newBaseUrl = $this->getNewBaseUrl($matches);
4172 4172
     if ($newBaseUrl !== NULL) {
4173
-      $link = "{$newBaseUrl}account/tasks";
4173
+        $link = "{$newBaseUrl}account/tasks";
4174 4174
     }
4175 4175
     return $link;
4176
-  }
4176
+    }
4177 4177
   
4178
-  function transformHostLinks($matches) {
4178
+    function transformHostLinks($matches) {
4179 4179
     $link = $matches[0];
4180 4180
     $newBaseUrl = $this->getNewBaseUrl($matches);
4181 4181
     if ($newBaseUrl !== NULL) {
4182
-      $id = $matches[3];
4183
-      $link = "{$newBaseUrl}host/{$id}";
4182
+        $id = $matches[3];
4183
+        $link = "{$newBaseUrl}host/{$id}";
4184 4184
     }
4185 4185
     return $link;
4186
-  }
4186
+    }
4187 4187
   
4188
-  function transformUserHostsLinks($matches) {
4188
+    function transformUserHostsLinks($matches) {
4189 4189
     $link = $matches[0];
4190 4190
     $newBaseUrl = $this->getNewBaseUrl($matches);
4191 4191
     if ($newBaseUrl !== NULL) {
4192
-      $uid = boincuser_lookup_uid($matches[3]);
4193
-      if ($uid) {
4192
+        $uid = boincuser_lookup_uid($matches[3]);
4193
+        if ($uid) {
4194 4194
         $link = "{$newBaseUrl}account/{$uid}/computers";
4195
-      }
4195
+        }
4196 4196
     }
4197 4197
     return $link;
4198
-  }
4198
+    }
4199 4199
   
4200
-  function transformForumIndexLinks($matches) {
4200
+    function transformForumIndexLinks($matches) {
4201 4201
     $link = $matches[0];
4202 4202
     $newBaseUrl = $this->getNewBaseUrl($matches);
4203 4203
     if ($newBaseUrl !== NULL) {
4204
-      $link = "{$newBaseUrl}community/forum";
4204
+        $link = "{$newBaseUrl}community/forum";
4205 4205
     }
4206 4206
     return $link;
4207
-  }
4207
+    }
4208 4208
 
4209 4209
 }
Please login to merge, or discard this patch.
Switch Indentation   +109 added lines, -109 removed lines patch added patch discarded remove patch
@@ -300,125 +300,125 @@
 block discarded – undo
300 300
   }
301 301
   
302 302
   switch ($form_state['values']['import']) {
303
-    case 'users':
304
-      boincimport_users();
305
-      break;
306
-
307
-    case 'teams':
308
-      boincimport_teams();
309
-      if (!variable_get('boincimport_import_team_successful', 0)) {
310
-        $_SESSION['boincimport_stage_selected'] = 'teams';
311
-      }
312
-      else {
313
-        $_SESSION['boincimport_stage_selected'] = 'friends';
314
-      }
315
-      break;
303
+  case 'users':
304
+    boincimport_users();
305
+    break;
316 306
 
317
-    case 'friends':
318
-      boincimport_friends();
319
-      if (!variable_get('boincimport_import_friend_successful', 0)) {
320
-        $_SESSION['boincimport_stage_selected'] = 'friends';
321
-      }
322
-      else {
323
-        $_SESSION['boincimport_stage_selected'] = 'preferences';
324
-      }
325
-      break;
307
+  case 'teams':
308
+    boincimport_teams();
309
+    if (!variable_get('boincimport_import_team_successful', 0)) {
310
+      $_SESSION['boincimport_stage_selected'] = 'teams';
311
+    }
312
+    else {
313
+      $_SESSION['boincimport_stage_selected'] = 'friends';
314
+    }
315
+    break;
326 316
 
327
-    case 'preferences':
328
-      boincimport_preferences();
329
-      if (!variable_get('boincimport_import_preferences_successful', 0)) {
330
-        $_SESSION['boincimport_stage_selected'] = 'preferences';
331
-      }
332
-      else {
333
-        $_SESSION['boincimport_stage_selected'] = 'private messages';
334
-      }
335
-      break;
317
+  case 'friends':
318
+    boincimport_friends();
319
+    if (!variable_get('boincimport_import_friend_successful', 0)) {
320
+      $_SESSION['boincimport_stage_selected'] = 'friends';
321
+    }
322
+    else {
323
+      $_SESSION['boincimport_stage_selected'] = 'preferences';
324
+    }
325
+    break;
336 326
 
337
-    case 'private messages':
338
-      boincimport_private_msgs();
339
-      if (!variable_get('boincimport_import_private_msg_successful', 0)) {
340
-        $_SESSION['boincimport_stage_selected'] = 'private messages';
341
-      }
342
-      else {
343
-        $_SESSION['boincimport_stage_selected'] = 'categories';
344
-      }
345
-      break;
327
+  case 'preferences':
328
+    boincimport_preferences();
329
+    if (!variable_get('boincimport_import_preferences_successful', 0)) {
330
+      $_SESSION['boincimport_stage_selected'] = 'preferences';
331
+    }
332
+    else {
333
+      $_SESSION['boincimport_stage_selected'] = 'private messages';
334
+    }
335
+    break;
346 336
 
347
-    case 'categories':
348
-      boincimport_forum_categories();
349
-      if (!variable_get('boincimport_import_category_successful', 0)) {
350
-        $_SESSION['boincimport_stage_selected'] = 'categories';
351
-      }
352
-      else {
353
-        $_SESSION['boincimport_stage_selected'] = 'topics';
354
-      }
355
-      break;
337
+  case 'private messages':
338
+    boincimport_private_msgs();
339
+    if (!variable_get('boincimport_import_private_msg_successful', 0)) {
340
+      $_SESSION['boincimport_stage_selected'] = 'private messages';
341
+    }
342
+    else {
343
+      $_SESSION['boincimport_stage_selected'] = 'categories';
344
+    }
345
+    break;
356 346
 
357
-    case 'topics':      
358
-      boincimport_forum_topics();
359
-      if (!variable_get('boincimport_import_topic_successful', 0)) {
360
-        $_SESSION['boincimport_stage_selected'] = 'topics';
361
-      }
362
-      else {
363
-        $_SESSION['boincimport_stage_selected'] = 'posts';
364
-      }
365
-      break;
347
+  case 'categories':
348
+    boincimport_forum_categories();
349
+    if (!variable_get('boincimport_import_category_successful', 0)) {
350
+      $_SESSION['boincimport_stage_selected'] = 'categories';
351
+    }
352
+    else {
353
+      $_SESSION['boincimport_stage_selected'] = 'topics';
354
+    }
355
+    break;
356
+
357
+  case 'topics':      
358
+    boincimport_forum_topics();
359
+    if (!variable_get('boincimport_import_topic_successful', 0)) {
360
+      $_SESSION['boincimport_stage_selected'] = 'topics';
361
+    }
362
+    else {
363
+      $_SESSION['boincimport_stage_selected'] = 'posts';
364
+    }
365
+    break;
366 366
       
367
-    case 'posts':
368
-      boincimport_forum_posts();
369
-      if (!variable_get('boincimport_import_post_successful', 0)) {
370
-        $_SESSION['boincimport_stage_selected'] = 'posts';
371
-      }
372
-      else {
373
-        $_SESSION['boincimport_stage_selected'] = 'url';
374
-      }
375
-      break;
367
+  case 'posts':
368
+    boincimport_forum_posts();
369
+    if (!variable_get('boincimport_import_post_successful', 0)) {
370
+      $_SESSION['boincimport_stage_selected'] = 'posts';
371
+    }
372
+    else {
373
+      $_SESSION['boincimport_stage_selected'] = 'url';
374
+    }
375
+    break;
376 376
 
377
-    case 'team forums':
378
-      boincimport_team_forums();
379
-      if (!variable_get('boincimport_team_forum_successful', 0)) {
380
-        $_SESSION['boincimport_stage_selected'] = 'team forums';
381
-      }
382
-      else {
383
-        $_SESSION['boincimport_stage_selected'] = 'team topics';
384
-      }
385
-      break;
377
+  case 'team forums':
378
+    boincimport_team_forums();
379
+    if (!variable_get('boincimport_team_forum_successful', 0)) {
380
+      $_SESSION['boincimport_stage_selected'] = 'team forums';
381
+    }
382
+    else {
383
+      $_SESSION['boincimport_stage_selected'] = 'team topics';
384
+    }
385
+    break;
386 386
 
387
-    case 'team topics':      
388
-      boincimport_team_forum_topics();
389
-      if (!variable_get('boincimport_team_topic_successful', 0)) {
390
-        $_SESSION['boincimport_stage_selected'] = 'team topics';
391
-      }
392
-      else {
393
-        $_SESSION['boincimport_stage_selected'] = 'team posts';
394
-      }
395
-      break;
387
+  case 'team topics':      
388
+    boincimport_team_forum_topics();
389
+    if (!variable_get('boincimport_team_topic_successful', 0)) {
390
+      $_SESSION['boincimport_stage_selected'] = 'team topics';
391
+    }
392
+    else {
393
+      $_SESSION['boincimport_stage_selected'] = 'team posts';
394
+    }
395
+    break;
396 396
       
397
-    case 'team posts':
398
-      boincimport_team_forum_posts();
399
-      if (!variable_get('boincimport_team_post_successful', 0)) {
400
-        $_SESSION['boincimport_stage_selected'] = 'team posts';
401
-      }
402
-      else {
403
-        $_SESSION['boincimport_stage_selected'] = 'url';
404
-      }
405
-      break;
397
+  case 'team posts':
398
+    boincimport_team_forum_posts();
399
+    if (!variable_get('boincimport_team_post_successful', 0)) {
400
+      $_SESSION['boincimport_stage_selected'] = 'team posts';
401
+    }
402
+    else {
403
+      $_SESSION['boincimport_stage_selected'] = 'url';
404
+    }
405
+    break;
406 406
 
407
-    case 'url':
408
-      boincimport_replace_urls();
409
-      if (!variable_get('boincimport_replace_url_successful', 0)) {
410
-        $_SESSION['boincimport_stage_selected'] = 'url';
411
-      }
412
-      else {
413
-        drupal_set_message('Congratulations.  Import Finished');
414
-        drupal_set_message('Please visit the '. l('Post migration configuration', 'admin/boinc/import/post_configuration') .' page');
415
-        watchdog('boincimport', 'Import process is complete', array(), WATCHDOG_INFO); 
416
-        unset($_SESSION['boincimport_stage_selected']);
417
-      }
418
-      break;
419
-    default:
420
-      $_SESSION['boincimport_stage_selected'] = 'users';
421
-      break;
407
+  case 'url':
408
+    boincimport_replace_urls();
409
+    if (!variable_get('boincimport_replace_url_successful', 0)) {
410
+      $_SESSION['boincimport_stage_selected'] = 'url';
411
+    }
412
+    else {
413
+      drupal_set_message('Congratulations.  Import Finished');
414
+      drupal_set_message('Please visit the '. l('Post migration configuration', 'admin/boinc/import/post_configuration') .' page');
415
+      watchdog('boincimport', 'Import process is complete', array(), WATCHDOG_INFO); 
416
+      unset($_SESSION['boincimport_stage_selected']);
417
+    }
418
+    break;
419
+  default:
420
+    $_SESSION['boincimport_stage_selected'] = 'users';
421
+    break;
422 422
   }
423 423
 }
424 424
 
Please login to merge, or discard this patch.
Spacing   +77 added lines, -77 removed lines patch added patch discarded remove patch
@@ -105,8 +105,8 @@  discard block
 block discarded – undo
105 105
   $boinc_db_url = (is_array($db_url)) ? (isset($db_url['boinc']) ? $db_url['boinc'] : $db_url['default']) : $db_url;
106 106
   variable_set('boincimport_db_url', $boinc_db_url);
107 107
   variable_set('boincimport_ready', 0);
108
-  return '<p>'. t('The BOINC database URL has been reset. You may now <a href="@configlink">go back to the configuration page</a>.',
109
-      array('@configlink' => url('admin/boinc/import/settings'))) .'</p>';
108
+  return '<p>'.t('The BOINC database URL has been reset. You may now <a href="@configlink">go back to the configuration page</a>.',
109
+      array('@configlink' => url('admin/boinc/import/settings'))).'</p>';
110 110
 }
111 111
 
112 112
 /**
@@ -114,18 +114,18 @@  discard block
 block discarded – undo
114 114
  */
115 115
 function boincimport_unlock() {
116 116
   variable_del('boincimport_process_locked');
117
-  return '<p>'. t('The BOINC data import process has been unlocked. You may
117
+  return '<p>'.t('The BOINC data import process has been unlocked. You may
118 118
     now !proceed_with_import.', array(
119 119
       '!proceed_with_import' => l(t('proceed with the import'),
120 120
         'admin/boinc/import/process')
121
-    )) .'</p>';
121
+    )).'</p>';
122 122
 }
123 123
 
124 124
 /**
125 125
  * Callback admin/boinc/import/cleanup
126 126
  */
127 127
 function boincimport_cleanup() {
128
-  return boincimport_process_cleanup() .'<p>'. t('Drupal database cleaned.') .'</p>';
128
+  return boincimport_process_cleanup().'<p>'.t('Drupal database cleaned.').'</p>';
129 129
 }
130 130
 
131 131
 /**
@@ -138,7 +138,7 @@  discard block
 block discarded – undo
138 138
  * fails, the process will die() which is a bit too much since we only
139 139
  * want to test. Therefore, the test part of the code is not used, now.
140 140
  */
141
-function _boincimport_db_connect($test= 0) {
141
+function _boincimport_db_connect($test = 0) {
142 142
   global $db_url;
143 143
   $db_ready = variable_get('boincimport_db_configured', 1);
144 144
   if (!$db_ready) {
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
       $db_url2['default'] = $db_url;
149 149
     }
150 150
     $db_url2['boinc'] = variable_get('boincimport_db_url', $db_url);
151
-    $GLOBALS['db_url'] =& $db_url2;
151
+    $GLOBALS['db_url'] = & $db_url2;
152 152
     if ($test) {
153 153
       if (!db_connect($db_url2['boinc'])) {
154 154
         return 0;
@@ -171,10 +171,10 @@  discard block
 block discarded – undo
171 171
   $result = module_exists($module);
172 172
   $out['result'] = $result;
173 173
   if ($result == 1) {
174
-    $out['html'] .= '<li>'. t('Module %module is enabled. OK!', array('%module' => $module)) .'</li>';
174
+    $out['html'] .= '<li>'.t('Module %module is enabled. OK!', array('%module' => $module)).'</li>';
175 175
   }
176 176
   else {
177
-    $out['html'] .= '<li><span class="marker">'. t('Module %module is disabled.', array('%module' => $module)) .'</span></li>';
177
+    $out['html'] .= '<li><span class="marker">'.t('Module %module is disabled.', array('%module' => $module)).'</span></li>';
178 178
   }
179 179
   $out['html'] .= '</ul>';
180 180
   return $out;
@@ -187,32 +187,32 @@  discard block
 block discarded – undo
187 187
  *   $out['html'] = formatted html.
188 188
  *   $out['result'] = boolean.
189 189
  */
190
-function _boincimport_check_tables($tables = array(), $db = 'default' , $prefix = 1) {
190
+function _boincimport_check_tables($tables = array(), $db = 'default', $prefix = 1) {
191 191
   _boincimport_db_connect();
192 192
 
193 193
   $out['html'] = '<ul>';
194
-  $out['result']= 1;
194
+  $out['result'] = 1;
195 195
   foreach ($tables as $table) {
196 196
     if ($prefix) {
197
-      $table = db_prefix_tables('{'. $table .'}');
197
+      $table = db_prefix_tables('{'.$table.'}');
198 198
     }  
199 199
 
200 200
     db_set_active($db);
201 201
     if ($GLOBALS['db_type'] == 'pgsql') {
202 202
       // adapt from db_table_exists in database.pgsql.inc
203
-      $result = (bool) db_result(db_query("SELECT COUNT(*) FROM pg_class WHERE relname = '%s'", $table));
203
+      $result = (bool)db_result(db_query("SELECT COUNT(*) FROM pg_class WHERE relname = '%s'", $table));
204 204
     }
205 205
     else {
206 206
       // adapt from db_table_exists in database.mysql.inc
207
-      $result = (bool) db_fetch_object(db_query("SHOW TABLES LIKE '%s'", $table));
207
+      $result = (bool)db_fetch_object(db_query("SHOW TABLES LIKE '%s'", $table));
208 208
     }
209 209
     db_set_active('default');
210 210
     if ($result) {
211
-      $out['html'] .= '<li>'. t('Table %table: OK!', array('%table' => $table)) .'</li>';
211
+      $out['html'] .= '<li>'.t('Table %table: OK!', array('%table' => $table)).'</li>';
212 212
     }
213 213
     else {
214
-      $out['html'] .= '<li><span class="marker">'. t('Table <strong>%table</strong> does not exist!', array('%table' => $table)) .'</span></li>';
215
-      $out['result']= 0;
214
+      $out['html'] .= '<li><span class="marker">'.t('Table <strong>%table</strong> does not exist!', array('%table' => $table)).'</span></li>';
215
+      $out['result'] = 0;
216 216
     }
217 217
   }
218 218
   $out['html'] .= '</ul>';
@@ -226,7 +226,7 @@  discard block
 block discarded – undo
226 226
   boinc_get_path();
227 227
   
228 228
   if (!variable_get('boincimport_ready', 0)) {
229
-    return '<p>'. t('You cannot import the data now. Please <a href="@settings">complete the setup first</a>', array('@settings' => url('admin/boinc/import/settings'))) .'</p>';
229
+    return '<p>'.t('You cannot import the data now. Please <a href="@settings">complete the setup first</a>', array('@settings' => url('admin/boinc/import/settings'))).'</p>';
230 230
   }
231 231
 
232 232
   $output = 'BOINC import process form';
@@ -236,7 +236,7 @@  discard block
 block discarded – undo
236 236
 
237 237
 function boincimport_process_form() {
238 238
   $form = array();
239
-  _boincimport_db_connect() ;
239
+  _boincimport_db_connect();
240 240
   // Causes problems with form api redirect
241 241
   //ini_set('display_errors', TRUE);
242 242
 
@@ -411,7 +411,7 @@  discard block
 block discarded – undo
411 411
       }
412 412
       else {
413 413
         drupal_set_message('Congratulations.  Import Finished');
414
-        drupal_set_message('Please visit the '. l('Post migration configuration', 'admin/boinc/import/post_configuration') .' page');
414
+        drupal_set_message('Please visit the '.l('Post migration configuration', 'admin/boinc/import/post_configuration').' page');
415 415
         watchdog('boincimport', 'Import process is complete', array(), WATCHDOG_INFO); 
416 416
         unset($_SESSION['boincimport_stage_selected']);
417 417
       }
@@ -632,7 +632,7 @@  discard block
 block discarded – undo
632 632
     $context['finished'] = 1;
633 633
   }
634 634
   else {
635
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
635
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
636 636
   }
637 637
 }
638 638
 
@@ -661,7 +661,7 @@  discard block
 block discarded – undo
661 661
     // An error occurred.
662 662
     // $operations contains the operations that remained unprocessed.
663 663
     $error_operation = reset($operations);
664
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
664
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
665 665
   }
666 666
   drupal_set_message($message);
667 667
   
@@ -845,7 +845,7 @@  discard block
 block discarded – undo
845 845
     $context['finished'] = 1;
846 846
   }
847 847
   else {
848
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
848
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
849 849
   }
850 850
 }
851 851
 
@@ -872,7 +872,7 @@  discard block
 block discarded – undo
872 872
     // An error occurred.
873 873
     // $operations contains the operations that remained unprocessed.
874 874
     $error_operation = reset($operations);
875
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
875
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
876 876
   }
877 877
   drupal_set_message($message);
878 878
   
@@ -1018,7 +1018,7 @@  discard block
 block discarded – undo
1018 1018
     $context['finished'] = 1;
1019 1019
   }
1020 1020
   else {
1021
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1021
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
1022 1022
   }
1023 1023
 }
1024 1024
 
@@ -1046,7 +1046,7 @@  discard block
 block discarded – undo
1046 1046
     // An error occurred.
1047 1047
     // $operations contains the operations that remained unprocessed.
1048 1048
     $error_operation = reset($operations);
1049
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1049
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
1050 1050
   }
1051 1051
   drupal_set_message($message);
1052 1052
   
@@ -1202,7 +1202,7 @@  discard block
 block discarded – undo
1202 1202
     $context['finished'] = 1;
1203 1203
   }
1204 1204
   else {
1205
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1205
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
1206 1206
   }
1207 1207
 }
1208 1208
 
@@ -1231,7 +1231,7 @@  discard block
 block discarded – undo
1231 1231
     // An error occurred.
1232 1232
     // $operations contains the operations that remained unprocessed.
1233 1233
     $error_operation = reset($operations);
1234
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1234
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
1235 1235
   }
1236 1236
   drupal_set_message($message);
1237 1237
   
@@ -1381,7 +1381,7 @@  discard block
 block discarded – undo
1381 1381
     $context['finished'] = 1;
1382 1382
   }
1383 1383
   else {
1384
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1384
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
1385 1385
   }
1386 1386
 }
1387 1387
 
@@ -1408,7 +1408,7 @@  discard block
 block discarded – undo
1408 1408
     // An error occurred.
1409 1409
     // $operations contains the operations that remained unprocessed.
1410 1410
     $error_operation = reset($operations);
1411
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1411
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
1412 1412
   }
1413 1413
   drupal_set_message($message);
1414 1414
   
@@ -1709,7 +1709,7 @@  discard block
 block discarded – undo
1709 1709
     $context['finished'] = 1;
1710 1710
   }
1711 1711
   else {
1712
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1712
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
1713 1713
   }
1714 1714
 }
1715 1715
 
@@ -1787,7 +1787,7 @@  discard block
 block discarded – undo
1787 1787
     $context['finished'] = 1;
1788 1788
   }
1789 1789
   else {
1790
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1790
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
1791 1791
   }
1792 1792
 }
1793 1793
 
@@ -1800,34 +1800,34 @@  discard block
 block discarded – undo
1800 1800
   $forum_perms = array();
1801 1801
   $role_map = array_flip(user_roles());
1802 1802
   $forum_perms[$role_map['anonymous user']] = array(
1803
-    'view' => (int) !$hidden,
1803
+    'view' => (int)!$hidden,
1804 1804
     'update' => 0,
1805 1805
     'delete' => 0,
1806 1806
     'create' => 0,
1807 1807
   );
1808 1808
   $forum_perms[$role_map['authenticated user']] = array(
1809
-    'view' => (int) !$hidden,
1809
+    'view' => (int)!$hidden,
1810 1810
     'update' => 0,
1811 1811
     'delete' => 0,
1812 1812
     'create' => 0,
1813 1813
   );
1814 1814
   $forum_perms[$role_map['community member']] = array(
1815
-    'view' => (int) !$hidden,
1815
+    'view' => (int)!$hidden,
1816 1816
     'update' => 0,
1817 1817
     'delete' => 0,
1818
-    'create' => (int) $open,
1818
+    'create' => (int)$open,
1819 1819
   );
1820 1820
   $forum_perms[$role_map['verified contributor']] = array(
1821
-    'view' => (int) !$hidden,
1821
+    'view' => (int)!$hidden,
1822 1822
     'update' => 0,
1823 1823
     'delete' => 0,
1824
-    'create' => (int) !$hidden,
1824
+    'create' => (int)!$hidden,
1825 1825
   );
1826 1826
   $forum_perms[$role_map['moderator']] = array(
1827
-    'view' => (int) !$hidden,
1828
-    'update' => (int) !$hidden,
1827
+    'view' => (int)!$hidden,
1828
+    'update' => (int)!$hidden,
1829 1829
     'delete' => 0,
1830
-    'create' => (int) !$hidden,
1830
+    'create' => (int)!$hidden,
1831 1831
   );
1832 1832
   $forum_perms[$role_map['administrator']] = array(
1833 1833
     'view' => 1,
@@ -1892,7 +1892,7 @@  discard block
 block discarded – undo
1892 1892
     // An error occurred.
1893 1893
     // $operations contains the operations that remained unprocessed.
1894 1894
     $error_operation = reset($operations);
1895
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
1895
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
1896 1896
   }
1897 1897
   drupal_set_message($message);
1898 1898
   
@@ -1962,7 +1962,7 @@  discard block
 block discarded – undo
1962 1962
   $batch_size = 100;
1963 1963
   
1964 1964
   // Create batches to process
1965
-  for ($offset = 0; $offset < $topic_count; $offset+=$batch_size) {
1965
+  for ($offset = 0; $offset < $topic_count; $offset += $batch_size) {
1966 1966
     $topics_per_batch = $batch_size;
1967 1967
     if ($offset + $batch_size > $topic_count) {
1968 1968
       $topics_per_batch = $topic_count - $offset;
@@ -2079,7 +2079,7 @@  discard block
 block discarded – undo
2079 2079
         'type' => $node_type,
2080 2080
         'title' => $topic->title,
2081 2081
         'uid' => $uid,
2082
-        'status' => ($topic->hidden) ? 0 : 1,  // published or not
2082
+        'status' => ($topic->hidden) ? 0 : 1, // published or not
2083 2083
         'promote' => $promote,
2084 2084
         'created' => $topic->create_time,
2085 2085
         'changed' => $topic->timestamp,
@@ -2093,7 +2093,7 @@  discard block
 block discarded – undo
2093 2093
       $node['tid'] = $tid;
2094 2094
       
2095 2095
       // Save the topic node
2096
-      $node = (object) $node; // node_save requires an object form
2096
+      $node = (object)$node; // node_save requires an object form
2097 2097
       node_save($node);
2098 2098
       taxonomy_node_save($node, array($tid));
2099 2099
       $success = ($node->nid) ? TRUE : FALSE;
@@ -2156,7 +2156,7 @@  discard block
 block discarded – undo
2156 2156
       $context['finished'] = 1;
2157 2157
     }
2158 2158
     else {
2159
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2159
+      $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
2160 2160
     }
2161 2161
   }
2162 2162
 }
@@ -2194,7 +2194,7 @@  discard block
 block discarded – undo
2194 2194
     // An error occurred.
2195 2195
     // $operations contains the operations that remained unprocessed.
2196 2196
     $error_operation = reset($operations);
2197
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2197
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
2198 2198
   }
2199 2199
   drupal_set_message($message);
2200 2200
   
@@ -2270,7 +2270,7 @@  discard block
 block discarded – undo
2270 2270
   $batch_size = 100;
2271 2271
   
2272 2272
   // Create batches to process
2273
-  for ($offset = 0; $offset < $topic_count; $offset+=$batch_size) {
2273
+  for ($offset = 0; $offset < $topic_count; $offset += $batch_size) {
2274 2274
     $topics_per_batch = $batch_size;
2275 2275
     if ($offset + $batch_size > $topic_count) {
2276 2276
       $topics_per_batch = $topic_count - $offset;
@@ -2484,7 +2484,7 @@  discard block
 block discarded – undo
2484 2484
       $context['finished'] = 1;
2485 2485
     }
2486 2486
     else {
2487
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2487
+      $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
2488 2488
     }
2489 2489
   }
2490 2490
 }
@@ -2502,10 +2502,10 @@  discard block
 block discarded – undo
2502 2502
     $empty_posts = count($results['posts']['empty']);
2503 2503
     $failed_posts = count($results['posts']['failure']);
2504 2504
     $message = t(
2505
-      'Successfully imported @post_count posts in @topic_count topics ' .
2506
-      '(@skipped topics either had no replies or all replies were already imported, ' .
2507
-      '@duplicates posts were skipped as already imported, ' .
2508
-      '@empty_posts had no content, ' .
2505
+      'Successfully imported @post_count posts in @topic_count topics '.
2506
+      '(@skipped topics either had no replies or all replies were already imported, '.
2507
+      '@duplicates posts were skipped as already imported, '.
2508
+      '@empty_posts had no content, '.
2509 2509
       'and @error_posts encountered errors during import)',
2510 2510
       array(
2511 2511
         '@post_count' => $posts_imported,
@@ -2528,7 +2528,7 @@  discard block
 block discarded – undo
2528 2528
     // An error occurred.
2529 2529
     // $operations contains the operations that remained unprocessed.
2530 2530
     $error_operation = reset($operations);
2531
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2531
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
2532 2532
   }
2533 2533
   drupal_set_message($message);
2534 2534
   
@@ -2698,7 +2698,7 @@  discard block
 block discarded – undo
2698 2698
     $context['finished'] = 1;
2699 2699
   }
2700 2700
   else {
2701
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2701
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
2702 2702
   }
2703 2703
 }
2704 2704
 
@@ -2725,7 +2725,7 @@  discard block
 block discarded – undo
2725 2725
     // An error occurred.
2726 2726
     // $operations contains the operations that remained unprocessed.
2727 2727
     $error_operation = reset($operations);
2728
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2728
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
2729 2729
   }
2730 2730
   drupal_set_message($message);
2731 2731
   
@@ -2907,7 +2907,7 @@  discard block
 block discarded – undo
2907 2907
         'type' => $node_type,
2908 2908
         'title' => $topic->title,
2909 2909
         'uid' => $uid,
2910
-        'status' => ($topic->hidden) ? 0 : 1,  // published or not
2910
+        'status' => ($topic->hidden) ? 0 : 1, // published or not
2911 2911
         'promote' => $promote,
2912 2912
         'created' => $topic->create_time,
2913 2913
         'changed' => $topic->timestamp,
@@ -2921,7 +2921,7 @@  discard block
 block discarded – undo
2921 2921
       );
2922 2922
       
2923 2923
       // Save the team topic node
2924
-      $node = (object) $node; // node_save requires an object form
2924
+      $node = (object)$node; // node_save requires an object form
2925 2925
       node_save($node);
2926 2926
 
2927 2927
       if ($node->nid) {
@@ -2967,7 +2967,7 @@  discard block
 block discarded – undo
2967 2967
     $context['finished'] = 1;
2968 2968
   }
2969 2969
   else {
2970
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2970
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
2971 2971
   }
2972 2972
 }
2973 2973
 
@@ -2994,7 +2994,7 @@  discard block
 block discarded – undo
2994 2994
     // An error occurred.
2995 2995
     // $operations contains the operations that remained unprocessed.
2996 2996
     $error_operation = reset($operations);
2997
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
2997
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
2998 2998
   }
2999 2999
   drupal_set_message($message);
3000 3000
   
@@ -3249,7 +3249,7 @@  discard block
 block discarded – undo
3249 3249
     $context['finished'] = 1;
3250 3250
   }
3251 3251
   else {
3252
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3252
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
3253 3253
   }
3254 3254
 }
3255 3255
 
@@ -3276,7 +3276,7 @@  discard block
 block discarded – undo
3276 3276
     // An error occurred.
3277 3277
     // $operations contains the operations that remained unprocessed.
3278 3278
     $error_operation = reset($operations);
3279
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
3279
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
3280 3280
   }
3281 3281
   drupal_set_message($message);
3282 3282
   
@@ -3398,7 +3398,7 @@  discard block
 block discarded – undo
3398 3398
     $context['finished'] = 1;
3399 3399
   }
3400 3400
   else {
3401
-    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3401
+    $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
3402 3402
   }
3403 3403
 }
3404 3404
 
@@ -3427,7 +3427,7 @@  discard block
 block discarded – undo
3427 3427
     // An error occurred.
3428 3428
     // $operations contains the operations that remained unprocessed.
3429 3429
     $error_operation = reset($operations);
3430
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
3430
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
3431 3431
   }
3432 3432
   drupal_set_message($message);
3433 3433
   
@@ -3503,7 +3503,7 @@  discard block
 block discarded – undo
3503 3503
   $batch_size = 100;
3504 3504
   
3505 3505
   // Create node batches to process
3506
-  for ($offset = 0; $offset < $node_count; $offset+=$batch_size) {
3506
+  for ($offset = 0; $offset < $node_count; $offset += $batch_size) {
3507 3507
     $nodes_per_batch = $batch_size;
3508 3508
     if ($offset + $batch_size > $node_count) {
3509 3509
       $nodes_per_batch = $node_count - $offset;
@@ -3515,7 +3515,7 @@  discard block
 block discarded – undo
3515 3515
     );
3516 3516
   }
3517 3517
   // Add comment batches
3518
-  for ($offset = 0; $offset < $comment_count; $offset+=$batch_size) {
3518
+  for ($offset = 0; $offset < $comment_count; $offset += $batch_size) {
3519 3519
     $comments_per_batch = $batch_size;
3520 3520
     if ($offset + $batch_size > $comment_count) {
3521 3521
       $comments_per_batch = $comment_count - $offset;
@@ -3527,7 +3527,7 @@  discard block
 block discarded – undo
3527 3527
     );
3528 3528
   }
3529 3529
   // And don't forget to process private messages
3530
-  for ($offset = 0; $offset < $pm_count; $offset+=$batch_size) {
3530
+  for ($offset = 0; $offset < $pm_count; $offset += $batch_size) {
3531 3531
     $messages_per_batch = $batch_size;
3532 3532
     if ($offset + $batch_size > $pm_count) {
3533 3533
       $messages_per_batch = $pm_count - $offset;
@@ -3616,7 +3616,7 @@  discard block
 block discarded – undo
3616 3616
       $context['finished'] = 1;
3617 3617
     }
3618 3618
     else {
3619
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3619
+      $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
3620 3620
     }
3621 3621
   }
3622 3622
 }
@@ -3680,7 +3680,7 @@  discard block
 block discarded – undo
3680 3680
       $context['finished'] = 1;
3681 3681
     }
3682 3682
     else {
3683
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3683
+      $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
3684 3684
     }
3685 3685
   }
3686 3686
 }
@@ -3743,7 +3743,7 @@  discard block
 block discarded – undo
3743 3743
       $context['finished'] = 1;
3744 3744
     }
3745 3745
     else {
3746
-      $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3746
+      $context['finished'] = $context['sandbox']['progress']/$context['sandbox']['max'];
3747 3747
     }
3748 3748
   }
3749 3749
 }
@@ -3812,7 +3812,7 @@  discard block
 block discarded – undo
3812 3812
     // An error occurred.
3813 3813
     // $operations contains the operations that remained unprocessed.
3814 3814
     $error_operation = reset($operations);
3815
-    $message = 'An error occurred while processing ' . $error_operation[0] . ' with arguments :' . print_r($error_operation[0], TRUE);
3815
+    $message = 'An error occurred while processing '.$error_operation[0].' with arguments :'.print_r($error_operation[0], TRUE);
3816 3816
   }
3817 3817
   drupal_set_message($message);
3818 3818
   
@@ -3881,18 +3881,18 @@  discard block
 block discarded – undo
3881 3881
     $max = db_result(db_query('SELECT MAX(thread) FROM {comments} WHERE nid = %d', $edit['nid']));
3882 3882
     // Strip the "/" from the end of the thread.
3883 3883
     $max = rtrim($max, '/');
3884
-    $thread = int2vancode(vancode2int($max)+1) .'/';
3884
+    $thread = int2vancode(vancode2int($max) + 1).'/';
3885 3885
   } else {
3886 3886
     // This is comment with a parent comment: we increase the part of the thread
3887 3887
     // value at the proper depth.
3888 3888
     $parent = db_fetch_object(db_query('SELECT * FROM {comments} WHERE cid = %d', $edit['pid']));
3889 3889
     // Strip the "/" from the end of the parent thread.
3890
-    $parent->thread = (string) rtrim((string) $parent->thread, '/');
3890
+    $parent->thread = (string)rtrim((string)$parent->thread, '/');
3891 3891
     // Get the max value in _this_ thread.
3892 3892
     $max = db_result(db_query("SELECT MAX(thread) FROM {comments} WHERE thread LIKE '%s.%%' AND nid = %d", $parent->thread, $edit['nid']));
3893 3893
     if ($max == '') {
3894 3894
       // First child of this parent.
3895
-      $thread = $parent->thread .'.'. int2vancode(1) .'/';
3895
+      $thread = $parent->thread.'.'.int2vancode(1).'/';
3896 3896
     } else {
3897 3897
       // Strip the "/" at the end of the thread.
3898 3898
       $max = rtrim($max, '/');
@@ -3901,14 +3901,14 @@  discard block
 block discarded – undo
3901 3901
       $parent_depth = count(explode('.', $parent->thread));
3902 3902
       $last = $parts[$parent_depth];
3903 3903
       // Finally, build the thread field for this new comment.
3904
-      $thread = $parent->thread .'.'. int2vancode(vancode2int($last) + 1) .'/';
3904
+      $thread = $parent->thread.'.'.int2vancode(vancode2int($last) + 1).'/';
3905 3905
     }
3906 3906
   }
3907 3907
 
3908 3908
   $status = 0; // 1 - not published, 0 - published
3909 3909
   $format = variable_get('boincimport_input_format', 0);
3910 3910
   $score = 0; // 0 default value, comments get higher score depending on the author's roles
3911
-  $users = serialize(array(0 => 1));  // default value for everybody!!
3911
+  $users = serialize(array(0 => 1)); // default value for everybody!!
3912 3912
   
3913 3913
   if ($edit['uid'] === $user->uid) { // '===' because we want to modify anonymous users too
3914 3914
     $edit['name'] = $user->name;
@@ -3942,7 +3942,7 @@  discard block
 block discarded – undo
3942 3942
   // BBcode to normal html
3943 3943
   if (variable_get('boincimport_bbcode', 0)) {
3944 3944
     $input_format = variable_get('boincimport_input_format', 0);
3945
-    $text = bbcode_filter('process', 0 , $input_format, $text);
3945
+    $text = bbcode_filter('process', 0, $input_format, $text);
3946 3946
   }
3947 3947
   return $text;
3948 3948
 }
Please login to merge, or discard this patch.
Braces   +110 added lines, -188 removed lines patch added patch discarded remove patch
@@ -172,8 +172,7 @@  discard block
 block discarded – undo
172 172
   $out['result'] = $result;
173 173
   if ($result == 1) {
174 174
     $out['html'] .= '<li>'. t('Module %module is enabled. OK!', array('%module' => $module)) .'</li>';
175
-  }
176
-  else {
175
+  } else {
177 176
     $out['html'] .= '<li><span class="marker">'. t('Module %module is disabled.', array('%module' => $module)) .'</span></li>';
178 177
   }
179 178
   $out['html'] .= '</ul>';
@@ -201,16 +200,14 @@  discard block
 block discarded – undo
201 200
     if ($GLOBALS['db_type'] == 'pgsql') {
202 201
       // adapt from db_table_exists in database.pgsql.inc
203 202
       $result = (bool) db_result(db_query("SELECT COUNT(*) FROM pg_class WHERE relname = '%s'", $table));
204
-    }
205
-    else {
203
+    } else {
206 204
       // adapt from db_table_exists in database.mysql.inc
207 205
       $result = (bool) db_fetch_object(db_query("SHOW TABLES LIKE '%s'", $table));
208 206
     }
209 207
     db_set_active('default');
210 208
     if ($result) {
211 209
       $out['html'] .= '<li>'. t('Table %table: OK!', array('%table' => $table)) .'</li>';
212
-    }
213
-    else {
210
+    } else {
214 211
       $out['html'] .= '<li><span class="marker">'. t('Table <strong>%table</strong> does not exist!', array('%table' => $table)) .'</span></li>';
215 212
       $out['result']= 0;
216 213
     }
@@ -257,8 +254,7 @@  discard block
 block discarded – undo
257 254
       array('!unlock_it' => l(t('release the lock'),
258 255
         'admin/boinc/import/unlock')
259 256
       ), WATCHDOG_WARNING); 
260
-  }
261
-  else {
257
+  } else {
262 258
     $boincimport_functions = array(
263 259
       'users' => t('Import users'),
264 260
       'teams' => t('Import teams'),
@@ -293,8 +289,7 @@  discard block
 block discarded – undo
293 289
   // Lock the import process
294 290
   if (!variable_get('boincimport_process_locked', 0)) {
295 291
     variable_set('boincimport_process_locked', 1);
296
-  }
297
-  else {
292
+  } else {
298 293
     watchdog('boincimport', 'The import process is locked, but another process
299 294
       is trying to access it...', array(), WATCHDOG_WARNING); 
300 295
   }
@@ -308,8 +303,7 @@  discard block
 block discarded – undo
308 303
       boincimport_teams();
309 304
       if (!variable_get('boincimport_import_team_successful', 0)) {
310 305
         $_SESSION['boincimport_stage_selected'] = 'teams';
311
-      }
312
-      else {
306
+      } else {
313 307
         $_SESSION['boincimport_stage_selected'] = 'friends';
314 308
       }
315 309
       break;
@@ -318,8 +312,7 @@  discard block
 block discarded – undo
318 312
       boincimport_friends();
319 313
       if (!variable_get('boincimport_import_friend_successful', 0)) {
320 314
         $_SESSION['boincimport_stage_selected'] = 'friends';
321
-      }
322
-      else {
315
+      } else {
323 316
         $_SESSION['boincimport_stage_selected'] = 'preferences';
324 317
       }
325 318
       break;
@@ -328,8 +321,7 @@  discard block
 block discarded – undo
328 321
       boincimport_preferences();
329 322
       if (!variable_get('boincimport_import_preferences_successful', 0)) {
330 323
         $_SESSION['boincimport_stage_selected'] = 'preferences';
331
-      }
332
-      else {
324
+      } else {
333 325
         $_SESSION['boincimport_stage_selected'] = 'private messages';
334 326
       }
335 327
       break;
@@ -338,8 +330,7 @@  discard block
 block discarded – undo
338 330
       boincimport_private_msgs();
339 331
       if (!variable_get('boincimport_import_private_msg_successful', 0)) {
340 332
         $_SESSION['boincimport_stage_selected'] = 'private messages';
341
-      }
342
-      else {
333
+      } else {
343 334
         $_SESSION['boincimport_stage_selected'] = 'categories';
344 335
       }
345 336
       break;
@@ -348,8 +339,7 @@  discard block
 block discarded – undo
348 339
       boincimport_forum_categories();
349 340
       if (!variable_get('boincimport_import_category_successful', 0)) {
350 341
         $_SESSION['boincimport_stage_selected'] = 'categories';
351
-      }
352
-      else {
342
+      } else {
353 343
         $_SESSION['boincimport_stage_selected'] = 'topics';
354 344
       }
355 345
       break;
@@ -358,8 +348,7 @@  discard block
 block discarded – undo
358 348
       boincimport_forum_topics();
359 349
       if (!variable_get('boincimport_import_topic_successful', 0)) {
360 350
         $_SESSION['boincimport_stage_selected'] = 'topics';
361
-      }
362
-      else {
351
+      } else {
363 352
         $_SESSION['boincimport_stage_selected'] = 'posts';
364 353
       }
365 354
       break;
@@ -368,8 +357,7 @@  discard block
 block discarded – undo
368 357
       boincimport_forum_posts();
369 358
       if (!variable_get('boincimport_import_post_successful', 0)) {
370 359
         $_SESSION['boincimport_stage_selected'] = 'posts';
371
-      }
372
-      else {
360
+      } else {
373 361
         $_SESSION['boincimport_stage_selected'] = 'url';
374 362
       }
375 363
       break;
@@ -378,8 +366,7 @@  discard block
 block discarded – undo
378 366
       boincimport_team_forums();
379 367
       if (!variable_get('boincimport_team_forum_successful', 0)) {
380 368
         $_SESSION['boincimport_stage_selected'] = 'team forums';
381
-      }
382
-      else {
369
+      } else {
383 370
         $_SESSION['boincimport_stage_selected'] = 'team topics';
384 371
       }
385 372
       break;
@@ -388,8 +375,7 @@  discard block
 block discarded – undo
388 375
       boincimport_team_forum_topics();
389 376
       if (!variable_get('boincimport_team_topic_successful', 0)) {
390 377
         $_SESSION['boincimport_stage_selected'] = 'team topics';
391
-      }
392
-      else {
378
+      } else {
393 379
         $_SESSION['boincimport_stage_selected'] = 'team posts';
394 380
       }
395 381
       break;
@@ -398,8 +384,7 @@  discard block
 block discarded – undo
398 384
       boincimport_team_forum_posts();
399 385
       if (!variable_get('boincimport_team_post_successful', 0)) {
400 386
         $_SESSION['boincimport_stage_selected'] = 'team posts';
401
-      }
402
-      else {
387
+      } else {
403 388
         $_SESSION['boincimport_stage_selected'] = 'url';
404 389
       }
405 390
       break;
@@ -408,8 +393,7 @@  discard block
 block discarded – undo
408 393
       boincimport_replace_urls();
409 394
       if (!variable_get('boincimport_replace_url_successful', 0)) {
410 395
         $_SESSION['boincimport_stage_selected'] = 'url';
411
-      }
412
-      else {
396
+      } else {
413 397
         drupal_set_message('Congratulations.  Import Finished');
414 398
         drupal_set_message('Please visit the '. l('Post migration configuration', 'admin/boinc/import/post_configuration') .' page');
415 399
         watchdog('boincimport', 'Import process is complete', array(), WATCHDOG_INFO); 
@@ -478,8 +462,7 @@  discard block
 block discarded – undo
478 462
       ORDER BY id ASC'
479 463
     );
480 464
     $user_count = mysql_num_rows($boinc_accounts);
481
-  }
482
-  else {
465
+  } else {
483 466
     // Need to import any user who is currently ignored in order to keep them
484 467
     // ignored... not particularly clean (ignored users are stored in a string)
485 468
     $ignored_user_list = array(0);
@@ -555,8 +538,7 @@  discard block
 block discarded – undo
555 538
      if (isset($existing_users[$boinc_account->id])) {
556 539
       // This user has already been imported
557 540
       $duplicates[] = $boinc_account->id;
558
-    }
559
-    else {
541
+    } else {
560 542
       $operations[] = array(
561 543
         'boincimport_users_op', array(
562 544
           $boinc_account->id
@@ -612,8 +594,7 @@  discard block
 block discarded – undo
612 594
     // Store some result for post-processing in the finished callback.
613 595
     $context['results']['success'][] = $boinc_id;
614 596
     $message = "Successfully imported user {$boinc_id}";
615
-  }
616
-  else {
597
+  } else {
617 598
     $context['results']['failure'][] = $boinc_id;
618 599
     $message = "Failed to import user {$boinc_id}!";
619 600
     watchdog('boincimport',
@@ -630,8 +611,7 @@  discard block
 block discarded – undo
630 611
   // Update the progress for the batch engine
631 612
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
632 613
     $context['finished'] = 1;
633
-  }
634
-  else {
614
+  } else {
635 615
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
636 616
   }
637 617
 }
@@ -656,8 +636,7 @@  discard block
 block discarded – undo
656 636
     // Set the user import successful flag in the variable table
657 637
     variable_set('boincimport_import_user_successful', '1');
658 638
     $_SESSION['boincimport_stage_selected'] = 'teams';
659
-  }
660
-  else {
639
+  } else {
661 640
     // An error occurred.
662 641
     // $operations contains the operations that remained unprocessed.
663 642
     $error_operation = reset($operations);
@@ -719,9 +698,10 @@  discard block
 block discarded – undo
719 698
         $team_type = array(
720 699
           'tid' => $team_type_id
721 700
         );
722
-      }
723
-      else {
724
-        if (!$name) continue;
701
+      } else {
702
+        if (!$name) {
703
+            continue;
704
+        }
725 705
         $team_type = array(
726 706
           'name' => strip_tags($name),
727 707
           'vid' => $team_vid,
@@ -783,8 +763,7 @@  discard block
 block discarded – undo
783 763
      if (isset($existing_teams[$boinc_team->id])) {
784 764
       // This team has already been imported
785 765
       $duplicates[] = $boinc_team->id;
786
-    }
787
-    else {
766
+    } else {
788 767
       $operations[] = array(
789 768
         'boincimport_teams_op', array(
790 769
           $boinc_team
@@ -825,8 +804,7 @@  discard block
 block discarded – undo
825 804
     // Store some result for post-processing in the finished callback.
826 805
     $context['results']['success'][] = $boincteam->id;
827 806
     $message = "Successfully imported team {$boincteam->id}";
828
-  }
829
-  else {
807
+  } else {
830 808
     $context['results']['failure'][] = $boincteam->id;
831 809
     $message = "Failed to import team {$boincteam->id}!";
832 810
     watchdog('boincimport',
@@ -843,8 +821,7 @@  discard block
 block discarded – undo
843 821
   // Update the progress for the batch engine
844 822
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
845 823
     $context['finished'] = 1;
846
-  }
847
-  else {
824
+  } else {
848 825
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
849 826
   }
850 827
 }
@@ -867,8 +844,7 @@  discard block
 block discarded – undo
867 844
     // Set the team import successful flag in the variable table
868 845
     variable_set('boincimport_import_team_successful', '1');
869 846
     $_SESSION['boincimport_stage_selected'] = 'friends';
870
-  }
871
-  else {
847
+  } else {
872 848
     // An error occurred.
873 849
     // $operations contains the operations that remained unprocessed.
874 850
     $error_operation = reset($operations);
@@ -989,8 +965,7 @@  discard block
 block discarded – undo
989 965
       SET uid = '%d', friend_uid = '%d', created = '%d'",
990 966
       $uid, $friend_uid, $friendship->create_time
991 967
     );
992
-  }
993
-  else {
968
+  } else {
994 969
     $boinc_id = ($uid) ? $friendship->user_dest : $friendship->user_src;
995 970
     $message = "No Drupal account exists for BOINC user {$boinc_id}!";
996 971
   }
@@ -999,8 +974,7 @@  discard block
 block discarded – undo
999 974
     // Store some result for post-processing in the finished callback.
1000 975
     $context['results']['success'][] = $uid;
1001 976
     $message = "Successfully made users {$uid} and {$friend_uid} friends";
1002
-  }
1003
-  else {
977
+  } else {
1004 978
     $context['results']['failure'][] = $uid;
1005 979
     if (!$message) {
1006 980
       $message = "Failed to make users {$uid} and {$friend_uid} friends!";
@@ -1016,8 +990,7 @@  discard block
 block discarded – undo
1016 990
   // Update the progress for the batch engine
1017 991
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1018 992
     $context['finished'] = 1;
1019
-  }
1020
-  else {
993
+  } else {
1021 994
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1022 995
   }
1023 996
 }
@@ -1041,8 +1014,7 @@  discard block
 block discarded – undo
1041 1014
     // Set the friend import successful flag in the variable table
1042 1015
     variable_set('boincimport_import_friend_successful', '1');
1043 1016
     $_SESSION['boincimport_stage_selected'] = 'preferences';
1044
-  }
1045
-  else {
1017
+  } else {
1046 1018
     // An error occurred.
1047 1019
     // $operations contains the operations that remained unprocessed.
1048 1020
     $error_operation = reset($operations);
@@ -1166,8 +1138,7 @@  discard block
 block discarded – undo
1166 1138
     );
1167 1139
     if ($user_ignored) {
1168 1140
       $success = TRUE;
1169
-    }
1170
-    else {
1141
+    } else {
1171 1142
       $context['results']['warning'][] = "{$uid}:{$ignored_user_uid}";
1172 1143
       watchdog('boincimport',
1173 1144
         'Could not add user @ignored_uid to the ignore list of user @uid',
@@ -1182,8 +1153,7 @@  discard block
 block discarded – undo
1182 1153
     // Store some result for post-processing in the finished callback.
1183 1154
     $context['results']['success'][] = $uid;
1184 1155
     $message = "Successfully imported ignored users for user {$uid}";
1185
-  }
1186
-  else {
1156
+  } else {
1187 1157
     $context['results']['failure'][] = $uid;
1188 1158
     $message = "Failed to import any user filter preferences for user {$uid}!";
1189 1159
     watchdog('boincimport',
@@ -1200,8 +1170,7 @@  discard block
 block discarded – undo
1200 1170
   // Update the progress for the batch engine
1201 1171
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1202 1172
     $context['finished'] = 1;
1203
-  }
1204
-  else {
1173
+  } else {
1205 1174
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1206 1175
   }
1207 1176
 }
@@ -1226,8 +1195,7 @@  discard block
 block discarded – undo
1226 1195
     // Set the preference import successful flag in the variable table
1227 1196
     variable_set('boincimport_import_preferences_successful', '1');
1228 1197
     $_SESSION['boincimport_stage_selected'] = 'private messages';
1229
-  }
1230
-  else {
1198
+  } else {
1231 1199
     // An error occurred.
1232 1200
     // $operations contains the operations that remained unprocessed.
1233 1201
     $error_operation = reset($operations);
@@ -1361,8 +1329,7 @@  discard block
 block discarded – undo
1361 1329
     // Store some result for post-processing in the finished callback.
1362 1330
     $context['results']['success'][] = $pm->id;
1363 1331
     $message = "Successfully imported private message {$pm->id}";
1364
-  }
1365
-  else {
1332
+  } else {
1366 1333
     $context['results']['failure'][] = $pm->id;
1367 1334
     $message = "Failed to import private message {$pm->id}!";
1368 1335
     watchdog('boincimport',
@@ -1379,8 +1346,7 @@  discard block
 block discarded – undo
1379 1346
   // Update the progress for the batch engine
1380 1347
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1381 1348
     $context['finished'] = 1;
1382
-  }
1383
-  else {
1349
+  } else {
1384 1350
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1385 1351
   }
1386 1352
 }
@@ -1403,8 +1369,7 @@  discard block
 block discarded – undo
1403 1369
     // Set the private message import successful flag in the variable table
1404 1370
     variable_set('boincimport_import_private_msg_successful', '1');
1405 1371
     $_SESSION['boincimport_stage_selected'] = 'categories';
1406
-  }
1407
-  else {
1372
+  } else {
1408 1373
     // An error occurred.
1409 1374
     // $operations contains the operations that remained unprocessed.
1410 1375
     $error_operation = reset($operations);
@@ -1557,8 +1522,7 @@  discard block
 block discarded – undo
1557 1522
     if (in_array($boinc_forum_category->name, $existing_categories)) {
1558 1523
       // This category has already been imported
1559 1524
       $duplicate_categories[] = $boinc_forum_category->name;
1560
-    }
1561
-    else {
1525
+    } else {
1562 1526
       $operations[] = array(
1563 1527
         'boincimport_forum_categories_op', array(
1564 1528
           $boinc_forum_category, $forum_vid, $pre, FALSE
@@ -1572,8 +1536,7 @@  discard block
 block discarded – undo
1572 1536
      if (isset($existing_forums[$boinc_forum->id])) {
1573 1537
       // This forum has already been imported
1574 1538
       $duplicates[] = $boinc_forum->id;
1575
-    }
1576
-    else {
1539
+    } else {
1577 1540
       $operations[] = array(
1578 1541
         'boincimport_forums_op', array(
1579 1542
           $boinc_forum, $forum_vid, $pre
@@ -1640,8 +1603,7 @@  discard block
 block discarded – undo
1640 1603
     $category->name = 'Hidden';
1641 1604
     $category->id = 0;
1642 1605
     $hidden = TRUE;
1643
-  }
1644
-  else {
1606
+  } else {
1645 1607
     // If this container is empty, put it into the hidden container
1646 1608
     db_set_active('boinc');
1647 1609
     $forums_contained = db_result(db_query('
@@ -1684,13 +1646,11 @@  discard block
 block discarded – undo
1684 1646
     // Store some result for post-processing in the finished callback.
1685 1647
     if (!$category AND $create_hidden) {
1686 1648
       $message = "Created special hidden container";
1687
-    }
1688
-    else {
1649
+    } else {
1689 1650
       $context['results']['categories']['success'][] = $category->id;
1690 1651
       $message = "Successfully imported container {$category->id}";
1691 1652
     }
1692
-  }
1693
-  else {
1653
+  } else {
1694 1654
     $context['results']['categories']['failure'][] = $category->id;
1695 1655
     $message = "Failed to import container {$category->id}!";
1696 1656
     watchdog('boincimport',
@@ -1707,8 +1667,7 @@  discard block
 block discarded – undo
1707 1667
   // Update the progress for the batch engine
1708 1668
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1709 1669
     $context['finished'] = 1;
1710
-  }
1711
-  else {
1670
+  } else {
1712 1671
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1713 1672
   }
1714 1673
 }
@@ -1744,8 +1703,7 @@  discard block
 block discarded – undo
1744 1703
     // Save the ID of the News forum for later import
1745 1704
     variable_set('boincimport_news_forum_id', $forum_id);
1746 1705
     $success = TRUE;
1747
-  }
1748
-  else {
1706
+  } else {
1749 1707
     // Save all other forums as taxonomy terms
1750 1708
     $forum = array(
1751 1709
       'name' => $name,
@@ -1771,8 +1729,7 @@  discard block
 block discarded – undo
1771 1729
     // Store some result for post-processing in the finished callback.
1772 1730
     $context['results']['forums']['success'][] = $forum_id;
1773 1731
     $message = "Successfully imported forum {$forum_id}";
1774
-  }
1775
-  else {
1732
+  } else {
1776 1733
     $context['results']['forums']['failure'][] = $forum_id;
1777 1734
     $message = "Failed to import forum {$forum_id}!";
1778 1735
   }
@@ -1785,8 +1742,7 @@  discard block
 block discarded – undo
1785 1742
   // Update the progress for the batch engine
1786 1743
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
1787 1744
     $context['finished'] = 1;
1788
-  }
1789
-  else {
1745
+  } else {
1790 1746
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
1791 1747
   }
1792 1748
 }
@@ -1887,8 +1843,7 @@  discard block
 block discarded – undo
1887 1843
     // Set the forum import successful flag in the variable table
1888 1844
     variable_set('boincimport_import_forum_successful', '1');
1889 1845
     $_SESSION['boincimport_stage_selected'] = 'topics';
1890
-  }
1891
-  else {
1846
+  } else {
1892 1847
     // An error occurred.
1893 1848
     // $operations contains the operations that remained unprocessed.
1894 1849
     $error_operation = reset($operations);
@@ -2042,9 +1997,7 @@  discard block
 block discarded – undo
2042 1997
     
2043 1998
     if ($duplicate OR !$post) {
2044 1999
       $success = FALSE;
2045
-    }
2046
-    
2047
-    else {
2000
+    } else {
2048 2001
       // Get the user and term IDs along with other data to define the topic
2049 2002
       $uid = boincuser_lookup_uid($topic->owner);
2050 2003
       $tid = db_result(db_query('
@@ -2108,12 +2061,10 @@  discard block
 block discarded – undo
2108 2061
           if (!$success) {
2109 2062
             $error_detail = 'topic imported, but failed to set last comment timestamp';
2110 2063
           }
2111
-        }
2112
-        else {
2064
+        } else {
2113 2065
           $error_detail = 'topic node saved, but failed to link in boincimport_temp_topic table';
2114 2066
         }
2115
-      }
2116
-      else {
2067
+      } else {
2117 2068
         $error_detail = 'failed to save topic node to database';
2118 2069
       }
2119 2070
     }
@@ -2124,16 +2075,13 @@  discard block
 block discarded – undo
2124 2075
       // Store some result for post-processing in the finished callback.
2125 2076
       $context['results']['success'][] = $topic->id;
2126 2077
       $message = "Successfully imported topic {$topic->id}";
2127
-    }
2128
-    elseif ($duplicate) {
2078
+    } elseif ($duplicate) {
2129 2079
       $context['results']['duplicate'][] = $topic->id;
2130 2080
       $message = "Topic {$topic->id} was already imported";
2131
-    }
2132
-    elseif (!$post) {
2081
+    } elseif (!$post) {
2133 2082
       $context['results']['empty'][] = $topic->id;
2134 2083
       $message = "Skipping topic {$topic->id} as empty";
2135
-    }
2136
-    else {
2084
+    } else {
2137 2085
       $context['results']['failure'][] = $topic->id;
2138 2086
       $message = "Failed to import topic {$topic->id}!";
2139 2087
       watchdog('boincimport',
@@ -2154,8 +2102,7 @@  discard block
 block discarded – undo
2154 2102
     // Update the progress for the batch engine
2155 2103
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2156 2104
       $context['finished'] = 1;
2157
-    }
2158
-    else {
2105
+    } else {
2159 2106
       $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2160 2107
     }
2161 2108
   }
@@ -2189,8 +2136,7 @@  discard block
 block discarded – undo
2189 2136
     // Set the topic import successful flag in the variable table
2190 2137
     variable_set('boincimport_import_topic_successful', '1');
2191 2138
     $_SESSION['boincimport_stage_selected'] = 'posts';
2192
-  }
2193
-  else {
2139
+  } else {
2194 2140
     // An error occurred.
2195 2141
     // $operations contains the operations that remained unprocessed.
2196 2142
     $error_operation = reset($operations);
@@ -2383,8 +2329,12 @@  discard block
 block discarded – undo
2383 2329
           FROM {boincimport_temp_post}
2384 2330
           WHERE post_id = %d',
2385 2331
           $post->parent_post));
2386
-        if (is_null($pid)) $pid = 0;
2387
-        if (!$uid) $uid = 0;
2332
+        if (is_null($pid)) {
2333
+            $pid = 0;
2334
+        }
2335
+        if (!$uid) {
2336
+            $uid = 0;
2337
+        }
2388 2338
         
2389 2339
         $post->content = _boincimport_strip_bbcode($post->content);
2390 2340
         $post->content = _boincimport_text_sanitize($post->content);
@@ -2409,8 +2359,9 @@  discard block
 block discarded – undo
2409 2359
           $subject = str_replace('Quote:', 'RE: ', $subject);
2410 2360
           // Fringe cases where the comment body is populated only by HTML tags
2411 2361
           // will require a default subject...
2412
-          if ($subject === '')
2413
-            $subject = "RE: {$node->title}";
2362
+          if ($subject === '') {
2363
+                      $subject = "RE: {$node->title}";
2364
+          }
2414 2365
         } else {
2415 2366
           // This is the first post in the topic
2416 2367
           $subject = $node->title;
@@ -2438,18 +2389,15 @@  discard block
 block discarded – undo
2438 2389
           if ($success) {
2439 2390
             $posts_imported++;
2440 2391
             $context['results']['posts']['success'][] = $post->id;
2441
-          }
2442
-          else {
2392
+          } else {
2443 2393
             $context['results']['posts']['failure'][] = $post->id;
2444 2394
             $error_posts++;
2445 2395
           }
2446
-        }
2447
-        else {
2396
+        } else {
2448 2397
           $context['results']['posts']['failure'][] = $post->id;
2449 2398
           $error_posts++;
2450 2399
         }
2451
-      }
2452
-      else {
2400
+      } else {
2453 2401
         $context['results']['posts']['empty'][] = $post->id;
2454 2402
         $empty_posts++;
2455 2403
       }
@@ -2460,8 +2408,7 @@  discard block
 block discarded – undo
2460 2408
       // Store some result for post-processing in the finished callback.
2461 2409
       $context['results']['success'][] = $boinc_topic->id;
2462 2410
       $message = "Imported {$posts_imported} post(s) for topic {$boinc_topic->id}";
2463
-    }
2464
-    else {
2411
+    } else {
2465 2412
       $context['results']['failure'][] = $boinc_topic->id;
2466 2413
       $message = "Failed to import any posts for topic {$boinc_topic->id} (excluded {$error_posts} errors, {$duplicate_posts} duplicates, and {$empty_posts} empty)";
2467 2414
       watchdog('boincimport', 'Failed to import any posts for topic @id (excluded @error_posts errors, @duplicate_posts duplicates, and @empty_posts empty)', 
@@ -2482,8 +2429,7 @@  discard block
 block discarded – undo
2482 2429
     // Update the progress for the batch engine
2483 2430
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2484 2431
       $context['finished'] = 1;
2485
-    }
2486
-    else {
2432
+    } else {
2487 2433
       $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2488 2434
     }
2489 2435
   }
@@ -2523,8 +2469,7 @@  discard block
 block discarded – undo
2523 2469
     // Set the post import successful flag in the variable table
2524 2470
     variable_set('boincimport_import_post_successful', '1');
2525 2471
     $_SESSION['boincimport_stage_selected'] = 'team forums';
2526
-  }
2527
-  else {
2472
+  } else {
2528 2473
     // An error occurred.
2529 2474
     // $operations contains the operations that remained unprocessed.
2530 2475
     $error_operation = reset($operations);
@@ -2611,8 +2556,7 @@  discard block
 block discarded – undo
2611 2556
      if (isset($existing_team_forums[$boincteam_forum->id])) {
2612 2557
       // This team has already been imported
2613 2558
       $duplicates[] = $boincteam_forum->id;
2614
-    }
2615
-    else {
2559
+    } else {
2616 2560
       $operations[] = array(
2617 2561
         'boincimport_team_forums_op', array(
2618 2562
           $boincteam_forum
@@ -2678,8 +2622,7 @@  discard block
 block discarded – undo
2678 2622
     // Store some result for post-processing in the finished callback.
2679 2623
     $context['results']['success'][] = $forum_id;
2680 2624
     $message = "Successfully imported team forum {$forum_id}";
2681
-  }
2682
-  else {
2625
+  } else {
2683 2626
     $context['results']['failure'][] = $forum_id;
2684 2627
     $message = "Failed to import team forum {$forum_id}!";
2685 2628
     watchdog('boincimport',
@@ -2696,8 +2639,7 @@  discard block
 block discarded – undo
2696 2639
   // Update the progress for the batch engine
2697 2640
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2698 2641
     $context['finished'] = 1;
2699
-  }
2700
-  else {
2642
+  } else {
2701 2643
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2702 2644
   }
2703 2645
 }
@@ -2720,8 +2662,7 @@  discard block
 block discarded – undo
2720 2662
     // Set the team forum import successful flag in the variable table
2721 2663
     variable_set('boincimport_import_team_forum_successful', '1');
2722 2664
     $_SESSION['boincimport_stage_selected'] = 'team topics';
2723
-  }
2724
-  else {
2665
+  } else {
2725 2666
     // An error occurred.
2726 2667
     // $operations contains the operations that remained unprocessed.
2727 2668
     $error_operation = reset($operations);
@@ -2816,8 +2757,7 @@  discard block
 block discarded – undo
2816 2757
      if (isset($existing_team_topics[$boincteam_topic->id])) {
2817 2758
       // This team topic has already been imported
2818 2759
       $duplicates[] = $boincteam_topic->id;
2819
-    }
2820
-    else {
2760
+    } else {
2821 2761
       $operations[] = array(
2822 2762
         'boincimport_team_topics_op', array(
2823 2763
           $boincteam_topic
@@ -2864,8 +2804,7 @@  discard block
 block discarded – undo
2864 2804
   ));
2865 2805
   if (!$team_forum_id) {
2866 2806
     $missing_parent[] = $topic->id;
2867
-  }
2868
-  else {
2807
+  } else {
2869 2808
     // Get the content of the post that started the topic
2870 2809
     db_set_active('boinc');
2871 2810
     $query = db_query('
@@ -2882,8 +2821,7 @@  discard block
 block discarded – undo
2882 2821
       // Empty topics should have already been filtered out of the import, so
2883 2822
       // consider this an error condition
2884 2823
       $empty_topics[] = $topic->id;
2885
-    }
2886
-    else {
2824
+    } else {
2887 2825
       // Get the user ID along with other data to define the topic
2888 2826
       $uid = boincuser_lookup_uid($topic->owner);
2889 2827
        if (!$topic->owner) {
@@ -2947,8 +2885,7 @@  discard block
 block discarded – undo
2947 2885
     // Store some result for post-processing in the finished callback.
2948 2886
     $context['results']['success'][] = $topic->id;
2949 2887
     $message = "Successfully imported team topic {$topic->id}";
2950
-  }
2951
-  else {
2888
+  } else {
2952 2889
     $context['results']['failure'][] = $topic->id;
2953 2890
     $message = "Failed to import team topic {$topic->id}!";
2954 2891
     watchdog('boincimport',
@@ -2965,8 +2902,7 @@  discard block
 block discarded – undo
2965 2902
   // Update the progress for the batch engine
2966 2903
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
2967 2904
     $context['finished'] = 1;
2968
-  }
2969
-  else {
2905
+  } else {
2970 2906
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
2971 2907
   }
2972 2908
 }
@@ -2989,8 +2925,7 @@  discard block
 block discarded – undo
2989 2925
     // Set the BLAH import successful flag in the variable table
2990 2926
     variable_set('boincimport_import_team_topic_successful', '1');
2991 2927
     $_SESSION['boincimport_stage_selected'] = 'team posts';
2992
-  }
2993
-  else {
2928
+  } else {
2994 2929
     // An error occurred.
2995 2930
     // $operations contains the operations that remained unprocessed.
2996 2931
     $error_operation = reset($operations);
@@ -3112,8 +3047,7 @@  discard block
 block discarded – undo
3112 3047
       if (isset($existing_posts[$boincteam_post->id])) {
3113 3048
         // This post has already been imported
3114 3049
         $duplicates[] = $boincteam_post->id;
3115
-      }
3116
-      else {
3050
+      } else {
3117 3051
         $operations[] = array(
3118 3052
           'boincimport_team_posts_op', array(
3119 3053
             $boincteam_post
@@ -3169,8 +3103,12 @@  discard block
 block discarded – undo
3169 3103
       FROM {boincimport_temp_post}
3170 3104
       WHERE post_id = %d',
3171 3105
       $post->parent_post));
3172
-    if (is_null($pid)) $pid = 0;
3173
-    if (!$uid) $uid = 0;
3106
+    if (is_null($pid)) {
3107
+        $pid = 0;
3108
+    }
3109
+    if (!$uid) {
3110
+        $uid = 0;
3111
+    }
3174 3112
     
3175 3113
     $post->content = _boincimport_strip_bbcode($post->content);
3176 3114
     $post->content = _boincimport_text_sanitize($post->content);
@@ -3195,8 +3133,9 @@  discard block
 block discarded – undo
3195 3133
       $subject = str_replace('Quote:', 'RE: ', $subject);
3196 3134
       // Fringe cases where the comment body is populated only by HTML tags
3197 3135
       // will require a default subject...
3198
-      if ($subject === '')
3199
-        $subject = "RE: {$node->title}";
3136
+      if ($subject === '') {
3137
+              $subject = "RE: {$node->title}";
3138
+      }
3200 3139
     } else {
3201 3140
       // This is the first post in the topic
3202 3141
       $subject = $node->title;
@@ -3229,8 +3168,7 @@  discard block
 block discarded – undo
3229 3168
     // Store some result for post-processing in the finished callback.
3230 3169
     $context['results']['success'][] = $post->id;
3231 3170
     $message = "Successfully imported team post {$post->id}";
3232
-  }
3233
-  else {
3171
+  } else {
3234 3172
     $context['results']['failure'][] = $post->id;
3235 3173
     $message = "Failed to import team post {$post->id}!";
3236 3174
     watchdog('boincimport',
@@ -3247,8 +3185,7 @@  discard block
 block discarded – undo
3247 3185
   // Update the progress for the batch engine
3248 3186
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3249 3187
     $context['finished'] = 1;
3250
-  }
3251
-  else {
3188
+  } else {
3252 3189
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3253 3190
   }
3254 3191
 }
@@ -3271,8 +3208,7 @@  discard block
 block discarded – undo
3271 3208
     // Set the team post import successful flag in the variable table
3272 3209
     variable_set('boincimport_import_team_post_successful', '1');
3273 3210
     $_SESSION['boincimport_stage_selected'] = 'url';
3274
-  }
3275
-  else {
3211
+  } else {
3276 3212
     // An error occurred.
3277 3213
     // $operations contains the operations that remained unprocessed.
3278 3214
     $error_operation = reset($operations);
@@ -3378,8 +3314,7 @@  discard block
 block discarded – undo
3378 3314
     $context['results']['success'][] = $boincuser_id;
3379 3315
     $context['results']['subscriptions'][$boincuser_id] = $count;
3380 3316
     $message = "Successfully imported {$count} subscriptions for user {$boincuser_id}";
3381
-  }
3382
-  else {
3317
+  } else {
3383 3318
     $context['results']['failure'][] = $boincuser_id;
3384 3319
     $message = "Failed to import subscriptions for user {$boincuser_id}!";
3385 3320
     watchdog('boincimport',
@@ -3396,8 +3331,7 @@  discard block
 block discarded – undo
3396 3331
   // Update the progress for the batch engine
3397 3332
   if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3398 3333
     $context['finished'] = 1;
3399
-  }
3400
-  else {
3334
+  } else {
3401 3335
     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3402 3336
   }
3403 3337
 }
@@ -3422,8 +3356,7 @@  discard block
 block discarded – undo
3422 3356
     // Set the subscription import successful flag in the variable table
3423 3357
     variable_set('boincimport_import_subscription_successful', '1');
3424 3358
     $_SESSION['boincimport_stage_selected'] = 'url';
3425
-  }
3426
-  else {
3359
+  } else {
3427 3360
     // An error occurred.
3428 3361
     // $operations contains the operations that remained unprocessed.
3429 3362
     $error_operation = reset($operations);
@@ -3601,8 +3534,7 @@  discard block
 block discarded – undo
3601 3534
       // Store some result for post-processing in the finished callback.
3602 3535
       $context['results']['nodes']['updated'][] = $node->nid;
3603 3536
       $message = "Successfully updated node {$node->nid}";
3604
-    }
3605
-    else {
3537
+    } else {
3606 3538
       $message = "No changes made to node {$node->nid}!";
3607 3539
     }
3608 3540
     
@@ -3614,8 +3546,7 @@  discard block
 block discarded – undo
3614 3546
     // Update the progress for the batch engine
3615 3547
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3616 3548
       $context['finished'] = 1;
3617
-    }
3618
-    else {
3549
+    } else {
3619 3550
       $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3620 3551
     }
3621 3552
   }
@@ -3665,8 +3596,7 @@  discard block
 block discarded – undo
3665 3596
       // Store some result for post-processing in the finished callback.
3666 3597
       $context['results']['comments']['updated'][] = $comment->cid;
3667 3598
       $message = "Successfully updated comment {$comment->cid}";
3668
-    }
3669
-    else {
3599
+    } else {
3670 3600
       $message = "No changes made to comment {$comment->cid}!";
3671 3601
     }
3672 3602
     
@@ -3678,8 +3608,7 @@  discard block
 block discarded – undo
3678 3608
     // Update the progress for the batch engine
3679 3609
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3680 3610
       $context['finished'] = 1;
3681
-    }
3682
-    else {
3611
+    } else {
3683 3612
       $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3684 3613
     }
3685 3614
   }
@@ -3728,8 +3657,7 @@  discard block
 block discarded – undo
3728 3657
       // Store some result for post-processing in the finished callback.
3729 3658
       $context['results']['pm']['updated'][] = $pm->mid;
3730 3659
       $message = "Successfully updated private message {$pm->mid}";
3731
-    }
3732
-    else {
3660
+    } else {
3733 3661
       $message = "No changes made to private message {$pm->mid}!";
3734 3662
     }
3735 3663
     
@@ -3741,8 +3669,7 @@  discard block
 block discarded – undo
3741 3669
     // Update the progress for the batch engine
3742 3670
     if ($context['sandbox']['progress'] >= $context['sandbox']['max']) {
3743 3671
       $context['finished'] = 1;
3744
-    }
3745
-    else {
3672
+    } else {
3746 3673
       $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
3747 3674
     }
3748 3675
   }
@@ -3807,8 +3734,7 @@  discard block
 block discarded – undo
3807 3734
     // Set the replace URLs successful flag in the variable table
3808 3735
     variable_set('boincimport_replace_urls_successful', '1');
3809 3736
     $_SESSION['boincimport_stage_selected'] = 'users';
3810
-  }
3811
-  else {
3737
+  } else {
3812 3738
     // An error occurred.
3813 3739
     // $operations contains the operations that remained unprocessed.
3814 3740
     $error_operation = reset($operations);
@@ -4028,13 +3954,11 @@  discard block
 block discarded – undo
4028 3954
       if (isset($this->boincDomains[$domain])) {
4029 3955
         // This is a URL configured to be transformed
4030 3956
         return "{$http}://{$this->drupalDomain}{$this->basePath}";
4031
-      }
4032
-      else {
3957
+      } else {
4033 3958
         // This URL should not be transformed
4034 3959
         return NULL;
4035 3960
       }
4036
-    }
4037
-    else {
3961
+    } else {
4038 3962
       // This is a relative URL
4039 3963
       return $this->basePath;
4040 3964
     }
@@ -4056,8 +3980,7 @@  discard block
 block discarded – undo
4056 3980
       ));
4057 3981
       if ($id) {
4058 3982
         $link = "{$newBaseUrl}goto/comment/{$id}";
4059
-      }
4060
-      else {
3983
+      } else {
4061 3984
         // This post is not in the post import table, so it's probably a topic
4062 3985
         $link = $this->transformTopicLinks($matches);
4063 3986
       }
@@ -4081,8 +4004,7 @@  discard block
 block discarded – undo
4081 4004
       ));
4082 4005
       if ($id) {
4083 4006
         $link = "{$newBaseUrl}goto/comment/{$id}";
4084
-      }
4085
-      else {
4007
+      } else {
4086 4008
         // This post is not in the post import table, so it's probably a topic
4087 4009
         $link = $this->transformTopicLinks($matches);
4088 4010
       }
Please login to merge, or discard this patch.
drupal/sites/default/boinc/modules/boincstats/boincstats.module 4 patches
Doc Comments   +3 added lines patch added patch discarded remove patch
@@ -422,6 +422,9 @@
 block discarded – undo
422 422
 /*
423 423
  *
424 424
  */
425
+/**
426
+ * @param integer $credit
427
+ */
425 428
 function boincstats_credit_to_ghours($credit) {
426 429
   return $credit / (100 * 365);
427 430
 }
Please login to merge, or discard this patch.
Indentation   +194 added lines, -194 removed lines patch added patch discarded remove patch
@@ -2,9 +2,9 @@  discard block
 block discarded – undo
2 2
 // $Id$
3 3
 
4 4
 /**
5
-  * @file
6
-  * Enable BOINC charting features for statistics
7
-  */
5
+ * @file
6
+ * Enable BOINC charting features for statistics
7
+ */
8 8
 
9 9
 
10 10
 /*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *
@@ -18,10 +18,10 @@  discard block
 block discarded – undo
18 18
  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  */
19 19
 
20 20
 /**
21
-  * Implementation of hook_menu().
22
-  */
21
+ * Implementation of hook_menu().
22
+ */
23 23
 function boincstats_menu() {
24
-  $items['admin/boinc/stats'] = array(
24
+    $items['admin/boinc/stats'] = array(
25 25
     'title' => 'Environment: Statistics setup',
26 26
     'description' => 'Configure the stats system for generating charts and 
27 27
       providing cross project data.',
@@ -30,18 +30,18 @@  discard block
 block discarded – undo
30 30
     'access arguments' => array('administer site configuration'),
31 31
     'type' => MENU_NORMAL_ITEM,
32 32
     'file' => 'boincstats.admin.inc'
33
-  );
34
-  $items['charts/user'] = array(
33
+    );
34
+    $items['charts/user'] = array(
35 35
     'page callback' => 'boincstats_get_user_stats_chart',
36 36
     'access arguments' => array('access content'),
37 37
     'type' => MENU_CALLBACK
38
-  );
39
-  $items['charts/project'] = array(
38
+    );
39
+    $items['charts/project'] = array(
40 40
     'page callback' => 'boincstats_get_project_stats_chart',
41 41
     'access arguments' => array('access content'),
42 42
     'type' => MENU_CALLBACK
43
-  );
44
-  return $items;
43
+    );
44
+    return $items;
45 45
 }
46 46
 
47 47
 
@@ -50,44 +50,44 @@  discard block
 block discarded – undo
50 50
  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  */
51 51
  
52 52
 /**
53
-  * User stats chart menu callback
54
-  * Called to generate the daily credit status chart for a user (dashboard)
55
-  */
53
+ * User stats chart menu callback
54
+ * Called to generate the daily credit status chart for a user (dashboard)
55
+ */
56 56
 function boincstats_get_user_stats_chart($cpid = null, $chart_size = 'medium') {
57 57
   
58
-  // pChart library inclusions
59
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pData.class');
60
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pDraw.class');
61
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pImage.class');
62
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pCache.class');
58
+    // pChart library inclusions
59
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pData.class');
60
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pDraw.class');
61
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pImage.class');
62
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pCache.class');
63 63
   
64
-  init_theme();
65
-  global $theme_key;
66
-  $cache_name = "{$theme_key}_";
64
+    init_theme();
65
+    global $theme_key;
66
+    $cache_name = "{$theme_key}_";
67 67
   
68
-  // Determine the stats environment
69
-  boincstats_check_configuration();
70
-  $stats_server = variable_get('boinc_stats_server', '');
71
-  $stats_rpc = variable_get('boinc_stats_user_credit_history_rpc', '');
72
-  $project_id = variable_get('boinc_stats_remote_project_id', '');
68
+    // Determine the stats environment
69
+    boincstats_check_configuration();
70
+    $stats_server = variable_get('boinc_stats_server', '');
71
+    $stats_rpc = variable_get('boinc_stats_user_credit_history_rpc', '');
72
+    $project_id = variable_get('boinc_stats_remote_project_id', '');
73 73
   
74
-  $dataset_size = 0;
75
-  $chart_height = 0;
76
-  $chart_width = 0;
77
-  $draw_x_lines = FALSE;
78
-  $label_x_axis = FALSE;
74
+    $dataset_size = 0;
75
+    $chart_height = 0;
76
+    $chart_width = 0;
77
+    $draw_x_lines = FALSE;
78
+    $label_x_axis = FALSE;
79 79
   
80
-  $stats_xml = NULL;
81
-  $color_keys = array('R', 'G', 'B');
80
+    $stats_xml = NULL;
81
+    $color_keys = array('R', 'G', 'B');
82 82
   
83
-  // Get color configuration
84
-  $palette_color_hex = theme_get_setting('boinc_stats_chart_color');
85
-  $palette_color = array_combine($color_keys, sscanf($palette_color_hex, "#%02x%02x%02x"));
86
-  $backdrop_color_hex = theme_get_setting('boinc_stats_chart_bcolor');
87
-  $backdrop_color = array_combine($color_keys, sscanf($backdrop_color_hex, "#%02x%02x%02x"));
83
+    // Get color configuration
84
+    $palette_color_hex = theme_get_setting('boinc_stats_chart_color');
85
+    $palette_color = array_combine($color_keys, sscanf($palette_color_hex, "#%02x%02x%02x"));
86
+    $backdrop_color_hex = theme_get_setting('boinc_stats_chart_bcolor');
87
+    $backdrop_color = array_combine($color_keys, sscanf($backdrop_color_hex, "#%02x%02x%02x"));
88 88
   
89
-  switch($chart_size) {
90
-  case 'small':
89
+    switch($chart_size) {
90
+    case 'small':
91 91
     $cache_name .= "{$cpid}_small";
92 92
     $dataset_size = 30;
93 93
     $chart_height = 80;
@@ -96,7 +96,7 @@  discard block
 block discarded – undo
96 96
     $draw_x_lines = FALSE;
97 97
     $label_x_axis = FALSE;
98 98
     break;
99
-  case 'medium':
99
+    case 'medium':
100 100
   default:
101 101
     $cache_name .= $cpid;
102 102
     $dataset_size = 60;
@@ -104,25 +104,25 @@  discard block
 block discarded – undo
104 104
     $chart_width = 589;
105 105
     $draw_x_lines = TRUE;
106 106
     $label_x_axis = TRUE;
107
-  }
107
+    }
108 108
   
109
-  // Sanity check for cache directory
110
-  if (!boincstats_check_cache_dir()) {
109
+    // Sanity check for cache directory
110
+    if (!boincstats_check_cache_dir()) {
111 111
     return;
112
-  }
112
+    }
113 113
   
114
-  // Initialize the cache object and flush stale images
115
-  $myCache = new pCache(array('CacheFolder' => realpath('.') . '/' . conf_path() . '/files/cache'));
116
-  $myCache->removeOlderThan(60*60*24);
114
+    // Initialize the cache object and flush stale images
115
+    $myCache = new pCache(array('CacheFolder' => realpath('.') . '/' . conf_path() . '/files/cache'));
116
+    $myCache->removeOlderThan(60*60*24);
117 117
   
118
-  if ($myCache->isInCache($cache_name)) {
118
+    if ($myCache->isInCache($cache_name)) {
119 119
     $myCache->strokeFromCache($cache_name);
120
-  }
121
-  else {
120
+    }
121
+    else {
122 122
     // Construct query string
123 123
     $get = array(
124
-      'cpid' => $cpid,
125
-      'projectid' => $project_id
124
+        'cpid' => $cpid,
125
+        'projectid' => $project_id
126 126
     );
127 127
     $args = array();
128 128
     foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
     $target_url = "http://{$stats_server}/{$stats_rpc}{$query}";
133 133
     $result = drupal_http_request($target_url);
134 134
     if (in_array($result->code, array(200, 304))) {
135
-      $stats_xml = simplexml_load_string($result->data);
135
+        $stats_xml = simplexml_load_string($result->data);
136 136
     }
137 137
     
138 138
     // Create and populate the pData object
@@ -141,15 +141,15 @@  discard block
 block discarded – undo
141 141
     // Initialize dataset
142 142
     $dataset = array();
143 143
     if ($stats_xml) {
144
-      $credit = null;
145
-      for ($i = 0, $j = 31; $j <= 91; $i++, $j++) {
144
+        $credit = null;
145
+        for ($i = 0, $j = 31; $j <= 91; $i++, $j++) {
146 146
         $day = "day_{$j}";
147 147
         $credit[$i] = isset($stats_xml->total_credit_history_last_91_days->$day) ? (int) $stats_xml->total_credit_history_last_91_days->$day : 0;
148 148
         $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i-1]) : 0;
149
-      }
149
+        }
150 150
     }
151 151
     else {
152
-      for ($i = 0; $i <= $dataset_size; $i++) $dataset[] = 0;
152
+        for ($i = 0; $i <= $dataset_size; $i++) $dataset[] = 0;
153 153
     }
154 154
     
155 155
     $MyData->addPoints($dataset, 'series1');
@@ -168,39 +168,39 @@  discard block
 block discarded – undo
168 168
     // Define the chart area
169 169
     $myPicture->setGraphArea(0, 3, $chart_width, $chart_height);
170 170
     if ($backdrop_color) {
171
-      $myPicture->drawFilledRectangle(0, 0, $chart_width, $chart_height, $backdrop_color);
171
+        $myPicture->drawFilledRectangle(0, 0, $chart_width, $chart_height, $backdrop_color);
172 172
     }
173 173
     
174 174
     // Draw the scale
175 175
     $scaleSettings = array(
176
-      'Mode' => SCALE_MODE_START0,
177
-      'DrawYLines' => false,
178
-      'DrawXLines' => $draw_x_lines,
179
-      'GridTicks' => 2,
180
-      'LabelSkip' => 9,
181
-      'SkippedAxisAlpha' => 0,
182
-      'SkippedInnerTickWidth' => 0,
183
-      'SkippedOuterTickWidth' => 0,
184
-      'AxisAlpha' => 0,
185
-      'InnerTickWidth' => 0,
186
-      'OuterTickWidth' => 0,
187
-      'XMargin' => 1,
188
-      'YMargin' => 0,
189
-      'Floating' => TRUE,
190
-      'GridR' => 200,
191
-      'GridG' => 200,
192
-      'GridB' => 200,
193
-      'DrawSubTicks' => false,
194
-      'CycleBackground' => false
176
+        'Mode' => SCALE_MODE_START0,
177
+        'DrawYLines' => false,
178
+        'DrawXLines' => $draw_x_lines,
179
+        'GridTicks' => 2,
180
+        'LabelSkip' => 9,
181
+        'SkippedAxisAlpha' => 0,
182
+        'SkippedInnerTickWidth' => 0,
183
+        'SkippedOuterTickWidth' => 0,
184
+        'AxisAlpha' => 0,
185
+        'InnerTickWidth' => 0,
186
+        'OuterTickWidth' => 0,
187
+        'XMargin' => 1,
188
+        'YMargin' => 0,
189
+        'Floating' => TRUE,
190
+        'GridR' => 200,
191
+        'GridG' => 200,
192
+        'GridB' => 200,
193
+        'DrawSubTicks' => false,
194
+        'CycleBackground' => false
195 195
     );
196 196
     $myPicture->setFontProperties(array('FontSize' => 10));
197 197
     $myPicture->drawScale($scaleSettings);
198 198
     
199 199
     if ($label_x_axis) {
200
-      for ($i = 5; $i >= 0; $i--) {
200
+        for ($i = 5; $i >= 0; $i--) {
201 201
         $label = ($i) ? -10*$i : 'Today';
202 202
         $myPicture->drawText(589-587*($i/6)-5, 2, $label, array('Align' => TEXT_ALIGN_TOPRIGHT));
203
-      }
203
+        }
204 204
     }
205 205
 
206 206
     // Draw the area chart
@@ -212,7 +212,7 @@  discard block
 block discarded – undo
212 212
     // Render the picture (choose the best way)
213 213
     //$myPicture->autoOutput('pictures/example.drawAreaChart.simple.png');
214 214
     $myPicture->stroke();
215
-  }
215
+    }
216 216
 }
217 217
 
218 218
 /**
@@ -220,53 +220,53 @@  discard block
 block discarded – undo
220 220
  * Called to generate the daily credit status chart for the whole project
221 221
  */
222 222
 function boincstats_get_project_stats_chart() {
223
-  // pChart library inclusions
224
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pData.class');
225
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pDraw.class');
226
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pImage.class');
227
-  module_load_include('php', 'boincstats', 'includes/pchart/class/pCache.class');
223
+    // pChart library inclusions
224
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pData.class');
225
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pDraw.class');
226
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pImage.class');
227
+    module_load_include('php', 'boincstats', 'includes/pchart/class/pCache.class');
228 228
   
229
-  init_theme();
230
-  global $theme_key;
231
-  $cache_name = "{$theme_key}_project_chart";
229
+    init_theme();
230
+    global $theme_key;
231
+    $cache_name = "{$theme_key}_project_chart";
232 232
   
233
-  $stats_xml = boincstats_get_project_stats();
234
-  $color_keys = array('R', 'G', 'B');
233
+    $stats_xml = boincstats_get_project_stats();
234
+    $color_keys = array('R', 'G', 'B');
235 235
   
236
-  // Get color configuration
237
-  $palette_color_hex = theme_get_setting('boinc_stats_chart_color');
238
-  $palette_color = array_combine($color_keys, sscanf($palette_color_hex, "#%02x%02x%02x"));
239
-  $backdrop_color_hex = theme_get_setting('boinc_stats_chart_bcolor');
240
-  $backdrop_color = array_combine($color_keys, sscanf($backdrop_color_hex, "#%02x%02x%02x"));
236
+    // Get color configuration
237
+    $palette_color_hex = theme_get_setting('boinc_stats_chart_color');
238
+    $palette_color = array_combine($color_keys, sscanf($palette_color_hex, "#%02x%02x%02x"));
239
+    $backdrop_color_hex = theme_get_setting('boinc_stats_chart_bcolor');
240
+    $backdrop_color = array_combine($color_keys, sscanf($backdrop_color_hex, "#%02x%02x%02x"));
241 241
    
242
-  // Create and populate the pData object
243
-  $MyData = new pData();
242
+    // Create and populate the pData object
243
+    $MyData = new pData();
244 244
   
245
-  // Sanity check for cache directory
246
-  if (!boincstats_check_cache_dir()) {
245
+    // Sanity check for cache directory
246
+    if (!boincstats_check_cache_dir()) {
247 247
     return;
248
-  }
248
+    }
249 249
   
250
-  // Initialize the cache object and flush stale images
251
-  $myCache = new pCache(array('CacheFolder' => realpath('.') . '/' . conf_path(). '/files/cache'));
252
-  $myCache->removeOlderThan(60*60*24);
250
+    // Initialize the cache object and flush stale images
251
+    $myCache = new pCache(array('CacheFolder' => realpath('.') . '/' . conf_path(). '/files/cache'));
252
+    $myCache->removeOlderThan(60*60*24);
253 253
   
254
-  if ($myCache->isInCache($cache_name)) {
254
+    if ($myCache->isInCache($cache_name)) {
255 255
     $myCache->strokeFromCache($cache_name);
256
-  }
257
-  else {
256
+    }
257
+    else {
258 258
     // Initialize dataset
259 259
     $dataset = array();
260 260
     if ($stats_xml) {
261
-      $credit = null;
262
-      for ($i = 0, $j = 31; $j <= 91; $i++, $j++) {
261
+        $credit = null;
262
+        for ($i = 0, $j = 31; $j <= 91; $i++, $j++) {
263 263
         $day = "day_{$j}";
264 264
         $credit[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
265 265
         $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i-1]) : 0;
266
-      }
266
+        }
267 267
     }
268 268
     else {
269
-      for ($i = 0; $i <= 30; $i++) $dataset[] = 0;
269
+        for ($i = 0; $i <= 30; $i++) $dataset[] = 0;
270 270
     }
271 271
     
272 272
     $MyData->addPoints($dataset, 'series1');
@@ -288,25 +288,25 @@  discard block
 block discarded – undo
288 288
 
289 289
     // Draw the scale
290 290
     $scaleSettings = array(
291
-      'Mode' => SCALE_MODE_START0,
292
-      'DrawYLines' => false,
293
-      'DrawXLines' => false,
294
-      'GridTicks' => 2,
295
-      'LabelSkip' => 9,
296
-      'SkippedAxisAlpha' => 0,
297
-      'SkippedInnerTickWidth' => 0,
298
-      'SkippedOuterTickWidth' => 0,
299
-      'AxisAlpha' => 0,
300
-      'InnerTickWidth' => 0,
301
-      'OuterTickWidth' => 0,
302
-      'XMargin' => 1,
303
-      'YMargin' => 0,
304
-      'Floating' => TRUE,
305
-      'GridR' => 200,
306
-      'GridG' => 200,
307
-      'GridB' => 200,
308
-      'DrawSubTicks' => false,
309
-      'CycleBackground' => false
291
+        'Mode' => SCALE_MODE_START0,
292
+        'DrawYLines' => false,
293
+        'DrawXLines' => false,
294
+        'GridTicks' => 2,
295
+        'LabelSkip' => 9,
296
+        'SkippedAxisAlpha' => 0,
297
+        'SkippedInnerTickWidth' => 0,
298
+        'SkippedOuterTickWidth' => 0,
299
+        'AxisAlpha' => 0,
300
+        'InnerTickWidth' => 0,
301
+        'OuterTickWidth' => 0,
302
+        'XMargin' => 1,
303
+        'YMargin' => 0,
304
+        'Floating' => TRUE,
305
+        'GridR' => 200,
306
+        'GridG' => 200,
307
+        'GridB' => 200,
308
+        'DrawSubTicks' => false,
309
+        'CycleBackground' => false
310 310
     );
311 311
     $myPicture->setFontProperties(array('FontSize' => 10));
312 312
     $myPicture->drawScale($scaleSettings);
@@ -325,41 +325,41 @@  discard block
 block discarded – undo
325 325
     // Render the picture (choose the best way)
326 326
     //$myPicture->autoOutput('pictures/example.drawAreaChart.simple.png');
327 327
     $myPicture->stroke();
328
-  }
328
+    }
329 329
 }
330 330
 
331 331
 /*
332 332
  *
333 333
  */
334 334
 function boincstats_check_cache_dir($cache_path = 'files/cache') {
335
-  $cache_dir = realpath('.') . '/' . conf_path() . '/' . $cache_path;
336
-  if (!is_writeable($cache_dir)) {
335
+    $cache_dir = realpath('.') . '/' . conf_path() . '/' . $cache_path;
336
+    if (!is_writeable($cache_dir)) {
337 337
     if (!is_dir($cache_dir)) {
338
-      if (!is_writeable(dirname($cache_dir))) {
338
+        if (!is_writeable(dirname($cache_dir))) {
339 339
         // If the parent "files" dir isn't even writeable...
340 340
         watchdog('boincstats', '@parent_dir directory is not writeable. This
341 341
           directory must be writeable by the web server.',
342
-          array('@parent_dir' => dirname($cache_dir)), WATCHDOG_ERROR);
342
+            array('@parent_dir' => dirname($cache_dir)), WATCHDOG_ERROR);
343 343
         return FALSE;
344
-      }
345
-      else {
344
+        }
345
+        else {
346 346
         // Create the cache dir
347 347
         if (!mkdir($cache_dir, 0775)) {
348
-          watchdog('boincstats', 'Failed to create @cache_dir directory. Check
348
+            watchdog('boincstats', 'Failed to create @cache_dir directory. Check
349 349
             filesystem permissions...?',
350 350
             array('@cache_dir' => $cache_dir), WATCHDOG_ERROR);
351
-          return FALSE;
351
+            return FALSE;
352
+        }
352 353
         }
353
-      }
354 354
     }
355 355
     else {
356
-      watchdog('boincstats', 'Cache directory at @cache_dir is not writeable.
356
+        watchdog('boincstats', 'Cache directory at @cache_dir is not writeable.
357 357
         Please allow webserver write access.',
358 358
         array('@cache_dir' => $cache_dir), WATCHDOG_ERROR);
359
-      return FALSE;
359
+        return FALSE;
360 360
     }
361
-  }
362
-  return TRUE;
361
+    }
362
+    return TRUE;
363 363
 }
364 364
 
365 365
 /*
@@ -367,76 +367,76 @@  discard block
 block discarded – undo
367 367
  */
368 368
 function boincstats_get_project_stats() {
369 369
   
370
-  // Determine the stats environment
371
-  boincstats_check_configuration();
372
-  $stats_server = variable_get('boinc_stats_server', '');
373
-  $stats_rpc = variable_get('boinc_stats_project_credit_history_rpc', '');
374
-  $project_id = variable_get('boinc_stats_remote_project_id', '');
370
+    // Determine the stats environment
371
+    boincstats_check_configuration();
372
+    $stats_server = variable_get('boinc_stats_server', '');
373
+    $stats_rpc = variable_get('boinc_stats_project_credit_history_rpc', '');
374
+    $project_id = variable_get('boinc_stats_remote_project_id', '');
375 375
   
376
-  // Construct query string
377
-  $get = array(
376
+    // Construct query string
377
+    $get = array(
378 378
     'projectid' => $project_id
379
-  );
380
-  $args = array();
381
-  foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
382
-  $query = '?' . implode('&', $args);
379
+    );
380
+    $args = array();
381
+    foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
382
+    $query = '?' . implode('&', $args);
383 383
   
384
-  // Load XML from RPC
385
-  $stats_xml = NULL;
386
-  $target_url = "http://{$stats_server}/{$stats_rpc}{$query}";
387
-  $result = drupal_http_request($target_url);
388
-  if (in_array($result->code, array(200, 304))) {
384
+    // Load XML from RPC
385
+    $stats_xml = NULL;
386
+    $target_url = "http://{$stats_server}/{$stats_rpc}{$query}";
387
+    $result = drupal_http_request($target_url);
388
+    if (in_array($result->code, array(200, 304))) {
389 389
     $stats_xml = simplexml_load_string($result->data);
390
-  }
391
-  watchdog('boincstats', $target_url);
392
-  return $stats_xml;
390
+    }
391
+    watchdog('boincstats', $target_url);
392
+    return $stats_xml;
393 393
 }
394 394
 
395 395
 /*
396 396
  *
397 397
  */
398 398
 function boincstats_get_project_total_credit() {
399
-  $stats_xml = boincstats_get_project_stats();
400
-  return isset($stats_xml->day_91) ? (int) $stats_xml->day_91 : 0;
399
+    $stats_xml = boincstats_get_project_stats();
400
+    return isset($stats_xml->day_91) ? (int) $stats_xml->day_91 : 0;
401 401
 }
402 402
 
403 403
 /*
404 404
  *
405 405
  */
406 406
 function boincstats_get_project_avg_credit() {
407
-  $stats_xml = boincstats_get_project_stats();
408
-  $dataset = array();
409
-  if ($stats_xml) {
407
+    $stats_xml = boincstats_get_project_stats();
408
+    $dataset = array();
409
+    if ($stats_xml) {
410 410
     $daily_values = null;
411 411
     $dail_totals = null;
412 412
     for ($i = 61; $i <= 91; $i++) {
413
-      $day = "day_{$i}";
414
-      $daily_totals[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
415
-      if ($i == 61) continue;
416
-      $daily_values[$i] = ($i) ? ($daily_totals[$i] - $daily_totals[$i-1]) : 0;
413
+        $day = "day_{$i}";
414
+        $daily_totals[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
415
+        if ($i == 61) continue;
416
+        $daily_values[$i] = ($i) ? ($daily_totals[$i] - $daily_totals[$i-1]) : 0;
417 417
     }
418
-  }
419
-  return (count($daily_values)) ? array_sum($daily_values) / count($daily_values) : 0;
418
+    }
419
+    return (count($daily_values)) ? array_sum($daily_values) / count($daily_values) : 0;
420 420
 }
421 421
 
422 422
 /*
423 423
  *
424 424
  */
425 425
 function boincstats_credit_to_ghours($credit) {
426
-  return $credit / (100 * 365);
426
+    return $credit / (100 * 365);
427 427
 }
428 428
 
429 429
 /*
430 430
  *
431 431
  */
432 432
 function boincstats_credit_to_flops($credit, $prefix = 0) {
433
-  $factor = array(
433
+    $factor = array(
434 434
     '0' => 0,
435 435
     'g' => 3,
436 436
     't' => 6,
437 437
     'p' => 9
438
-  );
439
-  return $credit / (pow(10, (int) $factor[$prefix]) / 10);
438
+    );
439
+    return $credit / (pow(10, (int) $factor[$prefix]) / 10);
440 440
 }
441 441
 
442 442
 
@@ -445,22 +445,22 @@  discard block
 block discarded – undo
445 445
  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  */
446 446
 
447 447
 function boincstats_get_project_stats_overview($type = 'basic') {
448
-  global $base_path;
449
-  $output = '';
450
-  switch ($type) {
451
-  case 'basic':
448
+    global $base_path;
449
+    $output = '';
450
+    switch ($type) {
451
+    case 'basic':
452 452
     $output .= '<div class="overlay"><span>(' . bts('Credits per day') . ')</span></div>' . "\n";
453 453
     $output .= '<div class="chart"><img src="' . $base_path . 'charts/project" /></div>' . "\n";
454 454
     break;
455
-  case 'detailed':
455
+    case 'detailed':
456 456
     $output .= '<div class="stats"><label>' . bts('Total G-hours') . ': </label><span>' . number_format(boincstats_credit_to_ghours(boincstats_get_project_total_credit())) . '</span></div>' . "\n";
457 457
     $output .= '<div class="stats"><label>' . bts('Avg TFlops') . ': </label><span>' . number_format(boincstats_credit_to_flops(boincstats_get_project_avg_credit(), 't')) . '</span></div>' . "\n";
458 458
     //$output .= '<div class="stats"><a href="#">' . bts('Pending credits') . '</a></div>' . "\n";
459 459
     $output .= '<div class="chart"><img src="' . $base_path . 'charts/project" /></div>' . "\n";
460 460
     break;
461
-  default:
461
+    default:
462 462
   }
463
-  return $output;
463
+    return $output;
464 464
 }
465 465
 
466 466
 
@@ -472,19 +472,19 @@  discard block
 block discarded – undo
472 472
  * Check that the stats system is configured, report if it isn't
473 473
  */
474 474
 function boincstats_check_configuration() {
475
-  $project_id = variable_get('boinc_stats_remote_project_id', '');
476
-  if (!$project_id) {
475
+    $project_id = variable_get('boinc_stats_remote_project_id', '');
476
+    if (!$project_id) {
477 477
     watchdog('boincstats', 'The BOINC stats system is not configured. Please
478 478
         !configure_it', array('!configure_it' => l(t('configure it now'),
479
-          'admin/boinc/stats')), WATCHDOG_ERROR);
479
+            'admin/boinc/stats')), WATCHDOG_ERROR);
480 480
     if (user_access('administer site configuration')) {
481
-      drupal_set_message(t('The BOINC stats system is not configured. Please
481
+        drupal_set_message(t('The BOINC stats system is not configured. Please
482 482
         !configure_it', array('!configure_it' => l(t('configure it now'),
483
-          'admin/boinc/stats'))), 'error', FALSE);
483
+            'admin/boinc/stats'))), 'error', FALSE);
484 484
     }
485 485
     else {
486
-      drupal_set_message(t('There is a problem with the site. Please contact
486
+        drupal_set_message(t('There is a problem with the site. Please contact
487 487
         the system administrator.'), 'error', FALSE);
488 488
     }
489
-  }
489
+    }
490 490
 }
Please login to merge, or discard this patch.
Spacing   +29 added lines, -29 removed lines patch added patch discarded remove patch
@@ -86,7 +86,7 @@  discard block
 block discarded – undo
86 86
   $backdrop_color_hex = theme_get_setting('boinc_stats_chart_bcolor');
87 87
   $backdrop_color = array_combine($color_keys, sscanf($backdrop_color_hex, "#%02x%02x%02x"));
88 88
   
89
-  switch($chart_size) {
89
+  switch ($chart_size) {
90 90
   case 'small':
91 91
     $cache_name .= "{$cpid}_small";
92 92
     $dataset_size = 30;
@@ -112,7 +112,7 @@  discard block
 block discarded – undo
112 112
   }
113 113
   
114 114
   // Initialize the cache object and flush stale images
115
-  $myCache = new pCache(array('CacheFolder' => realpath('.') . '/' . conf_path() . '/files/cache'));
115
+  $myCache = new pCache(array('CacheFolder' => realpath('.').'/'.conf_path().'/files/cache'));
116 116
   $myCache->removeOlderThan(60*60*24);
117 117
   
118 118
   if ($myCache->isInCache($cache_name)) {
@@ -125,8 +125,8 @@  discard block
 block discarded – undo
125 125
       'projectid' => $project_id
126 126
     );
127 127
     $args = array();
128
-    foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
129
-    $query = '?' . implode('&', $args);
128
+    foreach ($get as $arg => $value) $args[] = "{$arg}=".rawurlencode($value);
129
+    $query = '?'.implode('&', $args);
130 130
     
131 131
     // Load XML from RPC
132 132
     $target_url = "http://{$stats_server}/{$stats_rpc}{$query}";
@@ -144,8 +144,8 @@  discard block
 block discarded – undo
144 144
       $credit = null;
145 145
       for ($i = 0, $j = 31; $j <= 91; $i++, $j++) {
146 146
         $day = "day_{$j}";
147
-        $credit[$i] = isset($stats_xml->total_credit_history_last_91_days->$day) ? (int) $stats_xml->total_credit_history_last_91_days->$day : 0;
148
-        $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i-1]) : 0;
147
+        $credit[$i] = isset($stats_xml->total_credit_history_last_91_days->$day) ? (int)$stats_xml->total_credit_history_last_91_days->$day : 0;
148
+        $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i - 1]) : 0;
149 149
       }
150 150
     }
151 151
     else {
@@ -154,7 +154,7 @@  discard block
 block discarded – undo
154 154
     
155 155
     $MyData->addPoints($dataset, 'series1');
156 156
     $MyData->setPalette('series1', $palette_color);
157
-    $MyData->setAxisPosition(0,AXIS_POSITION_RIGHT);
157
+    $MyData->setAxisPosition(0, AXIS_POSITION_RIGHT);
158 158
     
159 159
     // Create the pChart object
160 160
     $myPicture = new pImage($chart_width, $chart_height, $MyData);
@@ -199,7 +199,7 @@  discard block
 block discarded – undo
199 199
     if ($label_x_axis) {
200 200
       for ($i = 5; $i >= 0; $i--) {
201 201
         $label = ($i) ? -10*$i : 'Today';
202
-        $myPicture->drawText(589-587*($i/6)-5, 2, $label, array('Align' => TEXT_ALIGN_TOPRIGHT));
202
+        $myPicture->drawText(589 - 587*($i/6) - 5, 2, $label, array('Align' => TEXT_ALIGN_TOPRIGHT));
203 203
       }
204 204
     }
205 205
 
@@ -248,7 +248,7 @@  discard block
 block discarded – undo
248 248
   }
249 249
   
250 250
   // Initialize the cache object and flush stale images
251
-  $myCache = new pCache(array('CacheFolder' => realpath('.') . '/' . conf_path(). '/files/cache'));
251
+  $myCache = new pCache(array('CacheFolder' => realpath('.').'/'.conf_path().'/files/cache'));
252 252
   $myCache->removeOlderThan(60*60*24);
253 253
   
254 254
   if ($myCache->isInCache($cache_name)) {
@@ -261,8 +261,8 @@  discard block
 block discarded – undo
261 261
       $credit = null;
262 262
       for ($i = 0, $j = 31; $j <= 91; $i++, $j++) {
263 263
         $day = "day_{$j}";
264
-        $credit[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
265
-        $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i-1]) : 0;
264
+        $credit[$i] = isset($stats_xml->$day) ? (int)$stats_xml->$day : 0;
265
+        $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i - 1]) : 0;
266 266
       }
267 267
     }
268 268
     else {
@@ -271,10 +271,10 @@  discard block
 block discarded – undo
271 271
     
272 272
     $MyData->addPoints($dataset, 'series1');
273 273
     $MyData->setPalette('series1', $palette_color);
274
-    $MyData->setAxisPosition(0,AXIS_POSITION_RIGHT);
274
+    $MyData->setAxisPosition(0, AXIS_POSITION_RIGHT);
275 275
 
276 276
     // Create the pChart object
277
-    $myPicture = new pImage(266,80,$MyData);
277
+    $myPicture = new pImage(266, 80, $MyData);
278 278
 
279 279
     // Turn on Antialiasing
280 280
     $myPicture->Antialias = true;
@@ -283,8 +283,8 @@  discard block
 block discarded – undo
283 283
     //$myPicture->setFontProperties(array('FontName' => '../fonts/pf_arma_five.ttf','FontSize' => 6));
284 284
 
285 285
     // Define the chart area
286
-    $myPicture->setGraphArea(0,0,266,80);
287
-    $myPicture->drawFilledRectangle(0,0,266,80,$backdrop_color);
286
+    $myPicture->setGraphArea(0, 0, 266, 80);
287
+    $myPicture->drawFilledRectangle(0, 0, 266, 80, $backdrop_color);
288 288
 
289 289
     // Draw the scale
290 290
     $scaleSettings = array(
@@ -332,7 +332,7 @@  discard block
 block discarded – undo
332 332
  *
333 333
  */
334 334
 function boincstats_check_cache_dir($cache_path = 'files/cache') {
335
-  $cache_dir = realpath('.') . '/' . conf_path() . '/' . $cache_path;
335
+  $cache_dir = realpath('.').'/'.conf_path().'/'.$cache_path;
336 336
   if (!is_writeable($cache_dir)) {
337 337
     if (!is_dir($cache_dir)) {
338 338
       if (!is_writeable(dirname($cache_dir))) {
@@ -378,8 +378,8 @@  discard block
 block discarded – undo
378 378
     'projectid' => $project_id
379 379
   );
380 380
   $args = array();
381
-  foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
382
-  $query = '?' . implode('&', $args);
381
+  foreach ($get as $arg => $value) $args[] = "{$arg}=".rawurlencode($value);
382
+  $query = '?'.implode('&', $args);
383 383
   
384 384
   // Load XML from RPC
385 385
   $stats_xml = NULL;
@@ -397,7 +397,7 @@  discard block
 block discarded – undo
397 397
  */
398 398
 function boincstats_get_project_total_credit() {
399 399
   $stats_xml = boincstats_get_project_stats();
400
-  return isset($stats_xml->day_91) ? (int) $stats_xml->day_91 : 0;
400
+  return isset($stats_xml->day_91) ? (int)$stats_xml->day_91 : 0;
401 401
 }
402 402
 
403 403
 /*
@@ -411,19 +411,19 @@  discard block
 block discarded – undo
411 411
     $dail_totals = null;
412 412
     for ($i = 61; $i <= 91; $i++) {
413 413
       $day = "day_{$i}";
414
-      $daily_totals[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
414
+      $daily_totals[$i] = isset($stats_xml->$day) ? (int)$stats_xml->$day : 0;
415 415
       if ($i == 61) continue;
416
-      $daily_values[$i] = ($i) ? ($daily_totals[$i] - $daily_totals[$i-1]) : 0;
416
+      $daily_values[$i] = ($i) ? ($daily_totals[$i] - $daily_totals[$i - 1]) : 0;
417 417
     }
418 418
   }
419
-  return (count($daily_values)) ? array_sum($daily_values) / count($daily_values) : 0;
419
+  return (count($daily_values)) ? array_sum($daily_values)/count($daily_values) : 0;
420 420
 }
421 421
 
422 422
 /*
423 423
  *
424 424
  */
425 425
 function boincstats_credit_to_ghours($credit) {
426
-  return $credit / (100 * 365);
426
+  return $credit/(100*365);
427 427
 }
428 428
 
429 429
 /*
@@ -436,7 +436,7 @@  discard block
 block discarded – undo
436 436
     't' => 6,
437 437
     'p' => 9
438 438
   );
439
-  return $credit / (pow(10, (int) $factor[$prefix]) / 10);
439
+  return $credit/(pow(10, (int)$factor[$prefix])/10);
440 440
 }
441 441
 
442 442
 
@@ -449,14 +449,14 @@  discard block
 block discarded – undo
449 449
   $output = '';
450 450
   switch ($type) {
451 451
   case 'basic':
452
-    $output .= '<div class="overlay"><span>(' . bts('Credits per day') . ')</span></div>' . "\n";
453
-    $output .= '<div class="chart"><img src="' . $base_path . 'charts/project" /></div>' . "\n";
452
+    $output .= '<div class="overlay"><span>('.bts('Credits per day').')</span></div>'."\n";
453
+    $output .= '<div class="chart"><img src="'.$base_path.'charts/project" /></div>'."\n";
454 454
     break;
455 455
   case 'detailed':
456
-    $output .= '<div class="stats"><label>' . bts('Total G-hours') . ': </label><span>' . number_format(boincstats_credit_to_ghours(boincstats_get_project_total_credit())) . '</span></div>' . "\n";
457
-    $output .= '<div class="stats"><label>' . bts('Avg TFlops') . ': </label><span>' . number_format(boincstats_credit_to_flops(boincstats_get_project_avg_credit(), 't')) . '</span></div>' . "\n";
456
+    $output .= '<div class="stats"><label>'.bts('Total G-hours').': </label><span>'.number_format(boincstats_credit_to_ghours(boincstats_get_project_total_credit())).'</span></div>'."\n";
457
+    $output .= '<div class="stats"><label>'.bts('Avg TFlops').': </label><span>'.number_format(boincstats_credit_to_flops(boincstats_get_project_avg_credit(), 't')).'</span></div>'."\n";
458 458
     //$output .= '<div class="stats"><a href="#">' . bts('Pending credits') . '</a></div>' . "\n";
459
-    $output .= '<div class="chart"><img src="' . $base_path . 'charts/project" /></div>' . "\n";
459
+    $output .= '<div class="chart"><img src="'.$base_path.'charts/project" /></div>'."\n";
460 460
     break;
461 461
   default:
462 462
   }
Please login to merge, or discard this patch.
Braces   +22 added lines, -19 removed lines patch added patch discarded remove patch
@@ -117,15 +117,16 @@  discard block
 block discarded – undo
117 117
   
118 118
   if ($myCache->isInCache($cache_name)) {
119 119
     $myCache->strokeFromCache($cache_name);
120
-  }
121
-  else {
120
+  } else {
122 121
     // Construct query string
123 122
     $get = array(
124 123
       'cpid' => $cpid,
125 124
       'projectid' => $project_id
126 125
     );
127 126
     $args = array();
128
-    foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
127
+    foreach ($get as $arg => $value) {
128
+        $args[] = "{$arg}=" . rawurlencode($value);
129
+    }
129 130
     $query = '?' . implode('&', $args);
130 131
     
131 132
     // Load XML from RPC
@@ -147,9 +148,10 @@  discard block
 block discarded – undo
147 148
         $credit[$i] = isset($stats_xml->total_credit_history_last_91_days->$day) ? (int) $stats_xml->total_credit_history_last_91_days->$day : 0;
148 149
         $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i-1]) : 0;
149 150
       }
150
-    }
151
-    else {
152
-      for ($i = 0; $i <= $dataset_size; $i++) $dataset[] = 0;
151
+    } else {
152
+      for ($i = 0; $i <= $dataset_size; $i++) {
153
+          $dataset[] = 0;
154
+      }
153 155
     }
154 156
     
155 157
     $MyData->addPoints($dataset, 'series1');
@@ -253,8 +255,7 @@  discard block
 block discarded – undo
253 255
   
254 256
   if ($myCache->isInCache($cache_name)) {
255 257
     $myCache->strokeFromCache($cache_name);
256
-  }
257
-  else {
258
+  } else {
258 259
     // Initialize dataset
259 260
     $dataset = array();
260 261
     if ($stats_xml) {
@@ -264,9 +265,10 @@  discard block
 block discarded – undo
264 265
         $credit[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
265 266
         $dataset[$i] = ($i) ? ($credit[$i] - $credit[$i-1]) : 0;
266 267
       }
267
-    }
268
-    else {
269
-      for ($i = 0; $i <= 30; $i++) $dataset[] = 0;
268
+    } else {
269
+      for ($i = 0; $i <= 30; $i++) {
270
+          $dataset[] = 0;
271
+      }
270 272
     }
271 273
     
272 274
     $MyData->addPoints($dataset, 'series1');
@@ -341,8 +343,7 @@  discard block
 block discarded – undo
341 343
           directory must be writeable by the web server.',
342 344
           array('@parent_dir' => dirname($cache_dir)), WATCHDOG_ERROR);
343 345
         return FALSE;
344
-      }
345
-      else {
346
+      } else {
346 347
         // Create the cache dir
347 348
         if (!mkdir($cache_dir, 0775)) {
348 349
           watchdog('boincstats', 'Failed to create @cache_dir directory. Check
@@ -351,8 +352,7 @@  discard block
 block discarded – undo
351 352
           return FALSE;
352 353
         }
353 354
       }
354
-    }
355
-    else {
355
+    } else {
356 356
       watchdog('boincstats', 'Cache directory at @cache_dir is not writeable.
357 357
         Please allow webserver write access.',
358 358
         array('@cache_dir' => $cache_dir), WATCHDOG_ERROR);
@@ -378,7 +378,9 @@  discard block
 block discarded – undo
378 378
     'projectid' => $project_id
379 379
   );
380 380
   $args = array();
381
-  foreach ($get as $arg => $value) $args[] = "{$arg}=" . rawurlencode($value);
381
+  foreach ($get as $arg => $value) {
382
+      $args[] = "{$arg}=" . rawurlencode($value);
383
+  }
382 384
   $query = '?' . implode('&', $args);
383 385
   
384 386
   // Load XML from RPC
@@ -412,7 +414,9 @@  discard block
 block discarded – undo
412 414
     for ($i = 61; $i <= 91; $i++) {
413 415
       $day = "day_{$i}";
414 416
       $daily_totals[$i] = isset($stats_xml->$day) ? (int) $stats_xml->$day : 0;
415
-      if ($i == 61) continue;
417
+      if ($i == 61) {
418
+          continue;
419
+      }
416 420
       $daily_values[$i] = ($i) ? ($daily_totals[$i] - $daily_totals[$i-1]) : 0;
417 421
     }
418 422
   }
@@ -481,8 +485,7 @@  discard block
 block discarded – undo
481 485
       drupal_set_message(t('The BOINC stats system is not configured. Please
482 486
         !configure_it', array('!configure_it' => l(t('configure it now'),
483 487
           'admin/boinc/stats'))), 'error', FALSE);
484
-    }
485
-    else {
488
+    } else {
486 489
       drupal_set_message(t('There is a problem with the site. Please contact
487 490
         the system administrator.'), 'error', FALSE);
488 491
     }
Please login to merge, or discard this patch.
boinc/modules/boincstats/includes/pchart/class/pBarcode128.class.php 4 patches
Doc Comments   +4 added lines patch added patch discarded remove patch
@@ -179,6 +179,10 @@
 block discarded – undo
179 179
 
180 180
    function left($value,$NbChar) { return substr($value,0,$NbChar); }  
181 181
    function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
182
+
183
+   /**
184
+    * @param integer $NbChar
185
+    */
182 186
    function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
183 187
   }
184 188
 ?>
185 189
\ No newline at end of file
Please login to merge, or discard this patch.
Indentation   +133 added lines, -133 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
- /*
2
+    /*
3 3
      pBarcode128 - class to create barcodes (128B)
4 4
 
5 5
      Version     : 2.1.3
@@ -13,172 +13,172 @@  discard block
 block discarded – undo
13 13
      You can find the whole class documentation on the pChart web site.
14 14
  */
15 15
 
16
- /* pData class definition */
17
- class pBarcode128
18
-  {
19
-   var $Codes;
20
-   var $Reverse;
21
-   var $Result;
22
-   var $pChartObject;
23
-   var $CRC;
24
-
25
-   /* Class creator */
26
-   function pBarcode128($BasePath="")
16
+    /* pData class definition */
17
+    class pBarcode128
27 18
     {
28
-     $this->Codes   = "";
29
-     $this->Reverse = "";
30
-
31
-     $FileHandle = @fopen($BasePath."data/128B.db", "r");
32
-
33
-     if (!$FileHandle) { die("Cannot find barcode database (".$BasePath."128B.db)."); }
34
-
35
-     while (!feof($FileHandle))
36
-      {
37
-       $Buffer = fgets($FileHandle,4096);
38
-       $Buffer = str_replace(chr(10),"",$Buffer);
39
-       $Buffer = str_replace(chr(13),"",$Buffer);
40
-       $Values = preg_split("/;/",$Buffer);
41
-
42
-       $this->Codes[$Values[1]]["ID"]     = $Values[0];
43
-       $this->Codes[$Values[1]]["Code"]   = $Values[2];
44
-       $this->Reverse[$Values[0]]["Code"] = $Values[2];
45
-       $this->Reverse[$Values[0]]["Asc"]  = $Values[1];
46
-      }
47
-     fclose($FileHandle);
19
+    var $Codes;
20
+    var $Reverse;
21
+    var $Result;
22
+    var $pChartObject;
23
+    var $CRC;
24
+
25
+    /* Class creator */
26
+    function pBarcode128($BasePath="")
27
+    {
28
+        $this->Codes   = "";
29
+        $this->Reverse = "";
30
+
31
+        $FileHandle = @fopen($BasePath."data/128B.db", "r");
32
+
33
+        if (!$FileHandle) { die("Cannot find barcode database (".$BasePath."128B.db)."); }
34
+
35
+        while (!feof($FileHandle))
36
+        {
37
+        $Buffer = fgets($FileHandle,4096);
38
+        $Buffer = str_replace(chr(10),"",$Buffer);
39
+        $Buffer = str_replace(chr(13),"",$Buffer);
40
+        $Values = preg_split("/;/",$Buffer);
41
+
42
+        $this->Codes[$Values[1]]["ID"]     = $Values[0];
43
+        $this->Codes[$Values[1]]["Code"]   = $Values[2];
44
+        $this->Reverse[$Values[0]]["Code"] = $Values[2];
45
+        $this->Reverse[$Values[0]]["Asc"]  = $Values[1];
46
+        }
47
+        fclose($FileHandle);
48 48
     }
49 49
 
50
-   /* Return the projected size of a barcode */
51
-   function getSize($TextString,$Format="")
50
+    /* Return the projected size of a barcode */
51
+    function getSize($TextString,$Format="")
52 52
     {
53
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
54
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
55
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
56
-     $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
57
-     $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : 12;
58
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
53
+        $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
54
+        $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
55
+        $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
56
+        $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
57
+        $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : 12;
58
+        $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
59 59
 
60
-     $TextString    = $this->encode128($TextString);
61
-     $BarcodeLength = strlen($this->Result);
60
+        $TextString    = $this->encode128($TextString);
61
+        $BarcodeLength = strlen($this->Result);
62 62
 
63
-     if ( $DrawArea )   { $WOffset = 20; } else { $WOffset = 0; }
64
-     if ( $ShowLegend ) { $HOffset = $FontSize+$LegendOffset+$WOffset; } else { $HOffset = 0; }
63
+        if ( $DrawArea )   { $WOffset = 20; } else { $WOffset = 0; }
64
+        if ( $ShowLegend ) { $HOffset = $FontSize+$LegendOffset+$WOffset; } else { $HOffset = 0; }
65 65
 
66
-     $X1 = cos($Angle * PI / 180) * ($WOffset+$BarcodeLength);
67
-     $Y1 = sin($Angle * PI / 180) * ($WOffset+$BarcodeLength);
66
+        $X1 = cos($Angle * PI / 180) * ($WOffset+$BarcodeLength);
67
+        $Y1 = sin($Angle * PI / 180) * ($WOffset+$BarcodeLength);
68 68
 
69
-     $X2 = $X1 + cos(($Angle+90) * PI / 180) * ($HOffset+$Height);
70
-     $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * ($HOffset+$Height);
69
+        $X2 = $X1 + cos(($Angle+90) * PI / 180) * ($HOffset+$Height);
70
+        $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * ($HOffset+$Height);
71 71
 
72 72
 
73
-     $AreaWidth  = max(abs($X1),abs($X2));
74
-     $AreaHeight = max(abs($Y1),abs($Y2));
73
+        $AreaWidth  = max(abs($X1),abs($X2));
74
+        $AreaHeight = max(abs($Y1),abs($Y2));
75 75
 
76
-     return(array("Width"=>$AreaWidth,"Height"=>$AreaHeight));
76
+        return(array("Width"=>$AreaWidth,"Height"=>$AreaHeight));
77 77
     }
78 78
 
79
-   function encode128($Value,$Format="")
79
+    function encode128($Value,$Format="")
80 80
     {
81
-     $this->Result  = "11010010000";
82
-     $this->CRC     = 104;
83
-     $TextString    = "";
84
-
85
-     for($i=1;$i<=strlen($Value);$i++)
86
-      {
87
-       $CharCode = ord($this->mid($Value,$i,1));
88
-       if ( isset($this->Codes[$CharCode]) )
81
+        $this->Result  = "11010010000";
82
+        $this->CRC     = 104;
83
+        $TextString    = "";
84
+
85
+        for($i=1;$i<=strlen($Value);$i++)
89 86
         {
90
-         $this->Result = $this->Result.$this->Codes[$CharCode]["Code"];
91
-         $this->CRC = $this->CRC + $i*$this->Codes[$CharCode]["ID"];
92
-         $TextString = $TextString.chr($CharCode);
87
+        $CharCode = ord($this->mid($Value,$i,1));
88
+        if ( isset($this->Codes[$CharCode]) )
89
+        {
90
+            $this->Result = $this->Result.$this->Codes[$CharCode]["Code"];
91
+            $this->CRC = $this->CRC + $i*$this->Codes[$CharCode]["ID"];
92
+            $TextString = $TextString.chr($CharCode);
93
+        }
93 94
         }
94
-      }
95
-     $this->CRC = $this->CRC - floor($this->CRC/103)*103;
95
+        $this->CRC = $this->CRC - floor($this->CRC/103)*103;
96 96
 
97
-     $this->Result = $this->Result.$this->Reverse[$this->CRC]["Code"];
98
-     $this->Result = $this->Result."1100011101011";
97
+        $this->Result = $this->Result.$this->Reverse[$this->CRC]["Code"];
98
+        $this->Result = $this->Result."1100011101011";
99 99
 
100
-     return($TextString);
100
+        return($TextString);
101 101
     }
102 102
 
103
-   /* Create the encoded string */
104
-   function draw($Object,$Value,$X,$Y,$Format="")
103
+    /* Create the encoded string */
104
+    function draw($Object,$Value,$X,$Y,$Format="")
105 105
     {
106
-     $this->pChartObject = $Object;
107
-
108
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
109
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
110
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
111
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
112
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
113
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
114
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
115
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
116
-     $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
117
-     $AreaR		= isset($Format["AreaR"]) ? $Format["AreaR"] : 255;
118
-     $AreaG		= isset($Format["AreaG"]) ? $Format["AreaG"] : 255;
119
-     $AreaB		= isset($Format["AreaB"]) ? $Format["AreaB"] : 255;
120
-     $AreaBorderR	= isset($Format["AreaBorderR"]) ? $Format["AreaBorderR"] : $AreaR;
121
-     $AreaBorderG	= isset($Format["AreaBorderG"]) ? $Format["AreaBorderG"] : $AreaG;
122
-     $AreaBorderB	= isset($Format["AreaBorderB"]) ? $Format["AreaBorderB"] : $AreaB;
123
-
124
-     $TextString = $this->encode128($Value);
125
-
126
-     if ( $DrawArea )
127
-      {
128
-       $X1 = $X + cos(($Angle-135) * PI / 180) * 10;
129
-       $Y1 = $Y + sin(($Angle-135) * PI / 180) * 10;
130
-
131
-       $X2 = $X1 + cos($Angle * PI / 180) * (strlen($this->Result)+20);
132
-       $Y2 = $Y1 + sin($Angle * PI / 180) * (strlen($this->Result)+20);
133
-
134
-       if ( $ShowLegend )
106
+        $this->pChartObject = $Object;
107
+
108
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
109
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
110
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
111
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
112
+        $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
113
+        $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
114
+        $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
115
+        $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
116
+        $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
117
+        $AreaR		= isset($Format["AreaR"]) ? $Format["AreaR"] : 255;
118
+        $AreaG		= isset($Format["AreaG"]) ? $Format["AreaG"] : 255;
119
+        $AreaB		= isset($Format["AreaB"]) ? $Format["AreaB"] : 255;
120
+        $AreaBorderR	= isset($Format["AreaBorderR"]) ? $Format["AreaBorderR"] : $AreaR;
121
+        $AreaBorderG	= isset($Format["AreaBorderG"]) ? $Format["AreaBorderG"] : $AreaG;
122
+        $AreaBorderB	= isset($Format["AreaBorderB"]) ? $Format["AreaBorderB"] : $AreaB;
123
+
124
+        $TextString = $this->encode128($Value);
125
+
126
+        if ( $DrawArea )
135 127
         {
136
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
137
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
128
+        $X1 = $X + cos(($Angle-135) * PI / 180) * 10;
129
+        $Y1 = $Y + sin(($Angle-135) * PI / 180) * 10;
130
+
131
+        $X2 = $X1 + cos($Angle * PI / 180) * (strlen($this->Result)+20);
132
+        $Y2 = $Y1 + sin($Angle * PI / 180) * (strlen($this->Result)+20);
133
+
134
+        if ( $ShowLegend )
135
+        {
136
+            $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
137
+            $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
138 138
         }
139
-       else
139
+        else
140 140
         {
141
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
142
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
141
+            $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
142
+            $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
143 143
         }
144 144
 
145
-       $X4 = $X3 + cos(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
146
-       $Y4 = $Y3 + sin(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
145
+        $X4 = $X3 + cos(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
146
+        $Y4 = $Y3 + sin(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
147 147
 
148
-       $Polygon  = array($X1,$Y1,$X2,$Y2,$X3,$Y3,$X4,$Y4);
149
-       $Settings = array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"BorderR"=>$AreaBorderR,"BorderG"=>$AreaBorderG,"BorderB"=>$AreaBorderB);
150
-       $this->pChartObject->drawPolygon($Polygon,$Settings);
151
-      }
148
+        $Polygon  = array($X1,$Y1,$X2,$Y2,$X3,$Y3,$X4,$Y4);
149
+        $Settings = array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"BorderR"=>$AreaBorderR,"BorderG"=>$AreaBorderG,"BorderB"=>$AreaBorderB);
150
+        $this->pChartObject->drawPolygon($Polygon,$Settings);
151
+        }
152 152
 
153
-     for($i=1;$i<=strlen($this->Result);$i++)
154
-      {
155
-       if ( $this->mid($this->Result,$i,1) == 1 )
153
+        for($i=1;$i<=strlen($this->Result);$i++)
154
+        {
155
+        if ( $this->mid($this->Result,$i,1) == 1 )
156 156
         {
157
-         $X1 = $X + cos($Angle * PI / 180) * $i;
158
-         $Y1 = $Y + sin($Angle * PI / 180) * $i;
159
-         $X2 = $X1 + cos(($Angle+90) * PI / 180) * $Height;
160
-         $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * $Height;
157
+            $X1 = $X + cos($Angle * PI / 180) * $i;
158
+            $Y1 = $Y + sin($Angle * PI / 180) * $i;
159
+            $X2 = $X1 + cos(($Angle+90) * PI / 180) * $Height;
160
+            $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * $Height;
161 161
 
162
-         $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
163
-         $this->pChartObject->drawLine($X1,$Y1,$X2,$Y2,$Settings);
162
+            $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
163
+            $this->pChartObject->drawLine($X1,$Y1,$X2,$Y2,$Settings);
164
+        }
164 165
         }
165
-      }
166 166
 
167
-     if ( $ShowLegend )
168
-      {
169
-       $X1 = $X + cos($Angle * PI / 180) * (strlen($this->Result)/2);
170
-       $Y1 = $Y + sin($Angle * PI / 180) * (strlen($this->Result)/2);
167
+        if ( $ShowLegend )
168
+        {
169
+        $X1 = $X + cos($Angle * PI / 180) * (strlen($this->Result)/2);
170
+        $Y1 = $Y + sin($Angle * PI / 180) * (strlen($this->Result)/2);
171 171
 
172
-       $LegendX = $X1 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
173
-       $LegendY = $Y1 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
172
+        $LegendX = $X1 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
173
+        $LegendY = $Y1 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
174 174
 
175
-       $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Angle"=>-$Angle,"Align"=>TEXT_ALIGN_TOPMIDDLE);
176
-       $this->pChartObject->drawText($LegendX,$LegendY,$TextString,$Settings);
177
-      }
175
+        $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Angle"=>-$Angle,"Align"=>TEXT_ALIGN_TOPMIDDLE);
176
+        $this->pChartObject->drawText($LegendX,$LegendY,$TextString,$Settings);
177
+        }
178 178
     }
179 179
 
180
-   function left($value,$NbChar) { return substr($value,0,$NbChar); }  
181
-   function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
182
-   function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
183
-  }
180
+    function left($value,$NbChar) { return substr($value,0,$NbChar); }  
181
+    function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
182
+    function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
183
+    }
184 184
 ?>
185 185
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +61 added lines, -61 removed lines patch added patch discarded remove patch
@@ -23,7 +23,7 @@  discard block
 block discarded – undo
23 23
    var $CRC;
24 24
 
25 25
    /* Class creator */
26
-   function pBarcode128($BasePath="")
26
+   function pBarcode128($BasePath = "")
27 27
     {
28 28
      $this->Codes   = "";
29 29
      $this->Reverse = "";
@@ -34,10 +34,10 @@  discard block
 block discarded – undo
34 34
 
35 35
      while (!feof($FileHandle))
36 36
       {
37
-       $Buffer = fgets($FileHandle,4096);
38
-       $Buffer = str_replace(chr(10),"",$Buffer);
39
-       $Buffer = str_replace(chr(13),"",$Buffer);
40
-       $Values = preg_split("/;/",$Buffer);
37
+       $Buffer = fgets($FileHandle, 4096);
38
+       $Buffer = str_replace(chr(10), "", $Buffer);
39
+       $Buffer = str_replace(chr(13), "", $Buffer);
40
+       $Values = preg_split("/;/", $Buffer);
41 41
 
42 42
        $this->Codes[$Values[1]]["ID"]     = $Values[0];
43 43
        $this->Codes[$Values[1]]["Code"]   = $Values[2];
@@ -48,44 +48,44 @@  discard block
 block discarded – undo
48 48
     }
49 49
 
50 50
    /* Return the projected size of a barcode */
51
-   function getSize($TextString,$Format="")
51
+   function getSize($TextString, $Format = "")
52 52
     {
53
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
54
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
55
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
53
+     $Angle = isset($Format["Angle"]) ? $Format["Angle"] : 0;
54
+     $ShowLegend = isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
55
+     $LegendOffset = isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
56 56
      $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
57 57
      $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : 12;
58
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
58
+     $Height = isset($Format["Height"]) ? $Format["Height"] : 30;
59 59
 
60 60
      $TextString    = $this->encode128($TextString);
61 61
      $BarcodeLength = strlen($this->Result);
62 62
 
63
-     if ( $DrawArea )   { $WOffset = 20; } else { $WOffset = 0; }
64
-     if ( $ShowLegend ) { $HOffset = $FontSize+$LegendOffset+$WOffset; } else { $HOffset = 0; }
63
+     if ($DrawArea) { $WOffset = 20; } else { $WOffset = 0; }
64
+     if ($ShowLegend) { $HOffset = $FontSize + $LegendOffset + $WOffset; } else { $HOffset = 0; }
65 65
 
66
-     $X1 = cos($Angle * PI / 180) * ($WOffset+$BarcodeLength);
67
-     $Y1 = sin($Angle * PI / 180) * ($WOffset+$BarcodeLength);
66
+     $X1 = cos($Angle*PI/180)*($WOffset + $BarcodeLength);
67
+     $Y1 = sin($Angle*PI/180)*($WOffset + $BarcodeLength);
68 68
 
69
-     $X2 = $X1 + cos(($Angle+90) * PI / 180) * ($HOffset+$Height);
70
-     $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * ($HOffset+$Height);
69
+     $X2 = $X1 + cos(($Angle + 90)*PI/180)*($HOffset + $Height);
70
+     $Y2 = $Y1 + sin(($Angle + 90)*PI/180)*($HOffset + $Height);
71 71
 
72 72
 
73
-     $AreaWidth  = max(abs($X1),abs($X2));
74
-     $AreaHeight = max(abs($Y1),abs($Y2));
73
+     $AreaWidth  = max(abs($X1), abs($X2));
74
+     $AreaHeight = max(abs($Y1), abs($Y2));
75 75
 
76
-     return(array("Width"=>$AreaWidth,"Height"=>$AreaHeight));
76
+     return(array("Width"=>$AreaWidth, "Height"=>$AreaHeight));
77 77
     }
78 78
 
79
-   function encode128($Value,$Format="")
79
+   function encode128($Value, $Format = "")
80 80
     {
81 81
      $this->Result  = "11010010000";
82 82
      $this->CRC     = 104;
83 83
      $TextString    = "";
84 84
 
85
-     for($i=1;$i<=strlen($Value);$i++)
85
+     for ($i = 1; $i <= strlen($Value); $i++)
86 86
       {
87
-       $CharCode = ord($this->mid($Value,$i,1));
88
-       if ( isset($this->Codes[$CharCode]) )
87
+       $CharCode = ord($this->mid($Value, $i, 1));
88
+       if (isset($this->Codes[$CharCode]))
89 89
         {
90 90
          $this->Result = $this->Result.$this->Codes[$CharCode]["Code"];
91 91
          $this->CRC = $this->CRC + $i*$this->Codes[$CharCode]["ID"];
@@ -101,7 +101,7 @@  discard block
 block discarded – undo
101 101
     }
102 102
 
103 103
    /* Create the encoded string */
104
-   function draw($Object,$Value,$X,$Y,$Format="")
104
+   function draw($Object, $Value, $X, $Y, $Format = "")
105 105
     {
106 106
      $this->pChartObject = $Object;
107 107
 
@@ -109,11 +109,11 @@  discard block
 block discarded – undo
109 109
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
110 110
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
111 111
      $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
112
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
112
+     $Height = isset($Format["Height"]) ? $Format["Height"] : 30;
113 113
      $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
114
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
115
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
116
-     $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
114
+     $ShowLegend = isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
115
+     $LegendOffset = isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
116
+     $DrawArea = isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
117 117
      $AreaR		= isset($Format["AreaR"]) ? $Format["AreaR"] : 255;
118 118
      $AreaG		= isset($Format["AreaG"]) ? $Format["AreaG"] : 255;
119 119
      $AreaB		= isset($Format["AreaB"]) ? $Format["AreaB"] : 255;
@@ -123,62 +123,62 @@  discard block
 block discarded – undo
123 123
 
124 124
      $TextString = $this->encode128($Value);
125 125
 
126
-     if ( $DrawArea )
126
+     if ($DrawArea)
127 127
       {
128
-       $X1 = $X + cos(($Angle-135) * PI / 180) * 10;
129
-       $Y1 = $Y + sin(($Angle-135) * PI / 180) * 10;
128
+       $X1 = $X + cos(($Angle - 135)*PI/180)*10;
129
+       $Y1 = $Y + sin(($Angle - 135)*PI/180)*10;
130 130
 
131
-       $X2 = $X1 + cos($Angle * PI / 180) * (strlen($this->Result)+20);
132
-       $Y2 = $Y1 + sin($Angle * PI / 180) * (strlen($this->Result)+20);
131
+       $X2 = $X1 + cos($Angle*PI/180)*(strlen($this->Result) + 20);
132
+       $Y2 = $Y1 + sin($Angle*PI/180)*(strlen($this->Result) + 20);
133 133
 
134
-       if ( $ShowLegend )
134
+       if ($ShowLegend)
135 135
         {
136
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
137
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
136
+         $X3 = $X2 + cos(($Angle + 90)*PI/180)*($Height + $LegendOffset + $this->pChartObject->FontSize + 10);
137
+         $Y3 = $Y2 + sin(($Angle + 90)*PI/180)*($Height + $LegendOffset + $this->pChartObject->FontSize + 10);
138 138
         }
139 139
        else
140 140
         {
141
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
142
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
141
+         $X3 = $X2 + cos(($Angle + 90)*PI/180)*($Height + 20);
142
+         $Y3 = $Y2 + sin(($Angle + 90)*PI/180)*($Height + 20);
143 143
         }
144 144
 
145
-       $X4 = $X3 + cos(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
146
-       $Y4 = $Y3 + sin(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
145
+       $X4 = $X3 + cos(($Angle + 180)*PI/180)*(strlen($this->Result) + 20);
146
+       $Y4 = $Y3 + sin(($Angle + 180)*PI/180)*(strlen($this->Result) + 20);
147 147
 
148
-       $Polygon  = array($X1,$Y1,$X2,$Y2,$X3,$Y3,$X4,$Y4);
149
-       $Settings = array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"BorderR"=>$AreaBorderR,"BorderG"=>$AreaBorderG,"BorderB"=>$AreaBorderB);
150
-       $this->pChartObject->drawPolygon($Polygon,$Settings);
148
+       $Polygon  = array($X1, $Y1, $X2, $Y2, $X3, $Y3, $X4, $Y4);
149
+       $Settings = array("R"=>$AreaR, "G"=>$AreaG, "B"=>$AreaB, "BorderR"=>$AreaBorderR, "BorderG"=>$AreaBorderG, "BorderB"=>$AreaBorderB);
150
+       $this->pChartObject->drawPolygon($Polygon, $Settings);
151 151
       }
152 152
 
153
-     for($i=1;$i<=strlen($this->Result);$i++)
153
+     for ($i = 1; $i <= strlen($this->Result); $i++)
154 154
       {
155
-       if ( $this->mid($this->Result,$i,1) == 1 )
155
+       if ($this->mid($this->Result, $i, 1) == 1)
156 156
         {
157
-         $X1 = $X + cos($Angle * PI / 180) * $i;
158
-         $Y1 = $Y + sin($Angle * PI / 180) * $i;
159
-         $X2 = $X1 + cos(($Angle+90) * PI / 180) * $Height;
160
-         $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * $Height;
157
+         $X1 = $X + cos($Angle*PI/180)*$i;
158
+         $Y1 = $Y + sin($Angle*PI/180)*$i;
159
+         $X2 = $X1 + cos(($Angle + 90)*PI/180)*$Height;
160
+         $Y2 = $Y1 + sin(($Angle + 90)*PI/180)*$Height;
161 161
 
162
-         $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
163
-         $this->pChartObject->drawLine($X1,$Y1,$X2,$Y2,$Settings);
162
+         $Settings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
163
+         $this->pChartObject->drawLine($X1, $Y1, $X2, $Y2, $Settings);
164 164
         }
165 165
       }
166 166
 
167
-     if ( $ShowLegend )
167
+     if ($ShowLegend)
168 168
       {
169
-       $X1 = $X + cos($Angle * PI / 180) * (strlen($this->Result)/2);
170
-       $Y1 = $Y + sin($Angle * PI / 180) * (strlen($this->Result)/2);
169
+       $X1 = $X + cos($Angle*PI/180)*(strlen($this->Result)/2);
170
+       $Y1 = $Y + sin($Angle*PI/180)*(strlen($this->Result)/2);
171 171
 
172
-       $LegendX = $X1 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
173
-       $LegendY = $Y1 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
172
+       $LegendX = $X1 + cos(($Angle + 90)*PI/180)*($Height + $LegendOffset);
173
+       $LegendY = $Y1 + sin(($Angle + 90)*PI/180)*($Height + $LegendOffset);
174 174
 
175
-       $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Angle"=>-$Angle,"Align"=>TEXT_ALIGN_TOPMIDDLE);
176
-       $this->pChartObject->drawText($LegendX,$LegendY,$TextString,$Settings);
175
+       $Settings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Angle"=>-$Angle, "Align"=>TEXT_ALIGN_TOPMIDDLE);
176
+       $this->pChartObject->drawText($LegendX, $LegendY, $TextString, $Settings);
177 177
       }
178 178
     }
179 179
 
180
-   function left($value,$NbChar) { return substr($value,0,$NbChar); }  
181
-   function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
182
-   function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
180
+   function left($value, $NbChar) { return substr($value, 0, $NbChar); }  
181
+   function right($value, $NbChar) { return substr($value, strlen($value) - $NbChar, $NbChar); }  
182
+   function mid($value, $Depart, $NbChar) { return substr($value, $Depart - 1, $NbChar); }  
183 183
   }
184 184
 ?>
185 185
\ No newline at end of file
Please login to merge, or discard this patch.
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -135,8 +135,7 @@
 block discarded – undo
135 135
         {
136 136
          $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
137 137
          $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
138
-        }
139
-       else
138
+        } else
140 139
         {
141 140
          $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
142 141
          $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
Please login to merge, or discard this patch.
default/boinc/modules/boincstats/includes/pchart/class/pBarcode39.class.php 4 patches
Doc Comments   +8 added lines patch added patch discarded remove patch
@@ -181,6 +181,9 @@  discard block
 block discarded – undo
181 181
       }
182 182
     }
183 183
 
184
+   /**
185
+    * @param string $string
186
+    */
184 187
    function checksum( $string )
185 188
     {
186 189
      $checksum = 0;
@@ -195,6 +198,11 @@  discard block
 block discarded – undo
195 198
 
196 199
    function left($value,$NbChar) { return substr($value,0,$NbChar); }  
197 200
    function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
201
+
202
+   /**
203
+    * @param integer $Depart
204
+    * @param integer $NbChar
205
+    */
198 206
    function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
199 207
   }
200 208
 ?>
201 209
\ No newline at end of file
Please login to merge, or discard this patch.
Indentation   +139 added lines, -139 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
- /*
2
+    /*
3 3
      pBarcode39 - class to create barcodes (39B)
4 4
 
5 5
      Version     : 2.1.3
@@ -13,188 +13,188 @@  discard block
 block discarded – undo
13 13
      You can find the whole class documentation on the pChart web site.
14 14
  */
15 15
 
16
- /* pData class definition */
17
- class pBarcode39
18
-  {
19
-   var $Codes;
20
-   var $Reverse;
21
-   var $Result;
22
-   var $pChartObject;
23
-   var $CRC;
24
-   var $MOD43;
25
-
26
-   /* Class creator */
27
-   function pBarcode39($BasePath="",$EnableMOD43=FALSE)
16
+    /* pData class definition */
17
+    class pBarcode39
28 18
     {
29
-     $this->MOD43  = $EnableMOD43;
30
-     $this->Codes   = "";
31
-     $this->Reverse = "";
19
+    var $Codes;
20
+    var $Reverse;
21
+    var $Result;
22
+    var $pChartObject;
23
+    var $CRC;
24
+    var $MOD43;
25
+
26
+    /* Class creator */
27
+    function pBarcode39($BasePath="",$EnableMOD43=FALSE)
28
+    {
29
+        $this->MOD43  = $EnableMOD43;
30
+        $this->Codes   = "";
31
+        $this->Reverse = "";
32 32
 
33
-     $FileHandle = @fopen($BasePath."data/39.db", "r");
33
+        $FileHandle = @fopen($BasePath."data/39.db", "r");
34 34
 
35
-     if (!$FileHandle) { die("Cannot find barcode database (".$BasePath."data/39.db)."); }
35
+        if (!$FileHandle) { die("Cannot find barcode database (".$BasePath."data/39.db)."); }
36 36
 
37
-     while (!feof($FileHandle))
38
-      {
39
-       $Buffer = fgets($FileHandle,4096);
40
-       $Buffer = str_replace(chr(10),"",$Buffer);
41
-       $Buffer = str_replace(chr(13),"",$Buffer);
42
-       $Values = preg_split("/;/",$Buffer);
37
+        while (!feof($FileHandle))
38
+        {
39
+        $Buffer = fgets($FileHandle,4096);
40
+        $Buffer = str_replace(chr(10),"",$Buffer);
41
+        $Buffer = str_replace(chr(13),"",$Buffer);
42
+        $Values = preg_split("/;/",$Buffer);
43 43
 
44
-       $this->Codes[$Values[0]] = $Values[1];
45
-      }
46
-     fclose($FileHandle);
44
+        $this->Codes[$Values[0]] = $Values[1];
45
+        }
46
+        fclose($FileHandle);
47 47
     }
48 48
 
49
-   /* Return the projected size of a barcode */
50
-   function getSize($TextString,$Format="")
49
+    /* Return the projected size of a barcode */
50
+    function getSize($TextString,$Format="")
51 51
     {
52
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
53
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
54
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
55
-     $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
56
-     $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : 12;
57
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
52
+        $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
53
+        $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
54
+        $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
55
+        $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
56
+        $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : 12;
57
+        $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
58 58
 
59
-     $TextString    = $this->encode39($TextString);
60
-     $BarcodeLength = strlen($this->Result);
59
+        $TextString    = $this->encode39($TextString);
60
+        $BarcodeLength = strlen($this->Result);
61 61
 
62
-     if ( $DrawArea )   { $WOffset = 20; } else { $WOffset = 0; }
63
-     if ( $ShowLegend ) { $HOffset = $FontSize+$LegendOffset+$WOffset; } else { $HOffset = 0; }
62
+        if ( $DrawArea )   { $WOffset = 20; } else { $WOffset = 0; }
63
+        if ( $ShowLegend ) { $HOffset = $FontSize+$LegendOffset+$WOffset; } else { $HOffset = 0; }
64 64
 
65
-     $X1 = cos($Angle * PI / 180) * ($WOffset+$BarcodeLength);
66
-     $Y1 = sin($Angle * PI / 180) * ($WOffset+$BarcodeLength);
65
+        $X1 = cos($Angle * PI / 180) * ($WOffset+$BarcodeLength);
66
+        $Y1 = sin($Angle * PI / 180) * ($WOffset+$BarcodeLength);
67 67
 
68
-     $X2 = $X1 + cos(($Angle+90) * PI / 180) * ($HOffset+$Height);
69
-     $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * ($HOffset+$Height);
68
+        $X2 = $X1 + cos(($Angle+90) * PI / 180) * ($HOffset+$Height);
69
+        $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * ($HOffset+$Height);
70 70
 
71 71
 
72
-     $AreaWidth  = max(abs($X1),abs($X2));
73
-     $AreaHeight = max(abs($Y1),abs($Y2));
72
+        $AreaWidth  = max(abs($X1),abs($X2));
73
+        $AreaHeight = max(abs($Y1),abs($Y2));
74 74
 
75
-     return(array("Width"=>$AreaWidth,"Height"=>$AreaHeight));
75
+        return(array("Width"=>$AreaWidth,"Height"=>$AreaHeight));
76 76
     }
77 77
 
78
-   /* Create the encoded string */
79
-   function encode39($Value)
78
+    /* Create the encoded string */
79
+    function encode39($Value)
80 80
     {
81
-     $this->Result = "100101101101"."0";
82
-     $TextString   = "";
83
-     for($i=1;$i<=strlen($Value);$i++)
84
-      {
85
-       $CharCode = ord($this->mid($Value,$i,1));
86
-       if ( $CharCode >= 97 && $CharCode <= 122 ) { $CharCode = $CharCode - 32; }
87
-
88
-       if ( isset($this->Codes[chr($CharCode)]) )
81
+        $this->Result = "100101101101"."0";
82
+        $TextString   = "";
83
+        for($i=1;$i<=strlen($Value);$i++)
84
+        {
85
+        $CharCode = ord($this->mid($Value,$i,1));
86
+        if ( $CharCode >= 97 && $CharCode <= 122 ) { $CharCode = $CharCode - 32; }
87
+
88
+        if ( isset($this->Codes[chr($CharCode)]) )
89 89
         {
90
-         $this->Result = $this->Result.$this->Codes[chr($CharCode)]."0";
91
-         $TextString = $TextString.chr($CharCode);
90
+            $this->Result = $this->Result.$this->Codes[chr($CharCode)]."0";
91
+            $TextString = $TextString.chr($CharCode);
92
+        }
92 93
         }
93
-      }
94 94
 
95
-     if ( $this->MOD43 )
96
-      {
97
-       $Checksum = $this->checksum($TextString);
98
-       $this->Result = $this->Result.$this->Codes[$Checksum]."0";
99
-      }
95
+        if ( $this->MOD43 )
96
+        {
97
+        $Checksum = $this->checksum($TextString);
98
+        $this->Result = $this->Result.$this->Codes[$Checksum]."0";
99
+        }
100 100
 
101
-     $this->Result = $this->Result."100101101101";
102
-     $TextString   = "*".$TextString."*";
101
+        $this->Result = $this->Result."100101101101";
102
+        $TextString   = "*".$TextString."*";
103 103
 
104
-     return($TextString);
104
+        return($TextString);
105 105
     }
106 106
 
107
-   /* Create the encoded string */
108
-   function draw($Object,$Value,$X,$Y,$Format="")
107
+    /* Create the encoded string */
108
+    function draw($Object,$Value,$X,$Y,$Format="")
109 109
     {
110
-     $this->pChartObject = $Object;
111
-
112
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
113
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
114
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
115
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
116
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
117
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
118
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
119
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
120
-     $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
121
-     $AreaR		= isset($Format["AreaR"]) ? $Format["AreaR"] : 255;
122
-     $AreaG		= isset($Format["AreaG"]) ? $Format["AreaG"] : 255;
123
-     $AreaB		= isset($Format["AreaB"]) ? $Format["AreaB"] : 255;
124
-     $AreaBorderR	= isset($Format["AreaBorderR"]) ? $Format["AreaBorderR"] : $AreaR;
125
-     $AreaBorderG	= isset($Format["AreaBorderG"]) ? $Format["AreaBorderG"] : $AreaG;
126
-     $AreaBorderB	= isset($Format["AreaBorderB"]) ? $Format["AreaBorderB"] : $AreaB;
127
-
128
-     $TextString   = $this->encode39($Value);
129
-
130
-     if ( $DrawArea )
131
-      {
132
-       $X1 = $X + cos(($Angle-135) * PI / 180) * 10;
133
-       $Y1 = $Y + sin(($Angle-135) * PI / 180) * 10;
134
-
135
-       $X2 = $X1 + cos($Angle * PI / 180) * (strlen($this->Result)+20);
136
-       $Y2 = $Y1 + sin($Angle * PI / 180) * (strlen($this->Result)+20);
137
-
138
-       if ( $ShowLegend )
110
+        $this->pChartObject = $Object;
111
+
112
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
113
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
114
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
115
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
116
+        $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
117
+        $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
118
+        $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
119
+        $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
120
+        $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
121
+        $AreaR		= isset($Format["AreaR"]) ? $Format["AreaR"] : 255;
122
+        $AreaG		= isset($Format["AreaG"]) ? $Format["AreaG"] : 255;
123
+        $AreaB		= isset($Format["AreaB"]) ? $Format["AreaB"] : 255;
124
+        $AreaBorderR	= isset($Format["AreaBorderR"]) ? $Format["AreaBorderR"] : $AreaR;
125
+        $AreaBorderG	= isset($Format["AreaBorderG"]) ? $Format["AreaBorderG"] : $AreaG;
126
+        $AreaBorderB	= isset($Format["AreaBorderB"]) ? $Format["AreaBorderB"] : $AreaB;
127
+
128
+        $TextString   = $this->encode39($Value);
129
+
130
+        if ( $DrawArea )
139 131
         {
140
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
141
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
132
+        $X1 = $X + cos(($Angle-135) * PI / 180) * 10;
133
+        $Y1 = $Y + sin(($Angle-135) * PI / 180) * 10;
134
+
135
+        $X2 = $X1 + cos($Angle * PI / 180) * (strlen($this->Result)+20);
136
+        $Y2 = $Y1 + sin($Angle * PI / 180) * (strlen($this->Result)+20);
137
+
138
+        if ( $ShowLegend )
139
+        {
140
+            $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
141
+            $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
142 142
         }
143
-       else
143
+        else
144 144
         {
145
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
146
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
145
+            $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
146
+            $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
147 147
         }
148 148
 
149
-       $X4 = $X3 + cos(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
150
-       $Y4 = $Y3 + sin(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
149
+        $X4 = $X3 + cos(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
150
+        $Y4 = $Y3 + sin(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
151 151
 
152
-       $Polygon  = array($X1,$Y1,$X2,$Y2,$X3,$Y3,$X4,$Y4);
153
-       $Settings = array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"BorderR"=>$AreaBorderR,"BorderG"=>$AreaBorderG,"BorderB"=>$AreaBorderB);
154
-       $this->pChartObject->drawPolygon($Polygon,$Settings);
155
-      }
152
+        $Polygon  = array($X1,$Y1,$X2,$Y2,$X3,$Y3,$X4,$Y4);
153
+        $Settings = array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"BorderR"=>$AreaBorderR,"BorderG"=>$AreaBorderG,"BorderB"=>$AreaBorderB);
154
+        $this->pChartObject->drawPolygon($Polygon,$Settings);
155
+        }
156 156
 
157
-     for($i=1;$i<=strlen($this->Result);$i++)
158
-      {
159
-       if ( $this->mid($this->Result,$i,1) == 1 )
157
+        for($i=1;$i<=strlen($this->Result);$i++)
158
+        {
159
+        if ( $this->mid($this->Result,$i,1) == 1 )
160 160
         {
161
-         $X1 = $X + cos($Angle * PI / 180) * $i;
162
-         $Y1 = $Y + sin($Angle * PI / 180) * $i;
163
-         $X2 = $X1 + cos(($Angle+90) * PI / 180) * $Height;
164
-         $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * $Height;
161
+            $X1 = $X + cos($Angle * PI / 180) * $i;
162
+            $Y1 = $Y + sin($Angle * PI / 180) * $i;
163
+            $X2 = $X1 + cos(($Angle+90) * PI / 180) * $Height;
164
+            $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * $Height;
165 165
 
166
-         $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
167
-         $this->pChartObject->drawLine($X1,$Y1,$X2,$Y2,$Settings);
166
+            $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
167
+            $this->pChartObject->drawLine($X1,$Y1,$X2,$Y2,$Settings);
168
+        }
168 169
         }
169
-      }
170 170
 
171
-     if ( $ShowLegend )
172
-      {
173
-       $X1 = $X + cos($Angle * PI / 180) * (strlen($this->Result)/2);
174
-       $Y1 = $Y + sin($Angle * PI / 180) * (strlen($this->Result)/2);
171
+        if ( $ShowLegend )
172
+        {
173
+        $X1 = $X + cos($Angle * PI / 180) * (strlen($this->Result)/2);
174
+        $Y1 = $Y + sin($Angle * PI / 180) * (strlen($this->Result)/2);
175 175
 
176
-       $LegendX = $X1 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
177
-       $LegendY = $Y1 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
176
+        $LegendX = $X1 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
177
+        $LegendY = $Y1 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
178 178
 
179
-       $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Angle"=>-$Angle,"Align"=>TEXT_ALIGN_TOPMIDDLE);
180
-       $this->pChartObject->drawText($LegendX,$LegendY,$TextString,$Settings);
181
-      }
179
+        $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Angle"=>-$Angle,"Align"=>TEXT_ALIGN_TOPMIDDLE);
180
+        $this->pChartObject->drawText($LegendX,$LegendY,$TextString,$Settings);
181
+        }
182 182
     }
183 183
 
184
-   function checksum( $string )
184
+    function checksum( $string )
185 185
     {
186
-     $checksum = 0;
187
-     $length   = strlen( $string );
188
-     $charset  = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%';
186
+        $checksum = 0;
187
+        $length   = strlen( $string );
188
+        $charset  = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%';
189 189
 
190
-     for( $i=0; $i < $length; ++$i )
191
-      $checksum += strpos( $charset, $string[$i] );
190
+        for( $i=0; $i < $length; ++$i )
191
+        $checksum += strpos( $charset, $string[$i] );
192 192
  
193
-     return substr( $charset, ($checksum % 43), 1 );
193
+        return substr( $charset, ($checksum % 43), 1 );
194 194
     }
195 195
 
196
-   function left($value,$NbChar) { return substr($value,0,$NbChar); }  
197
-   function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
198
-   function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
199
-  }
196
+    function left($value,$NbChar) { return substr($value,0,$NbChar); }  
197
+    function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
198
+    function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
199
+    }
200 200
 ?>
201 201
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +69 added lines, -69 removed lines patch added patch discarded remove patch
@@ -24,9 +24,9 @@  discard block
 block discarded – undo
24 24
    var $MOD43;
25 25
 
26 26
    /* Class creator */
27
-   function pBarcode39($BasePath="",$EnableMOD43=FALSE)
27
+   function pBarcode39($BasePath = "", $EnableMOD43 = FALSE)
28 28
     {
29
-     $this->MOD43  = $EnableMOD43;
29
+     $this->MOD43 = $EnableMOD43;
30 30
      $this->Codes   = "";
31 31
      $this->Reverse = "";
32 32
 
@@ -36,10 +36,10 @@  discard block
 block discarded – undo
36 36
 
37 37
      while (!feof($FileHandle))
38 38
       {
39
-       $Buffer = fgets($FileHandle,4096);
40
-       $Buffer = str_replace(chr(10),"",$Buffer);
41
-       $Buffer = str_replace(chr(13),"",$Buffer);
42
-       $Values = preg_split("/;/",$Buffer);
39
+       $Buffer = fgets($FileHandle, 4096);
40
+       $Buffer = str_replace(chr(10), "", $Buffer);
41
+       $Buffer = str_replace(chr(13), "", $Buffer);
42
+       $Values = preg_split("/;/", $Buffer);
43 43
 
44 44
        $this->Codes[$Values[0]] = $Values[1];
45 45
       }
@@ -47,32 +47,32 @@  discard block
 block discarded – undo
47 47
     }
48 48
 
49 49
    /* Return the projected size of a barcode */
50
-   function getSize($TextString,$Format="")
50
+   function getSize($TextString, $Format = "")
51 51
     {
52
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
53
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
54
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
52
+     $Angle = isset($Format["Angle"]) ? $Format["Angle"] : 0;
53
+     $ShowLegend = isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
54
+     $LegendOffset = isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
55 55
      $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
56 56
      $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : 12;
57
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
57
+     $Height = isset($Format["Height"]) ? $Format["Height"] : 30;
58 58
 
59 59
      $TextString    = $this->encode39($TextString);
60 60
      $BarcodeLength = strlen($this->Result);
61 61
 
62
-     if ( $DrawArea )   { $WOffset = 20; } else { $WOffset = 0; }
63
-     if ( $ShowLegend ) { $HOffset = $FontSize+$LegendOffset+$WOffset; } else { $HOffset = 0; }
62
+     if ($DrawArea) { $WOffset = 20; } else { $WOffset = 0; }
63
+     if ($ShowLegend) { $HOffset = $FontSize + $LegendOffset + $WOffset; } else { $HOffset = 0; }
64 64
 
65
-     $X1 = cos($Angle * PI / 180) * ($WOffset+$BarcodeLength);
66
-     $Y1 = sin($Angle * PI / 180) * ($WOffset+$BarcodeLength);
65
+     $X1 = cos($Angle*PI/180)*($WOffset + $BarcodeLength);
66
+     $Y1 = sin($Angle*PI/180)*($WOffset + $BarcodeLength);
67 67
 
68
-     $X2 = $X1 + cos(($Angle+90) * PI / 180) * ($HOffset+$Height);
69
-     $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * ($HOffset+$Height);
68
+     $X2 = $X1 + cos(($Angle + 90)*PI/180)*($HOffset + $Height);
69
+     $Y2 = $Y1 + sin(($Angle + 90)*PI/180)*($HOffset + $Height);
70 70
 
71 71
 
72
-     $AreaWidth  = max(abs($X1),abs($X2));
73
-     $AreaHeight = max(abs($Y1),abs($Y2));
72
+     $AreaWidth  = max(abs($X1), abs($X2));
73
+     $AreaHeight = max(abs($Y1), abs($Y2));
74 74
 
75
-     return(array("Width"=>$AreaWidth,"Height"=>$AreaHeight));
75
+     return(array("Width"=>$AreaWidth, "Height"=>$AreaHeight));
76 76
     }
77 77
 
78 78
    /* Create the encoded string */
@@ -80,19 +80,19 @@  discard block
 block discarded – undo
80 80
     {
81 81
      $this->Result = "100101101101"."0";
82 82
      $TextString   = "";
83
-     for($i=1;$i<=strlen($Value);$i++)
83
+     for ($i = 1; $i <= strlen($Value); $i++)
84 84
       {
85
-       $CharCode = ord($this->mid($Value,$i,1));
86
-       if ( $CharCode >= 97 && $CharCode <= 122 ) { $CharCode = $CharCode - 32; }
85
+       $CharCode = ord($this->mid($Value, $i, 1));
86
+       if ($CharCode >= 97 && $CharCode <= 122) { $CharCode = $CharCode - 32; }
87 87
 
88
-       if ( isset($this->Codes[chr($CharCode)]) )
88
+       if (isset($this->Codes[chr($CharCode)]))
89 89
         {
90 90
          $this->Result = $this->Result.$this->Codes[chr($CharCode)]."0";
91 91
          $TextString = $TextString.chr($CharCode);
92 92
         }
93 93
       }
94 94
 
95
-     if ( $this->MOD43 )
95
+     if ($this->MOD43)
96 96
       {
97 97
        $Checksum = $this->checksum($TextString);
98 98
        $this->Result = $this->Result.$this->Codes[$Checksum]."0";
@@ -105,7 +105,7 @@  discard block
 block discarded – undo
105 105
     }
106 106
 
107 107
    /* Create the encoded string */
108
-   function draw($Object,$Value,$X,$Y,$Format="")
108
+   function draw($Object, $Value, $X, $Y, $Format = "")
109 109
     {
110 110
      $this->pChartObject = $Object;
111 111
 
@@ -113,11 +113,11 @@  discard block
 block discarded – undo
113 113
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
114 114
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
115 115
      $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
116
-     $Height		= isset($Format["Height"]) ? $Format["Height"] : 30;
116
+     $Height = isset($Format["Height"]) ? $Format["Height"] : 30;
117 117
      $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
118
-     $ShowLegend	= isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
119
-     $LegendOffset	= isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
120
-     $DrawArea		= isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
118
+     $ShowLegend = isset($Format["ShowLegend"]) ? $Format["ShowLegend"] : FALSE;
119
+     $LegendOffset = isset($Format["LegendOffset"]) ? $Format["LegendOffset"] : 5;
120
+     $DrawArea = isset($Format["DrawArea"]) ? $Format["DrawArea"] : FALSE;
121 121
      $AreaR		= isset($Format["AreaR"]) ? $Format["AreaR"] : 255;
122 122
      $AreaG		= isset($Format["AreaG"]) ? $Format["AreaG"] : 255;
123 123
      $AreaB		= isset($Format["AreaB"]) ? $Format["AreaB"] : 255;
@@ -125,76 +125,76 @@  discard block
 block discarded – undo
125 125
      $AreaBorderG	= isset($Format["AreaBorderG"]) ? $Format["AreaBorderG"] : $AreaG;
126 126
      $AreaBorderB	= isset($Format["AreaBorderB"]) ? $Format["AreaBorderB"] : $AreaB;
127 127
 
128
-     $TextString   = $this->encode39($Value);
128
+     $TextString = $this->encode39($Value);
129 129
 
130
-     if ( $DrawArea )
130
+     if ($DrawArea)
131 131
       {
132
-       $X1 = $X + cos(($Angle-135) * PI / 180) * 10;
133
-       $Y1 = $Y + sin(($Angle-135) * PI / 180) * 10;
132
+       $X1 = $X + cos(($Angle - 135)*PI/180)*10;
133
+       $Y1 = $Y + sin(($Angle - 135)*PI/180)*10;
134 134
 
135
-       $X2 = $X1 + cos($Angle * PI / 180) * (strlen($this->Result)+20);
136
-       $Y2 = $Y1 + sin($Angle * PI / 180) * (strlen($this->Result)+20);
135
+       $X2 = $X1 + cos($Angle*PI/180)*(strlen($this->Result) + 20);
136
+       $Y2 = $Y1 + sin($Angle*PI/180)*(strlen($this->Result) + 20);
137 137
 
138
-       if ( $ShowLegend )
138
+       if ($ShowLegend)
139 139
         {
140
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
141
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
140
+         $X3 = $X2 + cos(($Angle + 90)*PI/180)*($Height + $LegendOffset + $this->pChartObject->FontSize + 10);
141
+         $Y3 = $Y2 + sin(($Angle + 90)*PI/180)*($Height + $LegendOffset + $this->pChartObject->FontSize + 10);
142 142
         }
143 143
        else
144 144
         {
145
-         $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
146
-         $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
145
+         $X3 = $X2 + cos(($Angle + 90)*PI/180)*($Height + 20);
146
+         $Y3 = $Y2 + sin(($Angle + 90)*PI/180)*($Height + 20);
147 147
         }
148 148
 
149
-       $X4 = $X3 + cos(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
150
-       $Y4 = $Y3 + sin(($Angle+180) * PI / 180) * (strlen($this->Result)+20);
149
+       $X4 = $X3 + cos(($Angle + 180)*PI/180)*(strlen($this->Result) + 20);
150
+       $Y4 = $Y3 + sin(($Angle + 180)*PI/180)*(strlen($this->Result) + 20);
151 151
 
152
-       $Polygon  = array($X1,$Y1,$X2,$Y2,$X3,$Y3,$X4,$Y4);
153
-       $Settings = array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"BorderR"=>$AreaBorderR,"BorderG"=>$AreaBorderG,"BorderB"=>$AreaBorderB);
154
-       $this->pChartObject->drawPolygon($Polygon,$Settings);
152
+       $Polygon  = array($X1, $Y1, $X2, $Y2, $X3, $Y3, $X4, $Y4);
153
+       $Settings = array("R"=>$AreaR, "G"=>$AreaG, "B"=>$AreaB, "BorderR"=>$AreaBorderR, "BorderG"=>$AreaBorderG, "BorderB"=>$AreaBorderB);
154
+       $this->pChartObject->drawPolygon($Polygon, $Settings);
155 155
       }
156 156
 
157
-     for($i=1;$i<=strlen($this->Result);$i++)
157
+     for ($i = 1; $i <= strlen($this->Result); $i++)
158 158
       {
159
-       if ( $this->mid($this->Result,$i,1) == 1 )
159
+       if ($this->mid($this->Result, $i, 1) == 1)
160 160
         {
161
-         $X1 = $X + cos($Angle * PI / 180) * $i;
162
-         $Y1 = $Y + sin($Angle * PI / 180) * $i;
163
-         $X2 = $X1 + cos(($Angle+90) * PI / 180) * $Height;
164
-         $Y2 = $Y1 + sin(($Angle+90) * PI / 180) * $Height;
161
+         $X1 = $X + cos($Angle*PI/180)*$i;
162
+         $Y1 = $Y + sin($Angle*PI/180)*$i;
163
+         $X2 = $X1 + cos(($Angle + 90)*PI/180)*$Height;
164
+         $Y2 = $Y1 + sin(($Angle + 90)*PI/180)*$Height;
165 165
 
166
-         $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
167
-         $this->pChartObject->drawLine($X1,$Y1,$X2,$Y2,$Settings);
166
+         $Settings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
167
+         $this->pChartObject->drawLine($X1, $Y1, $X2, $Y2, $Settings);
168 168
         }
169 169
       }
170 170
 
171
-     if ( $ShowLegend )
171
+     if ($ShowLegend)
172 172
       {
173
-       $X1 = $X + cos($Angle * PI / 180) * (strlen($this->Result)/2);
174
-       $Y1 = $Y + sin($Angle * PI / 180) * (strlen($this->Result)/2);
173
+       $X1 = $X + cos($Angle*PI/180)*(strlen($this->Result)/2);
174
+       $Y1 = $Y + sin($Angle*PI/180)*(strlen($this->Result)/2);
175 175
 
176
-       $LegendX = $X1 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
177
-       $LegendY = $Y1 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset);
176
+       $LegendX = $X1 + cos(($Angle + 90)*PI/180)*($Height + $LegendOffset);
177
+       $LegendY = $Y1 + sin(($Angle + 90)*PI/180)*($Height + $LegendOffset);
178 178
 
179
-       $Settings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Angle"=>-$Angle,"Align"=>TEXT_ALIGN_TOPMIDDLE);
180
-       $this->pChartObject->drawText($LegendX,$LegendY,$TextString,$Settings);
179
+       $Settings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Angle"=>-$Angle, "Align"=>TEXT_ALIGN_TOPMIDDLE);
180
+       $this->pChartObject->drawText($LegendX, $LegendY, $TextString, $Settings);
181 181
       }
182 182
     }
183 183
 
184
-   function checksum( $string )
184
+   function checksum($string)
185 185
     {
186 186
      $checksum = 0;
187
-     $length   = strlen( $string );
187
+     $length   = strlen($string);
188 188
      $charset  = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%';
189 189
 
190
-     for( $i=0; $i < $length; ++$i )
191
-      $checksum += strpos( $charset, $string[$i] );
190
+     for ($i = 0; $i < $length; ++$i)
191
+      $checksum += strpos($charset, $string[$i]);
192 192
  
193
-     return substr( $charset, ($checksum % 43), 1 );
193
+     return substr($charset, ($checksum%43), 1);
194 194
     }
195 195
 
196
-   function left($value,$NbChar) { return substr($value,0,$NbChar); }  
197
-   function right($value,$NbChar) { return substr($value,strlen($value)-$NbChar,$NbChar); }  
198
-   function mid($value,$Depart,$NbChar) { return substr($value,$Depart-1,$NbChar); }  
196
+   function left($value, $NbChar) { return substr($value, 0, $NbChar); }  
197
+   function right($value, $NbChar) { return substr($value, strlen($value) - $NbChar, $NbChar); }  
198
+   function mid($value, $Depart, $NbChar) { return substr($value, $Depart - 1, $NbChar); }  
199 199
   }
200 200
 ?>
201 201
\ No newline at end of file
Please login to merge, or discard this patch.
Braces   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -139,8 +139,7 @@  discard block
 block discarded – undo
139 139
         {
140 140
          $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
141 141
          $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+$LegendOffset+$this->pChartObject->FontSize+10);
142
-        }
143
-       else
142
+        } else
144 143
         {
145 144
          $X3 = $X2 + cos(($Angle+90) * PI / 180) * ($Height+20);
146 145
          $Y3 = $Y2 + sin(($Angle+90) * PI / 180) * ($Height+20);
@@ -187,8 +186,9 @@  discard block
 block discarded – undo
187 186
      $length   = strlen( $string );
188 187
      $charset  = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%';
189 188
 
190
-     for( $i=0; $i < $length; ++$i )
191
-      $checksum += strpos( $charset, $string[$i] );
189
+     for( $i=0; $i < $length; ++$i ) {
190
+           $checksum += strpos( $charset, $string[$i] );
191
+     }
192 192
  
193 193
      return substr( $charset, ($checksum % 43), 1 );
194 194
     }
Please login to merge, or discard this patch.
default/boinc/modules/boincstats/includes/pchart/class/pCache.class.php 4 patches
Doc Comments   +11 added lines patch added patch discarded remove patch
@@ -47,6 +47,10 @@  discard block
 block discarded – undo
47 47
     { return(md5($Marker.serialize($Data->Data))); }
48 48
 
49 49
    /* Write the generated picture to the cache */
50
+
51
+   /**
52
+    * @param pImage $pChartObject
53
+    */
50 54
    function writeToCache($ID,$pChartObject)
51 55
     {
52 56
      /* Compute the paths */
@@ -81,6 +85,10 @@  discard block
 block discarded – undo
81 85
     }
82 86
 
83 87
    /* Remove object older than the specified TS */
88
+
89
+   /**
90
+    * @param integer $Expiry
91
+    */
84 92
    function removeOlderThan($Expiry)
85 93
     { $this->dbRemoval(array("Expiry"=>$Expiry)); }
86 94
 
@@ -235,6 +243,9 @@  discard block
 block discarded – undo
235 243
      return(TRUE);
236 244
     }
237 245
 
246
+   /**
247
+    * @param string $Destination
248
+    */
238 249
    function saveFromCache($ID,$Destination)
239 250
     {
240 251
      /* Get the raw picture from the cache */
Please login to merge, or discard this patch.
Indentation   +205 added lines, -205 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
- /*
2
+    /*
3 3
      pCache - speed up the rendering by caching up the pictures
4 4
 
5 5
      Version     : 2.1.3
@@ -13,268 +13,268 @@  discard block
 block discarded – undo
13 13
      You can find the whole class documentation on the pChart web site.
14 14
  */
15 15
 
16
- /* pData class definition */
17
- class pCache
18
-  {
19
-   var $CacheFolder;
20
-   var $CacheIndex;
21
-   var $CacheDB;
16
+    /* pData class definition */
17
+    class pCache
18
+    {
19
+    var $CacheFolder;
20
+    var $CacheIndex;
21
+    var $CacheDB;
22 22
 
23
-   /* Class creator */
24
-   function pCache($Settings="")
23
+    /* Class creator */
24
+    function pCache($Settings="")
25 25
     {
26
-     $CacheFolder	= isset($Settings["CacheFolder"]) ? $Settings["CacheFolder"] : "cache";
27
-     $CacheIndex	= isset($Settings["CacheIndex"]) ? $Settings["CacheIndex"] : "index.db";
28
-     $CacheDB		= isset($Settings["CacheDB"]) ? $Settings["CacheDB"] : "cache.db";
26
+        $CacheFolder	= isset($Settings["CacheFolder"]) ? $Settings["CacheFolder"] : "cache";
27
+        $CacheIndex	= isset($Settings["CacheIndex"]) ? $Settings["CacheIndex"] : "index.db";
28
+        $CacheDB		= isset($Settings["CacheDB"]) ? $Settings["CacheDB"] : "cache.db";
29 29
 
30
-     $this->CacheFolder	= $CacheFolder;
31
-     $this->CacheIndex	= $CacheIndex;
32
-     $this->CacheDB	= $CacheDB;
30
+        $this->CacheFolder	= $CacheFolder;
31
+        $this->CacheIndex	= $CacheIndex;
32
+        $this->CacheDB	= $CacheDB;
33 33
 
34
-     if (!file_exists($this->CacheFolder."/".$this->CacheIndex)) { touch($this->CacheFolder."/".$this->CacheIndex); }
35
-     if (!file_exists($this->CacheFolder."/".$this->CacheDB))    { touch($this->CacheFolder."/".$this->CacheDB); }
34
+        if (!file_exists($this->CacheFolder."/".$this->CacheIndex)) { touch($this->CacheFolder."/".$this->CacheIndex); }
35
+        if (!file_exists($this->CacheFolder."/".$this->CacheDB))    { touch($this->CacheFolder."/".$this->CacheDB); }
36 36
     }
37 37
 
38
-   /* Flush the cache contents */
39
-   function flush()
38
+    /* Flush the cache contents */
39
+    function flush()
40 40
     {
41
-     if (file_exists($this->CacheFolder."/".$this->CacheIndex)) { unlink($this->CacheFolder."/".$this->CacheIndex); touch($this->CacheFolder."/".$this->CacheIndex); }
42
-     if (file_exists($this->CacheFolder."/".$this->CacheDB))    { unlink($this->CacheFolder."/".$this->CacheDB); touch($this->CacheFolder."/".$this->CacheDB); }
41
+        if (file_exists($this->CacheFolder."/".$this->CacheIndex)) { unlink($this->CacheFolder."/".$this->CacheIndex); touch($this->CacheFolder."/".$this->CacheIndex); }
42
+        if (file_exists($this->CacheFolder."/".$this->CacheDB))    { unlink($this->CacheFolder."/".$this->CacheDB); touch($this->CacheFolder."/".$this->CacheDB); }
43 43
     }
44 44
 
45
-   /* Return the MD5 of the data array to clearly identify the chart */
46
-   function getHash($Data,$Marker="")
45
+    /* Return the MD5 of the data array to clearly identify the chart */
46
+    function getHash($Data,$Marker="")
47 47
     { return(md5($Marker.serialize($Data->Data))); }
48 48
 
49
-   /* Write the generated picture to the cache */
50
-   function writeToCache($ID,$pChartObject)
49
+    /* Write the generated picture to the cache */
50
+    function writeToCache($ID,$pChartObject)
51 51
     {
52
-     /* Compute the paths */
53
-     $TemporaryFile = $this->CacheFolder."/tmp_".rand(0,1000).".png";
54
-     $Database      = $this->CacheFolder."/".$this->CacheDB;
55
-     $Index         = $this->CacheFolder."/".$this->CacheIndex;
56
-
57
-     /* Flush the picture to a temporary file */
58
-     imagepng($pChartObject->Picture ,$TemporaryFile);
59
-
60
-     /* Retrieve the files size */
61
-     $PictureSize = filesize($TemporaryFile);
62
-     $DBSize      = filesize($Database);
63
-
64
-     /* Save the index */
65
-     $Handle = fopen($Index,"a");
66
-     fwrite($Handle, $ID.",".$DBSize.",".$PictureSize.",".time().",0      \r\n");
67
-     fclose($Handle);
68
-
69
-     /* Get the picture raw contents */
70
-     $Handle = fopen($TemporaryFile,"r");
71
-     $Raw    = fread($Handle,$PictureSize);
72
-     fclose($Handle);
73
-
74
-     /* Save the picture in the solid database file */
75
-     $Handle = fopen($Database,"a");
76
-     fwrite($Handle, $Raw);
77
-     fclose($Handle);
78
-
79
-     /* Remove temporary file */
80
-     unlink($TemporaryFile);
52
+        /* Compute the paths */
53
+        $TemporaryFile = $this->CacheFolder."/tmp_".rand(0,1000).".png";
54
+        $Database      = $this->CacheFolder."/".$this->CacheDB;
55
+        $Index         = $this->CacheFolder."/".$this->CacheIndex;
56
+
57
+        /* Flush the picture to a temporary file */
58
+        imagepng($pChartObject->Picture ,$TemporaryFile);
59
+
60
+        /* Retrieve the files size */
61
+        $PictureSize = filesize($TemporaryFile);
62
+        $DBSize      = filesize($Database);
63
+
64
+        /* Save the index */
65
+        $Handle = fopen($Index,"a");
66
+        fwrite($Handle, $ID.",".$DBSize.",".$PictureSize.",".time().",0      \r\n");
67
+        fclose($Handle);
68
+
69
+        /* Get the picture raw contents */
70
+        $Handle = fopen($TemporaryFile,"r");
71
+        $Raw    = fread($Handle,$PictureSize);
72
+        fclose($Handle);
73
+
74
+        /* Save the picture in the solid database file */
75
+        $Handle = fopen($Database,"a");
76
+        fwrite($Handle, $Raw);
77
+        fclose($Handle);
78
+
79
+        /* Remove temporary file */
80
+        unlink($TemporaryFile);
81 81
     }
82 82
 
83
-   /* Remove object older than the specified TS */
84
-   function removeOlderThan($Expiry)
83
+    /* Remove object older than the specified TS */
84
+    function removeOlderThan($Expiry)
85 85
     { $this->dbRemoval(array("Expiry"=>$Expiry)); }
86 86
 
87
-   /* Remove an object from the cache */
88
-   function remove($ID)
87
+    /* Remove an object from the cache */
88
+    function remove($ID)
89 89
     { $this->dbRemoval(array("Name"=>$ID)); }
90 90
 
91
-   /* Remove with specified criterias */
92
-   function dbRemoval($Settings)
91
+    /* Remove with specified criterias */
92
+    function dbRemoval($Settings)
93 93
     {
94
-     $ID     = isset($Settings["Name"]) ? $Settings["Name"] : NULL;
95
-     $Expiry = isset($Settings["Expiry"]) ? $Settings["Expiry"] : -(24*60*60);
96
-     $TS     = time()-$Expiry;
97
-
98
-     /* Compute the paths */
99
-     $Database     = $this->CacheFolder."/".$this->CacheDB;
100
-     $Index        = $this->CacheFolder."/".$this->CacheIndex;
101
-     $DatabaseTemp = $this->CacheFolder."/".$this->CacheDB.".tmp";
102
-     $IndexTemp    = $this->CacheFolder."/".$this->CacheIndex.".tmp";
103
-
104
-     /* Single file removal */
105
-     if ( $ID != NULL )
106
-      {
107
-       /* Retrieve object informations */
108
-       $Object = $this->isInCache($ID,TRUE);
109
-
110
-       /* If it's not in the cache DB, go away */
111
-       if ( !$Object ) { return(0); }
112
-      }
113
-
114
-     /* Create the temporary files */
115
-     if (!file_exists($DatabaseTemp)) { touch($DatabaseTemp); }
116
-     if (!file_exists($IndexTemp))    { touch($IndexTemp); }
117
-
118
-     /* Open the file handles */
119
-     $IndexHandle     = @fopen($Index, "r");
120
-     $IndexTempHandle = @fopen($IndexTemp, "w");
121
-     $DBHandle        = @fopen($Database, "r");
122
-     $DBTempHandle    = @fopen($DatabaseTemp, "w");
123
-
124
-     /* Remove the selected ID from the database */
125
-     while (!feof($IndexHandle))
126
-      {
127
-       $Entry    = fgets($IndexHandle, 4096);
128
-       $Entry    = str_replace("\r","",$Entry);
129
-       $Entry    = str_replace("\n","",$Entry);
130
-       $Settings = preg_split("/,/",$Entry);
131
-
132
-       if ( $Entry != "" )
94
+        $ID     = isset($Settings["Name"]) ? $Settings["Name"] : NULL;
95
+        $Expiry = isset($Settings["Expiry"]) ? $Settings["Expiry"] : -(24*60*60);
96
+        $TS     = time()-$Expiry;
97
+
98
+        /* Compute the paths */
99
+        $Database     = $this->CacheFolder."/".$this->CacheDB;
100
+        $Index        = $this->CacheFolder."/".$this->CacheIndex;
101
+        $DatabaseTemp = $this->CacheFolder."/".$this->CacheDB.".tmp";
102
+        $IndexTemp    = $this->CacheFolder."/".$this->CacheIndex.".tmp";
103
+
104
+        /* Single file removal */
105
+        if ( $ID != NULL )
133 106
         {
134
-         $PicID       = $Settings[0];
135
-         $DBPos       = $Settings[1];
136
-         $PicSize     = $Settings[2];
137
-         $GeneratedTS = $Settings[3];
138
-         $Hits        = $Settings[4];
139
-
140
-         if ( $Settings[0] != $ID && $GeneratedTS > $TS)
141
-          {
142
-           $CurrentPos  = ftell($DBTempHandle);
143
-           fwrite($IndexTempHandle, $PicID.",".$CurrentPos.",".$PicSize.",".$GeneratedTS.",".$Hits."\r\n");
144
-
145
-           fseek($DBHandle,$DBPos);
146
-           $Picture = fread($DBHandle,$PicSize);
147
-           fwrite($DBTempHandle,$Picture);
148
-          }
107
+        /* Retrieve object informations */
108
+        $Object = $this->isInCache($ID,TRUE);
109
+
110
+        /* If it's not in the cache DB, go away */
111
+        if ( !$Object ) { return(0); }
112
+        }
113
+
114
+        /* Create the temporary files */
115
+        if (!file_exists($DatabaseTemp)) { touch($DatabaseTemp); }
116
+        if (!file_exists($IndexTemp))    { touch($IndexTemp); }
117
+
118
+        /* Open the file handles */
119
+        $IndexHandle     = @fopen($Index, "r");
120
+        $IndexTempHandle = @fopen($IndexTemp, "w");
121
+        $DBHandle        = @fopen($Database, "r");
122
+        $DBTempHandle    = @fopen($DatabaseTemp, "w");
123
+
124
+        /* Remove the selected ID from the database */
125
+        while (!feof($IndexHandle))
126
+        {
127
+        $Entry    = fgets($IndexHandle, 4096);
128
+        $Entry    = str_replace("\r","",$Entry);
129
+        $Entry    = str_replace("\n","",$Entry);
130
+        $Settings = preg_split("/,/",$Entry);
131
+
132
+        if ( $Entry != "" )
133
+        {
134
+            $PicID       = $Settings[0];
135
+            $DBPos       = $Settings[1];
136
+            $PicSize     = $Settings[2];
137
+            $GeneratedTS = $Settings[3];
138
+            $Hits        = $Settings[4];
139
+
140
+            if ( $Settings[0] != $ID && $GeneratedTS > $TS)
141
+            {
142
+            $CurrentPos  = ftell($DBTempHandle);
143
+            fwrite($IndexTempHandle, $PicID.",".$CurrentPos.",".$PicSize.",".$GeneratedTS.",".$Hits."\r\n");
144
+
145
+            fseek($DBHandle,$DBPos);
146
+            $Picture = fread($DBHandle,$PicSize);
147
+            fwrite($DBTempHandle,$Picture);
148
+            }
149
+        }
149 150
         }
150
-      }
151 151
 
152
-     /* Close the handles */
153
-     fclose($IndexHandle);
154
-     fclose($IndexTempHandle);
155
-     fclose($DBHandle);
156
-     fclose($DBTempHandle);
152
+        /* Close the handles */
153
+        fclose($IndexHandle);
154
+        fclose($IndexTempHandle);
155
+        fclose($DBHandle);
156
+        fclose($DBTempHandle);
157 157
 
158
-     /* Remove the prod files */
159
-     unlink($Database);
160
-     unlink($Index);
158
+        /* Remove the prod files */
159
+        unlink($Database);
160
+        unlink($Index);
161 161
 
162
-     /* Swap the temp & prod DB */
163
-     rename($DatabaseTemp,$Database);
164
-     rename($IndexTemp,$Index);
162
+        /* Swap the temp & prod DB */
163
+        rename($DatabaseTemp,$Database);
164
+        rename($IndexTemp,$Index);
165 165
     }
166 166
 
167
-   function isInCache($ID,$Verbose=FALSE,$UpdateHitsCount=FALSE)
167
+    function isInCache($ID,$Verbose=FALSE,$UpdateHitsCount=FALSE)
168 168
     {
169
-     /* Compute the paths */
170
-     $Index = $this->CacheFolder."/".$this->CacheIndex;
171
-
172
-     /* Search the picture in the index file */
173
-     $Handle = @fopen($Index, "r");
174
-     while (!feof($Handle))
175
-      {
176
-       $IndexPos = ftell($Handle);
177
-       $Entry = fgets($Handle, 4096);
178
-       if ( $Entry != "" )
169
+        /* Compute the paths */
170
+        $Index = $this->CacheFolder."/".$this->CacheIndex;
171
+
172
+        /* Search the picture in the index file */
173
+        $Handle = @fopen($Index, "r");
174
+        while (!feof($Handle))
175
+        {
176
+        $IndexPos = ftell($Handle);
177
+        $Entry = fgets($Handle, 4096);
178
+        if ( $Entry != "" )
179 179
         {
180
-         $Settings = preg_split("/,/",$Entry);
181
-         $PicID    = $Settings[0];
182
-         if ( $PicID == $ID )
183
-          {
184
-           fclose($Handle);
185
-
186
-           $DBPos       = $Settings[1];
187
-           $PicSize     = $Settings[2];
188
-           $GeneratedTS = $Settings[3];
189
-           $Hits        = intval($Settings[4]);
190
-
191
-           if ( $UpdateHitsCount )
180
+            $Settings = preg_split("/,/",$Entry);
181
+            $PicID    = $Settings[0];
182
+            if ( $PicID == $ID )
192 183
             {
193
-             $Hits++;
194
-             if ( strlen($Hits) < 7 ) { $Hits = $Hits.str_repeat(" ",7-strlen($Hits)); }
184
+            fclose($Handle);
185
+
186
+            $DBPos       = $Settings[1];
187
+            $PicSize     = $Settings[2];
188
+            $GeneratedTS = $Settings[3];
189
+            $Hits        = intval($Settings[4]);
195 190
 
196
-             $Handle = @fopen($Index, "r+");
197
-             fseek($Handle,$IndexPos);
198
-             fwrite($Handle, $PicID.",".$DBPos.",".$PicSize.",".$GeneratedTS.",".$Hits."\r\n");
199
-             fclose($Handle);
191
+            if ( $UpdateHitsCount )
192
+            {
193
+                $Hits++;
194
+                if ( strlen($Hits) < 7 ) { $Hits = $Hits.str_repeat(" ",7-strlen($Hits)); }
195
+
196
+                $Handle = @fopen($Index, "r+");
197
+                fseek($Handle,$IndexPos);
198
+                fwrite($Handle, $PicID.",".$DBPos.",".$PicSize.",".$GeneratedTS.",".$Hits."\r\n");
199
+                fclose($Handle);
200 200
             }
201 201
 
202
-           if ($Verbose)
202
+            if ($Verbose)
203 203
             { return(array("DBPos"=>$DBPos,"PicSize"=>$PicSize,"GeneratedTS"=>$GeneratedTS,"Hits"=>$Hits)); }
204
-           else
204
+            else
205 205
             { return(TRUE); }
206
-          }
206
+            }
207 207
         }
208
-      }
209
-     fclose($Handle);
208
+        }
209
+        fclose($Handle);
210 210
 
211
-     /* Picture isn't in the cache */
212
-     return(FALSE);
211
+        /* Picture isn't in the cache */
212
+        return(FALSE);
213 213
     }
214 214
 
215
-   /* Automatic output method based on the calling interface */
216
-   function autoOutput($ID,$Destination="output.png")
215
+    /* Automatic output method based on the calling interface */
216
+    function autoOutput($ID,$Destination="output.png")
217 217
     {
218
-     if (php_sapi_name() == "cli")
219
-      $this->saveFromCache($ID,$Destination);
220
-     else
221
-      $this->strokeFromCache($ID);
218
+        if (php_sapi_name() == "cli")
219
+        $this->saveFromCache($ID,$Destination);
220
+        else
221
+        $this->strokeFromCache($ID);
222 222
     }
223 223
 
224
-   function strokeFromCache($ID)
224
+    function strokeFromCache($ID)
225 225
     {
226
-     /* Get the raw picture from the cache */
227
-     $Picture = $this->getFromCache($ID);
226
+        /* Get the raw picture from the cache */
227
+        $Picture = $this->getFromCache($ID);
228 228
 
229
-     /* Do we have a hit? */
230
-     if ( $Picture == NULL ) { return(FALSE); }
229
+        /* Do we have a hit? */
230
+        if ( $Picture == NULL ) { return(FALSE); }
231 231
 
232
-     header('Content-type: image/png');
233
-     echo $Picture;
232
+        header('Content-type: image/png');
233
+        echo $Picture;
234 234
 
235
-     return(TRUE);
235
+        return(TRUE);
236 236
     }
237 237
 
238
-   function saveFromCache($ID,$Destination)
238
+    function saveFromCache($ID,$Destination)
239 239
     {
240
-     /* Get the raw picture from the cache */
241
-     $Picture = $this->getFromCache($ID);
240
+        /* Get the raw picture from the cache */
241
+        $Picture = $this->getFromCache($ID);
242 242
 
243
-     /* Do we have a hit? */
244
-     if ( $Picture == NULL ) { return(FALSE); }
243
+        /* Do we have a hit? */
244
+        if ( $Picture == NULL ) { return(FALSE); }
245 245
 
246
-     /* Flush the picture to a file */
247
-     $Handle = fopen($Destination,"w");
248
-     fwrite($Handle,$Picture);
249
-     fclose($Handle);
246
+        /* Flush the picture to a file */
247
+        $Handle = fopen($Destination,"w");
248
+        fwrite($Handle,$Picture);
249
+        fclose($Handle);
250 250
 
251
-     /* All went fine */
252
-     return(TRUE);
251
+        /* All went fine */
252
+        return(TRUE);
253 253
     }
254 254
 
255
-   function getFromCache($ID)
255
+    function getFromCache($ID)
256 256
     {
257
-     /* Compute the path */
258
-     $Database = $this->CacheFolder."/".$this->CacheDB;
257
+        /* Compute the path */
258
+        $Database = $this->CacheFolder."/".$this->CacheDB;
259 259
 
260
-     /* Lookup for the picture in the cache */
261
-     $CacheInfo = $this->isInCache($ID,TRUE,TRUE);
260
+        /* Lookup for the picture in the cache */
261
+        $CacheInfo = $this->isInCache($ID,TRUE,TRUE);
262 262
 
263
-     /* Not in the cache */
264
-     if (!$CacheInfo) { return(NULL); }
263
+        /* Not in the cache */
264
+        if (!$CacheInfo) { return(NULL); }
265 265
 
266
-     /* Get the database extended information */     
267
-     $DBPos   = $CacheInfo["DBPos"];
268
-     $PicSize = $CacheInfo["PicSize"];
266
+        /* Get the database extended information */     
267
+        $DBPos   = $CacheInfo["DBPos"];
268
+        $PicSize = $CacheInfo["PicSize"];
269 269
 
270
-     /* Extract the picture from the solid cache file */
271
-     $Handle = @fopen($Database, "r");
272
-     fseek($Handle,$DBPos);
273
-     $Picture = fread($Handle,$PicSize);
274
-     fclose($Handle);
270
+        /* Extract the picture from the solid cache file */
271
+        $Handle = @fopen($Database, "r");
272
+        fseek($Handle,$DBPos);
273
+        $Picture = fread($Handle,$PicSize);
274
+        fclose($Handle);
275 275
 
276
-     /* Return back the raw picture data */
277
-     return($Picture);
276
+        /* Return back the raw picture data */
277
+        return($Picture);
278
+    }
278 279
     }
279
-  }
280 280
 ?>
281 281
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +51 added lines, -51 removed lines patch added patch discarded remove patch
@@ -21,58 +21,58 @@  discard block
 block discarded – undo
21 21
    var $CacheDB;
22 22
 
23 23
    /* Class creator */
24
-   function pCache($Settings="")
24
+   function pCache($Settings = "")
25 25
     {
26
-     $CacheFolder	= isset($Settings["CacheFolder"]) ? $Settings["CacheFolder"] : "cache";
27
-     $CacheIndex	= isset($Settings["CacheIndex"]) ? $Settings["CacheIndex"] : "index.db";
28
-     $CacheDB		= isset($Settings["CacheDB"]) ? $Settings["CacheDB"] : "cache.db";
26
+     $CacheFolder = isset($Settings["CacheFolder"]) ? $Settings["CacheFolder"] : "cache";
27
+     $CacheIndex = isset($Settings["CacheIndex"]) ? $Settings["CacheIndex"] : "index.db";
28
+     $CacheDB = isset($Settings["CacheDB"]) ? $Settings["CacheDB"] : "cache.db";
29 29
 
30
-     $this->CacheFolder	= $CacheFolder;
31
-     $this->CacheIndex	= $CacheIndex;
32
-     $this->CacheDB	= $CacheDB;
30
+     $this->CacheFolder = $CacheFolder;
31
+     $this->CacheIndex = $CacheIndex;
32
+     $this->CacheDB = $CacheDB;
33 33
 
34 34
      if (!file_exists($this->CacheFolder."/".$this->CacheIndex)) { touch($this->CacheFolder."/".$this->CacheIndex); }
35
-     if (!file_exists($this->CacheFolder."/".$this->CacheDB))    { touch($this->CacheFolder."/".$this->CacheDB); }
35
+     if (!file_exists($this->CacheFolder."/".$this->CacheDB)) { touch($this->CacheFolder."/".$this->CacheDB); }
36 36
     }
37 37
 
38 38
    /* Flush the cache contents */
39 39
    function flush()
40 40
     {
41 41
      if (file_exists($this->CacheFolder."/".$this->CacheIndex)) { unlink($this->CacheFolder."/".$this->CacheIndex); touch($this->CacheFolder."/".$this->CacheIndex); }
42
-     if (file_exists($this->CacheFolder."/".$this->CacheDB))    { unlink($this->CacheFolder."/".$this->CacheDB); touch($this->CacheFolder."/".$this->CacheDB); }
42
+     if (file_exists($this->CacheFolder."/".$this->CacheDB)) { unlink($this->CacheFolder."/".$this->CacheDB); touch($this->CacheFolder."/".$this->CacheDB); }
43 43
     }
44 44
 
45 45
    /* Return the MD5 of the data array to clearly identify the chart */
46
-   function getHash($Data,$Marker="")
46
+   function getHash($Data, $Marker = "")
47 47
     { return(md5($Marker.serialize($Data->Data))); }
48 48
 
49 49
    /* Write the generated picture to the cache */
50
-   function writeToCache($ID,$pChartObject)
50
+   function writeToCache($ID, $pChartObject)
51 51
     {
52 52
      /* Compute the paths */
53
-     $TemporaryFile = $this->CacheFolder."/tmp_".rand(0,1000).".png";
53
+     $TemporaryFile = $this->CacheFolder."/tmp_".rand(0, 1000).".png";
54 54
      $Database      = $this->CacheFolder."/".$this->CacheDB;
55 55
      $Index         = $this->CacheFolder."/".$this->CacheIndex;
56 56
 
57 57
      /* Flush the picture to a temporary file */
58
-     imagepng($pChartObject->Picture ,$TemporaryFile);
58
+     imagepng($pChartObject->Picture, $TemporaryFile);
59 59
 
60 60
      /* Retrieve the files size */
61 61
      $PictureSize = filesize($TemporaryFile);
62 62
      $DBSize      = filesize($Database);
63 63
 
64 64
      /* Save the index */
65
-     $Handle = fopen($Index,"a");
65
+     $Handle = fopen($Index, "a");
66 66
      fwrite($Handle, $ID.",".$DBSize.",".$PictureSize.",".time().",0      \r\n");
67 67
      fclose($Handle);
68 68
 
69 69
      /* Get the picture raw contents */
70
-     $Handle = fopen($TemporaryFile,"r");
71
-     $Raw    = fread($Handle,$PictureSize);
70
+     $Handle = fopen($TemporaryFile, "r");
71
+     $Raw    = fread($Handle, $PictureSize);
72 72
      fclose($Handle);
73 73
 
74 74
      /* Save the picture in the solid database file */
75
-     $Handle = fopen($Database,"a");
75
+     $Handle = fopen($Database, "a");
76 76
      fwrite($Handle, $Raw);
77 77
      fclose($Handle);
78 78
 
@@ -93,7 +93,7 @@  discard block
 block discarded – undo
93 93
     {
94 94
      $ID     = isset($Settings["Name"]) ? $Settings["Name"] : NULL;
95 95
      $Expiry = isset($Settings["Expiry"]) ? $Settings["Expiry"] : -(24*60*60);
96
-     $TS     = time()-$Expiry;
96
+     $TS     = time() - $Expiry;
97 97
 
98 98
      /* Compute the paths */
99 99
      $Database     = $this->CacheFolder."/".$this->CacheDB;
@@ -102,18 +102,18 @@  discard block
 block discarded – undo
102 102
      $IndexTemp    = $this->CacheFolder."/".$this->CacheIndex.".tmp";
103 103
 
104 104
      /* Single file removal */
105
-     if ( $ID != NULL )
105
+     if ($ID != NULL)
106 106
       {
107 107
        /* Retrieve object informations */
108
-       $Object = $this->isInCache($ID,TRUE);
108
+       $Object = $this->isInCache($ID, TRUE);
109 109
 
110 110
        /* If it's not in the cache DB, go away */
111
-       if ( !$Object ) { return(0); }
111
+       if (!$Object) { return(0); }
112 112
       }
113 113
 
114 114
      /* Create the temporary files */
115 115
      if (!file_exists($DatabaseTemp)) { touch($DatabaseTemp); }
116
-     if (!file_exists($IndexTemp))    { touch($IndexTemp); }
116
+     if (!file_exists($IndexTemp)) { touch($IndexTemp); }
117 117
 
118 118
      /* Open the file handles */
119 119
      $IndexHandle     = @fopen($Index, "r");
@@ -125,11 +125,11 @@  discard block
 block discarded – undo
125 125
      while (!feof($IndexHandle))
126 126
       {
127 127
        $Entry    = fgets($IndexHandle, 4096);
128
-       $Entry    = str_replace("\r","",$Entry);
129
-       $Entry    = str_replace("\n","",$Entry);
130
-       $Settings = preg_split("/,/",$Entry);
128
+       $Entry    = str_replace("\r", "", $Entry);
129
+       $Entry    = str_replace("\n", "", $Entry);
130
+       $Settings = preg_split("/,/", $Entry);
131 131
 
132
-       if ( $Entry != "" )
132
+       if ($Entry != "")
133 133
         {
134 134
          $PicID       = $Settings[0];
135 135
          $DBPos       = $Settings[1];
@@ -137,14 +137,14 @@  discard block
 block discarded – undo
137 137
          $GeneratedTS = $Settings[3];
138 138
          $Hits        = $Settings[4];
139 139
 
140
-         if ( $Settings[0] != $ID && $GeneratedTS > $TS)
140
+         if ($Settings[0] != $ID && $GeneratedTS > $TS)
141 141
           {
142
-           $CurrentPos  = ftell($DBTempHandle);
142
+           $CurrentPos = ftell($DBTempHandle);
143 143
            fwrite($IndexTempHandle, $PicID.",".$CurrentPos.",".$PicSize.",".$GeneratedTS.",".$Hits."\r\n");
144 144
 
145
-           fseek($DBHandle,$DBPos);
146
-           $Picture = fread($DBHandle,$PicSize);
147
-           fwrite($DBTempHandle,$Picture);
145
+           fseek($DBHandle, $DBPos);
146
+           $Picture = fread($DBHandle, $PicSize);
147
+           fwrite($DBTempHandle, $Picture);
148 148
           }
149 149
         }
150 150
       }
@@ -160,11 +160,11 @@  discard block
 block discarded – undo
160 160
      unlink($Index);
161 161
 
162 162
      /* Swap the temp & prod DB */
163
-     rename($DatabaseTemp,$Database);
164
-     rename($IndexTemp,$Index);
163
+     rename($DatabaseTemp, $Database);
164
+     rename($IndexTemp, $Index);
165 165
     }
166 166
 
167
-   function isInCache($ID,$Verbose=FALSE,$UpdateHitsCount=FALSE)
167
+   function isInCache($ID, $Verbose = FALSE, $UpdateHitsCount = FALSE)
168 168
     {
169 169
      /* Compute the paths */
170 170
      $Index = $this->CacheFolder."/".$this->CacheIndex;
@@ -175,11 +175,11 @@  discard block
 block discarded – undo
175 175
       {
176 176
        $IndexPos = ftell($Handle);
177 177
        $Entry = fgets($Handle, 4096);
178
-       if ( $Entry != "" )
178
+       if ($Entry != "")
179 179
         {
180
-         $Settings = preg_split("/,/",$Entry);
180
+         $Settings = preg_split("/,/", $Entry);
181 181
          $PicID    = $Settings[0];
182
-         if ( $PicID == $ID )
182
+         if ($PicID == $ID)
183 183
           {
184 184
            fclose($Handle);
185 185
 
@@ -188,19 +188,19 @@  discard block
 block discarded – undo
188 188
            $GeneratedTS = $Settings[3];
189 189
            $Hits        = intval($Settings[4]);
190 190
 
191
-           if ( $UpdateHitsCount )
191
+           if ($UpdateHitsCount)
192 192
             {
193 193
              $Hits++;
194
-             if ( strlen($Hits) < 7 ) { $Hits = $Hits.str_repeat(" ",7-strlen($Hits)); }
194
+             if (strlen($Hits) < 7) { $Hits = $Hits.str_repeat(" ", 7 - strlen($Hits)); }
195 195
 
196 196
              $Handle = @fopen($Index, "r+");
197
-             fseek($Handle,$IndexPos);
197
+             fseek($Handle, $IndexPos);
198 198
              fwrite($Handle, $PicID.",".$DBPos.",".$PicSize.",".$GeneratedTS.",".$Hits."\r\n");
199 199
              fclose($Handle);
200 200
             }
201 201
 
202 202
            if ($Verbose)
203
-            { return(array("DBPos"=>$DBPos,"PicSize"=>$PicSize,"GeneratedTS"=>$GeneratedTS,"Hits"=>$Hits)); }
203
+            { return(array("DBPos"=>$DBPos, "PicSize"=>$PicSize, "GeneratedTS"=>$GeneratedTS, "Hits"=>$Hits)); }
204 204
            else
205 205
             { return(TRUE); }
206 206
           }
@@ -213,10 +213,10 @@  discard block
 block discarded – undo
213 213
     }
214 214
 
215 215
    /* Automatic output method based on the calling interface */
216
-   function autoOutput($ID,$Destination="output.png")
216
+   function autoOutput($ID, $Destination = "output.png")
217 217
     {
218 218
      if (php_sapi_name() == "cli")
219
-      $this->saveFromCache($ID,$Destination);
219
+      $this->saveFromCache($ID, $Destination);
220 220
      else
221 221
       $this->strokeFromCache($ID);
222 222
     }
@@ -227,7 +227,7 @@  discard block
 block discarded – undo
227 227
      $Picture = $this->getFromCache($ID);
228 228
 
229 229
      /* Do we have a hit? */
230
-     if ( $Picture == NULL ) { return(FALSE); }
230
+     if ($Picture == NULL) { return(FALSE); }
231 231
 
232 232
      header('Content-type: image/png');
233 233
      echo $Picture;
@@ -235,17 +235,17 @@  discard block
 block discarded – undo
235 235
      return(TRUE);
236 236
     }
237 237
 
238
-   function saveFromCache($ID,$Destination)
238
+   function saveFromCache($ID, $Destination)
239 239
     {
240 240
      /* Get the raw picture from the cache */
241 241
      $Picture = $this->getFromCache($ID);
242 242
 
243 243
      /* Do we have a hit? */
244
-     if ( $Picture == NULL ) { return(FALSE); }
244
+     if ($Picture == NULL) { return(FALSE); }
245 245
 
246 246
      /* Flush the picture to a file */
247
-     $Handle = fopen($Destination,"w");
248
-     fwrite($Handle,$Picture);
247
+     $Handle = fopen($Destination, "w");
248
+     fwrite($Handle, $Picture);
249 249
      fclose($Handle);
250 250
 
251 251
      /* All went fine */
@@ -258,7 +258,7 @@  discard block
 block discarded – undo
258 258
      $Database = $this->CacheFolder."/".$this->CacheDB;
259 259
 
260 260
      /* Lookup for the picture in the cache */
261
-     $CacheInfo = $this->isInCache($ID,TRUE,TRUE);
261
+     $CacheInfo = $this->isInCache($ID, TRUE, TRUE);
262 262
 
263 263
      /* Not in the cache */
264 264
      if (!$CacheInfo) { return(NULL); }
@@ -269,8 +269,8 @@  discard block
 block discarded – undo
269 269
 
270 270
      /* Extract the picture from the solid cache file */
271 271
      $Handle = @fopen($Database, "r");
272
-     fseek($Handle,$DBPos);
273
-     $Picture = fread($Handle,$PicSize);
272
+     fseek($Handle, $DBPos);
273
+     $Picture = fread($Handle, $PicSize);
274 274
      fclose($Handle);
275 275
 
276 276
      /* Return back the raw picture data */
Please login to merge, or discard this patch.
Braces   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -200,8 +200,7 @@  discard block
 block discarded – undo
200 200
             }
201 201
 
202 202
            if ($Verbose)
203
-            { return(array("DBPos"=>$DBPos,"PicSize"=>$PicSize,"GeneratedTS"=>$GeneratedTS,"Hits"=>$Hits)); }
204
-           else
203
+            { return(array("DBPos"=>$DBPos,"PicSize"=>$PicSize,"GeneratedTS"=>$GeneratedTS,"Hits"=>$Hits)); } else
205 204
             { return(TRUE); }
206 205
           }
207 206
         }
@@ -215,10 +214,11 @@  discard block
 block discarded – undo
215 214
    /* Automatic output method based on the calling interface */
216 215
    function autoOutput($ID,$Destination="output.png")
217 216
     {
218
-     if (php_sapi_name() == "cli")
219
-      $this->saveFromCache($ID,$Destination);
220
-     else
221
-      $this->strokeFromCache($ID);
217
+     if (php_sapi_name() == "cli") {
218
+           $this->saveFromCache($ID,$Destination);
219
+     } else {
220
+           $this->strokeFromCache($ID);
221
+     }
222 222
     }
223 223
 
224 224
    function strokeFromCache($ID)
Please login to merge, or discard this patch.
default/boinc/modules/boincstats/includes/pchart/class/pData.class.php 4 patches
Doc Comments   +25 added lines patch added patch discarded remove patch
@@ -105,6 +105,10 @@  discard block
 block discarded – undo
105 105
     }
106 106
 
107 107
    /* Strip VOID values */
108
+
109
+   /**
110
+    * @param string $Values
111
+    */
108 112
    function stripVOID($Values)
109 113
     { if (!is_array($Values)) { return(array()); } $Result = array(); foreach($Values as $Key => $Value) { if ( $Value != VOID ) { $Result[] = $Value; } } return($Result); }
110 114
 
@@ -414,6 +418,11 @@  discard block
 block discarded – undo
414 418
     }
415 419
 
416 420
    /* Set the position of an Axis */
421
+
422
+   /**
423
+    * @param integer $AxisID
424
+    * @param integer $Position
425
+    */
417 426
    function setAxisPosition($AxisID,$Position=AXIS_POSITION_LEFT)
418 427
     { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Position"] = $Position; } }
419 428
 
@@ -497,6 +506,10 @@  discard block
 block discarded – undo
497 506
     }
498 507
 
499 508
    /* Set the color of one serie */
509
+
510
+   /**
511
+    * @param string $Series
512
+    */
500 513
    function setPalette($Series,$Format=NULL)
501 514
     {
502 515
      if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
@@ -559,6 +572,10 @@  discard block
 block discarded – undo
559 572
     }
560 573
 
561 574
    /* Initialise a given scatter serie */
575
+
576
+   /**
577
+    * @param integer $ID
578
+    */
562 579
    function initScatterSerie($ID)
563 580
     {
564 581
      if ( isset($this->Data["ScatterSeries"][$ID]) ) { return(0); }
@@ -581,6 +598,10 @@  discard block
 block discarded – undo
581 598
     }
582 599
 
583 600
    /* Initialise a given serie */
601
+
602
+   /**
603
+    * @param string $Serie
604
+    */
584 605
    function initialise($Serie)
585 606
     {
586 607
      if ( isset($this->Data["Series"]) ) { $ID = count($this->Data["Series"]); } else { $ID = 0; }
@@ -781,6 +802,10 @@  discard block
 block discarded – undo
781 802
     { return("pData object."); }
782 803
 
783 804
    function left($value,$NbChar)	{ return substr($value,0,$NbChar); }  
805
+
806
+   /**
807
+    * @param integer $NbChar
808
+    */
784 809
    function right($value,$NbChar)	{ return substr($value,strlen($value)-$NbChar,$NbChar); }  
785 810
    function mid($value,$Depart,$NbChar)	{ return substr($value,$Depart-1,$NbChar); }  
786 811
   }
Please login to merge, or discard this patch.
Indentation   +524 added lines, -524 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
- /*
2
+    /*
3 3
      pDraw - class to manipulate data arrays
4 4
 
5 5
      Version     : 2.1.3
@@ -13,50 +13,50 @@  discard block
 block discarded – undo
13 13
      You can find the whole class documentation on the pChart web site.
14 14
  */
15 15
 
16
- /* Axis configuration */
17
- define("AXIS_FORMAT_DEFAULT"		, 680001);
18
- define("AXIS_FORMAT_TIME"		, 680002);
19
- define("AXIS_FORMAT_DATE"		, 680003);
20
- define("AXIS_FORMAT_METRIC"		, 680004);
21
- define("AXIS_FORMAT_CURRENCY"		, 680005);
22
- define("AXIS_FORMAT_CUSTOM"		, 680006);
23
-
24
- /* Axis position */
25
- define("AXIS_POSITION_LEFT"		, 681001);
26
- define("AXIS_POSITION_RIGHT"		, 681002);
27
- define("AXIS_POSITION_TOP"		, 681001);
28
- define("AXIS_POSITION_BOTTOM"		, 681002);
29
-
30
- /* Families of data points */
31
- define("SERIE_SHAPE_FILLEDCIRCLE"	, 681011);
32
- define("SERIE_SHAPE_FILLEDTRIANGLE"	, 681012);
33
- define("SERIE_SHAPE_FILLEDSQUARE"	, 681013);
34
- define("SERIE_SHAPE_FILLEDDIAMOND"	, 681017);
35
- define("SERIE_SHAPE_CIRCLE"		, 681014);
36
- define("SERIE_SHAPE_TRIANGLE"		, 681015);
37
- define("SERIE_SHAPE_SQUARE"		, 681016);
38
- define("SERIE_SHAPE_DIAMOND"		, 681018);
39
-
40
- /* Axis position */
41
- define("AXIS_X"			, 682001);
42
- define("AXIS_Y"			, 682002);
43
-
44
- /* Define value limits */
45
- define("ABSOLUTE_MIN"          	, -10000000000000);
46
- define("ABSOLUTE_MAX"          	, 10000000000000);
47
-
48
- /* Replacement to the PHP NULL keyword */
49
- define("VOID"                  	, 0.123456789);
50
-
51
- /* Euro symbol for GD fonts */
52
- define("EURO_SYMBOL"			, utf8_encode("&#8364;"));
53
-
54
- /* pData class definition */
55
- class pData
56
-  {
57
-   var $Data;
58
-
59
-   var $Palette = array("0"=>array("R"=>188,"G"=>224,"B"=>46,"Alpha"=>100),
16
+    /* Axis configuration */
17
+    define("AXIS_FORMAT_DEFAULT"		, 680001);
18
+    define("AXIS_FORMAT_TIME"		, 680002);
19
+    define("AXIS_FORMAT_DATE"		, 680003);
20
+    define("AXIS_FORMAT_METRIC"		, 680004);
21
+    define("AXIS_FORMAT_CURRENCY"		, 680005);
22
+    define("AXIS_FORMAT_CUSTOM"		, 680006);
23
+
24
+    /* Axis position */
25
+    define("AXIS_POSITION_LEFT"		, 681001);
26
+    define("AXIS_POSITION_RIGHT"		, 681002);
27
+    define("AXIS_POSITION_TOP"		, 681001);
28
+    define("AXIS_POSITION_BOTTOM"		, 681002);
29
+
30
+    /* Families of data points */
31
+    define("SERIE_SHAPE_FILLEDCIRCLE"	, 681011);
32
+    define("SERIE_SHAPE_FILLEDTRIANGLE"	, 681012);
33
+    define("SERIE_SHAPE_FILLEDSQUARE"	, 681013);
34
+    define("SERIE_SHAPE_FILLEDDIAMOND"	, 681017);
35
+    define("SERIE_SHAPE_CIRCLE"		, 681014);
36
+    define("SERIE_SHAPE_TRIANGLE"		, 681015);
37
+    define("SERIE_SHAPE_SQUARE"		, 681016);
38
+    define("SERIE_SHAPE_DIAMOND"		, 681018);
39
+
40
+    /* Axis position */
41
+    define("AXIS_X"			, 682001);
42
+    define("AXIS_Y"			, 682002);
43
+
44
+    /* Define value limits */
45
+    define("ABSOLUTE_MIN"          	, -10000000000000);
46
+    define("ABSOLUTE_MAX"          	, 10000000000000);
47
+
48
+    /* Replacement to the PHP NULL keyword */
49
+    define("VOID"                  	, 0.123456789);
50
+
51
+    /* Euro symbol for GD fonts */
52
+    define("EURO_SYMBOL"			, utf8_encode("&#8364;"));
53
+
54
+    /* pData class definition */
55
+    class pData
56
+    {
57
+    var $Data;
58
+
59
+    var $Palette = array("0"=>array("R"=>188,"G"=>224,"B"=>46,"Alpha"=>100),
60 60
                         "1"=>array("R"=>224,"G"=>100,"B"=>46,"Alpha"=>100),
61 61
                         "2"=>array("R"=>224,"G"=>214,"B"=>46,"Alpha"=>100),
62 62
                         "3"=>array("R"=>46,"G"=>151,"B"=>224,"Alpha"=>100),
@@ -65,723 +65,723 @@  discard block
 block discarded – undo
65 65
                         "6"=>array("R"=>92,"G"=>224,"B"=>46,"Alpha"=>100),
66 66
                         "7"=>array("R"=>224,"G"=>176,"B"=>46,"Alpha"=>100));
67 67
 
68
-   /* Class creator */
69
-   function pData()
68
+    /* Class creator */
69
+    function pData()
70 70
     {
71
-     $this->Data = "";
72
-     $this->Data["XAxisDisplay"]	= AXIS_FORMAT_DEFAULT;
73
-     $this->Data["XAxisFormat"]		= NULL;
74
-     $this->Data["XAxisName"]		= NULL;
75
-     $this->Data["XAxisUnit"]		= NULL;
76
-     $this->Data["Abscissa"]		= NULL;
77
-     $this->Data["AbsicssaPosition"]	= AXIS_POSITION_BOTTOM;
71
+        $this->Data = "";
72
+        $this->Data["XAxisDisplay"]	= AXIS_FORMAT_DEFAULT;
73
+        $this->Data["XAxisFormat"]		= NULL;
74
+        $this->Data["XAxisName"]		= NULL;
75
+        $this->Data["XAxisUnit"]		= NULL;
76
+        $this->Data["Abscissa"]		= NULL;
77
+        $this->Data["AbsicssaPosition"]	= AXIS_POSITION_BOTTOM;
78 78
 
79
-     $this->Data["Axis"][0]["Display"]  = AXIS_FORMAT_DEFAULT;
80
-     $this->Data["Axis"][0]["Position"] = AXIS_POSITION_LEFT;
81
-     $this->Data["Axis"][0]["Identity"] = AXIS_Y;
79
+        $this->Data["Axis"][0]["Display"]  = AXIS_FORMAT_DEFAULT;
80
+        $this->Data["Axis"][0]["Position"] = AXIS_POSITION_LEFT;
81
+        $this->Data["Axis"][0]["Identity"] = AXIS_Y;
82 82
     }
83 83
 
84
-   /* Add a single point or an array to the given serie */
85
-   function addPoints($Values,$SerieName="Serie1")
84
+    /* Add a single point or an array to the given serie */
85
+    function addPoints($Values,$SerieName="Serie1")
86 86
     {
87
-     if (!isset($this->Data["Series"][$SerieName]))
88
-      $this->initialise($SerieName);
87
+        if (!isset($this->Data["Series"][$SerieName]))
88
+        $this->initialise($SerieName);
89 89
 
90
-     if ( is_array($Values) )
91
-      {
92
-       foreach($Values as $Key => $Value)
90
+        if ( is_array($Values) )
91
+        {
92
+        foreach($Values as $Key => $Value)
93 93
         { $this->Data["Series"][$SerieName]["Data"][] = $Value; }
94
-      }
95
-     else
96
-      $this->Data["Series"][$SerieName]["Data"][] = $Values;
94
+        }
95
+        else
96
+        $this->Data["Series"][$SerieName]["Data"][] = $Values;
97 97
 
98
-     if ( $Values != VOID )
99
-      {
100
-       $StrippedData = $this->stripVOID($this->Data["Series"][$SerieName]["Data"]);
101
-       if ( empty($StrippedData) ) { $this->Data["Series"][$SerieName]["Max"] = 0; $this->Data["Series"][$SerieName]["Min"] =0; return(0); }
102
-       $this->Data["Series"][$SerieName]["Max"] = max($StrippedData);
103
-       $this->Data["Series"][$SerieName]["Min"] = min($StrippedData);
104
-      }
98
+        if ( $Values != VOID )
99
+        {
100
+        $StrippedData = $this->stripVOID($this->Data["Series"][$SerieName]["Data"]);
101
+        if ( empty($StrippedData) ) { $this->Data["Series"][$SerieName]["Max"] = 0; $this->Data["Series"][$SerieName]["Min"] =0; return(0); }
102
+        $this->Data["Series"][$SerieName]["Max"] = max($StrippedData);
103
+        $this->Data["Series"][$SerieName]["Min"] = min($StrippedData);
104
+        }
105 105
     }
106 106
 
107
-   /* Strip VOID values */
108
-   function stripVOID($Values)
107
+    /* Strip VOID values */
108
+    function stripVOID($Values)
109 109
     { if (!is_array($Values)) { return(array()); } $Result = array(); foreach($Values as $Key => $Value) { if ( $Value != VOID ) { $Result[] = $Value; } } return($Result); }
110 110
 
111
-   /* Return the number of values contained in a given serie */
112
-   function getSerieCount($Serie)
111
+    /* Return the number of values contained in a given serie */
112
+    function getSerieCount($Serie)
113 113
     { if (isset($this->Data["Series"][$Serie]["Data"])) { return(sizeof($this->Data["Series"][$Serie]["Data"])); } else { return(0); } }
114 114
 
115
-   /* Remove a serie from the pData object */
116
-   function removeSerie($Series)
115
+    /* Remove a serie from the pData object */
116
+    function removeSerie($Series)
117 117
     {
118
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
119
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { unset($this->Data["Series"][$Serie]); } }
118
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
119
+        foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { unset($this->Data["Series"][$Serie]); } }
120 120
     }
121 121
 
122
-   /* Return a value from given serie & index */
123
-   function getValueAt($Serie,$Index=0)
122
+    /* Return a value from given serie & index */
123
+    function getValueAt($Serie,$Index=0)
124 124
     { if (isset($this->Data["Series"][$Serie]["Data"][$Index])) { return($this->Data["Series"][$Serie]["Data"][$Index]); } else { return(NULL); } }
125 125
 
126
-   /* Return the values array */
127
-   function getValues($Serie)
126
+    /* Return the values array */
127
+    function getValues($Serie)
128 128
     { if (isset($this->Data["Series"][$Serie]["Data"])) { return($this->Data["Series"][$Serie]["Data"]); } else { return(NULL); } }
129 129
 
130
-   /* Reverse the values in the given serie */
131
-   function reverseSerie($Series)
130
+    /* Reverse the values in the given serie */
131
+    function reverseSerie($Series)
132 132
     {
133
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
134
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]["Data"])) { $this->Data["Series"][$Serie]["Data"] = array_reverse($this->Data["Series"][$Serie]["Data"]); } }
133
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
134
+        foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]["Data"])) { $this->Data["Series"][$Serie]["Data"] = array_reverse($this->Data["Series"][$Serie]["Data"]); } }
135 135
     }
136 136
 
137
-   /* Return the sum of the serie values */
138
-   function getSum($Serie)
137
+    /* Return the sum of the serie values */
138
+    function getSum($Serie)
139 139
     { if (isset($this->Data["Series"][$Serie])) { return(array_sum($this->Data["Series"][$Serie]["Data"])); } else { return(NULL); } }
140 140
 
141
-   /* Return the max value of a given serie */
142
-   function getMax($Serie)
141
+    /* Return the max value of a given serie */
142
+    function getMax($Serie)
143 143
     { if (isset($this->Data["Series"][$Serie]["Max"])) { return($this->Data["Series"][$Serie]["Max"]); } else { return(NULL); } }
144 144
 
145
-   /* Return the min value of a given serie */
146
-   function getMin($Serie)
145
+    /* Return the min value of a given serie */
146
+    function getMin($Serie)
147 147
     { if (isset($this->Data["Series"][$Serie]["Min"])) { return($this->Data["Series"][$Serie]["Min"]); } else { return(NULL); } }
148 148
 
149
-   /* Set the description of a given serie */
150
-   function setSerieShape($Series,$Shape=SERIE_SHAPE_FILLEDCIRCLE)
149
+    /* Set the description of a given serie */
150
+    function setSerieShape($Series,$Shape=SERIE_SHAPE_FILLEDCIRCLE)
151 151
     {
152
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
153
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Shape"] = $Shape; } }
152
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
153
+        foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Shape"] = $Shape; } }
154 154
     }
155 155
 
156
-   /* Set the description of a given serie */
157
-   function setSerieDescription($Series,$Description="My serie")
156
+    /* Set the description of a given serie */
157
+    function setSerieDescription($Series,$Description="My serie")
158 158
     {
159
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
160
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Description"] = $Description; } }
159
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
160
+        foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Description"] = $Description; } }
161 161
     }
162 162
 
163
-   /* Set a serie as "drawable" while calling a rendering function */
164
-   function setSerieDrawable($Series,$Drawable=TRUE)
163
+    /* Set a serie as "drawable" while calling a rendering function */
164
+    function setSerieDrawable($Series,$Drawable=TRUE)
165 165
     {
166
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
167
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["isDrawable"] = $Drawable; } }
166
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
167
+        foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["isDrawable"] = $Drawable; } }
168 168
     }
169 169
 
170
-   /* Set the icon associated to a given serie */
171
-   function setSeriePicture($Series,$Picture=NULL)
170
+    /* Set the icon associated to a given serie */
171
+    function setSeriePicture($Series,$Picture=NULL)
172 172
     {
173
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
174
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Picture"] = $Picture; } }
173
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
174
+        foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Picture"] = $Picture; } }
175 175
     }
176 176
 
177
-   /* Set the name of the X Axis */
178
-   function setXAxisName($Name)
177
+    /* Set the name of the X Axis */
178
+    function setXAxisName($Name)
179 179
     { $this->Data["XAxisName"] = $Name; }
180 180
 
181
-   /* Set the display mode of the  X Axis */
182
-   function setXAxisDisplay($Mode,$Format=NULL)
181
+    /* Set the display mode of the  X Axis */
182
+    function setXAxisDisplay($Mode,$Format=NULL)
183 183
     { $this->Data["XAxisDisplay"] = $Mode; $this->Data["XAxisFormat"]  = $Format; }
184 184
 
185
-   /* Set the unit that will be displayed on the X axis */
186
-   function setXAxisUnit($Unit)
185
+    /* Set the unit that will be displayed on the X axis */
186
+    function setXAxisUnit($Unit)
187 187
     { $this->Data["XAxisUnit"] = $Unit; }
188 188
 
189
-   /* Set the serie that will be used as abscissa */
190
-   function setAbscissa($Serie)
189
+    /* Set the serie that will be used as abscissa */
190
+    function setAbscissa($Serie)
191 191
     { if (isset($this->Data["Series"][$Serie])) { $this->Data["Abscissa"] = $Serie; } }
192 192
 
193
-   function setAbsicssaPosition($Position = AXIS_POSITION_BOTTOM)
193
+    function setAbsicssaPosition($Position = AXIS_POSITION_BOTTOM)
194 194
     { $this->Data["AbsicssaPosition"] = $Position; }
195 195
 
196
-   /* Set the name of the abscissa axis */
197
-   function setAbscissaName($Name)
196
+    /* Set the name of the abscissa axis */
197
+    function setAbscissaName($Name)
198 198
     { $this->Data["AbscissaName"] = $Name; }
199 199
 
200
-   /* Create a scatter group specifyin X and Y data series */
201
-   function setScatterSerie($SerieX,$SerieY,$ID=0)
200
+    /* Create a scatter group specifyin X and Y data series */
201
+    function setScatterSerie($SerieX,$SerieY,$ID=0)
202 202
     { if (isset($this->Data["Series"][$SerieX]) && isset($this->Data["Series"][$SerieY]) ) { $this->initScatterSerie($ID); $this->Data["ScatterSeries"][$ID]["X"] = $SerieX; $this->Data["ScatterSeries"][$ID]["Y"] = $SerieY; } }
203 203
 
204
-   /* Set the shape of a given sctatter serie */
205
-   function setScatterSerieShape($ID,$Shape=SERIE_SHAPE_FILLEDCIRCLE)
204
+    /* Set the shape of a given sctatter serie */
205
+    function setScatterSerieShape($ID,$Shape=SERIE_SHAPE_FILLEDCIRCLE)
206 206
     { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Shape"] = $Shape; } }
207 207
 
208
-   /* Set the description of a given scatter serie */
209
-   function setScatterSerieDescription($ID,$Description="My serie")
208
+    /* Set the description of a given scatter serie */
209
+    function setScatterSerieDescription($ID,$Description="My serie")
210 210
     { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Description"] = $Description; } }
211 211
 
212
-   /* Set the icon associated to a given scatter serie */
213
-   function setScatterSeriePicture($ID,$Picture=NULL)
212
+    /* Set the icon associated to a given scatter serie */
213
+    function setScatterSeriePicture($ID,$Picture=NULL)
214 214
     { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Picture"] = $Picture; } }
215 215
 
216
-   /* Set a scatter serie as "drawable" while calling a rendering function */
217
-   function setScatterSerieDrawable($ID ,$Drawable=TRUE)
216
+    /* Set a scatter serie as "drawable" while calling a rendering function */
217
+    function setScatterSerieDrawable($ID ,$Drawable=TRUE)
218 218
     { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["isDrawable"] = $Drawable; } }
219 219
 
220
-   /* Define if a scatter serie should be draw with ticks */
221
-   function setScatterSerieTicks($ID,$Width=0)
220
+    /* Define if a scatter serie should be draw with ticks */
221
+    function setScatterSerieTicks($ID,$Width=0)
222 222
     { if ( isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Ticks"] = $Width; } }
223 223
 
224
-   /* Define if a scatter serie should be draw with a special weight */
225
-   function setScatterSerieWeight($ID,$Weight=0)
224
+    /* Define if a scatter serie should be draw with a special weight */
225
+    function setScatterSerieWeight($ID,$Weight=0)
226 226
     { if ( isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Weight"] = $Weight; } }
227 227
 
228
-   /* Associate a color to a scatter serie */
229
-   function setScatterSerieColor($ID,$Format)
228
+    /* Associate a color to a scatter serie */
229
+    function setScatterSerieColor($ID,$Format)
230 230
     {
231
-     $R	    = isset($Format["R"]) ? $Format["R"] : 0;
232
-     $G	    = isset($Format["G"]) ? $Format["G"] : 0;
233
-     $B	    = isset($Format["B"]) ? $Format["B"] : 0;
234
-     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
231
+        $R	    = isset($Format["R"]) ? $Format["R"] : 0;
232
+        $G	    = isset($Format["G"]) ? $Format["G"] : 0;
233
+        $B	    = isset($Format["B"]) ? $Format["B"] : 0;
234
+        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
235 235
 
236
-     if ( isset($this->Data["ScatterSeries"][$ID]) )
237
-      {
238
-       $this->Data["ScatterSeries"][$ID]["Color"]["R"] = $R;
239
-       $this->Data["ScatterSeries"][$ID]["Color"]["G"] = $G;
240
-       $this->Data["ScatterSeries"][$ID]["Color"]["B"] = $B;
241
-       $this->Data["ScatterSeries"][$ID]["Color"]["Alpha"] = $Alpha;
242
-      }
236
+        if ( isset($this->Data["ScatterSeries"][$ID]) )
237
+        {
238
+        $this->Data["ScatterSeries"][$ID]["Color"]["R"] = $R;
239
+        $this->Data["ScatterSeries"][$ID]["Color"]["G"] = $G;
240
+        $this->Data["ScatterSeries"][$ID]["Color"]["B"] = $B;
241
+        $this->Data["ScatterSeries"][$ID]["Color"]["Alpha"] = $Alpha;
242
+        }
243 243
     }
244 244
 
245
-   /* Compute the series limits for an individual and global point of view */
246
-   function limits()
245
+    /* Compute the series limits for an individual and global point of view */
246
+    function limits()
247 247
     {
248
-     $GlobalMin = ABSOLUTE_MAX;
249
-     $GlobalMax = ABSOLUTE_MIN;
248
+        $GlobalMin = ABSOLUTE_MAX;
249
+        $GlobalMax = ABSOLUTE_MIN;
250 250
 
251
-     foreach($this->Data["Series"] as $Key => $Value)
252
-      {
253
-       if ( $this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"] == TRUE)
251
+        foreach($this->Data["Series"] as $Key => $Value)
252
+        {
253
+        if ( $this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"] == TRUE)
254 254
         {
255
-         if ( $GlobalMin > $this->Data["Series"][$Key]["Min"] ) { $GlobalMin = $this->Data["Series"][$Key]["Min"]; }
256
-         if ( $GlobalMax < $this->Data["Series"][$Key]["Max"] ) { $GlobalMax = $this->Data["Series"][$Key]["Max"]; }
255
+            if ( $GlobalMin > $this->Data["Series"][$Key]["Min"] ) { $GlobalMin = $this->Data["Series"][$Key]["Min"]; }
256
+            if ( $GlobalMax < $this->Data["Series"][$Key]["Max"] ) { $GlobalMax = $this->Data["Series"][$Key]["Max"]; }
257 257
         }
258
-      }
259
-     $this->Data["Min"] = $GlobalMin;
260
-     $this->Data["Max"] = $GlobalMax;
258
+        }
259
+        $this->Data["Min"] = $GlobalMin;
260
+        $this->Data["Max"] = $GlobalMax;
261 261
 
262
-     return(array($GlobalMin,$GlobalMax));
262
+        return(array($GlobalMin,$GlobalMax));
263 263
     }
264 264
 
265
-   /* Mark all series as drawable */
266
-   function drawAll()
265
+    /* Mark all series as drawable */
266
+    function drawAll()
267 267
     { foreach($this->Data["Series"] as $Key => $Value) { if ( $this->Data["Abscissa"] != $Key ) { $this->Data["Series"][$Key]["isDrawable"]=TRUE; } } }    
268 268
 
269
-   /* Return the average value of the given serie */
270
-   function getSerieAverage($Serie)
269
+    /* Return the average value of the given serie */
270
+    function getSerieAverage($Serie)
271 271
     {
272
-     if ( isset($this->Data["Series"][$Serie]) )
273
-      {
274
-       $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
275
-       return(array_sum($SerieData)/sizeof($SerieData));
276
-      }
277
-     else
278
-      return(NULL);
272
+        if ( isset($this->Data["Series"][$Serie]) )
273
+        {
274
+        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
275
+        return(array_sum($SerieData)/sizeof($SerieData));
276
+        }
277
+        else
278
+        return(NULL);
279 279
     }
280 280
 
281
-   /* Return the geometric mean of the given serie */
282
-   function getGeometricMean($Serie)
281
+    /* Return the geometric mean of the given serie */
282
+    function getGeometricMean($Serie)
283 283
     {
284
-     if ( isset($this->Data["Series"][$Serie]) )
285
-      {
286
-       $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
287
-       $Seriesum  = 1; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum * $Value; }
288
-       return(pow($Seriesum,1/sizeof($SerieData)));
289
-      }
290
-     else
291
-      return(NULL);
284
+        if ( isset($this->Data["Series"][$Serie]) )
285
+        {
286
+        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
287
+        $Seriesum  = 1; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum * $Value; }
288
+        return(pow($Seriesum,1/sizeof($SerieData)));
289
+        }
290
+        else
291
+        return(NULL);
292 292
     }
293 293
 
294
-   /* Return the harmonic mean of the given serie */
295
-   function getHarmonicMean($Serie)
294
+    /* Return the harmonic mean of the given serie */
295
+    function getHarmonicMean($Serie)
296 296
     {
297
-     if ( isset($this->Data["Series"][$Serie]) )
298
-      {
299
-       $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
300
-       $Seriesum  = 0; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum + 1/$Value; }
301
-       return(sizeof($SerieData)/$Seriesum);
302
-      }
303
-     else
304
-      return(NULL);
297
+        if ( isset($this->Data["Series"][$Serie]) )
298
+        {
299
+        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
300
+        $Seriesum  = 0; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum + 1/$Value; }
301
+        return(sizeof($SerieData)/$Seriesum);
302
+        }
303
+        else
304
+        return(NULL);
305 305
     }
306 306
 
307
-   /* Return the standard deviation of the given serie */
308
-   function getStandardDeviation($Serie)
307
+    /* Return the standard deviation of the given serie */
308
+    function getStandardDeviation($Serie)
309 309
     {
310
-     if ( isset($this->Data["Series"][$Serie]) )
311
-      {
312
-       $Average   = $this->getSerieAverage($Serie);
313
-       $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
310
+        if ( isset($this->Data["Series"][$Serie]) )
311
+        {
312
+        $Average   = $this->getSerieAverage($Serie);
313
+        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
314 314
 
315
-       $DeviationSum = 0;
316
-       foreach($SerieData as $Key => $Value)
315
+        $DeviationSum = 0;
316
+        foreach($SerieData as $Key => $Value)
317 317
         $DeviationSum = $DeviationSum + ($Value-$Average)*($Value-$Average);
318 318
 
319
-       $Deviation = sqrt($DeviationSum/count($SerieData));
319
+        $Deviation = sqrt($DeviationSum/count($SerieData));
320 320
 
321
-       return($Deviation);
322
-      }
323
-     else
324
-      return(NULL);
321
+        return($Deviation);
322
+        }
323
+        else
324
+        return(NULL);
325 325
     }
326 326
 
327
-   /* Return the Coefficient of variation of the given serie */
328
-   function getCoefficientOfVariation($Serie)
327
+    /* Return the Coefficient of variation of the given serie */
328
+    function getCoefficientOfVariation($Serie)
329 329
     {
330
-     if ( isset($this->Data["Series"][$Serie]) )
331
-      {
332
-       $Average           = $this->getSerieAverage($Serie);
333
-       $StandardDeviation = $this->getStandardDeviation($Serie);
330
+        if ( isset($this->Data["Series"][$Serie]) )
331
+        {
332
+        $Average           = $this->getSerieAverage($Serie);
333
+        $StandardDeviation = $this->getStandardDeviation($Serie);
334 334
 
335
-       if ( $StandardDeviation != 0 )
335
+        if ( $StandardDeviation != 0 )
336 336
         return($StandardDeviation/$Average);
337
-       else
337
+        else
338
+        return(NULL);
339
+        }
340
+        else
338 341
         return(NULL);
339
-      }
340
-     else
341
-      return(NULL);
342 342
     }
343 343
 
344
-   /* Return the median value of the given serie */
345
-   function getSerieMedian($Serie)
344
+    /* Return the median value of the given serie */
345
+    function getSerieMedian($Serie)
346 346
     {
347
-     if ( isset($this->Data["Series"][$Serie]) )
348
-      {
349
-       $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
350
-       sort($SerieData);
351
-       $SerieCenter = floor(sizeof($SerieData)/2);
347
+        if ( isset($this->Data["Series"][$Serie]) )
348
+        {
349
+        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
350
+        sort($SerieData);
351
+        $SerieCenter = floor(sizeof($SerieData)/2);
352 352
 
353
-       if ( isset($SerieData[$SerieCenter]) )
353
+        if ( isset($SerieData[$SerieCenter]) )
354 354
         return($SerieData[$SerieCenter]);
355
-       else
355
+        else
356
+        return(NULL);
357
+        }
358
+        else
356 359
         return(NULL);
357
-      }
358
-     else
359
-      return(NULL);
360 360
     }
361 361
 
362
-   /* Return the x th percentil of the given serie */
363
-   function getSeriePercentile($Serie="Serie1",$Percentil=95)
362
+    /* Return the x th percentil of the given serie */
363
+    function getSeriePercentile($Serie="Serie1",$Percentil=95)
364 364
     {
365
-     if (!isset($this->Data["Series"][$Serie]["Data"])) { return(NULL); }
365
+        if (!isset($this->Data["Series"][$Serie]["Data"])) { return(NULL); }
366 366
 
367
-     $Values = count($this->Data["Series"][$Serie]["Data"])-1;
368
-     if ( $Values < 0 ) { $Values = 0; }
367
+        $Values = count($this->Data["Series"][$Serie]["Data"])-1;
368
+        if ( $Values < 0 ) { $Values = 0; }
369 369
 
370
-     $PercentilID  = floor(($Values/100)*$Percentil+.5);
371
-     $SortedValues = $this->Data["Series"][$Serie]["Data"];
372
-     sort($SortedValues);
370
+        $PercentilID  = floor(($Values/100)*$Percentil+.5);
371
+        $SortedValues = $this->Data["Series"][$Serie]["Data"];
372
+        sort($SortedValues);
373 373
 
374
-     if ( is_numeric($SortedValues[$PercentilID]) )
375
-      return($SortedValues[$PercentilID]);
376
-     else
377
-      return(NULL);
374
+        if ( is_numeric($SortedValues[$PercentilID]) )
375
+        return($SortedValues[$PercentilID]);
376
+        else
377
+        return(NULL);
378 378
     }
379 379
 
380
-   /* Add random values to a given serie */
381
-   function addRandomValues($SerieName="Serie1",$Options="")
380
+    /* Add random values to a given serie */
381
+    function addRandomValues($SerieName="Serie1",$Options="")
382 382
     {
383
-     $Values    = isset($Options["Values"]) ? $Options["Values"] : 20;
384
-     $Min       = isset($Options["Min"]) ? $Options["Min"] : 0;
385
-     $Max       = isset($Options["Max"]) ? $Options["Max"] : 100;
386
-     $withFloat = isset($Options["withFloat"]) ? $Options["withFloat"] : FALSE;
383
+        $Values    = isset($Options["Values"]) ? $Options["Values"] : 20;
384
+        $Min       = isset($Options["Min"]) ? $Options["Min"] : 0;
385
+        $Max       = isset($Options["Max"]) ? $Options["Max"] : 100;
386
+        $withFloat = isset($Options["withFloat"]) ? $Options["withFloat"] : FALSE;
387 387
 
388
-     for ($i=0;$i<=$Values;$i++)
389
-      {
390
-       if ( $withFloat ) { $Value = rand($Min*100,$Max*100)/100; } else { $Value = rand($Min,$Max); }
391
-       $this->addPoints($Value,$SerieName);
392
-      }
388
+        for ($i=0;$i<=$Values;$i++)
389
+        {
390
+        if ( $withFloat ) { $Value = rand($Min*100,$Max*100)/100; } else { $Value = rand($Min,$Max); }
391
+        $this->addPoints($Value,$SerieName);
392
+        }
393 393
     }
394 394
 
395
-   /* Test if we have valid data */
396
-   function containsData()
395
+    /* Test if we have valid data */
396
+    function containsData()
397 397
     {
398
-     if (!isset($this->Data["Series"])) { return(FALSE); }
398
+        if (!isset($this->Data["Series"])) { return(FALSE); }
399 399
 
400
-     $Result = FALSE;
401
-     foreach($this->Data["Series"] as $Key => $Value)
402
-      { if ( $this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"]==TRUE) { $Result=TRUE; } }
403
-     return($Result);
400
+        $Result = FALSE;
401
+        foreach($this->Data["Series"] as $Key => $Value)
402
+        { if ( $this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"]==TRUE) { $Result=TRUE; } }
403
+        return($Result);
404 404
     }
405 405
 
406
-   /* Set the display mode of an Axis */
407
-   function setAxisDisplay($AxisID,$Mode=AXIS_FORMAT_DEFAULT,$Format=NULL)
406
+    /* Set the display mode of an Axis */
407
+    function setAxisDisplay($AxisID,$Mode=AXIS_FORMAT_DEFAULT,$Format=NULL)
408 408
     {
409
-     if ( isset($this->Data["Axis"][$AxisID] ) )
410
-      {
411
-       $this->Data["Axis"][$AxisID]["Display"] = $Mode;
412
-       if ( $Format != NULL ) { $this->Data["Axis"][$AxisID]["Format"] = $Format; }
413
-      }
409
+        if ( isset($this->Data["Axis"][$AxisID] ) )
410
+        {
411
+        $this->Data["Axis"][$AxisID]["Display"] = $Mode;
412
+        if ( $Format != NULL ) { $this->Data["Axis"][$AxisID]["Format"] = $Format; }
413
+        }
414 414
     }
415 415
 
416
-   /* Set the position of an Axis */
417
-   function setAxisPosition($AxisID,$Position=AXIS_POSITION_LEFT)
416
+    /* Set the position of an Axis */
417
+    function setAxisPosition($AxisID,$Position=AXIS_POSITION_LEFT)
418 418
     { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Position"] = $Position; } }
419 419
 
420
-   /* Associate an unit to an axis */
421
-   function setAxisUnit($AxisID,$Unit)
420
+    /* Associate an unit to an axis */
421
+    function setAxisUnit($AxisID,$Unit)
422 422
     { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Unit"] = $Unit; } }
423 423
 
424
-   /* Associate a name to an axis */
425
-   function setAxisName($AxisID,$Name)
424
+    /* Associate a name to an axis */
425
+    function setAxisName($AxisID,$Name)
426 426
     { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Name"] = $Name; } }
427 427
 
428
-   /* Associate a color to an axis */
429
-   function setAxisColor($AxisID,$Format)
428
+    /* Associate a color to an axis */
429
+    function setAxisColor($AxisID,$Format)
430 430
     {
431
-     $R	    = isset($Format["R"]) ? $Format["R"] : 0;
432
-     $G	    = isset($Format["G"]) ? $Format["G"] : 0;
433
-     $B	    = isset($Format["B"]) ? $Format["B"] : 0;
434
-     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
431
+        $R	    = isset($Format["R"]) ? $Format["R"] : 0;
432
+        $G	    = isset($Format["G"]) ? $Format["G"] : 0;
433
+        $B	    = isset($Format["B"]) ? $Format["B"] : 0;
434
+        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
435 435
 
436
-     if ( isset($this->Data["Axis"][$AxisID] ) )
437
-      {
438
-       $this->Data["Axis"][$AxisID]["Color"]["R"] = $R;
439
-       $this->Data["Axis"][$AxisID]["Color"]["G"] = $G;
440
-       $this->Data["Axis"][$AxisID]["Color"]["B"] = $B;
441
-       $this->Data["Axis"][$AxisID]["Color"]["Alpha"] = $Alpha;
442
-      }
436
+        if ( isset($this->Data["Axis"][$AxisID] ) )
437
+        {
438
+        $this->Data["Axis"][$AxisID]["Color"]["R"] = $R;
439
+        $this->Data["Axis"][$AxisID]["Color"]["G"] = $G;
440
+        $this->Data["Axis"][$AxisID]["Color"]["B"] = $B;
441
+        $this->Data["Axis"][$AxisID]["Color"]["Alpha"] = $Alpha;
442
+        }
443 443
     }
444 444
 
445 445
 
446
-   /* Design an axis as X or Y member */
447
-   function setAxisXY($AxisID,$Identity=AXIS_Y)
446
+    /* Design an axis as X or Y member */
447
+    function setAxisXY($AxisID,$Identity=AXIS_Y)
448 448
     { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Identity"] = $Identity; } }
449 449
 
450
-   /* Associate one data serie with one axis */
451
-   function setSerieOnAxis($Series,$AxisID)
450
+    /* Associate one data serie with one axis */
451
+    function setSerieOnAxis($Series,$AxisID)
452 452
     {
453
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
454
-     foreach($Series as $Key => $Serie)
455
-      {
456
-       $PreviousAxis = $this->Data["Series"][$Serie]["Axis"];
453
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
454
+        foreach($Series as $Key => $Serie)
455
+        {
456
+        $PreviousAxis = $this->Data["Series"][$Serie]["Axis"];
457 457
 
458
-       /* Create missing axis */
459
-       if ( !isset($this->Data["Axis"][$AxisID] ) )
458
+        /* Create missing axis */
459
+        if ( !isset($this->Data["Axis"][$AxisID] ) )
460 460
         { $this->Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; $this->Data["Axis"][$AxisID]["Identity"] = AXIS_Y;}
461 461
 
462
-       $this->Data["Series"][$Serie]["Axis"] = $AxisID;
462
+        $this->Data["Series"][$Serie]["Axis"] = $AxisID;
463 463
 
464
-       /* Cleanup unused axis */
465
-       $Found = FALSE;
466
-       foreach($this->Data["Series"] as $SerieName => $Values) { if ( $Values["Axis"] == $PreviousAxis ) { $Found = TRUE; } }
467
-       if (!$Found) { unset($this->Data["Axis"][$PreviousAxis]); }
468
-      }
464
+        /* Cleanup unused axis */
465
+        $Found = FALSE;
466
+        foreach($this->Data["Series"] as $SerieName => $Values) { if ( $Values["Axis"] == $PreviousAxis ) { $Found = TRUE; } }
467
+        if (!$Found) { unset($this->Data["Axis"][$PreviousAxis]); }
468
+        }
469 469
     }
470 470
 
471
-   /* Define if a serie should be draw with ticks */
472
-   function setSerieTicks($Series,$Width=0)
471
+    /* Define if a serie should be draw with ticks */
472
+    function setSerieTicks($Series,$Width=0)
473 473
     {
474
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
475
-     foreach($Series as $Key => $Serie) { if ( isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Ticks"] = $Width; } }
474
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
475
+        foreach($Series as $Key => $Serie) { if ( isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Ticks"] = $Width; } }
476 476
     }
477 477
 
478
-   /* Define if a serie should be draw with a special weight */
479
-   function setSerieWeight($Series,$Weight=0)
478
+    /* Define if a serie should be draw with a special weight */
479
+    function setSerieWeight($Series,$Weight=0)
480 480
     {
481
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
482
-     foreach($Series as $Key => $Serie) { if ( isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Weight"] = $Weight; } }
481
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
482
+        foreach($Series as $Key => $Serie) { if ( isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Weight"] = $Weight; } }
483 483
     }
484 484
 
485
-   /* Returns the palette of the given serie */
486
-   function getSeriePalette($Serie)
485
+    /* Returns the palette of the given serie */
486
+    function getSeriePalette($Serie)
487 487
     {
488
-     if ( !isset($this->Data["Series"][$Serie]) ) { return(NULL); }
488
+        if ( !isset($this->Data["Series"][$Serie]) ) { return(NULL); }
489 489
 
490
-     $Result = "";
491
-     $Result["R"] = $this->Data["Series"][$Serie]["Color"]["R"];
492
-     $Result["G"] = $this->Data["Series"][$Serie]["Color"]["G"];
493
-     $Result["B"] = $this->Data["Series"][$Serie]["Color"]["B"];
494
-     $Result["Alpha"] = $this->Data["Series"][$Serie]["Color"]["Alpha"];
490
+        $Result = "";
491
+        $Result["R"] = $this->Data["Series"][$Serie]["Color"]["R"];
492
+        $Result["G"] = $this->Data["Series"][$Serie]["Color"]["G"];
493
+        $Result["B"] = $this->Data["Series"][$Serie]["Color"]["B"];
494
+        $Result["Alpha"] = $this->Data["Series"][$Serie]["Color"]["Alpha"];
495 495
 
496
-     return($Result);
496
+        return($Result);
497 497
     }
498 498
 
499
-   /* Set the color of one serie */
500
-   function setPalette($Series,$Format=NULL)
499
+    /* Set the color of one serie */
500
+    function setPalette($Series,$Format=NULL)
501 501
     {
502
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
503
-
504
-     foreach($Series as $Key => $Serie)
505
-      {
506
-       $R	    = isset($Format["R"]) ? $Format["R"] : 0;
507
-       $G	    = isset($Format["G"]) ? $Format["G"] : 0;
508
-       $B	    = isset($Format["B"]) ? $Format["B"] : 0;
509
-       $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
502
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
510 503
 
511
-       if ( isset($this->Data["Series"][$Serie]) )
504
+        foreach($Series as $Key => $Serie)
512 505
         {
513
-         $OldR = $this->Data["Series"][$Serie]["Color"]["R"]; $OldG = $this->Data["Series"][$Serie]["Color"]["G"]; $OldB = $this->Data["Series"][$Serie]["Color"]["B"];
514
-         $this->Data["Series"][$Serie]["Color"]["R"] = $R;
515
-         $this->Data["Series"][$Serie]["Color"]["G"] = $G;
516
-         $this->Data["Series"][$Serie]["Color"]["B"] = $B;
517
-         $this->Data["Series"][$Serie]["Color"]["Alpha"] = $Alpha;
506
+        $R	    = isset($Format["R"]) ? $Format["R"] : 0;
507
+        $G	    = isset($Format["G"]) ? $Format["G"] : 0;
508
+        $B	    = isset($Format["B"]) ? $Format["B"] : 0;
509
+        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
518 510
 
519
-         /* Do reverse processing on the internal palette array */
520
-         foreach ($this->Palette as $Key => $Value)
521
-          { if ($Value["R"] == $OldR && $Value["G"] == $OldG && $Value["B"] == $OldB) { $this->Palette[$Key]["R"] = $R; $this->Palette[$Key]["G"] = $G; $this->Palette[$Key]["B"] = $B; $this->Palette[$Key]["Alpha"] = $Alpha;} }
511
+        if ( isset($this->Data["Series"][$Serie]) )
512
+        {
513
+            $OldR = $this->Data["Series"][$Serie]["Color"]["R"]; $OldG = $this->Data["Series"][$Serie]["Color"]["G"]; $OldB = $this->Data["Series"][$Serie]["Color"]["B"];
514
+            $this->Data["Series"][$Serie]["Color"]["R"] = $R;
515
+            $this->Data["Series"][$Serie]["Color"]["G"] = $G;
516
+            $this->Data["Series"][$Serie]["Color"]["B"] = $B;
517
+            $this->Data["Series"][$Serie]["Color"]["Alpha"] = $Alpha;
518
+
519
+            /* Do reverse processing on the internal palette array */
520
+            foreach ($this->Palette as $Key => $Value)
521
+            { if ($Value["R"] == $OldR && $Value["G"] == $OldG && $Value["B"] == $OldB) { $this->Palette[$Key]["R"] = $R; $this->Palette[$Key]["G"] = $G; $this->Palette[$Key]["B"] = $B; $this->Palette[$Key]["Alpha"] = $Alpha;} }
522
+        }
522 523
         }
523
-      }
524 524
     }
525 525
 
526
-   /* Load a palette file */
527
-   function loadPalette($FileName,$Overwrite=FALSE)
526
+    /* Load a palette file */
527
+    function loadPalette($FileName,$Overwrite=FALSE)
528 528
     {
529
-     if ( !file_exists($FileName) ) { return(-1); }
530
-     if ( $Overwrite ) { $this->Palette = ""; }
529
+        if ( !file_exists($FileName) ) { return(-1); }
530
+        if ( $Overwrite ) { $this->Palette = ""; }
531 531
 
532
-     $fileHandle = @fopen($FileName, "r");
533
-     if (!$fileHandle) { return(-1); }
534
-     while (!feof($fileHandle))
535
-      {
536
-       $buffer = fgets($fileHandle, 4096);
537
-       if ( preg_match("/,/",$buffer) )
532
+        $fileHandle = @fopen($FileName, "r");
533
+        if (!$fileHandle) { return(-1); }
534
+        while (!feof($fileHandle))
538 535
         {
539
-         list($R,$G,$B,$Alpha) = preg_split("/,/",$buffer);
540
-         if ( $this->Palette == "" ) { $ID = 0; } else { $ID = count($this->Palette); }
541
-         $this->Palette[$ID] = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
536
+        $buffer = fgets($fileHandle, 4096);
537
+        if ( preg_match("/,/",$buffer) )
538
+        {
539
+            list($R,$G,$B,$Alpha) = preg_split("/,/",$buffer);
540
+            if ( $this->Palette == "" ) { $ID = 0; } else { $ID = count($this->Palette); }
541
+            $this->Palette[$ID] = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
542
+        }
542 543
         }
543
-      }
544
-     fclose($fileHandle);
544
+        fclose($fileHandle);
545 545
 
546
-     /* Apply changes to current series */
547
-     $ID = 0;
548
-     if ( isset($this->Data["Series"]))
549
-      {
550
-       foreach($this->Data["Series"] as $Key => $Value)
546
+        /* Apply changes to current series */
547
+        $ID = 0;
548
+        if ( isset($this->Data["Series"]))
551 549
         {
552
-         if ( !isset($this->Palette[$ID]) )
553
-          $this->Data["Series"][$Key]["Color"] = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>0);
554
-         else
555
-          $this->Data["Series"][$Key]["Color"] = $this->Palette[$ID];
556
-         $ID++;
550
+        foreach($this->Data["Series"] as $Key => $Value)
551
+        {
552
+            if ( !isset($this->Palette[$ID]) )
553
+            $this->Data["Series"][$Key]["Color"] = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>0);
554
+            else
555
+            $this->Data["Series"][$Key]["Color"] = $this->Palette[$ID];
556
+            $ID++;
557
+        }
557 558
         }
558
-      }
559 559
     }
560 560
 
561
-   /* Initialise a given scatter serie */
562
-   function initScatterSerie($ID)
561
+    /* Initialise a given scatter serie */
562
+    function initScatterSerie($ID)
563 563
     {
564
-     if ( isset($this->Data["ScatterSeries"][$ID]) ) { return(0); }
564
+        if ( isset($this->Data["ScatterSeries"][$ID]) ) { return(0); }
565 565
 
566
-     $this->Data["ScatterSeries"][$ID]["Description"]	= "Scatter ".$ID;
567
-     $this->Data["ScatterSeries"][$ID]["isDrawable"]	= TRUE;
568
-     $this->Data["ScatterSeries"][$ID]["Picture"]	= NULL;
569
-     $this->Data["ScatterSeries"][$ID]["Ticks"]		= 0;
570
-     $this->Data["ScatterSeries"][$ID]["Weight"]	= 0;
566
+        $this->Data["ScatterSeries"][$ID]["Description"]	= "Scatter ".$ID;
567
+        $this->Data["ScatterSeries"][$ID]["isDrawable"]	= TRUE;
568
+        $this->Data["ScatterSeries"][$ID]["Picture"]	= NULL;
569
+        $this->Data["ScatterSeries"][$ID]["Ticks"]		= 0;
570
+        $this->Data["ScatterSeries"][$ID]["Weight"]	= 0;
571 571
 
572
-     if ( isset($this->Palette[$ID]) )
573
-      $this->Data["ScatterSeries"][$ID]["Color"] = $this->Palette[$ID];
574
-     else
575
-      {
576
-       $this->Data["ScatterSeries"][$ID]["Color"]["R"] = rand(0,255);
577
-       $this->Data["ScatterSeries"][$ID]["Color"]["G"] = rand(0,255);
578
-       $this->Data["ScatterSeries"][$ID]["Color"]["B"] = rand(0,255);
579
-       $this->Data["ScatterSeries"][$ID]["Color"]["Alpha"] = 100;
580
-      }
572
+        if ( isset($this->Palette[$ID]) )
573
+        $this->Data["ScatterSeries"][$ID]["Color"] = $this->Palette[$ID];
574
+        else
575
+        {
576
+        $this->Data["ScatterSeries"][$ID]["Color"]["R"] = rand(0,255);
577
+        $this->Data["ScatterSeries"][$ID]["Color"]["G"] = rand(0,255);
578
+        $this->Data["ScatterSeries"][$ID]["Color"]["B"] = rand(0,255);
579
+        $this->Data["ScatterSeries"][$ID]["Color"]["Alpha"] = 100;
580
+        }
581 581
     }
582 582
 
583
-   /* Initialise a given serie */
584
-   function initialise($Serie)
583
+    /* Initialise a given serie */
584
+    function initialise($Serie)
585 585
     {
586
-     if ( isset($this->Data["Series"]) ) { $ID = count($this->Data["Series"]); } else { $ID = 0; }
586
+        if ( isset($this->Data["Series"]) ) { $ID = count($this->Data["Series"]); } else { $ID = 0; }
587 587
 
588
-     $this->Data["Series"][$Serie]["Description"]	= $Serie;
589
-     $this->Data["Series"][$Serie]["isDrawable"]	= TRUE;
590
-     $this->Data["Series"][$Serie]["Picture"]		= NULL;
591
-     $this->Data["Series"][$Serie]["Max"]		= NULL;
592
-     $this->Data["Series"][$Serie]["Min"]		= NULL;
593
-     $this->Data["Series"][$Serie]["Axis"]		= 0;
594
-     $this->Data["Series"][$Serie]["Ticks"]		= 0;
595
-     $this->Data["Series"][$Serie]["Weight"]		= 0;
596
-     $this->Data["Series"][$Serie]["Shape"]		= SERIE_SHAPE_FILLEDCIRCLE;
588
+        $this->Data["Series"][$Serie]["Description"]	= $Serie;
589
+        $this->Data["Series"][$Serie]["isDrawable"]	= TRUE;
590
+        $this->Data["Series"][$Serie]["Picture"]		= NULL;
591
+        $this->Data["Series"][$Serie]["Max"]		= NULL;
592
+        $this->Data["Series"][$Serie]["Min"]		= NULL;
593
+        $this->Data["Series"][$Serie]["Axis"]		= 0;
594
+        $this->Data["Series"][$Serie]["Ticks"]		= 0;
595
+        $this->Data["Series"][$Serie]["Weight"]		= 0;
596
+        $this->Data["Series"][$Serie]["Shape"]		= SERIE_SHAPE_FILLEDCIRCLE;
597 597
 
598
-     if ( isset($this->Palette[$ID]) )
599
-      $this->Data["Series"][$Serie]["Color"] = $this->Palette[$ID];
600
-     else
601
-      {
602
-       $this->Data["Series"][$Serie]["Color"]["R"] = rand(0,255);
603
-       $this->Data["Series"][$Serie]["Color"]["G"] = rand(0,255);
604
-       $this->Data["Series"][$Serie]["Color"]["B"] = rand(0,255);
605
-       $this->Data["Series"][$Serie]["Color"]["Alpha"] = 100;
606
-      }
598
+        if ( isset($this->Palette[$ID]) )
599
+        $this->Data["Series"][$Serie]["Color"] = $this->Palette[$ID];
600
+        else
601
+        {
602
+        $this->Data["Series"][$Serie]["Color"]["R"] = rand(0,255);
603
+        $this->Data["Series"][$Serie]["Color"]["G"] = rand(0,255);
604
+        $this->Data["Series"][$Serie]["Color"]["B"] = rand(0,255);
605
+        $this->Data["Series"][$Serie]["Color"]["Alpha"] = 100;
606
+        }
607 607
     }
608 608
      
609
-   function normalize($NormalizationFactor=100,$UnitChange=NULL,$Round=1)
609
+    function normalize($NormalizationFactor=100,$UnitChange=NULL,$Round=1)
610 610
     {
611
-     $Abscissa = $this->Data["Abscissa"];
611
+        $Abscissa = $this->Data["Abscissa"];
612 612
 
613
-     $SelectedSeries = "";
614
-     $MaxVal         = 0;
615
-     foreach($this->Data["Axis"] as $AxisID => $Axis)
616
-      {
617
-       if ( $UnitChange != NULL ) { $this->Data["Axis"][$AxisID]["Unit"] = $UnitChange; }
613
+        $SelectedSeries = "";
614
+        $MaxVal         = 0;
615
+        foreach($this->Data["Axis"] as $AxisID => $Axis)
616
+        {
617
+        if ( $UnitChange != NULL ) { $this->Data["Axis"][$AxisID]["Unit"] = $UnitChange; }
618 618
 
619
-       foreach($this->Data["Series"] as $SerieName => $Serie)
619
+        foreach($this->Data["Series"] as $SerieName => $Serie)
620 620
         {
621
-         if ($Serie["Axis"] == $AxisID && $Serie["isDrawable"] == TRUE && $SerieName != $Abscissa)
622
-          {
623
-           $SelectedSeries[$SerieName] = $SerieName;
621
+            if ($Serie["Axis"] == $AxisID && $Serie["isDrawable"] == TRUE && $SerieName != $Abscissa)
622
+            {
623
+            $SelectedSeries[$SerieName] = $SerieName;
624 624
 
625
-           if ( count($Serie["Data"] ) > $MaxVal ) { $MaxVal = count($Serie["Data"]); }
626
-          }
625
+            if ( count($Serie["Data"] ) > $MaxVal ) { $MaxVal = count($Serie["Data"]); }
626
+            }
627
+        }
627 628
         }
628
-      }
629 629
 
630
-     for($i=0;$i<=$MaxVal-1;$i++)
631
-      {
632
-       $Factor = 0;
633
-       foreach ($SelectedSeries as $Key => $SerieName )
630
+        for($i=0;$i<=$MaxVal-1;$i++)
634 631
         {
635
-         $Value = $this->Data["Series"][$SerieName]["Data"][$i];
636
-         if ( $Value != VOID )
637
-          $Factor = $Factor + abs($Value);
632
+        $Factor = 0;
633
+        foreach ($SelectedSeries as $Key => $SerieName )
634
+        {
635
+            $Value = $this->Data["Series"][$SerieName]["Data"][$i];
636
+            if ( $Value != VOID )
637
+            $Factor = $Factor + abs($Value);
638 638
         }
639 639
 
640
-       if ( $Factor != 0 )
640
+        if ( $Factor != 0 )
641 641
         {
642
-         $Factor = $NormalizationFactor / $Factor;
642
+            $Factor = $NormalizationFactor / $Factor;
643 643
 
644
-         foreach ($SelectedSeries as $Key => $SerieName )
645
-          {
646
-           $Value = $this->Data["Series"][$SerieName]["Data"][$i];
644
+            foreach ($SelectedSeries as $Key => $SerieName )
645
+            {
646
+            $Value = $this->Data["Series"][$SerieName]["Data"][$i];
647 647
 
648
-           if ( $Value != VOID && $Factor != $NormalizationFactor )
648
+            if ( $Value != VOID && $Factor != $NormalizationFactor )
649 649
             $this->Data["Series"][$SerieName]["Data"][$i] = round(abs($Value)*$Factor,$Round);
650
-           elseif ( $Value == VOID || $Value == 0 )
650
+            elseif ( $Value == VOID || $Value == 0 )
651 651
             $this->Data["Series"][$SerieName]["Data"][$i] = VOID;
652
-           elseif ( $Factor == $NormalizationFactor )
652
+            elseif ( $Factor == $NormalizationFactor )
653 653
             $this->Data["Series"][$SerieName]["Data"][$i] = $NormalizationFactor;
654
-          }
654
+            }
655
+        }
655 656
         }
656
-      }
657 657
 
658
-     foreach ($SelectedSeries as $Key => $SerieName )
659
-      {
660
-       $this->Data["Series"][$SerieName]["Max"] = max($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
661
-       $this->Data["Series"][$SerieName]["Min"] = min($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
662
-      }
658
+        foreach ($SelectedSeries as $Key => $SerieName )
659
+        {
660
+        $this->Data["Series"][$SerieName]["Max"] = max($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
661
+        $this->Data["Series"][$SerieName]["Min"] = min($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
662
+        }
663 663
     }
664 664
 
665
-   /* Load data from a CSV (or similar) data source */
666
-   function importFromCSV($FileName,$Options="")
665
+    /* Load data from a CSV (or similar) data source */
666
+    function importFromCSV($FileName,$Options="")
667 667
     {
668
-     $Delimiter		= isset($Options["Delimiter"]) ? $Options["Delimiter"] : ",";
669
-     $GotHeader		= isset($Options["GotHeader"]) ? $Options["GotHeader"] : FALSE;
670
-     $SkipColumns	= isset($Options["SkipColumns"]) ? $Options["SkipColumns"] : array(-1);
671
-     $DefaultSerieName	= isset($Options["DefaultSerieName"]) ? $Options["DefaultSerieName"] : "Serie";
668
+        $Delimiter		= isset($Options["Delimiter"]) ? $Options["Delimiter"] : ",";
669
+        $GotHeader		= isset($Options["GotHeader"]) ? $Options["GotHeader"] : FALSE;
670
+        $SkipColumns	= isset($Options["SkipColumns"]) ? $Options["SkipColumns"] : array(-1);
671
+        $DefaultSerieName	= isset($Options["DefaultSerieName"]) ? $Options["DefaultSerieName"] : "Serie";
672 672
 
673
-     $Handle = @fopen($FileName,"r");
674
-     if ($Handle)
675
-      {
676
-       $HeaderParsed = FALSE; $SerieNames = "";
677
-       while (!feof($Handle))
673
+        $Handle = @fopen($FileName,"r");
674
+        if ($Handle)
678 675
         {
679
-         $Buffer = fgets($Handle, 4096);
680
-         $Buffer = str_replace(chr(10),"",$Buffer);
681
-         $Buffer = str_replace(chr(13),"",$Buffer);
682
-         $Values = preg_split("/".$Delimiter."/",$Buffer);
676
+        $HeaderParsed = FALSE; $SerieNames = "";
677
+        while (!feof($Handle))
678
+        {
679
+            $Buffer = fgets($Handle, 4096);
680
+            $Buffer = str_replace(chr(10),"",$Buffer);
681
+            $Buffer = str_replace(chr(13),"",$Buffer);
682
+            $Values = preg_split("/".$Delimiter."/",$Buffer);
683 683
 
684
-         if ( $Buffer != "" )
685
-          {
686
-           if ( $GotHeader && !$HeaderParsed )
684
+            if ( $Buffer != "" )
685
+            {
686
+            if ( $GotHeader && !$HeaderParsed )
687 687
             {
688
-             foreach($Values as $Key => $Name) { if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $Name; } }
689
-             $HeaderParsed = TRUE;
688
+                foreach($Values as $Key => $Name) { if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $Name; } }
689
+                $HeaderParsed = TRUE;
690 690
             }
691
-           else
691
+            else
692 692
             {
693
-             if ($SerieNames == "" ) { foreach($Values as $Key => $Name) {  if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $DefaultSerieName.$Key; } } }
694
-             foreach($Values as $Key => $Value) {  if ( !in_array($Key,$SkipColumns) ) { $this->addPoints($Value,$SerieNames[$Key]); } }
693
+                if ($SerieNames == "" ) { foreach($Values as $Key => $Name) {  if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $DefaultSerieName.$Key; } } }
694
+                foreach($Values as $Key => $Value) {  if ( !in_array($Key,$SkipColumns) ) { $this->addPoints($Value,$SerieNames[$Key]); } }
695 695
             }
696
-          }
696
+            }
697
+        }
698
+        fclose($Handle);
697 699
         }
698
-       fclose($Handle);
699
-      }
700 700
     }
701 701
 
702
-   /* Create a dataset based on a formula */
703
-   function createFunctionSerie($SerieName,$Formula="",$Options="")
702
+    /* Create a dataset based on a formula */
703
+    function createFunctionSerie($SerieName,$Formula="",$Options="")
704 704
     {
705
-     $MinX		= isset($Options["MinX"]) ? $Options["MinX"] : -10;
706
-     $MaxX		= isset($Options["MaxX"]) ? $Options["MaxX"] : 10;
707
-     $XStep		= isset($Options["XStep"]) ? $Options["XStep"] : 1;
708
-     $AutoDescription	= isset($Options["AutoDescription"]) ? $Options["AutoDescription"] : FALSE;
709
-     $RecordAbscissa	= isset($Options["RecordAbscissa"]) ? $Options["RecordAbscissa"] : FALSE;
710
-     $AbscissaSerie	= isset($Options["AbscissaSerie"]) ? $Options["AbscissaSerie"] : "Abscissa";
705
+        $MinX		= isset($Options["MinX"]) ? $Options["MinX"] : -10;
706
+        $MaxX		= isset($Options["MaxX"]) ? $Options["MaxX"] : 10;
707
+        $XStep		= isset($Options["XStep"]) ? $Options["XStep"] : 1;
708
+        $AutoDescription	= isset($Options["AutoDescription"]) ? $Options["AutoDescription"] : FALSE;
709
+        $RecordAbscissa	= isset($Options["RecordAbscissa"]) ? $Options["RecordAbscissa"] : FALSE;
710
+        $AbscissaSerie	= isset($Options["AbscissaSerie"]) ? $Options["AbscissaSerie"] : "Abscissa";
711 711
 
712
-     if ( $Formula == "" ) { return(0); }
712
+        if ( $Formula == "" ) { return(0); }
713 713
 
714
-     $Result = ""; $Abscissa = "";
715
-     for($i=$MinX; $i<=$MaxX; $i=$i+$XStep)
716
-      {
717
-       $Expression = "\$return = '!'.(".str_replace("z",$i,$Formula).");";
718
-       if ( @eval($Expression) === FALSE ) { $return = VOID; }
719
-       if ( $return == "!" ) { $return = VOID; } else { $return = $this->right($return,strlen($return)-1); }
720
-       if ( $return == "NAN" ) { $return = VOID; }
721
-       if ( $return == "INF" ) { $return = VOID; }
722
-       if ( $return == "-INF" ) { $return = VOID; }
723
-
724
-       $Abscissa[] = $i;
725
-       $Result[]   = $return;
726
-      }
714
+        $Result = ""; $Abscissa = "";
715
+        for($i=$MinX; $i<=$MaxX; $i=$i+$XStep)
716
+        {
717
+        $Expression = "\$return = '!'.(".str_replace("z",$i,$Formula).");";
718
+        if ( @eval($Expression) === FALSE ) { $return = VOID; }
719
+        if ( $return == "!" ) { $return = VOID; } else { $return = $this->right($return,strlen($return)-1); }
720
+        if ( $return == "NAN" ) { $return = VOID; }
721
+        if ( $return == "INF" ) { $return = VOID; }
722
+        if ( $return == "-INF" ) { $return = VOID; }
723
+
724
+        $Abscissa[] = $i;
725
+        $Result[]   = $return;
726
+        }
727 727
 
728
-     $this->addPoints($Result,$SerieName);
729
-     if ( $AutoDescription ) { $this->setSerieDescription($SerieName,$Formula); }
730
-     if ( $RecordAbscissa ) { $this->addPoints($Abscissa,$AbscissaSerie); }
728
+        $this->addPoints($Result,$SerieName);
729
+        if ( $AutoDescription ) { $this->setSerieDescription($SerieName,$Formula); }
730
+        if ( $RecordAbscissa ) { $this->addPoints($Abscissa,$AbscissaSerie); }
731 731
     }
732 732
 
733
-   function negateValues($Series)
733
+    function negateValues($Series)
734 734
     {
735
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
736
-     foreach($Series as $Key => $SerieName)
737
-      {
738
-       if (isset($this->Data["Series"][$SerieName]))
735
+        if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
736
+        foreach($Series as $Key => $SerieName)
737
+        {
738
+        if (isset($this->Data["Series"][$SerieName]))
739 739
         {
740
-         $Data = "";
741
-         foreach($this->Data["Series"][$SerieName]["Data"] as $Key => $Value)
742
-          { if ( $Value == VOID ) { $Data[] = VOID; } else { $Data[] = -$Value; } }
743
-         $this->Data["Series"][$SerieName]["Data"] = $Data;
740
+            $Data = "";
741
+            foreach($this->Data["Series"][$SerieName]["Data"] as $Key => $Value)
742
+            { if ( $Value == VOID ) { $Data[] = VOID; } else { $Data[] = -$Value; } }
743
+            $this->Data["Series"][$SerieName]["Data"] = $Data;
744 744
 
745
-         $this->Data["Series"][$SerieName]["Max"] = max($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
746
-         $this->Data["Series"][$SerieName]["Min"] = min($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
745
+            $this->Data["Series"][$SerieName]["Max"] = max($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
746
+            $this->Data["Series"][$SerieName]["Min"] = min($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
747
+        }
747 748
         }
748
-      }
749 749
     }
750 750
 
751
-   /* Return the data & configuration of the series */
752
-   function getData()
751
+    /* Return the data & configuration of the series */
752
+    function getData()
753 753
     { return($this->Data); }
754 754
 
755
-   /* Save a palette element */
756
-   function savePalette($ID,$Color)
755
+    /* Save a palette element */
756
+    function savePalette($ID,$Color)
757 757
     { $this->Palette[$ID] = $Color; }
758 758
 
759
-   /* Return the palette of the series */
760
-   function getPalette()
759
+    /* Return the palette of the series */
760
+    function getPalette()
761 761
     { return($this->Palette); }
762 762
 
763
-   /* Called by the scaling algorithm to save the config */
764
-   function saveAxisConfig($Axis) { $this->Data["Axis"]=$Axis; }
763
+    /* Called by the scaling algorithm to save the config */
764
+    function saveAxisConfig($Axis) { $this->Data["Axis"]=$Axis; }
765 765
 
766
-   /* Save the Y Margin if set */
767
-   function saveYMargin($Value) { $this->Data["YMargin"]=$Value; }
766
+    /* Save the Y Margin if set */
767
+    function saveYMargin($Value) { $this->Data["YMargin"]=$Value; }
768 768
 
769
-   /* Save extended configuration to the pData object */
770
-   function saveExtendedData($Tag,$Values) { $this->Data["Extended"][$Tag]=$Values; }
769
+    /* Save extended configuration to the pData object */
770
+    function saveExtendedData($Tag,$Values) { $this->Data["Extended"][$Tag]=$Values; }
771 771
 
772
-   /* Called by the scaling algorithm to save the orientation of the scale */
773
-   function saveOrientation($Orientation) { $this->Data["Orientation"]=$Orientation; }
772
+    /* Called by the scaling algorithm to save the orientation of the scale */
773
+    function saveOrientation($Orientation) { $this->Data["Orientation"]=$Orientation; }
774 774
 
775
-   /* Convert a string to a single elements array */
776
-   function convertToArray($Value)
775
+    /* Convert a string to a single elements array */
776
+    function convertToArray($Value)
777 777
     { $Values = ""; $Values[] = $Value; return($Values); }
778 778
 
779
-   /* Class string wrapper */
780
-   function __toString()
779
+    /* Class string wrapper */
780
+    function __toString()
781 781
     { return("pData object."); }
782 782
 
783
-   function left($value,$NbChar)	{ return substr($value,0,$NbChar); }  
784
-   function right($value,$NbChar)	{ return substr($value,strlen($value)-$NbChar,$NbChar); }  
785
-   function mid($value,$Depart,$NbChar)	{ return substr($value,$Depart-1,$NbChar); }  
786
-  }
783
+    function left($value,$NbChar)	{ return substr($value,0,$NbChar); }  
784
+    function right($value,$NbChar)	{ return substr($value,strlen($value)-$NbChar,$NbChar); }  
785
+    function mid($value,$Depart,$NbChar)	{ return substr($value,$Depart-1,$NbChar); }  
786
+    }
787 787
 ?>
788 788
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +221 added lines, -221 removed lines patch added patch discarded remove patch
@@ -14,56 +14,56 @@  discard block
 block discarded – undo
14 14
  */
15 15
 
16 16
  /* Axis configuration */
17
- define("AXIS_FORMAT_DEFAULT"		, 680001);
18
- define("AXIS_FORMAT_TIME"		, 680002);
19
- define("AXIS_FORMAT_DATE"		, 680003);
20
- define("AXIS_FORMAT_METRIC"		, 680004);
21
- define("AXIS_FORMAT_CURRENCY"		, 680005);
22
- define("AXIS_FORMAT_CUSTOM"		, 680006);
17
+ define("AXIS_FORMAT_DEFAULT", 680001);
18
+ define("AXIS_FORMAT_TIME", 680002);
19
+ define("AXIS_FORMAT_DATE", 680003);
20
+ define("AXIS_FORMAT_METRIC", 680004);
21
+ define("AXIS_FORMAT_CURRENCY", 680005);
22
+ define("AXIS_FORMAT_CUSTOM", 680006);
23 23
 
24 24
  /* Axis position */
25
- define("AXIS_POSITION_LEFT"		, 681001);
26
- define("AXIS_POSITION_RIGHT"		, 681002);
27
- define("AXIS_POSITION_TOP"		, 681001);
28
- define("AXIS_POSITION_BOTTOM"		, 681002);
25
+ define("AXIS_POSITION_LEFT", 681001);
26
+ define("AXIS_POSITION_RIGHT", 681002);
27
+ define("AXIS_POSITION_TOP", 681001);
28
+ define("AXIS_POSITION_BOTTOM", 681002);
29 29
 
30 30
  /* Families of data points */
31
- define("SERIE_SHAPE_FILLEDCIRCLE"	, 681011);
32
- define("SERIE_SHAPE_FILLEDTRIANGLE"	, 681012);
33
- define("SERIE_SHAPE_FILLEDSQUARE"	, 681013);
34
- define("SERIE_SHAPE_FILLEDDIAMOND"	, 681017);
35
- define("SERIE_SHAPE_CIRCLE"		, 681014);
36
- define("SERIE_SHAPE_TRIANGLE"		, 681015);
37
- define("SERIE_SHAPE_SQUARE"		, 681016);
38
- define("SERIE_SHAPE_DIAMOND"		, 681018);
31
+ define("SERIE_SHAPE_FILLEDCIRCLE", 681011);
32
+ define("SERIE_SHAPE_FILLEDTRIANGLE", 681012);
33
+ define("SERIE_SHAPE_FILLEDSQUARE", 681013);
34
+ define("SERIE_SHAPE_FILLEDDIAMOND", 681017);
35
+ define("SERIE_SHAPE_CIRCLE", 681014);
36
+ define("SERIE_SHAPE_TRIANGLE", 681015);
37
+ define("SERIE_SHAPE_SQUARE", 681016);
38
+ define("SERIE_SHAPE_DIAMOND", 681018);
39 39
 
40 40
  /* Axis position */
41
- define("AXIS_X"			, 682001);
42
- define("AXIS_Y"			, 682002);
41
+ define("AXIS_X", 682001);
42
+ define("AXIS_Y", 682002);
43 43
 
44 44
  /* Define value limits */
45
- define("ABSOLUTE_MIN"          	, -10000000000000);
46
- define("ABSOLUTE_MAX"          	, 10000000000000);
45
+ define("ABSOLUTE_MIN", -10000000000000);
46
+ define("ABSOLUTE_MAX", 10000000000000);
47 47
 
48 48
  /* Replacement to the PHP NULL keyword */
49
- define("VOID"                  	, 0.123456789);
49
+ define("VOID", 0.123456789);
50 50
 
51 51
  /* Euro symbol for GD fonts */
52
- define("EURO_SYMBOL"			, utf8_encode("&#8364;"));
52
+ define("EURO_SYMBOL", utf8_encode("&#8364;"));
53 53
 
54 54
  /* pData class definition */
55 55
  class pData
56 56
   {
57 57
    var $Data;
58 58
 
59
-   var $Palette = array("0"=>array("R"=>188,"G"=>224,"B"=>46,"Alpha"=>100),
60
-                        "1"=>array("R"=>224,"G"=>100,"B"=>46,"Alpha"=>100),
61
-                        "2"=>array("R"=>224,"G"=>214,"B"=>46,"Alpha"=>100),
62
-                        "3"=>array("R"=>46,"G"=>151,"B"=>224,"Alpha"=>100),
63
-                        "4"=>array("R"=>176,"G"=>46,"B"=>224,"Alpha"=>100),
64
-                        "5"=>array("R"=>224,"G"=>46,"B"=>117,"Alpha"=>100),
65
-                        "6"=>array("R"=>92,"G"=>224,"B"=>46,"Alpha"=>100),
66
-                        "7"=>array("R"=>224,"G"=>176,"B"=>46,"Alpha"=>100));
59
+   var $Palette = array("0"=>array("R"=>188, "G"=>224, "B"=>46, "Alpha"=>100),
60
+                        "1"=>array("R"=>224, "G"=>100, "B"=>46, "Alpha"=>100),
61
+                        "2"=>array("R"=>224, "G"=>214, "B"=>46, "Alpha"=>100),
62
+                        "3"=>array("R"=>46, "G"=>151, "B"=>224, "Alpha"=>100),
63
+                        "4"=>array("R"=>176, "G"=>46, "B"=>224, "Alpha"=>100),
64
+                        "5"=>array("R"=>224, "G"=>46, "B"=>117, "Alpha"=>100),
65
+                        "6"=>array("R"=>92, "G"=>224, "B"=>46, "Alpha"=>100),
66
+                        "7"=>array("R"=>224, "G"=>176, "B"=>46, "Alpha"=>100));
67 67
 
68 68
    /* Class creator */
69 69
    function pData()
@@ -73,8 +73,8 @@  discard block
 block discarded – undo
73 73
      $this->Data["XAxisFormat"]		= NULL;
74 74
      $this->Data["XAxisName"]		= NULL;
75 75
      $this->Data["XAxisUnit"]		= NULL;
76
-     $this->Data["Abscissa"]		= NULL;
77
-     $this->Data["AbsicssaPosition"]	= AXIS_POSITION_BOTTOM;
76
+     $this->Data["Abscissa"] = NULL;
77
+     $this->Data["AbsicssaPosition"] = AXIS_POSITION_BOTTOM;
78 78
 
79 79
      $this->Data["Axis"][0]["Display"]  = AXIS_FORMAT_DEFAULT;
80 80
      $this->Data["Axis"][0]["Position"] = AXIS_POSITION_LEFT;
@@ -82,23 +82,23 @@  discard block
 block discarded – undo
82 82
     }
83 83
 
84 84
    /* Add a single point or an array to the given serie */
85
-   function addPoints($Values,$SerieName="Serie1")
85
+   function addPoints($Values, $SerieName = "Serie1")
86 86
     {
87 87
      if (!isset($this->Data["Series"][$SerieName]))
88 88
       $this->initialise($SerieName);
89 89
 
90
-     if ( is_array($Values) )
90
+     if (is_array($Values))
91 91
       {
92
-       foreach($Values as $Key => $Value)
92
+       foreach ($Values as $Key => $Value)
93 93
         { $this->Data["Series"][$SerieName]["Data"][] = $Value; }
94 94
       }
95 95
      else
96 96
       $this->Data["Series"][$SerieName]["Data"][] = $Values;
97 97
 
98
-     if ( $Values != VOID )
98
+     if ($Values != VOID)
99 99
       {
100 100
        $StrippedData = $this->stripVOID($this->Data["Series"][$SerieName]["Data"]);
101
-       if ( empty($StrippedData) ) { $this->Data["Series"][$SerieName]["Max"] = 0; $this->Data["Series"][$SerieName]["Min"] =0; return(0); }
101
+       if (empty($StrippedData)) { $this->Data["Series"][$SerieName]["Max"] = 0; $this->Data["Series"][$SerieName]["Min"] = 0; return(0); }
102 102
        $this->Data["Series"][$SerieName]["Max"] = max($StrippedData);
103 103
        $this->Data["Series"][$SerieName]["Min"] = min($StrippedData);
104 104
       }
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
 
107 107
    /* Strip VOID values */
108 108
    function stripVOID($Values)
109
-    { if (!is_array($Values)) { return(array()); } $Result = array(); foreach($Values as $Key => $Value) { if ( $Value != VOID ) { $Result[] = $Value; } } return($Result); }
109
+    { if (!is_array($Values)) { return(array()); } $Result = array(); foreach ($Values as $Key => $Value) { if ($Value != VOID) { $Result[] = $Value; } } return($Result); }
110 110
 
111 111
    /* Return the number of values contained in a given serie */
112 112
    function getSerieCount($Serie)
@@ -115,12 +115,12 @@  discard block
 block discarded – undo
115 115
    /* Remove a serie from the pData object */
116 116
    function removeSerie($Series)
117 117
     {
118
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
119
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { unset($this->Data["Series"][$Serie]); } }
118
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
119
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { unset($this->Data["Series"][$Serie]); } }
120 120
     }
121 121
 
122 122
    /* Return a value from given serie & index */
123
-   function getValueAt($Serie,$Index=0)
123
+   function getValueAt($Serie, $Index = 0)
124 124
     { if (isset($this->Data["Series"][$Serie]["Data"][$Index])) { return($this->Data["Series"][$Serie]["Data"][$Index]); } else { return(NULL); } }
125 125
 
126 126
    /* Return the values array */
@@ -130,8 +130,8 @@  discard block
 block discarded – undo
130 130
    /* Reverse the values in the given serie */
131 131
    function reverseSerie($Series)
132 132
     {
133
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
134
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]["Data"])) { $this->Data["Series"][$Serie]["Data"] = array_reverse($this->Data["Series"][$Serie]["Data"]); } }
133
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
134
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]["Data"])) { $this->Data["Series"][$Serie]["Data"] = array_reverse($this->Data["Series"][$Serie]["Data"]); } }
135 135
     }
136 136
 
137 137
    /* Return the sum of the serie values */
@@ -147,31 +147,31 @@  discard block
 block discarded – undo
147 147
     { if (isset($this->Data["Series"][$Serie]["Min"])) { return($this->Data["Series"][$Serie]["Min"]); } else { return(NULL); } }
148 148
 
149 149
    /* Set the description of a given serie */
150
-   function setSerieShape($Series,$Shape=SERIE_SHAPE_FILLEDCIRCLE)
150
+   function setSerieShape($Series, $Shape = SERIE_SHAPE_FILLEDCIRCLE)
151 151
     {
152
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
153
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Shape"] = $Shape; } }
152
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
153
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { $this->Data["Series"][$Serie]["Shape"] = $Shape; } }
154 154
     }
155 155
 
156 156
    /* Set the description of a given serie */
157
-   function setSerieDescription($Series,$Description="My serie")
157
+   function setSerieDescription($Series, $Description = "My serie")
158 158
     {
159
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
160
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Description"] = $Description; } }
159
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
160
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { $this->Data["Series"][$Serie]["Description"] = $Description; } }
161 161
     }
162 162
 
163 163
    /* Set a serie as "drawable" while calling a rendering function */
164
-   function setSerieDrawable($Series,$Drawable=TRUE)
164
+   function setSerieDrawable($Series, $Drawable = TRUE)
165 165
     {
166
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
167
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["isDrawable"] = $Drawable; } }
166
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
167
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { $this->Data["Series"][$Serie]["isDrawable"] = $Drawable; } }
168 168
     }
169 169
 
170 170
    /* Set the icon associated to a given serie */
171
-   function setSeriePicture($Series,$Picture=NULL)
171
+   function setSeriePicture($Series, $Picture = NULL)
172 172
     {
173
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
174
-     foreach($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Picture"] = $Picture; } }
173
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
174
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { $this->Data["Series"][$Serie]["Picture"] = $Picture; } }
175 175
     }
176 176
 
177 177
    /* Set the name of the X Axis */
@@ -179,8 +179,8 @@  discard block
 block discarded – undo
179 179
     { $this->Data["XAxisName"] = $Name; }
180 180
 
181 181
    /* Set the display mode of the  X Axis */
182
-   function setXAxisDisplay($Mode,$Format=NULL)
183
-    { $this->Data["XAxisDisplay"] = $Mode; $this->Data["XAxisFormat"]  = $Format; }
182
+   function setXAxisDisplay($Mode, $Format = NULL)
183
+    { $this->Data["XAxisDisplay"] = $Mode; $this->Data["XAxisFormat"] = $Format; }
184 184
 
185 185
    /* Set the unit that will be displayed on the X axis */
186 186
    function setXAxisUnit($Unit)
@@ -198,42 +198,42 @@  discard block
 block discarded – undo
198 198
     { $this->Data["AbscissaName"] = $Name; }
199 199
 
200 200
    /* Create a scatter group specifyin X and Y data series */
201
-   function setScatterSerie($SerieX,$SerieY,$ID=0)
202
-    { if (isset($this->Data["Series"][$SerieX]) && isset($this->Data["Series"][$SerieY]) ) { $this->initScatterSerie($ID); $this->Data["ScatterSeries"][$ID]["X"] = $SerieX; $this->Data["ScatterSeries"][$ID]["Y"] = $SerieY; } }
201
+   function setScatterSerie($SerieX, $SerieY, $ID = 0)
202
+    { if (isset($this->Data["Series"][$SerieX]) && isset($this->Data["Series"][$SerieY])) { $this->initScatterSerie($ID); $this->Data["ScatterSeries"][$ID]["X"] = $SerieX; $this->Data["ScatterSeries"][$ID]["Y"] = $SerieY; } }
203 203
 
204 204
    /* Set the shape of a given sctatter serie */
205
-   function setScatterSerieShape($ID,$Shape=SERIE_SHAPE_FILLEDCIRCLE)
206
-    { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Shape"] = $Shape; } }
205
+   function setScatterSerieShape($ID, $Shape = SERIE_SHAPE_FILLEDCIRCLE)
206
+    { if (isset($this->Data["ScatterSeries"][$ID])) { $this->Data["ScatterSeries"][$ID]["Shape"] = $Shape; } }
207 207
 
208 208
    /* Set the description of a given scatter serie */
209
-   function setScatterSerieDescription($ID,$Description="My serie")
210
-    { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Description"] = $Description; } }
209
+   function setScatterSerieDescription($ID, $Description = "My serie")
210
+    { if (isset($this->Data["ScatterSeries"][$ID])) { $this->Data["ScatterSeries"][$ID]["Description"] = $Description; } }
211 211
 
212 212
    /* Set the icon associated to a given scatter serie */
213
-   function setScatterSeriePicture($ID,$Picture=NULL)
214
-    { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Picture"] = $Picture; } }
213
+   function setScatterSeriePicture($ID, $Picture = NULL)
214
+    { if (isset($this->Data["ScatterSeries"][$ID])) { $this->Data["ScatterSeries"][$ID]["Picture"] = $Picture; } }
215 215
 
216 216
    /* Set a scatter serie as "drawable" while calling a rendering function */
217
-   function setScatterSerieDrawable($ID ,$Drawable=TRUE)
218
-    { if (isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["isDrawable"] = $Drawable; } }
217
+   function setScatterSerieDrawable($ID, $Drawable = TRUE)
218
+    { if (isset($this->Data["ScatterSeries"][$ID])) { $this->Data["ScatterSeries"][$ID]["isDrawable"] = $Drawable; } }
219 219
 
220 220
    /* Define if a scatter serie should be draw with ticks */
221
-   function setScatterSerieTicks($ID,$Width=0)
222
-    { if ( isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Ticks"] = $Width; } }
221
+   function setScatterSerieTicks($ID, $Width = 0)
222
+    { if (isset($this->Data["ScatterSeries"][$ID])) { $this->Data["ScatterSeries"][$ID]["Ticks"] = $Width; } }
223 223
 
224 224
    /* Define if a scatter serie should be draw with a special weight */
225
-   function setScatterSerieWeight($ID,$Weight=0)
226
-    { if ( isset($this->Data["ScatterSeries"][$ID]) ) { $this->Data["ScatterSeries"][$ID]["Weight"] = $Weight; } }
225
+   function setScatterSerieWeight($ID, $Weight = 0)
226
+    { if (isset($this->Data["ScatterSeries"][$ID])) { $this->Data["ScatterSeries"][$ID]["Weight"] = $Weight; } }
227 227
 
228 228
    /* Associate a color to a scatter serie */
229
-   function setScatterSerieColor($ID,$Format)
229
+   function setScatterSerieColor($ID, $Format)
230 230
     {
231 231
      $R	    = isset($Format["R"]) ? $Format["R"] : 0;
232 232
      $G	    = isset($Format["G"]) ? $Format["G"] : 0;
233 233
      $B	    = isset($Format["B"]) ? $Format["B"] : 0;
234 234
      $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
235 235
 
236
-     if ( isset($this->Data["ScatterSeries"][$ID]) )
236
+     if (isset($this->Data["ScatterSeries"][$ID]))
237 237
       {
238 238
        $this->Data["ScatterSeries"][$ID]["Color"]["R"] = $R;
239 239
        $this->Data["ScatterSeries"][$ID]["Color"]["G"] = $G;
@@ -248,28 +248,28 @@  discard block
 block discarded – undo
248 248
      $GlobalMin = ABSOLUTE_MAX;
249 249
      $GlobalMax = ABSOLUTE_MIN;
250 250
 
251
-     foreach($this->Data["Series"] as $Key => $Value)
251
+     foreach ($this->Data["Series"] as $Key => $Value)
252 252
       {
253
-       if ( $this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"] == TRUE)
253
+       if ($this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"] == TRUE)
254 254
         {
255
-         if ( $GlobalMin > $this->Data["Series"][$Key]["Min"] ) { $GlobalMin = $this->Data["Series"][$Key]["Min"]; }
256
-         if ( $GlobalMax < $this->Data["Series"][$Key]["Max"] ) { $GlobalMax = $this->Data["Series"][$Key]["Max"]; }
255
+         if ($GlobalMin > $this->Data["Series"][$Key]["Min"]) { $GlobalMin = $this->Data["Series"][$Key]["Min"]; }
256
+         if ($GlobalMax < $this->Data["Series"][$Key]["Max"]) { $GlobalMax = $this->Data["Series"][$Key]["Max"]; }
257 257
         }
258 258
       }
259 259
      $this->Data["Min"] = $GlobalMin;
260 260
      $this->Data["Max"] = $GlobalMax;
261 261
 
262
-     return(array($GlobalMin,$GlobalMax));
262
+     return(array($GlobalMin, $GlobalMax));
263 263
     }
264 264
 
265 265
    /* Mark all series as drawable */
266 266
    function drawAll()
267
-    { foreach($this->Data["Series"] as $Key => $Value) { if ( $this->Data["Abscissa"] != $Key ) { $this->Data["Series"][$Key]["isDrawable"]=TRUE; } } }    
267
+    { foreach ($this->Data["Series"] as $Key => $Value) { if ($this->Data["Abscissa"] != $Key) { $this->Data["Series"][$Key]["isDrawable"] = TRUE; } } }    
268 268
 
269 269
    /* Return the average value of the given serie */
270 270
    function getSerieAverage($Serie)
271 271
     {
272
-     if ( isset($this->Data["Series"][$Serie]) )
272
+     if (isset($this->Data["Series"][$Serie]))
273 273
       {
274 274
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
275 275
        return(array_sum($SerieData)/sizeof($SerieData));
@@ -281,11 +281,11 @@  discard block
 block discarded – undo
281 281
    /* Return the geometric mean of the given serie */
282 282
    function getGeometricMean($Serie)
283 283
     {
284
-     if ( isset($this->Data["Series"][$Serie]) )
284
+     if (isset($this->Data["Series"][$Serie]))
285 285
       {
286 286
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
287
-       $Seriesum  = 1; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum * $Value; }
288
-       return(pow($Seriesum,1/sizeof($SerieData)));
287
+       $Seriesum  = 1; foreach ($SerieData as $Key => $Value) { $Seriesum = $Seriesum*$Value; }
288
+       return(pow($Seriesum, 1/sizeof($SerieData)));
289 289
       }
290 290
      else
291 291
       return(NULL);
@@ -294,10 +294,10 @@  discard block
 block discarded – undo
294 294
    /* Return the harmonic mean of the given serie */
295 295
    function getHarmonicMean($Serie)
296 296
     {
297
-     if ( isset($this->Data["Series"][$Serie]) )
297
+     if (isset($this->Data["Series"][$Serie]))
298 298
       {
299 299
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
300
-       $Seriesum  = 0; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum + 1/$Value; }
300
+       $Seriesum  = 0; foreach ($SerieData as $Key => $Value) { $Seriesum = $Seriesum + 1/$Value; }
301 301
        return(sizeof($SerieData)/$Seriesum);
302 302
       }
303 303
      else
@@ -307,14 +307,14 @@  discard block
 block discarded – undo
307 307
    /* Return the standard deviation of the given serie */
308 308
    function getStandardDeviation($Serie)
309 309
     {
310
-     if ( isset($this->Data["Series"][$Serie]) )
310
+     if (isset($this->Data["Series"][$Serie]))
311 311
       {
312 312
        $Average   = $this->getSerieAverage($Serie);
313 313
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
314 314
 
315 315
        $DeviationSum = 0;
316
-       foreach($SerieData as $Key => $Value)
317
-        $DeviationSum = $DeviationSum + ($Value-$Average)*($Value-$Average);
316
+       foreach ($SerieData as $Key => $Value)
317
+        $DeviationSum = $DeviationSum + ($Value - $Average)*($Value - $Average);
318 318
 
319 319
        $Deviation = sqrt($DeviationSum/count($SerieData));
320 320
 
@@ -327,12 +327,12 @@  discard block
 block discarded – undo
327 327
    /* Return the Coefficient of variation of the given serie */
328 328
    function getCoefficientOfVariation($Serie)
329 329
     {
330
-     if ( isset($this->Data["Series"][$Serie]) )
330
+     if (isset($this->Data["Series"][$Serie]))
331 331
       {
332 332
        $Average           = $this->getSerieAverage($Serie);
333 333
        $StandardDeviation = $this->getStandardDeviation($Serie);
334 334
 
335
-       if ( $StandardDeviation != 0 )
335
+       if ($StandardDeviation != 0)
336 336
         return($StandardDeviation/$Average);
337 337
        else
338 338
         return(NULL);
@@ -344,13 +344,13 @@  discard block
 block discarded – undo
344 344
    /* Return the median value of the given serie */
345 345
    function getSerieMedian($Serie)
346 346
     {
347
-     if ( isset($this->Data["Series"][$Serie]) )
347
+     if (isset($this->Data["Series"][$Serie]))
348 348
       {
349 349
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
350 350
        sort($SerieData);
351 351
        $SerieCenter = floor(sizeof($SerieData)/2);
352 352
 
353
-       if ( isset($SerieData[$SerieCenter]) )
353
+       if (isset($SerieData[$SerieCenter]))
354 354
         return($SerieData[$SerieCenter]);
355 355
        else
356 356
         return(NULL);
@@ -360,35 +360,35 @@  discard block
 block discarded – undo
360 360
     }
361 361
 
362 362
    /* Return the x th percentil of the given serie */
363
-   function getSeriePercentile($Serie="Serie1",$Percentil=95)
363
+   function getSeriePercentile($Serie = "Serie1", $Percentil = 95)
364 364
     {
365 365
      if (!isset($this->Data["Series"][$Serie]["Data"])) { return(NULL); }
366 366
 
367
-     $Values = count($this->Data["Series"][$Serie]["Data"])-1;
368
-     if ( $Values < 0 ) { $Values = 0; }
367
+     $Values = count($this->Data["Series"][$Serie]["Data"]) - 1;
368
+     if ($Values < 0) { $Values = 0; }
369 369
 
370
-     $PercentilID  = floor(($Values/100)*$Percentil+.5);
370
+     $PercentilID  = floor(($Values/100)*$Percentil + .5);
371 371
      $SortedValues = $this->Data["Series"][$Serie]["Data"];
372 372
      sort($SortedValues);
373 373
 
374
-     if ( is_numeric($SortedValues[$PercentilID]) )
374
+     if (is_numeric($SortedValues[$PercentilID]))
375 375
       return($SortedValues[$PercentilID]);
376 376
      else
377 377
       return(NULL);
378 378
     }
379 379
 
380 380
    /* Add random values to a given serie */
381
-   function addRandomValues($SerieName="Serie1",$Options="")
381
+   function addRandomValues($SerieName = "Serie1", $Options = "")
382 382
     {
383 383
      $Values    = isset($Options["Values"]) ? $Options["Values"] : 20;
384 384
      $Min       = isset($Options["Min"]) ? $Options["Min"] : 0;
385 385
      $Max       = isset($Options["Max"]) ? $Options["Max"] : 100;
386 386
      $withFloat = isset($Options["withFloat"]) ? $Options["withFloat"] : FALSE;
387 387
 
388
-     for ($i=0;$i<=$Values;$i++)
388
+     for ($i = 0; $i <= $Values; $i++)
389 389
       {
390
-       if ( $withFloat ) { $Value = rand($Min*100,$Max*100)/100; } else { $Value = rand($Min,$Max); }
391
-       $this->addPoints($Value,$SerieName);
390
+       if ($withFloat) { $Value = rand($Min*100, $Max*100)/100; } else { $Value = rand($Min, $Max); }
391
+       $this->addPoints($Value, $SerieName);
392 392
       }
393 393
     }
394 394
 
@@ -398,42 +398,42 @@  discard block
 block discarded – undo
398 398
      if (!isset($this->Data["Series"])) { return(FALSE); }
399 399
 
400 400
      $Result = FALSE;
401
-     foreach($this->Data["Series"] as $Key => $Value)
402
-      { if ( $this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"]==TRUE) { $Result=TRUE; } }
401
+     foreach ($this->Data["Series"] as $Key => $Value)
402
+      { if ($this->Data["Abscissa"] != $Key && $this->Data["Series"][$Key]["isDrawable"] == TRUE) { $Result = TRUE; } }
403 403
      return($Result);
404 404
     }
405 405
 
406 406
    /* Set the display mode of an Axis */
407
-   function setAxisDisplay($AxisID,$Mode=AXIS_FORMAT_DEFAULT,$Format=NULL)
407
+   function setAxisDisplay($AxisID, $Mode = AXIS_FORMAT_DEFAULT, $Format = NULL)
408 408
     {
409
-     if ( isset($this->Data["Axis"][$AxisID] ) )
409
+     if (isset($this->Data["Axis"][$AxisID]))
410 410
       {
411 411
        $this->Data["Axis"][$AxisID]["Display"] = $Mode;
412
-       if ( $Format != NULL ) { $this->Data["Axis"][$AxisID]["Format"] = $Format; }
412
+       if ($Format != NULL) { $this->Data["Axis"][$AxisID]["Format"] = $Format; }
413 413
       }
414 414
     }
415 415
 
416 416
    /* Set the position of an Axis */
417
-   function setAxisPosition($AxisID,$Position=AXIS_POSITION_LEFT)
418
-    { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Position"] = $Position; } }
417
+   function setAxisPosition($AxisID, $Position = AXIS_POSITION_LEFT)
418
+    { if (isset($this->Data["Axis"][$AxisID])) { $this->Data["Axis"][$AxisID]["Position"] = $Position; } }
419 419
 
420 420
    /* Associate an unit to an axis */
421
-   function setAxisUnit($AxisID,$Unit)
422
-    { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Unit"] = $Unit; } }
421
+   function setAxisUnit($AxisID, $Unit)
422
+    { if (isset($this->Data["Axis"][$AxisID])) { $this->Data["Axis"][$AxisID]["Unit"] = $Unit; } }
423 423
 
424 424
    /* Associate a name to an axis */
425
-   function setAxisName($AxisID,$Name)
426
-    { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Name"] = $Name; } }
425
+   function setAxisName($AxisID, $Name)
426
+    { if (isset($this->Data["Axis"][$AxisID])) { $this->Data["Axis"][$AxisID]["Name"] = $Name; } }
427 427
 
428 428
    /* Associate a color to an axis */
429
-   function setAxisColor($AxisID,$Format)
429
+   function setAxisColor($AxisID, $Format)
430 430
     {
431 431
      $R	    = isset($Format["R"]) ? $Format["R"] : 0;
432 432
      $G	    = isset($Format["G"]) ? $Format["G"] : 0;
433 433
      $B	    = isset($Format["B"]) ? $Format["B"] : 0;
434 434
      $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
435 435
 
436
-     if ( isset($this->Data["Axis"][$AxisID] ) )
436
+     if (isset($this->Data["Axis"][$AxisID]))
437 437
       {
438 438
        $this->Data["Axis"][$AxisID]["Color"]["R"] = $R;
439 439
        $this->Data["Axis"][$AxisID]["Color"]["G"] = $G;
@@ -444,48 +444,48 @@  discard block
 block discarded – undo
444 444
 
445 445
 
446 446
    /* Design an axis as X or Y member */
447
-   function setAxisXY($AxisID,$Identity=AXIS_Y)
448
-    { if ( isset($this->Data["Axis"][$AxisID] ) ) { $this->Data["Axis"][$AxisID]["Identity"] = $Identity; } }
447
+   function setAxisXY($AxisID, $Identity = AXIS_Y)
448
+    { if (isset($this->Data["Axis"][$AxisID])) { $this->Data["Axis"][$AxisID]["Identity"] = $Identity; } }
449 449
 
450 450
    /* Associate one data serie with one axis */
451
-   function setSerieOnAxis($Series,$AxisID)
451
+   function setSerieOnAxis($Series, $AxisID)
452 452
     {
453
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
454
-     foreach($Series as $Key => $Serie)
453
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
454
+     foreach ($Series as $Key => $Serie)
455 455
       {
456 456
        $PreviousAxis = $this->Data["Series"][$Serie]["Axis"];
457 457
 
458 458
        /* Create missing axis */
459
-       if ( !isset($this->Data["Axis"][$AxisID] ) )
460
-        { $this->Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; $this->Data["Axis"][$AxisID]["Identity"] = AXIS_Y;}
459
+       if (!isset($this->Data["Axis"][$AxisID]))
460
+        { $this->Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; $this->Data["Axis"][$AxisID]["Identity"] = AXIS_Y; }
461 461
 
462 462
        $this->Data["Series"][$Serie]["Axis"] = $AxisID;
463 463
 
464 464
        /* Cleanup unused axis */
465 465
        $Found = FALSE;
466
-       foreach($this->Data["Series"] as $SerieName => $Values) { if ( $Values["Axis"] == $PreviousAxis ) { $Found = TRUE; } }
466
+       foreach ($this->Data["Series"] as $SerieName => $Values) { if ($Values["Axis"] == $PreviousAxis) { $Found = TRUE; } }
467 467
        if (!$Found) { unset($this->Data["Axis"][$PreviousAxis]); }
468 468
       }
469 469
     }
470 470
 
471 471
    /* Define if a serie should be draw with ticks */
472
-   function setSerieTicks($Series,$Width=0)
472
+   function setSerieTicks($Series, $Width = 0)
473 473
     {
474
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
475
-     foreach($Series as $Key => $Serie) { if ( isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Ticks"] = $Width; } }
474
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
475
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { $this->Data["Series"][$Serie]["Ticks"] = $Width; } }
476 476
     }
477 477
 
478 478
    /* Define if a serie should be draw with a special weight */
479
-   function setSerieWeight($Series,$Weight=0)
479
+   function setSerieWeight($Series, $Weight = 0)
480 480
     {
481
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
482
-     foreach($Series as $Key => $Serie) { if ( isset($this->Data["Series"][$Serie]) ) { $this->Data["Series"][$Serie]["Weight"] = $Weight; } }
481
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
482
+     foreach ($Series as $Key => $Serie) { if (isset($this->Data["Series"][$Serie])) { $this->Data["Series"][$Serie]["Weight"] = $Weight; } }
483 483
     }
484 484
 
485 485
    /* Returns the palette of the given serie */
486 486
    function getSeriePalette($Serie)
487 487
     {
488
-     if ( !isset($this->Data["Series"][$Serie]) ) { return(NULL); }
488
+     if (!isset($this->Data["Series"][$Serie])) { return(NULL); }
489 489
 
490 490
      $Result = "";
491 491
      $Result["R"] = $this->Data["Series"][$Serie]["Color"]["R"];
@@ -497,18 +497,18 @@  discard block
 block discarded – undo
497 497
     }
498 498
 
499 499
    /* Set the color of one serie */
500
-   function setPalette($Series,$Format=NULL)
500
+   function setPalette($Series, $Format = NULL)
501 501
     {
502
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
502
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
503 503
 
504
-     foreach($Series as $Key => $Serie)
504
+     foreach ($Series as $Key => $Serie)
505 505
       {
506 506
        $R	    = isset($Format["R"]) ? $Format["R"] : 0;
507 507
        $G	    = isset($Format["G"]) ? $Format["G"] : 0;
508 508
        $B	    = isset($Format["B"]) ? $Format["B"] : 0;
509 509
        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
510 510
 
511
-       if ( isset($this->Data["Series"][$Serie]) )
511
+       if (isset($this->Data["Series"][$Serie]))
512 512
         {
513 513
          $OldR = $this->Data["Series"][$Serie]["Color"]["R"]; $OldG = $this->Data["Series"][$Serie]["Color"]["G"]; $OldB = $this->Data["Series"][$Serie]["Color"]["B"];
514 514
          $this->Data["Series"][$Serie]["Color"]["R"] = $R;
@@ -518,39 +518,39 @@  discard block
 block discarded – undo
518 518
 
519 519
          /* Do reverse processing on the internal palette array */
520 520
          foreach ($this->Palette as $Key => $Value)
521
-          { if ($Value["R"] == $OldR && $Value["G"] == $OldG && $Value["B"] == $OldB) { $this->Palette[$Key]["R"] = $R; $this->Palette[$Key]["G"] = $G; $this->Palette[$Key]["B"] = $B; $this->Palette[$Key]["Alpha"] = $Alpha;} }
521
+          { if ($Value["R"] == $OldR && $Value["G"] == $OldG && $Value["B"] == $OldB) { $this->Palette[$Key]["R"] = $R; $this->Palette[$Key]["G"] = $G; $this->Palette[$Key]["B"] = $B; $this->Palette[$Key]["Alpha"] = $Alpha; } }
522 522
         }
523 523
       }
524 524
     }
525 525
 
526 526
    /* Load a palette file */
527
-   function loadPalette($FileName,$Overwrite=FALSE)
527
+   function loadPalette($FileName, $Overwrite = FALSE)
528 528
     {
529
-     if ( !file_exists($FileName) ) { return(-1); }
530
-     if ( $Overwrite ) { $this->Palette = ""; }
529
+     if (!file_exists($FileName)) { return(-1); }
530
+     if ($Overwrite) { $this->Palette = ""; }
531 531
 
532 532
      $fileHandle = @fopen($FileName, "r");
533 533
      if (!$fileHandle) { return(-1); }
534 534
      while (!feof($fileHandle))
535 535
       {
536 536
        $buffer = fgets($fileHandle, 4096);
537
-       if ( preg_match("/,/",$buffer) )
537
+       if (preg_match("/,/", $buffer))
538 538
         {
539
-         list($R,$G,$B,$Alpha) = preg_split("/,/",$buffer);
540
-         if ( $this->Palette == "" ) { $ID = 0; } else { $ID = count($this->Palette); }
541
-         $this->Palette[$ID] = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
539
+         list($R, $G, $B, $Alpha) = preg_split("/,/", $buffer);
540
+         if ($this->Palette == "") { $ID = 0; } else { $ID = count($this->Palette); }
541
+         $this->Palette[$ID] = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
542 542
         }
543 543
       }
544 544
      fclose($fileHandle);
545 545
 
546 546
      /* Apply changes to current series */
547 547
      $ID = 0;
548
-     if ( isset($this->Data["Series"]))
548
+     if (isset($this->Data["Series"]))
549 549
       {
550
-       foreach($this->Data["Series"] as $Key => $Value)
550
+       foreach ($this->Data["Series"] as $Key => $Value)
551 551
         {
552
-         if ( !isset($this->Palette[$ID]) )
553
-          $this->Data["Series"][$Key]["Color"] = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>0);
552
+         if (!isset($this->Palette[$ID]))
553
+          $this->Data["Series"][$Key]["Color"] = array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>0);
554 554
          else
555 555
           $this->Data["Series"][$Key]["Color"] = $this->Palette[$ID];
556 556
          $ID++;
@@ -561,21 +561,21 @@  discard block
 block discarded – undo
561 561
    /* Initialise a given scatter serie */
562 562
    function initScatterSerie($ID)
563 563
     {
564
-     if ( isset($this->Data["ScatterSeries"][$ID]) ) { return(0); }
564
+     if (isset($this->Data["ScatterSeries"][$ID])) { return(0); }
565 565
 
566
-     $this->Data["ScatterSeries"][$ID]["Description"]	= "Scatter ".$ID;
567
-     $this->Data["ScatterSeries"][$ID]["isDrawable"]	= TRUE;
568
-     $this->Data["ScatterSeries"][$ID]["Picture"]	= NULL;
566
+     $this->Data["ScatterSeries"][$ID]["Description"] = "Scatter ".$ID;
567
+     $this->Data["ScatterSeries"][$ID]["isDrawable"] = TRUE;
568
+     $this->Data["ScatterSeries"][$ID]["Picture"] = NULL;
569 569
      $this->Data["ScatterSeries"][$ID]["Ticks"]		= 0;
570 570
      $this->Data["ScatterSeries"][$ID]["Weight"]	= 0;
571 571
 
572
-     if ( isset($this->Palette[$ID]) )
572
+     if (isset($this->Palette[$ID]))
573 573
       $this->Data["ScatterSeries"][$ID]["Color"] = $this->Palette[$ID];
574 574
      else
575 575
       {
576
-       $this->Data["ScatterSeries"][$ID]["Color"]["R"] = rand(0,255);
577
-       $this->Data["ScatterSeries"][$ID]["Color"]["G"] = rand(0,255);
578
-       $this->Data["ScatterSeries"][$ID]["Color"]["B"] = rand(0,255);
576
+       $this->Data["ScatterSeries"][$ID]["Color"]["R"] = rand(0, 255);
577
+       $this->Data["ScatterSeries"][$ID]["Color"]["G"] = rand(0, 255);
578
+       $this->Data["ScatterSeries"][$ID]["Color"]["B"] = rand(0, 255);
579 579
        $this->Data["ScatterSeries"][$ID]["Color"]["Alpha"] = 100;
580 580
       }
581 581
     }
@@ -583,79 +583,79 @@  discard block
 block discarded – undo
583 583
    /* Initialise a given serie */
584 584
    function initialise($Serie)
585 585
     {
586
-     if ( isset($this->Data["Series"]) ) { $ID = count($this->Data["Series"]); } else { $ID = 0; }
586
+     if (isset($this->Data["Series"])) { $ID = count($this->Data["Series"]); } else { $ID = 0; }
587 587
 
588
-     $this->Data["Series"][$Serie]["Description"]	= $Serie;
589
-     $this->Data["Series"][$Serie]["isDrawable"]	= TRUE;
590
-     $this->Data["Series"][$Serie]["Picture"]		= NULL;
588
+     $this->Data["Series"][$Serie]["Description"] = $Serie;
589
+     $this->Data["Series"][$Serie]["isDrawable"] = TRUE;
590
+     $this->Data["Series"][$Serie]["Picture"] = NULL;
591 591
      $this->Data["Series"][$Serie]["Max"]		= NULL;
592 592
      $this->Data["Series"][$Serie]["Min"]		= NULL;
593
-     $this->Data["Series"][$Serie]["Axis"]		= 0;
593
+     $this->Data["Series"][$Serie]["Axis"] = 0;
594 594
      $this->Data["Series"][$Serie]["Ticks"]		= 0;
595
-     $this->Data["Series"][$Serie]["Weight"]		= 0;
595
+     $this->Data["Series"][$Serie]["Weight"] = 0;
596 596
      $this->Data["Series"][$Serie]["Shape"]		= SERIE_SHAPE_FILLEDCIRCLE;
597 597
 
598
-     if ( isset($this->Palette[$ID]) )
598
+     if (isset($this->Palette[$ID]))
599 599
       $this->Data["Series"][$Serie]["Color"] = $this->Palette[$ID];
600 600
      else
601 601
       {
602
-       $this->Data["Series"][$Serie]["Color"]["R"] = rand(0,255);
603
-       $this->Data["Series"][$Serie]["Color"]["G"] = rand(0,255);
604
-       $this->Data["Series"][$Serie]["Color"]["B"] = rand(0,255);
602
+       $this->Data["Series"][$Serie]["Color"]["R"] = rand(0, 255);
603
+       $this->Data["Series"][$Serie]["Color"]["G"] = rand(0, 255);
604
+       $this->Data["Series"][$Serie]["Color"]["B"] = rand(0, 255);
605 605
        $this->Data["Series"][$Serie]["Color"]["Alpha"] = 100;
606 606
       }
607 607
     }
608 608
      
609
-   function normalize($NormalizationFactor=100,$UnitChange=NULL,$Round=1)
609
+   function normalize($NormalizationFactor = 100, $UnitChange = NULL, $Round = 1)
610 610
     {
611 611
      $Abscissa = $this->Data["Abscissa"];
612 612
 
613 613
      $SelectedSeries = "";
614 614
      $MaxVal         = 0;
615
-     foreach($this->Data["Axis"] as $AxisID => $Axis)
615
+     foreach ($this->Data["Axis"] as $AxisID => $Axis)
616 616
       {
617
-       if ( $UnitChange != NULL ) { $this->Data["Axis"][$AxisID]["Unit"] = $UnitChange; }
617
+       if ($UnitChange != NULL) { $this->Data["Axis"][$AxisID]["Unit"] = $UnitChange; }
618 618
 
619
-       foreach($this->Data["Series"] as $SerieName => $Serie)
619
+       foreach ($this->Data["Series"] as $SerieName => $Serie)
620 620
         {
621 621
          if ($Serie["Axis"] == $AxisID && $Serie["isDrawable"] == TRUE && $SerieName != $Abscissa)
622 622
           {
623 623
            $SelectedSeries[$SerieName] = $SerieName;
624 624
 
625
-           if ( count($Serie["Data"] ) > $MaxVal ) { $MaxVal = count($Serie["Data"]); }
625
+           if (count($Serie["Data"]) > $MaxVal) { $MaxVal = count($Serie["Data"]); }
626 626
           }
627 627
         }
628 628
       }
629 629
 
630
-     for($i=0;$i<=$MaxVal-1;$i++)
630
+     for ($i = 0; $i <= $MaxVal - 1; $i++)
631 631
       {
632 632
        $Factor = 0;
633
-       foreach ($SelectedSeries as $Key => $SerieName )
633
+       foreach ($SelectedSeries as $Key => $SerieName)
634 634
         {
635 635
          $Value = $this->Data["Series"][$SerieName]["Data"][$i];
636
-         if ( $Value != VOID )
636
+         if ($Value != VOID)
637 637
           $Factor = $Factor + abs($Value);
638 638
         }
639 639
 
640
-       if ( $Factor != 0 )
640
+       if ($Factor != 0)
641 641
         {
642
-         $Factor = $NormalizationFactor / $Factor;
642
+         $Factor = $NormalizationFactor/$Factor;
643 643
 
644
-         foreach ($SelectedSeries as $Key => $SerieName )
644
+         foreach ($SelectedSeries as $Key => $SerieName)
645 645
           {
646 646
            $Value = $this->Data["Series"][$SerieName]["Data"][$i];
647 647
 
648
-           if ( $Value != VOID && $Factor != $NormalizationFactor )
649
-            $this->Data["Series"][$SerieName]["Data"][$i] = round(abs($Value)*$Factor,$Round);
650
-           elseif ( $Value == VOID || $Value == 0 )
648
+           if ($Value != VOID && $Factor != $NormalizationFactor)
649
+            $this->Data["Series"][$SerieName]["Data"][$i] = round(abs($Value)*$Factor, $Round);
650
+           elseif ($Value == VOID || $Value == 0)
651 651
             $this->Data["Series"][$SerieName]["Data"][$i] = VOID;
652
-           elseif ( $Factor == $NormalizationFactor )
652
+           elseif ($Factor == $NormalizationFactor)
653 653
             $this->Data["Series"][$SerieName]["Data"][$i] = $NormalizationFactor;
654 654
           }
655 655
         }
656 656
       }
657 657
 
658
-     foreach ($SelectedSeries as $Key => $SerieName )
658
+     foreach ($SelectedSeries as $Key => $SerieName)
659 659
       {
660 660
        $this->Data["Series"][$SerieName]["Max"] = max($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
661 661
        $this->Data["Series"][$SerieName]["Min"] = min($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
@@ -663,35 +663,35 @@  discard block
 block discarded – undo
663 663
     }
664 664
 
665 665
    /* Load data from a CSV (or similar) data source */
666
-   function importFromCSV($FileName,$Options="")
666
+   function importFromCSV($FileName, $Options = "")
667 667
     {
668 668
      $Delimiter		= isset($Options["Delimiter"]) ? $Options["Delimiter"] : ",";
669 669
      $GotHeader		= isset($Options["GotHeader"]) ? $Options["GotHeader"] : FALSE;
670
-     $SkipColumns	= isset($Options["SkipColumns"]) ? $Options["SkipColumns"] : array(-1);
671
-     $DefaultSerieName	= isset($Options["DefaultSerieName"]) ? $Options["DefaultSerieName"] : "Serie";
670
+     $SkipColumns = isset($Options["SkipColumns"]) ? $Options["SkipColumns"] : array(-1);
671
+     $DefaultSerieName = isset($Options["DefaultSerieName"]) ? $Options["DefaultSerieName"] : "Serie";
672 672
 
673
-     $Handle = @fopen($FileName,"r");
673
+     $Handle = @fopen($FileName, "r");
674 674
      if ($Handle)
675 675
       {
676 676
        $HeaderParsed = FALSE; $SerieNames = "";
677 677
        while (!feof($Handle))
678 678
         {
679 679
          $Buffer = fgets($Handle, 4096);
680
-         $Buffer = str_replace(chr(10),"",$Buffer);
681
-         $Buffer = str_replace(chr(13),"",$Buffer);
682
-         $Values = preg_split("/".$Delimiter."/",$Buffer);
680
+         $Buffer = str_replace(chr(10), "", $Buffer);
681
+         $Buffer = str_replace(chr(13), "", $Buffer);
682
+         $Values = preg_split("/".$Delimiter."/", $Buffer);
683 683
 
684
-         if ( $Buffer != "" )
684
+         if ($Buffer != "")
685 685
           {
686
-           if ( $GotHeader && !$HeaderParsed )
686
+           if ($GotHeader && !$HeaderParsed)
687 687
             {
688
-             foreach($Values as $Key => $Name) { if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $Name; } }
688
+             foreach ($Values as $Key => $Name) { if (!in_array($Key, $SkipColumns)) { $SerieNames[$Key] = $Name; } }
689 689
              $HeaderParsed = TRUE;
690 690
             }
691 691
            else
692 692
             {
693
-             if ($SerieNames == "" ) { foreach($Values as $Key => $Name) {  if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $DefaultSerieName.$Key; } } }
694
-             foreach($Values as $Key => $Value) {  if ( !in_array($Key,$SkipColumns) ) { $this->addPoints($Value,$SerieNames[$Key]); } }
693
+             if ($SerieNames == "") { foreach ($Values as $Key => $Name) {  if (!in_array($Key, $SkipColumns)) { $SerieNames[$Key] = $DefaultSerieName.$Key; } } }
694
+             foreach ($Values as $Key => $Value) {  if (!in_array($Key, $SkipColumns)) { $this->addPoints($Value, $SerieNames[$Key]); } }
695 695
             }
696 696
           }
697 697
         }
@@ -700,46 +700,46 @@  discard block
 block discarded – undo
700 700
     }
701 701
 
702 702
    /* Create a dataset based on a formula */
703
-   function createFunctionSerie($SerieName,$Formula="",$Options="")
703
+   function createFunctionSerie($SerieName, $Formula = "", $Options = "")
704 704
     {
705 705
      $MinX		= isset($Options["MinX"]) ? $Options["MinX"] : -10;
706 706
      $MaxX		= isset($Options["MaxX"]) ? $Options["MaxX"] : 10;
707
-     $XStep		= isset($Options["XStep"]) ? $Options["XStep"] : 1;
708
-     $AutoDescription	= isset($Options["AutoDescription"]) ? $Options["AutoDescription"] : FALSE;
709
-     $RecordAbscissa	= isset($Options["RecordAbscissa"]) ? $Options["RecordAbscissa"] : FALSE;
710
-     $AbscissaSerie	= isset($Options["AbscissaSerie"]) ? $Options["AbscissaSerie"] : "Abscissa";
707
+     $XStep = isset($Options["XStep"]) ? $Options["XStep"] : 1;
708
+     $AutoDescription = isset($Options["AutoDescription"]) ? $Options["AutoDescription"] : FALSE;
709
+     $RecordAbscissa = isset($Options["RecordAbscissa"]) ? $Options["RecordAbscissa"] : FALSE;
710
+     $AbscissaSerie = isset($Options["AbscissaSerie"]) ? $Options["AbscissaSerie"] : "Abscissa";
711 711
 
712
-     if ( $Formula == "" ) { return(0); }
712
+     if ($Formula == "") { return(0); }
713 713
 
714 714
      $Result = ""; $Abscissa = "";
715
-     for($i=$MinX; $i<=$MaxX; $i=$i+$XStep)
715
+     for ($i = $MinX; $i <= $MaxX; $i = $i + $XStep)
716 716
       {
717
-       $Expression = "\$return = '!'.(".str_replace("z",$i,$Formula).");";
718
-       if ( @eval($Expression) === FALSE ) { $return = VOID; }
719
-       if ( $return == "!" ) { $return = VOID; } else { $return = $this->right($return,strlen($return)-1); }
720
-       if ( $return == "NAN" ) { $return = VOID; }
721
-       if ( $return == "INF" ) { $return = VOID; }
722
-       if ( $return == "-INF" ) { $return = VOID; }
717
+       $Expression = "\$return = '!'.(".str_replace("z", $i, $Formula).");";
718
+       if (@eval($Expression) === FALSE) { $return = VOID; }
719
+       if ($return == "!") { $return = VOID; } else { $return = $this->right($return, strlen($return) - 1); }
720
+       if ($return == "NAN") { $return = VOID; }
721
+       if ($return == "INF") { $return = VOID; }
722
+       if ($return == "-INF") { $return = VOID; }
723 723
 
724 724
        $Abscissa[] = $i;
725 725
        $Result[]   = $return;
726 726
       }
727 727
 
728
-     $this->addPoints($Result,$SerieName);
729
-     if ( $AutoDescription ) { $this->setSerieDescription($SerieName,$Formula); }
730
-     if ( $RecordAbscissa ) { $this->addPoints($Abscissa,$AbscissaSerie); }
728
+     $this->addPoints($Result, $SerieName);
729
+     if ($AutoDescription) { $this->setSerieDescription($SerieName, $Formula); }
730
+     if ($RecordAbscissa) { $this->addPoints($Abscissa, $AbscissaSerie); }
731 731
     }
732 732
 
733 733
    function negateValues($Series)
734 734
     {
735
-     if ( !is_array($Series) ) { $Series = $this->convertToArray($Series); }
736
-     foreach($Series as $Key => $SerieName)
735
+     if (!is_array($Series)) { $Series = $this->convertToArray($Series); }
736
+     foreach ($Series as $Key => $SerieName)
737 737
       {
738 738
        if (isset($this->Data["Series"][$SerieName]))
739 739
         {
740 740
          $Data = "";
741
-         foreach($this->Data["Series"][$SerieName]["Data"] as $Key => $Value)
742
-          { if ( $Value == VOID ) { $Data[] = VOID; } else { $Data[] = -$Value; } }
741
+         foreach ($this->Data["Series"][$SerieName]["Data"] as $Key => $Value)
742
+          { if ($Value == VOID) { $Data[] = VOID; } else { $Data[] = -$Value; } }
743 743
          $this->Data["Series"][$SerieName]["Data"] = $Data;
744 744
 
745 745
          $this->Data["Series"][$SerieName]["Max"] = max($this->stripVOID($this->Data["Series"][$SerieName]["Data"]));
@@ -753,7 +753,7 @@  discard block
 block discarded – undo
753 753
     { return($this->Data); }
754 754
 
755 755
    /* Save a palette element */
756
-   function savePalette($ID,$Color)
756
+   function savePalette($ID, $Color)
757 757
     { $this->Palette[$ID] = $Color; }
758 758
 
759 759
    /* Return the palette of the series */
@@ -761,16 +761,16 @@  discard block
 block discarded – undo
761 761
     { return($this->Palette); }
762 762
 
763 763
    /* Called by the scaling algorithm to save the config */
764
-   function saveAxisConfig($Axis) { $this->Data["Axis"]=$Axis; }
764
+   function saveAxisConfig($Axis) { $this->Data["Axis"] = $Axis; }
765 765
 
766 766
    /* Save the Y Margin if set */
767
-   function saveYMargin($Value) { $this->Data["YMargin"]=$Value; }
767
+   function saveYMargin($Value) { $this->Data["YMargin"] = $Value; }
768 768
 
769 769
    /* Save extended configuration to the pData object */
770
-   function saveExtendedData($Tag,$Values) { $this->Data["Extended"][$Tag]=$Values; }
770
+   function saveExtendedData($Tag, $Values) { $this->Data["Extended"][$Tag] = $Values; }
771 771
 
772 772
    /* Called by the scaling algorithm to save the orientation of the scale */
773
-   function saveOrientation($Orientation) { $this->Data["Orientation"]=$Orientation; }
773
+   function saveOrientation($Orientation) { $this->Data["Orientation"] = $Orientation; }
774 774
 
775 775
    /* Convert a string to a single elements array */
776 776
    function convertToArray($Value)
@@ -780,8 +780,8 @@  discard block
 block discarded – undo
780 780
    function __toString()
781 781
     { return("pData object."); }
782 782
 
783
-   function left($value,$NbChar)	{ return substr($value,0,$NbChar); }  
784
-   function right($value,$NbChar)	{ return substr($value,strlen($value)-$NbChar,$NbChar); }  
785
-   function mid($value,$Depart,$NbChar)	{ return substr($value,$Depart-1,$NbChar); }  
783
+   function left($value, $NbChar) { return substr($value, 0, $NbChar); }  
784
+   function right($value, $NbChar) { return substr($value, strlen($value) - $NbChar, $NbChar); }  
785
+   function mid($value, $Depart, $NbChar) { return substr($value, $Depart - 1, $NbChar); }  
786 786
   }
787 787
 ?>
788 788
\ No newline at end of file
Please login to merge, or discard this patch.
Braces   +64 added lines, -57 removed lines patch added patch discarded remove patch
@@ -84,16 +84,17 @@  discard block
 block discarded – undo
84 84
    /* Add a single point or an array to the given serie */
85 85
    function addPoints($Values,$SerieName="Serie1")
86 86
     {
87
-     if (!isset($this->Data["Series"][$SerieName]))
88
-      $this->initialise($SerieName);
87
+     if (!isset($this->Data["Series"][$SerieName])) {
88
+           $this->initialise($SerieName);
89
+     }
89 90
 
90 91
      if ( is_array($Values) )
91 92
       {
92 93
        foreach($Values as $Key => $Value)
93 94
         { $this->Data["Series"][$SerieName]["Data"][] = $Value; }
94
-      }
95
-     else
96
-      $this->Data["Series"][$SerieName]["Data"][] = $Values;
95
+      } else {
96
+           $this->Data["Series"][$SerieName]["Data"][] = $Values;
97
+     }
97 98
 
98 99
      if ( $Values != VOID )
99 100
       {
@@ -273,9 +274,9 @@  discard block
 block discarded – undo
273 274
       {
274 275
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
275 276
        return(array_sum($SerieData)/sizeof($SerieData));
276
-      }
277
-     else
278
-      return(NULL);
277
+      } else {
278
+           return(NULL);
279
+     }
279 280
     }
280 281
 
281 282
    /* Return the geometric mean of the given serie */
@@ -286,9 +287,9 @@  discard block
 block discarded – undo
286 287
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
287 288
        $Seriesum  = 1; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum * $Value; }
288 289
        return(pow($Seriesum,1/sizeof($SerieData)));
289
-      }
290
-     else
291
-      return(NULL);
290
+      } else {
291
+           return(NULL);
292
+     }
292 293
     }
293 294
 
294 295
    /* Return the harmonic mean of the given serie */
@@ -299,9 +300,9 @@  discard block
 block discarded – undo
299 300
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
300 301
        $Seriesum  = 0; foreach($SerieData as $Key => $Value) { $Seriesum = $Seriesum + 1/$Value; }
301 302
        return(sizeof($SerieData)/$Seriesum);
302
-      }
303
-     else
304
-      return(NULL);
303
+      } else {
304
+           return(NULL);
305
+     }
305 306
     }
306 307
 
307 308
    /* Return the standard deviation of the given serie */
@@ -313,15 +314,16 @@  discard block
 block discarded – undo
313 314
        $SerieData = $this->stripVOID($this->Data["Series"][$Serie]["Data"]);
314 315
 
315 316
        $DeviationSum = 0;
316
-       foreach($SerieData as $Key => $Value)
317
-        $DeviationSum = $DeviationSum + ($Value-$Average)*($Value-$Average);
317
+       foreach($SerieData as $Key => $Value) {
318
+               $DeviationSum = $DeviationSum + ($Value-$Average)*($Value-$Average);
319
+       }
318 320
 
319 321
        $Deviation = sqrt($DeviationSum/count($SerieData));
320 322
 
321 323
        return($Deviation);
322
-      }
323
-     else
324
-      return(NULL);
324
+      } else {
325
+           return(NULL);
326
+     }
325 327
     }
326 328
 
327 329
    /* Return the Coefficient of variation of the given serie */
@@ -332,13 +334,14 @@  discard block
 block discarded – undo
332 334
        $Average           = $this->getSerieAverage($Serie);
333 335
        $StandardDeviation = $this->getStandardDeviation($Serie);
334 336
 
335
-       if ( $StandardDeviation != 0 )
336
-        return($StandardDeviation/$Average);
337
-       else
338
-        return(NULL);
339
-      }
340
-     else
341
-      return(NULL);
337
+       if ( $StandardDeviation != 0 ) {
338
+               return($StandardDeviation/$Average);
339
+       } else {
340
+               return(NULL);
341
+       }
342
+      } else {
343
+           return(NULL);
344
+     }
342 345
     }
343 346
 
344 347
    /* Return the median value of the given serie */
@@ -350,13 +353,14 @@  discard block
 block discarded – undo
350 353
        sort($SerieData);
351 354
        $SerieCenter = floor(sizeof($SerieData)/2);
352 355
 
353
-       if ( isset($SerieData[$SerieCenter]) )
354
-        return($SerieData[$SerieCenter]);
355
-       else
356
-        return(NULL);
357
-      }
358
-     else
359
-      return(NULL);
356
+       if ( isset($SerieData[$SerieCenter]) ) {
357
+               return($SerieData[$SerieCenter]);
358
+       } else {
359
+               return(NULL);
360
+       }
361
+      } else {
362
+           return(NULL);
363
+     }
360 364
     }
361 365
 
362 366
    /* Return the x th percentil of the given serie */
@@ -371,10 +375,11 @@  discard block
 block discarded – undo
371 375
      $SortedValues = $this->Data["Series"][$Serie]["Data"];
372 376
      sort($SortedValues);
373 377
 
374
-     if ( is_numeric($SortedValues[$PercentilID]) )
375
-      return($SortedValues[$PercentilID]);
376
-     else
377
-      return(NULL);
378
+     if ( is_numeric($SortedValues[$PercentilID]) ) {
379
+           return($SortedValues[$PercentilID]);
380
+     } else {
381
+           return(NULL);
382
+     }
378 383
     }
379 384
 
380 385
    /* Add random values to a given serie */
@@ -549,10 +554,11 @@  discard block
 block discarded – undo
549 554
       {
550 555
        foreach($this->Data["Series"] as $Key => $Value)
551 556
         {
552
-         if ( !isset($this->Palette[$ID]) )
553
-          $this->Data["Series"][$Key]["Color"] = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>0);
554
-         else
555
-          $this->Data["Series"][$Key]["Color"] = $this->Palette[$ID];
557
+         if ( !isset($this->Palette[$ID]) ) {
558
+                   $this->Data["Series"][$Key]["Color"] = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>0);
559
+         } else {
560
+                   $this->Data["Series"][$Key]["Color"] = $this->Palette[$ID];
561
+         }
556 562
          $ID++;
557 563
         }
558 564
       }
@@ -569,9 +575,9 @@  discard block
 block discarded – undo
569 575
      $this->Data["ScatterSeries"][$ID]["Ticks"]		= 0;
570 576
      $this->Data["ScatterSeries"][$ID]["Weight"]	= 0;
571 577
 
572
-     if ( isset($this->Palette[$ID]) )
573
-      $this->Data["ScatterSeries"][$ID]["Color"] = $this->Palette[$ID];
574
-     else
578
+     if ( isset($this->Palette[$ID]) ) {
579
+           $this->Data["ScatterSeries"][$ID]["Color"] = $this->Palette[$ID];
580
+     } else
575 581
       {
576 582
        $this->Data["ScatterSeries"][$ID]["Color"]["R"] = rand(0,255);
577 583
        $this->Data["ScatterSeries"][$ID]["Color"]["G"] = rand(0,255);
@@ -595,9 +601,9 @@  discard block
 block discarded – undo
595 601
      $this->Data["Series"][$Serie]["Weight"]		= 0;
596 602
      $this->Data["Series"][$Serie]["Shape"]		= SERIE_SHAPE_FILLEDCIRCLE;
597 603
 
598
-     if ( isset($this->Palette[$ID]) )
599
-      $this->Data["Series"][$Serie]["Color"] = $this->Palette[$ID];
600
-     else
604
+     if ( isset($this->Palette[$ID]) ) {
605
+           $this->Data["Series"][$Serie]["Color"] = $this->Palette[$ID];
606
+     } else
601 607
       {
602 608
        $this->Data["Series"][$Serie]["Color"]["R"] = rand(0,255);
603 609
        $this->Data["Series"][$Serie]["Color"]["G"] = rand(0,255);
@@ -633,8 +639,9 @@  discard block
 block discarded – undo
633 639
        foreach ($SelectedSeries as $Key => $SerieName )
634 640
         {
635 641
          $Value = $this->Data["Series"][$SerieName]["Data"][$i];
636
-         if ( $Value != VOID )
637
-          $Factor = $Factor + abs($Value);
642
+         if ( $Value != VOID ) {
643
+                   $Factor = $Factor + abs($Value);
644
+         }
638 645
         }
639 646
 
640 647
        if ( $Factor != 0 )
@@ -645,12 +652,13 @@  discard block
 block discarded – undo
645 652
           {
646 653
            $Value = $this->Data["Series"][$SerieName]["Data"][$i];
647 654
 
648
-           if ( $Value != VOID && $Factor != $NormalizationFactor )
649
-            $this->Data["Series"][$SerieName]["Data"][$i] = round(abs($Value)*$Factor,$Round);
650
-           elseif ( $Value == VOID || $Value == 0 )
651
-            $this->Data["Series"][$SerieName]["Data"][$i] = VOID;
652
-           elseif ( $Factor == $NormalizationFactor )
653
-            $this->Data["Series"][$SerieName]["Data"][$i] = $NormalizationFactor;
655
+           if ( $Value != VOID && $Factor != $NormalizationFactor ) {
656
+                       $this->Data["Series"][$SerieName]["Data"][$i] = round(abs($Value)*$Factor,$Round);
657
+           } elseif ( $Value == VOID || $Value == 0 ) {
658
+                       $this->Data["Series"][$SerieName]["Data"][$i] = VOID;
659
+           } elseif ( $Factor == $NormalizationFactor ) {
660
+                       $this->Data["Series"][$SerieName]["Data"][$i] = $NormalizationFactor;
661
+           }
654 662
           }
655 663
         }
656 664
       }
@@ -687,8 +695,7 @@  discard block
 block discarded – undo
687 695
             {
688 696
              foreach($Values as $Key => $Name) { if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $Name; } }
689 697
              $HeaderParsed = TRUE;
690
-            }
691
-           else
698
+            } else
692 699
             {
693 700
              if ($SerieNames == "" ) { foreach($Values as $Key => $Name) {  if ( !in_array($Key,$SkipColumns) ) { $SerieNames[$Key] = $DefaultSerieName.$Key; } } }
694 701
              foreach($Values as $Key => $Value) {  if ( !in_array($Key,$SkipColumns) ) { $this->addPoints($Value,$SerieNames[$Key]); } }
Please login to merge, or discard this patch.
default/boinc/modules/boincstats/includes/pchart/class/pDraw.class.php 5 patches
Doc Comments   +44 added lines patch added patch discarded remove patch
@@ -124,6 +124,10 @@  discard block
 block discarded – undo
124 124
     }
125 125
 
126 126
    /* Draw a polygon */
127
+
128
+   /**
129
+    * @param string $Points
130
+    */
127 131
    function drawPolygon($Points,$Format="")
128 132
     {
129 133
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
@@ -573,6 +577,10 @@  discard block
 block discarded – undo
573 577
     }
574 578
 
575 579
    /* Drawn a spline based on the bezier function */
580
+
581
+   /**
582
+    * @param string $Coordinates
583
+    */
576 584
    function drawSpline($Coordinates,$Format="")
577 585
     {
578 586
      $R		= isset($Format["R"]) ? $Format["R"] : 0;
@@ -1028,6 +1036,10 @@  discard block
 block discarded – undo
1028 1036
     }
1029 1037
 
1030 1038
    /* Draw a gradient within a defined area */
1039
+
1040
+   /**
1041
+    * @param integer $Direction
1042
+    */
1031 1043
    function drawGradientArea($X1,$Y1,$X2,$Y2,$Direction,$Format="")
1032 1044
     {
1033 1045
      $StartR	= isset($Format["StartR"]) ? $Format["StartR"] : 90;
@@ -1109,6 +1121,11 @@  discard block
 block discarded – undo
1109 1121
     }
1110 1122
 
1111 1123
    /* Draw an aliased pixel */
1124
+
1125
+   /**
1126
+    * @param double $X
1127
+    * @param double $Y
1128
+    */
1112 1129
    function drawAntialiasPixel($X,$Y,$Format="")
1113 1130
     {
1114 1131
      $R     = isset($Format["R"]) ? $Format["R"] : 0;
@@ -1188,6 +1205,10 @@  discard block
 block discarded – undo
1188 1205
     }
1189 1206
 
1190 1207
    /* Convert apha to base 10 */
1208
+
1209
+   /**
1210
+    * @param integer $AlphaValue
1211
+    */
1191 1212
    function convertAlpha($AlphaValue)
1192 1213
     { return((127/100)*(100-$AlphaValue)); }
1193 1214
 
@@ -1205,6 +1226,11 @@  discard block
 block discarded – undo
1205 1226
     }
1206 1227
 
1207 1228
    /* Load a PNG file and draw it over the chart */
1229
+
1230
+   /**
1231
+    * @param double $X
1232
+    * @param double $Y
1233
+    */
1208 1234
    function drawFromPNG($X,$Y,$FileName)
1209 1235
     { $this->drawFromPicture(1,$FileName,$X,$Y); }
1210 1236
 
@@ -2483,6 +2509,9 @@  discard block
 block discarded – undo
2483 2509
       }
2484 2510
     }
2485 2511
 
2512
+   /**
2513
+    * @param integer $ID
2514
+    */
2486 2515
    function isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip)
2487 2516
     {
2488 2517
      if ( $LabelingMethod == LABELING_DIFFERENT && $Value != $LastValue ) { return(TRUE); }
@@ -2494,6 +2523,10 @@  discard block
 block discarded – undo
2494 2523
     }
2495 2524
 
2496 2525
    /* Compute the scale, check for the best visual factors */
2526
+
2527
+   /**
2528
+    * @param double $MaxDivs
2529
+    */
2497 2530
    function computeScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID=0)
2498 2531
     {
2499 2532
      /* Compute each factors */
@@ -2522,6 +2555,10 @@  discard block
 block discarded – undo
2522 2555
     }
2523 2556
 
2524 2557
    /* Compute the best matching scale based on size & factors */
2558
+
2559
+   /**
2560
+    * @param integer $AxisID
2561
+    */
2525 2562
    function processScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID)
2526 2563
     {
2527 2564
      $ScaleHeight = abs(ceil($XMax)-floor($XMin));
@@ -2602,6 +2639,9 @@  discard block
 block discarded – undo
2602 2639
      return($Scale);
2603 2640
     }
2604 2641
 
2642
+   /**
2643
+    * @param double $Value2
2644
+    */
2605 2645
    function modulo($Value1,$Value2)
2606 2646
     {
2607 2647
      if (floor($Value2) == 0) { return(0); }
@@ -5772,6 +5812,10 @@  discard block
 block discarded – undo
5772 5812
     }
5773 5813
 
5774 5814
    /* Draw a label box */
5815
+
5816
+   /**
5817
+    * @param string $Captions
5818
+    */
5775 5819
    function drawLabelBox($X,$Y,$Title,$Captions,$Format="")
5776 5820
     {
5777 5821
      $NoTitle		= isset($Format["NoTitle"]) ? $Format["NoTitle"] : NULL;
Please login to merge, or discard this patch.
Indentation   +5013 added lines, -5013 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
- /*
2
+    /*
3 3
      pDraw - class extension with drawing methods
4 4
 
5 5
      Version     : 2.1.3
@@ -13,6181 +13,6181 @@  discard block
 block discarded – undo
13 13
      You can find the whole class documentation on the pChart web site.
14 14
  */
15 15
 
16
- define("DIRECTION_VERTICAL"		, 690001);
17
- define("DIRECTION_HORIZONTAL"		, 690002);
18
-
19
- define("SCALE_POS_LEFTRIGHT"		, 690101);
20
- define("SCALE_POS_TOPBOTTOM"		, 690102);
21
-
22
- define("SCALE_MODE_FLOATING"		, 690201);
23
- define("SCALE_MODE_START0"		, 690202);
24
- define("SCALE_MODE_ADDALL"		, 690203);
25
- define("SCALE_MODE_ADDALL_START0"	, 690204);
26
- define("SCALE_MODE_MANUAL"		, 690205);
27
-
28
- define("SCALE_SKIP_NONE"		, 690301);
29
- define("SCALE_SKIP_SAME"		, 690302);
30
- define("SCALE_SKIP_NUMBERS"		, 690303);
31
-
32
- define("TEXT_ALIGN_TOPLEFT"		, 690401);
33
- define("TEXT_ALIGN_TOPMIDDLE"		, 690402);
34
- define("TEXT_ALIGN_TOPRIGHT"		, 690403);
35
- define("TEXT_ALIGN_MIDDLELEFT"		, 690404);
36
- define("TEXT_ALIGN_MIDDLEMIDDLE"	, 690405);
37
- define("TEXT_ALIGN_MIDDLERIGHT"	, 690406);
38
- define("TEXT_ALIGN_BOTTOMLEFT"		, 690407);
39
- define("TEXT_ALIGN_BOTTOMMIDDLE"	, 690408);
40
- define("TEXT_ALIGN_BOTTOMRIGHT"	, 690409);
41
-
42
- define("POSITION_TOP"                  , 690501);
43
- define("POSITION_BOTTOM"               , 690502);
44
-
45
- define("LABEL_POS_LEFT"		, 690601);
46
- define("LABEL_POS_CENTER"		, 690602);
47
- define("LABEL_POS_RIGHT"		, 690603);
48
- define("LABEL_POS_TOP"			, 690604);
49
- define("LABEL_POS_BOTTOM"		, 690605);
50
- define("LABEL_POS_INSIDE"		, 690606);
51
- define("LABEL_POS_OUTSIDE"		, 690607);
52
-
53
- define("ORIENTATION_HORIZONTAL"	, 690701);
54
- define("ORIENTATION_VERTICAL"		, 690702);
55
- define("ORIENTATION_AUTO"		, 690703);
56
-
57
- define("LEGEND_NOBORDER"		, 690800);
58
- define("LEGEND_BOX"			, 690801);
59
- define("LEGEND_ROUND"			, 690802);
60
-
61
- define("LEGEND_VERTICAL"		, 690901);
62
- define("LEGEND_HORIZONTAL"		, 690902);
63
-
64
- define("LEGEND_FAMILY_BOX"		, 691051);
65
- define("LEGEND_FAMILY_CIRCLE"		, 691052);
66
- define("LEGEND_FAMILY_LINE"		, 691053);
67
-
68
- define("DISPLAY_AUTO"			, 691001);
69
- define("DISPLAY_MANUAL"		, 691002);
70
-
71
- define("LABELING_ALL"			, 691011);
72
- define("LABELING_DIFFERENT"		, 691012);
73
-
74
- define("BOUND_MIN"			, 691021);
75
- define("BOUND_MAX"			, 691022);
76
- define("BOUND_BOTH"			, 691023);
77
-
78
- define("BOUND_LABEL_POS_TOP"		, 691031);
79
- define("BOUND_LABEL_POS_BOTTOM"	, 691032);
80
- define("BOUND_LABEL_POS_AUTO"		, 691033);
81
-
82
- define("CAPTION_LEFT_TOP"		, 691041);
83
- define("CAPTION_RIGHT_BOTTOM"		, 691042);
84
-
85
- define("GRADIENT_SIMPLE"		, 691051);
86
- define("GRADIENT_EFFECT_CAN"		, 691052);
87
-
88
- define("LABEL_TITLE_NOBACKGROUND"	, 691061);
89
- define("LABEL_TITLE_BACKGROUND"	, 691062);
90
-
91
- define("LABEL_POINT_NONE"		, 691071);
92
- define("LABEL_POINT_CIRCLE"		, 691072);
93
- define("LABEL_POINT_BOX"		, 691073);
94
-
95
- define("ZONE_NAME_ANGLE_AUTO"		, 691081);
96
-
97
- define("PI"		, 3.14159265);
98
- define("ALL"		, 69);
99
- define("NONE"		, 31);
100
- define("AUTO"		, 690000);
101
- define("OUT_OF_SIGHT"	, -10000000000000);
102
-
103
- class pDraw
104
-  {
105
-   /* Returns the number of drawable series */
106
-   function countDrawableSeries()
16
+    define("DIRECTION_VERTICAL"		, 690001);
17
+    define("DIRECTION_HORIZONTAL"		, 690002);
18
+
19
+    define("SCALE_POS_LEFTRIGHT"		, 690101);
20
+    define("SCALE_POS_TOPBOTTOM"		, 690102);
21
+
22
+    define("SCALE_MODE_FLOATING"		, 690201);
23
+    define("SCALE_MODE_START0"		, 690202);
24
+    define("SCALE_MODE_ADDALL"		, 690203);
25
+    define("SCALE_MODE_ADDALL_START0"	, 690204);
26
+    define("SCALE_MODE_MANUAL"		, 690205);
27
+
28
+    define("SCALE_SKIP_NONE"		, 690301);
29
+    define("SCALE_SKIP_SAME"		, 690302);
30
+    define("SCALE_SKIP_NUMBERS"		, 690303);
31
+
32
+    define("TEXT_ALIGN_TOPLEFT"		, 690401);
33
+    define("TEXT_ALIGN_TOPMIDDLE"		, 690402);
34
+    define("TEXT_ALIGN_TOPRIGHT"		, 690403);
35
+    define("TEXT_ALIGN_MIDDLELEFT"		, 690404);
36
+    define("TEXT_ALIGN_MIDDLEMIDDLE"	, 690405);
37
+    define("TEXT_ALIGN_MIDDLERIGHT"	, 690406);
38
+    define("TEXT_ALIGN_BOTTOMLEFT"		, 690407);
39
+    define("TEXT_ALIGN_BOTTOMMIDDLE"	, 690408);
40
+    define("TEXT_ALIGN_BOTTOMRIGHT"	, 690409);
41
+
42
+    define("POSITION_TOP"                  , 690501);
43
+    define("POSITION_BOTTOM"               , 690502);
44
+
45
+    define("LABEL_POS_LEFT"		, 690601);
46
+    define("LABEL_POS_CENTER"		, 690602);
47
+    define("LABEL_POS_RIGHT"		, 690603);
48
+    define("LABEL_POS_TOP"			, 690604);
49
+    define("LABEL_POS_BOTTOM"		, 690605);
50
+    define("LABEL_POS_INSIDE"		, 690606);
51
+    define("LABEL_POS_OUTSIDE"		, 690607);
52
+
53
+    define("ORIENTATION_HORIZONTAL"	, 690701);
54
+    define("ORIENTATION_VERTICAL"		, 690702);
55
+    define("ORIENTATION_AUTO"		, 690703);
56
+
57
+    define("LEGEND_NOBORDER"		, 690800);
58
+    define("LEGEND_BOX"			, 690801);
59
+    define("LEGEND_ROUND"			, 690802);
60
+
61
+    define("LEGEND_VERTICAL"		, 690901);
62
+    define("LEGEND_HORIZONTAL"		, 690902);
63
+
64
+    define("LEGEND_FAMILY_BOX"		, 691051);
65
+    define("LEGEND_FAMILY_CIRCLE"		, 691052);
66
+    define("LEGEND_FAMILY_LINE"		, 691053);
67
+
68
+    define("DISPLAY_AUTO"			, 691001);
69
+    define("DISPLAY_MANUAL"		, 691002);
70
+
71
+    define("LABELING_ALL"			, 691011);
72
+    define("LABELING_DIFFERENT"		, 691012);
73
+
74
+    define("BOUND_MIN"			, 691021);
75
+    define("BOUND_MAX"			, 691022);
76
+    define("BOUND_BOTH"			, 691023);
77
+
78
+    define("BOUND_LABEL_POS_TOP"		, 691031);
79
+    define("BOUND_LABEL_POS_BOTTOM"	, 691032);
80
+    define("BOUND_LABEL_POS_AUTO"		, 691033);
81
+
82
+    define("CAPTION_LEFT_TOP"		, 691041);
83
+    define("CAPTION_RIGHT_BOTTOM"		, 691042);
84
+
85
+    define("GRADIENT_SIMPLE"		, 691051);
86
+    define("GRADIENT_EFFECT_CAN"		, 691052);
87
+
88
+    define("LABEL_TITLE_NOBACKGROUND"	, 691061);
89
+    define("LABEL_TITLE_BACKGROUND"	, 691062);
90
+
91
+    define("LABEL_POINT_NONE"		, 691071);
92
+    define("LABEL_POINT_CIRCLE"		, 691072);
93
+    define("LABEL_POINT_BOX"		, 691073);
94
+
95
+    define("ZONE_NAME_ANGLE_AUTO"		, 691081);
96
+
97
+    define("PI"		, 3.14159265);
98
+    define("ALL"		, 69);
99
+    define("NONE"		, 31);
100
+    define("AUTO"		, 690000);
101
+    define("OUT_OF_SIGHT"	, -10000000000000);
102
+
103
+    class pDraw
104
+    {
105
+    /* Returns the number of drawable series */
106
+    function countDrawableSeries()
107 107
     {
108
-     $Results = 0;
109
-     $Data = $this->DataSet->getData();
108
+        $Results = 0;
109
+        $Data = $this->DataSet->getData();
110 110
 
111
-     foreach($Data["Series"] as $SerieName => $Serie)
112
-      { if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] ) { $Results++; } }
111
+        foreach($Data["Series"] as $SerieName => $Serie)
112
+        { if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] ) { $Results++; } }
113 113
 
114
-     return($Results);
114
+        return($Results);
115 115
     }
116 116
 
117
-   /* Fix box coordinates */
118
-   function fixBoxCoordinates($Xa,$Ya,$Xb,$Yb)
117
+    /* Fix box coordinates */
118
+    function fixBoxCoordinates($Xa,$Ya,$Xb,$Yb)
119 119
     {
120
-     $X1 = min($Xa,$Xb); $Y1 = min($Ya,$Yb);
121
-     $X2 = max($Xa,$Xb); $Y2 = max($Ya,$Yb);
120
+        $X1 = min($Xa,$Xb); $Y1 = min($Ya,$Yb);
121
+        $X2 = max($Xa,$Xb); $Y2 = max($Ya,$Yb);
122 122
 
123
-     return(array($X1,$Y1,$X2,$Y2));
123
+        return(array($X1,$Y1,$X2,$Y2));
124 124
     }
125 125
 
126
-   /* Draw a polygon */
127
-   function drawPolygon($Points,$Format="")
126
+    /* Draw a polygon */
127
+    function drawPolygon($Points,$Format="")
128 128
     {
129
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
130
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
131
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
132
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
133
-     $NoFill		= isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
134
-     $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
135
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
136
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
137
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
138
-     $BorderAlpha 	= isset($Format["Alpha"]) ? $Format["Alpha"] : $Alpha / 2;
139
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
140
-     $SkipX		= isset($Format["SkipX"]) ? $Format["SkipX"] : OUT_OF_SIGHT;
141
-     $SkipY		= isset($Format["SkipY"]) ? $Format["SkipY"] : OUT_OF_SIGHT;
142
-
143
-     /* Calling the ImageFilledPolygon() function over the $Points array will round it */ 	
144
-     $Backup = $Points;
145
-
146
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
147
-
148
-     if ( $SkipX != OUT_OF_SIGHT ) { $SkipX = floor($SkipX); }
149
-     if ( $SkipY != OUT_OF_SIGHT ) { $SkipY = floor($SkipY); }
150
-
151
-     $RestoreShadow = $this->Shadow;
152
-     if ( !$NoFill )
153
-      {
154
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
155
-        {
156
-         $this->Shadow = FALSE;
157
-         for($i=0;$i<=count($Points)-1;$i=$i+2)
158
-          { $Shadow[] = $Points[$i] + $this->ShadowX; $Shadow[] = $Points[$i+1] + $this->ShadowY; }
159
-         $this->drawPolygon($Shadow,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"NoBorder"=>TRUE));
160
-        }
161
-
162
-       $FillColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
163
-
164
-       if ( count($Points) >= 6 )
129
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
130
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
131
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
132
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
133
+        $NoFill		= isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
134
+        $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
135
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
136
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
137
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
138
+        $BorderAlpha 	= isset($Format["Alpha"]) ? $Format["Alpha"] : $Alpha / 2;
139
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
140
+        $SkipX		= isset($Format["SkipX"]) ? $Format["SkipX"] : OUT_OF_SIGHT;
141
+        $SkipY		= isset($Format["SkipY"]) ? $Format["SkipY"] : OUT_OF_SIGHT;
142
+
143
+        /* Calling the ImageFilledPolygon() function over the $Points array will round it */ 	
144
+        $Backup = $Points;
145
+
146
+        if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
147
+
148
+        if ( $SkipX != OUT_OF_SIGHT ) { $SkipX = floor($SkipX); }
149
+        if ( $SkipY != OUT_OF_SIGHT ) { $SkipY = floor($SkipY); }
150
+
151
+        $RestoreShadow = $this->Shadow;
152
+        if ( !$NoFill )
153
+        {
154
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
155
+        {
156
+            $this->Shadow = FALSE;
157
+            for($i=0;$i<=count($Points)-1;$i=$i+2)
158
+            { $Shadow[] = $Points[$i] + $this->ShadowX; $Shadow[] = $Points[$i+1] + $this->ShadowY; }
159
+            $this->drawPolygon($Shadow,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"NoBorder"=>TRUE));
160
+        }
161
+
162
+        $FillColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
163
+
164
+        if ( count($Points) >= 6 )
165 165
         { ImageFilledPolygon($this->Picture,$Points,count($Points)/2,$FillColor); }
166
-      }
166
+        }
167 167
 
168
-     if ( !$NoBorder )
169
-      {
170
-       $Points = $Backup;
168
+        if ( !$NoBorder )
169
+        {
170
+        $Points = $Backup;
171 171
 
172
-       if ( $NoFill )
172
+        if ( $NoFill )
173 173
         $BorderSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
174
-       else
174
+        else
175 175
         $BorderSettings = array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha);
176 176
 
177
-       for($i=0;$i<=count($Points)-1;$i=$i+2)
177
+        for($i=0;$i<=count($Points)-1;$i=$i+2)
178 178
         {
179
-         if ( isset($Points[$i+2]) )
180
-          {
181
-           if ( !($Points[$i] == $Points[$i+2] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[$i+3] && $Points[$i+1] == $SkipY ) )
179
+            if ( isset($Points[$i+2]) )
180
+            {
181
+            if ( !($Points[$i] == $Points[$i+2] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[$i+3] && $Points[$i+1] == $SkipY ) )
182 182
             $this->drawLine($Points[$i],$Points[$i+1],$Points[$i+2],$Points[$i+3],$BorderSettings);
183
-          }
184
-         else
185
-          {
186
-           if ( !($Points[$i] == $Points[0] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[1] && $Points[$i+1] == $SkipY ) )
183
+            }
184
+            else
185
+            {
186
+            if ( !($Points[$i] == $Points[0] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[1] && $Points[$i+1] == $SkipY ) )
187 187
             $this->drawLine($Points[$i],$Points[$i+1],$Points[0],$Points[1],$BorderSettings);
188
-          }
188
+            }
189
+        }
189 190
         }
190
-      }
191 191
 
192
-     $this->Shadow = $RestoreShadow;
192
+        $this->Shadow = $RestoreShadow;
193 193
     }
194 194
 
195
-   /* Apply AALias correction to the rounded box boundaries */
196
-   function offsetCorrection($Value,$Mode)
195
+    /* Apply AALias correction to the rounded box boundaries */
196
+    function offsetCorrection($Value,$Mode)
197 197
     {
198
-     $Value = round($Value,1);
198
+        $Value = round($Value,1);
199 199
 
200
-     if ( $Value == 0 && $Mode == 1 ) { return(.9); }
201
-     if ( $Value == 0 ) { return(0); }
200
+        if ( $Value == 0 && $Mode == 1 ) { return(.9); }
201
+        if ( $Value == 0 ) { return(0); }
202 202
 
203
-     if ( $Mode == 1) 
204
-      { if ( $Value == 1 ) { return(.9); }; if ( $Value == .1 ) { return(.9); }; if ( $Value == .2 ) { return(.8); }; if ( $Value == .3 ) { return(.8); }; if ( $Value == .4 ) { return(.7); }; if ( $Value == .5 ) { return(.5); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.6); }; if ( $Value == .9 ) { return(.9); }; }
203
+        if ( $Mode == 1) 
204
+        { if ( $Value == 1 ) { return(.9); }; if ( $Value == .1 ) { return(.9); }; if ( $Value == .2 ) { return(.8); }; if ( $Value == .3 ) { return(.8); }; if ( $Value == .4 ) { return(.7); }; if ( $Value == .5 ) { return(.5); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.6); }; if ( $Value == .9 ) { return(.9); }; }
205 205
 
206
-     if ( $Mode == 2) 
207
-      { if ( $Value == 1 ) { return(.9); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.4); }; if ( $Value == .5 ) { return(.5); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.8); }; if ( $Value == .9 ) { return(.9); }; }
206
+        if ( $Mode == 2) 
207
+        { if ( $Value == 1 ) { return(.9); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.4); }; if ( $Value == .5 ) { return(.5); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.8); }; if ( $Value == .9 ) { return(.9); }; }
208 208
 
209
-     if ( $Mode == 3) 
210
-      { if ( $Value == 1 ) { return(.1); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.4); }; if ( $Value == .5 ) { return(.9); }; if ( $Value == .6 ) { return(.6); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.4); }; if ( $Value == .9 ) { return(.5); }; }
209
+        if ( $Mode == 3) 
210
+        { if ( $Value == 1 ) { return(.1); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.4); }; if ( $Value == .5 ) { return(.9); }; if ( $Value == .6 ) { return(.6); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.4); }; if ( $Value == .9 ) { return(.5); }; }
211 211
 
212
-     if ( $Mode == 4) 
213
-      { if ( $Value == 1 ) { return(-1); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.1); }; if ( $Value == .5 ) { return(-.1); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.1); }; if ( $Value == .8 ) { return(.1); }; if ( $Value == .9 ) { return(.1); }; }
212
+        if ( $Mode == 4) 
213
+        { if ( $Value == 1 ) { return(-1); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.1); }; if ( $Value == .5 ) { return(-.1); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.1); }; if ( $Value == .8 ) { return(.1); }; if ( $Value == .9 ) { return(.1); }; }
214 214
     }
215 215
 
216
-   /* Draw a rectangle with rounded corners */
217
-   function drawRoundedRectangle($X1,$Y1,$X2,$Y2,$Radius,$Format="")
216
+    /* Draw a rectangle with rounded corners */
217
+    function drawRoundedRectangle($X1,$Y1,$X2,$Y2,$Radius,$Format="")
218 218
     {
219
-     $R	    = isset($Format["R"]) ? $Format["R"] : 0;
220
-     $G	    = isset($Format["G"]) ? $Format["G"] : 0;
221
-     $B	    = isset($Format["B"]) ? $Format["B"] : 0;
222
-     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
223
-
224
-     list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
225
-
226
-     if ( $X2 - $X1 < $Radius ) { $Radius = floor((($X2-$X1))/2); }
227
-     if ( $Y2 - $Y1 < $Radius ) { $Radius = floor((($Y2-$Y1))/2); }
228
-
229
-     $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE);
230
-
231
-     if ( $Radius <= 0 ) { $this->drawRectangle($X1,$Y1,$X2,$Y2,$Color); return(0); }
232
-
233
-     if ( $this->Antialias )
234
-      {
235
-       $this->drawLine($X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
236
-       $this->drawLine($X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
237
-       $this->drawLine($X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
238
-       $this->drawLine($X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
239
-      }
240
-     else
241
-      {
242
-       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
243
-       imageline($this->Picture,$X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
244
-       imageline($this->Picture,$X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
245
-       imageline($this->Picture,$X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
246
-       imageline($this->Picture,$X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
247
-      }
248
-
249
-     $Step = 360 / (2 * PI * $Radius);
250
-     for($i=0;$i<=90;$i=$i+$Step)
251
-      {
252
-       $X = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
253
-       $Y = sin(($i+180)*PI/180) * $Radius + $Y1 + $Radius;
254
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
255
-
256
-       $X = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
257
-       $Y = sin(($i+90)*PI/180) * $Radius + $Y2 - $Radius;
258
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
259
-
260
-       $X = cos($i*PI/180) * $Radius + $X2 - $Radius;
261
-       $Y = sin($i*PI/180) * $Radius + $Y2 - $Radius;
262
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
263
-
264
-       $X = cos(($i+270)*PI/180) * $Radius + $X2 - $Radius;
265
-       $Y = sin(($i+270)*PI/180) * $Radius + $Y1 + $Radius;
266
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
267
-      }
219
+        $R	    = isset($Format["R"]) ? $Format["R"] : 0;
220
+        $G	    = isset($Format["G"]) ? $Format["G"] : 0;
221
+        $B	    = isset($Format["B"]) ? $Format["B"] : 0;
222
+        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
223
+
224
+        list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
225
+
226
+        if ( $X2 - $X1 < $Radius ) { $Radius = floor((($X2-$X1))/2); }
227
+        if ( $Y2 - $Y1 < $Radius ) { $Radius = floor((($Y2-$Y1))/2); }
228
+
229
+        $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE);
230
+
231
+        if ( $Radius <= 0 ) { $this->drawRectangle($X1,$Y1,$X2,$Y2,$Color); return(0); }
232
+
233
+        if ( $this->Antialias )
234
+        {
235
+        $this->drawLine($X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
236
+        $this->drawLine($X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
237
+        $this->drawLine($X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
238
+        $this->drawLine($X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
239
+        }
240
+        else
241
+        {
242
+        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
243
+        imageline($this->Picture,$X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
244
+        imageline($this->Picture,$X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
245
+        imageline($this->Picture,$X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
246
+        imageline($this->Picture,$X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
247
+        }
248
+
249
+        $Step = 360 / (2 * PI * $Radius);
250
+        for($i=0;$i<=90;$i=$i+$Step)
251
+        {
252
+        $X = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
253
+        $Y = sin(($i+180)*PI/180) * $Radius + $Y1 + $Radius;
254
+        $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
255
+
256
+        $X = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
257
+        $Y = sin(($i+90)*PI/180) * $Radius + $Y2 - $Radius;
258
+        $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
259
+
260
+        $X = cos($i*PI/180) * $Radius + $X2 - $Radius;
261
+        $Y = sin($i*PI/180) * $Radius + $Y2 - $Radius;
262
+        $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
263
+
264
+        $X = cos(($i+270)*PI/180) * $Radius + $X2 - $Radius;
265
+        $Y = sin(($i+270)*PI/180) * $Radius + $Y1 + $Radius;
266
+        $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
267
+        }
268 268
     }
269 269
 
270
-   /* Draw a rectangle with rounded corners */
271
-   function drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$Radius,$Format="")
270
+    /* Draw a rectangle with rounded corners */
271
+    function drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$Radius,$Format="")
272 272
     {
273
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
274
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
275
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
276
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
277
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
278
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
279
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
280
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
281
-
282
-     /* Temporary fix for AA issue */
283
-     $Y1 = floor($Y1); $Y2 = floor($Y2); $X1 = floor($X1); $X2 = floor($X2);
284
-
285
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
286
-     if ( $BorderR == -1 ) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
287
-
288
-     list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
289
-
290
-     if ( $X2 - $X1 < $Radius*2 ) { $Radius = floor((($X2-$X1))/4); }
291
-     if ( $Y2 - $Y1 < $Radius*2 ) { $Radius = floor((($Y2-$Y1))/4); }
292
-
293
-     $RestoreShadow = $this->Shadow;
294
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
295
-      {
296
-       $this->Shadow = FALSE;
297
-       $this->drawRoundedFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
298
-      }
299
-
300
-     $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE);
301
-
302
-     if ( $Radius <= 0 ) { $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color); return(0); }
303
-
304
-     $YTop    = $Y1+$Radius;
305
-     $YBottom = $Y2-$Radius;
306
-
307
-     $Step = 360 / (2 * PI * $Radius);
308
-     $Positions = ""; $Radius--; $MinY = ""; $MaxY = "";
309
-     for($i=0;$i<=90;$i=$i+$Step)
310
-      {
311
-       $Xp1 = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
312
-       $Xp2 = cos(((90-$i)+270)*PI/180) * $Radius + $X2 - $Radius;
313
-       $Yp  = floor(sin(($i+180)*PI/180) * $Radius + $YTop);
314
-       if ( $MinY == "" || $Yp > $MinY ) { $MinY = $Yp; }
315
-
316
-       if ( $Xp1 <= floor($X1) )  { $Xp1++; }
317
-       if ( $Xp2 >= floor($X2) )  { $Xp2--; }
318
-       $Xp1++;
319
-
320
-       if ( !isset($Positions[$Yp]) )
273
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
274
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
275
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
276
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
277
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
278
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
279
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
280
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
281
+
282
+        /* Temporary fix for AA issue */
283
+        $Y1 = floor($Y1); $Y2 = floor($Y2); $X1 = floor($X1); $X2 = floor($X2);
284
+
285
+        if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
286
+        if ( $BorderR == -1 ) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
287
+
288
+        list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
289
+
290
+        if ( $X2 - $X1 < $Radius*2 ) { $Radius = floor((($X2-$X1))/4); }
291
+        if ( $Y2 - $Y1 < $Radius*2 ) { $Radius = floor((($Y2-$Y1))/4); }
292
+
293
+        $RestoreShadow = $this->Shadow;
294
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
295
+        {
296
+        $this->Shadow = FALSE;
297
+        $this->drawRoundedFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
298
+        }
299
+
300
+        $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE);
301
+
302
+        if ( $Radius <= 0 ) { $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color); return(0); }
303
+
304
+        $YTop    = $Y1+$Radius;
305
+        $YBottom = $Y2-$Radius;
306
+
307
+        $Step = 360 / (2 * PI * $Radius);
308
+        $Positions = ""; $Radius--; $MinY = ""; $MaxY = "";
309
+        for($i=0;$i<=90;$i=$i+$Step)
310
+        {
311
+        $Xp1 = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
312
+        $Xp2 = cos(((90-$i)+270)*PI/180) * $Radius + $X2 - $Radius;
313
+        $Yp  = floor(sin(($i+180)*PI/180) * $Radius + $YTop);
314
+        if ( $MinY == "" || $Yp > $MinY ) { $MinY = $Yp; }
315
+
316
+        if ( $Xp1 <= floor($X1) )  { $Xp1++; }
317
+        if ( $Xp2 >= floor($X2) )  { $Xp2--; }
318
+        $Xp1++;
319
+
320
+        if ( !isset($Positions[$Yp]) )
321 321
         { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; }
322
-       else
322
+        else
323 323
         { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"]+$Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"]+$Xp2)/2; }
324 324
 
325
-       $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
326
-       $Xp2 = cos((90-$i)*PI/180) * $Radius + $X2 - $Radius;
327
-       $Yp  = floor(sin(($i+90)*PI/180) * $Radius + $YBottom);
328
-       if ( $MaxY == "" || $Yp < $MaxY ) { $MaxY = $Yp; }
325
+        $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
326
+        $Xp2 = cos((90-$i)*PI/180) * $Radius + $X2 - $Radius;
327
+        $Yp  = floor(sin(($i+90)*PI/180) * $Radius + $YBottom);
328
+        if ( $MaxY == "" || $Yp < $MaxY ) { $MaxY = $Yp; }
329 329
 
330
-       if ( $Xp1 <= floor($X1) ) { $Xp1++; }
331
-       if ( $Xp2 >= floor($X2) ) { $Xp2--; }
332
-       $Xp1++;
330
+        if ( $Xp1 <= floor($X1) ) { $Xp1++; }
331
+        if ( $Xp2 >= floor($X2) ) { $Xp2--; }
332
+        $Xp1++;
333 333
 
334
-       if ( !isset($Positions[$Yp]) )
334
+        if ( !isset($Positions[$Yp]) )
335 335
         { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; }
336
-       else
336
+        else
337 337
         { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"]+$Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"]+$Xp2)/2; }
338
-      }
338
+        }
339 339
 
340
-     $ManualColor  = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
341
-     foreach($Positions as $Yp => $Bounds)
342
-      {
343
-       $X1 = $Bounds["X1"]; $X1Dec = $this->getFirstDecimal($X1); if ( $X1Dec != 0 ) { $X1 = floor($X1)+1; }
344
-       $X2 = $Bounds["X2"]; $X2Dec = $this->getFirstDecimal($X2); if ( $X2Dec != 0 ) { $X2 = floor($X2)-1; }
345
-       imageline($this->Picture,$X1,$Yp,$X2,$Yp,$ManualColor);
346
-      }
347
-     $this->drawFilledRectangle($X1,$MinY+1,floor($X2),$MaxY-1,$Color);
340
+        $ManualColor  = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
341
+        foreach($Positions as $Yp => $Bounds)
342
+        {
343
+        $X1 = $Bounds["X1"]; $X1Dec = $this->getFirstDecimal($X1); if ( $X1Dec != 0 ) { $X1 = floor($X1)+1; }
344
+        $X2 = $Bounds["X2"]; $X2Dec = $this->getFirstDecimal($X2); if ( $X2Dec != 0 ) { $X2 = floor($X2)-1; }
345
+        imageline($this->Picture,$X1,$Yp,$X2,$Yp,$ManualColor);
346
+        }
347
+        $this->drawFilledRectangle($X1,$MinY+1,floor($X2),$MaxY-1,$Color);
348 348
 
349
-     $Radius++;
350
-     $this->drawRoundedRectangle($X1,$Y1,$X2+1,$Y2-1,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
349
+        $Radius++;
350
+        $this->drawRoundedRectangle($X1,$Y1,$X2+1,$Y2-1,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
351 351
 
352
-     $this->Shadow = $RestoreShadow;
352
+        $this->Shadow = $RestoreShadow;
353 353
     }
354 354
 
355
-   /* Draw a rectangle with rounded corners */
356
-   function drawRoundedFilledRectangle_deprecated($X1,$Y1,$X2,$Y2,$Radius,$Format="")
355
+    /* Draw a rectangle with rounded corners */
356
+    function drawRoundedFilledRectangle_deprecated($X1,$Y1,$X2,$Y2,$Radius,$Format="")
357 357
     {
358
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
359
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
360
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
361
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
362
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
363
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
364
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
365
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
358
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
359
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
360
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
361
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
362
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
363
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
364
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
365
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
366 366
 
367
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
368
-     if ( $BorderR == -1 ) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
367
+        if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
368
+        if ( $BorderR == -1 ) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
369 369
 
370
-     list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
370
+        list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
371 371
 
372
-     if ( $X2 - $X1 < $Radius ) { $Radius = floor((($X2-$X1)+2)/2); }
373
-     if ( $Y2 - $Y1 < $Radius ) { $Radius = floor((($Y2-$Y1)+2)/2); }
372
+        if ( $X2 - $X1 < $Radius ) { $Radius = floor((($X2-$X1)+2)/2); }
373
+        if ( $Y2 - $Y1 < $Radius ) { $Radius = floor((($Y2-$Y1)+2)/2); }
374 374
 
375
-     $RestoreShadow = $this->Shadow;
376
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
377
-      {
378
-       $this->Shadow = FALSE;
379
-       $this->drawRoundedFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
380
-      }
375
+        $RestoreShadow = $this->Shadow;
376
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
377
+        {
378
+        $this->Shadow = FALSE;
379
+        $this->drawRoundedFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
380
+        }
381 381
 
382
-     if ( $this->getFirstDecimal($X2) >= 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
383
-     if ( $this->getFirstDecimal($X1) <= 5 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
382
+        if ( $this->getFirstDecimal($X2) >= 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
383
+        if ( $this->getFirstDecimal($X1) <= 5 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
384 384
 
385
-     if ( !$this->Antialias ) { $XOffset1 = 1; $XOffset2 = 1; }
385
+        if ( !$this->Antialias ) { $XOffset1 = 1; $XOffset2 = 1; }
386 386
 
387
-     $YTop    = floor($Y1+$Radius);
388
-     $YBottom = floor($Y2-$Radius);
387
+        $YTop    = floor($Y1+$Radius);
388
+        $YBottom = floor($Y2-$Radius);
389 389
 
390
-     $this->drawFilledRectangle($X1-$XOffset1,$YTop,$X2+$XOffset2,$YBottom,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE));
390
+        $this->drawFilledRectangle($X1-$XOffset1,$YTop,$X2+$XOffset2,$YBottom,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE));
391 391
 
392
-     $Step = 360 / (2 * PI * $Radius);
393
-     $Color  = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
394
-     $Color2 = $this->allocateColor($this->Picture,255,0,0,$Alpha);
395
-     $Drawn = "";
392
+        $Step = 360 / (2 * PI * $Radius);
393
+        $Color  = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
394
+        $Color2 = $this->allocateColor($this->Picture,255,0,0,$Alpha);
395
+        $Drawn = "";
396 396
 
397
-     if ( $Alpha < 100 )  { $Drawn[$YTop] = FALSE; }
398
-     if ( $Alpha < 100 )  { $Drawn[$YBottom] = TRUE; }
397
+        if ( $Alpha < 100 )  { $Drawn[$YTop] = FALSE; }
398
+        if ( $Alpha < 100 )  { $Drawn[$YBottom] = TRUE; }
399 399
      
400
-     for($i=0;$i<=90;$i=$i+$Step)
401
-      {
402
-       $Xp1 = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
403
-       $Xp2 = cos(((90-$i)+270)*PI/180) * $Radius + $X2 - $Radius;
404
-       $Yp  = sin(($i+180)*PI/180) * $Radius + $YTop;
400
+        for($i=0;$i<=90;$i=$i+$Step)
401
+        {
402
+        $Xp1 = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
403
+        $Xp2 = cos(((90-$i)+270)*PI/180) * $Radius + $X2 - $Radius;
404
+        $Yp  = sin(($i+180)*PI/180) * $Radius + $YTop;
405 405
 
406
-       if ( $this->getFirstDecimal($Xp1) > 5 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
407
-       if ( $this->getFirstDecimal($Xp2) > 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
408
-       if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
406
+        if ( $this->getFirstDecimal($Xp1) > 5 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
407
+        if ( $this->getFirstDecimal($Xp2) > 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
408
+        if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
409 409
 
410
-       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
410
+        if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
411 411
         imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
412 412
 
413
-       $Drawn[$Yp+$YOffset] = $Xp2;
413
+        $Drawn[$Yp+$YOffset] = $Xp2;
414 414
 
415
-       $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
416
-       $Xp2 = cos((90-$i)*PI/180) * $Radius + $X2 - $Radius;
417
-       $Yp  = sin(($i+90)*PI/180) * $Radius + $YBottom;
415
+        $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
416
+        $Xp2 = cos((90-$i)*PI/180) * $Radius + $X2 - $Radius;
417
+        $Yp  = sin(($i+90)*PI/180) * $Radius + $YBottom;
418 418
 
419
-       if ( $this->getFirstDecimal($Xp1) > 7 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
420
-       if ( $this->getFirstDecimal($Xp2) > 7 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
421
-       if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
419
+        if ( $this->getFirstDecimal($Xp1) > 7 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
420
+        if ( $this->getFirstDecimal($Xp2) > 7 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
421
+        if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
422 422
 
423
-       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
423
+        if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
424 424
         imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
425 425
 
426
-       $Drawn[$Yp+$YOffset] = $Xp2;
427
-      }
426
+        $Drawn[$Yp+$YOffset] = $Xp2;
427
+        }
428 428
 
429
-     $this->drawRoundedRectangle($X1,$Y1,$X2,$Y2,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
429
+        $this->drawRoundedRectangle($X1,$Y1,$X2,$Y2,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
430 430
 
431
-     $this->Shadow = $RestoreShadow;
431
+        $this->Shadow = $RestoreShadow;
432 432
     }
433 433
 
434
-   /* Draw a rectangle */
435
-   function drawRectangle($X1,$Y1,$X2,$Y2,$Format="")
434
+    /* Draw a rectangle */
435
+    function drawRectangle($X1,$Y1,$X2,$Y2,$Format="")
436 436
     {
437
-     $R		= isset($Format["R"]) ? $Format["R"] : 0;
438
-     $G		= isset($Format["G"]) ? $Format["G"] : 0;
439
-     $B		= isset($Format["B"]) ? $Format["B"] : 0;
440
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
441
-     $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
442
-     $NoAngle	= isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
443
-
444
-     if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
445
-     if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
446
-
447
-     if ( $this->Antialias )
448
-      {
449
-       if ( $NoAngle )
450
-        {
451
-         $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
452
-         $this->drawLine($X2,$Y1+1,$X2,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
453
-         $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
454
-         $this->drawLine($X1,$Y1+1,$X1,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
455
-        }
456
-       else
457
-        {
458
-         $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
459
-         $this->drawLine($X2,$Y1,$X2,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
460
-         $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
461
-         $this->drawLine($X1,$Y1,$X1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
462
-        }
463
-      }
464
-     else
465
-      {
466
-       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
467
-       imagerectangle($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
468
-      }
437
+        $R		= isset($Format["R"]) ? $Format["R"] : 0;
438
+        $G		= isset($Format["G"]) ? $Format["G"] : 0;
439
+        $B		= isset($Format["B"]) ? $Format["B"] : 0;
440
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
441
+        $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
442
+        $NoAngle	= isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
443
+
444
+        if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
445
+        if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
446
+
447
+        if ( $this->Antialias )
448
+        {
449
+        if ( $NoAngle )
450
+        {
451
+            $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
452
+            $this->drawLine($X2,$Y1+1,$X2,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
453
+            $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
454
+            $this->drawLine($X1,$Y1+1,$X1,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
455
+        }
456
+        else
457
+        {
458
+            $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
459
+            $this->drawLine($X2,$Y1,$X2,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
460
+            $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
461
+            $this->drawLine($X1,$Y1,$X1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
462
+        }
463
+        }
464
+        else
465
+        {
466
+        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
467
+        imagerectangle($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
468
+        }
469 469
     }
470 470
 
471
-   /* Draw a filled rectangle */
472
-   function drawFilledRectangle($X1,$Y1,$X2,$Y2,$Format="")
471
+    /* Draw a filled rectangle */
472
+    function drawFilledRectangle($X1,$Y1,$X2,$Y2,$Format="")
473 473
     {
474
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
475
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
476
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
477
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
478
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
479
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
480
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
481
-     $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
482
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
483
-     $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
484
-     $NoAngle		= isset($Format["NoAngle"]) ? $Format["NoAngle"] : NULL;
485
-     $Dash		= isset($Format["Dash"]) ? $Format["Dash"] : FALSE;
486
-     $DashStep		= isset($Format["DashStep"]) ? $Format["DashStep"] : 4;
487
-     $DashR		= isset($Format["DashR"]) ? $Format["DashR"] : 0;
488
-     $DashG		= isset($Format["DashG"]) ? $Format["DashG"] : 0;
489
-     $DashB		= isset($Format["DashB"]) ? $Format["DashB"] : 0;
490
-     $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
491
-
492
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
493
-
494
-     if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
495
-     if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
496
-
497
-     $RestoreShadow = $this->Shadow;
498
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
499
-      {
500
-       $this->Shadow = FALSE;
501
-       $this->drawFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
502
-      }
503
-
504
-     $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
505
-     if ( $NoAngle )
506
-      {
507
-       imagefilledrectangle($this->Picture,ceil($X1)+1,ceil($Y1),floor($X2)-1,floor($Y2),$Color);
508
-       imageline($this->Picture,ceil($X1),ceil($Y1)+1,ceil($X1),floor($Y2)-1,$Color);
509
-       imageline($this->Picture,floor($X2),ceil($Y1)+1,floor($X2),floor($Y2)-1,$Color);
510
-      }
511
-     else
512
-      imagefilledrectangle($this->Picture,ceil($X1),ceil($Y1),floor($X2),floor($Y2),$Color);
513
-
514
-     if ( $Dash )
515
-      {
516
-       if ( $BorderR != -1 ) { $iX1=$X1+1; $iY1=$Y1+1; $iX2=$X2-1; $iY2=$Y2-1; } else { $iX1=$X1; $iY1=$Y1; $iX2=$X2; $iY2=$Y2; }
517
-
518
-       $Color = $this->allocateColor($this->Picture,$DashR,$DashG,$DashB,$Alpha);
519
-       $Y=$iY1-$DashStep;
520
-       for($X=$iX1; $X<=$iX2+($iY2-$iY1); $X=$X+$DashStep)
521
-        {
522
-         $Y=$Y+$DashStep;
523
-         if ( $X > $iX2 ) { $Xa = $X-($X-$iX2); $Ya = $iY1+($X-$iX2); } else { $Xa = $X; $Ya = $iY1; }
524
-         if ( $Y > $iY2 ) { $Xb = $iX1+($Y-$iY2); $Yb = $Y-($Y-$iY2); } else { $Xb = $iX1; $Yb = $Y; }
525
-         imageline($this->Picture,$Xa,$Ya,$Xb,$Yb,$Color);
526
-        }
527
-      }
528
-
529
-     if ( $this->Antialias && !$NoBorder )
530
-      {
531
-       if ( $X1 < ceil($X1) )
532
-        {
533
-         $AlphaA = $Alpha * (ceil($X1) - $X1);
534
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
535
-         imageline($this->Picture,ceil($X1)-1,ceil($Y1),ceil($X1)-1,floor($Y2),$Color);
536
-        }
537
-
538
-       if ( $Y1 < ceil($Y1) )
539
-        {
540
-         $AlphaA = $Alpha * (ceil($Y1) - $Y1);
541
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
542
-         imageline($this->Picture,ceil($X1),ceil($Y1)-1,floor($X2),ceil($Y1)-1,$Color);
543
-        }
544
-
545
-       if ( $X2 > floor($X2) )
546
-        {
547
-         $AlphaA = $Alpha * (.5-($X2 - floor($X2)));
548
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
549
-         imageline($this->Picture,floor($X2)+1,ceil($Y1),floor($X2)+1,floor($Y2),$Color);
474
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
475
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
476
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
477
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
478
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
479
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
480
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
481
+        $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
482
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
483
+        $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
484
+        $NoAngle		= isset($Format["NoAngle"]) ? $Format["NoAngle"] : NULL;
485
+        $Dash		= isset($Format["Dash"]) ? $Format["Dash"] : FALSE;
486
+        $DashStep		= isset($Format["DashStep"]) ? $Format["DashStep"] : 4;
487
+        $DashR		= isset($Format["DashR"]) ? $Format["DashR"] : 0;
488
+        $DashG		= isset($Format["DashG"]) ? $Format["DashG"] : 0;
489
+        $DashB		= isset($Format["DashB"]) ? $Format["DashB"] : 0;
490
+        $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
491
+
492
+        if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
493
+
494
+        if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
495
+        if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
496
+
497
+        $RestoreShadow = $this->Shadow;
498
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
499
+        {
500
+        $this->Shadow = FALSE;
501
+        $this->drawFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
502
+        }
503
+
504
+        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
505
+        if ( $NoAngle )
506
+        {
507
+        imagefilledrectangle($this->Picture,ceil($X1)+1,ceil($Y1),floor($X2)-1,floor($Y2),$Color);
508
+        imageline($this->Picture,ceil($X1),ceil($Y1)+1,ceil($X1),floor($Y2)-1,$Color);
509
+        imageline($this->Picture,floor($X2),ceil($Y1)+1,floor($X2),floor($Y2)-1,$Color);
510
+        }
511
+        else
512
+        imagefilledrectangle($this->Picture,ceil($X1),ceil($Y1),floor($X2),floor($Y2),$Color);
513
+
514
+        if ( $Dash )
515
+        {
516
+        if ( $BorderR != -1 ) { $iX1=$X1+1; $iY1=$Y1+1; $iX2=$X2-1; $iY2=$Y2-1; } else { $iX1=$X1; $iY1=$Y1; $iX2=$X2; $iY2=$Y2; }
517
+
518
+        $Color = $this->allocateColor($this->Picture,$DashR,$DashG,$DashB,$Alpha);
519
+        $Y=$iY1-$DashStep;
520
+        for($X=$iX1; $X<=$iX2+($iY2-$iY1); $X=$X+$DashStep)
521
+        {
522
+            $Y=$Y+$DashStep;
523
+            if ( $X > $iX2 ) { $Xa = $X-($X-$iX2); $Ya = $iY1+($X-$iX2); } else { $Xa = $X; $Ya = $iY1; }
524
+            if ( $Y > $iY2 ) { $Xb = $iX1+($Y-$iY2); $Yb = $Y-($Y-$iY2); } else { $Xb = $iX1; $Yb = $Y; }
525
+            imageline($this->Picture,$Xa,$Ya,$Xb,$Yb,$Color);
526
+        }
527
+        }
528
+
529
+        if ( $this->Antialias && !$NoBorder )
530
+        {
531
+        if ( $X1 < ceil($X1) )
532
+        {
533
+            $AlphaA = $Alpha * (ceil($X1) - $X1);
534
+            $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
535
+            imageline($this->Picture,ceil($X1)-1,ceil($Y1),ceil($X1)-1,floor($Y2),$Color);
536
+        }
537
+
538
+        if ( $Y1 < ceil($Y1) )
539
+        {
540
+            $AlphaA = $Alpha * (ceil($Y1) - $Y1);
541
+            $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
542
+            imageline($this->Picture,ceil($X1),ceil($Y1)-1,floor($X2),ceil($Y1)-1,$Color);
543
+        }
544
+
545
+        if ( $X2 > floor($X2) )
546
+        {
547
+            $AlphaA = $Alpha * (.5-($X2 - floor($X2)));
548
+            $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
549
+            imageline($this->Picture,floor($X2)+1,ceil($Y1),floor($X2)+1,floor($Y2),$Color);
550 550
         } 
551 551
 
552
-       if ( $Y2 > floor($Y2) )
552
+        if ( $Y2 > floor($Y2) )
553 553
         {
554
-         $AlphaA = $Alpha * (.5-($Y2 - floor($Y2)));
555
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
556
-         imageline($this->Picture,ceil($X1),floor($Y2)+1,floor($X2),floor($Y2)+1,$Color);
554
+            $AlphaA = $Alpha * (.5-($Y2 - floor($Y2)));
555
+            $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
556
+            imageline($this->Picture,ceil($X1),floor($Y2)+1,floor($X2),floor($Y2)+1,$Color);
557
+        }
557 558
         }
558
-      }
559 559
 
560
-     if ( $BorderR != -1 )
561
-      $this->drawRectangle($X1,$Y1,$X2,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
560
+        if ( $BorderR != -1 )
561
+        $this->drawRectangle($X1,$Y1,$X2,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
562 562
 
563
-     $this->Shadow = $RestoreShadow;
563
+        $this->Shadow = $RestoreShadow;
564 564
     }
565 565
 
566
-   /* Draw a rectangular marker of the specified size */
567
-   function drawRectangleMarker($X,$Y,$Format="")
566
+    /* Draw a rectangular marker of the specified size */
567
+    function drawRectangleMarker($X,$Y,$Format="")
568 568
     {
569
-     $Size = isset($Format["Size"]) ? $Format["Size"] : 4;
569
+        $Size = isset($Format["Size"]) ? $Format["Size"] : 4;
570 570
 
571
-     $HalfSize = floor($Size/2);
572
-     $this->drawFilledRectangle($X-$HalfSize,$Y-$HalfSize,$X+$HalfSize,$Y+$HalfSize,$Format);
571
+        $HalfSize = floor($Size/2);
572
+        $this->drawFilledRectangle($X-$HalfSize,$Y-$HalfSize,$X+$HalfSize,$Y+$HalfSize,$Format);
573 573
     }
574 574
 
575
-   /* Drawn a spline based on the bezier function */
576
-   function drawSpline($Coordinates,$Format="")
575
+    /* Drawn a spline based on the bezier function */
576
+    function drawSpline($Coordinates,$Format="")
577 577
     {
578
-     $R		= isset($Format["R"]) ? $Format["R"] : 0;
579
-     $G		= isset($Format["G"]) ? $Format["G"] : 0;
580
-     $B		= isset($Format["B"]) ? $Format["B"] : 0;
581
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
582
-     $Force	= isset($Format["Force"]) ? $Format["Force"] : 30;
583
-     $Forces	= isset($Format["Forces"]) ? $Format["Forces"] : NULL;
584
-     $ShowC	= isset($Format["ShowControl"]) ? $Format["ShowControl"] : FALSE;
585
-     $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
586
-     $PathOnly	= isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
587
-     $Weight	= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
588
-
589
-     $Cpt = NULL; $Mode = NULL; $Result = "";
590
-     for($i=1;$i<=count($Coordinates)-1;$i++)
591
-      {
592
-       $X1 = $Coordinates[$i-1][0]; $Y1 = $Coordinates[$i-1][1];
593
-       $X2 = $Coordinates[$i][0];   $Y2 = $Coordinates[$i][1];
594
-
595
-       if ( $Forces != NULL ) { $Force = $Forces[$i]; }
596
-
597
-       /* First segment */
598
-       if ( $i == 1 )
578
+        $R		= isset($Format["R"]) ? $Format["R"] : 0;
579
+        $G		= isset($Format["G"]) ? $Format["G"] : 0;
580
+        $B		= isset($Format["B"]) ? $Format["B"] : 0;
581
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
582
+        $Force	= isset($Format["Force"]) ? $Format["Force"] : 30;
583
+        $Forces	= isset($Format["Forces"]) ? $Format["Forces"] : NULL;
584
+        $ShowC	= isset($Format["ShowControl"]) ? $Format["ShowControl"] : FALSE;
585
+        $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
586
+        $PathOnly	= isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
587
+        $Weight	= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
588
+
589
+        $Cpt = NULL; $Mode = NULL; $Result = "";
590
+        for($i=1;$i<=count($Coordinates)-1;$i++)
591
+        {
592
+        $X1 = $Coordinates[$i-1][0]; $Y1 = $Coordinates[$i-1][1];
593
+        $X2 = $Coordinates[$i][0];   $Y2 = $Coordinates[$i][1];
594
+
595
+        if ( $Forces != NULL ) { $Force = $Forces[$i]; }
596
+
597
+        /* First segment */
598
+        if ( $i == 1 )
599 599
         { $Xv1 = $X1; $Yv1 = $Y1; }
600
-       else
600
+        else
601 601
         {
602
-         $Angle1 = $this->getAngle($XLast,$YLast,$X1,$Y1);
603
-         $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
604
-         $XOff = cos($Angle2 * PI / 180) * $Force + $X1;
605
-         $YOff = sin($Angle2 * PI / 180) * $Force + $Y1;
602
+            $Angle1 = $this->getAngle($XLast,$YLast,$X1,$Y1);
603
+            $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
604
+            $XOff = cos($Angle2 * PI / 180) * $Force + $X1;
605
+            $YOff = sin($Angle2 * PI / 180) * $Force + $Y1;
606 606
 
607
-         $Xv1 = cos($Angle1 * PI / 180) * $Force + $XOff;
608
-         $Yv1 = sin($Angle1 * PI / 180) * $Force + $YOff;
607
+            $Xv1 = cos($Angle1 * PI / 180) * $Force + $XOff;
608
+            $Yv1 = sin($Angle1 * PI / 180) * $Force + $YOff;
609 609
         }
610 610
 
611
-       /* Last segment */
612
-       if ( $i == count($Coordinates)-1 )
611
+        /* Last segment */
612
+        if ( $i == count($Coordinates)-1 )
613 613
         { $Xv2 = $X2; $Yv2 = $Y2; }
614
-       else
614
+        else
615 615
         {
616
-         $Angle1 = $this->getAngle($X2,$Y2,$Coordinates[$i+1][0],$Coordinates[$i+1][1]);
617
-         $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
618
-         $XOff = cos(($Angle2+180) * PI / 180) * $Force + $X2;
619
-         $YOff = sin(($Angle2+180) * PI / 180) * $Force + $Y2;
616
+            $Angle1 = $this->getAngle($X2,$Y2,$Coordinates[$i+1][0],$Coordinates[$i+1][1]);
617
+            $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
618
+            $XOff = cos(($Angle2+180) * PI / 180) * $Force + $X2;
619
+            $YOff = sin(($Angle2+180) * PI / 180) * $Force + $Y2;
620 620
 
621
-         $Xv2 = cos(($Angle1+180) * PI / 180) * $Force + $XOff;
622
-         $Yv2 = sin(($Angle1+180) * PI / 180) * $Force + $YOff;
621
+            $Xv2 = cos(($Angle1+180) * PI / 180) * $Force + $XOff;
622
+            $Yv2 = sin(($Angle1+180) * PI / 180) * $Force + $YOff;
623 623
         }
624 624
 
625
-       $Path = $this->drawBezier($X1,$Y1,$X2,$Y2,$Xv1,$Yv1,$Xv2,$Yv2,$Format);
626
-       if ($PathOnly) { $Result[] = $Path; }
625
+        $Path = $this->drawBezier($X1,$Y1,$X2,$Y2,$Xv1,$Yv1,$Xv2,$Yv2,$Format);
626
+        if ($PathOnly) { $Result[] = $Path; }
627 627
 
628
-       $XLast = $X1; $YLast = $Y1;
629
-      }
628
+        $XLast = $X1; $YLast = $Y1;
629
+        }
630 630
 
631
-     return($Result);
631
+        return($Result);
632 632
     }
633 633
 
634
-   /* Draw a bezier curve with two controls points */
635
-   function drawBezier($X1,$Y1,$X2,$Y2,$Xv1,$Yv1,$Xv2,$Yv2,$Format="")
634
+    /* Draw a bezier curve with two controls points */
635
+    function drawBezier($X1,$Y1,$X2,$Y2,$Xv1,$Yv1,$Xv2,$Yv2,$Format="")
636 636
     {
637
-     $R		= isset($Format["R"]) ? $Format["R"] : 0;
638
-     $G		= isset($Format["G"]) ? $Format["G"] : 0;
639
-     $B		= isset($Format["B"]) ? $Format["B"] : 0;
640
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
641
-     $ShowC	= isset($Format["ShowControl"]) ? $Format["ShowControl"] : FALSE;
642
-     $Segments	= isset($Format["Segments"]) ? $Format["Segments"] : NULL;
643
-     $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
644
-     $NoDraw    = isset($Format["NoDraw"]) ? $Format["NoDraw"] : FALSE;
645
-     $PathOnly  = isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
646
-     $Weight    = isset($Format["Weight"]) ? $Format["Weight"] : NULL;
647
-     $DrawArrow		= isset($Format["DrawArrow"]) ? $Format["DrawArrow"] : FALSE;
648
-     $ArrowSize		= isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 10;
649
-     $ArrowRatio	= isset($Format["ArrowRatio"]) ? $Format["ArrowRatio"] : .5;
650
-     $ArrowTwoHeads	= isset($Format["ArrowTwoHeads"]) ? $Format["ArrowTwoHeads"] : FALSE;
651
-
652
-     if ( $Segments == NULL )
653
-      {
654
-       $Length    = $this->getLength($X1,$Y1,$X2,$Y2);
655
-       $Precision = ($Length*125)/1000;
656
-      }
657
-     else
658
-      $Precision = $Segments;
637
+        $R		= isset($Format["R"]) ? $Format["R"] : 0;
638
+        $G		= isset($Format["G"]) ? $Format["G"] : 0;
639
+        $B		= isset($Format["B"]) ? $Format["B"] : 0;
640
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
641
+        $ShowC	= isset($Format["ShowControl"]) ? $Format["ShowControl"] : FALSE;
642
+        $Segments	= isset($Format["Segments"]) ? $Format["Segments"] : NULL;
643
+        $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
644
+        $NoDraw    = isset($Format["NoDraw"]) ? $Format["NoDraw"] : FALSE;
645
+        $PathOnly  = isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
646
+        $Weight    = isset($Format["Weight"]) ? $Format["Weight"] : NULL;
647
+        $DrawArrow		= isset($Format["DrawArrow"]) ? $Format["DrawArrow"] : FALSE;
648
+        $ArrowSize		= isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 10;
649
+        $ArrowRatio	= isset($Format["ArrowRatio"]) ? $Format["ArrowRatio"] : .5;
650
+        $ArrowTwoHeads	= isset($Format["ArrowTwoHeads"]) ? $Format["ArrowTwoHeads"] : FALSE;
651
+
652
+        if ( $Segments == NULL )
653
+        {
654
+        $Length    = $this->getLength($X1,$Y1,$X2,$Y2);
655
+        $Precision = ($Length*125)/1000;
656
+        }
657
+        else
658
+        $Precision = $Segments;
659 659
 
660
-     $P[0]["X"] = $X1;  $P[0]["Y"] = $Y1;
661
-     $P[1]["X"] = $Xv1; $P[1]["Y"] = $Yv1;
662
-     $P[2]["X"] = $Xv2; $P[2]["Y"] = $Yv2;
663
-     $P[3]["X"] = $X2;  $P[3]["Y"] = $Y2;
660
+        $P[0]["X"] = $X1;  $P[0]["Y"] = $Y1;
661
+        $P[1]["X"] = $Xv1; $P[1]["Y"] = $Yv1;
662
+        $P[2]["X"] = $Xv2; $P[2]["Y"] = $Yv2;
663
+        $P[3]["X"] = $X2;  $P[3]["Y"] = $Y2;
664 664
 
665
-     /* Compute the bezier points */
666
-     $Q = ""; $ID = 0; $Path = "";
667
-     for($i=0;$i<=$Precision;$i=$i+1)
668
-      {
669
-       $u = $i / $Precision;
665
+        /* Compute the bezier points */
666
+        $Q = ""; $ID = 0; $Path = "";
667
+        for($i=0;$i<=$Precision;$i=$i+1)
668
+        {
669
+        $u = $i / $Precision;
670 670
 
671
-       $C    = "";
672
-       $C[0] = (1 - $u) * (1 - $u) * (1 - $u);
673
-       $C[1] = ($u * 3) * (1 - $u) * (1 - $u);
674
-       $C[2] = 3 * $u * $u * (1 - $u);
675
-       $C[3] = $u * $u * $u;
671
+        $C    = "";
672
+        $C[0] = (1 - $u) * (1 - $u) * (1 - $u);
673
+        $C[1] = ($u * 3) * (1 - $u) * (1 - $u);
674
+        $C[2] = 3 * $u * $u * (1 - $u);
675
+        $C[3] = $u * $u * $u;
676 676
 
677
-       for($j=0;$j<=3;$j++)
677
+        for($j=0;$j<=3;$j++)
678 678
         {
679
-         if ( !isset($Q[$ID]) ) { $Q[$ID] = ""; }
680
-         if ( !isset($Q[$ID]["X"]) ) { $Q[$ID]["X"] = 0; }
681
-         if ( !isset($Q[$ID]["Y"]) ) { $Q[$ID]["Y"] = 0; }
679
+            if ( !isset($Q[$ID]) ) { $Q[$ID] = ""; }
680
+            if ( !isset($Q[$ID]["X"]) ) { $Q[$ID]["X"] = 0; }
681
+            if ( !isset($Q[$ID]["Y"]) ) { $Q[$ID]["Y"] = 0; }
682 682
 
683
-         $Q[$ID]["X"] = $Q[$ID]["X"] + $P[$j]["X"] * $C[$j];
684
-         $Q[$ID]["Y"] = $Q[$ID]["Y"] + $P[$j]["Y"] * $C[$j];
683
+            $Q[$ID]["X"] = $Q[$ID]["X"] + $P[$j]["X"] * $C[$j];
684
+            $Q[$ID]["Y"] = $Q[$ID]["Y"] + $P[$j]["Y"] * $C[$j];
685 685
         }
686
-       $ID++;
687
-      }        
688
-     $Q[$ID]["X"] = $X2; $Q[$ID]["Y"] = $Y2;
686
+        $ID++;
687
+        }        
688
+        $Q[$ID]["X"] = $X2; $Q[$ID]["Y"] = $Y2;
689 689
 
690
-     if ( !$NoDraw )
691
-      {
692
-       /* Display the control points */
693
-       if ( $ShowC && !$PathOnly )
690
+        if ( !$NoDraw )
691
+        {
692
+        /* Display the control points */
693
+        if ( $ShowC && !$PathOnly )
694 694
         {
695
-         $Xv1 = floor($Xv1); $Yv1 = floor($Yv1); $Xv2 = floor($Xv2); $Yv2 = floor($Yv2);
695
+            $Xv1 = floor($Xv1); $Yv1 = floor($Yv1); $Xv2 = floor($Xv2); $Yv2 = floor($Yv2);
696 696
 
697
-         $this->drawLine($X1,$Y1,$X2,$Y2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>30));
697
+            $this->drawLine($X1,$Y1,$X2,$Y2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>30));
698 698
 
699
-         $MyMarkerSettings = array("R"=>255,"G"=>0,"B"=>0,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
700
-         $this->drawRectangleMarker($Xv1,$Yv1,$MyMarkerSettings);
701
-         $this->drawText($Xv1+4,$Yv1,"v1");
702
-         $MyMarkerSettings = array("R"=>0,"G"=>0,"B"=>255,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
703
-         $this->drawRectangleMarker($Xv2,$Yv2,$MyMarkerSettings);
704
-         $this->drawText($Xv2+4,$Yv2,"v2");
699
+            $MyMarkerSettings = array("R"=>255,"G"=>0,"B"=>0,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
700
+            $this->drawRectangleMarker($Xv1,$Yv1,$MyMarkerSettings);
701
+            $this->drawText($Xv1+4,$Yv1,"v1");
702
+            $MyMarkerSettings = array("R"=>0,"G"=>0,"B"=>255,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
703
+            $this->drawRectangleMarker($Xv2,$Yv2,$MyMarkerSettings);
704
+            $this->drawText($Xv2+4,$Yv2,"v2");
705 705
         }
706 706
 
707
-       /* Draw the bezier */
708
-       $LastX = NULL; $LastY = NULL; $Cpt = NULL; $Mode = NULL; $ArrowS = NULL;
709
-       foreach ($Q as $Key => $Point)
707
+        /* Draw the bezier */
708
+        $LastX = NULL; $LastY = NULL; $Cpt = NULL; $Mode = NULL; $ArrowS = NULL;
709
+        foreach ($Q as $Key => $Point)
710 710
         {
711
-         $X = $Point["X"]; $Y = $Point["Y"];
711
+            $X = $Point["X"]; $Y = $Point["Y"];
712 712
 
713
-         /* Get the first segment */
714
-         if ( $ArrowS == NULL && $LastX != NULL && $LastY != NULL )
715
-          { $ArrowS["X2"] = $LastX; $ArrowS["Y2"] = $LastY; $ArrowS["X1"] = $X; $ArrowS["Y1"] = $Y; }
713
+            /* Get the first segment */
714
+            if ( $ArrowS == NULL && $LastX != NULL && $LastY != NULL )
715
+            { $ArrowS["X2"] = $LastX; $ArrowS["Y2"] = $LastY; $ArrowS["X1"] = $X; $ArrowS["Y1"] = $Y; }
716 716
 
717
-         if ( $LastX != NULL && $LastY != NULL && !$PathOnly)
718
-          list($Cpt,$Mode) = $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Cpt"=>$Cpt,"Mode"=>$Mode,"Weight"=>$Weight));
717
+            if ( $LastX != NULL && $LastY != NULL && !$PathOnly)
718
+            list($Cpt,$Mode) = $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Cpt"=>$Cpt,"Mode"=>$Mode,"Weight"=>$Weight));
719 719
 
720
-         /* Get the last segment */
721
-         $ArrowE["X1"] = $LastX; $ArrowE["Y1"] = $LastY; $ArrowE["X2"] = $X; $ArrowE["Y2"] = $Y;
720
+            /* Get the last segment */
721
+            $ArrowE["X1"] = $LastX; $ArrowE["Y1"] = $LastY; $ArrowE["X2"] = $X; $ArrowE["Y2"] = $Y;
722 722
 
723
-         $LastX = $X; $LastY = $Y;
723
+            $LastX = $X; $LastY = $Y;
724 724
         }
725 725
 
726
-       if ( $DrawArrow && !$PathOnly )
726
+        if ( $DrawArrow && !$PathOnly )
727 727
         {
728
-         $ArrowSettings = array("FillR"=>$R,"FillG"=>$G,"FillB"=>$B,"Alpha"=>$Alpha,"Size"=>$ArrowSize,"Ratio"=>$ArrowRatio);
729
-         if ( $ArrowTwoHeads )
730
-          $this->drawArrow($ArrowS["X1"],$ArrowS["Y1"],$ArrowS["X2"],$ArrowS["Y2"],$ArrowSettings);
728
+            $ArrowSettings = array("FillR"=>$R,"FillG"=>$G,"FillB"=>$B,"Alpha"=>$Alpha,"Size"=>$ArrowSize,"Ratio"=>$ArrowRatio);
729
+            if ( $ArrowTwoHeads )
730
+            $this->drawArrow($ArrowS["X1"],$ArrowS["Y1"],$ArrowS["X2"],$ArrowS["Y2"],$ArrowSettings);
731 731
 
732
-         $this->drawArrow($ArrowE["X1"],$ArrowE["Y1"],$ArrowE["X2"],$ArrowE["Y2"],$ArrowSettings);
732
+            $this->drawArrow($ArrowE["X1"],$ArrowE["Y1"],$ArrowE["X2"],$ArrowE["Y2"],$ArrowSettings);
733 733
         }
734
-      }
735
-     return($Q);
734
+        }
735
+        return($Q);
736 736
     }
737 737
 
738
-   /* Draw a line between two points */
739
-   function drawLine($X1,$Y1,$X2,$Y2,$Format="")
738
+    /* Draw a line between two points */
739
+    function drawLine($X1,$Y1,$X2,$Y2,$Format="")
740 740
     {
741
-     $R		= isset($Format["R"]) ? $Format["R"] : 0;
742
-     $G		= isset($Format["G"]) ? $Format["G"] : 0;
743
-     $B		= isset($Format["B"]) ? $Format["B"] : 0;
744
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
745
-     $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
746
-     $Cpt	= isset($Format["Cpt"]) ? $Format["Cpt"] : 1;
747
-     $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : 1;
748
-     $Weight	= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
749
-     $Threshold	= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
750
-
751
-     if ( $this->Antialias == FALSE && $Ticks == NULL )
752
-      {
753
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
741
+        $R		= isset($Format["R"]) ? $Format["R"] : 0;
742
+        $G		= isset($Format["G"]) ? $Format["G"] : 0;
743
+        $B		= isset($Format["B"]) ? $Format["B"] : 0;
744
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
745
+        $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
746
+        $Cpt	= isset($Format["Cpt"]) ? $Format["Cpt"] : 1;
747
+        $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : 1;
748
+        $Weight	= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
749
+        $Threshold	= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
750
+
751
+        if ( $this->Antialias == FALSE && $Ticks == NULL )
754 752
         {
755
-         $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
756
-         imageline($this->Picture,$X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$ShadowColor);
753
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
754
+        {
755
+            $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
756
+            imageline($this->Picture,$X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$ShadowColor);
757 757
         }
758 758
 
759
-       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
760
-       imageline($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
761
-       return(0);
762
-      }
759
+        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
760
+        imageline($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
761
+        return(0);
762
+        }
763 763
 
764
-     $Distance = sqrt(($X2-$X1)*($X2-$X1)+($Y2-$Y1)*($Y2-$Y1));  
765
-     if ( $Distance == 0 ) { return(-1); }
764
+        $Distance = sqrt(($X2-$X1)*($X2-$X1)+($Y2-$Y1)*($Y2-$Y1));  
765
+        if ( $Distance == 0 ) { return(-1); }
766 766
 
767
-     /* Derivative algorithm for overweighted lines, re-route to polygons primitives */
768
-     if ( $Weight != NULL )
769
-      {
770
-       $Angle        = $this->getAngle($X1,$Y1,$X2,$Y2);
771
-       $PolySettings = array ("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderAlpha"=>$Alpha);
767
+        /* Derivative algorithm for overweighted lines, re-route to polygons primitives */
768
+        if ( $Weight != NULL )
769
+        {
770
+        $Angle        = $this->getAngle($X1,$Y1,$X2,$Y2);
771
+        $PolySettings = array ("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderAlpha"=>$Alpha);
772 772
 
773
-       if ( $Ticks == NULL )
773
+        if ( $Ticks == NULL )
774 774
         {
775
-         $Points   = ""; 
776
-         $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X1; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y1;
777
-         $Points[] = cos(deg2rad($Angle+90)) * $Weight + $X1; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Y1;
778
-         $Points[] = cos(deg2rad($Angle+90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Y2;
779
-         $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y2;
775
+            $Points   = ""; 
776
+            $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X1; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y1;
777
+            $Points[] = cos(deg2rad($Angle+90)) * $Weight + $X1; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Y1;
778
+            $Points[] = cos(deg2rad($Angle+90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Y2;
779
+            $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y2;
780 780
 
781
-         $this->drawPolygon($Points,$PolySettings);
781
+            $this->drawPolygon($Points,$PolySettings);
782 782
         }
783
-       else
783
+        else
784 784
         {
785
-         for($i=0;$i<=$Distance;$i=$i+$Ticks*2)
786
-          {
787
-           $Xa = (($X2-$X1)/$Distance) * $i + $X1; $Ya = (($Y2-$Y1)/$Distance) * $i + $Y1;
788
-           $Xb = (($X2-$X1)/$Distance) * ($i+$Ticks) + $X1; $Yb = (($Y2-$Y1)/$Distance) * ($i+$Ticks) + $Y1;
785
+            for($i=0;$i<=$Distance;$i=$i+$Ticks*2)
786
+            {
787
+            $Xa = (($X2-$X1)/$Distance) * $i + $X1; $Ya = (($Y2-$Y1)/$Distance) * $i + $Y1;
788
+            $Xb = (($X2-$X1)/$Distance) * ($i+$Ticks) + $X1; $Yb = (($Y2-$Y1)/$Distance) * ($i+$Ticks) + $Y1;
789 789
 
790
-           $Points   = ""; 
791
-           $Points[] = cos(deg2rad($Angle-90)) * $Weight + $Xa; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Ya;
792
-           $Points[] = cos(deg2rad($Angle+90)) * $Weight + $Xa; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Ya;
793
-           $Points[] = cos(deg2rad($Angle+90)) * $Weight + $Xb; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Yb;
794
-           $Points[] = cos(deg2rad($Angle-90)) * $Weight + $Xb; $Points[] = sin(deg2rad($Angle-90)) * $Weight 	+ $Yb;
790
+            $Points   = ""; 
791
+            $Points[] = cos(deg2rad($Angle-90)) * $Weight + $Xa; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Ya;
792
+            $Points[] = cos(deg2rad($Angle+90)) * $Weight + $Xa; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Ya;
793
+            $Points[] = cos(deg2rad($Angle+90)) * $Weight + $Xb; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Yb;
794
+            $Points[] = cos(deg2rad($Angle-90)) * $Weight + $Xb; $Points[] = sin(deg2rad($Angle-90)) * $Weight 	+ $Yb;
795 795
 
796
-           $this->drawPolygon($Points,$PolySettings);
797
-          }
796
+            $this->drawPolygon($Points,$PolySettings);
797
+            }
798 798
         }
799 799
 
800
-       return(1);
801
-      }
800
+        return(1);
801
+        }
802 802
 
803
-     $XStep = ($X2-$X1) / $Distance;
804
-     $YStep = ($Y2-$Y1) / $Distance;
803
+        $XStep = ($X2-$X1) / $Distance;
804
+        $YStep = ($Y2-$Y1) / $Distance;
805 805
 
806
-     for($i=0;$i<=$Distance;$i++)
807
-      {
808
-       $X = $i * $XStep + $X1;
809
-       $Y = $i * $YStep + $Y1;
806
+        for($i=0;$i<=$Distance;$i++)
807
+        {
808
+        $X = $i * $XStep + $X1;
809
+        $Y = $i * $YStep + $Y1;
810 810
 
811
-       $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
811
+        $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
812 812
 
813
-       if ( $Threshold != NULL )
813
+        if ( $Threshold != NULL )
814 814
         {
815
-         foreach($Threshold as $Key => $Parameters)
816
-          {
817
-           if ( $Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
815
+            foreach($Threshold as $Key => $Parameters)
816
+            {
817
+            if ( $Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
818 818
             {
819
-             if ( isset($Parameters["R"]) ) { $RT = $Parameters["R"]; } else { $RT = 0; }
820
-             if ( isset($Parameters["G"]) ) { $GT = $Parameters["G"]; } else { $GT = 0; }
821
-             if ( isset($Parameters["B"]) ) { $BT = $Parameters["B"]; } else { $BT = 0; }
822
-             if ( isset($Parameters["Alpha"]) ) { $AlphaT = $Parameters["Alpha"]; } else { $AlphaT = 0; }
823
-             $Color = array("R"=>$RT,"G"=>$GT,"B"=>$BT,"Alpha"=>$AlphaT);
819
+                if ( isset($Parameters["R"]) ) { $RT = $Parameters["R"]; } else { $RT = 0; }
820
+                if ( isset($Parameters["G"]) ) { $GT = $Parameters["G"]; } else { $GT = 0; }
821
+                if ( isset($Parameters["B"]) ) { $BT = $Parameters["B"]; } else { $BT = 0; }
822
+                if ( isset($Parameters["Alpha"]) ) { $AlphaT = $Parameters["Alpha"]; } else { $AlphaT = 0; }
823
+                $Color = array("R"=>$RT,"G"=>$GT,"B"=>$BT,"Alpha"=>$AlphaT);
824
+            }
824 825
             }
825
-          }
826 826
         }
827 827
 
828
-       if ( $Ticks != NULL )
828
+        if ( $Ticks != NULL )
829 829
         {
830
-         if ( $Cpt % $Ticks == 0 )
831
-          { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
830
+            if ( $Cpt % $Ticks == 0 )
831
+            { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
832 832
 
833
-         if ( $Mode == 1 )
834
-          $this->drawAntialiasPixel($X,$Y,$Color);
833
+            if ( $Mode == 1 )
834
+            $this->drawAntialiasPixel($X,$Y,$Color);
835 835
 
836
-         $Cpt++;
836
+            $Cpt++;
837 837
         }
838
-       else
838
+        else
839 839
         $this->drawAntialiasPixel($X,$Y,$Color);
840
-      }
840
+        }
841 841
 
842
-     return(array($Cpt,$Mode));
842
+        return(array($Cpt,$Mode));
843 843
     }
844 844
 
845
-   /* Draw a circle */
846
-   function drawCircle($Xc,$Yc,$Height,$Width,$Format="")
845
+    /* Draw a circle */
846
+    function drawCircle($Xc,$Yc,$Height,$Width,$Format="")
847 847
     {
848
-     $R	    = isset($Format["R"]) ? $Format["R"] : 0;
849
-     $G	    = isset($Format["G"]) ? $Format["G"] : 0;
850
-     $B	    = isset($Format["B"]) ? $Format["B"] : 0;
851
-     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
852
-     $Ticks = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
848
+        $R	    = isset($Format["R"]) ? $Format["R"] : 0;
849
+        $G	    = isset($Format["G"]) ? $Format["G"] : 0;
850
+        $B	    = isset($Format["B"]) ? $Format["B"] : 0;
851
+        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
852
+        $Ticks = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
853 853
 
854
-     $Height	= abs($Height);
855
-     $Width	= abs($Width);
854
+        $Height	= abs($Height);
855
+        $Width	= abs($Width);
856 856
 
857
-     if ( $Height == 0 ) { $Height = 1; }
858
-     if ( $Width == 0 )  { $Width = 1; }
859
-     $Xc = floor($Xc); $Yc = floor($Yc);
857
+        if ( $Height == 0 ) { $Height = 1; }
858
+        if ( $Width == 0 )  { $Width = 1; }
859
+        $Xc = floor($Xc); $Yc = floor($Yc);
860 860
 
861
-     $RestoreShadow = $this->Shadow;
862
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
863
-      {
864
-       $this->Shadow = FALSE;
865
-       $this->drawCircle($Xc+$this->ShadowX,$Yc+$this->ShadowY,$Height,$Width,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks));
866
-      }
861
+        $RestoreShadow = $this->Shadow;
862
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
863
+        {
864
+        $this->Shadow = FALSE;
865
+        $this->drawCircle($Xc+$this->ShadowX,$Yc+$this->ShadowY,$Height,$Width,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks));
866
+        }
867 867
 
868
-     if ( $Width == 0 ) { $Width = $Height; }
869
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
870
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
871
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
868
+        if ( $Width == 0 ) { $Width = $Height; }
869
+        if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
870
+        if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
871
+        if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
872 872
 
873
-     $Step = 360 / (2 * PI * max($Width,$Height));
874
-     $Mode = 1; $Cpt = 1;
875
-     for($i=0;$i<=360;$i=$i+$Step)
876
-      {
877
-       $X = cos($i*PI/180) * $Height + $Xc;
878
-       $Y = sin($i*PI/180) * $Width + $Yc;
873
+        $Step = 360 / (2 * PI * max($Width,$Height));
874
+        $Mode = 1; $Cpt = 1;
875
+        for($i=0;$i<=360;$i=$i+$Step)
876
+        {
877
+        $X = cos($i*PI/180) * $Height + $Xc;
878
+        $Y = sin($i*PI/180) * $Width + $Yc;
879 879
 
880
-       if ( $Ticks != NULL )
880
+        if ( $Ticks != NULL )
881 881
         {
882
-         if ( $Cpt % $Ticks == 0 )
883
-          { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
882
+            if ( $Cpt % $Ticks == 0 )
883
+            { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
884 884
 
885
-         if ( $Mode == 1 )
886
-          $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
885
+            if ( $Mode == 1 )
886
+            $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
887 887
 
888
-         $Cpt++;
888
+            $Cpt++;
889 889
         }
890
-       else
890
+        else
891 891
         $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
892 892
 
893
-      }
894
-     $this->Shadow = $RestoreShadow;
893
+        }
894
+        $this->Shadow = $RestoreShadow;
895 895
     }
896 896
 
897
-   /* Draw a filled circle */
898
-   function drawFilledCircle($X,$Y,$Radius,$Format="")
897
+    /* Draw a filled circle */
898
+    function drawFilledCircle($X,$Y,$Radius,$Format="")
899 899
     {
900
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
901
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
902
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
903
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
904
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
905
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
906
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
907
-     $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
908
-     $Ticks     	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
909
-     $Surrounding 	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
910
-
911
-     if ( $Radius == 0 ) { $Radius = 1; }
912
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
913
-     $X = floor($X); $Y = floor($Y);
914
-
915
-     $Radius = abs($Radius);
916
-
917
-     $RestoreShadow = $this->Shadow;
918
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
919
-      {
920
-       $this->Shadow = FALSE;
921
-       $this->drawFilledCircle($X+$this->ShadowX,$Y+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks));
922
-      }
923
-
924
-     $this->Mask  = "";
925
-     $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
926
-     for ($i=0; $i<=$Radius*2; $i++)
927
-      {
928
-       $Slice  = sqrt($Radius * $Radius - ($Radius - $i) * ($Radius - $i));
929
-       $XPos   = floor($Slice);
930
-       $YPos   = $Y + $i - $Radius;
931
-       $AAlias = $Slice - floor($Slice);
932
-
933
-       $this->Mask[$X-$XPos][$YPos] = TRUE;
934
-       $this->Mask[$X+$XPos][$YPos] = TRUE;
935
-       imageline($this->Picture,$X-$XPos,$YPos,$X+$XPos,$YPos,$Color);
936
-      }
937
-     if ( $this->Antialias )
938
-      $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
939
-
940
-     $this->Mask = "";
941
-
942
-     if ( $BorderR != -1 )
943
-      $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks));
944
-
945
-     $this->Shadow	= $RestoreShadow;
900
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
901
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
902
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
903
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
904
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
905
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
906
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
907
+        $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
908
+        $Ticks     	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
909
+        $Surrounding 	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
910
+
911
+        if ( $Radius == 0 ) { $Radius = 1; }
912
+        if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
913
+        $X = floor($X); $Y = floor($Y);
914
+
915
+        $Radius = abs($Radius);
916
+
917
+        $RestoreShadow = $this->Shadow;
918
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
919
+        {
920
+        $this->Shadow = FALSE;
921
+        $this->drawFilledCircle($X+$this->ShadowX,$Y+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks));
922
+        }
923
+
924
+        $this->Mask  = "";
925
+        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
926
+        for ($i=0; $i<=$Radius*2; $i++)
927
+        {
928
+        $Slice  = sqrt($Radius * $Radius - ($Radius - $i) * ($Radius - $i));
929
+        $XPos   = floor($Slice);
930
+        $YPos   = $Y + $i - $Radius;
931
+        $AAlias = $Slice - floor($Slice);
932
+
933
+        $this->Mask[$X-$XPos][$YPos] = TRUE;
934
+        $this->Mask[$X+$XPos][$YPos] = TRUE;
935
+        imageline($this->Picture,$X-$XPos,$YPos,$X+$XPos,$YPos,$Color);
936
+        }
937
+        if ( $this->Antialias )
938
+        $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
939
+
940
+        $this->Mask = "";
941
+
942
+        if ( $BorderR != -1 )
943
+        $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks));
944
+
945
+        $this->Shadow	= $RestoreShadow;
946 946
     }
947 947
 
948
-   /* Write text */
949
-   function drawText($X,$Y,$Text,$Format="")
948
+    /* Write text */
949
+    function drawText($X,$Y,$Text,$Format="")
950 950
     {
951
-     $R			= isset($Format["R"]) ? $Format["R"] : $this->FontColorR;
952
-     $G			= isset($Format["G"]) ? $Format["G"] : $this->FontColorG;
953
-     $B			= isset($Format["B"]) ? $Format["B"] : $this->FontColorB;
954
-     $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
955
-     $Align		= isset($Format["Align"]) ? $Format["Align"] : TEXT_ALIGN_BOTTOMLEFT;
956
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
957
-     $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
958
-     $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
959
-     $ShowOrigine	= isset($Format["ShowOrigine"]) ? $Format["ShowOrigine"] : FALSE;
960
-     $TOffset		= isset($Format["TOffset"]) ? $Format["TOffset"] : 2;
961
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : FALSE;
962
-     $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : TRUE;
963
-     $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 6;
964
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : FALSE;
965
-     $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 6;
966
-     $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 255;
967
-     $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 255;
968
-     $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 255;
969
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
970
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
971
-     $BoxBorderR	= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
972
-     $BoxBorderG	= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
973
-     $BoxBorderB	= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
974
-     $BoxBorderAlpha	= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
975
-     $NoShadow		= isset($Format["NoShadow"]) ? $Format["NoShadow"] : FALSE;
976
-
977
-     $Shadow = $this->Shadow;
978
-     if ( $NoShadow ) { $this->Shadow = FALSE; }
979
-
980
-     if ( $BoxSurrounding != "" ) { $BoxBorderR = $BoxR - $BoxSurrounding; $BoxBorderG = $BoxG - $BoxSurrounding; $BoxBorderB = $BoxB - $BoxSurrounding; $BoxBorderAlpha = $BoxAlpha; }
981
-
982
-     if ( $ShowOrigine )
983
-      {
984
-       $MyMarkerSettings = array("R"=>255,"G"=>0,"B"=>0,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
985
-       $this->drawRectangleMarker($X,$Y,$MyMarkerSettings);
986
-      }
987
-
988
-     $TxtPos = $this->getTextBox($X,$Y,$FontName,$FontSize,$Angle,$Text);
989
-
990
-     if ( $DrawBox && ($Angle == 0 || $Angle == 90 || $Angle == 180 || $Angle == 270))
991
-      {
992
-       $T[0]["X"]=0;$T[0]["Y"]=0;$T[1]["X"]=0;$T[1]["Y"]=0;$T[2]["X"]=0;$T[2]["Y"]=0;$T[3]["X"]=0;$T[3]["Y"]=0;
993
-       if ( $Angle == 0 ) { $T[0]["X"]=-$TOffset;$T[0]["Y"]=$TOffset;$T[1]["X"]=$TOffset;$T[1]["Y"]=$TOffset;$T[2]["X"]=$TOffset;$T[2]["Y"]=-$TOffset;$T[3]["X"]=-$TOffset;$T[3]["Y"]=-$TOffset; }
994
-
995
-       $X1 = min($TxtPos[0]["X"],$TxtPos[1]["X"],$TxtPos[2]["X"],$TxtPos[3]["X"]) - $BorderOffset + 3;
996
-       $Y1 = min($TxtPos[0]["Y"],$TxtPos[1]["Y"],$TxtPos[2]["Y"],$TxtPos[3]["Y"]) - $BorderOffset;
997
-       $X2 = max($TxtPos[0]["X"],$TxtPos[1]["X"],$TxtPos[2]["X"],$TxtPos[3]["X"]) + $BorderOffset + 3;
998
-       $Y2 = max($TxtPos[0]["Y"],$TxtPos[1]["Y"],$TxtPos[2]["Y"],$TxtPos[3]["Y"]) + $BorderOffset - 3;
999
-
1000
-       $X1 = $X1 - $TxtPos[$Align]["X"] + $X + $T[0]["X"];
1001
-       $Y1 = $Y1 - $TxtPos[$Align]["Y"] + $Y + $T[0]["Y"];
1002
-       $X2 = $X2 - $TxtPos[$Align]["X"] + $X + $T[0]["X"];
1003
-       $Y2 = $Y2 - $TxtPos[$Align]["Y"] + $Y + $T[0]["Y"];
1004
-
1005
-       $Settings = array("R"=>$BoxR,"G"=>$BoxG,"B"=>$BoxB,"Alpha"=>$BoxAlpha,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"BorderAlpha"=>$BoxBorderAlpha);
1006
-
1007
-       if ( $BoxRounded )
951
+        $R			= isset($Format["R"]) ? $Format["R"] : $this->FontColorR;
952
+        $G			= isset($Format["G"]) ? $Format["G"] : $this->FontColorG;
953
+        $B			= isset($Format["B"]) ? $Format["B"] : $this->FontColorB;
954
+        $Angle		= isset($Format["Angle"]) ? $Format["Angle"] : 0;
955
+        $Align		= isset($Format["Align"]) ? $Format["Align"] : TEXT_ALIGN_BOTTOMLEFT;
956
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
957
+        $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
958
+        $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
959
+        $ShowOrigine	= isset($Format["ShowOrigine"]) ? $Format["ShowOrigine"] : FALSE;
960
+        $TOffset		= isset($Format["TOffset"]) ? $Format["TOffset"] : 2;
961
+        $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : FALSE;
962
+        $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : TRUE;
963
+        $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 6;
964
+        $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : FALSE;
965
+        $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 6;
966
+        $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 255;
967
+        $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 255;
968
+        $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 255;
969
+        $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
970
+        $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
971
+        $BoxBorderR	= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
972
+        $BoxBorderG	= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
973
+        $BoxBorderB	= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
974
+        $BoxBorderAlpha	= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
975
+        $NoShadow		= isset($Format["NoShadow"]) ? $Format["NoShadow"] : FALSE;
976
+
977
+        $Shadow = $this->Shadow;
978
+        if ( $NoShadow ) { $this->Shadow = FALSE; }
979
+
980
+        if ( $BoxSurrounding != "" ) { $BoxBorderR = $BoxR - $BoxSurrounding; $BoxBorderG = $BoxG - $BoxSurrounding; $BoxBorderB = $BoxB - $BoxSurrounding; $BoxBorderAlpha = $BoxAlpha; }
981
+
982
+        if ( $ShowOrigine )
983
+        {
984
+        $MyMarkerSettings = array("R"=>255,"G"=>0,"B"=>0,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
985
+        $this->drawRectangleMarker($X,$Y,$MyMarkerSettings);
986
+        }
987
+
988
+        $TxtPos = $this->getTextBox($X,$Y,$FontName,$FontSize,$Angle,$Text);
989
+
990
+        if ( $DrawBox && ($Angle == 0 || $Angle == 90 || $Angle == 180 || $Angle == 270))
991
+        {
992
+        $T[0]["X"]=0;$T[0]["Y"]=0;$T[1]["X"]=0;$T[1]["Y"]=0;$T[2]["X"]=0;$T[2]["Y"]=0;$T[3]["X"]=0;$T[3]["Y"]=0;
993
+        if ( $Angle == 0 ) { $T[0]["X"]=-$TOffset;$T[0]["Y"]=$TOffset;$T[1]["X"]=$TOffset;$T[1]["Y"]=$TOffset;$T[2]["X"]=$TOffset;$T[2]["Y"]=-$TOffset;$T[3]["X"]=-$TOffset;$T[3]["Y"]=-$TOffset; }
994
+
995
+        $X1 = min($TxtPos[0]["X"],$TxtPos[1]["X"],$TxtPos[2]["X"],$TxtPos[3]["X"]) - $BorderOffset + 3;
996
+        $Y1 = min($TxtPos[0]["Y"],$TxtPos[1]["Y"],$TxtPos[2]["Y"],$TxtPos[3]["Y"]) - $BorderOffset;
997
+        $X2 = max($TxtPos[0]["X"],$TxtPos[1]["X"],$TxtPos[2]["X"],$TxtPos[3]["X"]) + $BorderOffset + 3;
998
+        $Y2 = max($TxtPos[0]["Y"],$TxtPos[1]["Y"],$TxtPos[2]["Y"],$TxtPos[3]["Y"]) + $BorderOffset - 3;
999
+
1000
+        $X1 = $X1 - $TxtPos[$Align]["X"] + $X + $T[0]["X"];
1001
+        $Y1 = $Y1 - $TxtPos[$Align]["Y"] + $Y + $T[0]["Y"];
1002
+        $X2 = $X2 - $TxtPos[$Align]["X"] + $X + $T[0]["X"];
1003
+        $Y2 = $Y2 - $TxtPos[$Align]["Y"] + $Y + $T[0]["Y"];
1004
+
1005
+        $Settings = array("R"=>$BoxR,"G"=>$BoxG,"B"=>$BoxB,"Alpha"=>$BoxAlpha,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"BorderAlpha"=>$BoxBorderAlpha);
1006
+
1007
+        if ( $BoxRounded )
1008 1008
         { $this->drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$RoundedRadius,$Settings); }
1009
-       else
1009
+        else
1010 1010
         { $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Settings); }
1011
-      }
1011
+        }
1012 1012
 
1013
-     $X = $X - $TxtPos[$Align]["X"] + $X;
1014
-     $Y = $Y - $TxtPos[$Align]["Y"] + $Y;
1013
+        $X = $X - $TxtPos[$Align]["X"] + $X;
1014
+        $Y = $Y - $TxtPos[$Align]["Y"] + $Y;
1015 1015
 
1016
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1017
-      {
1018
-       $C_ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
1019
-       imagettftext($this->Picture,$FontSize,$Angle,$X+$this->ShadowX,$Y+$this->ShadowY,$C_ShadowColor,$FontName,$Text);
1020
-      }
1016
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1017
+        {
1018
+        $C_ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
1019
+        imagettftext($this->Picture,$FontSize,$Angle,$X+$this->ShadowX,$Y+$this->ShadowY,$C_ShadowColor,$FontName,$Text);
1020
+        }
1021 1021
 
1022
-     $C_TextColor = $this->AllocateColor($this->Picture,$R,$G,$B,$Alpha);
1023
-     imagettftext($this->Picture,$FontSize,$Angle,$X,$Y,$C_TextColor,$FontName,$Text);
1022
+        $C_TextColor = $this->AllocateColor($this->Picture,$R,$G,$B,$Alpha);
1023
+        imagettftext($this->Picture,$FontSize,$Angle,$X,$Y,$C_TextColor,$FontName,$Text);
1024 1024
 
1025
-     $this->Shadow = $Shadow;
1025
+        $this->Shadow = $Shadow;
1026 1026
 
1027
-     return($TxtPos);
1027
+        return($TxtPos);
1028 1028
     }
1029 1029
 
1030
-   /* Draw a gradient within a defined area */
1031
-   function drawGradientArea($X1,$Y1,$X2,$Y2,$Direction,$Format="")
1030
+    /* Draw a gradient within a defined area */
1031
+    function drawGradientArea($X1,$Y1,$X2,$Y2,$Direction,$Format="")
1032 1032
     {
1033
-     $StartR	= isset($Format["StartR"]) ? $Format["StartR"] : 90;
1034
-     $StartG	= isset($Format["StartG"]) ? $Format["StartG"] : 90;
1035
-     $StartB	= isset($Format["StartB"]) ? $Format["StartB"] : 90;
1036
-     $EndR	= isset($Format["EndR"]) ? $Format["EndR"] : 0;
1037
-     $EndG	= isset($Format["EndG"]) ? $Format["EndG"] : 0;
1038
-     $EndB	= isset($Format["EndB"]) ? $Format["EndB"] : 0;
1039
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1040
-     $Levels	= isset($Format["Levels"]) ? $Format["Levels"] : NULL;
1041
-
1042
-     $Shadow = $this->Shadow;
1043
-     $this->Shadow = FALSE;
1044
-
1045
-     if ( $StartR == $EndR && $StartG == $EndG && $StartB == $EndB )
1046
-      {
1047
-       $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,array("R"=>$StartR,"G"=>$StartG,"B"=>$StartB,"Alpha"=>$Alpha));
1048
-       return(0);
1049
-      }
1050
-
1051
-     if ( $Levels != NULL )
1052
-      { $EndR=$StartR+$Levels; $EndG=$StartG+$Levels; $EndB=$StartB+$Levels; }
1053
-
1054
-     if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
1055
-     if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
1056
-
1057
-     if ( $Direction == DIRECTION_VERTICAL )   { $Width = abs($Y2-$Y1); }
1058
-     if ( $Direction == DIRECTION_HORIZONTAL ) { $Width = abs($X2-$X1); }
1059
-
1060
-     $Step     = max(abs($EndR-$StartR),abs($EndG-$StartG),abs($EndB-$StartB));
1061
-     $StepSize = $Width/$Step;
1062
-     $RStep    = ($EndR-$StartR)/$Step;
1063
-     $GStep    = ($EndG-$StartG)/$Step;
1064
-     $BStep    = ($EndB-$StartB)/$Step;
1065
-
1066
-     $R=$StartR;$G=$StartG;$B=$StartB;
1067
-     switch($Direction)
1068
-      {
1069
-       case DIRECTION_VERTICAL:
1033
+        $StartR	= isset($Format["StartR"]) ? $Format["StartR"] : 90;
1034
+        $StartG	= isset($Format["StartG"]) ? $Format["StartG"] : 90;
1035
+        $StartB	= isset($Format["StartB"]) ? $Format["StartB"] : 90;
1036
+        $EndR	= isset($Format["EndR"]) ? $Format["EndR"] : 0;
1037
+        $EndG	= isset($Format["EndG"]) ? $Format["EndG"] : 0;
1038
+        $EndB	= isset($Format["EndB"]) ? $Format["EndB"] : 0;
1039
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1040
+        $Levels	= isset($Format["Levels"]) ? $Format["Levels"] : NULL;
1041
+
1042
+        $Shadow = $this->Shadow;
1043
+        $this->Shadow = FALSE;
1044
+
1045
+        if ( $StartR == $EndR && $StartG == $EndG && $StartB == $EndB )
1046
+        {
1047
+        $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,array("R"=>$StartR,"G"=>$StartG,"B"=>$StartB,"Alpha"=>$Alpha));
1048
+        return(0);
1049
+        }
1050
+
1051
+        if ( $Levels != NULL )
1052
+        { $EndR=$StartR+$Levels; $EndG=$StartG+$Levels; $EndB=$StartB+$Levels; }
1053
+
1054
+        if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
1055
+        if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
1056
+
1057
+        if ( $Direction == DIRECTION_VERTICAL )   { $Width = abs($Y2-$Y1); }
1058
+        if ( $Direction == DIRECTION_HORIZONTAL ) { $Width = abs($X2-$X1); }
1059
+
1060
+        $Step     = max(abs($EndR-$StartR),abs($EndG-$StartG),abs($EndB-$StartB));
1061
+        $StepSize = $Width/$Step;
1062
+        $RStep    = ($EndR-$StartR)/$Step;
1063
+        $GStep    = ($EndG-$StartG)/$Step;
1064
+        $BStep    = ($EndB-$StartB)/$Step;
1065
+
1066
+        $R=$StartR;$G=$StartG;$B=$StartB;
1067
+        switch($Direction)
1068
+        {
1069
+        case DIRECTION_VERTICAL:
1070 1070
         $StartY = $Y1; $EndY = floor($Y2)+1; $LastY2 = $StartY;
1071 1071
         for($i=0;$i<=$Step;$i++)
1072
-         {
1073
-          $Y2 = floor($StartY + ($i * $StepSize));
1072
+            {
1073
+            $Y2 = floor($StartY + ($i * $StepSize));
1074 1074
 
1075
-          if ($Y2 > $EndY) { $Y2 = $EndY; }
1076
-          if (($Y1 != $Y2 && $Y1 < $Y2) || $Y2 == $EndY)
1077
-           {
1075
+            if ($Y2 > $EndY) { $Y2 = $EndY; }
1076
+            if (($Y1 != $Y2 && $Y1 < $Y2) || $Y2 == $EndY)
1077
+            {
1078 1078
             $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1079 1079
             $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1080 1080
             $LastY2 = max($LastY2,$Y2);
1081 1081
             $Y1 = $Y2+1;
1082
-           }
1083
-          $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep;
1084
-         }
1082
+            }
1083
+            $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep;
1084
+            }
1085 1085
         if ( $LastY2 < $EndY && isset($Color)) { for ($i=$LastY2+1;$i<=$EndY;$i++) { $this->drawLine($X1,$i,$X2,$i,$Color); } }
1086 1086
         break;
1087 1087
 
1088
-       case DIRECTION_HORIZONTAL:
1088
+        case DIRECTION_HORIZONTAL:
1089 1089
         $StartX = $X1; $EndX = $X2;
1090 1090
         for($i=0;$i<=$Step;$i++)
1091
-         {
1092
-          $X2 = floor($StartX + ($i * $StepSize));
1091
+            {
1092
+            $X2 = floor($StartX + ($i * $StepSize));
1093 1093
 
1094
-          if ($X2 > $EndX) { $X2 = $EndX; }
1095
-          if (($X1 != $X2 && $X1 < $X2) || $X2 == $EndX)
1096
-           {
1094
+            if ($X2 > $EndX) { $X2 = $EndX; }
1095
+            if (($X1 != $X2 && $X1 < $X2) || $X2 == $EndX)
1096
+            {
1097 1097
             $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1098 1098
             $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1099 1099
             $X1 = $X2+1;
1100
-           }
1101
-          $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep; 
1102
-         }
1100
+            }
1101
+            $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep; 
1102
+            }
1103 1103
         if ( $X2 < $EndX && isset($Color)) { $this->drawFilledRectangle($X2,$Y1,$EndX,$Y2,$Color); }
1104 1104
         break;
1105
-      }
1105
+        }
1106 1106
 
1107
-     $this->Shadow = $Shadow;
1107
+        $this->Shadow = $Shadow;
1108 1108
 
1109 1109
     }
1110 1110
 
1111
-   /* Draw an aliased pixel */
1112
-   function drawAntialiasPixel($X,$Y,$Format="")
1111
+    /* Draw an aliased pixel */
1112
+    function drawAntialiasPixel($X,$Y,$Format="")
1113 1113
     {
1114
-     $R     = isset($Format["R"]) ? $Format["R"] : 0;
1115
-     $G     = isset($Format["G"]) ? $Format["G"] : 0;
1116
-     $B     = isset($Format["B"]) ? $Format["B"] : 0;
1117
-     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1114
+        $R     = isset($Format["R"]) ? $Format["R"] : 0;
1115
+        $G     = isset($Format["G"]) ? $Format["G"] : 0;
1116
+        $B     = isset($Format["B"]) ? $Format["B"] : 0;
1117
+        $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1118 1118
 
1119
-     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1120
-      return(-1);
1119
+        if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1120
+        return(-1);
1121 1121
 
1122
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1123
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1124
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1122
+        if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1123
+        if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1124
+        if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1125 1125
 
1126
-     if ( !$this->Antialias )
1127
-      {
1128
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1126
+        if ( !$this->Antialias )
1127
+        {
1128
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1129 1129
         {
1130
-         $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
1131
-         imagesetpixel($this->Picture,$X+$this->ShadowX,$Y+$this->ShadowY,$ShadowColor);
1130
+            $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
1131
+            imagesetpixel($this->Picture,$X+$this->ShadowX,$Y+$this->ShadowY,$ShadowColor);
1132 1132
         }
1133 1133
 
1134
-       $PlotColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
1135
-       imagesetpixel($this->Picture,$X,$Y,$PlotColor);
1134
+        $PlotColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
1135
+        imagesetpixel($this->Picture,$X,$Y,$PlotColor);
1136 1136
 
1137
-       return(0);
1138
-      }
1137
+        return(0);
1138
+        }
1139 1139
 
1140
-     $Plot = "";
1141
-     $Xi   = floor($X);
1142
-     $Yi   = floor($Y);
1140
+        $Plot = "";
1141
+        $Xi   = floor($X);
1142
+        $Yi   = floor($Y);
1143 1143
 
1144
-     if ( $Xi == $X && $Yi == $Y)
1145
-      {
1146
-       if ( $Alpha == 100 )
1144
+        if ( $Xi == $X && $Yi == $Y)
1145
+        {
1146
+        if ( $Alpha == 100 )
1147 1147
         $this->drawAlphaPixel($X,$Y,100,$R,$G,$B);
1148
-       else
1148
+        else
1149 1149
         $this->drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B);
1150
-      }
1151
-     else
1152
-      {
1153
-       $Alpha1 = (((1 - ($X - floor($X))) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1154
-       if ( $Alpha1 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi,$Alpha1,$R,$G,$B); }
1150
+        }
1151
+        else
1152
+        {
1153
+        $Alpha1 = (((1 - ($X - floor($X))) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1154
+        if ( $Alpha1 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi,$Alpha1,$R,$G,$B); }
1155 1155
 
1156
-       $Alpha2 = ((($X - floor($X)) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1157
-       if ( $Alpha2 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi+1,$Yi,$Alpha2,$R,$G,$B); }
1156
+        $Alpha2 = ((($X - floor($X)) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1157
+        if ( $Alpha2 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi+1,$Yi,$Alpha2,$R,$G,$B); }
1158 1158
 
1159
-       $Alpha3 = (((1 - ($X - floor($X))) * ($Y - floor($Y)) * 100) / 100) * $Alpha;
1160
-       if ( $Alpha3 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi+1,$Alpha3,$R,$G,$B); }
1159
+        $Alpha3 = (((1 - ($X - floor($X))) * ($Y - floor($Y)) * 100) / 100) * $Alpha;
1160
+        if ( $Alpha3 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi+1,$Alpha3,$R,$G,$B); }
1161 1161
 
1162
-       $Alpha4 = ((($X - floor($X)) * ($Y - floor($Y)) * 100) / 100) * $Alpha;
1163
-       if ( $Alpha4 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi+1,$Yi+1,$Alpha4,$R,$G,$B); }
1164
-      }
1162
+        $Alpha4 = ((($X - floor($X)) * ($Y - floor($Y)) * 100) / 100) * $Alpha;
1163
+        if ( $Alpha4 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi+1,$Yi+1,$Alpha4,$R,$G,$B); }
1164
+        }
1165 1165
     }
1166 1166
 
1167
-   /* Draw a semi-transparent pixel */
1168
-   function drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B)
1167
+    /* Draw a semi-transparent pixel */
1168
+    function drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B)
1169 1169
     {
1170
-     if ( isset($this->Mask[$X])) { if ( isset($this->Mask[$X][$Y]) ) { return(0); } }
1170
+        if ( isset($this->Mask[$X])) { if ( isset($this->Mask[$X][$Y]) ) { return(0); } }
1171 1171
 
1172
-     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1173
-      return(-1);
1172
+        if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1173
+        return(-1);
1174 1174
 
1175
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1176
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1177
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1175
+        if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1176
+        if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1177
+        if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1178 1178
 
1179
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1180
-      {
1181
-       $AlphaFactor = floor(($Alpha / 100) * $this->Shadowa);
1182
-       $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$AlphaFactor);
1183
-       imagesetpixel($this->Picture,$X+$this->ShadowX,$Y+$this->ShadowY,$ShadowColor);
1184
-      }
1179
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1180
+        {
1181
+        $AlphaFactor = floor(($Alpha / 100) * $this->Shadowa);
1182
+        $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$AlphaFactor);
1183
+        imagesetpixel($this->Picture,$X+$this->ShadowX,$Y+$this->ShadowY,$ShadowColor);
1184
+        }
1185 1185
 
1186
-     $C_Aliased = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
1187
-     imagesetpixel($this->Picture,$X,$Y,$C_Aliased);
1186
+        $C_Aliased = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
1187
+        imagesetpixel($this->Picture,$X,$Y,$C_Aliased);
1188 1188
     }
1189 1189
 
1190
-   /* Convert apha to base 10 */
1191
-   function convertAlpha($AlphaValue)
1190
+    /* Convert apha to base 10 */
1191
+    function convertAlpha($AlphaValue)
1192 1192
     { return((127/100)*(100-$AlphaValue)); }
1193 1193
 
1194
-   /* Allocate a color with transparency */
1195
-   function allocateColor($Picture,$R,$G,$B,$Alpha=100)
1194
+    /* Allocate a color with transparency */
1195
+    function allocateColor($Picture,$R,$G,$B,$Alpha=100)
1196 1196
     {
1197
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1198
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1199
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1200
-     if ( $Alpha < 0 )  { $Alpha = 0; }
1201
-     if ( $Alpha > 100) { $Alpha = 100; }
1202
-
1203
-     $Alpha = $this->convertAlpha($Alpha);
1204
-     return(imagecolorallocatealpha($Picture,$R,$G,$B,$Alpha));
1197
+        if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1198
+        if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1199
+        if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1200
+        if ( $Alpha < 0 )  { $Alpha = 0; }
1201
+        if ( $Alpha > 100) { $Alpha = 100; }
1202
+
1203
+        $Alpha = $this->convertAlpha($Alpha);
1204
+        return(imagecolorallocatealpha($Picture,$R,$G,$B,$Alpha));
1205 1205
     }
1206 1206
 
1207
-   /* Load a PNG file and draw it over the chart */
1208
-   function drawFromPNG($X,$Y,$FileName)
1207
+    /* Load a PNG file and draw it over the chart */
1208
+    function drawFromPNG($X,$Y,$FileName)
1209 1209
     { $this->drawFromPicture(1,$FileName,$X,$Y); }
1210 1210
 
1211
-   /* Load a GIF file and draw it over the chart */
1212
-   function drawFromGIF($X,$Y,$FileName)
1211
+    /* Load a GIF file and draw it over the chart */
1212
+    function drawFromGIF($X,$Y,$FileName)
1213 1213
     { $this->drawFromPicture(2,$FileName,$X,$Y); }
1214 1214
 
1215
-   /* Load a JPEG file and draw it over the chart */
1216
-   function drawFromJPG($X,$Y,$FileName)
1215
+    /* Load a JPEG file and draw it over the chart */
1216
+    function drawFromJPG($X,$Y,$FileName)
1217 1217
     { $this->drawFromPicture(3,$FileName,$X,$Y); }
1218 1218
 
1219
-   function getPicInfo($FileName)
1219
+    function getPicInfo($FileName)
1220 1220
     {
1221
-     $Infos  = getimagesize($FileName);
1222
-     $Width  = $Infos[0];
1223
-     $Height = $Infos[1];
1224
-     $Type   = $Infos["mime"];
1221
+        $Infos  = getimagesize($FileName);
1222
+        $Width  = $Infos[0];
1223
+        $Height = $Infos[1];
1224
+        $Type   = $Infos["mime"];
1225 1225
 
1226
-     if ( $Type == "image/png") { $Type = 1; }
1227
-     if ( $Type == "image/gif") { $Type = 2; }
1228
-     if ( $Type == "image/jpeg ") { $Type = 3; }
1226
+        if ( $Type == "image/png") { $Type = 1; }
1227
+        if ( $Type == "image/gif") { $Type = 2; }
1228
+        if ( $Type == "image/jpeg ") { $Type = 3; }
1229 1229
 
1230
-     return(array($Width,$Height,$Type));
1230
+        return(array($Width,$Height,$Type));
1231 1231
     }
1232 1232
 
1233
-   /* Generic loader function for external pictures */
1234
-   function drawFromPicture($PicType,$FileName,$X,$Y)
1233
+    /* Generic loader function for external pictures */
1234
+    function drawFromPicture($PicType,$FileName,$X,$Y)
1235 1235
     {
1236
-     if ( file_exists($FileName))
1237
-      {
1238
-       list($Width,$Height) = $this->getPicInfo($FileName);
1236
+        if ( file_exists($FileName))
1237
+        {
1238
+        list($Width,$Height) = $this->getPicInfo($FileName);
1239 1239
 
1240
-       if ( $PicType == 1 )
1240
+        if ( $PicType == 1 )
1241 1241
         { $Raster = imagecreatefrompng($FileName); }
1242
-       elseif ( $PicType == 2 )
1242
+        elseif ( $PicType == 2 )
1243 1243
         { $Raster = imagecreatefromgif($FileName); }
1244
-       elseif ( $PicType == 3 )
1244
+        elseif ( $PicType == 3 )
1245 1245
         { $Raster = imagecreatefromjpeg($FileName); }
1246
-       else
1246
+        else
1247 1247
         { return(0); }
1248 1248
 
1249 1249
 
1250
-       $RestoreShadow = $this->Shadow;
1251
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1250
+        $RestoreShadow = $this->Shadow;
1251
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1252 1252
         {
1253
-         $this->Shadow = FALSE;
1254
-         if ( $PicType == 3 )
1255
-          $this->drawFilledRectangle($X+$this->ShadowX,$Y+$this->ShadowY,$X+$Width+$this->ShadowX,$Y+$Height+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
1256
-         else
1257
-          {
1258
-           $TranparentID = imagecolortransparent($Raster);
1259
-           for ($Xc=0;$Xc<=$Width-1;$Xc++)
1253
+            $this->Shadow = FALSE;
1254
+            if ( $PicType == 3 )
1255
+            $this->drawFilledRectangle($X+$this->ShadowX,$Y+$this->ShadowY,$X+$Width+$this->ShadowX,$Y+$Height+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
1256
+            else
1260 1257
             {
1261
-             for ($Yc=0;$Yc<=$Height-1;$Yc++)
1262
-              {
1263
-               $RGBa   = imagecolorat($Raster,$Xc,$Yc);
1264
-               $Values = imagecolorsforindex($Raster,$RGBa);
1265
-               if ( $Values["alpha"] < 120 )
1258
+            $TranparentID = imagecolortransparent($Raster);
1259
+            for ($Xc=0;$Xc<=$Width-1;$Xc++)
1260
+            {
1261
+                for ($Yc=0;$Yc<=$Height-1;$Yc++)
1262
+                {
1263
+                $RGBa   = imagecolorat($Raster,$Xc,$Yc);
1264
+                $Values = imagecolorsforindex($Raster,$RGBa);
1265
+                if ( $Values["alpha"] < 120 )
1266 1266
                 {
1267
-                 $AlphaFactor = floor(($this->Shadowa / 100) * ((100 / 127) * (127-$Values["alpha"])));
1268
-                 $this->drawAlphaPixel($X+$Xc+$this->ShadowX,$Y+$Yc+$this->ShadowY,$AlphaFactor,$this->ShadowR,$this->ShadowG,$this->ShadowB);
1267
+                    $AlphaFactor = floor(($this->Shadowa / 100) * ((100 / 127) * (127-$Values["alpha"])));
1268
+                    $this->drawAlphaPixel($X+$Xc+$this->ShadowX,$Y+$Yc+$this->ShadowY,$AlphaFactor,$this->ShadowR,$this->ShadowG,$this->ShadowB);
1269 1269
                 }
1270
-              }
1270
+                }
1271
+            }
1271 1272
             }
1272
-          }
1273 1273
         }
1274
-       $this->Shadow = $RestoreShadow;
1274
+        $this->Shadow = $RestoreShadow;
1275 1275
 
1276
-       imagecopy($this->Picture,$Raster,$X,$Y,0,0,$Width,$Height);
1277
-       imagedestroy($Raster);
1278
-      }
1276
+        imagecopy($this->Picture,$Raster,$X,$Y,0,0,$Width,$Height);
1277
+        imagedestroy($Raster);
1278
+        }
1279 1279
     }
1280 1280
 
1281
-   /* Draw an arrow */
1282
-   function drawArrow($X1,$Y1,$X2,$Y2,$Format="")
1281
+    /* Draw an arrow */
1282
+    function drawArrow($X1,$Y1,$X2,$Y2,$Format="")
1283 1283
     {
1284
-     $FillR	= isset($Format["FillR"]) ? $Format["FillR"] : 0;
1285
-     $FillG	= isset($Format["FillG"]) ? $Format["FillG"] : 0;
1286
-     $FillB	= isset($Format["FillB"]) ? $Format["FillB"] : 0;
1287
-     $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : $FillR;
1288
-     $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : $FillG;
1289
-     $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : $FillB;
1290
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1291
-     $Size	= isset($Format["Size"]) ? $Format["Size"] : 10;
1292
-     $Ratio	= isset($Format["Ratio"]) ? $Format["Ratio"] : .5;
1293
-     $TwoHeads	= isset($Format["TwoHeads"]) ? $Format["TwoHeads"] : FALSE;
1294
-     $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : FALSE;
1295
-
1296
-     /* Calculate the line angle */
1297
-     $Angle = $this->getAngle($X1,$Y1,$X2,$Y2);
1298
-
1299
-     /* Override Shadow support, this will be managed internally */
1300
-     $RestoreShadow = $this->Shadow;
1301
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1302
-      {
1303
-       $this->Shadow = FALSE;
1304
-       $this->drawArrow($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,array("FillR"=>$this->ShadowR,"FillG"=>$this->ShadowG,"FillB"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Size"=>$Size,"Ratio"=>$Ratio,"TwoHeads"=>$TwoHeads,"Ticks"=>$Ticks));
1305
-      }
1306
-
1307
-     /* Draw the 1st Head */
1308
-     $TailX = cos(($Angle-180)*PI/180)*$Size+$X2;
1309
-     $TailY = sin(($Angle-180)*PI/180)*$Size+$Y2;
1310
-
1311
-     $Points	= "";
1312
-     $Points[]  = $X2; $Points[]  = $Y2;
1313
-     $Points[]	= cos(($Angle-90)*PI/180)*$Size*$Ratio+$TailX; $Points[] = sin(($Angle-90)*PI/180)*$Size*$Ratio+$TailY;
1314
-     $Points[]	= cos(($Angle-270)*PI/180)*$Size*$Ratio+$TailX; $Points[] = sin(($Angle-270)*PI/180)*$Size*$Ratio+$TailY;
1315
-     $Points[]  = $X2; $Points[]  = $Y2;
1316
-
1317
-     /* Visual correction */
1318
-     if ($Angle == 180 || $Angle == 360 ) { $Points[4] = $Points[2]; }
1319
-     if ($Angle == 90 || $Angle == 270 ) { $Points[5] = $Points[3]; }
1320
-
1321
-     $ArrowColor = $this->allocateColor($this->Picture,$FillR,$FillG,$FillB,$Alpha);
1322
-     ImageFilledPolygon($this->Picture,$Points,4,$ArrowColor);
1323
-
1324
-     $this->drawLine($Points[0],$Points[1],$Points[2],$Points[3],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1325
-     $this->drawLine($Points[2],$Points[3],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1326
-     $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1327
-
1328
-     /* Draw the second head */
1329
-     if ( $TwoHeads )
1330
-      {
1331
-       $Angle = $this->getAngle($X2,$Y2,$X1,$Y1);
1332
-
1333
-       $TailX2 = cos(($Angle-180)*PI/180)*$Size+$X1;
1334
-       $TailY2 = sin(($Angle-180)*PI/180)*$Size+$Y1;
1335
-
1336
-       $Points   = "";
1337
-       $Points[] = $X1; $Points[]  = $Y1;
1338
-       $Points[] = cos(($Angle-90)*PI/180)*$Size*$Ratio+$TailX2; $Points[] = sin(($Angle-90)*PI/180)*$Size*$Ratio+$TailY2;
1339
-       $Points[] = cos(($Angle-270)*PI/180)*$Size*$Ratio+$TailX2; $Points[] = sin(($Angle-270)*PI/180)*$Size*$Ratio+$TailY2;
1340
-       $Points[] = $X1; $Points[]  = $Y1;
1341
-
1342
-       /* Visual correction */
1343
-       if ($Angle == 180 || $Angle == 360 ) { $Points[4] = $Points[2]; }
1344
-       if ($Angle == 90 || $Angle == 270 ) { $Points[5] = $Points[3]; }
1345
-
1346
-       $ArrowColor = $this->allocateColor($this->Picture,$FillR,$FillG,$FillB,$Alpha);
1347
-       ImageFilledPolygon($this->Picture,$Points,4,$ArrowColor);
1348
-
1349
-       $this->drawLine($Points[0],$Points[1],$Points[2],$Points[3],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1350
-       $this->drawLine($Points[2],$Points[3],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1351
-       $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1352
-
1353
-       $this->drawLine($TailX,$TailY,$TailX2,$TailY2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1354
-      }
1355
-     else
1356
-      $this->drawLine($X1,$Y1,$TailX,$TailY,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1357
-
1358
-     /* Re-enable shadows */
1359
-     $this->Shadow = $RestoreShadow;
1284
+        $FillR	= isset($Format["FillR"]) ? $Format["FillR"] : 0;
1285
+        $FillG	= isset($Format["FillG"]) ? $Format["FillG"] : 0;
1286
+        $FillB	= isset($Format["FillB"]) ? $Format["FillB"] : 0;
1287
+        $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : $FillR;
1288
+        $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : $FillG;
1289
+        $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : $FillB;
1290
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1291
+        $Size	= isset($Format["Size"]) ? $Format["Size"] : 10;
1292
+        $Ratio	= isset($Format["Ratio"]) ? $Format["Ratio"] : .5;
1293
+        $TwoHeads	= isset($Format["TwoHeads"]) ? $Format["TwoHeads"] : FALSE;
1294
+        $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : FALSE;
1295
+
1296
+        /* Calculate the line angle */
1297
+        $Angle = $this->getAngle($X1,$Y1,$X2,$Y2);
1298
+
1299
+        /* Override Shadow support, this will be managed internally */
1300
+        $RestoreShadow = $this->Shadow;
1301
+        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1302
+        {
1303
+        $this->Shadow = FALSE;
1304
+        $this->drawArrow($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,array("FillR"=>$this->ShadowR,"FillG"=>$this->ShadowG,"FillB"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Size"=>$Size,"Ratio"=>$Ratio,"TwoHeads"=>$TwoHeads,"Ticks"=>$Ticks));
1305
+        }
1306
+
1307
+        /* Draw the 1st Head */
1308
+        $TailX = cos(($Angle-180)*PI/180)*$Size+$X2;
1309
+        $TailY = sin(($Angle-180)*PI/180)*$Size+$Y2;
1310
+
1311
+        $Points	= "";
1312
+        $Points[]  = $X2; $Points[]  = $Y2;
1313
+        $Points[]	= cos(($Angle-90)*PI/180)*$Size*$Ratio+$TailX; $Points[] = sin(($Angle-90)*PI/180)*$Size*$Ratio+$TailY;
1314
+        $Points[]	= cos(($Angle-270)*PI/180)*$Size*$Ratio+$TailX; $Points[] = sin(($Angle-270)*PI/180)*$Size*$Ratio+$TailY;
1315
+        $Points[]  = $X2; $Points[]  = $Y2;
1316
+
1317
+        /* Visual correction */
1318
+        if ($Angle == 180 || $Angle == 360 ) { $Points[4] = $Points[2]; }
1319
+        if ($Angle == 90 || $Angle == 270 ) { $Points[5] = $Points[3]; }
1320
+
1321
+        $ArrowColor = $this->allocateColor($this->Picture,$FillR,$FillG,$FillB,$Alpha);
1322
+        ImageFilledPolygon($this->Picture,$Points,4,$ArrowColor);
1323
+
1324
+        $this->drawLine($Points[0],$Points[1],$Points[2],$Points[3],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1325
+        $this->drawLine($Points[2],$Points[3],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1326
+        $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1327
+
1328
+        /* Draw the second head */
1329
+        if ( $TwoHeads )
1330
+        {
1331
+        $Angle = $this->getAngle($X2,$Y2,$X1,$Y1);
1332
+
1333
+        $TailX2 = cos(($Angle-180)*PI/180)*$Size+$X1;
1334
+        $TailY2 = sin(($Angle-180)*PI/180)*$Size+$Y1;
1335
+
1336
+        $Points   = "";
1337
+        $Points[] = $X1; $Points[]  = $Y1;
1338
+        $Points[] = cos(($Angle-90)*PI/180)*$Size*$Ratio+$TailX2; $Points[] = sin(($Angle-90)*PI/180)*$Size*$Ratio+$TailY2;
1339
+        $Points[] = cos(($Angle-270)*PI/180)*$Size*$Ratio+$TailX2; $Points[] = sin(($Angle-270)*PI/180)*$Size*$Ratio+$TailY2;
1340
+        $Points[] = $X1; $Points[]  = $Y1;
1341
+
1342
+        /* Visual correction */
1343
+        if ($Angle == 180 || $Angle == 360 ) { $Points[4] = $Points[2]; }
1344
+        if ($Angle == 90 || $Angle == 270 ) { $Points[5] = $Points[3]; }
1345
+
1346
+        $ArrowColor = $this->allocateColor($this->Picture,$FillR,$FillG,$FillB,$Alpha);
1347
+        ImageFilledPolygon($this->Picture,$Points,4,$ArrowColor);
1348
+
1349
+        $this->drawLine($Points[0],$Points[1],$Points[2],$Points[3],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1350
+        $this->drawLine($Points[2],$Points[3],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1351
+        $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1352
+
1353
+        $this->drawLine($TailX,$TailY,$TailX2,$TailY2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1354
+        }
1355
+        else
1356
+        $this->drawLine($X1,$Y1,$TailX,$TailY,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1357
+
1358
+        /* Re-enable shadows */
1359
+        $this->Shadow = $RestoreShadow;
1360 1360
     }
1361 1361
 
1362
-   /* Draw a label with associated arrow */
1363
-   function drawArrowLabel($X1,$Y1,$Text,$Format="")
1362
+    /* Draw a label with associated arrow */
1363
+    function drawArrowLabel($X1,$Y1,$Text,$Format="")
1364 1364
     {
1365
-     $FillR    = isset($Format["FillR"]) ? $Format["FillR"] : 0;
1366
-     $FillG    = isset($Format["FillG"]) ? $Format["FillG"] : 0;
1367
-     $FillB    = isset($Format["FillB"]) ? $Format["FillB"] : 0;
1368
-     $BorderR  = isset($Format["BorderR"]) ? $Format["BorderR"] : $FillR;
1369
-     $BorderG  = isset($Format["BorderG"]) ? $Format["BorderG"] : $FillG;
1370
-     $BorderB  = isset($Format["BorderB"]) ? $Format["BorderB"] : $FillB;
1371
-     $FontName = isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1372
-     $FontSize = isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1373
-     $Alpha    = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1374
-     $Length   = isset($Format["Length"]) ? $Format["Length"] : 50;
1375
-     $Angle    = isset($Format["Angle"]) ? $Format["Angle"] : 315;
1376
-     $Size     = isset($Format["Size"]) ? $Format["Size"] : 10;
1377
-     $Position = isset($Format["Position"]) ? $Format["Position"] : POSITION_TOP;
1378
-     $RoundPos = isset($Format["RoundPos"]) ? $Format["RoundPos"] : FALSE;
1379
-     $Ticks    = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
1380
-
1381
-     $Angle = $Angle % 360;
1382
-
1383
-     $X2 = sin(($Angle+180)*PI/180)*$Length+$X1;
1384
-     $Y2 = cos(($Angle+180)*PI/180)*$Length+$Y1;
1385
-
1386
-     if ( $RoundPos && $Angle > 0 && $Angle < 180 ) { $Y2 = ceil($Y2); }
1387
-     if ( $RoundPos && $Angle > 180 ) { $Y2 = floor($Y2); }
1388
-
1389
-     $this->drawArrow($X2,$Y2,$X1,$Y1,$Format);
1390
-
1391
-     $Size	= imagettfbbox($FontSize,0,$FontName,$Text);
1392
-     $TxtWidth	= max(abs($Size[2]-$Size[0]),abs($Size[0]-$Size[6]));
1393
-     $TxtHeight	= max(abs($Size[1]-$Size[7]),abs($Size[3]-$Size[1]));
1394
-
1395
-     if ( $Angle > 0 && $Angle < 180 )
1396
-      {
1397
-       $this->drawLine($X2,$Y2,$X2-$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1398
-       if ( $Position == POSITION_TOP )
1365
+        $FillR    = isset($Format["FillR"]) ? $Format["FillR"] : 0;
1366
+        $FillG    = isset($Format["FillG"]) ? $Format["FillG"] : 0;
1367
+        $FillB    = isset($Format["FillB"]) ? $Format["FillB"] : 0;
1368
+        $BorderR  = isset($Format["BorderR"]) ? $Format["BorderR"] : $FillR;
1369
+        $BorderG  = isset($Format["BorderG"]) ? $Format["BorderG"] : $FillG;
1370
+        $BorderB  = isset($Format["BorderB"]) ? $Format["BorderB"] : $FillB;
1371
+        $FontName = isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1372
+        $FontSize = isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1373
+        $Alpha    = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1374
+        $Length   = isset($Format["Length"]) ? $Format["Length"] : 50;
1375
+        $Angle    = isset($Format["Angle"]) ? $Format["Angle"] : 315;
1376
+        $Size     = isset($Format["Size"]) ? $Format["Size"] : 10;
1377
+        $Position = isset($Format["Position"]) ? $Format["Position"] : POSITION_TOP;
1378
+        $RoundPos = isset($Format["RoundPos"]) ? $Format["RoundPos"] : FALSE;
1379
+        $Ticks    = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
1380
+
1381
+        $Angle = $Angle % 360;
1382
+
1383
+        $X2 = sin(($Angle+180)*PI/180)*$Length+$X1;
1384
+        $Y2 = cos(($Angle+180)*PI/180)*$Length+$Y1;
1385
+
1386
+        if ( $RoundPos && $Angle > 0 && $Angle < 180 ) { $Y2 = ceil($Y2); }
1387
+        if ( $RoundPos && $Angle > 180 ) { $Y2 = floor($Y2); }
1388
+
1389
+        $this->drawArrow($X2,$Y2,$X1,$Y1,$Format);
1390
+
1391
+        $Size	= imagettfbbox($FontSize,0,$FontName,$Text);
1392
+        $TxtWidth	= max(abs($Size[2]-$Size[0]),abs($Size[0]-$Size[6]));
1393
+        $TxtHeight	= max(abs($Size[1]-$Size[7]),abs($Size[3]-$Size[1]));
1394
+
1395
+        if ( $Angle > 0 && $Angle < 180 )
1396
+        {
1397
+        $this->drawLine($X2,$Y2,$X2-$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1398
+        if ( $Position == POSITION_TOP )
1399 1399
         $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_BOTTOMRIGHT));
1400
-       else
1400
+        else
1401 1401
         $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPRIGHT));
1402
-      }
1403
-     else
1404
-      {
1405
-       $this->drawLine($X2,$Y2,$X2+$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1406
-       if ( $Position == POSITION_TOP )
1402
+        }
1403
+        else
1404
+        {
1405
+        $this->drawLine($X2,$Y2,$X2+$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1406
+        if ( $Position == POSITION_TOP )
1407 1407
         $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1408
-       else
1408
+        else
1409 1409
         $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPLEFT));
1410
-      }
1410
+        }
1411 1411
     }
1412 1412
 
1413
-   /* Draw a progress bar filled with specified % */
1414
-   function drawProgress($X,$Y,$Percent,$Format="")
1413
+    /* Draw a progress bar filled with specified % */
1414
+    function drawProgress($X,$Y,$Percent,$Format="")
1415 1415
     {
1416
-     if ( $Percent > 100 ) { $Percent = 100; }
1417
-     if ( $Percent < 0 ) { $Percent = 0; }
1418
-
1419
-     $Width	= isset($Format["Width"]) ? $Format["Width"] : 200;
1420
-     $Height	= isset($Format["Height"]) ? $Format["Height"] : 20;
1421
-     $Orientation = isset($Format["Orientation"]) ? $Format["Orientation"] : ORIENTATION_HORIZONTAL;
1422
-     $ShowLabel = isset($Format["ShowLabel"]) ? $Format["ShowLabel"] : FALSE;
1423
-     $LabelPos	= isset($Format["LabelPos"]) ? $Format["LabelPos"] : LABEL_POS_INSIDE;
1424
-     $Margin    = isset($Format["Margin"]) ? $Format["Margin"] : 10;
1425
-     $R		= isset($Format["R"]) ? $Format["R"] : 130;
1426
-     $G		= isset($Format["G"]) ? $Format["G"] : 130;
1427
-     $B		= isset($Format["B"]) ? $Format["B"] : 130;
1428
-     $RFade	= isset($Format["RFade"]) ? $Format["RFade"] : -1;
1429
-     $GFade	= isset($Format["GFade"]) ? $Format["GFade"] : -1;
1430
-     $BFade	= isset($Format["BFade"]) ? $Format["BFade"] : -1;
1431
-     $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
1432
-     $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
1433
-     $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
1434
-     $BoxBorderR = isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 0;
1435
-     $BoxBorderG = isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 0;
1436
-     $BoxBorderB = isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 0;
1437
-     $BoxBackR	= isset($Format["BoxBackR"]) ? $Format["BoxBackR"] : 255;
1438
-     $BoxBackG	= isset($Format["BoxBackG"]) ? $Format["BoxBackG"] : 255;
1439
-     $BoxBackB	= isset($Format["BoxBackB"]) ? $Format["BoxBackB"] : 255;
1440
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1441
-     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
1442
-     $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : NULL;
1443
-     $NoAngle	= isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
1444
-
1445
-     if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1446
-      {
1447
-       $RFade = (($RFade-$R)/100)*$Percent+$R;
1448
-       $GFade = (($GFade-$G)/100)*$Percent+$G;
1449
-       $BFade = (($BFade-$B)/100)*$Percent+$B;
1450
-      }
1451
-
1452
-     if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1453
-     if ( $BoxSurrounding != NULL ) { $BoxBorderR = $BoxBackR + $Surrounding; $BoxBorderG = $BoxBackG + $Surrounding; $BoxBorderB = $BoxBackB + $Surrounding; }
1454
-
1455
-     if ( $Orientation == ORIENTATION_VERTICAL )
1456
-      {
1457
-       $InnerHeight = (($Height-2)/100)*$Percent;
1458
-       $this->drawFilledRectangle($X,$Y,$X+$Width,$Y-$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1459
-
1460
-       $RestoreShadow = $this->Shadow; $this->Shadow  = FALSE;
1461
-       if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1462
-        {
1463
-         $GradientOptions = array("StartR"=>$RFade,"StartG"=>$GFade,"StartB"=>$BFade,"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
1464
-         $this->drawGradientArea($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,DIRECTION_VERTICAL,$GradientOptions);
1465
-
1466
-         if ( $Surrounding )
1467
-          $this->drawRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1468
-        }
1469
-       else
1416
+        if ( $Percent > 100 ) { $Percent = 100; }
1417
+        if ( $Percent < 0 ) { $Percent = 0; }
1418
+
1419
+        $Width	= isset($Format["Width"]) ? $Format["Width"] : 200;
1420
+        $Height	= isset($Format["Height"]) ? $Format["Height"] : 20;
1421
+        $Orientation = isset($Format["Orientation"]) ? $Format["Orientation"] : ORIENTATION_HORIZONTAL;
1422
+        $ShowLabel = isset($Format["ShowLabel"]) ? $Format["ShowLabel"] : FALSE;
1423
+        $LabelPos	= isset($Format["LabelPos"]) ? $Format["LabelPos"] : LABEL_POS_INSIDE;
1424
+        $Margin    = isset($Format["Margin"]) ? $Format["Margin"] : 10;
1425
+        $R		= isset($Format["R"]) ? $Format["R"] : 130;
1426
+        $G		= isset($Format["G"]) ? $Format["G"] : 130;
1427
+        $B		= isset($Format["B"]) ? $Format["B"] : 130;
1428
+        $RFade	= isset($Format["RFade"]) ? $Format["RFade"] : -1;
1429
+        $GFade	= isset($Format["GFade"]) ? $Format["GFade"] : -1;
1430
+        $BFade	= isset($Format["BFade"]) ? $Format["BFade"] : -1;
1431
+        $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
1432
+        $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
1433
+        $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
1434
+        $BoxBorderR = isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 0;
1435
+        $BoxBorderG = isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 0;
1436
+        $BoxBorderB = isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 0;
1437
+        $BoxBackR	= isset($Format["BoxBackR"]) ? $Format["BoxBackR"] : 255;
1438
+        $BoxBackG	= isset($Format["BoxBackG"]) ? $Format["BoxBackG"] : 255;
1439
+        $BoxBackB	= isset($Format["BoxBackB"]) ? $Format["BoxBackB"] : 255;
1440
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1441
+        $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
1442
+        $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : NULL;
1443
+        $NoAngle	= isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
1444
+
1445
+        if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1446
+        {
1447
+        $RFade = (($RFade-$R)/100)*$Percent+$R;
1448
+        $GFade = (($GFade-$G)/100)*$Percent+$G;
1449
+        $BFade = (($BFade-$B)/100)*$Percent+$B;
1450
+        }
1451
+
1452
+        if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1453
+        if ( $BoxSurrounding != NULL ) { $BoxBorderR = $BoxBackR + $Surrounding; $BoxBorderG = $BoxBackG + $Surrounding; $BoxBorderB = $BoxBackB + $Surrounding; }
1454
+
1455
+        if ( $Orientation == ORIENTATION_VERTICAL )
1456
+        {
1457
+        $InnerHeight = (($Height-2)/100)*$Percent;
1458
+        $this->drawFilledRectangle($X,$Y,$X+$Width,$Y-$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1459
+
1460
+        $RestoreShadow = $this->Shadow; $this->Shadow  = FALSE;
1461
+        if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1462
+        {
1463
+            $GradientOptions = array("StartR"=>$RFade,"StartG"=>$GFade,"StartB"=>$BFade,"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
1464
+            $this->drawGradientArea($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,DIRECTION_VERTICAL,$GradientOptions);
1465
+
1466
+            if ( $Surrounding )
1467
+            $this->drawRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1468
+        }
1469
+        else
1470 1470
         $this->drawFilledRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1471 1471
 
1472
-       $this->Shadow = $RestoreShadow;
1472
+        $this->Shadow = $RestoreShadow;
1473 1473
 
1474
-       if ( $ShowLabel && $LabelPos == LABEL_POS_BOTTOM )	{ $this->drawText($X+($Width/2),$Y+$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_TOPMIDDLE)); }
1475
-       if ( $ShowLabel && $LabelPos == LABEL_POS_TOP )		{ $this->drawText($X+($Width/2),$Y-$Height-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
1476
-       if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+($Width/2),$Y-$InnerHeight-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT,"Angle"=>90)); }
1477
-       if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y-($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"Angle"=>90)); }
1478
-      }
1479
-     else
1480
-      {
1481
-       if ( $Percent == 100 )
1474
+        if ( $ShowLabel && $LabelPos == LABEL_POS_BOTTOM )	{ $this->drawText($X+($Width/2),$Y+$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_TOPMIDDLE)); }
1475
+        if ( $ShowLabel && $LabelPos == LABEL_POS_TOP )		{ $this->drawText($X+($Width/2),$Y-$Height-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
1476
+        if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+($Width/2),$Y-$InnerHeight-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT,"Angle"=>90)); }
1477
+        if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y-($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"Angle"=>90)); }
1478
+        }
1479
+        else
1480
+        {
1481
+        if ( $Percent == 100 )
1482 1482
         $InnerWidth = $Width-1;
1483
-       else
1483
+        else
1484 1484
         $InnerWidth = (($Width-2)/100)*$Percent;
1485 1485
 
1486
-       $this->drawFilledRectangle($X,$Y,$X+$Width,$Y+$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1486
+        $this->drawFilledRectangle($X,$Y,$X+$Width,$Y+$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1487 1487
 
1488
-       $RestoreShadow = $this->Shadow; $this->Shadow  = FALSE;
1489
-       if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1488
+        $RestoreShadow = $this->Shadow; $this->Shadow  = FALSE;
1489
+        if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1490 1490
         {
1491
-         $GradientOptions = array("StartR"=>$R,"StartG"=>$G,"StartB"=>$B,"EndR"=>$RFade,"EndG"=>$GFade,"EndB"=>$BFade);
1492
-         $this->drawGradientArea($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,DIRECTION_HORIZONTAL,$GradientOptions);
1491
+            $GradientOptions = array("StartR"=>$R,"StartG"=>$G,"StartB"=>$B,"EndR"=>$RFade,"EndG"=>$GFade,"EndB"=>$BFade);
1492
+            $this->drawGradientArea($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,DIRECTION_HORIZONTAL,$GradientOptions);
1493 1493
 
1494
-         if ( $Surrounding )
1495
-          $this->drawRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1494
+            if ( $Surrounding )
1495
+            $this->drawRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1496 1496
         }
1497
-       else
1497
+        else
1498 1498
         $this->drawFilledRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1499 1499
  
1500
-       $this->Shadow = $RestoreShadow;
1500
+        $this->Shadow = $RestoreShadow;
1501 1501
 
1502
-       if ( $ShowLabel && $LabelPos == LABEL_POS_LEFT )		{ $this->drawText($X-$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLERIGHT)); }
1503
-       if ( $ShowLabel && $LabelPos == LABEL_POS_RIGHT )	{ $this->drawText($X+$Width+$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1504
-       if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE)); }
1505
-       if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+$InnerWidth+$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1506
-      }
1502
+        if ( $ShowLabel && $LabelPos == LABEL_POS_LEFT )		{ $this->drawText($X-$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLERIGHT)); }
1503
+        if ( $ShowLabel && $LabelPos == LABEL_POS_RIGHT )	{ $this->drawText($X+$Width+$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1504
+        if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE)); }
1505
+        if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+$InnerWidth+$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1506
+        }
1507 1507
     }
1508 1508
 
1509
-   /* Get the legend box size */
1510
-   function getLegendSize($Format="")
1509
+    /* Get the legend box size */
1510
+    function getLegendSize($Format="")
1511 1511
     {
1512
-     $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1513
-     $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1514
-     $BoxSize		= isset($Format["BoxSize"]) ? $Format["BoxSize"] : 5;
1515
-     $Margin		= isset($Format["Margin"]) ? $Format["Margin"] : 5;
1516
-     $Style		= isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1517
-     $Mode		= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1518
-     $BoxWidth		= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1519
-     $BoxHeight		= isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1520
-     $IconAreaWidth	= isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1521
-     $IconAreaHeight	= isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1522
-     $XSpacing		= isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1523
-
1524
-     $Data = $this->DataSet->getData();
1525
-
1526
-     foreach($Data["Series"] as $SerieName => $Serie)
1527
-      {
1528
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1512
+        $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1513
+        $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1514
+        $BoxSize		= isset($Format["BoxSize"]) ? $Format["BoxSize"] : 5;
1515
+        $Margin		= isset($Format["Margin"]) ? $Format["Margin"] : 5;
1516
+        $Style		= isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1517
+        $Mode		= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1518
+        $BoxWidth		= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1519
+        $BoxHeight		= isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1520
+        $IconAreaWidth	= isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1521
+        $IconAreaHeight	= isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1522
+        $XSpacing		= isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1523
+
1524
+        $Data = $this->DataSet->getData();
1525
+
1526
+        foreach($Data["Series"] as $SerieName => $Serie)
1529 1527
         {
1530
-         list($PicWidth,$PicHeight) = $this->getPicInfo($Serie["Picture"]);
1531
-         if ( $IconAreaWidth < $PicWidth ) { $IconAreaWidth = $PicWidth; }
1532
-         if ( $IconAreaHeight < $PicHeight ) { $IconAreaHeight = $PicHeight; }
1528
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1529
+        {
1530
+            list($PicWidth,$PicHeight) = $this->getPicInfo($Serie["Picture"]);
1531
+            if ( $IconAreaWidth < $PicWidth ) { $IconAreaWidth = $PicWidth; }
1532
+            if ( $IconAreaHeight < $PicHeight ) { $IconAreaHeight = $PicHeight; }
1533
+        }
1533 1534
         }
1534
-      }
1535 1535
 
1536
-     $YStep = max($this->FontSize,$IconAreaHeight) + 5;
1537
-     $XStep = $IconAreaWidth + 5;
1538
-     $XStep = $XSpacing;
1536
+        $YStep = max($this->FontSize,$IconAreaHeight) + 5;
1537
+        $XStep = $IconAreaWidth + 5;
1538
+        $XStep = $XSpacing;
1539 1539
 
1540
-     $X=100; $Y=100;
1540
+        $X=100; $Y=100;
1541 1541
 
1542
-     $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
1543
-     foreach($Data["Series"] as $SerieName => $Serie)
1544
-      {
1545
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1542
+        $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
1543
+        foreach($Data["Series"] as $SerieName => $Serie)
1546 1544
         {
1547
-         if ( $Mode == LEGEND_VERTICAL )
1548
-          {
1549
-           $BoxArray = $this->getTextBox($vX+$IconAreaWidth+4,$vY+$IconAreaHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
1545
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1546
+        {
1547
+            if ( $Mode == LEGEND_VERTICAL )
1548
+            {
1549
+            $BoxArray = $this->getTextBox($vX+$IconAreaWidth+4,$vY+$IconAreaHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
1550 1550
 
1551
-           if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1552
-           if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1553
-           if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1551
+            if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1552
+            if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1553
+            if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1554 1554
 
1555
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1556
-           $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1557
-          }
1558
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1559
-          {
1560
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1561
-           $Width = "";
1562
-           foreach($Lines as $Key => $Value)
1555
+            $Lines = preg_split("/\n/",$Serie["Description"]);
1556
+            $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1557
+            }
1558
+            elseif ( $Mode == LEGEND_HORIZONTAL )
1559
+            {
1560
+            $Lines = preg_split("/\n/",$Serie["Description"]);
1561
+            $Width = "";
1562
+            foreach($Lines as $Key => $Value)
1563 1563
             {
1564
-             $BoxArray = $this->getTextBox($vX+$IconAreaWidth+6,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$FontName,$FontSize,0,$Value);
1564
+                $BoxArray = $this->getTextBox($vX+$IconAreaWidth+6,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$FontName,$FontSize,0,$Value);
1565 1565
 
1566
-             if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1567
-             if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1568
-             if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1566
+                if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1567
+                if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1568
+                if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1569 1569
 
1570
-             $Width[] = $BoxArray[1]["X"];
1570
+                $Width[] = $BoxArray[1]["X"];
1571 1571
             }
1572 1572
 
1573
-           $vX=max($Width)+$XStep;
1574
-          }
1573
+            $vX=max($Width)+$XStep;
1574
+            }
1575
+        }
1575 1576
         }
1576
-      }
1577
-     $vY=$vY-$YStep; $vX=$vX-$XStep;
1577
+        $vY=$vY-$YStep; $vX=$vX-$XStep;
1578 1578
 
1579
-     $TopOffset  = $Y - $Boundaries["T"];
1580
-     if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1579
+        $TopOffset  = $Y - $Boundaries["T"];
1580
+        if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1581 1581
 
1582
-     $Width  = ($Boundaries["R"]+$Margin) - ($Boundaries["L"]-$Margin);
1583
-     $Height = ($Boundaries["B"]+$Margin) - ($Boundaries["T"]-$Margin);
1582
+        $Width  = ($Boundaries["R"]+$Margin) - ($Boundaries["L"]-$Margin);
1583
+        $Height = ($Boundaries["B"]+$Margin) - ($Boundaries["T"]-$Margin);
1584 1584
 
1585
-     return(array("Width"=>$Width,"Height"=>$Height));
1585
+        return(array("Width"=>$Width,"Height"=>$Height));
1586 1586
     }
1587 1587
 
1588
-   /* Draw the legend of the active series */
1589
-   function drawLegend($X,$Y,$Format="")
1588
+    /* Draw the legend of the active series */
1589
+    function drawLegend($X,$Y,$Format="")
1590 1590
     {
1591
-     $Family	= isset($Format["Family"]) ? $Format["Family"] : LEGEND_FAMILY_BOX;
1592
-     $FontName	= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1593
-     $FontSize	= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1594
-     $FontR	= isset($Format["FontR"]) ? $Format["FontR"] : $this->FontColorR;
1595
-     $FontG	= isset($Format["FontG"]) ? $Format["FontG"] : $this->FontColorG;
1596
-     $FontB	= isset($Format["FontB"]) ? $Format["FontB"] : $this->FontColorB;
1597
-     $BoxWidth	= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1598
-     $BoxHeight	= isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1599
-     $IconAreaWidth	= isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1600
-     $IconAreaHeight	= isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1601
-     $XSpacing	= isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1602
-     $Margin	= isset($Format["Margin"]) ? $Format["Margin"] : 5;
1603
-     $R		= isset($Format["R"]) ? $Format["R"] : 200;
1604
-     $G		= isset($Format["G"]) ? $Format["G"] : 200;
1605
-     $B		= isset($Format["B"]) ? $Format["B"] : 200;
1606
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1607
-     $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : 255;
1608
-     $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : 255;
1609
-     $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : 255;
1610
-     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
1611
-     $Style	= isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1612
-     $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1613
-
1614
-     if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1615
-
1616
-     $Data = $this->DataSet->getData();
1617
-
1618
-     foreach($Data["Series"] as $SerieName => $Serie)
1619
-      {
1620
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1621
-        {
1622
-         list($PicWidth,$PicHeight) = $this->getPicInfo($Serie["Picture"]);
1623
-         if ( $IconAreaWidth < $PicWidth ) { $IconAreaWidth = $PicWidth; }
1624
-         if ( $IconAreaHeight < $PicHeight ) { $IconAreaHeight = $PicHeight; }
1625
-        }
1626
-      }
1627
-
1628
-     $YStep = max($this->FontSize,$IconAreaHeight) + 5;
1629
-     $XStep = $IconAreaWidth + 5;
1630
-     $XStep = $XSpacing;
1631
-
1632
-     $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
1633
-     foreach($Data["Series"] as $SerieName => $Serie)
1634
-      {
1635
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1636
-        {
1637
-         if ( $Mode == LEGEND_VERTICAL )
1638
-          {
1639
-           $BoxArray = $this->getTextBox($vX+$IconAreaWidth+4,$vY+$IconAreaHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
1640
-
1641
-           if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1642
-           if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1643
-           if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1644
-
1645
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1646
-           $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1647
-          }
1648
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1649
-          {
1650
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1651
-           $Width = "";
1652
-           foreach($Lines as $Key => $Value)
1653
-            {
1654
-             $BoxArray = $this->getTextBox($vX+$IconAreaWidth+6,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$FontName,$FontSize,0,$Value);
1655
-
1656
-             if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1657
-             if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1658
-             if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1659
-
1660
-             $Width[] = $BoxArray[1]["X"];
1661
-            }
1662
-
1663
-           $vX=max($Width)+$XStep;
1664
-          }
1665
-        }
1666
-      }
1667
-     $vY=$vY-$YStep; $vX=$vX-$XStep;
1668
-
1669
-     $TopOffset  = $Y - $Boundaries["T"];
1670
-     if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1671
-
1672
-     if ( $Style == LEGEND_ROUND )
1673
-      $this->drawRoundedFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1674
-     elseif ( $Style == LEGEND_BOX )
1675
-      $this->drawFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1676
-
1677
-     $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
1678
-     foreach($Data["Series"] as $SerieName => $Serie)
1679
-      {
1680
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1681
-        {
1682
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"];
1683
-         $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
1684
-
1685
-         if ( isset($Serie["Picture"]) )
1686
-          {
1687
-           $Picture = $Serie["Picture"];
1688
-           list($PicWidth,$PicHeight) = $this->getPicInfo($Picture);
1689
-           $PicX = $X+$IconAreaWidth/2; $PicY = $Y+$IconAreaHeight/2; 
1690
-
1691
-           $this->drawFromPNG($PicX-$PicWidth/2,$PicY-$PicHeight/2,$Picture);
1692
-          }
1693
-         else
1694
-          {
1695
-           if ( $Family == LEGEND_FAMILY_BOX )
1591
+        $Family	= isset($Format["Family"]) ? $Format["Family"] : LEGEND_FAMILY_BOX;
1592
+        $FontName	= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1593
+        $FontSize	= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1594
+        $FontR	= isset($Format["FontR"]) ? $Format["FontR"] : $this->FontColorR;
1595
+        $FontG	= isset($Format["FontG"]) ? $Format["FontG"] : $this->FontColorG;
1596
+        $FontB	= isset($Format["FontB"]) ? $Format["FontB"] : $this->FontColorB;
1597
+        $BoxWidth	= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1598
+        $BoxHeight	= isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1599
+        $IconAreaWidth	= isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1600
+        $IconAreaHeight	= isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1601
+        $XSpacing	= isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1602
+        $Margin	= isset($Format["Margin"]) ? $Format["Margin"] : 5;
1603
+        $R		= isset($Format["R"]) ? $Format["R"] : 200;
1604
+        $G		= isset($Format["G"]) ? $Format["G"] : 200;
1605
+        $B		= isset($Format["B"]) ? $Format["B"] : 200;
1606
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1607
+        $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : 255;
1608
+        $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : 255;
1609
+        $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : 255;
1610
+        $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
1611
+        $Style	= isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1612
+        $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1613
+
1614
+        if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1615
+
1616
+        $Data = $this->DataSet->getData();
1617
+
1618
+        foreach($Data["Series"] as $SerieName => $Serie)
1619
+        {
1620
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1621
+        {
1622
+            list($PicWidth,$PicHeight) = $this->getPicInfo($Serie["Picture"]);
1623
+            if ( $IconAreaWidth < $PicWidth ) { $IconAreaWidth = $PicWidth; }
1624
+            if ( $IconAreaHeight < $PicHeight ) { $IconAreaHeight = $PicHeight; }
1625
+        }
1626
+        }
1627
+
1628
+        $YStep = max($this->FontSize,$IconAreaHeight) + 5;
1629
+        $XStep = $IconAreaWidth + 5;
1630
+        $XStep = $XSpacing;
1631
+
1632
+        $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
1633
+        foreach($Data["Series"] as $SerieName => $Serie)
1634
+        {
1635
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1636
+        {
1637
+            if ( $Mode == LEGEND_VERTICAL )
1696 1638
             {
1697
-             if ( $BoxWidth != $IconAreaWidth ) { $XOffset = floor(($IconAreaWidth-$BoxWidth)/2); } else { $XOffset = 0; }
1698
-             if ( $BoxHeight != $IconAreaHeight ) { $YOffset = floor(($IconAreaHeight-$BoxHeight)/2); } else { $YOffset = 0; }
1639
+            $BoxArray = $this->getTextBox($vX+$IconAreaWidth+4,$vY+$IconAreaHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
1699 1640
 
1700
-             $this->drawFilledRectangle($X+1+$XOffset,$Y+1+$YOffset,$X+$BoxWidth+$XOffset+1,$Y+$BoxHeight+1+$YOffset,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1701
-             $this->drawFilledRectangle($X+$XOffset,$Y+$YOffset,$X+$BoxWidth+$XOffset,$Y+$BoxHeight+$YOffset,array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1641
+            if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1642
+            if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1643
+            if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1644
+
1645
+            $Lines = preg_split("/\n/",$Serie["Description"]);
1646
+            $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1702 1647
             }
1703
-           elseif ( $Family == LEGEND_FAMILY_CIRCLE )
1648
+            elseif ( $Mode == LEGEND_HORIZONTAL )
1704 1649
             {
1705
-             $this->drawFilledCircle($X+1+$IconAreaWidth/2,$Y+1+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1706
-             $this->drawFilledCircle($X+$IconAreaWidth/2,$Y+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1707
-            }
1708
-           elseif ( $Family == LEGEND_FAMILY_LINE )
1650
+            $Lines = preg_split("/\n/",$Serie["Description"]);
1651
+            $Width = "";
1652
+            foreach($Lines as $Key => $Value)
1709 1653
             {
1710
-             $this->drawLine($X+1,$Y+1+$IconAreaHeight/2,$X+1+$IconAreaWidth,$Y+1+$IconAreaHeight/2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20,"Ticks"=>$Ticks,"Weight"=>$Weight));
1711
-             $this->drawLine($X,$Y+$IconAreaHeight/2,$X+$IconAreaWidth,$Y+$IconAreaHeight/2,array("R"=>$R,"G"=>$G,"B"=>$B,"Ticks"=>$Ticks,"Weight"=>$Weight));
1712
-            }
1713
-          }
1654
+                $BoxArray = $this->getTextBox($vX+$IconAreaWidth+6,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$FontName,$FontSize,0,$Value);
1714 1655
 
1715
-         if ( $Mode == LEGEND_VERTICAL )
1716
-          {
1717
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1718
-           foreach($Lines as $Key => $Value)
1719
-            $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1656
+                if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1657
+                if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1658
+                if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1720 1659
 
1721
-           $Y=$Y+max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1722
-          }
1723
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1724
-          {
1725
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1726
-           $Width = "";
1727
-           foreach($Lines as $Key => $Value)
1728
-            {
1729
-             $BoxArray = $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1730
-             $Width[] = $BoxArray[1]["X"];
1660
+                $Width[] = $BoxArray[1]["X"];
1661
+            }
1662
+
1663
+            $vX=max($Width)+$XStep;
1731 1664
             }
1732
-           $X=max($Width)+2+$XStep;
1733
-          }
1734 1665
         }
1735
-      }
1666
+        }
1667
+        $vY=$vY-$YStep; $vX=$vX-$XStep;
1736 1668
 
1669
+        $TopOffset  = $Y - $Boundaries["T"];
1670
+        if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1737 1671
 
1738
-     $this->Shadow = $RestoreShadow;
1739
-    }
1672
+        if ( $Style == LEGEND_ROUND )
1673
+        $this->drawRoundedFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1674
+        elseif ( $Style == LEGEND_BOX )
1675
+        $this->drawFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1740 1676
 
1741
-   function drawScale($Format="")
1742
-    {
1743
-     $Pos		= isset($Format["Pos"]) ? $Format["Pos"] : SCALE_POS_LEFTRIGHT;
1744
-     $Floating		= isset($Format["Floating"]) ? $Format["Floating"] : FALSE;
1745
-     $Mode		= isset($Format["Mode"]) ? $Format["Mode"] : SCALE_MODE_FLOATING;
1746
-     $RemoveXAxis	= isset($Format["RemoveXAxis"]) ? $Format["RemoveXAxis"] : FALSE;
1747
-     $MinDivHeight	= isset($Format["MinDivHeight"]) ? $Format["MinDivHeight"] : 20;
1748
-     $Factors		= isset($Format["Factors"]) ? $Format["Factors"] : array(1,2,5);
1749
-     $ManualScale	= isset($Format["ManualScale"]) ? $Format["ManualScale"] : array("0"=>array("Min"=>-100,"Max"=>100));
1750
-     $XMargin		= isset($Format["XMargin"]) ? $Format["XMargin"] : AUTO;
1751
-     $YMargin		= isset($Format["YMargin"]) ? $Format["YMargin"] : 0;
1752
-     $ScaleSpacing	= isset($Format["ScaleSpacing"]) ? $Format["ScaleSpacing"] : 15;
1753
-     $InnerTickWidth	= isset($Format["InnerTickWidth"]) ? $Format["InnerTickWidth"] : 2;
1754
-     $OuterTickWidth	= isset($Format["OuterTickWidth"]) ? $Format["OuterTickWidth"] : 2;
1755
-     $DrawXLines	= isset($Format["DrawXLines"]) ? $Format["DrawXLines"] : TRUE;
1756
-     $DrawYLines	= isset($Format["DrawYLines"]) ? $Format["DrawYLines"] : ALL;
1757
-     $GridTicks		= isset($Format["GridTicks"]) ? $Format["GridTicks"] : 4;
1758
-     $GridR		= isset($Format["GridR"]) ? $Format["GridR"] : 255;
1759
-     $GridG		= isset($Format["GridG"]) ? $Format["GridG"] : 255;
1760
-     $GridB		= isset($Format["GridB"]) ? $Format["GridB"] : 255;
1761
-     $GridAlpha		= isset($Format["GridAlpha"]) ? $Format["GridAlpha"] : 40;
1762
-     $AxisRo		= isset($Format["AxisR"]) ? $Format["AxisR"] : 0;
1763
-     $AxisGo		= isset($Format["AxisG"]) ? $Format["AxisG"] : 0;
1764
-     $AxisBo		= isset($Format["AxisB"]) ? $Format["AxisB"] : 0;
1765
-     $AxisAlpha		= isset($Format["AxisAlpha"]) ? $Format["AxisAlpha"] : 100;
1766
-     $TickRo		= isset($Format["TickR"]) ? $Format["TickR"] : 0;
1767
-     $TickGo		= isset($Format["TickG"]) ? $Format["TickG"] : 0;
1768
-     $TickBo		= isset($Format["TickB"]) ? $Format["TickB"] : 0;
1769
-     $TickAlpha		= isset($Format["TickAlpha"]) ? $Format["TickAlpha"] : 100;
1770
-     $DrawSubTicks	= isset($Format["DrawSubTicks"]) ? $Format["DrawSubTicks"] : FALSE;
1771
-     $InnerSubTickWidth	= isset($Format["InnerSubTickWidth"]) ? $Format["InnerSubTickWidth"] : 0;
1772
-     $OuterSubTickWidth	= isset($Format["OuterSubTickWidth"]) ? $Format["OuterSubTickWidth"] : 2;
1773
-     $SubTickR		= isset($Format["SubTickR"]) ? $Format["SubTickR"] : 255;
1774
-     $SubTickG		= isset($Format["SubTickG"]) ? $Format["SubTickG"] : 0;
1775
-     $SubTickB		= isset($Format["SubTickB"]) ? $Format["SubTickB"] : 0;
1776
-     $SubTickAlpha	= isset($Format["SubTickAlpha"]) ? $Format["SubTickAlpha"] : 100;
1777
-     $AutoAxisLabels	= isset($Format["AutoAxisLabels"]) ? $Format["AutoAxisLabels"] : TRUE;
1778
-     $XReleasePercent	= isset($Format["XReleasePercent"]) ? $Format["XReleasePercent"] : 1;
1779
-     $DrawArrows	= isset($Format["DrawArrows"]) ? $Format["DrawArrows"] : FALSE;
1780
-     $ArrowSize         = isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 8;
1781
-     $CycleBackground	= isset($Format["CycleBackground"]) ? $Format["CycleBackground"] : FALSE;
1782
-     $BackgroundR1	= isset($Format["BackgroundR1"]) ? $Format["BackgroundR1"] : 255;
1783
-     $BackgroundG1	= isset($Format["BackgroundG1"]) ? $Format["BackgroundG1"] : 255;
1784
-     $BackgroundB1	= isset($Format["BackgroundB1"]) ? $Format["BackgroundB1"] : 255;
1785
-     $BackgroundAlpha1	= isset($Format["BackgroundAlpha1"]) ? $Format["BackgroundAlpha1"] : 20;
1786
-     $BackgroundR2	= isset($Format["BackgroundR2"]) ? $Format["BackgroundR2"] : 230;
1787
-     $BackgroundG2	= isset($Format["BackgroundG2"]) ? $Format["BackgroundG2"] : 230;
1788
-     $BackgroundB2	= isset($Format["BackgroundB2"]) ? $Format["BackgroundB2"] : 230;
1789
-     $BackgroundAlpha2	= isset($Format["BackgroundAlpha2"]) ? $Format["BackgroundAlpha2"] : 20;
1790
-     $LabelingMethod	= isset($Format["LabelingMethod"]) ? $Format["LabelingMethod"] : LABELING_ALL;
1791
-     $LabelSkip		= isset($Format["LabelSkip"]) ? $Format["LabelSkip"] : 0;
1792
-     $LabelRotation	= isset($Format["LabelRotation"]) ? $Format["LabelRotation"] : 0;
1793
-     $SkippedAxisTicks	= isset($Format["SkippedAxisTicks"]) ? $Format["SkippedAxisTicks"] : $GridTicks+2;
1794
-     $SkippedAxisR	= isset($Format["SkippedAxisR"]) ? $Format["SkippedAxisR"] : $GridR;
1795
-     $SkippedAxisG	= isset($Format["SkippedAxisG"]) ? $Format["SkippedAxisG"] : $GridG;
1796
-     $SkippedAxisB	= isset($Format["SkippedAxisB"]) ? $Format["SkippedAxisB"] : $GridB;
1797
-     $SkippedAxisAlpha	= isset($Format["SkippedAxisAlpha"]) ? $Format["SkippedAxisAlpha"] : $GridAlpha-30;
1798
-     $SkippedTickR	= isset($Format["SkippedTickR"]) ? $Format["SkippedTickR"] : $TickRo;
1799
-     $SkippedTickG	= isset($Format["SkippedTickG"]) ? $Format["SkippedTickG"] : $TickGo;
1800
-     $SkippedTickB	= isset($Format["SkippedTicksB"]) ? $Format["SkippedTickB"] : $TickBo;
1801
-     $SkippedTickAlpha	= isset($Format["SkippedTickAlpha"]) ? $Format["SkippedTickAlpha"] : $TickAlpha-80;
1802
-     $SkippedInnerTickWidth	= isset($Format["SkippedInnerTickWidth"]) ? $Format["SkippedInnerTickWidth"] : 0;
1803
-     $SkippedOuterTickWidth	= isset($Format["SkippedOuterTickWidth"]) ? $Format["SkippedOuterTickWidth"] : 2;
1804
-
1805
-     /* Floating scale require X & Y margins to be set manually */
1806
-     if ( $Floating && ( $XMargin == AUTO || $YMargin == 0 ) ) { $Floating = FALSE; }
1807
-
1808
-     /* Skip a NOTICE event in case of an empty array */
1809
-     if ( $DrawYLines == NONE || $DrawYLines == FALSE ) { $DrawYLines = array("zarma"=>"31"); }
1810
-
1811
-     /* Define the color for the skipped elements */
1812
-     $SkippedAxisColor = array("R"=>$SkippedAxisR,"G"=>$SkippedAxisG,"B"=>$SkippedAxisB,"Alpha"=>$SkippedAxisAlpha,"Ticks"=>$SkippedAxisTicks);
1813
-     $SkippedTickColor = array("R"=>$SkippedTickR,"G"=>$SkippedTickG,"B"=>$SkippedTickB,"Alpha"=>$SkippedTickAlpha);
1814
-
1815
-     $Data = $this->DataSet->getData();
1816
-     if ( isset($Data["Abscissa"]) ) { $Abscissa = $Data["Abscissa"]; } else { $Abscissa = NULL; }
1817
-
1818
-     /* Unset the abscissa axis, needed if we display multiple charts on the same picture */
1819
-     if ( $Abscissa != NULL )
1820
-      {
1821
-       foreach($Data["Axis"] as $AxisID => $Parameters)
1822
-        { if ($Parameters["Identity"] == AXIS_X) { unset($Data["Axis"][$AxisID]); } }
1823
-      }
1677
+        $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
1678
+        foreach($Data["Series"] as $SerieName => $Serie)
1679
+        {
1680
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1681
+        {
1682
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"];
1683
+            $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
1824 1684
 
1825
-     /* Build the scale settings */
1826
-     $GotXAxis = FALSE;
1827
-     foreach($Data["Axis"] as $AxisID => $AxisParameter)
1828
-      {
1829
-       if ( $AxisParameter["Identity"] == AXIS_X ) { $GotXAxis = TRUE; }
1685
+            if ( isset($Serie["Picture"]) )
1686
+            {
1687
+            $Picture = $Serie["Picture"];
1688
+            list($PicWidth,$PicHeight) = $this->getPicInfo($Picture);
1689
+            $PicX = $X+$IconAreaWidth/2; $PicY = $Y+$IconAreaHeight/2; 
1830 1690
 
1831
-       if ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_Y)
1832
-        { $Height = $this->GraphAreaY2-$this->GraphAreaY1 - $YMargin*2; }
1833
-       elseif ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_X)
1834
-        { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1835
-       elseif ( $Pos == SCALE_POS_TOPBOTTOM && $AxisParameter["Identity"] == AXIS_Y)
1836
-        { $Height = $this->GraphAreaX2-$this->GraphAreaX1 - $YMargin*2;; }
1837
-       else
1838
-        { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1691
+            $this->drawFromPNG($PicX-$PicWidth/2,$PicY-$PicHeight/2,$Picture);
1692
+            }
1693
+            else
1694
+            {
1695
+            if ( $Family == LEGEND_FAMILY_BOX )
1696
+            {
1697
+                if ( $BoxWidth != $IconAreaWidth ) { $XOffset = floor(($IconAreaWidth-$BoxWidth)/2); } else { $XOffset = 0; }
1698
+                if ( $BoxHeight != $IconAreaHeight ) { $YOffset = floor(($IconAreaHeight-$BoxHeight)/2); } else { $YOffset = 0; }
1839 1699
 
1840
-       $AxisMin = ABSOLUTE_MAX; $AxisMax = OUT_OF_SIGHT;
1841
-       if ( $Mode == SCALE_MODE_FLOATING || $Mode == SCALE_MODE_START0 )
1842
-        {
1843
-         foreach($Data["Series"] as $SerieID => $SerieParameter)
1844
-          {
1845
-           if ( $SerieParameter["Axis"] == $AxisID && $Data["Series"][$SerieID]["isDrawable"] && $Data["Abscissa"] != $SerieID)
1700
+                $this->drawFilledRectangle($X+1+$XOffset,$Y+1+$YOffset,$X+$BoxWidth+$XOffset+1,$Y+$BoxHeight+1+$YOffset,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1701
+                $this->drawFilledRectangle($X+$XOffset,$Y+$YOffset,$X+$BoxWidth+$XOffset,$Y+$BoxHeight+$YOffset,array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1702
+            }
1703
+            elseif ( $Family == LEGEND_FAMILY_CIRCLE )
1846 1704
             {
1847
-             $AxisMax = max($AxisMax,$Data["Series"][$SerieID]["Max"]);
1848
-             $AxisMin = min($AxisMin,$Data["Series"][$SerieID]["Min"]);
1705
+                $this->drawFilledCircle($X+1+$IconAreaWidth/2,$Y+1+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1706
+                $this->drawFilledCircle($X+$IconAreaWidth/2,$Y+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1849 1707
             }
1850
-          }
1851
-         $AutoMargin = (($AxisMax-$AxisMin)/100)*$XReleasePercent;
1852
-
1853
-         $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1854
-         if ( $Mode == SCALE_MODE_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1708
+            elseif ( $Family == LEGEND_FAMILY_LINE )
1709
+            {
1710
+                $this->drawLine($X+1,$Y+1+$IconAreaHeight/2,$X+1+$IconAreaWidth,$Y+1+$IconAreaHeight/2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20,"Ticks"=>$Ticks,"Weight"=>$Weight));
1711
+                $this->drawLine($X,$Y+$IconAreaHeight/2,$X+$IconAreaWidth,$Y+$IconAreaHeight/2,array("R"=>$R,"G"=>$G,"B"=>$B,"Ticks"=>$Ticks,"Weight"=>$Weight));
1712
+            }
1713
+            }
1714
+
1715
+            if ( $Mode == LEGEND_VERTICAL )
1716
+            {
1717
+            $Lines = preg_split("/\n/",$Serie["Description"]);
1718
+            foreach($Lines as $Key => $Value)
1719
+            $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1720
+
1721
+            $Y=$Y+max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1722
+            }
1723
+            elseif ( $Mode == LEGEND_HORIZONTAL )
1724
+            {
1725
+            $Lines = preg_split("/\n/",$Serie["Description"]);
1726
+            $Width = "";
1727
+            foreach($Lines as $Key => $Value)
1728
+            {
1729
+                $BoxArray = $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1730
+                $Width[] = $BoxArray[1]["X"];
1731
+            }
1732
+            $X=max($Width)+2+$XStep;
1733
+            }
1734
+        }
1735
+        }
1736
+
1737
+
1738
+        $this->Shadow = $RestoreShadow;
1739
+    }
1740
+
1741
+    function drawScale($Format="")
1742
+    {
1743
+        $Pos		= isset($Format["Pos"]) ? $Format["Pos"] : SCALE_POS_LEFTRIGHT;
1744
+        $Floating		= isset($Format["Floating"]) ? $Format["Floating"] : FALSE;
1745
+        $Mode		= isset($Format["Mode"]) ? $Format["Mode"] : SCALE_MODE_FLOATING;
1746
+        $RemoveXAxis	= isset($Format["RemoveXAxis"]) ? $Format["RemoveXAxis"] : FALSE;
1747
+        $MinDivHeight	= isset($Format["MinDivHeight"]) ? $Format["MinDivHeight"] : 20;
1748
+        $Factors		= isset($Format["Factors"]) ? $Format["Factors"] : array(1,2,5);
1749
+        $ManualScale	= isset($Format["ManualScale"]) ? $Format["ManualScale"] : array("0"=>array("Min"=>-100,"Max"=>100));
1750
+        $XMargin		= isset($Format["XMargin"]) ? $Format["XMargin"] : AUTO;
1751
+        $YMargin		= isset($Format["YMargin"]) ? $Format["YMargin"] : 0;
1752
+        $ScaleSpacing	= isset($Format["ScaleSpacing"]) ? $Format["ScaleSpacing"] : 15;
1753
+        $InnerTickWidth	= isset($Format["InnerTickWidth"]) ? $Format["InnerTickWidth"] : 2;
1754
+        $OuterTickWidth	= isset($Format["OuterTickWidth"]) ? $Format["OuterTickWidth"] : 2;
1755
+        $DrawXLines	= isset($Format["DrawXLines"]) ? $Format["DrawXLines"] : TRUE;
1756
+        $DrawYLines	= isset($Format["DrawYLines"]) ? $Format["DrawYLines"] : ALL;
1757
+        $GridTicks		= isset($Format["GridTicks"]) ? $Format["GridTicks"] : 4;
1758
+        $GridR		= isset($Format["GridR"]) ? $Format["GridR"] : 255;
1759
+        $GridG		= isset($Format["GridG"]) ? $Format["GridG"] : 255;
1760
+        $GridB		= isset($Format["GridB"]) ? $Format["GridB"] : 255;
1761
+        $GridAlpha		= isset($Format["GridAlpha"]) ? $Format["GridAlpha"] : 40;
1762
+        $AxisRo		= isset($Format["AxisR"]) ? $Format["AxisR"] : 0;
1763
+        $AxisGo		= isset($Format["AxisG"]) ? $Format["AxisG"] : 0;
1764
+        $AxisBo		= isset($Format["AxisB"]) ? $Format["AxisB"] : 0;
1765
+        $AxisAlpha		= isset($Format["AxisAlpha"]) ? $Format["AxisAlpha"] : 100;
1766
+        $TickRo		= isset($Format["TickR"]) ? $Format["TickR"] : 0;
1767
+        $TickGo		= isset($Format["TickG"]) ? $Format["TickG"] : 0;
1768
+        $TickBo		= isset($Format["TickB"]) ? $Format["TickB"] : 0;
1769
+        $TickAlpha		= isset($Format["TickAlpha"]) ? $Format["TickAlpha"] : 100;
1770
+        $DrawSubTicks	= isset($Format["DrawSubTicks"]) ? $Format["DrawSubTicks"] : FALSE;
1771
+        $InnerSubTickWidth	= isset($Format["InnerSubTickWidth"]) ? $Format["InnerSubTickWidth"] : 0;
1772
+        $OuterSubTickWidth	= isset($Format["OuterSubTickWidth"]) ? $Format["OuterSubTickWidth"] : 2;
1773
+        $SubTickR		= isset($Format["SubTickR"]) ? $Format["SubTickR"] : 255;
1774
+        $SubTickG		= isset($Format["SubTickG"]) ? $Format["SubTickG"] : 0;
1775
+        $SubTickB		= isset($Format["SubTickB"]) ? $Format["SubTickB"] : 0;
1776
+        $SubTickAlpha	= isset($Format["SubTickAlpha"]) ? $Format["SubTickAlpha"] : 100;
1777
+        $AutoAxisLabels	= isset($Format["AutoAxisLabels"]) ? $Format["AutoAxisLabels"] : TRUE;
1778
+        $XReleasePercent	= isset($Format["XReleasePercent"]) ? $Format["XReleasePercent"] : 1;
1779
+        $DrawArrows	= isset($Format["DrawArrows"]) ? $Format["DrawArrows"] : FALSE;
1780
+        $ArrowSize         = isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 8;
1781
+        $CycleBackground	= isset($Format["CycleBackground"]) ? $Format["CycleBackground"] : FALSE;
1782
+        $BackgroundR1	= isset($Format["BackgroundR1"]) ? $Format["BackgroundR1"] : 255;
1783
+        $BackgroundG1	= isset($Format["BackgroundG1"]) ? $Format["BackgroundG1"] : 255;
1784
+        $BackgroundB1	= isset($Format["BackgroundB1"]) ? $Format["BackgroundB1"] : 255;
1785
+        $BackgroundAlpha1	= isset($Format["BackgroundAlpha1"]) ? $Format["BackgroundAlpha1"] : 20;
1786
+        $BackgroundR2	= isset($Format["BackgroundR2"]) ? $Format["BackgroundR2"] : 230;
1787
+        $BackgroundG2	= isset($Format["BackgroundG2"]) ? $Format["BackgroundG2"] : 230;
1788
+        $BackgroundB2	= isset($Format["BackgroundB2"]) ? $Format["BackgroundB2"] : 230;
1789
+        $BackgroundAlpha2	= isset($Format["BackgroundAlpha2"]) ? $Format["BackgroundAlpha2"] : 20;
1790
+        $LabelingMethod	= isset($Format["LabelingMethod"]) ? $Format["LabelingMethod"] : LABELING_ALL;
1791
+        $LabelSkip		= isset($Format["LabelSkip"]) ? $Format["LabelSkip"] : 0;
1792
+        $LabelRotation	= isset($Format["LabelRotation"]) ? $Format["LabelRotation"] : 0;
1793
+        $SkippedAxisTicks	= isset($Format["SkippedAxisTicks"]) ? $Format["SkippedAxisTicks"] : $GridTicks+2;
1794
+        $SkippedAxisR	= isset($Format["SkippedAxisR"]) ? $Format["SkippedAxisR"] : $GridR;
1795
+        $SkippedAxisG	= isset($Format["SkippedAxisG"]) ? $Format["SkippedAxisG"] : $GridG;
1796
+        $SkippedAxisB	= isset($Format["SkippedAxisB"]) ? $Format["SkippedAxisB"] : $GridB;
1797
+        $SkippedAxisAlpha	= isset($Format["SkippedAxisAlpha"]) ? $Format["SkippedAxisAlpha"] : $GridAlpha-30;
1798
+        $SkippedTickR	= isset($Format["SkippedTickR"]) ? $Format["SkippedTickR"] : $TickRo;
1799
+        $SkippedTickG	= isset($Format["SkippedTickG"]) ? $Format["SkippedTickG"] : $TickGo;
1800
+        $SkippedTickB	= isset($Format["SkippedTicksB"]) ? $Format["SkippedTickB"] : $TickBo;
1801
+        $SkippedTickAlpha	= isset($Format["SkippedTickAlpha"]) ? $Format["SkippedTickAlpha"] : $TickAlpha-80;
1802
+        $SkippedInnerTickWidth	= isset($Format["SkippedInnerTickWidth"]) ? $Format["SkippedInnerTickWidth"] : 0;
1803
+        $SkippedOuterTickWidth	= isset($Format["SkippedOuterTickWidth"]) ? $Format["SkippedOuterTickWidth"] : 2;
1804
+
1805
+        /* Floating scale require X & Y margins to be set manually */
1806
+        if ( $Floating && ( $XMargin == AUTO || $YMargin == 0 ) ) { $Floating = FALSE; }
1807
+
1808
+        /* Skip a NOTICE event in case of an empty array */
1809
+        if ( $DrawYLines == NONE || $DrawYLines == FALSE ) { $DrawYLines = array("zarma"=>"31"); }
1810
+
1811
+        /* Define the color for the skipped elements */
1812
+        $SkippedAxisColor = array("R"=>$SkippedAxisR,"G"=>$SkippedAxisG,"B"=>$SkippedAxisB,"Alpha"=>$SkippedAxisAlpha,"Ticks"=>$SkippedAxisTicks);
1813
+        $SkippedTickColor = array("R"=>$SkippedTickR,"G"=>$SkippedTickG,"B"=>$SkippedTickB,"Alpha"=>$SkippedTickAlpha);
1814
+
1815
+        $Data = $this->DataSet->getData();
1816
+        if ( isset($Data["Abscissa"]) ) { $Abscissa = $Data["Abscissa"]; } else { $Abscissa = NULL; }
1817
+
1818
+        /* Unset the abscissa axis, needed if we display multiple charts on the same picture */
1819
+        if ( $Abscissa != NULL )
1820
+        {
1821
+        foreach($Data["Axis"] as $AxisID => $Parameters)
1822
+        { if ($Parameters["Identity"] == AXIS_X) { unset($Data["Axis"][$AxisID]); } }
1823
+        }
1824
+
1825
+        /* Build the scale settings */
1826
+        $GotXAxis = FALSE;
1827
+        foreach($Data["Axis"] as $AxisID => $AxisParameter)
1828
+        {
1829
+        if ( $AxisParameter["Identity"] == AXIS_X ) { $GotXAxis = TRUE; }
1830
+
1831
+        if ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_Y)
1832
+        { $Height = $this->GraphAreaY2-$this->GraphAreaY1 - $YMargin*2; }
1833
+        elseif ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_X)
1834
+        { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1835
+        elseif ( $Pos == SCALE_POS_TOPBOTTOM && $AxisParameter["Identity"] == AXIS_Y)
1836
+        { $Height = $this->GraphAreaX2-$this->GraphAreaX1 - $YMargin*2;; }
1837
+        else
1838
+        { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1839
+
1840
+        $AxisMin = ABSOLUTE_MAX; $AxisMax = OUT_OF_SIGHT;
1841
+        if ( $Mode == SCALE_MODE_FLOATING || $Mode == SCALE_MODE_START0 )
1842
+        {
1843
+            foreach($Data["Series"] as $SerieID => $SerieParameter)
1844
+            {
1845
+            if ( $SerieParameter["Axis"] == $AxisID && $Data["Series"][$SerieID]["isDrawable"] && $Data["Abscissa"] != $SerieID)
1846
+            {
1847
+                $AxisMax = max($AxisMax,$Data["Series"][$SerieID]["Max"]);
1848
+                $AxisMin = min($AxisMin,$Data["Series"][$SerieID]["Min"]);
1849
+            }
1850
+            }
1851
+            $AutoMargin = (($AxisMax-$AxisMin)/100)*$XReleasePercent;
1852
+
1853
+            $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1854
+            if ( $Mode == SCALE_MODE_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1855 1855
         }
1856
-       elseif ( $Mode == SCALE_MODE_MANUAL )
1856
+        elseif ( $Mode == SCALE_MODE_MANUAL )
1857 1857
         {
1858
-         if ( isset($ManualScale[$AxisID]["Min"]) && isset($ManualScale[$AxisID]["Max"]) )
1859
-          {
1860
-           $Data["Axis"][$AxisID]["Min"] = $ManualScale[$AxisID]["Min"];
1861
-           $Data["Axis"][$AxisID]["Max"] = $ManualScale[$AxisID]["Max"];
1862
-          }
1863
-         else
1864
-          { echo "Manual scale boundaries not set."; exit(); }
1858
+            if ( isset($ManualScale[$AxisID]["Min"]) && isset($ManualScale[$AxisID]["Max"]) )
1859
+            {
1860
+            $Data["Axis"][$AxisID]["Min"] = $ManualScale[$AxisID]["Min"];
1861
+            $Data["Axis"][$AxisID]["Max"] = $ManualScale[$AxisID]["Max"];
1862
+            }
1863
+            else
1864
+            { echo "Manual scale boundaries not set."; exit(); }
1865 1865
         }
1866
-       elseif ( $Mode == SCALE_MODE_ADDALL || $Mode == SCALE_MODE_ADDALL_START0 )
1866
+        elseif ( $Mode == SCALE_MODE_ADDALL || $Mode == SCALE_MODE_ADDALL_START0 )
1867 1867
         {
1868
-         $Series = "";
1869
-         foreach($Data["Series"] as $SerieID => $SerieParameter)
1870
-          { if ( $SerieParameter["Axis"] == $AxisID && $SerieParameter["isDrawable"] && $Data["Abscissa"] != $SerieID ) { $Series[$SerieID] = count($Data["Series"][$SerieID]["Data"]); } }
1868
+            $Series = "";
1869
+            foreach($Data["Series"] as $SerieID => $SerieParameter)
1870
+            { if ( $SerieParameter["Axis"] == $AxisID && $SerieParameter["isDrawable"] && $Data["Abscissa"] != $SerieID ) { $Series[$SerieID] = count($Data["Series"][$SerieID]["Data"]); } }
1871 1871
 
1872
-         for ($ID=0;$ID<=max($Series)-1;$ID++)
1873
-          {
1874
-           $PointMin = 0; $PointMax = 0;
1875
-           foreach($Series as $SerieID => $ValuesCount )
1872
+            for ($ID=0;$ID<=max($Series)-1;$ID++)
1876 1873
             {
1877
-             if (isset($Data["Series"][$SerieID]["Data"][$ID]) && $Data["Series"][$SerieID]["Data"][$ID] != NULL )
1878
-              {
1879
-               $Value = $Data["Series"][$SerieID]["Data"][$ID];
1880
-               if ( $Value > 0 ) { $PointMax = $PointMax + $Value; } else { $PointMin = $PointMin + $Value; }
1881
-              }
1874
+            $PointMin = 0; $PointMax = 0;
1875
+            foreach($Series as $SerieID => $ValuesCount )
1876
+            {
1877
+                if (isset($Data["Series"][$SerieID]["Data"][$ID]) && $Data["Series"][$SerieID]["Data"][$ID] != NULL )
1878
+                {
1879
+                $Value = $Data["Series"][$SerieID]["Data"][$ID];
1880
+                if ( $Value > 0 ) { $PointMax = $PointMax + $Value; } else { $PointMin = $PointMin + $Value; }
1881
+                }
1882
+            }
1883
+            $AxisMax = max($AxisMax,$PointMax);
1884
+            $AxisMin = min($AxisMin,$PointMin);
1882 1885
             }
1883
-           $AxisMax = max($AxisMax,$PointMax);
1884
-           $AxisMin = min($AxisMin,$PointMin);
1885
-          }
1886
-         $AutoMargin = (($AxisMax-$AxisMin)/100)*$XReleasePercent;
1887
-         $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1886
+            $AutoMargin = (($AxisMax-$AxisMin)/100)*$XReleasePercent;
1887
+            $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1888 1888
         }
1889
-       $MaxDivs = floor($Height/$MinDivHeight);
1889
+        $MaxDivs = floor($Height/$MinDivHeight);
1890 1890
 
1891
-       if ( $Mode == SCALE_MODE_ADDALL_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1891
+        if ( $Mode == SCALE_MODE_ADDALL_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1892 1892
 
1893
-       $Scale   = $this->computeScale($Data["Axis"][$AxisID]["Min"],$Data["Axis"][$AxisID]["Max"],$MaxDivs,$Factors,$AxisID);
1893
+        $Scale   = $this->computeScale($Data["Axis"][$AxisID]["Min"],$Data["Axis"][$AxisID]["Max"],$MaxDivs,$Factors,$AxisID);
1894 1894
 
1895
-       $Data["Axis"][$AxisID]["Margin"]    = $AxisParameter["Identity"] == AXIS_X ? $XMargin : $YMargin;
1896
-       $Data["Axis"][$AxisID]["ScaleMin"]  = $Scale["XMin"];
1897
-       $Data["Axis"][$AxisID]["ScaleMax"]  = $Scale["XMax"];
1898
-       $Data["Axis"][$AxisID]["Rows"]      = $Scale["Rows"];
1899
-       $Data["Axis"][$AxisID]["RowHeight"] = $Scale["RowHeight"];
1895
+        $Data["Axis"][$AxisID]["Margin"]    = $AxisParameter["Identity"] == AXIS_X ? $XMargin : $YMargin;
1896
+        $Data["Axis"][$AxisID]["ScaleMin"]  = $Scale["XMin"];
1897
+        $Data["Axis"][$AxisID]["ScaleMax"]  = $Scale["XMax"];
1898
+        $Data["Axis"][$AxisID]["Rows"]      = $Scale["Rows"];
1899
+        $Data["Axis"][$AxisID]["RowHeight"] = $Scale["RowHeight"];
1900 1900
 
1901
-       if ( isset($Scale["Format"]) ) { $Data["Axis"][$AxisID]["Format"] = $Scale["Format"]; }
1901
+        if ( isset($Scale["Format"]) ) { $Data["Axis"][$AxisID]["Format"] = $Scale["Format"]; }
1902 1902
 
1903
-       if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1904
-       if ( !isset($Data["Axis"][$AxisID]["Format"]) )  { $Data["Axis"][$AxisID]["Format"] = NULL; }
1905
-       if ( !isset($Data["Axis"][$AxisID]["Unit"]) )    { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1906
-      }
1903
+        if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1904
+        if ( !isset($Data["Axis"][$AxisID]["Format"]) )  { $Data["Axis"][$AxisID]["Format"] = NULL; }
1905
+        if ( !isset($Data["Axis"][$AxisID]["Unit"]) )    { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1906
+        }
1907 1907
 
1908
-     /* Still no X axis */
1909
-     if ( $GotXAxis == FALSE )
1910
-      {
1911
-       if ( $Abscissa != NULL )
1908
+        /* Still no X axis */
1909
+        if ( $GotXAxis == FALSE )
1910
+        {
1911
+        if ( $Abscissa != NULL )
1912 1912
         {
1913
-         $Points = count($Data["Series"][$Abscissa]["Data"]);
1914
-         if ( $AutoAxisLabels )
1915
-          $AxisName = isset($Data["Series"][$Abscissa]["Description"]) ? $Data["Series"][$Abscissa]["Description"] : NULL;
1916
-         else
1917
-          $AxisName = NULL;
1913
+            $Points = count($Data["Series"][$Abscissa]["Data"]);
1914
+            if ( $AutoAxisLabels )
1915
+            $AxisName = isset($Data["Series"][$Abscissa]["Description"]) ? $Data["Series"][$Abscissa]["Description"] : NULL;
1916
+            else
1917
+            $AxisName = NULL;
1918 1918
         }
1919
-       else
1919
+        else
1920 1920
         {
1921
-         $Points = 0;
1922
-         $AxisName = isset($Data["XAxisName"]) ? $Data["XAxisName"] : NULL;
1923
-         foreach($Data["Series"] as $SerieID => $SerieParameter)
1924
-          { if ( $SerieParameter["isDrawable"] ) { $Points = max($Points,count($SerieParameter["Data"])); } }
1921
+            $Points = 0;
1922
+            $AxisName = isset($Data["XAxisName"]) ? $Data["XAxisName"] : NULL;
1923
+            foreach($Data["Series"] as $SerieID => $SerieParameter)
1924
+            { if ( $SerieParameter["isDrawable"] ) { $Points = max($Points,count($SerieParameter["Data"])); } }
1925 1925
         }
1926 1926
 
1927
-       $AxisID = count($Data["Axis"]);
1928
-       $Data["Axis"][$AxisID]["Identity"] = AXIS_X;
1929
-       if ( $Pos == SCALE_POS_LEFTRIGHT ) { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_BOTTOM; } else { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; }
1930
-       if ( isset($Data["AbscissaName"]) ) { $Data["Axis"][$AxisID]["Name"] = $Data["AbscissaName"]; }
1931
-       if ( $XMargin == AUTO )
1927
+        $AxisID = count($Data["Axis"]);
1928
+        $Data["Axis"][$AxisID]["Identity"] = AXIS_X;
1929
+        if ( $Pos == SCALE_POS_LEFTRIGHT ) { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_BOTTOM; } else { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; }
1930
+        if ( isset($Data["AbscissaName"]) ) { $Data["Axis"][$AxisID]["Name"] = $Data["AbscissaName"]; }
1931
+        if ( $XMargin == AUTO )
1932 1932
         {
1933
-         if ( $Pos == SCALE_POS_LEFTRIGHT )
1934
-          { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1935
-         else
1936
-          { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1937
-
1938
-         if ( $Points == 1 )
1939
-          $Data["Axis"][$AxisID]["Margin"] = $Height / 2;
1940
-         else
1941
-          $Data["Axis"][$AxisID]["Margin"] = ($Height/$Points) / 2;
1933
+            if ( $Pos == SCALE_POS_LEFTRIGHT )
1934
+            { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1935
+            else
1936
+            { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1937
+
1938
+            if ( $Points == 1 )
1939
+            $Data["Axis"][$AxisID]["Margin"] = $Height / 2;
1940
+            else
1941
+            $Data["Axis"][$AxisID]["Margin"] = ($Height/$Points) / 2;
1942 1942
         }
1943
-       else
1943
+        else
1944 1944
         { $Data["Axis"][$AxisID]["Margin"] = $XMargin; }
1945
-       $Data["Axis"][$AxisID]["Rows"] = $Points-1;
1946
-       if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1947
-       if ( !isset($Data["Axis"][$AxisID]["Format"]) )  { $Data["Axis"][$AxisID]["Format"] = NULL; }
1948
-       if ( !isset($Data["Axis"][$AxisID]["Unit"]) )    { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1949
-      }
1950
-
1951
-     /* Do we need to reverse the abscissa position? */
1952
-     if ( $Pos != SCALE_POS_LEFTRIGHT )
1953
-      {
1954
-       if ( $Data["AbsicssaPosition"] == AXIS_POSITION_BOTTOM )
1945
+        $Data["Axis"][$AxisID]["Rows"] = $Points-1;
1946
+        if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1947
+        if ( !isset($Data["Axis"][$AxisID]["Format"]) )  { $Data["Axis"][$AxisID]["Format"] = NULL; }
1948
+        if ( !isset($Data["Axis"][$AxisID]["Unit"]) )    { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1949
+        }
1950
+
1951
+        /* Do we need to reverse the abscissa position? */
1952
+        if ( $Pos != SCALE_POS_LEFTRIGHT )
1953
+        {
1954
+        if ( $Data["AbsicssaPosition"] == AXIS_POSITION_BOTTOM )
1955 1955
         { $Data["AbsicssaPosition"] = AXIS_POSITION_LEFT; }
1956
-       else
1956
+        else
1957 1957
         { $Data["AbsicssaPosition"] = AXIS_POSITION_RIGHT; }
1958
-      }
1959
-     $Data["Axis"][$AxisID]["Position"] = $Data["AbsicssaPosition"];
1958
+        }
1959
+        $Data["Axis"][$AxisID]["Position"] = $Data["AbsicssaPosition"];
1960 1960
 
1961
-     $this->DataSet->saveOrientation($Pos);
1962
-     $this->DataSet->saveAxisConfig($Data["Axis"]);
1963
-     $this->DataSet->saveYMargin($YMargin);
1961
+        $this->DataSet->saveOrientation($Pos);
1962
+        $this->DataSet->saveAxisConfig($Data["Axis"]);
1963
+        $this->DataSet->saveYMargin($YMargin);
1964 1964
 
1965
-     $FontColorRo = $this->FontColorR; $FontColorGo = $this->FontColorG; $FontColorBo = $this->FontColorB;
1965
+        $FontColorRo = $this->FontColorR; $FontColorGo = $this->FontColorG; $FontColorBo = $this->FontColorB;
1966 1966
 
1967
-     $AxisPos["L"] = $this->GraphAreaX1; $AxisPos["R"] = $this->GraphAreaX2; $AxisPos["T"] = $this->GraphAreaY1; $AxisPos["B"] = $this->GraphAreaY2;
1968
-     foreach($Data["Axis"] as $AxisID => $Parameters)
1969
-      {
1970
-       if ( isset($Parameters["Color"]) )
1967
+        $AxisPos["L"] = $this->GraphAreaX1; $AxisPos["R"] = $this->GraphAreaX2; $AxisPos["T"] = $this->GraphAreaY1; $AxisPos["B"] = $this->GraphAreaY2;
1968
+        foreach($Data["Axis"] as $AxisID => $Parameters)
1969
+        {
1970
+        if ( isset($Parameters["Color"]) )
1971 1971
         {
1972
-         $AxisR = $Parameters["Color"]["R"]; $AxisG = $Parameters["Color"]["G"]; $AxisB = $Parameters["Color"]["B"];
1973
-         $TickR = $Parameters["Color"]["R"]; $TickG = $Parameters["Color"]["G"]; $TickB = $Parameters["Color"]["B"];
1974
-         $this->setFontProperties(array("R"=>$Parameters["Color"]["R"],"G"=>$Parameters["Color"]["G"],"B"=>$Parameters["Color"]["B"]));
1972
+            $AxisR = $Parameters["Color"]["R"]; $AxisG = $Parameters["Color"]["G"]; $AxisB = $Parameters["Color"]["B"];
1973
+            $TickR = $Parameters["Color"]["R"]; $TickG = $Parameters["Color"]["G"]; $TickB = $Parameters["Color"]["B"];
1974
+            $this->setFontProperties(array("R"=>$Parameters["Color"]["R"],"G"=>$Parameters["Color"]["G"],"B"=>$Parameters["Color"]["B"]));
1975 1975
         }
1976
-       else
1976
+        else
1977 1977
         {
1978
-         $AxisR = $AxisRo; $AxisG = $AxisGo; $AxisB = $AxisBo;
1979
-         $TickR = $TickRo; $TickG = $TickGo; $TickB = $TickBo;
1980
-         $this->setFontProperties(array("R"=>$FontColorRo,"G"=>$FontColorGo,"B"=>$FontColorBo));
1978
+            $AxisR = $AxisRo; $AxisG = $AxisGo; $AxisB = $AxisBo;
1979
+            $TickR = $TickRo; $TickG = $TickGo; $TickB = $TickBo;
1980
+            $this->setFontProperties(array("R"=>$FontColorRo,"G"=>$FontColorGo,"B"=>$FontColorBo));
1981 1981
         }
1982 1982
 
1983
-       $LastValue = "w00t"; $ID = 1;
1984
-       if ( $Parameters["Identity"] == AXIS_X )
1983
+        $LastValue = "w00t"; $ID = 1;
1984
+        if ( $Parameters["Identity"] == AXIS_X )
1985 1985
         {
1986
-         if ( $Pos == SCALE_POS_LEFTRIGHT )
1987
-          {
1988
-           if ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
1986
+            if ( $Pos == SCALE_POS_LEFTRIGHT )
1989 1987
             {
1990
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 2; }
1991
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
1992
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 5; }
1993
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
1988
+            if ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
1989
+            {
1990
+                if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 2; }
1991
+                if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
1992
+                if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 5; }
1993
+                if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
1994 1994
 
1995
-             if ( !$RemoveXAxis )
1996
-              {
1997
-               if ( $Floating )
1995
+                if ( !$RemoveXAxis )
1996
+                {
1997
+                if ( $Floating )
1998 1998
                 { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
1999
-               else
1999
+                else
2000 2000
                 { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2001 2001
 
2002
-               if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2003
-              }
2002
+                if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2003
+                }
2004 2004
 
2005
-             $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2005
+                $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2006 2006
 
2007
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Width; } else { $Step  = $Width / ($Parameters["Rows"]); }
2007
+                if ($Parameters["Rows"] == 0 ) { $Step  = $Width; } else { $Step  = $Width / ($Parameters["Rows"]); }
2008 2008
              
2009
-             $MaxBottom = $AxisPos["B"];
2010
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2011
-              {
2012
-               $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2013
-               $YPos  = $AxisPos["B"];
2009
+                $MaxBottom = $AxisPos["B"];
2010
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2011
+                {
2012
+                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2013
+                $YPos  = $AxisPos["B"];
2014 2014
 
2015
-               if ( $Abscissa != NULL )
2015
+                if ( $Abscissa != NULL )
2016 2016
                 { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2017
-               else
2017
+                else
2018 2018
                 {
2019
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2020
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2021
-                 else
2022
-                  $Value = $i;
2019
+                    if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2020
+                    $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2021
+                    else
2022
+                    $Value = $i;
2023 2023
                 }
2024 2024
 
2025
-               $ID++; $Skipped = TRUE;
2026
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2025
+                $ID++; $Skipped = TRUE;
2026
+                if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2027 2027
                 {
2028
-                 $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+$YLabelOffset,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2029
-                 $TxtBottom = $YPos+$OuterTickWidth+2+($Bounds[0]["Y"]-$Bounds[2]["Y"]);
2030
-                 $MaxBottom = max($MaxBottom,$TxtBottom);
2031
-                 $LastValue = $Value;
2032
-                 $Skipped   = FALSE;
2028
+                    $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+$YLabelOffset,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2029
+                    $TxtBottom = $YPos+$OuterTickWidth+2+($Bounds[0]["Y"]-$Bounds[2]["Y"]);
2030
+                    $MaxBottom = max($MaxBottom,$TxtBottom);
2031
+                    $LastValue = $Value;
2032
+                    $Skipped   = FALSE;
2033 2033
                 }
2034 2034
 
2035
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2035
+                if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2036 2036
 
2037
-               if ( $Skipped )
2037
+                if ( $Skipped )
2038 2038
                 {
2039
-                 if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2040
-                 if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$SkippedInnerTickWidth,$XPos,$YPos+$SkippedOuterTickWidth,$SkippedTickColor); }
2039
+                    if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2040
+                    if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$SkippedInnerTickWidth,$XPos,$YPos+$SkippedOuterTickWidth,$SkippedTickColor); }
2041 2041
                 }
2042
-               else
2042
+                else
2043 2043
                 {
2044
-                 if ( $DrawXLines && ($XPos != $this->GraphAreaX1 && $XPos != $this->GraphAreaX2) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2045
-                 if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$InnerTickWidth,$XPos,$YPos+$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2044
+                    if ( $DrawXLines && ($XPos != $this->GraphAreaX1 && $XPos != $this->GraphAreaX2) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2045
+                    if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$InnerTickWidth,$XPos,$YPos+$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2046
+                }
2046 2047
                 }
2047
-              }
2048 2048
 
2049
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis)
2050
-              {
2051
-               $YPos   = $MaxBottom+2;
2052
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2053
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2054
-               $MaxBottom = $Bounds[0]["Y"];
2049
+                if ( isset($Parameters["Name"]) && !$RemoveXAxis)
2050
+                {
2051
+                $YPos   = $MaxBottom+2;
2052
+                $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2053
+                $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2054
+                $MaxBottom = $Bounds[0]["Y"];
2055 2055
 
2056
-               $this->DataSet->Data["GraphArea"]["Y2"] = $MaxBottom + $this->FontSize;
2057
-              }
2056
+                $this->DataSet->Data["GraphArea"]["Y2"] = $MaxBottom + $this->FontSize;
2057
+                }
2058 2058
 
2059
-             $AxisPos["B"] = $MaxBottom + $ScaleSpacing;
2059
+                $AxisPos["B"] = $MaxBottom + $ScaleSpacing;
2060 2060
             }
2061
-           elseif ( $Parameters["Position"] == AXIS_POSITION_TOP )
2061
+            elseif ( $Parameters["Position"] == AXIS_POSITION_TOP )
2062 2062
             {
2063
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 2; }
2064
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
2065
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 5; }
2066
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
2063
+                if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 2; }
2064
+                if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
2065
+                if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 5; }
2066
+                if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
2067 2067
 
2068
-             if ( !$RemoveXAxis )
2069
-              {
2070
-               if ( $Floating )
2068
+                if ( !$RemoveXAxis )
2069
+                {
2070
+                if ( $Floating )
2071 2071
                 { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2072
-               else
2072
+                else
2073 2073
                 { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2074 2074
 
2075
-               if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2076
-              }
2075
+                if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2076
+                }
2077 2077
 
2078
-             $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2078
+                $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2079 2079
 
2080
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Width; } else { $Step  = $Width / $Parameters["Rows"]; }
2080
+                if ($Parameters["Rows"] == 0 ) { $Step  = $Width; } else { $Step  = $Width / $Parameters["Rows"]; }
2081 2081
              
2082
-             $MinTop = $AxisPos["T"];
2083
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2084
-              {
2085
-               $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2086
-               $YPos  = $AxisPos["T"];
2082
+                $MinTop = $AxisPos["T"];
2083
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2084
+                {
2085
+                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2086
+                $YPos  = $AxisPos["T"];
2087 2087
 
2088
-               if ( $Abscissa != NULL )
2088
+                if ( $Abscissa != NULL )
2089 2089
                 { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2090
-               else
2090
+                else
2091 2091
                 {
2092
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2093
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2094
-                 else
2095
-                  $Value = $i;
2092
+                    if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2093
+                    $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2094
+                    else
2095
+                    $Value = $i;
2096 2096
                 }
2097 2097
 
2098
-               $ID++; $Skipped = TRUE;
2099
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2098
+                $ID++; $Skipped = TRUE;
2099
+                if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2100 2100
                 {
2101
-                 $Bounds = $this->drawText($XPos,$YPos-$OuterTickWidth-$YLabelOffset,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2102
-                 $TxtBox = $YPos-$OuterTickWidth-2-($Bounds[0]["Y"]-$Bounds[2]["Y"]);
2103
-                 $MinTop = min($MinTop,$TxtBox);
2104
-                 $LastValue = $Value;
2105
-                 $Skipped   = FALSE;
2101
+                    $Bounds = $this->drawText($XPos,$YPos-$OuterTickWidth-$YLabelOffset,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2102
+                    $TxtBox = $YPos-$OuterTickWidth-2-($Bounds[0]["Y"]-$Bounds[2]["Y"]);
2103
+                    $MinTop = min($MinTop,$TxtBox);
2104
+                    $LastValue = $Value;
2105
+                    $Skipped   = FALSE;
2106 2106
                 }
2107 2107
 
2108
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2108
+                if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2109 2109
 
2110
-               if ( $Skipped )
2110
+                if ( $Skipped )
2111 2111
                 {
2112
-                 if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2113
-                 if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$SkippedInnerTickWidth,$XPos,$YPos-$SkippedOuterTickWidth,$SkippedTickColor); }
2112
+                    if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2113
+                    if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$SkippedInnerTickWidth,$XPos,$YPos-$SkippedOuterTickWidth,$SkippedTickColor); }
2114 2114
                 }
2115
-               else
2115
+                else
2116 2116
                 {
2117
-                 if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2118
-                 if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$InnerTickWidth,$XPos,$YPos-$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2117
+                    if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2118
+                    if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$InnerTickWidth,$XPos,$YPos-$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2119 2119
                 }
2120 2120
 
2121
-              }
2121
+                }
2122 2122
 
2123
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis )
2124
-              {
2125
-               $YPos   = $MinTop-2;
2126
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2127
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2128
-               $MinTop = $Bounds[2]["Y"];
2123
+                if ( isset($Parameters["Name"]) && !$RemoveXAxis )
2124
+                {
2125
+                $YPos   = $MinTop-2;
2126
+                $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2127
+                $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2128
+                $MinTop = $Bounds[2]["Y"];
2129 2129
 
2130
-               $this->DataSet->Data["GraphArea"]["Y1"] = $MinTop;
2131
-              }
2130
+                $this->DataSet->Data["GraphArea"]["Y1"] = $MinTop;
2131
+                }
2132 2132
 
2133
-             $AxisPos["T"] = $MinTop - $ScaleSpacing;
2133
+                $AxisPos["T"] = $MinTop - $ScaleSpacing;
2134
+            }
2134 2135
             }
2135
-          }
2136
-         elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2137
-          {
2138
-           if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2136
+            elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2139 2137
             {
2140
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -2; }
2141
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -6; }
2142
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -2; }
2143
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -5; }
2138
+            if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2139
+            {
2140
+                if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -2; }
2141
+                if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -6; }
2142
+                if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -2; }
2143
+                if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -5; }
2144 2144
 
2145
-             if ( !$RemoveXAxis )
2146
-              {
2147
-               if ( $Floating )
2145
+                if ( !$RemoveXAxis )
2146
+                {
2147
+                if ( $Floating )
2148 2148
                 { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2149
-               else
2149
+                else
2150 2150
                 { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2151 2151
 
2152
-               if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2153
-              }
2152
+                if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2153
+                }
2154 2154
 
2155
-             $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2155
+                $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2156 2156
 
2157
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Height; } else { $Step   = $Height / $Parameters["Rows"]; }
2157
+                if ($Parameters["Rows"] == 0 ) { $Step  = $Height; } else { $Step   = $Height / $Parameters["Rows"]; }
2158 2158
 
2159
-             $MinLeft = $AxisPos["L"];
2160
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2161
-              {
2162
-               $YPos  = $this->GraphAreaY1 + $Parameters["Margin"] + $Step*$i;
2163
-               $XPos  = $AxisPos["L"];
2159
+                $MinLeft = $AxisPos["L"];
2160
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2161
+                {
2162
+                $YPos  = $this->GraphAreaY1 + $Parameters["Margin"] + $Step*$i;
2163
+                $XPos  = $AxisPos["L"];
2164 2164
 
2165
-               if ( $Abscissa != NULL )
2165
+                if ( $Abscissa != NULL )
2166 2166
                 { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2167
-               else
2167
+                else
2168 2168
                 {
2169
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2170
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2171
-                 else
2172
-                  $Value = $i;
2169
+                    if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2170
+                    $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2171
+                    else
2172
+                    $Value = $i;
2173 2173
                 }
2174 2174
 
2175
-               $ID++; $Skipped = TRUE;
2176
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2175
+                $ID++; $Skipped = TRUE;
2176
+                if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2177 2177
                 {
2178
-                 $Bounds  = $this->drawText($XPos-$OuterTickWidth+$XLabelOffset,$YPos,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2179
-                 $TxtBox  = $XPos-$OuterTickWidth-2-($Bounds[1]["X"]-$Bounds[0]["X"]);
2180
-                 $MinLeft = min($MinLeft,$TxtBox);
2181
-                 $LastValue = $Value;
2182
-                 $Skipped   = FALSE;
2178
+                    $Bounds  = $this->drawText($XPos-$OuterTickWidth+$XLabelOffset,$YPos,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2179
+                    $TxtBox  = $XPos-$OuterTickWidth-2-($Bounds[1]["X"]-$Bounds[0]["X"]);
2180
+                    $MinLeft = min($MinLeft,$TxtBox);
2181
+                    $LastValue = $Value;
2182
+                    $Skipped   = FALSE;
2183 2183
                 }
2184 2184
 
2185
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2185
+                if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2186 2186
 
2187
-               if ( $Skipped )
2187
+                if ( $Skipped )
2188 2188
                 {
2189
-                 if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2190
-                 if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$SkippedOuterTickWidth,$YPos,$XPos+$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2189
+                    if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2190
+                    if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$SkippedOuterTickWidth,$YPos,$XPos+$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2191 2191
                 }
2192
-               else
2192
+                else
2193 2193
                 {
2194
-                 if ( $DrawXLines && ($YPos != $this->GraphAreaY1 && $YPos != $this->GraphAreaY2) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2195
-                 if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2194
+                    if ( $DrawXLines && ($YPos != $this->GraphAreaY1 && $YPos != $this->GraphAreaY2) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2195
+                    if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2196 2196
                 }
2197 2197
 
2198
-              }
2199
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis )
2200
-              {
2201
-               $XPos   = $MinLeft-2;
2202
-               $YPos   = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2203
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>90));
2204
-               $MinLeft = $Bounds[0]["X"];
2198
+                }
2199
+                if ( isset($Parameters["Name"]) && !$RemoveXAxis )
2200
+                {
2201
+                $XPos   = $MinLeft-2;
2202
+                $YPos   = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2203
+                $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>90));
2204
+                $MinLeft = $Bounds[0]["X"];
2205 2205
 
2206
-               $this->DataSet->Data["GraphArea"]["X1"] = $MinLeft;
2207
-              }
2206
+                $this->DataSet->Data["GraphArea"]["X1"] = $MinLeft;
2207
+                }
2208 2208
 
2209
-             $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2209
+                $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2210 2210
             }
2211
-           elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2211
+            elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2212 2212
             {
2213
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 2; }
2214
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 6; }
2215
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 5; }
2216
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 7; }
2213
+                if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 2; }
2214
+                if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 6; }
2215
+                if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 5; }
2216
+                if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 7; }
2217 2217
 
2218
-             if ( !$RemoveXAxis )
2219
-              {
2220
-               if ( $Floating )
2218
+                if ( !$RemoveXAxis )
2219
+                {
2220
+                if ( $Floating )
2221 2221
                 { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2222
-               else
2222
+                else
2223 2223
                 { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2224 2224
 
2225
-               if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2226
-              }
2225
+                if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2226
+                }
2227 2227
 
2228
-             $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2228
+                $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2229 2229
 
2230
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Height; } else { $Step   = $Height / $Parameters["Rows"]; }
2230
+                if ($Parameters["Rows"] == 0 ) { $Step  = $Height; } else { $Step   = $Height / $Parameters["Rows"]; }
2231 2231
              
2232
-             $MaxRight = $AxisPos["R"];
2233
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2234
-              {
2235
-               $YPos  = $this->GraphAreaY1 + $Parameters["Margin"] + $Step*$i;
2236
-               $XPos  = $AxisPos["R"];
2232
+                $MaxRight = $AxisPos["R"];
2233
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2234
+                {
2235
+                $YPos  = $this->GraphAreaY1 + $Parameters["Margin"] + $Step*$i;
2236
+                $XPos  = $AxisPos["R"];
2237 2237
 
2238
-               if ( $Abscissa != NULL )
2238
+                if ( $Abscissa != NULL )
2239 2239
                 { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2240
-               else
2240
+                else
2241 2241
                 {
2242
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2243
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2244
-                 else
2245
-                  $Value = $i;
2242
+                    if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2243
+                    $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2244
+                    else
2245
+                    $Value = $i;
2246 2246
                 }
2247 2247
 
2248
-               $ID++; $Skipped = TRUE;
2249
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2248
+                $ID++; $Skipped = TRUE;
2249
+                if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2250 2250
                 {
2251
-                 $Bounds   = $this->drawText($XPos+$OuterTickWidth+$XLabelOffset,$YPos,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2252
-                 $TxtBox   = $XPos+$OuterTickWidth+2+($Bounds[1]["X"]-$Bounds[0]["X"]);
2253
-                 $MaxRight = max($MaxRight,$TxtBox);
2254
-                 $LastValue = $Value;
2255
-                 $Skipped   = FALSE;
2251
+                    $Bounds   = $this->drawText($XPos+$OuterTickWidth+$XLabelOffset,$YPos,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2252
+                    $TxtBox   = $XPos+$OuterTickWidth+2+($Bounds[1]["X"]-$Bounds[0]["X"]);
2253
+                    $MaxRight = max($MaxRight,$TxtBox);
2254
+                    $LastValue = $Value;
2255
+                    $Skipped   = FALSE;
2256 2256
                 }
2257 2257
 
2258
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2258
+                if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2259 2259
 
2260
-               if ( $Skipped )
2260
+                if ( $Skipped )
2261 2261
                 {
2262
-                 if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2263
-                 if ( ($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$SkippedOuterTickWidth,$YPos,$XPos-$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2262
+                    if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2263
+                    if ( ($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$SkippedOuterTickWidth,$YPos,$XPos-$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2264 2264
                 }
2265
-               else
2265
+                else
2266 2266
                 {
2267
-                 if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2268
-                 if ( ($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$OuterTickWidth,$YPos,$XPos-$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2267
+                    if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2268
+                    if ( ($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$OuterTickWidth,$YPos,$XPos-$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2269 2269
                 }
2270 2270
 
2271
-              }
2271
+                }
2272 2272
 
2273
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis)
2274
-              {
2275
-               $XPos   = $MaxRight+4;
2276
-               $YPos   = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2277
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>270));
2278
-               $MaxRight = $Bounds[1]["X"];
2273
+                if ( isset($Parameters["Name"]) && !$RemoveXAxis)
2274
+                {
2275
+                $XPos   = $MaxRight+4;
2276
+                $YPos   = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2277
+                $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>270));
2278
+                $MaxRight = $Bounds[1]["X"];
2279 2279
 
2280
-               $this->DataSet->Data["GraphArea"]["X2"] = $MaxRight + $this->FontSize;
2281
-              }
2280
+                $this->DataSet->Data["GraphArea"]["X2"] = $MaxRight + $this->FontSize;
2281
+                }
2282 2282
 
2283
-             $AxisPos["R"] = $MaxRight + $ScaleSpacing;
2283
+                $AxisPos["R"] = $MaxRight + $ScaleSpacing;
2284
+            }
2284 2285
             }
2285
-          }
2286 2286
         }
2287 2287
 
2288 2288
 
2289 2289
 
2290
-       if ( $Parameters["Identity"] == AXIS_Y )
2290
+        if ( $Parameters["Identity"] == AXIS_Y )
2291 2291
         {
2292
-         if ( $Pos == SCALE_POS_LEFTRIGHT )
2293
-          {
2294
-           if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2292
+            if ( $Pos == SCALE_POS_LEFTRIGHT )
2293
+            {
2294
+            if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2295 2295
             {
2296 2296
 
2297
-             if ( $Floating )
2298
-              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2299
-             else
2300
-              { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2297
+                if ( $Floating )
2298
+                { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2299
+                else
2300
+                { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2301 2301
 
2302
-             if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2302
+                if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2303 2303
 
2304
-             $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2305
-             $Step   = $Height / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MinLeft = $AxisPos["L"];
2306
-             $LastY  = NULL;
2307
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2308
-              {
2309
-               $YPos  = $this->GraphAreaY2 - $Parameters["Margin"] - $Step*$i;
2310
-               $XPos  = $AxisPos["L"];
2311
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2304
+                $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2305
+                $Step   = $Height / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MinLeft = $AxisPos["L"];
2306
+                $LastY  = NULL;
2307
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2308
+                {
2309
+                $YPos  = $this->GraphAreaY2 - $Parameters["Margin"] - $Step*$i;
2310
+                $XPos  = $AxisPos["L"];
2311
+                $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2312 2312
 
2313
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2314
-               if ( $LastY != NULL && $CycleBackground && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($this->GraphAreaX1+$FloatingOffset,$LastY,$this->GraphAreaX2-$FloatingOffset,$YPos,$BGColor); }
2313
+                if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2314
+                if ( $LastY != NULL && $CycleBackground && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($this->GraphAreaX1+$FloatingOffset,$LastY,$this->GraphAreaX2-$FloatingOffset,$YPos,$BGColor); }
2315 2315
 
2316
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2316
+                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2317 2317
 
2318
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2318
+                if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2319 2319
                 $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2320 2320
 
2321
-               $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2322
-               $Bounds  = $this->drawText($XPos-$OuterTickWidth-2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLERIGHT));
2323
-               $TxtLeft = $XPos-$OuterTickWidth-2-($Bounds[1]["X"]-$Bounds[0]["X"]);
2324
-               $MinLeft = min($MinLeft,$TxtLeft);
2321
+                $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2322
+                $Bounds  = $this->drawText($XPos-$OuterTickWidth-2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLERIGHT));
2323
+                $TxtLeft = $XPos-$OuterTickWidth-2-($Bounds[1]["X"]-$Bounds[0]["X"]);
2324
+                $MinLeft = min($MinLeft,$TxtLeft);
2325 2325
 
2326
-               $LastY = $YPos;
2327
-              }
2326
+                $LastY = $YPos;
2327
+                }
2328 2328
 
2329
-             if ( isset($Parameters["Name"]) )
2330
-              {
2331
-               $XPos    = $MinLeft-2;
2332
-               $YPos    = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2333
-               $Bounds  = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>90));
2334
-               $MinLeft = $Bounds[2]["X"];
2329
+                if ( isset($Parameters["Name"]) )
2330
+                {
2331
+                $XPos    = $MinLeft-2;
2332
+                $YPos    = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2333
+                $Bounds  = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>90));
2334
+                $MinLeft = $Bounds[2]["X"];
2335 2335
 
2336
-               $this->DataSet->Data["GraphArea"]["X1"] = $MinLeft;
2337
-              }
2336
+                $this->DataSet->Data["GraphArea"]["X1"] = $MinLeft;
2337
+                }
2338 2338
 
2339
-             $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2339
+                $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2340 2340
             }
2341
-           elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2341
+            elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2342 2342
             {
2343
-             if ( $Floating )
2344
-              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2345
-             else
2346
-              { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2343
+                if ( $Floating )
2344
+                { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2345
+                else
2346
+                { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2347 2347
 
2348
-             if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2348
+                if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2349 2349
 
2350
-             $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2351
-             $Step   = $Height / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MaxLeft = $AxisPos["R"];
2352
-             $LastY  = NULL;
2353
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2354
-              {
2355
-               $YPos  = $this->GraphAreaY2 - $Parameters["Margin"] - $Step*$i;
2356
-               $XPos  = $AxisPos["R"];
2357
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2350
+                $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2351
+                $Step   = $Height / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MaxLeft = $AxisPos["R"];
2352
+                $LastY  = NULL;
2353
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2354
+                {
2355
+                $YPos  = $this->GraphAreaY2 - $Parameters["Margin"] - $Step*$i;
2356
+                $XPos  = $AxisPos["R"];
2357
+                $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2358 2358
 
2359
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2360
-               if ( $LastY != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($this->GraphAreaX1+$FloatingOffset,$LastY,$this->GraphAreaX2-$FloatingOffset,$YPos,$BGColor); }
2359
+                if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2360
+                if ( $LastY != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($this->GraphAreaX1+$FloatingOffset,$LastY,$this->GraphAreaX2-$FloatingOffset,$YPos,$BGColor); }
2361 2361
 
2362
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2362
+                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2363 2363
 
2364
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2364
+                if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2365 2365
                 $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2366 2366
 
2367
-               $this->drawLine($XPos-$InnerTickWidth,$YPos,$XPos+$OuterTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2368
-               $Bounds  = $this->drawText($XPos+$OuterTickWidth+2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLELEFT));
2369
-               $TxtLeft = $XPos+$OuterTickWidth+2+($Bounds[1]["X"]-$Bounds[0]["X"]);
2370
-               $MaxLeft = max($MaxLeft,$TxtLeft);
2367
+                $this->drawLine($XPos-$InnerTickWidth,$YPos,$XPos+$OuterTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2368
+                $Bounds  = $this->drawText($XPos+$OuterTickWidth+2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLELEFT));
2369
+                $TxtLeft = $XPos+$OuterTickWidth+2+($Bounds[1]["X"]-$Bounds[0]["X"]);
2370
+                $MaxLeft = max($MaxLeft,$TxtLeft);
2371 2371
 
2372
-               $LastY = $YPos;
2373
-              }
2372
+                $LastY = $YPos;
2373
+                }
2374 2374
 
2375
-             if ( isset($Parameters["Name"]) )
2376
-              {
2377
-               $XPos    = $MaxLeft+6;
2378
-               $YPos    = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2379
-               $Bounds  = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>270));
2380
-               $MaxLeft = $Bounds[2]["X"];
2375
+                if ( isset($Parameters["Name"]) )
2376
+                {
2377
+                $XPos    = $MaxLeft+6;
2378
+                $YPos    = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2379
+                $Bounds  = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>270));
2380
+                $MaxLeft = $Bounds[2]["X"];
2381 2381
 
2382
-               $this->DataSet->Data["GraphArea"]["X2"] = $MaxLeft + $this->FontSize;
2383
-              }
2384
-             $AxisPos["R"] = $MaxLeft + $ScaleSpacing;
2382
+                $this->DataSet->Data["GraphArea"]["X2"] = $MaxLeft + $this->FontSize;
2383
+                }
2384
+                $AxisPos["R"] = $MaxLeft + $ScaleSpacing;
2385
+            }
2385 2386
             }
2386
-          }
2387
-         elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2388
-          {
2389
-           if ( $Parameters["Position"] == AXIS_POSITION_TOP )
2387
+            elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2390 2388
             {
2391
-             if ( $Floating )
2392
-              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2393
-             else
2394
-              { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2389
+            if ( $Parameters["Position"] == AXIS_POSITION_TOP )
2390
+            {
2391
+                if ( $Floating )
2392
+                { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2393
+                else
2394
+                { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2395 2395
 
2396
-             if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2396
+                if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2397 2397
 
2398
-             $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2399
-             $Step   = $Width / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MinTop = $AxisPos["T"];
2400
-             $LastX  = NULL;
2401
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2402
-              {
2403
-               $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2404
-               $YPos  = $AxisPos["T"];
2405
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2398
+                $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2399
+                $Step   = $Width / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MinTop = $AxisPos["T"];
2400
+                $LastX  = NULL;
2401
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2402
+                {
2403
+                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2404
+                $YPos  = $AxisPos["T"];
2405
+                $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2406 2406
 
2407
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2408
-               if ( $LastX != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($LastX,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$BGColor); }
2407
+                if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2408
+                if ( $LastX != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($LastX,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$BGColor); }
2409 2409
 
2410
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2410
+                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2411 2411
 
2412
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2412
+                if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2413 2413
                 $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2414 2414
 
2415
-               $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2416
-               $Bounds    = $this->drawText($XPos,$YPos-$OuterTickWidth-2,$Value,array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2417
-               $TxtHeight = $YPos-$OuterTickWidth-2-($Bounds[1]["Y"]-$Bounds[2]["Y"]);
2418
-               $MinTop    = min($MinTop,$TxtHeight);
2415
+                $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2416
+                $Bounds    = $this->drawText($XPos,$YPos-$OuterTickWidth-2,$Value,array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2417
+                $TxtHeight = $YPos-$OuterTickWidth-2-($Bounds[1]["Y"]-$Bounds[2]["Y"]);
2418
+                $MinTop    = min($MinTop,$TxtHeight);
2419 2419
 
2420
-               $LastX = $XPos;
2421
-              }
2420
+                $LastX = $XPos;
2421
+                }
2422 2422
 
2423
-             if ( isset($Parameters["Name"]) )
2424
-              {
2425
-               $YPos   = $MinTop-2;
2426
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2427
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2428
-               $MinTop = $Bounds[2]["Y"];
2423
+                if ( isset($Parameters["Name"]) )
2424
+                {
2425
+                $YPos   = $MinTop-2;
2426
+                $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2427
+                $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2428
+                $MinTop = $Bounds[2]["Y"];
2429 2429
 
2430
-               $this->DataSet->Data["GraphArea"]["Y1"] = $MinTop;
2431
-              }
2430
+                $this->DataSet->Data["GraphArea"]["Y1"] = $MinTop;
2431
+                }
2432 2432
 
2433
-             $AxisPos["T"] = $MinTop - $ScaleSpacing;
2433
+                $AxisPos["T"] = $MinTop - $ScaleSpacing;
2434 2434
             }
2435
-           elseif ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
2435
+            elseif ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
2436 2436
             {
2437
-             if ( $Floating )
2438
-              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2439
-             else
2440
-              { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2437
+                if ( $Floating )
2438
+                { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2439
+                else
2440
+                { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2441 2441
 
2442
-             if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2442
+                if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2443 2443
 
2444
-             $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2445
-             $Step   = $Width / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MaxBottom = $AxisPos["B"];
2446
-             $LastX  = NULL;
2447
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2448
-              {
2449
-               $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2450
-               $YPos  = $AxisPos["B"];
2451
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2444
+                $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2445
+                $Step   = $Width / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MaxBottom = $AxisPos["B"];
2446
+                $LastX  = NULL;
2447
+                for($i=0;$i<=$Parameters["Rows"];$i++)
2448
+                {
2449
+                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2450
+                $YPos  = $AxisPos["B"];
2451
+                $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2452 2452
 
2453
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2454
-               if ( $LastX != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($LastX,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$BGColor); }
2453
+                if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2454
+                if ( $LastX != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($LastX,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$BGColor); }
2455 2455
 
2456
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2456
+                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2457 2457
 
2458
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2458
+                if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2459 2459
                 $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2460 2460
 
2461
-               $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2462
-               $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+2,$Value,array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2463
-               $TxtHeight = $YPos+$OuterTickWidth+2+($Bounds[1]["Y"]-$Bounds[2]["Y"]);
2464
-               $MaxBottom = max($MaxBottom,$TxtHeight);
2461
+                $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2462
+                $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+2,$Value,array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2463
+                $TxtHeight = $YPos+$OuterTickWidth+2+($Bounds[1]["Y"]-$Bounds[2]["Y"]);
2464
+                $MaxBottom = max($MaxBottom,$TxtHeight);
2465 2465
 
2466
-               $LastX = $XPos;
2467
-              }
2466
+                $LastX = $XPos;
2467
+                }
2468 2468
 
2469
-             if ( isset($Parameters["Name"]) )
2470
-              {
2471
-               $YPos   = $MaxBottom+2;
2472
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2473
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2474
-               $MaxBottom = $Bounds[0]["Y"];
2469
+                if ( isset($Parameters["Name"]) )
2470
+                {
2471
+                $YPos   = $MaxBottom+2;
2472
+                $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2473
+                $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2474
+                $MaxBottom = $Bounds[0]["Y"];
2475 2475
 
2476
-               $this->DataSet->Data["GraphArea"]["Y2"] = $MaxBottom + $this->FontSize;
2477
-              }
2476
+                $this->DataSet->Data["GraphArea"]["Y2"] = $MaxBottom + $this->FontSize;
2477
+                }
2478 2478
 
2479
-             $AxisPos["B"] = $MaxBottom + $ScaleSpacing;
2479
+                $AxisPos["B"] = $MaxBottom + $ScaleSpacing;
2480
+            }
2480 2481
             }
2481
-          }
2482 2482
         }
2483
-      }
2483
+        }
2484 2484
     }
2485 2485
 
2486
-   function isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip)
2486
+    function isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip)
2487 2487
     {
2488
-     if ( $LabelingMethod == LABELING_DIFFERENT && $Value != $LastValue ) { return(TRUE); }
2489
-     if ( $LabelingMethod == LABELING_DIFFERENT && $Value == $LastValue ) { return(FALSE); }
2490
-     if ( $LabelingMethod == LABELING_ALL && $LabelSkip == 0 ) { return(TRUE); }
2491
-     if ( $LabelingMethod == LABELING_ALL && ($ID+$LabelSkip) % ($LabelSkip+1) != 1 ) { return(FALSE); }
2488
+        if ( $LabelingMethod == LABELING_DIFFERENT && $Value != $LastValue ) { return(TRUE); }
2489
+        if ( $LabelingMethod == LABELING_DIFFERENT && $Value == $LastValue ) { return(FALSE); }
2490
+        if ( $LabelingMethod == LABELING_ALL && $LabelSkip == 0 ) { return(TRUE); }
2491
+        if ( $LabelingMethod == LABELING_ALL && ($ID+$LabelSkip) % ($LabelSkip+1) != 1 ) { return(FALSE); }
2492 2492
 
2493
-     return(TRUE);
2493
+        return(TRUE);
2494 2494
     }
2495 2495
 
2496
-   /* Compute the scale, check for the best visual factors */
2497
-   function computeScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID=0)
2496
+    /* Compute the scale, check for the best visual factors */
2497
+    function computeScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID=0)
2498 2498
     {
2499
-     /* Compute each factors */
2500
-     $Results = "";
2501
-     foreach ($Factors as $Key => $Factor)
2502
-      $Results[$Factor] = $this->processScale($XMin,$XMax,$MaxDivs,array($Factor),$AxisID);
2503
-
2504
-     /* Remove scales that are creating to much decimals */
2505
-     $GoodScaleFactors = "";
2506
-     foreach ($Results as $Key => $Result)
2507
-      {
2508
-       $Decimals = preg_split("/\./",$Result["RowHeight"]);
2509
-       if ( (!isset($Decimals[1])) || (strlen($Decimals[1]) < 6) ) { $GoodScaleFactors[] = $Key; }
2510
-      }
2511
-
2512
-     /* Found no correct scale, shame,... returns the 1st one as default */
2513
-     if ( $GoodScaleFactors == "" ) { return($Results[$Factors[0]]); }
2514
-
2515
-     /* Find the factor that cause the maximum number of Rows */
2516
-     $MaxRows = 0; $BestFactor = 0;
2517
-     foreach($GoodScaleFactors as $Key => $Factor)
2518
-      { if ( $Results[$Factor]["Rows"] > $MaxRows ) { $MaxRows = $Results[$Factor]["Rows"]; $BestFactor = $Factor; } }
2519
-
2520
-     /* Return the best visual scale */
2521
-     return($Results[$BestFactor]);
2499
+        /* Compute each factors */
2500
+        $Results = "";
2501
+        foreach ($Factors as $Key => $Factor)
2502
+        $Results[$Factor] = $this->processScale($XMin,$XMax,$MaxDivs,array($Factor),$AxisID);
2503
+
2504
+        /* Remove scales that are creating to much decimals */
2505
+        $GoodScaleFactors = "";
2506
+        foreach ($Results as $Key => $Result)
2507
+        {
2508
+        $Decimals = preg_split("/\./",$Result["RowHeight"]);
2509
+        if ( (!isset($Decimals[1])) || (strlen($Decimals[1]) < 6) ) { $GoodScaleFactors[] = $Key; }
2510
+        }
2511
+
2512
+        /* Found no correct scale, shame,... returns the 1st one as default */
2513
+        if ( $GoodScaleFactors == "" ) { return($Results[$Factors[0]]); }
2514
+
2515
+        /* Find the factor that cause the maximum number of Rows */
2516
+        $MaxRows = 0; $BestFactor = 0;
2517
+        foreach($GoodScaleFactors as $Key => $Factor)
2518
+        { if ( $Results[$Factor]["Rows"] > $MaxRows ) { $MaxRows = $Results[$Factor]["Rows"]; $BestFactor = $Factor; } }
2519
+
2520
+        /* Return the best visual scale */
2521
+        return($Results[$BestFactor]);
2522 2522
     }
2523 2523
 
2524
-   /* Compute the best matching scale based on size & factors */
2525
-   function processScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID)
2524
+    /* Compute the best matching scale based on size & factors */
2525
+    function processScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID)
2526 2526
     {
2527
-     $ScaleHeight = abs(ceil($XMax)-floor($XMin));
2527
+        $ScaleHeight = abs(ceil($XMax)-floor($XMin));
2528 2528
 
2529
-     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Format"]) )
2530
-      $Format = $this->DataSet->Data["Axis"][$AxisID]["Format"];
2531
-     else
2532
-      $Format = NULL;
2529
+        if ( isset($this->DataSet->Data["Axis"][$AxisID]["Format"]) )
2530
+        $Format = $this->DataSet->Data["Axis"][$AxisID]["Format"];
2531
+        else
2532
+        $Format = NULL;
2533 2533
 
2534
-     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Display"]) )
2535
-      $Mode = $this->DataSet->Data["Axis"][$AxisID]["Display"];
2536
-     else
2537
-      $Mode = AXIS_FORMAT_DEFAULT;
2534
+        if ( isset($this->DataSet->Data["Axis"][$AxisID]["Display"]) )
2535
+        $Mode = $this->DataSet->Data["Axis"][$AxisID]["Display"];
2536
+        else
2537
+        $Mode = AXIS_FORMAT_DEFAULT;
2538 2538
 
2539
-     $Scale = "";
2540
-     if ( $XMin != $XMax )
2541
-      {
2542
-       $Found = FALSE; $Rescaled = FALSE; $Scaled10Factor = .0001; $Result = 0;
2543
-       while(!$Found)
2539
+        $Scale = "";
2540
+        if ( $XMin != $XMax )
2544 2541
         {
2545
-         foreach($Factors as $Key => $Factor)
2546
-          {
2547
-           if ( !$Found )
2542
+        $Found = FALSE; $Rescaled = FALSE; $Scaled10Factor = .0001; $Result = 0;
2543
+        while(!$Found)
2544
+        {
2545
+            foreach($Factors as $Key => $Factor)
2546
+            {
2547
+            if ( !$Found )
2548 2548
             {
2549
-             if ( !($this->modulo($XMin,$Factor*$Scaled10Factor) == 0) || ($XMin != floor($XMin))) { $XMinRescaled = floor($XMin/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor; } else { $XMinRescaled = $XMin; }
2550
-             if ( !($this->modulo($XMax,$Factor*$Scaled10Factor) == 0) || ($XMax != floor($XMax))) { $XMaxRescaled = floor($XMax/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor+($Factor*$Scaled10Factor); } else { $XMaxRescaled = $XMax; }
2551
-             $ScaleHeightRescaled = abs($XMaxRescaled-$XMinRescaled);
2549
+                if ( !($this->modulo($XMin,$Factor*$Scaled10Factor) == 0) || ($XMin != floor($XMin))) { $XMinRescaled = floor($XMin/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor; } else { $XMinRescaled = $XMin; }
2550
+                if ( !($this->modulo($XMax,$Factor*$Scaled10Factor) == 0) || ($XMax != floor($XMax))) { $XMaxRescaled = floor($XMax/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor+($Factor*$Scaled10Factor); } else { $XMaxRescaled = $XMax; }
2551
+                $ScaleHeightRescaled = abs($XMaxRescaled-$XMinRescaled);
2552 2552
 
2553
-             if ( !$Found && floor($ScaleHeightRescaled/($Factor*$Scaled10Factor)) <= $MaxDivs ) { $Found = TRUE; $Rescaled = TRUE; $Result = $Factor * $Scaled10Factor; }
2553
+                if ( !$Found && floor($ScaleHeightRescaled/($Factor*$Scaled10Factor)) <= $MaxDivs ) { $Found = TRUE; $Rescaled = TRUE; $Result = $Factor * $Scaled10Factor; }
2554 2554
             }
2555
-          }
2556
-         $Scaled10Factor = $Scaled10Factor * 10;
2555
+            }
2556
+            $Scaled10Factor = $Scaled10Factor * 10;
2557 2557
         }
2558 2558
 
2559
-       /* ReCall Min / Max / Height */
2560
-       if ( $Rescaled ) { $XMin = $XMinRescaled; $XMax = $XMaxRescaled; $ScaleHeight = $ScaleHeightRescaled; }
2559
+        /* ReCall Min / Max / Height */
2560
+        if ( $Rescaled ) { $XMin = $XMinRescaled; $XMax = $XMaxRescaled; $ScaleHeight = $ScaleHeightRescaled; }
2561 2561
 
2562
-       /* Compute rows size */
2563
-       $Rows      = floor($ScaleHeight / $Result); if ( $Rows == 0 ) { $Rows = 1; }
2564
-       $RowHeight = $ScaleHeight / $Rows;
2562
+        /* Compute rows size */
2563
+        $Rows      = floor($ScaleHeight / $Result); if ( $Rows == 0 ) { $Rows = 1; }
2564
+        $RowHeight = $ScaleHeight / $Rows;
2565 2565
 
2566
-       /* Return the results */
2567
-       $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin;  $Scale["XMax"] = $XMax;
2566
+        /* Return the results */
2567
+        $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin;  $Scale["XMax"] = $XMax;
2568 2568
 
2569
-       /* Compute the needed decimals for the metric view to avoid repetition of the same X Axis labels */
2570
-       if ( $Mode == AXIS_FORMAT_METRIC && $Format == NULL )
2569
+        /* Compute the needed decimals for the metric view to avoid repetition of the same X Axis labels */
2570
+        if ( $Mode == AXIS_FORMAT_METRIC && $Format == NULL )
2571 2571
         {
2572
-         $Done = FALSE; $GoodDecimals = 0;
2573
-         for($Decimals=0;$Decimals<=10;$Decimals++)
2574
-          {
2575
-           if ( !$Done )
2572
+            $Done = FALSE; $GoodDecimals = 0;
2573
+            for($Decimals=0;$Decimals<=10;$Decimals++)
2574
+            {
2575
+            if ( !$Done )
2576 2576
             {
2577
-             $LastLabel = "zob"; $ScaleOK = TRUE;
2578
-             for($i=0;$i<=$Rows;$i++)
2579
-              {
2580
-               $Value = $XMin + $i*$RowHeight;
2581
-               $Label = $this->scaleFormat($Value,AXIS_FORMAT_METRIC,$Decimals);
2577
+                $LastLabel = "zob"; $ScaleOK = TRUE;
2578
+                for($i=0;$i<=$Rows;$i++)
2579
+                {
2580
+                $Value = $XMin + $i*$RowHeight;
2581
+                $Label = $this->scaleFormat($Value,AXIS_FORMAT_METRIC,$Decimals);
2582 2582
 
2583
-               if ( $LastLabel == $Label ) { $ScaleOK = FALSE; }
2584
-               $LastLabel = $Label;
2585
-              }
2586
-             if ( $ScaleOK ) { $Done = TRUE; $GoodDecimals = $Decimals; }
2583
+                if ( $LastLabel == $Label ) { $ScaleOK = FALSE; }
2584
+                $LastLabel = $Label;
2585
+                }
2586
+                if ( $ScaleOK ) { $Done = TRUE; $GoodDecimals = $Decimals; }
2587
+            }
2587 2588
             }
2588
-          }
2589 2589
 
2590
-         $Scale["Format"] = $GoodDecimals;
2590
+            $Scale["Format"] = $GoodDecimals;
2591
+        }
2591 2592
         }
2592
-      }
2593
-     else
2594
-      {
2595
-       /* If all values are the same we keep a +1/-1 scale */
2596
-       $Rows = 2; $XMin = $XMax-1; $XMax = $XMax+1; $RowHeight = 1;
2593
+        else
2594
+        {
2595
+        /* If all values are the same we keep a +1/-1 scale */
2596
+        $Rows = 2; $XMin = $XMax-1; $XMax = $XMax+1; $RowHeight = 1;
2597 2597
 
2598
-       /* Return the results */
2599
-       $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin;  $Scale["XMax"] = $XMax;
2600
-      }
2598
+        /* Return the results */
2599
+        $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin;  $Scale["XMax"] = $XMax;
2600
+        }
2601 2601
 
2602
-     return($Scale);
2602
+        return($Scale);
2603 2603
     }
2604 2604
 
2605
-   function modulo($Value1,$Value2)
2605
+    function modulo($Value1,$Value2)
2606 2606
     {
2607
-     if (floor($Value2) == 0) { return(0); }
2608
-     if (floor($Value2) != 0) { return($Value1 % $Value2); }
2607
+        if (floor($Value2) == 0) { return(0); }
2608
+        if (floor($Value2) != 0) { return($Value1 % $Value2); }
2609 2609
 
2610
-     $MinValue = min($Value1,$Value2); $Factor = 10;
2611
-     while ( floor($MinValue*$Factor) == 0 )
2612
-      { $Factor = $Factor * 10; }
2610
+        $MinValue = min($Value1,$Value2); $Factor = 10;
2611
+        while ( floor($MinValue*$Factor) == 0 )
2612
+        { $Factor = $Factor * 10; }
2613 2613
 
2614
-     return(($Value1*$Factor) % ($Value2*$Factor));
2614
+        return(($Value1*$Factor) % ($Value2*$Factor));
2615 2615
     }
2616 2616
 
2617
-   /* Draw an X threshold */
2618
-   function drawXThreshold($Value,$Format="")
2617
+    /* Draw an X threshold */
2618
+    function drawXThreshold($Value,$Format="")
2619 2619
     {
2620
-     $R			= isset($Format["R"]) ? $Format["R"] : 255;
2621
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
2622
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
2623
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 50;
2624
-     $Weight		= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2625
-     $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : 6;
2626
-     $Wide		= isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2627
-     $WideFactor	= isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2628
-     $WriteCaption	= isset($Format["WriteCaption"]) ? $Format["WriteCaption"] : FALSE;
2629
-     $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2630
-     $CaptionAlign	= isset($Format["CaptionAlign"]) ? $Format["CaptionAlign"] : CAPTION_LEFT_TOP;
2631
-     $CaptionOffset     = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 5;
2632
-     $CaptionR		= isset($Format["CaptionR"]) ? $Format["CaptionR"] : 255;
2633
-     $CaptionG		= isset($Format["CaptionG"]) ? $Format["CaptionG"] : 255;
2634
-     $CaptionB		= isset($Format["CaptionB"]) ? $Format["CaptionB"] : 255;
2635
-     $CaptionAlpha	= isset($Format["CaptionAlpha"]) ? $Format["CaptionAlpha"] : 100;
2636
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2637
-     $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
2638
-     $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 3;
2639
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2640
-     $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
2641
-     $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
2642
-     $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
2643
-     $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
2644
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 30;
2645
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2646
-     $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
2647
-     $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
2648
-     $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
2649
-     $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2650
-     $ValueIsLabel	= isset($Format["ValueIsLabel"]) ? $Format["ValueIsLabel"] : FALSE;
2651
-
2652
-     $Data           = $this->DataSet->getData();
2653
-     $AbscissaMargin = $this->getAbscissaMargin($Data);
2654
-     $XScale         = $this->scaleGetXSettings();
2655
-
2656
-     if ( is_array($Value) ) { foreach ($Value as $Key => $ID) { $this->drawXThreshold($ID,$Format); } return(0); }
2657
-
2658
-     if ( $ValueIsLabel )
2659
-      {
2660
-       $Format["ValueIsLabel"] = FALSE;
2661
-       foreach($Data["Series"][$Data["Abscissa"]]["Data"] as $Key => $SerieValue)
2620
+        $R			= isset($Format["R"]) ? $Format["R"] : 255;
2621
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
2622
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
2623
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 50;
2624
+        $Weight		= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2625
+        $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : 6;
2626
+        $Wide		= isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2627
+        $WideFactor	= isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2628
+        $WriteCaption	= isset($Format["WriteCaption"]) ? $Format["WriteCaption"] : FALSE;
2629
+        $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2630
+        $CaptionAlign	= isset($Format["CaptionAlign"]) ? $Format["CaptionAlign"] : CAPTION_LEFT_TOP;
2631
+        $CaptionOffset     = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 5;
2632
+        $CaptionR		= isset($Format["CaptionR"]) ? $Format["CaptionR"] : 255;
2633
+        $CaptionG		= isset($Format["CaptionG"]) ? $Format["CaptionG"] : 255;
2634
+        $CaptionB		= isset($Format["CaptionB"]) ? $Format["CaptionB"] : 255;
2635
+        $CaptionAlpha	= isset($Format["CaptionAlpha"]) ? $Format["CaptionAlpha"] : 100;
2636
+        $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2637
+        $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
2638
+        $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 3;
2639
+        $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2640
+        $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
2641
+        $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
2642
+        $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
2643
+        $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
2644
+        $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 30;
2645
+        $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2646
+        $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
2647
+        $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
2648
+        $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
2649
+        $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2650
+        $ValueIsLabel	= isset($Format["ValueIsLabel"]) ? $Format["ValueIsLabel"] : FALSE;
2651
+
2652
+        $Data           = $this->DataSet->getData();
2653
+        $AbscissaMargin = $this->getAbscissaMargin($Data);
2654
+        $XScale         = $this->scaleGetXSettings();
2655
+
2656
+        if ( is_array($Value) ) { foreach ($Value as $Key => $ID) { $this->drawXThreshold($ID,$Format); } return(0); }
2657
+
2658
+        if ( $ValueIsLabel )
2659
+        {
2660
+        $Format["ValueIsLabel"] = FALSE;
2661
+        foreach($Data["Series"][$Data["Abscissa"]]["Data"] as $Key => $SerieValue)
2662 2662
         { if ( $SerieValue == $Value ) { $this->drawXThreshold($Key,$Format); } }
2663 2663
 
2664
-       return(0);
2665
-      }
2664
+        return(0);
2665
+        }
2666 2666
 
2667
-     $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
2668
-                              "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
2669
-                              "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha,
2670
-                              "R"=>$CaptionR,"G"=>$CaptionG,"B"=>$CaptionB,"Alpha"=>$CaptionAlpha);
2667
+        $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
2668
+                                "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
2669
+                                "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha,
2670
+                                "R"=>$CaptionR,"G"=>$CaptionG,"B"=>$CaptionB,"Alpha"=>$CaptionAlpha);
2671 2671
 
2672
-     if ( $Caption == NULL )
2673
-      {
2674
-       if ( isset($Data["Abscissa"]) )
2672
+        if ( $Caption == NULL )
2675 2673
         {
2676
-         if ( isset($Data["Series"][$Data["Abscissa"]]["Data"][$Value]) )
2677
-          $Caption = $Data["Series"][$Data["Abscissa"]]["Data"][$Value];
2678
-         else
2679
-          $Caption = $Value;
2674
+        if ( isset($Data["Abscissa"]) )
2675
+        {
2676
+            if ( isset($Data["Series"][$Data["Abscissa"]]["Data"][$Value]) )
2677
+            $Caption = $Data["Series"][$Data["Abscissa"]]["Data"][$Value];
2678
+            else
2679
+            $Caption = $Value;
2680 2680
         }
2681
-       else
2681
+        else
2682 2682
         $Caption = $Value;
2683
-      }
2683
+        }
2684 2684
 
2685
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2686
-      {
2687
-       $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0] *2 ) / $XScale[1];
2688
-       $XPos  = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value;
2689
-       $YPos1 = $this->GraphAreaY1 + $Data["YMargin"];
2690
-       $YPos2 = $this->GraphAreaY2 - $Data["YMargin"];
2685
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2686
+        {
2687
+        $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0] *2 ) / $XScale[1];
2688
+        $XPos  = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value;
2689
+        $YPos1 = $this->GraphAreaY1 + $Data["YMargin"];
2690
+        $YPos2 = $this->GraphAreaY2 - $Data["YMargin"];
2691 2691
 
2692
-       if ( $XPos >= $this->GraphAreaX1 + $AbscissaMargin && $XPos <= $this->GraphAreaX2 - $AbscissaMargin )
2692
+        if ( $XPos >= $this->GraphAreaX1 + $AbscissaMargin && $XPos <= $this->GraphAreaX2 - $AbscissaMargin )
2693 2693
         {
2694
-         $this->drawLine($XPos,$YPos1,$XPos,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2694
+            $this->drawLine($XPos,$YPos1,$XPos,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2695 2695
 
2696
-         if ( $Wide )
2697
-          {
2698
-           $this->drawLine($XPos-1,$YPos1,$XPos-1,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2699
-           $this->drawLine($XPos+1,$YPos1,$XPos+1,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2700
-          }
2696
+            if ( $Wide )
2697
+            {
2698
+            $this->drawLine($XPos-1,$YPos1,$XPos-1,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2699
+            $this->drawLine($XPos+1,$YPos1,$XPos+1,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2700
+            }
2701 2701
 
2702
-         if ( $WriteCaption )
2703
-          {
2704
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2702
+            if ( $WriteCaption )
2703
+            {
2704
+            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2705 2705
             { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; }
2706
-           else 
2706
+            else 
2707 2707
             { $Y = $YPos2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_BOTTOMMIDDLE; }
2708 2708
            
2709
-           $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
2710
-          }
2709
+            $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
2710
+            }
2711 2711
 
2712
-         return(array("X"=>$XPos));
2712
+            return(array("X"=>$XPos));
2713
+        }
2713 2714
         }
2714
-      }
2715
-     elseif( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2716
-      {
2717
-       $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2718
-       $XPos  = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value;
2719
-       $YPos1 = $this->GraphAreaX1 + $Data["YMargin"];
2720
-       $YPos2 = $this->GraphAreaX2 - $Data["YMargin"];
2715
+        elseif( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2716
+        {
2717
+        $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2718
+        $XPos  = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value;
2719
+        $YPos1 = $this->GraphAreaX1 + $Data["YMargin"];
2720
+        $YPos2 = $this->GraphAreaX2 - $Data["YMargin"];
2721 2721
 
2722
-       if ( $XPos >= $this->GraphAreaY1 + $AbscissaMargin && $XPos <= $this->GraphAreaY2 - $AbscissaMargin )
2722
+        if ( $XPos >= $this->GraphAreaY1 + $AbscissaMargin && $XPos <= $this->GraphAreaY2 - $AbscissaMargin )
2723 2723
         {
2724
-         $this->drawLine($YPos1,$XPos,$YPos2,$XPos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2724
+            $this->drawLine($YPos1,$XPos,$YPos2,$XPos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2725 2725
 
2726
-         if ( $Wide )
2727
-          {
2728
-           $this->drawLine($YPos1,$XPos-1,$YPos2,$XPos-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2729
-           $this->drawLine($YPos1,$XPos+1,$YPos2,$XPos+1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2730
-          }
2726
+            if ( $Wide )
2727
+            {
2728
+            $this->drawLine($YPos1,$XPos-1,$YPos2,$XPos-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2729
+            $this->drawLine($YPos1,$XPos+1,$YPos2,$XPos+1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2730
+            }
2731 2731
 
2732
-         if ( $WriteCaption )
2733
-          {
2734
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2732
+            if ( $WriteCaption )
2733
+            {
2734
+            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2735 2735
             { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; }
2736
-           else 
2736
+            else 
2737 2737
             { $Y = $YPos2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLERIGHT; }
2738 2738
            
2739
-           $this->drawText($Y,$XPos,$Caption,$CaptionSettings);
2740
-          }
2739
+            $this->drawText($Y,$XPos,$Caption,$CaptionSettings);
2740
+            }
2741 2741
 
2742
-         return(array("X"=>$XPos));
2742
+            return(array("X"=>$XPos));
2743
+        }
2743 2744
         }
2744
-      }
2745 2745
     }
2746 2746
 
2747
-   /* Draw an X threshold area */
2748
-   function drawXThresholdArea($Value1,$Value2,$Format="")
2747
+    /* Draw an X threshold area */
2748
+    function drawXThresholdArea($Value1,$Value2,$Format="")
2749 2749
     {
2750
-     $R		= isset($Format["R"]) ? $Format["R"] : 255;
2751
-     $G		= isset($Format["G"]) ? $Format["G"] : 0;
2752
-     $B		= isset($Format["B"]) ? $Format["B"] : 0;
2753
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2754
-     $Border    = isset($Format["Border"]) ? $Format["Border"] : TRUE;
2755
-     $BorderR   = isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
2756
-     $BorderG   = isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
2757
-     $BorderB   = isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
2758
-     $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha + 20;
2759
-     $BorderTicks = isset($Format["BorderTicks"]) ? $Format["BorderTicks"] : 2;
2760
-     $AreaName 	= isset($Format["AreaName"]) ? $Format["AreaName"] : NULL;
2761
-     $NameAngle	= isset($Format["NameAngle"]) ? $Format["NameAngle"] : ZONE_NAME_ANGLE_AUTO;
2762
-     $NameR	= isset($Format["NameR"]) ? $Format["NameR"] : 255;
2763
-     $NameG	= isset($Format["NameG"]) ? $Format["NameG"] : 255;
2764
-     $NameB	= isset($Format["NameB"]) ? $Format["NameB"] : 255;
2765
-     $NameAlpha	= isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2766
-     $DisableShadowOnArea = isset($Format["DisableShadowOnArea"]) ? $Format["DisableShadowOnArea"] : TRUE;
2767
-
2768
-     $RestoreShadow = $this->Shadow;
2769
-     if ( $DisableShadowOnArea && $this->Shadow ) { $this->Shadow = FALSE; }
2770
-
2771
-     if ($BorderAlpha >100) { $BorderAlpha = 100;}
2772
-
2773
-     $Data           = $this->DataSet->getData();
2774
-     $XScale         = $this->scaleGetXSettings();
2775
-     $AbscissaMargin = $this->getAbscissaMargin($Data);
2776
-
2777
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2778
-      {
2779
-       $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0] *2 ) / $XScale[1];
2780
-       $XPos1 = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value1;
2781
-       $XPos2 = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value2;
2782
-       $YPos1 = $this->GraphAreaY1 + $Data["YMargin"];
2783
-       $YPos2 = $this->GraphAreaY2 - $Data["YMargin"];
2784
-
2785
-       if ( $XPos1 < $this->GraphAreaX1 + $XScale[0] ) { $XPos1 = $this->GraphAreaX1 + $XScale[0]; }
2786
-       if ( $XPos1 > $this->GraphAreaX2 - $XScale[0] ) { $XPos1 = $this->GraphAreaX2 - $XScale[0]; }
2787
-       if ( $XPos2 < $this->GraphAreaX1 + $XScale[0] ) { $XPos2 = $this->GraphAreaX1 + $XScale[0]; }
2788
-       if ( $XPos2 > $this->GraphAreaX2 - $XScale[0] ) { $XPos2 = $this->GraphAreaX2 - $XScale[0]; }
2789
-
2790
-       $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
2791
-
2792
-       if ( $Border )
2793
-        {
2794
-         $this->drawLine($XPos1,$YPos1,$XPos1,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2795
-         $this->drawLine($XPos2,$YPos1,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2796
-        }
2797
-
2798
-       if ( $AreaName != NULL )
2799
-        {
2800
-         $XPos = ($XPos2-$XPos1)/2 + $XPos1;
2801
-         $YPos = ($YPos2-$YPos1)/2 + $YPos1;
2802
-
2803
-         if ( $NameAngle == ZONE_NAME_ANGLE_AUTO )
2804
-          {
2805
-           $TxtPos   = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$AreaName);
2806
-           $TxtWidth = $TxtPos[1]["X"] - $TxtPos[0]["X"];
2807
-           if ( abs($XPos2 - $XPos1) > $TxtWidth ) { $NameAngle = 0; } else { $NameAngle = 90; }
2808
-          }
2809
-         $this->Shadow = $RestoreShadow;
2810
-         $this->drawText($XPos,$YPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>$NameAngle,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2811
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
2812
-        }
2813
-
2814
-       $this->Shadow = $RestoreShadow;
2815
-       return(array("X1"=>$XPos1,"X2"=>$XPos2));
2816
-      }
2817
-     elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2818
-      {
2819
-       $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2820
-       $XPos1 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value1;
2821
-       $XPos2 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value2;
2822
-       $YPos1 = $this->GraphAreaX1 + $Data["YMargin"];
2823
-       $YPos2 = $this->GraphAreaX2 - $Data["YMargin"];
2824
-
2825
-       if ( $XPos1 < $this->GraphAreaY1 + $XScale[0] ) { $XPos1 = $this->GraphAreaY1 + $XScale[0]; }
2826
-       if ( $XPos1 > $this->GraphAreaY2 - $XScale[0] ) { $XPos1 = $this->GraphAreaY2 - $XScale[0]; }
2827
-       if ( $XPos2 < $this->GraphAreaY1 + $XScale[0] ) { $XPos2 = $this->GraphAreaY1 + $XScale[0]; }
2828
-       if ( $XPos2 > $this->GraphAreaY2 - $XScale[0] ) { $XPos2 = $this->GraphAreaY2 - $XScale[0]; }
2829
-
2830
-       $this->drawFilledRectangle($YPos1,$XPos1,$YPos2,$XPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
2831
-
2832
-       if ( $Border )
2833
-        {
2834
-         $this->drawLine($YPos1,$XPos1,$YPos2,$XPos1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2835
-         $this->drawLine($YPos1,$XPos2,$YPos2,$XPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2836
-        }
2837
-
2838
-       if ( $AreaName != NULL )
2839
-        {
2840
-         $XPos = ($XPos2-$XPos1)/2 + $XPos1;
2841
-         $YPos = ($YPos2-$YPos1)/2 + $YPos1;
2842
-
2843
-         $this->Shadow = $RestoreShadow;
2844
-         $this->drawText($YPos,$XPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>0,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2845
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
2846
-        }
2847
-
2848
-       $this->Shadow = $RestoreShadow;
2849
-       return(array("X1"=>$XPos1,"X2"=>$XPos2));
2850
-      }
2750
+        $R		= isset($Format["R"]) ? $Format["R"] : 255;
2751
+        $G		= isset($Format["G"]) ? $Format["G"] : 0;
2752
+        $B		= isset($Format["B"]) ? $Format["B"] : 0;
2753
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2754
+        $Border    = isset($Format["Border"]) ? $Format["Border"] : TRUE;
2755
+        $BorderR   = isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
2756
+        $BorderG   = isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
2757
+        $BorderB   = isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
2758
+        $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha + 20;
2759
+        $BorderTicks = isset($Format["BorderTicks"]) ? $Format["BorderTicks"] : 2;
2760
+        $AreaName 	= isset($Format["AreaName"]) ? $Format["AreaName"] : NULL;
2761
+        $NameAngle	= isset($Format["NameAngle"]) ? $Format["NameAngle"] : ZONE_NAME_ANGLE_AUTO;
2762
+        $NameR	= isset($Format["NameR"]) ? $Format["NameR"] : 255;
2763
+        $NameG	= isset($Format["NameG"]) ? $Format["NameG"] : 255;
2764
+        $NameB	= isset($Format["NameB"]) ? $Format["NameB"] : 255;
2765
+        $NameAlpha	= isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2766
+        $DisableShadowOnArea = isset($Format["DisableShadowOnArea"]) ? $Format["DisableShadowOnArea"] : TRUE;
2767
+
2768
+        $RestoreShadow = $this->Shadow;
2769
+        if ( $DisableShadowOnArea && $this->Shadow ) { $this->Shadow = FALSE; }
2770
+
2771
+        if ($BorderAlpha >100) { $BorderAlpha = 100;}
2772
+
2773
+        $Data           = $this->DataSet->getData();
2774
+        $XScale         = $this->scaleGetXSettings();
2775
+        $AbscissaMargin = $this->getAbscissaMargin($Data);
2776
+
2777
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2778
+        {
2779
+        $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0] *2 ) / $XScale[1];
2780
+        $XPos1 = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value1;
2781
+        $XPos2 = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value2;
2782
+        $YPos1 = $this->GraphAreaY1 + $Data["YMargin"];
2783
+        $YPos2 = $this->GraphAreaY2 - $Data["YMargin"];
2784
+
2785
+        if ( $XPos1 < $this->GraphAreaX1 + $XScale[0] ) { $XPos1 = $this->GraphAreaX1 + $XScale[0]; }
2786
+        if ( $XPos1 > $this->GraphAreaX2 - $XScale[0] ) { $XPos1 = $this->GraphAreaX2 - $XScale[0]; }
2787
+        if ( $XPos2 < $this->GraphAreaX1 + $XScale[0] ) { $XPos2 = $this->GraphAreaX1 + $XScale[0]; }
2788
+        if ( $XPos2 > $this->GraphAreaX2 - $XScale[0] ) { $XPos2 = $this->GraphAreaX2 - $XScale[0]; }
2789
+
2790
+        $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
2791
+
2792
+        if ( $Border )
2793
+        {
2794
+            $this->drawLine($XPos1,$YPos1,$XPos1,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2795
+            $this->drawLine($XPos2,$YPos1,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2796
+        }
2797
+
2798
+        if ( $AreaName != NULL )
2799
+        {
2800
+            $XPos = ($XPos2-$XPos1)/2 + $XPos1;
2801
+            $YPos = ($YPos2-$YPos1)/2 + $YPos1;
2802
+
2803
+            if ( $NameAngle == ZONE_NAME_ANGLE_AUTO )
2804
+            {
2805
+            $TxtPos   = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$AreaName);
2806
+            $TxtWidth = $TxtPos[1]["X"] - $TxtPos[0]["X"];
2807
+            if ( abs($XPos2 - $XPos1) > $TxtWidth ) { $NameAngle = 0; } else { $NameAngle = 90; }
2808
+            }
2809
+            $this->Shadow = $RestoreShadow;
2810
+            $this->drawText($XPos,$YPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>$NameAngle,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2811
+            if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
2812
+        }
2813
+
2814
+        $this->Shadow = $RestoreShadow;
2815
+        return(array("X1"=>$XPos1,"X2"=>$XPos2));
2816
+        }
2817
+        elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2818
+        {
2819
+        $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2820
+        $XPos1 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value1;
2821
+        $XPos2 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value2;
2822
+        $YPos1 = $this->GraphAreaX1 + $Data["YMargin"];
2823
+        $YPos2 = $this->GraphAreaX2 - $Data["YMargin"];
2824
+
2825
+        if ( $XPos1 < $this->GraphAreaY1 + $XScale[0] ) { $XPos1 = $this->GraphAreaY1 + $XScale[0]; }
2826
+        if ( $XPos1 > $this->GraphAreaY2 - $XScale[0] ) { $XPos1 = $this->GraphAreaY2 - $XScale[0]; }
2827
+        if ( $XPos2 < $this->GraphAreaY1 + $XScale[0] ) { $XPos2 = $this->GraphAreaY1 + $XScale[0]; }
2828
+        if ( $XPos2 > $this->GraphAreaY2 - $XScale[0] ) { $XPos2 = $this->GraphAreaY2 - $XScale[0]; }
2829
+
2830
+        $this->drawFilledRectangle($YPos1,$XPos1,$YPos2,$XPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
2831
+
2832
+        if ( $Border )
2833
+        {
2834
+            $this->drawLine($YPos1,$XPos1,$YPos2,$XPos1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2835
+            $this->drawLine($YPos1,$XPos2,$YPos2,$XPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2836
+        }
2837
+
2838
+        if ( $AreaName != NULL )
2839
+        {
2840
+            $XPos = ($XPos2-$XPos1)/2 + $XPos1;
2841
+            $YPos = ($YPos2-$YPos1)/2 + $YPos1;
2842
+
2843
+            $this->Shadow = $RestoreShadow;
2844
+            $this->drawText($YPos,$XPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>0,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2845
+            if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
2846
+        }
2847
+
2848
+        $this->Shadow = $RestoreShadow;
2849
+        return(array("X1"=>$XPos1,"X2"=>$XPos2));
2850
+        }
2851 2851
     }
2852 2852
 
2853
-   /* Draw an Y threshold with the computed scale */
2854
-   function drawThreshold($Value,$Format="")
2853
+    /* Draw an Y threshold with the computed scale */
2854
+    function drawThreshold($Value,$Format="")
2855 2855
     {
2856
-     $AxisID		= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2857
-     $R			= isset($Format["R"]) ? $Format["R"] : 255;
2858
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
2859
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
2860
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 50;
2861
-     $Weight		= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2862
-     $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : 6;
2863
-     $Wide		= isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2864
-     $WideFactor	= isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2865
-     $WriteCaption	= isset($Format["WriteCaption"]) ? $Format["WriteCaption"] : FALSE;
2866
-     $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2867
-     $CaptionAlign	= isset($Format["CaptionAlign"]) ? $Format["CaptionAlign"] : CAPTION_LEFT_TOP;
2868
-     $CaptionOffset     = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 10;
2869
-     $CaptionR		= isset($Format["CaptionR"]) ? $Format["CaptionR"] : 255;
2870
-     $CaptionG		= isset($Format["CaptionG"]) ? $Format["CaptionG"] : 255;
2871
-     $CaptionB		= isset($Format["CaptionB"]) ? $Format["CaptionB"] : 255;
2872
-     $CaptionAlpha	= isset($Format["CaptionAlpha"]) ? $Format["CaptionAlpha"] : 100;
2873
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2874
-     $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
2875
-     $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
2876
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2877
-     $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
2878
-     $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
2879
-     $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
2880
-     $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
2881
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
2882
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2883
-     $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
2884
-     $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
2885
-     $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
2886
-     $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2887
-     $NoMargin		= isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2888
-
2889
-     if ( is_array($Value) ) { foreach ($Value as $Key => $ID) { $this->drawThreshold($ID,$Format); } return(0); }
2890
-
2891
-     $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
2892
-                              "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
2893
-                              "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha,
2894
-                              "R"=>$CaptionR,"G"=>$CaptionG,"B"=>$CaptionB,"Alpha"=>$CaptionAlpha);
2895
-
2896
-     $Data           = $this->DataSet->getData();
2897
-     $AbscissaMargin = $this->getAbscissaMargin($Data);
2898
-
2899
-     if ( $NoMargin ) { $AbscissaMargin = 0; }
2900
-     if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
2901
-     if ( $Caption == NULL ) { $Caption = $Value; }
2902
-
2903
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2904
-      {
2905
-       $YPos = $this->scaleComputeY($Value,array("AxisID"=>$AxisID));
2906
-       if ( $YPos >= $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] && $YPos <= $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] )
2907
-        {
2908
-         $X1 = $this->GraphAreaX1 + $AbscissaMargin;
2909
-         $X2 = $this->GraphAreaX2 - $AbscissaMargin;
2910
-
2911
-         $this->drawLine($X1,$YPos,$X2,$YPos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2912
-
2913
-         if ( $Wide )
2914
-          {
2915
-           $this->drawLine($X1,$YPos-1,$X2,$YPos-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2916
-           $this->drawLine($X1,$YPos+1,$X2,$YPos+1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2917
-          }
2918
-
2919
-         if ( $WriteCaption )
2920
-          {
2921
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2856
+        $AxisID		= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2857
+        $R			= isset($Format["R"]) ? $Format["R"] : 255;
2858
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
2859
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
2860
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 50;
2861
+        $Weight		= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2862
+        $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : 6;
2863
+        $Wide		= isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2864
+        $WideFactor	= isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2865
+        $WriteCaption	= isset($Format["WriteCaption"]) ? $Format["WriteCaption"] : FALSE;
2866
+        $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2867
+        $CaptionAlign	= isset($Format["CaptionAlign"]) ? $Format["CaptionAlign"] : CAPTION_LEFT_TOP;
2868
+        $CaptionOffset     = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 10;
2869
+        $CaptionR		= isset($Format["CaptionR"]) ? $Format["CaptionR"] : 255;
2870
+        $CaptionG		= isset($Format["CaptionG"]) ? $Format["CaptionG"] : 255;
2871
+        $CaptionB		= isset($Format["CaptionB"]) ? $Format["CaptionB"] : 255;
2872
+        $CaptionAlpha	= isset($Format["CaptionAlpha"]) ? $Format["CaptionAlpha"] : 100;
2873
+        $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2874
+        $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
2875
+        $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
2876
+        $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2877
+        $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
2878
+        $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
2879
+        $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
2880
+        $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
2881
+        $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
2882
+        $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2883
+        $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
2884
+        $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
2885
+        $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
2886
+        $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2887
+        $NoMargin		= isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2888
+
2889
+        if ( is_array($Value) ) { foreach ($Value as $Key => $ID) { $this->drawThreshold($ID,$Format); } return(0); }
2890
+
2891
+        $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
2892
+                                "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
2893
+                                "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha,
2894
+                                "R"=>$CaptionR,"G"=>$CaptionG,"B"=>$CaptionB,"Alpha"=>$CaptionAlpha);
2895
+
2896
+        $Data           = $this->DataSet->getData();
2897
+        $AbscissaMargin = $this->getAbscissaMargin($Data);
2898
+
2899
+        if ( $NoMargin ) { $AbscissaMargin = 0; }
2900
+        if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
2901
+        if ( $Caption == NULL ) { $Caption = $Value; }
2902
+
2903
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2904
+        {
2905
+        $YPos = $this->scaleComputeY($Value,array("AxisID"=>$AxisID));
2906
+        if ( $YPos >= $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] && $YPos <= $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] )
2907
+        {
2908
+            $X1 = $this->GraphAreaX1 + $AbscissaMargin;
2909
+            $X2 = $this->GraphAreaX2 - $AbscissaMargin;
2910
+
2911
+            $this->drawLine($X1,$YPos,$X2,$YPos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2912
+
2913
+            if ( $Wide )
2914
+            {
2915
+            $this->drawLine($X1,$YPos-1,$X2,$YPos-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2916
+            $this->drawLine($X1,$YPos+1,$X2,$YPos+1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2917
+            }
2918
+
2919
+            if ( $WriteCaption )
2920
+            {
2921
+            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2922 2922
             { $X = $X1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; }
2923
-           else 
2923
+            else 
2924 2924
             { $X = $X2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLERIGHT; }
2925 2925
            
2926
-           $this->drawText($X,$YPos,$Caption,$CaptionSettings);
2927
-          }
2926
+            $this->drawText($X,$YPos,$Caption,$CaptionSettings);
2927
+            }
2928 2928
         }
2929 2929
 
2930
-       return(array("Y"=>$YPos));
2931
-      }
2930
+        return(array("Y"=>$YPos));
2931
+        }
2932 2932
 
2933
-     if ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2934
-      {
2935
-       $XPos = $this->scaleComputeY($Value,array("AxisID"=>$AxisID));
2936
-       if ( $XPos >= $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] && $XPos <= $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] )
2933
+        if ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2937 2934
         {
2938
-         $Y1 = $this->GraphAreaY1 + $AbscissaMargin;
2939
-         $Y2 = $this->GraphAreaY2 - $AbscissaMargin;
2935
+        $XPos = $this->scaleComputeY($Value,array("AxisID"=>$AxisID));
2936
+        if ( $XPos >= $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] && $XPos <= $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] )
2937
+        {
2938
+            $Y1 = $this->GraphAreaY1 + $AbscissaMargin;
2939
+            $Y2 = $this->GraphAreaY2 - $AbscissaMargin;
2940 2940
 
2941
-         $this->drawLine($XPos,$Y1,$XPos,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2941
+            $this->drawLine($XPos,$Y1,$XPos,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2942 2942
 
2943
-         if ( $Wide )
2944
-          {
2945
-           $this->drawLine($XPos-1,$Y1,$XPos-1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2946
-           $this->drawLine($XPos+1,$Y1,$XPos+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2947
-          }
2943
+            if ( $Wide )
2944
+            {
2945
+            $this->drawLine($XPos-1,$Y1,$XPos-1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2946
+            $this->drawLine($XPos+1,$Y1,$XPos+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2947
+            }
2948 2948
 
2949
-         if ( $WriteCaption )
2950
-          {
2951
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2949
+            if ( $WriteCaption )
2950
+            {
2951
+            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2952 2952
             { $Y = $Y1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; }
2953
-           else 
2953
+            else 
2954 2954
             { $Y = $Y2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_BOTTOMMIDDLE; }
2955 2955
 
2956
-           $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE;
2957
-           $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
2958
-          }
2956
+            $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE;
2957
+            $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
2958
+            }
2959 2959
         }
2960 2960
 
2961
-       return(array("Y"=>$XPos));
2962
-      }
2961
+        return(array("Y"=>$XPos));
2962
+        }
2963 2963
     }
2964 2964
 
2965
-   /* Draw a threshold with the computed scale */
2966
-   function drawThresholdArea($Value1,$Value2,$Format="")
2965
+    /* Draw a threshold with the computed scale */
2966
+    function drawThresholdArea($Value1,$Value2,$Format="")
2967 2967
     {
2968
-     $AxisID	= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2969
-     $R		= isset($Format["R"]) ? $Format["R"] : 255;
2970
-     $G		= isset($Format["G"]) ? $Format["G"] : 0;
2971
-     $B		= isset($Format["B"]) ? $Format["B"] : 0;
2972
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2973
-     $Border    = isset($Format["Border"]) ? $Format["Border"] : TRUE;
2974
-     $BorderR   = isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
2975
-     $BorderG   = isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
2976
-     $BorderB   = isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
2977
-     $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha + 20;
2978
-     $BorderTicks = isset($Format["BorderTicks"]) ? $Format["BorderTicks"] : 2;
2979
-     $AreaName 	= isset($Format["AreaName"]) ? $Format["AreaName"] : NULL;
2980
-     $NameAngle	= isset($Format["NameAngle"]) ? $Format["NameAngle"] : ZONE_NAME_ANGLE_AUTO;
2981
-     $NameR	= isset($Format["NameR"]) ? $Format["NameR"] : 255;
2982
-     $NameG	= isset($Format["NameG"]) ? $Format["NameG"] : 255;
2983
-     $NameB	= isset($Format["NameB"]) ? $Format["NameB"] : 255;
2984
-     $NameAlpha	= isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2985
-     $DisableShadowOnArea = isset($Format["DisableShadowOnArea"]) ? $Format["DisableShadowOnArea"] : TRUE;
2986
-     $NoMargin	= isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2987
-
2988
-     if ($Value1 > $Value2) { list($Value1, $Value2) = array($Value2, $Value1); }
2989
-
2990
-     $RestoreShadow = $this->Shadow;
2991
-     if ( $DisableShadowOnArea && $this->Shadow ) { $this->Shadow = FALSE; }
2992
-
2993
-     if ($BorderAlpha >100) { $BorderAlpha = 100;}
2994
-
2995
-     $Data           = $this->DataSet->getData();
2996
-     $AbscissaMargin = $this->getAbscissaMargin($Data);
2997
-
2998
-     if ( $NoMargin ) { $AbscissaMargin = 0; }
2999
-     if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
3000
-
3001
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3002
-      {
3003
-       $XPos1 = $this->GraphAreaX1 + $AbscissaMargin;
3004
-       $XPos2 = $this->GraphAreaX2 - $AbscissaMargin;
3005
-       $YPos1 = $this->scaleComputeY($Value1,array("AxisID"=>$AxisID));
3006
-       $YPos2 = $this->scaleComputeY($Value2,array("AxisID"=>$AxisID));
3007
-
3008
-       if ( $YPos1 < $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] ) { $YPos1 = $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"]; }
3009
-       if ( $YPos1 > $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] ) { $YPos1 = $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"]; }
3010
-       if ( $YPos2 < $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] ) { $YPos2 = $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"]; }
3011
-       if ( $YPos2 > $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] ) { $YPos2 = $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"]; }
3012
-
3013
-       $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
3014
-       if ( $Border )
3015
-        {
3016
-         $this->drawLine($XPos1,$YPos1,$XPos2,$YPos1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3017
-         $this->drawLine($XPos1,$YPos2,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3018
-        }
3019
-
3020
-       if ( $AreaName != NULL )
3021
-        {
3022
-         $XPos = ($XPos2-$XPos1)/2 + $XPos1;
3023
-         $YPos = ($YPos2-$YPos1)/2 + $YPos1;
3024
-         $this->Shadow = $RestoreShadow;
3025
-         $this->drawText($XPos,$YPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>0,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3026
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
3027
-        }
3028
-
3029
-       $this->Shadow = $RestoreShadow;
3030
-       return(array("Y1"=>$YPos1,"Y2"=>$YPos2));
3031
-      }
3032
-     elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
3033
-      {
3034
-       $YPos1 = $this->GraphAreaY1 + $AbscissaMargin;
3035
-       $YPos2 = $this->GraphAreaY2 - $AbscissaMargin;
3036
-       $XPos1 = $this->scaleComputeY($Value1,array("AxisID"=>$AxisID));
3037
-       $XPos2 = $this->scaleComputeY($Value2,array("AxisID"=>$AxisID));
3038
-
3039
-       if ( $XPos1 < $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] ) { $XPos1 = $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"]; }
3040
-       if ( $XPos1 > $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] ) { $XPos1 = $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"]; }
3041
-       if ( $XPos2 < $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] ) { $XPos2 = $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"]; }
3042
-       if ( $XPos2 > $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] ) { $XPos2 = $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"]; }
3043
-
3044
-       $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
3045
-       if ( $Border )
3046
-        {
3047
-         $this->drawLine($XPos1,$YPos1,$XPos1,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3048
-         $this->drawLine($XPos2,$YPos1,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3049
-        }
3050
-
3051
-       if ( $AreaName != NULL )
3052
-        {
3053
-         $XPos = ($YPos2-$YPos1)/2 + $YPos1;
3054
-         $YPos = ($XPos2-$XPos1)/2 + $XPos1;
3055
-
3056
-         if ( $NameAngle == ZONE_NAME_ANGLE_AUTO )
3057
-          {
3058
-           $TxtPos   = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$AreaName);
3059
-           $TxtWidth = $TxtPos[1]["X"] - $TxtPos[0]["X"];
3060
-           if ( abs($XPos2 - $XPos1) > $TxtWidth ) { $NameAngle = 0; } else { $NameAngle = 90; }
3061
-          }
3062
-         $this->Shadow = $RestoreShadow;
3063
-         $this->drawText($YPos,$XPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>$NameAngle,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3064
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
3065
-        }
3066
-
3067
-       $this->Shadow = $RestoreShadow;
3068
-       return(array("Y1"=>$XPos1,"Y2"=>$XPos2));
3069
-      }
2968
+        $AxisID	= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2969
+        $R		= isset($Format["R"]) ? $Format["R"] : 255;
2970
+        $G		= isset($Format["G"]) ? $Format["G"] : 0;
2971
+        $B		= isset($Format["B"]) ? $Format["B"] : 0;
2972
+        $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2973
+        $Border    = isset($Format["Border"]) ? $Format["Border"] : TRUE;
2974
+        $BorderR   = isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
2975
+        $BorderG   = isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
2976
+        $BorderB   = isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
2977
+        $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha + 20;
2978
+        $BorderTicks = isset($Format["BorderTicks"]) ? $Format["BorderTicks"] : 2;
2979
+        $AreaName 	= isset($Format["AreaName"]) ? $Format["AreaName"] : NULL;
2980
+        $NameAngle	= isset($Format["NameAngle"]) ? $Format["NameAngle"] : ZONE_NAME_ANGLE_AUTO;
2981
+        $NameR	= isset($Format["NameR"]) ? $Format["NameR"] : 255;
2982
+        $NameG	= isset($Format["NameG"]) ? $Format["NameG"] : 255;
2983
+        $NameB	= isset($Format["NameB"]) ? $Format["NameB"] : 255;
2984
+        $NameAlpha	= isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2985
+        $DisableShadowOnArea = isset($Format["DisableShadowOnArea"]) ? $Format["DisableShadowOnArea"] : TRUE;
2986
+        $NoMargin	= isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2987
+
2988
+        if ($Value1 > $Value2) { list($Value1, $Value2) = array($Value2, $Value1); }
2989
+
2990
+        $RestoreShadow = $this->Shadow;
2991
+        if ( $DisableShadowOnArea && $this->Shadow ) { $this->Shadow = FALSE; }
2992
+
2993
+        if ($BorderAlpha >100) { $BorderAlpha = 100;}
2994
+
2995
+        $Data           = $this->DataSet->getData();
2996
+        $AbscissaMargin = $this->getAbscissaMargin($Data);
2997
+
2998
+        if ( $NoMargin ) { $AbscissaMargin = 0; }
2999
+        if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
3000
+
3001
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3002
+        {
3003
+        $XPos1 = $this->GraphAreaX1 + $AbscissaMargin;
3004
+        $XPos2 = $this->GraphAreaX2 - $AbscissaMargin;
3005
+        $YPos1 = $this->scaleComputeY($Value1,array("AxisID"=>$AxisID));
3006
+        $YPos2 = $this->scaleComputeY($Value2,array("AxisID"=>$AxisID));
3007
+
3008
+        if ( $YPos1 < $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] ) { $YPos1 = $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"]; }
3009
+        if ( $YPos1 > $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] ) { $YPos1 = $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"]; }
3010
+        if ( $YPos2 < $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] ) { $YPos2 = $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"]; }
3011
+        if ( $YPos2 > $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] ) { $YPos2 = $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"]; }
3012
+
3013
+        $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
3014
+        if ( $Border )
3015
+        {
3016
+            $this->drawLine($XPos1,$YPos1,$XPos2,$YPos1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3017
+            $this->drawLine($XPos1,$YPos2,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3018
+        }
3019
+
3020
+        if ( $AreaName != NULL )
3021
+        {
3022
+            $XPos = ($XPos2-$XPos1)/2 + $XPos1;
3023
+            $YPos = ($YPos2-$YPos1)/2 + $YPos1;
3024
+            $this->Shadow = $RestoreShadow;
3025
+            $this->drawText($XPos,$YPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>0,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3026
+            if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
3027
+        }
3028
+
3029
+        $this->Shadow = $RestoreShadow;
3030
+        return(array("Y1"=>$YPos1,"Y2"=>$YPos2));
3031
+        }
3032
+        elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
3033
+        {
3034
+        $YPos1 = $this->GraphAreaY1 + $AbscissaMargin;
3035
+        $YPos2 = $this->GraphAreaY2 - $AbscissaMargin;
3036
+        $XPos1 = $this->scaleComputeY($Value1,array("AxisID"=>$AxisID));
3037
+        $XPos2 = $this->scaleComputeY($Value2,array("AxisID"=>$AxisID));
3038
+
3039
+        if ( $XPos1 < $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] ) { $XPos1 = $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"]; }
3040
+        if ( $XPos1 > $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] ) { $XPos1 = $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"]; }
3041
+        if ( $XPos2 < $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] ) { $XPos2 = $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"]; }
3042
+        if ( $XPos2 > $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] ) { $XPos2 = $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"]; }
3043
+
3044
+        $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
3045
+        if ( $Border )
3046
+        {
3047
+            $this->drawLine($XPos1,$YPos1,$XPos1,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3048
+            $this->drawLine($XPos2,$YPos1,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3049
+        }
3050
+
3051
+        if ( $AreaName != NULL )
3052
+        {
3053
+            $XPos = ($YPos2-$YPos1)/2 + $YPos1;
3054
+            $YPos = ($XPos2-$XPos1)/2 + $XPos1;
3055
+
3056
+            if ( $NameAngle == ZONE_NAME_ANGLE_AUTO )
3057
+            {
3058
+            $TxtPos   = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$AreaName);
3059
+            $TxtWidth = $TxtPos[1]["X"] - $TxtPos[0]["X"];
3060
+            if ( abs($XPos2 - $XPos1) > $TxtWidth ) { $NameAngle = 0; } else { $NameAngle = 90; }
3061
+            }
3062
+            $this->Shadow = $RestoreShadow;
3063
+            $this->drawText($YPos,$XPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>$NameAngle,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3064
+            if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
3065
+        }
3066
+
3067
+        $this->Shadow = $RestoreShadow;
3068
+        return(array("Y1"=>$XPos1,"Y2"=>$XPos2));
3069
+        }
3070 3070
     }
3071 3071
 
3072
-   function scaleGetXSettings()
3072
+    function scaleGetXSettings()
3073 3073
     {
3074
-     $Data = $this->DataSet->getData();
3075
-     foreach($Data["Axis"] as $AxisID => $Settings)
3076
-      {
3077
-       if ( $Settings["Identity"] == AXIS_X )
3074
+        $Data = $this->DataSet->getData();
3075
+        foreach($Data["Axis"] as $AxisID => $Settings)
3076
+        {
3077
+        if ( $Settings["Identity"] == AXIS_X )
3078 3078
         {
3079
-         $Rows = $Settings["Rows"];
3079
+            $Rows = $Settings["Rows"];
3080 3080
 
3081
-         return(array($Settings["Margin"],$Rows));
3081
+            return(array($Settings["Margin"],$Rows));
3082
+        }
3082 3083
         }
3083
-      }
3084 3084
     }
3085 3085
 
3086
-   function scaleComputeY($Values,$Option="",$ReturnOnly0Height=FALSE)
3086
+    function scaleComputeY($Values,$Option="",$ReturnOnly0Height=FALSE)
3087 3087
     {
3088
-     $AxisID	= isset($Option["AxisID"]) ? $Option["AxisID"] : 0;
3089
-     $SerieName	= isset($Option["SerieName"]) ? $Option["SerieName"] : NULL;
3088
+        $AxisID	= isset($Option["AxisID"]) ? $Option["AxisID"] : 0;
3089
+        $SerieName	= isset($Option["SerieName"]) ? $Option["SerieName"] : NULL;
3090 3090
 
3091
-     $Data = $this->DataSet->getData();
3092
-     if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
3091
+        $Data = $this->DataSet->getData();
3092
+        if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
3093 3093
 
3094
-     if ( $SerieName != NULL ) { $AxisID = $Data["Series"][$SerieName]["Axis"]; }
3095
-     if ( !is_array($Values) ) { $tmp = $Values; $Values = ""; $Values[0] = $tmp; }
3094
+        if ( $SerieName != NULL ) { $AxisID = $Data["Series"][$SerieName]["Axis"]; }
3095
+        if ( !is_array($Values) ) { $tmp = $Values; $Values = ""; $Values[0] = $tmp; }
3096 3096
 
3097
-     $Result = "";
3098
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3099
-      {
3100
-       $Height      = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Data["Axis"][$AxisID]["Margin"]*2;
3101
-       $ScaleHeight = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3102
-       $Step        = $Height / $ScaleHeight;
3097
+        $Result = "";
3098
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3099
+        {
3100
+        $Height      = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Data["Axis"][$AxisID]["Margin"]*2;
3101
+        $ScaleHeight = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3102
+        $Step        = $Height / $ScaleHeight;
3103 3103
 
3104
-       if ( $ReturnOnly0Height )
3104
+        if ( $ReturnOnly0Height )
3105 3105
         { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } }
3106
-       else
3106
+        else
3107 3107
         { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"] - ($Step * ($Value-$Data["Axis"][$AxisID]["ScaleMin"])); } } }
3108
-      }
3109
-     else
3110
-      {
3111
-       $Width      = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Data["Axis"][$AxisID]["Margin"]*2;
3112
-       $ScaleWidth = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3113
-       $Step       = $Width / $ScaleWidth;
3114
-
3115
-       if ( $ReturnOnly0Height )
3108
+        }
3109
+        else
3110
+        {
3111
+        $Width      = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Data["Axis"][$AxisID]["Margin"]*2;
3112
+        $ScaleWidth = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3113
+        $Step       = $Width / $ScaleWidth;
3114
+
3115
+        if ( $ReturnOnly0Height )
3116 3116
         { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } }
3117
-       else
3117
+        else
3118 3118
         { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"] + ($Step * ($Value-$Data["Axis"][$AxisID]["ScaleMin"])); } } }
3119
-      }
3119
+        }
3120 3120
 
3121
-     if ( count($Result) == 1 )
3122
-      return($Result[0]);
3123
-     else
3124
-      return($Result);
3121
+        if ( count($Result) == 1 )
3122
+        return($Result[0]);
3123
+        else
3124
+        return($Result);
3125 3125
     }
3126 3126
 
3127
-   /* Format the axis values */
3128
-   function scaleFormat($Value,$Mode=NULL,$Format=NULL,$Unit=NULL)
3127
+    /* Format the axis values */
3128
+    function scaleFormat($Value,$Mode=NULL,$Format=NULL,$Unit=NULL)
3129 3129
     {
3130
-     if ( $Value == VOID ) { return(""); }
3130
+        if ( $Value == VOID ) { return(""); }
3131 3131
 
3132
-     if ( $Mode == AXIS_FORMAT_CUSTOM )
3133
-      { if ( function_exists($Format) ) { return(call_user_func($Format,$Value)); } }
3132
+        if ( $Mode == AXIS_FORMAT_CUSTOM )
3133
+        { if ( function_exists($Format) ) { return(call_user_func($Format,$Value)); } }
3134 3134
 
3135
-     if ( $Mode == AXIS_FORMAT_DATE )
3136
-      { if ( $Format == NULL ) { $Pattern = "d/m/Y"; } else { $Pattern = $Format; } return(date($Pattern,$Value)); }
3135
+        if ( $Mode == AXIS_FORMAT_DATE )
3136
+        { if ( $Format == NULL ) { $Pattern = "d/m/Y"; } else { $Pattern = $Format; } return(date($Pattern,$Value)); }
3137 3137
 
3138
-     if ( $Mode == AXIS_FORMAT_TIME )
3139
-      { if ( $Format == NULL ) { $Pattern = "H:i:s"; } else { $Pattern = $Format; } return(date($Pattern,$Value)); }
3138
+        if ( $Mode == AXIS_FORMAT_TIME )
3139
+        { if ( $Format == NULL ) { $Pattern = "H:i:s"; } else { $Pattern = $Format; } return(date($Pattern,$Value)); }
3140 3140
 
3141
-     if ( $Mode == AXIS_FORMAT_CURRENCY )
3142
-      { return($Format.number_format($Value,2)); }
3141
+        if ( $Mode == AXIS_FORMAT_CURRENCY )
3142
+        { return($Format.number_format($Value,2)); }
3143 3143
 
3144
-     if ( $Mode == AXIS_FORMAT_METRIC )
3145
-      {
3146
-       if (abs($Value) > 1000000000)
3144
+        if ( $Mode == AXIS_FORMAT_METRIC )
3145
+        {
3146
+        if (abs($Value) > 1000000000)
3147 3147
         return(round($Value/1000000000,$Format)."g".$Unit);
3148
-       if (abs($Value) > 1000000)
3148
+        if (abs($Value) > 1000000)
3149 3149
         return(round($Value/1000000,$Format)."m".$Unit);
3150
-       elseif (abs($Value) >= 1000)
3150
+        elseif (abs($Value) >= 1000)
3151 3151
         return(round($Value/1000,$Format)."k".$Unit);
3152 3152
        
3153
-      }
3154
-     return($Value.$Unit);
3153
+        }
3154
+        return($Value.$Unit);
3155 3155
     }
3156 3156
 
3157
-   /* Write Max value on a chart */
3158
-   function writeBounds($Type=BOUND_BOTH,$Format=NULL)
3157
+    /* Write Max value on a chart */
3158
+    function writeBounds($Type=BOUND_BOTH,$Format=NULL)
3159 3159
     {
3160
-     $MaxLabelTxt	= isset($Format["MaxLabelTxt"]) ? $Format["MaxLabelTxt"] : "max=";
3161
-     $MinLabelTxt	= isset($Format["MinLabelTxt"]) ? $Format["MinLabelTxt"] : "min=";
3162
-     $Decimals		= isset($Format["Decimals"]) ? $Format["Decimals"] : 1;
3163
-     $ExcludedSeries	= isset($Format["ExcludedSeries"]) ? $Format["ExcludedSeries"] : "";
3164
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3165
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3166
-     $MaxDisplayR	= isset($Format["MaxDisplayR"]) ? $Format["MaxDisplayR"] : 0;
3167
-     $MaxDisplayG	= isset($Format["MaxDisplayG"]) ? $Format["MaxDisplayG"] : 0;
3168
-     $MaxDisplayB	= isset($Format["MaxDisplayB"]) ? $Format["MaxDisplayB"] : 0;
3169
-     $MinDisplayR	= isset($Format["MinDisplayR"]) ? $Format["MinDisplayR"] : 255;
3170
-     $MinDisplayG	= isset($Format["MinDisplayG"]) ? $Format["MinDisplayG"] : 255;
3171
-     $MinDisplayB	= isset($Format["MinDisplayB"]) ? $Format["MinDisplayB"] : 255;
3172
-     $MinLabelPos	= isset($Format["MinLabelPos"]) ? $Format["MinLabelPos"] : BOUND_LABEL_POS_AUTO;
3173
-     $MaxLabelPos	= isset($Format["MaxLabelPos"]) ? $Format["MaxLabelPos"] : BOUND_LABEL_POS_AUTO;
3174
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
3175
-     $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
3176
-     $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
3177
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
3178
-     $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
3179
-     $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
3180
-     $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
3181
-     $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
3182
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
3183
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
3184
-     $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
3185
-     $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
3186
-     $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
3187
-     $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
3188
-
3189
-     $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
3190
-                              "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
3191
-                              "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha);
3192
-
3193
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3194
-
3195
-     $Data = $this->DataSet->getData();
3196
-     foreach($Data["Series"] as $SerieName => $Serie)
3197
-      {
3198
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && !isset($ExcludedSeries[$SerieName]))
3199
-        {
3200
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3201
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3202
-
3203
-         $MinValue = $this->DataSet->getMin($SerieName);
3204
-         $MaxValue = $this->DataSet->getMax($SerieName);
3205
-
3206
-         $MinPos = VOID; $MaxPos = VOID;
3207
-         foreach($Serie["Data"] as $Key => $Value)
3208
-          { 
3209
-           if ( $Value == $MinValue && $MinPos == VOID ) { $MinPos = $Key; }
3210
-           if ( $Value == $MaxValue ) { $MaxPos = $Key; }
3211
-          }
3212
-
3213
-         $AxisID	= $Serie["Axis"];
3214
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
3215
-         $Format	= $Data["Axis"][$AxisID]["Format"];
3216
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
3217
-
3218
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3219
-
3220
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3221
-          {
3222
-           $XStep       = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs;
3223
-           $X           = $this->GraphAreaX1 + $XMargin;
3224
-           $SerieOffset = isset($Serie["XOffset"]) ? $Serie["XOffset"] : 0;
3225
-
3226
-           if ( $Type == BOUND_MAX || $Type == BOUND_BOTH )
3227
-            {
3228
-             if ( $MaxLabelPos == BOUND_LABEL_POS_TOP    || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue >= 0) ) { $YPos  = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3229
-             if ( $MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue < 0) ) { $YPos  = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3230
-
3231
-             $XPos  = $X + $MaxPos*$XStep + $SerieOffset;
3232
-             $Label = $MaxLabelTxt.$this->scaleFormat(round($MaxValue,$Decimals),$Mode,$Format,$Unit);
3233
-
3234
-             $TxtPos  = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$Label);
3235
-             $XOffset = 0; $YOffset = 0;
3236
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3237
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3238
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3239
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3240
-
3241
-             $CaptionSettings["R"] = $MaxDisplayR; $CaptionSettings["G"] = $MaxDisplayG;
3242
-             $CaptionSettings["B"] = $MaxDisplayB; $CaptionSettings["Align"] = $Align;
3243
-
3244
-             $this->drawText($XPos+$XOffset,$YPos+$YOffset,$Label,$CaptionSettings);
3245
-            }
3246
-
3247
-           if ( $Type == BOUND_MIN || $Type == BOUND_BOTH )
3248
-            {
3249
-             if ( $MinLabelPos == BOUND_LABEL_POS_TOP    || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue >= 0) ) { $YPos  = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3250
-             if ( $MinLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue < 0) ) { $YPos  = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3251
-
3252
-             $XPos  = $X + $MinPos*$XStep + $SerieOffset;
3253
-             $Label = $MinLabelTxt.$this->scaleFormat(round($MinValue,$Decimals),$Mode,$Format,$Unit);
3254
-
3255
-             $TxtPos  = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$Label);
3256
-             $XOffset = 0; $YOffset = 0;
3257
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3258
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3259
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3260
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3261
-
3262
-             $CaptionSettings["R"] = $MinDisplayR; $CaptionSettings["G"] = $MinDisplayG;
3263
-             $CaptionSettings["B"] = $MinDisplayB; $CaptionSettings["Align"] = $Align;
3160
+        $MaxLabelTxt	= isset($Format["MaxLabelTxt"]) ? $Format["MaxLabelTxt"] : "max=";
3161
+        $MinLabelTxt	= isset($Format["MinLabelTxt"]) ? $Format["MinLabelTxt"] : "min=";
3162
+        $Decimals		= isset($Format["Decimals"]) ? $Format["Decimals"] : 1;
3163
+        $ExcludedSeries	= isset($Format["ExcludedSeries"]) ? $Format["ExcludedSeries"] : "";
3164
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3165
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3166
+        $MaxDisplayR	= isset($Format["MaxDisplayR"]) ? $Format["MaxDisplayR"] : 0;
3167
+        $MaxDisplayG	= isset($Format["MaxDisplayG"]) ? $Format["MaxDisplayG"] : 0;
3168
+        $MaxDisplayB	= isset($Format["MaxDisplayB"]) ? $Format["MaxDisplayB"] : 0;
3169
+        $MinDisplayR	= isset($Format["MinDisplayR"]) ? $Format["MinDisplayR"] : 255;
3170
+        $MinDisplayG	= isset($Format["MinDisplayG"]) ? $Format["MinDisplayG"] : 255;
3171
+        $MinDisplayB	= isset($Format["MinDisplayB"]) ? $Format["MinDisplayB"] : 255;
3172
+        $MinLabelPos	= isset($Format["MinLabelPos"]) ? $Format["MinLabelPos"] : BOUND_LABEL_POS_AUTO;
3173
+        $MaxLabelPos	= isset($Format["MaxLabelPos"]) ? $Format["MaxLabelPos"] : BOUND_LABEL_POS_AUTO;
3174
+        $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
3175
+        $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
3176
+        $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
3177
+        $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
3178
+        $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
3179
+        $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
3180
+        $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
3181
+        $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
3182
+        $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
3183
+        $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
3184
+        $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
3185
+        $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
3186
+        $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
3187
+        $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
3188
+
3189
+        $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
3190
+                                "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
3191
+                                "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha);
3192
+
3193
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3194
+
3195
+        $Data = $this->DataSet->getData();
3196
+        foreach($Data["Series"] as $SerieName => $Serie)
3197
+        {
3198
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && !isset($ExcludedSeries[$SerieName]))
3199
+        {
3200
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3201
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3264 3202
 
3265
-             $this->drawText($XPos+$XOffset,$YPos-$DisplayOffset+$YOffset,$Label,$CaptionSettings);
3203
+            $MinValue = $this->DataSet->getMin($SerieName);
3204
+            $MaxValue = $this->DataSet->getMax($SerieName);
3205
+
3206
+            $MinPos = VOID; $MaxPos = VOID;
3207
+            foreach($Serie["Data"] as $Key => $Value)
3208
+            { 
3209
+            if ( $Value == $MinValue && $MinPos == VOID ) { $MinPos = $Key; }
3210
+            if ( $Value == $MaxValue ) { $MaxPos = $Key; }
3266 3211
             }
3267
-          }
3268
-         else
3269
-          {
3270
-           $XStep       = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs;
3271
-           $X           = $this->GraphAreaY1 + $XMargin;
3272
-           $SerieOffset = isset($Serie["XOffset"]) ? $Serie["XOffset"] : 0;
3273 3212
 
3274
-           if ( $Type == BOUND_MAX || $Type == BOUND_BOTH )
3213
+            $AxisID	= $Serie["Axis"];
3214
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
3215
+            $Format	= $Data["Axis"][$AxisID]["Format"];
3216
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
3217
+
3218
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3219
+
3220
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3221
+            {
3222
+            $XStep       = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs;
3223
+            $X           = $this->GraphAreaX1 + $XMargin;
3224
+            $SerieOffset = isset($Serie["XOffset"]) ? $Serie["XOffset"] : 0;
3225
+
3226
+            if ( $Type == BOUND_MAX || $Type == BOUND_BOTH )
3275 3227
             {
3276
-             if ( $MaxLabelPos == BOUND_LABEL_POS_TOP    || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue >= 0) ) { $YPos  = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3277
-             if ( $MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue < 0) ) { $YPos  = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3228
+                if ( $MaxLabelPos == BOUND_LABEL_POS_TOP    || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue >= 0) ) { $YPos  = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3229
+                if ( $MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue < 0) ) { $YPos  = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3278 3230
 
3279
-             $XPos  = $X + $MaxPos*$XStep + $SerieOffset;
3280
-             $Label = $MaxLabelTxt.$this->scaleFormat($MaxValue,$Mode,$Format,$Unit);
3231
+                $XPos  = $X + $MaxPos*$XStep + $SerieOffset;
3232
+                $Label = $MaxLabelTxt.$this->scaleFormat(round($MaxValue,$Decimals),$Mode,$Format,$Unit);
3281 3233
 
3282
-             $TxtPos  = $this->getTextBox($YPos,$XPos,$this->FontName,$this->FontSize,0,$Label);
3283
-             $XOffset = 0; $YOffset = 0;
3284
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3285
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3286
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3287
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2);}
3234
+                $TxtPos  = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$Label);
3235
+                $XOffset = 0; $YOffset = 0;
3236
+                if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3237
+                if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3238
+                if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3239
+                if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3288 3240
 
3289
-             $CaptionSettings["R"] = $MaxDisplayR; $CaptionSettings["G"] = $MaxDisplayG;
3290
-             $CaptionSettings["B"] = $MaxDisplayB; $CaptionSettings["Align"] = $Align;
3241
+                $CaptionSettings["R"] = $MaxDisplayR; $CaptionSettings["G"] = $MaxDisplayG;
3242
+                $CaptionSettings["B"] = $MaxDisplayB; $CaptionSettings["Align"] = $Align;
3291 3243
 
3292
-             $this->drawText($YPos+$XOffset,$XPos+$YOffset,$Label,$CaptionSettings);
3244
+                $this->drawText($XPos+$XOffset,$YPos+$YOffset,$Label,$CaptionSettings);
3293 3245
             }
3294 3246
 
3295
-           if ( $Type == BOUND_MIN || $Type == BOUND_BOTH )
3247
+            if ( $Type == BOUND_MIN || $Type == BOUND_BOTH )
3296 3248
             {
3297
-             if ( $MinLabelPos == BOUND_LABEL_POS_TOP    || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue >= 0) ) { $YPos  = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3298
-             if ( $MinLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue < 0) ) { $YPos  = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3249
+                if ( $MinLabelPos == BOUND_LABEL_POS_TOP    || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue >= 0) ) { $YPos  = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3250
+                if ( $MinLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue < 0) ) { $YPos  = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3299 3251
 
3300
-             $XPos  = $X + $MinPos*$XStep + $SerieOffset;
3301
-             $Label = $MinLabelTxt.$this->scaleFormat($MinValue,$Mode,$Format,$Unit);
3252
+                $XPos  = $X + $MinPos*$XStep + $SerieOffset;
3253
+                $Label = $MinLabelTxt.$this->scaleFormat(round($MinValue,$Decimals),$Mode,$Format,$Unit);
3302 3254
 
3303
-             $TxtPos  = $this->getTextBox($YPos,$XPos,$this->FontName,$this->FontSize,0,$Label);
3304
-             $XOffset = 0; $YOffset = 0;
3305
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3306
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3307
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3308
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2);}
3255
+                $TxtPos  = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$Label);
3256
+                $XOffset = 0; $YOffset = 0;
3257
+                if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3258
+                if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3259
+                if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3260
+                if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3309 3261
 
3310
-             $CaptionSettings["R"] = $MinDisplayR; $CaptionSettings["G"] = $MinDisplayG;
3311
-             $CaptionSettings["B"] = $MinDisplayB; $CaptionSettings["Align"] = $Align;
3262
+                $CaptionSettings["R"] = $MinDisplayR; $CaptionSettings["G"] = $MinDisplayG;
3263
+                $CaptionSettings["B"] = $MinDisplayB; $CaptionSettings["Align"] = $Align;
3312 3264
 
3313
-             $this->drawText($YPos+$XOffset,$XPos+$YOffset,$Label,$CaptionSettings);
3265
+                $this->drawText($XPos+$XOffset,$YPos-$DisplayOffset+$YOffset,$Label,$CaptionSettings);
3314 3266
             }
3315
-          }
3316
-        }
3317
-      }
3318
-    }
3319
-
3320
-   /* Draw a plot chart */
3321
-   function drawPlotChart($Format=NULL)
3322
-    {
3323
-     $PlotSize		= isset($Format["PlotSize"]) ? $Format["PlotSize"] : NULL;
3324
-     $PlotBorder	= isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : FALSE;
3325
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : 50;
3326
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : 50;
3327
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : 50;
3328
-     $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 30;
3329
-     $BorderSize	= isset($Format["BorderSize"]) ? $Format["BorderSize"] : 2;
3330
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
3331
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3332
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3333
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3334
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3335
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3336
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3337
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3338
-
3339
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3340
-
3341
-     $Data = $this->DataSet->getData();
3342
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3343
-
3344
-     foreach($Data["Series"] as $SerieName => $Serie)
3345
-      {
3346
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3347
-        {
3348
-         if ( isset($Serie["Weight"]) ) { $SerieWeight = $Serie["Weight"] + 2; } else { $SerieWeight = 2; }
3349
-         if ( $PlotSize != NULL ) { $SerieWeight = $PlotSize; }
3350
-
3351
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3352
-         if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
3353
-         if ( isset($Serie["Picture"]) )
3354
-          { $Picture = $Serie["Picture"]; list($PicWidth,$PicHeight,$PicType) = $this->getPicInfo($Picture); }
3355
-         else { $Picture = NULL; $PicOffset = 0; }
3356
-
3357
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3358
-
3359
-         $AxisID	= $Serie["Axis"];
3360
-         $Shape		= $Serie["Shape"];
3361
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
3362
-         $Format	= $Data["Axis"][$AxisID]["Format"];
3363
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
3364
-
3365
-         if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3366
-
3367
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3368
-
3369
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3370
-
3371
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3372
-          {
3373
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3374
-           if ( $Picture != NULL ) { $PicOffset = $PicHeight / 2; $SerieWeight = 0; }
3375
-           $X = $this->GraphAreaX1 + $XMargin;
3376
-
3377
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3378
-           foreach($PosArray as $Key => $Y)
3379
-            {
3380
-             if ( $DisplayValues ) 
3381
-              $this->drawText($X,$Y-$DisplayOffset-$SerieWeight-$BorderSize-$PicOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3382
-
3383
-             if ( $Y != VOID )
3384
-              {
3385
-               if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3386
-
3387
-               if ( $Picture != NULL )
3388
-                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3389
-               else
3390
-                { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3391
-              }
3392
-             $X = $X + $XStep;
3393 3267
             }
3394
-          }
3395
-         else
3396
-          {
3397
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3398
-           if ( $Picture != NULL ) { $PicOffset = $PicWidth / 2; $SerieWeight = 0; }
3399
-           $Y = $this->GraphAreaY1 + $XMargin;
3400
-
3401
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3402
-           foreach($PosArray as $Key => $X)
3268
+            else
3403 3269
             {
3404
-             if ( $DisplayValues ) 
3405
-              $this->drawText($X+$DisplayOffset+$SerieWeight+$BorderSize+$PicOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3406
-
3407
-             if ( $X != VOID )
3408
-              {
3409
-               if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3410
-
3411
-               if ( $Picture != NULL )
3412
-                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3413
-               else
3414
-                { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3415
-              }
3416
-             $Y = $Y + $YStep;
3417
-            }
3418
-          }
3419
-        }
3420
-      }
3421
-    }
3422
-
3423
-   /* Draw a spline chart */
3424
-   function drawSplineChart($Format=NULL)
3425
-    {
3426
-     $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : TRUE;
3427
-     $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3428
-     $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL; // 234
3429
-     $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL; // 55
3430
-     $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL; // 26
3431
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3432
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3433
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3434
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3435
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3436
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3437
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3438
-     $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3439
-
3440
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3441
-
3442
-     $Data = $this->DataSet->getData();
3443
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3444
-     foreach($Data["Series"] as $SerieName => $Serie)
3445
-      {
3446
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3447
-        {
3448
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3449
-
3450
-         if ( $BreakR == NULL )
3451
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks);
3452
-         else
3453
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3454
-
3455
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3456
-
3457
-         $AxisID	= $Serie["Axis"];
3458
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
3459
-         $Format	= $Data["Axis"][$AxisID]["Format"];
3460
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
3461
-
3462
-         if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3463
-
3464
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3465
-
3466
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3467
-
3468
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3469
-          {
3470
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3471
-           $X     = $this->GraphAreaX1 + $XMargin; $WayPoints = "";
3472
-           $Force = $XStep / 5;
3473
-
3474
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3475
-           $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3476
-           foreach($PosArray as $Key => $Y)
3477
-            {
3478
-             if ( $DisplayValues ) 
3479
-              $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3480
-	
3481
-             if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3270
+            $XStep       = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs;
3271
+            $X           = $this->GraphAreaY1 + $XMargin;
3272
+            $SerieOffset = isset($Serie["XOffset"]) ? $Serie["XOffset"] : 0;
3482 3273
 
3483
-             if ( $Y == VOID && $LastY != NULL )
3484
-              { $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight)); $WayPoints = ""; }
3274
+            if ( $Type == BOUND_MAX || $Type == BOUND_BOTH )
3275
+            {
3276
+                if ( $MaxLabelPos == BOUND_LABEL_POS_TOP    || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue >= 0) ) { $YPos  = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3277
+                if ( $MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue < 0) ) { $YPos  = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3485 3278
 
3486
-             if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3487
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3279
+                $XPos  = $X + $MaxPos*$XStep + $SerieOffset;
3280
+                $Label = $MaxLabelTxt.$this->scaleFormat($MaxValue,$Mode,$Format,$Unit);
3488 3281
 
3489
-             if ( $Y != VOID )
3490
-              $WayPoints[] = array($X,$Y);
3282
+                $TxtPos  = $this->getTextBox($YPos,$XPos,$this->FontName,$this->FontSize,0,$Label);
3283
+                $XOffset = 0; $YOffset = 0;
3284
+                if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3285
+                if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3286
+                if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3287
+                if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2);}
3491 3288
 
3492
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3493
-             if ( $Y == VOID ) { $Y = NULL; }
3289
+                $CaptionSettings["R"] = $MaxDisplayR; $CaptionSettings["G"] = $MaxDisplayG;
3290
+                $CaptionSettings["B"] = $MaxDisplayB; $CaptionSettings["Align"] = $Align;
3494 3291
 
3495
-             $LastX = $X; $LastY = $Y;
3496
-             $X = $X + $XStep;
3292
+                $this->drawText($YPos+$XOffset,$XPos+$YOffset,$Label,$CaptionSettings);
3497 3293
             }
3498
-           $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3499
-          }
3500
-         else
3501
-          {
3502
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3503
-           $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
3504
-           $Force = $YStep / 5;
3505 3294
 
3506
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3507
-           $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3508
-           foreach($PosArray as $Key => $X)
3295
+            if ( $Type == BOUND_MIN || $Type == BOUND_BOTH )
3509 3296
             {
3510
-             if ( $DisplayValues ) 
3511
-              $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3512
-
3513
-             if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3297
+                if ( $MinLabelPos == BOUND_LABEL_POS_TOP    || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue >= 0) ) { $YPos  = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3298
+                if ( $MinLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue < 0) ) { $YPos  = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3514 3299
 
3515
-             if ( $X == VOID && $LastX != NULL )
3516
-              { $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight)); $WayPoints = ""; }
3300
+                $XPos  = $X + $MinPos*$XStep + $SerieOffset;
3301
+                $Label = $MinLabelTxt.$this->scaleFormat($MinValue,$Mode,$Format,$Unit);
3517 3302
 
3518
-             if ( $X != VOID && $LastX == NULL && $LastGoodX != NULL && !$BreakVoid )
3519
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3303
+                $TxtPos  = $this->getTextBox($YPos,$XPos,$this->FontName,$this->FontSize,0,$Label);
3304
+                $XOffset = 0; $YOffset = 0;
3305
+                if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3306
+                if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3307
+                if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3308
+                if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2);}
3520 3309
 
3521
-             if ( $X != VOID )
3522
-              $WayPoints[] = array($X,$Y);
3310
+                $CaptionSettings["R"] = $MinDisplayR; $CaptionSettings["G"] = $MinDisplayG;
3311
+                $CaptionSettings["B"] = $MinDisplayB; $CaptionSettings["Align"] = $Align;
3523 3312
 
3524
-             if ( $X != VOID ) { $LastGoodX = $X; $LastGoodY = $Y; }
3525
-             if ( $X == VOID ) { $X = NULL; }
3526
-
3527
-             $LastX = $X; $LastY = $Y;
3528
-             $Y = $Y + $YStep;
3313
+                $this->drawText($YPos+$XOffset,$XPos+$YOffset,$Label,$CaptionSettings);
3314
+            }
3529 3315
             }
3530
-           $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3531
-          }
3532 3316
         }
3533
-      }
3317
+        }
3534 3318
     }
3535 3319
 
3536
-   /* Draw a filled spline chart */
3537
-   function drawFilledSplineChart($Format=NULL)
3320
+    /* Draw a plot chart */
3321
+    function drawPlotChart($Format=NULL)
3538 3322
     {
3539
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3540
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3541
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3542
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3543
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3544
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3545
-     $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
3546
-     $Threshold		= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
3547
-
3548
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3549
-
3550
-     $Data = $this->DataSet->getData();
3551
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3552
-     foreach($Data["Series"] as $SerieName => $Serie)
3553
-      {
3554
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3323
+        $PlotSize		= isset($Format["PlotSize"]) ? $Format["PlotSize"] : NULL;
3324
+        $PlotBorder	= isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : FALSE;
3325
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : 50;
3326
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : 50;
3327
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : 50;
3328
+        $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 30;
3329
+        $BorderSize	= isset($Format["BorderSize"]) ? $Format["BorderSize"] : 2;
3330
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
3331
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3332
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3333
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3334
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3335
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3336
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3337
+        $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3338
+
3339
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3340
+
3341
+        $Data = $this->DataSet->getData();
3342
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3343
+
3344
+        foreach($Data["Series"] as $SerieName => $Serie)
3345
+        {
3346
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3555 3347
         {
3556
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3557
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3348
+            if ( isset($Serie["Weight"]) ) { $SerieWeight = $Serie["Weight"] + 2; } else { $SerieWeight = 2; }
3349
+            if ( $PlotSize != NULL ) { $SerieWeight = $PlotSize; }
3558 3350
 
3559
-         $AxisID	= $Serie["Axis"];
3560
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
3561
-         $Format	= $Data["Axis"][$AxisID]["Format"];
3562
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
3351
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3352
+            if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
3353
+            if ( isset($Serie["Picture"]) )
3354
+            { $Picture = $Serie["Picture"]; list($PicWidth,$PicHeight,$PicType) = $this->getPicInfo($Picture); }
3355
+            else { $Picture = NULL; $PicOffset = 0; }
3563 3356
 
3564
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3565
-         if ( $AroundZero ) { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
3357
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3566 3358
 
3567
-         if ( $Threshold != NULL )
3568
-          {
3569
-           foreach($Threshold as $Key => $Params)
3570
-            {
3571
-             $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"],array("AxisID"=>$Serie["Axis"]));
3572
-             $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"],array("AxisID"=>$Serie["Axis"]));
3573
-            }
3574
-          }
3359
+            $AxisID	= $Serie["Axis"];
3360
+            $Shape		= $Serie["Shape"];
3361
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
3362
+            $Format	= $Data["Axis"][$AxisID]["Format"];
3363
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
3575 3364
 
3576
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3365
+            if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3577 3366
 
3578
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3579
-          {
3580
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3581
-           $X     = $this->GraphAreaX1 + $XMargin; $WayPoints = "";
3582
-           $Force = $XStep / 5;
3367
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3583 3368
 
3584
-           if ( !$AroundZero ) { $YZero = $this->GraphAreaY2-1; }
3585
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
3586
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
3369
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3587 3370
 
3588
-           $LastX = ""; $LastY = "";
3589
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3590
-           foreach($PosArray as $Key => $Y)
3371
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3591 3372
             {
3592
-             if ( $DisplayValues ) 
3593
-              $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3373
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3374
+            if ( $Picture != NULL ) { $PicOffset = $PicHeight / 2; $SerieWeight = 0; }
3375
+            $X = $this->GraphAreaX1 + $XMargin;
3594 3376
 
3595
-             if ( $Y == VOID )
3596
-              {
3597
-               $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3377
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3378
+            foreach($PosArray as $Key => $Y)
3379
+            {
3380
+                if ( $DisplayValues ) 
3381
+                $this->drawText($X,$Y-$DisplayOffset-$SerieWeight-$BorderSize-$PicOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3598 3382
 
3599
-               if ( $Area != "" )
3383
+                if ( $Y != VOID )
3600 3384
                 {
3601
-                 foreach ($Area as $key => $Points)
3602
-                  {
3603
-                   $Corners = ""; $Corners[] = $Area[$key][0]["X"]; $Corners[] = $YZero;
3604
-                   foreach($Points as $subKey => $Point)
3605
-                    {
3606
-                     if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3607
-                     $Corners[] = $Point["Y"]+1;
3608
-                    }
3609
-                   $Corners[] = $Points[$subKey]["X"]-1; $Corners[] = $YZero;
3385
+                if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3610 3386
 
3611
-                   $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3612
-                  }
3613
-                 $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3387
+                if ( $Picture != NULL )
3388
+                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3389
+                else
3390
+                { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3614 3391
                 }
3615
-
3616
-               $WayPoints = "";
3617
-              }
3618
-             else
3619
-              $WayPoints[] = array($X,$Y-.5); /* -.5 for AA visual fix */
3620
-
3621
-             $X = $X + $XStep;
3392
+                $X = $X + $XStep;
3622 3393
             }
3623
-           $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3624
-
3625
-           if ( $Area != "" )
3626
-            {
3627
-             foreach ($Area as $key => $Points)
3628
-              {
3629
-               $Corners = ""; $Corners[] = $Area[$key][0]["X"]; $Corners[] = $YZero;
3630
-               foreach($Points as $subKey => $Point)
3631
-                {
3632
-                 if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3633
-                 $Corners[] = $Point["Y"]+1;
3634
-                }
3635
-               $Corners[] = $Points[$subKey]["X"]-1; $Corners[] = $YZero;
3636
-
3637
-               $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3638
-              }
3639
-             $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3640 3394
             }
3641
-          }
3642
-         else
3643
-          {
3644
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3645
-           $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
3646
-           $Force = $YStep / 5;
3647
-
3648
-           if ( !$AroundZero ) { $YZero = $this->GraphAreaX1+1; }
3649
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
3650
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
3651
-
3652
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3653
-           foreach($PosArray as $Key => $X)
3395
+            else
3654 3396
             {
3655
-             if ( $DisplayValues ) 
3656
-              $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3397
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3398
+            if ( $Picture != NULL ) { $PicOffset = $PicWidth / 2; $SerieWeight = 0; }
3399
+            $Y = $this->GraphAreaY1 + $XMargin;
3657 3400
 
3658
-             if ( $X == VOID )
3659
-              {
3660
-               $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3401
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3402
+            foreach($PosArray as $Key => $X)
3403
+            {
3404
+                if ( $DisplayValues ) 
3405
+                $this->drawText($X+$DisplayOffset+$SerieWeight+$BorderSize+$PicOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3661 3406
 
3662
-               if ( $Area != "" )
3407
+                if ( $X != VOID )
3663 3408
                 {
3664
-                 foreach ($Area as $key => $Points)
3665
-                  {
3666
-                   $Corners = ""; $Corners[] = $YZero; $Corners[] = $Area[$key][0]["Y"];
3667
-                   foreach($Points as $subKey => $Point)
3668
-                    {
3669
-                     if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3670
-                     $Corners[] = $Point["Y"];
3671
-                    }
3672
-                   $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"]-1;
3409
+                if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3673 3410
 
3674
-                   $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3675
-                  }
3676
-                 $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3677
-                }
3411
+                if ( $Picture != NULL )
3412
+                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3413
+                else
3414
+                { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3415
+                }
3416
+                $Y = $Y + $YStep;
3417
+            }
3418
+            }
3419
+        }
3420
+        }
3421
+    }
3678 3422
 
3679
-               $WayPoints = "";
3680
-              }
3681
-             else
3682
-              $WayPoints[] = array($X,$Y);
3423
+    /* Draw a spline chart */
3424
+    function drawSplineChart($Format=NULL)
3425
+    {
3426
+        $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : TRUE;
3427
+        $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3428
+        $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL; // 234
3429
+        $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL; // 55
3430
+        $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL; // 26
3431
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3432
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3433
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3434
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3435
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3436
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3437
+        $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3438
+        $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3439
+
3440
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3441
+
3442
+        $Data = $this->DataSet->getData();
3443
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3444
+        foreach($Data["Series"] as $SerieName => $Serie)
3445
+        {
3446
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3447
+        {
3448
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3683 3449
 
3684
-             $Y = $Y + $YStep;
3685
-            }
3686
-           $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3450
+            if ( $BreakR == NULL )
3451
+            $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks);
3452
+            else
3453
+            $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3454
+
3455
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3456
+
3457
+            $AxisID	= $Serie["Axis"];
3458
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
3459
+            $Format	= $Data["Axis"][$AxisID]["Format"];
3460
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
3461
+
3462
+            if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3687 3463
 
3688
-           if ( $Area != "" )
3464
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3465
+
3466
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3467
+
3468
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3689 3469
             {
3690
-             foreach ($Area as $key => $Points)
3691
-              {
3692
-               $Corners = ""; $Corners[] = $YZero; $Corners[] = $Area[$key][0]["Y"];
3693
-               foreach($Points as $subKey => $Point)
3694
-                {
3695
-                 if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3696
-                 $Corners[] = $Point["Y"];
3697
-                }
3698
-               $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"]-1;
3470
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3471
+            $X     = $this->GraphAreaX1 + $XMargin; $WayPoints = "";
3472
+            $Force = $XStep / 5;
3699 3473
 
3700
-               $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3701
-              }
3702
-             $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3474
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3475
+            $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3476
+            foreach($PosArray as $Key => $Y)
3477
+            {
3478
+                if ( $DisplayValues ) 
3479
+                $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3480
+	
3481
+                if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3482
+
3483
+                if ( $Y == VOID && $LastY != NULL )
3484
+                { $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight)); $WayPoints = ""; }
3485
+
3486
+                if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3487
+                { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3488
+
3489
+                if ( $Y != VOID )
3490
+                $WayPoints[] = array($X,$Y);
3491
+
3492
+                if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3493
+                if ( $Y == VOID ) { $Y = NULL; }
3494
+
3495
+                $LastX = $X; $LastY = $Y;
3496
+                $X = $X + $XStep;
3703 3497
             }
3498
+            $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3499
+            }
3500
+            else
3501
+            {
3502
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3503
+            $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
3504
+            $Force = $YStep / 5;
3704 3505
 
3705
-          }
3506
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3507
+            $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3508
+            foreach($PosArray as $Key => $X)
3509
+            {
3510
+                if ( $DisplayValues ) 
3511
+                $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3512
+
3513
+                if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3514
+
3515
+                if ( $X == VOID && $LastX != NULL )
3516
+                { $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight)); $WayPoints = ""; }
3517
+
3518
+                if ( $X != VOID && $LastX == NULL && $LastGoodX != NULL && !$BreakVoid )
3519
+                { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3520
+
3521
+                if ( $X != VOID )
3522
+                $WayPoints[] = array($X,$Y);
3523
+
3524
+                if ( $X != VOID ) { $LastGoodX = $X; $LastGoodY = $Y; }
3525
+                if ( $X == VOID ) { $X = NULL; }
3526
+
3527
+                $LastX = $X; $LastY = $Y;
3528
+                $Y = $Y + $YStep;
3529
+            }
3530
+            $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3531
+            }
3532
+        }
3706 3533
         }
3707
-      }
3708 3534
     }
3709 3535
 
3710
-   /* Draw a line chart */
3711
-   function drawLineChart($Format=NULL)
3536
+    /* Draw a filled spline chart */
3537
+    function drawFilledSplineChart($Format=NULL)
3712 3538
     {
3713
-     $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : TRUE;
3714
-     $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3715
-     $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL;
3716
-     $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL;
3717
-     $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL;
3718
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3719
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3720
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3721
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3722
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3723
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3724
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3725
-     $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3726
-     $ForceColor	= isset($Format["ForceColor"]) ? $Format["ForceColor"] : FALSE;
3727
-     $ForceR		= isset($Format["ForceR"]) ? $Format["ForceR"] : 0;
3728
-     $ForceG		= isset($Format["ForceG"]) ? $Format["ForceG"] : 0;
3729
-     $ForceB		= isset($Format["ForceB"]) ? $Format["ForceB"] : 0;
3730
-     $ForceAlpha	= isset($Format["ForceAlpha"]) ? $Format["ForceAlpha"] : 100;
3731
-
3732
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3733
-
3734
-     $Data = $this->DataSet->getData();
3735
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3736
-     foreach($Data["Series"] as $SerieName => $Serie)
3737
-      {
3738
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3539
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3540
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3541
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3542
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3543
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3544
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3545
+        $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
3546
+        $Threshold		= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
3547
+
3548
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3549
+
3550
+        $Data = $this->DataSet->getData();
3551
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3552
+        foreach($Data["Series"] as $SerieName => $Serie)
3739 3553
         {
3740
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3554
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3555
+        {
3556
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3557
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3741 3558
 
3742
-         if ( $ForceColor )
3743
-          { $R = $ForceR; $G = $ForceG; $B = $ForceB; $Alpha = $ForceAlpha; }
3559
+            $AxisID	= $Serie["Axis"];
3560
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
3561
+            $Format	= $Data["Axis"][$AxisID]["Format"];
3562
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
3744 3563
 
3745
-         if ( $BreakR == NULL )
3746
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3747
-         else
3748
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3564
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3565
+            if ( $AroundZero ) { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
3749 3566
 
3750
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3567
+            if ( $Threshold != NULL )
3568
+            {
3569
+            foreach($Threshold as $Key => $Params)
3570
+            {
3571
+                $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"],array("AxisID"=>$Serie["Axis"]));
3572
+                $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"],array("AxisID"=>$Serie["Axis"]));
3573
+            }
3574
+            }
3751 3575
 
3752
-         $AxisID	= $Serie["Axis"];
3753
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
3754
-         $Format	= $Data["Axis"][$AxisID]["Format"];
3755
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
3576
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3756 3577
 
3757
-         if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3578
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3579
+            {
3580
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3581
+            $X     = $this->GraphAreaX1 + $XMargin; $WayPoints = "";
3582
+            $Force = $XStep / 5;
3758 3583
 
3759
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3584
+            if ( !$AroundZero ) { $YZero = $this->GraphAreaY2-1; }
3585
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
3586
+            if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
3760 3587
 
3761
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3588
+            $LastX = ""; $LastY = "";
3589
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3590
+            foreach($PosArray as $Key => $Y)
3591
+            {
3592
+                if ( $DisplayValues ) 
3593
+                $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3762 3594
 
3763
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3764
-          {
3765
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3766
-           $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3595
+                if ( $Y == VOID )
3596
+                {
3597
+                $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3767 3598
 
3768
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3769
-           $LastGoodY = NULL; $LastGoodX = NULL;
3770
-           foreach($PosArray as $Key => $Y)
3771
-            {
3772
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3773
-              {
3774
-               if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3775
-               $this->drawText($X,$Y-$Offset-$Weight,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
3776
-              }
3599
+                if ( $Area != "" )
3600
+                {
3601
+                    foreach ($Area as $key => $Points)
3602
+                    {
3603
+                    $Corners = ""; $Corners[] = $Area[$key][0]["X"]; $Corners[] = $YZero;
3604
+                    foreach($Points as $subKey => $Point)
3605
+                    {
3606
+                        if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3607
+                        $Corners[] = $Point["Y"]+1;
3608
+                    }
3609
+                    $Corners[] = $Points[$subKey]["X"]-1; $Corners[] = $YZero;
3777 3610
 
3778
-             if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3611
+                    $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3612
+                    }
3613
+                    $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3614
+                }
3779 3615
 
3780
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3781
-              $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3616
+                $WayPoints = "";
3617
+                }
3618
+                else
3619
+                $WayPoints[] = array($X,$Y-.5); /* -.5 for AA visual fix */
3782 3620
 
3783
-             if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3784
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
3621
+                $X = $X + $XStep;
3622
+            }
3623
+            $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3785 3624
 
3786
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3787
-             if ( $Y == VOID ) { $Y = NULL; }
3625
+            if ( $Area != "" )
3626
+            {
3627
+                foreach ($Area as $key => $Points)
3628
+                {
3629
+                $Corners = ""; $Corners[] = $Area[$key][0]["X"]; $Corners[] = $YZero;
3630
+                foreach($Points as $subKey => $Point)
3631
+                {
3632
+                    if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3633
+                    $Corners[] = $Point["Y"]+1;
3634
+                }
3635
+                $Corners[] = $Points[$subKey]["X"]-1; $Corners[] = $YZero;
3788 3636
 
3789
-             $LastX = $X; $LastY = $Y;
3790
-             $X = $X + $XStep;
3637
+                $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3638
+                }
3639
+                $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3640
+            }
3791 3641
             }
3792
-          }
3793
-         else
3794
-          {
3795
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3796
-           $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
3642
+            else
3643
+            {
3644
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3645
+            $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
3646
+            $Force = $YStep / 5;
3647
+
3648
+            if ( !$AroundZero ) { $YZero = $this->GraphAreaX1+1; }
3649
+            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
3650
+            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
3797 3651
 
3798
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3799
-           $LastGoodY = NULL; $LastGoodX = NULL;
3800
-           foreach($PosArray as $Key => $X)
3652
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3653
+            foreach($PosArray as $Key => $X)
3801 3654
             {
3802
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3803
-              { $this->drawText($X+$DisplayOffset+$Weight,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
3655
+                if ( $DisplayValues ) 
3656
+                $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3657
+
3658
+                if ( $X == VOID )
3659
+                {
3660
+                $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3661
+
3662
+                if ( $Area != "" )
3663
+                {
3664
+                    foreach ($Area as $key => $Points)
3665
+                    {
3666
+                    $Corners = ""; $Corners[] = $YZero; $Corners[] = $Area[$key][0]["Y"];
3667
+                    foreach($Points as $subKey => $Point)
3668
+                    {
3669
+                        if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3670
+                        $Corners[] = $Point["Y"];
3671
+                    }
3672
+                    $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"]-1;
3673
+
3674
+                    $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3675
+                    }
3676
+                    $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3677
+                }
3804 3678
 
3805
-             if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3679
+                $WayPoints = "";
3680
+                }
3681
+                else
3682
+                $WayPoints[] = array($X,$Y);
3806 3683
 
3807
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
3808
-              $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3684
+                $Y = $Y + $YStep;
3685
+            }
3686
+            $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3809 3687
 
3810
-             if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
3811
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
3688
+            if ( $Area != "" )
3689
+            {
3690
+                foreach ($Area as $key => $Points)
3691
+                {
3692
+                $Corners = ""; $Corners[] = $YZero; $Corners[] = $Area[$key][0]["Y"];
3693
+                foreach($Points as $subKey => $Point)
3694
+                {
3695
+                    if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3696
+                    $Corners[] = $Point["Y"];
3697
+                }
3698
+                $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"]-1;
3812 3699
 
3813
-             if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3814
-             if ( $X == VOID ) { $X = NULL; }
3700
+                $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3701
+                }
3702
+                $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3703
+            }
3815 3704
 
3816
-             $LastX = $X; $LastY = $Y;
3817
-             $Y = $Y + $YStep;
3818 3705
             }
3819
-          }
3820 3706
         }
3821
-      }
3707
+        }
3822 3708
     }
3823 3709
 
3824
-   /* Draw a line chart */
3825
-   function drawZoneChart($SerieA,$SerieB,$Format=NULL)
3710
+    /* Draw a line chart */
3711
+    function drawLineChart($Format=NULL)
3826 3712
     {
3827
-     $AxisID	= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
3828
-     $LineR	= isset($Format["LineR"]) ? $Format["LineR"] : 150;
3829
-     $LineG	= isset($Format["LineG"]) ? $Format["LineG"] : 150;
3830
-     $LineB	= isset($Format["LineB"]) ? $Format["LineB"] : 150;
3831
-     $LineAlpha	= isset($Format["LineAlpha"]) ? $Format["LineAlpha"] : 50;
3832
-     $LineTicks	= isset($Format["LineTicks"]) ? $Format["LineTicks"] : 1;
3833
-     $AreaR	= isset($Format["AreaR"]) ? $Format["AreaR"] : 150;
3834
-     $AreaG	= isset($Format["AreaG"]) ? $Format["AreaG"] : 150;
3835
-     $AreaB	= isset($Format["AreaB"]) ? $Format["AreaB"] : 150;
3836
-     $AreaAlpha	= isset($Format["AreaAlpha"]) ? $Format["AreaAlpha"] : 5;
3713
+        $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : TRUE;
3714
+        $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3715
+        $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL;
3716
+        $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL;
3717
+        $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL;
3718
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3719
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3720
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3721
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3722
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3723
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3724
+        $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3725
+        $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3726
+        $ForceColor	= isset($Format["ForceColor"]) ? $Format["ForceColor"] : FALSE;
3727
+        $ForceR		= isset($Format["ForceR"]) ? $Format["ForceR"] : 0;
3728
+        $ForceG		= isset($Format["ForceG"]) ? $Format["ForceG"] : 0;
3729
+        $ForceB		= isset($Format["ForceB"]) ? $Format["ForceB"] : 0;
3730
+        $ForceAlpha	= isset($Format["ForceAlpha"]) ? $Format["ForceAlpha"] : 100;
3731
+
3732
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3733
+
3734
+        $Data = $this->DataSet->getData();
3735
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3736
+        foreach($Data["Series"] as $SerieName => $Serie)
3737
+        {
3738
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3739
+        {
3740
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3741
+
3742
+            if ( $ForceColor )
3743
+            { $R = $ForceR; $G = $ForceG; $B = $ForceB; $Alpha = $ForceAlpha; }
3744
+
3745
+            if ( $BreakR == NULL )
3746
+            $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3747
+            else
3748
+            $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3749
+
3750
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3837 3751
 
3838
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3752
+            $AxisID	= $Serie["Axis"];
3753
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
3754
+            $Format	= $Data["Axis"][$AxisID]["Format"];
3755
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
3839 3756
 
3840
-     $Data	 = $this->DataSet->getData();
3841
-     if ( !isset($Data["Series"][$SerieA]["Data"]) || !isset($Data["Series"][$SerieB]["Data"]) ) { return(0); }
3842
-     $SerieAData = $Data["Series"][$SerieA]["Data"];
3843
-     $SerieBData = $Data["Series"][$SerieB]["Data"];
3757
+            if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3844 3758
 
3845
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3759
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3846 3760
 
3847
-     $Mode	= $Data["Axis"][$AxisID]["Display"];
3848
-     $Format	= $Data["Axis"][$AxisID]["Format"];
3849
-     $Unit	= $Data["Axis"][$AxisID]["Unit"];
3761
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3850 3762
 
3851
-     $PosArrayA = $this->scaleComputeY($SerieAData,array("AxisID"=>$AxisID));
3852
-     $PosArrayB = $this->scaleComputeY($SerieBData,array("AxisID"=>$AxisID));
3853
-     if ( count($PosArrayA) != count($PosArrayB) ) { return(0); }
3763
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3764
+            {
3765
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3766
+            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3767
+
3768
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3769
+            $LastGoodY = NULL; $LastGoodX = NULL;
3770
+            foreach($PosArray as $Key => $Y)
3771
+            {
3772
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3773
+                {
3774
+                if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3775
+                $this->drawText($X,$Y-$Offset-$Weight,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
3776
+                }
3777
+
3778
+                if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3779
+
3780
+                if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3781
+                $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3782
+
3783
+                if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3784
+                { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
3785
+
3786
+                if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3787
+                if ( $Y == VOID ) { $Y = NULL; }
3788
+
3789
+                $LastX = $X; $LastY = $Y;
3790
+                $X = $X + $XStep;
3791
+            }
3792
+            }
3793
+            else
3794
+            {
3795
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3796
+            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
3797
+
3798
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3799
+            $LastGoodY = NULL; $LastGoodX = NULL;
3800
+            foreach($PosArray as $Key => $X)
3801
+            {
3802
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3803
+                { $this->drawText($X+$DisplayOffset+$Weight,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
3804
+
3805
+                if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3806
+
3807
+                if ( $X != VOID && $LastX != NULL && $LastY != NULL )
3808
+                $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3809
+
3810
+                if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
3811
+                { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
3812
+
3813
+                if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3814
+                if ( $X == VOID ) { $X = NULL; }
3815
+
3816
+                $LastX = $X; $LastY = $Y;
3817
+                $Y = $Y + $YStep;
3818
+            }
3819
+            }
3820
+        }
3821
+        }
3822
+    }
3854 3823
 
3855
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3856
-      {
3857
-       if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3858
-       $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3824
+    /* Draw a line chart */
3825
+    function drawZoneChart($SerieA,$SerieB,$Format=NULL)
3826
+    {
3827
+        $AxisID	= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
3828
+        $LineR	= isset($Format["LineR"]) ? $Format["LineR"] : 150;
3829
+        $LineG	= isset($Format["LineG"]) ? $Format["LineG"] : 150;
3830
+        $LineB	= isset($Format["LineB"]) ? $Format["LineB"] : 150;
3831
+        $LineAlpha	= isset($Format["LineAlpha"]) ? $Format["LineAlpha"] : 50;
3832
+        $LineTicks	= isset($Format["LineTicks"]) ? $Format["LineTicks"] : 1;
3833
+        $AreaR	= isset($Format["AreaR"]) ? $Format["AreaR"] : 150;
3834
+        $AreaG	= isset($Format["AreaG"]) ? $Format["AreaG"] : 150;
3835
+        $AreaB	= isset($Format["AreaB"]) ? $Format["AreaB"] : 150;
3836
+        $AreaAlpha	= isset($Format["AreaAlpha"]) ? $Format["AreaAlpha"] : 5;
3837
+
3838
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3839
+
3840
+        $Data	 = $this->DataSet->getData();
3841
+        if ( !isset($Data["Series"][$SerieA]["Data"]) || !isset($Data["Series"][$SerieB]["Data"]) ) { return(0); }
3842
+        $SerieAData = $Data["Series"][$SerieA]["Data"];
3843
+        $SerieBData = $Data["Series"][$SerieB]["Data"];
3844
+
3845
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3846
+
3847
+        $Mode	= $Data["Axis"][$AxisID]["Display"];
3848
+        $Format	= $Data["Axis"][$AxisID]["Format"];
3849
+        $Unit	= $Data["Axis"][$AxisID]["Unit"];
3850
+
3851
+        $PosArrayA = $this->scaleComputeY($SerieAData,array("AxisID"=>$AxisID));
3852
+        $PosArrayB = $this->scaleComputeY($SerieBData,array("AxisID"=>$AxisID));
3853
+        if ( count($PosArrayA) != count($PosArrayB) ) { return(0); }
3854
+
3855
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3856
+        {
3857
+        if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3858
+        $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3859 3859
 
3860
-       $LastX = NULL; $LastY1 = NULL; $LastY2 = NULL;
3861
-       $BoundsA = ""; $BoundsB = "";
3862
-       foreach($PosArrayA as $Key => $Y1)
3860
+        $LastX = NULL; $LastY1 = NULL; $LastY2 = NULL;
3861
+        $BoundsA = ""; $BoundsB = "";
3862
+        foreach($PosArrayA as $Key => $Y1)
3863 3863
         {
3864
-         $Y2 = $PosArrayB[$Key];
3864
+            $Y2 = $PosArrayB[$Key];
3865 3865
 
3866
-         $BoundsA[] = $X; $BoundsA[] = $Y1;
3867
-         $BoundsB[] = $X; $BoundsB[] = $Y2;
3866
+            $BoundsA[] = $X; $BoundsA[] = $Y1;
3867
+            $BoundsB[] = $X; $BoundsB[] = $Y2;
3868 3868
 
3869
-         $LastX = $X;
3870
-         $LastY1 = $Y1; $LastY2 = $Y2;
3869
+            $LastX = $X;
3870
+            $LastY1 = $Y1; $LastY2 = $Y2;
3871 3871
 
3872
-         $X = $X + $XStep;
3872
+            $X = $X + $XStep;
3873 3873
         }
3874
-       $Bounds = array_merge($BoundsA,$this->reversePlots($BoundsB));
3875
-       $this->drawPolygonChart($Bounds,array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"Alpha"=>$AreaAlpha));
3874
+        $Bounds = array_merge($BoundsA,$this->reversePlots($BoundsB));
3875
+        $this->drawPolygonChart($Bounds,array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"Alpha"=>$AreaAlpha));
3876 3876
 
3877
-       for($i=0;$i<=count($BoundsA)-4;$i=$i+2)
3877
+        for($i=0;$i<=count($BoundsA)-4;$i=$i+2)
3878 3878
         {
3879
-         $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3880
-         $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3879
+            $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3880
+            $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3881 3881
         }
3882
-      }
3883
-     else
3884
-      {
3885
-       if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3886
-       $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
3882
+        }
3883
+        else
3884
+        {
3885
+        if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3886
+        $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
3887 3887
 
3888
-       $LastY = NULL; $LastX1 = NULL; $LastX2 = NULL;
3889
-       $BoundsA = ""; $BoundsB = "";
3890
-       foreach($PosArrayA as $Key => $X1)
3888
+        $LastY = NULL; $LastX1 = NULL; $LastX2 = NULL;
3889
+        $BoundsA = ""; $BoundsB = "";
3890
+        foreach($PosArrayA as $Key => $X1)
3891 3891
         {
3892
-         $X2 = $PosArrayB[$Key];
3892
+            $X2 = $PosArrayB[$Key];
3893 3893
 
3894
-         $BoundsA[] = $X1; $BoundsA[] = $Y;
3895
-         $BoundsB[] = $X2; $BoundsB[] = $Y;
3894
+            $BoundsA[] = $X1; $BoundsA[] = $Y;
3895
+            $BoundsB[] = $X2; $BoundsB[] = $Y;
3896 3896
 
3897
-         $LastY = $Y;
3898
-         $LastX1 = $X1; $LastX2 = $X2;
3897
+            $LastY = $Y;
3898
+            $LastX1 = $X1; $LastX2 = $X2;
3899 3899
 
3900
-         $Y = $Y + $YStep;
3900
+            $Y = $Y + $YStep;
3901 3901
         }
3902
-       $Bounds = array_merge($BoundsA,$this->reversePlots($BoundsB));
3903
-       $this->drawPolygonChart($Bounds,array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"Alpha"=>$AreaAlpha));
3902
+        $Bounds = array_merge($BoundsA,$this->reversePlots($BoundsB));
3903
+        $this->drawPolygonChart($Bounds,array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"Alpha"=>$AreaAlpha));
3904 3904
 
3905
-       for($i=0;$i<=count($BoundsA)-4;$i=$i+2)
3905
+        for($i=0;$i<=count($BoundsA)-4;$i=$i+2)
3906 3906
         {
3907
-         $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3908
-         $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3907
+            $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3908
+            $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3909
+        }
3909 3910
         }
3910
-      }
3911 3911
     }
3912 3912
 
3913
-   /* Draw a step chart */
3914
-   function drawStepChart($Format=NULL)
3913
+    /* Draw a step chart */
3914
+    function drawStepChart($Format=NULL)
3915 3915
     {
3916
-     $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : FALSE;
3917
-     $ReCenter		= isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
3918
-     $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3919
-     $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL;
3920
-     $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL;
3921
-     $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL;
3922
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] :FALSE;
3923
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3924
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3925
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3926
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3927
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3928
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3929
-     $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3930
-
3931
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3932
-
3933
-     $Data = $this->DataSet->getData();
3934
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3935
-     foreach($Data["Series"] as $SerieName => $Serie)
3936
-      {
3937
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3938
-        {
3939
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3940
-
3941
-         if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3942
-
3943
-         if ( $BreakR == NULL )
3944
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3945
-         else
3946
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3947
-
3948
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3949
-
3950
-         $AxisID	= $Serie["Axis"];
3951
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
3952
-         $Format	= $Data["Axis"][$AxisID]["Format"];
3953
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
3954
-         $Color		= array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
3955
-
3956
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3957
-
3958
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3959
-
3960
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3961
-          {
3962
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3963
-           $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3964
-
3965
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3966
-           $LastGoodY = NULL; $LastGoodX = NULL; $Init = FALSE;
3967
-           foreach($PosArray as $Key => $Y)
3968
-            {
3969
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3970
-              {
3971
-               if ( $Y <= $LastY ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3972
-               $this->drawText($X,$Y-$Offset-$Weight,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
3973
-              }
3974
-
3975
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3976
-              {
3977
-               $this->drawLine($LastX,$LastY,$X,$LastY,$Color);
3978
-               $this->drawLine($X,$LastY,$X,$Y,$Color);
3979
-               if ( $ReCenter && $X+$XStep < $this->GraphAreaX2 - $XMargin )
3916
+        $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : FALSE;
3917
+        $ReCenter		= isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
3918
+        $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3919
+        $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL;
3920
+        $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL;
3921
+        $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL;
3922
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] :FALSE;
3923
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3924
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3925
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3926
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3927
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3928
+        $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3929
+        $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3930
+
3931
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3932
+
3933
+        $Data = $this->DataSet->getData();
3934
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
3935
+        foreach($Data["Series"] as $SerieName => $Serie)
3936
+        {
3937
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3938
+        {
3939
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3940
+
3941
+            if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3942
+
3943
+            if ( $BreakR == NULL )
3944
+            $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3945
+            else
3946
+            $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3947
+
3948
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3949
+
3950
+            $AxisID	= $Serie["Axis"];
3951
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
3952
+            $Format	= $Data["Axis"][$AxisID]["Format"];
3953
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
3954
+            $Color		= array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
3955
+
3956
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3957
+
3958
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3959
+
3960
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3961
+            {
3962
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3963
+            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3964
+
3965
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3966
+            $LastGoodY = NULL; $LastGoodX = NULL; $Init = FALSE;
3967
+            foreach($PosArray as $Key => $Y)
3968
+            {
3969
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3970
+                {
3971
+                if ( $Y <= $LastY ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3972
+                $this->drawText($X,$Y-$Offset-$Weight,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
3973
+                }
3974
+
3975
+                if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3976
+                {
3977
+                $this->drawLine($LastX,$LastY,$X,$LastY,$Color);
3978
+                $this->drawLine($X,$LastY,$X,$Y,$Color);
3979
+                if ( $ReCenter && $X+$XStep < $this->GraphAreaX2 - $XMargin )
3980 3980
                 {
3981
-                 $this->drawLine($X,$Y,$X+$XStep,$Y,$Color);
3982
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3981
+                    $this->drawLine($X,$Y,$X+$XStep,$Y,$Color);
3982
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3983 3983
                 }
3984
-               else
3984
+                else
3985 3985
                 { if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); } }
3986
-              }
3986
+                }
3987 3987
 
3988
-             if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3989
-              { 
3990
-               if ( $ReCenter )
3988
+                if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3989
+                { 
3990
+                if ( $ReCenter )
3991 3991
                 {
3992
-                 $this->drawLine($LastGoodX+$XStep,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3993
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX+$XStep-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3992
+                    $this->drawLine($LastGoodX+$XStep,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3993
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX+$XStep-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3994 3994
                 }
3995
-               else
3995
+                else
3996 3996
                 {
3997
-                 $this->drawLine($LastGoodX,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3998
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3997
+                    $this->drawLine($LastGoodX,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3998
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3999 3999
                 }
4000 4000
 
4001
-               $this->drawLine($X,$LastGoodY,$X,$Y,$BreakSettings);
4002
-               $LastGoodY = NULL;
4003
-              }
4004
-             elseif( !$BreakVoid && $LastGoodY == NULL && $Y != VOID )
4005
-              {
4006
-              $this->drawLine($this->GraphAreaX1 + $XMargin,$Y,$X,$Y,$BreakSettings);
4007
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($this->GraphAreaX1+$XMargin-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4008
-              }
4009
-
4010
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4011
-             if ( $Y == VOID ) { $Y = NULL; }
4012
-
4013
-             if ( !$Init && $ReCenter ) { $X = $X - $XStep/2; $Init = TRUE; }
4014
-             $LastX = $X; $LastY = $Y;
4015
-             if ( $LastX < $this->GraphAreaX1 + $XMargin ) { $LastX = $this->GraphAreaX1 + $XMargin; }
4016
-             $X = $X + $XStep;
4017
-            }
4018
-           if ( $ReCenter )
4019
-            {
4020
-             $this->drawLine($LastX,$LastY,$this->GraphAreaX2 - $XMargin,$LastY,$Color);
4021
-             if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($this->GraphAreaX2-$XMargin+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4022
-            }
4023
-          }
4024
-         else
4025
-          {
4026
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4027
-           $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4028
-
4029
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4030
-           $LastGoodY = NULL; $LastGoodX = NULL; $Init = FALSE;
4031
-           foreach($PosArray as $Key => $X)
4032
-            {
4033
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
4034
-              {
4035
-               if ( $X >= $LastX ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4036
-               $this->drawText($X+$Offset+$Weight,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4037
-              }
4038
-
4039
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
4040
-              {
4041
-               $this->drawLine($LastX,$LastY,$LastX,$Y,$Color);
4042
-               $this->drawLine($LastX,$Y,$X,$Y,$Color);
4043
-
4044
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($LastX+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4045
-              }
4046
-
4047
-             if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
4048
-              {
4049
-               $this->drawLine($LastGoodX,$LastGoodY,$LastGoodX,$LastGoodY+$YStep,$Color);
4050
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($LastGoodX+$ImageMapPlotSize).",".floor($LastGoodY+$YStep+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4051
-
4052
-               $this->drawLine($LastGoodX,$LastGoodY+$YStep,$LastGoodX,$Y,$BreakSettings);
4053
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY+$YStep-$ImageMapPlotSize).",".floor($LastGoodX+$ImageMapPlotSize).",".floor($YStep+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4054
-
4055
-               $this->drawLine($LastGoodX,$Y,$X,$Y,$BreakSettings);
4056
-               $LastGoodY = NULL;
4057
-              }
4058
-             elseif ( $X != VOID && $LastGoodY == NULL && !$BreakVoid )
4059
-              {
4060
-               $this->drawLine($X,$this->GraphAreaY1 + $XMargin,$X,$Y,$BreakSettings);
4061
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($this->GraphAreaY1+$XMargin-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4062
-              }
4063
-
4064
-             if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4065
-             if ( $X == VOID ) { $X = NULL; }
4066
-
4067
-             if ( !$Init && $ReCenter ) { $Y = $Y - $YStep/2; $Init = TRUE; }
4068
-             $LastX = $X; $LastY = $Y;
4069
-             if ( $LastY < $this->GraphAreaY1 + $XMargin ) { $LastY = $this->GraphAreaY1 + $XMargin; }
4070
-             $Y = $Y + $YStep;
4071
-            }
4072
-           if ( $ReCenter )
4073
-            {
4074
-             $this->drawLine($LastX,$LastY,$LastX,$this->GraphAreaY2 - $XMargin,$Color);
4075
-             if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($LastX+$ImageMapPlotSize).",".floor($this->GraphAreaY2-$XMargin+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4076
-            }
4077
-          }
4078
-        }
4079
-      }
4080
-    }
4001
+                $this->drawLine($X,$LastGoodY,$X,$Y,$BreakSettings);
4002
+                $LastGoodY = NULL;
4003
+                }
4004
+                elseif( !$BreakVoid && $LastGoodY == NULL && $Y != VOID )
4005
+                {
4006
+                $this->drawLine($this->GraphAreaX1 + $XMargin,$Y,$X,$Y,$BreakSettings);
4007
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($this->GraphAreaX1+$XMargin-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4008
+                }
4081 4009
 
4082
-   /* Draw a step chart */
4083
-   function drawFilledStepChart($Format=NULL)
4084
-    {
4085
-     $ReCenter		= isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
4086
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] :FALSE;
4087
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4088
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4089
-     $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
4090
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4091
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4092
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4093
-     $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4010
+                if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4011
+                if ( $Y == VOID ) { $Y = NULL; }
4012
+
4013
+                if ( !$Init && $ReCenter ) { $X = $X - $XStep/2; $Init = TRUE; }
4014
+                $LastX = $X; $LastY = $Y;
4015
+                if ( $LastX < $this->GraphAreaX1 + $XMargin ) { $LastX = $this->GraphAreaX1 + $XMargin; }
4016
+                $X = $X + $XStep;
4017
+            }
4018
+            if ( $ReCenter )
4019
+            {
4020
+                $this->drawLine($LastX,$LastY,$this->GraphAreaX2 - $XMargin,$LastY,$Color);
4021
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($this->GraphAreaX2-$XMargin+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4022
+            }
4023
+            }
4024
+            else
4025
+            {
4026
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4027
+            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4028
+
4029
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4030
+            $LastGoodY = NULL; $LastGoodX = NULL; $Init = FALSE;
4031
+            foreach($PosArray as $Key => $X)
4032
+            {
4033
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
4034
+                {
4035
+                if ( $X >= $LastX ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4036
+                $this->drawText($X+$Offset+$Weight,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4037
+                }
4038
+
4039
+                if ( $X != VOID && $LastX != NULL && $LastY != NULL )
4040
+                {
4041
+                $this->drawLine($LastX,$LastY,$LastX,$Y,$Color);
4042
+                $this->drawLine($LastX,$Y,$X,$Y,$Color);
4094 4043
 
4095
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4044
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($LastX+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4045
+                }
4046
+
4047
+                if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
4048
+                {
4049
+                $this->drawLine($LastGoodX,$LastGoodY,$LastGoodX,$LastGoodY+$YStep,$Color);
4050
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($LastGoodX+$ImageMapPlotSize).",".floor($LastGoodY+$YStep+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4096 4051
 
4097
-     $Data = $this->DataSet->getData();
4098
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4099
-     foreach($Data["Series"] as $SerieName => $Serie)
4100
-      {
4101
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4052
+                $this->drawLine($LastGoodX,$LastGoodY+$YStep,$LastGoodX,$Y,$BreakSettings);
4053
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY+$YStep-$ImageMapPlotSize).",".floor($LastGoodX+$ImageMapPlotSize).",".floor($YStep+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4054
+
4055
+                $this->drawLine($LastGoodX,$Y,$X,$Y,$BreakSettings);
4056
+                $LastGoodY = NULL;
4057
+                }
4058
+                elseif ( $X != VOID && $LastGoodY == NULL && !$BreakVoid )
4059
+                {
4060
+                $this->drawLine($X,$this->GraphAreaY1 + $XMargin,$X,$Y,$BreakSettings);
4061
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($this->GraphAreaY1+$XMargin-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4062
+                }
4063
+
4064
+                if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4065
+                if ( $X == VOID ) { $X = NULL; }
4066
+
4067
+                if ( !$Init && $ReCenter ) { $Y = $Y - $YStep/2; $Init = TRUE; }
4068
+                $LastX = $X; $LastY = $Y;
4069
+                if ( $LastY < $this->GraphAreaY1 + $XMargin ) { $LastY = $this->GraphAreaY1 + $XMargin; }
4070
+                $Y = $Y + $YStep;
4071
+            }
4072
+            if ( $ReCenter )
4073
+            {
4074
+                $this->drawLine($LastX,$LastY,$LastX,$this->GraphAreaY2 - $XMargin,$Color);
4075
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($LastX+$ImageMapPlotSize).",".floor($this->GraphAreaY2-$XMargin+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4076
+            }
4077
+            }
4078
+        }
4079
+        }
4080
+    }
4081
+
4082
+    /* Draw a step chart */
4083
+    function drawFilledStepChart($Format=NULL)
4084
+    {
4085
+        $ReCenter		= isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
4086
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] :FALSE;
4087
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4088
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4089
+        $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
4090
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4091
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4092
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4093
+        $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4094
+
4095
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4096
+
4097
+        $Data = $this->DataSet->getData();
4098
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
4099
+        foreach($Data["Series"] as $SerieName => $Serie)
4100
+        {
4101
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4102 4102
         {
4103
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
4103
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
4104 4104
 
4105
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4105
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4106 4106
 
4107
-         $AxisID	= $Serie["Axis"];
4108
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
4109
-         $Format	= $Data["Axis"][$AxisID]["Format"];
4110
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
4107
+            $AxisID	= $Serie["Axis"];
4108
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
4109
+            $Format	= $Data["Axis"][$AxisID]["Format"];
4110
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
4111 4111
 
4112
-         $Color		= array("R"=>$R,"G"=>$G,"B"=>$B);
4113
-         if ( $ForceTransparency != NULL ) { $Color["Alpha"] = $ForceTransparency; } else { $Color["Alpha"] = $Alpha; }
4112
+            $Color		= array("R"=>$R,"G"=>$G,"B"=>$B);
4113
+            if ( $ForceTransparency != NULL ) { $Color["Alpha"] = $ForceTransparency; } else { $Color["Alpha"] = $Alpha; }
4114 4114
 
4115
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4116
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4115
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4116
+            $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4117 4117
 
4118
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4118
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4119 4119
 
4120
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4121
-          {
4122
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4123
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4120
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4121
+            {
4122
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4123
+            if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4124 4124
 
4125
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4126
-           $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
4125
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4126
+            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
4127 4127
 
4128
-           if ( !$AroundZero ) { $YZero = $this->GraphAreaY2-1; }
4128
+            if ( !$AroundZero ) { $YZero = $this->GraphAreaY2-1; }
4129 4129
 
4130
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4131
-           $LastGoodY = NULL; $LastGoodX = NULL; $Points = ""; $Init = FALSE;
4132
-           foreach($PosArray as $Key => $Y)
4130
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4131
+            $LastGoodY = NULL; $LastGoodX = NULL; $Points = ""; $Init = FALSE;
4132
+            foreach($PosArray as $Key => $Y)
4133 4133
             {
4134
-             if ( $Y == VOID && $LastX != NULL && $LastY != NULL && $Points !="" )
4135
-              {
4136
-               $Points[] = $LastX; $Points[] = $LastY;
4137
-               $Points[] = $X; $Points[] = $LastY;
4138
-               $Points[] = $X; $Points[] = $YZero;
4139
-               $this->drawPolygon($Points,$Color);
4140
-               $Points = "";
4141
-              }
4134
+                if ( $Y == VOID && $LastX != NULL && $LastY != NULL && $Points !="" )
4135
+                {
4136
+                $Points[] = $LastX; $Points[] = $LastY;
4137
+                $Points[] = $X; $Points[] = $LastY;
4138
+                $Points[] = $X; $Points[] = $YZero;
4139
+                $this->drawPolygon($Points,$Color);
4140
+                $Points = "";
4141
+                }
4142 4142
 
4143
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
4144
-              {
4145
-               if ( $Points == "") { $Points[] = $LastX; $Points[] = $YZero; }
4146
-               $Points[] = $LastX; $Points[] = $LastY;
4147
-               $Points[] = $X; $Points[] = $LastY;
4148
-               $Points[] = $X; $Points[] = $Y;
4149
-              }
4143
+                if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
4144
+                {
4145
+                if ( $Points == "") { $Points[] = $LastX; $Points[] = $YZero; }
4146
+                $Points[] = $LastX; $Points[] = $LastY;
4147
+                $Points[] = $X; $Points[] = $LastY;
4148
+                $Points[] = $X; $Points[] = $Y;
4149
+                }
4150 4150
 
4151
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4152
-             if ( $Y == VOID ) { $Y = NULL; }
4151
+                if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4152
+                if ( $Y == VOID ) { $Y = NULL; }
4153 4153
 
4154
-             if ( !$Init && $ReCenter ) { $X = $X - $XStep/2; $Init = TRUE; }
4155
-             $LastX = $X; $LastY = $Y;
4156
-             if ( $LastX < $this->GraphAreaX1 + $XMargin ) { $LastX = $this->GraphAreaX1 + $XMargin; }
4157
-             $X = $X + $XStep;
4154
+                if ( !$Init && $ReCenter ) { $X = $X - $XStep/2; $Init = TRUE; }
4155
+                $LastX = $X; $LastY = $Y;
4156
+                if ( $LastX < $this->GraphAreaX1 + $XMargin ) { $LastX = $this->GraphAreaX1 + $XMargin; }
4157
+                $X = $X + $XStep;
4158 4158
             }
4159 4159
 
4160
-           if ( $ReCenter )
4160
+            if ( $ReCenter )
4161 4161
             {
4162
-             $Points[] = $LastX+$XStep/2; $Points[] = $LastY;
4163
-             $Points[] = $LastX+$XStep/2; $Points[] = $YZero;
4162
+                $Points[] = $LastX+$XStep/2; $Points[] = $LastY;
4163
+                $Points[] = $LastX+$XStep/2; $Points[] = $YZero;
4164 4164
             }
4165
-           else
4165
+            else
4166 4166
             { $Points[] = $LastX; $Points[] = $YZero; }
4167 4167
 
4168
-           $this->drawPolygon($Points,$Color);
4169
-          }
4170
-         else
4171
-          {
4172
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4173
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4168
+            $this->drawPolygon($Points,$Color);
4169
+            }
4170
+            else
4171
+            {
4172
+            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4173
+            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4174 4174
 
4175
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4176
-           $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4175
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4176
+            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4177 4177
 
4178
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4179
-           $LastGoodY = NULL; $LastGoodX = NULL; $Points = "";
4180
-           foreach($PosArray as $Key => $X)
4178
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4179
+            $LastGoodY = NULL; $LastGoodX = NULL; $Points = "";
4180
+            foreach($PosArray as $Key => $X)
4181 4181
             {
4182
-             if ( $X == VOID && $LastX != NULL && $LastY != NULL && $Points !="" )
4183
-              {
4184
-               $Points[] = $LastX; $Points[] = $LastY;
4185
-               $Points[] = $LastX; $Points[] = $Y;
4186
-               $Points[] = $YZero; $Points[] = $Y;
4187
-               $this->drawPolygon($Points,$Color);
4188
-               $Points = "";
4189
-              }
4182
+                if ( $X == VOID && $LastX != NULL && $LastY != NULL && $Points !="" )
4183
+                {
4184
+                $Points[] = $LastX; $Points[] = $LastY;
4185
+                $Points[] = $LastX; $Points[] = $Y;
4186
+                $Points[] = $YZero; $Points[] = $Y;
4187
+                $this->drawPolygon($Points,$Color);
4188
+                $Points = "";
4189
+                }
4190 4190
 
4191
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
4192
-              {
4193
-               if ( $Points == "") { $Points[] = $YZero; $Points[] = $LastY; }
4194
-               $Points[] = $LastX; $Points[] = $LastY;
4195
-               $Points[] = $LastX; $Points[] = $Y;
4196
-               $Points[] = $X; $Points[] = $Y;
4197
-              }
4191
+                if ( $X != VOID && $LastX != NULL && $LastY != NULL )
4192
+                {
4193
+                if ( $Points == "") { $Points[] = $YZero; $Points[] = $LastY; }
4194
+                $Points[] = $LastX; $Points[] = $LastY;
4195
+                $Points[] = $LastX; $Points[] = $Y;
4196
+                $Points[] = $X; $Points[] = $Y;
4197
+                }
4198 4198
 
4199
-             if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4200
-             if ( $X == VOID ) { $X = NULL; }
4199
+                if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4200
+                if ( $X == VOID ) { $X = NULL; }
4201 4201
 
4202
-             if ( $LastX == NULL && $ReCenter ) { $Y = $Y - $YStep/2; }
4203
-             $LastX = $X; $LastY = $Y;
4204
-             if ( $LastY < $this->GraphAreaY1 + $XMargin ) { $LastY = $this->GraphAreaY1 + $XMargin; }
4205
-             $Y = $Y + $YStep;
4202
+                if ( $LastX == NULL && $ReCenter ) { $Y = $Y - $YStep/2; }
4203
+                $LastX = $X; $LastY = $Y;
4204
+                if ( $LastY < $this->GraphAreaY1 + $XMargin ) { $LastY = $this->GraphAreaY1 + $XMargin; }
4205
+                $Y = $Y + $YStep;
4206 4206
             }
4207 4207
 
4208
-           if ( $ReCenter )
4208
+            if ( $ReCenter )
4209 4209
             {
4210
-             $Points[] = $LastX; $Points[] = $LastY+$YStep/2;
4211
-             $Points[] = $YZero; $Points[] = $LastY+$YStep/2;
4210
+                $Points[] = $LastX; $Points[] = $LastY+$YStep/2;
4211
+                $Points[] = $YZero; $Points[] = $LastY+$YStep/2;
4212 4212
             }
4213
-           else
4213
+            else
4214 4214
             { $Points[] = $YZero; $Points[] = $LastY; }
4215 4215
 
4216
-           $this->drawPolygon($Points,$Color);
4217
-          }
4216
+            $this->drawPolygon($Points,$Color);
4217
+            }
4218
+        }
4218 4219
         }
4219
-      }
4220 4220
     }
4221 4221
 
4222
-   /* Draw an area chart */
4223
-   function drawAreaChart($Format=NULL)
4222
+    /* Draw an area chart */
4223
+    function drawAreaChart($Format=NULL)
4224 4224
     {
4225
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4226
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4227
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4228
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4229
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4230
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4231
-     $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : 25;
4232
-     $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4233
-     $Threshold		= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
4234
-
4235
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4236
-
4237
-     $Data  = $this->DataSet->getData();
4238
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4239
-
4240
-     foreach($Data["Series"] as $SerieName => $Serie)
4241
-      {
4242
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4225
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4226
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4227
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4228
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4229
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4230
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4231
+        $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : 25;
4232
+        $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4233
+        $Threshold		= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
4234
+
4235
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4236
+
4237
+        $Data  = $this->DataSet->getData();
4238
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
4239
+
4240
+        foreach($Data["Series"] as $SerieName => $Serie)
4243 4241
         {
4244
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4245
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4242
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4243
+        {
4244
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4245
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4246 4246
 
4247
-         $AxisID	= $Serie["Axis"];
4248
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
4249
-         $Format	= $Data["Axis"][$AxisID]["Format"];
4250
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
4247
+            $AxisID	= $Serie["Axis"];
4248
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
4249
+            $Format	= $Data["Axis"][$AxisID]["Format"];
4250
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
4251 4251
 
4252
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4253
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4252
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4253
+            $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4254 4254
 
4255
-         if ( $Threshold != NULL )
4256
-          {
4257
-           foreach($Threshold as $Key => $Params)
4255
+            if ( $Threshold != NULL )
4256
+            {
4257
+            foreach($Threshold as $Key => $Params)
4258 4258
             {
4259
-             $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"],array("AxisID"=>$Serie["Axis"]));
4260
-             $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"],array("AxisID"=>$Serie["Axis"]));
4259
+                $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"],array("AxisID"=>$Serie["Axis"]));
4260
+                $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"],array("AxisID"=>$Serie["Axis"]));
4261
+            }
4261 4262
             }
4262
-          }
4263 4263
 
4264
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4264
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4265 4265
 
4266
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4267
-          {
4268
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4266
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4267
+            {
4268
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4269 4269
 
4270
-           $Areas = ""; $AreaID = 0; 
4271
-           $Areas[$AreaID][] = $this->GraphAreaX1 + $XMargin;
4272
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4270
+            $Areas = ""; $AreaID = 0; 
4271
+            $Areas[$AreaID][] = $this->GraphAreaX1 + $XMargin;
4272
+            if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4273 4273
 
4274
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4275
-           $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
4274
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4275
+            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
4276 4276
 
4277
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4278
-           foreach($PosArray as $Key => $Y)
4277
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4278
+            foreach($PosArray as $Key => $Y)
4279 4279
             {
4280
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4281
-              {
4282
-               if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4283
-               $this->drawText($X,$Y-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4284
-              }
4280
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4281
+                {
4282
+                if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4283
+                $this->drawText($X,$Y-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4284
+                }
4285 4285
 
4286
-             if ( $Y == VOID && isset($Areas[$AreaID]) )
4287
-              {
4288
-               if($LastX == NULL)
4286
+                if ( $Y == VOID && isset($Areas[$AreaID]) )
4287
+                {
4288
+                if($LastX == NULL)
4289 4289
                 { $Areas[$AreaID][] = $X; }
4290
-               else
4290
+                else
4291 4291
                 { $Areas[$AreaID][] = $LastX; }
4292 4292
 
4293
-               if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4294
-               $AreaID++;
4295
-              }
4296
-             elseif ($Y != VOID)
4297
-              {
4298
-               if ( !isset($Areas[$AreaID]) )
4293
+                if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4294
+                $AreaID++;
4295
+                }
4296
+                elseif ($Y != VOID)
4297
+                {
4298
+                if ( !isset($Areas[$AreaID]) )
4299 4299
                 {
4300
-                 $Areas[$AreaID][] = $X;
4301
-                 if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4300
+                    $Areas[$AreaID][] = $X;
4301
+                    if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4302 4302
                 }
4303 4303
 
4304
-               $Areas[$AreaID][] = $X;
4305
-               $Areas[$AreaID][] = $Y;
4306
-              }
4304
+                $Areas[$AreaID][] = $X;
4305
+                $Areas[$AreaID][] = $Y;
4306
+                }
4307 4307
 
4308
-             $LastX = $X;
4309
-             $X = $X + $XStep;
4308
+                $LastX = $X;
4309
+                $X = $X + $XStep;
4310 4310
             }
4311
-           $Areas[$AreaID][] = $LastX;
4312
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4311
+            $Areas[$AreaID][] = $LastX;
4312
+            if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4313 4313
 
4314
-           /* Handle shadows in the areas */
4315
-           if ( $this->Shadow )
4314
+            /* Handle shadows in the areas */
4315
+            if ( $this->Shadow )
4316 4316
             {
4317
-             $ShadowArea = "";
4318
-             foreach($Areas as $Key => $Points)
4319
-              {
4320
-               $ShadowArea[$Key] = "";
4321
-               foreach($Points as $Key2 => $Value)
4317
+                $ShadowArea = "";
4318
+                foreach($Areas as $Key => $Points)
4319
+                {
4320
+                $ShadowArea[$Key] = "";
4321
+                foreach($Points as $Key2 => $Value)
4322 4322
                 {
4323
-                 if ( $Key2 % 2 == 0 )
4324
-                  { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4325
-                 else
4326
-                  { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4323
+                    if ( $Key2 % 2 == 0 )
4324
+                    { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4325
+                    else
4326
+                    { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4327 4327
                 }
4328
-              }              
4328
+                }              
4329 4329
 
4330
-             foreach($ShadowArea as $Key => $Points)
4331
-              $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4330
+                foreach($ShadowArea as $Key => $Points)
4331
+                $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4332 4332
             }
4333 4333
 
4334
-           $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4335
-           $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4334
+            $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4335
+            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4336 4336
 
4337
-           foreach($Areas as $Key => $Points)
4337
+            foreach($Areas as $Key => $Points)
4338 4338
             $this->drawPolygonChart($Points,$Color);
4339
-          }
4340
-         else
4341
-          {
4342
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4343
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4339
+            }
4340
+            else
4341
+            {
4342
+            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4343
+            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4344 4344
 
4345
-           $Areas = ""; $AreaID = 0; 
4346
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4347
-           $Areas[$AreaID][] = $this->GraphAreaY1 + $XMargin;
4345
+            $Areas = ""; $AreaID = 0; 
4346
+            if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4347
+            $Areas[$AreaID][] = $this->GraphAreaY1 + $XMargin;
4348 4348
 
4349
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4350
-           $Y     = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4349
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4350
+            $Y     = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4351 4351
 
4352
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4353
-           foreach($PosArray as $Key => $X)
4352
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4353
+            foreach($PosArray as $Key => $X)
4354 4354
             {
4355
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4356
-              {
4357
-               if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4358
-               $this->drawText($X+$Offset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4359
-              }
4355
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4356
+                {
4357
+                if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4358
+                $this->drawText($X+$Offset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4359
+                }
4360 4360
 
4361
-             if ( $X == VOID && isset($Areas[$AreaID]) )
4362
-              {
4363
-               if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4361
+                if ( $X == VOID && isset($Areas[$AreaID]) )
4362
+                {
4363
+                if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4364 4364
 
4365
-               if($LastY == NULL)
4365
+                if($LastY == NULL)
4366 4366
                 { $Areas[$AreaID][] = $Y; }
4367
-               else
4367
+                else
4368 4368
                 { $Areas[$AreaID][] = $LastY; }
4369 4369
 
4370
-               $AreaID++;
4371
-              }
4372
-             elseif ($X != VOID)
4373
-              {
4374
-               if ( !isset($Areas[$AreaID]) )
4370
+                $AreaID++;
4371
+                }
4372
+                elseif ($X != VOID)
4373
+                {
4374
+                if ( !isset($Areas[$AreaID]) )
4375 4375
                 {
4376
-                 if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4377
-                 $Areas[$AreaID][] = $Y;
4376
+                    if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4377
+                    $Areas[$AreaID][] = $Y;
4378 4378
                 }
4379 4379
 
4380
-               $Areas[$AreaID][] = $X;
4381
-               $Areas[$AreaID][] = $Y;
4382
-              }
4380
+                $Areas[$AreaID][] = $X;
4381
+                $Areas[$AreaID][] = $Y;
4382
+                }
4383 4383
 
4384
-             $LastX = $X; $LastY = $Y;
4385
-             $Y = $Y + $YStep;
4384
+                $LastX = $X; $LastY = $Y;
4385
+                $Y = $Y + $YStep;
4386 4386
             }
4387
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4388
-           $Areas[$AreaID][] = $LastY;
4387
+            if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4388
+            $Areas[$AreaID][] = $LastY;
4389 4389
 
4390
-           /* Handle shadows in the areas */
4391
-           if ( $this->Shadow )
4390
+            /* Handle shadows in the areas */
4391
+            if ( $this->Shadow )
4392 4392
             {
4393
-             $ShadowArea = "";
4394
-             foreach($Areas as $Key => $Points)
4395
-              {
4396
-               $ShadowArea[$Key] = "";
4397
-               foreach($Points as $Key2 => $Value)
4393
+                $ShadowArea = "";
4394
+                foreach($Areas as $Key => $Points)
4395
+                {
4396
+                $ShadowArea[$Key] = "";
4397
+                foreach($Points as $Key2 => $Value)
4398 4398
                 {
4399
-                 if ( $Key2 % 2 == 0 )
4400
-                  { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4401
-                 else
4402
-                  { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4399
+                    if ( $Key2 % 2 == 0 )
4400
+                    { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4401
+                    else
4402
+                    { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4403 4403
                 }
4404
-              }              
4404
+                }              
4405 4405
 
4406
-             foreach($ShadowArea as $Key => $Points)
4407
-              $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4406
+                foreach($ShadowArea as $Key => $Points)
4407
+                $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4408 4408
             }
4409 4409
 
4410
-           $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4411
-           $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4410
+            $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4411
+            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4412 4412
 
4413
-           foreach($Areas as $Key => $Points)
4413
+            foreach($Areas as $Key => $Points)
4414 4414
             $this->drawPolygonChart($Points,$Color);
4415
-          }
4415
+            }
4416
+        }
4416 4417
         }
4417
-      }
4418 4418
     }
4419 4419
 
4420 4420
 
4421
-   /* Draw a bar chart */
4422
-   function drawBarChart($Format=NULL)
4421
+    /* Draw a bar chart */
4422
+    function drawBarChart($Format=NULL)
4423 4423
     {
4424
-     $Floating0Serie	= isset($Format["Floating0Serie"]) ? $Format["Floating0Serie"] : NULL;
4425
-     $Floating0Value	= isset($Format["Floating0Value"]) ? $Format["Floating0Value"] : NULL;
4426
-     $Draw0Line		= isset($Format["Draw0Line"]) ? $Format["Draw0Line"] : FALSE;
4427
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4428
-     $DisplayOrientation = isset($Format["DisplayOrientation"]) ? $Format["DisplayOrientation"] : ORIENTATION_HORIZONTAL;
4429
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4430
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4431
-     $DisplayFont	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontName;
4432
-     $DisplaySize	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontSize;
4433
-     $DisplayPos	= isset($Format["DisplayPos"]) ? $Format["DisplayPos"] : LABEL_POS_OUTSIDE;
4434
-     $DisplayShadow	= isset($Format["DisplayShadow"]) ? $Format["DisplayShadow"] : TRUE;
4435
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4436
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4437
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4438
-     $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4439
-     $Interleave	= isset($Format["Interleave"]) ? $Format["Interleave"] : .5;
4440
-     $Rounded		= isset($Format["Rounded"]) ? $Format["Rounded"] : FALSE;
4441
-     $RoundRadius	= isset($Format["RoundRadius"]) ? $Format["RoundRadius"] : 4;
4442
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
4443
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
4444
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
4445
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
4446
-     $Gradient		= isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4447
-     $GradientMode	= isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4448
-     $GradientAlpha	= isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4449
-     $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
4450
-     $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
4451
-     $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
4452
-     $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 0;
4453
-     $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 0;
4454
-     $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 0;
4455
-     $TxtMargin		= isset($Format["TxtMargin"]) ? $Format["TxtMargin"] : 6;
4456
-     $OverrideColors	= isset($Format["OverrideColors"]) ? $Format["OverrideColors"] : NULL;
4457
-     $OverrideSurrounding = isset($Format["OverrideSurrounding"]) ? $Format["OverrideSurrounding"] : 30;
4458
-     $InnerSurrounding	= isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4459
-     $InnerBorderR	= isset($Format["InnerBorderR"]) ? $Format["InnerBorderR"] : -1;
4460
-     $InnerBorderG	= isset($Format["InnerBorderG"]) ? $Format["InnerBorderG"] : -1;
4461
-     $InnerBorderB	= isset($Format["InnerBorderB"]) ? $Format["InnerBorderB"] : -1;
4462
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4463
-
4464
-     $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4465
-
4466
-     $Data = $this->DataSet->getData();
4467
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4468
-
4469
-     if ( $OverrideColors != NULL )
4470
-      {
4471
-       $OverrideColors = $this->validatePalette($OverrideColors,$OverrideSurrounding);
4472
-       $this->DataSet->saveExtendedData("Palette",$OverrideColors);
4473
-      }
4474
-
4475
-     $RestoreShadow = $this->Shadow;
4476
-
4477
-     $SeriesCount  = $this->countDrawableSeries();
4478
-     $CurrentSerie = 0;
4479
-     foreach($Data["Series"] as $SerieName => $Serie)
4480
-      {
4481
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4482
-        {
4483
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4484
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4485
-         if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
4486
-         if ( $InnerSurrounding != NULL ) { $InnerBorderR = $R+$InnerSurrounding; $InnerBorderG = $G+$InnerSurrounding; $InnerBorderB = $B+$InnerSurrounding; }
4487
-         if ( $InnerBorderR == -1 ) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR,"G"=>$InnerBorderG,"B"=>$InnerBorderB); }
4488
-         $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB);
4489
-
4490
-         $AxisID	= $Serie["Axis"];
4491
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
4492
-         $Format	= $Data["Axis"][$AxisID]["Format"];
4493
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
4494
-
4495
-         if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
4496
-
4497
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4498
-
4499
-         if ( $Floating0Value != NULL )
4500
-          { $YZero = $this->scaleComputeY($Floating0Value,array("AxisID"=>$Serie["Axis"])); }
4501
-         else
4502
-          { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
4503
-
4504
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4505
-          {
4506
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4507
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4508
-
4509
-           if ( $XDivs == 0 ) { $XStep = 0; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4510
-           $X = $this->GraphAreaX1 + $XMargin;
4511
-
4512
-           if ( $AroundZero ) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2-1; }
4513
-           if ( $XDivs == 0 ) { $XSize = ($this->GraphAreaX2-$this->GraphAreaX1)/($SeriesCount+$Interleave); } else { $XSize   = ($XStep / ($SeriesCount+$Interleave) ); }
4514
-
4515
-           $XOffset = -($XSize*$SeriesCount)/2 + $CurrentSerie * $XSize;
4516
-           if ( $X + $XOffset <= $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $X + 1 ; }
4517
-
4518
-           $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $XOffset + $XSize / 2;
4519
-
4520
-           if ( $Rounded || $BorderR != -1) { $XSpace = 1; } else { $XSpace = 0; }
4521
-
4522
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4523
-
4524
-           $ID = 0;
4525
-           foreach($PosArray as $Key => $Y2)
4526
-            {
4527
-             if ( $Floating0Serie != NULL )
4528
-              {
4529
-               if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4424
+        $Floating0Serie	= isset($Format["Floating0Serie"]) ? $Format["Floating0Serie"] : NULL;
4425
+        $Floating0Value	= isset($Format["Floating0Value"]) ? $Format["Floating0Value"] : NULL;
4426
+        $Draw0Line		= isset($Format["Draw0Line"]) ? $Format["Draw0Line"] : FALSE;
4427
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4428
+        $DisplayOrientation = isset($Format["DisplayOrientation"]) ? $Format["DisplayOrientation"] : ORIENTATION_HORIZONTAL;
4429
+        $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4430
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4431
+        $DisplayFont	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontName;
4432
+        $DisplaySize	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontSize;
4433
+        $DisplayPos	= isset($Format["DisplayPos"]) ? $Format["DisplayPos"] : LABEL_POS_OUTSIDE;
4434
+        $DisplayShadow	= isset($Format["DisplayShadow"]) ? $Format["DisplayShadow"] : TRUE;
4435
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4436
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4437
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4438
+        $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4439
+        $Interleave	= isset($Format["Interleave"]) ? $Format["Interleave"] : .5;
4440
+        $Rounded		= isset($Format["Rounded"]) ? $Format["Rounded"] : FALSE;
4441
+        $RoundRadius	= isset($Format["RoundRadius"]) ? $Format["RoundRadius"] : 4;
4442
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
4443
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
4444
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
4445
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
4446
+        $Gradient		= isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4447
+        $GradientMode	= isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4448
+        $GradientAlpha	= isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4449
+        $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
4450
+        $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
4451
+        $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
4452
+        $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 0;
4453
+        $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 0;
4454
+        $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 0;
4455
+        $TxtMargin		= isset($Format["TxtMargin"]) ? $Format["TxtMargin"] : 6;
4456
+        $OverrideColors	= isset($Format["OverrideColors"]) ? $Format["OverrideColors"] : NULL;
4457
+        $OverrideSurrounding = isset($Format["OverrideSurrounding"]) ? $Format["OverrideSurrounding"] : 30;
4458
+        $InnerSurrounding	= isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4459
+        $InnerBorderR	= isset($Format["InnerBorderR"]) ? $Format["InnerBorderR"] : -1;
4460
+        $InnerBorderG	= isset($Format["InnerBorderG"]) ? $Format["InnerBorderG"] : -1;
4461
+        $InnerBorderB	= isset($Format["InnerBorderB"]) ? $Format["InnerBorderB"] : -1;
4462
+        $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4463
+
4464
+        $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4465
+
4466
+        $Data = $this->DataSet->getData();
4467
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
4468
+
4469
+        if ( $OverrideColors != NULL )
4470
+        {
4471
+        $OverrideColors = $this->validatePalette($OverrideColors,$OverrideSurrounding);
4472
+        $this->DataSet->saveExtendedData("Palette",$OverrideColors);
4473
+        }
4474
+
4475
+        $RestoreShadow = $this->Shadow;
4476
+
4477
+        $SeriesCount  = $this->countDrawableSeries();
4478
+        $CurrentSerie = 0;
4479
+        foreach($Data["Series"] as $SerieName => $Serie)
4480
+        {
4481
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4482
+        {
4483
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4484
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4485
+            if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
4486
+            if ( $InnerSurrounding != NULL ) { $InnerBorderR = $R+$InnerSurrounding; $InnerBorderG = $G+$InnerSurrounding; $InnerBorderB = $B+$InnerSurrounding; }
4487
+            if ( $InnerBorderR == -1 ) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR,"G"=>$InnerBorderG,"B"=>$InnerBorderB); }
4488
+            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB);
4489
+
4490
+            $AxisID	= $Serie["Axis"];
4491
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
4492
+            $Format	= $Data["Axis"][$AxisID]["Format"];
4493
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
4494
+
4495
+            if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
4496
+
4497
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4498
+
4499
+            if ( $Floating0Value != NULL )
4500
+            { $YZero = $this->scaleComputeY($Floating0Value,array("AxisID"=>$Serie["Axis"])); }
4501
+            else
4502
+            { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
4503
+
4504
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4505
+            {
4506
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4507
+            if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4508
+
4509
+            if ( $XDivs == 0 ) { $XStep = 0; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4510
+            $X = $this->GraphAreaX1 + $XMargin;
4511
+
4512
+            if ( $AroundZero ) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2-1; }
4513
+            if ( $XDivs == 0 ) { $XSize = ($this->GraphAreaX2-$this->GraphAreaX1)/($SeriesCount+$Interleave); } else { $XSize   = ($XStep / ($SeriesCount+$Interleave) ); }
4514
+
4515
+            $XOffset = -($XSize*$SeriesCount)/2 + $CurrentSerie * $XSize;
4516
+            if ( $X + $XOffset <= $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $X + 1 ; }
4517
+
4518
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $XOffset + $XSize / 2;
4519
+
4520
+            if ( $Rounded || $BorderR != -1) { $XSpace = 1; } else { $XSpace = 0; }
4521
+
4522
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4523
+
4524
+            $ID = 0;
4525
+            foreach($PosArray as $Key => $Y2)
4526
+            {
4527
+                if ( $Floating0Serie != NULL )
4528
+                {
4529
+                if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4530 4530
                 { $Value = $Data["Series"][$Floating0Serie]["Data"][$Key]; }
4531
-               else
4531
+                else
4532 4532
                 { $Value = 0; }
4533 4533
 
4534
-               $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4535
-               if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4536
-               if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4534
+                $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4535
+                if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4536
+                if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4537 4537
 
4538
-               if ( $AroundZero ) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2-1; }
4539
-              }
4538
+                if ( $AroundZero ) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2-1; }
4539
+                }
4540 4540
 
4541
-             if ( $OverrideColors != NULL )
4542
-              { if ( isset($OverrideColors[$ID]) ) { $Color = array("R"=>$OverrideColors[$ID]["R"],"G"=>$OverrideColors[$ID]["G"],"B"=>$OverrideColors[$ID]["B"],"Alpha"=>$OverrideColors[$ID]["Alpha"],"BorderR"=>$OverrideColors[$ID]["BorderR"],"BorderG"=>$OverrideColors[$ID]["BorderG"],"BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4541
+                if ( $OverrideColors != NULL )
4542
+                { if ( isset($OverrideColors[$ID]) ) { $Color = array("R"=>$OverrideColors[$ID]["R"],"G"=>$OverrideColors[$ID]["G"],"B"=>$OverrideColors[$ID]["B"],"Alpha"=>$OverrideColors[$ID]["Alpha"],"BorderR"=>$OverrideColors[$ID]["BorderR"],"BorderG"=>$OverrideColors[$ID]["BorderG"],"BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4543 4543
 
4544
-             if ( $Y2 != VOID )
4545
-              {
4546
-               $BarHeight = $Y1 - $Y2;
4544
+                if ( $Y2 != VOID )
4545
+                {
4546
+                $BarHeight = $Y1 - $Y2;
4547 4547
 
4548
-               if ( $Serie["Data"][$Key] == 0 )
4548
+                if ( $Serie["Data"][$Key] == 0 )
4549 4549
                 {
4550
-                 $this->drawLine($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y1,$Color);
4551
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1-1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y1+1),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4550
+                    $this->drawLine($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y1,$Color);
4551
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1-1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y1+1),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4552 4552
                 }
4553
-               else
4553
+                else
4554 4554
                 {
4555
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4555
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4556 4556
 
4557
-                 if ( $Rounded )
4558
-                  $this->drawRoundedFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$RoundRadius,$Color);
4559
-                 else
4560
-                  {
4561
-                   $this->drawFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$Color);
4557
+                    if ( $Rounded )
4558
+                    $this->drawRoundedFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$RoundRadius,$Color);
4559
+                    else
4560
+                    {
4561
+                    $this->drawFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$Color);
4562 4562
 
4563
-                   if ( $InnerColor != NULL ) { $this->drawRectangle($X+$XOffset+$XSpace+1,min($Y1,$Y2)+1,$X+$XOffset+$XSize-$XSpace-1,max($Y1,$Y2)-1,$InnerColor); }
4563
+                    if ( $InnerColor != NULL ) { $this->drawRectangle($X+$XOffset+$XSpace+1,min($Y1,$Y2)+1,$X+$XOffset+$XSize-$XSpace-1,max($Y1,$Y2)-1,$InnerColor); }
4564 4564
 
4565
-                   if ( $Gradient )
4565
+                    if ( $Gradient )
4566 4566
                     {
4567
-                     $this->Shadow  = FALSE;
4567
+                        $this->Shadow  = FALSE;
4568 4568
 
4569
-                     if ( $GradientMode == GRADIENT_SIMPLE )
4570
-                      {
4571
-                       if ( $Serie["Data"][$Key] >= 0 )
4569
+                        if ( $GradientMode == GRADIENT_SIMPLE )
4570
+                        {
4571
+                        if ( $Serie["Data"][$Key] >= 0 )
4572 4572
                         $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4573
-                       else
4573
+                        else
4574 4574
                         $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4575 4575
 
4576
-                       $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_VERTICAL,$GradienColor);
4577
-                      }
4578
-                     elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4579
-                      {
4580
-                       $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4581
-                       $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4582
-                       $XSpan = floor($XSize / 3);
4583
-
4584
-                       $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSpan-$XSpace,$Y2,DIRECTION_HORIZONTAL,$GradienColor1);
4585
-                       $this->drawGradientArea($X+$XOffset+$XSpan+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_HORIZONTAL,$GradienColor2);
4586
-                      }
4587
-                     $this->Shadow = $RestoreShadow;
4576
+                        $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_VERTICAL,$GradienColor);
4577
+                        }
4578
+                        elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4579
+                        {
4580
+                        $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4581
+                        $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4582
+                        $XSpan = floor($XSize / 3);
4583
+
4584
+                        $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSpan-$XSpace,$Y2,DIRECTION_HORIZONTAL,$GradienColor1);
4585
+                        $this->drawGradientArea($X+$XOffset+$XSpan+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_HORIZONTAL,$GradienColor2);
4586
+                        }
4587
+                        $this->Shadow = $RestoreShadow;
4588
+                    }
4588 4589
                     }
4589
-                  }
4590 4590
 
4591
-                 if ( $Draw0Line )
4592
-                  {
4593
-                   $Line0Color = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20);
4591
+                    if ( $Draw0Line )
4592
+                    {
4593
+                    $Line0Color = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20);
4594 4594
 
4595
-                   if ( abs($Y1 - $Y2) > 3 ) { $Line0Width = 3; } else { $Line0Width = 1; }
4596
-                   if ( $Y1 - $Y2 < 0 ) { $Line0Width = -$Line0Width; }
4595
+                    if ( abs($Y1 - $Y2) > 3 ) { $Line0Width = 3; } else { $Line0Width = 1; }
4596
+                    if ( $Y1 - $Y2 < 0 ) { $Line0Width = -$Line0Width; }
4597 4597
 
4598
-                   $this->drawFilledRectangle($X+$XOffset+$XSpace,floor($Y1),$X+$XOffset+$XSize-$XSpace,floor($Y1)-$Line0Width,$Line0Color);
4599
-                   $this->drawLine($X+$XOffset+$XSpace,floor($Y1),$X+$XOffset+$XSize-$XSpace,floor($Y1),$Line0Color);
4600
-                  }
4598
+                    $this->drawFilledRectangle($X+$XOffset+$XSpace,floor($Y1),$X+$XOffset+$XSize-$XSpace,floor($Y1)-$Line0Width,$Line0Color);
4599
+                    $this->drawLine($X+$XOffset+$XSpace,floor($Y1),$X+$XOffset+$XSize-$XSpace,floor($Y1),$Line0Color);
4600
+                    }
4601 4601
                 }
4602 4602
 
4603
-               if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4603
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4604 4604
                 {
4605
-                 if ( $DisplayShadow ) { $this->Shadow = TRUE; }
4606
-
4607
-                 $Caption    = $this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit);
4608
-                 $TxtPos     = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,90,$Caption);
4609
-                 $TxtHeight  = $TxtPos[0]["Y"] - $TxtPos[1]["Y"] + $TxtMargin;
4610
-
4611
-                 if ( $DisplayPos == LABEL_POS_INSIDE && abs($TxtHeight) < abs($BarHeight) )
4612
-                  {
4613
-                   $CenterX = (($X+$XOffset+$XSize-$XSpace)-($X+$XOffset+$XSpace))/2 + $X+$XOffset+$XSpace;
4614
-                   $CenterY = ($Y2-$Y1)/2 + $Y1;
4615
-
4616
-                   $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"Angle"=>90));
4617
-                  }
4618
-                 else
4619
-                  {
4620
-                   if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4621
-                   $this->drawText($X+$XOffset+$XSize/2,$Y2-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
4622
-                  }
4623
-
4624
-                 $this->Shadow = $RestoreShadow;
4605
+                    if ( $DisplayShadow ) { $this->Shadow = TRUE; }
4606
+
4607
+                    $Caption    = $this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit);
4608
+                    $TxtPos     = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,90,$Caption);
4609
+                    $TxtHeight  = $TxtPos[0]["Y"] - $TxtPos[1]["Y"] + $TxtMargin;
4610
+
4611
+                    if ( $DisplayPos == LABEL_POS_INSIDE && abs($TxtHeight) < abs($BarHeight) )
4612
+                    {
4613
+                    $CenterX = (($X+$XOffset+$XSize-$XSpace)-($X+$XOffset+$XSpace))/2 + $X+$XOffset+$XSpace;
4614
+                    $CenterY = ($Y2-$Y1)/2 + $Y1;
4615
+
4616
+                    $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"Angle"=>90));
4617
+                    }
4618
+                    else
4619
+                    {
4620
+                    if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4621
+                    $this->drawText($X+$XOffset+$XSize/2,$Y2-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
4622
+                    }
4623
+
4624
+                    $this->Shadow = $RestoreShadow;
4625
+                }
4625 4626
                 }
4626
-              }
4627 4627
 
4628
-             $X = $X + $XStep;
4629
-             $ID++;
4628
+                $X = $X + $XStep;
4629
+                $ID++;
4630
+            }
4630 4631
             }
4631
-          }
4632
-         else
4633
-          {
4634
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4635
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4632
+            else
4633
+            {
4634
+            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4635
+            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4636 4636
 
4637
-           if ( $XDivs == 0 ) { $YStep = 0; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4637
+            if ( $XDivs == 0 ) { $YStep = 0; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4638 4638
            
4639
-           $Y = $this->GraphAreaY1 + $XMargin;
4639
+            $Y = $this->GraphAreaY1 + $XMargin;
4640 4640
 
4641
-           if ( $AroundZero ) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1+1; }
4642
-           if ( $XDivs == 0 ) { $YSize = ($this->GraphAreaY2-$this->GraphAreaY1)/($SeriesCount+$Interleave); } else { $YSize   = ($YStep / ($SeriesCount+$Interleave) ); }
4641
+            if ( $AroundZero ) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1+1; }
4642
+            if ( $XDivs == 0 ) { $YSize = ($this->GraphAreaY2-$this->GraphAreaY1)/($SeriesCount+$Interleave); } else { $YSize   = ($YStep / ($SeriesCount+$Interleave) ); }
4643 4643
            
4644
-           $YOffset = -($YSize*$SeriesCount)/2 + $CurrentSerie * $YSize;
4645
-           if ( $Y + $YOffset <= $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $Y + 1 ; }
4644
+            $YOffset = -($YSize*$SeriesCount)/2 + $CurrentSerie * $YSize;
4645
+            if ( $Y + $YOffset <= $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $Y + 1 ; }
4646 4646
 
4647
-           $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $YOffset + $YSize / 2;
4647
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $YOffset + $YSize / 2;
4648 4648
 
4649
-           if ( $Rounded || $BorderR != -1 ) { $YSpace = 1; } else { $YSpace = 0; }
4649
+            if ( $Rounded || $BorderR != -1 ) { $YSpace = 1; } else { $YSpace = 0; }
4650 4650
 
4651
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4651
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4652 4652
 
4653
-           $ID = 0 ;
4654
-           foreach($PosArray as $Key => $X2)
4653
+            $ID = 0 ;
4654
+            foreach($PosArray as $Key => $X2)
4655 4655
             {
4656
-             if ( $Floating0Serie != NULL )
4657
-              {
4658
-               if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4656
+                if ( $Floating0Serie != NULL )
4657
+                {
4658
+                if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4659 4659
                 $Value = $Data["Series"][$Floating0Serie]["Data"][$Key];
4660
-               else { $Value = 0; }
4660
+                else { $Value = 0; }
4661
+
4662
+                $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4663
+                if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4664
+                if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4665
+                if ( $AroundZero ) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1+1; }
4666
+                }
4667
+
4668
+                if ( $OverrideColors != NULL )
4669
+                { if ( isset($OverrideColors[$ID]) ) { $Color = array("R"=>$OverrideColors[$ID]["R"],"G"=>$OverrideColors[$ID]["G"],"B"=>$OverrideColors[$ID]["B"],"Alpha"=>$OverrideColors[$ID]["Alpha"],"BorderR"=>$OverrideColors[$ID]["BorderR"],"BorderG"=>$OverrideColors[$ID]["BorderG"],"BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4670
+
4671
+                if ( $X2 != VOID )
4672
+                {
4673
+                $BarWidth = $X2 - $X1;
4674
+
4675
+                if ( $Serie["Data"][$Key] == 0 )
4676
+                {
4677
+                    $this->drawLine($X1,$Y+$YOffset+$YSpace,$X1,$Y+$YOffset+$YSize-$YSpace,$Color);
4678
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1-1).",".floor($Y+$YOffset+$YSpace).",".floor($X1+1).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4679
+                }
4680
+                else
4681
+                {
4682
+                    if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1).",".floor($Y+$YOffset+$YSpace).",".floor($X2).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4683
+
4684
+                    if ( $Rounded )
4685
+                    $this->drawRoundedFilledRectangle($X1+1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$RoundRadius,$Color);
4686
+                    else
4687
+                    {
4688
+                    $this->drawFilledRectangle($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$Color);
4689
+
4690
+                    if ( $InnerColor != NULL ) { $this->drawRectangle(min($X1,$X2)+1,$Y+$YOffset+$YSpace+1,max($X1,$X2)-1,$Y+$YOffset+$YSize-$YSpace-1,$InnerColor); }
4691
+
4692
+                    if ( $Gradient )
4693
+                    {
4694
+                        $this->Shadow  = FALSE;
4695
+
4696
+                        if ( $GradientMode == GRADIENT_SIMPLE )
4697
+                        {
4698
+                        if ( $Serie["Data"][$Key] >= 0 )
4699
+                        $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4700
+                        else
4701
+                        $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4702
+
4703
+                        $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_HORIZONTAL,$GradienColor);
4704
+                        }
4705
+                        elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4706
+                        {
4707
+                        $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4708
+                        $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4709
+                        $YSpan = floor($YSize / 3);
4710
+
4711
+                        $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSpan-$YSpace,DIRECTION_VERTICAL,$GradienColor1);
4712
+                        $this->drawGradientArea($X1,$Y+$YOffset+$YSpan,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_VERTICAL,$GradienColor2);
4713
+                        }
4714
+                        $this->Shadow = $RestoreShadow;
4715
+                    }
4716
+                    }
4717
+
4718
+                    if ( $Draw0Line )
4719
+                    {
4720
+                    $Line0Color = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20);
4721
+
4722
+                    if ( abs($X1 - $X2) > 3 ) { $Line0Width = 3; } else { $Line0Width = 1; }
4723
+                    if ( $X2 - $X1 < 0 ) { $Line0Width = -$Line0Width; }
4724
+
4725
+                    $this->drawFilledRectangle(floor($X1),$Y+$YOffset+$YSpace,floor($X1)+$Line0Width,$Y+$YOffset+$YSize-$YSpace,$Line0Color);
4726
+                    $this->drawLine(floor($X1),$Y+$YOffset+$YSpace,floor($X1),$Y+$YOffset+$YSize-$YSpace,$Line0Color);
4727
+                    }
4728
+                }
4729
+
4730
+                if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
4731
+                {
4732
+                    if ( $DisplayShadow ) { $this->Shadow = TRUE; }
4733
+
4734
+                    $Caption   = $this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit);
4735
+                    $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4736
+                    $TxtWidth  = $TxtPos[1]["X"] - $TxtPos[0]["X"] + $TxtMargin;
4737
+
4738
+                    if ( $DisplayPos == LABEL_POS_INSIDE && abs($TxtWidth) < abs($BarWidth) )
4739
+                    {
4740
+                    $CenterX = ($X2-$X1)/2 + $X1;
4741
+                    $CenterY = (($Y+$YOffset+$YSize-$YSpace)-($Y+$YOffset+$YSpace))/2 + ($Y+$YOffset+$YSpace);
4742
+
4743
+                    $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize));
4744
+                    }
4745
+                    else
4746
+                    {
4747
+                    if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4748
+                    $this->drawText($X2+$Offset,$Y+$YOffset+$YSize/2,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
4749
+                    }
4750
+
4751
+                    $this->Shadow = $RestoreShadow;
4752
+                }
4753
+                }
4754
+                $Y = $Y + $YStep;
4755
+                $ID++;
4756
+            }
4757
+            }
4758
+            $CurrentSerie++;
4759
+        }
4760
+        }
4761
+    }
4762
+
4763
+    /* Draw a bar chart */
4764
+    function drawStackedBarChart($Format=NULL)
4765
+    {
4766
+        $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4767
+        $DisplayOrientation = isset($Format["DisplayOrientation"]) ? $Format["DisplayOrientation"] : ORIENTATION_AUTO;
4768
+        $DisplayRound      = isset($Format["DisplayRound"]) ? $Format["DisplayRound"] : 0;
4769
+        $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4770
+        $DisplayFont	= isset($Format["DisplayFont"]) ? $Format["DisplayFont"] : $this->FontName;
4771
+        $DisplaySize	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontSize;
4772
+        $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4773
+        $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4774
+        $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4775
+        $Interleave	= isset($Format["Interleave"]) ? $Format["Interleave"] : .5;
4776
+        $Rounded		= isset($Format["Rounded"]) ? $Format["Rounded"] : FALSE;
4777
+        $RoundRadius	= isset($Format["RoundRadius"]) ? $Format["RoundRadius"] : 4;
4778
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
4779
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
4780
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
4781
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
4782
+        $Gradient		= isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4783
+        $GradientMode	= isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4784
+        $GradientAlpha	= isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4785
+        $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
4786
+        $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
4787
+        $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
4788
+        $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 0;
4789
+        $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 0;
4790
+        $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 0;
4791
+        $InnerSurrounding	= isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4792
+        $InnerBorderR	= isset($Format["InnerBorderR"]) ? $Format["InnerBorderR"] : -1;
4793
+        $InnerBorderG	= isset($Format["InnerBorderG"]) ? $Format["InnerBorderG"] : -1;
4794
+        $InnerBorderB	= isset($Format["InnerBorderB"]) ? $Format["InnerBorderB"] : -1;
4795
+        $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4796
+        $FontFactor	= isset($Format["FontFactor"]) ? $Format["FontFactor"] : 8;
4797
+
4798
+        $this->LastChartLayout = CHART_LAST_LAYOUT_STACKED;
4799
+
4800
+        $Data = $this->DataSet->getData();
4801
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
4802
+
4803
+        $RestoreShadow = $this->Shadow;
4804
+
4805
+        $LastX = ""; $LastY = "";
4806
+        foreach($Data["Series"] as $SerieName => $Serie)
4807
+        {
4808
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4809
+        {
4810
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4811
+            if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = 255; $DisplayG = 255; $DisplayB = 255; }
4812
+            if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
4813
+            if ( $InnerSurrounding != NULL ) { $InnerBorderR = $R+$InnerSurrounding; $InnerBorderG = $G+$InnerSurrounding; $InnerBorderB = $B+$InnerSurrounding; }
4814
+            if ( $InnerBorderR == -1 ) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR,"G"=>$InnerBorderG,"B"=>$InnerBorderB); }
4661 4815
 
4662
-               $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4663
-               if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4664
-               if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4665
-               if ( $AroundZero ) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1+1; }
4666
-              }
4816
+            $AxisID	= $Serie["Axis"];
4817
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
4818
+            $Format	= $Data["Axis"][$AxisID]["Format"];
4819
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
4667 4820
 
4668
-             if ( $OverrideColors != NULL )
4669
-              { if ( isset($OverrideColors[$ID]) ) { $Color = array("R"=>$OverrideColors[$ID]["R"],"G"=>$OverrideColors[$ID]["G"],"B"=>$OverrideColors[$ID]["B"],"Alpha"=>$OverrideColors[$ID]["Alpha"],"BorderR"=>$OverrideColors[$ID]["BorderR"],"BorderG"=>$OverrideColors[$ID]["BorderG"],"BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4821
+            if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
4670 4822
 
4671
-             if ( $X2 != VOID )
4672
-              {
4673
-               $BarWidth = $X2 - $X1;
4823
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]),TRUE);
4824
+            $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4674 4825
 
4675
-               if ( $Serie["Data"][$Key] == 0 )
4676
-                {
4677
-                 $this->drawLine($X1,$Y+$YOffset+$YSpace,$X1,$Y+$YOffset+$YSize-$YSpace,$Color);
4678
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1-1).",".floor($Y+$YOffset+$YSpace).",".floor($X1+1).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4679
-                }
4680
-               else
4681
-                {
4682
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1).",".floor($Y+$YOffset+$YSpace).",".floor($X2).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4826
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4683 4827
 
4684
-                 if ( $Rounded )
4685
-                  $this->drawRoundedFilledRectangle($X1+1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$RoundRadius,$Color);
4686
-                 else
4687
-                  {
4688
-                   $this->drawFilledRectangle($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$Color);
4828
+            $Color = array("TransCorner"=>TRUE,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB);
4689 4829
 
4690
-                   if ( $InnerColor != NULL ) { $this->drawRectangle(min($X1,$X2)+1,$Y+$YOffset+$YSpace+1,max($X1,$X2)-1,$Y+$YOffset+$YSize-$YSpace-1,$InnerColor); }
4830
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4831
+            {
4832
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4833
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4691 4834
 
4692
-                   if ( $Gradient )
4693
-                    {
4694
-                     $this->Shadow  = FALSE;
4835
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4836
+            $X     = $this->GraphAreaX1 + $XMargin;
4695 4837
 
4696
-                     if ( $GradientMode == GRADIENT_SIMPLE )
4697
-                      {
4698
-                       if ( $Serie["Data"][$Key] >= 0 )
4699
-                        $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4700
-                       else
4701
-                        $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4838
+            $XSize   = ($XStep / (1+$Interleave) );
4839
+            $XOffset = -($XSize/2);
4702 4840
 
4703
-                       $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_HORIZONTAL,$GradienColor);
4704
-                      }
4705
-                     elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4706
-                      {
4707
-                       $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4708
-                       $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4709
-                       $YSpan = floor($YSize / 3);
4710
-
4711
-                       $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSpan-$YSpace,DIRECTION_VERTICAL,$GradienColor1);
4712
-                       $this->drawGradientArea($X1,$Y+$YOffset+$YSpan,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_VERTICAL,$GradienColor2);
4713
-                      }
4714
-                     $this->Shadow = $RestoreShadow;
4715
-                    }
4716
-                  }
4841
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4842
+            foreach($PosArray as $Key => $Height)
4843
+            {
4844
+                if ( $Height != VOID && $Serie["Data"][$Key] != 0 )
4845
+                {
4846
+                if ( $Serie["Data"][$Key] > 0 ) { $Pos = "+"; } else { $Pos = "-"; }
4717 4847
 
4718
-                 if ( $Draw0Line )
4719
-                  {
4720
-                   $Line0Color = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20);
4848
+                if ( !isset($LastY[$Key] ) ) { $LastY[$Key] = ""; }
4849
+                if ( !isset($LastY[$Key][$Pos] ) ) { $LastY[$Key][$Pos] = $YZero; }
4721 4850
 
4722
-                   if ( abs($X1 - $X2) > 3 ) { $Line0Width = 3; } else { $Line0Width = 1; }
4723
-                   if ( $X2 - $X1 < 0 ) { $Line0Width = -$Line0Width; }
4851
+                $Y1 = $LastY[$Key][$Pos];
4852
+                $Y2 = $Y1 - $Height;
4724 4853
 
4725
-                   $this->drawFilledRectangle(floor($X1),$Y+$YOffset+$YSpace,floor($X1)+$Line0Width,$Y+$YOffset+$YSize-$YSpace,$Line0Color);
4726
-                   $this->drawLine(floor($X1),$Y+$YOffset+$YSpace,floor($X1),$Y+$YOffset+$YSize-$YSpace,$Line0Color);
4727
-                  }
4728
-                }
4854
+                if ( ($Rounded || $BorderR != -1) && ($Pos == "+" && $Y1 != $YZero) ) { $YSpaceUp = 1; } else { $YSpaceUp = 0; }
4855
+                if ( ($Rounded || $BorderR != -1) && ($Pos == "-" && $Y1 != $YZero) ) { $YSpaceDown = 1; } else { $YSpaceDown = 0; }
4729 4856
 
4730
-               if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
4731
-                {
4732
-                 if ( $DisplayShadow ) { $this->Shadow = TRUE; }
4733
-
4734
-                 $Caption   = $this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit);
4735
-                 $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4736
-                 $TxtWidth  = $TxtPos[1]["X"] - $TxtPos[0]["X"] + $TxtMargin;
4737
-
4738
-                 if ( $DisplayPos == LABEL_POS_INSIDE && abs($TxtWidth) < abs($BarWidth) )
4739
-                  {
4740
-                   $CenterX = ($X2-$X1)/2 + $X1;
4741
-                   $CenterY = (($Y+$YOffset+$YSize-$YSpace)-($Y+$YOffset+$YSpace))/2 + ($Y+$YOffset+$YSpace);
4742
-
4743
-                   $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize));
4744
-                  }
4745
-                 else
4746
-                  {
4747
-                   if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4748
-                   $this->drawText($X2+$Offset,$Y+$YOffset+$YSize/2,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
4749
-                  }
4750
-
4751
-                 $this->Shadow = $RestoreShadow;
4752
-                }
4753
-              }
4754
-             $Y = $Y + $YStep;
4755
-             $ID++;
4756
-            }
4757
-          }
4758
-         $CurrentSerie++;
4759
-        }
4760
-      }
4761
-    }
4857
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset).",".floor($Y1-$YSpaceUp+$YSpaceDown).",".floor($X+$XOffset+$XSize).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4762 4858
 
4763
-   /* Draw a bar chart */
4764
-   function drawStackedBarChart($Format=NULL)
4765
-    {
4766
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4767
-     $DisplayOrientation = isset($Format["DisplayOrientation"]) ? $Format["DisplayOrientation"] : ORIENTATION_AUTO;
4768
-     $DisplayRound      = isset($Format["DisplayRound"]) ? $Format["DisplayRound"] : 0;
4769
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4770
-     $DisplayFont	= isset($Format["DisplayFont"]) ? $Format["DisplayFont"] : $this->FontName;
4771
-     $DisplaySize	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontSize;
4772
-     $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4773
-     $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4774
-     $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4775
-     $Interleave	= isset($Format["Interleave"]) ? $Format["Interleave"] : .5;
4776
-     $Rounded		= isset($Format["Rounded"]) ? $Format["Rounded"] : FALSE;
4777
-     $RoundRadius	= isset($Format["RoundRadius"]) ? $Format["RoundRadius"] : 4;
4778
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
4779
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
4780
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
4781
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
4782
-     $Gradient		= isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4783
-     $GradientMode	= isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4784
-     $GradientAlpha	= isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4785
-     $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
4786
-     $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
4787
-     $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
4788
-     $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 0;
4789
-     $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 0;
4790
-     $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 0;
4791
-     $InnerSurrounding	= isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4792
-     $InnerBorderR	= isset($Format["InnerBorderR"]) ? $Format["InnerBorderR"] : -1;
4793
-     $InnerBorderG	= isset($Format["InnerBorderG"]) ? $Format["InnerBorderG"] : -1;
4794
-     $InnerBorderB	= isset($Format["InnerBorderB"]) ? $Format["InnerBorderB"] : -1;
4795
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4796
-     $FontFactor	= isset($Format["FontFactor"]) ? $Format["FontFactor"] : 8;
4797
-
4798
-     $this->LastChartLayout = CHART_LAST_LAYOUT_STACKED;
4799
-
4800
-     $Data = $this->DataSet->getData();
4801
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4802
-
4803
-     $RestoreShadow = $this->Shadow;
4804
-
4805
-     $LastX = ""; $LastY = "";
4806
-     foreach($Data["Series"] as $SerieName => $Serie)
4807
-      {
4808
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4809
-        {
4810
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4811
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = 255; $DisplayG = 255; $DisplayB = 255; }
4812
-         if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
4813
-         if ( $InnerSurrounding != NULL ) { $InnerBorderR = $R+$InnerSurrounding; $InnerBorderG = $G+$InnerSurrounding; $InnerBorderB = $B+$InnerSurrounding; }
4814
-         if ( $InnerBorderR == -1 ) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR,"G"=>$InnerBorderG,"B"=>$InnerBorderB); }
4815
-
4816
-         $AxisID	= $Serie["Axis"];
4817
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
4818
-         $Format	= $Data["Axis"][$AxisID]["Format"];
4819
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
4820
-
4821
-         if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
4822
-
4823
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]),TRUE);
4824
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4825
-
4826
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4827
-
4828
-         $Color = array("TransCorner"=>TRUE,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB);
4829
-
4830
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4831
-          {
4832
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4833
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4834
-
4835
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4836
-           $X     = $this->GraphAreaX1 + $XMargin;
4837
-
4838
-           $XSize   = ($XStep / (1+$Interleave) );
4839
-           $XOffset = -($XSize/2);
4840
-
4841
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4842
-           foreach($PosArray as $Key => $Height)
4843
-            {
4844
-             if ( $Height != VOID && $Serie["Data"][$Key] != 0 )
4845
-              {
4846
-               if ( $Serie["Data"][$Key] > 0 ) { $Pos = "+"; } else { $Pos = "-"; }
4847
-
4848
-               if ( !isset($LastY[$Key] ) ) { $LastY[$Key] = ""; }
4849
-               if ( !isset($LastY[$Key][$Pos] ) ) { $LastY[$Key][$Pos] = $YZero; }
4850
-
4851
-               $Y1 = $LastY[$Key][$Pos];
4852
-               $Y2 = $Y1 - $Height;
4853
-
4854
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "+" && $Y1 != $YZero) ) { $YSpaceUp = 1; } else { $YSpaceUp = 0; }
4855
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "-" && $Y1 != $YZero) ) { $YSpaceDown = 1; } else { $YSpaceDown = 0; }
4856
-
4857
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset).",".floor($Y1-$YSpaceUp+$YSpaceDown).",".floor($X+$XOffset+$XSize).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4858
-
4859
-               if ( $Rounded )
4859
+                if ( $Rounded )
4860 4860
                 $this->drawRoundedFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$RoundRadius,$Color);
4861
-               else
4861
+                else
4862 4862
                 {
4863
-                 $this->drawFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$Color);
4863
+                    $this->drawFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$Color);
4864 4864
 
4865
-                 if ( $InnerColor != NULL ) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X+$XOffset+1,$X+$XOffset+$XSize),min($Y1-$YSpaceUp+$YSpaceDown,$Y2)+1,max($X+$XOffset+1,$X+$XOffset+$XSize)-1,max($Y1-$YSpaceUp+$YSpaceDown,$Y2)-1,$InnerColor); $this->Shadow = $RestoreShadow;}
4865
+                    if ( $InnerColor != NULL ) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X+$XOffset+1,$X+$XOffset+$XSize),min($Y1-$YSpaceUp+$YSpaceDown,$Y2)+1,max($X+$XOffset+1,$X+$XOffset+$XSize)-1,max($Y1-$YSpaceUp+$YSpaceDown,$Y2)-1,$InnerColor); $this->Shadow = $RestoreShadow;}
4866 4866
 
4867
-                 if ( $Gradient )
4868
-                  {
4869
-                   $this->Shadow  = FALSE;
4867
+                    if ( $Gradient )
4868
+                    {
4869
+                    $this->Shadow  = FALSE;
4870 4870
 
4871
-                   if ( $GradientMode == GRADIENT_SIMPLE )
4871
+                    if ( $GradientMode == GRADIENT_SIMPLE )
4872 4872
                     {
4873
-                     $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4874
-                     $this->drawGradientArea($X+$XOffset,$Y1-1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+1,DIRECTION_VERTICAL,$GradientColor);
4873
+                        $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4874
+                        $this->drawGradientArea($X+$XOffset,$Y1-1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+1,DIRECTION_VERTICAL,$GradientColor);
4875 4875
                     }
4876
-                   elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4876
+                    elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4877 4877
                     {
4878
-                     $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4879
-                     $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4880
-                     $XSpan = floor($XSize / 3);
4878
+                        $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4879
+                        $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4880
+                        $XSpan = floor($XSize / 3);
4881 4881
 
4882
-                     $this->drawGradientArea($X+$XOffset-.5,$Y1-.5-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSpan,$Y2+.5,DIRECTION_HORIZONTAL,$GradientColor1);
4883
-                     $this->drawGradientArea($X+$XSpan+$XOffset-.5,$Y1-.5-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+.5,DIRECTION_HORIZONTAL,$GradientColor2);
4882
+                        $this->drawGradientArea($X+$XOffset-.5,$Y1-.5-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSpan,$Y2+.5,DIRECTION_HORIZONTAL,$GradientColor1);
4883
+                        $this->drawGradientArea($X+$XSpan+$XOffset-.5,$Y1-.5-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+.5,DIRECTION_HORIZONTAL,$GradientColor2);
4884
+                    }
4885
+                    $this->Shadow = $RestoreShadow;
4884 4886
                     }
4885
-                   $this->Shadow = $RestoreShadow;
4886
-                  }
4887 4887
                 }
4888 4888
 
4889
-               if ( $DisplayValues )
4889
+                if ( $DisplayValues )
4890 4890
                 {
4891
-                 $BarHeight = abs($Y2-$Y1)-2;
4892
-                 $BarWidth  = $XSize+($XOffset/2)-$FontFactor;
4891
+                    $BarHeight = abs($Y2-$Y1)-2;
4892
+                    $BarWidth  = $XSize+($XOffset/2)-$FontFactor;
4893 4893
 
4894
-                 $Caption   = $this->scaleFormat(round($Serie["Data"][$Key],$DisplayRound),$Mode,$Format,$Unit);
4895
-                 $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4896
-                 $TxtHeight = abs($TxtPos[2]["Y"] - $TxtPos[0]["Y"]);
4897
-                 $TxtWidth  = abs($TxtPos[1]["X"] - $TxtPos[0]["X"]);
4894
+                    $Caption   = $this->scaleFormat(round($Serie["Data"][$Key],$DisplayRound),$Mode,$Format,$Unit);
4895
+                    $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4896
+                    $TxtHeight = abs($TxtPos[2]["Y"] - $TxtPos[0]["Y"]);
4897
+                    $TxtWidth  = abs($TxtPos[1]["X"] - $TxtPos[0]["X"]);
4898 4898
 
4899
-                 $XCenter = ( ($X+$XOffset+$XSize) - ($X+$XOffset) ) / 2 + $X+$XOffset;
4900
-                 $YCenter = ( ($Y2) - ($Y1-$YSpaceUp+$YSpaceDown) ) / 2 + $Y1-$YSpaceUp+$YSpaceDown;
4899
+                    $XCenter = ( ($X+$XOffset+$XSize) - ($X+$XOffset) ) / 2 + $X+$XOffset;
4900
+                    $YCenter = ( ($Y2) - ($Y1-$YSpaceUp+$YSpaceDown) ) / 2 + $Y1-$YSpaceUp+$YSpaceDown;
4901 4901
 
4902
-                 $Done = FALSE;
4903
-                 if ( $DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO )
4904
-                  {
4905
-                   if ( $TxtHeight < $BarHeight && $TxtWidth < $BarWidth  )
4902
+                    $Done = FALSE;
4903
+                    if ( $DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO )
4906 4904
                     {
4907
-                     $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4908
-                     $Done = TRUE;
4905
+                    if ( $TxtHeight < $BarHeight && $TxtWidth < $BarWidth  )
4906
+                    {
4907
+                        $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4908
+                        $Done = TRUE;
4909
+                    }
4909 4910
                     }
4910
-                  }
4911 4911
 
4912
-                 if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
4913
-                  {
4914
-                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
4912
+                    if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
4913
+                    {
4914
+                    if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
4915 4915
                     $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4916
-                  }
4916
+                    }
4917 4917
                 }
4918 4918
 
4919
-               $LastY[$Key][$Pos] = $Y2;
4920
-              }
4919
+                $LastY[$Key][$Pos] = $Y2;
4920
+                }
4921 4921
 
4922
-             $X = $X + $XStep;
4922
+                $X = $X + $XStep;
4923
+            }
4923 4924
             }
4924
-          }
4925
-         else
4926
-          {
4927
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4928
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4925
+            else
4926
+            {
4927
+            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4928
+            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4929 4929
 
4930
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4931
-           $Y     = $this->GraphAreaY1 + $XMargin;
4930
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4931
+            $Y     = $this->GraphAreaY1 + $XMargin;
4932 4932
 
4933
-           $YSize   = $YStep / (1+$Interleave);
4934
-           $YOffset = -($YSize/2);
4933
+            $YSize   = $YStep / (1+$Interleave);
4934
+            $YOffset = -($YSize/2);
4935 4935
 
4936
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4937
-           foreach($PosArray as $Key => $Width)
4936
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4937
+            foreach($PosArray as $Key => $Width)
4938 4938
             {
4939
-             if ( $Width != VOID && $Serie["Data"][$Key] != 0 )
4940
-              {
4941
-               if ( $Serie["Data"][$Key] > 0 ) { $Pos = "+"; } else { $Pos = "-"; }
4939
+                if ( $Width != VOID && $Serie["Data"][$Key] != 0 )
4940
+                {
4941
+                if ( $Serie["Data"][$Key] > 0 ) { $Pos = "+"; } else { $Pos = "-"; }
4942 4942
 
4943
-               if ( !isset($LastX[$Key] ) ) { $LastX[$Key] = ""; }
4944
-               if ( !isset($LastX[$Key][$Pos] ) ) { $LastX[$Key][$Pos] = $YZero; }
4943
+                if ( !isset($LastX[$Key] ) ) { $LastX[$Key] = ""; }
4944
+                if ( !isset($LastX[$Key][$Pos] ) ) { $LastX[$Key][$Pos] = $YZero; }
4945 4945
 
4946
-               $X1 = $LastX[$Key][$Pos];
4947
-               $X2 = $X1 + $Width;
4946
+                $X1 = $LastX[$Key][$Pos];
4947
+                $X2 = $X1 + $Width;
4948 4948
 
4949
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "+" && $X1 != $YZero) ) { $XSpaceLeft = 2; } else { $XSpaceLeft = 0; }
4950
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "-" && $X1 != $YZero) ) { $XSpaceRight = 2; } else { $XSpaceRight = 0; }
4949
+                if ( ($Rounded || $BorderR != -1) && ($Pos == "+" && $X1 != $YZero) ) { $XSpaceLeft = 2; } else { $XSpaceLeft = 0; }
4950
+                if ( ($Rounded || $BorderR != -1) && ($Pos == "-" && $X1 != $YZero) ) { $XSpaceRight = 2; } else { $XSpaceRight = 0; }
4951 4951
 
4952
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1+$XSpaceLeft).",".floor($Y+$YOffset).",".floor($X2-$XSpaceRight).",".floor($Y+$YOffset+$YSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4952
+                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1+$XSpaceLeft).",".floor($Y+$YOffset).",".floor($X2-$XSpaceRight).",".floor($Y+$YOffset+$YSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4953 4953
 
4954
-               if ( $Rounded )
4954
+                if ( $Rounded )
4955 4955
                 $this->drawRoundedFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$RoundRadius,$Color);
4956
-               else
4956
+                else
4957 4957
                 {
4958
-                 $this->drawFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$Color);
4958
+                    $this->drawFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$Color);
4959 4959
 
4960
-                 if ( $InnerColor != NULL ) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X1+$XSpaceLeft,$X2-$XSpaceRight)+1,min($Y+$YOffset,$Y+$YOffset+$YSize)+1,max($X1+$XSpaceLeft,$X2-$XSpaceRight)-1,max($Y+$YOffset,$Y+$YOffset+$YSize)-1,$InnerColor); $this->Shadow = $RestoreShadow;}
4960
+                    if ( $InnerColor != NULL ) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X1+$XSpaceLeft,$X2-$XSpaceRight)+1,min($Y+$YOffset,$Y+$YOffset+$YSize)+1,max($X1+$XSpaceLeft,$X2-$XSpaceRight)-1,max($Y+$YOffset,$Y+$YOffset+$YSize)-1,$InnerColor); $this->Shadow = $RestoreShadow;}
4961 4961
 
4962
-                 if ( $Gradient )
4963
-                  {
4964
-                   $this->Shadow  = FALSE;
4962
+                    if ( $Gradient )
4963
+                    {
4964
+                    $this->Shadow  = FALSE;
4965 4965
 
4966
-                   if ( $GradientMode == GRADIENT_SIMPLE )
4966
+                    if ( $GradientMode == GRADIENT_SIMPLE )
4967 4967
                     {
4968
-                     $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4969
-                     $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_HORIZONTAL,$GradientColor);
4968
+                        $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4969
+                        $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_HORIZONTAL,$GradientColor);
4970 4970
                     }
4971
-                   elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4971
+                    elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4972 4972
                     {
4973
-                     $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4974
-                     $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4975
-                     $YSpan = floor($YSize / 3);
4973
+                        $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4974
+                        $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4975
+                        $YSpan = floor($YSize / 3);
4976 4976
 
4977
-                     $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSpan,DIRECTION_VERTICAL,$GradientColor1);
4978
-                     $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset+$YSpan,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_VERTICAL,$GradientColor2);
4977
+                        $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSpan,DIRECTION_VERTICAL,$GradientColor1);
4978
+                        $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset+$YSpan,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_VERTICAL,$GradientColor2);
4979
+                    }
4980
+                    $this->Shadow = $RestoreShadow;
4979 4981
                     }
4980
-                   $this->Shadow = $RestoreShadow;
4981
-                  }
4982 4982
                 }
4983 4983
 
4984
-               if ( $DisplayValues )
4984
+                if ( $DisplayValues )
4985 4985
                 {
4986
-                 $BarWidth = abs($X2-$X1)-$FontFactor;
4987
-                 $BarHeight = $YSize+($YOffset/2)-$FontFactor/2;
4988
-                 $Caption   = $this->scaleFormat(round($Serie["Data"][$Key],$DisplayRound),$Mode,$Format,$Unit);
4989
-                 $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4990
-                 $TxtHeight = abs($TxtPos[2]["Y"] - $TxtPos[0]["Y"]);
4991
-                 $TxtWidth  = abs($TxtPos[1]["X"] - $TxtPos[0]["X"]);
4992
-
4993
-                 $XCenter  = ( $X2 - $X1 ) / 2 + $X1;
4994
-                 $YCenter  = ( ($Y+$YOffset+$YSize) - ($Y+$YOffset) ) / 2 + $Y+$YOffset;
4995
-
4996
-                 $Done = FALSE;
4997
-                 if ( $DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO )
4998
-                  {
4999
-                   if ( $TxtHeight < $BarHeight && $TxtWidth < $BarWidth  )
4986
+                    $BarWidth = abs($X2-$X1)-$FontFactor;
4987
+                    $BarHeight = $YSize+($YOffset/2)-$FontFactor/2;
4988
+                    $Caption   = $this->scaleFormat(round($Serie["Data"][$Key],$DisplayRound),$Mode,$Format,$Unit);
4989
+                    $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4990
+                    $TxtHeight = abs($TxtPos[2]["Y"] - $TxtPos[0]["Y"]);
4991
+                    $TxtWidth  = abs($TxtPos[1]["X"] - $TxtPos[0]["X"]);
4992
+
4993
+                    $XCenter  = ( $X2 - $X1 ) / 2 + $X1;
4994
+                    $YCenter  = ( ($Y+$YOffset+$YSize) - ($Y+$YOffset) ) / 2 + $Y+$YOffset;
4995
+
4996
+                    $Done = FALSE;
4997
+                    if ( $DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO )
5000 4998
                     {
5001
-                     $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
5002
-                     $Done = TRUE;
4999
+                    if ( $TxtHeight < $BarHeight && $TxtWidth < $BarWidth  )
5000
+                    {
5001
+                        $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
5002
+                        $Done = TRUE;
5003
+                    }
5003 5004
                     }
5004
-                  }
5005 5005
 
5006
-                 if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
5007
-                  {
5008
-                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
5006
+                    if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
5007
+                    {
5008
+                    if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
5009 5009
                     $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
5010
-                  }
5010
+                    }
5011 5011
                 }
5012 5012
 
5013
-               $LastX[$Key][$Pos] = $X2;
5014
-              }
5013
+                $LastX[$Key][$Pos] = $X2;
5014
+                }
5015 5015
 
5016
-             $Y = $Y + $YStep;
5016
+                $Y = $Y + $YStep;
5017
+            }
5017 5018
             }
5018
-          }
5019 5019
         }
5020
-      }
5020
+        }
5021 5021
     }
5022 5022
 
5023
-   /* Draw a stacked area chart */
5024
-   function drawStackedAreaChart($Format=NULL)
5023
+    /* Draw a stacked area chart */
5024
+    function drawStackedAreaChart($Format=NULL)
5025 5025
     {
5026
-     $DrawLine		= isset($Format["DrawLine"]) ? $Format["DrawLine"] : FALSE;
5027
-     $LineSurrounding	= isset($Format["LineSurrounding"]) ? $Format["LineSurrounding"] : NULL;
5028
-     $LineR		= isset($Format["LineR"]) ? $Format["LineR"] : VOID;
5029
-     $LineG		= isset($Format["LineG"]) ? $Format["LineG"] : VOID;
5030
-     $LineB		= isset($Format["LineB"]) ? $Format["LineB"] : VOID;
5031
-     $LineAlpha		= isset($Format["LineAlpha"]) ? $Format["LineAlpha"] : 100;
5032
-     $DrawPlot		= isset($Format["DrawPlot"]) ? $Format["DrawPlot"] : FALSE;
5033
-     $PlotRadius	= isset($Format["PlotRadius"]) ? $Format["PlotRadius"] : 2;
5034
-     $PlotBorder	= isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : 1;
5035
-     $PlotBorderSurrounding = isset($Format["PlotBorderSurrounding"]) ? $Format["PlotBorderSurrounding"] : NULL;
5036
-     $PlotBorderR	= isset($Format["PlotBorderR"]) ? $Format["PlotBorderR"] : 0;
5037
-     $PlotBorderG	= isset($Format["PlotBorderG"]) ? $Format["PlotBorderG"] : 0;
5038
-     $PlotBorderB	= isset($Format["PlotBorderB"]) ? $Format["PlotBorderB"] : 0;
5039
-     $PlotBorderAlpha	= isset($Format["PlotBorderAlpha"]) ? $Format["PlotBorderAlpha"] : 50;
5040
-     $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
5041
-
5042
-     $this->LastChartLayout = CHART_LAST_LAYOUT_STACKED;
5043
-
5044
-     $Data = $this->DataSet->getData();
5045
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5046
-
5047
-     $RestoreShadow = $this->Shadow;
5048
-     $this->Shadow  = FALSE;
5049
-
5050
-     /* Build the offset data series */
5051
-     $OffsetData    = "";
5052
-     $OverallOffset = "";
5053
-     $SerieOrder    = "";
5054
-     foreach($Data["Series"] as $SerieName => $Serie)
5055
-      {
5056
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5057
-        {
5058
-         $SerieOrder[] = $SerieName;
5059
-
5060
-         foreach($Serie["Data"] as $Key => $Value)
5061
-          {
5062
-           if ( $Value == VOID ) { $Value = 0; }
5063
-           if ($Value >= 0) { $Sign = "+"; } else { $Sign = "-"; }
5064
-           if ( !isset($OverallOffset[$Key]) || !isset($OverallOffset[$Key][$Sign]) ) { $OverallOffset[$Key][$Sign] = 0; }
5065
-
5066
-           if ( $Sign == "+" )
5026
+        $DrawLine		= isset($Format["DrawLine"]) ? $Format["DrawLine"] : FALSE;
5027
+        $LineSurrounding	= isset($Format["LineSurrounding"]) ? $Format["LineSurrounding"] : NULL;
5028
+        $LineR		= isset($Format["LineR"]) ? $Format["LineR"] : VOID;
5029
+        $LineG		= isset($Format["LineG"]) ? $Format["LineG"] : VOID;
5030
+        $LineB		= isset($Format["LineB"]) ? $Format["LineB"] : VOID;
5031
+        $LineAlpha		= isset($Format["LineAlpha"]) ? $Format["LineAlpha"] : 100;
5032
+        $DrawPlot		= isset($Format["DrawPlot"]) ? $Format["DrawPlot"] : FALSE;
5033
+        $PlotRadius	= isset($Format["PlotRadius"]) ? $Format["PlotRadius"] : 2;
5034
+        $PlotBorder	= isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : 1;
5035
+        $PlotBorderSurrounding = isset($Format["PlotBorderSurrounding"]) ? $Format["PlotBorderSurrounding"] : NULL;
5036
+        $PlotBorderR	= isset($Format["PlotBorderR"]) ? $Format["PlotBorderR"] : 0;
5037
+        $PlotBorderG	= isset($Format["PlotBorderG"]) ? $Format["PlotBorderG"] : 0;
5038
+        $PlotBorderB	= isset($Format["PlotBorderB"]) ? $Format["PlotBorderB"] : 0;
5039
+        $PlotBorderAlpha	= isset($Format["PlotBorderAlpha"]) ? $Format["PlotBorderAlpha"] : 50;
5040
+        $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
5041
+
5042
+        $this->LastChartLayout = CHART_LAST_LAYOUT_STACKED;
5043
+
5044
+        $Data = $this->DataSet->getData();
5045
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
5046
+
5047
+        $RestoreShadow = $this->Shadow;
5048
+        $this->Shadow  = FALSE;
5049
+
5050
+        /* Build the offset data series */
5051
+        $OffsetData    = "";
5052
+        $OverallOffset = "";
5053
+        $SerieOrder    = "";
5054
+        foreach($Data["Series"] as $SerieName => $Serie)
5055
+        {
5056
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5057
+        {
5058
+            $SerieOrder[] = $SerieName;
5059
+
5060
+            foreach($Serie["Data"] as $Key => $Value)
5061
+            {
5062
+            if ( $Value == VOID ) { $Value = 0; }
5063
+            if ($Value >= 0) { $Sign = "+"; } else { $Sign = "-"; }
5064
+            if ( !isset($OverallOffset[$Key]) || !isset($OverallOffset[$Key][$Sign]) ) { $OverallOffset[$Key][$Sign] = 0; }
5065
+
5066
+            if ( $Sign == "+" )
5067 5067
             { $Data["Series"][$SerieName]["Data"][$Key] = $Value + $OverallOffset[$Key][$Sign]; }
5068
-           else
5068
+            else
5069 5069
             { $Data["Series"][$SerieName]["Data"][$Key] = $Value - $OverallOffset[$Key][$Sign]; }
5070 5070
 
5071
-           $OverallOffset[$Key][$Sign] = $OverallOffset[$Key][$Sign] + abs($Value);
5072
-          }
5071
+            $OverallOffset[$Key][$Sign] = $OverallOffset[$Key][$Sign] + abs($Value);
5072
+            }
5073 5073
         } 
5074
-      }
5075
-     $SerieOrder = array_reverse($SerieOrder);
5074
+        }
5075
+        $SerieOrder = array_reverse($SerieOrder);
5076 5076
 
5077
-     $LastX = ""; $LastY = "";
5078
-     foreach($SerieOrder as $Key => $SerieName)
5079
-      {
5080
-       $Serie = $Data["Series"][$SerieName];
5081
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5077
+        $LastX = ""; $LastY = "";
5078
+        foreach($SerieOrder as $Key => $SerieName)
5082 5079
         {
5083
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
5084
-         if ( $ForceTransparency != NULL ) { $Alpha = $ForceTransparency; }
5080
+        $Serie = $Data["Series"][$SerieName];
5081
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5082
+        {
5083
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
5084
+            if ( $ForceTransparency != NULL ) { $Alpha = $ForceTransparency; }
5085 5085
 
5086
-         $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
5086
+            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
5087 5087
 
5088
-         if ( $LineSurrounding != NULL )
5089
-          $LineColor = array("R"=>$R+$LineSurrounding,"G"=>$G+$LineSurrounding,"B"=>$B+$LineSurrounding,"Alpha"=>$Alpha);
5090
-         elseif ( $LineR != VOID )
5091
-          $LineColor = array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha);
5092
-         else
5093
-          $LineColor = $Color;
5088
+            if ( $LineSurrounding != NULL )
5089
+            $LineColor = array("R"=>$R+$LineSurrounding,"G"=>$G+$LineSurrounding,"B"=>$B+$LineSurrounding,"Alpha"=>$Alpha);
5090
+            elseif ( $LineR != VOID )
5091
+            $LineColor = array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha);
5092
+            else
5093
+            $LineColor = $Color;
5094 5094
 
5095
-         if ( $PlotBorderSurrounding != NULL )
5096
-          $PlotBorderColor = array("R"=>$R+$PlotBorderSurrounding,"G"=>$G+$PlotBorderSurrounding,"B"=>$B+$PlotBorderSurrounding,"Alpha"=>$PlotBorderAlpha);
5097
-         else
5098
-          $PlotBorderColor = array("R"=>$PlotBorderR,"G"=>$PlotBorderG,"B"=>$PlotBorderB,"Alpha"=>$PlotBorderAlpha);
5095
+            if ( $PlotBorderSurrounding != NULL )
5096
+            $PlotBorderColor = array("R"=>$R+$PlotBorderSurrounding,"G"=>$G+$PlotBorderSurrounding,"B"=>$B+$PlotBorderSurrounding,"Alpha"=>$PlotBorderAlpha);
5097
+            else
5098
+            $PlotBorderColor = array("R"=>$PlotBorderR,"G"=>$PlotBorderG,"B"=>$PlotBorderB,"Alpha"=>$PlotBorderAlpha);
5099 5099
 
5100
-         $AxisID	= $Serie["Axis"];
5101
-         $Mode		= $Data["Axis"][$AxisID]["Display"];
5102
-         $Format	= $Data["Axis"][$AxisID]["Format"];
5103
-         $Unit		= $Data["Axis"][$AxisID]["Unit"];
5100
+            $AxisID	= $Serie["Axis"];
5101
+            $Mode		= $Data["Axis"][$AxisID]["Display"];
5102
+            $Format	= $Data["Axis"][$AxisID]["Format"];
5103
+            $Unit		= $Data["Axis"][$AxisID]["Unit"];
5104 5104
 
5105
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]),TRUE);
5106
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
5105
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]),TRUE);
5106
+            $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
5107 5107
 
5108
-         $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
5108
+            $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
5109 5109
 
5110
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5111
-          {
5112
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
5113
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
5110
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5111
+            {
5112
+            if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
5113
+            if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
5114 5114
 
5115
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5116
-           $X = $this->GraphAreaX1 + $XMargin;
5115
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5116
+            $X = $this->GraphAreaX1 + $XMargin;
5117 5117
 
5118
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5118
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5119 5119
 
5120
-           $Plots = ""; $Plots[] = $X; $Plots[] = $YZero;
5121
-           foreach($PosArray as $Key => $Height)
5120
+            $Plots = ""; $Plots[] = $X; $Plots[] = $YZero;
5121
+            foreach($PosArray as $Key => $Height)
5122 5122
             {
5123
-             if ( $Height != VOID ) { $Plots[] = $X; $Plots[] = $YZero-$Height; }
5124
-             $X = $X + $XStep;
5123
+                if ( $Height != VOID ) { $Plots[] = $X; $Plots[] = $YZero-$Height; }
5124
+                $X = $X + $XStep;
5125 5125
             }
5126
-           $Plots[] = $X-$XStep; $Plots[] = $YZero;
5126
+            $Plots[] = $X-$XStep; $Plots[] = $YZero;
5127 5127
 
5128
-           $this->drawPolygon($Plots,$Color);
5128
+            $this->drawPolygon($Plots,$Color);
5129 5129
 
5130
-           $this->Shadow = $RestoreShadow;
5131
-           if ( $DrawLine ) { for($i=2; $i<=count($Plots)-6; $i=$i+2) { $this->drawLine($Plots[$i],$Plots[$i+1],$Plots[$i+2],$Plots[$i+3],$LineColor); } }
5132
-           if ( $DrawPlot )
5130
+            $this->Shadow = $RestoreShadow;
5131
+            if ( $DrawLine ) { for($i=2; $i<=count($Plots)-6; $i=$i+2) { $this->drawLine($Plots[$i],$Plots[$i+1],$Plots[$i+2],$Plots[$i+3],$LineColor); } }
5132
+            if ( $DrawPlot )
5133 5133
             {
5134
-             for($i=2; $i<=count($Plots)-4; $i=$i+2)
5135
-              {
5136
-               if ( $PlotBorder != 0 )
5134
+                for($i=2; $i<=count($Plots)-4; $i=$i+2)
5135
+                {
5136
+                if ( $PlotBorder != 0 )
5137 5137
                 { $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius+$PlotBorder,$PlotBorderColor); }
5138 5138
 
5139
-               $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius,$Color);
5140
-              }
5139
+                $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius,$Color);
5140
+                }
5141
+            }
5142
+            $this->Shadow = FALSE;
5141 5143
             }
5142
-           $this->Shadow = FALSE;
5143
-          }
5144
-         elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
5145
-          {
5146
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
5147
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
5144
+            elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
5145
+            {
5146
+            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
5147
+            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
5148 5148
 
5149
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5150
-           $Y = $this->GraphAreaY1 + $XMargin;
5149
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5150
+            $Y = $this->GraphAreaY1 + $XMargin;
5151 5151
 
5152
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5152
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5153 5153
 
5154
-           $Plots = ""; $Plots[] = $YZero; $Plots[] = $Y;
5155
-           foreach($PosArray as $Key => $Height)
5154
+            $Plots = ""; $Plots[] = $YZero; $Plots[] = $Y;
5155
+            foreach($PosArray as $Key => $Height)
5156 5156
             {
5157
-             if ( $Height != VOID ) { $Plots[] = $YZero+$Height; $Plots[] = $Y; }
5158
-             $Y = $Y + $YStep;
5157
+                if ( $Height != VOID ) { $Plots[] = $YZero+$Height; $Plots[] = $Y; }
5158
+                $Y = $Y + $YStep;
5159 5159
             }
5160
-           $Plots[] = $YZero; $Plots[] = $Y-$YStep;
5160
+            $Plots[] = $YZero; $Plots[] = $Y-$YStep;
5161 5161
 
5162
-           $this->drawPolygon($Plots,$Color);
5162
+            $this->drawPolygon($Plots,$Color);
5163 5163
 
5164
-           $this->Shadow = $RestoreShadow;
5165
-           if ( $DrawLine ) { for($i=2; $i<=count($Plots)-6; $i=$i+2) { $this->drawLine($Plots[$i],$Plots[$i+1],$Plots[$i+2],$Plots[$i+3],$LineColor); } }
5166
-           if ( $DrawPlot )
5164
+            $this->Shadow = $RestoreShadow;
5165
+            if ( $DrawLine ) { for($i=2; $i<=count($Plots)-6; $i=$i+2) { $this->drawLine($Plots[$i],$Plots[$i+1],$Plots[$i+2],$Plots[$i+3],$LineColor); } }
5166
+            if ( $DrawPlot )
5167 5167
             {
5168
-             for($i=2; $i<=count($Plots)-4; $i=$i+2)
5169
-              {
5170
-               if ( $PlotBorder != 0 )
5168
+                for($i=2; $i<=count($Plots)-4; $i=$i+2)
5169
+                {
5170
+                if ( $PlotBorder != 0 )
5171 5171
                 { $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius+$PlotBorder,$PlotBorderColor); }
5172 5172
 
5173
-               $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius,$Color);
5174
-              }
5173
+                $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius,$Color);
5174
+                }
5175
+            }
5176
+            $this->Shadow = FALSE;
5175 5177
             }
5176
-           $this->Shadow = FALSE;
5177
-          }
5178 5178
         }
5179
-      }
5180
-     $this->Shadow = $RestoreShadow;
5179
+        }
5180
+        $this->Shadow = $RestoreShadow;
5181 5181
     }
5182 5182
 
5183
-   /* Returns a random color */
5184
-   function getRandomColor($Alpha=100)
5183
+    /* Returns a random color */
5184
+    function getRandomColor($Alpha=100)
5185 5185
     { return(array("R"=>rand(0,255),"G"=>rand(0,255),"B"=>rand(0,255),"Alpha"=>$Alpha)); }
5186 5186
  
5187
-   /* Validate a palette */
5188
-   function validatePalette($Colors,$Surrounding=NULL)
5187
+    /* Validate a palette */
5188
+    function validatePalette($Colors,$Surrounding=NULL)
5189 5189
     {
5190
-     $Result = "";
5190
+        $Result = "";
5191 5191
 
5192
-     if ( !is_array($Colors) ) { return($this->getRandomColor()); }
5192
+        if ( !is_array($Colors) ) { return($this->getRandomColor()); }
5193 5193
 
5194
-     foreach($Colors as $Key => $Values)
5195
-      {
5196
-       if ( isset($Values["R"]) ) { $Result[$Key]["R"] = $Values["R"]; } else { $Result[$Key]["R"] = rand(0,255); }
5197
-       if ( isset($Values["G"]) ) { $Result[$Key]["G"] = $Values["G"]; } else { $Result[$Key]["G"] = rand(0,255); }
5198
-       if ( isset($Values["B"]) ) { $Result[$Key]["B"] = $Values["B"]; } else { $Result[$Key]["B"] = rand(0,255); }
5199
-       if ( isset($Values["Alpha"]) ) { $Result[$Key]["Alpha"] = $Values["Alpha"]; } else { $Result[$Key]["Alpha"] = 100; }
5194
+        foreach($Colors as $Key => $Values)
5195
+        {
5196
+        if ( isset($Values["R"]) ) { $Result[$Key]["R"] = $Values["R"]; } else { $Result[$Key]["R"] = rand(0,255); }
5197
+        if ( isset($Values["G"]) ) { $Result[$Key]["G"] = $Values["G"]; } else { $Result[$Key]["G"] = rand(0,255); }
5198
+        if ( isset($Values["B"]) ) { $Result[$Key]["B"] = $Values["B"]; } else { $Result[$Key]["B"] = rand(0,255); }
5199
+        if ( isset($Values["Alpha"]) ) { $Result[$Key]["Alpha"] = $Values["Alpha"]; } else { $Result[$Key]["Alpha"] = 100; }
5200 5200
 
5201
-       if ( $Surrounding != NULL )
5201
+        if ( $Surrounding != NULL )
5202 5202
         {
5203
-         $Result[$Key]["BorderR"] = $Result[$Key]["R"] + $Surrounding;
5204
-         $Result[$Key]["BorderG"] = $Result[$Key]["G"] + $Surrounding;
5205
-         $Result[$Key]["BorderB"] = $Result[$Key]["B"] + $Surrounding;
5203
+            $Result[$Key]["BorderR"] = $Result[$Key]["R"] + $Surrounding;
5204
+            $Result[$Key]["BorderG"] = $Result[$Key]["G"] + $Surrounding;
5205
+            $Result[$Key]["BorderB"] = $Result[$Key]["B"] + $Surrounding;
5206 5206
         }
5207
-       else
5207
+        else
5208 5208
         {
5209
-         if ( isset($Values["BorderR"]) )     { $Result[$Key]["BorderR"] = $Values["BorderR"]; } else { $Result[$Key]["BorderR"] = $Result[$Key]["R"]; }
5210
-         if ( isset($Values["BorderG"]) )     { $Result[$Key]["BorderG"] = $Values["BorderG"]; } else { $Result[$Key]["BorderG"] = $Result[$Key]["G"]; }
5211
-         if ( isset($Values["BorderB"]) )     { $Result[$Key]["BorderB"] = $Values["BorderB"]; } else { $Result[$Key]["BorderB"] = $Result[$Key]["B"]; }
5212
-         if ( isset($Values["BorderAlpha"]) ) { $Result[$Key]["BorderAlpha"] = $Values["BorderAlpha"]; } else { $Result[$Key]["BorderAlpha"] = $Result[$Key]["Alpha"]; }
5209
+            if ( isset($Values["BorderR"]) )     { $Result[$Key]["BorderR"] = $Values["BorderR"]; } else { $Result[$Key]["BorderR"] = $Result[$Key]["R"]; }
5210
+            if ( isset($Values["BorderG"]) )     { $Result[$Key]["BorderG"] = $Values["BorderG"]; } else { $Result[$Key]["BorderG"] = $Result[$Key]["G"]; }
5211
+            if ( isset($Values["BorderB"]) )     { $Result[$Key]["BorderB"] = $Values["BorderB"]; } else { $Result[$Key]["BorderB"] = $Result[$Key]["B"]; }
5212
+            if ( isset($Values["BorderAlpha"]) ) { $Result[$Key]["BorderAlpha"] = $Values["BorderAlpha"]; } else { $Result[$Key]["BorderAlpha"] = $Result[$Key]["Alpha"]; }
5213
+        }
5213 5214
         }
5214
-      }
5215 5215
 
5216
-     return($Result);
5216
+        return($Result);
5217 5217
     }
5218 5218
 
5219
-   /* Draw the derivative chart associated to the data series */
5220
-   function drawDerivative($Format=NULL)
5219
+    /* Draw the derivative chart associated to the data series */
5220
+    function drawDerivative($Format=NULL)
5221 5221
     {
5222
-     $Offset		= isset($Format["Offset"]) ? $Format["Offset"] : 10;
5223
-     $SerieSpacing	= isset($Format["SerieSpacing"]) ? $Format["SerieSpacing"] : 3;
5224
-     $DerivativeHeight	= isset($Format["DerivativeHeight"]) ? $Format["DerivativeHeight"] : 4;
5225
-     $ShadedSlopeBox	= isset($Format["ShadedSlopeBox"]) ? $Format["ShadedSlopeBox"] : FALSE;
5226
-     $DrawBackground	= isset($Format["DrawBackground"]) ? $Format["DrawBackground"] : TRUE;
5227
-     $BackgroundR	= isset($Format["BackgroundR"]) ? $Format["BackgroundR"] : 255;
5228
-     $BackgroundG	= isset($Format["BackgroundG"]) ? $Format["BackgroundG"] : 255;
5229
-     $BackgroundB	= isset($Format["BackgroundB"]) ? $Format["BackgroundB"] : 255;
5230
-     $BackgroundAlpha	= isset($Format["BackgroundAlpha"]) ? $Format["BackgroundAlpha"] : 20;
5231
-     $DrawBorder	= isset($Format["DrawBorder"]) ? $Format["DrawBorder"] : TRUE;
5232
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : 0;
5233
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : 0;
5234
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : 0;
5235
-     $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 100;
5236
-     $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : TRUE;
5237
-     $CaptionHeight	= isset($Format["CaptionHeight"]) ? $Format["CaptionHeight"] : 10;
5238
-     $CaptionWidth	= isset($Format["CaptionWidth"]) ? $Format["CaptionWidth"] : 20;
5239
-     $CaptionMargin	= isset($Format["CaptionMargin"]) ? $Format["CaptionMargin"] : 4;
5240
-     $CaptionLine	= isset($Format["CaptionLine"]) ? $Format["CaptionLine"] : FALSE;
5241
-     $CaptionBox	= isset($Format["CaptionBox"]) ? $Format["CaptionBox"] : FALSE;
5242
-     $CaptionBorderR	= isset($Format["CaptionBorderR"]) ? $Format["CaptionBorderR"] : 0;
5243
-     $CaptionBorderG	= isset($Format["CaptionBorderG"]) ? $Format["CaptionBorderG"] : 0;
5244
-     $CaptionBorderB	= isset($Format["CaptionBorderB"]) ? $Format["CaptionBorderB"] : 0;
5245
-     $CaptionFillR	= isset($Format["CaptionFillR"]) ? $Format["CaptionFillR"] : 255;
5246
-     $CaptionFillG	= isset($Format["CaptionFillG"]) ? $Format["CaptionFillG"] : 255;
5247
-     $CaptionFillB	= isset($Format["CaptionFillB"]) ? $Format["CaptionFillB"] : 255;
5248
-     $CaptionFillAlpha	= isset($Format["CaptionFillAlpha"]) ? $Format["CaptionFillAlpha"] : 80;
5249
-     $PositiveSlopeStartR	= isset($Format["PositiveSlopeStartR"]) ? $Format["PositiveSlopeStartR"] : 184;
5250
-     $PositiveSlopeStartG	= isset($Format["PositiveSlopeStartG"]) ? $Format["PositiveSlopeStartG"] : 234;
5251
-     $PositiveSlopeStartB	= isset($Format["PositiveSlopeStartB"]) ? $Format["PositiveSlopeStartB"] : 88;
5252
-     $PositiveSlopeEndR		= isset($Format["PositiveSlopeStartR"]) ? $Format["PositiveSlopeStartR"] : 239;
5253
-     $PositiveSlopeEndG		= isset($Format["PositiveSlopeStartG"]) ? $Format["PositiveSlopeStartG"] : 31;
5254
-     $PositiveSlopeEndB		= isset($Format["PositiveSlopeStartB"]) ? $Format["PositiveSlopeStartB"] : 36;
5255
-     $NegativeSlopeStartR	= isset($Format["NegativeSlopeStartR"]) ? $Format["NegativeSlopeStartR"] : 184;
5256
-     $NegativeSlopeStartG	= isset($Format["NegativeSlopeStartG"]) ? $Format["NegativeSlopeStartG"] : 234;
5257
-     $NegativeSlopeStartB	= isset($Format["NegativeSlopeStartB"]) ? $Format["NegativeSlopeStartB"] : 88;
5258
-     $NegativeSlopeEndR		= isset($Format["NegativeSlopeStartR"]) ? $Format["NegativeSlopeStartR"] : 67;
5259
-     $NegativeSlopeEndG		= isset($Format["NegativeSlopeStartG"]) ? $Format["NegativeSlopeStartG"] : 124;
5260
-     $NegativeSlopeEndB		= isset($Format["NegativeSlopeStartB"]) ? $Format["NegativeSlopeStartB"] : 227;
5261
-
5262
-     $Data = $this->DataSet->getData();
5263
-
5264
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5265
-
5266
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5267
-      $YPos = $this->DataSet->Data["GraphArea"]["Y2"] + $Offset;
5268
-     else
5269
-      $XPos = $this->DataSet->Data["GraphArea"]["X2"] + $Offset;
5270
-
5271
-     foreach($Data["Series"] as $SerieName => $Serie)
5272
-      {
5273
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5274
-        {
5275
-         $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
5276
-
5277
-         $AxisID   = $Serie["Axis"];
5278
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
5279
-
5280
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5281
-          {
5282
-           if ( $Caption )
5283
-            {
5284
-             if ( $CaptionLine ) 
5285
-              {
5286
-               $StartX = floor($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin);
5287
-               $EndX   = floor($this->GraphAreaX1-$CaptionMargin+$XMargin);
5288
-
5289
-               $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5290
-               if ( $CaptionBox ) { $this->drawFilledRectangle($StartX,$YPos,$EndX,$YPos+$CaptionHeight,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5291
-               $this->drawLine($StartX+2,$YPos+($CaptionHeight/2),$EndX-2,$YPos+($CaptionHeight/2),$CaptionSettings);
5292
-              }
5293
-             else
5294
-              $this->drawFilledRectangle($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin,$YPos,$this->GraphAreaX1-$CaptionMargin+$XMargin,$YPos+$CaptionHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5295
-            }
5296
-
5297
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5298
-           $X = $this->GraphAreaX1 + $XMargin;
5299
-
5300
-           $TopY    = $YPos + ($CaptionHeight/2) - ($DerivativeHeight/2);
5301
-           $BottomY = $YPos + ($CaptionHeight/2) + ($DerivativeHeight/2);
5302
-
5303
-           $StartX  = floor($this->GraphAreaX1+$XMargin);
5304
-           $EndX    = floor($this->GraphAreaX2-$XMargin);
5305
-
5306
-           if ( $DrawBackground ) { $this->drawFilledRectangle($StartX-1,$TopY-1,$EndX+1,$BottomY+1,array("R"=>$BackgroundR,"G"=>$BackgroundG,"B"=>$BackgroundB,"Alpha"=>$BackgroundAlpha)); }
5307
-           if ( $DrawBorder ) { $this->drawRectangle($StartX-1,$TopY-1,$EndX+1,$BottomY+1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5308
-
5309
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5310
-
5311
-           $RestoreShadow = $this->Shadow;
5312
-           $this->Shadow  = FALSE;
5313
-
5314
-           /* Determine the Max slope index */
5315
-           $LastX = NULL; $LastY = NULL; $MinSlope = 0; $MaxSlope = 1;
5316
-           foreach($PosArray as $Key => $Y)
5317
-            {
5318
-             if ( $Y != VOID && $LastX != NULL )
5319
-              { $Slope = ($LastY - $Y); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5320
-
5321
-             if ( $Y == VOID )
5322
-              { $LastX = NULL; $LastY = NULL; }
5323
-             else
5324
-              { $LastX = $X; $LastY = $Y; }
5325
-            }
5326
-
5327
-           $LastX = NULL; $LastY = NULL; $LastColor = NULL;
5328
-           foreach($PosArray as $Key => $Y)
5329
-            {
5330
-             if ( $Y != VOID && $LastY != NULL )
5331
-              {
5332
-               $Slope = ($LastY - $Y);
5333
-
5334
-               if ( $Slope >= 0 )
5222
+        $Offset		= isset($Format["Offset"]) ? $Format["Offset"] : 10;
5223
+        $SerieSpacing	= isset($Format["SerieSpacing"]) ? $Format["SerieSpacing"] : 3;
5224
+        $DerivativeHeight	= isset($Format["DerivativeHeight"]) ? $Format["DerivativeHeight"] : 4;
5225
+        $ShadedSlopeBox	= isset($Format["ShadedSlopeBox"]) ? $Format["ShadedSlopeBox"] : FALSE;
5226
+        $DrawBackground	= isset($Format["DrawBackground"]) ? $Format["DrawBackground"] : TRUE;
5227
+        $BackgroundR	= isset($Format["BackgroundR"]) ? $Format["BackgroundR"] : 255;
5228
+        $BackgroundG	= isset($Format["BackgroundG"]) ? $Format["BackgroundG"] : 255;
5229
+        $BackgroundB	= isset($Format["BackgroundB"]) ? $Format["BackgroundB"] : 255;
5230
+        $BackgroundAlpha	= isset($Format["BackgroundAlpha"]) ? $Format["BackgroundAlpha"] : 20;
5231
+        $DrawBorder	= isset($Format["DrawBorder"]) ? $Format["DrawBorder"] : TRUE;
5232
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : 0;
5233
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : 0;
5234
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : 0;
5235
+        $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 100;
5236
+        $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : TRUE;
5237
+        $CaptionHeight	= isset($Format["CaptionHeight"]) ? $Format["CaptionHeight"] : 10;
5238
+        $CaptionWidth	= isset($Format["CaptionWidth"]) ? $Format["CaptionWidth"] : 20;
5239
+        $CaptionMargin	= isset($Format["CaptionMargin"]) ? $Format["CaptionMargin"] : 4;
5240
+        $CaptionLine	= isset($Format["CaptionLine"]) ? $Format["CaptionLine"] : FALSE;
5241
+        $CaptionBox	= isset($Format["CaptionBox"]) ? $Format["CaptionBox"] : FALSE;
5242
+        $CaptionBorderR	= isset($Format["CaptionBorderR"]) ? $Format["CaptionBorderR"] : 0;
5243
+        $CaptionBorderG	= isset($Format["CaptionBorderG"]) ? $Format["CaptionBorderG"] : 0;
5244
+        $CaptionBorderB	= isset($Format["CaptionBorderB"]) ? $Format["CaptionBorderB"] : 0;
5245
+        $CaptionFillR	= isset($Format["CaptionFillR"]) ? $Format["CaptionFillR"] : 255;
5246
+        $CaptionFillG	= isset($Format["CaptionFillG"]) ? $Format["CaptionFillG"] : 255;
5247
+        $CaptionFillB	= isset($Format["CaptionFillB"]) ? $Format["CaptionFillB"] : 255;
5248
+        $CaptionFillAlpha	= isset($Format["CaptionFillAlpha"]) ? $Format["CaptionFillAlpha"] : 80;
5249
+        $PositiveSlopeStartR	= isset($Format["PositiveSlopeStartR"]) ? $Format["PositiveSlopeStartR"] : 184;
5250
+        $PositiveSlopeStartG	= isset($Format["PositiveSlopeStartG"]) ? $Format["PositiveSlopeStartG"] : 234;
5251
+        $PositiveSlopeStartB	= isset($Format["PositiveSlopeStartB"]) ? $Format["PositiveSlopeStartB"] : 88;
5252
+        $PositiveSlopeEndR		= isset($Format["PositiveSlopeStartR"]) ? $Format["PositiveSlopeStartR"] : 239;
5253
+        $PositiveSlopeEndG		= isset($Format["PositiveSlopeStartG"]) ? $Format["PositiveSlopeStartG"] : 31;
5254
+        $PositiveSlopeEndB		= isset($Format["PositiveSlopeStartB"]) ? $Format["PositiveSlopeStartB"] : 36;
5255
+        $NegativeSlopeStartR	= isset($Format["NegativeSlopeStartR"]) ? $Format["NegativeSlopeStartR"] : 184;
5256
+        $NegativeSlopeStartG	= isset($Format["NegativeSlopeStartG"]) ? $Format["NegativeSlopeStartG"] : 234;
5257
+        $NegativeSlopeStartB	= isset($Format["NegativeSlopeStartB"]) ? $Format["NegativeSlopeStartB"] : 88;
5258
+        $NegativeSlopeEndR		= isset($Format["NegativeSlopeStartR"]) ? $Format["NegativeSlopeStartR"] : 67;
5259
+        $NegativeSlopeEndG		= isset($Format["NegativeSlopeStartG"]) ? $Format["NegativeSlopeStartG"] : 124;
5260
+        $NegativeSlopeEndB		= isset($Format["NegativeSlopeStartB"]) ? $Format["NegativeSlopeStartB"] : 227;
5261
+
5262
+        $Data = $this->DataSet->getData();
5263
+
5264
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
5265
+
5266
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5267
+        $YPos = $this->DataSet->Data["GraphArea"]["Y2"] + $Offset;
5268
+        else
5269
+        $XPos = $this->DataSet->Data["GraphArea"]["X2"] + $Offset;
5270
+
5271
+        foreach($Data["Series"] as $SerieName => $Serie)
5272
+        {
5273
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5274
+        {
5275
+            $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
5276
+
5277
+            $AxisID   = $Serie["Axis"];
5278
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
5279
+
5280
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5281
+            {
5282
+            if ( $Caption )
5283
+            {
5284
+                if ( $CaptionLine ) 
5285
+                {
5286
+                $StartX = floor($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin);
5287
+                $EndX   = floor($this->GraphAreaX1-$CaptionMargin+$XMargin);
5288
+
5289
+                $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5290
+                if ( $CaptionBox ) { $this->drawFilledRectangle($StartX,$YPos,$EndX,$YPos+$CaptionHeight,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5291
+                $this->drawLine($StartX+2,$YPos+($CaptionHeight/2),$EndX-2,$YPos+($CaptionHeight/2),$CaptionSettings);
5292
+                }
5293
+                else
5294
+                $this->drawFilledRectangle($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin,$YPos,$this->GraphAreaX1-$CaptionMargin+$XMargin,$YPos+$CaptionHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5295
+            }
5296
+
5297
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5298
+            $X = $this->GraphAreaX1 + $XMargin;
5299
+
5300
+            $TopY    = $YPos + ($CaptionHeight/2) - ($DerivativeHeight/2);
5301
+            $BottomY = $YPos + ($CaptionHeight/2) + ($DerivativeHeight/2);
5302
+
5303
+            $StartX  = floor($this->GraphAreaX1+$XMargin);
5304
+            $EndX    = floor($this->GraphAreaX2-$XMargin);
5305
+
5306
+            if ( $DrawBackground ) { $this->drawFilledRectangle($StartX-1,$TopY-1,$EndX+1,$BottomY+1,array("R"=>$BackgroundR,"G"=>$BackgroundG,"B"=>$BackgroundB,"Alpha"=>$BackgroundAlpha)); }
5307
+            if ( $DrawBorder ) { $this->drawRectangle($StartX-1,$TopY-1,$EndX+1,$BottomY+1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5308
+
5309
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5310
+
5311
+            $RestoreShadow = $this->Shadow;
5312
+            $this->Shadow  = FALSE;
5313
+
5314
+            /* Determine the Max slope index */
5315
+            $LastX = NULL; $LastY = NULL; $MinSlope = 0; $MaxSlope = 1;
5316
+            foreach($PosArray as $Key => $Y)
5317
+            {
5318
+                if ( $Y != VOID && $LastX != NULL )
5319
+                { $Slope = ($LastY - $Y); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5320
+
5321
+                if ( $Y == VOID )
5322
+                { $LastX = NULL; $LastY = NULL; }
5323
+                else
5324
+                { $LastX = $X; $LastY = $Y; }
5325
+            }
5326
+
5327
+            $LastX = NULL; $LastY = NULL; $LastColor = NULL;
5328
+            foreach($PosArray as $Key => $Y)
5329
+            {
5330
+                if ( $Y != VOID && $LastY != NULL )
5331
+                {
5332
+                $Slope = ($LastY - $Y);
5333
+
5334
+                if ( $Slope >= 0 )
5335 5335
                 {
5336
-                 $SlopeIndex = (100 / $MaxSlope) * $Slope;
5337
-                 $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5338
-                 $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5339
-                 $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5336
+                    $SlopeIndex = (100 / $MaxSlope) * $Slope;
5337
+                    $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5338
+                    $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5339
+                    $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5340 5340
                 }
5341
-               elseif ( $Slope < 0 )
5341
+                elseif ( $Slope < 0 )
5342 5342
                 {
5343
-                 $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5344
-                 $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
5345
-                 $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex+$NegativeSlopeStartG;
5346
-                 $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex+$NegativeSlopeStartB;
5343
+                    $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5344
+                    $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
5345
+                    $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex+$NegativeSlopeStartG;
5346
+                    $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex+$NegativeSlopeStartB;
5347 5347
                 }
5348 5348
 
5349
-               $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5349
+                $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5350 5350
 
5351
-               if ( $ShadedSlopeBox && $LastColor != NULL ) // && $Slope != 0
5351
+                if ( $ShadedSlopeBox && $LastColor != NULL ) // && $Slope != 0
5352 5352
                 {
5353
-                 $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5354
-                 $this->drawGradientArea($LastX,$TopY,$X,$BottomY,DIRECTION_HORIZONTAL,$GradientSettings);
5353
+                    $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5354
+                    $this->drawGradientArea($LastX,$TopY,$X,$BottomY,DIRECTION_HORIZONTAL,$GradientSettings);
5355 5355
                 }
5356
-               elseif ( !$ShadedSlopeBox || $LastColor == NULL ) // || $Slope == 0
5356
+                elseif ( !$ShadedSlopeBox || $LastColor == NULL ) // || $Slope == 0
5357 5357
                 $this->drawFilledRectangle(floor($LastX),$TopY,floor($X),$BottomY,$Color);
5358 5358
 
5359
-               $LastColor = $Color;
5360
-              }
5359
+                $LastColor = $Color;
5360
+                }
5361 5361
 
5362
-             if ( $Y == VOID )
5363
-              { $LastY = NULL; }
5364
-             else
5365
-              { $LastX = $X; $LastY = $Y; }
5362
+                if ( $Y == VOID )
5363
+                { $LastY = NULL; }
5364
+                else
5365
+                { $LastX = $X; $LastY = $Y; }
5366 5366
 
5367
-             $X = $X + $XStep;
5367
+                $X = $X + $XStep;
5368 5368
             }
5369 5369
 
5370
-           $YPos = $YPos + $CaptionHeight + $SerieSpacing;
5371
-          }
5372
-         else
5373
-          {
5374
-           if ( $Caption )
5370
+            $YPos = $YPos + $CaptionHeight + $SerieSpacing;
5371
+            }
5372
+            else
5373
+            {
5374
+            if ( $Caption )
5375 5375
             {
5376
-             $StartY = floor($this->GraphAreaY1-$CaptionWidth+$XMargin-$CaptionMargin);
5377
-             $EndY   = floor($this->GraphAreaY1-$CaptionMargin+$XMargin);
5378
-             if ( $CaptionLine ) 
5379
-              {
5380
-               $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5381
-               if ( $CaptionBox ) { $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5382
-               $this->drawLine($XPos+($CaptionHeight/2),$StartY+2,$XPos+($CaptionHeight/2),$EndY-2,$CaptionSettings);
5383
-              }
5384
-             else
5385
-              $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5376
+                $StartY = floor($this->GraphAreaY1-$CaptionWidth+$XMargin-$CaptionMargin);
5377
+                $EndY   = floor($this->GraphAreaY1-$CaptionMargin+$XMargin);
5378
+                if ( $CaptionLine ) 
5379
+                {
5380
+                $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5381
+                if ( $CaptionBox ) { $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5382
+                $this->drawLine($XPos+($CaptionHeight/2),$StartY+2,$XPos+($CaptionHeight/2),$EndY-2,$CaptionSettings);
5383
+                }
5384
+                else
5385
+                $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5386 5386
             }
5387 5387
 
5388 5388
 
5389
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5390
-           $Y = $this->GraphAreaY1 + $XMargin;
5389
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5390
+            $Y = $this->GraphAreaY1 + $XMargin;
5391 5391
 
5392
-           $TopX    = $XPos + ($CaptionHeight/2) - ($DerivativeHeight/2);
5393
-           $BottomX = $XPos + ($CaptionHeight/2) + ($DerivativeHeight/2);
5392
+            $TopX    = $XPos + ($CaptionHeight/2) - ($DerivativeHeight/2);
5393
+            $BottomX = $XPos + ($CaptionHeight/2) + ($DerivativeHeight/2);
5394 5394
 
5395
-           $StartY  = floor($this->GraphAreaY1+$XMargin);
5396
-           $EndY    = floor($this->GraphAreaY2-$XMargin);
5395
+            $StartY  = floor($this->GraphAreaY1+$XMargin);
5396
+            $EndY    = floor($this->GraphAreaY2-$XMargin);
5397 5397
 
5398
-           if ( $DrawBackground ) { $this->drawFilledRectangle($TopX-1,$StartY-1,$BottomX+1,$EndY+1,array("R"=>$BackgroundR,"G"=>$BackgroundG,"B"=>$BackgroundB,"Alpha"=>$BackgroundAlpha)); }
5399
-           if ( $DrawBorder ) { $this->drawRectangle($TopX-1,$StartY-1,$BottomX+1,$EndY+1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5398
+            if ( $DrawBackground ) { $this->drawFilledRectangle($TopX-1,$StartY-1,$BottomX+1,$EndY+1,array("R"=>$BackgroundR,"G"=>$BackgroundG,"B"=>$BackgroundB,"Alpha"=>$BackgroundAlpha)); }
5399
+            if ( $DrawBorder ) { $this->drawRectangle($TopX-1,$StartY-1,$BottomX+1,$EndY+1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5400 5400
 
5401
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5401
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5402 5402
 
5403
-           $RestoreShadow = $this->Shadow;
5404
-           $this->Shadow  = FALSE;
5403
+            $RestoreShadow = $this->Shadow;
5404
+            $this->Shadow  = FALSE;
5405 5405
 
5406
-           /* Determine the Max slope index */
5407
-           $LastX = NULL; $LastY = NULL; $MinSlope = 0; $MaxSlope = 1;
5408
-           foreach($PosArray as $Key => $X)
5406
+            /* Determine the Max slope index */
5407
+            $LastX = NULL; $LastY = NULL; $MinSlope = 0; $MaxSlope = 1;
5408
+            foreach($PosArray as $Key => $X)
5409 5409
             {
5410
-             if ( $X != VOID && $LastX != NULL )
5411
-              { $Slope = ($X - $LastX); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5410
+                if ( $X != VOID && $LastX != NULL )
5411
+                { $Slope = ($X - $LastX); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5412 5412
 
5413
-             if ( $X == VOID )
5414
-              { $LastX = NULL; }
5415
-             else
5416
-              { $LastX = $X; }
5413
+                if ( $X == VOID )
5414
+                { $LastX = NULL; }
5415
+                else
5416
+                { $LastX = $X; }
5417 5417
             }
5418 5418
 
5419
-           $LastX = NULL; $LastY = NULL; $LastColor = NULL;
5420
-           foreach($PosArray as $Key => $X)
5419
+            $LastX = NULL; $LastY = NULL; $LastColor = NULL;
5420
+            foreach($PosArray as $Key => $X)
5421 5421
             {
5422
-             if ( $X != VOID && $LastX != NULL )
5423
-              {
5424
-               $Slope = ($X - $LastX);
5422
+                if ( $X != VOID && $LastX != NULL )
5423
+                {
5424
+                $Slope = ($X - $LastX);
5425 5425
 
5426
-               if ( $Slope >= 0 )
5426
+                if ( $Slope >= 0 )
5427 5427
                 {
5428
-                 $SlopeIndex = (100 / $MaxSlope) * $Slope;
5429
-                 $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5430
-                 $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5431
-                 $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5428
+                    $SlopeIndex = (100 / $MaxSlope) * $Slope;
5429
+                    $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5430
+                    $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5431
+                    $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5432 5432
                 }
5433
-               elseif ( $Slope < 0 )
5433
+                elseif ( $Slope < 0 )
5434 5434
                 {
5435
-                 $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5436
-                 $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
5437
-                 $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex+$NegativeSlopeStartG;
5438
-                 $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex+$NegativeSlopeStartB;
5435
+                    $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5436
+                    $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
5437
+                    $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex+$NegativeSlopeStartG;
5438
+                    $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex+$NegativeSlopeStartB;
5439 5439
                 }
5440 5440
 
5441
-               $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5441
+                $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5442 5442
 
5443
-               if ( $ShadedSlopeBox && $LastColor != NULL )
5443
+                if ( $ShadedSlopeBox && $LastColor != NULL )
5444 5444
                 {
5445
-                 $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5445
+                    $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5446 5446
 
5447
-                 $this->drawGradientArea($TopX,$LastY,$BottomX,$Y,DIRECTION_VERTICAL,$GradientSettings);
5447
+                    $this->drawGradientArea($TopX,$LastY,$BottomX,$Y,DIRECTION_VERTICAL,$GradientSettings);
5448 5448
                 }
5449
-               elseif ( !$ShadedSlopeBox || $LastColor == NULL ) 
5449
+                elseif ( !$ShadedSlopeBox || $LastColor == NULL ) 
5450 5450
                 $this->drawFilledRectangle($TopX,floor($LastY),$BottomX,floor($Y),$Color);
5451 5451
 
5452
-               $LastColor = $Color;
5453
-              }
5452
+                $LastColor = $Color;
5453
+                }
5454 5454
 
5455
-             if ( $X == VOID )
5456
-              { $LastX = NULL; }
5457
-             else
5458
-              { $LastX = $X; $LastY = $Y; }
5455
+                if ( $X == VOID )
5456
+                { $LastX = NULL; }
5457
+                else
5458
+                { $LastX = $X; $LastY = $Y; }
5459 5459
 
5460
-             $Y = $Y + $XStep;
5460
+                $Y = $Y + $XStep;
5461 5461
             }
5462 5462
 
5463
-           $XPos = $XPos + $CaptionHeight + $SerieSpacing;
5464
-          }
5463
+            $XPos = $XPos + $CaptionHeight + $SerieSpacing;
5464
+            }
5465 5465
 
5466
-         $this->Shadow = $RestoreShadow;
5466
+            $this->Shadow = $RestoreShadow;
5467
+        }
5467 5468
         }
5468
-      }
5469 5469
     }
5470 5470
 
5471
-   /* Draw the line of best fit */
5472
-   function drawBestFit($Format="")
5471
+    /* Draw the line of best fit */
5472
+    function drawBestFit($Format="")
5473 5473
     {
5474
-     $OverrideTicks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
5475
-     $OverrideR		= isset($Format["R"]) ? $Format["R"] : VOID;
5476
-     $OverrideG		= isset($Format["G"]) ? $Format["G"] : VOID;
5477
-     $OverrideB		= isset($Format["B"]) ? $Format["B"] : VOID;
5478
-     $OverrideAlpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : VOID;
5479
-
5480
-     $Data = $this->DataSet->getData();
5481
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5482
-
5483
-     foreach($Data["Series"] as $SerieName => $Serie)
5484
-      {
5485
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5486
-        {
5487
-         if ( $OverrideR != VOID && $OverrideG != VOID && $OverrideB != VOID ) { $R = $OverrideR; $G = $OverrideG; $B = $OverrideB; } else { $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; }
5488
-         if ( $OverrideTicks == NULL ) { $Ticks = $Serie["Ticks"]; } else { $Ticks = $OverrideTicks; }
5489
-         if ( $OverrideAlpha == VOID ) { $Alpha = $Serie["Color"]["Alpha"]; } else { $Alpha = $OverrideAlpha; }
5490
-
5491
-         $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks);
5492
-
5493
-         $AxisID   = $Serie["Axis"];
5494
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
5495
-
5496
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5497
-          {
5498
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5499
-           $X = $this->GraphAreaX1 + $XMargin;
5500
-
5501
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5502
-           $Sxy = 0; $Sx = 0; $Sy = 0; $Sxx = 0;
5503
-           foreach($PosArray as $Key => $Y)
5504
-            {
5505
-             if ( $Y != VOID )
5506
-              {
5507
-               $Sxy = $Sxy + $X*$Y;
5508
-               $Sx  = $Sx + $X;
5509
-               $Sy  = $Sy + $Y;
5510
-               $Sxx = $Sxx + $X*$X;
5511
-              }
5512
-
5513
-             $X = $X + $XStep;
5514
-            }
5515
-           $n = count($this->DataSet->stripVOID($PosArray)); //$n = count($PosArray);
5516
-           $M = (($n*$Sxy)-($Sx*$Sy)) / (($n*$Sxx)-($Sx*$Sx));
5517
-           $B = (($Sy)-($M*$Sx))/($n);
5518
-
5519
-           $X1 = $this->GraphAreaX1 + $XMargin;
5520
-           $Y1 = $M * $X1 + $B;
5521
-           $X2 = $this->GraphAreaX2 - $XMargin;
5522
-           $Y2 = $M * $X2 + $B;
5523
-
5524
-           if ( $Y1 < $this->GraphAreaY1 ) { $X1 = $X1 + ($this->GraphAreaY1-$Y1); $Y1 = $this->GraphAreaY1; }
5525
-           if ( $Y1 > $this->GraphAreaY2 ) { $X1 = $X1 + ($Y1-$this->GraphAreaY2); $Y1 = $this->GraphAreaY2; }
5526
-           if ( $Y2 < $this->GraphAreaY1 ) { $X2 = $X2 - ($this->GraphAreaY1-$Y2); $Y2 = $this->GraphAreaY1; }
5527
-           if ( $Y2 > $this->GraphAreaY2 ) { $X2 = $X2 - ($Y2-$this->GraphAreaY2); $Y2 = $this->GraphAreaY2; }
5528
-
5529
-           $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5530
-          }
5531
-         else
5532
-          {
5533
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5534
-           $Y = $this->GraphAreaY1 + $XMargin;
5535
-
5536
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5537
-           $Sxy = 0; $Sx = 0; $Sy = 0; $Sxx = 0;
5538
-           foreach($PosArray as $Key => $X)
5539
-            {
5540
-             if ( $X != VOID )
5541
-              {
5542
-               $Sxy = $Sxy + $X*$Y;
5543
-               $Sx  = $Sx + $Y;
5544
-               $Sy  = $Sy + $X;
5545
-               $Sxx = $Sxx + $Y*$Y;
5546
-              }
5547
-
5548
-             $Y = $Y + $YStep;
5549
-            }
5550
-           $n = count($this->DataSet->stripVOID($PosArray)); //$n = count($PosArray);
5551
-           $M = (($n*$Sxy)-($Sx*$Sy)) / (($n*$Sxx)-($Sx*$Sx));
5552
-           $B = (($Sy)-($M*$Sx))/($n);
5553
-
5554
-           $Y1 = $this->GraphAreaY1 + $XMargin;
5555
-           $X1 = $M * $Y1 + $B;
5556
-           $Y2 = $this->GraphAreaY2 - $XMargin;
5557
-           $X2 = $M * $Y2 + $B;
5558
-
5559
-           if ( $X1 < $this->GraphAreaX1 ) { $Y1 = $Y1 + ($this->GraphAreaX1-$X1); $X1 = $this->GraphAreaX1; }
5560
-           if ( $X1 > $this->GraphAreaX2 ) { $Y1 = $Y1 + ($X1-$this->GraphAreaX2); $X1 = $this->GraphAreaX2; }
5561
-           if ( $X2 < $this->GraphAreaX1 ) { $Y2 = $Y2 - ($this->GraphAreaY1-$X2); $X2 = $this->GraphAreaX1; }
5562
-           if ( $X2 > $this->GraphAreaX2 ) { $Y2 = $Y2 - ($X2-$this->GraphAreaX2); $X2 = $this->GraphAreaX2; }
5563
-
5564
-           $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5565
-          }
5566
-        }
5567
-      }
5474
+        $OverrideTicks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
5475
+        $OverrideR		= isset($Format["R"]) ? $Format["R"] : VOID;
5476
+        $OverrideG		= isset($Format["G"]) ? $Format["G"] : VOID;
5477
+        $OverrideB		= isset($Format["B"]) ? $Format["B"] : VOID;
5478
+        $OverrideAlpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : VOID;
5479
+
5480
+        $Data = $this->DataSet->getData();
5481
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
5482
+
5483
+        foreach($Data["Series"] as $SerieName => $Serie)
5484
+        {
5485
+        if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5486
+        {
5487
+            if ( $OverrideR != VOID && $OverrideG != VOID && $OverrideB != VOID ) { $R = $OverrideR; $G = $OverrideG; $B = $OverrideB; } else { $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; }
5488
+            if ( $OverrideTicks == NULL ) { $Ticks = $Serie["Ticks"]; } else { $Ticks = $OverrideTicks; }
5489
+            if ( $OverrideAlpha == VOID ) { $Alpha = $Serie["Color"]["Alpha"]; } else { $Alpha = $OverrideAlpha; }
5490
+
5491
+            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks);
5492
+
5493
+            $AxisID   = $Serie["Axis"];
5494
+            $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
5495
+
5496
+            if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5497
+            {
5498
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5499
+            $X = $this->GraphAreaX1 + $XMargin;
5500
+
5501
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5502
+            $Sxy = 0; $Sx = 0; $Sy = 0; $Sxx = 0;
5503
+            foreach($PosArray as $Key => $Y)
5504
+            {
5505
+                if ( $Y != VOID )
5506
+                {
5507
+                $Sxy = $Sxy + $X*$Y;
5508
+                $Sx  = $Sx + $X;
5509
+                $Sy  = $Sy + $Y;
5510
+                $Sxx = $Sxx + $X*$X;
5511
+                }
5512
+
5513
+                $X = $X + $XStep;
5514
+            }
5515
+            $n = count($this->DataSet->stripVOID($PosArray)); //$n = count($PosArray);
5516
+            $M = (($n*$Sxy)-($Sx*$Sy)) / (($n*$Sxx)-($Sx*$Sx));
5517
+            $B = (($Sy)-($M*$Sx))/($n);
5518
+
5519
+            $X1 = $this->GraphAreaX1 + $XMargin;
5520
+            $Y1 = $M * $X1 + $B;
5521
+            $X2 = $this->GraphAreaX2 - $XMargin;
5522
+            $Y2 = $M * $X2 + $B;
5523
+
5524
+            if ( $Y1 < $this->GraphAreaY1 ) { $X1 = $X1 + ($this->GraphAreaY1-$Y1); $Y1 = $this->GraphAreaY1; }
5525
+            if ( $Y1 > $this->GraphAreaY2 ) { $X1 = $X1 + ($Y1-$this->GraphAreaY2); $Y1 = $this->GraphAreaY2; }
5526
+            if ( $Y2 < $this->GraphAreaY1 ) { $X2 = $X2 - ($this->GraphAreaY1-$Y2); $Y2 = $this->GraphAreaY1; }
5527
+            if ( $Y2 > $this->GraphAreaY2 ) { $X2 = $X2 - ($Y2-$this->GraphAreaY2); $Y2 = $this->GraphAreaY2; }
5528
+
5529
+            $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5530
+            }
5531
+            else
5532
+            {
5533
+            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5534
+            $Y = $this->GraphAreaY1 + $XMargin;
5535
+
5536
+            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5537
+            $Sxy = 0; $Sx = 0; $Sy = 0; $Sxx = 0;
5538
+            foreach($PosArray as $Key => $X)
5539
+            {
5540
+                if ( $X != VOID )
5541
+                {
5542
+                $Sxy = $Sxy + $X*$Y;
5543
+                $Sx  = $Sx + $Y;
5544
+                $Sy  = $Sy + $X;
5545
+                $Sxx = $Sxx + $Y*$Y;
5546
+                }
5547
+
5548
+                $Y = $Y + $YStep;
5549
+            }
5550
+            $n = count($this->DataSet->stripVOID($PosArray)); //$n = count($PosArray);
5551
+            $M = (($n*$Sxy)-($Sx*$Sy)) / (($n*$Sxx)-($Sx*$Sx));
5552
+            $B = (($Sy)-($M*$Sx))/($n);
5553
+
5554
+            $Y1 = $this->GraphAreaY1 + $XMargin;
5555
+            $X1 = $M * $Y1 + $B;
5556
+            $Y2 = $this->GraphAreaY2 - $XMargin;
5557
+            $X2 = $M * $Y2 + $B;
5558
+
5559
+            if ( $X1 < $this->GraphAreaX1 ) { $Y1 = $Y1 + ($this->GraphAreaX1-$X1); $X1 = $this->GraphAreaX1; }
5560
+            if ( $X1 > $this->GraphAreaX2 ) { $Y1 = $Y1 + ($X1-$this->GraphAreaX2); $X1 = $this->GraphAreaX2; }
5561
+            if ( $X2 < $this->GraphAreaX1 ) { $Y2 = $Y2 - ($this->GraphAreaY1-$X2); $X2 = $this->GraphAreaX1; }
5562
+            if ( $X2 > $this->GraphAreaX2 ) { $Y2 = $Y2 - ($X2-$this->GraphAreaX2); $X2 = $this->GraphAreaX2; }
5563
+
5564
+            $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5565
+            }
5566
+        }
5567
+        }
5568 5568
     }
5569 5569
 
5570
-   /* Write labels */
5571
-   function writeLabel($SeriesName,$Indexes,$Format="")
5570
+    /* Write labels */
5571
+    function writeLabel($SeriesName,$Indexes,$Format="")
5572 5572
     {
5573
-     $OverrideTitle	= isset($Format["OverrideTitle"]) ? $Format["OverrideTitle"] : NULL;
5574
-     $ForceLabels	= isset($Format["ForceLabels"]) ? $Format["ForceLabels"] : NULL;
5575
-     $DrawPoint		= isset($Format["DrawPoint"]) ? $Format["DrawPoint"] : LABEL_POINT_BOX;
5576
-     $DrawVerticalLine	= isset($Format["DrawVerticalLine"]) ? $Format["DrawVerticalLine"] : FALSE;
5577
-     $VerticalLineR	= isset($Format["VerticalLineR"]) ? $Format["VerticalLineR"] : 0;
5578
-     $VerticalLineG	= isset($Format["VerticalLineG"]) ? $Format["VerticalLineG"] : 0;
5579
-     $VerticalLineB	= isset($Format["VerticalLineB"]) ? $Format["VerticalLineB"] : 0;
5580
-     $VerticalLineAlpha	= isset($Format["VerticalLineAlpha"]) ? $Format["VerticalLineAlpha"] : 40;
5581
-     $VerticalLineTicks	= isset($Format["VerticalLineTicks"]) ? $Format["VerticalLineTicks"] : 2;
5582
-
5583
-     $Data = $this->DataSet->getData();
5584
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5585
-
5586
-     if ( !is_array($Indexes) )    { $Index = $Indexes; $Indexes = ""; $Indexes[] = $Index; }
5587
-     if ( !is_array($SeriesName) ) { $SerieName = $SeriesName; $SeriesName = ""; $SeriesName[] = $SerieName; }
5588
-     if ( $ForceLabels != NULL && !is_array($ForceLabels) ) { $ForceLabel = $ForceLabels; $ForceLabels = ""; $ForceLabels[] = $ForceLabel; }
5589
-
5590
-     foreach ($Indexes as $Key => $Index)
5591
-      {
5592
-       $Series = "";
5593
-
5594
-       if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5595
-        {
5596
-         if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5597
-         $X = $this->GraphAreaX1 + $XMargin + $Index * $XStep;
5598
-
5599
-         if ( $DrawVerticalLine ) { $this->drawLine($X,$this->GraphAreaY1+$Data["YMargin"],$X,$this->GraphAreaY2-$Data["YMargin"],array("R"=>$VerticalLineR,"G"=>$VerticalLineG,"B"=>$VerticalLineB,"Alpha"=>$VerticalLineAlpha,"Ticks"=>$VerticalLineTicks)); }
5600
-
5601
-         $MinY = $this->GraphAreaY2;
5602
-         foreach ($SeriesName as $iKey => $SerieName)
5603
-          {
5604
-           if ( isset($Data["Series"][$SerieName]["Data"][$Index]) )
5605
-            {
5606
-             $AxisID      = $Data["Series"][$SerieName]["Axis"];
5607
-
5608
-             if ( $OverrideTitle != NULL)
5609
-              $Description = $OverrideTitle;
5610
-             elseif ( count($SeriesName) == 1 )
5611
-              {
5612
-               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5573
+        $OverrideTitle	= isset($Format["OverrideTitle"]) ? $Format["OverrideTitle"] : NULL;
5574
+        $ForceLabels	= isset($Format["ForceLabels"]) ? $Format["ForceLabels"] : NULL;
5575
+        $DrawPoint		= isset($Format["DrawPoint"]) ? $Format["DrawPoint"] : LABEL_POINT_BOX;
5576
+        $DrawVerticalLine	= isset($Format["DrawVerticalLine"]) ? $Format["DrawVerticalLine"] : FALSE;
5577
+        $VerticalLineR	= isset($Format["VerticalLineR"]) ? $Format["VerticalLineR"] : 0;
5578
+        $VerticalLineG	= isset($Format["VerticalLineG"]) ? $Format["VerticalLineG"] : 0;
5579
+        $VerticalLineB	= isset($Format["VerticalLineB"]) ? $Format["VerticalLineB"] : 0;
5580
+        $VerticalLineAlpha	= isset($Format["VerticalLineAlpha"]) ? $Format["VerticalLineAlpha"] : 40;
5581
+        $VerticalLineTicks	= isset($Format["VerticalLineTicks"]) ? $Format["VerticalLineTicks"] : 2;
5582
+
5583
+        $Data = $this->DataSet->getData();
5584
+        list($XMargin,$XDivs) = $this->scaleGetXSettings();
5585
+
5586
+        if ( !is_array($Indexes) )    { $Index = $Indexes; $Indexes = ""; $Indexes[] = $Index; }
5587
+        if ( !is_array($SeriesName) ) { $SerieName = $SeriesName; $SeriesName = ""; $SeriesName[] = $SerieName; }
5588
+        if ( $ForceLabels != NULL && !is_array($ForceLabels) ) { $ForceLabel = $ForceLabels; $ForceLabels = ""; $ForceLabels[] = $ForceLabel; }
5589
+
5590
+        foreach ($Indexes as $Key => $Index)
5591
+        {
5592
+        $Series = "";
5593
+
5594
+        if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5595
+        {
5596
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5597
+            $X = $this->GraphAreaX1 + $XMargin + $Index * $XStep;
5598
+
5599
+            if ( $DrawVerticalLine ) { $this->drawLine($X,$this->GraphAreaY1+$Data["YMargin"],$X,$this->GraphAreaY2-$Data["YMargin"],array("R"=>$VerticalLineR,"G"=>$VerticalLineG,"B"=>$VerticalLineB,"Alpha"=>$VerticalLineAlpha,"Ticks"=>$VerticalLineTicks)); }
5600
+
5601
+            $MinY = $this->GraphAreaY2;
5602
+            foreach ($SeriesName as $iKey => $SerieName)
5603
+            {
5604
+            if ( isset($Data["Series"][$SerieName]["Data"][$Index]) )
5605
+            {
5606
+                $AxisID      = $Data["Series"][$SerieName]["Axis"];
5607
+
5608
+                if ( $OverrideTitle != NULL)
5609
+                $Description = $OverrideTitle;
5610
+                elseif ( count($SeriesName) == 1 )
5611
+                {
5612
+                if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5613 5613
                 $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5614
-               else
5614
+                else
5615 5615
                 $Description = $Data["Series"][$SerieName]["Description"];
5616
-              }
5617
-             elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5618
-              $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5619
-
5620
-             $AxisMode     = $Data["Axis"][$AxisID]["Display"];
5621
-             $AxisFormat   = $Data["Axis"][$AxisID]["Format"];
5622
-             $AxisUnit     = $Data["Axis"][$AxisID]["Unit"];
5623
-
5624
-             $Serie = "";
5625
-             $Serie["R"] = $Data["Series"][$SerieName]["Color"]["R"];
5626
-             $Serie["G"] = $Data["Series"][$SerieName]["Color"]["G"];
5627
-             $Serie["B"] = $Data["Series"][$SerieName]["Color"]["B"];
5628
-             $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5629
-
5630
-             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5631
-              $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5632
-             else
5633
-              $SerieOffset = 0;
5634
-
5635
-             $Value = $Data["Series"][$SerieName]["Data"][$Index];
5636
-             if ( $Value == VOID ) { $Value = "NaN"; }
5637
-
5638
-             if ( $ForceLabels != NULL )
5639
-              $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5640
-             else
5641
-              $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5642
-
5643
-             if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5644
-              {
5645
-               if ( $Value >=0 ) { $LookFor = "+"; } else { $LookFor = "-"; }
5646
-
5647
-               $Value = 0; $Done = FALSE;
5648
-               foreach($Data["Series"] as $Name => $SerieLookup)
5616
+                }
5617
+                elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5618
+                $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5619
+
5620
+                $AxisMode     = $Data["Axis"][$AxisID]["Display"];
5621
+                $AxisFormat   = $Data["Axis"][$AxisID]["Format"];
5622
+                $AxisUnit     = $Data["Axis"][$AxisID]["Unit"];
5623
+
5624
+                $Serie = "";
5625
+                $Serie["R"] = $Data["Series"][$SerieName]["Color"]["R"];
5626
+                $Serie["G"] = $Data["Series"][$SerieName]["Color"]["G"];
5627
+                $Serie["B"] = $Data["Series"][$SerieName]["Color"]["B"];
5628
+                $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5629
+
5630
+                if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5631
+                $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5632
+                else
5633
+                $SerieOffset = 0;
5634
+
5635
+                $Value = $Data["Series"][$SerieName]["Data"][$Index];
5636
+                if ( $Value == VOID ) { $Value = "NaN"; }
5637
+
5638
+                if ( $ForceLabels != NULL )
5639
+                $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5640
+                else
5641
+                $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5642
+
5643
+                if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5644
+                {
5645
+                if ( $Value >=0 ) { $LookFor = "+"; } else { $LookFor = "-"; }
5646
+
5647
+                $Value = 0; $Done = FALSE;
5648
+                foreach($Data["Series"] as $Name => $SerieLookup)
5649 5649
                 {
5650
-                 if ( $SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done )
5651
-                  {
5652
-                   if ( isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID )
5650
+                    if ( $SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done )
5651
+                    {
5652
+                    if ( isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID )
5653 5653
                     {
5654
-                     if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+" ) { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5655
-                     if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-" )  { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5656
-                     if ($Name == $SerieName ) { $Done = TRUE; }
5654
+                        if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+" ) { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5655
+                        if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-" )  { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5656
+                        if ($Name == $SerieName ) { $Done = TRUE; }
5657 5657
                     }
5658
-                  }
5658
+                    }
5659
+                }
5659 5660
                 }
5660
-              }
5661 5661
 
5662
-             $X = floor($this->GraphAreaX1 + $XMargin + $Index * $XStep + $SerieOffset);
5663
-             $Y = floor($this->scaleComputeY($Value,array("AxisID"=>$AxisID)));
5662
+                $X = floor($this->GraphAreaX1 + $XMargin + $Index * $XStep + $SerieOffset);
5663
+                $Y = floor($this->scaleComputeY($Value,array("AxisID"=>$AxisID)));
5664 5664
 
5665
-             if ($Y < $MinY) { $MinY = $Y; }
5665
+                if ($Y < $MinY) { $MinY = $Y; }
5666 5666
 
5667
-             if ( $DrawPoint == LABEL_POINT_CIRCLE )
5668
-              $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5669
-             elseif ( $DrawPoint == LABEL_POINT_BOX )
5670
-              $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5667
+                if ( $DrawPoint == LABEL_POINT_CIRCLE )
5668
+                $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5669
+                elseif ( $DrawPoint == LABEL_POINT_BOX )
5670
+                $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5671 5671
 
5672
-             $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5672
+                $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5673 5673
             }
5674
-          }
5675
-         $this->drawLabelBox($X,$MinY-3,$Description,$Series,$Format);
5674
+            }
5675
+            $this->drawLabelBox($X,$MinY-3,$Description,$Series,$Format);
5676 5676
 
5677 5677
         }
5678
-       else
5678
+        else
5679 5679
         {
5680
-         if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5681
-         $Y = $this->GraphAreaY1 + $XMargin + $Index * $XStep;
5680
+            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5681
+            $Y = $this->GraphAreaY1 + $XMargin + $Index * $XStep;
5682 5682
 
5683
-         if ( $DrawVerticalLine ) { $this->drawLine($this->GraphAreaX1+$Data["YMargin"],$Y,$this->GraphAreaX2-$Data["YMargin"],$Y,array("R"=>$VerticalLineR,"G"=>$VerticalLineG,"B"=>$VerticalLineB,"Alpha"=>$VerticalLineAlpha,"Ticks"=>$VerticalLineTicks)); }
5683
+            if ( $DrawVerticalLine ) { $this->drawLine($this->GraphAreaX1+$Data["YMargin"],$Y,$this->GraphAreaX2-$Data["YMargin"],$Y,array("R"=>$VerticalLineR,"G"=>$VerticalLineG,"B"=>$VerticalLineB,"Alpha"=>$VerticalLineAlpha,"Ticks"=>$VerticalLineTicks)); }
5684 5684
 
5685
-         $MinX = $this->GraphAreaX2;
5686
-         foreach ($SeriesName as $Key => $SerieName)
5687
-          {
5688
-           if ( isset($Data["Series"][$SerieName]["Data"][$Index]) )
5685
+            $MinX = $this->GraphAreaX2;
5686
+            foreach ($SeriesName as $Key => $SerieName)
5687
+            {
5688
+            if ( isset($Data["Series"][$SerieName]["Data"][$Index]) )
5689 5689
             {
5690
-             $AxisID      = $Data["Series"][$SerieName]["Axis"];
5690
+                $AxisID      = $Data["Series"][$SerieName]["Axis"];
5691 5691
 
5692
-             if ( $OverrideTitle != NULL)
5693
-              $Description = $OverrideTitle;
5694
-             elseif ( count($SeriesName) == 1 )
5695
-              {
5696
-               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5692
+                if ( $OverrideTitle != NULL)
5693
+                $Description = $OverrideTitle;
5694
+                elseif ( count($SeriesName) == 1 )
5695
+                {
5696
+                if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5697 5697
                 $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5698
-               else
5698
+                else
5699 5699
                 $Description = $Data["Series"][$SerieName]["Description"];
5700
-              }
5701
-             elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5702
-              $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5703
-
5704
-             $AxisMode     = $Data["Axis"][$AxisID]["Display"];
5705
-             $AxisFormat   = $Data["Axis"][$AxisID]["Format"];
5706
-             $AxisUnit     = $Data["Axis"][$AxisID]["Unit"];
5707
-
5708
-             $Serie = "";
5709
-             if ( isset($Data["Extended"]["Palette"][$Index] ) )
5710
-              {
5711
-               $Serie["R"] = $Data["Extended"]["Palette"][$Index]["R"];
5712
-               $Serie["G"] = $Data["Extended"]["Palette"][$Index]["G"];
5713
-               $Serie["B"] = $Data["Extended"]["Palette"][$Index]["B"];
5714
-               $Serie["Alpha"] = $Data["Extended"]["Palette"][$Index]["Alpha"];
5715
-              }
5716
-             else
5717
-              {
5718
-               $Serie["R"] = $Data["Series"][$SerieName]["Color"]["R"];
5719
-               $Serie["G"] = $Data["Series"][$SerieName]["Color"]["G"];
5720
-               $Serie["B"] = $Data["Series"][$SerieName]["Color"]["B"];
5721
-               $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5722
-              }
5723
-
5724
-             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5725
-              $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5726
-             else
5727
-              $SerieOffset = 0;
5728
-
5729
-             $Value = $Data["Series"][$SerieName]["Data"][$Index];
5730
-             if ( $ForceLabels != NULL )
5731
-              $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5732
-             else
5733
-              $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5734
-             if ( $Value == VOID ) { $Value = "NaN"; }
5735
-
5736
-             if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5737
-              {
5738
-               if ( $Value >=0 ) { $LookFor = "+"; } else { $LookFor = "-"; }
5739
-
5740
-               $Value = 0; $Done = FALSE;
5741
-               foreach($Data["Series"] as $Name => $SerieLookup)
5700
+                }
5701
+                elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5702
+                $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5703
+
5704
+                $AxisMode     = $Data["Axis"][$AxisID]["Display"];
5705
+                $AxisFormat   = $Data["Axis"][$AxisID]["Format"];
5706
+                $AxisUnit     = $Data["Axis"][$AxisID]["Unit"];
5707
+
5708
+                $Serie = "";
5709
+                if ( isset($Data["Extended"]["Palette"][$Index] ) )
5710
+                {
5711
+                $Serie["R"] = $Data["Extended"]["Palette"][$Index]["R"];
5712
+                $Serie["G"] = $Data["Extended"]["Palette"][$Index]["G"];
5713
+                $Serie["B"] = $Data["Extended"]["Palette"][$Index]["B"];
5714
+                $Serie["Alpha"] = $Data["Extended"]["Palette"][$Index]["Alpha"];
5715
+                }
5716
+                else
5717
+                {
5718
+                $Serie["R"] = $Data["Series"][$SerieName]["Color"]["R"];
5719
+                $Serie["G"] = $Data["Series"][$SerieName]["Color"]["G"];
5720
+                $Serie["B"] = $Data["Series"][$SerieName]["Color"]["B"];
5721
+                $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5722
+                }
5723
+
5724
+                if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5725
+                $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5726
+                else
5727
+                $SerieOffset = 0;
5728
+
5729
+                $Value = $Data["Series"][$SerieName]["Data"][$Index];
5730
+                if ( $ForceLabels != NULL )
5731
+                $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5732
+                else
5733
+                $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5734
+                if ( $Value == VOID ) { $Value = "NaN"; }
5735
+
5736
+                if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5737
+                {
5738
+                if ( $Value >=0 ) { $LookFor = "+"; } else { $LookFor = "-"; }
5739
+
5740
+                $Value = 0; $Done = FALSE;
5741
+                foreach($Data["Series"] as $Name => $SerieLookup)
5742 5742
                 {
5743
-                 if ( $SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done )
5744
-                  {
5745
-                   if ( isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID )
5743
+                    if ( $SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done )
5744
+                    {
5745
+                    if ( isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID )
5746 5746
                     {
5747
-                     if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+" ) { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5748
-                     if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-" )  { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5749
-                     if ($Name == $SerieName ) { $Done = TRUE; }
5747
+                        if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+" ) { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5748
+                        if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-" )  { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5749
+                        if ($Name == $SerieName ) { $Done = TRUE; }
5750 5750
                     }
5751
-                  }
5751
+                    }
5752
+                }
5752 5753
                 }
5753
-              }
5754 5754
 
5755
-             $X = floor($this->scaleComputeY($Value,array("AxisID"=>$AxisID)));
5756
-             $Y = floor($this->GraphAreaY1 + $XMargin + $Index * $XStep + $SerieOffset);
5755
+                $X = floor($this->scaleComputeY($Value,array("AxisID"=>$AxisID)));
5756
+                $Y = floor($this->GraphAreaY1 + $XMargin + $Index * $XStep + $SerieOffset);
5757 5757
 
5758
-             if ($X < $MinX) { $MinX = $X; }
5758
+                if ($X < $MinX) { $MinX = $X; }
5759 5759
 
5760
-             if ( $DrawPoint == LABEL_POINT_CIRCLE )
5761
-              $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5762
-             elseif ( $DrawPoint == LABEL_POINT_BOX )
5763
-              $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5760
+                if ( $DrawPoint == LABEL_POINT_CIRCLE )
5761
+                $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5762
+                elseif ( $DrawPoint == LABEL_POINT_BOX )
5763
+                $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5764 5764
 
5765
-             $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5765
+                $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5766 5766
             }
5767
-          }
5768
-         $this->drawLabelBox($MinX,$Y-3,$Description,$Series,$Format);
5767
+            }
5768
+            $this->drawLabelBox($MinX,$Y-3,$Description,$Series,$Format);
5769 5769
 
5770 5770
         }
5771
-      }
5771
+        }
5772 5772
     }
5773 5773
 
5774
-   /* Draw a label box */
5775
-   function drawLabelBox($X,$Y,$Title,$Captions,$Format="")
5774
+    /* Draw a label box */
5775
+    function drawLabelBox($X,$Y,$Title,$Captions,$Format="")
5776 5776
     {
5777
-     $NoTitle		= isset($Format["NoTitle"]) ? $Format["NoTitle"] : NULL;
5778
-     $BoxWidth		= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 50;
5779
-     $DrawSerieColor	= isset($Format["DrawSerieColor"]) ? $Format["DrawSerieColor"] : TRUE;
5780
-     $SerieR		= isset($Format["SerieR"]) ? $Format["SerieR"] : NULL;
5781
-     $SerieG		= isset($Format["SerieG"]) ? $Format["SerieG"] : NULL;
5782
-     $SerieB		= isset($Format["SerieB"]) ? $Format["SerieB"] : NULL;
5783
-     $SerieAlpha	= isset($Format["SerieAlpha"]) ? $Format["SerieAlpha"] : NULL;
5784
-     $SerieBoxSize	= isset($Format["SerieBoxSize"]) ? $Format["SerieBoxSize"] : 6;
5785
-     $SerieBoxSpacing	= isset($Format["SerieBoxSpacing"]) ? $Format["SerieBoxSpacing"] : 4;
5786
-     $VerticalMargin	= isset($Format["VerticalMargin"]) ? $Format["VerticalMargin"] : 10;
5787
-     $HorizontalMargin	= isset($Format["HorizontalMargin"]) ? $Format["HorizontalMargin"] : 8;
5788
-     $R			= isset($Format["R"]) ? $Format["R"] : $this->FontColorR;
5789
-     $G			= isset($Format["G"]) ? $Format["G"] : $this->FontColorG;
5790
-     $B			= isset($Format["B"]) ? $Format["B"] : $this->FontColorB;
5791
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
5792
-     $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
5793
-     $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
5794
-     $TitleMode		= isset($Format["TitleMode"]) ? $Format["TitleMode"] : LABEL_TITLE_NOBACKGROUND;
5795
-     $TitleR		= isset($Format["TitleR"]) ? $Format["TitleR"] : $R;
5796
-     $TitleG		= isset($Format["TitleG"]) ? $Format["TitleG"] : $G;
5797
-     $TitleB		= isset($Format["TitleB"]) ? $Format["TitleB"] : $B;
5798
-     $TitleBackgroundR	= isset($Format["TitleBackgroundR"]) ? $Format["TitleBackgroundR"] : 0;
5799
-     $TitleBackgroundG	= isset($Format["TitleBackgroundG"]) ? $Format["TitleBackgroundG"] : 0;
5800
-     $TitleBackgroundB	= isset($Format["TitleBackgroundB"]) ? $Format["TitleBackgroundB"] : 0;
5801
-     $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
5802
-     $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
5803
-     $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
5804
-     $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 220;
5805
-     $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 220;
5806
-     $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 220;
5807
-
5808
-     if ( !$DrawSerieColor ) { $SerieBoxSize = 0; $SerieBoxSpacing = 0; }
5809
-
5810
-     $TxtPos      = $this->getTextBox($X,$Y,$FontName,$FontSize,0,$Title);
5811
-     $TitleWidth  = ($TxtPos[1]["X"] - $TxtPos[0]["X"])+$VerticalMargin*2;
5812
-     $TitleHeight = ($TxtPos[0]["Y"] - $TxtPos[2]["Y"]);
5813
-
5814
-     if ( $NoTitle ) { $TitleWidth = 0; $TitleHeight = 0; }
5815
-
5816
-     $CaptionWidth = 0; $CaptionHeight = -$HorizontalMargin;
5817
-     foreach($Captions as $Key =>$Caption)
5818
-      {
5819
-       $TxtPos        = $this->getTextBox($X,$Y,$FontName,$FontSize,0,$Caption["Caption"]);
5820
-       $CaptionWidth  = max($CaptionWidth,($TxtPos[1]["X"] - $TxtPos[0]["X"])+$VerticalMargin*2);
5821
-       $CaptionHeight = $CaptionHeight + max(($TxtPos[0]["Y"] - $TxtPos[2]["Y"]),($SerieBoxSize+2)) + $HorizontalMargin;
5822
-      }
5823
-
5824
-     if ( $CaptionHeight <= 5 ) { $CaptionHeight = $CaptionHeight + $HorizontalMargin/2; }
5825
-
5826
-     if ( $DrawSerieColor ) { $CaptionWidth = $CaptionWidth + $SerieBoxSize + $SerieBoxSpacing; }
5827
-
5828
-     $BoxWidth = max($BoxWidth,$TitleWidth,$CaptionWidth);
5829
-
5830
-     $XMin = $X - 5 - floor(($BoxWidth-10) / 2);
5831
-     $XMax = $X + 5 + floor(($BoxWidth-10) / 2);
5832
-
5833
-     $RestoreShadow = $this->Shadow;
5834
-     if ( $this->Shadow == TRUE )
5835
-      {
5836
-       $this->Shadow = FALSE;
5837
-
5838
-       $Poly = "";
5839
-       $Poly[] = $X+$this->ShadowX; $Poly[] = $Y+$this->ShadowX;
5840
-       $Poly[] = $X+5+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5841
-       $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5842
-
5843
-       if ( $NoTitle )
5844
-        {
5845
-         $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5846
-         $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5847
-        }
5848
-       else
5849
-        {
5850
-         $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5851
-         $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5852
-        }
5853
-
5854
-       $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5855
-       $Poly[] = $X-5+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5856
-       $this->drawPolygon($Poly,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
5857
-      }
5858
-
5859
-     /* Draw the background */
5860
-     $GradientSettings = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB);
5861
-     if ( $NoTitle )
5862
-      $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5863
-     else
5864
-      $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5865
-     $Poly = ""; $Poly[] = $X; $Poly[] = $Y; $Poly[] = $X-5; $Poly[] = $Y-5; $Poly[] = $X+5; $Poly[] = $Y-5;
5866
-     $this->drawPolygon($Poly,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB,"NoBorder"=>TRUE));
5867
-
5868
-     /* Outer border */
5869
-     $OuterBorderColor = $this->allocateColor($this->Picture,100,100,100,100);
5870
-     imageline($this->Picture,$XMin,$Y-5,$X-5,$Y-5,$OuterBorderColor);
5871
-     imageline($this->Picture,$X,$Y,$X-5,$Y-5,$OuterBorderColor);
5872
-     imageline($this->Picture,$X,$Y,$X+5,$Y-5,$OuterBorderColor);
5873
-     imageline($this->Picture,$X+5,$Y-5,$XMax,$Y-5,$OuterBorderColor);
5874
-     if ( $NoTitle )
5875
-      {
5876
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin,$Y-5,$OuterBorderColor);
5877
-       imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5,$OuterBorderColor);
5878
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$OuterBorderColor);
5879
-      }
5880
-     else
5881
-      {
5882
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin,$Y-5,$OuterBorderColor);
5883
-       imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5,$OuterBorderColor);
5884
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$OuterBorderColor);
5885
-      }
5886
-
5887
-     /* Inner border */
5888
-     $InnerBorderColor = $this->allocateColor($this->Picture,255,255,255,100);
5889
-     imageline($this->Picture,$XMin+1,$Y-6,$X-5,$Y-6,$InnerBorderColor);
5890
-     imageline($this->Picture,$X,$Y-1,$X-5,$Y-6,$InnerBorderColor);
5891
-     imageline($this->Picture,$X,$Y-1,$X+5,$Y-6,$InnerBorderColor);
5892
-     imageline($this->Picture,$X+5,$Y-6,$XMax-1,$Y-6,$InnerBorderColor);
5893
-     if ( $NoTitle )
5894
-      {
5895
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin+1,$Y-6,$InnerBorderColor);
5896
-       imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-6,$InnerBorderColor);
5897
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$InnerBorderColor);
5898
-      }
5899
-     else
5900
-      {
5901
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin+1,$Y-6,$InnerBorderColor);
5902
-       imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-6,$InnerBorderColor);
5903
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$InnerBorderColor);
5904
-      }
5905
-
5906
-     /* Draw the separator line */
5907
-     if ( $TitleMode == LABEL_TITLE_NOBACKGROUND && !$NoTitle )
5908
-      {
5909
-       $YPos    = $Y-7-$CaptionHeight-$HorizontalMargin-$HorizontalMargin/2;
5910
-       $XMargin = $VerticalMargin / 2;
5911
-       $this->drawLine($XMin+$XMargin,$YPos+1,$XMax-$XMargin,$YPos+1,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB));
5912
-       $this->drawLine($XMin+$XMargin,$YPos,$XMax-$XMargin,$YPos,array("R"=>$GradientStartR,"G"=>$GradientStartG,"B"=>$GradientStartB));
5913
-      }
5914
-     elseif ( $TitleMode == LABEL_TITLE_BACKGROUND )
5915
-      {
5916
-       $this->drawFilledRectangle($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2,array("R"=>$TitleBackgroundR,"G"=>$TitleBackgroundG,"B"=>$TitleBackgroundB));
5917
-       imageline($this->Picture,$XMin+1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$XMax-1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$InnerBorderColor);
5918
-      }
5919
-
5920
-     /* Write the description */
5921
-     if ( !$NoTitle )
5922
-      $this->drawText($XMin+$VerticalMargin,$Y-7-$CaptionHeight-$HorizontalMargin*2,$Title,array("Align"=>TEXT_ALIGN_BOTTOMLEFT,"R"=>$TitleR,"G"=>$TitleG,"B"=>$TitleB));
5923
-
5924
-     /* Write the value */
5925
-     $YPos = $Y-5-$HorizontalMargin; $XPos = $XMin+$VerticalMargin+$SerieBoxSize+$SerieBoxSpacing;
5926
-     foreach($Captions as $Key => $Caption)
5927
-      {
5928
-       $CaptionTxt    = $Caption["Caption"];
5929
-       $TxtPos        = $this->getTextBox($XPos,$YPos,$FontName,$FontSize,0,$CaptionTxt);
5930
-       $CaptionHeight = ($TxtPos[0]["Y"] - $TxtPos[2]["Y"]);
5931
-
5932
-       /* Write the serie color if needed */
5933
-       if ( $DrawSerieColor )
5934
-        {
5935
-         $BoxSettings = array("R"=>$Caption["Format"]["R"],"G"=>$Caption["Format"]["G"],"B"=>$Caption["Format"]["B"],"Alpha"=>$Caption["Format"]["Alpha"],"BorderR"=>0,"BorderG"=>0,"BorderB"=>0);
5936
-         $this->drawFilledRectangle($XMin+$VerticalMargin,$YPos-$SerieBoxSize,$XMin+$VerticalMargin+$SerieBoxSize,$YPos,$BoxSettings);
5937
-        }
5938
-
5939
-       $this->drawText($XPos,$YPos,$CaptionTxt,array("Align"=>TEXT_ALIGN_BOTTOMLEFT));
5940
-
5941
-       $YPos = $YPos - $CaptionHeight - $HorizontalMargin;
5942
-      }
5943
-
5944
-     $this->Shadow = $RestoreShadow;
5777
+        $NoTitle		= isset($Format["NoTitle"]) ? $Format["NoTitle"] : NULL;
5778
+        $BoxWidth		= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 50;
5779
+        $DrawSerieColor	= isset($Format["DrawSerieColor"]) ? $Format["DrawSerieColor"] : TRUE;
5780
+        $SerieR		= isset($Format["SerieR"]) ? $Format["SerieR"] : NULL;
5781
+        $SerieG		= isset($Format["SerieG"]) ? $Format["SerieG"] : NULL;
5782
+        $SerieB		= isset($Format["SerieB"]) ? $Format["SerieB"] : NULL;
5783
+        $SerieAlpha	= isset($Format["SerieAlpha"]) ? $Format["SerieAlpha"] : NULL;
5784
+        $SerieBoxSize	= isset($Format["SerieBoxSize"]) ? $Format["SerieBoxSize"] : 6;
5785
+        $SerieBoxSpacing	= isset($Format["SerieBoxSpacing"]) ? $Format["SerieBoxSpacing"] : 4;
5786
+        $VerticalMargin	= isset($Format["VerticalMargin"]) ? $Format["VerticalMargin"] : 10;
5787
+        $HorizontalMargin	= isset($Format["HorizontalMargin"]) ? $Format["HorizontalMargin"] : 8;
5788
+        $R			= isset($Format["R"]) ? $Format["R"] : $this->FontColorR;
5789
+        $G			= isset($Format["G"]) ? $Format["G"] : $this->FontColorG;
5790
+        $B			= isset($Format["B"]) ? $Format["B"] : $this->FontColorB;
5791
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
5792
+        $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
5793
+        $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
5794
+        $TitleMode		= isset($Format["TitleMode"]) ? $Format["TitleMode"] : LABEL_TITLE_NOBACKGROUND;
5795
+        $TitleR		= isset($Format["TitleR"]) ? $Format["TitleR"] : $R;
5796
+        $TitleG		= isset($Format["TitleG"]) ? $Format["TitleG"] : $G;
5797
+        $TitleB		= isset($Format["TitleB"]) ? $Format["TitleB"] : $B;
5798
+        $TitleBackgroundR	= isset($Format["TitleBackgroundR"]) ? $Format["TitleBackgroundR"] : 0;
5799
+        $TitleBackgroundG	= isset($Format["TitleBackgroundG"]) ? $Format["TitleBackgroundG"] : 0;
5800
+        $TitleBackgroundB	= isset($Format["TitleBackgroundB"]) ? $Format["TitleBackgroundB"] : 0;
5801
+        $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
5802
+        $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
5803
+        $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
5804
+        $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 220;
5805
+        $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 220;
5806
+        $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 220;
5807
+
5808
+        if ( !$DrawSerieColor ) { $SerieBoxSize = 0; $SerieBoxSpacing = 0; }
5809
+
5810
+        $TxtPos      = $this->getTextBox($X,$Y,$FontName,$FontSize,0,$Title);
5811
+        $TitleWidth  = ($TxtPos[1]["X"] - $TxtPos[0]["X"])+$VerticalMargin*2;
5812
+        $TitleHeight = ($TxtPos[0]["Y"] - $TxtPos[2]["Y"]);
5813
+
5814
+        if ( $NoTitle ) { $TitleWidth = 0; $TitleHeight = 0; }
5815
+
5816
+        $CaptionWidth = 0; $CaptionHeight = -$HorizontalMargin;
5817
+        foreach($Captions as $Key =>$Caption)
5818
+        {
5819
+        $TxtPos        = $this->getTextBox($X,$Y,$FontName,$FontSize,0,$Caption["Caption"]);
5820
+        $CaptionWidth  = max($CaptionWidth,($TxtPos[1]["X"] - $TxtPos[0]["X"])+$VerticalMargin*2);
5821
+        $CaptionHeight = $CaptionHeight + max(($TxtPos[0]["Y"] - $TxtPos[2]["Y"]),($SerieBoxSize+2)) + $HorizontalMargin;
5822
+        }
5823
+
5824
+        if ( $CaptionHeight <= 5 ) { $CaptionHeight = $CaptionHeight + $HorizontalMargin/2; }
5825
+
5826
+        if ( $DrawSerieColor ) { $CaptionWidth = $CaptionWidth + $SerieBoxSize + $SerieBoxSpacing; }
5827
+
5828
+        $BoxWidth = max($BoxWidth,$TitleWidth,$CaptionWidth);
5829
+
5830
+        $XMin = $X - 5 - floor(($BoxWidth-10) / 2);
5831
+        $XMax = $X + 5 + floor(($BoxWidth-10) / 2);
5832
+
5833
+        $RestoreShadow = $this->Shadow;
5834
+        if ( $this->Shadow == TRUE )
5835
+        {
5836
+        $this->Shadow = FALSE;
5837
+
5838
+        $Poly = "";
5839
+        $Poly[] = $X+$this->ShadowX; $Poly[] = $Y+$this->ShadowX;
5840
+        $Poly[] = $X+5+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5841
+        $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5842
+
5843
+        if ( $NoTitle )
5844
+        {
5845
+            $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5846
+            $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5847
+        }
5848
+        else
5849
+        {
5850
+            $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5851
+            $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5852
+        }
5853
+
5854
+        $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5855
+        $Poly[] = $X-5+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5856
+        $this->drawPolygon($Poly,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
5857
+        }
5858
+
5859
+        /* Draw the background */
5860
+        $GradientSettings = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB);
5861
+        if ( $NoTitle )
5862
+        $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5863
+        else
5864
+        $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5865
+        $Poly = ""; $Poly[] = $X; $Poly[] = $Y; $Poly[] = $X-5; $Poly[] = $Y-5; $Poly[] = $X+5; $Poly[] = $Y-5;
5866
+        $this->drawPolygon($Poly,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB,"NoBorder"=>TRUE));
5867
+
5868
+        /* Outer border */
5869
+        $OuterBorderColor = $this->allocateColor($this->Picture,100,100,100,100);
5870
+        imageline($this->Picture,$XMin,$Y-5,$X-5,$Y-5,$OuterBorderColor);
5871
+        imageline($this->Picture,$X,$Y,$X-5,$Y-5,$OuterBorderColor);
5872
+        imageline($this->Picture,$X,$Y,$X+5,$Y-5,$OuterBorderColor);
5873
+        imageline($this->Picture,$X+5,$Y-5,$XMax,$Y-5,$OuterBorderColor);
5874
+        if ( $NoTitle )
5875
+        {
5876
+        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin,$Y-5,$OuterBorderColor);
5877
+        imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5,$OuterBorderColor);
5878
+        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$OuterBorderColor);
5879
+        }
5880
+        else
5881
+        {
5882
+        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin,$Y-5,$OuterBorderColor);
5883
+        imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5,$OuterBorderColor);
5884
+        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$OuterBorderColor);
5885
+        }
5886
+
5887
+        /* Inner border */
5888
+        $InnerBorderColor = $this->allocateColor($this->Picture,255,255,255,100);
5889
+        imageline($this->Picture,$XMin+1,$Y-6,$X-5,$Y-6,$InnerBorderColor);
5890
+        imageline($this->Picture,$X,$Y-1,$X-5,$Y-6,$InnerBorderColor);
5891
+        imageline($this->Picture,$X,$Y-1,$X+5,$Y-6,$InnerBorderColor);
5892
+        imageline($this->Picture,$X+5,$Y-6,$XMax-1,$Y-6,$InnerBorderColor);
5893
+        if ( $NoTitle )
5894
+        {
5895
+        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin+1,$Y-6,$InnerBorderColor);
5896
+        imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-6,$InnerBorderColor);
5897
+        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$InnerBorderColor);
5898
+        }
5899
+        else
5900
+        {
5901
+        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin+1,$Y-6,$InnerBorderColor);
5902
+        imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-6,$InnerBorderColor);
5903
+        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$InnerBorderColor);
5904
+        }
5905
+
5906
+        /* Draw the separator line */
5907
+        if ( $TitleMode == LABEL_TITLE_NOBACKGROUND && !$NoTitle )
5908
+        {
5909
+        $YPos    = $Y-7-$CaptionHeight-$HorizontalMargin-$HorizontalMargin/2;
5910
+        $XMargin = $VerticalMargin / 2;
5911
+        $this->drawLine($XMin+$XMargin,$YPos+1,$XMax-$XMargin,$YPos+1,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB));
5912
+        $this->drawLine($XMin+$XMargin,$YPos,$XMax-$XMargin,$YPos,array("R"=>$GradientStartR,"G"=>$GradientStartG,"B"=>$GradientStartB));
5913
+        }
5914
+        elseif ( $TitleMode == LABEL_TITLE_BACKGROUND )
5915
+        {
5916
+        $this->drawFilledRectangle($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2,array("R"=>$TitleBackgroundR,"G"=>$TitleBackgroundG,"B"=>$TitleBackgroundB));
5917
+        imageline($this->Picture,$XMin+1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$XMax-1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$InnerBorderColor);
5918
+        }
5919
+
5920
+        /* Write the description */
5921
+        if ( !$NoTitle )
5922
+        $this->drawText($XMin+$VerticalMargin,$Y-7-$CaptionHeight-$HorizontalMargin*2,$Title,array("Align"=>TEXT_ALIGN_BOTTOMLEFT,"R"=>$TitleR,"G"=>$TitleG,"B"=>$TitleB));
5923
+
5924
+        /* Write the value */
5925
+        $YPos = $Y-5-$HorizontalMargin; $XPos = $XMin+$VerticalMargin+$SerieBoxSize+$SerieBoxSpacing;
5926
+        foreach($Captions as $Key => $Caption)
5927
+        {
5928
+        $CaptionTxt    = $Caption["Caption"];
5929
+        $TxtPos        = $this->getTextBox($XPos,$YPos,$FontName,$FontSize,0,$CaptionTxt);
5930
+        $CaptionHeight = ($TxtPos[0]["Y"] - $TxtPos[2]["Y"]);
5931
+
5932
+        /* Write the serie color if needed */
5933
+        if ( $DrawSerieColor )
5934
+        {
5935
+            $BoxSettings = array("R"=>$Caption["Format"]["R"],"G"=>$Caption["Format"]["G"],"B"=>$Caption["Format"]["B"],"Alpha"=>$Caption["Format"]["Alpha"],"BorderR"=>0,"BorderG"=>0,"BorderB"=>0);
5936
+            $this->drawFilledRectangle($XMin+$VerticalMargin,$YPos-$SerieBoxSize,$XMin+$VerticalMargin+$SerieBoxSize,$YPos,$BoxSettings);
5937
+        }
5938
+
5939
+        $this->drawText($XPos,$YPos,$CaptionTxt,array("Align"=>TEXT_ALIGN_BOTTOMLEFT));
5940
+
5941
+        $YPos = $YPos - $CaptionHeight - $HorizontalMargin;
5942
+        }
5943
+
5944
+        $this->Shadow = $RestoreShadow;
5945 5945
     }
5946 5946
 
5947
-   /* Draw a basic shape */
5948
-   function drawShape($X,$Y,$Shape,$PlotSize,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha)
5947
+    /* Draw a basic shape */
5948
+    function drawShape($X,$Y,$Shape,$PlotSize,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha)
5949 5949
     {
5950
-     if ( $Shape == SERIE_SHAPE_FILLEDCIRCLE )
5951
-      {
5952
-       if ( $PlotBorder ) { $this->drawFilledCircle($X,$Y,$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5953
-       $this->drawFilledCircle($X,$Y,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5954
-      }
5955
-     elseif ( $Shape == SERIE_SHAPE_FILLEDSQUARE )
5956
-      {
5957
-       if ( $PlotBorder ) { $this->drawFilledRectangle($X-$PlotSize-$BorderSize,$Y-$PlotSize-$BorderSize,$X+$PlotSize+$BorderSize,$Y+$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5958
-       $this->drawFilledRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5959
-      }
5960
-     elseif ( $Shape == SERIE_SHAPE_FILLEDTRIANGLE )
5961
-      {
5962
-       if ( $PlotBorder )
5963
-        {
5964
-         $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize-$BorderSize; $Pos[]=$X-$PlotSize-$BorderSize; $Pos[]=$Y+$PlotSize+$BorderSize; $Pos[]=$X+$PlotSize+$BorderSize; $Pos[]=$Y+$PlotSize+$BorderSize;
5965
-         $this->drawPolygon($Pos,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha));
5966
-        }
5967
-
5968
-       $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X-$PlotSize; $Pos[]=$Y+$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y+$PlotSize;
5969
-       $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5970
-      }
5971
-     elseif ( $Shape == SERIE_SHAPE_TRIANGLE )
5972
-      {
5973
-       $this->drawLine($X,$Y-$PlotSize,$X-$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5974
-       $this->drawLine($X-$PlotSize,$Y+$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5975
-       $this->drawLine($X+$PlotSize,$Y+$PlotSize,$X,$Y-$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5976
-      }
5977
-     elseif ( $Shape == SERIE_SHAPE_SQUARE )
5978
-      $this->drawRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5979
-     elseif ( $Shape == SERIE_SHAPE_CIRCLE )
5980
-      $this->drawCircle($X,$Y,$PlotSize,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5981
-     elseif ( $Shape == SERIE_SHAPE_DIAMOND )
5982
-      {
5983
-       $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5984
-       $this->drawPolygon($Pos,array("NoFill"=>TRUE,"BorderR"=>$R,"BorderG"=>$G,"BorderB"=>$B,"BorderAlpha"=>$Alpha));
5985
-      }      
5986
-     elseif ( $Shape == SERIE_SHAPE_FILLEDDIAMOND )
5987
-      {
5988
-       if ( $PlotBorder )
5989
-        {
5990
-         $Pos = ""; $Pos[]=$X-$PlotSize-$BorderSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize-$BorderSize; $Pos[]=$X+$PlotSize+$BorderSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize+$BorderSize;
5991
-         $this->drawPolygon($Pos,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha));
5992
-        }
5993
-
5994
-       $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5995
-       $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5996
-      }      
5950
+        if ( $Shape == SERIE_SHAPE_FILLEDCIRCLE )
5951
+        {
5952
+        if ( $PlotBorder ) { $this->drawFilledCircle($X,$Y,$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5953
+        $this->drawFilledCircle($X,$Y,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5954
+        }
5955
+        elseif ( $Shape == SERIE_SHAPE_FILLEDSQUARE )
5956
+        {
5957
+        if ( $PlotBorder ) { $this->drawFilledRectangle($X-$PlotSize-$BorderSize,$Y-$PlotSize-$BorderSize,$X+$PlotSize+$BorderSize,$Y+$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5958
+        $this->drawFilledRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5959
+        }
5960
+        elseif ( $Shape == SERIE_SHAPE_FILLEDTRIANGLE )
5961
+        {
5962
+        if ( $PlotBorder )
5963
+        {
5964
+            $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize-$BorderSize; $Pos[]=$X-$PlotSize-$BorderSize; $Pos[]=$Y+$PlotSize+$BorderSize; $Pos[]=$X+$PlotSize+$BorderSize; $Pos[]=$Y+$PlotSize+$BorderSize;
5965
+            $this->drawPolygon($Pos,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha));
5966
+        }
5967
+
5968
+        $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X-$PlotSize; $Pos[]=$Y+$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y+$PlotSize;
5969
+        $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5970
+        }
5971
+        elseif ( $Shape == SERIE_SHAPE_TRIANGLE )
5972
+        {
5973
+        $this->drawLine($X,$Y-$PlotSize,$X-$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5974
+        $this->drawLine($X-$PlotSize,$Y+$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5975
+        $this->drawLine($X+$PlotSize,$Y+$PlotSize,$X,$Y-$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5976
+        }
5977
+        elseif ( $Shape == SERIE_SHAPE_SQUARE )
5978
+        $this->drawRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5979
+        elseif ( $Shape == SERIE_SHAPE_CIRCLE )
5980
+        $this->drawCircle($X,$Y,$PlotSize,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5981
+        elseif ( $Shape == SERIE_SHAPE_DIAMOND )
5982
+        {
5983
+        $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5984
+        $this->drawPolygon($Pos,array("NoFill"=>TRUE,"BorderR"=>$R,"BorderG"=>$G,"BorderB"=>$B,"BorderAlpha"=>$Alpha));
5985
+        }      
5986
+        elseif ( $Shape == SERIE_SHAPE_FILLEDDIAMOND )
5987
+        {
5988
+        if ( $PlotBorder )
5989
+        {
5990
+            $Pos = ""; $Pos[]=$X-$PlotSize-$BorderSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize-$BorderSize; $Pos[]=$X+$PlotSize+$BorderSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize+$BorderSize;
5991
+            $this->drawPolygon($Pos,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha));
5992
+        }
5993
+
5994
+        $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5995
+        $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5996
+        }      
5997 5997
     }
5998 5998
 
5999
-   function drawPolygonChart($Points,$Format="")
5999
+    function drawPolygonChart($Points,$Format="")
6000 6000
     {
6001
-     $R			= isset($Format["R"]) ? $Format["R"] : 0;
6002
-     $G			= isset($Format["G"]) ? $Format["G"] : 0;
6003
-     $B			= isset($Format["B"]) ? $Format["B"] : 0;
6004
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
6005
-     $NoFill		= isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
6006
-     $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
6007
-     $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
6008
-     $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
6009
-     $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
6010
-     $BorderAlpha 	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha / 2;
6011
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
6012
-     $Threshold         = isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
6013
-
6014
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
6015
-
6016
-     $RestoreShadow = $this->Shadow;
6017
-     $this->Shadow = FALSE;
6018
-
6019
-     $AllIntegers = TRUE;
6020
-     for($i=0;$i<=count($Points)-2;$i=$i+2)
6021
-      { if ( $this->getFirstDecimal($Points[$i+1]) != 0 ) { $AllIntegers = FALSE; } }
6022
-
6023
-     /* Convert polygon to segments */
6024
-     $Segments = "";
6025
-     for($i=2;$i<=count($Points)-2;$i=$i+2)
6026
-      { $Segments[] = array("X1"=>$Points[$i-2],"Y1"=>$Points[$i-1],"X2"=>$Points[$i],"Y2"=>$Points[$i+1]); }
6027
-     $Segments[] = array("X1"=>$Points[$i-2],"Y1"=>$Points[$i-1],"X2"=>$Points[0],"Y2"=>$Points[1]);
6028
-
6029
-     /* Simplify straight lines */
6030
-     $Result = ""; $inHorizon = FALSE; $LastX = VOID;
6031
-     foreach($Segments as $Key => $Pos)
6032
-      {
6033
-       if ( $Pos["Y1"] != $Pos["Y2"] )
6034
-        {
6035
-         if ( $inHorizon ) { $inHorizon = FALSE; $Result[] = array("X1"=>$LastX,"Y1"=>$Pos["Y1"],"X2"=>$Pos["X1"],"Y2"=>$Pos["Y1"]); }
6036
-
6037
-         $Result[] = array("X1"=>$Pos["X1"],"Y1"=>$Pos["Y1"],"X2"=>$Pos["X2"],"Y2"=>$Pos["Y2"]);
6038
-        }
6039
-       else { if ( !$inHorizon ) { $inHorizon = TRUE; $LastX = $Pos["X1"];} }
6040
-      }
6041
-     $Segments = $Result;
6042
-
6043
-     /* Do we have something to draw */
6044
-     if ( $Segments == "" ) { return(0); }
6045
-
6046
-     /* For segments debugging purpose */
6047
-     //foreach($Segments as $Key => $Pos)
6048
-     // echo $Pos["X1"].",".$Pos["Y1"].",".$Pos["X2"].",".$Pos["Y2"]."\r\n";
6049
-
6050
-     /* Find out the min & max Y boundaries */
6051
-     $MinY = OUT_OF_SIGHT; $MaxY = OUT_OF_SIGHT;
6052
-     foreach($Segments as $Key => $Coords)
6053
-      {
6054
-       if ( $MinY == OUT_OF_SIGHT || $MinY > min($Coords["Y1"],$Coords["Y2"]) ) { $MinY = min($Coords["Y1"],$Coords["Y2"]); }
6055
-       if ( $MaxY == OUT_OF_SIGHT || $MaxY < max($Coords["Y1"],$Coords["Y2"]) ) { $MaxY = max($Coords["Y1"],$Coords["Y2"]); }
6056
-      }
6057
-
6058
-     if ( $AllIntegers ) { $YStep = 1; } else { $YStep = .5; }
6059
-
6060
-     $MinY = floor($MinY); $MaxY = floor($MaxY);
6061
-
6062
-     /* Scan each Y lines */
6063
-     $DefaultColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
6064
-     $DebugLine = 0; $DebugColor = $this->allocateColor($this->Picture,255,0,0,100);
6065
-
6066
-     $MinY = floor($MinY); $MaxY = floor($MaxY); $YStep = 1; 
6067
-
6068
-     if ( !$NoFill )
6069
-      {
6070
-       //if ( $DebugLine ) { $MinY = $DebugLine; $MaxY = $DebugLine; }
6071
-       for($Y=$MinY;$Y<=$MaxY;$Y=$Y+$YStep)
6072
-        {
6073
-         $Intersections = ""; $LastSlope = NULL; $RestoreLast = "-";
6074
-         foreach($Segments as $Key => $Coords)
6075
-          {
6076
-           $X1 = $Coords["X1"]; $X2 = $Coords["X2"]; $Y1 = $Coords["Y1"]; $Y2 = $Coords["Y2"];
6077
-
6078
-           if ( min($Y1,$Y2) <= $Y && max($Y1,$Y2) >= $Y )
6079
-            {
6080
-             if ( $Y1 == $Y2 )
6081
-              { $X = $X1; }
6082
-             else
6083
-              { $X = $X1 + ( ($Y-$Y1)*$X2 - ($Y-$Y1)*$X1 ) / ($Y2-$Y1); }
6084
-
6085
-             $X = floor($X);
6086
-
6087
-             if ( $X2 == $X1 )
6088
-              { $Slope = "!"; }
6089
-             else
6090
-              {
6091
-               $SlopeC = ($Y2 - $Y1) / ($X2 - $X1);
6092
-               if( $SlopeC == 0 )
6001
+        $R			= isset($Format["R"]) ? $Format["R"] : 0;
6002
+        $G			= isset($Format["G"]) ? $Format["G"] : 0;
6003
+        $B			= isset($Format["B"]) ? $Format["B"] : 0;
6004
+        $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
6005
+        $NoFill		= isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
6006
+        $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
6007
+        $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
6008
+        $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
6009
+        $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
6010
+        $BorderAlpha 	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha / 2;
6011
+        $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
6012
+        $Threshold         = isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
6013
+
6014
+        if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
6015
+
6016
+        $RestoreShadow = $this->Shadow;
6017
+        $this->Shadow = FALSE;
6018
+
6019
+        $AllIntegers = TRUE;
6020
+        for($i=0;$i<=count($Points)-2;$i=$i+2)
6021
+        { if ( $this->getFirstDecimal($Points[$i+1]) != 0 ) { $AllIntegers = FALSE; } }
6022
+
6023
+        /* Convert polygon to segments */
6024
+        $Segments = "";
6025
+        for($i=2;$i<=count($Points)-2;$i=$i+2)
6026
+        { $Segments[] = array("X1"=>$Points[$i-2],"Y1"=>$Points[$i-1],"X2"=>$Points[$i],"Y2"=>$Points[$i+1]); }
6027
+        $Segments[] = array("X1"=>$Points[$i-2],"Y1"=>$Points[$i-1],"X2"=>$Points[0],"Y2"=>$Points[1]);
6028
+
6029
+        /* Simplify straight lines */
6030
+        $Result = ""; $inHorizon = FALSE; $LastX = VOID;
6031
+        foreach($Segments as $Key => $Pos)
6032
+        {
6033
+        if ( $Pos["Y1"] != $Pos["Y2"] )
6034
+        {
6035
+            if ( $inHorizon ) { $inHorizon = FALSE; $Result[] = array("X1"=>$LastX,"Y1"=>$Pos["Y1"],"X2"=>$Pos["X1"],"Y2"=>$Pos["Y1"]); }
6036
+
6037
+            $Result[] = array("X1"=>$Pos["X1"],"Y1"=>$Pos["Y1"],"X2"=>$Pos["X2"],"Y2"=>$Pos["Y2"]);
6038
+        }
6039
+        else { if ( !$inHorizon ) { $inHorizon = TRUE; $LastX = $Pos["X1"];} }
6040
+        }
6041
+        $Segments = $Result;
6042
+
6043
+        /* Do we have something to draw */
6044
+        if ( $Segments == "" ) { return(0); }
6045
+
6046
+        /* For segments debugging purpose */
6047
+        //foreach($Segments as $Key => $Pos)
6048
+        // echo $Pos["X1"].",".$Pos["Y1"].",".$Pos["X2"].",".$Pos["Y2"]."\r\n";
6049
+
6050
+        /* Find out the min & max Y boundaries */
6051
+        $MinY = OUT_OF_SIGHT; $MaxY = OUT_OF_SIGHT;
6052
+        foreach($Segments as $Key => $Coords)
6053
+        {
6054
+        if ( $MinY == OUT_OF_SIGHT || $MinY > min($Coords["Y1"],$Coords["Y2"]) ) { $MinY = min($Coords["Y1"],$Coords["Y2"]); }
6055
+        if ( $MaxY == OUT_OF_SIGHT || $MaxY < max($Coords["Y1"],$Coords["Y2"]) ) { $MaxY = max($Coords["Y1"],$Coords["Y2"]); }
6056
+        }
6057
+
6058
+        if ( $AllIntegers ) { $YStep = 1; } else { $YStep = .5; }
6059
+
6060
+        $MinY = floor($MinY); $MaxY = floor($MaxY);
6061
+
6062
+        /* Scan each Y lines */
6063
+        $DefaultColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
6064
+        $DebugLine = 0; $DebugColor = $this->allocateColor($this->Picture,255,0,0,100);
6065
+
6066
+        $MinY = floor($MinY); $MaxY = floor($MaxY); $YStep = 1; 
6067
+
6068
+        if ( !$NoFill )
6069
+        {
6070
+        //if ( $DebugLine ) { $MinY = $DebugLine; $MaxY = $DebugLine; }
6071
+        for($Y=$MinY;$Y<=$MaxY;$Y=$Y+$YStep)
6072
+        {
6073
+            $Intersections = ""; $LastSlope = NULL; $RestoreLast = "-";
6074
+            foreach($Segments as $Key => $Coords)
6075
+            {
6076
+            $X1 = $Coords["X1"]; $X2 = $Coords["X2"]; $Y1 = $Coords["Y1"]; $Y2 = $Coords["Y2"];
6077
+
6078
+            if ( min($Y1,$Y2) <= $Y && max($Y1,$Y2) >= $Y )
6079
+            {
6080
+                if ( $Y1 == $Y2 )
6081
+                { $X = $X1; }
6082
+                else
6083
+                { $X = $X1 + ( ($Y-$Y1)*$X2 - ($Y-$Y1)*$X1 ) / ($Y2-$Y1); }
6084
+
6085
+                $X = floor($X);
6086
+
6087
+                if ( $X2 == $X1 )
6088
+                { $Slope = "!"; }
6089
+                else
6090
+                {
6091
+                $SlopeC = ($Y2 - $Y1) / ($X2 - $X1);
6092
+                if( $SlopeC == 0 )
6093 6093
                 { $Slope = "="; }
6094
-               elseif( $SlopeC > 0 )
6094
+                elseif( $SlopeC > 0 )
6095 6095
                 { $Slope = "+"; }
6096
-               elseif ( $SlopeC < 0 )
6096
+                elseif ( $SlopeC < 0 )
6097 6097
                 { $Slope = "-"; }
6098
-              }
6098
+                }
6099 6099
 
6100
-             if ( !is_array($Intersections) )
6101
-              { $Intersections[] = $X; }
6102
-             elseif( !in_array($X,$Intersections) )
6103
-              { $Intersections[] = $X; }
6104
-             elseif( in_array($X,$Intersections) )
6105
-              {
6106
-               if ($Y == $DebugLine) { echo $Slope."/".$LastSlope."(".$X.") "; }
6100
+                if ( !is_array($Intersections) )
6101
+                { $Intersections[] = $X; }
6102
+                elseif( !in_array($X,$Intersections) )
6103
+                { $Intersections[] = $X; }
6104
+                elseif( in_array($X,$Intersections) )
6105
+                {
6106
+                if ($Y == $DebugLine) { echo $Slope."/".$LastSlope."(".$X.") "; }
6107 6107
 
6108
-               if ( $Slope == "=" && $LastSlope == "-"  )                             { $Intersections[] = $X; }
6109
-               if ( $Slope != $LastSlope && $LastSlope != "!" && $LastSlope != "=" )  { $Intersections[] = $X; }
6110
-               if ( $Slope != $LastSlope && $LastSlope == "!" && $Slope == "+" )      { $Intersections[] = $X; }
6111
-              }
6108
+                if ( $Slope == "=" && $LastSlope == "-"  )                             { $Intersections[] = $X; }
6109
+                if ( $Slope != $LastSlope && $LastSlope != "!" && $LastSlope != "=" )  { $Intersections[] = $X; }
6110
+                if ( $Slope != $LastSlope && $LastSlope == "!" && $Slope == "+" )      { $Intersections[] = $X; }
6111
+                }
6112 6112
 
6113
-             if ( is_array($Intersections) && in_array($X,$Intersections) && $LastSlope == "=" && ($Slope == "-" )) { $Intersections[] = $X; }
6113
+                if ( is_array($Intersections) && in_array($X,$Intersections) && $LastSlope == "=" && ($Slope == "-" )) { $Intersections[] = $X; }
6114 6114
 
6115
-             $LastSlope = $Slope;
6115
+                $LastSlope = $Slope;
6116
+            }
6116 6117
             }
6117
-          }
6118
-         if ( $RestoreLast != "-" ) { $Intersections[] = $RestoreLast; echo "@".$Y."\r\n"; }
6118
+            if ( $RestoreLast != "-" ) { $Intersections[] = $RestoreLast; echo "@".$Y."\r\n"; }
6119 6119
 
6120
-         if ( is_array($Intersections) )
6121
-          {
6122
-           sort($Intersections);
6120
+            if ( is_array($Intersections) )
6121
+            {
6122
+            sort($Intersections);
6123 6123
 
6124
-           if ($Y == $DebugLine) { print_r($Intersections); }
6124
+            if ($Y == $DebugLine) { print_r($Intersections); }
6125 6125
 
6126
-           /* Remove NULL plots */
6127
-           $Result = "";
6128
-           for($i=0;$i<=count($Intersections)-1;$i=$i+2)
6126
+            /* Remove NULL plots */
6127
+            $Result = "";
6128
+            for($i=0;$i<=count($Intersections)-1;$i=$i+2)
6129 6129
             {
6130
-             if ( isset($Intersections[$i+1]) )
6131
-              { if ( $Intersections[$i] != $Intersections[$i+1] ) { $Result[] = $Intersections[$i]; $Result[] = $Intersections[$i+1]; } }
6130
+                if ( isset($Intersections[$i+1]) )
6131
+                { if ( $Intersections[$i] != $Intersections[$i+1] ) { $Result[] = $Intersections[$i]; $Result[] = $Intersections[$i+1]; } }
6132 6132
             }
6133 6133
 
6134
-           if ( is_array($Result) )
6134
+            if ( is_array($Result) )
6135 6135
             {
6136
-             $Intersections = $Result;
6136
+                $Intersections = $Result;
6137 6137
 
6138
-             $LastX = OUT_OF_SIGHT;
6139
-             foreach($Intersections as $Key => $X)
6140
-              {
6141
-               if ( $LastX == OUT_OF_SIGHT )
6138
+                $LastX = OUT_OF_SIGHT;
6139
+                foreach($Intersections as $Key => $X)
6140
+                {
6141
+                if ( $LastX == OUT_OF_SIGHT )
6142 6142
                 $LastX = $X;
6143
-               elseif ( $LastX != OUT_OF_SIGHT )
6143
+                elseif ( $LastX != OUT_OF_SIGHT )
6144 6144
                 {
6145
-                 if ( $this->getFirstDecimal($LastX) > 1 ) { $LastX++; }
6145
+                    if ( $this->getFirstDecimal($LastX) > 1 ) { $LastX++; }
6146 6146
 
6147
-                 $Color = $DefaultColor;
6148
-                 if ( $Threshold != NULL )
6149
-                  {
6150
-                   foreach($Threshold as $Key => $Parameters)
6147
+                    $Color = $DefaultColor;
6148
+                    if ( $Threshold != NULL )
6151 6149
                     {
6152
-                     if ( $Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
6153
-                      {
6154
-                       if ( isset($Parameters["R"]) ) { $R = $Parameters["R"]; } else { $R = 0; }
6155
-                       if ( isset($Parameters["G"]) ) { $G = $Parameters["G"]; } else { $G = 0; }
6156
-                       if ( isset($Parameters["B"]) ) { $B = $Parameters["B"]; } else { $B = 0; }
6157
-                       if ( isset($Parameters["Alpha"]) ) { $Alpha = $Parameters["Alpha"]; } else { $Alpha = 100; }
6158
-                       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
6159
-                      }
6150
+                    foreach($Threshold as $Key => $Parameters)
6151
+                    {
6152
+                        if ( $Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
6153
+                        {
6154
+                        if ( isset($Parameters["R"]) ) { $R = $Parameters["R"]; } else { $R = 0; }
6155
+                        if ( isset($Parameters["G"]) ) { $G = $Parameters["G"]; } else { $G = 0; }
6156
+                        if ( isset($Parameters["B"]) ) { $B = $Parameters["B"]; } else { $B = 0; }
6157
+                        if ( isset($Parameters["Alpha"]) ) { $Alpha = $Parameters["Alpha"]; } else { $Alpha = 100; }
6158
+                        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
6159
+                        }
6160
+                    }
6160 6161
                     }
6161
-                  }
6162 6162
 
6163
-                 imageline($this->Picture,$LastX,$Y,$X,$Y,$Color);
6163
+                    imageline($this->Picture,$LastX,$Y,$X,$Y,$Color);
6164 6164
 
6165
-                 if ( $Y == $DebugLine) { imageline($this->Picture,$LastX,$Y,$X,$Y,$DebugColor); }
6165
+                    if ( $Y == $DebugLine) { imageline($this->Picture,$LastX,$Y,$X,$Y,$DebugColor); }
6166 6166
 
6167
-                 $LastX = OUT_OF_SIGHT;
6167
+                    $LastX = OUT_OF_SIGHT;
6168 6168
                 }
6169
-              }
6169
+                }
6170
+            }
6170 6171
             }
6171
-          }
6172 6172
         }
6173
-      }
6173
+        }
6174 6174
 
6175
-     /* Draw the polygon border, if required */
6176
-     if ( !$NoBorder)
6177
-      {
6178
-       foreach($Segments as $Key => $Coords)
6175
+        /* Draw the polygon border, if required */
6176
+        if ( !$NoBorder)
6177
+        {
6178
+        foreach($Segments as $Key => $Coords)
6179 6179
         $this->drawLine($Coords["X1"],$Coords["Y1"],$Coords["X2"],$Coords["Y2"],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Threshold"=>$Threshold));
6180
-      }
6180
+        }
6181 6181
 
6182
-     $this->Shadow = $RestoreShadow;
6182
+        $this->Shadow = $RestoreShadow;
6183 6183
     }
6184 6184
 
6185
-   /* Return the abscissa margin */
6186
-   function getAbscissaMargin($Data)
6185
+    /* Return the abscissa margin */
6186
+    function getAbscissaMargin($Data)
6187 6187
     {
6188
-     foreach($Data["Axis"] as $AxisID => $Values) { if ( $Values["Identity"] == AXIS_X ) { return($Values["Margin"]); } }
6189
-     return(0);
6188
+        foreach($Data["Axis"] as $AxisID => $Values) { if ( $Values["Identity"] == AXIS_X ) { return($Values["Margin"]); } }
6189
+        return(0);
6190 6190
     }
6191 6191
 
6192
-  }
6192
+    }
6193 6193
 ?>
6194 6194
\ No newline at end of file
Please login to merge, or discard this patch.
Switch Indentation   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -1066,42 +1066,42 @@
 block discarded – undo
1066 1066
      $R=$StartR;$G=$StartG;$B=$StartB;
1067 1067
      switch($Direction)
1068 1068
       {
1069
-       case DIRECTION_VERTICAL:
1070
-        $StartY = $Y1; $EndY = floor($Y2)+1; $LastY2 = $StartY;
1071
-        for($i=0;$i<=$Step;$i++)
1069
+     case DIRECTION_VERTICAL:
1070
+      $StartY = $Y1; $EndY = floor($Y2)+1; $LastY2 = $StartY;
1071
+      for($i=0;$i<=$Step;$i++)
1072
+       {
1073
+        $Y2 = floor($StartY + ($i * $StepSize));
1074
+
1075
+        if ($Y2 > $EndY) { $Y2 = $EndY; }
1076
+        if (($Y1 != $Y2 && $Y1 < $Y2) || $Y2 == $EndY)
1072 1077
          {
1073
-          $Y2 = floor($StartY + ($i * $StepSize));
1074
-
1075
-          if ($Y2 > $EndY) { $Y2 = $EndY; }
1076
-          if (($Y1 != $Y2 && $Y1 < $Y2) || $Y2 == $EndY)
1077
-           {
1078
-            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1079
-            $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1080
-            $LastY2 = max($LastY2,$Y2);
1081
-            $Y1 = $Y2+1;
1082
-           }
1083
-          $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep;
1078
+          $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1079
+          $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1080
+          $LastY2 = max($LastY2,$Y2);
1081
+          $Y1 = $Y2+1;
1084 1082
          }
1085
-        if ( $LastY2 < $EndY && isset($Color)) { for ($i=$LastY2+1;$i<=$EndY;$i++) { $this->drawLine($X1,$i,$X2,$i,$Color); } }
1086
-        break;
1087
-
1088
-       case DIRECTION_HORIZONTAL:
1089
-        $StartX = $X1; $EndX = $X2;
1090
-        for($i=0;$i<=$Step;$i++)
1083
+        $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep;
1084
+       }
1085
+      if ( $LastY2 < $EndY && isset($Color)) { for ($i=$LastY2+1;$i<=$EndY;$i++) { $this->drawLine($X1,$i,$X2,$i,$Color); } }
1086
+      break;
1087
+
1088
+     case DIRECTION_HORIZONTAL:
1089
+      $StartX = $X1; $EndX = $X2;
1090
+      for($i=0;$i<=$Step;$i++)
1091
+       {
1092
+        $X2 = floor($StartX + ($i * $StepSize));
1093
+
1094
+        if ($X2 > $EndX) { $X2 = $EndX; }
1095
+        if (($X1 != $X2 && $X1 < $X2) || $X2 == $EndX)
1091 1096
          {
1092
-          $X2 = floor($StartX + ($i * $StepSize));
1093
-
1094
-          if ($X2 > $EndX) { $X2 = $EndX; }
1095
-          if (($X1 != $X2 && $X1 < $X2) || $X2 == $EndX)
1096
-           {
1097
-            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1098
-            $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1099
-            $X1 = $X2+1;
1100
-           }
1101
-          $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep; 
1097
+          $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1098
+          $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1099
+          $X1 = $X2+1;
1102 1100
          }
1103
-        if ( $X2 < $EndX && isset($Color)) { $this->drawFilledRectangle($X2,$Y1,$EndX,$Y2,$Color); }
1104
-        break;
1101
+        $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep; 
1102
+       }
1103
+      if ( $X2 < $EndX && isset($Color)) { $this->drawFilledRectangle($X2,$Y1,$EndX,$Y2,$Color); }
1104
+      break;
1105 1105
       }
1106 1106
 
1107 1107
      $this->Shadow = $Shadow;
Please login to merge, or discard this patch.
Spacing   +2480 added lines, -2480 removed lines patch added patch discarded remove patch
@@ -13,92 +13,92 @@  discard block
 block discarded – undo
13 13
      You can find the whole class documentation on the pChart web site.
14 14
  */
15 15
 
16
- define("DIRECTION_VERTICAL"		, 690001);
17
- define("DIRECTION_HORIZONTAL"		, 690002);
16
+ define("DIRECTION_VERTICAL", 690001);
17
+ define("DIRECTION_HORIZONTAL", 690002);
18 18
 
19
- define("SCALE_POS_LEFTRIGHT"		, 690101);
20
- define("SCALE_POS_TOPBOTTOM"		, 690102);
19
+ define("SCALE_POS_LEFTRIGHT", 690101);
20
+ define("SCALE_POS_TOPBOTTOM", 690102);
21 21
 
22
- define("SCALE_MODE_FLOATING"		, 690201);
23
- define("SCALE_MODE_START0"		, 690202);
24
- define("SCALE_MODE_ADDALL"		, 690203);
25
- define("SCALE_MODE_ADDALL_START0"	, 690204);
26
- define("SCALE_MODE_MANUAL"		, 690205);
22
+ define("SCALE_MODE_FLOATING", 690201);
23
+ define("SCALE_MODE_START0", 690202);
24
+ define("SCALE_MODE_ADDALL", 690203);
25
+ define("SCALE_MODE_ADDALL_START0", 690204);
26
+ define("SCALE_MODE_MANUAL", 690205);
27 27
 
28
- define("SCALE_SKIP_NONE"		, 690301);
29
- define("SCALE_SKIP_SAME"		, 690302);
30
- define("SCALE_SKIP_NUMBERS"		, 690303);
28
+ define("SCALE_SKIP_NONE", 690301);
29
+ define("SCALE_SKIP_SAME", 690302);
30
+ define("SCALE_SKIP_NUMBERS", 690303);
31 31
 
32
- define("TEXT_ALIGN_TOPLEFT"		, 690401);
33
- define("TEXT_ALIGN_TOPMIDDLE"		, 690402);
34
- define("TEXT_ALIGN_TOPRIGHT"		, 690403);
35
- define("TEXT_ALIGN_MIDDLELEFT"		, 690404);
36
- define("TEXT_ALIGN_MIDDLEMIDDLE"	, 690405);
37
- define("TEXT_ALIGN_MIDDLERIGHT"	, 690406);
38
- define("TEXT_ALIGN_BOTTOMLEFT"		, 690407);
39
- define("TEXT_ALIGN_BOTTOMMIDDLE"	, 690408);
40
- define("TEXT_ALIGN_BOTTOMRIGHT"	, 690409);
32
+ define("TEXT_ALIGN_TOPLEFT", 690401);
33
+ define("TEXT_ALIGN_TOPMIDDLE", 690402);
34
+ define("TEXT_ALIGN_TOPRIGHT", 690403);
35
+ define("TEXT_ALIGN_MIDDLELEFT", 690404);
36
+ define("TEXT_ALIGN_MIDDLEMIDDLE", 690405);
37
+ define("TEXT_ALIGN_MIDDLERIGHT", 690406);
38
+ define("TEXT_ALIGN_BOTTOMLEFT", 690407);
39
+ define("TEXT_ALIGN_BOTTOMMIDDLE", 690408);
40
+ define("TEXT_ALIGN_BOTTOMRIGHT", 690409);
41 41
 
42
- define("POSITION_TOP"                  , 690501);
43
- define("POSITION_BOTTOM"               , 690502);
42
+ define("POSITION_TOP", 690501);
43
+ define("POSITION_BOTTOM", 690502);
44 44
 
45
- define("LABEL_POS_LEFT"		, 690601);
46
- define("LABEL_POS_CENTER"		, 690602);
47
- define("LABEL_POS_RIGHT"		, 690603);
48
- define("LABEL_POS_TOP"			, 690604);
49
- define("LABEL_POS_BOTTOM"		, 690605);
50
- define("LABEL_POS_INSIDE"		, 690606);
51
- define("LABEL_POS_OUTSIDE"		, 690607);
45
+ define("LABEL_POS_LEFT", 690601);
46
+ define("LABEL_POS_CENTER", 690602);
47
+ define("LABEL_POS_RIGHT", 690603);
48
+ define("LABEL_POS_TOP", 690604);
49
+ define("LABEL_POS_BOTTOM", 690605);
50
+ define("LABEL_POS_INSIDE", 690606);
51
+ define("LABEL_POS_OUTSIDE", 690607);
52 52
 
53
- define("ORIENTATION_HORIZONTAL"	, 690701);
54
- define("ORIENTATION_VERTICAL"		, 690702);
55
- define("ORIENTATION_AUTO"		, 690703);
53
+ define("ORIENTATION_HORIZONTAL", 690701);
54
+ define("ORIENTATION_VERTICAL", 690702);
55
+ define("ORIENTATION_AUTO", 690703);
56 56
 
57
- define("LEGEND_NOBORDER"		, 690800);
58
- define("LEGEND_BOX"			, 690801);
59
- define("LEGEND_ROUND"			, 690802);
57
+ define("LEGEND_NOBORDER", 690800);
58
+ define("LEGEND_BOX", 690801);
59
+ define("LEGEND_ROUND", 690802);
60 60
 
61
- define("LEGEND_VERTICAL"		, 690901);
62
- define("LEGEND_HORIZONTAL"		, 690902);
61
+ define("LEGEND_VERTICAL", 690901);
62
+ define("LEGEND_HORIZONTAL", 690902);
63 63
 
64
- define("LEGEND_FAMILY_BOX"		, 691051);
65
- define("LEGEND_FAMILY_CIRCLE"		, 691052);
66
- define("LEGEND_FAMILY_LINE"		, 691053);
64
+ define("LEGEND_FAMILY_BOX", 691051);
65
+ define("LEGEND_FAMILY_CIRCLE", 691052);
66
+ define("LEGEND_FAMILY_LINE", 691053);
67 67
 
68
- define("DISPLAY_AUTO"			, 691001);
69
- define("DISPLAY_MANUAL"		, 691002);
68
+ define("DISPLAY_AUTO", 691001);
69
+ define("DISPLAY_MANUAL", 691002);
70 70
 
71
- define("LABELING_ALL"			, 691011);
72
- define("LABELING_DIFFERENT"		, 691012);
71
+ define("LABELING_ALL", 691011);
72
+ define("LABELING_DIFFERENT", 691012);
73 73
 
74
- define("BOUND_MIN"			, 691021);
75
- define("BOUND_MAX"			, 691022);
76
- define("BOUND_BOTH"			, 691023);
74
+ define("BOUND_MIN", 691021);
75
+ define("BOUND_MAX", 691022);
76
+ define("BOUND_BOTH", 691023);
77 77
 
78
- define("BOUND_LABEL_POS_TOP"		, 691031);
79
- define("BOUND_LABEL_POS_BOTTOM"	, 691032);
80
- define("BOUND_LABEL_POS_AUTO"		, 691033);
78
+ define("BOUND_LABEL_POS_TOP", 691031);
79
+ define("BOUND_LABEL_POS_BOTTOM", 691032);
80
+ define("BOUND_LABEL_POS_AUTO", 691033);
81 81
 
82
- define("CAPTION_LEFT_TOP"		, 691041);
83
- define("CAPTION_RIGHT_BOTTOM"		, 691042);
82
+ define("CAPTION_LEFT_TOP", 691041);
83
+ define("CAPTION_RIGHT_BOTTOM", 691042);
84 84
 
85
- define("GRADIENT_SIMPLE"		, 691051);
86
- define("GRADIENT_EFFECT_CAN"		, 691052);
85
+ define("GRADIENT_SIMPLE", 691051);
86
+ define("GRADIENT_EFFECT_CAN", 691052);
87 87
 
88
- define("LABEL_TITLE_NOBACKGROUND"	, 691061);
89
- define("LABEL_TITLE_BACKGROUND"	, 691062);
88
+ define("LABEL_TITLE_NOBACKGROUND", 691061);
89
+ define("LABEL_TITLE_BACKGROUND", 691062);
90 90
 
91
- define("LABEL_POINT_NONE"		, 691071);
92
- define("LABEL_POINT_CIRCLE"		, 691072);
93
- define("LABEL_POINT_BOX"		, 691073);
91
+ define("LABEL_POINT_NONE", 691071);
92
+ define("LABEL_POINT_CIRCLE", 691072);
93
+ define("LABEL_POINT_BOX", 691073);
94 94
 
95
- define("ZONE_NAME_ANGLE_AUTO"		, 691081);
95
+ define("ZONE_NAME_ANGLE_AUTO", 691081);
96 96
 
97
- define("PI"		, 3.14159265);
98
- define("ALL"		, 69);
99
- define("NONE"		, 31);
100
- define("AUTO"		, 690000);
101
- define("OUT_OF_SIGHT"	, -10000000000000);
97
+ define("PI", 3.14159265);
98
+ define("ALL", 69);
99
+ define("NONE", 31);
100
+ define("AUTO", 690000);
101
+ define("OUT_OF_SIGHT", -10000000000000);
102 102
 
103 103
  class pDraw
104 104
   {
@@ -108,83 +108,83 @@  discard block
 block discarded – undo
108 108
      $Results = 0;
109 109
      $Data = $this->DataSet->getData();
110 110
 
111
-     foreach($Data["Series"] as $SerieName => $Serie)
112
-      { if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] ) { $Results++; } }
111
+     foreach ($Data["Series"] as $SerieName => $Serie)
112
+      { if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"]) { $Results++; } }
113 113
 
114 114
      return($Results);
115 115
     }
116 116
 
117 117
    /* Fix box coordinates */
118
-   function fixBoxCoordinates($Xa,$Ya,$Xb,$Yb)
118
+   function fixBoxCoordinates($Xa, $Ya, $Xb, $Yb)
119 119
     {
120
-     $X1 = min($Xa,$Xb); $Y1 = min($Ya,$Yb);
121
-     $X2 = max($Xa,$Xb); $Y2 = max($Ya,$Yb);
120
+     $X1 = min($Xa, $Xb); $Y1 = min($Ya, $Yb);
121
+     $X2 = max($Xa, $Xb); $Y2 = max($Ya, $Yb);
122 122
 
123
-     return(array($X1,$Y1,$X2,$Y2));
123
+     return(array($X1, $Y1, $X2, $Y2));
124 124
     }
125 125
 
126 126
    /* Draw a polygon */
127
-   function drawPolygon($Points,$Format="")
127
+   function drawPolygon($Points, $Format = "")
128 128
     {
129 129
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
130 130
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
131 131
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
132
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
133
-     $NoFill		= isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
134
-     $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
132
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
133
+     $NoFill = isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
134
+     $NoBorder = isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
135 135
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
136 136
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
137 137
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
138
-     $BorderAlpha 	= isset($Format["Alpha"]) ? $Format["Alpha"] : $Alpha / 2;
139
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
138
+     $BorderAlpha = isset($Format["Alpha"]) ? $Format["Alpha"] : $Alpha/2;
139
+     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
140 140
      $SkipX		= isset($Format["SkipX"]) ? $Format["SkipX"] : OUT_OF_SIGHT;
141 141
      $SkipY		= isset($Format["SkipY"]) ? $Format["SkipY"] : OUT_OF_SIGHT;
142 142
 
143 143
      /* Calling the ImageFilledPolygon() function over the $Points array will round it */ 	
144 144
      $Backup = $Points;
145 145
 
146
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
146
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
147 147
 
148
-     if ( $SkipX != OUT_OF_SIGHT ) { $SkipX = floor($SkipX); }
149
-     if ( $SkipY != OUT_OF_SIGHT ) { $SkipY = floor($SkipY); }
148
+     if ($SkipX != OUT_OF_SIGHT) { $SkipX = floor($SkipX); }
149
+     if ($SkipY != OUT_OF_SIGHT) { $SkipY = floor($SkipY); }
150 150
 
151 151
      $RestoreShadow = $this->Shadow;
152
-     if ( !$NoFill )
152
+     if (!$NoFill)
153 153
       {
154
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
154
+       if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
155 155
         {
156 156
          $this->Shadow = FALSE;
157
-         for($i=0;$i<=count($Points)-1;$i=$i+2)
158
-          { $Shadow[] = $Points[$i] + $this->ShadowX; $Shadow[] = $Points[$i+1] + $this->ShadowY; }
159
-         $this->drawPolygon($Shadow,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"NoBorder"=>TRUE));
157
+         for ($i = 0; $i <= count($Points) - 1; $i = $i + 2)
158
+          { $Shadow[] = $Points[$i] + $this->ShadowX; $Shadow[] = $Points[$i + 1] + $this->ShadowY; }
159
+         $this->drawPolygon($Shadow, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa, "NoBorder"=>TRUE));
160 160
         }
161 161
 
162
-       $FillColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
162
+       $FillColor = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
163 163
 
164
-       if ( count($Points) >= 6 )
165
-        { ImageFilledPolygon($this->Picture,$Points,count($Points)/2,$FillColor); }
164
+       if (count($Points) >= 6)
165
+        { ImageFilledPolygon($this->Picture, $Points, count($Points)/2, $FillColor); }
166 166
       }
167 167
 
168
-     if ( !$NoBorder )
168
+     if (!$NoBorder)
169 169
       {
170 170
        $Points = $Backup;
171 171
 
172
-       if ( $NoFill )
173
-        $BorderSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
172
+       if ($NoFill)
173
+        $BorderSettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
174 174
        else
175
-        $BorderSettings = array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha);
175
+        $BorderSettings = array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha);
176 176
 
177
-       for($i=0;$i<=count($Points)-1;$i=$i+2)
177
+       for ($i = 0; $i <= count($Points) - 1; $i = $i + 2)
178 178
         {
179
-         if ( isset($Points[$i+2]) )
179
+         if (isset($Points[$i + 2]))
180 180
           {
181
-           if ( !($Points[$i] == $Points[$i+2] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[$i+3] && $Points[$i+1] == $SkipY ) )
182
-            $this->drawLine($Points[$i],$Points[$i+1],$Points[$i+2],$Points[$i+3],$BorderSettings);
181
+           if (!($Points[$i] == $Points[$i + 2] && $Points[$i] == $SkipX) && !($Points[$i + 1] == $Points[$i + 3] && $Points[$i + 1] == $SkipY))
182
+            $this->drawLine($Points[$i], $Points[$i + 1], $Points[$i + 2], $Points[$i + 3], $BorderSettings);
183 183
           }
184 184
          else
185 185
           {
186
-           if ( !($Points[$i] == $Points[0] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[1] && $Points[$i+1] == $SkipY ) )
187
-            $this->drawLine($Points[$i],$Points[$i+1],$Points[0],$Points[1],$BorderSettings);
186
+           if (!($Points[$i] == $Points[0] && $Points[$i] == $SkipX) && !($Points[$i + 1] == $Points[1] && $Points[$i + 1] == $SkipY))
187
+            $this->drawLine($Points[$i], $Points[$i + 1], $Points[0], $Points[1], $BorderSettings);
188 188
           }
189 189
         }
190 190
       }
@@ -193,82 +193,82 @@  discard block
 block discarded – undo
193 193
     }
194 194
 
195 195
    /* Apply AALias correction to the rounded box boundaries */
196
-   function offsetCorrection($Value,$Mode)
196
+   function offsetCorrection($Value, $Mode)
197 197
     {
198
-     $Value = round($Value,1);
198
+     $Value = round($Value, 1);
199 199
 
200
-     if ( $Value == 0 && $Mode == 1 ) { return(.9); }
201
-     if ( $Value == 0 ) { return(0); }
200
+     if ($Value == 0 && $Mode == 1) { return(.9); }
201
+     if ($Value == 0) { return(0); }
202 202
 
203
-     if ( $Mode == 1) 
204
-      { if ( $Value == 1 ) { return(.9); }; if ( $Value == .1 ) { return(.9); }; if ( $Value == .2 ) { return(.8); }; if ( $Value == .3 ) { return(.8); }; if ( $Value == .4 ) { return(.7); }; if ( $Value == .5 ) { return(.5); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.6); }; if ( $Value == .9 ) { return(.9); }; }
203
+     if ($Mode == 1) 
204
+      { if ($Value == 1) { return(.9); }; if ($Value == .1) { return(.9); }; if ($Value == .2) { return(.8); }; if ($Value == .3) { return(.8); }; if ($Value == .4) { return(.7); }; if ($Value == .5) { return(.5); }; if ($Value == .6) { return(.8); }; if ($Value == .7) { return(.7); }; if ($Value == .8) { return(.6); }; if ($Value == .9) { return(.9); }; }
205 205
 
206
-     if ( $Mode == 2) 
207
-      { if ( $Value == 1 ) { return(.9); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.4); }; if ( $Value == .5 ) { return(.5); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.8); }; if ( $Value == .9 ) { return(.9); }; }
206
+     if ($Mode == 2) 
207
+      { if ($Value == 1) { return(.9); }; if ($Value == .1) { return(.1); }; if ($Value == .2) { return(.2); }; if ($Value == .3) { return(.3); }; if ($Value == .4) { return(.4); }; if ($Value == .5) { return(.5); }; if ($Value == .6) { return(.8); }; if ($Value == .7) { return(.7); }; if ($Value == .8) { return(.8); }; if ($Value == .9) { return(.9); }; }
208 208
 
209
-     if ( $Mode == 3) 
210
-      { if ( $Value == 1 ) { return(.1); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.4); }; if ( $Value == .5 ) { return(.9); }; if ( $Value == .6 ) { return(.6); }; if ( $Value == .7 ) { return(.7); }; if ( $Value == .8 ) { return(.4); }; if ( $Value == .9 ) { return(.5); }; }
209
+     if ($Mode == 3) 
210
+      { if ($Value == 1) { return(.1); }; if ($Value == .1) { return(.1); }; if ($Value == .2) { return(.2); }; if ($Value == .3) { return(.3); }; if ($Value == .4) { return(.4); }; if ($Value == .5) { return(.9); }; if ($Value == .6) { return(.6); }; if ($Value == .7) { return(.7); }; if ($Value == .8) { return(.4); }; if ($Value == .9) { return(.5); }; }
211 211
 
212
-     if ( $Mode == 4) 
213
-      { if ( $Value == 1 ) { return(-1); }; if ( $Value == .1 ) { return(.1); }; if ( $Value == .2 ) { return(.2); }; if ( $Value == .3 ) { return(.3); }; if ( $Value == .4 ) { return(.1); }; if ( $Value == .5 ) { return(-.1); }; if ( $Value == .6 ) { return(.8); }; if ( $Value == .7 ) { return(.1); }; if ( $Value == .8 ) { return(.1); }; if ( $Value == .9 ) { return(.1); }; }
212
+     if ($Mode == 4) 
213
+      { if ($Value == 1) { return(-1); }; if ($Value == .1) { return(.1); }; if ($Value == .2) { return(.2); }; if ($Value == .3) { return(.3); }; if ($Value == .4) { return(.1); }; if ($Value == .5) { return(-.1); }; if ($Value == .6) { return(.8); }; if ($Value == .7) { return(.1); }; if ($Value == .8) { return(.1); }; if ($Value == .9) { return(.1); }; }
214 214
     }
215 215
 
216 216
    /* Draw a rectangle with rounded corners */
217
-   function drawRoundedRectangle($X1,$Y1,$X2,$Y2,$Radius,$Format="")
217
+   function drawRoundedRectangle($X1, $Y1, $X2, $Y2, $Radius, $Format = "")
218 218
     {
219 219
      $R	    = isset($Format["R"]) ? $Format["R"] : 0;
220 220
      $G	    = isset($Format["G"]) ? $Format["G"] : 0;
221 221
      $B	    = isset($Format["B"]) ? $Format["B"] : 0;
222 222
      $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
223 223
 
224
-     list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
224
+     list($X1, $Y1, $X2, $Y2) = $this->fixBoxCoordinates($X1, $Y1, $X2, $Y2);
225 225
 
226
-     if ( $X2 - $X1 < $Radius ) { $Radius = floor((($X2-$X1))/2); }
227
-     if ( $Y2 - $Y1 < $Radius ) { $Radius = floor((($Y2-$Y1))/2); }
226
+     if ($X2 - $X1 < $Radius) { $Radius = floor((($X2 - $X1))/2); }
227
+     if ($Y2 - $Y1 < $Radius) { $Radius = floor((($Y2 - $Y1))/2); }
228 228
 
229
-     $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE);
229
+     $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "NoBorder"=>TRUE);
230 230
 
231
-     if ( $Radius <= 0 ) { $this->drawRectangle($X1,$Y1,$X2,$Y2,$Color); return(0); }
231
+     if ($Radius <= 0) { $this->drawRectangle($X1, $Y1, $X2, $Y2, $Color); return(0); }
232 232
 
233
-     if ( $this->Antialias )
233
+     if ($this->Antialias)
234 234
       {
235
-       $this->drawLine($X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
236
-       $this->drawLine($X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
237
-       $this->drawLine($X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
238
-       $this->drawLine($X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
235
+       $this->drawLine($X1 + $Radius, $Y1, $X2 - $Radius, $Y1, $Color);
236
+       $this->drawLine($X2, $Y1 + $Radius, $X2, $Y2 - $Radius, $Color);
237
+       $this->drawLine($X2 - $Radius, $Y2, $X1 + $Radius, $Y2, $Color);
238
+       $this->drawLine($X1, $Y1 + $Radius, $X1, $Y2 - $Radius, $Color);
239 239
       }
240 240
      else
241 241
       {
242
-       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
243
-       imageline($this->Picture,$X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
244
-       imageline($this->Picture,$X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
245
-       imageline($this->Picture,$X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
246
-       imageline($this->Picture,$X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
242
+       $Color = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
243
+       imageline($this->Picture, $X1 + $Radius, $Y1, $X2 - $Radius, $Y1, $Color);
244
+       imageline($this->Picture, $X2, $Y1 + $Radius, $X2, $Y2 - $Radius, $Color);
245
+       imageline($this->Picture, $X2 - $Radius, $Y2, $X1 + $Radius, $Y2, $Color);
246
+       imageline($this->Picture, $X1, $Y1 + $Radius, $X1, $Y2 - $Radius, $Color);
247 247
       }
248 248
 
249
-     $Step = 360 / (2 * PI * $Radius);
250
-     for($i=0;$i<=90;$i=$i+$Step)
249
+     $Step = 360/(2*PI*$Radius);
250
+     for ($i = 0; $i <= 90; $i = $i + $Step)
251 251
       {
252
-       $X = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
253
-       $Y = sin(($i+180)*PI/180) * $Radius + $Y1 + $Radius;
254
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
252
+       $X = cos(($i + 180)*PI/180)*$Radius + $X1 + $Radius;
253
+       $Y = sin(($i + 180)*PI/180)*$Radius + $Y1 + $Radius;
254
+       $this->drawAntialiasPixel($X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
255 255
 
256
-       $X = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
257
-       $Y = sin(($i+90)*PI/180) * $Radius + $Y2 - $Radius;
258
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
256
+       $X = cos(($i + 90)*PI/180)*$Radius + $X1 + $Radius;
257
+       $Y = sin(($i + 90)*PI/180)*$Radius + $Y2 - $Radius;
258
+       $this->drawAntialiasPixel($X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
259 259
 
260
-       $X = cos($i*PI/180) * $Radius + $X2 - $Radius;
261
-       $Y = sin($i*PI/180) * $Radius + $Y2 - $Radius;
262
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
260
+       $X = cos($i*PI/180)*$Radius + $X2 - $Radius;
261
+       $Y = sin($i*PI/180)*$Radius + $Y2 - $Radius;
262
+       $this->drawAntialiasPixel($X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
263 263
 
264
-       $X = cos(($i+270)*PI/180) * $Radius + $X2 - $Radius;
265
-       $Y = sin(($i+270)*PI/180) * $Radius + $Y1 + $Radius;
266
-       $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
264
+       $X = cos(($i + 270)*PI/180)*$Radius + $X2 - $Radius;
265
+       $Y = sin(($i + 270)*PI/180)*$Radius + $Y1 + $Radius;
266
+       $this->drawAntialiasPixel($X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
267 267
       }
268 268
     }
269 269
 
270 270
    /* Draw a rectangle with rounded corners */
271
-   function drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$Radius,$Format="")
271
+   function drawRoundedFilledRectangle($X1, $Y1, $X2, $Y2, $Radius, $Format = "")
272 272
     {
273 273
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
274 274
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
@@ -276,84 +276,84 @@  discard block
 block discarded – undo
276 276
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
277 277
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
278 278
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
279
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
280
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
279
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
280
+     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
281 281
 
282 282
      /* Temporary fix for AA issue */
283 283
      $Y1 = floor($Y1); $Y2 = floor($Y2); $X1 = floor($X1); $X2 = floor($X2);
284 284
 
285
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
286
-     if ( $BorderR == -1 ) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
285
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
286
+     if ($BorderR == -1) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
287 287
 
288
-     list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
288
+     list($X1, $Y1, $X2, $Y2) = $this->fixBoxCoordinates($X1, $Y1, $X2, $Y2);
289 289
 
290
-     if ( $X2 - $X1 < $Radius*2 ) { $Radius = floor((($X2-$X1))/4); }
291
-     if ( $Y2 - $Y1 < $Radius*2 ) { $Radius = floor((($Y2-$Y1))/4); }
290
+     if ($X2 - $X1 < $Radius*2) { $Radius = floor((($X2 - $X1))/4); }
291
+     if ($Y2 - $Y1 < $Radius*2) { $Radius = floor((($Y2 - $Y1))/4); }
292 292
 
293 293
      $RestoreShadow = $this->Shadow;
294
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
294
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
295 295
       {
296 296
        $this->Shadow = FALSE;
297
-       $this->drawRoundedFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
297
+       $this->drawRoundedFilledRectangle($X1 + $this->ShadowX, $Y1 + $this->ShadowY, $X2 + $this->ShadowX, $Y2 + $this->ShadowY, $Radius, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa));
298 298
       }
299 299
 
300
-     $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE);
300
+     $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "NoBorder"=>TRUE);
301 301
 
302
-     if ( $Radius <= 0 ) { $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color); return(0); }
302
+     if ($Radius <= 0) { $this->drawFilledRectangle($X1, $Y1, $X2, $Y2, $Color); return(0); }
303 303
 
304
-     $YTop    = $Y1+$Radius;
305
-     $YBottom = $Y2-$Radius;
304
+     $YTop    = $Y1 + $Radius;
305
+     $YBottom = $Y2 - $Radius;
306 306
 
307
-     $Step = 360 / (2 * PI * $Radius);
307
+     $Step = 360/(2*PI*$Radius);
308 308
      $Positions = ""; $Radius--; $MinY = ""; $MaxY = "";
309
-     for($i=0;$i<=90;$i=$i+$Step)
309
+     for ($i = 0; $i <= 90; $i = $i + $Step)
310 310
       {
311
-       $Xp1 = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
312
-       $Xp2 = cos(((90-$i)+270)*PI/180) * $Radius + $X2 - $Radius;
313
-       $Yp  = floor(sin(($i+180)*PI/180) * $Radius + $YTop);
314
-       if ( $MinY == "" || $Yp > $MinY ) { $MinY = $Yp; }
311
+       $Xp1 = cos(($i + 180)*PI/180)*$Radius + $X1 + $Radius;
312
+       $Xp2 = cos(((90 - $i) + 270)*PI/180)*$Radius + $X2 - $Radius;
313
+       $Yp  = floor(sin(($i + 180)*PI/180)*$Radius + $YTop);
314
+       if ($MinY == "" || $Yp > $MinY) { $MinY = $Yp; }
315 315
 
316
-       if ( $Xp1 <= floor($X1) )  { $Xp1++; }
317
-       if ( $Xp2 >= floor($X2) )  { $Xp2--; }
316
+       if ($Xp1 <= floor($X1)) { $Xp1++; }
317
+       if ($Xp2 >= floor($X2)) { $Xp2--; }
318 318
        $Xp1++;
319 319
 
320
-       if ( !isset($Positions[$Yp]) )
320
+       if (!isset($Positions[$Yp]))
321 321
         { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; }
322 322
        else
323
-        { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"]+$Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"]+$Xp2)/2; }
323
+        { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"] + $Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"] + $Xp2)/2; }
324 324
 
325
-       $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
326
-       $Xp2 = cos((90-$i)*PI/180) * $Radius + $X2 - $Radius;
327
-       $Yp  = floor(sin(($i+90)*PI/180) * $Radius + $YBottom);
328
-       if ( $MaxY == "" || $Yp < $MaxY ) { $MaxY = $Yp; }
325
+       $Xp1 = cos(($i + 90)*PI/180)*$Radius + $X1 + $Radius;
326
+       $Xp2 = cos((90 - $i)*PI/180)*$Radius + $X2 - $Radius;
327
+       $Yp  = floor(sin(($i + 90)*PI/180)*$Radius + $YBottom);
328
+       if ($MaxY == "" || $Yp < $MaxY) { $MaxY = $Yp; }
329 329
 
330
-       if ( $Xp1 <= floor($X1) ) { $Xp1++; }
331
-       if ( $Xp2 >= floor($X2) ) { $Xp2--; }
330
+       if ($Xp1 <= floor($X1)) { $Xp1++; }
331
+       if ($Xp2 >= floor($X2)) { $Xp2--; }
332 332
        $Xp1++;
333 333
 
334
-       if ( !isset($Positions[$Yp]) )
334
+       if (!isset($Positions[$Yp]))
335 335
         { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; }
336 336
        else
337
-        { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"]+$Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"]+$Xp2)/2; }
337
+        { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"] + $Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"] + $Xp2)/2; }
338 338
       }
339 339
 
340
-     $ManualColor  = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
341
-     foreach($Positions as $Yp => $Bounds)
340
+     $ManualColor = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
341
+     foreach ($Positions as $Yp => $Bounds)
342 342
       {
343
-       $X1 = $Bounds["X1"]; $X1Dec = $this->getFirstDecimal($X1); if ( $X1Dec != 0 ) { $X1 = floor($X1)+1; }
344
-       $X2 = $Bounds["X2"]; $X2Dec = $this->getFirstDecimal($X2); if ( $X2Dec != 0 ) { $X2 = floor($X2)-1; }
345
-       imageline($this->Picture,$X1,$Yp,$X2,$Yp,$ManualColor);
343
+       $X1 = $Bounds["X1"]; $X1Dec = $this->getFirstDecimal($X1); if ($X1Dec != 0) { $X1 = floor($X1) + 1; }
344
+       $X2 = $Bounds["X2"]; $X2Dec = $this->getFirstDecimal($X2); if ($X2Dec != 0) { $X2 = floor($X2) - 1; }
345
+       imageline($this->Picture, $X1, $Yp, $X2, $Yp, $ManualColor);
346 346
       }
347
-     $this->drawFilledRectangle($X1,$MinY+1,floor($X2),$MaxY-1,$Color);
347
+     $this->drawFilledRectangle($X1, $MinY + 1, floor($X2), $MaxY - 1, $Color);
348 348
 
349 349
      $Radius++;
350
-     $this->drawRoundedRectangle($X1,$Y1,$X2+1,$Y2-1,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
350
+     $this->drawRoundedRectangle($X1, $Y1, $X2 + 1, $Y2 - 1, $Radius, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
351 351
 
352 352
      $this->Shadow = $RestoreShadow;
353 353
     }
354 354
 
355 355
    /* Draw a rectangle with rounded corners */
356
-   function drawRoundedFilledRectangle_deprecated($X1,$Y1,$X2,$Y2,$Radius,$Format="")
356
+   function drawRoundedFilledRectangle_deprecated($X1, $Y1, $X2, $Y2, $Radius, $Format = "")
357 357
     {
358 358
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
359 359
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
@@ -361,268 +361,268 @@  discard block
 block discarded – undo
361 361
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
362 362
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
363 363
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
364
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
365
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
364
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
365
+     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
366 366
 
367
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
368
-     if ( $BorderR == -1 ) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
367
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
368
+     if ($BorderR == -1) { $BorderR = $R; $BorderG = $G; $BorderB = $B; }
369 369
 
370
-     list($X1,$Y1,$X2,$Y2) = $this->fixBoxCoordinates($X1,$Y1,$X2,$Y2);
370
+     list($X1, $Y1, $X2, $Y2) = $this->fixBoxCoordinates($X1, $Y1, $X2, $Y2);
371 371
 
372
-     if ( $X2 - $X1 < $Radius ) { $Radius = floor((($X2-$X1)+2)/2); }
373
-     if ( $Y2 - $Y1 < $Radius ) { $Radius = floor((($Y2-$Y1)+2)/2); }
372
+     if ($X2 - $X1 < $Radius) { $Radius = floor((($X2 - $X1) + 2)/2); }
373
+     if ($Y2 - $Y1 < $Radius) { $Radius = floor((($Y2 - $Y1) + 2)/2); }
374 374
 
375 375
      $RestoreShadow = $this->Shadow;
376
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
376
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
377 377
       {
378 378
        $this->Shadow = FALSE;
379
-       $this->drawRoundedFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
379
+       $this->drawRoundedFilledRectangle($X1 + $this->ShadowX, $Y1 + $this->ShadowY, $X2 + $this->ShadowX, $Y2 + $this->ShadowY, $Radius, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa));
380 380
       }
381 381
 
382
-     if ( $this->getFirstDecimal($X2) >= 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
383
-     if ( $this->getFirstDecimal($X1) <= 5 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
382
+     if ($this->getFirstDecimal($X2) >= 5) { $XOffset2 = 1; } else { $XOffset2 = 0; }
383
+     if ($this->getFirstDecimal($X1) <= 5) { $XOffset1 = 1; } else { $XOffset1 = 0; }
384 384
 
385
-     if ( !$this->Antialias ) { $XOffset1 = 1; $XOffset2 = 1; }
385
+     if (!$this->Antialias) { $XOffset1 = 1; $XOffset2 = 1; }
386 386
 
387
-     $YTop    = floor($Y1+$Radius);
388
-     $YBottom = floor($Y2-$Radius);
387
+     $YTop    = floor($Y1 + $Radius);
388
+     $YBottom = floor($Y2 - $Radius);
389 389
 
390
-     $this->drawFilledRectangle($X1-$XOffset1,$YTop,$X2+$XOffset2,$YBottom,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"NoBorder"=>TRUE));
390
+     $this->drawFilledRectangle($X1 - $XOffset1, $YTop, $X2 + $XOffset2, $YBottom, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "NoBorder"=>TRUE));
391 391
 
392
-     $Step = 360 / (2 * PI * $Radius);
393
-     $Color  = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
394
-     $Color2 = $this->allocateColor($this->Picture,255,0,0,$Alpha);
392
+     $Step = 360/(2*PI*$Radius);
393
+     $Color  = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
394
+     $Color2 = $this->allocateColor($this->Picture, 255, 0, 0, $Alpha);
395 395
      $Drawn = "";
396 396
 
397
-     if ( $Alpha < 100 )  { $Drawn[$YTop] = FALSE; }
398
-     if ( $Alpha < 100 )  { $Drawn[$YBottom] = TRUE; }
397
+     if ($Alpha < 100) { $Drawn[$YTop] = FALSE; }
398
+     if ($Alpha < 100) { $Drawn[$YBottom] = TRUE; }
399 399
      
400
-     for($i=0;$i<=90;$i=$i+$Step)
400
+     for ($i = 0; $i <= 90; $i = $i + $Step)
401 401
       {
402
-       $Xp1 = cos(($i+180)*PI/180) * $Radius + $X1 + $Radius;
403
-       $Xp2 = cos(((90-$i)+270)*PI/180) * $Radius + $X2 - $Radius;
404
-       $Yp  = sin(($i+180)*PI/180) * $Radius + $YTop;
402
+       $Xp1 = cos(($i + 180)*PI/180)*$Radius + $X1 + $Radius;
403
+       $Xp2 = cos(((90 - $i) + 270)*PI/180)*$Radius + $X2 - $Radius;
404
+       $Yp  = sin(($i + 180)*PI/180)*$Radius + $YTop;
405 405
 
406
-       if ( $this->getFirstDecimal($Xp1) > 5 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
407
-       if ( $this->getFirstDecimal($Xp2) > 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
408
-       if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
406
+       if ($this->getFirstDecimal($Xp1) > 5) { $XOffset1 = 1; } else { $XOffset1 = 0; }
407
+       if ($this->getFirstDecimal($Xp2) > 5) { $XOffset2 = 1; } else { $XOffset2 = 0; }
408
+       if ($this->getFirstDecimal($Yp) > 5) { $YOffset = 1; } else { $YOffset = 0; }
409 409
 
410
-       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
411
-        imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
410
+       if (!isset($Drawn[$Yp + $YOffset]) || $Alpha == 100)
411
+        imageline($this->Picture, $Xp1 + $XOffset1, $Yp + $YOffset, $Xp2 + $XOffset2, $Yp + $YOffset, $Color);
412 412
 
413
-       $Drawn[$Yp+$YOffset] = $Xp2;
413
+       $Drawn[$Yp + $YOffset] = $Xp2;
414 414
 
415
-       $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
416
-       $Xp2 = cos((90-$i)*PI/180) * $Radius + $X2 - $Radius;
417
-       $Yp  = sin(($i+90)*PI/180) * $Radius + $YBottom;
415
+       $Xp1 = cos(($i + 90)*PI/180)*$Radius + $X1 + $Radius;
416
+       $Xp2 = cos((90 - $i)*PI/180)*$Radius + $X2 - $Radius;
417
+       $Yp  = sin(($i + 90)*PI/180)*$Radius + $YBottom;
418 418
 
419
-       if ( $this->getFirstDecimal($Xp1) > 7 )  { $XOffset1 = 1; } else { $XOffset1 = 0; }
420
-       if ( $this->getFirstDecimal($Xp2) > 7 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
421
-       if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
419
+       if ($this->getFirstDecimal($Xp1) > 7) { $XOffset1 = 1; } else { $XOffset1 = 0; }
420
+       if ($this->getFirstDecimal($Xp2) > 7) { $XOffset2 = 1; } else { $XOffset2 = 0; }
421
+       if ($this->getFirstDecimal($Yp) > 5) { $YOffset = 1; } else { $YOffset = 0; }
422 422
 
423
-       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
424
-        imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
423
+       if (!isset($Drawn[$Yp + $YOffset]) || $Alpha == 100)
424
+        imageline($this->Picture, $Xp1 + $XOffset1, $Yp + $YOffset, $Xp2 + $XOffset2, $Yp + $YOffset, $Color);
425 425
 
426
-       $Drawn[$Yp+$YOffset] = $Xp2;
426
+       $Drawn[$Yp + $YOffset] = $Xp2;
427 427
       }
428 428
 
429
-     $this->drawRoundedRectangle($X1,$Y1,$X2,$Y2,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
429
+     $this->drawRoundedRectangle($X1, $Y1, $X2, $Y2, $Radius, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
430 430
 
431 431
      $this->Shadow = $RestoreShadow;
432 432
     }
433 433
 
434 434
    /* Draw a rectangle */
435
-   function drawRectangle($X1,$Y1,$X2,$Y2,$Format="")
435
+   function drawRectangle($X1, $Y1, $X2, $Y2, $Format = "")
436 436
     {
437 437
      $R		= isset($Format["R"]) ? $Format["R"] : 0;
438 438
      $G		= isset($Format["G"]) ? $Format["G"] : 0;
439 439
      $B		= isset($Format["B"]) ? $Format["B"] : 0;
440 440
      $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
441 441
      $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
442
-     $NoAngle	= isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
442
+     $NoAngle = isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
443 443
 
444 444
      if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
445 445
      if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
446 446
 
447
-     if ( $this->Antialias )
447
+     if ($this->Antialias)
448 448
       {
449
-       if ( $NoAngle )
449
+       if ($NoAngle)
450 450
         {
451
-         $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
452
-         $this->drawLine($X2,$Y1+1,$X2,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
453
-         $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
454
-         $this->drawLine($X1,$Y1+1,$X1,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
451
+         $this->drawLine($X1 + 1, $Y1, $X2 - 1, $Y1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
452
+         $this->drawLine($X2, $Y1 + 1, $X2, $Y2 - 1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
453
+         $this->drawLine($X2 - 1, $Y2, $X1 + 1, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
454
+         $this->drawLine($X1, $Y1 + 1, $X1, $Y2 - 1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
455 455
         }
456 456
        else
457 457
         {
458
-         $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
459
-         $this->drawLine($X2,$Y1,$X2,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
460
-         $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
461
-         $this->drawLine($X1,$Y1,$X1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
458
+         $this->drawLine($X1 + 1, $Y1, $X2 - 1, $Y1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
459
+         $this->drawLine($X2, $Y1, $X2, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
460
+         $this->drawLine($X2 - 1, $Y2, $X1 + 1, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
461
+         $this->drawLine($X1, $Y1, $X1, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
462 462
         }
463 463
       }
464 464
      else
465 465
       {
466
-       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
467
-       imagerectangle($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
466
+       $Color = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
467
+       imagerectangle($this->Picture, $X1, $Y1, $X2, $Y2, $Color);
468 468
       }
469 469
     }
470 470
 
471 471
    /* Draw a filled rectangle */
472
-   function drawFilledRectangle($X1,$Y1,$X2,$Y2,$Format="")
472
+   function drawFilledRectangle($X1, $Y1, $X2, $Y2, $Format = "")
473 473
     {
474 474
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
475 475
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
476 476
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
477
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
477
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
478 478
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
479 479
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
480 480
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
481 481
      $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
482 482
      $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
483
-     $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
484
-     $NoAngle		= isset($Format["NoAngle"]) ? $Format["NoAngle"] : NULL;
485
-     $Dash		= isset($Format["Dash"]) ? $Format["Dash"] : FALSE;
486
-     $DashStep		= isset($Format["DashStep"]) ? $Format["DashStep"] : 4;
483
+     $Ticks = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
484
+     $NoAngle = isset($Format["NoAngle"]) ? $Format["NoAngle"] : NULL;
485
+     $Dash = isset($Format["Dash"]) ? $Format["Dash"] : FALSE;
486
+     $DashStep = isset($Format["DashStep"]) ? $Format["DashStep"] : 4;
487 487
      $DashR		= isset($Format["DashR"]) ? $Format["DashR"] : 0;
488 488
      $DashG		= isset($Format["DashG"]) ? $Format["DashG"] : 0;
489 489
      $DashB		= isset($Format["DashB"]) ? $Format["DashB"] : 0;
490
-     $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
490
+     $NoBorder = isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
491 491
 
492
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
492
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
493 493
 
494 494
      if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
495 495
      if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
496 496
 
497 497
      $RestoreShadow = $this->Shadow;
498
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
498
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
499 499
       {
500 500
        $this->Shadow = FALSE;
501
-       $this->drawFilledRectangle($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
501
+       $this->drawFilledRectangle($X1 + $this->ShadowX, $Y1 + $this->ShadowY, $X2 + $this->ShadowX, $Y2 + $this->ShadowY, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa, "Ticks"=>$Ticks, "NoAngle"=>$NoAngle));
502 502
       }
503 503
 
504
-     $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
505
-     if ( $NoAngle )
504
+     $Color = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
505
+     if ($NoAngle)
506 506
       {
507
-       imagefilledrectangle($this->Picture,ceil($X1)+1,ceil($Y1),floor($X2)-1,floor($Y2),$Color);
508
-       imageline($this->Picture,ceil($X1),ceil($Y1)+1,ceil($X1),floor($Y2)-1,$Color);
509
-       imageline($this->Picture,floor($X2),ceil($Y1)+1,floor($X2),floor($Y2)-1,$Color);
507
+       imagefilledrectangle($this->Picture, ceil($X1) + 1, ceil($Y1), floor($X2) - 1, floor($Y2), $Color);
508
+       imageline($this->Picture, ceil($X1), ceil($Y1) + 1, ceil($X1), floor($Y2) - 1, $Color);
509
+       imageline($this->Picture, floor($X2), ceil($Y1) + 1, floor($X2), floor($Y2) - 1, $Color);
510 510
       }
511 511
      else
512
-      imagefilledrectangle($this->Picture,ceil($X1),ceil($Y1),floor($X2),floor($Y2),$Color);
512
+      imagefilledrectangle($this->Picture, ceil($X1), ceil($Y1), floor($X2), floor($Y2), $Color);
513 513
 
514
-     if ( $Dash )
514
+     if ($Dash)
515 515
       {
516
-       if ( $BorderR != -1 ) { $iX1=$X1+1; $iY1=$Y1+1; $iX2=$X2-1; $iY2=$Y2-1; } else { $iX1=$X1; $iY1=$Y1; $iX2=$X2; $iY2=$Y2; }
516
+       if ($BorderR != -1) { $iX1 = $X1 + 1; $iY1 = $Y1 + 1; $iX2 = $X2 - 1; $iY2 = $Y2 - 1; } else { $iX1 = $X1; $iY1 = $Y1; $iX2 = $X2; $iY2 = $Y2; }
517 517
 
518
-       $Color = $this->allocateColor($this->Picture,$DashR,$DashG,$DashB,$Alpha);
519
-       $Y=$iY1-$DashStep;
520
-       for($X=$iX1; $X<=$iX2+($iY2-$iY1); $X=$X+$DashStep)
518
+       $Color = $this->allocateColor($this->Picture, $DashR, $DashG, $DashB, $Alpha);
519
+       $Y = $iY1 - $DashStep;
520
+       for ($X = $iX1; $X <= $iX2 + ($iY2 - $iY1); $X = $X + $DashStep)
521 521
         {
522
-         $Y=$Y+$DashStep;
523
-         if ( $X > $iX2 ) { $Xa = $X-($X-$iX2); $Ya = $iY1+($X-$iX2); } else { $Xa = $X; $Ya = $iY1; }
524
-         if ( $Y > $iY2 ) { $Xb = $iX1+($Y-$iY2); $Yb = $Y-($Y-$iY2); } else { $Xb = $iX1; $Yb = $Y; }
525
-         imageline($this->Picture,$Xa,$Ya,$Xb,$Yb,$Color);
522
+         $Y = $Y + $DashStep;
523
+         if ($X > $iX2) { $Xa = $X - ($X - $iX2); $Ya = $iY1 + ($X - $iX2); } else { $Xa = $X; $Ya = $iY1; }
524
+         if ($Y > $iY2) { $Xb = $iX1 + ($Y - $iY2); $Yb = $Y - ($Y - $iY2); } else { $Xb = $iX1; $Yb = $Y; }
525
+         imageline($this->Picture, $Xa, $Ya, $Xb, $Yb, $Color);
526 526
         }
527 527
       }
528 528
 
529
-     if ( $this->Antialias && !$NoBorder )
529
+     if ($this->Antialias && !$NoBorder)
530 530
       {
531
-       if ( $X1 < ceil($X1) )
531
+       if ($X1 < ceil($X1))
532 532
         {
533
-         $AlphaA = $Alpha * (ceil($X1) - $X1);
534
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
535
-         imageline($this->Picture,ceil($X1)-1,ceil($Y1),ceil($X1)-1,floor($Y2),$Color);
533
+         $AlphaA = $Alpha*(ceil($X1) - $X1);
534
+         $Color = $this->allocateColor($this->Picture, $R, $G, $B, $AlphaA);
535
+         imageline($this->Picture, ceil($X1) - 1, ceil($Y1), ceil($X1) - 1, floor($Y2), $Color);
536 536
         }
537 537
 
538
-       if ( $Y1 < ceil($Y1) )
538
+       if ($Y1 < ceil($Y1))
539 539
         {
540
-         $AlphaA = $Alpha * (ceil($Y1) - $Y1);
541
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
542
-         imageline($this->Picture,ceil($X1),ceil($Y1)-1,floor($X2),ceil($Y1)-1,$Color);
540
+         $AlphaA = $Alpha*(ceil($Y1) - $Y1);
541
+         $Color = $this->allocateColor($this->Picture, $R, $G, $B, $AlphaA);
542
+         imageline($this->Picture, ceil($X1), ceil($Y1) - 1, floor($X2), ceil($Y1) - 1, $Color);
543 543
         }
544 544
 
545
-       if ( $X2 > floor($X2) )
545
+       if ($X2 > floor($X2))
546 546
         {
547
-         $AlphaA = $Alpha * (.5-($X2 - floor($X2)));
548
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
549
-         imageline($this->Picture,floor($X2)+1,ceil($Y1),floor($X2)+1,floor($Y2),$Color);
547
+         $AlphaA = $Alpha*(.5 - ($X2 - floor($X2)));
548
+         $Color = $this->allocateColor($this->Picture, $R, $G, $B, $AlphaA);
549
+         imageline($this->Picture, floor($X2) + 1, ceil($Y1), floor($X2) + 1, floor($Y2), $Color);
550 550
         } 
551 551
 
552
-       if ( $Y2 > floor($Y2) )
552
+       if ($Y2 > floor($Y2))
553 553
         {
554
-         $AlphaA = $Alpha * (.5-($Y2 - floor($Y2)));
555
-         $Color = $this->allocateColor($this->Picture,$R,$G,$B,$AlphaA);
556
-         imageline($this->Picture,ceil($X1),floor($Y2)+1,floor($X2),floor($Y2)+1,$Color);
554
+         $AlphaA = $Alpha*(.5 - ($Y2 - floor($Y2)));
555
+         $Color = $this->allocateColor($this->Picture, $R, $G, $B, $AlphaA);
556
+         imageline($this->Picture, ceil($X1), floor($Y2) + 1, floor($X2), floor($Y2) + 1, $Color);
557 557
         }
558 558
       }
559 559
 
560
-     if ( $BorderR != -1 )
561
-      $this->drawRectangle($X1,$Y1,$X2,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
560
+     if ($BorderR != -1)
561
+      $this->drawRectangle($X1, $Y1, $X2, $Y2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$Ticks, "NoAngle"=>$NoAngle));
562 562
 
563 563
      $this->Shadow = $RestoreShadow;
564 564
     }
565 565
 
566 566
    /* Draw a rectangular marker of the specified size */
567
-   function drawRectangleMarker($X,$Y,$Format="")
567
+   function drawRectangleMarker($X, $Y, $Format = "")
568 568
     {
569 569
      $Size = isset($Format["Size"]) ? $Format["Size"] : 4;
570 570
 
571 571
      $HalfSize = floor($Size/2);
572
-     $this->drawFilledRectangle($X-$HalfSize,$Y-$HalfSize,$X+$HalfSize,$Y+$HalfSize,$Format);
572
+     $this->drawFilledRectangle($X - $HalfSize, $Y - $HalfSize, $X + $HalfSize, $Y + $HalfSize, $Format);
573 573
     }
574 574
 
575 575
    /* Drawn a spline based on the bezier function */
576
-   function drawSpline($Coordinates,$Format="")
576
+   function drawSpline($Coordinates, $Format = "")
577 577
     {
578 578
      $R		= isset($Format["R"]) ? $Format["R"] : 0;
579 579
      $G		= isset($Format["G"]) ? $Format["G"] : 0;
580 580
      $B		= isset($Format["B"]) ? $Format["B"] : 0;
581 581
      $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
582 582
      $Force	= isset($Format["Force"]) ? $Format["Force"] : 30;
583
-     $Forces	= isset($Format["Forces"]) ? $Format["Forces"] : NULL;
583
+     $Forces = isset($Format["Forces"]) ? $Format["Forces"] : NULL;
584 584
      $ShowC	= isset($Format["ShowControl"]) ? $Format["ShowControl"] : FALSE;
585 585
      $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
586
-     $PathOnly	= isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
587
-     $Weight	= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
586
+     $PathOnly = isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
587
+     $Weight = isset($Format["Weight"]) ? $Format["Weight"] : NULL;
588 588
 
589 589
      $Cpt = NULL; $Mode = NULL; $Result = "";
590
-     for($i=1;$i<=count($Coordinates)-1;$i++)
590
+     for ($i = 1; $i <= count($Coordinates) - 1; $i++)
591 591
       {
592
-       $X1 = $Coordinates[$i-1][0]; $Y1 = $Coordinates[$i-1][1];
593
-       $X2 = $Coordinates[$i][0];   $Y2 = $Coordinates[$i][1];
592
+       $X1 = $Coordinates[$i - 1][0]; $Y1 = $Coordinates[$i - 1][1];
593
+       $X2 = $Coordinates[$i][0]; $Y2 = $Coordinates[$i][1];
594 594
 
595
-       if ( $Forces != NULL ) { $Force = $Forces[$i]; }
595
+       if ($Forces != NULL) { $Force = $Forces[$i]; }
596 596
 
597 597
        /* First segment */
598
-       if ( $i == 1 )
598
+       if ($i == 1)
599 599
         { $Xv1 = $X1; $Yv1 = $Y1; }
600 600
        else
601 601
         {
602
-         $Angle1 = $this->getAngle($XLast,$YLast,$X1,$Y1);
603
-         $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
604
-         $XOff = cos($Angle2 * PI / 180) * $Force + $X1;
605
-         $YOff = sin($Angle2 * PI / 180) * $Force + $Y1;
602
+         $Angle1 = $this->getAngle($XLast, $YLast, $X1, $Y1);
603
+         $Angle2 = $this->getAngle($X1, $Y1, $X2, $Y2);
604
+         $XOff = cos($Angle2*PI/180)*$Force + $X1;
605
+         $YOff = sin($Angle2*PI/180)*$Force + $Y1;
606 606
 
607
-         $Xv1 = cos($Angle1 * PI / 180) * $Force + $XOff;
608
-         $Yv1 = sin($Angle1 * PI / 180) * $Force + $YOff;
607
+         $Xv1 = cos($Angle1*PI/180)*$Force + $XOff;
608
+         $Yv1 = sin($Angle1*PI/180)*$Force + $YOff;
609 609
         }
610 610
 
611 611
        /* Last segment */
612
-       if ( $i == count($Coordinates)-1 )
612
+       if ($i == count($Coordinates) - 1)
613 613
         { $Xv2 = $X2; $Yv2 = $Y2; }
614 614
        else
615 615
         {
616
-         $Angle1 = $this->getAngle($X2,$Y2,$Coordinates[$i+1][0],$Coordinates[$i+1][1]);
617
-         $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
618
-         $XOff = cos(($Angle2+180) * PI / 180) * $Force + $X2;
619
-         $YOff = sin(($Angle2+180) * PI / 180) * $Force + $Y2;
616
+         $Angle1 = $this->getAngle($X2, $Y2, $Coordinates[$i + 1][0], $Coordinates[$i + 1][1]);
617
+         $Angle2 = $this->getAngle($X1, $Y1, $X2, $Y2);
618
+         $XOff = cos(($Angle2 + 180)*PI/180)*$Force + $X2;
619
+         $YOff = sin(($Angle2 + 180)*PI/180)*$Force + $Y2;
620 620
 
621
-         $Xv2 = cos(($Angle1+180) * PI / 180) * $Force + $XOff;
622
-         $Yv2 = sin(($Angle1+180) * PI / 180) * $Force + $YOff;
621
+         $Xv2 = cos(($Angle1 + 180)*PI/180)*$Force + $XOff;
622
+         $Yv2 = sin(($Angle1 + 180)*PI/180)*$Force + $YOff;
623 623
         }
624 624
 
625
-       $Path = $this->drawBezier($X1,$Y1,$X2,$Y2,$Xv1,$Yv1,$Xv2,$Yv2,$Format);
625
+       $Path = $this->drawBezier($X1, $Y1, $X2, $Y2, $Xv1, $Yv1, $Xv2, $Yv2, $Format);
626 626
        if ($PathOnly) { $Result[] = $Path; }
627 627
 
628 628
        $XLast = $X1; $YLast = $Y1;
@@ -632,14 +632,14 @@  discard block
 block discarded – undo
632 632
     }
633 633
 
634 634
    /* Draw a bezier curve with two controls points */
635
-   function drawBezier($X1,$Y1,$X2,$Y2,$Xv1,$Yv1,$Xv2,$Yv2,$Format="")
635
+   function drawBezier($X1, $Y1, $X2, $Y2, $Xv1, $Yv1, $Xv2, $Yv2, $Format = "")
636 636
     {
637 637
      $R		= isset($Format["R"]) ? $Format["R"] : 0;
638 638
      $G		= isset($Format["G"]) ? $Format["G"] : 0;
639 639
      $B		= isset($Format["B"]) ? $Format["B"] : 0;
640 640
      $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
641 641
      $ShowC	= isset($Format["ShowControl"]) ? $Format["ShowControl"] : FALSE;
642
-     $Segments	= isset($Format["Segments"]) ? $Format["Segments"] : NULL;
642
+     $Segments = isset($Format["Segments"]) ? $Format["Segments"] : NULL;
643 643
      $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
644 644
      $NoDraw    = isset($Format["NoDraw"]) ? $Format["NoDraw"] : FALSE;
645 645
      $PathOnly  = isset($Format["PathOnly"]) ? $Format["PathOnly"] : FALSE;
@@ -647,61 +647,61 @@  discard block
 block discarded – undo
647 647
      $DrawArrow		= isset($Format["DrawArrow"]) ? $Format["DrawArrow"] : FALSE;
648 648
      $ArrowSize		= isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 10;
649 649
      $ArrowRatio	= isset($Format["ArrowRatio"]) ? $Format["ArrowRatio"] : .5;
650
-     $ArrowTwoHeads	= isset($Format["ArrowTwoHeads"]) ? $Format["ArrowTwoHeads"] : FALSE;
650
+     $ArrowTwoHeads = isset($Format["ArrowTwoHeads"]) ? $Format["ArrowTwoHeads"] : FALSE;
651 651
 
652
-     if ( $Segments == NULL )
652
+     if ($Segments == NULL)
653 653
       {
654
-       $Length    = $this->getLength($X1,$Y1,$X2,$Y2);
654
+       $Length    = $this->getLength($X1, $Y1, $X2, $Y2);
655 655
        $Precision = ($Length*125)/1000;
656 656
       }
657 657
      else
658 658
       $Precision = $Segments;
659 659
 
660
-     $P[0]["X"] = $X1;  $P[0]["Y"] = $Y1;
660
+     $P[0]["X"] = $X1; $P[0]["Y"] = $Y1;
661 661
      $P[1]["X"] = $Xv1; $P[1]["Y"] = $Yv1;
662 662
      $P[2]["X"] = $Xv2; $P[2]["Y"] = $Yv2;
663
-     $P[3]["X"] = $X2;  $P[3]["Y"] = $Y2;
663
+     $P[3]["X"] = $X2; $P[3]["Y"] = $Y2;
664 664
 
665 665
      /* Compute the bezier points */
666 666
      $Q = ""; $ID = 0; $Path = "";
667
-     for($i=0;$i<=$Precision;$i=$i+1)
667
+     for ($i = 0; $i <= $Precision; $i = $i + 1)
668 668
       {
669
-       $u = $i / $Precision;
669
+       $u = $i/$Precision;
670 670
 
671 671
        $C    = "";
672
-       $C[0] = (1 - $u) * (1 - $u) * (1 - $u);
673
-       $C[1] = ($u * 3) * (1 - $u) * (1 - $u);
674
-       $C[2] = 3 * $u * $u * (1 - $u);
675
-       $C[3] = $u * $u * $u;
672
+       $C[0] = (1 - $u)*(1 - $u)*(1 - $u);
673
+       $C[1] = ($u*3)*(1 - $u)*(1 - $u);
674
+       $C[2] = 3*$u*$u*(1 - $u);
675
+       $C[3] = $u*$u*$u;
676 676
 
677
-       for($j=0;$j<=3;$j++)
677
+       for ($j = 0; $j <= 3; $j++)
678 678
         {
679
-         if ( !isset($Q[$ID]) ) { $Q[$ID] = ""; }
680
-         if ( !isset($Q[$ID]["X"]) ) { $Q[$ID]["X"] = 0; }
681
-         if ( !isset($Q[$ID]["Y"]) ) { $Q[$ID]["Y"] = 0; }
679
+         if (!isset($Q[$ID])) { $Q[$ID] = ""; }
680
+         if (!isset($Q[$ID]["X"])) { $Q[$ID]["X"] = 0; }
681
+         if (!isset($Q[$ID]["Y"])) { $Q[$ID]["Y"] = 0; }
682 682
 
683
-         $Q[$ID]["X"] = $Q[$ID]["X"] + $P[$j]["X"] * $C[$j];
684
-         $Q[$ID]["Y"] = $Q[$ID]["Y"] + $P[$j]["Y"] * $C[$j];
683
+         $Q[$ID]["X"] = $Q[$ID]["X"] + $P[$j]["X"]*$C[$j];
684
+         $Q[$ID]["Y"] = $Q[$ID]["Y"] + $P[$j]["Y"]*$C[$j];
685 685
         }
686 686
        $ID++;
687 687
       }        
688 688
      $Q[$ID]["X"] = $X2; $Q[$ID]["Y"] = $Y2;
689 689
 
690
-     if ( !$NoDraw )
690
+     if (!$NoDraw)
691 691
       {
692 692
        /* Display the control points */
693
-       if ( $ShowC && !$PathOnly )
693
+       if ($ShowC && !$PathOnly)
694 694
         {
695 695
          $Xv1 = floor($Xv1); $Yv1 = floor($Yv1); $Xv2 = floor($Xv2); $Yv2 = floor($Yv2);
696 696
 
697
-         $this->drawLine($X1,$Y1,$X2,$Y2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>30));
697
+         $this->drawLine($X1, $Y1, $X2, $Y2, array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>30));
698 698
 
699
-         $MyMarkerSettings = array("R"=>255,"G"=>0,"B"=>0,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
700
-         $this->drawRectangleMarker($Xv1,$Yv1,$MyMarkerSettings);
701
-         $this->drawText($Xv1+4,$Yv1,"v1");
702
-         $MyMarkerSettings = array("R"=>0,"G"=>0,"B"=>255,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
703
-         $this->drawRectangleMarker($Xv2,$Yv2,$MyMarkerSettings);
704
-         $this->drawText($Xv2+4,$Yv2,"v2");
699
+         $MyMarkerSettings = array("R"=>255, "G"=>0, "B"=>0, "BorderR"=>255, "BorderB"=>255, "BorderG"=>255, "Size"=>4);
700
+         $this->drawRectangleMarker($Xv1, $Yv1, $MyMarkerSettings);
701
+         $this->drawText($Xv1 + 4, $Yv1, "v1");
702
+         $MyMarkerSettings = array("R"=>0, "G"=>0, "B"=>255, "BorderR"=>255, "BorderB"=>255, "BorderG"=>255, "Size"=>4);
703
+         $this->drawRectangleMarker($Xv2, $Yv2, $MyMarkerSettings);
704
+         $this->drawText($Xv2 + 4, $Yv2, "v2");
705 705
         }
706 706
 
707 707
        /* Draw the bezier */
@@ -711,11 +711,11 @@  discard block
 block discarded – undo
711 711
          $X = $Point["X"]; $Y = $Point["Y"];
712 712
 
713 713
          /* Get the first segment */
714
-         if ( $ArrowS == NULL && $LastX != NULL && $LastY != NULL )
714
+         if ($ArrowS == NULL && $LastX != NULL && $LastY != NULL)
715 715
           { $ArrowS["X2"] = $LastX; $ArrowS["Y2"] = $LastY; $ArrowS["X1"] = $X; $ArrowS["Y1"] = $Y; }
716 716
 
717
-         if ( $LastX != NULL && $LastY != NULL && !$PathOnly)
718
-          list($Cpt,$Mode) = $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Cpt"=>$Cpt,"Mode"=>$Mode,"Weight"=>$Weight));
717
+         if ($LastX != NULL && $LastY != NULL && !$PathOnly)
718
+          list($Cpt, $Mode) = $this->drawLine($LastX, $LastY, $X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Cpt"=>$Cpt, "Mode"=>$Mode, "Weight"=>$Weight));
719 719
 
720 720
          /* Get the last segment */
721 721
          $ArrowE["X1"] = $LastX; $ArrowE["Y1"] = $LastY; $ArrowE["X2"] = $X; $ArrowE["Y2"] = $Y;
@@ -723,127 +723,127 @@  discard block
 block discarded – undo
723 723
          $LastX = $X; $LastY = $Y;
724 724
         }
725 725
 
726
-       if ( $DrawArrow && !$PathOnly )
726
+       if ($DrawArrow && !$PathOnly)
727 727
         {
728
-         $ArrowSettings = array("FillR"=>$R,"FillG"=>$G,"FillB"=>$B,"Alpha"=>$Alpha,"Size"=>$ArrowSize,"Ratio"=>$ArrowRatio);
729
-         if ( $ArrowTwoHeads )
730
-          $this->drawArrow($ArrowS["X1"],$ArrowS["Y1"],$ArrowS["X2"],$ArrowS["Y2"],$ArrowSettings);
728
+         $ArrowSettings = array("FillR"=>$R, "FillG"=>$G, "FillB"=>$B, "Alpha"=>$Alpha, "Size"=>$ArrowSize, "Ratio"=>$ArrowRatio);
729
+         if ($ArrowTwoHeads)
730
+          $this->drawArrow($ArrowS["X1"], $ArrowS["Y1"], $ArrowS["X2"], $ArrowS["Y2"], $ArrowSettings);
731 731
 
732
-         $this->drawArrow($ArrowE["X1"],$ArrowE["Y1"],$ArrowE["X2"],$ArrowE["Y2"],$ArrowSettings);
732
+         $this->drawArrow($ArrowE["X1"], $ArrowE["Y1"], $ArrowE["X2"], $ArrowE["Y2"], $ArrowSettings);
733 733
         }
734 734
       }
735 735
      return($Q);
736 736
     }
737 737
 
738 738
    /* Draw a line between two points */
739
-   function drawLine($X1,$Y1,$X2,$Y2,$Format="")
739
+   function drawLine($X1, $Y1, $X2, $Y2, $Format = "")
740 740
     {
741 741
      $R		= isset($Format["R"]) ? $Format["R"] : 0;
742 742
      $G		= isset($Format["G"]) ? $Format["G"] : 0;
743 743
      $B		= isset($Format["B"]) ? $Format["B"] : 0;
744 744
      $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
745 745
      $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
746
-     $Cpt	= isset($Format["Cpt"]) ? $Format["Cpt"] : 1;
747
-     $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : 1;
748
-     $Weight	= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
749
-     $Threshold	= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
746
+     $Cpt = isset($Format["Cpt"]) ? $Format["Cpt"] : 1;
747
+     $Mode = isset($Format["Mode"]) ? $Format["Mode"] : 1;
748
+     $Weight = isset($Format["Weight"]) ? $Format["Weight"] : NULL;
749
+     $Threshold = isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
750 750
 
751
-     if ( $this->Antialias == FALSE && $Ticks == NULL )
751
+     if ($this->Antialias == FALSE && $Ticks == NULL)
752 752
       {
753
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
753
+       if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
754 754
         {
755
-         $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
756
-         imageline($this->Picture,$X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,$ShadowColor);
755
+         $ShadowColor = $this->allocateColor($this->Picture, $this->ShadowR, $this->ShadowG, $this->ShadowB, $this->Shadowa);
756
+         imageline($this->Picture, $X1 + $this->ShadowX, $Y1 + $this->ShadowY, $X2 + $this->ShadowX, $Y2 + $this->ShadowY, $ShadowColor);
757 757
         }
758 758
 
759
-       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
760
-       imageline($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
759
+       $Color = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
760
+       imageline($this->Picture, $X1, $Y1, $X2, $Y2, $Color);
761 761
        return(0);
762 762
       }
763 763
 
764
-     $Distance = sqrt(($X2-$X1)*($X2-$X1)+($Y2-$Y1)*($Y2-$Y1));  
765
-     if ( $Distance == 0 ) { return(-1); }
764
+     $Distance = sqrt(($X2 - $X1)*($X2 - $X1) + ($Y2 - $Y1)*($Y2 - $Y1));  
765
+     if ($Distance == 0) { return(-1); }
766 766
 
767 767
      /* Derivative algorithm for overweighted lines, re-route to polygons primitives */
768
-     if ( $Weight != NULL )
768
+     if ($Weight != NULL)
769 769
       {
770
-       $Angle        = $this->getAngle($X1,$Y1,$X2,$Y2);
771
-       $PolySettings = array ("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderAlpha"=>$Alpha);
770
+       $Angle        = $this->getAngle($X1, $Y1, $X2, $Y2);
771
+       $PolySettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "BorderAlpha"=>$Alpha);
772 772
 
773
-       if ( $Ticks == NULL )
773
+       if ($Ticks == NULL)
774 774
         {
775 775
          $Points   = ""; 
776
-         $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X1; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y1;
777
-         $Points[] = cos(deg2rad($Angle+90)) * $Weight + $X1; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Y1;
778
-         $Points[] = cos(deg2rad($Angle+90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Y2;
779
-         $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y2;
776
+         $Points[] = cos(deg2rad($Angle - 90))*$Weight + $X1; $Points[] = sin(deg2rad($Angle - 90))*$Weight + $Y1;
777
+         $Points[] = cos(deg2rad($Angle + 90))*$Weight + $X1; $Points[] = sin(deg2rad($Angle + 90))*$Weight + $Y1;
778
+         $Points[] = cos(deg2rad($Angle + 90))*$Weight + $X2; $Points[] = sin(deg2rad($Angle + 90))*$Weight + $Y2;
779
+         $Points[] = cos(deg2rad($Angle - 90))*$Weight + $X2; $Points[] = sin(deg2rad($Angle - 90))*$Weight + $Y2;
780 780
 
781
-         $this->drawPolygon($Points,$PolySettings);
781
+         $this->drawPolygon($Points, $PolySettings);
782 782
         }
783 783
        else
784 784
         {
785
-         for($i=0;$i<=$Distance;$i=$i+$Ticks*2)
785
+         for ($i = 0; $i <= $Distance; $i = $i + $Ticks*2)
786 786
           {
787
-           $Xa = (($X2-$X1)/$Distance) * $i + $X1; $Ya = (($Y2-$Y1)/$Distance) * $i + $Y1;
788
-           $Xb = (($X2-$X1)/$Distance) * ($i+$Ticks) + $X1; $Yb = (($Y2-$Y1)/$Distance) * ($i+$Ticks) + $Y1;
787
+           $Xa = (($X2 - $X1)/$Distance)*$i + $X1; $Ya = (($Y2 - $Y1)/$Distance)*$i + $Y1;
788
+           $Xb = (($X2 - $X1)/$Distance)*($i + $Ticks) + $X1; $Yb = (($Y2 - $Y1)/$Distance)*($i + $Ticks) + $Y1;
789 789
 
790 790
            $Points   = ""; 
791
-           $Points[] = cos(deg2rad($Angle-90)) * $Weight + $Xa; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Ya;
792
-           $Points[] = cos(deg2rad($Angle+90)) * $Weight + $Xa; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Ya;
793
-           $Points[] = cos(deg2rad($Angle+90)) * $Weight + $Xb; $Points[] = sin(deg2rad($Angle+90)) * $Weight + $Yb;
794
-           $Points[] = cos(deg2rad($Angle-90)) * $Weight + $Xb; $Points[] = sin(deg2rad($Angle-90)) * $Weight 	+ $Yb;
791
+           $Points[] = cos(deg2rad($Angle - 90))*$Weight + $Xa; $Points[] = sin(deg2rad($Angle - 90))*$Weight + $Ya;
792
+           $Points[] = cos(deg2rad($Angle + 90))*$Weight + $Xa; $Points[] = sin(deg2rad($Angle + 90))*$Weight + $Ya;
793
+           $Points[] = cos(deg2rad($Angle + 90))*$Weight + $Xb; $Points[] = sin(deg2rad($Angle + 90))*$Weight + $Yb;
794
+           $Points[] = cos(deg2rad($Angle - 90))*$Weight + $Xb; $Points[] = sin(deg2rad($Angle - 90))*$Weight + $Yb;
795 795
 
796
-           $this->drawPolygon($Points,$PolySettings);
796
+           $this->drawPolygon($Points, $PolySettings);
797 797
           }
798 798
         }
799 799
 
800 800
        return(1);
801 801
       }
802 802
 
803
-     $XStep = ($X2-$X1) / $Distance;
804
-     $YStep = ($Y2-$Y1) / $Distance;
803
+     $XStep = ($X2 - $X1)/$Distance;
804
+     $YStep = ($Y2 - $Y1)/$Distance;
805 805
 
806
-     for($i=0;$i<=$Distance;$i++)
806
+     for ($i = 0; $i <= $Distance; $i++)
807 807
       {
808
-       $X = $i * $XStep + $X1;
809
-       $Y = $i * $YStep + $Y1;
808
+       $X = $i*$XStep + $X1;
809
+       $Y = $i*$YStep + $Y1;
810 810
 
811
-       $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
811
+       $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
812 812
 
813
-       if ( $Threshold != NULL )
813
+       if ($Threshold != NULL)
814 814
         {
815
-         foreach($Threshold as $Key => $Parameters)
815
+         foreach ($Threshold as $Key => $Parameters)
816 816
           {
817
-           if ( $Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
817
+           if ($Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
818 818
             {
819
-             if ( isset($Parameters["R"]) ) { $RT = $Parameters["R"]; } else { $RT = 0; }
820
-             if ( isset($Parameters["G"]) ) { $GT = $Parameters["G"]; } else { $GT = 0; }
821
-             if ( isset($Parameters["B"]) ) { $BT = $Parameters["B"]; } else { $BT = 0; }
822
-             if ( isset($Parameters["Alpha"]) ) { $AlphaT = $Parameters["Alpha"]; } else { $AlphaT = 0; }
823
-             $Color = array("R"=>$RT,"G"=>$GT,"B"=>$BT,"Alpha"=>$AlphaT);
819
+             if (isset($Parameters["R"])) { $RT = $Parameters["R"]; } else { $RT = 0; }
820
+             if (isset($Parameters["G"])) { $GT = $Parameters["G"]; } else { $GT = 0; }
821
+             if (isset($Parameters["B"])) { $BT = $Parameters["B"]; } else { $BT = 0; }
822
+             if (isset($Parameters["Alpha"])) { $AlphaT = $Parameters["Alpha"]; } else { $AlphaT = 0; }
823
+             $Color = array("R"=>$RT, "G"=>$GT, "B"=>$BT, "Alpha"=>$AlphaT);
824 824
             }
825 825
           }
826 826
         }
827 827
 
828
-       if ( $Ticks != NULL )
828
+       if ($Ticks != NULL)
829 829
         {
830
-         if ( $Cpt % $Ticks == 0 )
831
-          { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
830
+         if ($Cpt%$Ticks == 0)
831
+          { $Cpt = 0; if ($Mode == 1) { $Mode = 0; } else { $Mode = 1; } }
832 832
 
833
-         if ( $Mode == 1 )
834
-          $this->drawAntialiasPixel($X,$Y,$Color);
833
+         if ($Mode == 1)
834
+          $this->drawAntialiasPixel($X, $Y, $Color);
835 835
 
836 836
          $Cpt++;
837 837
         }
838 838
        else
839
-        $this->drawAntialiasPixel($X,$Y,$Color);
839
+        $this->drawAntialiasPixel($X, $Y, $Color);
840 840
       }
841 841
 
842
-     return(array($Cpt,$Mode));
842
+     return(array($Cpt, $Mode));
843 843
     }
844 844
 
845 845
    /* Draw a circle */
846
-   function drawCircle($Xc,$Yc,$Height,$Width,$Format="")
846
+   function drawCircle($Xc, $Yc, $Height, $Width, $Format = "")
847 847
     {
848 848
      $R	    = isset($Format["R"]) ? $Format["R"] : 0;
849 849
      $G	    = isset($Format["G"]) ? $Format["G"] : 0;
@@ -851,102 +851,102 @@  discard block
 block discarded – undo
851 851
      $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
852 852
      $Ticks = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
853 853
 
854
-     $Height	= abs($Height);
854
+     $Height = abs($Height);
855 855
      $Width	= abs($Width);
856 856
 
857
-     if ( $Height == 0 ) { $Height = 1; }
858
-     if ( $Width == 0 )  { $Width = 1; }
857
+     if ($Height == 0) { $Height = 1; }
858
+     if ($Width == 0) { $Width = 1; }
859 859
      $Xc = floor($Xc); $Yc = floor($Yc);
860 860
 
861 861
      $RestoreShadow = $this->Shadow;
862
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
862
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
863 863
       {
864 864
        $this->Shadow = FALSE;
865
-       $this->drawCircle($Xc+$this->ShadowX,$Yc+$this->ShadowY,$Height,$Width,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks));
865
+       $this->drawCircle($Xc + $this->ShadowX, $Yc + $this->ShadowY, $Height, $Width, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa, "Ticks"=>$Ticks));
866 866
       }
867 867
 
868
-     if ( $Width == 0 ) { $Width = $Height; }
869
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
870
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
871
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
868
+     if ($Width == 0) { $Width = $Height; }
869
+     if ($R < 0) { $R = 0; } if ($R > 255) { $R = 255; }
870
+     if ($G < 0) { $G = 0; } if ($G > 255) { $G = 255; }
871
+     if ($B < 0) { $B = 0; } if ($B > 255) { $B = 255; }
872 872
 
873
-     $Step = 360 / (2 * PI * max($Width,$Height));
873
+     $Step = 360/(2*PI*max($Width, $Height));
874 874
      $Mode = 1; $Cpt = 1;
875
-     for($i=0;$i<=360;$i=$i+$Step)
875
+     for ($i = 0; $i <= 360; $i = $i + $Step)
876 876
       {
877
-       $X = cos($i*PI/180) * $Height + $Xc;
878
-       $Y = sin($i*PI/180) * $Width + $Yc;
877
+       $X = cos($i*PI/180)*$Height + $Xc;
878
+       $Y = sin($i*PI/180)*$Width + $Yc;
879 879
 
880
-       if ( $Ticks != NULL )
880
+       if ($Ticks != NULL)
881 881
         {
882
-         if ( $Cpt % $Ticks == 0 )
883
-          { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
882
+         if ($Cpt%$Ticks == 0)
883
+          { $Cpt = 0; if ($Mode == 1) { $Mode = 0; } else { $Mode = 1; } }
884 884
 
885
-         if ( $Mode == 1 )
886
-          $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
885
+         if ($Mode == 1)
886
+          $this->drawAntialiasPixel($X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
887 887
 
888 888
          $Cpt++;
889 889
         }
890 890
        else
891
-        $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
891
+        $this->drawAntialiasPixel($X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
892 892
 
893 893
       }
894 894
      $this->Shadow = $RestoreShadow;
895 895
     }
896 896
 
897 897
    /* Draw a filled circle */
898
-   function drawFilledCircle($X,$Y,$Radius,$Format="")
898
+   function drawFilledCircle($X, $Y, $Radius, $Format = "")
899 899
     {
900 900
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
901 901
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
902 902
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
903
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
903
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
904 904
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
905 905
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
906 906
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
907
-     $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
908
-     $Ticks     	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
909
-     $Surrounding 	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
907
+     $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha;
908
+     $Ticks = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
909
+     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
910 910
 
911
-     if ( $Radius == 0 ) { $Radius = 1; }
912
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
911
+     if ($Radius == 0) { $Radius = 1; }
912
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
913 913
      $X = floor($X); $Y = floor($Y);
914 914
 
915 915
      $Radius = abs($Radius);
916 916
 
917 917
      $RestoreShadow = $this->Shadow;
918
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
918
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
919 919
       {
920 920
        $this->Shadow = FALSE;
921
-       $this->drawFilledCircle($X+$this->ShadowX,$Y+$this->ShadowY,$Radius,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Ticks"=>$Ticks));
921
+       $this->drawFilledCircle($X + $this->ShadowX, $Y + $this->ShadowY, $Radius, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa, "Ticks"=>$Ticks));
922 922
       }
923 923
 
924
-     $this->Mask  = "";
925
-     $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
926
-     for ($i=0; $i<=$Radius*2; $i++)
924
+     $this->Mask = "";
925
+     $Color = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
926
+     for ($i = 0; $i <= $Radius*2; $i++)
927 927
       {
928
-       $Slice  = sqrt($Radius * $Radius - ($Radius - $i) * ($Radius - $i));
928
+       $Slice  = sqrt($Radius*$Radius - ($Radius - $i)*($Radius - $i));
929 929
        $XPos   = floor($Slice);
930 930
        $YPos   = $Y + $i - $Radius;
931 931
        $AAlias = $Slice - floor($Slice);
932 932
 
933
-       $this->Mask[$X-$XPos][$YPos] = TRUE;
934
-       $this->Mask[$X+$XPos][$YPos] = TRUE;
935
-       imageline($this->Picture,$X-$XPos,$YPos,$X+$XPos,$YPos,$Color);
933
+       $this->Mask[$X - $XPos][$YPos] = TRUE;
934
+       $this->Mask[$X + $XPos][$YPos] = TRUE;
935
+       imageline($this->Picture, $X - $XPos, $YPos, $X + $XPos, $YPos, $Color);
936 936
       }
937
-     if ( $this->Antialias )
938
-      $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
937
+     if ($this->Antialias)
938
+      $this->drawCircle($X, $Y, $Radius, $Radius, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
939 939
 
940 940
      $this->Mask = "";
941 941
 
942
-     if ( $BorderR != -1 )
943
-      $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks));
942
+     if ($BorderR != -1)
943
+      $this->drawCircle($X, $Y, $Radius, $Radius, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$Ticks));
944 944
 
945
-     $this->Shadow	= $RestoreShadow;
945
+     $this->Shadow = $RestoreShadow;
946 946
     }
947 947
 
948 948
    /* Write text */
949
-   function drawText($X,$Y,$Text,$Format="")
949
+   function drawText($X, $Y, $Text, $Format = "")
950 950
     {
951 951
      $R			= isset($Format["R"]) ? $Format["R"] : $this->FontColorR;
952 952
      $G			= isset($Format["G"]) ? $Format["G"] : $this->FontColorG;
@@ -956,71 +956,71 @@  discard block
 block discarded – undo
956 956
      $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
957 957
      $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
958 958
      $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
959
-     $ShowOrigine	= isset($Format["ShowOrigine"]) ? $Format["ShowOrigine"] : FALSE;
959
+     $ShowOrigine = isset($Format["ShowOrigine"]) ? $Format["ShowOrigine"] : FALSE;
960 960
      $TOffset		= isset($Format["TOffset"]) ? $Format["TOffset"] : 2;
961 961
      $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : FALSE;
962 962
      $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : TRUE;
963
-     $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 6;
964
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : FALSE;
963
+     $BorderOffset = isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 6;
964
+     $BoxRounded = isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : FALSE;
965 965
      $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 6;
966 966
      $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 255;
967 967
      $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 255;
968 968
      $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 255;
969
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
970
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
969
+     $BoxAlpha = isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
970
+     $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
971 971
      $BoxBorderR	= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
972 972
      $BoxBorderG	= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
973 973
      $BoxBorderB	= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
974
-     $BoxBorderAlpha	= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
975
-     $NoShadow		= isset($Format["NoShadow"]) ? $Format["NoShadow"] : FALSE;
974
+     $BoxBorderAlpha = isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 50;
975
+     $NoShadow = isset($Format["NoShadow"]) ? $Format["NoShadow"] : FALSE;
976 976
 
977 977
      $Shadow = $this->Shadow;
978
-     if ( $NoShadow ) { $this->Shadow = FALSE; }
978
+     if ($NoShadow) { $this->Shadow = FALSE; }
979 979
 
980
-     if ( $BoxSurrounding != "" ) { $BoxBorderR = $BoxR - $BoxSurrounding; $BoxBorderG = $BoxG - $BoxSurrounding; $BoxBorderB = $BoxB - $BoxSurrounding; $BoxBorderAlpha = $BoxAlpha; }
980
+     if ($BoxSurrounding != "") { $BoxBorderR = $BoxR - $BoxSurrounding; $BoxBorderG = $BoxG - $BoxSurrounding; $BoxBorderB = $BoxB - $BoxSurrounding; $BoxBorderAlpha = $BoxAlpha; }
981 981
 
982
-     if ( $ShowOrigine )
982
+     if ($ShowOrigine)
983 983
       {
984
-       $MyMarkerSettings = array("R"=>255,"G"=>0,"B"=>0,"BorderR"=>255,"BorderB"=>255,"BorderG"=>255,"Size"=>4);
985
-       $this->drawRectangleMarker($X,$Y,$MyMarkerSettings);
984
+       $MyMarkerSettings = array("R"=>255, "G"=>0, "B"=>0, "BorderR"=>255, "BorderB"=>255, "BorderG"=>255, "Size"=>4);
985
+       $this->drawRectangleMarker($X, $Y, $MyMarkerSettings);
986 986
       }
987 987
 
988
-     $TxtPos = $this->getTextBox($X,$Y,$FontName,$FontSize,$Angle,$Text);
988
+     $TxtPos = $this->getTextBox($X, $Y, $FontName, $FontSize, $Angle, $Text);
989 989
 
990
-     if ( $DrawBox && ($Angle == 0 || $Angle == 90 || $Angle == 180 || $Angle == 270))
990
+     if ($DrawBox && ($Angle == 0 || $Angle == 90 || $Angle == 180 || $Angle == 270))
991 991
       {
992
-       $T[0]["X"]=0;$T[0]["Y"]=0;$T[1]["X"]=0;$T[1]["Y"]=0;$T[2]["X"]=0;$T[2]["Y"]=0;$T[3]["X"]=0;$T[3]["Y"]=0;
993
-       if ( $Angle == 0 ) { $T[0]["X"]=-$TOffset;$T[0]["Y"]=$TOffset;$T[1]["X"]=$TOffset;$T[1]["Y"]=$TOffset;$T[2]["X"]=$TOffset;$T[2]["Y"]=-$TOffset;$T[3]["X"]=-$TOffset;$T[3]["Y"]=-$TOffset; }
992
+       $T[0]["X"] = 0; $T[0]["Y"] = 0; $T[1]["X"] = 0; $T[1]["Y"] = 0; $T[2]["X"] = 0; $T[2]["Y"] = 0; $T[3]["X"] = 0; $T[3]["Y"] = 0;
993
+       if ($Angle == 0) { $T[0]["X"] = -$TOffset; $T[0]["Y"] = $TOffset; $T[1]["X"] = $TOffset; $T[1]["Y"] = $TOffset; $T[2]["X"] = $TOffset; $T[2]["Y"] = -$TOffset; $T[3]["X"] = -$TOffset; $T[3]["Y"] = -$TOffset; }
994 994
 
995
-       $X1 = min($TxtPos[0]["X"],$TxtPos[1]["X"],$TxtPos[2]["X"],$TxtPos[3]["X"]) - $BorderOffset + 3;
996
-       $Y1 = min($TxtPos[0]["Y"],$TxtPos[1]["Y"],$TxtPos[2]["Y"],$TxtPos[3]["Y"]) - $BorderOffset;
997
-       $X2 = max($TxtPos[0]["X"],$TxtPos[1]["X"],$TxtPos[2]["X"],$TxtPos[3]["X"]) + $BorderOffset + 3;
998
-       $Y2 = max($TxtPos[0]["Y"],$TxtPos[1]["Y"],$TxtPos[2]["Y"],$TxtPos[3]["Y"]) + $BorderOffset - 3;
995
+       $X1 = min($TxtPos[0]["X"], $TxtPos[1]["X"], $TxtPos[2]["X"], $TxtPos[3]["X"]) - $BorderOffset + 3;
996
+       $Y1 = min($TxtPos[0]["Y"], $TxtPos[1]["Y"], $TxtPos[2]["Y"], $TxtPos[3]["Y"]) - $BorderOffset;
997
+       $X2 = max($TxtPos[0]["X"], $TxtPos[1]["X"], $TxtPos[2]["X"], $TxtPos[3]["X"]) + $BorderOffset + 3;
998
+       $Y2 = max($TxtPos[0]["Y"], $TxtPos[1]["Y"], $TxtPos[2]["Y"], $TxtPos[3]["Y"]) + $BorderOffset - 3;
999 999
 
1000 1000
        $X1 = $X1 - $TxtPos[$Align]["X"] + $X + $T[0]["X"];
1001 1001
        $Y1 = $Y1 - $TxtPos[$Align]["Y"] + $Y + $T[0]["Y"];
1002 1002
        $X2 = $X2 - $TxtPos[$Align]["X"] + $X + $T[0]["X"];
1003 1003
        $Y2 = $Y2 - $TxtPos[$Align]["Y"] + $Y + $T[0]["Y"];
1004 1004
 
1005
-       $Settings = array("R"=>$BoxR,"G"=>$BoxG,"B"=>$BoxB,"Alpha"=>$BoxAlpha,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"BorderAlpha"=>$BoxBorderAlpha);
1005
+       $Settings = array("R"=>$BoxR, "G"=>$BoxG, "B"=>$BoxB, "Alpha"=>$BoxAlpha, "BorderR"=>$BoxBorderR, "BorderG"=>$BoxBorderG, "BorderB"=>$BoxBorderB, "BorderAlpha"=>$BoxBorderAlpha);
1006 1006
 
1007
-       if ( $BoxRounded )
1008
-        { $this->drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$RoundedRadius,$Settings); }
1007
+       if ($BoxRounded)
1008
+        { $this->drawRoundedFilledRectangle($X1, $Y1, $X2, $Y2, $RoundedRadius, $Settings); }
1009 1009
        else
1010
-        { $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Settings); }
1010
+        { $this->drawFilledRectangle($X1, $Y1, $X2, $Y2, $Settings); }
1011 1011
       }
1012 1012
 
1013 1013
      $X = $X - $TxtPos[$Align]["X"] + $X;
1014 1014
      $Y = $Y - $TxtPos[$Align]["Y"] + $Y;
1015 1015
 
1016
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1016
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
1017 1017
       {
1018
-       $C_ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
1019
-       imagettftext($this->Picture,$FontSize,$Angle,$X+$this->ShadowX,$Y+$this->ShadowY,$C_ShadowColor,$FontName,$Text);
1018
+       $C_ShadowColor = $this->allocateColor($this->Picture, $this->ShadowR, $this->ShadowG, $this->ShadowB, $this->Shadowa);
1019
+       imagettftext($this->Picture, $FontSize, $Angle, $X + $this->ShadowX, $Y + $this->ShadowY, $C_ShadowColor, $FontName, $Text);
1020 1020
       }
1021 1021
 
1022
-     $C_TextColor = $this->AllocateColor($this->Picture,$R,$G,$B,$Alpha);
1023
-     imagettftext($this->Picture,$FontSize,$Angle,$X,$Y,$C_TextColor,$FontName,$Text);
1022
+     $C_TextColor = $this->AllocateColor($this->Picture, $R, $G, $B, $Alpha);
1023
+     imagettftext($this->Picture, $FontSize, $Angle, $X, $Y, $C_TextColor, $FontName, $Text);
1024 1024
 
1025 1025
      $this->Shadow = $Shadow;
1026 1026
 
@@ -1028,7 +1028,7 @@  discard block
 block discarded – undo
1028 1028
     }
1029 1029
 
1030 1030
    /* Draw a gradient within a defined area */
1031
-   function drawGradientArea($X1,$Y1,$X2,$Y2,$Direction,$Format="")
1031
+   function drawGradientArea($X1, $Y1, $X2, $Y2, $Direction, $Format = "")
1032 1032
     {
1033 1033
      $StartR	= isset($Format["StartR"]) ? $Format["StartR"] : 90;
1034 1034
      $StartG	= isset($Format["StartG"]) ? $Format["StartG"] : 90;
@@ -1036,71 +1036,71 @@  discard block
 block discarded – undo
1036 1036
      $EndR	= isset($Format["EndR"]) ? $Format["EndR"] : 0;
1037 1037
      $EndG	= isset($Format["EndG"]) ? $Format["EndG"] : 0;
1038 1038
      $EndB	= isset($Format["EndB"]) ? $Format["EndB"] : 0;
1039
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1039
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1040 1040
      $Levels	= isset($Format["Levels"]) ? $Format["Levels"] : NULL;
1041 1041
 
1042 1042
      $Shadow = $this->Shadow;
1043 1043
      $this->Shadow = FALSE;
1044 1044
 
1045
-     if ( $StartR == $EndR && $StartG == $EndG && $StartB == $EndB )
1045
+     if ($StartR == $EndR && $StartG == $EndG && $StartB == $EndB)
1046 1046
       {
1047
-       $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,array("R"=>$StartR,"G"=>$StartG,"B"=>$StartB,"Alpha"=>$Alpha));
1047
+       $this->drawFilledRectangle($X1, $Y1, $X2, $Y2, array("R"=>$StartR, "G"=>$StartG, "B"=>$StartB, "Alpha"=>$Alpha));
1048 1048
        return(0);
1049 1049
       }
1050 1050
 
1051
-     if ( $Levels != NULL )
1052
-      { $EndR=$StartR+$Levels; $EndG=$StartG+$Levels; $EndB=$StartB+$Levels; }
1051
+     if ($Levels != NULL)
1052
+      { $EndR = $StartR + $Levels; $EndG = $StartG + $Levels; $EndB = $StartB + $Levels; }
1053 1053
 
1054 1054
      if ($X1 > $X2) { list($X1, $X2) = array($X2, $X1); }
1055 1055
      if ($Y1 > $Y2) { list($Y1, $Y2) = array($Y2, $Y1); }
1056 1056
 
1057
-     if ( $Direction == DIRECTION_VERTICAL )   { $Width = abs($Y2-$Y1); }
1058
-     if ( $Direction == DIRECTION_HORIZONTAL ) { $Width = abs($X2-$X1); }
1057
+     if ($Direction == DIRECTION_VERTICAL) { $Width = abs($Y2 - $Y1); }
1058
+     if ($Direction == DIRECTION_HORIZONTAL) { $Width = abs($X2 - $X1); }
1059 1059
 
1060
-     $Step     = max(abs($EndR-$StartR),abs($EndG-$StartG),abs($EndB-$StartB));
1060
+     $Step     = max(abs($EndR - $StartR), abs($EndG - $StartG), abs($EndB - $StartB));
1061 1061
      $StepSize = $Width/$Step;
1062
-     $RStep    = ($EndR-$StartR)/$Step;
1063
-     $GStep    = ($EndG-$StartG)/$Step;
1064
-     $BStep    = ($EndB-$StartB)/$Step;
1062
+     $RStep    = ($EndR - $StartR)/$Step;
1063
+     $GStep    = ($EndG - $StartG)/$Step;
1064
+     $BStep    = ($EndB - $StartB)/$Step;
1065 1065
 
1066
-     $R=$StartR;$G=$StartG;$B=$StartB;
1067
-     switch($Direction)
1066
+     $R = $StartR; $G = $StartG; $B = $StartB;
1067
+     switch ($Direction)
1068 1068
       {
1069 1069
        case DIRECTION_VERTICAL:
1070
-        $StartY = $Y1; $EndY = floor($Y2)+1; $LastY2 = $StartY;
1071
-        for($i=0;$i<=$Step;$i++)
1070
+        $StartY = $Y1; $EndY = floor($Y2) + 1; $LastY2 = $StartY;
1071
+        for ($i = 0; $i <= $Step; $i++)
1072 1072
          {
1073
-          $Y2 = floor($StartY + ($i * $StepSize));
1073
+          $Y2 = floor($StartY + ($i*$StepSize));
1074 1074
 
1075 1075
           if ($Y2 > $EndY) { $Y2 = $EndY; }
1076 1076
           if (($Y1 != $Y2 && $Y1 < $Y2) || $Y2 == $EndY)
1077 1077
            {
1078
-            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1079
-            $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1080
-            $LastY2 = max($LastY2,$Y2);
1081
-            $Y1 = $Y2+1;
1078
+            $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
1079
+            $this->drawFilledRectangle($X1, $Y1, $X2, $Y2, $Color);
1080
+            $LastY2 = max($LastY2, $Y2);
1081
+            $Y1 = $Y2 + 1;
1082 1082
            }
1083 1083
           $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep;
1084 1084
          }
1085
-        if ( $LastY2 < $EndY && isset($Color)) { for ($i=$LastY2+1;$i<=$EndY;$i++) { $this->drawLine($X1,$i,$X2,$i,$Color); } }
1085
+        if ($LastY2 < $EndY && isset($Color)) { for ($i = $LastY2 + 1; $i <= $EndY; $i++) { $this->drawLine($X1, $i, $X2, $i, $Color); } }
1086 1086
         break;
1087 1087
 
1088 1088
        case DIRECTION_HORIZONTAL:
1089 1089
         $StartX = $X1; $EndX = $X2;
1090
-        for($i=0;$i<=$Step;$i++)
1090
+        for ($i = 0; $i <= $Step; $i++)
1091 1091
          {
1092
-          $X2 = floor($StartX + ($i * $StepSize));
1092
+          $X2 = floor($StartX + ($i*$StepSize));
1093 1093
 
1094 1094
           if ($X2 > $EndX) { $X2 = $EndX; }
1095 1095
           if (($X1 != $X2 && $X1 < $X2) || $X2 == $EndX)
1096 1096
            {
1097
-            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
1098
-            $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Color);
1099
-            $X1 = $X2+1;
1097
+            $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
1098
+            $this->drawFilledRectangle($X1, $Y1, $X2, $Y2, $Color);
1099
+            $X1 = $X2 + 1;
1100 1100
            }
1101 1101
           $R = $R + $RStep; $G = $G + $GStep; $B = $B + $BStep; 
1102 1102
          }
1103
-        if ( $X2 < $EndX && isset($Color)) { $this->drawFilledRectangle($X2,$Y1,$EndX,$Y2,$Color); }
1103
+        if ($X2 < $EndX && isset($Color)) { $this->drawFilledRectangle($X2, $Y1, $EndX, $Y2, $Color); }
1104 1104
         break;
1105 1105
       }
1106 1106
 
@@ -1109,30 +1109,30 @@  discard block
 block discarded – undo
1109 1109
     }
1110 1110
 
1111 1111
    /* Draw an aliased pixel */
1112
-   function drawAntialiasPixel($X,$Y,$Format="")
1112
+   function drawAntialiasPixel($X, $Y, $Format = "")
1113 1113
     {
1114 1114
      $R     = isset($Format["R"]) ? $Format["R"] : 0;
1115 1115
      $G     = isset($Format["G"]) ? $Format["G"] : 0;
1116 1116
      $B     = isset($Format["B"]) ? $Format["B"] : 0;
1117 1117
      $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1118 1118
 
1119
-     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1119
+     if ($X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize)
1120 1120
       return(-1);
1121 1121
 
1122
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1123
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1124
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1122
+     if ($R < 0) { $R = 0; } if ($R > 255) { $R = 255; }
1123
+     if ($G < 0) { $G = 0; } if ($G > 255) { $G = 255; }
1124
+     if ($B < 0) { $B = 0; } if ($B > 255) { $B = 255; }
1125 1125
 
1126
-     if ( !$this->Antialias )
1126
+     if (!$this->Antialias)
1127 1127
       {
1128
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1128
+       if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
1129 1129
         {
1130
-         $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$this->Shadowa);
1131
-         imagesetpixel($this->Picture,$X+$this->ShadowX,$Y+$this->ShadowY,$ShadowColor);
1130
+         $ShadowColor = $this->allocateColor($this->Picture, $this->ShadowR, $this->ShadowG, $this->ShadowB, $this->Shadowa);
1131
+         imagesetpixel($this->Picture, $X + $this->ShadowX, $Y + $this->ShadowY, $ShadowColor);
1132 1132
         }
1133 1133
 
1134
-       $PlotColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
1135
-       imagesetpixel($this->Picture,$X,$Y,$PlotColor);
1134
+       $PlotColor = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
1135
+       imagesetpixel($this->Picture, $X, $Y, $PlotColor);
1136 1136
 
1137 1137
        return(0);
1138 1138
       }
@@ -1141,80 +1141,80 @@  discard block
 block discarded – undo
1141 1141
      $Xi   = floor($X);
1142 1142
      $Yi   = floor($Y);
1143 1143
 
1144
-     if ( $Xi == $X && $Yi == $Y)
1144
+     if ($Xi == $X && $Yi == $Y)
1145 1145
       {
1146
-       if ( $Alpha == 100 )
1147
-        $this->drawAlphaPixel($X,$Y,100,$R,$G,$B);
1146
+       if ($Alpha == 100)
1147
+        $this->drawAlphaPixel($X, $Y, 100, $R, $G, $B);
1148 1148
        else
1149
-        $this->drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B);
1149
+        $this->drawAlphaPixel($X, $Y, $Alpha, $R, $G, $B);
1150 1150
       }
1151 1151
      else
1152 1152
       {
1153
-       $Alpha1 = (((1 - ($X - floor($X))) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1154
-       if ( $Alpha1 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi,$Alpha1,$R,$G,$B); }
1153
+       $Alpha1 = (((1 - ($X - floor($X)))*(1 - ($Y - floor($Y)))*100)/100)*$Alpha;
1154
+       if ($Alpha1 > $this->AntialiasQuality) { $this->drawAlphaPixel($Xi, $Yi, $Alpha1, $R, $G, $B); }
1155 1155
 
1156
-       $Alpha2 = ((($X - floor($X)) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1157
-       if ( $Alpha2 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi+1,$Yi,$Alpha2,$R,$G,$B); }
1156
+       $Alpha2 = ((($X - floor($X))*(1 - ($Y - floor($Y)))*100)/100)*$Alpha;
1157
+       if ($Alpha2 > $this->AntialiasQuality) { $this->drawAlphaPixel($Xi + 1, $Yi, $Alpha2, $R, $G, $B); }
1158 1158
 
1159
-       $Alpha3 = (((1 - ($X - floor($X))) * ($Y - floor($Y)) * 100) / 100) * $Alpha;
1160
-       if ( $Alpha3 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi+1,$Alpha3,$R,$G,$B); }
1159
+       $Alpha3 = (((1 - ($X - floor($X)))*($Y - floor($Y))*100)/100)*$Alpha;
1160
+       if ($Alpha3 > $this->AntialiasQuality) { $this->drawAlphaPixel($Xi, $Yi + 1, $Alpha3, $R, $G, $B); }
1161 1161
 
1162
-       $Alpha4 = ((($X - floor($X)) * ($Y - floor($Y)) * 100) / 100) * $Alpha;
1163
-       if ( $Alpha4 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi+1,$Yi+1,$Alpha4,$R,$G,$B); }
1162
+       $Alpha4 = ((($X - floor($X))*($Y - floor($Y))*100)/100)*$Alpha;
1163
+       if ($Alpha4 > $this->AntialiasQuality) { $this->drawAlphaPixel($Xi + 1, $Yi + 1, $Alpha4, $R, $G, $B); }
1164 1164
       }
1165 1165
     }
1166 1166
 
1167 1167
    /* Draw a semi-transparent pixel */
1168
-   function drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B)
1168
+   function drawAlphaPixel($X, $Y, $Alpha, $R, $G, $B)
1169 1169
     {
1170
-     if ( isset($this->Mask[$X])) { if ( isset($this->Mask[$X][$Y]) ) { return(0); } }
1170
+     if (isset($this->Mask[$X])) { if (isset($this->Mask[$X][$Y])) { return(0); } }
1171 1171
 
1172
-     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1172
+     if ($X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize)
1173 1173
       return(-1);
1174 1174
 
1175
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1176
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1177
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1175
+     if ($R < 0) { $R = 0; } if ($R > 255) { $R = 255; }
1176
+     if ($G < 0) { $G = 0; } if ($G > 255) { $G = 255; }
1177
+     if ($B < 0) { $B = 0; } if ($B > 255) { $B = 255; }
1178 1178
 
1179
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1179
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
1180 1180
       {
1181
-       $AlphaFactor = floor(($Alpha / 100) * $this->Shadowa);
1182
-       $ShadowColor = $this->allocateColor($this->Picture,$this->ShadowR,$this->ShadowG,$this->ShadowB,$AlphaFactor);
1183
-       imagesetpixel($this->Picture,$X+$this->ShadowX,$Y+$this->ShadowY,$ShadowColor);
1181
+       $AlphaFactor = floor(($Alpha/100)*$this->Shadowa);
1182
+       $ShadowColor = $this->allocateColor($this->Picture, $this->ShadowR, $this->ShadowG, $this->ShadowB, $AlphaFactor);
1183
+       imagesetpixel($this->Picture, $X + $this->ShadowX, $Y + $this->ShadowY, $ShadowColor);
1184 1184
       }
1185 1185
 
1186
-     $C_Aliased = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
1187
-     imagesetpixel($this->Picture,$X,$Y,$C_Aliased);
1186
+     $C_Aliased = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
1187
+     imagesetpixel($this->Picture, $X, $Y, $C_Aliased);
1188 1188
     }
1189 1189
 
1190 1190
    /* Convert apha to base 10 */
1191 1191
    function convertAlpha($AlphaValue)
1192
-    { return((127/100)*(100-$AlphaValue)); }
1192
+    { return((127/100)*(100 - $AlphaValue)); }
1193 1193
 
1194 1194
    /* Allocate a color with transparency */
1195
-   function allocateColor($Picture,$R,$G,$B,$Alpha=100)
1195
+   function allocateColor($Picture, $R, $G, $B, $Alpha = 100)
1196 1196
     {
1197
-     if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1198
-     if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
1199
-     if ( $B < 0 ) { $B = 0; } if ( $B > 255 ) { $B = 255; }
1200
-     if ( $Alpha < 0 )  { $Alpha = 0; }
1201
-     if ( $Alpha > 100) { $Alpha = 100; }
1197
+     if ($R < 0) { $R = 0; } if ($R > 255) { $R = 255; }
1198
+     if ($G < 0) { $G = 0; } if ($G > 255) { $G = 255; }
1199
+     if ($B < 0) { $B = 0; } if ($B > 255) { $B = 255; }
1200
+     if ($Alpha < 0) { $Alpha = 0; }
1201
+     if ($Alpha > 100) { $Alpha = 100; }
1202 1202
 
1203 1203
      $Alpha = $this->convertAlpha($Alpha);
1204
-     return(imagecolorallocatealpha($Picture,$R,$G,$B,$Alpha));
1204
+     return(imagecolorallocatealpha($Picture, $R, $G, $B, $Alpha));
1205 1205
     }
1206 1206
 
1207 1207
    /* Load a PNG file and draw it over the chart */
1208
-   function drawFromPNG($X,$Y,$FileName)
1209
-    { $this->drawFromPicture(1,$FileName,$X,$Y); }
1208
+   function drawFromPNG($X, $Y, $FileName)
1209
+    { $this->drawFromPicture(1, $FileName, $X, $Y); }
1210 1210
 
1211 1211
    /* Load a GIF file and draw it over the chart */
1212
-   function drawFromGIF($X,$Y,$FileName)
1213
-    { $this->drawFromPicture(2,$FileName,$X,$Y); }
1212
+   function drawFromGIF($X, $Y, $FileName)
1213
+    { $this->drawFromPicture(2, $FileName, $X, $Y); }
1214 1214
 
1215 1215
    /* Load a JPEG file and draw it over the chart */
1216
-   function drawFromJPG($X,$Y,$FileName)
1217
-    { $this->drawFromPicture(3,$FileName,$X,$Y); }
1216
+   function drawFromJPG($X, $Y, $FileName)
1217
+    { $this->drawFromPicture(3, $FileName, $X, $Y); }
1218 1218
 
1219 1219
    function getPicInfo($FileName)
1220 1220
     {
@@ -1223,49 +1223,49 @@  discard block
 block discarded – undo
1223 1223
      $Height = $Infos[1];
1224 1224
      $Type   = $Infos["mime"];
1225 1225
 
1226
-     if ( $Type == "image/png") { $Type = 1; }
1227
-     if ( $Type == "image/gif") { $Type = 2; }
1228
-     if ( $Type == "image/jpeg ") { $Type = 3; }
1226
+     if ($Type == "image/png") { $Type = 1; }
1227
+     if ($Type == "image/gif") { $Type = 2; }
1228
+     if ($Type == "image/jpeg ") { $Type = 3; }
1229 1229
 
1230
-     return(array($Width,$Height,$Type));
1230
+     return(array($Width, $Height, $Type));
1231 1231
     }
1232 1232
 
1233 1233
    /* Generic loader function for external pictures */
1234
-   function drawFromPicture($PicType,$FileName,$X,$Y)
1234
+   function drawFromPicture($PicType, $FileName, $X, $Y)
1235 1235
     {
1236
-     if ( file_exists($FileName))
1236
+     if (file_exists($FileName))
1237 1237
       {
1238
-       list($Width,$Height) = $this->getPicInfo($FileName);
1238
+       list($Width, $Height) = $this->getPicInfo($FileName);
1239 1239
 
1240
-       if ( $PicType == 1 )
1240
+       if ($PicType == 1)
1241 1241
         { $Raster = imagecreatefrompng($FileName); }
1242
-       elseif ( $PicType == 2 )
1242
+       elseif ($PicType == 2)
1243 1243
         { $Raster = imagecreatefromgif($FileName); }
1244
-       elseif ( $PicType == 3 )
1244
+       elseif ($PicType == 3)
1245 1245
         { $Raster = imagecreatefromjpeg($FileName); }
1246 1246
        else
1247 1247
         { return(0); }
1248 1248
 
1249 1249
 
1250 1250
        $RestoreShadow = $this->Shadow;
1251
-       if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1251
+       if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
1252 1252
         {
1253 1253
          $this->Shadow = FALSE;
1254
-         if ( $PicType == 3 )
1255
-          $this->drawFilledRectangle($X+$this->ShadowX,$Y+$this->ShadowY,$X+$Width+$this->ShadowX,$Y+$Height+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
1254
+         if ($PicType == 3)
1255
+          $this->drawFilledRectangle($X + $this->ShadowX, $Y + $this->ShadowY, $X + $Width + $this->ShadowX, $Y + $Height + $this->ShadowY, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa));
1256 1256
          else
1257 1257
           {
1258 1258
            $TranparentID = imagecolortransparent($Raster);
1259
-           for ($Xc=0;$Xc<=$Width-1;$Xc++)
1259
+           for ($Xc = 0; $Xc <= $Width - 1; $Xc++)
1260 1260
             {
1261
-             for ($Yc=0;$Yc<=$Height-1;$Yc++)
1261
+             for ($Yc = 0; $Yc <= $Height - 1; $Yc++)
1262 1262
               {
1263
-               $RGBa   = imagecolorat($Raster,$Xc,$Yc);
1264
-               $Values = imagecolorsforindex($Raster,$RGBa);
1265
-               if ( $Values["alpha"] < 120 )
1263
+               $RGBa   = imagecolorat($Raster, $Xc, $Yc);
1264
+               $Values = imagecolorsforindex($Raster, $RGBa);
1265
+               if ($Values["alpha"] < 120)
1266 1266
                 {
1267
-                 $AlphaFactor = floor(($this->Shadowa / 100) * ((100 / 127) * (127-$Values["alpha"])));
1268
-                 $this->drawAlphaPixel($X+$Xc+$this->ShadowX,$Y+$Yc+$this->ShadowY,$AlphaFactor,$this->ShadowR,$this->ShadowG,$this->ShadowB);
1267
+                 $AlphaFactor = floor(($this->Shadowa/100)*((100/127)*(127 - $Values["alpha"])));
1268
+                 $this->drawAlphaPixel($X + $Xc + $this->ShadowX, $Y + $Yc + $this->ShadowY, $AlphaFactor, $this->ShadowR, $this->ShadowG, $this->ShadowB);
1269 1269
                 }
1270 1270
               }
1271 1271
             }
@@ -1273,13 +1273,13 @@  discard block
 block discarded – undo
1273 1273
         }
1274 1274
        $this->Shadow = $RestoreShadow;
1275 1275
 
1276
-       imagecopy($this->Picture,$Raster,$X,$Y,0,0,$Width,$Height);
1276
+       imagecopy($this->Picture, $Raster, $X, $Y, 0, 0, $Width, $Height);
1277 1277
        imagedestroy($Raster);
1278 1278
       }
1279 1279
     }
1280 1280
 
1281 1281
    /* Draw an arrow */
1282
-   function drawArrow($X1,$Y1,$X2,$Y2,$Format="")
1282
+   function drawArrow($X1, $Y1, $X2, $Y2, $Format = "")
1283 1283
     {
1284 1284
      $FillR	= isset($Format["FillR"]) ? $Format["FillR"] : 0;
1285 1285
      $FillG	= isset($Format["FillG"]) ? $Format["FillG"] : 0;
@@ -1288,79 +1288,79 @@  discard block
 block discarded – undo
1288 1288
      $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : $FillG;
1289 1289
      $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : $FillB;
1290 1290
      $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1291
-     $Size	= isset($Format["Size"]) ? $Format["Size"] : 10;
1291
+     $Size = isset($Format["Size"]) ? $Format["Size"] : 10;
1292 1292
      $Ratio	= isset($Format["Ratio"]) ? $Format["Ratio"] : .5;
1293
-     $TwoHeads	= isset($Format["TwoHeads"]) ? $Format["TwoHeads"] : FALSE;
1293
+     $TwoHeads = isset($Format["TwoHeads"]) ? $Format["TwoHeads"] : FALSE;
1294 1294
      $Ticks	= isset($Format["Ticks"]) ? $Format["Ticks"] : FALSE;
1295 1295
 
1296 1296
      /* Calculate the line angle */
1297
-     $Angle = $this->getAngle($X1,$Y1,$X2,$Y2);
1297
+     $Angle = $this->getAngle($X1, $Y1, $X2, $Y2);
1298 1298
 
1299 1299
      /* Override Shadow support, this will be managed internally */
1300 1300
      $RestoreShadow = $this->Shadow;
1301
-     if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1301
+     if ($this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0)
1302 1302
       {
1303 1303
        $this->Shadow = FALSE;
1304
-       $this->drawArrow($X1+$this->ShadowX,$Y1+$this->ShadowY,$X2+$this->ShadowX,$Y2+$this->ShadowY,array("FillR"=>$this->ShadowR,"FillG"=>$this->ShadowG,"FillB"=>$this->ShadowB,"Alpha"=>$this->Shadowa,"Size"=>$Size,"Ratio"=>$Ratio,"TwoHeads"=>$TwoHeads,"Ticks"=>$Ticks));
1304
+       $this->drawArrow($X1 + $this->ShadowX, $Y1 + $this->ShadowY, $X2 + $this->ShadowX, $Y2 + $this->ShadowY, array("FillR"=>$this->ShadowR, "FillG"=>$this->ShadowG, "FillB"=>$this->ShadowB, "Alpha"=>$this->Shadowa, "Size"=>$Size, "Ratio"=>$Ratio, "TwoHeads"=>$TwoHeads, "Ticks"=>$Ticks));
1305 1305
       }
1306 1306
 
1307 1307
      /* Draw the 1st Head */
1308
-     $TailX = cos(($Angle-180)*PI/180)*$Size+$X2;
1309
-     $TailY = sin(($Angle-180)*PI/180)*$Size+$Y2;
1308
+     $TailX = cos(($Angle - 180)*PI/180)*$Size + $X2;
1309
+     $TailY = sin(($Angle - 180)*PI/180)*$Size + $Y2;
1310 1310
 
1311
-     $Points	= "";
1311
+     $Points = "";
1312 1312
      $Points[]  = $X2; $Points[]  = $Y2;
1313
-     $Points[]	= cos(($Angle-90)*PI/180)*$Size*$Ratio+$TailX; $Points[] = sin(($Angle-90)*PI/180)*$Size*$Ratio+$TailY;
1314
-     $Points[]	= cos(($Angle-270)*PI/180)*$Size*$Ratio+$TailX; $Points[] = sin(($Angle-270)*PI/180)*$Size*$Ratio+$TailY;
1313
+     $Points[]	= cos(($Angle - 90)*PI/180)*$Size*$Ratio + $TailX; $Points[] = sin(($Angle - 90)*PI/180)*$Size*$Ratio + $TailY;
1314
+     $Points[]	= cos(($Angle - 270)*PI/180)*$Size*$Ratio + $TailX; $Points[] = sin(($Angle - 270)*PI/180)*$Size*$Ratio + $TailY;
1315 1315
      $Points[]  = $X2; $Points[]  = $Y2;
1316 1316
 
1317 1317
      /* Visual correction */
1318
-     if ($Angle == 180 || $Angle == 360 ) { $Points[4] = $Points[2]; }
1319
-     if ($Angle == 90 || $Angle == 270 ) { $Points[5] = $Points[3]; }
1318
+     if ($Angle == 180 || $Angle == 360) { $Points[4] = $Points[2]; }
1319
+     if ($Angle == 90 || $Angle == 270) { $Points[5] = $Points[3]; }
1320 1320
 
1321
-     $ArrowColor = $this->allocateColor($this->Picture,$FillR,$FillG,$FillB,$Alpha);
1322
-     ImageFilledPolygon($this->Picture,$Points,4,$ArrowColor);
1321
+     $ArrowColor = $this->allocateColor($this->Picture, $FillR, $FillG, $FillB, $Alpha);
1322
+     ImageFilledPolygon($this->Picture, $Points, 4, $ArrowColor);
1323 1323
 
1324
-     $this->drawLine($Points[0],$Points[1],$Points[2],$Points[3],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1325
-     $this->drawLine($Points[2],$Points[3],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1326
-     $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1324
+     $this->drawLine($Points[0], $Points[1], $Points[2], $Points[3], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1325
+     $this->drawLine($Points[2], $Points[3], $Points[4], $Points[5], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1326
+     $this->drawLine($Points[0], $Points[1], $Points[4], $Points[5], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1327 1327
 
1328 1328
      /* Draw the second head */
1329
-     if ( $TwoHeads )
1329
+     if ($TwoHeads)
1330 1330
       {
1331
-       $Angle = $this->getAngle($X2,$Y2,$X1,$Y1);
1331
+       $Angle = $this->getAngle($X2, $Y2, $X1, $Y1);
1332 1332
 
1333
-       $TailX2 = cos(($Angle-180)*PI/180)*$Size+$X1;
1334
-       $TailY2 = sin(($Angle-180)*PI/180)*$Size+$Y1;
1333
+       $TailX2 = cos(($Angle - 180)*PI/180)*$Size + $X1;
1334
+       $TailY2 = sin(($Angle - 180)*PI/180)*$Size + $Y1;
1335 1335
 
1336 1336
        $Points   = "";
1337 1337
        $Points[] = $X1; $Points[]  = $Y1;
1338
-       $Points[] = cos(($Angle-90)*PI/180)*$Size*$Ratio+$TailX2; $Points[] = sin(($Angle-90)*PI/180)*$Size*$Ratio+$TailY2;
1339
-       $Points[] = cos(($Angle-270)*PI/180)*$Size*$Ratio+$TailX2; $Points[] = sin(($Angle-270)*PI/180)*$Size*$Ratio+$TailY2;
1338
+       $Points[] = cos(($Angle - 90)*PI/180)*$Size*$Ratio + $TailX2; $Points[] = sin(($Angle - 90)*PI/180)*$Size*$Ratio + $TailY2;
1339
+       $Points[] = cos(($Angle - 270)*PI/180)*$Size*$Ratio + $TailX2; $Points[] = sin(($Angle - 270)*PI/180)*$Size*$Ratio + $TailY2;
1340 1340
        $Points[] = $X1; $Points[]  = $Y1;
1341 1341
 
1342 1342
        /* Visual correction */
1343
-       if ($Angle == 180 || $Angle == 360 ) { $Points[4] = $Points[2]; }
1344
-       if ($Angle == 90 || $Angle == 270 ) { $Points[5] = $Points[3]; }
1343
+       if ($Angle == 180 || $Angle == 360) { $Points[4] = $Points[2]; }
1344
+       if ($Angle == 90 || $Angle == 270) { $Points[5] = $Points[3]; }
1345 1345
 
1346
-       $ArrowColor = $this->allocateColor($this->Picture,$FillR,$FillG,$FillB,$Alpha);
1347
-       ImageFilledPolygon($this->Picture,$Points,4,$ArrowColor);
1346
+       $ArrowColor = $this->allocateColor($this->Picture, $FillR, $FillG, $FillB, $Alpha);
1347
+       ImageFilledPolygon($this->Picture, $Points, 4, $ArrowColor);
1348 1348
 
1349
-       $this->drawLine($Points[0],$Points[1],$Points[2],$Points[3],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1350
-       $this->drawLine($Points[2],$Points[3],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1351
-       $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1349
+       $this->drawLine($Points[0], $Points[1], $Points[2], $Points[3], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1350
+       $this->drawLine($Points[2], $Points[3], $Points[4], $Points[5], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1351
+       $this->drawLine($Points[0], $Points[1], $Points[4], $Points[5], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1352 1352
 
1353
-       $this->drawLine($TailX,$TailY,$TailX2,$TailY2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1353
+       $this->drawLine($TailX, $TailY, $TailX2, $TailY2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
1354 1354
       }
1355 1355
      else
1356
-      $this->drawLine($X1,$Y1,$TailX,$TailY,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1356
+      $this->drawLine($X1, $Y1, $TailX, $TailY, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
1357 1357
 
1358 1358
      /* Re-enable shadows */
1359 1359
      $this->Shadow = $RestoreShadow;
1360 1360
     }
1361 1361
 
1362 1362
    /* Draw a label with associated arrow */
1363
-   function drawArrowLabel($X1,$Y1,$Text,$Format="")
1363
+   function drawArrowLabel($X1, $Y1, $Text, $Format = "")
1364 1364
     {
1365 1365
      $FillR    = isset($Format["FillR"]) ? $Format["FillR"] : 0;
1366 1366
      $FillG    = isset($Format["FillG"]) ? $Format["FillG"] : 0;
@@ -1378,49 +1378,49 @@  discard block
 block discarded – undo
1378 1378
      $RoundPos = isset($Format["RoundPos"]) ? $Format["RoundPos"] : FALSE;
1379 1379
      $Ticks    = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
1380 1380
 
1381
-     $Angle = $Angle % 360;
1381
+     $Angle = $Angle%360;
1382 1382
 
1383
-     $X2 = sin(($Angle+180)*PI/180)*$Length+$X1;
1384
-     $Y2 = cos(($Angle+180)*PI/180)*$Length+$Y1;
1383
+     $X2 = sin(($Angle + 180)*PI/180)*$Length + $X1;
1384
+     $Y2 = cos(($Angle + 180)*PI/180)*$Length + $Y1;
1385 1385
 
1386
-     if ( $RoundPos && $Angle > 0 && $Angle < 180 ) { $Y2 = ceil($Y2); }
1387
-     if ( $RoundPos && $Angle > 180 ) { $Y2 = floor($Y2); }
1386
+     if ($RoundPos && $Angle > 0 && $Angle < 180) { $Y2 = ceil($Y2); }
1387
+     if ($RoundPos && $Angle > 180) { $Y2 = floor($Y2); }
1388 1388
 
1389
-     $this->drawArrow($X2,$Y2,$X1,$Y1,$Format);
1389
+     $this->drawArrow($X2, $Y2, $X1, $Y1, $Format);
1390 1390
 
1391
-     $Size	= imagettfbbox($FontSize,0,$FontName,$Text);
1392
-     $TxtWidth	= max(abs($Size[2]-$Size[0]),abs($Size[0]-$Size[6]));
1393
-     $TxtHeight	= max(abs($Size[1]-$Size[7]),abs($Size[3]-$Size[1]));
1391
+     $Size = imagettfbbox($FontSize, 0, $FontName, $Text);
1392
+     $TxtWidth = max(abs($Size[2] - $Size[0]), abs($Size[0] - $Size[6]));
1393
+     $TxtHeight = max(abs($Size[1] - $Size[7]), abs($Size[3] - $Size[1]));
1394 1394
 
1395
-     if ( $Angle > 0 && $Angle < 180 )
1395
+     if ($Angle > 0 && $Angle < 180)
1396 1396
       {
1397
-       $this->drawLine($X2,$Y2,$X2-$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1398
-       if ( $Position == POSITION_TOP )
1399
-        $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_BOTTOMRIGHT));
1397
+       $this->drawLine($X2, $Y2, $X2 - $TxtWidth, $Y2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
1398
+       if ($Position == POSITION_TOP)
1399
+        $this->drawText($X2, $Y2 - 2, $Text, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Align"=>TEXT_ALIGN_BOTTOMRIGHT));
1400 1400
        else
1401
-        $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPRIGHT));
1401
+        $this->drawText($X2, $Y2 + 4, $Text, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Align"=>TEXT_ALIGN_TOPRIGHT));
1402 1402
       }
1403 1403
      else
1404 1404
       {
1405
-       $this->drawLine($X2,$Y2,$X2+$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1406
-       if ( $Position == POSITION_TOP )
1407
-        $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1405
+       $this->drawLine($X2, $Y2, $X2 + $TxtWidth, $Y2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
1406
+       if ($Position == POSITION_TOP)
1407
+        $this->drawText($X2, $Y2 - 2, $Text, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha));
1408 1408
        else
1409
-        $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPLEFT));
1409
+        $this->drawText($X2, $Y2 + 4, $Text, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$Alpha, "Align"=>TEXT_ALIGN_TOPLEFT));
1410 1410
       }
1411 1411
     }
1412 1412
 
1413 1413
    /* Draw a progress bar filled with specified % */
1414
-   function drawProgress($X,$Y,$Percent,$Format="")
1414
+   function drawProgress($X, $Y, $Percent, $Format = "")
1415 1415
     {
1416
-     if ( $Percent > 100 ) { $Percent = 100; }
1417
-     if ( $Percent < 0 ) { $Percent = 0; }
1416
+     if ($Percent > 100) { $Percent = 100; }
1417
+     if ($Percent < 0) { $Percent = 0; }
1418 1418
 
1419
-     $Width	= isset($Format["Width"]) ? $Format["Width"] : 200;
1420
-     $Height	= isset($Format["Height"]) ? $Format["Height"] : 20;
1419
+     $Width = isset($Format["Width"]) ? $Format["Width"] : 200;
1420
+     $Height = isset($Format["Height"]) ? $Format["Height"] : 20;
1421 1421
      $Orientation = isset($Format["Orientation"]) ? $Format["Orientation"] : ORIENTATION_HORIZONTAL;
1422 1422
      $ShowLabel = isset($Format["ShowLabel"]) ? $Format["ShowLabel"] : FALSE;
1423
-     $LabelPos	= isset($Format["LabelPos"]) ? $Format["LabelPos"] : LABEL_POS_INSIDE;
1423
+     $LabelPos = isset($Format["LabelPos"]) ? $Format["LabelPos"] : LABEL_POS_INSIDE;
1424 1424
      $Margin    = isset($Format["Margin"]) ? $Format["Margin"] : 10;
1425 1425
      $R		= isset($Format["R"]) ? $Format["R"] : 130;
1426 1426
      $G		= isset($Format["G"]) ? $Format["G"] : 130;
@@ -1437,299 +1437,299 @@  discard block
 block discarded – undo
1437 1437
      $BoxBackR	= isset($Format["BoxBackR"]) ? $Format["BoxBackR"] : 255;
1438 1438
      $BoxBackG	= isset($Format["BoxBackG"]) ? $Format["BoxBackG"] : 255;
1439 1439
      $BoxBackB	= isset($Format["BoxBackB"]) ? $Format["BoxBackB"] : 255;
1440
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1440
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1441 1441
      $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
1442 1442
      $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : NULL;
1443
-     $NoAngle	= isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
1443
+     $NoAngle = isset($Format["NoAngle"]) ? $Format["NoAngle"] : FALSE;
1444 1444
 
1445
-     if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1445
+     if ($RFade != -1 && $GFade != -1 && $BFade != -1)
1446 1446
       {
1447
-       $RFade = (($RFade-$R)/100)*$Percent+$R;
1448
-       $GFade = (($GFade-$G)/100)*$Percent+$G;
1449
-       $BFade = (($BFade-$B)/100)*$Percent+$B;
1447
+       $RFade = (($RFade - $R)/100)*$Percent + $R;
1448
+       $GFade = (($GFade - $G)/100)*$Percent + $G;
1449
+       $BFade = (($BFade - $B)/100)*$Percent + $B;
1450 1450
       }
1451 1451
 
1452
-     if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1453
-     if ( $BoxSurrounding != NULL ) { $BoxBorderR = $BoxBackR + $Surrounding; $BoxBorderG = $BoxBackG + $Surrounding; $BoxBorderB = $BoxBackB + $Surrounding; }
1452
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1453
+     if ($BoxSurrounding != NULL) { $BoxBorderR = $BoxBackR + $Surrounding; $BoxBorderG = $BoxBackG + $Surrounding; $BoxBorderB = $BoxBackB + $Surrounding; }
1454 1454
 
1455
-     if ( $Orientation == ORIENTATION_VERTICAL )
1455
+     if ($Orientation == ORIENTATION_VERTICAL)
1456 1456
       {
1457
-       $InnerHeight = (($Height-2)/100)*$Percent;
1458
-       $this->drawFilledRectangle($X,$Y,$X+$Width,$Y-$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1457
+       $InnerHeight = (($Height - 2)/100)*$Percent;
1458
+       $this->drawFilledRectangle($X, $Y, $X + $Width, $Y - $Height, array("R"=>$BoxBackR, "G"=>$BoxBackG, "B"=>$BoxBackB, "BorderR"=>$BoxBorderR, "BorderG"=>$BoxBorderG, "BorderB"=>$BoxBorderB, "NoAngle"=>$NoAngle));
1459 1459
 
1460
-       $RestoreShadow = $this->Shadow; $this->Shadow  = FALSE;
1461
-       if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1460
+       $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
1461
+       if ($RFade != -1 && $GFade != -1 && $BFade != -1)
1462 1462
         {
1463
-         $GradientOptions = array("StartR"=>$RFade,"StartG"=>$GFade,"StartB"=>$BFade,"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
1464
-         $this->drawGradientArea($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,DIRECTION_VERTICAL,$GradientOptions);
1463
+         $GradientOptions = array("StartR"=>$RFade, "StartG"=>$GFade, "StartB"=>$BFade, "EndR"=>$R, "EndG"=>$G, "EndB"=>$B);
1464
+         $this->drawGradientArea($X + 1, $Y - 1, $X + $Width - 1, $Y - $InnerHeight, DIRECTION_VERTICAL, $GradientOptions);
1465 1465
 
1466
-         if ( $Surrounding )
1467
-          $this->drawRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1466
+         if ($Surrounding)
1467
+          $this->drawRectangle($X + 1, $Y - 1, $X + $Width - 1, $Y - $InnerHeight, array("R"=>255, "G"=>255, "B"=>255, "Alpha"=>$Surrounding));
1468 1468
         }
1469 1469
        else
1470
-        $this->drawFilledRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1470
+        $this->drawFilledRectangle($X + 1, $Y - 1, $X + $Width - 1, $Y - $InnerHeight, array("R"=>$R, "G"=>$G, "B"=>$B, "BorderR"=>$BorderR, "BorderG"=>$BorderG, "BorderB"=>$BorderB));
1471 1471
 
1472 1472
        $this->Shadow = $RestoreShadow;
1473 1473
 
1474
-       if ( $ShowLabel && $LabelPos == LABEL_POS_BOTTOM )	{ $this->drawText($X+($Width/2),$Y+$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_TOPMIDDLE)); }
1475
-       if ( $ShowLabel && $LabelPos == LABEL_POS_TOP )		{ $this->drawText($X+($Width/2),$Y-$Height-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
1476
-       if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+($Width/2),$Y-$InnerHeight-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT,"Angle"=>90)); }
1477
-       if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y-($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"Angle"=>90)); }
1474
+       if ($ShowLabel && $LabelPos == LABEL_POS_BOTTOM) { $this->drawText($X + ($Width/2), $Y + $Margin, $Percent."%", array("Align"=>TEXT_ALIGN_TOPMIDDLE)); }
1475
+       if ($ShowLabel && $LabelPos == LABEL_POS_TOP) { $this->drawText($X + ($Width/2), $Y - $Height - $Margin, $Percent."%", array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
1476
+       if ($ShowLabel && $LabelPos == LABEL_POS_INSIDE) { $this->drawText($X + ($Width/2), $Y - $InnerHeight - $Margin, $Percent."%", array("Align"=>TEXT_ALIGN_MIDDLELEFT, "Angle"=>90)); }
1477
+       if ($ShowLabel && $LabelPos == LABEL_POS_CENTER) { $this->drawText($X + ($Width/2), $Y - ($Height/2), $Percent."%", array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "Angle"=>90)); }
1478 1478
       }
1479 1479
      else
1480 1480
       {
1481
-       if ( $Percent == 100 )
1482
-        $InnerWidth = $Width-1;
1481
+       if ($Percent == 100)
1482
+        $InnerWidth = $Width - 1;
1483 1483
        else
1484
-        $InnerWidth = (($Width-2)/100)*$Percent;
1484
+        $InnerWidth = (($Width - 2)/100)*$Percent;
1485 1485
 
1486
-       $this->drawFilledRectangle($X,$Y,$X+$Width,$Y+$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1486
+       $this->drawFilledRectangle($X, $Y, $X + $Width, $Y + $Height, array("R"=>$BoxBackR, "G"=>$BoxBackG, "B"=>$BoxBackB, "BorderR"=>$BoxBorderR, "BorderG"=>$BoxBorderG, "BorderB"=>$BoxBorderB, "NoAngle"=>$NoAngle));
1487 1487
 
1488
-       $RestoreShadow = $this->Shadow; $this->Shadow  = FALSE;
1489
-       if ( $RFade != -1 && $GFade != -1 && $BFade != -1 )
1488
+       $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
1489
+       if ($RFade != -1 && $GFade != -1 && $BFade != -1)
1490 1490
         {
1491
-         $GradientOptions = array("StartR"=>$R,"StartG"=>$G,"StartB"=>$B,"EndR"=>$RFade,"EndG"=>$GFade,"EndB"=>$BFade);
1492
-         $this->drawGradientArea($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,DIRECTION_HORIZONTAL,$GradientOptions);
1491
+         $GradientOptions = array("StartR"=>$R, "StartG"=>$G, "StartB"=>$B, "EndR"=>$RFade, "EndG"=>$GFade, "EndB"=>$BFade);
1492
+         $this->drawGradientArea($X + 1, $Y + 1, $X + $InnerWidth, $Y + $Height - 1, DIRECTION_HORIZONTAL, $GradientOptions);
1493 1493
 
1494
-         if ( $Surrounding )
1495
-          $this->drawRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1494
+         if ($Surrounding)
1495
+          $this->drawRectangle($X + 1, $Y + 1, $X + $InnerWidth, $Y + $Height - 1, array("R"=>255, "G"=>255, "B"=>255, "Alpha"=>$Surrounding));
1496 1496
         }
1497 1497
        else
1498
-        $this->drawFilledRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1498
+        $this->drawFilledRectangle($X + 1, $Y + 1, $X + $InnerWidth, $Y + $Height - 1, array("R"=>$R, "G"=>$G, "B"=>$B, "BorderR"=>$BorderR, "BorderG"=>$BorderG, "BorderB"=>$BorderB));
1499 1499
  
1500 1500
        $this->Shadow = $RestoreShadow;
1501 1501
 
1502
-       if ( $ShowLabel && $LabelPos == LABEL_POS_LEFT )		{ $this->drawText($X-$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLERIGHT)); }
1503
-       if ( $ShowLabel && $LabelPos == LABEL_POS_RIGHT )	{ $this->drawText($X+$Width+$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1504
-       if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE)); }
1505
-       if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+$InnerWidth+$Margin,$Y+($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1502
+       if ($ShowLabel && $LabelPos == LABEL_POS_LEFT) { $this->drawText($X - $Margin, $Y + ($Height/2), $Percent."%", array("Align"=>TEXT_ALIGN_MIDDLERIGHT)); }
1503
+       if ($ShowLabel && $LabelPos == LABEL_POS_RIGHT) { $this->drawText($X + $Width + $Margin, $Y + ($Height/2), $Percent."%", array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1504
+       if ($ShowLabel && $LabelPos == LABEL_POS_CENTER) { $this->drawText($X + ($Width/2), $Y + ($Height/2), $Percent."%", array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE)); }
1505
+       if ($ShowLabel && $LabelPos == LABEL_POS_INSIDE) { $this->drawText($X + $InnerWidth + $Margin, $Y + ($Height/2), $Percent."%", array("Align"=>TEXT_ALIGN_MIDDLELEFT)); }
1506 1506
       }
1507 1507
     }
1508 1508
 
1509 1509
    /* Get the legend box size */
1510
-   function getLegendSize($Format="")
1510
+   function getLegendSize($Format = "")
1511 1511
     {
1512 1512
      $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1513 1513
      $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1514
-     $BoxSize		= isset($Format["BoxSize"]) ? $Format["BoxSize"] : 5;
1515
-     $Margin		= isset($Format["Margin"]) ? $Format["Margin"] : 5;
1516
-     $Style		= isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1517
-     $Mode		= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1518
-     $BoxWidth		= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1519
-     $BoxHeight		= isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1520
-     $IconAreaWidth	= isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1521
-     $IconAreaHeight	= isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1522
-     $XSpacing		= isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1514
+     $BoxSize = isset($Format["BoxSize"]) ? $Format["BoxSize"] : 5;
1515
+     $Margin = isset($Format["Margin"]) ? $Format["Margin"] : 5;
1516
+     $Style = isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1517
+     $Mode = isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1518
+     $BoxWidth = isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1519
+     $BoxHeight = isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1520
+     $IconAreaWidth = isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1521
+     $IconAreaHeight = isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1522
+     $XSpacing = isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1523 1523
 
1524 1524
      $Data = $this->DataSet->getData();
1525 1525
 
1526
-     foreach($Data["Series"] as $SerieName => $Serie)
1526
+     foreach ($Data["Series"] as $SerieName => $Serie)
1527 1527
       {
1528
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1528
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1529 1529
         {
1530
-         list($PicWidth,$PicHeight) = $this->getPicInfo($Serie["Picture"]);
1531
-         if ( $IconAreaWidth < $PicWidth ) { $IconAreaWidth = $PicWidth; }
1532
-         if ( $IconAreaHeight < $PicHeight ) { $IconAreaHeight = $PicHeight; }
1530
+         list($PicWidth, $PicHeight) = $this->getPicInfo($Serie["Picture"]);
1531
+         if ($IconAreaWidth < $PicWidth) { $IconAreaWidth = $PicWidth; }
1532
+         if ($IconAreaHeight < $PicHeight) { $IconAreaHeight = $PicHeight; }
1533 1533
         }
1534 1534
       }
1535 1535
 
1536
-     $YStep = max($this->FontSize,$IconAreaHeight) + 5;
1536
+     $YStep = max($this->FontSize, $IconAreaHeight) + 5;
1537 1537
      $XStep = $IconAreaWidth + 5;
1538 1538
      $XStep = $XSpacing;
1539 1539
 
1540
-     $X=100; $Y=100;
1540
+     $X = 100; $Y = 100;
1541 1541
 
1542 1542
      $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
1543
-     foreach($Data["Series"] as $SerieName => $Serie)
1543
+     foreach ($Data["Series"] as $SerieName => $Serie)
1544 1544
       {
1545
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1545
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
1546 1546
         {
1547
-         if ( $Mode == LEGEND_VERTICAL )
1547
+         if ($Mode == LEGEND_VERTICAL)
1548 1548
           {
1549
-           $BoxArray = $this->getTextBox($vX+$IconAreaWidth+4,$vY+$IconAreaHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
1549
+           $BoxArray = $this->getTextBox($vX + $IconAreaWidth + 4, $vY + $IconAreaHeight/2, $FontName, $FontSize, 0, $Serie["Description"]);
1550 1550
 
1551
-           if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1552
-           if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1553
-           if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1551
+           if ($Boundaries["T"] > $BoxArray[2]["Y"] + $IconAreaHeight/2) { $Boundaries["T"] = $BoxArray[2]["Y"] + $IconAreaHeight/2; }
1552
+           if ($Boundaries["R"] < $BoxArray[1]["X"] + 2) { $Boundaries["R"] = $BoxArray[1]["X"] + 2; }
1553
+           if ($Boundaries["B"] < $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2) { $Boundaries["B"] = $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2; }
1554 1554
 
1555
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1556
-           $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1555
+           $Lines = preg_split("/\n/", $Serie["Description"]);
1556
+           $vY = $vY + max($this->FontSize*count($Lines), $IconAreaHeight) + 5;
1557 1557
           }
1558
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1558
+         elseif ($Mode == LEGEND_HORIZONTAL)
1559 1559
           {
1560
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1560
+           $Lines = preg_split("/\n/", $Serie["Description"]);
1561 1561
            $Width = "";
1562
-           foreach($Lines as $Key => $Value)
1562
+           foreach ($Lines as $Key => $Value)
1563 1563
             {
1564
-             $BoxArray = $this->getTextBox($vX+$IconAreaWidth+6,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$FontName,$FontSize,0,$Value);
1564
+             $BoxArray = $this->getTextBox($vX + $IconAreaWidth + 6, $Y + $IconAreaHeight/2 + (($this->FontSize + 3)*$Key), $FontName, $FontSize, 0, $Value);
1565 1565
 
1566
-             if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1567
-             if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1568
-             if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1566
+             if ($Boundaries["T"] > $BoxArray[2]["Y"] + $IconAreaHeight/2) { $Boundaries["T"] = $BoxArray[2]["Y"] + $IconAreaHeight/2; }
1567
+             if ($Boundaries["R"] < $BoxArray[1]["X"] + 2) { $Boundaries["R"] = $BoxArray[1]["X"] + 2; }
1568
+             if ($Boundaries["B"] < $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2) { $Boundaries["B"] = $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2; }
1569 1569
 
1570 1570
              $Width[] = $BoxArray[1]["X"];
1571 1571
             }
1572 1572
 
1573
-           $vX=max($Width)+$XStep;
1573
+           $vX = max($Width) + $XStep;
1574 1574
           }
1575 1575
         }
1576 1576
       }
1577
-     $vY=$vY-$YStep; $vX=$vX-$XStep;
1577
+     $vY = $vY - $YStep; $vX = $vX - $XStep;
1578 1578
 
1579
-     $TopOffset  = $Y - $Boundaries["T"];
1580
-     if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1579
+     $TopOffset = $Y - $Boundaries["T"];
1580
+     if ($Boundaries["B"] - ($vY + $IconAreaHeight) < $TopOffset) { $Boundaries["B"] = $vY + $IconAreaHeight + $TopOffset; }
1581 1581
 
1582
-     $Width  = ($Boundaries["R"]+$Margin) - ($Boundaries["L"]-$Margin);
1583
-     $Height = ($Boundaries["B"]+$Margin) - ($Boundaries["T"]-$Margin);
1582
+     $Width  = ($Boundaries["R"] + $Margin) - ($Boundaries["L"] - $Margin);
1583
+     $Height = ($Boundaries["B"] + $Margin) - ($Boundaries["T"] - $Margin);
1584 1584
 
1585
-     return(array("Width"=>$Width,"Height"=>$Height));
1585
+     return(array("Width"=>$Width, "Height"=>$Height));
1586 1586
     }
1587 1587
 
1588 1588
    /* Draw the legend of the active series */
1589
-   function drawLegend($X,$Y,$Format="")
1589
+   function drawLegend($X, $Y, $Format = "")
1590 1590
     {
1591
-     $Family	= isset($Format["Family"]) ? $Format["Family"] : LEGEND_FAMILY_BOX;
1591
+     $Family = isset($Format["Family"]) ? $Format["Family"] : LEGEND_FAMILY_BOX;
1592 1592
      $FontName	= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
1593 1593
      $FontSize	= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
1594 1594
      $FontR	= isset($Format["FontR"]) ? $Format["FontR"] : $this->FontColorR;
1595 1595
      $FontG	= isset($Format["FontG"]) ? $Format["FontG"] : $this->FontColorG;
1596 1596
      $FontB	= isset($Format["FontB"]) ? $Format["FontB"] : $this->FontColorB;
1597
-     $BoxWidth	= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1598
-     $BoxHeight	= isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1599
-     $IconAreaWidth	= isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1600
-     $IconAreaHeight	= isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1601
-     $XSpacing	= isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1602
-     $Margin	= isset($Format["Margin"]) ? $Format["Margin"] : 5;
1597
+     $BoxWidth = isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 5;
1598
+     $BoxHeight = isset($Format["BoxHeight"]) ? $Format["BoxHeight"] : 5;
1599
+     $IconAreaWidth = isset($Format["IconAreaWidth"]) ? $Format["IconAreaWidth"] : $BoxWidth;
1600
+     $IconAreaHeight = isset($Format["IconAreaHeight"]) ? $Format["IconAreaHeight"] : $BoxHeight;
1601
+     $XSpacing = isset($Format["XSpacing"]) ? $Format["XSpacing"] : 5;
1602
+     $Margin = isset($Format["Margin"]) ? $Format["Margin"] : 5;
1603 1603
      $R		= isset($Format["R"]) ? $Format["R"] : 200;
1604 1604
      $G		= isset($Format["G"]) ? $Format["G"] : 200;
1605 1605
      $B		= isset($Format["B"]) ? $Format["B"] : 200;
1606
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1606
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1607 1607
      $BorderR	= isset($Format["BorderR"]) ? $Format["BorderR"] : 255;
1608 1608
      $BorderG	= isset($Format["BorderG"]) ? $Format["BorderG"] : 255;
1609 1609
      $BorderB	= isset($Format["BorderB"]) ? $Format["BorderB"] : 255;
1610 1610
      $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
1611
-     $Style	= isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1612
-     $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1611
+     $Style = isset($Format["Style"]) ? $Format["Style"] : LEGEND_ROUND;
1612
+     $Mode = isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
1613 1613
 
1614
-     if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1614
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
1615 1615
 
1616 1616
      $Data = $this->DataSet->getData();
1617 1617
 
1618
-     foreach($Data["Series"] as $SerieName => $Serie)
1618
+     foreach ($Data["Series"] as $SerieName => $Serie)
1619 1619
       {
1620
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1620
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && isset($Serie["Picture"]))
1621 1621
         {
1622
-         list($PicWidth,$PicHeight) = $this->getPicInfo($Serie["Picture"]);
1623
-         if ( $IconAreaWidth < $PicWidth ) { $IconAreaWidth = $PicWidth; }
1624
-         if ( $IconAreaHeight < $PicHeight ) { $IconAreaHeight = $PicHeight; }
1622
+         list($PicWidth, $PicHeight) = $this->getPicInfo($Serie["Picture"]);
1623
+         if ($IconAreaWidth < $PicWidth) { $IconAreaWidth = $PicWidth; }
1624
+         if ($IconAreaHeight < $PicHeight) { $IconAreaHeight = $PicHeight; }
1625 1625
         }
1626 1626
       }
1627 1627
 
1628
-     $YStep = max($this->FontSize,$IconAreaHeight) + 5;
1628
+     $YStep = max($this->FontSize, $IconAreaHeight) + 5;
1629 1629
      $XStep = $IconAreaWidth + 5;
1630 1630
      $XStep = $XSpacing;
1631 1631
 
1632 1632
      $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
1633
-     foreach($Data["Series"] as $SerieName => $Serie)
1633
+     foreach ($Data["Series"] as $SerieName => $Serie)
1634 1634
       {
1635
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1635
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
1636 1636
         {
1637
-         if ( $Mode == LEGEND_VERTICAL )
1637
+         if ($Mode == LEGEND_VERTICAL)
1638 1638
           {
1639
-           $BoxArray = $this->getTextBox($vX+$IconAreaWidth+4,$vY+$IconAreaHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
1639
+           $BoxArray = $this->getTextBox($vX + $IconAreaWidth + 4, $vY + $IconAreaHeight/2, $FontName, $FontSize, 0, $Serie["Description"]);
1640 1640
 
1641
-           if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1642
-           if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1643
-           if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1641
+           if ($Boundaries["T"] > $BoxArray[2]["Y"] + $IconAreaHeight/2) { $Boundaries["T"] = $BoxArray[2]["Y"] + $IconAreaHeight/2; }
1642
+           if ($Boundaries["R"] < $BoxArray[1]["X"] + 2) { $Boundaries["R"] = $BoxArray[1]["X"] + 2; }
1643
+           if ($Boundaries["B"] < $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2) { $Boundaries["B"] = $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2; }
1644 1644
 
1645
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1646
-           $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1645
+           $Lines = preg_split("/\n/", $Serie["Description"]);
1646
+           $vY = $vY + max($this->FontSize*count($Lines), $IconAreaHeight) + 5;
1647 1647
           }
1648
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1648
+         elseif ($Mode == LEGEND_HORIZONTAL)
1649 1649
           {
1650
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1650
+           $Lines = preg_split("/\n/", $Serie["Description"]);
1651 1651
            $Width = "";
1652
-           foreach($Lines as $Key => $Value)
1652
+           foreach ($Lines as $Key => $Value)
1653 1653
             {
1654
-             $BoxArray = $this->getTextBox($vX+$IconAreaWidth+6,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$FontName,$FontSize,0,$Value);
1654
+             $BoxArray = $this->getTextBox($vX + $IconAreaWidth + 6, $Y + $IconAreaHeight/2 + (($this->FontSize + 3)*$Key), $FontName, $FontSize, 0, $Value);
1655 1655
 
1656
-             if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$IconAreaHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$IconAreaHeight/2; }
1657
-             if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
1658
-             if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$IconAreaHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$IconAreaHeight/2; }
1656
+             if ($Boundaries["T"] > $BoxArray[2]["Y"] + $IconAreaHeight/2) { $Boundaries["T"] = $BoxArray[2]["Y"] + $IconAreaHeight/2; }
1657
+             if ($Boundaries["R"] < $BoxArray[1]["X"] + 2) { $Boundaries["R"] = $BoxArray[1]["X"] + 2; }
1658
+             if ($Boundaries["B"] < $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2) { $Boundaries["B"] = $BoxArray[1]["Y"] + 2 + $IconAreaHeight/2; }
1659 1659
 
1660 1660
              $Width[] = $BoxArray[1]["X"];
1661 1661
             }
1662 1662
 
1663
-           $vX=max($Width)+$XStep;
1663
+           $vX = max($Width) + $XStep;
1664 1664
           }
1665 1665
         }
1666 1666
       }
1667
-     $vY=$vY-$YStep; $vX=$vX-$XStep;
1667
+     $vY = $vY - $YStep; $vX = $vX - $XStep;
1668 1668
 
1669
-     $TopOffset  = $Y - $Boundaries["T"];
1670
-     if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1669
+     $TopOffset = $Y - $Boundaries["T"];
1670
+     if ($Boundaries["B"] - ($vY + $IconAreaHeight) < $TopOffset) { $Boundaries["B"] = $vY + $IconAreaHeight + $TopOffset; }
1671 1671
 
1672
-     if ( $Style == LEGEND_ROUND )
1673
-      $this->drawRoundedFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1674
-     elseif ( $Style == LEGEND_BOX )
1675
-      $this->drawFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1672
+     if ($Style == LEGEND_ROUND)
1673
+      $this->drawRoundedFilledRectangle($Boundaries["L"] - $Margin, $Boundaries["T"] - $Margin, $Boundaries["R"] + $Margin, $Boundaries["B"] + $Margin, $Margin, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "BorderR"=>$BorderR, "BorderG"=>$BorderG, "BorderB"=>$BorderB));
1674
+     elseif ($Style == LEGEND_BOX)
1675
+      $this->drawFilledRectangle($Boundaries["L"] - $Margin, $Boundaries["T"] - $Margin, $Boundaries["R"] + $Margin, $Boundaries["B"] + $Margin, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "BorderR"=>$BorderR, "BorderG"=>$BorderG, "BorderB"=>$BorderB));
1676 1676
 
1677 1677
      $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
1678
-     foreach($Data["Series"] as $SerieName => $Serie)
1678
+     foreach ($Data["Series"] as $SerieName => $Serie)
1679 1679
       {
1680
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
1680
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
1681 1681
         {
1682 1682
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"];
1683 1683
          $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
1684 1684
 
1685
-         if ( isset($Serie["Picture"]) )
1685
+         if (isset($Serie["Picture"]))
1686 1686
           {
1687 1687
            $Picture = $Serie["Picture"];
1688
-           list($PicWidth,$PicHeight) = $this->getPicInfo($Picture);
1689
-           $PicX = $X+$IconAreaWidth/2; $PicY = $Y+$IconAreaHeight/2; 
1688
+           list($PicWidth, $PicHeight) = $this->getPicInfo($Picture);
1689
+           $PicX = $X + $IconAreaWidth/2; $PicY = $Y + $IconAreaHeight/2; 
1690 1690
 
1691
-           $this->drawFromPNG($PicX-$PicWidth/2,$PicY-$PicHeight/2,$Picture);
1691
+           $this->drawFromPNG($PicX - $PicWidth/2, $PicY - $PicHeight/2, $Picture);
1692 1692
           }
1693 1693
          else
1694 1694
           {
1695
-           if ( $Family == LEGEND_FAMILY_BOX )
1695
+           if ($Family == LEGEND_FAMILY_BOX)
1696 1696
             {
1697
-             if ( $BoxWidth != $IconAreaWidth ) { $XOffset = floor(($IconAreaWidth-$BoxWidth)/2); } else { $XOffset = 0; }
1698
-             if ( $BoxHeight != $IconAreaHeight ) { $YOffset = floor(($IconAreaHeight-$BoxHeight)/2); } else { $YOffset = 0; }
1697
+             if ($BoxWidth != $IconAreaWidth) { $XOffset = floor(($IconAreaWidth - $BoxWidth)/2); } else { $XOffset = 0; }
1698
+             if ($BoxHeight != $IconAreaHeight) { $YOffset = floor(($IconAreaHeight - $BoxHeight)/2); } else { $YOffset = 0; }
1699 1699
 
1700
-             $this->drawFilledRectangle($X+1+$XOffset,$Y+1+$YOffset,$X+$BoxWidth+$XOffset+1,$Y+$BoxHeight+1+$YOffset,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1701
-             $this->drawFilledRectangle($X+$XOffset,$Y+$YOffset,$X+$BoxWidth+$XOffset,$Y+$BoxHeight+$YOffset,array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1700
+             $this->drawFilledRectangle($X + 1 + $XOffset, $Y + 1 + $YOffset, $X + $BoxWidth + $XOffset + 1, $Y + $BoxHeight + 1 + $YOffset, array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>20));
1701
+             $this->drawFilledRectangle($X + $XOffset, $Y + $YOffset, $X + $BoxWidth + $XOffset, $Y + $BoxHeight + $YOffset, array("R"=>$R, "G"=>$G, "B"=>$B, "Surrounding"=>20));
1702 1702
             }
1703
-           elseif ( $Family == LEGEND_FAMILY_CIRCLE )
1703
+           elseif ($Family == LEGEND_FAMILY_CIRCLE)
1704 1704
             {
1705
-             $this->drawFilledCircle($X+1+$IconAreaWidth/2,$Y+1+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1706
-             $this->drawFilledCircle($X+$IconAreaWidth/2,$Y+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1705
+             $this->drawFilledCircle($X + 1 + $IconAreaWidth/2, $Y + 1 + $IconAreaHeight/2, min($IconAreaHeight/2, $IconAreaWidth/2), array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>20));
1706
+             $this->drawFilledCircle($X + $IconAreaWidth/2, $Y + $IconAreaHeight/2, min($IconAreaHeight/2, $IconAreaWidth/2), array("R"=>$R, "G"=>$G, "B"=>$B, "Surrounding"=>20));
1707 1707
             }
1708
-           elseif ( $Family == LEGEND_FAMILY_LINE )
1708
+           elseif ($Family == LEGEND_FAMILY_LINE)
1709 1709
             {
1710
-             $this->drawLine($X+1,$Y+1+$IconAreaHeight/2,$X+1+$IconAreaWidth,$Y+1+$IconAreaHeight/2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20,"Ticks"=>$Ticks,"Weight"=>$Weight));
1711
-             $this->drawLine($X,$Y+$IconAreaHeight/2,$X+$IconAreaWidth,$Y+$IconAreaHeight/2,array("R"=>$R,"G"=>$G,"B"=>$B,"Ticks"=>$Ticks,"Weight"=>$Weight));
1710
+             $this->drawLine($X + 1, $Y + 1 + $IconAreaHeight/2, $X + 1 + $IconAreaWidth, $Y + 1 + $IconAreaHeight/2, array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>20, "Ticks"=>$Ticks, "Weight"=>$Weight));
1711
+             $this->drawLine($X, $Y + $IconAreaHeight/2, $X + $IconAreaWidth, $Y + $IconAreaHeight/2, array("R"=>$R, "G"=>$G, "B"=>$B, "Ticks"=>$Ticks, "Weight"=>$Weight));
1712 1712
             }
1713 1713
           }
1714 1714
 
1715
-         if ( $Mode == LEGEND_VERTICAL )
1715
+         if ($Mode == LEGEND_VERTICAL)
1716 1716
           {
1717
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1718
-           foreach($Lines as $Key => $Value)
1719
-            $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1717
+           $Lines = preg_split("/\n/", $Serie["Description"]);
1718
+           foreach ($Lines as $Key => $Value)
1719
+            $this->drawText($X + $IconAreaWidth + 4, $Y + $IconAreaHeight/2 + (($this->FontSize + 3)*$Key), $Value, array("R"=>$FontR, "G"=>$FontG, "B"=>$FontB, "Align"=>TEXT_ALIGN_MIDDLELEFT, "FontSize"=>$FontSize, "FontName"=>$FontName));
1720 1720
 
1721
-           $Y=$Y+max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1721
+           $Y = $Y + max($this->FontSize*count($Lines), $IconAreaHeight) + 5;
1722 1722
           }
1723
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1723
+         elseif ($Mode == LEGEND_HORIZONTAL)
1724 1724
           {
1725
-           $Lines = preg_split("/\n/",$Serie["Description"]);
1725
+           $Lines = preg_split("/\n/", $Serie["Description"]);
1726 1726
            $Width = "";
1727
-           foreach($Lines as $Key => $Value)
1727
+           foreach ($Lines as $Key => $Value)
1728 1728
             {
1729
-             $BoxArray = $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1729
+             $BoxArray = $this->drawText($X + $IconAreaWidth + 4, $Y + $IconAreaHeight/2 + (($this->FontSize + 3)*$Key), $Value, array("R"=>$FontR, "G"=>$FontG, "B"=>$FontB, "Align"=>TEXT_ALIGN_MIDDLELEFT, "FontSize"=>$FontSize, "FontName"=>$FontName));
1730 1730
              $Width[] = $BoxArray[1]["X"];
1731 1731
             }
1732
-           $X=max($Width)+2+$XStep;
1732
+           $X = max($Width) + 2 + $XStep;
1733 1733
           }
1734 1734
         }
1735 1735
       }
@@ -1738,18 +1738,18 @@  discard block
 block discarded – undo
1738 1738
      $this->Shadow = $RestoreShadow;
1739 1739
     }
1740 1740
 
1741
-   function drawScale($Format="")
1741
+   function drawScale($Format = "")
1742 1742
     {
1743
-     $Pos		= isset($Format["Pos"]) ? $Format["Pos"] : SCALE_POS_LEFTRIGHT;
1744
-     $Floating		= isset($Format["Floating"]) ? $Format["Floating"] : FALSE;
1745
-     $Mode		= isset($Format["Mode"]) ? $Format["Mode"] : SCALE_MODE_FLOATING;
1743
+     $Pos = isset($Format["Pos"]) ? $Format["Pos"] : SCALE_POS_LEFTRIGHT;
1744
+     $Floating = isset($Format["Floating"]) ? $Format["Floating"] : FALSE;
1745
+     $Mode = isset($Format["Mode"]) ? $Format["Mode"] : SCALE_MODE_FLOATING;
1746 1746
      $RemoveXAxis	= isset($Format["RemoveXAxis"]) ? $Format["RemoveXAxis"] : FALSE;
1747
-     $MinDivHeight	= isset($Format["MinDivHeight"]) ? $Format["MinDivHeight"] : 20;
1748
-     $Factors		= isset($Format["Factors"]) ? $Format["Factors"] : array(1,2,5);
1749
-     $ManualScale	= isset($Format["ManualScale"]) ? $Format["ManualScale"] : array("0"=>array("Min"=>-100,"Max"=>100));
1747
+     $MinDivHeight = isset($Format["MinDivHeight"]) ? $Format["MinDivHeight"] : 20;
1748
+     $Factors		= isset($Format["Factors"]) ? $Format["Factors"] : array(1, 2, 5);
1749
+     $ManualScale	= isset($Format["ManualScale"]) ? $Format["ManualScale"] : array("0"=>array("Min"=>-100, "Max"=>100));
1750 1750
      $XMargin		= isset($Format["XMargin"]) ? $Format["XMargin"] : AUTO;
1751 1751
      $YMargin		= isset($Format["YMargin"]) ? $Format["YMargin"] : 0;
1752
-     $ScaleSpacing	= isset($Format["ScaleSpacing"]) ? $Format["ScaleSpacing"] : 15;
1752
+     $ScaleSpacing = isset($Format["ScaleSpacing"]) ? $Format["ScaleSpacing"] : 15;
1753 1753
      $InnerTickWidth	= isset($Format["InnerTickWidth"]) ? $Format["InnerTickWidth"] : 2;
1754 1754
      $OuterTickWidth	= isset($Format["OuterTickWidth"]) ? $Format["OuterTickWidth"] : 2;
1755 1755
      $DrawXLines	= isset($Format["DrawXLines"]) ? $Format["DrawXLines"] : TRUE;
@@ -1758,104 +1758,104 @@  discard block
 block discarded – undo
1758 1758
      $GridR		= isset($Format["GridR"]) ? $Format["GridR"] : 255;
1759 1759
      $GridG		= isset($Format["GridG"]) ? $Format["GridG"] : 255;
1760 1760
      $GridB		= isset($Format["GridB"]) ? $Format["GridB"] : 255;
1761
-     $GridAlpha		= isset($Format["GridAlpha"]) ? $Format["GridAlpha"] : 40;
1761
+     $GridAlpha = isset($Format["GridAlpha"]) ? $Format["GridAlpha"] : 40;
1762 1762
      $AxisRo		= isset($Format["AxisR"]) ? $Format["AxisR"] : 0;
1763 1763
      $AxisGo		= isset($Format["AxisG"]) ? $Format["AxisG"] : 0;
1764 1764
      $AxisBo		= isset($Format["AxisB"]) ? $Format["AxisB"] : 0;
1765
-     $AxisAlpha		= isset($Format["AxisAlpha"]) ? $Format["AxisAlpha"] : 100;
1765
+     $AxisAlpha = isset($Format["AxisAlpha"]) ? $Format["AxisAlpha"] : 100;
1766 1766
      $TickRo		= isset($Format["TickR"]) ? $Format["TickR"] : 0;
1767 1767
      $TickGo		= isset($Format["TickG"]) ? $Format["TickG"] : 0;
1768 1768
      $TickBo		= isset($Format["TickB"]) ? $Format["TickB"] : 0;
1769
-     $TickAlpha		= isset($Format["TickAlpha"]) ? $Format["TickAlpha"] : 100;
1770
-     $DrawSubTicks	= isset($Format["DrawSubTicks"]) ? $Format["DrawSubTicks"] : FALSE;
1769
+     $TickAlpha = isset($Format["TickAlpha"]) ? $Format["TickAlpha"] : 100;
1770
+     $DrawSubTicks = isset($Format["DrawSubTicks"]) ? $Format["DrawSubTicks"] : FALSE;
1771 1771
      $InnerSubTickWidth	= isset($Format["InnerSubTickWidth"]) ? $Format["InnerSubTickWidth"] : 0;
1772 1772
      $OuterSubTickWidth	= isset($Format["OuterSubTickWidth"]) ? $Format["OuterSubTickWidth"] : 2;
1773 1773
      $SubTickR		= isset($Format["SubTickR"]) ? $Format["SubTickR"] : 255;
1774 1774
      $SubTickG		= isset($Format["SubTickG"]) ? $Format["SubTickG"] : 0;
1775 1775
      $SubTickB		= isset($Format["SubTickB"]) ? $Format["SubTickB"] : 0;
1776
-     $SubTickAlpha	= isset($Format["SubTickAlpha"]) ? $Format["SubTickAlpha"] : 100;
1777
-     $AutoAxisLabels	= isset($Format["AutoAxisLabels"]) ? $Format["AutoAxisLabels"] : TRUE;
1776
+     $SubTickAlpha = isset($Format["SubTickAlpha"]) ? $Format["SubTickAlpha"] : 100;
1777
+     $AutoAxisLabels = isset($Format["AutoAxisLabels"]) ? $Format["AutoAxisLabels"] : TRUE;
1778 1778
      $XReleasePercent	= isset($Format["XReleasePercent"]) ? $Format["XReleasePercent"] : 1;
1779
-     $DrawArrows	= isset($Format["DrawArrows"]) ? $Format["DrawArrows"] : FALSE;
1780
-     $ArrowSize         = isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 8;
1779
+     $DrawArrows = isset($Format["DrawArrows"]) ? $Format["DrawArrows"] : FALSE;
1780
+     $ArrowSize = isset($Format["ArrowSize"]) ? $Format["ArrowSize"] : 8;
1781 1781
      $CycleBackground	= isset($Format["CycleBackground"]) ? $Format["CycleBackground"] : FALSE;
1782 1782
      $BackgroundR1	= isset($Format["BackgroundR1"]) ? $Format["BackgroundR1"] : 255;
1783 1783
      $BackgroundG1	= isset($Format["BackgroundG1"]) ? $Format["BackgroundG1"] : 255;
1784 1784
      $BackgroundB1	= isset($Format["BackgroundB1"]) ? $Format["BackgroundB1"] : 255;
1785
-     $BackgroundAlpha1	= isset($Format["BackgroundAlpha1"]) ? $Format["BackgroundAlpha1"] : 20;
1785
+     $BackgroundAlpha1 = isset($Format["BackgroundAlpha1"]) ? $Format["BackgroundAlpha1"] : 20;
1786 1786
      $BackgroundR2	= isset($Format["BackgroundR2"]) ? $Format["BackgroundR2"] : 230;
1787 1787
      $BackgroundG2	= isset($Format["BackgroundG2"]) ? $Format["BackgroundG2"] : 230;
1788 1788
      $BackgroundB2	= isset($Format["BackgroundB2"]) ? $Format["BackgroundB2"] : 230;
1789
-     $BackgroundAlpha2	= isset($Format["BackgroundAlpha2"]) ? $Format["BackgroundAlpha2"] : 20;
1790
-     $LabelingMethod	= isset($Format["LabelingMethod"]) ? $Format["LabelingMethod"] : LABELING_ALL;
1791
-     $LabelSkip		= isset($Format["LabelSkip"]) ? $Format["LabelSkip"] : 0;
1792
-     $LabelRotation	= isset($Format["LabelRotation"]) ? $Format["LabelRotation"] : 0;
1793
-     $SkippedAxisTicks	= isset($Format["SkippedAxisTicks"]) ? $Format["SkippedAxisTicks"] : $GridTicks+2;
1789
+     $BackgroundAlpha2 = isset($Format["BackgroundAlpha2"]) ? $Format["BackgroundAlpha2"] : 20;
1790
+     $LabelingMethod = isset($Format["LabelingMethod"]) ? $Format["LabelingMethod"] : LABELING_ALL;
1791
+     $LabelSkip = isset($Format["LabelSkip"]) ? $Format["LabelSkip"] : 0;
1792
+     $LabelRotation = isset($Format["LabelRotation"]) ? $Format["LabelRotation"] : 0;
1793
+     $SkippedAxisTicks = isset($Format["SkippedAxisTicks"]) ? $Format["SkippedAxisTicks"] : $GridTicks + 2;
1794 1794
      $SkippedAxisR	= isset($Format["SkippedAxisR"]) ? $Format["SkippedAxisR"] : $GridR;
1795 1795
      $SkippedAxisG	= isset($Format["SkippedAxisG"]) ? $Format["SkippedAxisG"] : $GridG;
1796 1796
      $SkippedAxisB	= isset($Format["SkippedAxisB"]) ? $Format["SkippedAxisB"] : $GridB;
1797
-     $SkippedAxisAlpha	= isset($Format["SkippedAxisAlpha"]) ? $Format["SkippedAxisAlpha"] : $GridAlpha-30;
1797
+     $SkippedAxisAlpha = isset($Format["SkippedAxisAlpha"]) ? $Format["SkippedAxisAlpha"] : $GridAlpha - 30;
1798 1798
      $SkippedTickR	= isset($Format["SkippedTickR"]) ? $Format["SkippedTickR"] : $TickRo;
1799 1799
      $SkippedTickG	= isset($Format["SkippedTickG"]) ? $Format["SkippedTickG"] : $TickGo;
1800 1800
      $SkippedTickB	= isset($Format["SkippedTicksB"]) ? $Format["SkippedTickB"] : $TickBo;
1801
-     $SkippedTickAlpha	= isset($Format["SkippedTickAlpha"]) ? $Format["SkippedTickAlpha"] : $TickAlpha-80;
1801
+     $SkippedTickAlpha = isset($Format["SkippedTickAlpha"]) ? $Format["SkippedTickAlpha"] : $TickAlpha - 80;
1802 1802
      $SkippedInnerTickWidth	= isset($Format["SkippedInnerTickWidth"]) ? $Format["SkippedInnerTickWidth"] : 0;
1803 1803
      $SkippedOuterTickWidth	= isset($Format["SkippedOuterTickWidth"]) ? $Format["SkippedOuterTickWidth"] : 2;
1804 1804
 
1805 1805
      /* Floating scale require X & Y margins to be set manually */
1806
-     if ( $Floating && ( $XMargin == AUTO || $YMargin == 0 ) ) { $Floating = FALSE; }
1806
+     if ($Floating && ($XMargin == AUTO || $YMargin == 0)) { $Floating = FALSE; }
1807 1807
 
1808 1808
      /* Skip a NOTICE event in case of an empty array */
1809
-     if ( $DrawYLines == NONE || $DrawYLines == FALSE ) { $DrawYLines = array("zarma"=>"31"); }
1809
+     if ($DrawYLines == NONE || $DrawYLines == FALSE) { $DrawYLines = array("zarma"=>"31"); }
1810 1810
 
1811 1811
      /* Define the color for the skipped elements */
1812
-     $SkippedAxisColor = array("R"=>$SkippedAxisR,"G"=>$SkippedAxisG,"B"=>$SkippedAxisB,"Alpha"=>$SkippedAxisAlpha,"Ticks"=>$SkippedAxisTicks);
1813
-     $SkippedTickColor = array("R"=>$SkippedTickR,"G"=>$SkippedTickG,"B"=>$SkippedTickB,"Alpha"=>$SkippedTickAlpha);
1812
+     $SkippedAxisColor = array("R"=>$SkippedAxisR, "G"=>$SkippedAxisG, "B"=>$SkippedAxisB, "Alpha"=>$SkippedAxisAlpha, "Ticks"=>$SkippedAxisTicks);
1813
+     $SkippedTickColor = array("R"=>$SkippedTickR, "G"=>$SkippedTickG, "B"=>$SkippedTickB, "Alpha"=>$SkippedTickAlpha);
1814 1814
 
1815 1815
      $Data = $this->DataSet->getData();
1816
-     if ( isset($Data["Abscissa"]) ) { $Abscissa = $Data["Abscissa"]; } else { $Abscissa = NULL; }
1816
+     if (isset($Data["Abscissa"])) { $Abscissa = $Data["Abscissa"]; } else { $Abscissa = NULL; }
1817 1817
 
1818 1818
      /* Unset the abscissa axis, needed if we display multiple charts on the same picture */
1819
-     if ( $Abscissa != NULL )
1819
+     if ($Abscissa != NULL)
1820 1820
       {
1821
-       foreach($Data["Axis"] as $AxisID => $Parameters)
1821
+       foreach ($Data["Axis"] as $AxisID => $Parameters)
1822 1822
         { if ($Parameters["Identity"] == AXIS_X) { unset($Data["Axis"][$AxisID]); } }
1823 1823
       }
1824 1824
 
1825 1825
      /* Build the scale settings */
1826 1826
      $GotXAxis = FALSE;
1827
-     foreach($Data["Axis"] as $AxisID => $AxisParameter)
1827
+     foreach ($Data["Axis"] as $AxisID => $AxisParameter)
1828 1828
       {
1829
-       if ( $AxisParameter["Identity"] == AXIS_X ) { $GotXAxis = TRUE; }
1830
-
1831
-       if ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_Y)
1832
-        { $Height = $this->GraphAreaY2-$this->GraphAreaY1 - $YMargin*2; }
1833
-       elseif ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_X)
1834
-        { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1835
-       elseif ( $Pos == SCALE_POS_TOPBOTTOM && $AxisParameter["Identity"] == AXIS_Y)
1836
-        { $Height = $this->GraphAreaX2-$this->GraphAreaX1 - $YMargin*2;; }
1829
+       if ($AxisParameter["Identity"] == AXIS_X) { $GotXAxis = TRUE; }
1830
+
1831
+       if ($Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_Y)
1832
+        { $Height = $this->GraphAreaY2 - $this->GraphAreaY1 - $YMargin*2; }
1833
+       elseif ($Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_X)
1834
+        { $Height = $this->GraphAreaX2 - $this->GraphAreaX1; }
1835
+       elseif ($Pos == SCALE_POS_TOPBOTTOM && $AxisParameter["Identity"] == AXIS_Y)
1836
+        { $Height = $this->GraphAreaX2 - $this->GraphAreaX1 - $YMargin*2; ; }
1837 1837
        else
1838
-        { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1838
+        { $Height = $this->GraphAreaY2 - $this->GraphAreaY1; }
1839 1839
 
1840 1840
        $AxisMin = ABSOLUTE_MAX; $AxisMax = OUT_OF_SIGHT;
1841
-       if ( $Mode == SCALE_MODE_FLOATING || $Mode == SCALE_MODE_START0 )
1841
+       if ($Mode == SCALE_MODE_FLOATING || $Mode == SCALE_MODE_START0)
1842 1842
         {
1843
-         foreach($Data["Series"] as $SerieID => $SerieParameter)
1843
+         foreach ($Data["Series"] as $SerieID => $SerieParameter)
1844 1844
           {
1845
-           if ( $SerieParameter["Axis"] == $AxisID && $Data["Series"][$SerieID]["isDrawable"] && $Data["Abscissa"] != $SerieID)
1845
+           if ($SerieParameter["Axis"] == $AxisID && $Data["Series"][$SerieID]["isDrawable"] && $Data["Abscissa"] != $SerieID)
1846 1846
             {
1847
-             $AxisMax = max($AxisMax,$Data["Series"][$SerieID]["Max"]);
1848
-             $AxisMin = min($AxisMin,$Data["Series"][$SerieID]["Min"]);
1847
+             $AxisMax = max($AxisMax, $Data["Series"][$SerieID]["Max"]);
1848
+             $AxisMin = min($AxisMin, $Data["Series"][$SerieID]["Min"]);
1849 1849
             }
1850 1850
           }
1851
-         $AutoMargin = (($AxisMax-$AxisMin)/100)*$XReleasePercent;
1851
+         $AutoMargin = (($AxisMax - $AxisMin)/100)*$XReleasePercent;
1852 1852
 
1853
-         $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1854
-         if ( $Mode == SCALE_MODE_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1853
+         $Data["Axis"][$AxisID]["Min"] = $AxisMin - $AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax + $AutoMargin;
1854
+         if ($Mode == SCALE_MODE_START0) { $Data["Axis"][$AxisID]["Min"] = 0; }
1855 1855
         }
1856
-       elseif ( $Mode == SCALE_MODE_MANUAL )
1856
+       elseif ($Mode == SCALE_MODE_MANUAL)
1857 1857
         {
1858
-         if ( isset($ManualScale[$AxisID]["Min"]) && isset($ManualScale[$AxisID]["Max"]) )
1858
+         if (isset($ManualScale[$AxisID]["Min"]) && isset($ManualScale[$AxisID]["Max"]))
1859 1859
           {
1860 1860
            $Data["Axis"][$AxisID]["Min"] = $ManualScale[$AxisID]["Min"];
1861 1861
            $Data["Axis"][$AxisID]["Max"] = $ManualScale[$AxisID]["Max"];
@@ -1863,34 +1863,34 @@  discard block
 block discarded – undo
1863 1863
          else
1864 1864
           { echo "Manual scale boundaries not set."; exit(); }
1865 1865
         }
1866
-       elseif ( $Mode == SCALE_MODE_ADDALL || $Mode == SCALE_MODE_ADDALL_START0 )
1866
+       elseif ($Mode == SCALE_MODE_ADDALL || $Mode == SCALE_MODE_ADDALL_START0)
1867 1867
         {
1868 1868
          $Series = "";
1869
-         foreach($Data["Series"] as $SerieID => $SerieParameter)
1870
-          { if ( $SerieParameter["Axis"] == $AxisID && $SerieParameter["isDrawable"] && $Data["Abscissa"] != $SerieID ) { $Series[$SerieID] = count($Data["Series"][$SerieID]["Data"]); } }
1869
+         foreach ($Data["Series"] as $SerieID => $SerieParameter)
1870
+          { if ($SerieParameter["Axis"] == $AxisID && $SerieParameter["isDrawable"] && $Data["Abscissa"] != $SerieID) { $Series[$SerieID] = count($Data["Series"][$SerieID]["Data"]); } }
1871 1871
 
1872
-         for ($ID=0;$ID<=max($Series)-1;$ID++)
1872
+         for ($ID = 0; $ID <= max($Series) - 1; $ID++)
1873 1873
           {
1874 1874
            $PointMin = 0; $PointMax = 0;
1875
-           foreach($Series as $SerieID => $ValuesCount )
1875
+           foreach ($Series as $SerieID => $ValuesCount)
1876 1876
             {
1877
-             if (isset($Data["Series"][$SerieID]["Data"][$ID]) && $Data["Series"][$SerieID]["Data"][$ID] != NULL )
1877
+             if (isset($Data["Series"][$SerieID]["Data"][$ID]) && $Data["Series"][$SerieID]["Data"][$ID] != NULL)
1878 1878
               {
1879 1879
                $Value = $Data["Series"][$SerieID]["Data"][$ID];
1880
-               if ( $Value > 0 ) { $PointMax = $PointMax + $Value; } else { $PointMin = $PointMin + $Value; }
1880
+               if ($Value > 0) { $PointMax = $PointMax + $Value; } else { $PointMin = $PointMin + $Value; }
1881 1881
               }
1882 1882
             }
1883
-           $AxisMax = max($AxisMax,$PointMax);
1884
-           $AxisMin = min($AxisMin,$PointMin);
1883
+           $AxisMax = max($AxisMax, $PointMax);
1884
+           $AxisMin = min($AxisMin, $PointMin);
1885 1885
           }
1886
-         $AutoMargin = (($AxisMax-$AxisMin)/100)*$XReleasePercent;
1887
-         $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1886
+         $AutoMargin = (($AxisMax - $AxisMin)/100)*$XReleasePercent;
1887
+         $Data["Axis"][$AxisID]["Min"] = $AxisMin - $AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax + $AutoMargin;
1888 1888
         }
1889 1889
        $MaxDivs = floor($Height/$MinDivHeight);
1890 1890
 
1891
-       if ( $Mode == SCALE_MODE_ADDALL_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1891
+       if ($Mode == SCALE_MODE_ADDALL_START0) { $Data["Axis"][$AxisID]["Min"] = 0; }
1892 1892
 
1893
-       $Scale   = $this->computeScale($Data["Axis"][$AxisID]["Min"],$Data["Axis"][$AxisID]["Max"],$MaxDivs,$Factors,$AxisID);
1893
+       $Scale = $this->computeScale($Data["Axis"][$AxisID]["Min"], $Data["Axis"][$AxisID]["Max"], $MaxDivs, $Factors, $AxisID);
1894 1894
 
1895 1895
        $Data["Axis"][$AxisID]["Margin"]    = $AxisParameter["Identity"] == AXIS_X ? $XMargin : $YMargin;
1896 1896
        $Data["Axis"][$AxisID]["ScaleMin"]  = $Scale["XMin"];
@@ -1898,20 +1898,20 @@  discard block
 block discarded – undo
1898 1898
        $Data["Axis"][$AxisID]["Rows"]      = $Scale["Rows"];
1899 1899
        $Data["Axis"][$AxisID]["RowHeight"] = $Scale["RowHeight"];
1900 1900
 
1901
-       if ( isset($Scale["Format"]) ) { $Data["Axis"][$AxisID]["Format"] = $Scale["Format"]; }
1901
+       if (isset($Scale["Format"])) { $Data["Axis"][$AxisID]["Format"] = $Scale["Format"]; }
1902 1902
 
1903
-       if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1904
-       if ( !isset($Data["Axis"][$AxisID]["Format"]) )  { $Data["Axis"][$AxisID]["Format"] = NULL; }
1905
-       if ( !isset($Data["Axis"][$AxisID]["Unit"]) )    { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1903
+       if (!isset($Data["Axis"][$AxisID]["Display"])) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1904
+       if (!isset($Data["Axis"][$AxisID]["Format"])) { $Data["Axis"][$AxisID]["Format"] = NULL; }
1905
+       if (!isset($Data["Axis"][$AxisID]["Unit"])) { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1906 1906
       }
1907 1907
 
1908 1908
      /* Still no X axis */
1909
-     if ( $GotXAxis == FALSE )
1909
+     if ($GotXAxis == FALSE)
1910 1910
       {
1911
-       if ( $Abscissa != NULL )
1911
+       if ($Abscissa != NULL)
1912 1912
         {
1913 1913
          $Points = count($Data["Series"][$Abscissa]["Data"]);
1914
-         if ( $AutoAxisLabels )
1914
+         if ($AutoAxisLabels)
1915 1915
           $AxisName = isset($Data["Series"][$Abscissa]["Description"]) ? $Data["Series"][$Abscissa]["Description"] : NULL;
1916 1916
          else
1917 1917
           $AxisName = NULL;
@@ -1920,38 +1920,38 @@  discard block
 block discarded – undo
1920 1920
         {
1921 1921
          $Points = 0;
1922 1922
          $AxisName = isset($Data["XAxisName"]) ? $Data["XAxisName"] : NULL;
1923
-         foreach($Data["Series"] as $SerieID => $SerieParameter)
1924
-          { if ( $SerieParameter["isDrawable"] ) { $Points = max($Points,count($SerieParameter["Data"])); } }
1923
+         foreach ($Data["Series"] as $SerieID => $SerieParameter)
1924
+          { if ($SerieParameter["isDrawable"]) { $Points = max($Points, count($SerieParameter["Data"])); } }
1925 1925
         }
1926 1926
 
1927 1927
        $AxisID = count($Data["Axis"]);
1928 1928
        $Data["Axis"][$AxisID]["Identity"] = AXIS_X;
1929
-       if ( $Pos == SCALE_POS_LEFTRIGHT ) { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_BOTTOM; } else { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; }
1930
-       if ( isset($Data["AbscissaName"]) ) { $Data["Axis"][$AxisID]["Name"] = $Data["AbscissaName"]; }
1931
-       if ( $XMargin == AUTO )
1929
+       if ($Pos == SCALE_POS_LEFTRIGHT) { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_BOTTOM; } else { $Data["Axis"][$AxisID]["Position"] = AXIS_POSITION_LEFT; }
1930
+       if (isset($Data["AbscissaName"])) { $Data["Axis"][$AxisID]["Name"] = $Data["AbscissaName"]; }
1931
+       if ($XMargin == AUTO)
1932 1932
         {
1933
-         if ( $Pos == SCALE_POS_LEFTRIGHT )
1934
-          { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1933
+         if ($Pos == SCALE_POS_LEFTRIGHT)
1934
+          { $Height = $this->GraphAreaX2 - $this->GraphAreaX1; }
1935 1935
          else
1936
-          { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1936
+          { $Height = $this->GraphAreaY2 - $this->GraphAreaY1; }
1937 1937
 
1938
-         if ( $Points == 1 )
1939
-          $Data["Axis"][$AxisID]["Margin"] = $Height / 2;
1938
+         if ($Points == 1)
1939
+          $Data["Axis"][$AxisID]["Margin"] = $Height/2;
1940 1940
          else
1941
-          $Data["Axis"][$AxisID]["Margin"] = ($Height/$Points) / 2;
1941
+          $Data["Axis"][$AxisID]["Margin"] = ($Height/$Points)/2;
1942 1942
         }
1943 1943
        else
1944 1944
         { $Data["Axis"][$AxisID]["Margin"] = $XMargin; }
1945
-       $Data["Axis"][$AxisID]["Rows"] = $Points-1;
1946
-       if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1947
-       if ( !isset($Data["Axis"][$AxisID]["Format"]) )  { $Data["Axis"][$AxisID]["Format"] = NULL; }
1948
-       if ( !isset($Data["Axis"][$AxisID]["Unit"]) )    { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1945
+       $Data["Axis"][$AxisID]["Rows"] = $Points - 1;
1946
+       if (!isset($Data["Axis"][$AxisID]["Display"])) { $Data["Axis"][$AxisID]["Display"] = NULL; }
1947
+       if (!isset($Data["Axis"][$AxisID]["Format"])) { $Data["Axis"][$AxisID]["Format"] = NULL; }
1948
+       if (!isset($Data["Axis"][$AxisID]["Unit"])) { $Data["Axis"][$AxisID]["Unit"] = NULL; }
1949 1949
       }
1950 1950
 
1951 1951
      /* Do we need to reverse the abscissa position? */
1952
-     if ( $Pos != SCALE_POS_LEFTRIGHT )
1952
+     if ($Pos != SCALE_POS_LEFTRIGHT)
1953 1953
       {
1954
-       if ( $Data["AbsicssaPosition"] == AXIS_POSITION_BOTTOM )
1954
+       if ($Data["AbsicssaPosition"] == AXIS_POSITION_BOTTOM)
1955 1955
         { $Data["AbsicssaPosition"] = AXIS_POSITION_LEFT; }
1956 1956
        else
1957 1957
         { $Data["AbsicssaPosition"] = AXIS_POSITION_RIGHT; }
@@ -1965,92 +1965,92 @@  discard block
 block discarded – undo
1965 1965
      $FontColorRo = $this->FontColorR; $FontColorGo = $this->FontColorG; $FontColorBo = $this->FontColorB;
1966 1966
 
1967 1967
      $AxisPos["L"] = $this->GraphAreaX1; $AxisPos["R"] = $this->GraphAreaX2; $AxisPos["T"] = $this->GraphAreaY1; $AxisPos["B"] = $this->GraphAreaY2;
1968
-     foreach($Data["Axis"] as $AxisID => $Parameters)
1968
+     foreach ($Data["Axis"] as $AxisID => $Parameters)
1969 1969
       {
1970
-       if ( isset($Parameters["Color"]) )
1970
+       if (isset($Parameters["Color"]))
1971 1971
         {
1972 1972
          $AxisR = $Parameters["Color"]["R"]; $AxisG = $Parameters["Color"]["G"]; $AxisB = $Parameters["Color"]["B"];
1973 1973
          $TickR = $Parameters["Color"]["R"]; $TickG = $Parameters["Color"]["G"]; $TickB = $Parameters["Color"]["B"];
1974
-         $this->setFontProperties(array("R"=>$Parameters["Color"]["R"],"G"=>$Parameters["Color"]["G"],"B"=>$Parameters["Color"]["B"]));
1974
+         $this->setFontProperties(array("R"=>$Parameters["Color"]["R"], "G"=>$Parameters["Color"]["G"], "B"=>$Parameters["Color"]["B"]));
1975 1975
         }
1976 1976
        else
1977 1977
         {
1978 1978
          $AxisR = $AxisRo; $AxisG = $AxisGo; $AxisB = $AxisBo;
1979 1979
          $TickR = $TickRo; $TickG = $TickGo; $TickB = $TickBo;
1980
-         $this->setFontProperties(array("R"=>$FontColorRo,"G"=>$FontColorGo,"B"=>$FontColorBo));
1980
+         $this->setFontProperties(array("R"=>$FontColorRo, "G"=>$FontColorGo, "B"=>$FontColorBo));
1981 1981
         }
1982 1982
 
1983 1983
        $LastValue = "w00t"; $ID = 1;
1984
-       if ( $Parameters["Identity"] == AXIS_X )
1984
+       if ($Parameters["Identity"] == AXIS_X)
1985 1985
         {
1986
-         if ( $Pos == SCALE_POS_LEFTRIGHT )
1986
+         if ($Pos == SCALE_POS_LEFTRIGHT)
1987 1987
           {
1988
-           if ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
1988
+           if ($Parameters["Position"] == AXIS_POSITION_BOTTOM)
1989 1989
             {
1990
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 2; }
1991
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
1992
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 5; }
1993
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
1990
+             if ($LabelRotation == 0) { $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 2; }
1991
+             if ($LabelRotation > 0 && $LabelRotation < 190) { $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
1992
+             if ($LabelRotation == 180) { $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 5; }
1993
+             if ($LabelRotation > 180 && $LabelRotation < 360) { $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
1994 1994
 
1995
-             if ( !$RemoveXAxis )
1995
+             if (!$RemoveXAxis)
1996 1996
               {
1997
-               if ( $Floating )
1998
-                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
1997
+               if ($Floating)
1998
+                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1 + $Parameters["Margin"], $AxisPos["B"], $this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["B"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
1999 1999
                else
2000
-                { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2000
+                { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1, $AxisPos["B"], $this->GraphAreaX2, $AxisPos["B"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2001 2001
 
2002
-               if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2002
+               if ($DrawArrows) { $this->drawArrow($this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["B"], $this->GraphAreaX2 + ($ArrowSize*2), $AxisPos["B"], array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2003 2003
               }
2004 2004
 
2005 2005
              $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2006 2006
 
2007
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Width; } else { $Step  = $Width / ($Parameters["Rows"]); }
2007
+             if ($Parameters["Rows"] == 0) { $Step = $Width; } else { $Step = $Width/($Parameters["Rows"]); }
2008 2008
              
2009 2009
              $MaxBottom = $AxisPos["B"];
2010
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2010
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2011 2011
               {
2012 2012
                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2013 2013
                $YPos  = $AxisPos["B"];
2014 2014
 
2015
-               if ( $Abscissa != NULL )
2016
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2015
+               if ($Abscissa != NULL)
2016
+                { if (isset($Data["Series"][$Abscissa]["Data"][$i])) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i], $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]); } else { $Value = ""; } }
2017 2017
                else
2018 2018
                 {
2019
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2020
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2019
+                 if (isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]))
2020
+                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]);
2021 2021
                  else
2022 2022
                   $Value = $i;
2023 2023
                 }
2024 2024
 
2025 2025
                $ID++; $Skipped = TRUE;
2026
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2026
+               if ($this->isValidLabel($Value, $LastValue, $LabelingMethod, $ID, $LabelSkip) && !$RemoveXAxis)
2027 2027
                 {
2028
-                 $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+$YLabelOffset,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2029
-                 $TxtBottom = $YPos+$OuterTickWidth+2+($Bounds[0]["Y"]-$Bounds[2]["Y"]);
2030
-                 $MaxBottom = max($MaxBottom,$TxtBottom);
2028
+                 $Bounds    = $this->drawText($XPos, $YPos + $OuterTickWidth + $YLabelOffset, $Value, array("Angle"=>$LabelRotation, "Align"=>$LabelAlign));
2029
+                 $TxtBottom = $YPos + $OuterTickWidth + 2 + ($Bounds[0]["Y"] - $Bounds[2]["Y"]);
2030
+                 $MaxBottom = max($MaxBottom, $TxtBottom);
2031 2031
                  $LastValue = $Value;
2032 2032
                  $Skipped   = FALSE;
2033 2033
                 }
2034 2034
 
2035
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2035
+               if ($RemoveXAxis) { $Skipped = FALSE; }
2036 2036
 
2037
-               if ( $Skipped )
2037
+               if ($Skipped)
2038 2038
                 {
2039
-                 if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2040
-                 if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$SkippedInnerTickWidth,$XPos,$YPos+$SkippedOuterTickWidth,$SkippedTickColor); }
2039
+                 if ($DrawXLines) { $this->drawLine($XPos, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, $SkippedAxisColor); }
2040
+                 if (($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos, $YPos - $SkippedInnerTickWidth, $XPos, $YPos + $SkippedOuterTickWidth, $SkippedTickColor); }
2041 2041
                 }
2042 2042
                else
2043 2043
                 {
2044
-                 if ( $DrawXLines && ($XPos != $this->GraphAreaX1 && $XPos != $this->GraphAreaX2) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2045
-                 if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$InnerTickWidth,$XPos,$YPos+$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2044
+                 if ($DrawXLines && ($XPos != $this->GraphAreaX1 && $XPos != $this->GraphAreaX2)) { $this->drawLine($XPos, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2045
+                 if (($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos, $YPos - $InnerTickWidth, $XPos, $YPos + $OuterTickWidth, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha)); }
2046 2046
                 }
2047 2047
               }
2048 2048
 
2049
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis)
2049
+             if (isset($Parameters["Name"]) && !$RemoveXAxis)
2050 2050
               {
2051
-               $YPos   = $MaxBottom+2;
2052
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2053
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2051
+               $YPos   = $MaxBottom + 2;
2052
+               $XPos   = $this->GraphAreaX1 + ($this->GraphAreaX2 - $this->GraphAreaX1)/2;
2053
+               $Bounds = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2054 2054
                $MaxBottom = $Bounds[0]["Y"];
2055 2055
 
2056 2056
                $this->DataSet->Data["GraphArea"]["Y2"] = $MaxBottom + $this->FontSize;
@@ -2058,73 +2058,73 @@  discard block
 block discarded – undo
2058 2058
 
2059 2059
              $AxisPos["B"] = $MaxBottom + $ScaleSpacing;
2060 2060
             }
2061
-           elseif ( $Parameters["Position"] == AXIS_POSITION_TOP )
2061
+           elseif ($Parameters["Position"] == AXIS_POSITION_TOP)
2062 2062
             {
2063
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 2; }
2064
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
2065
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 5; }
2066
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
2063
+             if ($LabelRotation == 0) { $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 2; }
2064
+             if ($LabelRotation > 0 && $LabelRotation < 190) { $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
2065
+             if ($LabelRotation == 180) { $LabelAlign = TEXT_ALIGN_TOPMIDDLE; $YLabelOffset = 5; }
2066
+             if ($LabelRotation > 180 && $LabelRotation < 360) { $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $YLabelOffset = 5; }
2067 2067
 
2068
-             if ( !$RemoveXAxis )
2068
+             if (!$RemoveXAxis)
2069 2069
               {
2070
-               if ( $Floating )
2071
-                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2070
+               if ($Floating)
2071
+                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1 + $Parameters["Margin"], $AxisPos["T"], $this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["T"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2072 2072
                else
2073
-                { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2073
+                { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1, $AxisPos["T"], $this->GraphAreaX2, $AxisPos["T"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2074 2074
 
2075
-               if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2075
+               if ($DrawArrows) { $this->drawArrow($this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["T"], $this->GraphAreaX2 + ($ArrowSize*2), $AxisPos["T"], array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2076 2076
               }
2077 2077
 
2078 2078
              $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2079 2079
 
2080
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Width; } else { $Step  = $Width / $Parameters["Rows"]; }
2080
+             if ($Parameters["Rows"] == 0) { $Step = $Width; } else { $Step = $Width/$Parameters["Rows"]; }
2081 2081
              
2082 2082
              $MinTop = $AxisPos["T"];
2083
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2083
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2084 2084
               {
2085 2085
                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2086 2086
                $YPos  = $AxisPos["T"];
2087 2087
 
2088
-               if ( $Abscissa != NULL )
2089
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2088
+               if ($Abscissa != NULL)
2089
+                { if (isset($Data["Series"][$Abscissa]["Data"][$i])) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i], $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]); } else { $Value = ""; } }
2090 2090
                else
2091 2091
                 {
2092
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2093
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2092
+                 if (isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]))
2093
+                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]);
2094 2094
                  else
2095 2095
                   $Value = $i;
2096 2096
                 }
2097 2097
 
2098 2098
                $ID++; $Skipped = TRUE;
2099
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2099
+               if ($this->isValidLabel($Value, $LastValue, $LabelingMethod, $ID, $LabelSkip) && !$RemoveXAxis)
2100 2100
                 {
2101
-                 $Bounds = $this->drawText($XPos,$YPos-$OuterTickWidth-$YLabelOffset,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2102
-                 $TxtBox = $YPos-$OuterTickWidth-2-($Bounds[0]["Y"]-$Bounds[2]["Y"]);
2103
-                 $MinTop = min($MinTop,$TxtBox);
2101
+                 $Bounds = $this->drawText($XPos, $YPos - $OuterTickWidth - $YLabelOffset, $Value, array("Angle"=>$LabelRotation, "Align"=>$LabelAlign));
2102
+                 $TxtBox = $YPos - $OuterTickWidth - 2 - ($Bounds[0]["Y"] - $Bounds[2]["Y"]);
2103
+                 $MinTop = min($MinTop, $TxtBox);
2104 2104
                  $LastValue = $Value;
2105 2105
                  $Skipped   = FALSE;
2106 2106
                 }
2107 2107
 
2108
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2108
+               if ($RemoveXAxis) { $Skipped = FALSE; }
2109 2109
 
2110
-               if ( $Skipped )
2110
+               if ($Skipped)
2111 2111
                 {
2112
-                 if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2113
-                 if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$SkippedInnerTickWidth,$XPos,$YPos-$SkippedOuterTickWidth,$SkippedTickColor); }
2112
+                 if ($DrawXLines) { $this->drawLine($XPos, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, $SkippedAxisColor); }
2113
+                 if (($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos, $YPos + $SkippedInnerTickWidth, $XPos, $YPos - $SkippedOuterTickWidth, $SkippedTickColor); }
2114 2114
                 }
2115 2115
                else
2116 2116
                 {
2117
-                 if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2118
-                 if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$InnerTickWidth,$XPos,$YPos-$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2117
+                 if ($DrawXLines) { $this->drawLine($XPos, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2118
+                 if (($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos, $YPos + $InnerTickWidth, $XPos, $YPos - $OuterTickWidth, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha)); }
2119 2119
                 }
2120 2120
 
2121 2121
               }
2122 2122
 
2123
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis )
2123
+             if (isset($Parameters["Name"]) && !$RemoveXAxis)
2124 2124
               {
2125
-               $YPos   = $MinTop-2;
2126
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2127
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2125
+               $YPos   = $MinTop - 2;
2126
+               $XPos   = $this->GraphAreaX1 + ($this->GraphAreaX2 - $this->GraphAreaX1)/2;
2127
+               $Bounds = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2128 2128
                $MinTop = $Bounds[2]["Y"];
2129 2129
 
2130 2130
                $this->DataSet->Data["GraphArea"]["Y1"] = $MinTop;
@@ -2133,74 +2133,74 @@  discard block
 block discarded – undo
2133 2133
              $AxisPos["T"] = $MinTop - $ScaleSpacing;
2134 2134
             }
2135 2135
           }
2136
-         elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2136
+         elseif ($Pos == SCALE_POS_TOPBOTTOM)
2137 2137
           {
2138
-           if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2138
+           if ($Parameters["Position"] == AXIS_POSITION_LEFT)
2139 2139
             {
2140
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -2; }
2141
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -6; }
2142
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -2; }
2143
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -5; }
2140
+             if ($LabelRotation == 0) { $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -2; }
2141
+             if ($LabelRotation > 0 && $LabelRotation < 190) { $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = -6; }
2142
+             if ($LabelRotation == 180) { $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -2; }
2143
+             if ($LabelRotation > 180 && $LabelRotation < 360) { $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = -5; }
2144 2144
 
2145
-             if ( !$RemoveXAxis )
2145
+             if (!$RemoveXAxis)
2146 2146
               {
2147
-               if ( $Floating )
2148
-                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2147
+               if ($Floating)
2148
+                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["L"], $this->GraphAreaY1 + $Parameters["Margin"], $AxisPos["L"], $this->GraphAreaY2 - $Parameters["Margin"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2149 2149
                else
2150
-                { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2150
+                { $FloatingOffset = 0; $this->drawLine($AxisPos["L"], $this->GraphAreaY1, $AxisPos["L"], $this->GraphAreaY2, array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2151 2151
 
2152
-               if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2152
+               if ($DrawArrows) { $this->drawArrow($AxisPos["L"], $this->GraphAreaY2 - $Parameters["Margin"], $AxisPos["L"], $this->GraphAreaY2 + ($ArrowSize*2), array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2153 2153
               }
2154 2154
 
2155 2155
              $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2156 2156
 
2157
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Height; } else { $Step   = $Height / $Parameters["Rows"]; }
2157
+             if ($Parameters["Rows"] == 0) { $Step = $Height; } else { $Step = $Height/$Parameters["Rows"]; }
2158 2158
 
2159 2159
              $MinLeft = $AxisPos["L"];
2160
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2160
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2161 2161
               {
2162 2162
                $YPos  = $this->GraphAreaY1 + $Parameters["Margin"] + $Step*$i;
2163 2163
                $XPos  = $AxisPos["L"];
2164 2164
 
2165
-               if ( $Abscissa != NULL )
2166
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2165
+               if ($Abscissa != NULL)
2166
+                { if (isset($Data["Series"][$Abscissa]["Data"][$i])) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i], $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]); } else { $Value = ""; } }
2167 2167
                else
2168 2168
                 {
2169
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2170
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2169
+                 if (isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]))
2170
+                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]);
2171 2171
                  else
2172 2172
                   $Value = $i;
2173 2173
                 }
2174 2174
 
2175 2175
                $ID++; $Skipped = TRUE;
2176
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2176
+               if ($this->isValidLabel($Value, $LastValue, $LabelingMethod, $ID, $LabelSkip) && !$RemoveXAxis)
2177 2177
                 {
2178
-                 $Bounds  = $this->drawText($XPos-$OuterTickWidth+$XLabelOffset,$YPos,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2179
-                 $TxtBox  = $XPos-$OuterTickWidth-2-($Bounds[1]["X"]-$Bounds[0]["X"]);
2180
-                 $MinLeft = min($MinLeft,$TxtBox);
2178
+                 $Bounds  = $this->drawText($XPos - $OuterTickWidth + $XLabelOffset, $YPos, $Value, array("Angle"=>$LabelRotation, "Align"=>$LabelAlign));
2179
+                 $TxtBox  = $XPos - $OuterTickWidth - 2 - ($Bounds[1]["X"] - $Bounds[0]["X"]);
2180
+                 $MinLeft = min($MinLeft, $TxtBox);
2181 2181
                  $LastValue = $Value;
2182 2182
                  $Skipped   = FALSE;
2183 2183
                 }
2184 2184
 
2185
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2185
+               if ($RemoveXAxis) { $Skipped = FALSE; }
2186 2186
 
2187
-               if ( $Skipped )
2187
+               if ($Skipped)
2188 2188
                 {
2189
-                 if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2190
-                 if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$SkippedOuterTickWidth,$YPos,$XPos+$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2189
+                 if ($DrawXLines) { $this->drawLine($this->GraphAreaX1 + $FloatingOffset, $YPos, $this->GraphAreaX2 - $FloatingOffset, $YPos, $SkippedAxisColor); }
2190
+                 if (($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos - $SkippedOuterTickWidth, $YPos, $XPos + $SkippedInnerTickWidth, $YPos, $SkippedTickColor); }
2191 2191
                 }
2192 2192
                else
2193 2193
                 {
2194
-                 if ( $DrawXLines && ($YPos != $this->GraphAreaY1 && $YPos != $this->GraphAreaY2) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2195
-                 if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2194
+                 if ($DrawXLines && ($YPos != $this->GraphAreaY1 && $YPos != $this->GraphAreaY2)) { $this->drawLine($this->GraphAreaX1 + $FloatingOffset, $YPos, $this->GraphAreaX2 - $FloatingOffset, $YPos, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2195
+                 if (($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos - $OuterTickWidth, $YPos, $XPos + $InnerTickWidth, $YPos, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha)); }
2196 2196
                 }
2197 2197
 
2198 2198
               }
2199
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis )
2199
+             if (isset($Parameters["Name"]) && !$RemoveXAxis)
2200 2200
               {
2201
-               $XPos   = $MinLeft-2;
2202
-               $YPos   = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2203
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>90));
2201
+               $XPos   = $MinLeft - 2;
2202
+               $YPos   = $this->GraphAreaY1 + ($this->GraphAreaY2 - $this->GraphAreaY1)/2;
2203
+               $Bounds = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE, "Angle"=>90));
2204 2204
                $MinLeft = $Bounds[0]["X"];
2205 2205
 
2206 2206
                $this->DataSet->Data["GraphArea"]["X1"] = $MinLeft;
@@ -2208,73 +2208,73 @@  discard block
 block discarded – undo
2208 2208
 
2209 2209
              $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2210 2210
             }
2211
-           elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2211
+           elseif ($Parameters["Position"] == AXIS_POSITION_RIGHT)
2212 2212
             {
2213
-             if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 2; }
2214
-             if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 6; }
2215
-             if ( $LabelRotation == 180 )				{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 5; }
2216
-             if ( $LabelRotation > 180 && $LabelRotation < 360 )	{ $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 7; }
2213
+             if ($LabelRotation == 0) { $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 2; }
2214
+             if ($LabelRotation > 0 && $LabelRotation < 190) { $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 6; }
2215
+             if ($LabelRotation == 180) { $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 5; }
2216
+             if ($LabelRotation > 180 && $LabelRotation < 360) { $LabelAlign = TEXT_ALIGN_MIDDLERIGHT; $XLabelOffset = 7; }
2217 2217
 
2218
-             if ( !$RemoveXAxis )
2218
+             if (!$RemoveXAxis)
2219 2219
               {
2220
-               if ( $Floating )
2221
-                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2220
+               if ($Floating)
2221
+                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["R"], $this->GraphAreaY1 + $Parameters["Margin"], $AxisPos["R"], $this->GraphAreaY2 - $Parameters["Margin"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2222 2222
                else
2223
-                { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2223
+                { $FloatingOffset = 0; $this->drawLine($AxisPos["R"], $this->GraphAreaY1, $AxisPos["R"], $this->GraphAreaY2, array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2224 2224
 
2225
-               if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2225
+               if ($DrawArrows) { $this->drawArrow($AxisPos["R"], $this->GraphAreaY2 - $Parameters["Margin"], $AxisPos["R"], $this->GraphAreaY2 + ($ArrowSize*2), array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2226 2226
               }
2227 2227
 
2228 2228
              $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2229 2229
 
2230
-             if ($Parameters["Rows"] == 0 ) { $Step  = $Height; } else { $Step   = $Height / $Parameters["Rows"]; }
2230
+             if ($Parameters["Rows"] == 0) { $Step = $Height; } else { $Step = $Height/$Parameters["Rows"]; }
2231 2231
              
2232 2232
              $MaxRight = $AxisPos["R"];
2233
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2233
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2234 2234
               {
2235 2235
                $YPos  = $this->GraphAreaY1 + $Parameters["Margin"] + $Step*$i;
2236 2236
                $XPos  = $AxisPos["R"];
2237 2237
 
2238
-               if ( $Abscissa != NULL )
2239
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2238
+               if ($Abscissa != NULL)
2239
+                { if (isset($Data["Series"][$Abscissa]["Data"][$i])) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i], $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]); } else { $Value = ""; } }
2240 2240
                else
2241 2241
                 {
2242
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2243
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2242
+                 if (isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]))
2243
+                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Data["XAxisDisplay"], $Data["XAxisFormat"], $Data["XAxisUnit"]);
2244 2244
                  else
2245 2245
                   $Value = $i;
2246 2246
                 }
2247 2247
 
2248 2248
                $ID++; $Skipped = TRUE;
2249
-               if ( $this->isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip) && !$RemoveXAxis)
2249
+               if ($this->isValidLabel($Value, $LastValue, $LabelingMethod, $ID, $LabelSkip) && !$RemoveXAxis)
2250 2250
                 {
2251
-                 $Bounds   = $this->drawText($XPos+$OuterTickWidth+$XLabelOffset,$YPos,$Value,array("Angle"=>$LabelRotation,"Align"=>$LabelAlign));
2252
-                 $TxtBox   = $XPos+$OuterTickWidth+2+($Bounds[1]["X"]-$Bounds[0]["X"]);
2253
-                 $MaxRight = max($MaxRight,$TxtBox);
2251
+                 $Bounds   = $this->drawText($XPos + $OuterTickWidth + $XLabelOffset, $YPos, $Value, array("Angle"=>$LabelRotation, "Align"=>$LabelAlign));
2252
+                 $TxtBox   = $XPos + $OuterTickWidth + 2 + ($Bounds[1]["X"] - $Bounds[0]["X"]);
2253
+                 $MaxRight = max($MaxRight, $TxtBox);
2254 2254
                  $LastValue = $Value;
2255 2255
                  $Skipped   = FALSE;
2256 2256
                 }
2257 2257
 
2258
-               if ( $RemoveXAxis ) { $Skipped   = FALSE; }
2258
+               if ($RemoveXAxis) { $Skipped = FALSE; }
2259 2259
 
2260
-               if ( $Skipped )
2260
+               if ($Skipped)
2261 2261
                 {
2262
-                 if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2263
-                 if ( ($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$SkippedOuterTickWidth,$YPos,$XPos-$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2262
+                 if ($DrawXLines) { $this->drawLine($this->GraphAreaX1 + $FloatingOffset, $YPos, $this->GraphAreaX2 - $FloatingOffset, $YPos, $SkippedAxisColor); }
2263
+                 if (($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos + $SkippedOuterTickWidth, $YPos, $XPos - $SkippedInnerTickWidth, $YPos, $SkippedTickColor); }
2264 2264
                 }
2265 2265
                else
2266 2266
                 {
2267
-                 if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2268
-                 if ( ($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$OuterTickWidth,$YPos,$XPos-$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
2267
+                 if ($DrawXLines) { $this->drawLine($this->GraphAreaX1 + $FloatingOffset, $YPos, $this->GraphAreaX2 - $FloatingOffset, $YPos, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2268
+                 if (($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis) { $this->drawLine($XPos + $OuterTickWidth, $YPos, $XPos - $InnerTickWidth, $YPos, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha)); }
2269 2269
                 }
2270 2270
 
2271 2271
               }
2272 2272
 
2273
-             if ( isset($Parameters["Name"]) && !$RemoveXAxis)
2273
+             if (isset($Parameters["Name"]) && !$RemoveXAxis)
2274 2274
               {
2275
-               $XPos   = $MaxRight+4;
2276
-               $YPos   = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2277
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>270));
2275
+               $XPos   = $MaxRight + 4;
2276
+               $YPos   = $this->GraphAreaY1 + ($this->GraphAreaY2 - $this->GraphAreaY1)/2;
2277
+               $Bounds = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE, "Angle"=>270));
2278 2278
                $MaxRight = $Bounds[1]["X"];
2279 2279
 
2280 2280
                $this->DataSet->Data["GraphArea"]["X2"] = $MaxRight + $this->FontSize;
@@ -2287,50 +2287,50 @@  discard block
 block discarded – undo
2287 2287
 
2288 2288
 
2289 2289
 
2290
-       if ( $Parameters["Identity"] == AXIS_Y )
2290
+       if ($Parameters["Identity"] == AXIS_Y)
2291 2291
         {
2292
-         if ( $Pos == SCALE_POS_LEFTRIGHT )
2292
+         if ($Pos == SCALE_POS_LEFTRIGHT)
2293 2293
           {
2294
-           if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2294
+           if ($Parameters["Position"] == AXIS_POSITION_LEFT)
2295 2295
             {
2296 2296
 
2297
-             if ( $Floating )
2298
-              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2297
+             if ($Floating)
2298
+              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["L"], $this->GraphAreaY1 + $Parameters["Margin"], $AxisPos["L"], $this->GraphAreaY2 - $Parameters["Margin"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2299 2299
              else
2300
-              { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2300
+              { $FloatingOffset = 0; $this->drawLine($AxisPos["L"], $this->GraphAreaY1, $AxisPos["L"], $this->GraphAreaY2, array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2301 2301
 
2302
-             if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2302
+             if ($DrawArrows) { $this->drawArrow($AxisPos["L"], $this->GraphAreaY1 + $Parameters["Margin"], $AxisPos["L"], $this->GraphAreaY1 - ($ArrowSize*2), array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2303 2303
 
2304 2304
              $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2305
-             $Step   = $Height / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MinLeft = $AxisPos["L"];
2305
+             $Step   = $Height/$Parameters["Rows"]; $SubTicksSize = $Step/2; $MinLeft = $AxisPos["L"];
2306 2306
              $LastY  = NULL;
2307
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2307
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2308 2308
               {
2309 2309
                $YPos  = $this->GraphAreaY2 - $Parameters["Margin"] - $Step*$i;
2310 2310
                $XPos  = $AxisPos["L"];
2311
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2311
+               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Parameters["Display"], $Parameters["Format"], $Parameters["Unit"]);
2312 2312
 
2313
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2314
-               if ( $LastY != NULL && $CycleBackground && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($this->GraphAreaX1+$FloatingOffset,$LastY,$this->GraphAreaX2-$FloatingOffset,$YPos,$BGColor); }
2313
+               if ($i%2 == 1) { $BGColor = array("R"=>$BackgroundR1, "G"=>$BackgroundG1, "B"=>$BackgroundB1, "Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2, "G"=>$BackgroundG2, "B"=>$BackgroundB2, "Alpha"=>$BackgroundAlpha2); }
2314
+               if ($LastY != NULL && $CycleBackground && ($DrawYLines == ALL || in_array($AxisID, $DrawYLines))) { $this->drawFilledRectangle($this->GraphAreaX1 + $FloatingOffset, $LastY, $this->GraphAreaX2 - $FloatingOffset, $YPos, $BGColor); }
2315 2315
 
2316
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2316
+               if ($DrawYLines == ALL || in_array($AxisID, $DrawYLines)) { $this->drawLine($this->GraphAreaX1 + $FloatingOffset, $YPos, $this->GraphAreaX2 - $FloatingOffset, $YPos, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2317 2317
 
2318
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2319
-                $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2318
+               if ($DrawSubTicks && $i != $Parameters["Rows"])
2319
+                $this->drawLine($XPos - $OuterSubTickWidth, $YPos - $SubTicksSize, $XPos + $InnerSubTickWidth, $YPos - $SubTicksSize, array("R"=>$SubTickR, "G"=>$SubTickG, "B"=>$SubTickB, "Alpha"=>$SubTickAlpha));
2320 2320
 
2321
-               $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2322
-               $Bounds  = $this->drawText($XPos-$OuterTickWidth-2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLERIGHT));
2323
-               $TxtLeft = $XPos-$OuterTickWidth-2-($Bounds[1]["X"]-$Bounds[0]["X"]);
2324
-               $MinLeft = min($MinLeft,$TxtLeft);
2321
+               $this->drawLine($XPos - $OuterTickWidth, $YPos, $XPos + $InnerTickWidth, $YPos, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha));
2322
+               $Bounds  = $this->drawText($XPos - $OuterTickWidth - 2, $YPos, $Value, array("Align"=>TEXT_ALIGN_MIDDLERIGHT));
2323
+               $TxtLeft = $XPos - $OuterTickWidth - 2 - ($Bounds[1]["X"] - $Bounds[0]["X"]);
2324
+               $MinLeft = min($MinLeft, $TxtLeft);
2325 2325
 
2326 2326
                $LastY = $YPos;
2327 2327
               }
2328 2328
 
2329
-             if ( isset($Parameters["Name"]) )
2329
+             if (isset($Parameters["Name"]))
2330 2330
               {
2331
-               $XPos    = $MinLeft-2;
2332
-               $YPos    = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2333
-               $Bounds  = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>90));
2331
+               $XPos    = $MinLeft - 2;
2332
+               $YPos    = $this->GraphAreaY1 + ($this->GraphAreaY2 - $this->GraphAreaY1)/2;
2333
+               $Bounds  = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE, "Angle"=>90));
2334 2334
                $MinLeft = $Bounds[2]["X"];
2335 2335
 
2336 2336
                $this->DataSet->Data["GraphArea"]["X1"] = $MinLeft;
@@ -2338,45 +2338,45 @@  discard block
 block discarded – undo
2338 2338
 
2339 2339
              $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2340 2340
             }
2341
-           elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2341
+           elseif ($Parameters["Position"] == AXIS_POSITION_RIGHT)
2342 2342
             {
2343
-             if ( $Floating )
2344
-              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2343
+             if ($Floating)
2344
+              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["R"], $this->GraphAreaY1 + $Parameters["Margin"], $AxisPos["R"], $this->GraphAreaY2 - $Parameters["Margin"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2345 2345
              else
2346
-              { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2346
+              { $FloatingOffset = 0; $this->drawLine($AxisPos["R"], $this->GraphAreaY1, $AxisPos["R"], $this->GraphAreaY2, array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2347 2347
 
2348
-             if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2348
+             if ($DrawArrows) { $this->drawArrow($AxisPos["R"], $this->GraphAreaY1 + $Parameters["Margin"], $AxisPos["R"], $this->GraphAreaY1 - ($ArrowSize*2), array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2349 2349
 
2350 2350
              $Height = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Parameters["Margin"]*2;
2351
-             $Step   = $Height / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MaxLeft = $AxisPos["R"];
2351
+             $Step   = $Height/$Parameters["Rows"]; $SubTicksSize = $Step/2; $MaxLeft = $AxisPos["R"];
2352 2352
              $LastY  = NULL;
2353
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2353
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2354 2354
               {
2355 2355
                $YPos  = $this->GraphAreaY2 - $Parameters["Margin"] - $Step*$i;
2356 2356
                $XPos  = $AxisPos["R"];
2357
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2357
+               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Parameters["Display"], $Parameters["Format"], $Parameters["Unit"]);
2358 2358
 
2359
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2360
-               if ( $LastY != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($this->GraphAreaX1+$FloatingOffset,$LastY,$this->GraphAreaX2-$FloatingOffset,$YPos,$BGColor); }
2359
+               if ($i%2 == 1) { $BGColor = array("R"=>$BackgroundR1, "G"=>$BackgroundG1, "B"=>$BackgroundB1, "Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2, "G"=>$BackgroundG2, "B"=>$BackgroundB2, "Alpha"=>$BackgroundAlpha2); }
2360
+               if ($LastY != NULL && $CycleBackground && ($DrawYLines == ALL || in_array($AxisID, $DrawYLines))) { $this->drawFilledRectangle($this->GraphAreaX1 + $FloatingOffset, $LastY, $this->GraphAreaX2 - $FloatingOffset, $YPos, $BGColor); }
2361 2361
 
2362
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2362
+               if ($DrawYLines == ALL || in_array($AxisID, $DrawYLines)) { $this->drawLine($this->GraphAreaX1 + $FloatingOffset, $YPos, $this->GraphAreaX2 - $FloatingOffset, $YPos, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2363 2363
 
2364
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2365
-                $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2364
+               if ($DrawSubTicks && $i != $Parameters["Rows"])
2365
+                $this->drawLine($XPos - $OuterSubTickWidth, $YPos - $SubTicksSize, $XPos + $InnerSubTickWidth, $YPos - $SubTicksSize, array("R"=>$SubTickR, "G"=>$SubTickG, "B"=>$SubTickB, "Alpha"=>$SubTickAlpha));
2366 2366
 
2367
-               $this->drawLine($XPos-$InnerTickWidth,$YPos,$XPos+$OuterTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2368
-               $Bounds  = $this->drawText($XPos+$OuterTickWidth+2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLELEFT));
2369
-               $TxtLeft = $XPos+$OuterTickWidth+2+($Bounds[1]["X"]-$Bounds[0]["X"]);
2370
-               $MaxLeft = max($MaxLeft,$TxtLeft);
2367
+               $this->drawLine($XPos - $InnerTickWidth, $YPos, $XPos + $OuterTickWidth, $YPos, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha));
2368
+               $Bounds  = $this->drawText($XPos + $OuterTickWidth + 2, $YPos, $Value, array("Align"=>TEXT_ALIGN_MIDDLELEFT));
2369
+               $TxtLeft = $XPos + $OuterTickWidth + 2 + ($Bounds[1]["X"] - $Bounds[0]["X"]);
2370
+               $MaxLeft = max($MaxLeft, $TxtLeft);
2371 2371
 
2372 2372
                $LastY = $YPos;
2373 2373
               }
2374 2374
 
2375
-             if ( isset($Parameters["Name"]) )
2375
+             if (isset($Parameters["Name"]))
2376 2376
               {
2377
-               $XPos    = $MaxLeft+6;
2378
-               $YPos    = $this->GraphAreaY1+($this->GraphAreaY2-$this->GraphAreaY1)/2;
2379
-               $Bounds  = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE,"Angle"=>270));
2377
+               $XPos    = $MaxLeft + 6;
2378
+               $YPos    = $this->GraphAreaY1 + ($this->GraphAreaY2 - $this->GraphAreaY1)/2;
2379
+               $Bounds  = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE, "Angle"=>270));
2380 2380
                $MaxLeft = $Bounds[2]["X"];
2381 2381
 
2382 2382
                $this->DataSet->Data["GraphArea"]["X2"] = $MaxLeft + $this->FontSize;
@@ -2384,47 +2384,47 @@  discard block
 block discarded – undo
2384 2384
              $AxisPos["R"] = $MaxLeft + $ScaleSpacing;
2385 2385
             }
2386 2386
           }
2387
-         elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2387
+         elseif ($Pos == SCALE_POS_TOPBOTTOM)
2388 2388
           {
2389
-           if ( $Parameters["Position"] == AXIS_POSITION_TOP )
2389
+           if ($Parameters["Position"] == AXIS_POSITION_TOP)
2390 2390
             {
2391
-             if ( $Floating )
2392
-              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2391
+             if ($Floating)
2392
+              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1 + $Parameters["Margin"], $AxisPos["T"], $this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["T"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2393 2393
              else
2394
-              { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2394
+              { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1, $AxisPos["T"], $this->GraphAreaX2, $AxisPos["T"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2395 2395
 
2396
-             if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2396
+             if ($DrawArrows) { $this->drawArrow($this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["T"], $this->GraphAreaX2 + ($ArrowSize*2), $AxisPos["T"], array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2397 2397
 
2398 2398
              $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2399
-             $Step   = $Width / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MinTop = $AxisPos["T"];
2399
+             $Step   = $Width/$Parameters["Rows"]; $SubTicksSize = $Step/2; $MinTop = $AxisPos["T"];
2400 2400
              $LastX  = NULL;
2401
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2401
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2402 2402
               {
2403 2403
                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2404 2404
                $YPos  = $AxisPos["T"];
2405
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2405
+               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Parameters["Display"], $Parameters["Format"], $Parameters["Unit"]);
2406 2406
 
2407
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2408
-               if ( $LastX != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($LastX,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$BGColor); }
2407
+               if ($i%2 == 1) { $BGColor = array("R"=>$BackgroundR1, "G"=>$BackgroundG1, "B"=>$BackgroundB1, "Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2, "G"=>$BackgroundG2, "B"=>$BackgroundB2, "Alpha"=>$BackgroundAlpha2); }
2408
+               if ($LastX != NULL && $CycleBackground && ($DrawYLines == ALL || in_array($AxisID, $DrawYLines))) { $this->drawFilledRectangle($LastX, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, $BGColor); }
2409 2409
 
2410
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2410
+               if ($DrawYLines == ALL || in_array($AxisID, $DrawYLines)) { $this->drawLine($XPos, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2411 2411
 
2412
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2413
-                $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2412
+               if ($DrawSubTicks && $i != $Parameters["Rows"])
2413
+                $this->drawLine($XPos + $SubTicksSize, $YPos - $OuterSubTickWidth, $XPos + $SubTicksSize, $YPos + $InnerSubTickWidth, array("R"=>$SubTickR, "G"=>$SubTickG, "B"=>$SubTickB, "Alpha"=>$SubTickAlpha));
2414 2414
 
2415
-               $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2416
-               $Bounds    = $this->drawText($XPos,$YPos-$OuterTickWidth-2,$Value,array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2417
-               $TxtHeight = $YPos-$OuterTickWidth-2-($Bounds[1]["Y"]-$Bounds[2]["Y"]);
2418
-               $MinTop    = min($MinTop,$TxtHeight);
2415
+               $this->drawLine($XPos, $YPos - $OuterTickWidth, $XPos, $YPos + $InnerTickWidth, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha));
2416
+               $Bounds    = $this->drawText($XPos, $YPos - $OuterTickWidth - 2, $Value, array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2417
+               $TxtHeight = $YPos - $OuterTickWidth - 2 - ($Bounds[1]["Y"] - $Bounds[2]["Y"]);
2418
+               $MinTop    = min($MinTop, $TxtHeight);
2419 2419
 
2420 2420
                $LastX = $XPos;
2421 2421
               }
2422 2422
 
2423
-             if ( isset($Parameters["Name"]) )
2423
+             if (isset($Parameters["Name"]))
2424 2424
               {
2425
-               $YPos   = $MinTop-2;
2426
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2427
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2425
+               $YPos   = $MinTop - 2;
2426
+               $XPos   = $this->GraphAreaX1 + ($this->GraphAreaX2 - $this->GraphAreaX1)/2;
2427
+               $Bounds = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
2428 2428
                $MinTop = $Bounds[2]["Y"];
2429 2429
 
2430 2430
                $this->DataSet->Data["GraphArea"]["Y1"] = $MinTop;
@@ -2432,45 +2432,45 @@  discard block
 block discarded – undo
2432 2432
 
2433 2433
              $AxisPos["T"] = $MinTop - $ScaleSpacing;
2434 2434
             }
2435
-           elseif ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
2435
+           elseif ($Parameters["Position"] == AXIS_POSITION_BOTTOM)
2436 2436
             {
2437
-             if ( $Floating )
2438
-              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2437
+             if ($Floating)
2438
+              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1 + $Parameters["Margin"], $AxisPos["B"], $this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["B"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2439 2439
              else
2440
-              { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2440
+              { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1, $AxisPos["B"], $this->GraphAreaX2, $AxisPos["B"], array("R"=>$AxisR, "G"=>$AxisG, "B"=>$AxisB, "Alpha"=>$AxisAlpha)); }
2441 2441
 
2442
-             if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
2442
+             if ($DrawArrows) { $this->drawArrow($this->GraphAreaX2 - $Parameters["Margin"], $AxisPos["B"], $this->GraphAreaX2 + ($ArrowSize*2), $AxisPos["B"], array("FillR"=>$AxisR, "FillG"=>$AxisG, "FillB"=>$AxisB, "Size"=>$ArrowSize)); }
2443 2443
 
2444 2444
              $Width = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Parameters["Margin"]*2;
2445
-             $Step   = $Width / $Parameters["Rows"]; $SubTicksSize = $Step /2; $MaxBottom = $AxisPos["B"];
2445
+             $Step   = $Width/$Parameters["Rows"]; $SubTicksSize = $Step/2; $MaxBottom = $AxisPos["B"];
2446 2446
              $LastX  = NULL;
2447
-             for($i=0;$i<=$Parameters["Rows"];$i++)
2447
+             for ($i = 0; $i <= $Parameters["Rows"]; $i++)
2448 2448
               {
2449 2449
                $XPos  = $this->GraphAreaX1 + $Parameters["Margin"] + $Step*$i;
2450 2450
                $YPos  = $AxisPos["B"];
2451
-               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Parameters["Display"],$Parameters["Format"],$Parameters["Unit"]);
2451
+               $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i, $Parameters["Display"], $Parameters["Format"], $Parameters["Unit"]);
2452 2452
 
2453
-               if ( $i%2 == 1 ) { $BGColor = array("R"=>$BackgroundR1,"G"=>$BackgroundG1,"B"=>$BackgroundB1,"Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2,"G"=>$BackgroundG2,"B"=>$BackgroundB2,"Alpha"=>$BackgroundAlpha2); }
2454
-               if ( $LastX != NULL && $CycleBackground  && ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) )) { $this->drawFilledRectangle($LastX,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$BGColor); }
2453
+               if ($i%2 == 1) { $BGColor = array("R"=>$BackgroundR1, "G"=>$BackgroundG1, "B"=>$BackgroundB1, "Alpha"=>$BackgroundAlpha1); } else { $BGColor = array("R"=>$BackgroundR2, "G"=>$BackgroundG2, "B"=>$BackgroundB2, "Alpha"=>$BackgroundAlpha2); }
2454
+               if ($LastX != NULL && $CycleBackground && ($DrawYLines == ALL || in_array($AxisID, $DrawYLines))) { $this->drawFilledRectangle($LastX, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, $BGColor); }
2455 2455
 
2456
-               if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2456
+               if ($DrawYLines == ALL || in_array($AxisID, $DrawYLines)) { $this->drawLine($XPos, $this->GraphAreaY1 + $FloatingOffset, $XPos, $this->GraphAreaY2 - $FloatingOffset, array("R"=>$GridR, "G"=>$GridG, "B"=>$GridB, "Alpha"=>$GridAlpha, "Ticks"=>$GridTicks)); }
2457 2457
 
2458
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2459
-                $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2458
+               if ($DrawSubTicks && $i != $Parameters["Rows"])
2459
+                $this->drawLine($XPos + $SubTicksSize, $YPos - $OuterSubTickWidth, $XPos + $SubTicksSize, $YPos + $InnerSubTickWidth, array("R"=>$SubTickR, "G"=>$SubTickG, "B"=>$SubTickB, "Alpha"=>$SubTickAlpha));
2460 2460
 
2461
-               $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2462
-               $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+2,$Value,array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2463
-               $TxtHeight = $YPos+$OuterTickWidth+2+($Bounds[1]["Y"]-$Bounds[2]["Y"]);
2464
-               $MaxBottom = max($MaxBottom,$TxtHeight);
2461
+               $this->drawLine($XPos, $YPos - $OuterTickWidth, $XPos, $YPos + $InnerTickWidth, array("R"=>$TickR, "G"=>$TickG, "B"=>$TickB, "Alpha"=>$TickAlpha));
2462
+               $Bounds    = $this->drawText($XPos, $YPos + $OuterTickWidth + 2, $Value, array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2463
+               $TxtHeight = $YPos + $OuterTickWidth + 2 + ($Bounds[1]["Y"] - $Bounds[2]["Y"]);
2464
+               $MaxBottom = max($MaxBottom, $TxtHeight);
2465 2465
 
2466 2466
                $LastX = $XPos;
2467 2467
               }
2468 2468
 
2469
-             if ( isset($Parameters["Name"]) )
2469
+             if (isset($Parameters["Name"]))
2470 2470
               {
2471
-               $YPos   = $MaxBottom+2;
2472
-               $XPos   = $this->GraphAreaX1+($this->GraphAreaX2-$this->GraphAreaX1)/2;
2473
-               $Bounds = $this->drawText($XPos,$YPos,$Parameters["Name"],array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2471
+               $YPos   = $MaxBottom + 2;
2472
+               $XPos   = $this->GraphAreaX1 + ($this->GraphAreaX2 - $this->GraphAreaX1)/2;
2473
+               $Bounds = $this->drawText($XPos, $YPos, $Parameters["Name"], array("Align"=>TEXT_ALIGN_TOPMIDDLE));
2474 2474
                $MaxBottom = $Bounds[0]["Y"];
2475 2475
 
2476 2476
                $this->DataSet->Data["GraphArea"]["Y2"] = $MaxBottom + $this->FontSize;
@@ -2483,107 +2483,107 @@  discard block
 block discarded – undo
2483 2483
       }
2484 2484
     }
2485 2485
 
2486
-   function isValidLabel($Value,$LastValue,$LabelingMethod,$ID,$LabelSkip)
2486
+   function isValidLabel($Value, $LastValue, $LabelingMethod, $ID, $LabelSkip)
2487 2487
     {
2488
-     if ( $LabelingMethod == LABELING_DIFFERENT && $Value != $LastValue ) { return(TRUE); }
2489
-     if ( $LabelingMethod == LABELING_DIFFERENT && $Value == $LastValue ) { return(FALSE); }
2490
-     if ( $LabelingMethod == LABELING_ALL && $LabelSkip == 0 ) { return(TRUE); }
2491
-     if ( $LabelingMethod == LABELING_ALL && ($ID+$LabelSkip) % ($LabelSkip+1) != 1 ) { return(FALSE); }
2488
+     if ($LabelingMethod == LABELING_DIFFERENT && $Value != $LastValue) { return(TRUE); }
2489
+     if ($LabelingMethod == LABELING_DIFFERENT && $Value == $LastValue) { return(FALSE); }
2490
+     if ($LabelingMethod == LABELING_ALL && $LabelSkip == 0) { return(TRUE); }
2491
+     if ($LabelingMethod == LABELING_ALL && ($ID + $LabelSkip)%($LabelSkip + 1) != 1) { return(FALSE); }
2492 2492
 
2493 2493
      return(TRUE);
2494 2494
     }
2495 2495
 
2496 2496
    /* Compute the scale, check for the best visual factors */
2497
-   function computeScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID=0)
2497
+   function computeScale($XMin, $XMax, $MaxDivs, $Factors, $AxisID = 0)
2498 2498
     {
2499 2499
      /* Compute each factors */
2500 2500
      $Results = "";
2501 2501
      foreach ($Factors as $Key => $Factor)
2502
-      $Results[$Factor] = $this->processScale($XMin,$XMax,$MaxDivs,array($Factor),$AxisID);
2502
+      $Results[$Factor] = $this->processScale($XMin, $XMax, $MaxDivs, array($Factor), $AxisID);
2503 2503
 
2504 2504
      /* Remove scales that are creating to much decimals */
2505 2505
      $GoodScaleFactors = "";
2506 2506
      foreach ($Results as $Key => $Result)
2507 2507
       {
2508
-       $Decimals = preg_split("/\./",$Result["RowHeight"]);
2509
-       if ( (!isset($Decimals[1])) || (strlen($Decimals[1]) < 6) ) { $GoodScaleFactors[] = $Key; }
2508
+       $Decimals = preg_split("/\./", $Result["RowHeight"]);
2509
+       if ((!isset($Decimals[1])) || (strlen($Decimals[1]) < 6)) { $GoodScaleFactors[] = $Key; }
2510 2510
       }
2511 2511
 
2512 2512
      /* Found no correct scale, shame,... returns the 1st one as default */
2513
-     if ( $GoodScaleFactors == "" ) { return($Results[$Factors[0]]); }
2513
+     if ($GoodScaleFactors == "") { return($Results[$Factors[0]]); }
2514 2514
 
2515 2515
      /* Find the factor that cause the maximum number of Rows */
2516 2516
      $MaxRows = 0; $BestFactor = 0;
2517
-     foreach($GoodScaleFactors as $Key => $Factor)
2518
-      { if ( $Results[$Factor]["Rows"] > $MaxRows ) { $MaxRows = $Results[$Factor]["Rows"]; $BestFactor = $Factor; } }
2517
+     foreach ($GoodScaleFactors as $Key => $Factor)
2518
+      { if ($Results[$Factor]["Rows"] > $MaxRows) { $MaxRows = $Results[$Factor]["Rows"]; $BestFactor = $Factor; } }
2519 2519
 
2520 2520
      /* Return the best visual scale */
2521 2521
      return($Results[$BestFactor]);
2522 2522
     }
2523 2523
 
2524 2524
    /* Compute the best matching scale based on size & factors */
2525
-   function processScale($XMin,$XMax,$MaxDivs,$Factors,$AxisID)
2525
+   function processScale($XMin, $XMax, $MaxDivs, $Factors, $AxisID)
2526 2526
     {
2527
-     $ScaleHeight = abs(ceil($XMax)-floor($XMin));
2527
+     $ScaleHeight = abs(ceil($XMax) - floor($XMin));
2528 2528
 
2529
-     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Format"]) )
2529
+     if (isset($this->DataSet->Data["Axis"][$AxisID]["Format"]))
2530 2530
       $Format = $this->DataSet->Data["Axis"][$AxisID]["Format"];
2531 2531
      else
2532 2532
       $Format = NULL;
2533 2533
 
2534
-     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Display"]) )
2534
+     if (isset($this->DataSet->Data["Axis"][$AxisID]["Display"]))
2535 2535
       $Mode = $this->DataSet->Data["Axis"][$AxisID]["Display"];
2536 2536
      else
2537 2537
       $Mode = AXIS_FORMAT_DEFAULT;
2538 2538
 
2539 2539
      $Scale = "";
2540
-     if ( $XMin != $XMax )
2540
+     if ($XMin != $XMax)
2541 2541
       {
2542 2542
        $Found = FALSE; $Rescaled = FALSE; $Scaled10Factor = .0001; $Result = 0;
2543
-       while(!$Found)
2543
+       while (!$Found)
2544 2544
         {
2545
-         foreach($Factors as $Key => $Factor)
2545
+         foreach ($Factors as $Key => $Factor)
2546 2546
           {
2547
-           if ( !$Found )
2547
+           if (!$Found)
2548 2548
             {
2549
-             if ( !($this->modulo($XMin,$Factor*$Scaled10Factor) == 0) || ($XMin != floor($XMin))) { $XMinRescaled = floor($XMin/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor; } else { $XMinRescaled = $XMin; }
2550
-             if ( !($this->modulo($XMax,$Factor*$Scaled10Factor) == 0) || ($XMax != floor($XMax))) { $XMaxRescaled = floor($XMax/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor+($Factor*$Scaled10Factor); } else { $XMaxRescaled = $XMax; }
2551
-             $ScaleHeightRescaled = abs($XMaxRescaled-$XMinRescaled);
2549
+             if (!($this->modulo($XMin, $Factor*$Scaled10Factor) == 0) || ($XMin != floor($XMin))) { $XMinRescaled = floor($XMin/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor; } else { $XMinRescaled = $XMin; }
2550
+             if (!($this->modulo($XMax, $Factor*$Scaled10Factor) == 0) || ($XMax != floor($XMax))) { $XMaxRescaled = floor($XMax/($Factor*$Scaled10Factor))*$Factor*$Scaled10Factor + ($Factor*$Scaled10Factor); } else { $XMaxRescaled = $XMax; }
2551
+             $ScaleHeightRescaled = abs($XMaxRescaled - $XMinRescaled);
2552 2552
 
2553
-             if ( !$Found && floor($ScaleHeightRescaled/($Factor*$Scaled10Factor)) <= $MaxDivs ) { $Found = TRUE; $Rescaled = TRUE; $Result = $Factor * $Scaled10Factor; }
2553
+             if (!$Found && floor($ScaleHeightRescaled/($Factor*$Scaled10Factor)) <= $MaxDivs) { $Found = TRUE; $Rescaled = TRUE; $Result = $Factor*$Scaled10Factor; }
2554 2554
             }
2555 2555
           }
2556
-         $Scaled10Factor = $Scaled10Factor * 10;
2556
+         $Scaled10Factor = $Scaled10Factor*10;
2557 2557
         }
2558 2558
 
2559 2559
        /* ReCall Min / Max / Height */
2560
-       if ( $Rescaled ) { $XMin = $XMinRescaled; $XMax = $XMaxRescaled; $ScaleHeight = $ScaleHeightRescaled; }
2560
+       if ($Rescaled) { $XMin = $XMinRescaled; $XMax = $XMaxRescaled; $ScaleHeight = $ScaleHeightRescaled; }
2561 2561
 
2562 2562
        /* Compute rows size */
2563
-       $Rows      = floor($ScaleHeight / $Result); if ( $Rows == 0 ) { $Rows = 1; }
2564
-       $RowHeight = $ScaleHeight / $Rows;
2563
+       $Rows      = floor($ScaleHeight/$Result); if ($Rows == 0) { $Rows = 1; }
2564
+       $RowHeight = $ScaleHeight/$Rows;
2565 2565
 
2566 2566
        /* Return the results */
2567
-       $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin;  $Scale["XMax"] = $XMax;
2567
+       $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin; $Scale["XMax"] = $XMax;
2568 2568
 
2569 2569
        /* Compute the needed decimals for the metric view to avoid repetition of the same X Axis labels */
2570
-       if ( $Mode == AXIS_FORMAT_METRIC && $Format == NULL )
2570
+       if ($Mode == AXIS_FORMAT_METRIC && $Format == NULL)
2571 2571
         {
2572 2572
          $Done = FALSE; $GoodDecimals = 0;
2573
-         for($Decimals=0;$Decimals<=10;$Decimals++)
2573
+         for ($Decimals = 0; $Decimals <= 10; $Decimals++)
2574 2574
           {
2575
-           if ( !$Done )
2575
+           if (!$Done)
2576 2576
             {
2577 2577
              $LastLabel = "zob"; $ScaleOK = TRUE;
2578
-             for($i=0;$i<=$Rows;$i++)
2578
+             for ($i = 0; $i <= $Rows; $i++)
2579 2579
               {
2580 2580
                $Value = $XMin + $i*$RowHeight;
2581
-               $Label = $this->scaleFormat($Value,AXIS_FORMAT_METRIC,$Decimals);
2581
+               $Label = $this->scaleFormat($Value, AXIS_FORMAT_METRIC, $Decimals);
2582 2582
 
2583
-               if ( $LastLabel == $Label ) { $ScaleOK = FALSE; }
2583
+               if ($LastLabel == $Label) { $ScaleOK = FALSE; }
2584 2584
                $LastLabel = $Label;
2585 2585
               }
2586
-             if ( $ScaleOK ) { $Done = TRUE; $GoodDecimals = $Decimals; }
2586
+             if ($ScaleOK) { $Done = TRUE; $GoodDecimals = $Decimals; }
2587 2587
             }
2588 2588
           }
2589 2589
 
@@ -2593,87 +2593,87 @@  discard block
 block discarded – undo
2593 2593
      else
2594 2594
       {
2595 2595
        /* If all values are the same we keep a +1/-1 scale */
2596
-       $Rows = 2; $XMin = $XMax-1; $XMax = $XMax+1; $RowHeight = 1;
2596
+       $Rows = 2; $XMin = $XMax - 1; $XMax = $XMax + 1; $RowHeight = 1;
2597 2597
 
2598 2598
        /* Return the results */
2599
-       $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin;  $Scale["XMax"] = $XMax;
2599
+       $Scale["Rows"] = $Rows; $Scale["RowHeight"] = $RowHeight; $Scale["XMin"] = $XMin; $Scale["XMax"] = $XMax;
2600 2600
       }
2601 2601
 
2602 2602
      return($Scale);
2603 2603
     }
2604 2604
 
2605
-   function modulo($Value1,$Value2)
2605
+   function modulo($Value1, $Value2)
2606 2606
     {
2607 2607
      if (floor($Value2) == 0) { return(0); }
2608
-     if (floor($Value2) != 0) { return($Value1 % $Value2); }
2608
+     if (floor($Value2) != 0) { return($Value1%$Value2); }
2609 2609
 
2610
-     $MinValue = min($Value1,$Value2); $Factor = 10;
2611
-     while ( floor($MinValue*$Factor) == 0 )
2612
-      { $Factor = $Factor * 10; }
2610
+     $MinValue = min($Value1, $Value2); $Factor = 10;
2611
+     while (floor($MinValue*$Factor) == 0)
2612
+      { $Factor = $Factor*10; }
2613 2613
 
2614
-     return(($Value1*$Factor) % ($Value2*$Factor));
2614
+     return(($Value1*$Factor)%($Value2*$Factor));
2615 2615
     }
2616 2616
 
2617 2617
    /* Draw an X threshold */
2618
-   function drawXThreshold($Value,$Format="")
2618
+   function drawXThreshold($Value, $Format = "")
2619 2619
     {
2620 2620
      $R			= isset($Format["R"]) ? $Format["R"] : 255;
2621 2621
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
2622 2622
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
2623 2623
      $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 50;
2624
-     $Weight		= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2624
+     $Weight = isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2625 2625
      $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : 6;
2626
-     $Wide		= isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2627
-     $WideFactor	= isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2626
+     $Wide = isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2627
+     $WideFactor = isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2628 2628
      $WriteCaption	= isset($Format["WriteCaption"]) ? $Format["WriteCaption"] : FALSE;
2629
-     $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2629
+     $Caption = isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2630 2630
      $CaptionAlign	= isset($Format["CaptionAlign"]) ? $Format["CaptionAlign"] : CAPTION_LEFT_TOP;
2631
-     $CaptionOffset     = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 5;
2631
+     $CaptionOffset = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 5;
2632 2632
      $CaptionR		= isset($Format["CaptionR"]) ? $Format["CaptionR"] : 255;
2633 2633
      $CaptionG		= isset($Format["CaptionG"]) ? $Format["CaptionG"] : 255;
2634 2634
      $CaptionB		= isset($Format["CaptionB"]) ? $Format["CaptionB"] : 255;
2635 2635
      $CaptionAlpha	= isset($Format["CaptionAlpha"]) ? $Format["CaptionAlpha"] : 100;
2636
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2636
+     $DrawBox = isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2637 2637
      $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
2638 2638
      $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 3;
2639
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2639
+     $BoxRounded = isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2640 2640
      $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
2641 2641
      $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
2642 2642
      $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
2643 2643
      $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
2644
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 30;
2645
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2644
+     $BoxAlpha = isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 30;
2645
+     $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2646 2646
      $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
2647 2647
      $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
2648 2648
      $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
2649 2649
      $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2650
-     $ValueIsLabel	= isset($Format["ValueIsLabel"]) ? $Format["ValueIsLabel"] : FALSE;
2650
+     $ValueIsLabel = isset($Format["ValueIsLabel"]) ? $Format["ValueIsLabel"] : FALSE;
2651 2651
 
2652 2652
      $Data           = $this->DataSet->getData();
2653 2653
      $AbscissaMargin = $this->getAbscissaMargin($Data);
2654 2654
      $XScale         = $this->scaleGetXSettings();
2655 2655
 
2656
-     if ( is_array($Value) ) { foreach ($Value as $Key => $ID) { $this->drawXThreshold($ID,$Format); } return(0); }
2656
+     if (is_array($Value)) { foreach ($Value as $Key => $ID) { $this->drawXThreshold($ID, $Format); } return(0); }
2657 2657
 
2658
-     if ( $ValueIsLabel )
2658
+     if ($ValueIsLabel)
2659 2659
       {
2660 2660
        $Format["ValueIsLabel"] = FALSE;
2661
-       foreach($Data["Series"][$Data["Abscissa"]]["Data"] as $Key => $SerieValue)
2662
-        { if ( $SerieValue == $Value ) { $this->drawXThreshold($Key,$Format); } }
2661
+       foreach ($Data["Series"][$Data["Abscissa"]]["Data"] as $Key => $SerieValue)
2662
+        { if ($SerieValue == $Value) { $this->drawXThreshold($Key, $Format); } }
2663 2663
 
2664 2664
        return(0);
2665 2665
       }
2666 2666
 
2667
-     $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
2668
-                              "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
2669
-                              "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha,
2670
-                              "R"=>$CaptionR,"G"=>$CaptionG,"B"=>$CaptionB,"Alpha"=>$CaptionAlpha);
2667
+     $CaptionSettings = array("DrawBox"=>$DrawBox, "DrawBoxBorder"=>$DrawBoxBorder, "BorderOffset"=>$BorderOffset, "BoxRounded"=>$BoxRounded, "RoundedRadius"=>$RoundedRadius,
2668
+                              "BoxR"=>$BoxR, "BoxG"=>$BoxG, "BoxB"=>$BoxB, "BoxAlpha"=>$BoxAlpha, "BoxSurrounding"=>$BoxSurrounding,
2669
+                              "BoxBorderR"=>$BoxBorderR, "BoxBorderG"=>$BoxBorderG, "BoxBorderB"=>$BoxBorderB, "BoxBorderAlpha"=>$BoxBorderAlpha,
2670
+                              "R"=>$CaptionR, "G"=>$CaptionG, "B"=>$CaptionB, "Alpha"=>$CaptionAlpha);
2671 2671
 
2672
-     if ( $Caption == NULL )
2672
+     if ($Caption == NULL)
2673 2673
       {
2674
-       if ( isset($Data["Abscissa"]) )
2674
+       if (isset($Data["Abscissa"]))
2675 2675
         {
2676
-         if ( isset($Data["Series"][$Data["Abscissa"]]["Data"][$Value]) )
2676
+         if (isset($Data["Series"][$Data["Abscissa"]]["Data"][$Value]))
2677 2677
           $Caption = $Data["Series"][$Data["Abscissa"]]["Data"][$Value];
2678 2678
          else
2679 2679
           $Caption = $Value;
@@ -2682,61 +2682,61 @@  discard block
 block discarded – undo
2682 2682
         $Caption = $Value;
2683 2683
       }
2684 2684
 
2685
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2685
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
2686 2686
       {
2687
-       $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0] *2 ) / $XScale[1];
2688
-       $XPos  = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value;
2687
+       $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0]*2)/$XScale[1];
2688
+       $XPos  = $this->GraphAreaX1 + $XScale[0] + $XStep*$Value;
2689 2689
        $YPos1 = $this->GraphAreaY1 + $Data["YMargin"];
2690 2690
        $YPos2 = $this->GraphAreaY2 - $Data["YMargin"];
2691 2691
 
2692
-       if ( $XPos >= $this->GraphAreaX1 + $AbscissaMargin && $XPos <= $this->GraphAreaX2 - $AbscissaMargin )
2692
+       if ($XPos >= $this->GraphAreaX1 + $AbscissaMargin && $XPos <= $this->GraphAreaX2 - $AbscissaMargin)
2693 2693
         {
2694
-         $this->drawLine($XPos,$YPos1,$XPos,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2694
+         $this->drawLine($XPos, $YPos1, $XPos, $YPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
2695 2695
 
2696
-         if ( $Wide )
2696
+         if ($Wide)
2697 2697
           {
2698
-           $this->drawLine($XPos-1,$YPos1,$XPos-1,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2699
-           $this->drawLine($XPos+1,$YPos1,$XPos+1,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2698
+           $this->drawLine($XPos - 1, $YPos1, $XPos - 1, $YPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2699
+           $this->drawLine($XPos + 1, $YPos1, $XPos + 1, $YPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2700 2700
           }
2701 2701
 
2702
-         if ( $WriteCaption )
2702
+         if ($WriteCaption)
2703 2703
           {
2704
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2704
+           if ($CaptionAlign == CAPTION_LEFT_TOP)
2705 2705
             { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; }
2706 2706
            else 
2707 2707
             { $Y = $YPos2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_BOTTOMMIDDLE; }
2708 2708
            
2709
-           $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
2709
+           $this->drawText($XPos, $Y, $Caption, $CaptionSettings);
2710 2710
           }
2711 2711
 
2712 2712
          return(array("X"=>$XPos));
2713 2713
         }
2714 2714
       }
2715
-     elseif( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2715
+     elseif ($Data["Orientation"] == SCALE_POS_TOPBOTTOM)
2716 2716
       {
2717
-       $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2718
-       $XPos  = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value;
2717
+       $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0]*2)/$XScale[1];
2718
+       $XPos  = $this->GraphAreaY1 + $XScale[0] + $XStep*$Value;
2719 2719
        $YPos1 = $this->GraphAreaX1 + $Data["YMargin"];
2720 2720
        $YPos2 = $this->GraphAreaX2 - $Data["YMargin"];
2721 2721
 
2722
-       if ( $XPos >= $this->GraphAreaY1 + $AbscissaMargin && $XPos <= $this->GraphAreaY2 - $AbscissaMargin )
2722
+       if ($XPos >= $this->GraphAreaY1 + $AbscissaMargin && $XPos <= $this->GraphAreaY2 - $AbscissaMargin)
2723 2723
         {
2724
-         $this->drawLine($YPos1,$XPos,$YPos2,$XPos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2724
+         $this->drawLine($YPos1, $XPos, $YPos2, $XPos, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
2725 2725
 
2726
-         if ( $Wide )
2726
+         if ($Wide)
2727 2727
           {
2728
-           $this->drawLine($YPos1,$XPos-1,$YPos2,$XPos-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2729
-           $this->drawLine($YPos1,$XPos+1,$YPos2,$XPos+1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2728
+           $this->drawLine($YPos1, $XPos - 1, $YPos2, $XPos - 1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2729
+           $this->drawLine($YPos1, $XPos + 1, $YPos2, $XPos + 1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2730 2730
           }
2731 2731
 
2732
-         if ( $WriteCaption )
2732
+         if ($WriteCaption)
2733 2733
           {
2734
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2734
+           if ($CaptionAlign == CAPTION_LEFT_TOP)
2735 2735
             { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; }
2736 2736
            else 
2737 2737
             { $Y = $YPos2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLERIGHT; }
2738 2738
            
2739
-           $this->drawText($Y,$XPos,$Caption,$CaptionSettings);
2739
+           $this->drawText($Y, $XPos, $Caption, $CaptionSettings);
2740 2740
           }
2741 2741
 
2742 2742
          return(array("X"=>$XPos));
@@ -2745,12 +2745,12 @@  discard block
 block discarded – undo
2745 2745
     }
2746 2746
 
2747 2747
    /* Draw an X threshold area */
2748
-   function drawXThresholdArea($Value1,$Value2,$Format="")
2748
+   function drawXThresholdArea($Value1, $Value2, $Format = "")
2749 2749
     {
2750 2750
      $R		= isset($Format["R"]) ? $Format["R"] : 255;
2751 2751
      $G		= isset($Format["G"]) ? $Format["G"] : 0;
2752 2752
      $B		= isset($Format["B"]) ? $Format["B"] : 0;
2753
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2753
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2754 2754
      $Border    = isset($Format["Border"]) ? $Format["Border"] : TRUE;
2755 2755
      $BorderR   = isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
2756 2756
      $BorderG   = isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
@@ -2762,199 +2762,199 @@  discard block
 block discarded – undo
2762 2762
      $NameR	= isset($Format["NameR"]) ? $Format["NameR"] : 255;
2763 2763
      $NameG	= isset($Format["NameG"]) ? $Format["NameG"] : 255;
2764 2764
      $NameB	= isset($Format["NameB"]) ? $Format["NameB"] : 255;
2765
-     $NameAlpha	= isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2765
+     $NameAlpha = isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2766 2766
      $DisableShadowOnArea = isset($Format["DisableShadowOnArea"]) ? $Format["DisableShadowOnArea"] : TRUE;
2767 2767
 
2768 2768
      $RestoreShadow = $this->Shadow;
2769
-     if ( $DisableShadowOnArea && $this->Shadow ) { $this->Shadow = FALSE; }
2769
+     if ($DisableShadowOnArea && $this->Shadow) { $this->Shadow = FALSE; }
2770 2770
 
2771
-     if ($BorderAlpha >100) { $BorderAlpha = 100;}
2771
+     if ($BorderAlpha > 100) { $BorderAlpha = 100; }
2772 2772
 
2773 2773
      $Data           = $this->DataSet->getData();
2774 2774
      $XScale         = $this->scaleGetXSettings();
2775 2775
      $AbscissaMargin = $this->getAbscissaMargin($Data);
2776 2776
 
2777
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2777
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
2778 2778
       {
2779
-       $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0] *2 ) / $XScale[1];
2780
-       $XPos1 = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value1;
2781
-       $XPos2 = $this->GraphAreaX1 + $XScale[0] + $XStep * $Value2;
2779
+       $XStep = (($this->GraphAreaX2 - $this->GraphAreaX1) - $XScale[0]*2)/$XScale[1];
2780
+       $XPos1 = $this->GraphAreaX1 + $XScale[0] + $XStep*$Value1;
2781
+       $XPos2 = $this->GraphAreaX1 + $XScale[0] + $XStep*$Value2;
2782 2782
        $YPos1 = $this->GraphAreaY1 + $Data["YMargin"];
2783 2783
        $YPos2 = $this->GraphAreaY2 - $Data["YMargin"];
2784 2784
 
2785
-       if ( $XPos1 < $this->GraphAreaX1 + $XScale[0] ) { $XPos1 = $this->GraphAreaX1 + $XScale[0]; }
2786
-       if ( $XPos1 > $this->GraphAreaX2 - $XScale[0] ) { $XPos1 = $this->GraphAreaX2 - $XScale[0]; }
2787
-       if ( $XPos2 < $this->GraphAreaX1 + $XScale[0] ) { $XPos2 = $this->GraphAreaX1 + $XScale[0]; }
2788
-       if ( $XPos2 > $this->GraphAreaX2 - $XScale[0] ) { $XPos2 = $this->GraphAreaX2 - $XScale[0]; }
2785
+       if ($XPos1 < $this->GraphAreaX1 + $XScale[0]) { $XPos1 = $this->GraphAreaX1 + $XScale[0]; }
2786
+       if ($XPos1 > $this->GraphAreaX2 - $XScale[0]) { $XPos1 = $this->GraphAreaX2 - $XScale[0]; }
2787
+       if ($XPos2 < $this->GraphAreaX1 + $XScale[0]) { $XPos2 = $this->GraphAreaX1 + $XScale[0]; }
2788
+       if ($XPos2 > $this->GraphAreaX2 - $XScale[0]) { $XPos2 = $this->GraphAreaX2 - $XScale[0]; }
2789 2789
 
2790
-       $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
2790
+       $this->drawFilledRectangle($XPos1, $YPos1, $XPos2, $YPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
2791 2791
 
2792
-       if ( $Border )
2792
+       if ($Border)
2793 2793
         {
2794
-         $this->drawLine($XPos1,$YPos1,$XPos1,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2795
-         $this->drawLine($XPos2,$YPos1,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2794
+         $this->drawLine($XPos1, $YPos1, $XPos1, $YPos2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
2795
+         $this->drawLine($XPos2, $YPos1, $XPos2, $YPos2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
2796 2796
         }
2797 2797
 
2798
-       if ( $AreaName != NULL )
2798
+       if ($AreaName != NULL)
2799 2799
         {
2800
-         $XPos = ($XPos2-$XPos1)/2 + $XPos1;
2801
-         $YPos = ($YPos2-$YPos1)/2 + $YPos1;
2800
+         $XPos = ($XPos2 - $XPos1)/2 + $XPos1;
2801
+         $YPos = ($YPos2 - $YPos1)/2 + $YPos1;
2802 2802
 
2803
-         if ( $NameAngle == ZONE_NAME_ANGLE_AUTO )
2803
+         if ($NameAngle == ZONE_NAME_ANGLE_AUTO)
2804 2804
           {
2805
-           $TxtPos   = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$AreaName);
2805
+           $TxtPos   = $this->getTextBox($XPos, $YPos, $this->FontName, $this->FontSize, 0, $AreaName);
2806 2806
            $TxtWidth = $TxtPos[1]["X"] - $TxtPos[0]["X"];
2807
-           if ( abs($XPos2 - $XPos1) > $TxtWidth ) { $NameAngle = 0; } else { $NameAngle = 90; }
2807
+           if (abs($XPos2 - $XPos1) > $TxtWidth) { $NameAngle = 0; } else { $NameAngle = 90; }
2808 2808
           }
2809 2809
          $this->Shadow = $RestoreShadow;
2810
-         $this->drawText($XPos,$YPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>$NameAngle,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2811
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
2810
+         $this->drawText($XPos, $YPos, $AreaName, array("R"=>$NameR, "G"=>$NameG, "B"=>$NameB, "Alpha"=>$NameAlpha, "Angle"=>$NameAngle, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2811
+         if ($DisableShadowOnArea) { $this->Shadow = FALSE; }
2812 2812
         }
2813 2813
 
2814 2814
        $this->Shadow = $RestoreShadow;
2815
-       return(array("X1"=>$XPos1,"X2"=>$XPos2));
2815
+       return(array("X1"=>$XPos1, "X2"=>$XPos2));
2816 2816
       }
2817
-     elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2817
+     elseif ($Data["Orientation"] == SCALE_POS_TOPBOTTOM)
2818 2818
       {
2819
-       $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2820
-       $XPos1 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value1;
2821
-       $XPos2 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value2;
2819
+       $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0]*2)/$XScale[1];
2820
+       $XPos1 = $this->GraphAreaY1 + $XScale[0] + $XStep*$Value1;
2821
+       $XPos2 = $this->GraphAreaY1 + $XScale[0] + $XStep*$Value2;
2822 2822
        $YPos1 = $this->GraphAreaX1 + $Data["YMargin"];
2823 2823
        $YPos2 = $this->GraphAreaX2 - $Data["YMargin"];
2824 2824
 
2825
-       if ( $XPos1 < $this->GraphAreaY1 + $XScale[0] ) { $XPos1 = $this->GraphAreaY1 + $XScale[0]; }
2826
-       if ( $XPos1 > $this->GraphAreaY2 - $XScale[0] ) { $XPos1 = $this->GraphAreaY2 - $XScale[0]; }
2827
-       if ( $XPos2 < $this->GraphAreaY1 + $XScale[0] ) { $XPos2 = $this->GraphAreaY1 + $XScale[0]; }
2828
-       if ( $XPos2 > $this->GraphAreaY2 - $XScale[0] ) { $XPos2 = $this->GraphAreaY2 - $XScale[0]; }
2825
+       if ($XPos1 < $this->GraphAreaY1 + $XScale[0]) { $XPos1 = $this->GraphAreaY1 + $XScale[0]; }
2826
+       if ($XPos1 > $this->GraphAreaY2 - $XScale[0]) { $XPos1 = $this->GraphAreaY2 - $XScale[0]; }
2827
+       if ($XPos2 < $this->GraphAreaY1 + $XScale[0]) { $XPos2 = $this->GraphAreaY1 + $XScale[0]; }
2828
+       if ($XPos2 > $this->GraphAreaY2 - $XScale[0]) { $XPos2 = $this->GraphAreaY2 - $XScale[0]; }
2829 2829
 
2830
-       $this->drawFilledRectangle($YPos1,$XPos1,$YPos2,$XPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
2830
+       $this->drawFilledRectangle($YPos1, $XPos1, $YPos2, $XPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
2831 2831
 
2832
-       if ( $Border )
2832
+       if ($Border)
2833 2833
         {
2834
-         $this->drawLine($YPos1,$XPos1,$YPos2,$XPos1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2835
-         $this->drawLine($YPos1,$XPos2,$YPos2,$XPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
2834
+         $this->drawLine($YPos1, $XPos1, $YPos2, $XPos1, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
2835
+         $this->drawLine($YPos1, $XPos2, $YPos2, $XPos2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
2836 2836
         }
2837 2837
 
2838
-       if ( $AreaName != NULL )
2838
+       if ($AreaName != NULL)
2839 2839
         {
2840
-         $XPos = ($XPos2-$XPos1)/2 + $XPos1;
2841
-         $YPos = ($YPos2-$YPos1)/2 + $YPos1;
2840
+         $XPos = ($XPos2 - $XPos1)/2 + $XPos1;
2841
+         $YPos = ($YPos2 - $YPos1)/2 + $YPos1;
2842 2842
 
2843 2843
          $this->Shadow = $RestoreShadow;
2844
-         $this->drawText($YPos,$XPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>0,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2845
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
2844
+         $this->drawText($YPos, $XPos, $AreaName, array("R"=>$NameR, "G"=>$NameG, "B"=>$NameB, "Alpha"=>$NameAlpha, "Angle"=>0, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
2845
+         if ($DisableShadowOnArea) { $this->Shadow = FALSE; }
2846 2846
         }
2847 2847
 
2848 2848
        $this->Shadow = $RestoreShadow;
2849
-       return(array("X1"=>$XPos1,"X2"=>$XPos2));
2849
+       return(array("X1"=>$XPos1, "X2"=>$XPos2));
2850 2850
       }
2851 2851
     }
2852 2852
 
2853 2853
    /* Draw an Y threshold with the computed scale */
2854
-   function drawThreshold($Value,$Format="")
2854
+   function drawThreshold($Value, $Format = "")
2855 2855
     {
2856
-     $AxisID		= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2856
+     $AxisID = isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2857 2857
      $R			= isset($Format["R"]) ? $Format["R"] : 255;
2858 2858
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
2859 2859
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
2860 2860
      $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 50;
2861
-     $Weight		= isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2861
+     $Weight = isset($Format["Weight"]) ? $Format["Weight"] : NULL;
2862 2862
      $Ticks		= isset($Format["Ticks"]) ? $Format["Ticks"] : 6;
2863
-     $Wide		= isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2864
-     $WideFactor	= isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2863
+     $Wide = isset($Format["Wide"]) ? $Format["Wide"] : FALSE;
2864
+     $WideFactor = isset($Format["WideFactor"]) ? $Format["WideFactor"] : 5;
2865 2865
      $WriteCaption	= isset($Format["WriteCaption"]) ? $Format["WriteCaption"] : FALSE;
2866
-     $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2866
+     $Caption = isset($Format["Caption"]) ? $Format["Caption"] : NULL;
2867 2867
      $CaptionAlign	= isset($Format["CaptionAlign"]) ? $Format["CaptionAlign"] : CAPTION_LEFT_TOP;
2868
-     $CaptionOffset     = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 10;
2868
+     $CaptionOffset = isset($Format["CaptionOffset"]) ? $Format["CaptionOffset"] : 10;
2869 2869
      $CaptionR		= isset($Format["CaptionR"]) ? $Format["CaptionR"] : 255;
2870 2870
      $CaptionG		= isset($Format["CaptionG"]) ? $Format["CaptionG"] : 255;
2871 2871
      $CaptionB		= isset($Format["CaptionB"]) ? $Format["CaptionB"] : 255;
2872 2872
      $CaptionAlpha	= isset($Format["CaptionAlpha"]) ? $Format["CaptionAlpha"] : 100;
2873
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2873
+     $DrawBox = isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
2874 2874
      $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
2875 2875
      $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
2876
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2876
+     $BoxRounded = isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
2877 2877
      $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
2878 2878
      $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
2879 2879
      $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
2880 2880
      $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
2881
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
2882
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2881
+     $BoxAlpha = isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
2882
+     $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
2883 2883
      $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
2884 2884
      $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
2885 2885
      $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
2886
-     $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2887
-     $NoMargin		= isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2886
+     $BoxBorderAlpha = isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
2887
+     $NoMargin = isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2888 2888
 
2889
-     if ( is_array($Value) ) { foreach ($Value as $Key => $ID) { $this->drawThreshold($ID,$Format); } return(0); }
2889
+     if (is_array($Value)) { foreach ($Value as $Key => $ID) { $this->drawThreshold($ID, $Format); } return(0); }
2890 2890
 
2891
-     $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
2892
-                              "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
2893
-                              "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha,
2894
-                              "R"=>$CaptionR,"G"=>$CaptionG,"B"=>$CaptionB,"Alpha"=>$CaptionAlpha);
2891
+     $CaptionSettings = array("DrawBox"=>$DrawBox, "DrawBoxBorder"=>$DrawBoxBorder, "BorderOffset"=>$BorderOffset, "BoxRounded"=>$BoxRounded, "RoundedRadius"=>$RoundedRadius,
2892
+                              "BoxR"=>$BoxR, "BoxG"=>$BoxG, "BoxB"=>$BoxB, "BoxAlpha"=>$BoxAlpha, "BoxSurrounding"=>$BoxSurrounding,
2893
+                              "BoxBorderR"=>$BoxBorderR, "BoxBorderG"=>$BoxBorderG, "BoxBorderB"=>$BoxBorderB, "BoxBorderAlpha"=>$BoxBorderAlpha,
2894
+                              "R"=>$CaptionR, "G"=>$CaptionG, "B"=>$CaptionB, "Alpha"=>$CaptionAlpha);
2895 2895
 
2896 2896
      $Data           = $this->DataSet->getData();
2897 2897
      $AbscissaMargin = $this->getAbscissaMargin($Data);
2898 2898
 
2899
-     if ( $NoMargin ) { $AbscissaMargin = 0; }
2900
-     if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
2901
-     if ( $Caption == NULL ) { $Caption = $Value; }
2899
+     if ($NoMargin) { $AbscissaMargin = 0; }
2900
+     if (!isset($Data["Axis"][$AxisID])) { return(-1); }
2901
+     if ($Caption == NULL) { $Caption = $Value; }
2902 2902
 
2903
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
2903
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
2904 2904
       {
2905
-       $YPos = $this->scaleComputeY($Value,array("AxisID"=>$AxisID));
2906
-       if ( $YPos >= $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] && $YPos <= $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] )
2905
+       $YPos = $this->scaleComputeY($Value, array("AxisID"=>$AxisID));
2906
+       if ($YPos >= $this->GraphAreaY1 + $Data["Axis"][$AxisID]["Margin"] && $YPos <= $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"])
2907 2907
         {
2908 2908
          $X1 = $this->GraphAreaX1 + $AbscissaMargin;
2909 2909
          $X2 = $this->GraphAreaX2 - $AbscissaMargin;
2910 2910
 
2911
-         $this->drawLine($X1,$YPos,$X2,$YPos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2911
+         $this->drawLine($X1, $YPos, $X2, $YPos, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
2912 2912
 
2913
-         if ( $Wide )
2913
+         if ($Wide)
2914 2914
           {
2915
-           $this->drawLine($X1,$YPos-1,$X2,$YPos-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2916
-           $this->drawLine($X1,$YPos+1,$X2,$YPos+1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2915
+           $this->drawLine($X1, $YPos - 1, $X2, $YPos - 1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2916
+           $this->drawLine($X1, $YPos + 1, $X2, $YPos + 1, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2917 2917
           }
2918 2918
 
2919
-         if ( $WriteCaption )
2919
+         if ($WriteCaption)
2920 2920
           {
2921
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2921
+           if ($CaptionAlign == CAPTION_LEFT_TOP)
2922 2922
             { $X = $X1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; }
2923 2923
            else 
2924 2924
             { $X = $X2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLERIGHT; }
2925 2925
            
2926
-           $this->drawText($X,$YPos,$Caption,$CaptionSettings);
2926
+           $this->drawText($X, $YPos, $Caption, $CaptionSettings);
2927 2927
           }
2928 2928
         }
2929 2929
 
2930 2930
        return(array("Y"=>$YPos));
2931 2931
       }
2932 2932
 
2933
-     if ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2933
+     if ($Data["Orientation"] == SCALE_POS_TOPBOTTOM)
2934 2934
       {
2935
-       $XPos = $this->scaleComputeY($Value,array("AxisID"=>$AxisID));
2936
-       if ( $XPos >= $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] && $XPos <= $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] )
2935
+       $XPos = $this->scaleComputeY($Value, array("AxisID"=>$AxisID));
2936
+       if ($XPos >= $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"] && $XPos <= $this->GraphAreaX2 - $Data["Axis"][$AxisID]["Margin"])
2937 2937
         {
2938 2938
          $Y1 = $this->GraphAreaY1 + $AbscissaMargin;
2939 2939
          $Y2 = $this->GraphAreaY2 - $AbscissaMargin;
2940 2940
 
2941
-         $this->drawLine($XPos,$Y1,$XPos,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
2941
+         $this->drawLine($XPos, $Y1, $XPos, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
2942 2942
 
2943
-         if ( $Wide )
2943
+         if ($Wide)
2944 2944
           {
2945
-           $this->drawLine($XPos-1,$Y1,$XPos-1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2946
-           $this->drawLine($XPos+1,$Y1,$XPos+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/$WideFactor,"Ticks"=>$Ticks));
2945
+           $this->drawLine($XPos - 1, $Y1, $XPos - 1, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2946
+           $this->drawLine($XPos + 1, $Y1, $XPos + 1, $Y2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/$WideFactor, "Ticks"=>$Ticks));
2947 2947
           }
2948 2948
 
2949
-         if ( $WriteCaption )
2949
+         if ($WriteCaption)
2950 2950
           {
2951
-           if ( $CaptionAlign == CAPTION_LEFT_TOP )
2951
+           if ($CaptionAlign == CAPTION_LEFT_TOP)
2952 2952
             { $Y = $Y1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; }
2953 2953
            else 
2954 2954
             { $Y = $Y2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_BOTTOMMIDDLE; }
2955 2955
 
2956 2956
            $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE;
2957
-           $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
2957
+           $this->drawText($XPos, $Y, $Caption, $CaptionSettings);
2958 2958
           }
2959 2959
         }
2960 2960
 
@@ -2963,13 +2963,13 @@  discard block
 block discarded – undo
2963 2963
     }
2964 2964
 
2965 2965
    /* Draw a threshold with the computed scale */
2966
-   function drawThresholdArea($Value1,$Value2,$Format="")
2966
+   function drawThresholdArea($Value1, $Value2, $Format = "")
2967 2967
     {
2968
-     $AxisID	= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2968
+     $AxisID = isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
2969 2969
      $R		= isset($Format["R"]) ? $Format["R"] : 255;
2970 2970
      $G		= isset($Format["G"]) ? $Format["G"] : 0;
2971 2971
      $B		= isset($Format["B"]) ? $Format["B"] : 0;
2972
-     $Alpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2972
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 20;
2973 2973
      $Border    = isset($Format["Border"]) ? $Format["Border"] : TRUE;
2974 2974
      $BorderR   = isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
2975 2975
      $BorderG   = isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
@@ -2981,188 +2981,188 @@  discard block
 block discarded – undo
2981 2981
      $NameR	= isset($Format["NameR"]) ? $Format["NameR"] : 255;
2982 2982
      $NameG	= isset($Format["NameG"]) ? $Format["NameG"] : 255;
2983 2983
      $NameB	= isset($Format["NameB"]) ? $Format["NameB"] : 255;
2984
-     $NameAlpha	= isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2984
+     $NameAlpha = isset($Format["NameAlpha"]) ? $Format["NameAlpha"] : 100;
2985 2985
      $DisableShadowOnArea = isset($Format["DisableShadowOnArea"]) ? $Format["DisableShadowOnArea"] : TRUE;
2986
-     $NoMargin	= isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2986
+     $NoMargin = isset($Format["NoMargin"]) ? $Format["NoMargin"] : FALSE;
2987 2987
 
2988 2988
      if ($Value1 > $Value2) { list($Value1, $Value2) = array($Value2, $Value1); }
2989 2989
 
2990 2990
      $RestoreShadow = $this->Shadow;
2991
-     if ( $DisableShadowOnArea && $this->Shadow ) { $this->Shadow = FALSE; }
2991
+     if ($DisableShadowOnArea && $this->Shadow) { $this->Shadow = FALSE; }
2992 2992
 
2993
-     if ($BorderAlpha >100) { $BorderAlpha = 100;}
2993
+     if ($BorderAlpha > 100) { $BorderAlpha = 100; }
2994 2994
 
2995 2995
      $Data           = $this->DataSet->getData();
2996 2996
      $AbscissaMargin = $this->getAbscissaMargin($Data);
2997 2997
 
2998
-     if ( $NoMargin ) { $AbscissaMargin = 0; }
2999
-     if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
2998
+     if ($NoMargin) { $AbscissaMargin = 0; }
2999
+     if (!isset($Data["Axis"][$AxisID])) { return(-1); }
3000 3000
 
3001
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3001
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3002 3002
       {
3003 3003
        $XPos1 = $this->GraphAreaX1 + $AbscissaMargin;
3004 3004
        $XPos2 = $this->GraphAreaX2 - $AbscissaMargin;
3005
-       $YPos1 = $this->scaleComputeY($Value1,array("AxisID"=>$AxisID));
3006
-       $YPos2 = $this->scaleComputeY($Value2,array("AxisID"=>$AxisID));
3005
+       $YPos1 = $this->scaleComputeY($Value1, array("AxisID"=>$AxisID));
3006
+       $YPos2 = $this->scaleComputeY($Value2, array("AxisID"=>$AxisID));
3007 3007
 
3008
-       if ( $YPos1 < $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] ) { $YPos1 = $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"]; }
3009
-       if ( $YPos1 > $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] ) { $YPos1 = $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"]; }
3010
-       if ( $YPos2 < $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"] ) { $YPos2 = $this->GraphAreaY1+$Data["Axis"][$AxisID]["Margin"]; }
3011
-       if ( $YPos2 > $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"] ) { $YPos2 = $this->GraphAreaY2-$Data["Axis"][$AxisID]["Margin"]; }
3008
+       if ($YPos1 < $this->GraphAreaY1 + $Data["Axis"][$AxisID]["Margin"]) { $YPos1 = $this->GraphAreaY1 + $Data["Axis"][$AxisID]["Margin"]; }
3009
+       if ($YPos1 > $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"]) { $YPos1 = $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"]; }
3010
+       if ($YPos2 < $this->GraphAreaY1 + $Data["Axis"][$AxisID]["Margin"]) { $YPos2 = $this->GraphAreaY1 + $Data["Axis"][$AxisID]["Margin"]; }
3011
+       if ($YPos2 > $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"]) { $YPos2 = $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"]; }
3012 3012
 
3013
-       $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
3014
-       if ( $Border )
3013
+       $this->drawFilledRectangle($XPos1, $YPos1, $XPos2, $YPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
3014
+       if ($Border)
3015 3015
         {
3016
-         $this->drawLine($XPos1,$YPos1,$XPos2,$YPos1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3017
-         $this->drawLine($XPos1,$YPos2,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3016
+         $this->drawLine($XPos1, $YPos1, $XPos2, $YPos1, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
3017
+         $this->drawLine($XPos1, $YPos2, $XPos2, $YPos2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
3018 3018
         }
3019 3019
 
3020
-       if ( $AreaName != NULL )
3020
+       if ($AreaName != NULL)
3021 3021
         {
3022
-         $XPos = ($XPos2-$XPos1)/2 + $XPos1;
3023
-         $YPos = ($YPos2-$YPos1)/2 + $YPos1;
3022
+         $XPos = ($XPos2 - $XPos1)/2 + $XPos1;
3023
+         $YPos = ($YPos2 - $YPos1)/2 + $YPos1;
3024 3024
          $this->Shadow = $RestoreShadow;
3025
-         $this->drawText($XPos,$YPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>0,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3026
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
3025
+         $this->drawText($XPos, $YPos, $AreaName, array("R"=>$NameR, "G"=>$NameG, "B"=>$NameB, "Alpha"=>$NameAlpha, "Angle"=>0, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3026
+         if ($DisableShadowOnArea) { $this->Shadow = FALSE; }
3027 3027
         }
3028 3028
 
3029 3029
        $this->Shadow = $RestoreShadow;
3030
-       return(array("Y1"=>$YPos1,"Y2"=>$YPos2));
3030
+       return(array("Y1"=>$YPos1, "Y2"=>$YPos2));
3031 3031
       }
3032
-     elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
3032
+     elseif ($Data["Orientation"] == SCALE_POS_TOPBOTTOM)
3033 3033
       {
3034 3034
        $YPos1 = $this->GraphAreaY1 + $AbscissaMargin;
3035 3035
        $YPos2 = $this->GraphAreaY2 - $AbscissaMargin;
3036
-       $XPos1 = $this->scaleComputeY($Value1,array("AxisID"=>$AxisID));
3037
-       $XPos2 = $this->scaleComputeY($Value2,array("AxisID"=>$AxisID));
3036
+       $XPos1 = $this->scaleComputeY($Value1, array("AxisID"=>$AxisID));
3037
+       $XPos2 = $this->scaleComputeY($Value2, array("AxisID"=>$AxisID));
3038 3038
 
3039
-       if ( $XPos1 < $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] ) { $XPos1 = $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"]; }
3040
-       if ( $XPos1 > $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] ) { $XPos1 = $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"]; }
3041
-       if ( $XPos2 < $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"] ) { $XPos2 = $this->GraphAreaX1+$Data["Axis"][$AxisID]["Margin"]; }
3042
-       if ( $XPos2 > $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"] ) { $XPos2 = $this->GraphAreaX2-$Data["Axis"][$AxisID]["Margin"]; }
3039
+       if ($XPos1 < $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"]) { $XPos1 = $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"]; }
3040
+       if ($XPos1 > $this->GraphAreaX2 - $Data["Axis"][$AxisID]["Margin"]) { $XPos1 = $this->GraphAreaX2 - $Data["Axis"][$AxisID]["Margin"]; }
3041
+       if ($XPos2 < $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"]) { $XPos2 = $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"]; }
3042
+       if ($XPos2 > $this->GraphAreaX2 - $Data["Axis"][$AxisID]["Margin"]) { $XPos2 = $this->GraphAreaX2 - $Data["Axis"][$AxisID]["Margin"]; }
3043 3043
 
3044
-       $this->drawFilledRectangle($XPos1,$YPos1,$XPos2,$YPos2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
3045
-       if ( $Border )
3044
+       $this->drawFilledRectangle($XPos1, $YPos1, $XPos2, $YPos2, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
3045
+       if ($Border)
3046 3046
         {
3047
-         $this->drawLine($XPos1,$YPos1,$XPos1,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3048
-         $this->drawLine($XPos2,$YPos1,$XPos2,$YPos2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$BorderTicks));
3047
+         $this->drawLine($XPos1, $YPos1, $XPos1, $YPos2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
3048
+         $this->drawLine($XPos2, $YPos1, $XPos2, $YPos2, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Ticks"=>$BorderTicks));
3049 3049
         }
3050 3050
 
3051
-       if ( $AreaName != NULL )
3051
+       if ($AreaName != NULL)
3052 3052
         {
3053
-         $XPos = ($YPos2-$YPos1)/2 + $YPos1;
3054
-         $YPos = ($XPos2-$XPos1)/2 + $XPos1;
3053
+         $XPos = ($YPos2 - $YPos1)/2 + $YPos1;
3054
+         $YPos = ($XPos2 - $XPos1)/2 + $XPos1;
3055 3055
 
3056
-         if ( $NameAngle == ZONE_NAME_ANGLE_AUTO )
3056
+         if ($NameAngle == ZONE_NAME_ANGLE_AUTO)
3057 3057
           {
3058
-           $TxtPos   = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$AreaName);
3058
+           $TxtPos   = $this->getTextBox($XPos, $YPos, $this->FontName, $this->FontSize, 0, $AreaName);
3059 3059
            $TxtWidth = $TxtPos[1]["X"] - $TxtPos[0]["X"];
3060
-           if ( abs($XPos2 - $XPos1) > $TxtWidth ) { $NameAngle = 0; } else { $NameAngle = 90; }
3060
+           if (abs($XPos2 - $XPos1) > $TxtWidth) { $NameAngle = 0; } else { $NameAngle = 90; }
3061 3061
           }
3062 3062
          $this->Shadow = $RestoreShadow;
3063
-         $this->drawText($YPos,$XPos,$AreaName,array("R"=>$NameR,"G"=>$NameG,"B"=>$NameB,"Alpha"=>$NameAlpha,"Angle"=>$NameAngle,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3064
-         if ( $DisableShadowOnArea ) { $this->Shadow = FALSE; }
3063
+         $this->drawText($YPos, $XPos, $AreaName, array("R"=>$NameR, "G"=>$NameG, "B"=>$NameB, "Alpha"=>$NameAlpha, "Angle"=>$NameAngle, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE));
3064
+         if ($DisableShadowOnArea) { $this->Shadow = FALSE; }
3065 3065
         }
3066 3066
 
3067 3067
        $this->Shadow = $RestoreShadow;
3068
-       return(array("Y1"=>$XPos1,"Y2"=>$XPos2));
3068
+       return(array("Y1"=>$XPos1, "Y2"=>$XPos2));
3069 3069
       }
3070 3070
     }
3071 3071
 
3072 3072
    function scaleGetXSettings()
3073 3073
     {
3074 3074
      $Data = $this->DataSet->getData();
3075
-     foreach($Data["Axis"] as $AxisID => $Settings)
3075
+     foreach ($Data["Axis"] as $AxisID => $Settings)
3076 3076
       {
3077
-       if ( $Settings["Identity"] == AXIS_X )
3077
+       if ($Settings["Identity"] == AXIS_X)
3078 3078
         {
3079 3079
          $Rows = $Settings["Rows"];
3080 3080
 
3081
-         return(array($Settings["Margin"],$Rows));
3081
+         return(array($Settings["Margin"], $Rows));
3082 3082
         }
3083 3083
       }
3084 3084
     }
3085 3085
 
3086
-   function scaleComputeY($Values,$Option="",$ReturnOnly0Height=FALSE)
3086
+   function scaleComputeY($Values, $Option = "", $ReturnOnly0Height = FALSE)
3087 3087
     {
3088
-     $AxisID	= isset($Option["AxisID"]) ? $Option["AxisID"] : 0;
3089
-     $SerieName	= isset($Option["SerieName"]) ? $Option["SerieName"] : NULL;
3088
+     $AxisID = isset($Option["AxisID"]) ? $Option["AxisID"] : 0;
3089
+     $SerieName = isset($Option["SerieName"]) ? $Option["SerieName"] : NULL;
3090 3090
 
3091 3091
      $Data = $this->DataSet->getData();
3092
-     if ( !isset($Data["Axis"][$AxisID]) ) { return(-1); }
3092
+     if (!isset($Data["Axis"][$AxisID])) { return(-1); }
3093 3093
 
3094
-     if ( $SerieName != NULL ) { $AxisID = $Data["Series"][$SerieName]["Axis"]; }
3095
-     if ( !is_array($Values) ) { $tmp = $Values; $Values = ""; $Values[0] = $tmp; }
3094
+     if ($SerieName != NULL) { $AxisID = $Data["Series"][$SerieName]["Axis"]; }
3095
+     if (!is_array($Values)) { $tmp = $Values; $Values = ""; $Values[0] = $tmp; }
3096 3096
 
3097 3097
      $Result = "";
3098
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3098
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3099 3099
       {
3100 3100
        $Height      = ($this->GraphAreaY2 - $this->GraphAreaY1) - $Data["Axis"][$AxisID]["Margin"]*2;
3101 3101
        $ScaleHeight = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3102
-       $Step        = $Height / $ScaleHeight;
3102
+       $Step        = $Height/$ScaleHeight;
3103 3103
 
3104
-       if ( $ReturnOnly0Height )
3105
-        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } }
3104
+       if ($ReturnOnly0Height)
3105
+        { foreach ($Values as $Key => $Value) { if ($Value == VOID) { $Result[] = VOID; } else { $Result[] = $Step*$Value; } } }
3106 3106
        else
3107
-        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"] - ($Step * ($Value-$Data["Axis"][$AxisID]["ScaleMin"])); } } }
3107
+        { foreach ($Values as $Key => $Value) { if ($Value == VOID) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"] - ($Step*($Value - $Data["Axis"][$AxisID]["ScaleMin"])); } } }
3108 3108
       }
3109 3109
      else
3110 3110
       {
3111 3111
        $Width      = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Data["Axis"][$AxisID]["Margin"]*2;
3112 3112
        $ScaleWidth = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3113
-       $Step       = $Width / $ScaleWidth;
3113
+       $Step       = $Width/$ScaleWidth;
3114 3114
 
3115
-       if ( $ReturnOnly0Height )
3116
-        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } }
3115
+       if ($ReturnOnly0Height)
3116
+        { foreach ($Values as $Key => $Value) { if ($Value == VOID) { $Result[] = VOID; } else { $Result[] = $Step*$Value; } } }
3117 3117
        else
3118
-        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"] + ($Step * ($Value-$Data["Axis"][$AxisID]["ScaleMin"])); } } }
3118
+        { foreach ($Values as $Key => $Value) { if ($Value == VOID) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"] + ($Step*($Value - $Data["Axis"][$AxisID]["ScaleMin"])); } } }
3119 3119
       }
3120 3120
 
3121
-     if ( count($Result) == 1 )
3121
+     if (count($Result) == 1)
3122 3122
       return($Result[0]);
3123 3123
      else
3124 3124
       return($Result);
3125 3125
     }
3126 3126
 
3127 3127
    /* Format the axis values */
3128
-   function scaleFormat($Value,$Mode=NULL,$Format=NULL,$Unit=NULL)
3128
+   function scaleFormat($Value, $Mode = NULL, $Format = NULL, $Unit = NULL)
3129 3129
     {
3130
-     if ( $Value == VOID ) { return(""); }
3130
+     if ($Value == VOID) { return(""); }
3131 3131
 
3132
-     if ( $Mode == AXIS_FORMAT_CUSTOM )
3133
-      { if ( function_exists($Format) ) { return(call_user_func($Format,$Value)); } }
3132
+     if ($Mode == AXIS_FORMAT_CUSTOM)
3133
+      { if (function_exists($Format)) { return(call_user_func($Format, $Value)); } }
3134 3134
 
3135
-     if ( $Mode == AXIS_FORMAT_DATE )
3136
-      { if ( $Format == NULL ) { $Pattern = "d/m/Y"; } else { $Pattern = $Format; } return(date($Pattern,$Value)); }
3135
+     if ($Mode == AXIS_FORMAT_DATE)
3136
+      { if ($Format == NULL) { $Pattern = "d/m/Y"; } else { $Pattern = $Format; } return(date($Pattern, $Value)); }
3137 3137
 
3138
-     if ( $Mode == AXIS_FORMAT_TIME )
3139
-      { if ( $Format == NULL ) { $Pattern = "H:i:s"; } else { $Pattern = $Format; } return(date($Pattern,$Value)); }
3138
+     if ($Mode == AXIS_FORMAT_TIME)
3139
+      { if ($Format == NULL) { $Pattern = "H:i:s"; } else { $Pattern = $Format; } return(date($Pattern, $Value)); }
3140 3140
 
3141
-     if ( $Mode == AXIS_FORMAT_CURRENCY )
3142
-      { return($Format.number_format($Value,2)); }
3141
+     if ($Mode == AXIS_FORMAT_CURRENCY)
3142
+      { return($Format.number_format($Value, 2)); }
3143 3143
 
3144
-     if ( $Mode == AXIS_FORMAT_METRIC )
3144
+     if ($Mode == AXIS_FORMAT_METRIC)
3145 3145
       {
3146 3146
        if (abs($Value) > 1000000000)
3147
-        return(round($Value/1000000000,$Format)."g".$Unit);
3147
+        return(round($Value/1000000000, $Format)."g".$Unit);
3148 3148
        if (abs($Value) > 1000000)
3149
-        return(round($Value/1000000,$Format)."m".$Unit);
3149
+        return(round($Value/1000000, $Format)."m".$Unit);
3150 3150
        elseif (abs($Value) >= 1000)
3151
-        return(round($Value/1000,$Format)."k".$Unit);
3151
+        return(round($Value/1000, $Format)."k".$Unit);
3152 3152
        
3153 3153
       }
3154 3154
      return($Value.$Unit);
3155 3155
     }
3156 3156
 
3157 3157
    /* Write Max value on a chart */
3158
-   function writeBounds($Type=BOUND_BOTH,$Format=NULL)
3158
+   function writeBounds($Type = BOUND_BOTH, $Format = NULL)
3159 3159
     {
3160 3160
      $MaxLabelTxt	= isset($Format["MaxLabelTxt"]) ? $Format["MaxLabelTxt"] : "max=";
3161 3161
      $MinLabelTxt	= isset($Format["MinLabelTxt"]) ? $Format["MinLabelTxt"] : "min=";
3162
-     $Decimals		= isset($Format["Decimals"]) ? $Format["Decimals"] : 1;
3163
-     $ExcludedSeries	= isset($Format["ExcludedSeries"]) ? $Format["ExcludedSeries"] : "";
3164
-     $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3165
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3162
+     $Decimals = isset($Format["Decimals"]) ? $Format["Decimals"] : 1;
3163
+     $ExcludedSeries = isset($Format["ExcludedSeries"]) ? $Format["ExcludedSeries"] : "";
3164
+     $DisplayOffset = isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3165
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3166 3166
      $MaxDisplayR	= isset($Format["MaxDisplayR"]) ? $Format["MaxDisplayR"] : 0;
3167 3167
      $MaxDisplayG	= isset($Format["MaxDisplayG"]) ? $Format["MaxDisplayG"] : 0;
3168 3168
      $MaxDisplayB	= isset($Format["MaxDisplayB"]) ? $Format["MaxDisplayB"] : 0;
@@ -3171,43 +3171,43 @@  discard block
 block discarded – undo
3171 3171
      $MinDisplayB	= isset($Format["MinDisplayB"]) ? $Format["MinDisplayB"] : 255;
3172 3172
      $MinLabelPos	= isset($Format["MinLabelPos"]) ? $Format["MinLabelPos"] : BOUND_LABEL_POS_AUTO;
3173 3173
      $MaxLabelPos	= isset($Format["MaxLabelPos"]) ? $Format["MaxLabelPos"] : BOUND_LABEL_POS_AUTO;
3174
-     $DrawBox		= isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
3174
+     $DrawBox = isset($Format["DrawBox"]) ? $Format["DrawBox"] : TRUE;
3175 3175
      $DrawBoxBorder	= isset($Format["DrawBoxBorder"]) ? $Format["DrawBoxBorder"] : FALSE;
3176
-     $BorderOffset	= isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
3177
-     $BoxRounded	= isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
3176
+     $BorderOffset = isset($Format["BorderOffset"]) ? $Format["BorderOffset"] : 5;
3177
+     $BoxRounded = isset($Format["BoxRounded"]) ? $Format["BoxRounded"] : TRUE;
3178 3178
      $RoundedRadius	= isset($Format["RoundedRadius"]) ? $Format["RoundedRadius"] : 3;
3179 3179
      $BoxR		= isset($Format["BoxR"]) ? $Format["BoxR"] : 0;
3180 3180
      $BoxG		= isset($Format["BoxG"]) ? $Format["BoxG"] : 0;
3181 3181
      $BoxB		= isset($Format["BoxB"]) ? $Format["BoxB"] : 0;
3182
-     $BoxAlpha		= isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
3183
-     $BoxSurrounding	= isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
3182
+     $BoxAlpha = isset($Format["BoxAlpha"]) ? $Format["BoxAlpha"] : 20;
3183
+     $BoxSurrounding = isset($Format["BoxSurrounding"]) ? $Format["BoxSurrounding"] : "";
3184 3184
      $BoxBorderR	= isset($Format["BoxBorderR"]) ? $Format["BoxBorderR"] : 255;
3185 3185
      $BoxBorderG	= isset($Format["BoxBorderG"]) ? $Format["BoxBorderG"] : 255;
3186 3186
      $BoxBorderB	= isset($Format["BoxBorderB"]) ? $Format["BoxBorderB"] : 255;
3187
-     $BoxBorderAlpha	= isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
3187
+     $BoxBorderAlpha = isset($Format["BoxBorderAlpha"]) ? $Format["BoxBorderAlpha"] : 100;
3188 3188
 
3189
-     $CaptionSettings = array("DrawBox"=>$DrawBox,"DrawBoxBorder"=>$DrawBoxBorder,"BorderOffset"=>$BorderOffset,"BoxRounded"=>$BoxRounded,"RoundedRadius"=>$RoundedRadius,
3190
-                              "BoxR"=>$BoxR,"BoxG"=>$BoxG,"BoxB"=>$BoxB,"BoxAlpha"=>$BoxAlpha,"BoxSurrounding"=>$BoxSurrounding,
3191
-                              "BoxBorderR"=>$BoxBorderR,"BoxBorderG"=>$BoxBorderG,"BoxBorderB"=>$BoxBorderB,"BoxBorderAlpha"=>$BoxBorderAlpha);
3189
+     $CaptionSettings = array("DrawBox"=>$DrawBox, "DrawBoxBorder"=>$DrawBoxBorder, "BorderOffset"=>$BorderOffset, "BoxRounded"=>$BoxRounded, "RoundedRadius"=>$RoundedRadius,
3190
+                              "BoxR"=>$BoxR, "BoxG"=>$BoxG, "BoxB"=>$BoxB, "BoxAlpha"=>$BoxAlpha, "BoxSurrounding"=>$BoxSurrounding,
3191
+                              "BoxBorderR"=>$BoxBorderR, "BoxBorderG"=>$BoxBorderG, "BoxBorderB"=>$BoxBorderB, "BoxBorderAlpha"=>$BoxBorderAlpha);
3192 3192
 
3193
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3193
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3194 3194
 
3195 3195
      $Data = $this->DataSet->getData();
3196
-     foreach($Data["Series"] as $SerieName => $Serie)
3196
+     foreach ($Data["Series"] as $SerieName => $Serie)
3197 3197
       {
3198
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && !isset($ExcludedSeries[$SerieName]))
3198
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] && !isset($ExcludedSeries[$SerieName]))
3199 3199
         {
3200 3200
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3201
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3201
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3202 3202
 
3203 3203
          $MinValue = $this->DataSet->getMin($SerieName);
3204 3204
          $MaxValue = $this->DataSet->getMax($SerieName);
3205 3205
 
3206 3206
          $MinPos = VOID; $MaxPos = VOID;
3207
-         foreach($Serie["Data"] as $Key => $Value)
3207
+         foreach ($Serie["Data"] as $Key => $Value)
3208 3208
           { 
3209
-           if ( $Value == $MinValue && $MinPos == VOID ) { $MinPos = $Key; }
3210
-           if ( $Value == $MaxValue ) { $MaxPos = $Key; }
3209
+           if ($Value == $MinValue && $MinPos == VOID) { $MinPos = $Key; }
3210
+           if ($Value == $MaxValue) { $MaxPos = $Key; }
3211 3211
           }
3212 3212
 
3213 3213
          $AxisID	= $Serie["Axis"];
@@ -3215,102 +3215,102 @@  discard block
 block discarded – undo
3215 3215
          $Format	= $Data["Axis"][$AxisID]["Format"];
3216 3216
          $Unit		= $Data["Axis"][$AxisID]["Unit"];
3217 3217
 
3218
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3218
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
3219 3219
 
3220
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3220
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3221 3221
           {
3222
-           $XStep       = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs;
3222
+           $XStep       = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs;
3223 3223
            $X           = $this->GraphAreaX1 + $XMargin;
3224 3224
            $SerieOffset = isset($Serie["XOffset"]) ? $Serie["XOffset"] : 0;
3225 3225
 
3226
-           if ( $Type == BOUND_MAX || $Type == BOUND_BOTH )
3226
+           if ($Type == BOUND_MAX || $Type == BOUND_BOTH)
3227 3227
             {
3228
-             if ( $MaxLabelPos == BOUND_LABEL_POS_TOP    || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue >= 0) ) { $YPos  = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3229
-             if ( $MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue < 0) ) { $YPos  = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3228
+             if ($MaxLabelPos == BOUND_LABEL_POS_TOP || ($MaxLabelPos == BOUND_LABEL_POS_AUTO && $MaxValue >= 0)) { $YPos = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3229
+             if ($MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ($MaxLabelPos == BOUND_LABEL_POS_AUTO && $MaxValue < 0)) { $YPos = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3230 3230
 
3231 3231
              $XPos  = $X + $MaxPos*$XStep + $SerieOffset;
3232
-             $Label = $MaxLabelTxt.$this->scaleFormat(round($MaxValue,$Decimals),$Mode,$Format,$Unit);
3232
+             $Label = $MaxLabelTxt.$this->scaleFormat(round($MaxValue, $Decimals), $Mode, $Format, $Unit);
3233 3233
 
3234
-             $TxtPos  = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$Label);
3234
+             $TxtPos  = $this->getTextBox($XPos, $YPos, $this->FontName, $this->FontSize, 0, $Label);
3235 3235
              $XOffset = 0; $YOffset = 0;
3236
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3237
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3238
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3239
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3236
+             if ($TxtPos[0]["X"] < $this->GraphAreaX1) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3237
+             if ($TxtPos[1]["X"] > $this->GraphAreaX2) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3238
+             if ($TxtPos[2]["Y"] < $this->GraphAreaY1) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3239
+             if ($TxtPos[0]["Y"] > $this->GraphAreaY2) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3240 3240
 
3241 3241
              $CaptionSettings["R"] = $MaxDisplayR; $CaptionSettings["G"] = $MaxDisplayG;
3242 3242
              $CaptionSettings["B"] = $MaxDisplayB; $CaptionSettings["Align"] = $Align;
3243 3243
 
3244
-             $this->drawText($XPos+$XOffset,$YPos+$YOffset,$Label,$CaptionSettings);
3244
+             $this->drawText($XPos + $XOffset, $YPos + $YOffset, $Label, $CaptionSettings);
3245 3245
             }
3246 3246
 
3247
-           if ( $Type == BOUND_MIN || $Type == BOUND_BOTH )
3247
+           if ($Type == BOUND_MIN || $Type == BOUND_BOTH)
3248 3248
             {
3249
-             if ( $MinLabelPos == BOUND_LABEL_POS_TOP    || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue >= 0) ) { $YPos  = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3250
-             if ( $MinLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue < 0) ) { $YPos  = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3249
+             if ($MinLabelPos == BOUND_LABEL_POS_TOP || ($MinLabelPos == BOUND_LABEL_POS_AUTO && $MinValue >= 0)) { $YPos = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_BOTTOMMIDDLE; }
3250
+             if ($MinLabelPos == BOUND_LABEL_POS_BOTTOM || ($MinLabelPos == BOUND_LABEL_POS_AUTO && $MinValue < 0)) { $YPos = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_TOPMIDDLE; }
3251 3251
 
3252 3252
              $XPos  = $X + $MinPos*$XStep + $SerieOffset;
3253
-             $Label = $MinLabelTxt.$this->scaleFormat(round($MinValue,$Decimals),$Mode,$Format,$Unit);
3253
+             $Label = $MinLabelTxt.$this->scaleFormat(round($MinValue, $Decimals), $Mode, $Format, $Unit);
3254 3254
 
3255
-             $TxtPos  = $this->getTextBox($XPos,$YPos,$this->FontName,$this->FontSize,0,$Label);
3255
+             $TxtPos  = $this->getTextBox($XPos, $YPos, $this->FontName, $this->FontSize, 0, $Label);
3256 3256
              $XOffset = 0; $YOffset = 0;
3257
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3258
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3259
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3260
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3257
+             if ($TxtPos[0]["X"] < $this->GraphAreaX1) { $XOffset = (($this->GraphAreaX1 - $TxtPos[0]["X"])/2); }
3258
+             if ($TxtPos[1]["X"] > $this->GraphAreaX2) { $XOffset = -(($TxtPos[1]["X"] - $this->GraphAreaX2)/2); }
3259
+             if ($TxtPos[2]["Y"] < $this->GraphAreaY1) { $YOffset = $this->GraphAreaY1 - $TxtPos[2]["Y"]; }
3260
+             if ($TxtPos[0]["Y"] > $this->GraphAreaY2) { $YOffset = -($TxtPos[0]["Y"] - $this->GraphAreaY2); }
3261 3261
 
3262 3262
              $CaptionSettings["R"] = $MinDisplayR; $CaptionSettings["G"] = $MinDisplayG;
3263 3263
              $CaptionSettings["B"] = $MinDisplayB; $CaptionSettings["Align"] = $Align;
3264 3264
 
3265
-             $this->drawText($XPos+$XOffset,$YPos-$DisplayOffset+$YOffset,$Label,$CaptionSettings);
3265
+             $this->drawText($XPos + $XOffset, $YPos - $DisplayOffset + $YOffset, $Label, $CaptionSettings);
3266 3266
             }
3267 3267
           }
3268 3268
          else
3269 3269
           {
3270
-           $XStep       = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs;
3270
+           $XStep       = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs;
3271 3271
            $X           = $this->GraphAreaY1 + $XMargin;
3272 3272
            $SerieOffset = isset($Serie["XOffset"]) ? $Serie["XOffset"] : 0;
3273 3273
 
3274
-           if ( $Type == BOUND_MAX || $Type == BOUND_BOTH )
3274
+           if ($Type == BOUND_MAX || $Type == BOUND_BOTH)
3275 3275
             {
3276
-             if ( $MaxLabelPos == BOUND_LABEL_POS_TOP    || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue >= 0) ) { $YPos  = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3277
-             if ( $MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MaxLabelPos ==  BOUND_LABEL_POS_AUTO && $MaxValue < 0) ) { $YPos  = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3276
+             if ($MaxLabelPos == BOUND_LABEL_POS_TOP || ($MaxLabelPos == BOUND_LABEL_POS_AUTO && $MaxValue >= 0)) { $YPos = $PosArray[$MaxPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3277
+             if ($MaxLabelPos == BOUND_LABEL_POS_BOTTOM || ($MaxLabelPos == BOUND_LABEL_POS_AUTO && $MaxValue < 0)) { $YPos = $PosArray[$MaxPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3278 3278
 
3279 3279
              $XPos  = $X + $MaxPos*$XStep + $SerieOffset;
3280
-             $Label = $MaxLabelTxt.$this->scaleFormat($MaxValue,$Mode,$Format,$Unit);
3280
+             $Label = $MaxLabelTxt.$this->scaleFormat($MaxValue, $Mode, $Format, $Unit);
3281 3281
 
3282
-             $TxtPos  = $this->getTextBox($YPos,$XPos,$this->FontName,$this->FontSize,0,$Label);
3282
+             $TxtPos  = $this->getTextBox($YPos, $XPos, $this->FontName, $this->FontSize, 0, $Label);
3283 3283
              $XOffset = 0; $YOffset = 0;
3284
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3285
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3286
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3287
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2);}
3284
+             if ($TxtPos[0]["X"] < $this->GraphAreaX1) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3285
+             if ($TxtPos[1]["X"] > $this->GraphAreaX2) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3286
+             if ($TxtPos[2]["Y"] < $this->GraphAreaY1) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3287
+             if ($TxtPos[0]["Y"] > $this->GraphAreaY2) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2); }
3288 3288
 
3289 3289
              $CaptionSettings["R"] = $MaxDisplayR; $CaptionSettings["G"] = $MaxDisplayG;
3290 3290
              $CaptionSettings["B"] = $MaxDisplayB; $CaptionSettings["Align"] = $Align;
3291 3291
 
3292
-             $this->drawText($YPos+$XOffset,$XPos+$YOffset,$Label,$CaptionSettings);
3292
+             $this->drawText($YPos + $XOffset, $XPos + $YOffset, $Label, $CaptionSettings);
3293 3293
             }
3294 3294
 
3295
-           if ( $Type == BOUND_MIN || $Type == BOUND_BOTH )
3295
+           if ($Type == BOUND_MIN || $Type == BOUND_BOTH)
3296 3296
             {
3297
-             if ( $MinLabelPos == BOUND_LABEL_POS_TOP    || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue >= 0) ) { $YPos  = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3298
-             if ( $MinLabelPos == BOUND_LABEL_POS_BOTTOM || ( $MinLabelPos ==  BOUND_LABEL_POS_AUTO && $MinValue < 0) ) { $YPos  = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3297
+             if ($MinLabelPos == BOUND_LABEL_POS_TOP || ($MinLabelPos == BOUND_LABEL_POS_AUTO && $MinValue >= 0)) { $YPos = $PosArray[$MinPos] + $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLELEFT; }
3298
+             if ($MinLabelPos == BOUND_LABEL_POS_BOTTOM || ($MinLabelPos == BOUND_LABEL_POS_AUTO && $MinValue < 0)) { $YPos = $PosArray[$MinPos] - $DisplayOffset + 2; $Align = TEXT_ALIGN_MIDDLERIGHT; }
3299 3299
 
3300 3300
              $XPos  = $X + $MinPos*$XStep + $SerieOffset;
3301
-             $Label = $MinLabelTxt.$this->scaleFormat($MinValue,$Mode,$Format,$Unit);
3301
+             $Label = $MinLabelTxt.$this->scaleFormat($MinValue, $Mode, $Format, $Unit);
3302 3302
 
3303
-             $TxtPos  = $this->getTextBox($YPos,$XPos,$this->FontName,$this->FontSize,0,$Label);
3303
+             $TxtPos  = $this->getTextBox($YPos, $XPos, $this->FontName, $this->FontSize, 0, $Label);
3304 3304
              $XOffset = 0; $YOffset = 0;
3305
-             if ( $TxtPos[0]["X"] < $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3306
-             if ( $TxtPos[1]["X"] > $this->GraphAreaX2 ) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3307
-             if ( $TxtPos[2]["Y"] < $this->GraphAreaY1 ) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3308
-             if ( $TxtPos[0]["Y"] > $this->GraphAreaY2 ) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2);}
3305
+             if ($TxtPos[0]["X"] < $this->GraphAreaX1) { $XOffset = $this->GraphAreaX1 - $TxtPos[0]["X"]; }
3306
+             if ($TxtPos[1]["X"] > $this->GraphAreaX2) { $XOffset = -($TxtPos[1]["X"] - $this->GraphAreaX2); }
3307
+             if ($TxtPos[2]["Y"] < $this->GraphAreaY1) { $YOffset = ($this->GraphAreaY1 - $TxtPos[2]["Y"])/2; }
3308
+             if ($TxtPos[0]["Y"] > $this->GraphAreaY2) { $YOffset = -(($TxtPos[0]["Y"] - $this->GraphAreaY2)/2); }
3309 3309
 
3310 3310
              $CaptionSettings["R"] = $MinDisplayR; $CaptionSettings["G"] = $MinDisplayG;
3311 3311
              $CaptionSettings["B"] = $MinDisplayB; $CaptionSettings["Align"] = $Align;
3312 3312
 
3313
-             $this->drawText($YPos+$XOffset,$XPos+$YOffset,$Label,$CaptionSettings);
3313
+             $this->drawText($YPos + $XOffset, $XPos + $YOffset, $Label, $CaptionSettings);
3314 3314
             }
3315 3315
           }
3316 3316
         }
@@ -3318,43 +3318,43 @@  discard block
 block discarded – undo
3318 3318
     }
3319 3319
 
3320 3320
    /* Draw a plot chart */
3321
-   function drawPlotChart($Format=NULL)
3321
+   function drawPlotChart($Format = NULL)
3322 3322
     {
3323
-     $PlotSize		= isset($Format["PlotSize"]) ? $Format["PlotSize"] : NULL;
3324
-     $PlotBorder	= isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : FALSE;
3323
+     $PlotSize = isset($Format["PlotSize"]) ? $Format["PlotSize"] : NULL;
3324
+     $PlotBorder = isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : FALSE;
3325 3325
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : 50;
3326 3326
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : 50;
3327 3327
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : 50;
3328 3328
      $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 30;
3329
-     $BorderSize	= isset($Format["BorderSize"]) ? $Format["BorderSize"] : 2;
3329
+     $BorderSize = isset($Format["BorderSize"]) ? $Format["BorderSize"] : 2;
3330 3330
      $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
3331 3331
      $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3332 3332
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 4;
3333
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3333
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3334 3334
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3335 3335
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3336 3336
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3337
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3337
+     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3338 3338
 
3339 3339
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3340 3340
 
3341 3341
      $Data = $this->DataSet->getData();
3342
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3342
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3343 3343
 
3344
-     foreach($Data["Series"] as $SerieName => $Serie)
3344
+     foreach ($Data["Series"] as $SerieName => $Serie)
3345 3345
       {
3346
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3346
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
3347 3347
         {
3348
-         if ( isset($Serie["Weight"]) ) { $SerieWeight = $Serie["Weight"] + 2; } else { $SerieWeight = 2; }
3349
-         if ( $PlotSize != NULL ) { $SerieWeight = $PlotSize; }
3348
+         if (isset($Serie["Weight"])) { $SerieWeight = $Serie["Weight"] + 2; } else { $SerieWeight = 2; }
3349
+         if ($PlotSize != NULL) { $SerieWeight = $PlotSize; }
3350 3350
 
3351 3351
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3352
-         if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
3353
-         if ( isset($Serie["Picture"]) )
3354
-          { $Picture = $Serie["Picture"]; list($PicWidth,$PicHeight,$PicType) = $this->getPicInfo($Picture); }
3352
+         if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
3353
+         if (isset($Serie["Picture"]))
3354
+          { $Picture = $Serie["Picture"]; list($PicWidth, $PicHeight, $PicType) = $this->getPicInfo($Picture); }
3355 3355
          else { $Picture = NULL; $PicOffset = 0; }
3356 3356
 
3357
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3357
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3358 3358
 
3359 3359
          $AxisID	= $Serie["Axis"];
3360 3360
          $Shape		= $Serie["Shape"];
@@ -3364,54 +3364,54 @@  discard block
 block discarded – undo
3364 3364
 
3365 3365
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3366 3366
 
3367
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3367
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
3368 3368
 
3369 3369
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3370 3370
 
3371
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3371
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3372 3372
           {
3373
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3374
-           if ( $Picture != NULL ) { $PicOffset = $PicHeight / 2; $SerieWeight = 0; }
3373
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
3374
+           if ($Picture != NULL) { $PicOffset = $PicHeight/2; $SerieWeight = 0; }
3375 3375
            $X = $this->GraphAreaX1 + $XMargin;
3376 3376
 
3377
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3378
-           foreach($PosArray as $Key => $Y)
3377
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3378
+           foreach ($PosArray as $Key => $Y)
3379 3379
             {
3380
-             if ( $DisplayValues ) 
3381
-              $this->drawText($X,$Y-$DisplayOffset-$SerieWeight-$BorderSize-$PicOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3380
+             if ($DisplayValues) 
3381
+              $this->drawText($X, $Y - $DisplayOffset - $SerieWeight - $BorderSize - $PicOffset, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3382 3382
 
3383
-             if ( $Y != VOID )
3383
+             if ($Y != VOID)
3384 3384
               {
3385
-               if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3385
+               if ($RecordImageMap) { $this->addToImageMap("CIRCLE", floor($X).",".floor($Y).",".$SerieWeight, $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3386 3386
 
3387
-               if ( $Picture != NULL )
3388
-                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3387
+               if ($Picture != NULL)
3388
+                { $this->drawFromPicture($PicType, $Picture, $X - $PicWidth/2, $Y - $PicHeight/2); }
3389 3389
                else
3390
-                { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3390
+                { $this->drawShape($X, $Y, $Shape, $SerieWeight, $PlotBorder, $BorderSize, $R, $G, $B, $Alpha, $BorderR, $BorderG, $BorderB, $BorderAlpha); }
3391 3391
               }
3392 3392
              $X = $X + $XStep;
3393 3393
             }
3394 3394
           }
3395 3395
          else
3396 3396
           {
3397
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3398
-           if ( $Picture != NULL ) { $PicOffset = $PicWidth / 2; $SerieWeight = 0; }
3397
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
3398
+           if ($Picture != NULL) { $PicOffset = $PicWidth/2; $SerieWeight = 0; }
3399 3399
            $Y = $this->GraphAreaY1 + $XMargin;
3400 3400
 
3401
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3402
-           foreach($PosArray as $Key => $X)
3401
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3402
+           foreach ($PosArray as $Key => $X)
3403 3403
             {
3404
-             if ( $DisplayValues ) 
3405
-              $this->drawText($X+$DisplayOffset+$SerieWeight+$BorderSize+$PicOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3404
+             if ($DisplayValues) 
3405
+              $this->drawText($X + $DisplayOffset + $SerieWeight + $BorderSize + $PicOffset, $Y, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("Angle"=>270, "R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3406 3406
 
3407
-             if ( $X != VOID )
3407
+             if ($X != VOID)
3408 3408
               {
3409
-               if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3409
+               if ($RecordImageMap) { $this->addToImageMap("CIRCLE", floor($X).",".floor($Y).",".$SerieWeight, $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3410 3410
 
3411
-               if ( $Picture != NULL )
3412
-                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3411
+               if ($Picture != NULL)
3412
+                { $this->drawFromPicture($PicType, $Picture, $X - $PicWidth/2, $Y - $PicHeight/2); }
3413 3413
                else
3414
-                { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3414
+                { $this->drawShape($X, $Y, $Shape, $SerieWeight, $PlotBorder, $BorderSize, $R, $G, $B, $Alpha, $BorderR, $BorderG, $BorderB, $BorderAlpha); }
3415 3415
               }
3416 3416
              $Y = $Y + $YStep;
3417 3417
             }
@@ -3421,7 +3421,7 @@  discard block
 block discarded – undo
3421 3421
     }
3422 3422
 
3423 3423
    /* Draw a spline chart */
3424
-   function drawSplineChart($Format=NULL)
3424
+   function drawSplineChart($Format = NULL)
3425 3425
     {
3426 3426
      $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : TRUE;
3427 3427
      $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
@@ -3430,29 +3430,29 @@  discard block
 block discarded – undo
3430 3430
      $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL; // 26
3431 3431
      $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3432 3432
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3433
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3433
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3434 3434
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3435 3435
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3436 3436
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3437
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3438
-     $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3437
+     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3438
+     $ImageMapPlotSize = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3439 3439
 
3440 3440
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3441 3441
 
3442 3442
      $Data = $this->DataSet->getData();
3443
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3444
-     foreach($Data["Series"] as $SerieName => $Serie)
3443
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3444
+     foreach ($Data["Series"] as $SerieName => $Serie)
3445 3445
       {
3446
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3446
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
3447 3447
         {
3448 3448
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3449 3449
 
3450
-         if ( $BreakR == NULL )
3451
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks);
3450
+         if ($BreakR == NULL)
3451
+          $BreakSettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$VoidTicks);
3452 3452
          else
3453
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3453
+          $BreakSettings = array("R"=>$BreakR, "G"=>$BreakG, "B"=>$BreakB, "Alpha"=>$Alpha, "Ticks"=>$VoidTicks, "Weight"=>$Weight);
3454 3454
 
3455
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3455
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3456 3456
 
3457 3457
          $AxisID	= $Serie["Axis"];
3458 3458
          $Mode		= $Data["Axis"][$AxisID]["Display"];
@@ -3461,84 +3461,84 @@  discard block
 block discarded – undo
3461 3461
 
3462 3462
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3463 3463
 
3464
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3464
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
3465 3465
 
3466 3466
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3467 3467
 
3468
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3468
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3469 3469
           {
3470
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3470
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
3471 3471
            $X     = $this->GraphAreaX1 + $XMargin; $WayPoints = "";
3472
-           $Force = $XStep / 5;
3472
+           $Force = $XStep/5;
3473 3473
 
3474
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3474
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3475 3475
            $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3476
-           foreach($PosArray as $Key => $Y)
3476
+           foreach ($PosArray as $Key => $Y)
3477 3477
             {
3478
-             if ( $DisplayValues ) 
3479
-              $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3478
+             if ($DisplayValues) 
3479
+              $this->drawText($X, $Y - $DisplayOffset, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3480 3480
 	
3481
-             if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3481
+             if ($RecordImageMap && $Y != VOID) { $this->addToImageMap("CIRCLE", floor($X).",".floor($Y).",".$ImageMapPlotSize, $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3482 3482
 
3483
-             if ( $Y == VOID && $LastY != NULL )
3484
-              { $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight)); $WayPoints = ""; }
3483
+             if ($Y == VOID && $LastY != NULL)
3484
+              { $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight)); $WayPoints = ""; }
3485 3485
 
3486
-             if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3487
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3486
+             if ($Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid)
3487
+              { $this->drawLine($LastGoodX, $LastGoodY, $X, $Y, $BreakSettings); }
3488 3488
 
3489
-             if ( $Y != VOID )
3490
-              $WayPoints[] = array($X,$Y);
3489
+             if ($Y != VOID)
3490
+              $WayPoints[] = array($X, $Y);
3491 3491
 
3492
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3493
-             if ( $Y == VOID ) { $Y = NULL; }
3492
+             if ($Y != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
3493
+             if ($Y == VOID) { $Y = NULL; }
3494 3494
 
3495 3495
              $LastX = $X; $LastY = $Y;
3496 3496
              $X = $X + $XStep;
3497 3497
             }
3498
-           $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3498
+           $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
3499 3499
           }
3500 3500
          else
3501 3501
           {
3502
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3502
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
3503 3503
            $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
3504
-           $Force = $YStep / 5;
3504
+           $Force = $YStep/5;
3505 3505
 
3506
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3506
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3507 3507
            $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3508
-           foreach($PosArray as $Key => $X)
3508
+           foreach ($PosArray as $Key => $X)
3509 3509
             {
3510
-             if ( $DisplayValues ) 
3511
-              $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3510
+             if ($DisplayValues) 
3511
+              $this->drawText($X + $DisplayOffset, $Y, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("Angle"=>270, "R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3512 3512
 
3513
-             if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3513
+             if ($RecordImageMap && $X != VOID) { $this->addToImageMap("CIRCLE", floor($X).",".floor($Y).",".$ImageMapPlotSize, $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3514 3514
 
3515
-             if ( $X == VOID && $LastX != NULL )
3516
-              { $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight)); $WayPoints = ""; }
3515
+             if ($X == VOID && $LastX != NULL)
3516
+              { $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight)); $WayPoints = ""; }
3517 3517
 
3518
-             if ( $X != VOID && $LastX == NULL && $LastGoodX != NULL && !$BreakVoid )
3519
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3518
+             if ($X != VOID && $LastX == NULL && $LastGoodX != NULL && !$BreakVoid)
3519
+              { $this->drawLine($LastGoodX, $LastGoodY, $X, $Y, $BreakSettings); }
3520 3520
 
3521
-             if ( $X != VOID )
3522
-              $WayPoints[] = array($X,$Y);
3521
+             if ($X != VOID)
3522
+              $WayPoints[] = array($X, $Y);
3523 3523
 
3524
-             if ( $X != VOID ) { $LastGoodX = $X; $LastGoodY = $Y; }
3525
-             if ( $X == VOID ) { $X = NULL; }
3524
+             if ($X != VOID) { $LastGoodX = $X; $LastGoodY = $Y; }
3525
+             if ($X == VOID) { $X = NULL; }
3526 3526
 
3527 3527
              $LastX = $X; $LastY = $Y;
3528 3528
              $Y = $Y + $YStep;
3529 3529
             }
3530
-           $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3530
+           $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
3531 3531
           }
3532 3532
         }
3533 3533
       }
3534 3534
     }
3535 3535
 
3536 3536
    /* Draw a filled spline chart */
3537
-   function drawFilledSplineChart($Format=NULL)
3537
+   function drawFilledSplineChart($Format = NULL)
3538 3538
     {
3539 3539
      $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3540 3540
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3541
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3541
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3542 3542
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3543 3543
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3544 3544
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
@@ -3548,158 +3548,158 @@  discard block
 block discarded – undo
3548 3548
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3549 3549
 
3550 3550
      $Data = $this->DataSet->getData();
3551
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3552
-     foreach($Data["Series"] as $SerieName => $Serie)
3551
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3552
+     foreach ($Data["Series"] as $SerieName => $Serie)
3553 3553
       {
3554
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3554
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
3555 3555
         {
3556 3556
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3557
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3557
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3558 3558
 
3559 3559
          $AxisID	= $Serie["Axis"];
3560 3560
          $Mode		= $Data["Axis"][$AxisID]["Display"];
3561 3561
          $Format	= $Data["Axis"][$AxisID]["Format"];
3562 3562
          $Unit		= $Data["Axis"][$AxisID]["Unit"];
3563 3563
 
3564
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3565
-         if ( $AroundZero ) { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
3564
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
3565
+         if ($AroundZero) { $YZero = $this->scaleComputeY(0, array("AxisID"=>$Serie["Axis"])); }
3566 3566
 
3567
-         if ( $Threshold != NULL )
3567
+         if ($Threshold != NULL)
3568 3568
           {
3569
-           foreach($Threshold as $Key => $Params)
3569
+           foreach ($Threshold as $Key => $Params)
3570 3570
             {
3571
-             $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"],array("AxisID"=>$Serie["Axis"]));
3572
-             $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"],array("AxisID"=>$Serie["Axis"]));
3571
+             $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"], array("AxisID"=>$Serie["Axis"]));
3572
+             $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"], array("AxisID"=>$Serie["Axis"]));
3573 3573
             }
3574 3574
           }
3575 3575
 
3576 3576
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3577 3577
 
3578
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3578
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3579 3579
           {
3580
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3580
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
3581 3581
            $X     = $this->GraphAreaX1 + $XMargin; $WayPoints = "";
3582
-           $Force = $XStep / 5;
3582
+           $Force = $XStep/5;
3583 3583
 
3584
-           if ( !$AroundZero ) { $YZero = $this->GraphAreaY2-1; }
3585
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
3586
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
3584
+           if (!$AroundZero) { $YZero = $this->GraphAreaY2 - 1; }
3585
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
3586
+           if ($YZero < $this->GraphAreaY1 + 1) { $YZero = $this->GraphAreaY1 + 1; }
3587 3587
 
3588 3588
            $LastX = ""; $LastY = "";
3589
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3590
-           foreach($PosArray as $Key => $Y)
3589
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3590
+           foreach ($PosArray as $Key => $Y)
3591 3591
             {
3592
-             if ( $DisplayValues ) 
3593
-              $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3592
+             if ($DisplayValues) 
3593
+              $this->drawText($X, $Y - $DisplayOffset, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3594 3594
 
3595
-             if ( $Y == VOID )
3595
+             if ($Y == VOID)
3596 3596
               {
3597
-               $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3597
+               $Area = $this->drawSpline($WayPoints, array("Force"=>$Force, "PathOnly"=>TRUE));
3598 3598
 
3599
-               if ( $Area != "" )
3599
+               if ($Area != "")
3600 3600
                 {
3601 3601
                  foreach ($Area as $key => $Points)
3602 3602
                   {
3603 3603
                    $Corners = ""; $Corners[] = $Area[$key][0]["X"]; $Corners[] = $YZero;
3604
-                   foreach($Points as $subKey => $Point)
3604
+                   foreach ($Points as $subKey => $Point)
3605 3605
                     {
3606
-                     if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3607
-                     $Corners[] = $Point["Y"]+1;
3606
+                     if ($subKey == count($Points) - 1) { $Corners[] = $Point["X"] - 1; } else { $Corners[] = $Point["X"]; }
3607
+                     $Corners[] = $Point["Y"] + 1;
3608 3608
                     }
3609
-                   $Corners[] = $Points[$subKey]["X"]-1; $Corners[] = $YZero;
3609
+                   $Corners[] = $Points[$subKey]["X"] - 1; $Corners[] = $YZero;
3610 3610
 
3611
-                   $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3611
+                   $this->drawPolygonChart($Corners, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/2, "NoBorder"=>TRUE, "Threshold"=>$Threshold));
3612 3612
                   }
3613
-                 $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3613
+                 $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
3614 3614
                 }
3615 3615
 
3616 3616
                $WayPoints = "";
3617 3617
               }
3618 3618
              else
3619
-              $WayPoints[] = array($X,$Y-.5); /* -.5 for AA visual fix */
3619
+              $WayPoints[] = array($X, $Y - .5); /* -.5 for AA visual fix */
3620 3620
 
3621 3621
              $X = $X + $XStep;
3622 3622
             }
3623
-           $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3623
+           $Area = $this->drawSpline($WayPoints, array("Force"=>$Force, "PathOnly"=>TRUE));
3624 3624
 
3625
-           if ( $Area != "" )
3625
+           if ($Area != "")
3626 3626
             {
3627 3627
              foreach ($Area as $key => $Points)
3628 3628
               {
3629 3629
                $Corners = ""; $Corners[] = $Area[$key][0]["X"]; $Corners[] = $YZero;
3630
-               foreach($Points as $subKey => $Point)
3630
+               foreach ($Points as $subKey => $Point)
3631 3631
                 {
3632
-                 if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3633
-                 $Corners[] = $Point["Y"]+1;
3632
+                 if ($subKey == count($Points) - 1) { $Corners[] = $Point["X"] - 1; } else { $Corners[] = $Point["X"]; }
3633
+                 $Corners[] = $Point["Y"] + 1;
3634 3634
                 }
3635
-               $Corners[] = $Points[$subKey]["X"]-1; $Corners[] = $YZero;
3635
+               $Corners[] = $Points[$subKey]["X"] - 1; $Corners[] = $YZero;
3636 3636
 
3637
-               $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3637
+               $this->drawPolygonChart($Corners, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/2, "NoBorder"=>TRUE, "Threshold"=>$Threshold));
3638 3638
               }
3639
-             $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3639
+             $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
3640 3640
             }
3641 3641
           }
3642 3642
          else
3643 3643
           {
3644
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3644
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
3645 3645
            $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
3646
-           $Force = $YStep / 5;
3646
+           $Force = $YStep/5;
3647 3647
 
3648
-           if ( !$AroundZero ) { $YZero = $this->GraphAreaX1+1; }
3649
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
3650
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
3648
+           if (!$AroundZero) { $YZero = $this->GraphAreaX1 + 1; }
3649
+           if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
3650
+           if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
3651 3651
 
3652
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3653
-           foreach($PosArray as $Key => $X)
3652
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3653
+           foreach ($PosArray as $Key => $X)
3654 3654
             {
3655
-             if ( $DisplayValues ) 
3656
-              $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3655
+             if ($DisplayValues) 
3656
+              $this->drawText($X + $DisplayOffset, $Y, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("Angle"=>270, "R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3657 3657
 
3658
-             if ( $X == VOID )
3658
+             if ($X == VOID)
3659 3659
               {
3660
-               $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3660
+               $Area = $this->drawSpline($WayPoints, array("Force"=>$Force, "PathOnly"=>TRUE));
3661 3661
 
3662
-               if ( $Area != "" )
3662
+               if ($Area != "")
3663 3663
                 {
3664 3664
                  foreach ($Area as $key => $Points)
3665 3665
                   {
3666 3666
                    $Corners = ""; $Corners[] = $YZero; $Corners[] = $Area[$key][0]["Y"];
3667
-                   foreach($Points as $subKey => $Point)
3667
+                   foreach ($Points as $subKey => $Point)
3668 3668
                     {
3669
-                     if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3669
+                     if ($subKey == count($Points) - 1) { $Corners[] = $Point["X"] - 1; } else { $Corners[] = $Point["X"]; }
3670 3670
                      $Corners[] = $Point["Y"];
3671 3671
                     }
3672
-                   $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"]-1;
3672
+                   $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"] - 1;
3673 3673
 
3674
-                   $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3674
+                   $this->drawPolygonChart($Corners, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/2, "NoBorder"=>TRUE, "Threshold"=>$Threshold));
3675 3675
                   }
3676
-                 $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3676
+                 $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
3677 3677
                 }
3678 3678
 
3679 3679
                $WayPoints = "";
3680 3680
               }
3681 3681
              else
3682
-              $WayPoints[] = array($X,$Y);
3682
+              $WayPoints[] = array($X, $Y);
3683 3683
 
3684 3684
              $Y = $Y + $YStep;
3685 3685
             }
3686
-           $Area = $this->drawSpline($WayPoints,array("Force"=>$Force,"PathOnly"=>TRUE));
3686
+           $Area = $this->drawSpline($WayPoints, array("Force"=>$Force, "PathOnly"=>TRUE));
3687 3687
 
3688
-           if ( $Area != "" )
3688
+           if ($Area != "")
3689 3689
             {
3690 3690
              foreach ($Area as $key => $Points)
3691 3691
               {
3692 3692
                $Corners = ""; $Corners[] = $YZero; $Corners[] = $Area[$key][0]["Y"];
3693
-               foreach($Points as $subKey => $Point)
3693
+               foreach ($Points as $subKey => $Point)
3694 3694
                 {
3695
-                 if ( $subKey == count($Points)-1) { $Corners[] = $Point["X"]-1; } else { $Corners[] = $Point["X"]; }
3695
+                 if ($subKey == count($Points) - 1) { $Corners[] = $Point["X"] - 1; } else { $Corners[] = $Point["X"]; }
3696 3696
                  $Corners[] = $Point["Y"];
3697 3697
                 }
3698
-               $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"]-1;
3698
+               $Corners[] = $YZero; $Corners[] = $Points[$subKey]["Y"] - 1;
3699 3699
 
3700
-               $this->drawPolygonChart($Corners,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha/2,"NoBorder"=>TRUE,"Threshold"=>$Threshold));
3700
+               $this->drawPolygonChart($Corners, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha/2, "NoBorder"=>TRUE, "Threshold"=>$Threshold));
3701 3701
               }
3702
-             $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3702
+             $this->drawSpline($WayPoints, array("Force"=>$Force, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks));
3703 3703
             }
3704 3704
 
3705 3705
           }
@@ -3708,7 +3708,7 @@  discard block
 block discarded – undo
3708 3708
     }
3709 3709
 
3710 3710
    /* Draw a line chart */
3711
-   function drawLineChart($Format=NULL)
3711
+   function drawLineChart($Format = NULL)
3712 3712
     {
3713 3713
      $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : TRUE;
3714 3714
      $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
@@ -3717,37 +3717,37 @@  discard block
 block discarded – undo
3717 3717
      $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL;
3718 3718
      $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3719 3719
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3720
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3720
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3721 3721
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3722 3722
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3723 3723
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3724
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3725
-     $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3726
-     $ForceColor	= isset($Format["ForceColor"]) ? $Format["ForceColor"] : FALSE;
3724
+     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3725
+     $ImageMapPlotSize = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3726
+     $ForceColor = isset($Format["ForceColor"]) ? $Format["ForceColor"] : FALSE;
3727 3727
      $ForceR		= isset($Format["ForceR"]) ? $Format["ForceR"] : 0;
3728 3728
      $ForceG		= isset($Format["ForceG"]) ? $Format["ForceG"] : 0;
3729 3729
      $ForceB		= isset($Format["ForceB"]) ? $Format["ForceB"] : 0;
3730
-     $ForceAlpha	= isset($Format["ForceAlpha"]) ? $Format["ForceAlpha"] : 100;
3730
+     $ForceAlpha = isset($Format["ForceAlpha"]) ? $Format["ForceAlpha"] : 100;
3731 3731
 
3732 3732
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3733 3733
 
3734 3734
      $Data = $this->DataSet->getData();
3735
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3736
-     foreach($Data["Series"] as $SerieName => $Serie)
3735
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3736
+     foreach ($Data["Series"] as $SerieName => $Serie)
3737 3737
       {
3738
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3738
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
3739 3739
         {
3740 3740
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3741 3741
 
3742
-         if ( $ForceColor )
3742
+         if ($ForceColor)
3743 3743
           { $R = $ForceR; $G = $ForceG; $B = $ForceB; $Alpha = $ForceAlpha; }
3744 3744
 
3745
-         if ( $BreakR == NULL )
3746
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3745
+         if ($BreakR == NULL)
3746
+          $BreakSettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$VoidTicks, "Weight"=>$Weight);
3747 3747
          else
3748
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3748
+          $BreakSettings = array("R"=>$BreakR, "G"=>$BreakG, "B"=>$BreakB, "Alpha"=>$Alpha, "Ticks"=>$VoidTicks, "Weight"=>$Weight);
3749 3749
 
3750
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3750
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3751 3751
 
3752 3752
          $AxisID	= $Serie["Axis"];
3753 3753
          $Mode		= $Data["Axis"][$AxisID]["Display"];
@@ -3756,35 +3756,35 @@  discard block
 block discarded – undo
3756 3756
 
3757 3757
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3758 3758
 
3759
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3759
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
3760 3760
 
3761 3761
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3762 3762
 
3763
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3763
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3764 3764
           {
3765
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3765
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
3766 3766
            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3767 3767
 
3768
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3768
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3769 3769
            $LastGoodY = NULL; $LastGoodX = NULL;
3770
-           foreach($PosArray as $Key => $Y)
3770
+           foreach ($PosArray as $Key => $Y)
3771 3771
             {
3772
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3772
+             if ($DisplayValues && $Serie["Data"][$Key] != VOID) 
3773 3773
               {
3774
-               if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3775
-               $this->drawText($X,$Y-$Offset-$Weight,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
3774
+               if ($Serie["Data"][$Key] > 0) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3775
+               $this->drawText($X, $Y - $Offset - $Weight, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align));
3776 3776
               }
3777 3777
 
3778
-             if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3778
+             if ($RecordImageMap && $Y != VOID) { $this->addToImageMap("CIRCLE", floor($X).",".floor($Y).",".$ImageMapPlotSize, $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3779 3779
 
3780
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3781
-              $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3780
+             if ($Y != VOID && $LastX != NULL && $LastY != NULL)
3781
+              $this->drawLine($LastX, $LastY, $X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
3782 3782
 
3783
-             if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3784
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
3783
+             if ($Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid)
3784
+              { $this->drawLine($LastGoodX, $LastGoodY, $X, $Y, $BreakSettings); $LastGoodY = NULL; }
3785 3785
 
3786
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3787
-             if ( $Y == VOID ) { $Y = NULL; }
3786
+             if ($Y != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
3787
+             if ($Y == VOID) { $Y = NULL; }
3788 3788
 
3789 3789
              $LastX = $X; $LastY = $Y;
3790 3790
              $X = $X + $XStep;
@@ -3792,26 +3792,26 @@  discard block
 block discarded – undo
3792 3792
           }
3793 3793
          else
3794 3794
           {
3795
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3795
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
3796 3796
            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
3797 3797
 
3798
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3798
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3799 3799
            $LastGoodY = NULL; $LastGoodX = NULL;
3800
-           foreach($PosArray as $Key => $X)
3800
+           foreach ($PosArray as $Key => $X)
3801 3801
             {
3802
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3803
-              { $this->drawText($X+$DisplayOffset+$Weight,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
3802
+             if ($DisplayValues && $Serie["Data"][$Key] != VOID) 
3803
+              { $this->drawText($X + $DisplayOffset + $Weight, $Y, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("Angle"=>270, "R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
3804 3804
 
3805
-             if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3805
+             if ($RecordImageMap && $X != VOID) { $this->addToImageMap("CIRCLE", floor($X).",".floor($Y).",".$ImageMapPlotSize, $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3806 3806
 
3807
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
3808
-              $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3807
+             if ($X != VOID && $LastX != NULL && $LastY != NULL)
3808
+              $this->drawLine($LastX, $LastY, $X, $Y, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight));
3809 3809
 
3810
-             if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
3811
-              { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
3810
+             if ($X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid)
3811
+              { $this->drawLine($LastGoodX, $LastGoodY, $X, $Y, $BreakSettings); $LastGoodY = NULL; }
3812 3812
 
3813
-             if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3814
-             if ( $X == VOID ) { $X = NULL; }
3813
+             if ($X != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
3814
+             if ($X == VOID) { $X = NULL; }
3815 3815
 
3816 3816
              $LastX = $X; $LastY = $Y;
3817 3817
              $Y = $Y + $YStep;
@@ -3822,9 +3822,9 @@  discard block
 block discarded – undo
3822 3822
     }
3823 3823
 
3824 3824
    /* Draw a line chart */
3825
-   function drawZoneChart($SerieA,$SerieB,$Format=NULL)
3825
+   function drawZoneChart($SerieA, $SerieB, $Format = NULL)
3826 3826
     {
3827
-     $AxisID	= isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
3827
+     $AxisID = isset($Format["AxisID"]) ? $Format["AxisID"] : 0;
3828 3828
      $LineR	= isset($Format["LineR"]) ? $Format["LineR"] : 150;
3829 3829
      $LineG	= isset($Format["LineG"]) ? $Format["LineG"] : 150;
3830 3830
      $LineB	= isset($Format["LineB"]) ? $Format["LineB"] : 150;
@@ -3833,33 +3833,33 @@  discard block
 block discarded – undo
3833 3833
      $AreaR	= isset($Format["AreaR"]) ? $Format["AreaR"] : 150;
3834 3834
      $AreaG	= isset($Format["AreaG"]) ? $Format["AreaG"] : 150;
3835 3835
      $AreaB	= isset($Format["AreaB"]) ? $Format["AreaB"] : 150;
3836
-     $AreaAlpha	= isset($Format["AreaAlpha"]) ? $Format["AreaAlpha"] : 5;
3836
+     $AreaAlpha = isset($Format["AreaAlpha"]) ? $Format["AreaAlpha"] : 5;
3837 3837
 
3838 3838
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3839 3839
 
3840
-     $Data	 = $this->DataSet->getData();
3841
-     if ( !isset($Data["Series"][$SerieA]["Data"]) || !isset($Data["Series"][$SerieB]["Data"]) ) { return(0); }
3840
+     $Data = $this->DataSet->getData();
3841
+     if (!isset($Data["Series"][$SerieA]["Data"]) || !isset($Data["Series"][$SerieB]["Data"])) { return(0); }
3842 3842
      $SerieAData = $Data["Series"][$SerieA]["Data"];
3843 3843
      $SerieBData = $Data["Series"][$SerieB]["Data"];
3844 3844
 
3845
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3845
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3846 3846
 
3847 3847
      $Mode	= $Data["Axis"][$AxisID]["Display"];
3848
-     $Format	= $Data["Axis"][$AxisID]["Format"];
3848
+     $Format = $Data["Axis"][$AxisID]["Format"];
3849 3849
      $Unit	= $Data["Axis"][$AxisID]["Unit"];
3850 3850
 
3851
-     $PosArrayA = $this->scaleComputeY($SerieAData,array("AxisID"=>$AxisID));
3852
-     $PosArrayB = $this->scaleComputeY($SerieBData,array("AxisID"=>$AxisID));
3853
-     if ( count($PosArrayA) != count($PosArrayB) ) { return(0); }
3851
+     $PosArrayA = $this->scaleComputeY($SerieAData, array("AxisID"=>$AxisID));
3852
+     $PosArrayB = $this->scaleComputeY($SerieBData, array("AxisID"=>$AxisID));
3853
+     if (count($PosArrayA) != count($PosArrayB)) { return(0); }
3854 3854
 
3855
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3855
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3856 3856
       {
3857
-       if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3857
+       if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
3858 3858
        $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3859 3859
 
3860 3860
        $LastX = NULL; $LastY1 = NULL; $LastY2 = NULL;
3861 3861
        $BoundsA = ""; $BoundsB = "";
3862
-       foreach($PosArrayA as $Key => $Y1)
3862
+       foreach ($PosArrayA as $Key => $Y1)
3863 3863
         {
3864 3864
          $Y2 = $PosArrayB[$Key];
3865 3865
 
@@ -3871,23 +3871,23 @@  discard block
 block discarded – undo
3871 3871
 
3872 3872
          $X = $X + $XStep;
3873 3873
         }
3874
-       $Bounds = array_merge($BoundsA,$this->reversePlots($BoundsB));
3875
-       $this->drawPolygonChart($Bounds,array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"Alpha"=>$AreaAlpha));
3874
+       $Bounds = array_merge($BoundsA, $this->reversePlots($BoundsB));
3875
+       $this->drawPolygonChart($Bounds, array("R"=>$AreaR, "G"=>$AreaG, "B"=>$AreaB, "Alpha"=>$AreaAlpha));
3876 3876
 
3877
-       for($i=0;$i<=count($BoundsA)-4;$i=$i+2)
3877
+       for ($i = 0; $i <= count($BoundsA) - 4; $i = $i + 2)
3878 3878
         {
3879
-         $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3880
-         $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3879
+         $this->drawLine($BoundsA[$i], $BoundsA[$i + 1], $BoundsA[$i + 2], $BoundsA[$i + 3], array("R"=>$LineR, "G"=>$LineG, "B"=>$LineB, "Alpha"=>$LineAlpha, "Ticks"=>$LineTicks));
3880
+         $this->drawLine($BoundsB[$i], $BoundsB[$i + 1], $BoundsB[$i + 2], $BoundsB[$i + 3], array("R"=>$LineR, "G"=>$LineG, "B"=>$LineB, "Alpha"=>$LineAlpha, "Ticks"=>$LineTicks));
3881 3881
         }
3882 3882
       }
3883 3883
      else
3884 3884
       {
3885
-       if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3885
+       if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
3886 3886
        $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
3887 3887
 
3888 3888
        $LastY = NULL; $LastX1 = NULL; $LastX2 = NULL;
3889 3889
        $BoundsA = ""; $BoundsB = "";
3890
-       foreach($PosArrayA as $Key => $X1)
3890
+       foreach ($PosArrayA as $Key => $X1)
3891 3891
         {
3892 3892
          $X2 = $PosArrayB[$Key];
3893 3893
 
@@ -3899,180 +3899,180 @@  discard block
 block discarded – undo
3899 3899
 
3900 3900
          $Y = $Y + $YStep;
3901 3901
         }
3902
-       $Bounds = array_merge($BoundsA,$this->reversePlots($BoundsB));
3903
-       $this->drawPolygonChart($Bounds,array("R"=>$AreaR,"G"=>$AreaG,"B"=>$AreaB,"Alpha"=>$AreaAlpha));
3902
+       $Bounds = array_merge($BoundsA, $this->reversePlots($BoundsB));
3903
+       $this->drawPolygonChart($Bounds, array("R"=>$AreaR, "G"=>$AreaG, "B"=>$AreaB, "Alpha"=>$AreaAlpha));
3904 3904
 
3905
-       for($i=0;$i<=count($BoundsA)-4;$i=$i+2)
3905
+       for ($i = 0; $i <= count($BoundsA) - 4; $i = $i + 2)
3906 3906
         {
3907
-         $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3908
-         $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3907
+         $this->drawLine($BoundsA[$i], $BoundsA[$i + 1], $BoundsA[$i + 2], $BoundsA[$i + 3], array("R"=>$LineR, "G"=>$LineG, "B"=>$LineB, "Alpha"=>$LineAlpha, "Ticks"=>$LineTicks));
3908
+         $this->drawLine($BoundsB[$i], $BoundsB[$i + 1], $BoundsB[$i + 2], $BoundsB[$i + 3], array("R"=>$LineR, "G"=>$LineG, "B"=>$LineB, "Alpha"=>$LineAlpha, "Ticks"=>$LineTicks));
3909 3909
         }
3910 3910
       }
3911 3911
     }
3912 3912
 
3913 3913
    /* Draw a step chart */
3914
-   function drawStepChart($Format=NULL)
3914
+   function drawStepChart($Format = NULL)
3915 3915
     {
3916 3916
      $BreakVoid		= isset($Format["BreakVoid"]) ? $Format["BreakVoid"] : FALSE;
3917
-     $ReCenter		= isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
3917
+     $ReCenter = isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
3918 3918
      $VoidTicks		= isset($Format["VoidTicks"]) ? $Format["VoidTicks"] : 4;
3919 3919
      $BreakR		= isset($Format["BreakR"]) ? $Format["BreakR"] : NULL;
3920 3920
      $BreakG		= isset($Format["BreakG"]) ? $Format["BreakG"] : NULL;
3921 3921
      $BreakB		= isset($Format["BreakB"]) ? $Format["BreakB"] : NULL;
3922
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] :FALSE;
3922
+     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
3923 3923
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
3924
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3924
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
3925 3925
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
3926 3926
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
3927 3927
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
3928
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3929
-     $ImageMapPlotSize  = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3928
+     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
3929
+     $ImageMapPlotSize = isset($Format["ImageMapPlotSize"]) ? $Format["ImageMapPlotSize"] : 5;
3930 3930
 
3931 3931
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
3932 3932
 
3933 3933
      $Data = $this->DataSet->getData();
3934
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
3935
-     foreach($Data["Series"] as $SerieName => $Serie)
3934
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
3935
+     foreach ($Data["Series"] as $SerieName => $Serie)
3936 3936
       {
3937
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
3937
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
3938 3938
         {
3939 3939
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3940 3940
 
3941 3941
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3942 3942
 
3943
-         if ( $BreakR == NULL )
3944
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3943
+         if ($BreakR == NULL)
3944
+          $BreakSettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$VoidTicks, "Weight"=>$Weight);
3945 3945
          else
3946
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3946
+          $BreakSettings = array("R"=>$BreakR, "G"=>$BreakG, "B"=>$BreakB, "Alpha"=>$Alpha, "Ticks"=>$VoidTicks, "Weight"=>$Weight);
3947 3947
 
3948
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3948
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3949 3949
 
3950 3950
          $AxisID	= $Serie["Axis"];
3951 3951
          $Mode		= $Data["Axis"][$AxisID]["Display"];
3952 3952
          $Format	= $Data["Axis"][$AxisID]["Format"];
3953 3953
          $Unit		= $Data["Axis"][$AxisID]["Unit"];
3954
-         $Color		= array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
3954
+         $Color		= array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight);
3955 3955
 
3956
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
3956
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
3957 3957
 
3958 3958
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
3959 3959
 
3960
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
3960
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
3961 3961
           {
3962
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
3962
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
3963 3963
            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
3964 3964
 
3965
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3965
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3966 3966
            $LastGoodY = NULL; $LastGoodX = NULL; $Init = FALSE;
3967
-           foreach($PosArray as $Key => $Y)
3967
+           foreach ($PosArray as $Key => $Y)
3968 3968
             {
3969
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
3969
+             if ($DisplayValues && $Serie["Data"][$Key] != VOID) 
3970 3970
               {
3971
-               if ( $Y <= $LastY ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3972
-               $this->drawText($X,$Y-$Offset-$Weight,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
3971
+               if ($Y <= $LastY) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
3972
+               $this->drawText($X, $Y - $Offset - $Weight, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align));
3973 3973
               }
3974 3974
 
3975
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3975
+             if ($Y != VOID && $LastX != NULL && $LastY != NULL)
3976 3976
               {
3977
-               $this->drawLine($LastX,$LastY,$X,$LastY,$Color);
3978
-               $this->drawLine($X,$LastY,$X,$Y,$Color);
3979
-               if ( $ReCenter && $X+$XStep < $this->GraphAreaX2 - $XMargin )
3977
+               $this->drawLine($LastX, $LastY, $X, $LastY, $Color);
3978
+               $this->drawLine($X, $LastY, $X, $Y, $Color);
3979
+               if ($ReCenter && $X + $XStep < $this->GraphAreaX2 - $XMargin)
3980 3980
                 {
3981
-                 $this->drawLine($X,$Y,$X+$XStep,$Y,$Color);
3982
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3981
+                 $this->drawLine($X, $Y, $X + $XStep, $Y, $Color);
3982
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X - $ImageMapPlotSize).",".floor($Y - $ImageMapPlotSize).",".floor($X + $XStep + $ImageMapPlotSize).",".floor($Y + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3983 3983
                 }
3984 3984
                else
3985
-                { if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); } }
3985
+                { if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastX - $ImageMapPlotSize).",".floor($LastY - $ImageMapPlotSize).",".floor($X + $ImageMapPlotSize).",".floor($LastY + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); } }
3986 3986
               }
3987 3987
 
3988
-             if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3988
+             if ($Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid)
3989 3989
               { 
3990
-               if ( $ReCenter )
3990
+               if ($ReCenter)
3991 3991
                 {
3992
-                 $this->drawLine($LastGoodX+$XStep,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3993
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX+$XStep-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3992
+                 $this->drawLine($LastGoodX + $XStep, $LastGoodY, $X, $LastGoodY, $BreakSettings);
3993
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastGoodX + $XStep - $ImageMapPlotSize).",".floor($LastGoodY - $ImageMapPlotSize).",".floor($X + $ImageMapPlotSize).",".floor($LastGoodY + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3994 3994
                 }
3995 3995
                else
3996 3996
                 {
3997
-                 $this->drawLine($LastGoodX,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3998
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3997
+                 $this->drawLine($LastGoodX, $LastGoodY, $X, $LastGoodY, $BreakSettings);
3998
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastGoodX - $ImageMapPlotSize).",".floor($LastGoodY - $ImageMapPlotSize).",".floor($X + $ImageMapPlotSize).",".floor($LastGoodY + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
3999 3999
                 }
4000 4000
 
4001
-               $this->drawLine($X,$LastGoodY,$X,$Y,$BreakSettings);
4001
+               $this->drawLine($X, $LastGoodY, $X, $Y, $BreakSettings);
4002 4002
                $LastGoodY = NULL;
4003 4003
               }
4004
-             elseif( !$BreakVoid && $LastGoodY == NULL && $Y != VOID )
4004
+             elseif (!$BreakVoid && $LastGoodY == NULL && $Y != VOID)
4005 4005
               {
4006
-              $this->drawLine($this->GraphAreaX1 + $XMargin,$Y,$X,$Y,$BreakSettings);
4007
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($this->GraphAreaX1+$XMargin-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4006
+              $this->drawLine($this->GraphAreaX1 + $XMargin, $Y, $X, $Y, $BreakSettings);
4007
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($this->GraphAreaX1 + $XMargin - $ImageMapPlotSize).",".floor($Y - $ImageMapPlotSize).",".floor($X + $ImageMapPlotSize).",".floor($Y + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4008 4008
               }
4009 4009
 
4010
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4011
-             if ( $Y == VOID ) { $Y = NULL; }
4010
+             if ($Y != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
4011
+             if ($Y == VOID) { $Y = NULL; }
4012 4012
 
4013
-             if ( !$Init && $ReCenter ) { $X = $X - $XStep/2; $Init = TRUE; }
4013
+             if (!$Init && $ReCenter) { $X = $X - $XStep/2; $Init = TRUE; }
4014 4014
              $LastX = $X; $LastY = $Y;
4015
-             if ( $LastX < $this->GraphAreaX1 + $XMargin ) { $LastX = $this->GraphAreaX1 + $XMargin; }
4015
+             if ($LastX < $this->GraphAreaX1 + $XMargin) { $LastX = $this->GraphAreaX1 + $XMargin; }
4016 4016
              $X = $X + $XStep;
4017 4017
             }
4018
-           if ( $ReCenter )
4018
+           if ($ReCenter)
4019 4019
             {
4020
-             $this->drawLine($LastX,$LastY,$this->GraphAreaX2 - $XMargin,$LastY,$Color);
4021
-             if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($this->GraphAreaX2-$XMargin+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4020
+             $this->drawLine($LastX, $LastY, $this->GraphAreaX2 - $XMargin, $LastY, $Color);
4021
+             if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastX - $ImageMapPlotSize).",".floor($LastY - $ImageMapPlotSize).",".floor($this->GraphAreaX2 - $XMargin + $ImageMapPlotSize).",".floor($LastY + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4022 4022
             }
4023 4023
           }
4024 4024
          else
4025 4025
           {
4026
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4026
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
4027 4027
            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4028 4028
 
4029
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4029
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4030 4030
            $LastGoodY = NULL; $LastGoodX = NULL; $Init = FALSE;
4031
-           foreach($PosArray as $Key => $X)
4031
+           foreach ($PosArray as $Key => $X)
4032 4032
             {
4033
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
4033
+             if ($DisplayValues && $Serie["Data"][$Key] != VOID) 
4034 4034
               {
4035
-               if ( $X >= $LastX ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4036
-               $this->drawText($X+$Offset+$Weight,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4035
+               if ($X >= $LastX) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4036
+               $this->drawText($X + $Offset + $Weight, $Y, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align));
4037 4037
               }
4038 4038
 
4039
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
4039
+             if ($X != VOID && $LastX != NULL && $LastY != NULL)
4040 4040
               {
4041
-               $this->drawLine($LastX,$LastY,$LastX,$Y,$Color);
4042
-               $this->drawLine($LastX,$Y,$X,$Y,$Color);
4041
+               $this->drawLine($LastX, $LastY, $LastX, $Y, $Color);
4042
+               $this->drawLine($LastX, $Y, $X, $Y, $Color);
4043 4043
 
4044
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($LastX+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4044
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastX - $ImageMapPlotSize).",".floor($LastY - $ImageMapPlotSize).",".floor($LastX + $XStep + $ImageMapPlotSize).",".floor($Y + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4045 4045
               }
4046 4046
 
4047
-             if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
4047
+             if ($X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid)
4048 4048
               {
4049
-               $this->drawLine($LastGoodX,$LastGoodY,$LastGoodX,$LastGoodY+$YStep,$Color);
4050
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($LastGoodX+$ImageMapPlotSize).",".floor($LastGoodY+$YStep+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4049
+               $this->drawLine($LastGoodX, $LastGoodY, $LastGoodX, $LastGoodY + $YStep, $Color);
4050
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastGoodX - $ImageMapPlotSize).",".floor($LastGoodY - $ImageMapPlotSize).",".floor($LastGoodX + $ImageMapPlotSize).",".floor($LastGoodY + $YStep + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4051 4051
 
4052
-               $this->drawLine($LastGoodX,$LastGoodY+$YStep,$LastGoodX,$Y,$BreakSettings);
4053
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY+$YStep-$ImageMapPlotSize).",".floor($LastGoodX+$ImageMapPlotSize).",".floor($YStep+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4052
+               $this->drawLine($LastGoodX, $LastGoodY + $YStep, $LastGoodX, $Y, $BreakSettings);
4053
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastGoodX - $ImageMapPlotSize).",".floor($LastGoodY + $YStep - $ImageMapPlotSize).",".floor($LastGoodX + $ImageMapPlotSize).",".floor($YStep + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4054 4054
 
4055
-               $this->drawLine($LastGoodX,$Y,$X,$Y,$BreakSettings);
4055
+               $this->drawLine($LastGoodX, $Y, $X, $Y, $BreakSettings);
4056 4056
                $LastGoodY = NULL;
4057 4057
               }
4058
-             elseif ( $X != VOID && $LastGoodY == NULL && !$BreakVoid )
4058
+             elseif ($X != VOID && $LastGoodY == NULL && !$BreakVoid)
4059 4059
               {
4060
-               $this->drawLine($X,$this->GraphAreaY1 + $XMargin,$X,$Y,$BreakSettings);
4061
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($this->GraphAreaY1+$XMargin-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4060
+               $this->drawLine($X, $this->GraphAreaY1 + $XMargin, $X, $Y, $BreakSettings);
4061
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X - $ImageMapPlotSize).",".floor($this->GraphAreaY1 + $XMargin - $ImageMapPlotSize).",".floor($X + $ImageMapPlotSize).",".floor($Y + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4062 4062
               }
4063 4063
 
4064
-             if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4065
-             if ( $X == VOID ) { $X = NULL; }
4064
+             if ($X != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
4065
+             if ($X == VOID) { $X = NULL; }
4066 4066
 
4067
-             if ( !$Init && $ReCenter ) { $Y = $Y - $YStep/2; $Init = TRUE; }
4067
+             if (!$Init && $ReCenter) { $Y = $Y - $YStep/2; $Init = TRUE; }
4068 4068
              $LastX = $X; $LastY = $Y;
4069
-             if ( $LastY < $this->GraphAreaY1 + $XMargin ) { $LastY = $this->GraphAreaY1 + $XMargin; }
4069
+             if ($LastY < $this->GraphAreaY1 + $XMargin) { $LastY = $this->GraphAreaY1 + $XMargin; }
4070 4070
              $Y = $Y + $YStep;
4071 4071
             }
4072
-           if ( $ReCenter )
4072
+           if ($ReCenter)
4073 4073
             {
4074
-             $this->drawLine($LastX,$LastY,$LastX,$this->GraphAreaY2 - $XMargin,$Color);
4075
-             if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($LastX+$ImageMapPlotSize).",".floor($this->GraphAreaY2-$XMargin+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4074
+             $this->drawLine($LastX, $LastY, $LastX, $this->GraphAreaY2 - $XMargin, $Color);
4075
+             if ($RecordImageMap) { $this->addToImageMap("RECT", floor($LastX - $ImageMapPlotSize).",".floor($LastY - $ImageMapPlotSize).",".floor($LastX + $ImageMapPlotSize).",".floor($this->GraphAreaY2 - $XMargin + $ImageMapPlotSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4076 4076
             }
4077 4077
           }
4078 4078
         }
@@ -4080,225 +4080,225 @@  discard block
 block discarded – undo
4080 4080
     }
4081 4081
 
4082 4082
    /* Draw a step chart */
4083
-   function drawFilledStepChart($Format=NULL)
4083
+   function drawFilledStepChart($Format = NULL)
4084 4084
     {
4085
-     $ReCenter		= isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
4086
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] :FALSE;
4085
+     $ReCenter = isset($Format["ReCenter"]) ? $Format["ReCenter"] : TRUE;
4086
+     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4087 4087
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4088
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4089
-     $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
4088
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4089
+     $ForceTransparency = isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
4090 4090
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4091 4091
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4092 4092
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4093
-     $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4093
+     $AroundZero = isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4094 4094
 
4095 4095
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4096 4096
 
4097 4097
      $Data = $this->DataSet->getData();
4098
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4099
-     foreach($Data["Series"] as $SerieName => $Serie)
4098
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
4099
+     foreach ($Data["Series"] as $SerieName => $Serie)
4100 4100
       {
4101
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4101
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
4102 4102
         {
4103 4103
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
4104 4104
 
4105
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4105
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4106 4106
 
4107 4107
          $AxisID	= $Serie["Axis"];
4108 4108
          $Mode		= $Data["Axis"][$AxisID]["Display"];
4109 4109
          $Format	= $Data["Axis"][$AxisID]["Format"];
4110 4110
          $Unit		= $Data["Axis"][$AxisID]["Unit"];
4111 4111
 
4112
-         $Color		= array("R"=>$R,"G"=>$G,"B"=>$B);
4113
-         if ( $ForceTransparency != NULL ) { $Color["Alpha"] = $ForceTransparency; } else { $Color["Alpha"] = $Alpha; }
4112
+         $Color		= array("R"=>$R, "G"=>$G, "B"=>$B);
4113
+         if ($ForceTransparency != NULL) { $Color["Alpha"] = $ForceTransparency; } else { $Color["Alpha"] = $Alpha; }
4114 4114
 
4115
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4116
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4115
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
4116
+         $YZero    = $this->scaleComputeY(0, array("AxisID"=>$Serie["Axis"]));
4117 4117
 
4118 4118
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4119 4119
 
4120
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4120
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
4121 4121
           {
4122
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4123
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4122
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
4123
+           if ($YZero < $this->GraphAreaY1 + 1) { $YZero = $this->GraphAreaY1 + 1; }
4124 4124
 
4125
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4125
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
4126 4126
            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
4127 4127
 
4128
-           if ( !$AroundZero ) { $YZero = $this->GraphAreaY2-1; }
4128
+           if (!$AroundZero) { $YZero = $this->GraphAreaY2 - 1; }
4129 4129
 
4130
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4130
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4131 4131
            $LastGoodY = NULL; $LastGoodX = NULL; $Points = ""; $Init = FALSE;
4132
-           foreach($PosArray as $Key => $Y)
4132
+           foreach ($PosArray as $Key => $Y)
4133 4133
             {
4134
-             if ( $Y == VOID && $LastX != NULL && $LastY != NULL && $Points !="" )
4134
+             if ($Y == VOID && $LastX != NULL && $LastY != NULL && $Points != "")
4135 4135
               {
4136 4136
                $Points[] = $LastX; $Points[] = $LastY;
4137 4137
                $Points[] = $X; $Points[] = $LastY;
4138 4138
                $Points[] = $X; $Points[] = $YZero;
4139
-               $this->drawPolygon($Points,$Color);
4139
+               $this->drawPolygon($Points, $Color);
4140 4140
                $Points = "";
4141 4141
               }
4142 4142
 
4143
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
4143
+             if ($Y != VOID && $LastX != NULL && $LastY != NULL)
4144 4144
               {
4145
-               if ( $Points == "") { $Points[] = $LastX; $Points[] = $YZero; }
4145
+               if ($Points == "") { $Points[] = $LastX; $Points[] = $YZero; }
4146 4146
                $Points[] = $LastX; $Points[] = $LastY;
4147 4147
                $Points[] = $X; $Points[] = $LastY;
4148 4148
                $Points[] = $X; $Points[] = $Y;
4149 4149
               }
4150 4150
 
4151
-             if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4152
-             if ( $Y == VOID ) { $Y = NULL; }
4151
+             if ($Y != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
4152
+             if ($Y == VOID) { $Y = NULL; }
4153 4153
 
4154
-             if ( !$Init && $ReCenter ) { $X = $X - $XStep/2; $Init = TRUE; }
4154
+             if (!$Init && $ReCenter) { $X = $X - $XStep/2; $Init = TRUE; }
4155 4155
              $LastX = $X; $LastY = $Y;
4156
-             if ( $LastX < $this->GraphAreaX1 + $XMargin ) { $LastX = $this->GraphAreaX1 + $XMargin; }
4156
+             if ($LastX < $this->GraphAreaX1 + $XMargin) { $LastX = $this->GraphAreaX1 + $XMargin; }
4157 4157
              $X = $X + $XStep;
4158 4158
             }
4159 4159
 
4160
-           if ( $ReCenter )
4160
+           if ($ReCenter)
4161 4161
             {
4162
-             $Points[] = $LastX+$XStep/2; $Points[] = $LastY;
4163
-             $Points[] = $LastX+$XStep/2; $Points[] = $YZero;
4162
+             $Points[] = $LastX + $XStep/2; $Points[] = $LastY;
4163
+             $Points[] = $LastX + $XStep/2; $Points[] = $YZero;
4164 4164
             }
4165 4165
            else
4166 4166
             { $Points[] = $LastX; $Points[] = $YZero; }
4167 4167
 
4168
-           $this->drawPolygon($Points,$Color);
4168
+           $this->drawPolygon($Points, $Color);
4169 4169
           }
4170 4170
          else
4171 4171
           {
4172
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4173
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4172
+           if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
4173
+           if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
4174 4174
 
4175
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4175
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
4176 4176
            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4177 4177
 
4178
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4178
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4179 4179
            $LastGoodY = NULL; $LastGoodX = NULL; $Points = "";
4180
-           foreach($PosArray as $Key => $X)
4180
+           foreach ($PosArray as $Key => $X)
4181 4181
             {
4182
-             if ( $X == VOID && $LastX != NULL && $LastY != NULL && $Points !="" )
4182
+             if ($X == VOID && $LastX != NULL && $LastY != NULL && $Points != "")
4183 4183
               {
4184 4184
                $Points[] = $LastX; $Points[] = $LastY;
4185 4185
                $Points[] = $LastX; $Points[] = $Y;
4186 4186
                $Points[] = $YZero; $Points[] = $Y;
4187
-               $this->drawPolygon($Points,$Color);
4187
+               $this->drawPolygon($Points, $Color);
4188 4188
                $Points = "";
4189 4189
               }
4190 4190
 
4191
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
4191
+             if ($X != VOID && $LastX != NULL && $LastY != NULL)
4192 4192
               {
4193
-               if ( $Points == "") { $Points[] = $YZero; $Points[] = $LastY; }
4193
+               if ($Points == "") { $Points[] = $YZero; $Points[] = $LastY; }
4194 4194
                $Points[] = $LastX; $Points[] = $LastY;
4195 4195
                $Points[] = $LastX; $Points[] = $Y;
4196 4196
                $Points[] = $X; $Points[] = $Y;
4197 4197
               }
4198 4198
 
4199
-             if ( $X != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
4200
-             if ( $X == VOID ) { $X = NULL; }
4199
+             if ($X != VOID) { $LastGoodY = $Y; $LastGoodX = $X; }
4200
+             if ($X == VOID) { $X = NULL; }
4201 4201
 
4202
-             if ( $LastX == NULL && $ReCenter ) { $Y = $Y - $YStep/2; }
4202
+             if ($LastX == NULL && $ReCenter) { $Y = $Y - $YStep/2; }
4203 4203
              $LastX = $X; $LastY = $Y;
4204
-             if ( $LastY < $this->GraphAreaY1 + $XMargin ) { $LastY = $this->GraphAreaY1 + $XMargin; }
4204
+             if ($LastY < $this->GraphAreaY1 + $XMargin) { $LastY = $this->GraphAreaY1 + $XMargin; }
4205 4205
              $Y = $Y + $YStep;
4206 4206
             }
4207 4207
 
4208
-           if ( $ReCenter )
4208
+           if ($ReCenter)
4209 4209
             {
4210
-             $Points[] = $LastX; $Points[] = $LastY+$YStep/2;
4211
-             $Points[] = $YZero; $Points[] = $LastY+$YStep/2;
4210
+             $Points[] = $LastX; $Points[] = $LastY + $YStep/2;
4211
+             $Points[] = $YZero; $Points[] = $LastY + $YStep/2;
4212 4212
             }
4213 4213
            else
4214 4214
             { $Points[] = $YZero; $Points[] = $LastY; }
4215 4215
 
4216
-           $this->drawPolygon($Points,$Color);
4216
+           $this->drawPolygon($Points, $Color);
4217 4217
           }
4218 4218
         }
4219 4219
       }
4220 4220
     }
4221 4221
 
4222 4222
    /* Draw an area chart */
4223
-   function drawAreaChart($Format=NULL)
4223
+   function drawAreaChart($Format = NULL)
4224 4224
     {
4225 4225
      $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4226 4226
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4227
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4227
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4228 4228
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4229 4229
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4230 4230
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4231
-     $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : 25;
4231
+     $ForceTransparency = isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : 25;
4232 4232
      $AroundZero	= isset($Format["AroundZero"]) ? $Format["AroundZero"] : TRUE;
4233 4233
      $Threshold		= isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
4234 4234
 
4235 4235
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4236 4236
 
4237
-     $Data  = $this->DataSet->getData();
4238
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4237
+     $Data = $this->DataSet->getData();
4238
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
4239 4239
 
4240
-     foreach($Data["Series"] as $SerieName => $Serie)
4240
+     foreach ($Data["Series"] as $SerieName => $Serie)
4241 4241
       {
4242
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4242
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
4243 4243
         {
4244 4244
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4245
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4245
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4246 4246
 
4247 4247
          $AxisID	= $Serie["Axis"];
4248 4248
          $Mode		= $Data["Axis"][$AxisID]["Display"];
4249 4249
          $Format	= $Data["Axis"][$AxisID]["Format"];
4250 4250
          $Unit		= $Data["Axis"][$AxisID]["Unit"];
4251 4251
 
4252
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4253
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4252
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
4253
+         $YZero    = $this->scaleComputeY(0, array("AxisID"=>$Serie["Axis"]));
4254 4254
 
4255
-         if ( $Threshold != NULL )
4255
+         if ($Threshold != NULL)
4256 4256
           {
4257
-           foreach($Threshold as $Key => $Params)
4257
+           foreach ($Threshold as $Key => $Params)
4258 4258
             {
4259
-             $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"],array("AxisID"=>$Serie["Axis"]));
4260
-             $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"],array("AxisID"=>$Serie["Axis"]));
4259
+             $Threshold[$Key]["MinX"] = $this->scaleComputeY($Params["Min"], array("AxisID"=>$Serie["Axis"]));
4260
+             $Threshold[$Key]["MaxX"] = $this->scaleComputeY($Params["Max"], array("AxisID"=>$Serie["Axis"]));
4261 4261
             }
4262 4262
           }
4263 4263
 
4264 4264
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4265 4265
 
4266
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4266
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
4267 4267
           {
4268
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4268
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
4269 4269
 
4270 4270
            $Areas = ""; $AreaID = 0; 
4271 4271
            $Areas[$AreaID][] = $this->GraphAreaX1 + $XMargin;
4272
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4272
+           if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2 - 1; }
4273 4273
 
4274
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4274
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
4275 4275
            $X = $this->GraphAreaX1 + $XMargin; $LastX = NULL; $LastY = NULL;
4276 4276
 
4277
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4278
-           foreach($PosArray as $Key => $Y)
4277
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4278
+           foreach ($PosArray as $Key => $Y)
4279 4279
             {
4280
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4280
+             if ($DisplayValues && $Serie["Data"][$Key] != VOID)
4281 4281
               {
4282
-               if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4283
-               $this->drawText($X,$Y-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4282
+               if ($Serie["Data"][$Key] > 0) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4283
+               $this->drawText($X, $Y - $Offset, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align));
4284 4284
               }
4285 4285
 
4286
-             if ( $Y == VOID && isset($Areas[$AreaID]) )
4286
+             if ($Y == VOID && isset($Areas[$AreaID]))
4287 4287
               {
4288
-               if($LastX == NULL)
4288
+               if ($LastX == NULL)
4289 4289
                 { $Areas[$AreaID][] = $X; }
4290 4290
                else
4291 4291
                 { $Areas[$AreaID][] = $LastX; }
4292 4292
 
4293
-               if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4293
+               if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2 - 1; }
4294 4294
                $AreaID++;
4295 4295
               }
4296 4296
              elseif ($Y != VOID)
4297 4297
               {
4298
-               if ( !isset($Areas[$AreaID]) )
4298
+               if (!isset($Areas[$AreaID]))
4299 4299
                 {
4300 4300
                  $Areas[$AreaID][] = $X;
4301
-                 if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4301
+                 if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2 - 1; }
4302 4302
                 }
4303 4303
 
4304 4304
                $Areas[$AreaID][] = $X;
@@ -4309,60 +4309,60 @@  discard block
 block discarded – undo
4309 4309
              $X = $X + $XStep;
4310 4310
             }
4311 4311
            $Areas[$AreaID][] = $LastX;
4312
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4312
+           if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2 - 1; }
4313 4313
 
4314 4314
            /* Handle shadows in the areas */
4315
-           if ( $this->Shadow )
4315
+           if ($this->Shadow)
4316 4316
             {
4317 4317
              $ShadowArea = "";
4318
-             foreach($Areas as $Key => $Points)
4318
+             foreach ($Areas as $Key => $Points)
4319 4319
               {
4320 4320
                $ShadowArea[$Key] = "";
4321
-               foreach($Points as $Key2 => $Value)
4321
+               foreach ($Points as $Key2 => $Value)
4322 4322
                 {
4323
-                 if ( $Key2 % 2 == 0 )
4323
+                 if ($Key2%2 == 0)
4324 4324
                   { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4325 4325
                  else
4326 4326
                   { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4327 4327
                 }
4328 4328
               }              
4329 4329
 
4330
-             foreach($ShadowArea as $Key => $Points)
4331
-              $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4330
+             foreach ($ShadowArea as $Key => $Points)
4331
+              $this->drawPolygonChart($Points, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa));
4332 4332
             }
4333 4333
 
4334 4334
            $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4335
-           $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4335
+           $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Threshold"=>$Threshold);
4336 4336
 
4337
-           foreach($Areas as $Key => $Points)
4338
-            $this->drawPolygonChart($Points,$Color);
4337
+           foreach ($Areas as $Key => $Points)
4338
+            $this->drawPolygonChart($Points, $Color);
4339 4339
           }
4340 4340
          else
4341 4341
           {
4342
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4343
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4342
+           if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
4343
+           if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
4344 4344
 
4345 4345
            $Areas = ""; $AreaID = 0; 
4346
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4346
+           if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1 + 1; }
4347 4347
            $Areas[$AreaID][] = $this->GraphAreaY1 + $XMargin;
4348 4348
 
4349
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4350
-           $Y     = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4349
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
4350
+           $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
4351 4351
 
4352
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4353
-           foreach($PosArray as $Key => $X)
4352
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4353
+           foreach ($PosArray as $Key => $X)
4354 4354
             {
4355
-             if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4355
+             if ($DisplayValues && $Serie["Data"][$Key] != VOID)
4356 4356
               {
4357
-               if ( $Serie["Data"][$Key] > 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4358
-               $this->drawText($X+$Offset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align));
4357
+               if ($Serie["Data"][$Key] > 0) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4358
+               $this->drawText($X + $Offset, $Y, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("Angle"=>270, "R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align));
4359 4359
               }
4360 4360
 
4361
-             if ( $X == VOID && isset($Areas[$AreaID]) )
4361
+             if ($X == VOID && isset($Areas[$AreaID]))
4362 4362
               {
4363
-               if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4363
+               if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1 + 1; }
4364 4364
 
4365
-               if($LastY == NULL)
4365
+               if ($LastY == NULL)
4366 4366
                 { $Areas[$AreaID][] = $Y; }
4367 4367
                else
4368 4368
                 { $Areas[$AreaID][] = $LastY; }
@@ -4371,9 +4371,9 @@  discard block
 block discarded – undo
4371 4371
               }
4372 4372
              elseif ($X != VOID)
4373 4373
               {
4374
-               if ( !isset($Areas[$AreaID]) )
4374
+               if (!isset($Areas[$AreaID]))
4375 4375
                 {
4376
-                 if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4376
+                 if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1 + 1; }
4377 4377
                  $Areas[$AreaID][] = $Y;
4378 4378
                 }
4379 4379
 
@@ -4384,34 +4384,34 @@  discard block
 block discarded – undo
4384 4384
              $LastX = $X; $LastY = $Y;
4385 4385
              $Y = $Y + $YStep;
4386 4386
             }
4387
-           if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4387
+           if ($AroundZero) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1 + 1; }
4388 4388
            $Areas[$AreaID][] = $LastY;
4389 4389
 
4390 4390
            /* Handle shadows in the areas */
4391
-           if ( $this->Shadow )
4391
+           if ($this->Shadow)
4392 4392
             {
4393 4393
              $ShadowArea = "";
4394
-             foreach($Areas as $Key => $Points)
4394
+             foreach ($Areas as $Key => $Points)
4395 4395
               {
4396 4396
                $ShadowArea[$Key] = "";
4397
-               foreach($Points as $Key2 => $Value)
4397
+               foreach ($Points as $Key2 => $Value)
4398 4398
                 {
4399
-                 if ( $Key2 % 2 == 0 )
4399
+                 if ($Key2%2 == 0)
4400 4400
                   { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4401 4401
                  else
4402 4402
                   { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4403 4403
                 }
4404 4404
               }              
4405 4405
 
4406
-             foreach($ShadowArea as $Key => $Points)
4407
-              $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4406
+             foreach ($ShadowArea as $Key => $Points)
4407
+              $this->drawPolygonChart($Points, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa));
4408 4408
             }
4409 4409
 
4410 4410
            $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4411
-           $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4411
+           $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Threshold"=>$Threshold);
4412 4412
 
4413
-           foreach($Areas as $Key => $Points)
4414
-            $this->drawPolygonChart($Points,$Color);
4413
+           foreach ($Areas as $Key => $Points)
4414
+            $this->drawPolygonChart($Points, $Color);
4415 4415
           }
4416 4416
         }
4417 4417
       }
@@ -4419,19 +4419,19 @@  discard block
 block discarded – undo
4419 4419
 
4420 4420
 
4421 4421
    /* Draw a bar chart */
4422
-   function drawBarChart($Format=NULL)
4422
+   function drawBarChart($Format = NULL)
4423 4423
     {
4424 4424
      $Floating0Serie	= isset($Format["Floating0Serie"]) ? $Format["Floating0Serie"] : NULL;
4425 4425
      $Floating0Value	= isset($Format["Floating0Value"]) ? $Format["Floating0Value"] : NULL;
4426
-     $Draw0Line		= isset($Format["Draw0Line"]) ? $Format["Draw0Line"] : FALSE;
4426
+     $Draw0Line = isset($Format["Draw0Line"]) ? $Format["Draw0Line"] : FALSE;
4427 4427
      $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4428 4428
      $DisplayOrientation = isset($Format["DisplayOrientation"]) ? $Format["DisplayOrientation"] : ORIENTATION_HORIZONTAL;
4429 4429
      $DisplayOffset	= isset($Format["DisplayOffset"]) ? $Format["DisplayOffset"] : 2;
4430
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4430
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4431 4431
      $DisplayFont	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontName;
4432 4432
      $DisplaySize	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontSize;
4433
-     $DisplayPos	= isset($Format["DisplayPos"]) ? $Format["DisplayPos"] : LABEL_POS_OUTSIDE;
4434
-     $DisplayShadow	= isset($Format["DisplayShadow"]) ? $Format["DisplayShadow"] : TRUE;
4433
+     $DisplayPos = isset($Format["DisplayPos"]) ? $Format["DisplayPos"] : LABEL_POS_OUTSIDE;
4434
+     $DisplayShadow = isset($Format["DisplayShadow"]) ? $Format["DisplayShadow"] : TRUE;
4435 4435
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4436 4436
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4437 4437
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
@@ -4443,49 +4443,49 @@  discard block
 block discarded – undo
4443 4443
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
4444 4444
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
4445 4445
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
4446
-     $Gradient		= isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4447
-     $GradientMode	= isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4448
-     $GradientAlpha	= isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4446
+     $Gradient = isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4447
+     $GradientMode = isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4448
+     $GradientAlpha = isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4449 4449
      $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
4450 4450
      $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
4451 4451
      $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
4452 4452
      $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 0;
4453 4453
      $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 0;
4454 4454
      $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 0;
4455
-     $TxtMargin		= isset($Format["TxtMargin"]) ? $Format["TxtMargin"] : 6;
4456
-     $OverrideColors	= isset($Format["OverrideColors"]) ? $Format["OverrideColors"] : NULL;
4455
+     $TxtMargin = isset($Format["TxtMargin"]) ? $Format["TxtMargin"] : 6;
4456
+     $OverrideColors = isset($Format["OverrideColors"]) ? $Format["OverrideColors"] : NULL;
4457 4457
      $OverrideSurrounding = isset($Format["OverrideSurrounding"]) ? $Format["OverrideSurrounding"] : 30;
4458
-     $InnerSurrounding	= isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4458
+     $InnerSurrounding = isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4459 4459
      $InnerBorderR	= isset($Format["InnerBorderR"]) ? $Format["InnerBorderR"] : -1;
4460 4460
      $InnerBorderG	= isset($Format["InnerBorderG"]) ? $Format["InnerBorderG"] : -1;
4461 4461
      $InnerBorderB	= isset($Format["InnerBorderB"]) ? $Format["InnerBorderB"] : -1;
4462
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4462
+     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4463 4463
 
4464 4464
      $this->LastChartLayout = CHART_LAST_LAYOUT_REGULAR;
4465 4465
 
4466 4466
      $Data = $this->DataSet->getData();
4467
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4467
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
4468 4468
 
4469
-     if ( $OverrideColors != NULL )
4469
+     if ($OverrideColors != NULL)
4470 4470
       {
4471
-       $OverrideColors = $this->validatePalette($OverrideColors,$OverrideSurrounding);
4472
-       $this->DataSet->saveExtendedData("Palette",$OverrideColors);
4471
+       $OverrideColors = $this->validatePalette($OverrideColors, $OverrideSurrounding);
4472
+       $this->DataSet->saveExtendedData("Palette", $OverrideColors);
4473 4473
       }
4474 4474
 
4475 4475
      $RestoreShadow = $this->Shadow;
4476 4476
 
4477 4477
      $SeriesCount  = $this->countDrawableSeries();
4478 4478
      $CurrentSerie = 0;
4479
-     foreach($Data["Series"] as $SerieName => $Serie)
4479
+     foreach ($Data["Series"] as $SerieName => $Serie)
4480 4480
       {
4481
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4481
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
4482 4482
         {
4483 4483
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4484
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4485
-         if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
4486
-         if ( $InnerSurrounding != NULL ) { $InnerBorderR = $R+$InnerSurrounding; $InnerBorderG = $G+$InnerSurrounding; $InnerBorderB = $B+$InnerSurrounding; }
4487
-         if ( $InnerBorderR == -1 ) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR,"G"=>$InnerBorderG,"B"=>$InnerBorderB); }
4488
-         $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB);
4484
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
4485
+         if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
4486
+         if ($InnerSurrounding != NULL) { $InnerBorderR = $R + $InnerSurrounding; $InnerBorderG = $G + $InnerSurrounding; $InnerBorderB = $B + $InnerSurrounding; }
4487
+         if ($InnerBorderR == -1) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR, "G"=>$InnerBorderG, "B"=>$InnerBorderB); }
4488
+         $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "BorderR"=>$BorderR, "BorderG"=>$BorderG, "BorderB"=>$BorderB);
4489 4489
 
4490 4490
          $AxisID	= $Serie["Axis"];
4491 4491
          $Mode		= $Data["Axis"][$AxisID]["Display"];
@@ -4494,131 +4494,131 @@  discard block
 block discarded – undo
4494 4494
 
4495 4495
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
4496 4496
 
4497
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4497
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
4498 4498
 
4499
-         if ( $Floating0Value != NULL )
4500
-          { $YZero = $this->scaleComputeY($Floating0Value,array("AxisID"=>$Serie["Axis"])); }
4499
+         if ($Floating0Value != NULL)
4500
+          { $YZero = $this->scaleComputeY($Floating0Value, array("AxisID"=>$Serie["Axis"])); }
4501 4501
          else
4502
-          { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
4502
+          { $YZero = $this->scaleComputeY(0, array("AxisID"=>$Serie["Axis"])); }
4503 4503
 
4504
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4504
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
4505 4505
           {
4506
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4507
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4506
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
4507
+           if ($YZero < $this->GraphAreaY1 + 1) { $YZero = $this->GraphAreaY1 + 1; }
4508 4508
 
4509
-           if ( $XDivs == 0 ) { $XStep = 0; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4509
+           if ($XDivs == 0) { $XStep = 0; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
4510 4510
            $X = $this->GraphAreaX1 + $XMargin;
4511 4511
 
4512
-           if ( $AroundZero ) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2-1; }
4513
-           if ( $XDivs == 0 ) { $XSize = ($this->GraphAreaX2-$this->GraphAreaX1)/($SeriesCount+$Interleave); } else { $XSize   = ($XStep / ($SeriesCount+$Interleave) ); }
4512
+           if ($AroundZero) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2 - 1; }
4513
+           if ($XDivs == 0) { $XSize = ($this->GraphAreaX2 - $this->GraphAreaX1)/($SeriesCount + $Interleave); } else { $XSize = ($XStep/($SeriesCount + $Interleave)); }
4514 4514
 
4515
-           $XOffset = -($XSize*$SeriesCount)/2 + $CurrentSerie * $XSize;
4516
-           if ( $X + $XOffset <= $this->GraphAreaX1 ) { $XOffset = $this->GraphAreaX1 - $X + 1 ; }
4515
+           $XOffset = -($XSize*$SeriesCount)/2 + $CurrentSerie*$XSize;
4516
+           if ($X + $XOffset <= $this->GraphAreaX1) { $XOffset = $this->GraphAreaX1 - $X + 1; }
4517 4517
 
4518
-           $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $XOffset + $XSize / 2;
4518
+           $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $XOffset + $XSize/2;
4519 4519
 
4520
-           if ( $Rounded || $BorderR != -1) { $XSpace = 1; } else { $XSpace = 0; }
4520
+           if ($Rounded || $BorderR != -1) { $XSpace = 1; } else { $XSpace = 0; }
4521 4521
 
4522
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4522
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4523 4523
 
4524 4524
            $ID = 0;
4525
-           foreach($PosArray as $Key => $Y2)
4525
+           foreach ($PosArray as $Key => $Y2)
4526 4526
             {
4527
-             if ( $Floating0Serie != NULL )
4527
+             if ($Floating0Serie != NULL)
4528 4528
               {
4529
-               if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4529
+               if (isset($Data["Series"][$Floating0Serie]["Data"][$Key]))
4530 4530
                 { $Value = $Data["Series"][$Floating0Serie]["Data"][$Key]; }
4531 4531
                else
4532 4532
                 { $Value = 0; }
4533 4533
 
4534
-               $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4535
-               if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4536
-               if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
4534
+               $YZero = $this->scaleComputeY($Value, array("AxisID"=>$Serie["Axis"]));
4535
+               if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
4536
+               if ($YZero < $this->GraphAreaY1 + 1) { $YZero = $this->GraphAreaY1 + 1; }
4537 4537
 
4538
-               if ( $AroundZero ) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2-1; }
4538
+               if ($AroundZero) { $Y1 = $YZero; } else { $Y1 = $this->GraphAreaY2 - 1; }
4539 4539
               }
4540 4540
 
4541
-             if ( $OverrideColors != NULL )
4542
-              { if ( isset($OverrideColors[$ID]) ) { $Color = array("R"=>$OverrideColors[$ID]["R"],"G"=>$OverrideColors[$ID]["G"],"B"=>$OverrideColors[$ID]["B"],"Alpha"=>$OverrideColors[$ID]["Alpha"],"BorderR"=>$OverrideColors[$ID]["BorderR"],"BorderG"=>$OverrideColors[$ID]["BorderG"],"BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4541
+             if ($OverrideColors != NULL)
4542
+              { if (isset($OverrideColors[$ID])) { $Color = array("R"=>$OverrideColors[$ID]["R"], "G"=>$OverrideColors[$ID]["G"], "B"=>$OverrideColors[$ID]["B"], "Alpha"=>$OverrideColors[$ID]["Alpha"], "BorderR"=>$OverrideColors[$ID]["BorderR"], "BorderG"=>$OverrideColors[$ID]["BorderG"], "BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4543 4543
 
4544
-             if ( $Y2 != VOID )
4544
+             if ($Y2 != VOID)
4545 4545
               {
4546 4546
                $BarHeight = $Y1 - $Y2;
4547 4547
 
4548
-               if ( $Serie["Data"][$Key] == 0 )
4548
+               if ($Serie["Data"][$Key] == 0)
4549 4549
                 {
4550
-                 $this->drawLine($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y1,$Color);
4551
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1-1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y1+1),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4550
+                 $this->drawLine($X + $XOffset + $XSpace, $Y1, $X + $XOffset + $XSize - $XSpace, $Y1, $Color);
4551
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X + $XOffset + $XSpace).",".floor($Y1 - 1).",".floor($X + $XOffset + $XSize - $XSpace).",".floor($Y1 + 1), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4552 4552
                 }
4553 4553
                else
4554 4554
                 {
4555
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4555
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X + $XOffset + $XSpace).",".floor($Y1).",".floor($X + $XOffset + $XSize - $XSpace).",".floor($Y2), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4556 4556
 
4557
-                 if ( $Rounded )
4558
-                  $this->drawRoundedFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$RoundRadius,$Color);
4557
+                 if ($Rounded)
4558
+                  $this->drawRoundedFilledRectangle($X + $XOffset + $XSpace, $Y1, $X + $XOffset + $XSize - $XSpace, $Y2, $RoundRadius, $Color);
4559 4559
                  else
4560 4560
                   {
4561
-                   $this->drawFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$Color);
4561
+                   $this->drawFilledRectangle($X + $XOffset + $XSpace, $Y1, $X + $XOffset + $XSize - $XSpace, $Y2, $Color);
4562 4562
 
4563
-                   if ( $InnerColor != NULL ) { $this->drawRectangle($X+$XOffset+$XSpace+1,min($Y1,$Y2)+1,$X+$XOffset+$XSize-$XSpace-1,max($Y1,$Y2)-1,$InnerColor); }
4563
+                   if ($InnerColor != NULL) { $this->drawRectangle($X + $XOffset + $XSpace + 1, min($Y1, $Y2) + 1, $X + $XOffset + $XSize - $XSpace - 1, max($Y1, $Y2) - 1, $InnerColor); }
4564 4564
 
4565
-                   if ( $Gradient )
4565
+                   if ($Gradient)
4566 4566
                     {
4567
-                     $this->Shadow  = FALSE;
4567
+                     $this->Shadow = FALSE;
4568 4568
 
4569
-                     if ( $GradientMode == GRADIENT_SIMPLE )
4569
+                     if ($GradientMode == GRADIENT_SIMPLE)
4570 4570
                       {
4571
-                       if ( $Serie["Data"][$Key] >= 0 )
4572
-                        $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4571
+                       if ($Serie["Data"][$Key] >= 0)
4572
+                        $GradienColor = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4573 4573
                        else
4574
-                        $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4574
+                        $GradienColor = array("StartR"=>$GradientEndR, "StartG"=>$GradientEndG, "StartB"=>$GradientEndB, "EndR"=>$GradientStartR, "EndG"=>$GradientStartG, "EndB"=>$GradientStartB, "Alpha"=>$GradientAlpha);
4575 4575
 
4576
-                       $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_VERTICAL,$GradienColor);
4576
+                       $this->drawGradientArea($X + $XOffset + $XSpace, $Y1, $X + $XOffset + $XSize - $XSpace, $Y2, DIRECTION_VERTICAL, $GradienColor);
4577 4577
                       }
4578
-                     elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4578
+                     elseif ($GradientMode == GRADIENT_EFFECT_CAN)
4579 4579
                       {
4580
-                       $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4581
-                       $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4582
-                       $XSpan = floor($XSize / 3);
4580
+                       $GradienColor1 = array("StartR"=>$GradientEndR, "StartG"=>$GradientEndG, "StartB"=>$GradientEndB, "EndR"=>$GradientStartR, "EndG"=>$GradientStartG, "EndB"=>$GradientStartB, "Alpha"=>$GradientAlpha);
4581
+                       $GradienColor2 = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4582
+                       $XSpan = floor($XSize/3);
4583 4583
 
4584
-                       $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSpan-$XSpace,$Y2,DIRECTION_HORIZONTAL,$GradienColor1);
4585
-                       $this->drawGradientArea($X+$XOffset+$XSpan+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_HORIZONTAL,$GradienColor2);
4584
+                       $this->drawGradientArea($X + $XOffset + $XSpace, $Y1, $X + $XOffset + $XSpan - $XSpace, $Y2, DIRECTION_HORIZONTAL, $GradienColor1);
4585
+                       $this->drawGradientArea($X + $XOffset + $XSpan + $XSpace, $Y1, $X + $XOffset + $XSize - $XSpace, $Y2, DIRECTION_HORIZONTAL, $GradienColor2);
4586 4586
                       }
4587 4587
                      $this->Shadow = $RestoreShadow;
4588 4588
                     }
4589 4589
                   }
4590 4590
 
4591
-                 if ( $Draw0Line )
4591
+                 if ($Draw0Line)
4592 4592
                   {
4593
-                   $Line0Color = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20);
4593
+                   $Line0Color = array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>20);
4594 4594
 
4595
-                   if ( abs($Y1 - $Y2) > 3 ) { $Line0Width = 3; } else { $Line0Width = 1; }
4596
-                   if ( $Y1 - $Y2 < 0 ) { $Line0Width = -$Line0Width; }
4595
+                   if (abs($Y1 - $Y2) > 3) { $Line0Width = 3; } else { $Line0Width = 1; }
4596
+                   if ($Y1 - $Y2 < 0) { $Line0Width = -$Line0Width; }
4597 4597
 
4598
-                   $this->drawFilledRectangle($X+$XOffset+$XSpace,floor($Y1),$X+$XOffset+$XSize-$XSpace,floor($Y1)-$Line0Width,$Line0Color);
4599
-                   $this->drawLine($X+$XOffset+$XSpace,floor($Y1),$X+$XOffset+$XSize-$XSpace,floor($Y1),$Line0Color);
4598
+                   $this->drawFilledRectangle($X + $XOffset + $XSpace, floor($Y1), $X + $XOffset + $XSize - $XSpace, floor($Y1) - $Line0Width, $Line0Color);
4599
+                   $this->drawLine($X + $XOffset + $XSpace, floor($Y1), $X + $XOffset + $XSize - $XSpace, floor($Y1), $Line0Color);
4600 4600
                   }
4601 4601
                 }
4602 4602
 
4603
-               if ( $DisplayValues && $Serie["Data"][$Key] != VOID )
4603
+               if ($DisplayValues && $Serie["Data"][$Key] != VOID)
4604 4604
                 {
4605
-                 if ( $DisplayShadow ) { $this->Shadow = TRUE; }
4605
+                 if ($DisplayShadow) { $this->Shadow = TRUE; }
4606 4606
 
4607
-                 $Caption    = $this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit);
4608
-                 $TxtPos     = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,90,$Caption);
4607
+                 $Caption    = $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit);
4608
+                 $TxtPos     = $this->getTextBox(0, 0, $DisplayFont, $DisplaySize, 90, $Caption);
4609 4609
                  $TxtHeight  = $TxtPos[0]["Y"] - $TxtPos[1]["Y"] + $TxtMargin;
4610 4610
 
4611
-                 if ( $DisplayPos == LABEL_POS_INSIDE && abs($TxtHeight) < abs($BarHeight) )
4611
+                 if ($DisplayPos == LABEL_POS_INSIDE && abs($TxtHeight) < abs($BarHeight))
4612 4612
                   {
4613
-                   $CenterX = (($X+$XOffset+$XSize-$XSpace)-($X+$XOffset+$XSpace))/2 + $X+$XOffset+$XSpace;
4614
-                   $CenterY = ($Y2-$Y1)/2 + $Y1;
4613
+                   $CenterX = (($X + $XOffset + $XSize - $XSpace) - ($X + $XOffset + $XSpace))/2 + $X + $XOffset + $XSpace;
4614
+                   $CenterY = ($Y2 - $Y1)/2 + $Y1;
4615 4615
 
4616
-                   $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"Angle"=>90));
4616
+                   $this->drawText($CenterX, $CenterY, $Caption, array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "FontSize"=>$DisplaySize, "Angle"=>90));
4617 4617
                   }
4618 4618
                  else
4619 4619
                   {
4620
-                   if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4621
-                   $this->drawText($X+$XOffset+$XSize/2,$Y2-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
4620
+                   if ($Serie["Data"][$Key] >= 0) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4621
+                   $this->drawText($X + $XOffset + $XSize/2, $Y2 - $Offset, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align, "FontSize"=>$DisplaySize));
4622 4622
                   }
4623 4623
 
4624 4624
                  $this->Shadow = $RestoreShadow;
@@ -4631,121 +4631,121 @@  discard block
 block discarded – undo
4631 4631
           }
4632 4632
          else
4633 4633
           {
4634
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4635
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4634
+           if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
4635
+           if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
4636 4636
 
4637
-           if ( $XDivs == 0 ) { $YStep = 0; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4637
+           if ($XDivs == 0) { $YStep = 0; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
4638 4638
            
4639 4639
            $Y = $this->GraphAreaY1 + $XMargin;
4640 4640
 
4641
-           if ( $AroundZero ) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1+1; }
4642
-           if ( $XDivs == 0 ) { $YSize = ($this->GraphAreaY2-$this->GraphAreaY1)/($SeriesCount+$Interleave); } else { $YSize   = ($YStep / ($SeriesCount+$Interleave) ); }
4641
+           if ($AroundZero) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1 + 1; }
4642
+           if ($XDivs == 0) { $YSize = ($this->GraphAreaY2 - $this->GraphAreaY1)/($SeriesCount + $Interleave); } else { $YSize = ($YStep/($SeriesCount + $Interleave)); }
4643 4643
            
4644
-           $YOffset = -($YSize*$SeriesCount)/2 + $CurrentSerie * $YSize;
4645
-           if ( $Y + $YOffset <= $this->GraphAreaY1 ) { $YOffset = $this->GraphAreaY1 - $Y + 1 ; }
4644
+           $YOffset = -($YSize*$SeriesCount)/2 + $CurrentSerie*$YSize;
4645
+           if ($Y + $YOffset <= $this->GraphAreaY1) { $YOffset = $this->GraphAreaY1 - $Y + 1; }
4646 4646
 
4647
-           $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $YOffset + $YSize / 2;
4647
+           $this->DataSet->Data["Series"][$SerieName]["XOffset"] = $YOffset + $YSize/2;
4648 4648
 
4649
-           if ( $Rounded || $BorderR != -1 ) { $YSpace = 1; } else { $YSpace = 0; }
4649
+           if ($Rounded || $BorderR != -1) { $YSpace = 1; } else { $YSpace = 0; }
4650 4650
 
4651
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4651
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4652 4652
 
4653
-           $ID = 0 ;
4654
-           foreach($PosArray as $Key => $X2)
4653
+           $ID = 0;
4654
+           foreach ($PosArray as $Key => $X2)
4655 4655
             {
4656
-             if ( $Floating0Serie != NULL )
4656
+             if ($Floating0Serie != NULL)
4657 4657
               {
4658
-               if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4658
+               if (isset($Data["Series"][$Floating0Serie]["Data"][$Key]))
4659 4659
                 $Value = $Data["Series"][$Floating0Serie]["Data"][$Key];
4660 4660
                else { $Value = 0; }
4661 4661
 
4662
-               $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4663
-               if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4664
-               if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4665
-               if ( $AroundZero ) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1+1; }
4662
+               $YZero = $this->scaleComputeY($Value, array("AxisID"=>$Serie["Axis"]));
4663
+               if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
4664
+               if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
4665
+               if ($AroundZero) { $X1 = $YZero; } else { $X1 = $this->GraphAreaX1 + 1; }
4666 4666
               }
4667 4667
 
4668
-             if ( $OverrideColors != NULL )
4669
-              { if ( isset($OverrideColors[$ID]) ) { $Color = array("R"=>$OverrideColors[$ID]["R"],"G"=>$OverrideColors[$ID]["G"],"B"=>$OverrideColors[$ID]["B"],"Alpha"=>$OverrideColors[$ID]["Alpha"],"BorderR"=>$OverrideColors[$ID]["BorderR"],"BorderG"=>$OverrideColors[$ID]["BorderG"],"BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4668
+             if ($OverrideColors != NULL)
4669
+              { if (isset($OverrideColors[$ID])) { $Color = array("R"=>$OverrideColors[$ID]["R"], "G"=>$OverrideColors[$ID]["G"], "B"=>$OverrideColors[$ID]["B"], "Alpha"=>$OverrideColors[$ID]["Alpha"], "BorderR"=>$OverrideColors[$ID]["BorderR"], "BorderG"=>$OverrideColors[$ID]["BorderG"], "BorderB"=>$OverrideColors[$ID]["BorderB"]); } else { $Color = $this->getRandomColor(); } }
4670 4670
 
4671
-             if ( $X2 != VOID )
4671
+             if ($X2 != VOID)
4672 4672
               {
4673 4673
                $BarWidth = $X2 - $X1;
4674 4674
 
4675
-               if ( $Serie["Data"][$Key] == 0 )
4675
+               if ($Serie["Data"][$Key] == 0)
4676 4676
                 {
4677
-                 $this->drawLine($X1,$Y+$YOffset+$YSpace,$X1,$Y+$YOffset+$YSize-$YSpace,$Color);
4678
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1-1).",".floor($Y+$YOffset+$YSpace).",".floor($X1+1).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4677
+                 $this->drawLine($X1, $Y + $YOffset + $YSpace, $X1, $Y + $YOffset + $YSize - $YSpace, $Color);
4678
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X1 - 1).",".floor($Y + $YOffset + $YSpace).",".floor($X1 + 1).",".floor($Y + $YOffset + $YSize - $YSpace), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4679 4679
                 }
4680 4680
                else
4681 4681
                 {
4682
-                 if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1).",".floor($Y+$YOffset+$YSpace).",".floor($X2).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4682
+                 if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X1).",".floor($Y + $YOffset + $YSpace).",".floor($X2).",".floor($Y + $YOffset + $YSize - $YSpace), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4683 4683
 
4684
-                 if ( $Rounded )
4685
-                  $this->drawRoundedFilledRectangle($X1+1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$RoundRadius,$Color);
4684
+                 if ($Rounded)
4685
+                  $this->drawRoundedFilledRectangle($X1 + 1, $Y + $YOffset + $YSpace, $X2, $Y + $YOffset + $YSize - $YSpace, $RoundRadius, $Color);
4686 4686
                  else
4687 4687
                   {
4688
-                   $this->drawFilledRectangle($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$Color);
4688
+                   $this->drawFilledRectangle($X1, $Y + $YOffset + $YSpace, $X2, $Y + $YOffset + $YSize - $YSpace, $Color);
4689 4689
 
4690
-                   if ( $InnerColor != NULL ) { $this->drawRectangle(min($X1,$X2)+1,$Y+$YOffset+$YSpace+1,max($X1,$X2)-1,$Y+$YOffset+$YSize-$YSpace-1,$InnerColor); }
4690
+                   if ($InnerColor != NULL) { $this->drawRectangle(min($X1, $X2) + 1, $Y + $YOffset + $YSpace + 1, max($X1, $X2) - 1, $Y + $YOffset + $YSize - $YSpace - 1, $InnerColor); }
4691 4691
 
4692
-                   if ( $Gradient )
4692
+                   if ($Gradient)
4693 4693
                     {
4694
-                     $this->Shadow  = FALSE;
4694
+                     $this->Shadow = FALSE;
4695 4695
 
4696
-                     if ( $GradientMode == GRADIENT_SIMPLE )
4696
+                     if ($GradientMode == GRADIENT_SIMPLE)
4697 4697
                       {
4698
-                       if ( $Serie["Data"][$Key] >= 0 )
4699
-                        $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4698
+                       if ($Serie["Data"][$Key] >= 0)
4699
+                        $GradienColor = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4700 4700
                        else
4701
-                        $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4701
+                        $GradienColor = array("StartR"=>$GradientEndR, "StartG"=>$GradientEndG, "StartB"=>$GradientEndB, "EndR"=>$GradientStartR, "EndG"=>$GradientStartG, "EndB"=>$GradientStartB, "Alpha"=>$GradientAlpha);
4702 4702
 
4703
-                       $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_HORIZONTAL,$GradienColor);
4703
+                       $this->drawGradientArea($X1, $Y + $YOffset + $YSpace, $X2, $Y + $YOffset + $YSize - $YSpace, DIRECTION_HORIZONTAL, $GradienColor);
4704 4704
                       }
4705
-                     elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4705
+                     elseif ($GradientMode == GRADIENT_EFFECT_CAN)
4706 4706
                       {
4707
-                       $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4708
-                       $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4709
-                       $YSpan = floor($YSize / 3);
4707
+                       $GradienColor1 = array("StartR"=>$GradientEndR, "StartG"=>$GradientEndG, "StartB"=>$GradientEndB, "EndR"=>$GradientStartR, "EndG"=>$GradientStartG, "EndB"=>$GradientStartB, "Alpha"=>$GradientAlpha);
4708
+                       $GradienColor2 = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4709
+                       $YSpan = floor($YSize/3);
4710 4710
 
4711
-                       $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSpan-$YSpace,DIRECTION_VERTICAL,$GradienColor1);
4712
-                       $this->drawGradientArea($X1,$Y+$YOffset+$YSpan,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_VERTICAL,$GradienColor2);
4711
+                       $this->drawGradientArea($X1, $Y + $YOffset + $YSpace, $X2, $Y + $YOffset + $YSpan - $YSpace, DIRECTION_VERTICAL, $GradienColor1);
4712
+                       $this->drawGradientArea($X1, $Y + $YOffset + $YSpan, $X2, $Y + $YOffset + $YSize - $YSpace, DIRECTION_VERTICAL, $GradienColor2);
4713 4713
                       }
4714 4714
                      $this->Shadow = $RestoreShadow;
4715 4715
                     }
4716 4716
                   }
4717 4717
 
4718
-                 if ( $Draw0Line )
4718
+                 if ($Draw0Line)
4719 4719
                   {
4720
-                   $Line0Color = array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20);
4720
+                   $Line0Color = array("R"=>0, "G"=>0, "B"=>0, "Alpha"=>20);
4721 4721
 
4722
-                   if ( abs($X1 - $X2) > 3 ) { $Line0Width = 3; } else { $Line0Width = 1; }
4723
-                   if ( $X2 - $X1 < 0 ) { $Line0Width = -$Line0Width; }
4722
+                   if (abs($X1 - $X2) > 3) { $Line0Width = 3; } else { $Line0Width = 1; }
4723
+                   if ($X2 - $X1 < 0) { $Line0Width = -$Line0Width; }
4724 4724
 
4725
-                   $this->drawFilledRectangle(floor($X1),$Y+$YOffset+$YSpace,floor($X1)+$Line0Width,$Y+$YOffset+$YSize-$YSpace,$Line0Color);
4726
-                   $this->drawLine(floor($X1),$Y+$YOffset+$YSpace,floor($X1),$Y+$YOffset+$YSize-$YSpace,$Line0Color);
4725
+                   $this->drawFilledRectangle(floor($X1), $Y + $YOffset + $YSpace, floor($X1) + $Line0Width, $Y + $YOffset + $YSize - $YSpace, $Line0Color);
4726
+                   $this->drawLine(floor($X1), $Y + $YOffset + $YSpace, floor($X1), $Y + $YOffset + $YSize - $YSpace, $Line0Color);
4727 4727
                   }
4728 4728
                 }
4729 4729
 
4730
-               if ( $DisplayValues && $Serie["Data"][$Key] != VOID ) 
4730
+               if ($DisplayValues && $Serie["Data"][$Key] != VOID) 
4731 4731
                 {
4732
-                 if ( $DisplayShadow ) { $this->Shadow = TRUE; }
4732
+                 if ($DisplayShadow) { $this->Shadow = TRUE; }
4733 4733
 
4734
-                 $Caption   = $this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit);
4735
-                 $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4734
+                 $Caption   = $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit);
4735
+                 $TxtPos    = $this->getTextBox(0, 0, $DisplayFont, $DisplaySize, 0, $Caption);
4736 4736
                  $TxtWidth  = $TxtPos[1]["X"] - $TxtPos[0]["X"] + $TxtMargin;
4737 4737
 
4738
-                 if ( $DisplayPos == LABEL_POS_INSIDE && abs($TxtWidth) < abs($BarWidth) )
4738
+                 if ($DisplayPos == LABEL_POS_INSIDE && abs($TxtWidth) < abs($BarWidth))
4739 4739
                   {
4740
-                   $CenterX = ($X2-$X1)/2 + $X1;
4741
-                   $CenterY = (($Y+$YOffset+$YSize-$YSpace)-($Y+$YOffset+$YSpace))/2 + ($Y+$YOffset+$YSpace);
4740
+                   $CenterX = ($X2 - $X1)/2 + $X1;
4741
+                   $CenterY = (($Y + $YOffset + $YSize - $YSpace) - ($Y + $YOffset + $YSpace))/2 + ($Y + $YOffset + $YSpace);
4742 4742
 
4743
-                   $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize));
4743
+                   $this->drawText($CenterX, $CenterY, $Caption, array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "FontSize"=>$DisplaySize));
4744 4744
                   }
4745 4745
                  else
4746 4746
                   {
4747
-                   if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4748
-                   $this->drawText($X2+$Offset,$Y+$YOffset+$YSize/2,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
4747
+                   if ($Serie["Data"][$Key] >= 0) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4748
+                   $this->drawText($X2 + $Offset, $Y + $YOffset + $YSize/2, $Caption, array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>$Align, "FontSize"=>$DisplaySize));
4749 4749
                   }
4750 4750
 
4751 4751
                  $this->Shadow = $RestoreShadow;
@@ -4761,57 +4761,57 @@  discard block
 block discarded – undo
4761 4761
     }
4762 4762
 
4763 4763
    /* Draw a bar chart */
4764
-   function drawStackedBarChart($Format=NULL)
4764
+   function drawStackedBarChart($Format = NULL)
4765 4765
     {
4766
-     $DisplayValues	= isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4766
+     $DisplayValues = isset($Format["DisplayValues"]) ? $Format["DisplayValues"] : FALSE;
4767 4767
      $DisplayOrientation = isset($Format["DisplayOrientation"]) ? $Format["DisplayOrientation"] : ORIENTATION_AUTO;
4768
-     $DisplayRound      = isset($Format["DisplayRound"]) ? $Format["DisplayRound"] : 0;
4769
-     $DisplayColor	= isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4768
+     $DisplayRound = isset($Format["DisplayRound"]) ? $Format["DisplayRound"] : 0;
4769
+     $DisplayColor = isset($Format["DisplayColor"]) ? $Format["DisplayColor"] : DISPLAY_MANUAL;
4770 4770
      $DisplayFont	= isset($Format["DisplayFont"]) ? $Format["DisplayFont"] : $this->FontName;
4771 4771
      $DisplaySize	= isset($Format["DisplaySize"]) ? $Format["DisplaySize"] : $this->FontSize;
4772 4772
      $DisplayR		= isset($Format["DisplayR"]) ? $Format["DisplayR"] : 0;
4773 4773
      $DisplayG		= isset($Format["DisplayG"]) ? $Format["DisplayG"] : 0;
4774 4774
      $DisplayB		= isset($Format["DisplayB"]) ? $Format["DisplayB"] : 0;
4775
-     $Interleave	= isset($Format["Interleave"]) ? $Format["Interleave"] : .5;
4775
+     $Interleave = isset($Format["Interleave"]) ? $Format["Interleave"] : .5;
4776 4776
      $Rounded		= isset($Format["Rounded"]) ? $Format["Rounded"] : FALSE;
4777 4777
      $RoundRadius	= isset($Format["RoundRadius"]) ? $Format["RoundRadius"] : 4;
4778 4778
      $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
4779 4779
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : -1;
4780 4780
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : -1;
4781 4781
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : -1;
4782
-     $Gradient		= isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4783
-     $GradientMode	= isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4784
-     $GradientAlpha	= isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4782
+     $Gradient = isset($Format["Gradient"]) ? $Format["Gradient"] : FALSE;
4783
+     $GradientMode = isset($Format["GradientMode"]) ? $Format["GradientMode"] : GRADIENT_SIMPLE;
4784
+     $GradientAlpha = isset($Format["GradientAlpha"]) ? $Format["GradientAlpha"] : 20;
4785 4785
      $GradientStartR	= isset($Format["GradientStartR"]) ? $Format["GradientStartR"] : 255;
4786 4786
      $GradientStartG	= isset($Format["GradientStartG"]) ? $Format["GradientStartG"] : 255;
4787 4787
      $GradientStartB	= isset($Format["GradientStartB"]) ? $Format["GradientStartB"] : 255;
4788 4788
      $GradientEndR	= isset($Format["GradientEndR"]) ? $Format["GradientEndR"] : 0;
4789 4789
      $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 0;
4790 4790
      $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 0;
4791
-     $InnerSurrounding	= isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4791
+     $InnerSurrounding = isset($Format["InnerSurrounding"]) ? $Format["InnerSurrounding"] : NULL;
4792 4792
      $InnerBorderR	= isset($Format["InnerBorderR"]) ? $Format["InnerBorderR"] : -1;
4793 4793
      $InnerBorderG	= isset($Format["InnerBorderG"]) ? $Format["InnerBorderG"] : -1;
4794 4794
      $InnerBorderB	= isset($Format["InnerBorderB"]) ? $Format["InnerBorderB"] : -1;
4795
-     $RecordImageMap	= isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4796
-     $FontFactor	= isset($Format["FontFactor"]) ? $Format["FontFactor"] : 8;
4795
+     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : FALSE;
4796
+     $FontFactor = isset($Format["FontFactor"]) ? $Format["FontFactor"] : 8;
4797 4797
 
4798 4798
      $this->LastChartLayout = CHART_LAST_LAYOUT_STACKED;
4799 4799
 
4800 4800
      $Data = $this->DataSet->getData();
4801
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
4801
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
4802 4802
 
4803 4803
      $RestoreShadow = $this->Shadow;
4804 4804
 
4805 4805
      $LastX = ""; $LastY = "";
4806
-     foreach($Data["Series"] as $SerieName => $Serie)
4806
+     foreach ($Data["Series"] as $SerieName => $Serie)
4807 4807
       {
4808
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
4808
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
4809 4809
         {
4810 4810
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
4811
-         if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = 255; $DisplayG = 255; $DisplayB = 255; }
4812
-         if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
4813
-         if ( $InnerSurrounding != NULL ) { $InnerBorderR = $R+$InnerSurrounding; $InnerBorderG = $G+$InnerSurrounding; $InnerBorderB = $B+$InnerSurrounding; }
4814
-         if ( $InnerBorderR == -1 ) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR,"G"=>$InnerBorderG,"B"=>$InnerBorderB); }
4811
+         if ($DisplayColor == DISPLAY_AUTO) { $DisplayR = 255; $DisplayG = 255; $DisplayB = 255; }
4812
+         if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
4813
+         if ($InnerSurrounding != NULL) { $InnerBorderR = $R + $InnerSurrounding; $InnerBorderG = $G + $InnerSurrounding; $InnerBorderB = $B + $InnerSurrounding; }
4814
+         if ($InnerBorderR == -1) { $InnerColor = NULL; } else { $InnerColor = array("R"=>$InnerBorderR, "G"=>$InnerBorderG, "B"=>$InnerBorderB); }
4815 4815
 
4816 4816
          $AxisID	= $Serie["Axis"];
4817 4817
          $Mode		= $Data["Axis"][$AxisID]["Display"];
@@ -4820,99 +4820,99 @@  discard block
 block discarded – undo
4820 4820
 
4821 4821
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
4822 4822
 
4823
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]),TRUE);
4824
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
4823
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]), TRUE);
4824
+         $YZero    = $this->scaleComputeY(0, array("AxisID"=>$Serie["Axis"]));
4825 4825
 
4826 4826
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
4827 4827
 
4828
-         $Color = array("TransCorner"=>TRUE,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB);
4828
+         $Color = array("TransCorner"=>TRUE, "R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "BorderR"=>$BorderR, "BorderG"=>$BorderG, "BorderB"=>$BorderB);
4829 4829
 
4830
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
4830
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
4831 4831
           {
4832
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4833
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
4832
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
4833
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
4834 4834
 
4835
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
4836
-           $X     = $this->GraphAreaX1 + $XMargin;
4835
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
4836
+           $X = $this->GraphAreaX1 + $XMargin;
4837 4837
 
4838
-           $XSize   = ($XStep / (1+$Interleave) );
4838
+           $XSize   = ($XStep/(1 + $Interleave));
4839 4839
            $XOffset = -($XSize/2);
4840 4840
 
4841
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4842
-           foreach($PosArray as $Key => $Height)
4841
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4842
+           foreach ($PosArray as $Key => $Height)
4843 4843
             {
4844
-             if ( $Height != VOID && $Serie["Data"][$Key] != 0 )
4844
+             if ($Height != VOID && $Serie["Data"][$Key] != 0)
4845 4845
               {
4846
-               if ( $Serie["Data"][$Key] > 0 ) { $Pos = "+"; } else { $Pos = "-"; }
4846
+               if ($Serie["Data"][$Key] > 0) { $Pos = "+"; } else { $Pos = "-"; }
4847 4847
 
4848
-               if ( !isset($LastY[$Key] ) ) { $LastY[$Key] = ""; }
4849
-               if ( !isset($LastY[$Key][$Pos] ) ) { $LastY[$Key][$Pos] = $YZero; }
4848
+               if (!isset($LastY[$Key])) { $LastY[$Key] = ""; }
4849
+               if (!isset($LastY[$Key][$Pos])) { $LastY[$Key][$Pos] = $YZero; }
4850 4850
 
4851 4851
                $Y1 = $LastY[$Key][$Pos];
4852 4852
                $Y2 = $Y1 - $Height;
4853 4853
 
4854
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "+" && $Y1 != $YZero) ) { $YSpaceUp = 1; } else { $YSpaceUp = 0; }
4855
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "-" && $Y1 != $YZero) ) { $YSpaceDown = 1; } else { $YSpaceDown = 0; }
4854
+               if (($Rounded || $BorderR != -1) && ($Pos == "+" && $Y1 != $YZero)) { $YSpaceUp = 1; } else { $YSpaceUp = 0; }
4855
+               if (($Rounded || $BorderR != -1) && ($Pos == "-" && $Y1 != $YZero)) { $YSpaceDown = 1; } else { $YSpaceDown = 0; }
4856 4856
 
4857
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset).",".floor($Y1-$YSpaceUp+$YSpaceDown).",".floor($X+$XOffset+$XSize).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4857
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X + $XOffset).",".floor($Y1 - $YSpaceUp + $YSpaceDown).",".floor($X + $XOffset + $XSize).",".floor($Y2), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4858 4858
 
4859
-               if ( $Rounded )
4860
-                $this->drawRoundedFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$RoundRadius,$Color);
4859
+               if ($Rounded)
4860
+                $this->drawRoundedFilledRectangle($X + $XOffset, $Y1 - $YSpaceUp + $YSpaceDown, $X + $XOffset + $XSize, $Y2, $RoundRadius, $Color);
4861 4861
                else
4862 4862
                 {
4863
-                 $this->drawFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$Color);
4863
+                 $this->drawFilledRectangle($X + $XOffset, $Y1 - $YSpaceUp + $YSpaceDown, $X + $XOffset + $XSize, $Y2, $Color);
4864 4864
 
4865
-                 if ( $InnerColor != NULL ) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X+$XOffset+1,$X+$XOffset+$XSize),min($Y1-$YSpaceUp+$YSpaceDown,$Y2)+1,max($X+$XOffset+1,$X+$XOffset+$XSize)-1,max($Y1-$YSpaceUp+$YSpaceDown,$Y2)-1,$InnerColor); $this->Shadow = $RestoreShadow;}
4865
+                 if ($InnerColor != NULL) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X + $XOffset + 1, $X + $XOffset + $XSize), min($Y1 - $YSpaceUp + $YSpaceDown, $Y2) + 1, max($X + $XOffset + 1, $X + $XOffset + $XSize) - 1, max($Y1 - $YSpaceUp + $YSpaceDown, $Y2) - 1, $InnerColor); $this->Shadow = $RestoreShadow; }
4866 4866
 
4867
-                 if ( $Gradient )
4867
+                 if ($Gradient)
4868 4868
                   {
4869
-                   $this->Shadow  = FALSE;
4869
+                   $this->Shadow = FALSE;
4870 4870
 
4871
-                   if ( $GradientMode == GRADIENT_SIMPLE )
4871
+                   if ($GradientMode == GRADIENT_SIMPLE)
4872 4872
                     {
4873
-                     $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4874
-                     $this->drawGradientArea($X+$XOffset,$Y1-1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+1,DIRECTION_VERTICAL,$GradientColor);
4873
+                     $GradientColor = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4874
+                     $this->drawGradientArea($X + $XOffset, $Y1 - 1 - $YSpaceUp + $YSpaceDown, $X + $XOffset + $XSize, $Y2 + 1, DIRECTION_VERTICAL, $GradientColor);
4875 4875
                     }
4876
-                   elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4876
+                   elseif ($GradientMode == GRADIENT_EFFECT_CAN)
4877 4877
                     {
4878
-                     $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4879
-                     $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4880
-                     $XSpan = floor($XSize / 3);
4878
+                     $GradientColor1 = array("StartR"=>$GradientEndR, "StartG"=>$GradientEndG, "StartB"=>$GradientEndB, "EndR"=>$GradientStartR, "EndG"=>$GradientStartG, "EndB"=>$GradientStartB, "Alpha"=>$GradientAlpha);
4879
+                     $GradientColor2 = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4880
+                     $XSpan = floor($XSize/3);
4881 4881
 
4882
-                     $this->drawGradientArea($X+$XOffset-.5,$Y1-.5-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSpan,$Y2+.5,DIRECTION_HORIZONTAL,$GradientColor1);
4883
-                     $this->drawGradientArea($X+$XSpan+$XOffset-.5,$Y1-.5-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+.5,DIRECTION_HORIZONTAL,$GradientColor2);
4882
+                     $this->drawGradientArea($X + $XOffset - .5, $Y1 - .5 - $YSpaceUp + $YSpaceDown, $X + $XOffset + $XSpan, $Y2 + .5, DIRECTION_HORIZONTAL, $GradientColor1);
4883
+                     $this->drawGradientArea($X + $XSpan + $XOffset - .5, $Y1 - .5 - $YSpaceUp + $YSpaceDown, $X + $XOffset + $XSize, $Y2 + .5, DIRECTION_HORIZONTAL, $GradientColor2);
4884 4884
                     }
4885 4885
                    $this->Shadow = $RestoreShadow;
4886 4886
                   }
4887 4887
                 }
4888 4888
 
4889
-               if ( $DisplayValues )
4889
+               if ($DisplayValues)
4890 4890
                 {
4891
-                 $BarHeight = abs($Y2-$Y1)-2;
4892
-                 $BarWidth  = $XSize+($XOffset/2)-$FontFactor;
4891
+                 $BarHeight = abs($Y2 - $Y1) - 2;
4892
+                 $BarWidth  = $XSize + ($XOffset/2) - $FontFactor;
4893 4893
 
4894
-                 $Caption   = $this->scaleFormat(round($Serie["Data"][$Key],$DisplayRound),$Mode,$Format,$Unit);
4895
-                 $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4894
+                 $Caption   = $this->scaleFormat(round($Serie["Data"][$Key], $DisplayRound), $Mode, $Format, $Unit);
4895
+                 $TxtPos    = $this->getTextBox(0, 0, $DisplayFont, $DisplaySize, 0, $Caption);
4896 4896
                  $TxtHeight = abs($TxtPos[2]["Y"] - $TxtPos[0]["Y"]);
4897 4897
                  $TxtWidth  = abs($TxtPos[1]["X"] - $TxtPos[0]["X"]);
4898 4898
 
4899
-                 $XCenter = ( ($X+$XOffset+$XSize) - ($X+$XOffset) ) / 2 + $X+$XOffset;
4900
-                 $YCenter = ( ($Y2) - ($Y1-$YSpaceUp+$YSpaceDown) ) / 2 + $Y1-$YSpaceUp+$YSpaceDown;
4899
+                 $XCenter = (($X + $XOffset + $XSize) - ($X + $XOffset))/2 + $X + $XOffset;
4900
+                 $YCenter = (($Y2) - ($Y1 - $YSpaceUp + $YSpaceDown))/2 + $Y1 - $YSpaceUp + $YSpaceDown;
4901 4901
 
4902 4902
                  $Done = FALSE;
4903
-                 if ( $DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO )
4903
+                 if ($DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO)
4904 4904
                   {
4905
-                   if ( $TxtHeight < $BarHeight && $TxtWidth < $BarWidth  )
4905
+                   if ($TxtHeight < $BarHeight && $TxtWidth < $BarWidth)
4906 4906
                     {
4907
-                     $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4907
+                     $this->drawText($XCenter, $YCenter, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "FontSize"=>$DisplaySize, "FontName"=>$DisplayFont));
4908 4908
                      $Done = TRUE;
4909 4909
                     }
4910 4910
                   }
4911 4911
 
4912
-                 if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
4912
+                 if ($DisplayOrientation == ORIENTATION_VERTICAL || ($DisplayOrientation == ORIENTATION_AUTO && !$Done))
4913 4913
                   {
4914
-                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
4915
-                    $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4914
+                   if ($TxtHeight < $BarWidth && $TxtWidth < $BarHeight)
4915
+                    $this->drawText($XCenter, $YCenter, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Angle"=>90, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "FontSize"=>$DisplaySize, "FontName"=>$DisplayFont));
4916 4916
                   }
4917 4917
                 }
4918 4918
 
@@ -4924,89 +4924,89 @@  discard block
 block discarded – undo
4924 4924
           }
4925 4925
          else
4926 4926
           {
4927
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4928
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
4927
+           if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
4928
+           if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
4929 4929
 
4930
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4931
-           $Y     = $this->GraphAreaY1 + $XMargin;
4930
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
4931
+           $Y = $this->GraphAreaY1 + $XMargin;
4932 4932
 
4933
-           $YSize   = $YStep / (1+$Interleave);
4933
+           $YSize   = $YStep/(1 + $Interleave);
4934 4934
            $YOffset = -($YSize/2);
4935 4935
 
4936
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4937
-           foreach($PosArray as $Key => $Width)
4936
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
4937
+           foreach ($PosArray as $Key => $Width)
4938 4938
             {
4939
-             if ( $Width != VOID && $Serie["Data"][$Key] != 0 )
4939
+             if ($Width != VOID && $Serie["Data"][$Key] != 0)
4940 4940
               {
4941
-               if ( $Serie["Data"][$Key] > 0 ) { $Pos = "+"; } else { $Pos = "-"; }
4941
+               if ($Serie["Data"][$Key] > 0) { $Pos = "+"; } else { $Pos = "-"; }
4942 4942
 
4943
-               if ( !isset($LastX[$Key] ) ) { $LastX[$Key] = ""; }
4944
-               if ( !isset($LastX[$Key][$Pos] ) ) { $LastX[$Key][$Pos] = $YZero; }
4943
+               if (!isset($LastX[$Key])) { $LastX[$Key] = ""; }
4944
+               if (!isset($LastX[$Key][$Pos])) { $LastX[$Key][$Pos] = $YZero; }
4945 4945
 
4946 4946
                $X1 = $LastX[$Key][$Pos];
4947 4947
                $X2 = $X1 + $Width;
4948 4948
 
4949
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "+" && $X1 != $YZero) ) { $XSpaceLeft = 2; } else { $XSpaceLeft = 0; }
4950
-               if ( ($Rounded || $BorderR != -1) && ($Pos == "-" && $X1 != $YZero) ) { $XSpaceRight = 2; } else { $XSpaceRight = 0; }
4949
+               if (($Rounded || $BorderR != -1) && ($Pos == "+" && $X1 != $YZero)) { $XSpaceLeft = 2; } else { $XSpaceLeft = 0; }
4950
+               if (($Rounded || $BorderR != -1) && ($Pos == "-" && $X1 != $YZero)) { $XSpaceRight = 2; } else { $XSpaceRight = 0; }
4951 4951
 
4952
-               if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1+$XSpaceLeft).",".floor($Y+$YOffset).",".floor($X2-$XSpaceRight).",".floor($Y+$YOffset+$YSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4952
+               if ($RecordImageMap) { $this->addToImageMap("RECT", floor($X1 + $XSpaceLeft).",".floor($Y + $YOffset).",".floor($X2 - $XSpaceRight).",".floor($Y + $YOffset + $YSize), $this->toHTMLColor($R, $G, $B), $SerieDescription, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit)); }
4953 4953
 
4954
-               if ( $Rounded )
4955
-                $this->drawRoundedFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$RoundRadius,$Color);
4954
+               if ($Rounded)
4955
+                $this->drawRoundedFilledRectangle($X1 + $XSpaceLeft, $Y + $YOffset, $X2 - $XSpaceRight, $Y + $YOffset + $YSize, $RoundRadius, $Color);
4956 4956
                else
4957 4957
                 {
4958
-                 $this->drawFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$Color);
4958
+                 $this->drawFilledRectangle($X1 + $XSpaceLeft, $Y + $YOffset, $X2 - $XSpaceRight, $Y + $YOffset + $YSize, $Color);
4959 4959
 
4960
-                 if ( $InnerColor != NULL ) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X1+$XSpaceLeft,$X2-$XSpaceRight)+1,min($Y+$YOffset,$Y+$YOffset+$YSize)+1,max($X1+$XSpaceLeft,$X2-$XSpaceRight)-1,max($Y+$YOffset,$Y+$YOffset+$YSize)-1,$InnerColor); $this->Shadow = $RestoreShadow;}
4960
+                 if ($InnerColor != NULL) { $RestoreShadow = $this->Shadow; $this->Shadow = FALSE; $this->drawRectangle(min($X1 + $XSpaceLeft, $X2 - $XSpaceRight) + 1, min($Y + $YOffset, $Y + $YOffset + $YSize) + 1, max($X1 + $XSpaceLeft, $X2 - $XSpaceRight) - 1, max($Y + $YOffset, $Y + $YOffset + $YSize) - 1, $InnerColor); $this->Shadow = $RestoreShadow; }
4961 4961
 
4962
-                 if ( $Gradient )
4962
+                 if ($Gradient)
4963 4963
                   {
4964
-                   $this->Shadow  = FALSE;
4964
+                   $this->Shadow = FALSE;
4965 4965
 
4966
-                   if ( $GradientMode == GRADIENT_SIMPLE )
4966
+                   if ($GradientMode == GRADIENT_SIMPLE)
4967 4967
                     {
4968
-                     $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4969
-                     $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_HORIZONTAL,$GradientColor);
4968
+                     $GradientColor = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4969
+                     $this->drawGradientArea($X1 + $XSpaceLeft, $Y + $YOffset, $X2 - $XSpaceRight, $Y + $YOffset + $YSize, DIRECTION_HORIZONTAL, $GradientColor);
4970 4970
                     }
4971
-                   elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4971
+                   elseif ($GradientMode == GRADIENT_EFFECT_CAN)
4972 4972
                     {
4973
-                     $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4974
-                     $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4975
-                     $YSpan = floor($YSize / 3);
4973
+                     $GradientColor1 = array("StartR"=>$GradientEndR, "StartG"=>$GradientEndG, "StartB"=>$GradientEndB, "EndR"=>$GradientStartR, "EndG"=>$GradientStartG, "EndB"=>$GradientStartB, "Alpha"=>$GradientAlpha);
4974
+                     $GradientColor2 = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB, "Alpha"=>$GradientAlpha);
4975
+                     $YSpan = floor($YSize/3);
4976 4976
 
4977
-                     $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSpan,DIRECTION_VERTICAL,$GradientColor1);
4978
-                     $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset+$YSpan,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_VERTICAL,$GradientColor2);
4977
+                     $this->drawGradientArea($X1 + $XSpaceLeft, $Y + $YOffset, $X2 - $XSpaceRight, $Y + $YOffset + $YSpan, DIRECTION_VERTICAL, $GradientColor1);
4978
+                     $this->drawGradientArea($X1 + $XSpaceLeft, $Y + $YOffset + $YSpan, $X2 - $XSpaceRight, $Y + $YOffset + $YSize, DIRECTION_VERTICAL, $GradientColor2);
4979 4979
                     }
4980 4980
                    $this->Shadow = $RestoreShadow;
4981 4981
                   }
4982 4982
                 }
4983 4983
 
4984
-               if ( $DisplayValues )
4984
+               if ($DisplayValues)
4985 4985
                 {
4986
-                 $BarWidth = abs($X2-$X1)-$FontFactor;
4987
-                 $BarHeight = $YSize+($YOffset/2)-$FontFactor/2;
4988
-                 $Caption   = $this->scaleFormat(round($Serie["Data"][$Key],$DisplayRound),$Mode,$Format,$Unit);
4989
-                 $TxtPos    = $this->getTextBox(0,0,$DisplayFont,$DisplaySize,0,$Caption);
4986
+                 $BarWidth = abs($X2 - $X1) - $FontFactor;
4987
+                 $BarHeight = $YSize + ($YOffset/2) - $FontFactor/2;
4988
+                 $Caption   = $this->scaleFormat(round($Serie["Data"][$Key], $DisplayRound), $Mode, $Format, $Unit);
4989
+                 $TxtPos    = $this->getTextBox(0, 0, $DisplayFont, $DisplaySize, 0, $Caption);
4990 4990
                  $TxtHeight = abs($TxtPos[2]["Y"] - $TxtPos[0]["Y"]);
4991 4991
                  $TxtWidth  = abs($TxtPos[1]["X"] - $TxtPos[0]["X"]);
4992 4992
 
4993
-                 $XCenter  = ( $X2 - $X1 ) / 2 + $X1;
4994
-                 $YCenter  = ( ($Y+$YOffset+$YSize) - ($Y+$YOffset) ) / 2 + $Y+$YOffset;
4993
+                 $XCenter  = ($X2 - $X1)/2 + $X1;
4994
+                 $YCenter  = (($Y + $YOffset + $YSize) - ($Y + $YOffset))/2 + $Y + $YOffset;
4995 4995
 
4996 4996
                  $Done = FALSE;
4997
-                 if ( $DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO )
4997
+                 if ($DisplayOrientation == ORIENTATION_HORIZONTAL || $DisplayOrientation == ORIENTATION_AUTO)
4998 4998
                   {
4999
-                   if ( $TxtHeight < $BarHeight && $TxtWidth < $BarWidth  )
4999
+                   if ($TxtHeight < $BarHeight && $TxtWidth < $BarWidth)
5000 5000
                     {
5001
-                     $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
5001
+                     $this->drawText($XCenter, $YCenter, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "FontSize"=>$DisplaySize, "FontName"=>$DisplayFont));
5002 5002
                      $Done = TRUE;
5003 5003
                     }
5004 5004
                   }
5005 5005
 
5006
-                 if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
5006
+                 if ($DisplayOrientation == ORIENTATION_VERTICAL || ($DisplayOrientation == ORIENTATION_AUTO && !$Done))
5007 5007
                   {
5008
-                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
5009
-                    $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
5008
+                   if ($TxtHeight < $BarWidth && $TxtWidth < $BarHeight)
5009
+                    $this->drawText($XCenter, $YCenter, $this->scaleFormat($Serie["Data"][$Key], $Mode, $Format, $Unit), array("R"=>$DisplayR, "G"=>$DisplayG, "B"=>$DisplayB, "Angle"=>90, "Align"=>TEXT_ALIGN_MIDDLEMIDDLE, "FontSize"=>$DisplaySize, "FontName"=>$DisplayFont));
5010 5010
                   }
5011 5011
                 }
5012 5012
 
@@ -5021,28 +5021,28 @@  discard block
 block discarded – undo
5021 5021
     }
5022 5022
 
5023 5023
    /* Draw a stacked area chart */
5024
-   function drawStackedAreaChart($Format=NULL)
5024
+   function drawStackedAreaChart($Format = NULL)
5025 5025
     {
5026
-     $DrawLine		= isset($Format["DrawLine"]) ? $Format["DrawLine"] : FALSE;
5027
-     $LineSurrounding	= isset($Format["LineSurrounding"]) ? $Format["LineSurrounding"] : NULL;
5026
+     $DrawLine = isset($Format["DrawLine"]) ? $Format["DrawLine"] : FALSE;
5027
+     $LineSurrounding = isset($Format["LineSurrounding"]) ? $Format["LineSurrounding"] : NULL;
5028 5028
      $LineR		= isset($Format["LineR"]) ? $Format["LineR"] : VOID;
5029 5029
      $LineG		= isset($Format["LineG"]) ? $Format["LineG"] : VOID;
5030 5030
      $LineB		= isset($Format["LineB"]) ? $Format["LineB"] : VOID;
5031 5031
      $LineAlpha		= isset($Format["LineAlpha"]) ? $Format["LineAlpha"] : 100;
5032
-     $DrawPlot		= isset($Format["DrawPlot"]) ? $Format["DrawPlot"] : FALSE;
5032
+     $DrawPlot = isset($Format["DrawPlot"]) ? $Format["DrawPlot"] : FALSE;
5033 5033
      $PlotRadius	= isset($Format["PlotRadius"]) ? $Format["PlotRadius"] : 2;
5034 5034
      $PlotBorder	= isset($Format["PlotBorder"]) ? $Format["PlotBorder"] : 1;
5035 5035
      $PlotBorderSurrounding = isset($Format["PlotBorderSurrounding"]) ? $Format["PlotBorderSurrounding"] : NULL;
5036 5036
      $PlotBorderR	= isset($Format["PlotBorderR"]) ? $Format["PlotBorderR"] : 0;
5037 5037
      $PlotBorderG	= isset($Format["PlotBorderG"]) ? $Format["PlotBorderG"] : 0;
5038 5038
      $PlotBorderB	= isset($Format["PlotBorderB"]) ? $Format["PlotBorderB"] : 0;
5039
-     $PlotBorderAlpha	= isset($Format["PlotBorderAlpha"]) ? $Format["PlotBorderAlpha"] : 50;
5040
-     $ForceTransparency	= isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
5039
+     $PlotBorderAlpha = isset($Format["PlotBorderAlpha"]) ? $Format["PlotBorderAlpha"] : 50;
5040
+     $ForceTransparency = isset($Format["ForceTransparency"]) ? $Format["ForceTransparency"] : NULL;
5041 5041
 
5042 5042
      $this->LastChartLayout = CHART_LAST_LAYOUT_STACKED;
5043 5043
 
5044 5044
      $Data = $this->DataSet->getData();
5045
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5045
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
5046 5046
 
5047 5047
      $RestoreShadow = $this->Shadow;
5048 5048
      $this->Shadow  = FALSE;
@@ -5051,19 +5051,19 @@  discard block
 block discarded – undo
5051 5051
      $OffsetData    = "";
5052 5052
      $OverallOffset = "";
5053 5053
      $SerieOrder    = "";
5054
-     foreach($Data["Series"] as $SerieName => $Serie)
5054
+     foreach ($Data["Series"] as $SerieName => $Serie)
5055 5055
       {
5056
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5056
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
5057 5057
         {
5058 5058
          $SerieOrder[] = $SerieName;
5059 5059
 
5060
-         foreach($Serie["Data"] as $Key => $Value)
5060
+         foreach ($Serie["Data"] as $Key => $Value)
5061 5061
           {
5062
-           if ( $Value == VOID ) { $Value = 0; }
5062
+           if ($Value == VOID) { $Value = 0; }
5063 5063
            if ($Value >= 0) { $Sign = "+"; } else { $Sign = "-"; }
5064
-           if ( !isset($OverallOffset[$Key]) || !isset($OverallOffset[$Key][$Sign]) ) { $OverallOffset[$Key][$Sign] = 0; }
5064
+           if (!isset($OverallOffset[$Key]) || !isset($OverallOffset[$Key][$Sign])) { $OverallOffset[$Key][$Sign] = 0; }
5065 5065
 
5066
-           if ( $Sign == "+" )
5066
+           if ($Sign == "+")
5067 5067
             { $Data["Series"][$SerieName]["Data"][$Key] = $Value + $OverallOffset[$Key][$Sign]; }
5068 5068
            else
5069 5069
             { $Data["Series"][$SerieName]["Data"][$Key] = $Value - $OverallOffset[$Key][$Sign]; }
@@ -5075,102 +5075,102 @@  discard block
 block discarded – undo
5075 5075
      $SerieOrder = array_reverse($SerieOrder);
5076 5076
 
5077 5077
      $LastX = ""; $LastY = "";
5078
-     foreach($SerieOrder as $Key => $SerieName)
5078
+     foreach ($SerieOrder as $Key => $SerieName)
5079 5079
       {
5080 5080
        $Serie = $Data["Series"][$SerieName];
5081
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5081
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
5082 5082
         {
5083 5083
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
5084
-         if ( $ForceTransparency != NULL ) { $Alpha = $ForceTransparency; }
5084
+         if ($ForceTransparency != NULL) { $Alpha = $ForceTransparency; }
5085 5085
 
5086
-         $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
5086
+         $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha);
5087 5087
 
5088
-         if ( $LineSurrounding != NULL )
5089
-          $LineColor = array("R"=>$R+$LineSurrounding,"G"=>$G+$LineSurrounding,"B"=>$B+$LineSurrounding,"Alpha"=>$Alpha);
5090
-         elseif ( $LineR != VOID )
5091
-          $LineColor = array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha);
5088
+         if ($LineSurrounding != NULL)
5089
+          $LineColor = array("R"=>$R + $LineSurrounding, "G"=>$G + $LineSurrounding, "B"=>$B + $LineSurrounding, "Alpha"=>$Alpha);
5090
+         elseif ($LineR != VOID)
5091
+          $LineColor = array("R"=>$LineR, "G"=>$LineG, "B"=>$LineB, "Alpha"=>$LineAlpha);
5092 5092
          else
5093 5093
           $LineColor = $Color;
5094 5094
 
5095
-         if ( $PlotBorderSurrounding != NULL )
5096
-          $PlotBorderColor = array("R"=>$R+$PlotBorderSurrounding,"G"=>$G+$PlotBorderSurrounding,"B"=>$B+$PlotBorderSurrounding,"Alpha"=>$PlotBorderAlpha);
5095
+         if ($PlotBorderSurrounding != NULL)
5096
+          $PlotBorderColor = array("R"=>$R + $PlotBorderSurrounding, "G"=>$G + $PlotBorderSurrounding, "B"=>$B + $PlotBorderSurrounding, "Alpha"=>$PlotBorderAlpha);
5097 5097
          else
5098
-          $PlotBorderColor = array("R"=>$PlotBorderR,"G"=>$PlotBorderG,"B"=>$PlotBorderB,"Alpha"=>$PlotBorderAlpha);
5098
+          $PlotBorderColor = array("R"=>$PlotBorderR, "G"=>$PlotBorderG, "B"=>$PlotBorderB, "Alpha"=>$PlotBorderAlpha);
5099 5099
 
5100 5100
          $AxisID	= $Serie["Axis"];
5101 5101
          $Mode		= $Data["Axis"][$AxisID]["Display"];
5102 5102
          $Format	= $Data["Axis"][$AxisID]["Format"];
5103 5103
          $Unit		= $Data["Axis"][$AxisID]["Unit"];
5104 5104
 
5105
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]),TRUE);
5106
-         $YZero    = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"]));
5105
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]), TRUE);
5106
+         $YZero    = $this->scaleComputeY(0, array("AxisID"=>$Serie["Axis"]));
5107 5107
 
5108 5108
          $this->DataSet->Data["Series"][$SerieName]["XOffset"] = 0;
5109 5109
 
5110
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5110
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
5111 5111
           {
5112
-           if ( $YZero < $this->GraphAreaY1+1 ) { $YZero = $this->GraphAreaY1+1; }
5113
-           if ( $YZero > $this->GraphAreaY2-1 ) { $YZero = $this->GraphAreaY2-1; }
5112
+           if ($YZero < $this->GraphAreaY1 + 1) { $YZero = $this->GraphAreaY1 + 1; }
5113
+           if ($YZero > $this->GraphAreaY2 - 1) { $YZero = $this->GraphAreaY2 - 1; }
5114 5114
 
5115
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5115
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
5116 5116
            $X = $this->GraphAreaX1 + $XMargin;
5117 5117
 
5118
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5118
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5119 5119
 
5120 5120
            $Plots = ""; $Plots[] = $X; $Plots[] = $YZero;
5121
-           foreach($PosArray as $Key => $Height)
5121
+           foreach ($PosArray as $Key => $Height)
5122 5122
             {
5123
-             if ( $Height != VOID ) { $Plots[] = $X; $Plots[] = $YZero-$Height; }
5123
+             if ($Height != VOID) { $Plots[] = $X; $Plots[] = $YZero - $Height; }
5124 5124
              $X = $X + $XStep;
5125 5125
             }
5126
-           $Plots[] = $X-$XStep; $Plots[] = $YZero;
5126
+           $Plots[] = $X - $XStep; $Plots[] = $YZero;
5127 5127
 
5128
-           $this->drawPolygon($Plots,$Color);
5128
+           $this->drawPolygon($Plots, $Color);
5129 5129
 
5130 5130
            $this->Shadow = $RestoreShadow;
5131
-           if ( $DrawLine ) { for($i=2; $i<=count($Plots)-6; $i=$i+2) { $this->drawLine($Plots[$i],$Plots[$i+1],$Plots[$i+2],$Plots[$i+3],$LineColor); } }
5132
-           if ( $DrawPlot )
5131
+           if ($DrawLine) { for ($i = 2; $i <= count($Plots) - 6; $i = $i + 2) { $this->drawLine($Plots[$i], $Plots[$i + 1], $Plots[$i + 2], $Plots[$i + 3], $LineColor); } }
5132
+           if ($DrawPlot)
5133 5133
             {
5134
-             for($i=2; $i<=count($Plots)-4; $i=$i+2)
5134
+             for ($i = 2; $i <= count($Plots) - 4; $i = $i + 2)
5135 5135
               {
5136
-               if ( $PlotBorder != 0 )
5137
-                { $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius+$PlotBorder,$PlotBorderColor); }
5136
+               if ($PlotBorder != 0)
5137
+                { $this->drawFilledCircle($Plots[$i], $Plots[$i + 1], $PlotRadius + $PlotBorder, $PlotBorderColor); }
5138 5138
 
5139
-               $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius,$Color);
5139
+               $this->drawFilledCircle($Plots[$i], $Plots[$i + 1], $PlotRadius, $Color);
5140 5140
               }
5141 5141
             }
5142 5142
            $this->Shadow = FALSE;
5143 5143
           }
5144
-         elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
5144
+         elseif ($Data["Orientation"] == SCALE_POS_TOPBOTTOM)
5145 5145
           {
5146
-           if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
5147
-           if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
5146
+           if ($YZero < $this->GraphAreaX1 + 1) { $YZero = $this->GraphAreaX1 + 1; }
5147
+           if ($YZero > $this->GraphAreaX2 - 1) { $YZero = $this->GraphAreaX2 - 1; }
5148 5148
 
5149
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5149
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
5150 5150
            $Y = $this->GraphAreaY1 + $XMargin;
5151 5151
 
5152
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5152
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5153 5153
 
5154 5154
            $Plots = ""; $Plots[] = $YZero; $Plots[] = $Y;
5155
-           foreach($PosArray as $Key => $Height)
5155
+           foreach ($PosArray as $Key => $Height)
5156 5156
             {
5157
-             if ( $Height != VOID ) { $Plots[] = $YZero+$Height; $Plots[] = $Y; }
5157
+             if ($Height != VOID) { $Plots[] = $YZero + $Height; $Plots[] = $Y; }
5158 5158
              $Y = $Y + $YStep;
5159 5159
             }
5160
-           $Plots[] = $YZero; $Plots[] = $Y-$YStep;
5160
+           $Plots[] = $YZero; $Plots[] = $Y - $YStep;
5161 5161
 
5162
-           $this->drawPolygon($Plots,$Color);
5162
+           $this->drawPolygon($Plots, $Color);
5163 5163
 
5164 5164
            $this->Shadow = $RestoreShadow;
5165
-           if ( $DrawLine ) { for($i=2; $i<=count($Plots)-6; $i=$i+2) { $this->drawLine($Plots[$i],$Plots[$i+1],$Plots[$i+2],$Plots[$i+3],$LineColor); } }
5166
-           if ( $DrawPlot )
5165
+           if ($DrawLine) { for ($i = 2; $i <= count($Plots) - 6; $i = $i + 2) { $this->drawLine($Plots[$i], $Plots[$i + 1], $Plots[$i + 2], $Plots[$i + 3], $LineColor); } }
5166
+           if ($DrawPlot)
5167 5167
             {
5168
-             for($i=2; $i<=count($Plots)-4; $i=$i+2)
5168
+             for ($i = 2; $i <= count($Plots) - 4; $i = $i + 2)
5169 5169
               {
5170
-               if ( $PlotBorder != 0 )
5171
-                { $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius+$PlotBorder,$PlotBorderColor); }
5170
+               if ($PlotBorder != 0)
5171
+                { $this->drawFilledCircle($Plots[$i], $Plots[$i + 1], $PlotRadius + $PlotBorder, $PlotBorderColor); }
5172 5172
 
5173
-               $this->drawFilledCircle($Plots[$i],$Plots[$i+1],$PlotRadius,$Color);
5173
+               $this->drawFilledCircle($Plots[$i], $Plots[$i + 1], $PlotRadius, $Color);
5174 5174
               }
5175 5175
             }
5176 5176
            $this->Shadow = FALSE;
@@ -5181,24 +5181,24 @@  discard block
 block discarded – undo
5181 5181
     }
5182 5182
 
5183 5183
    /* Returns a random color */
5184
-   function getRandomColor($Alpha=100)
5185
-    { return(array("R"=>rand(0,255),"G"=>rand(0,255),"B"=>rand(0,255),"Alpha"=>$Alpha)); }
5184
+   function getRandomColor($Alpha = 100)
5185
+    { return(array("R"=>rand(0, 255), "G"=>rand(0, 255), "B"=>rand(0, 255), "Alpha"=>$Alpha)); }
5186 5186
  
5187 5187
    /* Validate a palette */
5188
-   function validatePalette($Colors,$Surrounding=NULL)
5188
+   function validatePalette($Colors, $Surrounding = NULL)
5189 5189
     {
5190 5190
      $Result = "";
5191 5191
 
5192
-     if ( !is_array($Colors) ) { return($this->getRandomColor()); }
5192
+     if (!is_array($Colors)) { return($this->getRandomColor()); }
5193 5193
 
5194
-     foreach($Colors as $Key => $Values)
5194
+     foreach ($Colors as $Key => $Values)
5195 5195
       {
5196
-       if ( isset($Values["R"]) ) { $Result[$Key]["R"] = $Values["R"]; } else { $Result[$Key]["R"] = rand(0,255); }
5197
-       if ( isset($Values["G"]) ) { $Result[$Key]["G"] = $Values["G"]; } else { $Result[$Key]["G"] = rand(0,255); }
5198
-       if ( isset($Values["B"]) ) { $Result[$Key]["B"] = $Values["B"]; } else { $Result[$Key]["B"] = rand(0,255); }
5199
-       if ( isset($Values["Alpha"]) ) { $Result[$Key]["Alpha"] = $Values["Alpha"]; } else { $Result[$Key]["Alpha"] = 100; }
5196
+       if (isset($Values["R"])) { $Result[$Key]["R"] = $Values["R"]; } else { $Result[$Key]["R"] = rand(0, 255); }
5197
+       if (isset($Values["G"])) { $Result[$Key]["G"] = $Values["G"]; } else { $Result[$Key]["G"] = rand(0, 255); }
5198
+       if (isset($Values["B"])) { $Result[$Key]["B"] = $Values["B"]; } else { $Result[$Key]["B"] = rand(0, 255); }
5199
+       if (isset($Values["Alpha"])) { $Result[$Key]["Alpha"] = $Values["Alpha"]; } else { $Result[$Key]["Alpha"] = 100; }
5200 5200
 
5201
-       if ( $Surrounding != NULL )
5201
+       if ($Surrounding != NULL)
5202 5202
         {
5203 5203
          $Result[$Key]["BorderR"] = $Result[$Key]["R"] + $Surrounding;
5204 5204
          $Result[$Key]["BorderG"] = $Result[$Key]["G"] + $Surrounding;
@@ -5206,10 +5206,10 @@  discard block
 block discarded – undo
5206 5206
         }
5207 5207
        else
5208 5208
         {
5209
-         if ( isset($Values["BorderR"]) )     { $Result[$Key]["BorderR"] = $Values["BorderR"]; } else { $Result[$Key]["BorderR"] = $Result[$Key]["R"]; }
5210
-         if ( isset($Values["BorderG"]) )     { $Result[$Key]["BorderG"] = $Values["BorderG"]; } else { $Result[$Key]["BorderG"] = $Result[$Key]["G"]; }
5211
-         if ( isset($Values["BorderB"]) )     { $Result[$Key]["BorderB"] = $Values["BorderB"]; } else { $Result[$Key]["BorderB"] = $Result[$Key]["B"]; }
5212
-         if ( isset($Values["BorderAlpha"]) ) { $Result[$Key]["BorderAlpha"] = $Values["BorderAlpha"]; } else { $Result[$Key]["BorderAlpha"] = $Result[$Key]["Alpha"]; }
5209
+         if (isset($Values["BorderR"])) { $Result[$Key]["BorderR"] = $Values["BorderR"]; } else { $Result[$Key]["BorderR"] = $Result[$Key]["R"]; }
5210
+         if (isset($Values["BorderG"])) { $Result[$Key]["BorderG"] = $Values["BorderG"]; } else { $Result[$Key]["BorderG"] = $Result[$Key]["G"]; }
5211
+         if (isset($Values["BorderB"])) { $Result[$Key]["BorderB"] = $Values["BorderB"]; } else { $Result[$Key]["BorderB"] = $Result[$Key]["B"]; }
5212
+         if (isset($Values["BorderAlpha"])) { $Result[$Key]["BorderAlpha"] = $Values["BorderAlpha"]; } else { $Result[$Key]["BorderAlpha"] = $Result[$Key]["Alpha"]; }
5213 5213
         }
5214 5214
       }
5215 5215
 
@@ -5217,35 +5217,35 @@  discard block
 block discarded – undo
5217 5217
     }
5218 5218
 
5219 5219
    /* Draw the derivative chart associated to the data series */
5220
-   function drawDerivative($Format=NULL)
5220
+   function drawDerivative($Format = NULL)
5221 5221
     {
5222
-     $Offset		= isset($Format["Offset"]) ? $Format["Offset"] : 10;
5223
-     $SerieSpacing	= isset($Format["SerieSpacing"]) ? $Format["SerieSpacing"] : 3;
5224
-     $DerivativeHeight	= isset($Format["DerivativeHeight"]) ? $Format["DerivativeHeight"] : 4;
5222
+     $Offset = isset($Format["Offset"]) ? $Format["Offset"] : 10;
5223
+     $SerieSpacing = isset($Format["SerieSpacing"]) ? $Format["SerieSpacing"] : 3;
5224
+     $DerivativeHeight = isset($Format["DerivativeHeight"]) ? $Format["DerivativeHeight"] : 4;
5225 5225
      $ShadedSlopeBox	= isset($Format["ShadedSlopeBox"]) ? $Format["ShadedSlopeBox"] : FALSE;
5226 5226
      $DrawBackground	= isset($Format["DrawBackground"]) ? $Format["DrawBackground"] : TRUE;
5227 5227
      $BackgroundR	= isset($Format["BackgroundR"]) ? $Format["BackgroundR"] : 255;
5228 5228
      $BackgroundG	= isset($Format["BackgroundG"]) ? $Format["BackgroundG"] : 255;
5229 5229
      $BackgroundB	= isset($Format["BackgroundB"]) ? $Format["BackgroundB"] : 255;
5230
-     $BackgroundAlpha	= isset($Format["BackgroundAlpha"]) ? $Format["BackgroundAlpha"] : 20;
5231
-     $DrawBorder	= isset($Format["DrawBorder"]) ? $Format["DrawBorder"] : TRUE;
5230
+     $BackgroundAlpha = isset($Format["BackgroundAlpha"]) ? $Format["BackgroundAlpha"] : 20;
5231
+     $DrawBorder = isset($Format["DrawBorder"]) ? $Format["DrawBorder"] : TRUE;
5232 5232
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : 0;
5233 5233
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : 0;
5234 5234
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : 0;
5235
-     $BorderAlpha	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 100;
5235
+     $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 100;
5236 5236
      $Caption		= isset($Format["Caption"]) ? $Format["Caption"] : TRUE;
5237 5237
      $CaptionHeight	= isset($Format["CaptionHeight"]) ? $Format["CaptionHeight"] : 10;
5238
-     $CaptionWidth	= isset($Format["CaptionWidth"]) ? $Format["CaptionWidth"] : 20;
5238
+     $CaptionWidth = isset($Format["CaptionWidth"]) ? $Format["CaptionWidth"] : 20;
5239 5239
      $CaptionMargin	= isset($Format["CaptionMargin"]) ? $Format["CaptionMargin"] : 4;
5240
-     $CaptionLine	= isset($Format["CaptionLine"]) ? $Format["CaptionLine"] : FALSE;
5241
-     $CaptionBox	= isset($Format["CaptionBox"]) ? $Format["CaptionBox"] : FALSE;
5240
+     $CaptionLine = isset($Format["CaptionLine"]) ? $Format["CaptionLine"] : FALSE;
5241
+     $CaptionBox = isset($Format["CaptionBox"]) ? $Format["CaptionBox"] : FALSE;
5242 5242
      $CaptionBorderR	= isset($Format["CaptionBorderR"]) ? $Format["CaptionBorderR"] : 0;
5243 5243
      $CaptionBorderG	= isset($Format["CaptionBorderG"]) ? $Format["CaptionBorderG"] : 0;
5244 5244
      $CaptionBorderB	= isset($Format["CaptionBorderB"]) ? $Format["CaptionBorderB"] : 0;
5245 5245
      $CaptionFillR	= isset($Format["CaptionFillR"]) ? $Format["CaptionFillR"] : 255;
5246 5246
      $CaptionFillG	= isset($Format["CaptionFillG"]) ? $Format["CaptionFillG"] : 255;
5247 5247
      $CaptionFillB	= isset($Format["CaptionFillB"]) ? $Format["CaptionFillB"] : 255;
5248
-     $CaptionFillAlpha	= isset($Format["CaptionFillAlpha"]) ? $Format["CaptionFillAlpha"] : 80;
5248
+     $CaptionFillAlpha = isset($Format["CaptionFillAlpha"]) ? $Format["CaptionFillAlpha"] : 80;
5249 5249
      $PositiveSlopeStartR	= isset($Format["PositiveSlopeStartR"]) ? $Format["PositiveSlopeStartR"] : 184;
5250 5250
      $PositiveSlopeStartG	= isset($Format["PositiveSlopeStartG"]) ? $Format["PositiveSlopeStartG"] : 234;
5251 5251
      $PositiveSlopeStartB	= isset($Format["PositiveSlopeStartB"]) ? $Format["PositiveSlopeStartB"] : 88;
@@ -5261,105 +5261,105 @@  discard block
 block discarded – undo
5261 5261
 
5262 5262
      $Data = $this->DataSet->getData();
5263 5263
 
5264
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5264
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
5265 5265
 
5266
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5266
+     if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
5267 5267
       $YPos = $this->DataSet->Data["GraphArea"]["Y2"] + $Offset;
5268 5268
      else
5269 5269
       $XPos = $this->DataSet->Data["GraphArea"]["X2"] + $Offset;
5270 5270
 
5271
-     foreach($Data["Series"] as $SerieName => $Serie)
5271
+     foreach ($Data["Series"] as $SerieName => $Serie)
5272 5272
       {
5273
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5273
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
5274 5274
         {
5275 5275
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
5276 5276
 
5277 5277
          $AxisID   = $Serie["Axis"];
5278
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
5278
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
5279 5279
 
5280
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5280
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
5281 5281
           {
5282
-           if ( $Caption )
5282
+           if ($Caption)
5283 5283
             {
5284
-             if ( $CaptionLine ) 
5284
+             if ($CaptionLine) 
5285 5285
               {
5286
-               $StartX = floor($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin);
5287
-               $EndX   = floor($this->GraphAreaX1-$CaptionMargin+$XMargin);
5286
+               $StartX = floor($this->GraphAreaX1 - $CaptionWidth + $XMargin - $CaptionMargin);
5287
+               $EndX   = floor($this->GraphAreaX1 - $CaptionMargin + $XMargin);
5288 5288
 
5289
-               $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5290
-               if ( $CaptionBox ) { $this->drawFilledRectangle($StartX,$YPos,$EndX,$YPos+$CaptionHeight,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5291
-               $this->drawLine($StartX+2,$YPos+($CaptionHeight/2),$EndX-2,$YPos+($CaptionHeight/2),$CaptionSettings);
5289
+               $CaptionSettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight);
5290
+               if ($CaptionBox) { $this->drawFilledRectangle($StartX, $YPos, $EndX, $YPos + $CaptionHeight, array("R"=>$CaptionFillR, "G"=>$CaptionFillG, "B"=>$CaptionFillB, "BorderR"=>$CaptionBorderR, "BorderG"=>$CaptionBorderG, "BorderB"=>$CaptionBorderB, "Alpha"=>$CaptionFillAlpha)); }
5291
+               $this->drawLine($StartX + 2, $YPos + ($CaptionHeight/2), $EndX - 2, $YPos + ($CaptionHeight/2), $CaptionSettings);
5292 5292
               }
5293 5293
              else
5294
-              $this->drawFilledRectangle($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin,$YPos,$this->GraphAreaX1-$CaptionMargin+$XMargin,$YPos+$CaptionHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5294
+              $this->drawFilledRectangle($this->GraphAreaX1 - $CaptionWidth + $XMargin - $CaptionMargin, $YPos, $this->GraphAreaX1 - $CaptionMargin + $XMargin, $YPos + $CaptionHeight, array("R"=>$R, "G"=>$G, "B"=>$B, "BorderR"=>$CaptionBorderR, "BorderG"=>$CaptionBorderG, "BorderB"=>$CaptionBorderB));
5295 5295
             }
5296 5296
 
5297
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5297
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
5298 5298
            $X = $this->GraphAreaX1 + $XMargin;
5299 5299
 
5300 5300
            $TopY    = $YPos + ($CaptionHeight/2) - ($DerivativeHeight/2);
5301 5301
            $BottomY = $YPos + ($CaptionHeight/2) + ($DerivativeHeight/2);
5302 5302
 
5303
-           $StartX  = floor($this->GraphAreaX1+$XMargin);
5304
-           $EndX    = floor($this->GraphAreaX2-$XMargin);
5303
+           $StartX  = floor($this->GraphAreaX1 + $XMargin);
5304
+           $EndX    = floor($this->GraphAreaX2 - $XMargin);
5305 5305
 
5306
-           if ( $DrawBackground ) { $this->drawFilledRectangle($StartX-1,$TopY-1,$EndX+1,$BottomY+1,array("R"=>$BackgroundR,"G"=>$BackgroundG,"B"=>$BackgroundB,"Alpha"=>$BackgroundAlpha)); }
5307
-           if ( $DrawBorder ) { $this->drawRectangle($StartX-1,$TopY-1,$EndX+1,$BottomY+1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5306
+           if ($DrawBackground) { $this->drawFilledRectangle($StartX - 1, $TopY - 1, $EndX + 1, $BottomY + 1, array("R"=>$BackgroundR, "G"=>$BackgroundG, "B"=>$BackgroundB, "Alpha"=>$BackgroundAlpha)); }
5307
+           if ($DrawBorder) { $this->drawRectangle($StartX - 1, $TopY - 1, $EndX + 1, $BottomY + 1, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha)); }
5308 5308
 
5309
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5309
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5310 5310
 
5311 5311
            $RestoreShadow = $this->Shadow;
5312 5312
            $this->Shadow  = FALSE;
5313 5313
 
5314 5314
            /* Determine the Max slope index */
5315 5315
            $LastX = NULL; $LastY = NULL; $MinSlope = 0; $MaxSlope = 1;
5316
-           foreach($PosArray as $Key => $Y)
5316
+           foreach ($PosArray as $Key => $Y)
5317 5317
             {
5318
-             if ( $Y != VOID && $LastX != NULL )
5319
-              { $Slope = ($LastY - $Y); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5318
+             if ($Y != VOID && $LastX != NULL)
5319
+              { $Slope = ($LastY - $Y); if ($Slope > $MaxSlope) { $MaxSlope = $Slope; } if ($Slope < $MinSlope) { $MinSlope = $Slope; } }
5320 5320
 
5321
-             if ( $Y == VOID )
5321
+             if ($Y == VOID)
5322 5322
               { $LastX = NULL; $LastY = NULL; }
5323 5323
              else
5324 5324
               { $LastX = $X; $LastY = $Y; }
5325 5325
             }
5326 5326
 
5327 5327
            $LastX = NULL; $LastY = NULL; $LastColor = NULL;
5328
-           foreach($PosArray as $Key => $Y)
5328
+           foreach ($PosArray as $Key => $Y)
5329 5329
             {
5330
-             if ( $Y != VOID && $LastY != NULL )
5330
+             if ($Y != VOID && $LastY != NULL)
5331 5331
               {
5332 5332
                $Slope = ($LastY - $Y);
5333 5333
 
5334
-               if ( $Slope >= 0 )
5334
+               if ($Slope >= 0)
5335 5335
                 {
5336
-                 $SlopeIndex = (100 / $MaxSlope) * $Slope;
5337
-                 $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5338
-                 $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5339
-                 $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5336
+                 $SlopeIndex = (100/$MaxSlope)*$Slope;
5337
+                 $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex + $PositiveSlopeStartR;
5338
+                 $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex + $PositiveSlopeStartG;
5339
+                 $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex + $PositiveSlopeStartB;
5340 5340
                 }
5341
-               elseif ( $Slope < 0 )
5341
+               elseif ($Slope < 0)
5342 5342
                 {
5343
-                 $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5344
-                 $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
5345
-                 $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex+$NegativeSlopeStartG;
5346
-                 $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex+$NegativeSlopeStartB;
5343
+                 $SlopeIndex = (100/abs($MinSlope))*abs($Slope);
5344
+                 $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex + $NegativeSlopeStartR;
5345
+                 $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex + $NegativeSlopeStartG;
5346
+                 $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex + $NegativeSlopeStartB;
5347 5347
                 }
5348 5348
 
5349
-               $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5349
+               $Color = array("R"=>$R, "G"=>$G, "B"=>$B);
5350 5350
 
5351
-               if ( $ShadedSlopeBox && $LastColor != NULL ) // && $Slope != 0
5351
+               if ($ShadedSlopeBox && $LastColor != NULL) // && $Slope != 0
5352 5352
                 {
5353
-                 $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5354
-                 $this->drawGradientArea($LastX,$TopY,$X,$BottomY,DIRECTION_HORIZONTAL,$GradientSettings);
5353
+                 $GradientSettings = array("StartR"=>$LastColor["R"], "StartG"=>$LastColor["G"], "StartB"=>$LastColor["B"], "EndR"=>$R, "EndG"=>$G, "EndB"=>$B);
5354
+                 $this->drawGradientArea($LastX, $TopY, $X, $BottomY, DIRECTION_HORIZONTAL, $GradientSettings);
5355 5355
                 }
5356
-               elseif ( !$ShadedSlopeBox || $LastColor == NULL ) // || $Slope == 0
5357
-                $this->drawFilledRectangle(floor($LastX),$TopY,floor($X),$BottomY,$Color);
5356
+               elseif (!$ShadedSlopeBox || $LastColor == NULL) // || $Slope == 0
5357
+                $this->drawFilledRectangle(floor($LastX), $TopY, floor($X), $BottomY, $Color);
5358 5358
 
5359 5359
                $LastColor = $Color;
5360 5360
               }
5361 5361
 
5362
-             if ( $Y == VOID )
5362
+             if ($Y == VOID)
5363 5363
               { $LastY = NULL; }
5364 5364
              else
5365 5365
               { $LastX = $X; $LastY = $Y; }
@@ -5371,88 +5371,88 @@  discard block
 block discarded – undo
5371 5371
           }
5372 5372
          else
5373 5373
           {
5374
-           if ( $Caption )
5374
+           if ($Caption)
5375 5375
             {
5376
-             $StartY = floor($this->GraphAreaY1-$CaptionWidth+$XMargin-$CaptionMargin);
5377
-             $EndY   = floor($this->GraphAreaY1-$CaptionMargin+$XMargin);
5378
-             if ( $CaptionLine ) 
5376
+             $StartY = floor($this->GraphAreaY1 - $CaptionWidth + $XMargin - $CaptionMargin);
5377
+             $EndY   = floor($this->GraphAreaY1 - $CaptionMargin + $XMargin);
5378
+             if ($CaptionLine) 
5379 5379
               {
5380
-               $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5381
-               if ( $CaptionBox ) { $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5382
-               $this->drawLine($XPos+($CaptionHeight/2),$StartY+2,$XPos+($CaptionHeight/2),$EndY-2,$CaptionSettings);
5380
+               $CaptionSettings = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks, "Weight"=>$Weight);
5381
+               if ($CaptionBox) { $this->drawFilledRectangle($XPos, $StartY, $XPos + $CaptionHeight, $EndY, array("R"=>$CaptionFillR, "G"=>$CaptionFillG, "B"=>$CaptionFillB, "BorderR"=>$CaptionBorderR, "BorderG"=>$CaptionBorderG, "BorderB"=>$CaptionBorderB, "Alpha"=>$CaptionFillAlpha)); }
5382
+               $this->drawLine($XPos + ($CaptionHeight/2), $StartY + 2, $XPos + ($CaptionHeight/2), $EndY - 2, $CaptionSettings);
5383 5383
               }
5384 5384
              else
5385
-              $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5385
+              $this->drawFilledRectangle($XPos, $StartY, $XPos + $CaptionHeight, $EndY, array("R"=>$R, "G"=>$G, "B"=>$B, "BorderR"=>$CaptionBorderR, "BorderG"=>$CaptionBorderG, "BorderB"=>$CaptionBorderB));
5386 5386
             }
5387 5387
 
5388 5388
 
5389
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5389
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
5390 5390
            $Y = $this->GraphAreaY1 + $XMargin;
5391 5391
 
5392 5392
            $TopX    = $XPos + ($CaptionHeight/2) - ($DerivativeHeight/2);
5393 5393
            $BottomX = $XPos + ($CaptionHeight/2) + ($DerivativeHeight/2);
5394 5394
 
5395
-           $StartY  = floor($this->GraphAreaY1+$XMargin);
5396
-           $EndY    = floor($this->GraphAreaY2-$XMargin);
5395
+           $StartY  = floor($this->GraphAreaY1 + $XMargin);
5396
+           $EndY    = floor($this->GraphAreaY2 - $XMargin);
5397 5397
 
5398
-           if ( $DrawBackground ) { $this->drawFilledRectangle($TopX-1,$StartY-1,$BottomX+1,$EndY+1,array("R"=>$BackgroundR,"G"=>$BackgroundG,"B"=>$BackgroundB,"Alpha"=>$BackgroundAlpha)); }
5399
-           if ( $DrawBorder ) { $this->drawRectangle($TopX-1,$StartY-1,$BottomX+1,$EndY+1,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5398
+           if ($DrawBackground) { $this->drawFilledRectangle($TopX - 1, $StartY - 1, $BottomX + 1, $EndY + 1, array("R"=>$BackgroundR, "G"=>$BackgroundG, "B"=>$BackgroundB, "Alpha"=>$BackgroundAlpha)); }
5399
+           if ($DrawBorder) { $this->drawRectangle($TopX - 1, $StartY - 1, $BottomX + 1, $EndY + 1, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha)); }
5400 5400
 
5401
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5401
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5402 5402
 
5403 5403
            $RestoreShadow = $this->Shadow;
5404 5404
            $this->Shadow  = FALSE;
5405 5405
 
5406 5406
            /* Determine the Max slope index */
5407 5407
            $LastX = NULL; $LastY = NULL; $MinSlope = 0; $MaxSlope = 1;
5408
-           foreach($PosArray as $Key => $X)
5408
+           foreach ($PosArray as $Key => $X)
5409 5409
             {
5410
-             if ( $X != VOID && $LastX != NULL )
5411
-              { $Slope = ($X - $LastX); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5410
+             if ($X != VOID && $LastX != NULL)
5411
+              { $Slope = ($X - $LastX); if ($Slope > $MaxSlope) { $MaxSlope = $Slope; } if ($Slope < $MinSlope) { $MinSlope = $Slope; } }
5412 5412
 
5413
-             if ( $X == VOID )
5413
+             if ($X == VOID)
5414 5414
               { $LastX = NULL; }
5415 5415
              else
5416 5416
               { $LastX = $X; }
5417 5417
             }
5418 5418
 
5419 5419
            $LastX = NULL; $LastY = NULL; $LastColor = NULL;
5420
-           foreach($PosArray as $Key => $X)
5420
+           foreach ($PosArray as $Key => $X)
5421 5421
             {
5422
-             if ( $X != VOID && $LastX != NULL )
5422
+             if ($X != VOID && $LastX != NULL)
5423 5423
               {
5424 5424
                $Slope = ($X - $LastX);
5425 5425
 
5426
-               if ( $Slope >= 0 )
5426
+               if ($Slope >= 0)
5427 5427
                 {
5428
-                 $SlopeIndex = (100 / $MaxSlope) * $Slope;
5429
-                 $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5430
-                 $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5431
-                 $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5428
+                 $SlopeIndex = (100/$MaxSlope)*$Slope;
5429
+                 $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex + $PositiveSlopeStartR;
5430
+                 $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex + $PositiveSlopeStartG;
5431
+                 $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex + $PositiveSlopeStartB;
5432 5432
                 }
5433
-               elseif ( $Slope < 0 )
5433
+               elseif ($Slope < 0)
5434 5434
                 {
5435
-                 $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5436
-                 $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
5437
-                 $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex+$NegativeSlopeStartG;
5438
-                 $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex+$NegativeSlopeStartB;
5435
+                 $SlopeIndex = (100/abs($MinSlope))*abs($Slope);
5436
+                 $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex + $NegativeSlopeStartR;
5437
+                 $G = (($NegativeSlopeEndG - $NegativeSlopeStartG)/100)*$SlopeIndex + $NegativeSlopeStartG;
5438
+                 $B = (($NegativeSlopeEndB - $NegativeSlopeStartB)/100)*$SlopeIndex + $NegativeSlopeStartB;
5439 5439
                 }
5440 5440
 
5441
-               $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5441
+               $Color = array("R"=>$R, "G"=>$G, "B"=>$B);
5442 5442
 
5443
-               if ( $ShadedSlopeBox && $LastColor != NULL )
5443
+               if ($ShadedSlopeBox && $LastColor != NULL)
5444 5444
                 {
5445
-                 $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5445
+                 $GradientSettings = array("StartR"=>$LastColor["R"], "StartG"=>$LastColor["G"], "StartB"=>$LastColor["B"], "EndR"=>$R, "EndG"=>$G, "EndB"=>$B);
5446 5446
 
5447
-                 $this->drawGradientArea($TopX,$LastY,$BottomX,$Y,DIRECTION_VERTICAL,$GradientSettings);
5447
+                 $this->drawGradientArea($TopX, $LastY, $BottomX, $Y, DIRECTION_VERTICAL, $GradientSettings);
5448 5448
                 }
5449
-               elseif ( !$ShadedSlopeBox || $LastColor == NULL ) 
5450
-                $this->drawFilledRectangle($TopX,floor($LastY),$BottomX,floor($Y),$Color);
5449
+               elseif (!$ShadedSlopeBox || $LastColor == NULL) 
5450
+                $this->drawFilledRectangle($TopX, floor($LastY), $BottomX, floor($Y), $Color);
5451 5451
 
5452 5452
                $LastColor = $Color;
5453 5453
               }
5454 5454
 
5455
-             if ( $X == VOID )
5455
+             if ($X == VOID)
5456 5456
               { $LastX = NULL; }
5457 5457
              else
5458 5458
               { $LastX = $X; $LastY = $Y; }
@@ -5469,40 +5469,40 @@  discard block
 block discarded – undo
5469 5469
     }
5470 5470
 
5471 5471
    /* Draw the line of best fit */
5472
-   function drawBestFit($Format="")
5472
+   function drawBestFit($Format = "")
5473 5473
     {
5474
-     $OverrideTicks	= isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
5474
+     $OverrideTicks = isset($Format["Ticks"]) ? $Format["Ticks"] : NULL;
5475 5475
      $OverrideR		= isset($Format["R"]) ? $Format["R"] : VOID;
5476 5476
      $OverrideG		= isset($Format["G"]) ? $Format["G"] : VOID;
5477 5477
      $OverrideB		= isset($Format["B"]) ? $Format["B"] : VOID;
5478
-     $OverrideAlpha	= isset($Format["Alpha"]) ? $Format["Alpha"] : VOID;
5478
+     $OverrideAlpha = isset($Format["Alpha"]) ? $Format["Alpha"] : VOID;
5479 5479
 
5480 5480
      $Data = $this->DataSet->getData();
5481
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5481
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
5482 5482
 
5483
-     foreach($Data["Series"] as $SerieName => $Serie)
5483
+     foreach ($Data["Series"] as $SerieName => $Serie)
5484 5484
       {
5485
-       if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
5485
+       if ($Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"])
5486 5486
         {
5487
-         if ( $OverrideR != VOID && $OverrideG != VOID && $OverrideB != VOID ) { $R = $OverrideR; $G = $OverrideG; $B = $OverrideB; } else { $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; }
5488
-         if ( $OverrideTicks == NULL ) { $Ticks = $Serie["Ticks"]; } else { $Ticks = $OverrideTicks; }
5489
-         if ( $OverrideAlpha == VOID ) { $Alpha = $Serie["Color"]["Alpha"]; } else { $Alpha = $OverrideAlpha; }
5487
+         if ($OverrideR != VOID && $OverrideG != VOID && $OverrideB != VOID) { $R = $OverrideR; $G = $OverrideG; $B = $OverrideB; } else { $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; }
5488
+         if ($OverrideTicks == NULL) { $Ticks = $Serie["Ticks"]; } else { $Ticks = $OverrideTicks; }
5489
+         if ($OverrideAlpha == VOID) { $Alpha = $Serie["Color"]["Alpha"]; } else { $Alpha = $OverrideAlpha; }
5490 5490
 
5491
-         $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks);
5491
+         $Color = array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha, "Ticks"=>$Ticks);
5492 5492
 
5493 5493
          $AxisID   = $Serie["Axis"];
5494
-         $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
5494
+         $PosArray = $this->scaleComputeY($Serie["Data"], array("AxisID"=>$Serie["Axis"]));
5495 5495
 
5496
-         if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5496
+         if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
5497 5497
           {
5498
-           if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5498
+           if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
5499 5499
            $X = $this->GraphAreaX1 + $XMargin;
5500 5500
 
5501
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5501
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5502 5502
            $Sxy = 0; $Sx = 0; $Sy = 0; $Sxx = 0;
5503
-           foreach($PosArray as $Key => $Y)
5503
+           foreach ($PosArray as $Key => $Y)
5504 5504
             {
5505
-             if ( $Y != VOID )
5505
+             if ($Y != VOID)
5506 5506
               {
5507 5507
                $Sxy = $Sxy + $X*$Y;
5508 5508
                $Sx  = $Sx + $X;
@@ -5513,31 +5513,31 @@  discard block
 block discarded – undo
5513 5513
              $X = $X + $XStep;
5514 5514
             }
5515 5515
            $n = count($this->DataSet->stripVOID($PosArray)); //$n = count($PosArray);
5516
-           $M = (($n*$Sxy)-($Sx*$Sy)) / (($n*$Sxx)-($Sx*$Sx));
5517
-           $B = (($Sy)-($M*$Sx))/($n);
5516
+           $M = (($n*$Sxy) - ($Sx*$Sy))/(($n*$Sxx) - ($Sx*$Sx));
5517
+           $B = (($Sy) - ($M*$Sx))/($n);
5518 5518
 
5519 5519
            $X1 = $this->GraphAreaX1 + $XMargin;
5520
-           $Y1 = $M * $X1 + $B;
5520
+           $Y1 = $M*$X1 + $B;
5521 5521
            $X2 = $this->GraphAreaX2 - $XMargin;
5522
-           $Y2 = $M * $X2 + $B;
5522
+           $Y2 = $M*$X2 + $B;
5523 5523
 
5524
-           if ( $Y1 < $this->GraphAreaY1 ) { $X1 = $X1 + ($this->GraphAreaY1-$Y1); $Y1 = $this->GraphAreaY1; }
5525
-           if ( $Y1 > $this->GraphAreaY2 ) { $X1 = $X1 + ($Y1-$this->GraphAreaY2); $Y1 = $this->GraphAreaY2; }
5526
-           if ( $Y2 < $this->GraphAreaY1 ) { $X2 = $X2 - ($this->GraphAreaY1-$Y2); $Y2 = $this->GraphAreaY1; }
5527
-           if ( $Y2 > $this->GraphAreaY2 ) { $X2 = $X2 - ($Y2-$this->GraphAreaY2); $Y2 = $this->GraphAreaY2; }
5524
+           if ($Y1 < $this->GraphAreaY1) { $X1 = $X1 + ($this->GraphAreaY1 - $Y1); $Y1 = $this->GraphAreaY1; }
5525
+           if ($Y1 > $this->GraphAreaY2) { $X1 = $X1 + ($Y1 - $this->GraphAreaY2); $Y1 = $this->GraphAreaY2; }
5526
+           if ($Y2 < $this->GraphAreaY1) { $X2 = $X2 - ($this->GraphAreaY1 - $Y2); $Y2 = $this->GraphAreaY1; }
5527
+           if ($Y2 > $this->GraphAreaY2) { $X2 = $X2 - ($Y2 - $this->GraphAreaY2); $Y2 = $this->GraphAreaY2; }
5528 5528
 
5529
-           $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5529
+           $this->drawLine($X1, $Y1, $X2, $Y2, $Color);
5530 5530
           }
5531 5531
          else
5532 5532
           {
5533
-           if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5533
+           if ($XDivs == 0) { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
5534 5534
            $Y = $this->GraphAreaY1 + $XMargin;
5535 5535
 
5536
-           if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5536
+           if (!is_array($PosArray)) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
5537 5537
            $Sxy = 0; $Sx = 0; $Sy = 0; $Sxx = 0;
5538
-           foreach($PosArray as $Key => $X)
5538
+           foreach ($PosArray as $Key => $X)
5539 5539
             {
5540
-             if ( $X != VOID )
5540
+             if ($X != VOID)
5541 5541
               {
5542 5542
                $Sxy = $Sxy + $X*$Y;
5543 5543
                $Sx  = $Sx + $Y;
@@ -5548,32 +5548,32 @@  discard block
 block discarded – undo
5548 5548
              $Y = $Y + $YStep;
5549 5549
             }
5550 5550
            $n = count($this->DataSet->stripVOID($PosArray)); //$n = count($PosArray);
5551
-           $M = (($n*$Sxy)-($Sx*$Sy)) / (($n*$Sxx)-($Sx*$Sx));
5552
-           $B = (($Sy)-($M*$Sx))/($n);
5551
+           $M = (($n*$Sxy) - ($Sx*$Sy))/(($n*$Sxx) - ($Sx*$Sx));
5552
+           $B = (($Sy) - ($M*$Sx))/($n);
5553 5553
 
5554 5554
            $Y1 = $this->GraphAreaY1 + $XMargin;
5555
-           $X1 = $M * $Y1 + $B;
5555
+           $X1 = $M*$Y1 + $B;
5556 5556
            $Y2 = $this->GraphAreaY2 - $XMargin;
5557
-           $X2 = $M * $Y2 + $B;
5557
+           $X2 = $M*$Y2 + $B;
5558 5558
 
5559
-           if ( $X1 < $this->GraphAreaX1 ) { $Y1 = $Y1 + ($this->GraphAreaX1-$X1); $X1 = $this->GraphAreaX1; }
5560
-           if ( $X1 > $this->GraphAreaX2 ) { $Y1 = $Y1 + ($X1-$this->GraphAreaX2); $X1 = $this->GraphAreaX2; }
5561
-           if ( $X2 < $this->GraphAreaX1 ) { $Y2 = $Y2 - ($this->GraphAreaY1-$X2); $X2 = $this->GraphAreaX1; }
5562
-           if ( $X2 > $this->GraphAreaX2 ) { $Y2 = $Y2 - ($X2-$this->GraphAreaX2); $X2 = $this->GraphAreaX2; }
5559
+           if ($X1 < $this->GraphAreaX1) { $Y1 = $Y1 + ($this->GraphAreaX1 - $X1); $X1 = $this->GraphAreaX1; }
5560
+           if ($X1 > $this->GraphAreaX2) { $Y1 = $Y1 + ($X1 - $this->GraphAreaX2); $X1 = $this->GraphAreaX2; }
5561
+           if ($X2 < $this->GraphAreaX1) { $Y2 = $Y2 - ($this->GraphAreaY1 - $X2); $X2 = $this->GraphAreaX1; }
5562
+           if ($X2 > $this->GraphAreaX2) { $Y2 = $Y2 - ($X2 - $this->GraphAreaX2); $X2 = $this->GraphAreaX2; }
5563 5563
 
5564
-           $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5564
+           $this->drawLine($X1, $Y1, $X2, $Y2, $Color);
5565 5565
           }
5566 5566
         }
5567 5567
       }
5568 5568
     }
5569 5569
 
5570 5570
    /* Write labels */
5571
-   function writeLabel($SeriesName,$Indexes,$Format="")
5571
+   function writeLabel($SeriesName, $Indexes, $Format = "")
5572 5572
     {
5573
-     $OverrideTitle	= isset($Format["OverrideTitle"]) ? $Format["OverrideTitle"] : NULL;
5574
-     $ForceLabels	= isset($Format["ForceLabels"]) ? $Format["ForceLabels"] : NULL;
5575
-     $DrawPoint		= isset($Format["DrawPoint"]) ? $Format["DrawPoint"] : LABEL_POINT_BOX;
5576
-     $DrawVerticalLine	= isset($Format["DrawVerticalLine"]) ? $Format["DrawVerticalLine"] : FALSE;
5573
+     $OverrideTitle = isset($Format["OverrideTitle"]) ? $Format["OverrideTitle"] : NULL;
5574
+     $ForceLabels = isset($Format["ForceLabels"]) ? $Format["ForceLabels"] : NULL;
5575
+     $DrawPoint = isset($Format["DrawPoint"]) ? $Format["DrawPoint"] : LABEL_POINT_BOX;
5576
+     $DrawVerticalLine = isset($Format["DrawVerticalLine"]) ? $Format["DrawVerticalLine"] : FALSE;
5577 5577
      $VerticalLineR	= isset($Format["VerticalLineR"]) ? $Format["VerticalLineR"] : 0;
5578 5578
      $VerticalLineG	= isset($Format["VerticalLineG"]) ? $Format["VerticalLineG"] : 0;
5579 5579
      $VerticalLineB	= isset($Format["VerticalLineB"]) ? $Format["VerticalLineB"] : 0;
@@ -5581,40 +5581,40 @@  discard block
 block discarded – undo
5581 5581
      $VerticalLineTicks	= isset($Format["VerticalLineTicks"]) ? $Format["VerticalLineTicks"] : 2;
5582 5582
 
5583 5583
      $Data = $this->DataSet->getData();
5584
-     list($XMargin,$XDivs) = $this->scaleGetXSettings();
5584
+     list($XMargin, $XDivs) = $this->scaleGetXSettings();
5585 5585
 
5586
-     if ( !is_array($Indexes) )    { $Index = $Indexes; $Indexes = ""; $Indexes[] = $Index; }
5587
-     if ( !is_array($SeriesName) ) { $SerieName = $SeriesName; $SeriesName = ""; $SeriesName[] = $SerieName; }
5588
-     if ( $ForceLabels != NULL && !is_array($ForceLabels) ) { $ForceLabel = $ForceLabels; $ForceLabels = ""; $ForceLabels[] = $ForceLabel; }
5586
+     if (!is_array($Indexes)) { $Index = $Indexes; $Indexes = ""; $Indexes[] = $Index; }
5587
+     if (!is_array($SeriesName)) { $SerieName = $SeriesName; $SeriesName = ""; $SeriesName[] = $SerieName; }
5588
+     if ($ForceLabels != NULL && !is_array($ForceLabels)) { $ForceLabel = $ForceLabels; $ForceLabels = ""; $ForceLabels[] = $ForceLabel; }
5589 5589
 
5590 5590
      foreach ($Indexes as $Key => $Index)
5591 5591
       {
5592 5592
        $Series = "";
5593 5593
 
5594
-       if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5594
+       if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT)
5595 5595
         {
5596
-         if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
5597
-         $X = $this->GraphAreaX1 + $XMargin + $Index * $XStep;
5596
+         if ($XDivs == 0) { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2 - $this->GraphAreaX1 - $XMargin*2)/$XDivs; }
5597
+         $X = $this->GraphAreaX1 + $XMargin + $Index*$XStep;
5598 5598
 
5599
-         if ( $DrawVerticalLine ) { $this->drawLine($X,$this->GraphAreaY1+$Data["YMargin"],$X,$this->GraphAreaY2-$Data["YMargin"],array("R"=>$VerticalLineR,"G"=>$VerticalLineG,"B"=>$VerticalLineB,"Alpha"=>$VerticalLineAlpha,"Ticks"=>$VerticalLineTicks)); }
5599
+         if ($DrawVerticalLine) { $this->drawLine($X, $this->GraphAreaY1 + $Data["YMargin"], $X, $this->GraphAreaY2 - $Data["YMargin"], array("R"=>$VerticalLineR, "G"=>$VerticalLineG, "B"=>$VerticalLineB, "Alpha"=>$VerticalLineAlpha, "Ticks"=>$VerticalLineTicks)); }
5600 5600
 
5601 5601
          $MinY = $this->GraphAreaY2;
5602 5602
          foreach ($SeriesName as $iKey => $SerieName)
5603 5603
           {
5604
-           if ( isset($Data["Series"][$SerieName]["Data"][$Index]) )
5604
+           if (isset($Data["Series"][$SerieName]["Data"][$Index]))
5605 5605
             {
5606
-             $AxisID      = $Data["Series"][$SerieName]["Axis"];
5606
+             $AxisID = $Data["Series"][$SerieName]["Axis"];
5607 5607
 
5608
-             if ( $OverrideTitle != NULL)
5608
+             if ($OverrideTitle != NULL)
5609 5609
               $Description = $OverrideTitle;
5610
-             elseif ( count($SeriesName) == 1 )
5610
+             elseif (count($SeriesName) == 1)
5611 5611
               {
5612
-               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5612
+               if (isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]))
5613 5613
                 $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5614 5614
                else
5615 5615
                 $Description = $Data["Series"][$SerieName]["Description"];
5616 5616
               }
5617
-             elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5617
+             elseif (isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]))
5618 5618
               $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5619 5619
 
5620 5620
              $AxisMode     = $Data["Axis"][$AxisID]["Display"];
@@ -5627,78 +5627,78 @@  discard block
 block discarded – undo
5627 5627
              $Serie["B"] = $Data["Series"][$SerieName]["Color"]["B"];
5628 5628
              $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5629 5629
 
5630
-             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5630
+             if (count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]))
5631 5631
               $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5632 5632
              else
5633 5633
               $SerieOffset = 0;
5634 5634
 
5635 5635
              $Value = $Data["Series"][$SerieName]["Data"][$Index];
5636
-             if ( $Value == VOID ) { $Value = "NaN"; }
5636
+             if ($Value == VOID) { $Value = "NaN"; }
5637 5637
 
5638
-             if ( $ForceLabels != NULL )
5638
+             if ($ForceLabels != NULL)
5639 5639
               $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5640 5640
              else
5641
-              $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5641
+              $Caption = $this->scaleFormat($Value, $AxisMode, $AxisFormat, $AxisUnit);
5642 5642
 
5643
-             if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5643
+             if ($this->LastChartLayout == CHART_LAST_LAYOUT_STACKED)
5644 5644
               {
5645
-               if ( $Value >=0 ) { $LookFor = "+"; } else { $LookFor = "-"; }
5645
+               if ($Value >= 0) { $LookFor = "+"; } else { $LookFor = "-"; }
5646 5646
 
5647 5647
                $Value = 0; $Done = FALSE;
5648
-               foreach($Data["Series"] as $Name => $SerieLookup)
5648
+               foreach ($Data["Series"] as $Name => $SerieLookup)
5649 5649
                 {
5650
-                 if ( $SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done )
5650
+                 if ($SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done)
5651 5651
                   {
5652
-                   if ( isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID )
5652
+                   if (isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID)
5653 5653
                     {
5654
-                     if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+" ) { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5655
-                     if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-" )  { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5656
-                     if ($Name == $SerieName ) { $Done = TRUE; }
5654
+                     if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+") { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5655
+                     if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-") { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5656
+                     if ($Name == $SerieName) { $Done = TRUE; }
5657 5657
                     }
5658 5658
                   }
5659 5659
                 }
5660 5660
               }
5661 5661
 
5662
-             $X = floor($this->GraphAreaX1 + $XMargin + $Index * $XStep + $SerieOffset);
5663
-             $Y = floor($this->scaleComputeY($Value,array("AxisID"=>$AxisID)));
5662
+             $X = floor($this->GraphAreaX1 + $XMargin + $Index*$XStep + $SerieOffset);
5663
+             $Y = floor($this->scaleComputeY($Value, array("AxisID"=>$AxisID)));
5664 5664
 
5665 5665
              if ($Y < $MinY) { $MinY = $Y; }
5666 5666
 
5667
-             if ( $DrawPoint == LABEL_POINT_CIRCLE )
5668
-              $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5669
-             elseif ( $DrawPoint == LABEL_POINT_BOX )
5670
-              $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5667
+             if ($DrawPoint == LABEL_POINT_CIRCLE)
5668
+              $this->drawFilledCircle($X, $Y, 3, array("R"=>255, "G"=>255, "B"=>255, "BorderR"=>0, "BorderG"=>0, "BorderB"=>0));
5669
+             elseif ($DrawPoint == LABEL_POINT_BOX)
5670
+              $this->drawFilledRectangle($X - 2, $Y - 2, $X + 2, $Y + 2, array("R"=>255, "G"=>255, "B"=>255, "BorderR"=>0, "BorderG"=>0, "BorderB"=>0));
5671 5671
 
5672
-             $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5672
+             $Series[] = array("Format"=>$Serie, "Caption"=>$Caption);
5673 5673
             }
5674 5674
           }
5675
-         $this->drawLabelBox($X,$MinY-3,$Description,$Series,$Format);
5675
+         $this->drawLabelBox($X, $MinY - 3, $Description, $Series, $Format);
5676 5676
 
5677 5677
         }
5678 5678
        else
5679 5679
         {
5680
-         if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5681
-         $Y = $this->GraphAreaY1 + $XMargin + $Index * $XStep;
5680
+         if ($XDivs == 0) { $XStep = ($this->GraphAreaY2 - $this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2 - $this->GraphAreaY1 - $XMargin*2)/$XDivs; }
5681
+         $Y = $this->GraphAreaY1 + $XMargin + $Index*$XStep;
5682 5682
 
5683
-         if ( $DrawVerticalLine ) { $this->drawLine($this->GraphAreaX1+$Data["YMargin"],$Y,$this->GraphAreaX2-$Data["YMargin"],$Y,array("R"=>$VerticalLineR,"G"=>$VerticalLineG,"B"=>$VerticalLineB,"Alpha"=>$VerticalLineAlpha,"Ticks"=>$VerticalLineTicks)); }
5683
+         if ($DrawVerticalLine) { $this->drawLine($this->GraphAreaX1 + $Data["YMargin"], $Y, $this->GraphAreaX2 - $Data["YMargin"], $Y, array("R"=>$VerticalLineR, "G"=>$VerticalLineG, "B"=>$VerticalLineB, "Alpha"=>$VerticalLineAlpha, "Ticks"=>$VerticalLineTicks)); }
5684 5684
 
5685 5685
          $MinX = $this->GraphAreaX2;
5686 5686
          foreach ($SeriesName as $Key => $SerieName)
5687 5687
           {
5688
-           if ( isset($Data["Series"][$SerieName]["Data"][$Index]) )
5688
+           if (isset($Data["Series"][$SerieName]["Data"][$Index]))
5689 5689
             {
5690
-             $AxisID      = $Data["Series"][$SerieName]["Axis"];
5690
+             $AxisID = $Data["Series"][$SerieName]["Axis"];
5691 5691
 
5692
-             if ( $OverrideTitle != NULL)
5692
+             if ($OverrideTitle != NULL)
5693 5693
               $Description = $OverrideTitle;
5694
-             elseif ( count($SeriesName) == 1 )
5694
+             elseif (count($SeriesName) == 1)
5695 5695
               {
5696
-               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5696
+               if (isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]))
5697 5697
                 $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5698 5698
                else
5699 5699
                 $Description = $Data["Series"][$SerieName]["Description"];
5700 5700
               }
5701
-             elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5701
+             elseif (isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]))
5702 5702
               $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5703 5703
 
5704 5704
              $AxisMode     = $Data["Axis"][$AxisID]["Display"];
@@ -5706,7 +5706,7 @@  discard block
 block discarded – undo
5706 5706
              $AxisUnit     = $Data["Axis"][$AxisID]["Unit"];
5707 5707
 
5708 5708
              $Serie = "";
5709
-             if ( isset($Data["Extended"]["Palette"][$Index] ) )
5709
+             if (isset($Data["Extended"]["Palette"][$Index]))
5710 5710
               {
5711 5711
                $Serie["R"] = $Data["Extended"]["Palette"][$Index]["R"];
5712 5712
                $Serie["G"] = $Data["Extended"]["Palette"][$Index]["G"];
@@ -5721,77 +5721,77 @@  discard block
 block discarded – undo
5721 5721
                $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5722 5722
               }
5723 5723
 
5724
-             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5724
+             if (count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]))
5725 5725
               $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5726 5726
              else
5727 5727
               $SerieOffset = 0;
5728 5728
 
5729 5729
              $Value = $Data["Series"][$SerieName]["Data"][$Index];
5730
-             if ( $ForceLabels != NULL )
5730
+             if ($ForceLabels != NULL)
5731 5731
               $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5732 5732
              else
5733
-              $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5734
-             if ( $Value == VOID ) { $Value = "NaN"; }
5733
+              $Caption = $this->scaleFormat($Value, $AxisMode, $AxisFormat, $AxisUnit);
5734
+             if ($Value == VOID) { $Value = "NaN"; }
5735 5735
 
5736
-             if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5736
+             if ($this->LastChartLayout == CHART_LAST_LAYOUT_STACKED)
5737 5737
               {
5738
-               if ( $Value >=0 ) { $LookFor = "+"; } else { $LookFor = "-"; }
5738
+               if ($Value >= 0) { $LookFor = "+"; } else { $LookFor = "-"; }
5739 5739
 
5740 5740
                $Value = 0; $Done = FALSE;
5741
-               foreach($Data["Series"] as $Name => $SerieLookup)
5741
+               foreach ($Data["Series"] as $Name => $SerieLookup)
5742 5742
                 {
5743
-                 if ( $SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done )
5743
+                 if ($SerieLookup["isDrawable"] == TRUE && $Name != $Data["Abscissa"] && !$Done)
5744 5744
                   {
5745
-                   if ( isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID )
5745
+                   if (isset($Data["Series"][$Name]["Data"][$Index]) && $Data["Series"][$Name]["Data"][$Index] != VOID)
5746 5746
                     {
5747
-                     if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+" ) { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5748
-                     if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-" )  { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5749
-                     if ($Name == $SerieName ) { $Done = TRUE; }
5747
+                     if ($Data["Series"][$Name]["Data"][$Index] >= 0 && $LookFor == "+") { $Value = $Value + $Data["Series"][$Name]["Data"][$Index]; }
5748
+                     if ($Data["Series"][$Name]["Data"][$Index] < 0 && $LookFor == "-") { $Value = $Value - $Data["Series"][$Name]["Data"][$Index]; }
5749
+                     if ($Name == $SerieName) { $Done = TRUE; }
5750 5750
                     }
5751 5751
                   }
5752 5752
                 }
5753 5753
               }
5754 5754
 
5755
-             $X = floor($this->scaleComputeY($Value,array("AxisID"=>$AxisID)));
5756
-             $Y = floor($this->GraphAreaY1 + $XMargin + $Index * $XStep + $SerieOffset);
5755
+             $X = floor($this->scaleComputeY($Value, array("AxisID"=>$AxisID)));
5756
+             $Y = floor($this->GraphAreaY1 + $XMargin + $Index*$XStep + $SerieOffset);
5757 5757
 
5758 5758
              if ($X < $MinX) { $MinX = $X; }
5759 5759
 
5760
-             if ( $DrawPoint == LABEL_POINT_CIRCLE )
5761
-              $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5762
-             elseif ( $DrawPoint == LABEL_POINT_BOX )
5763
-              $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5760
+             if ($DrawPoint == LABEL_POINT_CIRCLE)
5761
+              $this->drawFilledCircle($X, $Y, 3, array("R"=>255, "G"=>255, "B"=>255, "BorderR"=>0, "BorderG"=>0, "BorderB"=>0));
5762
+             elseif ($DrawPoint == LABEL_POINT_BOX)
5763
+              $this->drawFilledRectangle($X - 2, $Y - 2, $X + 2, $Y + 2, array("R"=>255, "G"=>255, "B"=>255, "BorderR"=>0, "BorderG"=>0, "BorderB"=>0));
5764 5764
 
5765
-             $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5765
+             $Series[] = array("Format"=>$Serie, "Caption"=>$Caption);
5766 5766
             }
5767 5767
           }
5768
-         $this->drawLabelBox($MinX,$Y-3,$Description,$Series,$Format);
5768
+         $this->drawLabelBox($MinX, $Y - 3, $Description, $Series, $Format);
5769 5769
 
5770 5770
         }
5771 5771
       }
5772 5772
     }
5773 5773
 
5774 5774
    /* Draw a label box */
5775
-   function drawLabelBox($X,$Y,$Title,$Captions,$Format="")
5775
+   function drawLabelBox($X, $Y, $Title, $Captions, $Format = "")
5776 5776
     {
5777
-     $NoTitle		= isset($Format["NoTitle"]) ? $Format["NoTitle"] : NULL;
5778
-     $BoxWidth		= isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 50;
5779
-     $DrawSerieColor	= isset($Format["DrawSerieColor"]) ? $Format["DrawSerieColor"] : TRUE;
5777
+     $NoTitle = isset($Format["NoTitle"]) ? $Format["NoTitle"] : NULL;
5778
+     $BoxWidth = isset($Format["BoxWidth"]) ? $Format["BoxWidth"] : 50;
5779
+     $DrawSerieColor = isset($Format["DrawSerieColor"]) ? $Format["DrawSerieColor"] : TRUE;
5780 5780
      $SerieR		= isset($Format["SerieR"]) ? $Format["SerieR"] : NULL;
5781 5781
      $SerieG		= isset($Format["SerieG"]) ? $Format["SerieG"] : NULL;
5782 5782
      $SerieB		= isset($Format["SerieB"]) ? $Format["SerieB"] : NULL;
5783
-     $SerieAlpha	= isset($Format["SerieAlpha"]) ? $Format["SerieAlpha"] : NULL;
5784
-     $SerieBoxSize	= isset($Format["SerieBoxSize"]) ? $Format["SerieBoxSize"] : 6;
5785
-     $SerieBoxSpacing	= isset($Format["SerieBoxSpacing"]) ? $Format["SerieBoxSpacing"] : 4;
5786
-     $VerticalMargin	= isset($Format["VerticalMargin"]) ? $Format["VerticalMargin"] : 10;
5787
-     $HorizontalMargin	= isset($Format["HorizontalMargin"]) ? $Format["HorizontalMargin"] : 8;
5783
+     $SerieAlpha = isset($Format["SerieAlpha"]) ? $Format["SerieAlpha"] : NULL;
5784
+     $SerieBoxSize = isset($Format["SerieBoxSize"]) ? $Format["SerieBoxSize"] : 6;
5785
+     $SerieBoxSpacing = isset($Format["SerieBoxSpacing"]) ? $Format["SerieBoxSpacing"] : 4;
5786
+     $VerticalMargin = isset($Format["VerticalMargin"]) ? $Format["VerticalMargin"] : 10;
5787
+     $HorizontalMargin = isset($Format["HorizontalMargin"]) ? $Format["HorizontalMargin"] : 8;
5788 5788
      $R			= isset($Format["R"]) ? $Format["R"] : $this->FontColorR;
5789 5789
      $G			= isset($Format["G"]) ? $Format["G"] : $this->FontColorG;
5790 5790
      $B			= isset($Format["B"]) ? $Format["B"] : $this->FontColorB;
5791
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
5791
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : $this->FontColorA;
5792 5792
      $FontName		= isset($Format["FontName"]) ? $Format["FontName"] : $this->FontName;
5793 5793
      $FontSize		= isset($Format["FontSize"]) ? $Format["FontSize"] : $this->FontSize;
5794
-     $TitleMode		= isset($Format["TitleMode"]) ? $Format["TitleMode"] : LABEL_TITLE_NOBACKGROUND;
5794
+     $TitleMode = isset($Format["TitleMode"]) ? $Format["TitleMode"] : LABEL_TITLE_NOBACKGROUND;
5795 5795
      $TitleR		= isset($Format["TitleR"]) ? $Format["TitleR"] : $R;
5796 5796
      $TitleG		= isset($Format["TitleG"]) ? $Format["TitleG"] : $G;
5797 5797
      $TitleB		= isset($Format["TitleB"]) ? $Format["TitleB"] : $B;
@@ -5805,138 +5805,138 @@  discard block
 block discarded – undo
5805 5805
      $GradientEndG	= isset($Format["GradientEndG"]) ? $Format["GradientEndG"] : 220;
5806 5806
      $GradientEndB	= isset($Format["GradientEndB"]) ? $Format["GradientEndB"] : 220;
5807 5807
 
5808
-     if ( !$DrawSerieColor ) { $SerieBoxSize = 0; $SerieBoxSpacing = 0; }
5808
+     if (!$DrawSerieColor) { $SerieBoxSize = 0; $SerieBoxSpacing = 0; }
5809 5809
 
5810
-     $TxtPos      = $this->getTextBox($X,$Y,$FontName,$FontSize,0,$Title);
5811
-     $TitleWidth  = ($TxtPos[1]["X"] - $TxtPos[0]["X"])+$VerticalMargin*2;
5810
+     $TxtPos      = $this->getTextBox($X, $Y, $FontName, $FontSize, 0, $Title);
5811
+     $TitleWidth  = ($TxtPos[1]["X"] - $TxtPos[0]["X"]) + $VerticalMargin*2;
5812 5812
      $TitleHeight = ($TxtPos[0]["Y"] - $TxtPos[2]["Y"]);
5813 5813
 
5814
-     if ( $NoTitle ) { $TitleWidth = 0; $TitleHeight = 0; }
5814
+     if ($NoTitle) { $TitleWidth = 0; $TitleHeight = 0; }
5815 5815
 
5816 5816
      $CaptionWidth = 0; $CaptionHeight = -$HorizontalMargin;
5817
-     foreach($Captions as $Key =>$Caption)
5817
+     foreach ($Captions as $Key =>$Caption)
5818 5818
       {
5819
-       $TxtPos        = $this->getTextBox($X,$Y,$FontName,$FontSize,0,$Caption["Caption"]);
5820
-       $CaptionWidth  = max($CaptionWidth,($TxtPos[1]["X"] - $TxtPos[0]["X"])+$VerticalMargin*2);
5821
-       $CaptionHeight = $CaptionHeight + max(($TxtPos[0]["Y"] - $TxtPos[2]["Y"]),($SerieBoxSize+2)) + $HorizontalMargin;
5819
+       $TxtPos        = $this->getTextBox($X, $Y, $FontName, $FontSize, 0, $Caption["Caption"]);
5820
+       $CaptionWidth  = max($CaptionWidth, ($TxtPos[1]["X"] - $TxtPos[0]["X"]) + $VerticalMargin*2);
5821
+       $CaptionHeight = $CaptionHeight + max(($TxtPos[0]["Y"] - $TxtPos[2]["Y"]), ($SerieBoxSize + 2)) + $HorizontalMargin;
5822 5822
       }
5823 5823
 
5824
-     if ( $CaptionHeight <= 5 ) { $CaptionHeight = $CaptionHeight + $HorizontalMargin/2; }
5824
+     if ($CaptionHeight <= 5) { $CaptionHeight = $CaptionHeight + $HorizontalMargin/2; }
5825 5825
 
5826
-     if ( $DrawSerieColor ) { $CaptionWidth = $CaptionWidth + $SerieBoxSize + $SerieBoxSpacing; }
5826
+     if ($DrawSerieColor) { $CaptionWidth = $CaptionWidth + $SerieBoxSize + $SerieBoxSpacing; }
5827 5827
 
5828
-     $BoxWidth = max($BoxWidth,$TitleWidth,$CaptionWidth);
5828
+     $BoxWidth = max($BoxWidth, $TitleWidth, $CaptionWidth);
5829 5829
 
5830
-     $XMin = $X - 5 - floor(($BoxWidth-10) / 2);
5831
-     $XMax = $X + 5 + floor(($BoxWidth-10) / 2);
5830
+     $XMin = $X - 5 - floor(($BoxWidth - 10)/2);
5831
+     $XMax = $X + 5 + floor(($BoxWidth - 10)/2);
5832 5832
 
5833 5833
      $RestoreShadow = $this->Shadow;
5834
-     if ( $this->Shadow == TRUE )
5834
+     if ($this->Shadow == TRUE)
5835 5835
       {
5836 5836
        $this->Shadow = FALSE;
5837 5837
 
5838 5838
        $Poly = "";
5839
-       $Poly[] = $X+$this->ShadowX; $Poly[] = $Y+$this->ShadowX;
5840
-       $Poly[] = $X+5+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5841
-       $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5839
+       $Poly[] = $X + $this->ShadowX; $Poly[] = $Y + $this->ShadowX;
5840
+       $Poly[] = $X + 5 + $this->ShadowX; $Poly[] = $Y - 5 + $this->ShadowX;
5841
+       $Poly[] = $XMax + $this->ShadowX; $Poly[] = $Y - 5 + $this->ShadowX;
5842 5842
 
5843
-       if ( $NoTitle )
5843
+       if ($NoTitle)
5844 5844
         {
5845
-         $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5846
-         $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5845
+         $Poly[] = $XMax + $this->ShadowX; $Poly[] = $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2 + $this->ShadowX;
5846
+         $Poly[] = $XMin + $this->ShadowX; $Poly[] = $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2 + $this->ShadowX;
5847 5847
         }
5848 5848
        else
5849 5849
         {
5850
-         $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5851
-         $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5850
+         $Poly[] = $XMax + $this->ShadowX; $Poly[] = $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3 + $this->ShadowX;
5851
+         $Poly[] = $XMin + $this->ShadowX; $Poly[] = $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3 + $this->ShadowX;
5852 5852
         }
5853 5853
 
5854
-       $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5855
-       $Poly[] = $X-5+$this->ShadowX; $Poly[] = $Y-5+$this->ShadowX;
5856
-       $this->drawPolygon($Poly,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
5854
+       $Poly[] = $XMin + $this->ShadowX; $Poly[] = $Y - 5 + $this->ShadowX;
5855
+       $Poly[] = $X - 5 + $this->ShadowX; $Poly[] = $Y - 5 + $this->ShadowX;
5856
+       $this->drawPolygon($Poly, array("R"=>$this->ShadowR, "G"=>$this->ShadowG, "B"=>$this->ShadowB, "Alpha"=>$this->Shadowa));
5857 5857
       }
5858 5858
 
5859 5859
      /* Draw the background */
5860
-     $GradientSettings = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB);
5861
-     if ( $NoTitle )
5862
-      $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5860
+     $GradientSettings = array("StartR"=>$GradientStartR, "StartG"=>$GradientStartG, "StartB"=>$GradientStartB, "EndR"=>$GradientEndR, "EndG"=>$GradientEndG, "EndB"=>$GradientEndB);
5861
+     if ($NoTitle)
5862
+      $this->drawGradientArea($XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMax, $Y - 6, DIRECTION_VERTICAL, $GradientSettings);
5863 5863
      else
5864
-      $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5865
-     $Poly = ""; $Poly[] = $X; $Poly[] = $Y; $Poly[] = $X-5; $Poly[] = $Y-5; $Poly[] = $X+5; $Poly[] = $Y-5;
5866
-     $this->drawPolygon($Poly,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB,"NoBorder"=>TRUE));
5864
+      $this->drawGradientArea($XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMax, $Y - 6, DIRECTION_VERTICAL, $GradientSettings);
5865
+     $Poly = ""; $Poly[] = $X; $Poly[] = $Y; $Poly[] = $X - 5; $Poly[] = $Y - 5; $Poly[] = $X + 5; $Poly[] = $Y - 5;
5866
+     $this->drawPolygon($Poly, array("R"=>$GradientEndR, "G"=>$GradientEndG, "B"=>$GradientEndB, "NoBorder"=>TRUE));
5867 5867
 
5868 5868
      /* Outer border */
5869
-     $OuterBorderColor = $this->allocateColor($this->Picture,100,100,100,100);
5870
-     imageline($this->Picture,$XMin,$Y-5,$X-5,$Y-5,$OuterBorderColor);
5871
-     imageline($this->Picture,$X,$Y,$X-5,$Y-5,$OuterBorderColor);
5872
-     imageline($this->Picture,$X,$Y,$X+5,$Y-5,$OuterBorderColor);
5873
-     imageline($this->Picture,$X+5,$Y-5,$XMax,$Y-5,$OuterBorderColor);
5874
-     if ( $NoTitle )
5869
+     $OuterBorderColor = $this->allocateColor($this->Picture, 100, 100, 100, 100);
5870
+     imageline($this->Picture, $XMin, $Y - 5, $X - 5, $Y - 5, $OuterBorderColor);
5871
+     imageline($this->Picture, $X, $Y, $X - 5, $Y - 5, $OuterBorderColor);
5872
+     imageline($this->Picture, $X, $Y, $X + 5, $Y - 5, $OuterBorderColor);
5873
+     imageline($this->Picture, $X + 5, $Y - 5, $XMax, $Y - 5, $OuterBorderColor);
5874
+     if ($NoTitle)
5875 5875
       {
5876
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin,$Y-5,$OuterBorderColor);
5877
-       imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5,$OuterBorderColor);
5878
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$OuterBorderColor);
5876
+       imageline($this->Picture, $XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMin, $Y - 5, $OuterBorderColor);
5877
+       imageline($this->Picture, $XMax, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMax, $Y - 5, $OuterBorderColor);
5878
+       imageline($this->Picture, $XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMax, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $OuterBorderColor);
5879 5879
       }
5880 5880
      else
5881 5881
       {
5882
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin,$Y-5,$OuterBorderColor);
5883
-       imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5,$OuterBorderColor);
5884
-       imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$OuterBorderColor);
5882
+       imageline($this->Picture, $XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMin, $Y - 5, $OuterBorderColor);
5883
+       imageline($this->Picture, $XMax, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMax, $Y - 5, $OuterBorderColor);
5884
+       imageline($this->Picture, $XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMax, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $OuterBorderColor);
5885 5885
       }
5886 5886
 
5887 5887
      /* Inner border */
5888
-     $InnerBorderColor = $this->allocateColor($this->Picture,255,255,255,100);
5889
-     imageline($this->Picture,$XMin+1,$Y-6,$X-5,$Y-6,$InnerBorderColor);
5890
-     imageline($this->Picture,$X,$Y-1,$X-5,$Y-6,$InnerBorderColor);
5891
-     imageline($this->Picture,$X,$Y-1,$X+5,$Y-6,$InnerBorderColor);
5892
-     imageline($this->Picture,$X+5,$Y-6,$XMax-1,$Y-6,$InnerBorderColor);
5893
-     if ( $NoTitle )
5888
+     $InnerBorderColor = $this->allocateColor($this->Picture, 255, 255, 255, 100);
5889
+     imageline($this->Picture, $XMin + 1, $Y - 6, $X - 5, $Y - 6, $InnerBorderColor);
5890
+     imageline($this->Picture, $X, $Y - 1, $X - 5, $Y - 6, $InnerBorderColor);
5891
+     imageline($this->Picture, $X, $Y - 1, $X + 5, $Y - 6, $InnerBorderColor);
5892
+     imageline($this->Picture, $X + 5, $Y - 6, $XMax - 1, $Y - 6, $InnerBorderColor);
5893
+     if ($NoTitle)
5894 5894
       {
5895
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin+1,$Y-6,$InnerBorderColor);
5896
-       imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-6,$InnerBorderColor);
5897
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$InnerBorderColor);
5895
+       imageline($this->Picture, $XMin + 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMin + 1, $Y - 6, $InnerBorderColor);
5896
+       imageline($this->Picture, $XMax - 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMax - 1, $Y - 6, $InnerBorderColor);
5897
+       imageline($this->Picture, $XMin + 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $XMax - 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*2, $InnerBorderColor);
5898 5898
       }
5899 5899
      else
5900 5900
       {
5901
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin+1,$Y-6,$InnerBorderColor);
5902
-       imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-6,$InnerBorderColor);
5903
-       imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$InnerBorderColor);
5901
+       imageline($this->Picture, $XMin + 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMin + 1, $Y - 6, $InnerBorderColor);
5902
+       imageline($this->Picture, $XMax - 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMax - 1, $Y - 6, $InnerBorderColor);
5903
+       imageline($this->Picture, $XMin + 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMax - 1, $Y - 4 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $InnerBorderColor);
5904 5904
       }
5905 5905
 
5906 5906
      /* Draw the separator line */
5907
-     if ( $TitleMode == LABEL_TITLE_NOBACKGROUND && !$NoTitle )
5907
+     if ($TitleMode == LABEL_TITLE_NOBACKGROUND && !$NoTitle)
5908 5908
       {
5909
-       $YPos    = $Y-7-$CaptionHeight-$HorizontalMargin-$HorizontalMargin/2;
5910
-       $XMargin = $VerticalMargin / 2;
5911
-       $this->drawLine($XMin+$XMargin,$YPos+1,$XMax-$XMargin,$YPos+1,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB));
5912
-       $this->drawLine($XMin+$XMargin,$YPos,$XMax-$XMargin,$YPos,array("R"=>$GradientStartR,"G"=>$GradientStartG,"B"=>$GradientStartB));
5909
+       $YPos    = $Y - 7 - $CaptionHeight - $HorizontalMargin - $HorizontalMargin/2;
5910
+       $XMargin = $VerticalMargin/2;
5911
+       $this->drawLine($XMin + $XMargin, $YPos + 1, $XMax - $XMargin, $YPos + 1, array("R"=>$GradientEndR, "G"=>$GradientEndG, "B"=>$GradientEndB));
5912
+       $this->drawLine($XMin + $XMargin, $YPos, $XMax - $XMargin, $YPos, array("R"=>$GradientStartR, "G"=>$GradientStartG, "B"=>$GradientStartB));
5913 5913
       }
5914
-     elseif ( $TitleMode == LABEL_TITLE_BACKGROUND )
5914
+     elseif ($TitleMode == LABEL_TITLE_BACKGROUND)
5915 5915
       {
5916
-       $this->drawFilledRectangle($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2,array("R"=>$TitleBackgroundR,"G"=>$TitleBackgroundG,"B"=>$TitleBackgroundB));
5917
-       imageline($this->Picture,$XMin+1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$XMax-1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$InnerBorderColor);
5916
+       $this->drawFilledRectangle($XMin, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin*3, $XMax, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin + $HorizontalMargin/2, array("R"=>$TitleBackgroundR, "G"=>$TitleBackgroundG, "B"=>$TitleBackgroundB));
5917
+       imageline($this->Picture, $XMin + 1, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin + $HorizontalMargin/2 + 1, $XMax - 1, $Y - 5 - $TitleHeight - $CaptionHeight - $HorizontalMargin + $HorizontalMargin/2 + 1, $InnerBorderColor);
5918 5918
       }
5919 5919
 
5920 5920
      /* Write the description */
5921
-     if ( !$NoTitle )
5922
-      $this->drawText($XMin+$VerticalMargin,$Y-7-$CaptionHeight-$HorizontalMargin*2,$Title,array("Align"=>TEXT_ALIGN_BOTTOMLEFT,"R"=>$TitleR,"G"=>$TitleG,"B"=>$TitleB));
5921
+     if (!$NoTitle)
5922
+      $this->drawText($XMin + $VerticalMargin, $Y - 7 - $CaptionHeight - $HorizontalMargin*2, $Title, array("Align"=>TEXT_ALIGN_BOTTOMLEFT, "R"=>$TitleR, "G"=>$TitleG, "B"=>$TitleB));
5923 5923
 
5924 5924
      /* Write the value */
5925
-     $YPos = $Y-5-$HorizontalMargin; $XPos = $XMin+$VerticalMargin+$SerieBoxSize+$SerieBoxSpacing;
5926
-     foreach($Captions as $Key => $Caption)
5925
+     $YPos = $Y - 5 - $HorizontalMargin; $XPos = $XMin + $VerticalMargin + $SerieBoxSize + $SerieBoxSpacing;
5926
+     foreach ($Captions as $Key => $Caption)
5927 5927
       {
5928 5928
        $CaptionTxt    = $Caption["Caption"];
5929
-       $TxtPos        = $this->getTextBox($XPos,$YPos,$FontName,$FontSize,0,$CaptionTxt);
5929
+       $TxtPos        = $this->getTextBox($XPos, $YPos, $FontName, $FontSize, 0, $CaptionTxt);
5930 5930
        $CaptionHeight = ($TxtPos[0]["Y"] - $TxtPos[2]["Y"]);
5931 5931
 
5932 5932
        /* Write the serie color if needed */
5933
-       if ( $DrawSerieColor )
5933
+       if ($DrawSerieColor)
5934 5934
         {
5935
-         $BoxSettings = array("R"=>$Caption["Format"]["R"],"G"=>$Caption["Format"]["G"],"B"=>$Caption["Format"]["B"],"Alpha"=>$Caption["Format"]["Alpha"],"BorderR"=>0,"BorderG"=>0,"BorderB"=>0);
5936
-         $this->drawFilledRectangle($XMin+$VerticalMargin,$YPos-$SerieBoxSize,$XMin+$VerticalMargin+$SerieBoxSize,$YPos,$BoxSettings);
5935
+         $BoxSettings = array("R"=>$Caption["Format"]["R"], "G"=>$Caption["Format"]["G"], "B"=>$Caption["Format"]["B"], "Alpha"=>$Caption["Format"]["Alpha"], "BorderR"=>0, "BorderG"=>0, "BorderB"=>0);
5936
+         $this->drawFilledRectangle($XMin + $VerticalMargin, $YPos - $SerieBoxSize, $XMin + $VerticalMargin + $SerieBoxSize, $YPos, $BoxSettings);
5937 5937
         }
5938 5938
 
5939
-       $this->drawText($XPos,$YPos,$CaptionTxt,array("Align"=>TEXT_ALIGN_BOTTOMLEFT));
5939
+       $this->drawText($XPos, $YPos, $CaptionTxt, array("Align"=>TEXT_ALIGN_BOTTOMLEFT));
5940 5940
 
5941 5941
        $YPos = $YPos - $CaptionHeight - $HorizontalMargin;
5942 5942
       }
@@ -5945,103 +5945,103 @@  discard block
 block discarded – undo
5945 5945
     }
5946 5946
 
5947 5947
    /* Draw a basic shape */
5948
-   function drawShape($X,$Y,$Shape,$PlotSize,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha)
5948
+   function drawShape($X, $Y, $Shape, $PlotSize, $PlotBorder, $BorderSize, $R, $G, $B, $Alpha, $BorderR, $BorderG, $BorderB, $BorderAlpha)
5949 5949
     {
5950
-     if ( $Shape == SERIE_SHAPE_FILLEDCIRCLE )
5950
+     if ($Shape == SERIE_SHAPE_FILLEDCIRCLE)
5951 5951
       {
5952
-       if ( $PlotBorder ) { $this->drawFilledCircle($X,$Y,$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5953
-       $this->drawFilledCircle($X,$Y,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5952
+       if ($PlotBorder) { $this->drawFilledCircle($X, $Y, $PlotSize + $BorderSize, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha)); }
5953
+       $this->drawFilledCircle($X, $Y, $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5954 5954
       }
5955
-     elseif ( $Shape == SERIE_SHAPE_FILLEDSQUARE )
5955
+     elseif ($Shape == SERIE_SHAPE_FILLEDSQUARE)
5956 5956
       {
5957
-       if ( $PlotBorder ) { $this->drawFilledRectangle($X-$PlotSize-$BorderSize,$Y-$PlotSize-$BorderSize,$X+$PlotSize+$BorderSize,$Y+$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5958
-       $this->drawFilledRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5957
+       if ($PlotBorder) { $this->drawFilledRectangle($X - $PlotSize - $BorderSize, $Y - $PlotSize - $BorderSize, $X + $PlotSize + $BorderSize, $Y + $PlotSize + $BorderSize, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha)); }
5958
+       $this->drawFilledRectangle($X - $PlotSize, $Y - $PlotSize, $X + $PlotSize, $Y + $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5959 5959
       }
5960
-     elseif ( $Shape == SERIE_SHAPE_FILLEDTRIANGLE )
5960
+     elseif ($Shape == SERIE_SHAPE_FILLEDTRIANGLE)
5961 5961
       {
5962
-       if ( $PlotBorder )
5962
+       if ($PlotBorder)
5963 5963
         {
5964
-         $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize-$BorderSize; $Pos[]=$X-$PlotSize-$BorderSize; $Pos[]=$Y+$PlotSize+$BorderSize; $Pos[]=$X+$PlotSize+$BorderSize; $Pos[]=$Y+$PlotSize+$BorderSize;
5965
-         $this->drawPolygon($Pos,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha));
5964
+         $Pos = ""; $Pos[] = $X; $Pos[] = $Y - $PlotSize - $BorderSize; $Pos[] = $X - $PlotSize - $BorderSize; $Pos[] = $Y + $PlotSize + $BorderSize; $Pos[] = $X + $PlotSize + $BorderSize; $Pos[] = $Y + $PlotSize + $BorderSize;
5965
+         $this->drawPolygon($Pos, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha));
5966 5966
         }
5967 5967
 
5968
-       $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X-$PlotSize; $Pos[]=$Y+$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y+$PlotSize;
5969
-       $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5968
+       $Pos = ""; $Pos[] = $X; $Pos[] = $Y - $PlotSize; $Pos[] = $X - $PlotSize; $Pos[] = $Y + $PlotSize; $Pos[] = $X + $PlotSize; $Pos[] = $Y + $PlotSize;
5969
+       $this->drawPolygon($Pos, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5970 5970
       }
5971
-     elseif ( $Shape == SERIE_SHAPE_TRIANGLE )
5971
+     elseif ($Shape == SERIE_SHAPE_TRIANGLE)
5972 5972
       {
5973
-       $this->drawLine($X,$Y-$PlotSize,$X-$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5974
-       $this->drawLine($X-$PlotSize,$Y+$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5975
-       $this->drawLine($X+$PlotSize,$Y+$PlotSize,$X,$Y-$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5973
+       $this->drawLine($X, $Y - $PlotSize, $X - $PlotSize, $Y + $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5974
+       $this->drawLine($X - $PlotSize, $Y + $PlotSize, $X + $PlotSize, $Y + $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5975
+       $this->drawLine($X + $PlotSize, $Y + $PlotSize, $X, $Y - $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5976 5976
       }
5977
-     elseif ( $Shape == SERIE_SHAPE_SQUARE )
5978
-      $this->drawRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5979
-     elseif ( $Shape == SERIE_SHAPE_CIRCLE )
5980
-      $this->drawCircle($X,$Y,$PlotSize,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5981
-     elseif ( $Shape == SERIE_SHAPE_DIAMOND )
5977
+     elseif ($Shape == SERIE_SHAPE_SQUARE)
5978
+      $this->drawRectangle($X - $PlotSize, $Y - $PlotSize, $X + $PlotSize, $Y + $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5979
+     elseif ($Shape == SERIE_SHAPE_CIRCLE)
5980
+      $this->drawCircle($X, $Y, $PlotSize, $PlotSize, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5981
+     elseif ($Shape == SERIE_SHAPE_DIAMOND)
5982 5982
       {
5983
-       $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5984
-       $this->drawPolygon($Pos,array("NoFill"=>TRUE,"BorderR"=>$R,"BorderG"=>$G,"BorderB"=>$B,"BorderAlpha"=>$Alpha));
5983
+       $Pos = ""; $Pos[] = $X - $PlotSize; $Pos[] = $Y; $Pos[] = $X; $Pos[] = $Y - $PlotSize; $Pos[] = $X + $PlotSize; $Pos[] = $Y; $Pos[] = $X; $Pos[] = $Y + $PlotSize;
5984
+       $this->drawPolygon($Pos, array("NoFill"=>TRUE, "BorderR"=>$R, "BorderG"=>$G, "BorderB"=>$B, "BorderAlpha"=>$Alpha));
5985 5985
       }      
5986
-     elseif ( $Shape == SERIE_SHAPE_FILLEDDIAMOND )
5986
+     elseif ($Shape == SERIE_SHAPE_FILLEDDIAMOND)
5987 5987
       {
5988
-       if ( $PlotBorder )
5988
+       if ($PlotBorder)
5989 5989
         {
5990
-         $Pos = ""; $Pos[]=$X-$PlotSize-$BorderSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize-$BorderSize; $Pos[]=$X+$PlotSize+$BorderSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize+$BorderSize;
5991
-         $this->drawPolygon($Pos,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha));
5990
+         $Pos = ""; $Pos[] = $X - $PlotSize - $BorderSize; $Pos[] = $Y; $Pos[] = $X; $Pos[] = $Y - $PlotSize - $BorderSize; $Pos[] = $X + $PlotSize + $BorderSize; $Pos[] = $Y; $Pos[] = $X; $Pos[] = $Y + $PlotSize + $BorderSize;
5991
+         $this->drawPolygon($Pos, array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha));
5992 5992
         }
5993 5993
 
5994
-       $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5995
-       $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5994
+       $Pos = ""; $Pos[] = $X - $PlotSize; $Pos[] = $Y; $Pos[] = $X; $Pos[] = $Y - $PlotSize; $Pos[] = $X + $PlotSize; $Pos[] = $Y; $Pos[] = $X; $Pos[] = $Y + $PlotSize;
5995
+       $this->drawPolygon($Pos, array("R"=>$R, "G"=>$G, "B"=>$B, "Alpha"=>$Alpha));
5996 5996
       }      
5997 5997
     }
5998 5998
 
5999
-   function drawPolygonChart($Points,$Format="")
5999
+   function drawPolygonChart($Points, $Format = "")
6000 6000
     {
6001 6001
      $R			= isset($Format["R"]) ? $Format["R"] : 0;
6002 6002
      $G			= isset($Format["G"]) ? $Format["G"] : 0;
6003 6003
      $B			= isset($Format["B"]) ? $Format["B"] : 0;
6004
-     $Alpha		= isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
6005
-     $NoFill		= isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
6006
-     $NoBorder		= isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
6004
+     $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
6005
+     $NoFill = isset($Format["NoFill"]) ? $Format["NoFill"] : FALSE;
6006
+     $NoBorder = isset($Format["NoBorder"]) ? $Format["NoBorder"] : FALSE;
6007 6007
      $BorderR		= isset($Format["BorderR"]) ? $Format["BorderR"] : $R;
6008 6008
      $BorderG		= isset($Format["BorderG"]) ? $Format["BorderG"] : $G;
6009 6009
      $BorderB		= isset($Format["BorderB"]) ? $Format["BorderB"] : $B;
6010
-     $BorderAlpha 	= isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha / 2;
6011
-     $Surrounding	= isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
6012
-     $Threshold         = isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
6010
+     $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : $Alpha/2;
6011
+     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : NULL;
6012
+     $Threshold = isset($Format["Threshold"]) ? $Format["Threshold"] : NULL;
6013 6013
 
6014
-     if ( $Surrounding != NULL ) { $BorderR = $R+$Surrounding; $BorderG = $G+$Surrounding; $BorderB = $B+$Surrounding; }
6014
+     if ($Surrounding != NULL) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
6015 6015
 
6016 6016
      $RestoreShadow = $this->Shadow;
6017 6017
      $this->Shadow = FALSE;
6018 6018
 
6019 6019
      $AllIntegers = TRUE;
6020
-     for($i=0;$i<=count($Points)-2;$i=$i+2)
6021
-      { if ( $this->getFirstDecimal($Points[$i+1]) != 0 ) { $AllIntegers = FALSE; } }
6020
+     for ($i = 0; $i <= count($Points) - 2; $i = $i + 2)
6021
+      { if ($this->getFirstDecimal($Points[$i + 1]) != 0) { $AllIntegers = FALSE; } }
6022 6022
 
6023 6023
      /* Convert polygon to segments */
6024 6024
      $Segments = "";
6025
-     for($i=2;$i<=count($Points)-2;$i=$i+2)
6026
-      { $Segments[] = array("X1"=>$Points[$i-2],"Y1"=>$Points[$i-1],"X2"=>$Points[$i],"Y2"=>$Points[$i+1]); }
6027
-     $Segments[] = array("X1"=>$Points[$i-2],"Y1"=>$Points[$i-1],"X2"=>$Points[0],"Y2"=>$Points[1]);
6025
+     for ($i = 2; $i <= count($Points) - 2; $i = $i + 2)
6026
+      { $Segments[] = array("X1"=>$Points[$i - 2], "Y1"=>$Points[$i - 1], "X2"=>$Points[$i], "Y2"=>$Points[$i + 1]); }
6027
+     $Segments[] = array("X1"=>$Points[$i - 2], "Y1"=>$Points[$i - 1], "X2"=>$Points[0], "Y2"=>$Points[1]);
6028 6028
 
6029 6029
      /* Simplify straight lines */
6030 6030
      $Result = ""; $inHorizon = FALSE; $LastX = VOID;
6031
-     foreach($Segments as $Key => $Pos)
6031
+     foreach ($Segments as $Key => $Pos)
6032 6032
       {
6033
-       if ( $Pos["Y1"] != $Pos["Y2"] )
6033
+       if ($Pos["Y1"] != $Pos["Y2"])
6034 6034
         {
6035
-         if ( $inHorizon ) { $inHorizon = FALSE; $Result[] = array("X1"=>$LastX,"Y1"=>$Pos["Y1"],"X2"=>$Pos["X1"],"Y2"=>$Pos["Y1"]); }
6035
+         if ($inHorizon) { $inHorizon = FALSE; $Result[] = array("X1"=>$LastX, "Y1"=>$Pos["Y1"], "X2"=>$Pos["X1"], "Y2"=>$Pos["Y1"]); }
6036 6036
 
6037
-         $Result[] = array("X1"=>$Pos["X1"],"Y1"=>$Pos["Y1"],"X2"=>$Pos["X2"],"Y2"=>$Pos["Y2"]);
6037
+         $Result[] = array("X1"=>$Pos["X1"], "Y1"=>$Pos["Y1"], "X2"=>$Pos["X2"], "Y2"=>$Pos["Y2"]);
6038 6038
         }
6039
-       else { if ( !$inHorizon ) { $inHorizon = TRUE; $LastX = $Pos["X1"];} }
6039
+       else { if (!$inHorizon) { $inHorizon = TRUE; $LastX = $Pos["X1"]; } }
6040 6040
       }
6041 6041
      $Segments = $Result;
6042 6042
 
6043 6043
      /* Do we have something to draw */
6044
-     if ( $Segments == "" ) { return(0); }
6044
+     if ($Segments == "") { return(0); }
6045 6045
 
6046 6046
      /* For segments debugging purpose */
6047 6047
      //foreach($Segments as $Key => $Pos)
@@ -6049,75 +6049,75 @@  discard block
 block discarded – undo
6049 6049
 
6050 6050
      /* Find out the min & max Y boundaries */
6051 6051
      $MinY = OUT_OF_SIGHT; $MaxY = OUT_OF_SIGHT;
6052
-     foreach($Segments as $Key => $Coords)
6052
+     foreach ($Segments as $Key => $Coords)
6053 6053
       {
6054
-       if ( $MinY == OUT_OF_SIGHT || $MinY > min($Coords["Y1"],$Coords["Y2"]) ) { $MinY = min($Coords["Y1"],$Coords["Y2"]); }
6055
-       if ( $MaxY == OUT_OF_SIGHT || $MaxY < max($Coords["Y1"],$Coords["Y2"]) ) { $MaxY = max($Coords["Y1"],$Coords["Y2"]); }
6054
+       if ($MinY == OUT_OF_SIGHT || $MinY > min($Coords["Y1"], $Coords["Y2"])) { $MinY = min($Coords["Y1"], $Coords["Y2"]); }
6055
+       if ($MaxY == OUT_OF_SIGHT || $MaxY < max($Coords["Y1"], $Coords["Y2"])) { $MaxY = max($Coords["Y1"], $Coords["Y2"]); }
6056 6056
       }
6057 6057
 
6058
-     if ( $AllIntegers ) { $YStep = 1; } else { $YStep = .5; }
6058
+     if ($AllIntegers) { $YStep = 1; } else { $YStep = .5; }
6059 6059
 
6060 6060
      $MinY = floor($MinY); $MaxY = floor($MaxY);
6061 6061
 
6062 6062
      /* Scan each Y lines */
6063
-     $DefaultColor = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
6064
-     $DebugLine = 0; $DebugColor = $this->allocateColor($this->Picture,255,0,0,100);
6063
+     $DefaultColor = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
6064
+     $DebugLine = 0; $DebugColor = $this->allocateColor($this->Picture, 255, 0, 0, 100);
6065 6065
 
6066 6066
      $MinY = floor($MinY); $MaxY = floor($MaxY); $YStep = 1; 
6067 6067
 
6068
-     if ( !$NoFill )
6068
+     if (!$NoFill)
6069 6069
       {
6070 6070
        //if ( $DebugLine ) { $MinY = $DebugLine; $MaxY = $DebugLine; }
6071
-       for($Y=$MinY;$Y<=$MaxY;$Y=$Y+$YStep)
6071
+       for ($Y = $MinY; $Y <= $MaxY; $Y = $Y + $YStep)
6072 6072
         {
6073 6073
          $Intersections = ""; $LastSlope = NULL; $RestoreLast = "-";
6074
-         foreach($Segments as $Key => $Coords)
6074
+         foreach ($Segments as $Key => $Coords)
6075 6075
           {
6076 6076
            $X1 = $Coords["X1"]; $X2 = $Coords["X2"]; $Y1 = $Coords["Y1"]; $Y2 = $Coords["Y2"];
6077 6077
 
6078
-           if ( min($Y1,$Y2) <= $Y && max($Y1,$Y2) >= $Y )
6078
+           if (min($Y1, $Y2) <= $Y && max($Y1, $Y2) >= $Y)
6079 6079
             {
6080
-             if ( $Y1 == $Y2 )
6080
+             if ($Y1 == $Y2)
6081 6081
               { $X = $X1; }
6082 6082
              else
6083
-              { $X = $X1 + ( ($Y-$Y1)*$X2 - ($Y-$Y1)*$X1 ) / ($Y2-$Y1); }
6083
+              { $X = $X1 + (($Y - $Y1)*$X2 - ($Y - $Y1)*$X1)/($Y2 - $Y1); }
6084 6084
 
6085 6085
              $X = floor($X);
6086 6086
 
6087
-             if ( $X2 == $X1 )
6087
+             if ($X2 == $X1)
6088 6088
               { $Slope = "!"; }
6089 6089
              else
6090 6090
               {
6091
-               $SlopeC = ($Y2 - $Y1) / ($X2 - $X1);
6092
-               if( $SlopeC == 0 )
6091
+               $SlopeC = ($Y2 - $Y1)/($X2 - $X1);
6092
+               if ($SlopeC == 0)
6093 6093
                 { $Slope = "="; }
6094
-               elseif( $SlopeC > 0 )
6094
+               elseif ($SlopeC > 0)
6095 6095
                 { $Slope = "+"; }
6096
-               elseif ( $SlopeC < 0 )
6096
+               elseif ($SlopeC < 0)
6097 6097
                 { $Slope = "-"; }
6098 6098
               }
6099 6099
 
6100
-             if ( !is_array($Intersections) )
6100
+             if (!is_array($Intersections))
6101 6101
               { $Intersections[] = $X; }
6102
-             elseif( !in_array($X,$Intersections) )
6102
+             elseif (!in_array($X, $Intersections))
6103 6103
               { $Intersections[] = $X; }
6104
-             elseif( in_array($X,$Intersections) )
6104
+             elseif (in_array($X, $Intersections))
6105 6105
               {
6106 6106
                if ($Y == $DebugLine) { echo $Slope."/".$LastSlope."(".$X.") "; }
6107 6107
 
6108
-               if ( $Slope == "=" && $LastSlope == "-"  )                             { $Intersections[] = $X; }
6109
-               if ( $Slope != $LastSlope && $LastSlope != "!" && $LastSlope != "=" )  { $Intersections[] = $X; }
6110
-               if ( $Slope != $LastSlope && $LastSlope == "!" && $Slope == "+" )      { $Intersections[] = $X; }
6108
+               if ($Slope == "=" && $LastSlope == "-") { $Intersections[] = $X; }
6109
+               if ($Slope != $LastSlope && $LastSlope != "!" && $LastSlope != "=") { $Intersections[] = $X; }
6110
+               if ($Slope != $LastSlope && $LastSlope == "!" && $Slope == "+") { $Intersections[] = $X; }
6111 6111
               }
6112 6112
 
6113
-             if ( is_array($Intersections) && in_array($X,$Intersections) && $LastSlope == "=" && ($Slope == "-" )) { $Intersections[] = $X; }
6113
+             if (is_array($Intersections) && in_array($X, $Intersections) && $LastSlope == "=" && ($Slope == "-")) { $Intersections[] = $X; }
6114 6114
 
6115 6115
              $LastSlope = $Slope;
6116 6116
             }
6117 6117
           }
6118
-         if ( $RestoreLast != "-" ) { $Intersections[] = $RestoreLast; echo "@".$Y."\r\n"; }
6118
+         if ($RestoreLast != "-") { $Intersections[] = $RestoreLast; echo "@".$Y."\r\n"; }
6119 6119
 
6120
-         if ( is_array($Intersections) )
6120
+         if (is_array($Intersections))
6121 6121
           {
6122 6122
            sort($Intersections);
6123 6123
 
@@ -6125,44 +6125,44 @@  discard block
 block discarded – undo
6125 6125
 
6126 6126
            /* Remove NULL plots */
6127 6127
            $Result = "";
6128
-           for($i=0;$i<=count($Intersections)-1;$i=$i+2)
6128
+           for ($i = 0; $i <= count($Intersections) - 1; $i = $i + 2)
6129 6129
             {
6130
-             if ( isset($Intersections[$i+1]) )
6131
-              { if ( $Intersections[$i] != $Intersections[$i+1] ) { $Result[] = $Intersections[$i]; $Result[] = $Intersections[$i+1]; } }
6130
+             if (isset($Intersections[$i + 1]))
6131
+              { if ($Intersections[$i] != $Intersections[$i + 1]) { $Result[] = $Intersections[$i]; $Result[] = $Intersections[$i + 1]; } }
6132 6132
             }
6133 6133
 
6134
-           if ( is_array($Result) )
6134
+           if (is_array($Result))
6135 6135
             {
6136 6136
              $Intersections = $Result;
6137 6137
 
6138 6138
              $LastX = OUT_OF_SIGHT;
6139
-             foreach($Intersections as $Key => $X)
6139
+             foreach ($Intersections as $Key => $X)
6140 6140
               {
6141
-               if ( $LastX == OUT_OF_SIGHT )
6141
+               if ($LastX == OUT_OF_SIGHT)
6142 6142
                 $LastX = $X;
6143
-               elseif ( $LastX != OUT_OF_SIGHT )
6143
+               elseif ($LastX != OUT_OF_SIGHT)
6144 6144
                 {
6145
-                 if ( $this->getFirstDecimal($LastX) > 1 ) { $LastX++; }
6145
+                 if ($this->getFirstDecimal($LastX) > 1) { $LastX++; }
6146 6146
 
6147 6147
                  $Color = $DefaultColor;
6148
-                 if ( $Threshold != NULL )
6148
+                 if ($Threshold != NULL)
6149 6149
                   {
6150
-                   foreach($Threshold as $Key => $Parameters)
6150
+                   foreach ($Threshold as $Key => $Parameters)
6151 6151
                     {
6152
-                     if ( $Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
6152
+                     if ($Y <= $Parameters["MinX"] && $Y >= $Parameters["MaxX"])
6153 6153
                       {
6154
-                       if ( isset($Parameters["R"]) ) { $R = $Parameters["R"]; } else { $R = 0; }
6155
-                       if ( isset($Parameters["G"]) ) { $G = $Parameters["G"]; } else { $G = 0; }
6156
-                       if ( isset($Parameters["B"]) ) { $B = $Parameters["B"]; } else { $B = 0; }
6157
-                       if ( isset($Parameters["Alpha"]) ) { $Alpha = $Parameters["Alpha"]; } else { $Alpha = 100; }
6158
-                       $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
6154
+                       if (isset($Parameters["R"])) { $R = $Parameters["R"]; } else { $R = 0; }
6155
+                       if (isset($Parameters["G"])) { $G = $Parameters["G"]; } else { $G = 0; }
6156
+                       if (isset($Parameters["B"])) { $B = $Parameters["B"]; } else { $B = 0; }
6157
+                       if (isset($Parameters["Alpha"])) { $Alpha = $Parameters["Alpha"]; } else { $Alpha = 100; }
6158
+                       $Color = $this->allocateColor($this->Picture, $R, $G, $B, $Alpha);
6159 6159
                       }
6160 6160
                     }
6161 6161
                   }
6162 6162
 
6163
-                 imageline($this->Picture,$LastX,$Y,$X,$Y,$Color);
6163
+                 imageline($this->Picture, $LastX, $Y, $X, $Y, $Color);
6164 6164
 
6165
-                 if ( $Y == $DebugLine) { imageline($this->Picture,$LastX,$Y,$X,$Y,$DebugColor); }
6165
+                 if ($Y == $DebugLine) { imageline($this->Picture, $LastX, $Y, $X, $Y, $DebugColor); }
6166 6166
 
6167 6167
                  $LastX = OUT_OF_SIGHT;
6168 6168
                 }
@@ -6173,10 +6173,10 @@  discard block
 block discarded – undo
6173 6173
       }
6174 6174
 
6175 6175
      /* Draw the polygon border, if required */
6176
-     if ( !$NoBorder)
6176
+     if (!$NoBorder)
6177 6177
       {
6178
-       foreach($Segments as $Key => $Coords)
6179
-        $this->drawLine($Coords["X1"],$Coords["Y1"],$Coords["X2"],$Coords["Y2"],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Threshold"=>$Threshold));
6178
+       foreach ($Segments as $Key => $Coords)
6179
+        $this->drawLine($Coords["X1"], $Coords["Y1"], $Coords["X2"], $Coords["Y2"], array("R"=>$BorderR, "G"=>$BorderG, "B"=>$BorderB, "Alpha"=>$BorderAlpha, "Threshold"=>$Threshold));
6180 6180
       }
6181 6181
 
6182 6182
      $this->Shadow = $RestoreShadow;
@@ -6185,7 +6185,7 @@  discard block
 block discarded – undo
6185 6185
    /* Return the abscissa margin */
6186 6186
    function getAbscissaMargin($Data)
6187 6187
     {
6188
-     foreach($Data["Axis"] as $AxisID => $Values) { if ( $Values["Identity"] == AXIS_X ) { return($Values["Margin"]); } }
6188
+     foreach ($Data["Axis"] as $AxisID => $Values) { if ($Values["Identity"] == AXIS_X) { return($Values["Margin"]); } }
6189 6189
      return(0);
6190 6190
     }
6191 6191
 
Please login to merge, or discard this patch.
Braces   +506 added lines, -559 removed lines patch added patch discarded remove patch
@@ -169,22 +169,24 @@  discard block
 block discarded – undo
169 169
       {
170 170
        $Points = $Backup;
171 171
 
172
-       if ( $NoFill )
173
-        $BorderSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
174
-       else
175
-        $BorderSettings = array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha);
172
+       if ( $NoFill ) {
173
+               $BorderSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
174
+       } else {
175
+               $BorderSettings = array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha);
176
+       }
176 177
 
177 178
        for($i=0;$i<=count($Points)-1;$i=$i+2)
178 179
         {
179 180
          if ( isset($Points[$i+2]) )
180 181
           {
181
-           if ( !($Points[$i] == $Points[$i+2] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[$i+3] && $Points[$i+1] == $SkipY ) )
182
-            $this->drawLine($Points[$i],$Points[$i+1],$Points[$i+2],$Points[$i+3],$BorderSettings);
183
-          }
184
-         else
182
+           if ( !($Points[$i] == $Points[$i+2] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[$i+3] && $Points[$i+1] == $SkipY ) ) {
183
+                       $this->drawLine($Points[$i],$Points[$i+1],$Points[$i+2],$Points[$i+3],$BorderSettings);
184
+           }
185
+          } else
185 186
           {
186
-           if ( !($Points[$i] == $Points[0] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[1] && $Points[$i+1] == $SkipY ) )
187
-            $this->drawLine($Points[$i],$Points[$i+1],$Points[0],$Points[1],$BorderSettings);
187
+           if ( !($Points[$i] == $Points[0] && $Points[$i] == $SkipX ) && !($Points[$i+1] == $Points[1] && $Points[$i+1] == $SkipY ) ) {
188
+                       $this->drawLine($Points[$i],$Points[$i+1],$Points[0],$Points[1],$BorderSettings);
189
+           }
188 190
           }
189 191
         }
190 192
       }
@@ -236,8 +238,7 @@  discard block
 block discarded – undo
236 238
        $this->drawLine($X2,$Y1+$Radius,$X2,$Y2-$Radius,$Color);
237 239
        $this->drawLine($X2-$Radius,$Y2,$X1+$Radius,$Y2,$Color);
238 240
        $this->drawLine($X1,$Y1+$Radius,$X1,$Y2-$Radius,$Color);
239
-      }
240
-     else
241
+      } else
241 242
       {
242 243
        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
243 244
        imageline($this->Picture,$X1+$Radius,$Y1,$X2-$Radius,$Y1,$Color);
@@ -318,8 +319,7 @@  discard block
 block discarded – undo
318 319
        $Xp1++;
319 320
 
320 321
        if ( !isset($Positions[$Yp]) )
321
-        { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; }
322
-       else
322
+        { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; } else
323 323
         { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"]+$Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"]+$Xp2)/2; }
324 324
 
325 325
        $Xp1 = cos(($i+90)*PI/180) * $Radius + $X1 + $Radius;
@@ -332,8 +332,7 @@  discard block
 block discarded – undo
332 332
        $Xp1++;
333 333
 
334 334
        if ( !isset($Positions[$Yp]) )
335
-        { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; }
336
-       else
335
+        { $Positions[$Yp]["X1"] = $Xp1; $Positions[$Yp]["X2"] = $Xp2; } else
337 336
         { $Positions[$Yp]["X1"] = ($Positions[$Yp]["X1"]+$Xp1)/2; $Positions[$Yp]["X2"] = ($Positions[$Yp]["X2"]+$Xp2)/2; }
338 337
       }
339 338
 
@@ -407,8 +406,9 @@  discard block
 block discarded – undo
407 406
        if ( $this->getFirstDecimal($Xp2) > 5 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
408 407
        if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
409 408
 
410
-       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
411
-        imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
409
+       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 ) {
410
+               imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
411
+       }
412 412
 
413 413
        $Drawn[$Yp+$YOffset] = $Xp2;
414 414
 
@@ -420,8 +420,9 @@  discard block
 block discarded – undo
420 420
        if ( $this->getFirstDecimal($Xp2) > 7 )  { $XOffset2 = 1; } else { $XOffset2 = 0; }
421 421
        if ( $this->getFirstDecimal($Yp) > 5 )  { $YOffset = 1; } else { $YOffset = 0; }
422 422
 
423
-       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 )
424
-        imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
423
+       if ( !isset($Drawn[$Yp+$YOffset]) || $Alpha == 100 ) {
424
+               imageline($this->Picture,$Xp1+$XOffset1,$Yp+$YOffset,$Xp2+$XOffset2,$Yp+$YOffset,$Color);
425
+       }
425 426
 
426 427
        $Drawn[$Yp+$YOffset] = $Xp2;
427 428
       }
@@ -452,16 +453,14 @@  discard block
 block discarded – undo
452 453
          $this->drawLine($X2,$Y1+1,$X2,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
453 454
          $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
454 455
          $this->drawLine($X1,$Y1+1,$X1,$Y2-1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
455
-        }
456
-       else
456
+        } else
457 457
         {
458 458
          $this->drawLine($X1+1,$Y1,$X2-1,$Y1,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
459 459
          $this->drawLine($X2,$Y1,$X2,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
460 460
          $this->drawLine($X2-1,$Y2,$X1+1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
461 461
          $this->drawLine($X1,$Y1,$X1,$Y2,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
462 462
         }
463
-      }
464
-     else
463
+      } else
465 464
       {
466 465
        $Color = $this->allocateColor($this->Picture,$R,$G,$B,$Alpha);
467 466
        imagerectangle($this->Picture,$X1,$Y1,$X2,$Y2,$Color);
@@ -507,9 +506,9 @@  discard block
 block discarded – undo
507 506
        imagefilledrectangle($this->Picture,ceil($X1)+1,ceil($Y1),floor($X2)-1,floor($Y2),$Color);
508 507
        imageline($this->Picture,ceil($X1),ceil($Y1)+1,ceil($X1),floor($Y2)-1,$Color);
509 508
        imageline($this->Picture,floor($X2),ceil($Y1)+1,floor($X2),floor($Y2)-1,$Color);
510
-      }
511
-     else
512
-      imagefilledrectangle($this->Picture,ceil($X1),ceil($Y1),floor($X2),floor($Y2),$Color);
509
+      } else {
510
+           imagefilledrectangle($this->Picture,ceil($X1),ceil($Y1),floor($X2),floor($Y2),$Color);
511
+     }
513 512
 
514 513
      if ( $Dash )
515 514
       {
@@ -557,8 +556,9 @@  discard block
 block discarded – undo
557 556
         }
558 557
       }
559 558
 
560
-     if ( $BorderR != -1 )
561
-      $this->drawRectangle($X1,$Y1,$X2,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
559
+     if ( $BorderR != -1 ) {
560
+           $this->drawRectangle($X1,$Y1,$X2,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks,"NoAngle"=>$NoAngle));
561
+     }
562 562
 
563 563
      $this->Shadow = $RestoreShadow;
564 564
     }
@@ -596,8 +596,7 @@  discard block
 block discarded – undo
596 596
 
597 597
        /* First segment */
598 598
        if ( $i == 1 )
599
-        { $Xv1 = $X1; $Yv1 = $Y1; }
600
-       else
599
+        { $Xv1 = $X1; $Yv1 = $Y1; } else
601 600
         {
602 601
          $Angle1 = $this->getAngle($XLast,$YLast,$X1,$Y1);
603 602
          $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
@@ -610,8 +609,7 @@  discard block
 block discarded – undo
610 609
 
611 610
        /* Last segment */
612 611
        if ( $i == count($Coordinates)-1 )
613
-        { $Xv2 = $X2; $Yv2 = $Y2; }
614
-       else
612
+        { $Xv2 = $X2; $Yv2 = $Y2; } else
615 613
         {
616 614
          $Angle1 = $this->getAngle($X2,$Y2,$Coordinates[$i+1][0],$Coordinates[$i+1][1]);
617 615
          $Angle2 = $this->getAngle($X1,$Y1,$X2,$Y2);
@@ -653,9 +651,9 @@  discard block
 block discarded – undo
653 651
       {
654 652
        $Length    = $this->getLength($X1,$Y1,$X2,$Y2);
655 653
        $Precision = ($Length*125)/1000;
656
-      }
657
-     else
658
-      $Precision = $Segments;
654
+      } else {
655
+           $Precision = $Segments;
656
+     }
659 657
 
660 658
      $P[0]["X"] = $X1;  $P[0]["Y"] = $Y1;
661 659
      $P[1]["X"] = $Xv1; $P[1]["Y"] = $Yv1;
@@ -714,8 +712,9 @@  discard block
 block discarded – undo
714 712
          if ( $ArrowS == NULL && $LastX != NULL && $LastY != NULL )
715 713
           { $ArrowS["X2"] = $LastX; $ArrowS["Y2"] = $LastY; $ArrowS["X1"] = $X; $ArrowS["Y1"] = $Y; }
716 714
 
717
-         if ( $LastX != NULL && $LastY != NULL && !$PathOnly)
718
-          list($Cpt,$Mode) = $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Cpt"=>$Cpt,"Mode"=>$Mode,"Weight"=>$Weight));
715
+         if ( $LastX != NULL && $LastY != NULL && !$PathOnly) {
716
+                   list($Cpt,$Mode) = $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Cpt"=>$Cpt,"Mode"=>$Mode,"Weight"=>$Weight));
717
+         }
719 718
 
720 719
          /* Get the last segment */
721 720
          $ArrowE["X1"] = $LastX; $ArrowE["Y1"] = $LastY; $ArrowE["X2"] = $X; $ArrowE["Y2"] = $Y;
@@ -726,8 +725,9 @@  discard block
 block discarded – undo
726 725
        if ( $DrawArrow && !$PathOnly )
727 726
         {
728 727
          $ArrowSettings = array("FillR"=>$R,"FillG"=>$G,"FillB"=>$B,"Alpha"=>$Alpha,"Size"=>$ArrowSize,"Ratio"=>$ArrowRatio);
729
-         if ( $ArrowTwoHeads )
730
-          $this->drawArrow($ArrowS["X1"],$ArrowS["Y1"],$ArrowS["X2"],$ArrowS["Y2"],$ArrowSettings);
728
+         if ( $ArrowTwoHeads ) {
729
+                   $this->drawArrow($ArrowS["X1"],$ArrowS["Y1"],$ArrowS["X2"],$ArrowS["Y2"],$ArrowSettings);
730
+         }
731 731
 
732 732
          $this->drawArrow($ArrowE["X1"],$ArrowE["Y1"],$ArrowE["X2"],$ArrowE["Y2"],$ArrowSettings);
733 733
         }
@@ -779,8 +779,7 @@  discard block
 block discarded – undo
779 779
          $Points[] = cos(deg2rad($Angle-90)) * $Weight + $X2; $Points[] = sin(deg2rad($Angle-90)) * $Weight + $Y2;
780 780
 
781 781
          $this->drawPolygon($Points,$PolySettings);
782
-        }
783
-       else
782
+        } else
784 783
         {
785 784
          for($i=0;$i<=$Distance;$i=$i+$Ticks*2)
786 785
           {
@@ -830,13 +829,14 @@  discard block
 block discarded – undo
830 829
          if ( $Cpt % $Ticks == 0 )
831 830
           { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
832 831
 
833
-         if ( $Mode == 1 )
834
-          $this->drawAntialiasPixel($X,$Y,$Color);
832
+         if ( $Mode == 1 ) {
833
+                   $this->drawAntialiasPixel($X,$Y,$Color);
834
+         }
835 835
 
836 836
          $Cpt++;
837
-        }
838
-       else
839
-        $this->drawAntialiasPixel($X,$Y,$Color);
837
+        } else {
838
+               $this->drawAntialiasPixel($X,$Y,$Color);
839
+       }
840 840
       }
841 841
 
842 842
      return(array($Cpt,$Mode));
@@ -882,13 +882,14 @@  discard block
 block discarded – undo
882 882
          if ( $Cpt % $Ticks == 0 )
883 883
           { $Cpt = 0; if ( $Mode == 1 ) { $Mode = 0; } else { $Mode = 1; } }
884 884
 
885
-         if ( $Mode == 1 )
886
-          $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
885
+         if ( $Mode == 1 ) {
886
+                   $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
887
+         }
887 888
 
888 889
          $Cpt++;
889
-        }
890
-       else
891
-        $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
890
+        } else {
891
+               $this->drawAntialiasPixel($X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
892
+       }
892 893
 
893 894
       }
894 895
      $this->Shadow = $RestoreShadow;
@@ -934,13 +935,15 @@  discard block
 block discarded – undo
934 935
        $this->Mask[$X+$XPos][$YPos] = TRUE;
935 936
        imageline($this->Picture,$X-$XPos,$YPos,$X+$XPos,$YPos,$Color);
936 937
       }
937
-     if ( $this->Antialias )
938
-      $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
938
+     if ( $this->Antialias ) {
939
+           $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
940
+     }
939 941
 
940 942
      $this->Mask = "";
941 943
 
942
-     if ( $BorderR != -1 )
943
-      $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks));
944
+     if ( $BorderR != -1 ) {
945
+           $this->drawCircle($X,$Y,$Radius,$Radius,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Ticks"=>$Ticks));
946
+     }
944 947
 
945 948
      $this->Shadow	= $RestoreShadow;
946 949
     }
@@ -1005,8 +1008,7 @@  discard block
 block discarded – undo
1005 1008
        $Settings = array("R"=>$BoxR,"G"=>$BoxG,"B"=>$BoxB,"Alpha"=>$BoxAlpha,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"BorderAlpha"=>$BoxBorderAlpha);
1006 1009
 
1007 1010
        if ( $BoxRounded )
1008
-        { $this->drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$RoundedRadius,$Settings); }
1009
-       else
1011
+        { $this->drawRoundedFilledRectangle($X1,$Y1,$X2,$Y2,$RoundedRadius,$Settings); } else
1010 1012
         { $this->drawFilledRectangle($X1,$Y1,$X2,$Y2,$Settings); }
1011 1013
       }
1012 1014
 
@@ -1116,8 +1118,9 @@  discard block
 block discarded – undo
1116 1118
      $B     = isset($Format["B"]) ? $Format["B"] : 0;
1117 1119
      $Alpha = isset($Format["Alpha"]) ? $Format["Alpha"] : 100;
1118 1120
 
1119
-     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1120
-      return(-1);
1121
+     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize ) {
1122
+           return(-1);
1123
+     }
1121 1124
 
1122 1125
      if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1123 1126
      if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
@@ -1143,12 +1146,12 @@  discard block
 block discarded – undo
1143 1146
 
1144 1147
      if ( $Xi == $X && $Yi == $Y)
1145 1148
       {
1146
-       if ( $Alpha == 100 )
1147
-        $this->drawAlphaPixel($X,$Y,100,$R,$G,$B);
1148
-       else
1149
-        $this->drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B);
1150
-      }
1151
-     else
1149
+       if ( $Alpha == 100 ) {
1150
+               $this->drawAlphaPixel($X,$Y,100,$R,$G,$B);
1151
+       } else {
1152
+               $this->drawAlphaPixel($X,$Y,$Alpha,$R,$G,$B);
1153
+       }
1154
+      } else
1152 1155
       {
1153 1156
        $Alpha1 = (((1 - ($X - floor($X))) * (1 - ($Y - floor($Y))) * 100) / 100) * $Alpha;
1154 1157
        if ( $Alpha1 > $this->AntialiasQuality ) { $this->drawAlphaPixel($Xi,$Yi,$Alpha1,$R,$G,$B); }
@@ -1169,8 +1172,9 @@  discard block
 block discarded – undo
1169 1172
     {
1170 1173
      if ( isset($this->Mask[$X])) { if ( isset($this->Mask[$X][$Y]) ) { return(0); } }
1171 1174
 
1172
-     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize )
1173
-      return(-1);
1175
+     if ( $X < 0 || $Y < 0 || $X >= $this->XSize || $Y >= $this->YSize ) {
1176
+           return(-1);
1177
+     }
1174 1178
 
1175 1179
      if ( $R < 0 ) { $R = 0; } if ( $R > 255 ) { $R = 255; }
1176 1180
      if ( $G < 0 ) { $G = 0; } if ( $G > 255 ) { $G = 255; }
@@ -1238,12 +1242,9 @@  discard block
 block discarded – undo
1238 1242
        list($Width,$Height) = $this->getPicInfo($FileName);
1239 1243
 
1240 1244
        if ( $PicType == 1 )
1241
-        { $Raster = imagecreatefrompng($FileName); }
1242
-       elseif ( $PicType == 2 )
1243
-        { $Raster = imagecreatefromgif($FileName); }
1244
-       elseif ( $PicType == 3 )
1245
-        { $Raster = imagecreatefromjpeg($FileName); }
1246
-       else
1245
+        { $Raster = imagecreatefrompng($FileName); } elseif ( $PicType == 2 )
1246
+        { $Raster = imagecreatefromgif($FileName); } elseif ( $PicType == 3 )
1247
+        { $Raster = imagecreatefromjpeg($FileName); } else
1247 1248
         { return(0); }
1248 1249
 
1249 1250
 
@@ -1251,9 +1252,9 @@  discard block
 block discarded – undo
1251 1252
        if ( $this->Shadow && $this->ShadowX != 0 && $this->ShadowY != 0 )
1252 1253
         {
1253 1254
          $this->Shadow = FALSE;
1254
-         if ( $PicType == 3 )
1255
-          $this->drawFilledRectangle($X+$this->ShadowX,$Y+$this->ShadowY,$X+$Width+$this->ShadowX,$Y+$Height+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
1256
-         else
1255
+         if ( $PicType == 3 ) {
1256
+                   $this->drawFilledRectangle($X+$this->ShadowX,$Y+$this->ShadowY,$X+$Width+$this->ShadowX,$Y+$Height+$this->ShadowY,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
1257
+         } else
1257 1258
           {
1258 1259
            $TranparentID = imagecolortransparent($Raster);
1259 1260
            for ($Xc=0;$Xc<=$Width-1;$Xc++)
@@ -1351,9 +1352,9 @@  discard block
 block discarded – undo
1351 1352
        $this->drawLine($Points[0],$Points[1],$Points[4],$Points[5],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1352 1353
 
1353 1354
        $this->drawLine($TailX,$TailY,$TailX2,$TailY2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1354
-      }
1355
-     else
1356
-      $this->drawLine($X1,$Y1,$TailX,$TailY,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1355
+      } else {
1356
+           $this->drawLine($X1,$Y1,$TailX,$TailY,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1357
+     }
1357 1358
 
1358 1359
      /* Re-enable shadows */
1359 1360
      $this->Shadow = $RestoreShadow;
@@ -1395,18 +1396,19 @@  discard block
 block discarded – undo
1395 1396
      if ( $Angle > 0 && $Angle < 180 )
1396 1397
       {
1397 1398
        $this->drawLine($X2,$Y2,$X2-$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1398
-       if ( $Position == POSITION_TOP )
1399
-        $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_BOTTOMRIGHT));
1400
-       else
1401
-        $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPRIGHT));
1402
-      }
1403
-     else
1399
+       if ( $Position == POSITION_TOP ) {
1400
+               $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_BOTTOMRIGHT));
1401
+       } else {
1402
+               $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPRIGHT));
1403
+       }
1404
+      } else
1404 1405
       {
1405 1406
        $this->drawLine($X2,$Y2,$X2+$TxtWidth,$Y2,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
1406
-       if ( $Position == POSITION_TOP )
1407
-        $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1408
-       else
1409
-        $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPLEFT));
1407
+       if ( $Position == POSITION_TOP ) {
1408
+               $this->drawText($X2,$Y2-2,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha));
1409
+       } else {
1410
+               $this->drawText($X2,$Y2+4,$Text,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$Alpha,"Align"=>TEXT_ALIGN_TOPLEFT));
1411
+       }
1410 1412
       }
1411 1413
     }
1412 1414
 
@@ -1463,11 +1465,12 @@  discard block
 block discarded – undo
1463 1465
          $GradientOptions = array("StartR"=>$RFade,"StartG"=>$GFade,"StartB"=>$BFade,"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
1464 1466
          $this->drawGradientArea($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,DIRECTION_VERTICAL,$GradientOptions);
1465 1467
 
1466
-         if ( $Surrounding )
1467
-          $this->drawRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1468
-        }
1469
-       else
1470
-        $this->drawFilledRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1468
+         if ( $Surrounding ) {
1469
+                   $this->drawRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1470
+         }
1471
+        } else {
1472
+               $this->drawFilledRectangle($X+1,$Y-1,$X+$Width-1,$Y-$InnerHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1473
+       }
1471 1474
 
1472 1475
        $this->Shadow = $RestoreShadow;
1473 1476
 
@@ -1475,13 +1478,13 @@  discard block
 block discarded – undo
1475 1478
        if ( $ShowLabel && $LabelPos == LABEL_POS_TOP )		{ $this->drawText($X+($Width/2),$Y-$Height-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE)); }
1476 1479
        if ( $ShowLabel && $LabelPos == LABEL_POS_INSIDE )	{ $this->drawText($X+($Width/2),$Y-$InnerHeight-$Margin,$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLELEFT,"Angle"=>90)); }
1477 1480
        if ( $ShowLabel && $LabelPos == LABEL_POS_CENTER )	{ $this->drawText($X+($Width/2),$Y-($Height/2),$Percent."%",array("Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"Angle"=>90)); }
1478
-      }
1479
-     else
1481
+      } else
1480 1482
       {
1481
-       if ( $Percent == 100 )
1482
-        $InnerWidth = $Width-1;
1483
-       else
1484
-        $InnerWidth = (($Width-2)/100)*$Percent;
1483
+       if ( $Percent == 100 ) {
1484
+               $InnerWidth = $Width-1;
1485
+       } else {
1486
+               $InnerWidth = (($Width-2)/100)*$Percent;
1487
+       }
1485 1488
 
1486 1489
        $this->drawFilledRectangle($X,$Y,$X+$Width,$Y+$Height,array("R"=>$BoxBackR,"G"=>$BoxBackG,"B"=>$BoxBackB,"BorderR"=>$BoxBorderR,"BorderG"=>$BoxBorderG,"BorderB"=>$BoxBorderB,"NoAngle"=>$NoAngle));
1487 1490
 
@@ -1491,11 +1494,12 @@  discard block
 block discarded – undo
1491 1494
          $GradientOptions = array("StartR"=>$R,"StartG"=>$G,"StartB"=>$B,"EndR"=>$RFade,"EndG"=>$GFade,"EndB"=>$BFade);
1492 1495
          $this->drawGradientArea($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,DIRECTION_HORIZONTAL,$GradientOptions);
1493 1496
 
1494
-         if ( $Surrounding )
1495
-          $this->drawRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1496
-        }
1497
-       else
1498
-        $this->drawFilledRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1497
+         if ( $Surrounding ) {
1498
+                   $this->drawRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>255,"G"=>255,"B"=>255,"Alpha"=>$Surrounding));
1499
+         }
1500
+        } else {
1501
+               $this->drawFilledRectangle($X+1,$Y+1,$X+$InnerWidth,$Y+$Height-1,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1502
+       }
1499 1503
  
1500 1504
        $this->Shadow = $RestoreShadow;
1501 1505
 
@@ -1554,8 +1558,7 @@  discard block
 block discarded – undo
1554 1558
 
1555 1559
            $Lines = preg_split("/\n/",$Serie["Description"]);
1556 1560
            $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1557
-          }
1558
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1561
+          } elseif ( $Mode == LEGEND_HORIZONTAL )
1559 1562
           {
1560 1563
            $Lines = preg_split("/\n/",$Serie["Description"]);
1561 1564
            $Width = "";
@@ -1644,8 +1647,7 @@  discard block
 block discarded – undo
1644 1647
 
1645 1648
            $Lines = preg_split("/\n/",$Serie["Description"]);
1646 1649
            $vY = $vY + max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1647
-          }
1648
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1650
+          } elseif ( $Mode == LEGEND_HORIZONTAL )
1649 1651
           {
1650 1652
            $Lines = preg_split("/\n/",$Serie["Description"]);
1651 1653
            $Width = "";
@@ -1669,10 +1671,11 @@  discard block
 block discarded – undo
1669 1671
      $TopOffset  = $Y - $Boundaries["T"];
1670 1672
      if ( $Boundaries["B"]-($vY+$IconAreaHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$IconAreaHeight+$TopOffset; }
1671 1673
 
1672
-     if ( $Style == LEGEND_ROUND )
1673
-      $this->drawRoundedFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1674
-     elseif ( $Style == LEGEND_BOX )
1675
-      $this->drawFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1674
+     if ( $Style == LEGEND_ROUND ) {
1675
+           $this->drawRoundedFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1676
+     } elseif ( $Style == LEGEND_BOX ) {
1677
+           $this->drawFilledRectangle($Boundaries["L"]-$Margin,$Boundaries["T"]-$Margin,$Boundaries["R"]+$Margin,$Boundaries["B"]+$Margin,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"BorderR"=>$BorderR,"BorderG"=>$BorderG,"BorderB"=>$BorderB));
1678
+     }
1676 1679
 
1677 1680
      $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
1678 1681
      foreach($Data["Series"] as $SerieName => $Serie)
@@ -1689,8 +1692,7 @@  discard block
 block discarded – undo
1689 1692
            $PicX = $X+$IconAreaWidth/2; $PicY = $Y+$IconAreaHeight/2; 
1690 1693
 
1691 1694
            $this->drawFromPNG($PicX-$PicWidth/2,$PicY-$PicHeight/2,$Picture);
1692
-          }
1693
-         else
1695
+          } else
1694 1696
           {
1695 1697
            if ( $Family == LEGEND_FAMILY_BOX )
1696 1698
             {
@@ -1699,13 +1701,11 @@  discard block
 block discarded – undo
1699 1701
 
1700 1702
              $this->drawFilledRectangle($X+1+$XOffset,$Y+1+$YOffset,$X+$BoxWidth+$XOffset+1,$Y+$BoxHeight+1+$YOffset,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1701 1703
              $this->drawFilledRectangle($X+$XOffset,$Y+$YOffset,$X+$BoxWidth+$XOffset,$Y+$BoxHeight+$YOffset,array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1702
-            }
1703
-           elseif ( $Family == LEGEND_FAMILY_CIRCLE )
1704
+            } elseif ( $Family == LEGEND_FAMILY_CIRCLE )
1704 1705
             {
1705 1706
              $this->drawFilledCircle($X+1+$IconAreaWidth/2,$Y+1+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20));
1706 1707
              $this->drawFilledCircle($X+$IconAreaWidth/2,$Y+$IconAreaHeight/2,min($IconAreaHeight/2,$IconAreaWidth/2),array("R"=>$R,"G"=>$G,"B"=>$B,"Surrounding"=>20));
1707
-            }
1708
-           elseif ( $Family == LEGEND_FAMILY_LINE )
1708
+            } elseif ( $Family == LEGEND_FAMILY_LINE )
1709 1709
             {
1710 1710
              $this->drawLine($X+1,$Y+1+$IconAreaHeight/2,$X+1+$IconAreaWidth,$Y+1+$IconAreaHeight/2,array("R"=>0,"G"=>0,"B"=>0,"Alpha"=>20,"Ticks"=>$Ticks,"Weight"=>$Weight));
1711 1711
              $this->drawLine($X,$Y+$IconAreaHeight/2,$X+$IconAreaWidth,$Y+$IconAreaHeight/2,array("R"=>$R,"G"=>$G,"B"=>$B,"Ticks"=>$Ticks,"Weight"=>$Weight));
@@ -1715,12 +1715,12 @@  discard block
 block discarded – undo
1715 1715
          if ( $Mode == LEGEND_VERTICAL )
1716 1716
           {
1717 1717
            $Lines = preg_split("/\n/",$Serie["Description"]);
1718
-           foreach($Lines as $Key => $Value)
1719
-            $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1718
+           foreach($Lines as $Key => $Value) {
1719
+                       $this->drawText($X+$IconAreaWidth+4,$Y+$IconAreaHeight/2+(($this->FontSize+3)*$Key),$Value,array("R"=>$FontR,"G"=>$FontG,"B"=>$FontB,"Align"=>TEXT_ALIGN_MIDDLELEFT,"FontSize"=>$FontSize,"FontName"=>$FontName));
1720
+           }
1720 1721
 
1721 1722
            $Y=$Y+max($this->FontSize*count($Lines),$IconAreaHeight) + 5;
1722
-          }
1723
-         elseif ( $Mode == LEGEND_HORIZONTAL )
1723
+          } elseif ( $Mode == LEGEND_HORIZONTAL )
1724 1724
           {
1725 1725
            $Lines = preg_split("/\n/",$Serie["Description"]);
1726 1726
            $Width = "";
@@ -1829,12 +1829,9 @@  discard block
 block discarded – undo
1829 1829
        if ( $AxisParameter["Identity"] == AXIS_X ) { $GotXAxis = TRUE; }
1830 1830
 
1831 1831
        if ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_Y)
1832
-        { $Height = $this->GraphAreaY2-$this->GraphAreaY1 - $YMargin*2; }
1833
-       elseif ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_X)
1834
-        { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1835
-       elseif ( $Pos == SCALE_POS_TOPBOTTOM && $AxisParameter["Identity"] == AXIS_Y)
1836
-        { $Height = $this->GraphAreaX2-$this->GraphAreaX1 - $YMargin*2;; }
1837
-       else
1832
+        { $Height = $this->GraphAreaY2-$this->GraphAreaY1 - $YMargin*2; } elseif ( $Pos == SCALE_POS_LEFTRIGHT && $AxisParameter["Identity"] == AXIS_X)
1833
+        { $Height = $this->GraphAreaX2-$this->GraphAreaX1; } elseif ( $Pos == SCALE_POS_TOPBOTTOM && $AxisParameter["Identity"] == AXIS_Y)
1834
+        { $Height = $this->GraphAreaX2-$this->GraphAreaX1 - $YMargin*2;; } else
1838 1835
         { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1839 1836
 
1840 1837
        $AxisMin = ABSOLUTE_MAX; $AxisMax = OUT_OF_SIGHT;
@@ -1852,18 +1849,15 @@  discard block
 block discarded – undo
1852 1849
 
1853 1850
          $Data["Axis"][$AxisID]["Min"] = $AxisMin-$AutoMargin; $Data["Axis"][$AxisID]["Max"] = $AxisMax+$AutoMargin;
1854 1851
          if ( $Mode == SCALE_MODE_START0 ) { $Data["Axis"][$AxisID]["Min"] = 0; }
1855
-        }
1856
-       elseif ( $Mode == SCALE_MODE_MANUAL )
1852
+        } elseif ( $Mode == SCALE_MODE_MANUAL )
1857 1853
         {
1858 1854
          if ( isset($ManualScale[$AxisID]["Min"]) && isset($ManualScale[$AxisID]["Max"]) )
1859 1855
           {
1860 1856
            $Data["Axis"][$AxisID]["Min"] = $ManualScale[$AxisID]["Min"];
1861 1857
            $Data["Axis"][$AxisID]["Max"] = $ManualScale[$AxisID]["Max"];
1862
-          }
1863
-         else
1858
+          } else
1864 1859
           { echo "Manual scale boundaries not set."; exit(); }
1865
-        }
1866
-       elseif ( $Mode == SCALE_MODE_ADDALL || $Mode == SCALE_MODE_ADDALL_START0 )
1860
+        } elseif ( $Mode == SCALE_MODE_ADDALL || $Mode == SCALE_MODE_ADDALL_START0 )
1867 1861
         {
1868 1862
          $Series = "";
1869 1863
          foreach($Data["Series"] as $SerieID => $SerieParameter)
@@ -1911,12 +1905,12 @@  discard block
 block discarded – undo
1911 1905
        if ( $Abscissa != NULL )
1912 1906
         {
1913 1907
          $Points = count($Data["Series"][$Abscissa]["Data"]);
1914
-         if ( $AutoAxisLabels )
1915
-          $AxisName = isset($Data["Series"][$Abscissa]["Description"]) ? $Data["Series"][$Abscissa]["Description"] : NULL;
1916
-         else
1917
-          $AxisName = NULL;
1918
-        }
1919
-       else
1908
+         if ( $AutoAxisLabels ) {
1909
+                   $AxisName = isset($Data["Series"][$Abscissa]["Description"]) ? $Data["Series"][$Abscissa]["Description"] : NULL;
1910
+         } else {
1911
+                   $AxisName = NULL;
1912
+         }
1913
+        } else
1920 1914
         {
1921 1915
          $Points = 0;
1922 1916
          $AxisName = isset($Data["XAxisName"]) ? $Data["XAxisName"] : NULL;
@@ -1931,16 +1925,15 @@  discard block
 block discarded – undo
1931 1925
        if ( $XMargin == AUTO )
1932 1926
         {
1933 1927
          if ( $Pos == SCALE_POS_LEFTRIGHT )
1934
-          { $Height = $this->GraphAreaX2-$this->GraphAreaX1; }
1935
-         else
1928
+          { $Height = $this->GraphAreaX2-$this->GraphAreaX1; } else
1936 1929
           { $Height = $this->GraphAreaY2-$this->GraphAreaY1; }
1937 1930
 
1938
-         if ( $Points == 1 )
1939
-          $Data["Axis"][$AxisID]["Margin"] = $Height / 2;
1940
-         else
1941
-          $Data["Axis"][$AxisID]["Margin"] = ($Height/$Points) / 2;
1942
-        }
1943
-       else
1931
+         if ( $Points == 1 ) {
1932
+                   $Data["Axis"][$AxisID]["Margin"] = $Height / 2;
1933
+         } else {
1934
+                   $Data["Axis"][$AxisID]["Margin"] = ($Height/$Points) / 2;
1935
+         }
1936
+        } else
1944 1937
         { $Data["Axis"][$AxisID]["Margin"] = $XMargin; }
1945 1938
        $Data["Axis"][$AxisID]["Rows"] = $Points-1;
1946 1939
        if ( !isset($Data["Axis"][$AxisID]["Display"]) ) { $Data["Axis"][$AxisID]["Display"] = NULL; }
@@ -1952,8 +1945,7 @@  discard block
 block discarded – undo
1952 1945
      if ( $Pos != SCALE_POS_LEFTRIGHT )
1953 1946
       {
1954 1947
        if ( $Data["AbsicssaPosition"] == AXIS_POSITION_BOTTOM )
1955
-        { $Data["AbsicssaPosition"] = AXIS_POSITION_LEFT; }
1956
-       else
1948
+        { $Data["AbsicssaPosition"] = AXIS_POSITION_LEFT; } else
1957 1949
         { $Data["AbsicssaPosition"] = AXIS_POSITION_RIGHT; }
1958 1950
       }
1959 1951
      $Data["Axis"][$AxisID]["Position"] = $Data["AbsicssaPosition"];
@@ -1972,8 +1964,7 @@  discard block
 block discarded – undo
1972 1964
          $AxisR = $Parameters["Color"]["R"]; $AxisG = $Parameters["Color"]["G"]; $AxisB = $Parameters["Color"]["B"];
1973 1965
          $TickR = $Parameters["Color"]["R"]; $TickG = $Parameters["Color"]["G"]; $TickB = $Parameters["Color"]["B"];
1974 1966
          $this->setFontProperties(array("R"=>$Parameters["Color"]["R"],"G"=>$Parameters["Color"]["G"],"B"=>$Parameters["Color"]["B"]));
1975
-        }
1976
-       else
1967
+        } else
1977 1968
         {
1978 1969
          $AxisR = $AxisRo; $AxisG = $AxisGo; $AxisB = $AxisBo;
1979 1970
          $TickR = $TickRo; $TickG = $TickGo; $TickB = $TickBo;
@@ -1995,8 +1986,7 @@  discard block
 block discarded – undo
1995 1986
              if ( !$RemoveXAxis )
1996 1987
               {
1997 1988
                if ( $Floating )
1998
-                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
1999
-               else
1989
+                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2000 1990
                 { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2001 1991
 
2002 1992
                if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2013,13 +2003,13 @@  discard block
 block discarded – undo
2013 2003
                $YPos  = $AxisPos["B"];
2014 2004
 
2015 2005
                if ( $Abscissa != NULL )
2016
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2017
-               else
2006
+                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } } else
2018 2007
                 {
2019
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2020
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2021
-                 else
2022
-                  $Value = $i;
2008
+                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) ) {
2009
+                                   $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2010
+                 } else {
2011
+                                   $Value = $i;
2012
+                 }
2023 2013
                 }
2024 2014
 
2025 2015
                $ID++; $Skipped = TRUE;
@@ -2038,8 +2028,7 @@  discard block
 block discarded – undo
2038 2028
                 {
2039 2029
                  if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2040 2030
                  if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$SkippedInnerTickWidth,$XPos,$YPos+$SkippedOuterTickWidth,$SkippedTickColor); }
2041
-                }
2042
-               else
2031
+                } else
2043 2032
                 {
2044 2033
                  if ( $DrawXLines && ($XPos != $this->GraphAreaX1 && $XPos != $this->GraphAreaX2) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2045 2034
                  if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos-$InnerTickWidth,$XPos,$YPos+$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
@@ -2057,8 +2046,7 @@  discard block
 block discarded – undo
2057 2046
               }
2058 2047
 
2059 2048
              $AxisPos["B"] = $MaxBottom + $ScaleSpacing;
2060
-            }
2061
-           elseif ( $Parameters["Position"] == AXIS_POSITION_TOP )
2049
+            } elseif ( $Parameters["Position"] == AXIS_POSITION_TOP )
2062 2050
             {
2063 2051
              if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_BOTTOMMIDDLE; $YLabelOffset = 2; }
2064 2052
              if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $YLabelOffset = 2; }
@@ -2068,8 +2056,7 @@  discard block
 block discarded – undo
2068 2056
              if ( !$RemoveXAxis )
2069 2057
               {
2070 2058
                if ( $Floating )
2071
-                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2072
-               else
2059
+                { $FloatingOffset = $YMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2073 2060
                 { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2074 2061
 
2075 2062
                if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2086,13 +2073,13 @@  discard block
 block discarded – undo
2086 2073
                $YPos  = $AxisPos["T"];
2087 2074
 
2088 2075
                if ( $Abscissa != NULL )
2089
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2090
-               else
2076
+                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } } else
2091 2077
                 {
2092
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2093
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2094
-                 else
2095
-                  $Value = $i;
2078
+                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) ) {
2079
+                                   $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2080
+                 } else {
2081
+                                   $Value = $i;
2082
+                 }
2096 2083
                 }
2097 2084
 
2098 2085
                $ID++; $Skipped = TRUE;
@@ -2111,8 +2098,7 @@  discard block
 block discarded – undo
2111 2098
                 {
2112 2099
                  if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,$SkippedAxisColor); }
2113 2100
                  if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$SkippedInnerTickWidth,$XPos,$YPos-$SkippedOuterTickWidth,$SkippedTickColor); }
2114
-                }
2115
-               else
2101
+                } else
2116 2102
                 {
2117 2103
                  if ( $DrawXLines ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2118 2104
                  if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos,$YPos+$InnerTickWidth,$XPos,$YPos-$OuterTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
@@ -2132,8 +2118,7 @@  discard block
 block discarded – undo
2132 2118
 
2133 2119
              $AxisPos["T"] = $MinTop - $ScaleSpacing;
2134 2120
             }
2135
-          }
2136
-         elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2121
+          } elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2137 2122
           {
2138 2123
            if ( $Parameters["Position"] == AXIS_POSITION_LEFT )
2139 2124
             {
@@ -2145,8 +2130,7 @@  discard block
 block discarded – undo
2145 2130
              if ( !$RemoveXAxis )
2146 2131
               {
2147 2132
                if ( $Floating )
2148
-                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2149
-               else
2133
+                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2150 2134
                 { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2151 2135
 
2152 2136
                if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2163,13 +2147,13 @@  discard block
 block discarded – undo
2163 2147
                $XPos  = $AxisPos["L"];
2164 2148
 
2165 2149
                if ( $Abscissa != NULL )
2166
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2167
-               else
2150
+                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } } else
2168 2151
                 {
2169
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2170
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2171
-                 else
2172
-                  $Value = $i;
2152
+                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) ) {
2153
+                                   $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2154
+                 } else {
2155
+                                   $Value = $i;
2156
+                 }
2173 2157
                 }
2174 2158
 
2175 2159
                $ID++; $Skipped = TRUE;
@@ -2188,8 +2172,7 @@  discard block
 block discarded – undo
2188 2172
                 {
2189 2173
                  if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2190 2174
                  if ( ($SkippedInnerTickWidth !=0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$SkippedOuterTickWidth,$YPos,$XPos+$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2191
-                }
2192
-               else
2175
+                } else
2193 2176
                 {
2194 2177
                  if ( $DrawXLines && ($YPos != $this->GraphAreaY1 && $YPos != $this->GraphAreaY2) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2195 2178
                  if ( ($InnerTickWidth !=0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
@@ -2207,8 +2190,7 @@  discard block
 block discarded – undo
2207 2190
               }
2208 2191
 
2209 2192
              $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2210
-            }
2211
-           elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2193
+            } elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2212 2194
             {
2213 2195
              if ( $LabelRotation == 0 )					{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 2; }
2214 2196
              if ( $LabelRotation > 0 && $LabelRotation < 190 )		{ $LabelAlign = TEXT_ALIGN_MIDDLELEFT; $XLabelOffset = 6; }
@@ -2218,8 +2200,7 @@  discard block
 block discarded – undo
2218 2200
              if ( !$RemoveXAxis )
2219 2201
               {
2220 2202
                if ( $Floating )
2221
-                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2222
-               else
2203
+                { $FloatingOffset = $YMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2223 2204
                 { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2224 2205
 
2225 2206
                if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2+($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2236,13 +2217,13 @@  discard block
 block discarded – undo
2236 2217
                $XPos  = $AxisPos["R"];
2237 2218
 
2238 2219
                if ( $Abscissa != NULL )
2239
-                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } }
2240
-               else
2220
+                { if ( isset($Data["Series"][$Abscissa]["Data"][$i]) ) { $Value = $this->scaleFormat($Data["Series"][$Abscissa]["Data"][$i],$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]); } else { $Value = ""; } } else
2241 2221
                 {
2242
-                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) )
2243
-                  $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2244
-                 else
2245
-                  $Value = $i;
2222
+                 if ( isset($Parameters["ScaleMin"]) && isset ($Parameters["RowHeight"]) ) {
2223
+                                   $Value = $this->scaleFormat($Parameters["ScaleMin"] + $Parameters["RowHeight"]*$i,$Data["XAxisDisplay"],$Data["XAxisFormat"],$Data["XAxisUnit"]);
2224
+                 } else {
2225
+                                   $Value = $i;
2226
+                 }
2246 2227
                 }
2247 2228
 
2248 2229
                $ID++; $Skipped = TRUE;
@@ -2261,8 +2242,7 @@  discard block
 block discarded – undo
2261 2242
                 {
2262 2243
                  if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,$SkippedAxisColor); }
2263 2244
                  if ( ($SkippedInnerTickWidth != 0 || $SkippedOuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$SkippedOuterTickWidth,$YPos,$XPos-$SkippedInnerTickWidth,$YPos,$SkippedTickColor); }
2264
-                }
2265
-               else
2245
+                } else
2266 2246
                 {
2267 2247
                  if ( $DrawXLines ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2268 2248
                  if ( ($InnerTickWidth != 0 || $OuterTickWidth != 0) && !$RemoveXAxis ) { $this->drawLine($XPos+$OuterTickWidth,$YPos,$XPos-$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha)); }
@@ -2295,8 +2275,7 @@  discard block
 block discarded – undo
2295 2275
             {
2296 2276
 
2297 2277
              if ( $Floating )
2298
-              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2299
-             else
2278
+              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2300 2279
               { $FloatingOffset = 0; $this->drawLine($AxisPos["L"],$this->GraphAreaY1,$AxisPos["L"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2301 2280
 
2302 2281
              if ( $DrawArrows ) { $this->drawArrow($AxisPos["L"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["L"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2315,8 +2294,9 @@  discard block
 block discarded – undo
2315 2294
 
2316 2295
                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2317 2296
 
2318
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2319
-                $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2297
+               if ( $DrawSubTicks && $i != $Parameters["Rows"] ) {
2298
+                               $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2299
+               }
2320 2300
 
2321 2301
                $this->drawLine($XPos-$OuterTickWidth,$YPos,$XPos+$InnerTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2322 2302
                $Bounds  = $this->drawText($XPos-$OuterTickWidth-2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLERIGHT));
@@ -2337,12 +2317,10 @@  discard block
 block discarded – undo
2337 2317
               }
2338 2318
 
2339 2319
              $AxisPos["L"] = $MinLeft - $ScaleSpacing;
2340
-            }
2341
-           elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2320
+            } elseif ( $Parameters["Position"] == AXIS_POSITION_RIGHT )
2342 2321
             {
2343 2322
              if ( $Floating )
2344
-              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2345
-             else
2323
+              { $FloatingOffset = $XMargin; $this->drawLine($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY2-$Parameters["Margin"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2346 2324
               { $FloatingOffset = 0; $this->drawLine($AxisPos["R"],$this->GraphAreaY1,$AxisPos["R"],$this->GraphAreaY2,array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2347 2325
 
2348 2326
              if ( $DrawArrows ) { $this->drawArrow($AxisPos["R"],$this->GraphAreaY1+$Parameters["Margin"],$AxisPos["R"],$this->GraphAreaY1-($ArrowSize*2),array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2361,8 +2339,9 @@  discard block
 block discarded – undo
2361 2339
 
2362 2340
                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($this->GraphAreaX1+$FloatingOffset,$YPos,$this->GraphAreaX2-$FloatingOffset,$YPos,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2363 2341
 
2364
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2365
-                $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2342
+               if ( $DrawSubTicks && $i != $Parameters["Rows"] ) {
2343
+                               $this->drawLine($XPos-$OuterSubTickWidth,$YPos-$SubTicksSize,$XPos+$InnerSubTickWidth,$YPos-$SubTicksSize,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2344
+               }
2366 2345
 
2367 2346
                $this->drawLine($XPos-$InnerTickWidth,$YPos,$XPos+$OuterTickWidth,$YPos,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2368 2347
                $Bounds  = $this->drawText($XPos+$OuterTickWidth+2,$YPos,$Value,array("Align"=>TEXT_ALIGN_MIDDLELEFT));
@@ -2383,14 +2362,12 @@  discard block
 block discarded – undo
2383 2362
               }
2384 2363
              $AxisPos["R"] = $MaxLeft + $ScaleSpacing;
2385 2364
             }
2386
-          }
2387
-         elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2365
+          } elseif ( $Pos == SCALE_POS_TOPBOTTOM )
2388 2366
           {
2389 2367
            if ( $Parameters["Position"] == AXIS_POSITION_TOP )
2390 2368
             {
2391 2369
              if ( $Floating )
2392
-              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2393
-             else
2370
+              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2394 2371
               { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["T"],$this->GraphAreaX2,$AxisPos["T"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2395 2372
 
2396 2373
              if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["T"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["T"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2409,8 +2386,9 @@  discard block
 block discarded – undo
2409 2386
 
2410 2387
                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2411 2388
 
2412
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2413
-                $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2389
+               if ( $DrawSubTicks && $i != $Parameters["Rows"] ) {
2390
+                               $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2391
+               }
2414 2392
 
2415 2393
                $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2416 2394
                $Bounds    = $this->drawText($XPos,$YPos-$OuterTickWidth-2,$Value,array("Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
@@ -2431,12 +2409,10 @@  discard block
 block discarded – undo
2431 2409
               }
2432 2410
 
2433 2411
              $AxisPos["T"] = $MinTop - $ScaleSpacing;
2434
-            }
2435
-           elseif ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
2412
+            } elseif ( $Parameters["Position"] == AXIS_POSITION_BOTTOM )
2436 2413
             {
2437 2414
              if ( $Floating )
2438
-              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2439
-             else
2415
+              { $FloatingOffset = $XMargin; $this->drawLine($this->GraphAreaX1+$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); } else
2440 2416
               { $FloatingOffset = 0; $this->drawLine($this->GraphAreaX1,$AxisPos["B"],$this->GraphAreaX2,$AxisPos["B"],array("R"=>$AxisR,"G"=>$AxisG,"B"=>$AxisB,"Alpha"=>$AxisAlpha)); }
2441 2417
 
2442 2418
              if ( $DrawArrows ) { $this->drawArrow($this->GraphAreaX2-$Parameters["Margin"],$AxisPos["B"],$this->GraphAreaX2+($ArrowSize*2),$AxisPos["B"],array("FillR"=>$AxisR,"FillG"=>$AxisG,"FillB"=>$AxisB,"Size"=>$ArrowSize)); }
@@ -2455,8 +2431,9 @@  discard block
 block discarded – undo
2455 2431
 
2456 2432
                if ( $DrawYLines == ALL || in_array($AxisID,$DrawYLines) ) { $this->drawLine($XPos,$this->GraphAreaY1+$FloatingOffset,$XPos,$this->GraphAreaY2-$FloatingOffset,array("R"=>$GridR,"G"=>$GridG,"B"=>$GridB,"Alpha"=>$GridAlpha,"Ticks"=>$GridTicks)); }
2457 2433
 
2458
-               if ( $DrawSubTicks && $i != $Parameters["Rows"] )
2459
-                $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2434
+               if ( $DrawSubTicks && $i != $Parameters["Rows"] ) {
2435
+                               $this->drawLine($XPos+$SubTicksSize,$YPos-$OuterSubTickWidth,$XPos+$SubTicksSize,$YPos+$InnerSubTickWidth,array("R"=>$SubTickR,"G"=>$SubTickG,"B"=>$SubTickB,"Alpha"=>$SubTickAlpha));
2436
+               }
2460 2437
 
2461 2438
                $this->drawLine($XPos,$YPos-$OuterTickWidth,$XPos,$YPos+$InnerTickWidth,array("R"=>$TickR,"G"=>$TickG,"B"=>$TickB,"Alpha"=>$TickAlpha));
2462 2439
                $Bounds    = $this->drawText($XPos,$YPos+$OuterTickWidth+2,$Value,array("Align"=>TEXT_ALIGN_TOPMIDDLE));
@@ -2498,8 +2475,9 @@  discard block
 block discarded – undo
2498 2475
     {
2499 2476
      /* Compute each factors */
2500 2477
      $Results = "";
2501
-     foreach ($Factors as $Key => $Factor)
2502
-      $Results[$Factor] = $this->processScale($XMin,$XMax,$MaxDivs,array($Factor),$AxisID);
2478
+     foreach ($Factors as $Key => $Factor) {
2479
+           $Results[$Factor] = $this->processScale($XMin,$XMax,$MaxDivs,array($Factor),$AxisID);
2480
+     }
2503 2481
 
2504 2482
      /* Remove scales that are creating to much decimals */
2505 2483
      $GoodScaleFactors = "";
@@ -2526,15 +2504,17 @@  discard block
 block discarded – undo
2526 2504
     {
2527 2505
      $ScaleHeight = abs(ceil($XMax)-floor($XMin));
2528 2506
 
2529
-     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Format"]) )
2530
-      $Format = $this->DataSet->Data["Axis"][$AxisID]["Format"];
2531
-     else
2532
-      $Format = NULL;
2507
+     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Format"]) ) {
2508
+           $Format = $this->DataSet->Data["Axis"][$AxisID]["Format"];
2509
+     } else {
2510
+           $Format = NULL;
2511
+     }
2533 2512
 
2534
-     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Display"]) )
2535
-      $Mode = $this->DataSet->Data["Axis"][$AxisID]["Display"];
2536
-     else
2537
-      $Mode = AXIS_FORMAT_DEFAULT;
2513
+     if ( isset($this->DataSet->Data["Axis"][$AxisID]["Display"]) ) {
2514
+           $Mode = $this->DataSet->Data["Axis"][$AxisID]["Display"];
2515
+     } else {
2516
+           $Mode = AXIS_FORMAT_DEFAULT;
2517
+     }
2538 2518
 
2539 2519
      $Scale = "";
2540 2520
      if ( $XMin != $XMax )
@@ -2589,8 +2569,7 @@  discard block
 block discarded – undo
2589 2569
 
2590 2570
          $Scale["Format"] = $GoodDecimals;
2591 2571
         }
2592
-      }
2593
-     else
2572
+      } else
2594 2573
       {
2595 2574
        /* If all values are the same we keep a +1/-1 scale */
2596 2575
        $Rows = 2; $XMin = $XMax-1; $XMax = $XMax+1; $RowHeight = 1;
@@ -2673,13 +2652,14 @@  discard block
 block discarded – undo
2673 2652
       {
2674 2653
        if ( isset($Data["Abscissa"]) )
2675 2654
         {
2676
-         if ( isset($Data["Series"][$Data["Abscissa"]]["Data"][$Value]) )
2677
-          $Caption = $Data["Series"][$Data["Abscissa"]]["Data"][$Value];
2678
-         else
2679
-          $Caption = $Value;
2680
-        }
2681
-       else
2682
-        $Caption = $Value;
2655
+         if ( isset($Data["Series"][$Data["Abscissa"]]["Data"][$Value]) ) {
2656
+                   $Caption = $Data["Series"][$Data["Abscissa"]]["Data"][$Value];
2657
+         } else {
2658
+                   $Caption = $Value;
2659
+         }
2660
+        } else {
2661
+               $Caption = $Value;
2662
+       }
2683 2663
       }
2684 2664
 
2685 2665
      if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
@@ -2702,8 +2682,7 @@  discard block
 block discarded – undo
2702 2682
          if ( $WriteCaption )
2703 2683
           {
2704 2684
            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2705
-            { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; }
2706
-           else 
2685
+            { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; } else 
2707 2686
             { $Y = $YPos2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_BOTTOMMIDDLE; }
2708 2687
            
2709 2688
            $this->drawText($XPos,$Y,$Caption,$CaptionSettings);
@@ -2711,8 +2690,7 @@  discard block
 block discarded – undo
2711 2690
 
2712 2691
          return(array("X"=>$XPos));
2713 2692
         }
2714
-      }
2715
-     elseif( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2693
+      } elseif( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2716 2694
       {
2717 2695
        $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2718 2696
        $XPos  = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value;
@@ -2732,8 +2710,7 @@  discard block
 block discarded – undo
2732 2710
          if ( $WriteCaption )
2733 2711
           {
2734 2712
            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2735
-            { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; }
2736
-           else 
2713
+            { $Y = $YPos1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; } else 
2737 2714
             { $Y = $YPos2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLERIGHT; }
2738 2715
            
2739 2716
            $this->drawText($Y,$XPos,$Caption,$CaptionSettings);
@@ -2813,8 +2790,7 @@  discard block
 block discarded – undo
2813 2790
 
2814 2791
        $this->Shadow = $RestoreShadow;
2815 2792
        return(array("X1"=>$XPos1,"X2"=>$XPos2));
2816
-      }
2817
-     elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2793
+      } elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
2818 2794
       {
2819 2795
        $XStep = (($this->GraphAreaY2 - $this->GraphAreaY1) - $XScale[0] *2 ) / $XScale[1];
2820 2796
        $XPos1 = $this->GraphAreaY1 + $XScale[0] + $XStep * $Value1;
@@ -2919,8 +2895,7 @@  discard block
 block discarded – undo
2919 2895
          if ( $WriteCaption )
2920 2896
           {
2921 2897
            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2922
-            { $X = $X1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; }
2923
-           else 
2898
+            { $X = $X1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLELEFT; } else 
2924 2899
             { $X = $X2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_MIDDLERIGHT; }
2925 2900
            
2926 2901
            $this->drawText($X,$YPos,$Caption,$CaptionSettings);
@@ -2949,8 +2924,7 @@  discard block
 block discarded – undo
2949 2924
          if ( $WriteCaption )
2950 2925
           {
2951 2926
            if ( $CaptionAlign == CAPTION_LEFT_TOP )
2952
-            { $Y = $Y1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; }
2953
-           else 
2927
+            { $Y = $Y1 + $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE; } else 
2954 2928
             { $Y = $Y2 - $CaptionOffset; $CaptionSettings["Align"] = TEXT_ALIGN_BOTTOMMIDDLE; }
2955 2929
 
2956 2930
            $CaptionSettings["Align"] = TEXT_ALIGN_TOPMIDDLE;
@@ -3028,8 +3002,7 @@  discard block
 block discarded – undo
3028 3002
 
3029 3003
        $this->Shadow = $RestoreShadow;
3030 3004
        return(array("Y1"=>$YPos1,"Y2"=>$YPos2));
3031
-      }
3032
-     elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
3005
+      } elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
3033 3006
       {
3034 3007
        $YPos1 = $this->GraphAreaY1 + $AbscissaMargin;
3035 3008
        $YPos2 = $this->GraphAreaY2 - $AbscissaMargin;
@@ -3102,26 +3075,24 @@  discard block
 block discarded – undo
3102 3075
        $Step        = $Height / $ScaleHeight;
3103 3076
 
3104 3077
        if ( $ReturnOnly0Height )
3105
-        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } }
3106
-       else
3078
+        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } } else
3107 3079
         { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaY2 - $Data["Axis"][$AxisID]["Margin"] - ($Step * ($Value-$Data["Axis"][$AxisID]["ScaleMin"])); } } }
3108
-      }
3109
-     else
3080
+      } else
3110 3081
       {
3111 3082
        $Width      = ($this->GraphAreaX2 - $this->GraphAreaX1) - $Data["Axis"][$AxisID]["Margin"]*2;
3112 3083
        $ScaleWidth = $Data["Axis"][$AxisID]["ScaleMax"] - $Data["Axis"][$AxisID]["ScaleMin"];
3113 3084
        $Step       = $Width / $ScaleWidth;
3114 3085
 
3115 3086
        if ( $ReturnOnly0Height )
3116
-        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } }
3117
-       else
3087
+        { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $Step * $Value; } } } else
3118 3088
         { foreach($Values as $Key => $Value) { if ( $Value == VOID ) { $Result[] = VOID; } else { $Result[] = $this->GraphAreaX1 + $Data["Axis"][$AxisID]["Margin"] + ($Step * ($Value-$Data["Axis"][$AxisID]["ScaleMin"])); } } }
3119 3089
       }
3120 3090
 
3121
-     if ( count($Result) == 1 )
3122
-      return($Result[0]);
3123
-     else
3124
-      return($Result);
3091
+     if ( count($Result) == 1 ) {
3092
+           return($Result[0]);
3093
+     } else {
3094
+           return($Result);
3095
+     }
3125 3096
     }
3126 3097
 
3127 3098
    /* Format the axis values */
@@ -3143,12 +3114,14 @@  discard block
 block discarded – undo
3143 3114
 
3144 3115
      if ( $Mode == AXIS_FORMAT_METRIC )
3145 3116
       {
3146
-       if (abs($Value) > 1000000000)
3147
-        return(round($Value/1000000000,$Format)."g".$Unit);
3148
-       if (abs($Value) > 1000000)
3149
-        return(round($Value/1000000,$Format)."m".$Unit);
3150
-       elseif (abs($Value) >= 1000)
3151
-        return(round($Value/1000,$Format)."k".$Unit);
3117
+       if (abs($Value) > 1000000000) {
3118
+               return(round($Value/1000000000,$Format)."g".$Unit);
3119
+       }
3120
+       if (abs($Value) > 1000000) {
3121
+               return(round($Value/1000000,$Format)."m".$Unit);
3122
+       } elseif (abs($Value) >= 1000) {
3123
+               return(round($Value/1000,$Format)."k".$Unit);
3124
+       }
3152 3125
        
3153 3126
       }
3154 3127
      return($Value.$Unit);
@@ -3264,8 +3237,7 @@  discard block
 block discarded – undo
3264 3237
 
3265 3238
              $this->drawText($XPos+$XOffset,$YPos-$DisplayOffset+$YOffset,$Label,$CaptionSettings);
3266 3239
             }
3267
-          }
3268
-         else
3240
+          } else
3269 3241
           {
3270 3242
            $XStep       = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs;
3271 3243
            $X           = $this->GraphAreaY1 + $XMargin;
@@ -3351,8 +3323,7 @@  discard block
 block discarded – undo
3351 3323
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"];
3352 3324
          if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
3353 3325
          if ( isset($Serie["Picture"]) )
3354
-          { $Picture = $Serie["Picture"]; list($PicWidth,$PicHeight,$PicType) = $this->getPicInfo($Picture); }
3355
-         else { $Picture = NULL; $PicOffset = 0; }
3326
+          { $Picture = $Serie["Picture"]; list($PicWidth,$PicHeight,$PicType) = $this->getPicInfo($Picture); } else { $Picture = NULL; $PicOffset = 0; }
3356 3327
 
3357 3328
          if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3358 3329
 
@@ -3377,22 +3348,21 @@  discard block
 block discarded – undo
3377 3348
            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3378 3349
            foreach($PosArray as $Key => $Y)
3379 3350
             {
3380
-             if ( $DisplayValues ) 
3381
-              $this->drawText($X,$Y-$DisplayOffset-$SerieWeight-$BorderSize-$PicOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3351
+             if ( $DisplayValues ) {
3352
+                           $this->drawText($X,$Y-$DisplayOffset-$SerieWeight-$BorderSize-$PicOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3353
+             }
3382 3354
 
3383 3355
              if ( $Y != VOID )
3384 3356
               {
3385 3357
                if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3386 3358
 
3387 3359
                if ( $Picture != NULL )
3388
-                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3389
-               else
3360
+                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); } else
3390 3361
                 { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3391 3362
               }
3392 3363
              $X = $X + $XStep;
3393 3364
             }
3394
-          }
3395
-         else
3365
+          } else
3396 3366
           {
3397 3367
            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3398 3368
            if ( $Picture != NULL ) { $PicOffset = $PicWidth / 2; $SerieWeight = 0; }
@@ -3401,16 +3371,16 @@  discard block
 block discarded – undo
3401 3371
            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3402 3372
            foreach($PosArray as $Key => $X)
3403 3373
             {
3404
-             if ( $DisplayValues ) 
3405
-              $this->drawText($X+$DisplayOffset+$SerieWeight+$BorderSize+$PicOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3374
+             if ( $DisplayValues ) {
3375
+                           $this->drawText($X+$DisplayOffset+$SerieWeight+$BorderSize+$PicOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3376
+             }
3406 3377
 
3407 3378
              if ( $X != VOID )
3408 3379
               {
3409 3380
                if ( $RecordImageMap ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$SerieWeight,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3410 3381
 
3411 3382
                if ( $Picture != NULL )
3412
-                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); }
3413
-               else
3383
+                { $this->drawFromPicture($PicType,$Picture,$X-$PicWidth/2,$Y-$PicHeight/2); } else
3414 3384
                 { $this->drawShape($X,$Y,$Shape,$SerieWeight,$PlotBorder,$BorderSize,$R,$G,$B,$Alpha,$BorderR,$BorderG,$BorderB,$BorderAlpha); }
3415 3385
               }
3416 3386
              $Y = $Y + $YStep;
@@ -3447,10 +3417,11 @@  discard block
 block discarded – undo
3447 3417
         {
3448 3418
          $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"]; $Alpha = $Serie["Color"]["Alpha"]; $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
3449 3419
 
3450
-         if ( $BreakR == NULL )
3451
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks);
3452
-         else
3453
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3420
+         if ( $BreakR == NULL ) {
3421
+                   $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks);
3422
+         } else {
3423
+                   $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3424
+         }
3454 3425
 
3455 3426
          if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3456 3427
 
@@ -3475,8 +3446,9 @@  discard block
 block discarded – undo
3475 3446
            $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3476 3447
            foreach($PosArray as $Key => $Y)
3477 3448
             {
3478
-             if ( $DisplayValues ) 
3479
-              $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3449
+             if ( $DisplayValues ) {
3450
+                           $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3451
+             }
3480 3452
 	
3481 3453
              if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3482 3454
 
@@ -3486,8 +3458,9 @@  discard block
 block discarded – undo
3486 3458
              if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3487 3459
               { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3488 3460
 
3489
-             if ( $Y != VOID )
3490
-              $WayPoints[] = array($X,$Y);
3461
+             if ( $Y != VOID ) {
3462
+                           $WayPoints[] = array($X,$Y);
3463
+             }
3491 3464
 
3492 3465
              if ( $Y != VOID ) { $LastGoodY = $Y; $LastGoodX = $X; }
3493 3466
              if ( $Y == VOID ) { $Y = NULL; }
@@ -3496,8 +3469,7 @@  discard block
 block discarded – undo
3496 3469
              $X = $X + $XStep;
3497 3470
             }
3498 3471
            $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3499
-          }
3500
-         else
3472
+          } else
3501 3473
           {
3502 3474
            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3503 3475
            $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
@@ -3507,8 +3479,9 @@  discard block
 block discarded – undo
3507 3479
            $LastGoodY = NULL; $LastGoodX = NULL; $LastX = 1; $LastY = 1;
3508 3480
            foreach($PosArray as $Key => $X)
3509 3481
             {
3510
-             if ( $DisplayValues ) 
3511
-              $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3482
+             if ( $DisplayValues ) {
3483
+                           $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3484
+             }
3512 3485
 
3513 3486
              if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3514 3487
 
@@ -3518,8 +3491,9 @@  discard block
 block discarded – undo
3518 3491
              if ( $X != VOID && $LastX == NULL && $LastGoodX != NULL && !$BreakVoid )
3519 3492
               { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); }
3520 3493
 
3521
-             if ( $X != VOID )
3522
-              $WayPoints[] = array($X,$Y);
3494
+             if ( $X != VOID ) {
3495
+                           $WayPoints[] = array($X,$Y);
3496
+             }
3523 3497
 
3524 3498
              if ( $X != VOID ) { $LastGoodX = $X; $LastGoodY = $Y; }
3525 3499
              if ( $X == VOID ) { $X = NULL; }
@@ -3589,8 +3563,9 @@  discard block
 block discarded – undo
3589 3563
            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3590 3564
            foreach($PosArray as $Key => $Y)
3591 3565
             {
3592
-             if ( $DisplayValues ) 
3593
-              $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3566
+             if ( $DisplayValues ) {
3567
+                           $this->drawText($X,$Y-$DisplayOffset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3568
+             }
3594 3569
 
3595 3570
              if ( $Y == VOID )
3596 3571
               {
@@ -3614,9 +3589,10 @@  discard block
 block discarded – undo
3614 3589
                 }
3615 3590
 
3616 3591
                $WayPoints = "";
3617
-              }
3618
-             else
3619
-              $WayPoints[] = array($X,$Y-.5); /* -.5 for AA visual fix */
3592
+              } else {
3593
+                           $WayPoints[] = array($X,$Y-.5);
3594
+             }
3595
+             /* -.5 for AA visual fix */
3620 3596
 
3621 3597
              $X = $X + $XStep;
3622 3598
             }
@@ -3638,8 +3614,7 @@  discard block
 block discarded – undo
3638 3614
               }
3639 3615
              $this->drawSpline($WayPoints,array("Force"=>$Force,"R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks));
3640 3616
             }
3641
-          }
3642
-         else
3617
+          } else
3643 3618
           {
3644 3619
            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3645 3620
            $Y     = $this->GraphAreaY1 + $XMargin; $WayPoints = "";
@@ -3652,8 +3627,9 @@  discard block
 block discarded – undo
3652 3627
            if ( !is_array($PosArray) ) { $Value = $PosArray; $PosArray = ""; $PosArray[0] = $Value; }
3653 3628
            foreach($PosArray as $Key => $X)
3654 3629
             {
3655
-             if ( $DisplayValues ) 
3656
-              $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3630
+             if ( $DisplayValues ) {
3631
+                           $this->drawText($X+$DisplayOffset,$Y,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("Angle"=>270,"R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));
3632
+             }
3657 3633
 
3658 3634
              if ( $X == VOID )
3659 3635
               {
@@ -3677,9 +3653,9 @@  discard block
 block discarded – undo
3677 3653
                 }
3678 3654
 
3679 3655
                $WayPoints = "";
3680
-              }
3681
-             else
3682
-              $WayPoints[] = array($X,$Y);
3656
+              } else {
3657
+                           $WayPoints[] = array($X,$Y);
3658
+             }
3683 3659
 
3684 3660
              $Y = $Y + $YStep;
3685 3661
             }
@@ -3742,10 +3718,11 @@  discard block
 block discarded – undo
3742 3718
          if ( $ForceColor )
3743 3719
           { $R = $ForceR; $G = $ForceG; $B = $ForceB; $Alpha = $ForceAlpha; }
3744 3720
 
3745
-         if ( $BreakR == NULL )
3746
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3747
-         else
3748
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3721
+         if ( $BreakR == NULL ) {
3722
+                   $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3723
+         } else {
3724
+                   $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3725
+         }
3749 3726
 
3750 3727
          if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3751 3728
 
@@ -3777,8 +3754,9 @@  discard block
 block discarded – undo
3777 3754
 
3778 3755
              if ( $RecordImageMap && $Y != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3779 3756
 
3780
-             if ( $Y != VOID && $LastX != NULL && $LastY != NULL )
3781
-              $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3757
+             if ( $Y != VOID && $LastX != NULL && $LastY != NULL ) {
3758
+                           $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3759
+             }
3782 3760
 
3783 3761
              if ( $Y != VOID && $LastY == NULL && $LastGoodY != NULL && !$BreakVoid )
3784 3762
               { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
@@ -3789,8 +3767,7 @@  discard block
 block discarded – undo
3789 3767
              $LastX = $X; $LastY = $Y;
3790 3768
              $X = $X + $XStep;
3791 3769
             }
3792
-          }
3793
-         else
3770
+          } else
3794 3771
           {
3795 3772
            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3796 3773
            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
@@ -3804,8 +3781,9 @@  discard block
 block discarded – undo
3804 3781
 
3805 3782
              if ( $RecordImageMap && $X != VOID ) { $this->addToImageMap("CIRCLE",floor($X).",".floor($Y).",".$ImageMapPlotSize,$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3806 3783
 
3807
-             if ( $X != VOID && $LastX != NULL && $LastY != NULL )
3808
-              $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3784
+             if ( $X != VOID && $LastX != NULL && $LastY != NULL ) {
3785
+                           $this->drawLine($LastX,$LastY,$X,$Y,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight));
3786
+             }
3809 3787
 
3810 3788
              if ( $X != VOID && $LastX == NULL && $LastGoodY != NULL && !$BreakVoid )
3811 3789
               { $this->drawLine($LastGoodX,$LastGoodY,$X,$Y,$BreakSettings); $LastGoodY = NULL; }
@@ -3879,8 +3857,7 @@  discard block
 block discarded – undo
3879 3857
          $this->drawLine($BoundsA[$i],$BoundsA[$i+1],$BoundsA[$i+2],$BoundsA[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3880 3858
          $this->drawLine($BoundsB[$i],$BoundsB[$i+1],$BoundsB[$i+2],$BoundsB[$i+3],array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha,"Ticks"=>$LineTicks));
3881 3859
         }
3882
-      }
3883
-     else
3860
+      } else
3884 3861
       {
3885 3862
        if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
3886 3863
        $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
@@ -3940,10 +3917,11 @@  discard block
 block discarded – undo
3940 3917
 
3941 3918
          if (isset($Serie["Description"])) { $SerieDescription = $Serie["Description"]; } else { $SerieDescription = $SerieName; }
3942 3919
 
3943
-         if ( $BreakR == NULL )
3944
-          $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3945
-         else
3946
-          $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3920
+         if ( $BreakR == NULL ) {
3921
+                   $BreakSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3922
+         } else {
3923
+                   $BreakSettings = array("R"=>$BreakR,"G"=>$BreakG,"B"=>$BreakB,"Alpha"=>$Alpha,"Ticks"=>$VoidTicks,"Weight"=>$Weight);
3924
+         }
3947 3925
 
3948 3926
          if ( $DisplayColor == DISPLAY_AUTO ) { $DisplayR = $R; $DisplayG = $G; $DisplayB = $B; }
3949 3927
 
@@ -3980,8 +3958,7 @@  discard block
 block discarded – undo
3980 3958
                 {
3981 3959
                  $this->drawLine($X,$Y,$X+$XStep,$Y,$Color);
3982 3960
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$XStep+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3983
-                }
3984
-               else
3961
+                } else
3985 3962
                 { if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); } }
3986 3963
               }
3987 3964
 
@@ -3991,8 +3968,7 @@  discard block
 block discarded – undo
3991 3968
                 {
3992 3969
                  $this->drawLine($LastGoodX+$XStep,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3993 3970
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX+$XStep-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
3994
-                }
3995
-               else
3971
+                } else
3996 3972
                 {
3997 3973
                  $this->drawLine($LastGoodX,$LastGoodY,$X,$LastGoodY,$BreakSettings);
3998 3974
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastGoodX-$ImageMapPlotSize).",".floor($LastGoodY-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($LastGoodY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
@@ -4000,8 +3976,7 @@  discard block
 block discarded – undo
4000 3976
 
4001 3977
                $this->drawLine($X,$LastGoodY,$X,$Y,$BreakSettings);
4002 3978
                $LastGoodY = NULL;
4003
-              }
4004
-             elseif( !$BreakVoid && $LastGoodY == NULL && $Y != VOID )
3979
+              } elseif( !$BreakVoid && $LastGoodY == NULL && $Y != VOID )
4005 3980
               {
4006 3981
               $this->drawLine($this->GraphAreaX1 + $XMargin,$Y,$X,$Y,$BreakSettings);
4007 3982
                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($this->GraphAreaX1+$XMargin-$ImageMapPlotSize).",".floor($Y-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
@@ -4020,8 +3995,7 @@  discard block
 block discarded – undo
4020 3995
              $this->drawLine($LastX,$LastY,$this->GraphAreaX2 - $XMargin,$LastY,$Color);
4021 3996
              if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($LastX-$ImageMapPlotSize).",".floor($LastY-$ImageMapPlotSize).",".floor($this->GraphAreaX2-$XMargin+$ImageMapPlotSize).",".floor($LastY+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4022 3997
             }
4023
-          }
4024
-         else
3998
+          } else
4025 3999
           {
4026 4000
            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
4027 4001
            $Y = $this->GraphAreaY1 + $XMargin; $LastX = NULL; $LastY = NULL;
@@ -4054,8 +4028,7 @@  discard block
 block discarded – undo
4054 4028
 
4055 4029
                $this->drawLine($LastGoodX,$Y,$X,$Y,$BreakSettings);
4056 4030
                $LastGoodY = NULL;
4057
-              }
4058
-             elseif ( $X != VOID && $LastGoodY == NULL && !$BreakVoid )
4031
+              } elseif ( $X != VOID && $LastGoodY == NULL && !$BreakVoid )
4059 4032
               {
4060 4033
                $this->drawLine($X,$this->GraphAreaY1 + $XMargin,$X,$Y,$BreakSettings);
4061 4034
                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X-$ImageMapPlotSize).",".floor($this->GraphAreaY1+$XMargin-$ImageMapPlotSize).",".floor($X+$ImageMapPlotSize).",".floor($Y+$ImageMapPlotSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
@@ -4161,13 +4134,11 @@  discard block
 block discarded – undo
4161 4134
             {
4162 4135
              $Points[] = $LastX+$XStep/2; $Points[] = $LastY;
4163 4136
              $Points[] = $LastX+$XStep/2; $Points[] = $YZero;
4164
-            }
4165
-           else
4137
+            } else
4166 4138
             { $Points[] = $LastX; $Points[] = $YZero; }
4167 4139
 
4168 4140
            $this->drawPolygon($Points,$Color);
4169
-          }
4170
-         else
4141
+          } else
4171 4142
           {
4172 4143
            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4173 4144
            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
@@ -4209,8 +4180,7 @@  discard block
 block discarded – undo
4209 4180
             {
4210 4181
              $Points[] = $LastX; $Points[] = $LastY+$YStep/2;
4211 4182
              $Points[] = $YZero; $Points[] = $LastY+$YStep/2;
4212
-            }
4213
-           else
4183
+            } else
4214 4184
             { $Points[] = $YZero; $Points[] = $LastY; }
4215 4185
 
4216 4186
            $this->drawPolygon($Points,$Color);
@@ -4286,14 +4256,12 @@  discard block
 block discarded – undo
4286 4256
              if ( $Y == VOID && isset($Areas[$AreaID]) )
4287 4257
               {
4288 4258
                if($LastX == NULL)
4289
-                { $Areas[$AreaID][] = $X; }
4290
-               else
4259
+                { $Areas[$AreaID][] = $X; } else
4291 4260
                 { $Areas[$AreaID][] = $LastX; }
4292 4261
 
4293 4262
                if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaY2-1; }
4294 4263
                $AreaID++;
4295
-              }
4296
-             elseif ($Y != VOID)
4264
+              } elseif ($Y != VOID)
4297 4265
               {
4298 4266
                if ( !isset($Areas[$AreaID]) )
4299 4267
                 {
@@ -4321,23 +4289,23 @@  discard block
 block discarded – undo
4321 4289
                foreach($Points as $Key2 => $Value)
4322 4290
                 {
4323 4291
                  if ( $Key2 % 2 == 0 )
4324
-                  { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4325
-                 else
4292
+                  { $ShadowArea[$Key][] = $Value + $this->ShadowX; } else
4326 4293
                   { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4327 4294
                 }
4328 4295
               }              
4329 4296
 
4330
-             foreach($ShadowArea as $Key => $Points)
4331
-              $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4297
+             foreach($ShadowArea as $Key => $Points) {
4298
+                           $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4299
+             }
4332 4300
             }
4333 4301
 
4334 4302
            $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4335 4303
            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4336 4304
 
4337
-           foreach($Areas as $Key => $Points)
4338
-            $this->drawPolygonChart($Points,$Color);
4339
-          }
4340
-         else
4305
+           foreach($Areas as $Key => $Points) {
4306
+                       $this->drawPolygonChart($Points,$Color);
4307
+           }
4308
+          } else
4341 4309
           {
4342 4310
            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4343 4311
            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
@@ -4363,13 +4331,11 @@  discard block
 block discarded – undo
4363 4331
                if ( $AroundZero ) { $Areas[$AreaID][] = $YZero; } else { $Areas[$AreaID][] = $this->GraphAreaX1+1; }
4364 4332
 
4365 4333
                if($LastY == NULL)
4366
-                { $Areas[$AreaID][] = $Y; }
4367
-               else
4334
+                { $Areas[$AreaID][] = $Y; } else
4368 4335
                 { $Areas[$AreaID][] = $LastY; }
4369 4336
 
4370 4337
                $AreaID++;
4371
-              }
4372
-             elseif ($X != VOID)
4338
+              } elseif ($X != VOID)
4373 4339
               {
4374 4340
                if ( !isset($Areas[$AreaID]) )
4375 4341
                 {
@@ -4397,21 +4363,22 @@  discard block
 block discarded – undo
4397 4363
                foreach($Points as $Key2 => $Value)
4398 4364
                 {
4399 4365
                  if ( $Key2 % 2 == 0 )
4400
-                  { $ShadowArea[$Key][] = $Value + $this->ShadowX; }
4401
-                 else
4366
+                  { $ShadowArea[$Key][] = $Value + $this->ShadowX; } else
4402 4367
                   { $ShadowArea[$Key][] = $Value + $this->ShadowY; }
4403 4368
                 }
4404 4369
               }              
4405 4370
 
4406
-             foreach($ShadowArea as $Key => $Points)
4407
-              $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4371
+             foreach($ShadowArea as $Key => $Points) {
4372
+                           $this->drawPolygonChart($Points,array("R"=>$this->ShadowR,"G"=>$this->ShadowG,"B"=>$this->ShadowB,"Alpha"=>$this->Shadowa));
4373
+             }
4408 4374
             }
4409 4375
 
4410 4376
            $Alpha = $ForceTransparency != NULL ? $ForceTransparency : $Alpha;
4411 4377
            $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Threshold"=>$Threshold);
4412 4378
 
4413
-           foreach($Areas as $Key => $Points)
4414
-            $this->drawPolygonChart($Points,$Color);
4379
+           foreach($Areas as $Key => $Points) {
4380
+                       $this->drawPolygonChart($Points,$Color);
4381
+           }
4415 4382
           }
4416 4383
         }
4417 4384
       }
@@ -4497,8 +4464,7 @@  discard block
 block discarded – undo
4497 4464
          $PosArray = $this->scaleComputeY($Serie["Data"],array("AxisID"=>$Serie["Axis"]));
4498 4465
 
4499 4466
          if ( $Floating0Value != NULL )
4500
-          { $YZero = $this->scaleComputeY($Floating0Value,array("AxisID"=>$Serie["Axis"])); }
4501
-         else
4467
+          { $YZero = $this->scaleComputeY($Floating0Value,array("AxisID"=>$Serie["Axis"])); } else
4502 4468
           { $YZero = $this->scaleComputeY(0,array("AxisID"=>$Serie["Axis"])); }
4503 4469
 
4504 4470
          if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
@@ -4527,8 +4493,7 @@  discard block
 block discarded – undo
4527 4493
              if ( $Floating0Serie != NULL )
4528 4494
               {
4529 4495
                if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4530
-                { $Value = $Data["Series"][$Floating0Serie]["Data"][$Key]; }
4531
-               else
4496
+                { $Value = $Data["Series"][$Floating0Serie]["Data"][$Key]; } else
4532 4497
                 { $Value = 0; }
4533 4498
 
4534 4499
                $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
@@ -4549,14 +4514,13 @@  discard block
 block discarded – undo
4549 4514
                 {
4550 4515
                  $this->drawLine($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y1,$Color);
4551 4516
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1-1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y1+1),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4552
-                }
4553
-               else
4517
+                } else
4554 4518
                 {
4555 4519
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset+$XSpace).",".floor($Y1).",".floor($X+$XOffset+$XSize-$XSpace).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4556 4520
 
4557
-                 if ( $Rounded )
4558
-                  $this->drawRoundedFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$RoundRadius,$Color);
4559
-                 else
4521
+                 if ( $Rounded ) {
4522
+                                   $this->drawRoundedFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$RoundRadius,$Color);
4523
+                 } else
4560 4524
                   {
4561 4525
                    $this->drawFilledRectangle($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,$Color);
4562 4526
 
@@ -4568,14 +4532,14 @@  discard block
 block discarded – undo
4568 4532
 
4569 4533
                      if ( $GradientMode == GRADIENT_SIMPLE )
4570 4534
                       {
4571
-                       if ( $Serie["Data"][$Key] >= 0 )
4572
-                        $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4573
-                       else
4574
-                        $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4535
+                       if ( $Serie["Data"][$Key] >= 0 ) {
4536
+                                               $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4537
+                       } else {
4538
+                                               $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4539
+                       }
4575 4540
 
4576 4541
                        $this->drawGradientArea($X+$XOffset+$XSpace,$Y1,$X+$XOffset+$XSize-$XSpace,$Y2,DIRECTION_VERTICAL,$GradienColor);
4577
-                      }
4578
-                     elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4542
+                      } elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4579 4543
                       {
4580 4544
                        $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4581 4545
                        $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
@@ -4614,8 +4578,7 @@  discard block
 block discarded – undo
4614 4578
                    $CenterY = ($Y2-$Y1)/2 + $Y1;
4615 4579
 
4616 4580
                    $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"Angle"=>90));
4617
-                  }
4618
-                 else
4581
+                  } else
4619 4582
                   {
4620 4583
                    if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_BOTTOMMIDDLE; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_TOPMIDDLE; $Offset = -$DisplayOffset; }
4621 4584
                    $this->drawText($X+$XOffset+$XSize/2,$Y2-$Offset,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
@@ -4628,8 +4591,7 @@  discard block
 block discarded – undo
4628 4591
              $X = $X + $XStep;
4629 4592
              $ID++;
4630 4593
             }
4631
-          }
4632
-         else
4594
+          } else
4633 4595
           {
4634 4596
            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4635 4597
            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
@@ -4655,9 +4617,9 @@  discard block
 block discarded – undo
4655 4617
             {
4656 4618
              if ( $Floating0Serie != NULL )
4657 4619
               {
4658
-               if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) )
4659
-                $Value = $Data["Series"][$Floating0Serie]["Data"][$Key];
4660
-               else { $Value = 0; }
4620
+               if ( isset($Data["Series"][$Floating0Serie]["Data"][$Key]) ) {
4621
+                               $Value = $Data["Series"][$Floating0Serie]["Data"][$Key];
4622
+               } else { $Value = 0; }
4661 4623
 
4662 4624
                $YZero = $this->scaleComputeY($Value,array("AxisID"=>$Serie["Axis"]));
4663 4625
                if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
@@ -4676,14 +4638,13 @@  discard block
 block discarded – undo
4676 4638
                 {
4677 4639
                  $this->drawLine($X1,$Y+$YOffset+$YSpace,$X1,$Y+$YOffset+$YSize-$YSpace,$Color);
4678 4640
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1-1).",".floor($Y+$YOffset+$YSpace).",".floor($X1+1).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4679
-                }
4680
-               else
4641
+                } else
4681 4642
                 {
4682 4643
                  if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1).",".floor($Y+$YOffset+$YSpace).",".floor($X2).",".floor($Y+$YOffset+$YSize-$YSpace),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4683 4644
 
4684
-                 if ( $Rounded )
4685
-                  $this->drawRoundedFilledRectangle($X1+1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$RoundRadius,$Color);
4686
-                 else
4645
+                 if ( $Rounded ) {
4646
+                                   $this->drawRoundedFilledRectangle($X1+1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$RoundRadius,$Color);
4647
+                 } else
4687 4648
                   {
4688 4649
                    $this->drawFilledRectangle($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,$Color);
4689 4650
 
@@ -4695,14 +4656,14 @@  discard block
 block discarded – undo
4695 4656
 
4696 4657
                      if ( $GradientMode == GRADIENT_SIMPLE )
4697 4658
                       {
4698
-                       if ( $Serie["Data"][$Key] >= 0 )
4699
-                        $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4700
-                       else
4701
-                        $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4659
+                       if ( $Serie["Data"][$Key] >= 0 ) {
4660
+                                               $GradienColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4661
+                       } else {
4662
+                                               $GradienColor = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4663
+                       }
4702 4664
 
4703 4665
                        $this->drawGradientArea($X1,$Y+$YOffset+$YSpace,$X2,$Y+$YOffset+$YSize-$YSpace,DIRECTION_HORIZONTAL,$GradienColor);
4704
-                      }
4705
-                     elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4666
+                      } elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4706 4667
                       {
4707 4668
                        $GradienColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4708 4669
                        $GradienColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
@@ -4741,8 +4702,7 @@  discard block
 block discarded – undo
4741 4702
                    $CenterY = (($Y+$YOffset+$YSize-$YSpace)-($Y+$YOffset+$YSpace))/2 + ($Y+$YOffset+$YSpace);
4742 4703
 
4743 4704
                    $this->drawText($CenterX,$CenterY,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize));
4744
-                  }
4745
-                 else
4705
+                  } else
4746 4706
                   {
4747 4707
                    if ( $Serie["Data"][$Key] >= 0 ) { $Align = TEXT_ALIGN_MIDDLELEFT; $Offset = $DisplayOffset; } else { $Align = TEXT_ALIGN_MIDDLERIGHT; $Offset = -$DisplayOffset; }
4748 4708
                    $this->drawText($X2+$Offset,$Y+$YOffset+$YSize/2,$Caption,array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Align"=>$Align,"FontSize"=>$DisplaySize));
@@ -4856,9 +4816,9 @@  discard block
 block discarded – undo
4856 4816
 
4857 4817
                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X+$XOffset).",".floor($Y1-$YSpaceUp+$YSpaceDown).",".floor($X+$XOffset+$XSize).",".floor($Y2),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4858 4818
 
4859
-               if ( $Rounded )
4860
-                $this->drawRoundedFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$RoundRadius,$Color);
4861
-               else
4819
+               if ( $Rounded ) {
4820
+                               $this->drawRoundedFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$RoundRadius,$Color);
4821
+               } else
4862 4822
                 {
4863 4823
                  $this->drawFilledRectangle($X+$XOffset,$Y1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2,$Color);
4864 4824
 
@@ -4872,8 +4832,7 @@  discard block
 block discarded – undo
4872 4832
                     {
4873 4833
                      $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4874 4834
                      $this->drawGradientArea($X+$XOffset,$Y1-1-$YSpaceUp+$YSpaceDown,$X+$XOffset+$XSize,$Y2+1,DIRECTION_VERTICAL,$GradientColor);
4875
-                    }
4876
-                   elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4835
+                    } elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4877 4836
                     {
4878 4837
                      $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4879 4838
                      $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
@@ -4911,8 +4870,9 @@  discard block
 block discarded – undo
4911 4870
 
4912 4871
                  if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
4913 4872
                   {
4914
-                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
4915
-                    $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4873
+                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  ) {
4874
+                                       $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4875
+                   }
4916 4876
                   }
4917 4877
                 }
4918 4878
 
@@ -4921,8 +4881,7 @@  discard block
 block discarded – undo
4921 4881
 
4922 4882
              $X = $X + $XStep;
4923 4883
             }
4924
-          }
4925
-         else
4884
+          } else
4926 4885
           {
4927 4886
            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
4928 4887
            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
@@ -4951,9 +4910,9 @@  discard block
 block discarded – undo
4951 4910
 
4952 4911
                if ( $RecordImageMap ) { $this->addToImageMap("RECT",floor($X1+$XSpaceLeft).",".floor($Y+$YOffset).",".floor($X2-$XSpaceRight).",".floor($Y+$YOffset+$YSize),$this->toHTMLColor($R,$G,$B),$SerieDescription,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit)); }
4953 4912
 
4954
-               if ( $Rounded )
4955
-                $this->drawRoundedFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$RoundRadius,$Color);
4956
-               else
4913
+               if ( $Rounded ) {
4914
+                               $this->drawRoundedFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$RoundRadius,$Color);
4915
+               } else
4957 4916
                 {
4958 4917
                  $this->drawFilledRectangle($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,$Color);
4959 4918
 
@@ -4967,8 +4926,7 @@  discard block
 block discarded – undo
4967 4926
                     {
4968 4927
                      $GradientColor = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
4969 4928
                      $this->drawGradientArea($X1+$XSpaceLeft,$Y+$YOffset,$X2-$XSpaceRight,$Y+$YOffset+$YSize,DIRECTION_HORIZONTAL,$GradientColor);
4970
-                    }
4971
-                   elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4929
+                    } elseif ( $GradientMode == GRADIENT_EFFECT_CAN )
4972 4930
                     {
4973 4931
                      $GradientColor1 = array("StartR"=>$GradientEndR,"StartG"=>$GradientEndG,"StartB"=>$GradientEndB,"EndR"=>$GradientStartR,"EndG"=>$GradientStartG,"EndB"=>$GradientStartB,"Alpha"=>$GradientAlpha);
4974 4932
                      $GradientColor2 = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB,"Alpha"=>$GradientAlpha);
@@ -5005,8 +4963,9 @@  discard block
 block discarded – undo
5005 4963
 
5006 4964
                  if ( $DisplayOrientation == ORIENTATION_VERTICAL || ( $DisplayOrientation == ORIENTATION_AUTO && !$Done) )
5007 4965
                   {
5008
-                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  )
5009
-                    $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4966
+                   if ( $TxtHeight < $BarWidth && $TxtWidth < $BarHeight  ) {
4967
+                                       $this->drawText($XCenter,$YCenter,$this->scaleFormat($Serie["Data"][$Key],$Mode,$Format,$Unit),array("R"=>$DisplayR,"G"=>$DisplayG,"B"=>$DisplayB,"Angle"=>90,"Align"=>TEXT_ALIGN_MIDDLEMIDDLE,"FontSize"=>$DisplaySize,"FontName"=>$DisplayFont));
4968
+                   }
5010 4969
                   }
5011 4970
                 }
5012 4971
 
@@ -5064,8 +5023,7 @@  discard block
 block discarded – undo
5064 5023
            if ( !isset($OverallOffset[$Key]) || !isset($OverallOffset[$Key][$Sign]) ) { $OverallOffset[$Key][$Sign] = 0; }
5065 5024
 
5066 5025
            if ( $Sign == "+" )
5067
-            { $Data["Series"][$SerieName]["Data"][$Key] = $Value + $OverallOffset[$Key][$Sign]; }
5068
-           else
5026
+            { $Data["Series"][$SerieName]["Data"][$Key] = $Value + $OverallOffset[$Key][$Sign]; } else
5069 5027
             { $Data["Series"][$SerieName]["Data"][$Key] = $Value - $OverallOffset[$Key][$Sign]; }
5070 5028
 
5071 5029
            $OverallOffset[$Key][$Sign] = $OverallOffset[$Key][$Sign] + abs($Value);
@@ -5085,17 +5043,19 @@  discard block
 block discarded – undo
5085 5043
 
5086 5044
          $Color = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha);
5087 5045
 
5088
-         if ( $LineSurrounding != NULL )
5089
-          $LineColor = array("R"=>$R+$LineSurrounding,"G"=>$G+$LineSurrounding,"B"=>$B+$LineSurrounding,"Alpha"=>$Alpha);
5090
-         elseif ( $LineR != VOID )
5091
-          $LineColor = array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha);
5092
-         else
5093
-          $LineColor = $Color;
5046
+         if ( $LineSurrounding != NULL ) {
5047
+                   $LineColor = array("R"=>$R+$LineSurrounding,"G"=>$G+$LineSurrounding,"B"=>$B+$LineSurrounding,"Alpha"=>$Alpha);
5048
+         } elseif ( $LineR != VOID ) {
5049
+                   $LineColor = array("R"=>$LineR,"G"=>$LineG,"B"=>$LineB,"Alpha"=>$LineAlpha);
5050
+         } else {
5051
+                   $LineColor = $Color;
5052
+         }
5094 5053
 
5095
-         if ( $PlotBorderSurrounding != NULL )
5096
-          $PlotBorderColor = array("R"=>$R+$PlotBorderSurrounding,"G"=>$G+$PlotBorderSurrounding,"B"=>$B+$PlotBorderSurrounding,"Alpha"=>$PlotBorderAlpha);
5097
-         else
5098
-          $PlotBorderColor = array("R"=>$PlotBorderR,"G"=>$PlotBorderG,"B"=>$PlotBorderB,"Alpha"=>$PlotBorderAlpha);
5054
+         if ( $PlotBorderSurrounding != NULL ) {
5055
+                   $PlotBorderColor = array("R"=>$R+$PlotBorderSurrounding,"G"=>$G+$PlotBorderSurrounding,"B"=>$B+$PlotBorderSurrounding,"Alpha"=>$PlotBorderAlpha);
5056
+         } else {
5057
+                   $PlotBorderColor = array("R"=>$PlotBorderR,"G"=>$PlotBorderG,"B"=>$PlotBorderB,"Alpha"=>$PlotBorderAlpha);
5058
+         }
5099 5059
 
5100 5060
          $AxisID	= $Serie["Axis"];
5101 5061
          $Mode		= $Data["Axis"][$AxisID]["Display"];
@@ -5140,8 +5100,7 @@  discard block
 block discarded – undo
5140 5100
               }
5141 5101
             }
5142 5102
            $this->Shadow = FALSE;
5143
-          }
5144
-         elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
5103
+          } elseif ( $Data["Orientation"] == SCALE_POS_TOPBOTTOM )
5145 5104
           {
5146 5105
            if ( $YZero < $this->GraphAreaX1+1 ) { $YZero = $this->GraphAreaX1+1; }
5147 5106
            if ( $YZero > $this->GraphAreaX2-1 ) { $YZero = $this->GraphAreaX2-1; }
@@ -5203,8 +5162,7 @@  discard block
 block discarded – undo
5203 5162
          $Result[$Key]["BorderR"] = $Result[$Key]["R"] + $Surrounding;
5204 5163
          $Result[$Key]["BorderG"] = $Result[$Key]["G"] + $Surrounding;
5205 5164
          $Result[$Key]["BorderB"] = $Result[$Key]["B"] + $Surrounding;
5206
-        }
5207
-       else
5165
+        } else
5208 5166
         {
5209 5167
          if ( isset($Values["BorderR"]) )     { $Result[$Key]["BorderR"] = $Values["BorderR"]; } else { $Result[$Key]["BorderR"] = $Result[$Key]["R"]; }
5210 5168
          if ( isset($Values["BorderG"]) )     { $Result[$Key]["BorderG"] = $Values["BorderG"]; } else { $Result[$Key]["BorderG"] = $Result[$Key]["G"]; }
@@ -5263,10 +5221,11 @@  discard block
 block discarded – undo
5263 5221
 
5264 5222
      list($XMargin,$XDivs) = $this->scaleGetXSettings();
5265 5223
 
5266
-     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT )
5267
-      $YPos = $this->DataSet->Data["GraphArea"]["Y2"] + $Offset;
5268
-     else
5269
-      $XPos = $this->DataSet->Data["GraphArea"]["X2"] + $Offset;
5224
+     if ( $Data["Orientation"] == SCALE_POS_LEFTRIGHT ) {
5225
+           $YPos = $this->DataSet->Data["GraphArea"]["Y2"] + $Offset;
5226
+     } else {
5227
+           $XPos = $this->DataSet->Data["GraphArea"]["X2"] + $Offset;
5228
+     }
5270 5229
 
5271 5230
      foreach($Data["Series"] as $SerieName => $Serie)
5272 5231
       {
@@ -5289,9 +5248,9 @@  discard block
 block discarded – undo
5289 5248
                $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5290 5249
                if ( $CaptionBox ) { $this->drawFilledRectangle($StartX,$YPos,$EndX,$YPos+$CaptionHeight,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5291 5250
                $this->drawLine($StartX+2,$YPos+($CaptionHeight/2),$EndX-2,$YPos+($CaptionHeight/2),$CaptionSettings);
5292
-              }
5293
-             else
5294
-              $this->drawFilledRectangle($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin,$YPos,$this->GraphAreaX1-$CaptionMargin+$XMargin,$YPos+$CaptionHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5251
+              } else {
5252
+                           $this->drawFilledRectangle($this->GraphAreaX1-$CaptionWidth+$XMargin-$CaptionMargin,$YPos,$this->GraphAreaX1-$CaptionMargin+$XMargin,$YPos+$CaptionHeight,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5253
+             }
5295 5254
             }
5296 5255
 
5297 5256
            if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1)/4; } else { $XStep = ($this->GraphAreaX2-$this->GraphAreaX1-$XMargin*2)/$XDivs; }
@@ -5319,8 +5278,7 @@  discard block
 block discarded – undo
5319 5278
               { $Slope = ($LastY - $Y); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5320 5279
 
5321 5280
              if ( $Y == VOID )
5322
-              { $LastX = NULL; $LastY = NULL; }
5323
-             else
5281
+              { $LastX = NULL; $LastY = NULL; } else
5324 5282
               { $LastX = $X; $LastY = $Y; }
5325 5283
             }
5326 5284
 
@@ -5337,8 +5295,7 @@  discard block
 block discarded – undo
5337 5295
                  $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5338 5296
                  $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5339 5297
                  $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5340
-                }
5341
-               elseif ( $Slope < 0 )
5298
+                } elseif ( $Slope < 0 )
5342 5299
                 {
5343 5300
                  $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5344 5301
                  $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
@@ -5348,28 +5305,29 @@  discard block
 block discarded – undo
5348 5305
 
5349 5306
                $Color = array("R"=>$R,"G"=>$G,"B"=>$B);
5350 5307
 
5351
-               if ( $ShadedSlopeBox && $LastColor != NULL ) // && $Slope != 0
5308
+               if ( $ShadedSlopeBox && $LastColor != NULL ) {
5309
+                   // && $Slope != 0
5352 5310
                 {
5353 5311
                  $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5312
+               }
5354 5313
                  $this->drawGradientArea($LastX,$TopY,$X,$BottomY,DIRECTION_HORIZONTAL,$GradientSettings);
5355
-                }
5356
-               elseif ( !$ShadedSlopeBox || $LastColor == NULL ) // || $Slope == 0
5314
+                } elseif ( !$ShadedSlopeBox || $LastColor == NULL ) {
5315
+                   // || $Slope == 0
5357 5316
                 $this->drawFilledRectangle(floor($LastX),$TopY,floor($X),$BottomY,$Color);
5317
+               }
5358 5318
 
5359 5319
                $LastColor = $Color;
5360 5320
               }
5361 5321
 
5362 5322
              if ( $Y == VOID )
5363
-              { $LastY = NULL; }
5364
-             else
5323
+              { $LastY = NULL; } else
5365 5324
               { $LastX = $X; $LastY = $Y; }
5366 5325
 
5367 5326
              $X = $X + $XStep;
5368 5327
             }
5369 5328
 
5370 5329
            $YPos = $YPos + $CaptionHeight + $SerieSpacing;
5371
-          }
5372
-         else
5330
+          } else
5373 5331
           {
5374 5332
            if ( $Caption )
5375 5333
             {
@@ -5380,9 +5338,9 @@  discard block
 block discarded – undo
5380 5338
                $CaptionSettings = array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha,"Ticks"=>$Ticks,"Weight"=>$Weight);
5381 5339
                if ( $CaptionBox ) { $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$CaptionFillR,"G"=>$CaptionFillG,"B"=>$CaptionFillB,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB,"Alpha"=>$CaptionFillAlpha)); }
5382 5340
                $this->drawLine($XPos+($CaptionHeight/2),$StartY+2,$XPos+($CaptionHeight/2),$EndY-2,$CaptionSettings);
5383
-              }
5384
-             else
5385
-              $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5341
+              } else {
5342
+                           $this->drawFilledRectangle($XPos,$StartY,$XPos+$CaptionHeight,$EndY,array("R"=>$R,"G"=>$G,"B"=>$B,"BorderR"=>$CaptionBorderR,"BorderG"=>$CaptionBorderG,"BorderB"=>$CaptionBorderB));
5343
+             }
5386 5344
             }
5387 5345
 
5388 5346
 
@@ -5411,8 +5369,7 @@  discard block
 block discarded – undo
5411 5369
               { $Slope = ($X - $LastX); if ( $Slope > $MaxSlope ) { $MaxSlope = $Slope; } if ( $Slope < $MinSlope ) { $MinSlope = $Slope; } }
5412 5370
 
5413 5371
              if ( $X == VOID )
5414
-              { $LastX = NULL; }
5415
-             else
5372
+              { $LastX = NULL; } else
5416 5373
               { $LastX = $X; }
5417 5374
             }
5418 5375
 
@@ -5429,8 +5386,7 @@  discard block
 block discarded – undo
5429 5386
                  $R = (($PositiveSlopeEndR - $PositiveSlopeStartR)/100)*$SlopeIndex+$PositiveSlopeStartR;
5430 5387
                  $G = (($PositiveSlopeEndG - $PositiveSlopeStartG)/100)*$SlopeIndex+$PositiveSlopeStartG;
5431 5388
                  $B = (($PositiveSlopeEndB - $PositiveSlopeStartB)/100)*$SlopeIndex+$PositiveSlopeStartB;
5432
-                }
5433
-               elseif ( $Slope < 0 )
5389
+                } elseif ( $Slope < 0 )
5434 5390
                 {
5435 5391
                  $SlopeIndex = (100 / abs($MinSlope)) * abs($Slope);
5436 5392
                  $R = (($NegativeSlopeEndR - $NegativeSlopeStartR)/100)*$SlopeIndex+$NegativeSlopeStartR;
@@ -5445,16 +5401,15 @@  discard block
 block discarded – undo
5445 5401
                  $GradientSettings = array("StartR"=>$LastColor["R"],"StartG"=>$LastColor["G"],"StartB"=>$LastColor["B"],"EndR"=>$R,"EndG"=>$G,"EndB"=>$B);
5446 5402
 
5447 5403
                  $this->drawGradientArea($TopX,$LastY,$BottomX,$Y,DIRECTION_VERTICAL,$GradientSettings);
5448
-                }
5449
-               elseif ( !$ShadedSlopeBox || $LastColor == NULL ) 
5450
-                $this->drawFilledRectangle($TopX,floor($LastY),$BottomX,floor($Y),$Color);
5404
+                } elseif ( !$ShadedSlopeBox || $LastColor == NULL ) {
5405
+                               $this->drawFilledRectangle($TopX,floor($LastY),$BottomX,floor($Y),$Color);
5406
+               }
5451 5407
 
5452 5408
                $LastColor = $Color;
5453 5409
               }
5454 5410
 
5455 5411
              if ( $X == VOID )
5456
-              { $LastX = NULL; }
5457
-             else
5412
+              { $LastX = NULL; } else
5458 5413
               { $LastX = $X; $LastY = $Y; }
5459 5414
 
5460 5415
              $Y = $Y + $XStep;
@@ -5527,8 +5482,7 @@  discard block
 block discarded – undo
5527 5482
            if ( $Y2 > $this->GraphAreaY2 ) { $X2 = $X2 - ($Y2-$this->GraphAreaY2); $Y2 = $this->GraphAreaY2; }
5528 5483
 
5529 5484
            $this->drawLine($X1,$Y1,$X2,$Y2,$Color);
5530
-          }
5531
-         else
5485
+          } else
5532 5486
           {
5533 5487
            if ( $XDivs == 0 ) { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $YStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5534 5488
            $Y = $this->GraphAreaY1 + $XMargin;
@@ -5605,17 +5559,18 @@  discard block
 block discarded – undo
5605 5559
             {
5606 5560
              $AxisID      = $Data["Series"][$SerieName]["Axis"];
5607 5561
 
5608
-             if ( $OverrideTitle != NULL)
5609
-              $Description = $OverrideTitle;
5610
-             elseif ( count($SeriesName) == 1 )
5562
+             if ( $OverrideTitle != NULL) {
5563
+                           $Description = $OverrideTitle;
5564
+             } elseif ( count($SeriesName) == 1 )
5611 5565
               {
5612
-               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5613
-                $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5614
-               else
5615
-                $Description = $Data["Series"][$SerieName]["Description"];
5616
-              }
5617
-             elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5618
-              $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5566
+               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) ) {
5567
+                               $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5568
+               } else {
5569
+                               $Description = $Data["Series"][$SerieName]["Description"];
5570
+               }
5571
+              } elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) ) {
5572
+                           $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5573
+             }
5619 5574
 
5620 5575
              $AxisMode     = $Data["Axis"][$AxisID]["Display"];
5621 5576
              $AxisFormat   = $Data["Axis"][$AxisID]["Format"];
@@ -5627,18 +5582,20 @@  discard block
 block discarded – undo
5627 5582
              $Serie["B"] = $Data["Series"][$SerieName]["Color"]["B"];
5628 5583
              $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5629 5584
 
5630
-             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5631
-              $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5632
-             else
5633
-              $SerieOffset = 0;
5585
+             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) ) {
5586
+                           $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5587
+             } else {
5588
+                           $SerieOffset = 0;
5589
+             }
5634 5590
 
5635 5591
              $Value = $Data["Series"][$SerieName]["Data"][$Index];
5636 5592
              if ( $Value == VOID ) { $Value = "NaN"; }
5637 5593
 
5638
-             if ( $ForceLabels != NULL )
5639
-              $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5640
-             else
5641
-              $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5594
+             if ( $ForceLabels != NULL ) {
5595
+                           $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5596
+             } else {
5597
+                           $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5598
+             }
5642 5599
 
5643 5600
              if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
5644 5601
               {
@@ -5664,18 +5621,18 @@  discard block
 block discarded – undo
5664 5621
 
5665 5622
              if ($Y < $MinY) { $MinY = $Y; }
5666 5623
 
5667
-             if ( $DrawPoint == LABEL_POINT_CIRCLE )
5668
-              $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5669
-             elseif ( $DrawPoint == LABEL_POINT_BOX )
5670
-              $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5624
+             if ( $DrawPoint == LABEL_POINT_CIRCLE ) {
5625
+                           $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5626
+             } elseif ( $DrawPoint == LABEL_POINT_BOX ) {
5627
+                           $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5628
+             }
5671 5629
 
5672 5630
              $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5673 5631
             }
5674 5632
           }
5675 5633
          $this->drawLabelBox($X,$MinY-3,$Description,$Series,$Format);
5676 5634
 
5677
-        }
5678
-       else
5635
+        } else
5679 5636
         {
5680 5637
          if ( $XDivs == 0 ) { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1)/4; } else { $XStep = ($this->GraphAreaY2-$this->GraphAreaY1-$XMargin*2)/$XDivs; }
5681 5638
          $Y = $this->GraphAreaY1 + $XMargin + $Index * $XStep;
@@ -5689,17 +5646,18 @@  discard block
 block discarded – undo
5689 5646
             {
5690 5647
              $AxisID      = $Data["Series"][$SerieName]["Axis"];
5691 5648
 
5692
-             if ( $OverrideTitle != NULL)
5693
-              $Description = $OverrideTitle;
5694
-             elseif ( count($SeriesName) == 1 )
5649
+             if ( $OverrideTitle != NULL) {
5650
+                           $Description = $OverrideTitle;
5651
+             } elseif ( count($SeriesName) == 1 )
5695 5652
               {
5696
-               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5697
-                $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5698
-               else
5699
-                $Description = $Data["Series"][$SerieName]["Description"];
5700
-              }
5701
-             elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) )
5702
-              $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5653
+               if ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) ) {
5654
+                               $Description = $Data["Series"][$SerieName]["Description"]." - ".$Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5655
+               } else {
5656
+                               $Description = $Data["Series"][$SerieName]["Description"];
5657
+               }
5658
+              } elseif ( isset($Data["Abscissa"]) && isset($Data["Series"][$Data["Abscissa"]]["Data"][$Index]) ) {
5659
+                           $Description = $Data["Series"][$Data["Abscissa"]]["Data"][$Index];
5660
+             }
5703 5661
 
5704 5662
              $AxisMode     = $Data["Axis"][$AxisID]["Display"];
5705 5663
              $AxisFormat   = $Data["Axis"][$AxisID]["Format"];
@@ -5712,8 +5670,7 @@  discard block
 block discarded – undo
5712 5670
                $Serie["G"] = $Data["Extended"]["Palette"][$Index]["G"];
5713 5671
                $Serie["B"] = $Data["Extended"]["Palette"][$Index]["B"];
5714 5672
                $Serie["Alpha"] = $Data["Extended"]["Palette"][$Index]["Alpha"];
5715
-              }
5716
-             else
5673
+              } else
5717 5674
               {
5718 5675
                $Serie["R"] = $Data["Series"][$SerieName]["Color"]["R"];
5719 5676
                $Serie["G"] = $Data["Series"][$SerieName]["Color"]["G"];
@@ -5721,16 +5678,18 @@  discard block
 block discarded – undo
5721 5678
                $Serie["Alpha"] = $Data["Series"][$SerieName]["Color"]["Alpha"];
5722 5679
               }
5723 5680
 
5724
-             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) )
5725
-              $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5726
-             else
5727
-              $SerieOffset = 0;
5681
+             if ( count($SeriesName) == 1 && isset($Data["Series"][$SerieName]["XOffset"]) ) {
5682
+                           $SerieOffset = $Data["Series"][$SerieName]["XOffset"];
5683
+             } else {
5684
+                           $SerieOffset = 0;
5685
+             }
5728 5686
 
5729 5687
              $Value = $Data["Series"][$SerieName]["Data"][$Index];
5730
-             if ( $ForceLabels != NULL )
5731
-              $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5732
-             else
5733
-              $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5688
+             if ( $ForceLabels != NULL ) {
5689
+                           $Caption = isset($ForceLabels[$Key]) ? $ForceLabels[$Key] : "Not set";
5690
+             } else {
5691
+                           $Caption = $this->scaleFormat($Value,$AxisMode,$AxisFormat,$AxisUnit);
5692
+             }
5734 5693
              if ( $Value == VOID ) { $Value = "NaN"; }
5735 5694
 
5736 5695
              if ( $this->LastChartLayout == CHART_LAST_LAYOUT_STACKED )
@@ -5757,10 +5716,11 @@  discard block
 block discarded – undo
5757 5716
 
5758 5717
              if ($X < $MinX) { $MinX = $X; }
5759 5718
 
5760
-             if ( $DrawPoint == LABEL_POINT_CIRCLE )
5761
-              $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5762
-             elseif ( $DrawPoint == LABEL_POINT_BOX )
5763
-              $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5719
+             if ( $DrawPoint == LABEL_POINT_CIRCLE ) {
5720
+                           $this->drawFilledCircle($X,$Y,3,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5721
+             } elseif ( $DrawPoint == LABEL_POINT_BOX ) {
5722
+                           $this->drawFilledRectangle($X-2,$Y-2,$X+2,$Y+2,array("R"=>255,"G"=>255,"B"=>255,"BorderR"=>0,"BorderG"=>0,"BorderB"=>0));
5723
+             }
5764 5724
 
5765 5725
              $Series[] = array("Format"=>$Serie,"Caption"=>$Caption);
5766 5726
             }
@@ -5844,8 +5804,7 @@  discard block
 block discarded – undo
5844 5804
         {
5845 5805
          $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5846 5806
          $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2+$this->ShadowX;
5847
-        }
5848
-       else
5807
+        } else
5849 5808
         {
5850 5809
          $Poly[] = $XMax+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
5851 5810
          $Poly[] = $XMin+$this->ShadowX; $Poly[] = $Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3+$this->ShadowX;
@@ -5858,10 +5817,11 @@  discard block
 block discarded – undo
5858 5817
 
5859 5818
      /* Draw the background */
5860 5819
      $GradientSettings = array("StartR"=>$GradientStartR,"StartG"=>$GradientStartG,"StartB"=>$GradientStartB,"EndR"=>$GradientEndR,"EndG"=>$GradientEndG,"EndB"=>$GradientEndB);
5861
-     if ( $NoTitle )
5862
-      $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5863
-     else
5864
-      $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5820
+     if ( $NoTitle ) {
5821
+           $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5822
+     } else {
5823
+           $this->drawGradientArea($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-6,DIRECTION_VERTICAL,$GradientSettings);
5824
+     }
5865 5825
      $Poly = ""; $Poly[] = $X; $Poly[] = $Y; $Poly[] = $X-5; $Poly[] = $Y-5; $Poly[] = $X+5; $Poly[] = $Y-5;
5866 5826
      $this->drawPolygon($Poly,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB,"NoBorder"=>TRUE));
5867 5827
 
@@ -5876,8 +5836,7 @@  discard block
 block discarded – undo
5876 5836
        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin,$Y-5,$OuterBorderColor);
5877 5837
        imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5,$OuterBorderColor);
5878 5838
        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$OuterBorderColor);
5879
-      }
5880
-     else
5839
+      } else
5881 5840
       {
5882 5841
        imageline($this->Picture,$XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin,$Y-5,$OuterBorderColor);
5883 5842
        imageline($this->Picture,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5,$OuterBorderColor);
@@ -5895,8 +5854,7 @@  discard block
 block discarded – undo
5895 5854
        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMin+1,$Y-6,$InnerBorderColor);
5896 5855
        imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-6,$InnerBorderColor);
5897 5856
        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*2,$InnerBorderColor);
5898
-      }
5899
-     else
5857
+      } else
5900 5858
       {
5901 5859
        imageline($this->Picture,$XMin+1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMin+1,$Y-6,$InnerBorderColor);
5902 5860
        imageline($this->Picture,$XMax-1,$Y-4-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax-1,$Y-6,$InnerBorderColor);
@@ -5910,16 +5868,16 @@  discard block
 block discarded – undo
5910 5868
        $XMargin = $VerticalMargin / 2;
5911 5869
        $this->drawLine($XMin+$XMargin,$YPos+1,$XMax-$XMargin,$YPos+1,array("R"=>$GradientEndR,"G"=>$GradientEndG,"B"=>$GradientEndB));
5912 5870
        $this->drawLine($XMin+$XMargin,$YPos,$XMax-$XMargin,$YPos,array("R"=>$GradientStartR,"G"=>$GradientStartG,"B"=>$GradientStartB));
5913
-      }
5914
-     elseif ( $TitleMode == LABEL_TITLE_BACKGROUND )
5871
+      } elseif ( $TitleMode == LABEL_TITLE_BACKGROUND )
5915 5872
       {
5916 5873
        $this->drawFilledRectangle($XMin,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin*3,$XMax,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2,array("R"=>$TitleBackgroundR,"G"=>$TitleBackgroundG,"B"=>$TitleBackgroundB));
5917 5874
        imageline($this->Picture,$XMin+1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$XMax-1,$Y-5-$TitleHeight-$CaptionHeight-$HorizontalMargin+$HorizontalMargin/2+1,$InnerBorderColor);
5918 5875
       }
5919 5876
 
5920 5877
      /* Write the description */
5921
-     if ( !$NoTitle )
5922
-      $this->drawText($XMin+$VerticalMargin,$Y-7-$CaptionHeight-$HorizontalMargin*2,$Title,array("Align"=>TEXT_ALIGN_BOTTOMLEFT,"R"=>$TitleR,"G"=>$TitleG,"B"=>$TitleB));
5878
+     if ( !$NoTitle ) {
5879
+           $this->drawText($XMin+$VerticalMargin,$Y-7-$CaptionHeight-$HorizontalMargin*2,$Title,array("Align"=>TEXT_ALIGN_BOTTOMLEFT,"R"=>$TitleR,"G"=>$TitleG,"B"=>$TitleB));
5880
+     }
5923 5881
 
5924 5882
      /* Write the value */
5925 5883
      $YPos = $Y-5-$HorizontalMargin; $XPos = $XMin+$VerticalMargin+$SerieBoxSize+$SerieBoxSpacing;
@@ -5951,13 +5909,11 @@  discard block
 block discarded – undo
5951 5909
       {
5952 5910
        if ( $PlotBorder ) { $this->drawFilledCircle($X,$Y,$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5953 5911
        $this->drawFilledCircle($X,$Y,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5954
-      }
5955
-     elseif ( $Shape == SERIE_SHAPE_FILLEDSQUARE )
5912
+      } elseif ( $Shape == SERIE_SHAPE_FILLEDSQUARE )
5956 5913
       {
5957 5914
        if ( $PlotBorder ) { $this->drawFilledRectangle($X-$PlotSize-$BorderSize,$Y-$PlotSize-$BorderSize,$X+$PlotSize+$BorderSize,$Y+$PlotSize+$BorderSize,array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha)); }
5958 5915
        $this->drawFilledRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5959
-      }
5960
-     elseif ( $Shape == SERIE_SHAPE_FILLEDTRIANGLE )
5916
+      } elseif ( $Shape == SERIE_SHAPE_FILLEDTRIANGLE )
5961 5917
       {
5962 5918
        if ( $PlotBorder )
5963 5919
         {
@@ -5967,23 +5923,20 @@  discard block
 block discarded – undo
5967 5923
 
5968 5924
        $Pos = ""; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X-$PlotSize; $Pos[]=$Y+$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y+$PlotSize;
5969 5925
        $this->drawPolygon($Pos,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5970
-      }
5971
-     elseif ( $Shape == SERIE_SHAPE_TRIANGLE )
5926
+      } elseif ( $Shape == SERIE_SHAPE_TRIANGLE )
5972 5927
       {
5973 5928
        $this->drawLine($X,$Y-$PlotSize,$X-$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5974 5929
        $this->drawLine($X-$PlotSize,$Y+$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5975 5930
        $this->drawLine($X+$PlotSize,$Y+$PlotSize,$X,$Y-$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5976
-      }
5977
-     elseif ( $Shape == SERIE_SHAPE_SQUARE )
5978
-      $this->drawRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5979
-     elseif ( $Shape == SERIE_SHAPE_CIRCLE )
5980
-      $this->drawCircle($X,$Y,$PlotSize,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5981
-     elseif ( $Shape == SERIE_SHAPE_DIAMOND )
5931
+      } elseif ( $Shape == SERIE_SHAPE_SQUARE ) {
5932
+           $this->drawRectangle($X-$PlotSize,$Y-$PlotSize,$X+$PlotSize,$Y+$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5933
+     } elseif ( $Shape == SERIE_SHAPE_CIRCLE ) {
5934
+           $this->drawCircle($X,$Y,$PlotSize,$PlotSize,array("R"=>$R,"G"=>$G,"B"=>$B,"Alpha"=>$Alpha));
5935
+     } elseif ( $Shape == SERIE_SHAPE_DIAMOND )
5982 5936
       {
5983 5937
        $Pos = ""; $Pos[]=$X-$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y-$PlotSize; $Pos[]=$X+$PlotSize; $Pos[]=$Y; $Pos[]=$X; $Pos[]=$Y+$PlotSize;
5984 5938
        $this->drawPolygon($Pos,array("NoFill"=>TRUE,"BorderR"=>$R,"BorderG"=>$G,"BorderB"=>$B,"BorderAlpha"=>$Alpha));
5985
-      }      
5986
-     elseif ( $Shape == SERIE_SHAPE_FILLEDDIAMOND )
5939
+      } elseif ( $Shape == SERIE_SHAPE_FILLEDDIAMOND )
5987 5940
       {
5988 5941
        if ( $PlotBorder )
5989 5942
         {
@@ -6035,8 +5988,7 @@  discard block
 block discarded – undo
6035 5988
          if ( $inHorizon ) { $inHorizon = FALSE; $Result[] = array("X1"=>$LastX,"Y1"=>$Pos["Y1"],"X2"=>$Pos["X1"],"Y2"=>$Pos["Y1"]); }
6036 5989
 
6037 5990
          $Result[] = array("X1"=>$Pos["X1"],"Y1"=>$Pos["Y1"],"X2"=>$Pos["X2"],"Y2"=>$Pos["Y2"]);
6038
-        }
6039
-       else { if ( !$inHorizon ) { $inHorizon = TRUE; $LastX = $Pos["X1"];} }
5991
+        } else { if ( !$inHorizon ) { $inHorizon = TRUE; $LastX = $Pos["X1"];} }
6040 5992
       }
6041 5993
      $Segments = $Result;
6042 5994
 
@@ -6078,30 +6030,24 @@  discard block
 block discarded – undo
6078 6030
            if ( min($Y1,$Y2) <= $Y && max($Y1,$Y2) >= $Y )
6079 6031
             {
6080 6032
              if ( $Y1 == $Y2 )
6081
-              { $X = $X1; }
6082
-             else
6033
+              { $X = $X1; } else
6083 6034
               { $X = $X1 + ( ($Y-$Y1)*$X2 - ($Y-$Y1)*$X1 ) / ($Y2-$Y1); }
6084 6035
 
6085 6036
              $X = floor($X);
6086 6037
 
6087 6038
              if ( $X2 == $X1 )
6088
-              { $Slope = "!"; }
6089
-             else
6039
+              { $Slope = "!"; } else
6090 6040
               {
6091 6041
                $SlopeC = ($Y2 - $Y1) / ($X2 - $X1);
6092 6042
                if( $SlopeC == 0 )
6093
-                { $Slope = "="; }
6094
-               elseif( $SlopeC > 0 )
6095
-                { $Slope = "+"; }
6096
-               elseif ( $SlopeC < 0 )
6043
+                { $Slope = "="; } elseif( $SlopeC > 0 )
6044
+                { $Slope = "+"; } elseif ( $SlopeC < 0 )
6097 6045
                 { $Slope = "-"; }
6098 6046
               }
6099 6047
 
6100 6048
              if ( !is_array($Intersections) )
6101
-              { $Intersections[] = $X; }
6102
-             elseif( !in_array($X,$Intersections) )
6103
-              { $Intersections[] = $X; }
6104
-             elseif( in_array($X,$Intersections) )
6049
+              { $Intersections[] = $X; } elseif( !in_array($X,$Intersections) )
6050
+              { $Intersections[] = $X; } elseif( in_array($X,$Intersections) )
6105 6051
               {
6106 6052
                if ($Y == $DebugLine) { echo $Slope."/".$LastSlope."(".$X.") "; }
6107 6053
 
@@ -6138,9 +6084,9 @@  discard block
 block discarded – undo
6138 6084
              $LastX = OUT_OF_SIGHT;
6139 6085
              foreach($Intersections as $Key => $X)
6140 6086
               {
6141
-               if ( $LastX == OUT_OF_SIGHT )
6142
-                $LastX = $X;
6143
-               elseif ( $LastX != OUT_OF_SIGHT )
6087
+               if ( $LastX == OUT_OF_SIGHT ) {
6088
+                               $LastX = $X;
6089
+               } elseif ( $LastX != OUT_OF_SIGHT )
6144 6090
                 {
6145 6091
                  if ( $this->getFirstDecimal($LastX) > 1 ) { $LastX++; }
6146 6092
 
@@ -6175,8 +6121,9 @@  discard block
 block discarded – undo
6175 6121
      /* Draw the polygon border, if required */
6176 6122
      if ( !$NoBorder)
6177 6123
       {
6178
-       foreach($Segments as $Key => $Coords)
6179
-        $this->drawLine($Coords["X1"],$Coords["Y1"],$Coords["X2"],$Coords["Y2"],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Threshold"=>$Threshold));
6124
+       foreach($Segments as $Key => $Coords) {
6125
+               $this->drawLine($Coords["X1"],$Coords["Y1"],$Coords["X2"],$Coords["Y2"],array("R"=>$BorderR,"G"=>$BorderG,"B"=>$BorderB,"Alpha"=>$BorderAlpha,"Threshold"=>$Threshold));
6126
+       }
6180 6127
       }
6181 6128
 
6182 6129
      $this->Shadow = $RestoreShadow;
Please login to merge, or discard this patch.