From 496a5f45824c562016fa7116c00e7fc4120652f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristia=CC=81n=20Feldsam?= Date: Tue, 29 Sep 2015 13:55:07 +0200 Subject: [PATCH 1/3] Fixed Array2XML passed object attributes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kristián Feldsam --- src/Silverpop/Util/ArrayToXml.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Silverpop/Util/ArrayToXml.php b/src/Silverpop/Util/ArrayToXml.php index 50fd69d..958c4fd 100644 --- a/src/Silverpop/Util/ArrayToXml.php +++ b/src/Silverpop/Util/ArrayToXml.php @@ -51,7 +51,7 @@ function _processArray( &$array, $level = 0, $parent = '' ) { if ( isset( $this->_attribs[$tlevel][$name][$this->_rep[$name] - 1] ) && is_array( $this->_attribs[$tlevel][$name][$this->_rep[$name] - 1] ) ) { foreach ( (array) $this->_attribs[$tlevel][$name][$this->_rep[$name] - 1] as $aname => $avalue ) { - unset( $value[$aname] ); + //unset( $value[$aname] ); $attrs .= " $aname=\"$avalue\""; } } From c812129afdd8218fe74e1390e836eb508d0a7b11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristia=CC=81n=20Feldsam?= Date: Tue, 29 Sep 2015 13:56:38 +0200 Subject: [PATCH 2/3] Fixed check if result is success and fixed getting errors from response. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kristián Feldsam --- src/Silverpop/EngagePod.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Silverpop/EngagePod.php b/src/Silverpop/EngagePod.php index ba34098..1cb6260 100644 --- a/src/Silverpop/EngagePod.php +++ b/src/Silverpop/EngagePod.php @@ -710,6 +710,8 @@ private function _httpPost($fields) { * */ private function _getErrorFromResponse($response) { + if (isset($response['Envelope']['Body']['RESULT']['FAILURES'])) { + return json_encode($response['Envelope']['Body']['RESULT']['FAILURES']); if (isset($response['Envelope']['Body']['Fault']['FaultString']) && !empty($response['Envelope']['Body']['Fault']['FaultString'])) { return $response['Envelope']['Body']['Fault']['FaultString']; } @@ -721,6 +723,10 @@ private function _getErrorFromResponse($response) { * */ private function _isSuccess($result) { + if (isset($result['FAILURES']) and (bool)count($result['FAILURES'])) { + return false; + } + if (isset($result['SUCCESS']) && in_array(strtolower($result["SUCCESS"]), array('true', 'success'))) { return true; } From 3a88d5e660980af8480984d9c4ad6dad3ab9d14e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristia=CC=81n=20Feldsam?= Date: Thu, 8 Sep 2016 15:14:11 +0200 Subject: [PATCH 3/3] Removed unnecessary line of code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kristián Feldsam --- src/Silverpop/Util/ArrayToXml.php | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Silverpop/Util/ArrayToXml.php b/src/Silverpop/Util/ArrayToXml.php index 958c4fd..c24344f 100644 --- a/src/Silverpop/Util/ArrayToXml.php +++ b/src/Silverpop/Util/ArrayToXml.php @@ -51,7 +51,6 @@ function _processArray( &$array, $level = 0, $parent = '' ) { if ( isset( $this->_attribs[$tlevel][$name][$this->_rep[$name] - 1] ) && is_array( $this->_attribs[$tlevel][$name][$this->_rep[$name] - 1] ) ) { foreach ( (array) $this->_attribs[$tlevel][$name][$this->_rep[$name] - 1] as $aname => $avalue ) { - //unset( $value[$aname] ); $attrs .= " $aname=\"$avalue\""; } }