summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xlibrary/SSRS/Object/Abstract.php22
-rw-r--r--nbproject/private/private.properties2
-rw-r--r--nbproject/project.properties7
-rw-r--r--nbproject/project.xml9
4 files changed, 17 insertions, 23 deletions
diff --git a/library/SSRS/Object/Abstract.php b/library/SSRS/Object/Abstract.php
index 40482a0..4658b48 100755
--- a/library/SSRS/Object/Abstract.php
+++ b/library/SSRS/Object/Abstract.php
@@ -19,12 +19,10 @@ class SSRS_Object_Abstract {
}
public function setData($data) {
- if ($data instanceof stdClass) {
- $data = get_object_vars($data);
- }
+ $clean = $this->_sanitizeData($data);
- if (is_array($data)) {
- foreach ($data AS $key => $value) {
+ if (is_array($clean)) {
+ foreach ($clean AS $key => $value) {
$this->$key = $value;
}
}
@@ -41,6 +39,20 @@ class SSRS_Object_Abstract {
}
}
+ protected function _sanitizeData($data, $recursive = false) {
+ if (is_object($data)) {
+ $data = get_object_vars($data);
+ }
+
+ if ($recursive && is_array($data)) {
+ foreach ($data AS $key => $value) {
+ $data[$key] = $this->_sanitizeData($value);
+ }
+ }
+
+ return $data;
+ }
+
public function __get($key) {
return isset($this->data[$key]) ? $this->data[$key] : null;
}
diff --git a/nbproject/private/private.properties b/nbproject/private/private.properties
deleted file mode 100644
index 044e35d..0000000
--- a/nbproject/private/private.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-index.file=index.php
-url=http://localhost/trunk/
diff --git a/nbproject/project.properties b/nbproject/project.properties
deleted file mode 100644
index 6ffde2f..0000000
--- a/nbproject/project.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-include.path=${php.global.include.path}
-php.version=PHP_5
-source.encoding=UTF-8
-src.dir=.
-tags.asp=false
-tags.short=true
-web.root=.
diff --git a/nbproject/project.xml b/nbproject/project.xml
deleted file mode 100644
index 95404cd..0000000
--- a/nbproject/project.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://www.netbeans.org/ns/project/1">
- <type>org.netbeans.modules.php.project</type>
- <configuration>
- <data xmlns="http://www.netbeans.org/ns/php-project/1">
- <name>php-ssrs (trunk)</name>
- </data>
- </configuration>
-</project>