From 9f432ad29b0a25bf1b704f54865611111ee20fc3 Mon Sep 17 00:00:00 2001 From: "jaysmith6811@gmail.com" Date: Thu, 29 Nov 2012 15:58:15 +0000 Subject: added reportParameter ValidValue Object --- library/SSRS/Object/ReportParameter.php | 25 +++++++++++++++------- library/SSRS/Object/ReportParameter/ValidValue.php | 16 ++++++++++++++ 2 files changed, 33 insertions(+), 8 deletions(-) create mode 100644 library/SSRS/Object/ReportParameter/ValidValue.php diff --git a/library/SSRS/Object/ReportParameter.php b/library/SSRS/Object/ReportParameter.php index 0b70710..40022fc 100755 --- a/library/SSRS/Object/ReportParameter.php +++ b/library/SSRS/Object/ReportParameter.php @@ -21,8 +21,13 @@ class SSRS_Object_ReportParameter extends SSRS_Object_Abstract { if (key_exists('DefaultValues', $this->data)) { $default = $this->data['DefaultValues']->Value; } - - return in_array($default, $this->getValidValues()) ? $default : null; + $validValues = array(); + foreach ($this->getValidValues() as $value) { + if ($default == $value->Value) { + return $default; + } + } + return null; } public function getValidValues() { @@ -32,18 +37,22 @@ class SSRS_Object_ReportParameter extends SSRS_Object_Abstract { $data = array(); if (is_object($this->data['ValidValues']->ValidValue)) { - $data[$this->data['ValidValues']->ValidValue->Label] = $this->data['ValidValues']->ValidValue->Value; + $data[] = new SSRS_Object_ReportParameter_ValidValue($this->data['ValidValues']->ValidValue->Label, + $this->data['ValidValues']->ValidValue->Value); } else { foreach ($this->data['ValidValues']->ValidValue AS $value) { - $data[$value->Label] = $value->Value; + if (is_object($value)) { + $data[] = new SSRS_Object_ReportParameter_ValidValue($value->Label, $value->Value); + } else { + $data[] = new SSRS_Object_ReportParameter_ValidValue((string) $value, (string) $value); + } } } - if (!empty($this->data['AllowBlank'])) { - $data['AllowBlank'] = ''; - } +// if (!empty($this->data['AllowBlank'])) { +// $data[] = new SSRS_Object_ReportParameter_ValidValue('', ''); +// } } - return $data; } diff --git a/library/SSRS/Object/ReportParameter/ValidValue.php b/library/SSRS/Object/ReportParameter/ValidValue.php new file mode 100644 index 0000000..adb11ca --- /dev/null +++ b/library/SSRS/Object/ReportParameter/ValidValue.php @@ -0,0 +1,16 @@ +Value = $value; + $this->Label = $label; + } + +} \ No newline at end of file -- cgit v1.1