Skip to content

Commit bfb36e8

Browse files
committed
style: format file
1 parent b1e750c commit bfb36e8

File tree

1 file changed

+72
-52
lines changed

1 file changed

+72
-52
lines changed

plugin/src/Helpers/MaskData.php

+72-52
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
<?php
22

33
namespace Transbank\WooCommerce\WebpayRest\Helpers;
4+
45
use Transbank\Webpay\Options;
6+
57
class MaskData
68
{
79

@@ -30,7 +32,8 @@ class MaskData
3032
protected $isIntegration;
3133
protected $log;
3234

33-
public function __construct($environment){
35+
public function __construct($environment)
36+
{
3437
$this->isIntegration = $environment == Options::ENVIRONMENT_INTEGRATION;
3538
$this->log = TbkFactory::createLogger();
3639
}
@@ -42,7 +45,8 @@ public function __construct($environment){
4245
* @param string $input a string to be masked.
4346
* @return string a string with substrings masked.
4447
*/
45-
private function maskWithFormat($input){
48+
private function maskWithFormat($input)
49+
{
4650
return preg_replace_callback('/(?<=-).+?(?=-)/', function ($matches) {
4751
return str_repeat('x', strlen($matches[0]));
4852
}, $input);
@@ -56,19 +60,20 @@ private function maskWithFormat($input){
5660
* @param int $charsToKeep number of original chars to keep at start and end.
5761
* @return string a string masked.
5862
*/
59-
private function mask($input, $pattern = null, $charsToKeep = 4 ){
63+
private function mask($input, $pattern = null, $charsToKeep = 4)
64+
{
6065
$cleanInput = $input ?? '';
6166
$len = strlen($cleanInput);
6267

63-
if ( $pattern != null ) {
64-
$patternPos = strpos($cleanInput, $pattern);
65-
if ( $patternPos === 0 ) {
68+
if ($pattern != null) {
69+
$patternPos = strpos($cleanInput, $pattern);
70+
if ($patternPos === 0) {
6671
$startString = $pattern;
67-
}
68-
else {
72+
} else {
6973
$endString = $pattern;
7074
}
7175
}
76+
7277
$startString = $startString ?? substr($cleanInput, 0, $charsToKeep);
7378
$endString = $endString ?? substr($cleanInput, -$charsToKeep, $charsToKeep);
7479
$charsToReplace = $len - (strlen($startString) + strlen($endString));
@@ -82,7 +87,8 @@ private function mask($input, $pattern = null, $charsToKeep = 4 ){
8287
* @param string $email An email to be masked.
8388
* @return string email masked.
8489
*/
85-
private function maskEmail($email){
90+
private function maskEmail($email)
91+
{
8692
return preg_replace_callback('/^(.{1,4})[^@]*(@.*)$/', function ($match) {
8793
return $match[1] . str_repeat('x', strlen($match[0]) - strlen($match[1]) - strlen($match[2])) . $match[2];
8894
}, $email);
@@ -95,14 +101,16 @@ private function maskEmail($email){
95101
* @param string $pattern A pattern to maintain, like `child` or `sessionId`.
96102
* @return string input masked.
97103
*/
98-
private function maskWithPattern($input, $pattern){
104+
private function maskWithPattern($input, $pattern)
105+
{
99106
$regexPattern = "/(wc:($pattern:)?\w{2})\w+:(\w{2})/";
100-
return preg_replace_callback($regexPattern, function($matches) use ($input){
101-
$prefix = $matches[1];
102-
$suffix = $matches[3];
103-
$maskLength = strlen($input) - strlen($prefix) - strlen($suffix) - 1;
104-
return $prefix . str_repeat('x', $maskLength) . $suffix;
105-
}, $input);
107+
108+
return preg_replace_callback($regexPattern, function ($matches) use ($input) {
109+
$prefix = $matches[1];
110+
$suffix = $matches[3];
111+
$maskLength = strlen($input) - strlen($prefix) - strlen($suffix) - 1;
112+
return $prefix . str_repeat('x', $maskLength) . $suffix;
113+
}, $input);
106114
}
107115

108116
/**
@@ -112,10 +120,12 @@ private function maskWithPattern($input, $pattern){
112120
* @param string $buyOrder An string with buy order to mask.
113121
* @return string buy order masked.
114122
*/
115-
public function maskBuyOrder($buyOrder){
123+
public function maskBuyOrder($buyOrder)
124+
{
116125
if ($this->isIntegration) {
117126
return $buyOrder;
118127
}
128+
119129
$pattern = 'child';
120130
return $this->maskWithPattern($buyOrder, $pattern);
121131
}
@@ -127,10 +137,12 @@ public function maskBuyOrder($buyOrder){
127137
* @param string $sessionId An string with session id to mask.
128138
* @return string session id masked.
129139
*/
130-
public function maskSessionId($sessionId){
131-
if($this->isIntegration){
140+
public function maskSessionId($sessionId)
141+
{
142+
if ($this->isIntegration) {
132143
return $sessionId;
133144
}
145+
134146
$sessionIdPattern = 'sessionId';
135147
return $this->maskWithPattern($sessionId, $sessionIdPattern);
136148
}
@@ -141,7 +153,8 @@ public function maskSessionId($sessionId){
141153
* @param array $array an array to evaluate
142154
* @return boolean `true` if is associative, `false` otherwise
143155
*/
144-
private function isAssociative($array) {
156+
private function isAssociative($array)
157+
{
145158
return (bool)count(array_filter(array_keys($array), 'is_string'));
146159
}
147160

@@ -152,14 +165,15 @@ private function isAssociative($array) {
152165
* @param array $data An array containing data to mask.
153166
* @return array copy of input, with fields masked.
154167
*/
155-
public function maskData($data){
156-
try{
157-
if ($this->isIntegration){
168+
public function maskData($data)
169+
{
170+
try {
171+
if ($this->isIntegration) {
158172
return $data;
159173
}
160174
$newData = $this->copyWithSubArray($data);
161175
foreach ($newData as $key => $value) {
162-
switch($this->getValueType($value)){
176+
switch ($this->getValueType($value)) {
163177
case $this::OBJECT:
164178
$newData[$key] = $this->maskObject($value);
165179
break;
@@ -176,8 +190,7 @@ public function maskData($data){
176190
}
177191
}
178192
return $newData;
179-
}
180-
catch (\Exception $e){
193+
} catch (\Exception $e) {
181194
$this->log->logError('Error on Mask Data: ' . $e->getMessage());
182195
return $data;
183196
}
@@ -190,17 +203,19 @@ public function maskData($data){
190203
* @param array $array An array to be copied.
191204
* @return array copy of input array.
192205
*/
193-
private function copyWithSubArray($array){
206+
private function copyWithSubArray($array)
207+
{
194208
$newArray = null;
195209
foreach ($array as $key => $value) {
196210
if (is_array($value)) {
197-
$clonedValue = array_map(function ($item) {
198-
return is_object($item) ? clone $item : $item;
199-
},
200-
$value);
211+
$clonedValue = array_map(
212+
function ($item) {
213+
return is_object($item) ? clone $item : $item;
214+
},
215+
$value
216+
);
201217
$newArray[$key] = $clonedValue;
202-
}
203-
else {
218+
} else {
204219
$newArray[$key] = is_object($value) ? clone $value : $value;
205220
}
206221
}
@@ -214,11 +229,14 @@ private function copyWithSubArray($array){
214229
* @param mixed $value the value to be masked.
215230
* @return mixed masked value if key exists, `false` otherwise.
216231
*/
217-
private function getMaskedValue($key, $value){
232+
private function getMaskedValue($key, $value)
233+
{
218234
$keyExists = array_key_exists($key, $this->keysToMask);
219-
if($keyExists){
235+
236+
if ($keyExists) {
220237
return call_user_func([$this, $this->keysToMask[$key]], $value);
221238
}
239+
222240
return $value;
223241
}
224242

@@ -228,16 +246,18 @@ private function getMaskedValue($key, $value){
228246
* @param string $value to evaluate.
229247
* @return int a constant representing the type of element
230248
*/
231-
private function getValueType($value){
249+
private function getValueType($value)
250+
{
232251
$valueType = $this::NO_ITERABLE;
233-
if(is_object($value)){
252+
253+
if (is_object($value)) {
234254
$valueType = $this::OBJECT;
235255
}
236-
if (is_array($value)){
237-
if ($this->isAssociative($value)){
256+
257+
if (is_array($value)) {
258+
if ($this->isAssociative($value)) {
238259
$valueType = $this::ASSOCIATIVE_ARRAY;
239-
}
240-
else {
260+
} else {
241261
$valueType = $this::INDEXED_ARRAY;
242262
}
243263
}
@@ -251,8 +271,9 @@ private function getValueType($value){
251271
* @param object $object a reference to an object to mask
252272
* @return object the object with masked attributes
253273
*/
254-
private function maskObject($object){
255-
foreach($object as $detailKey => $detailValue) {
274+
private function maskObject($object)
275+
{
276+
foreach ($object as $detailKey => $detailValue) {
256277
$maskedValue = $this->getMaskedValue($detailKey, $detailValue);
257278
$object->$detailKey = $maskedValue;
258279
}
@@ -265,8 +286,9 @@ private function maskObject($object){
265286
* @param array $array the array to mask.
266287
* @return array the array with masked values.
267288
*/
268-
private function maskAssociativeArray($array){
269-
foreach($array as $detailKey => $detailValue) {
289+
private function maskAssociativeArray($array)
290+
{
291+
foreach ($array as $detailKey => $detailValue) {
270292
$maskedValue = $this->getMaskedValue($detailKey, $detailValue);
271293
$array[$detailKey] = $maskedValue;
272294
}
@@ -279,17 +301,15 @@ private function maskAssociativeArray($array){
279301
* @param array $array the array to mask.
280302
* @return array the array with masked values.
281303
*/
282-
private function maskIndexedArray($array){
283-
foreach($array as $detail) {
284-
if(is_object($detail)) {
304+
private function maskIndexedArray($array)
305+
{
306+
foreach ($array as $detail) {
307+
if (is_object($detail)) {
285308
$detail = $this->maskObject($detail);
286-
}
287-
else {
309+
} else {
288310
$detail = $this->maskAssociativeArray($array);
289311
}
290-
291312
}
292313
return $array;
293314
}
294-
295315
}

0 commit comments

Comments
 (0)