@@ -45,7 +45,7 @@ discard block |
||
| 45 | 45 | public function __construct(Invoice $invoice, $settings) |
| 46 | 46 | { |
| 47 | 47 | $this->invoice($invoice); |
| 48 | - $this->settings = (object)$settings; |
|
| 48 | + $this->settings = (object) $settings; |
|
| 49 | 49 | $this->client = new Client(); |
| 50 | 50 | } |
| 51 | 51 | |
@@ -86,7 +86,7 @@ discard block |
||
| 86 | 86 | |
| 87 | 87 | $responseBody = mb_strtolower($response->getBody()->getContents()); |
| 88 | 88 | $body = @json_decode($responseBody, true); |
| 89 | - $statusCode = (int)$body['status']; |
|
| 89 | + $statusCode = (int) $body['status']; |
|
| 90 | 90 | |
| 91 | 91 | if ($statusCode !== 200) { |
| 92 | 92 | // some error has happened |
@@ -142,7 +142,7 @@ discard block |
||
| 142 | 142 | { |
| 143 | 143 | $basePayUrl = $this->settings->mode == 'normal' ? $this->settings->apiPaymentUrl |
| 144 | 144 | : $this->settings->apiDirectPaymentUrl; |
| 145 | - $payUrl = $basePayUrl . $this->invoice->getTransactionId(); |
|
| 145 | + $payUrl = $basePayUrl.$this->invoice->getTransactionId(); |
|
| 146 | 146 | |
| 147 | 147 | return $this->redirectWithForm($payUrl, [], 'GET'); |
| 148 | 148 | } |
@@ -177,7 +177,7 @@ discard block |
||
| 177 | 177 | |
| 178 | 178 | $responseBody = mb_strtolower($response->getBody()->getContents()); |
| 179 | 179 | $body = @json_decode($responseBody, true); |
| 180 | - $statusCode = (int)$body['status']; |
|
| 180 | + $statusCode = (int) $body['status']; |
|
| 181 | 181 | |
| 182 | 182 | if ($statusCode !== 200) { |
| 183 | 183 | $message = $body['message'] ?? $this->convertStatusCodeToMessage($statusCode); |
@@ -203,7 +203,7 @@ discard block |
||
| 203 | 203 | */ |
| 204 | 204 | private function notVerified($message, $status) |
| 205 | 205 | { |
| 206 | - throw new InvalidPaymentException($message, (int)$status); |
|
| 206 | + throw new InvalidPaymentException($message, (int) $status); |
|
| 207 | 207 | } |
| 208 | 208 | |
| 209 | 209 | /** |
@@ -42,7 +42,7 @@ discard block |
||
| 42 | 42 | |
| 43 | 43 | private function generateAuthenticationEnvelope($pubKey, $terminalID, $password, $amount) |
| 44 | 44 | { |
| 45 | - $data = $terminalID . $password . str_pad($amount, 12, '0', STR_PAD_LEFT) . '00'; |
|
| 45 | + $data = $terminalID.$password.str_pad($amount, 12, '0', STR_PAD_LEFT).'00'; |
|
| 46 | 46 | $data = hex2bin($data); |
| 47 | 47 | $AESSecretKey = openssl_random_pseudo_bytes(16); |
| 48 | 48 | $ivlen = openssl_cipher_iv_length($cipher = "AES-128-CBC"); |
@@ -51,7 +51,7 @@ discard block |
||
| 51 | 51 | $hmac = hash('sha256', $ciphertext_raw, true); |
| 52 | 52 | $crypttext = ''; |
| 53 | 53 | |
| 54 | - openssl_public_encrypt($AESSecretKey . $hmac, $crypttext, $pubKey); |
|
| 54 | + openssl_public_encrypt($AESSecretKey.$hmac, $crypttext, $pubKey); |
|
| 55 | 55 | |
| 56 | 56 | return array( |
| 57 | 57 | "data" => bin2hex($crypttext), |
@@ -103,7 +103,7 @@ discard block |
||
| 103 | 103 | curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); |
| 104 | 104 | curl_setopt($ch, CURLOPT_HTTPHEADER, array( |
| 105 | 105 | 'Content-Type: application/json', |
| 106 | - 'Content-Length: ' . strlen($dataString) |
|
| 106 | + 'Content-Length: '.strlen($dataString) |
|
| 107 | 107 | )); |
| 108 | 108 | curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'DEFAULT@SECLEVEL=1'); |
| 109 | 109 | |
@@ -171,7 +171,7 @@ discard block |
||
| 171 | 171 | curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); |
| 172 | 172 | curl_setopt($ch, CURLOPT_HTTPHEADER, array( |
| 173 | 173 | 'Content-Type: application/json', |
| 174 | - 'Content-Length: ' . strlen($dataString) |
|
| 174 | + 'Content-Length: '.strlen($dataString) |
|
| 175 | 175 | )); |
| 176 | 176 | curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'DEFAULT@SECLEVEL=1'); |
| 177 | 177 | |
@@ -266,9 +266,9 @@ discard block |
||
| 266 | 266 | 930 => 'کد ملی ارائه شده نا معتبر می باشد)Tokenization(' |
| 267 | 267 | ]; |
| 268 | 268 | if (array_key_exists($status, $translations)) { |
| 269 | - throw new InvalidPaymentException($translations[$status], (int)$status); |
|
| 269 | + throw new InvalidPaymentException($translations[$status], (int) $status); |
|
| 270 | 270 | } else { |
| 271 | - throw new InvalidPaymentException('خطای ناشناخته ای رخ داده است.', (int)$status); |
|
| 271 | + throw new InvalidPaymentException('خطای ناشناخته ای رخ داده است.', (int) $status); |
|
| 272 | 272 | } |
| 273 | 273 | } |
| 274 | 274 | } |
@@ -33,17 +33,17 @@ discard block |
||
| 33 | 33 | $this->base_url = $this->settings->base_url; |
| 34 | 34 | $this->shop_slug = $this->settings->shop_slug; |
| 35 | 35 | $this->auth_code = $this->settings->auth_code; |
| 36 | - $this->code = $this->shop_slug . ':' . $this->auth_code; |
|
| 37 | - $this->auth_token = base64_encode($this->code); |
|
| 36 | + $this->code = $this->shop_slug.':'.$this->auth_code; |
|
| 37 | + $this->auth_token = base64_encode($this->code); |
|
| 38 | 38 | } |
| 39 | 39 | |
| 40 | 40 | // Purchase the invoice, save its transactionId and finaly return it. |
| 41 | 41 | public function purchase() |
| 42 | 42 | { |
| 43 | - $url = $this->base_url . "/users/me/shops/" . $this->shop_slug . "/deals"; |
|
| 43 | + $url = $this->base_url."/users/me/shops/".$this->shop_slug."/deals"; |
|
| 44 | 44 | $data = $this->settings->data; |
| 45 | 45 | |
| 46 | - $response = Http::withHeaders([ |
|
| 46 | + $response = Http::withHeaders([ |
|
| 47 | 47 | 'Authorization' => "Basic {$this->auth_token}", |
| 48 | 48 | "Content-Type" => 'application/json' |
| 49 | 49 | ])->post($url, $data); |
@@ -62,7 +62,7 @@ discard block |
||
| 62 | 62 | public function pay(): RedirectionForm |
| 63 | 63 | { |
| 64 | 64 | $transactionId = $this->invoice->getTransactionId(); |
| 65 | - $redirect_url = $this->base_url . '/deals/' . $transactionId . '/redirect'; |
|
| 65 | + $redirect_url = $this->base_url.'/deals/'.$transactionId.'/redirect'; |
|
| 66 | 66 | |
| 67 | 67 | return $this->redirectWithForm($redirect_url, [], 'GET'); |
| 68 | 68 | } |
@@ -73,10 +73,10 @@ discard block |
||
| 73 | 73 | $inputs = request()->all(); |
| 74 | 74 | |
| 75 | 75 | $transactionId = $this->invoice->getTransactionId(); |
| 76 | - $verifyUrl = $this->base_url . "/users/me/shops/" . $this->shop_slug . "/deals/" . $transactionId . "/verify"; |
|
| 76 | + $verifyUrl = $this->base_url."/users/me/shops/".$this->shop_slug."/deals/".$transactionId."/verify"; |
|
| 77 | 77 | |
| 78 | 78 | if ($inputs['state'] == 'funded') { |
| 79 | - $result = Http::withHeaders([ |
|
| 79 | + $result = Http::withHeaders([ |
|
| 80 | 80 | 'Authorization' => "Basic {$this->auth_token}", |
| 81 | 81 | "Content-Type" => 'application/json' |
| 82 | 82 | ])->patch($verifyUrl); |
@@ -134,15 +134,15 @@ discard block |
||
| 134 | 134 | { |
| 135 | 135 | $receipt = new Receipt('fanavacard', $referenceId); |
| 136 | 136 | $receipt->detail([ |
| 137 | - 'ResNum'=>Request::input('ResNum'), |
|
| 138 | - 'RefNum'=>Request::input('RefNum'), |
|
| 139 | - 'token'=>Request::input('token'), |
|
| 140 | - 'CustomerRefNum'=>Request::input('CustomerRefNum'), |
|
| 141 | - 'CardMaskPan'=>Request::input('CardMaskPan'), |
|
| 142 | - 'transactionAmount'=>Request::input('transactionAmount'), |
|
| 143 | - 'emailAddress'=>Request::input('emailAddress'), |
|
| 144 | - 'mobileNo'=>Request::input('mobileNo'), |
|
| 145 | - ]); |
|
| 137 | + 'ResNum'=>Request::input('ResNum'), |
|
| 138 | + 'RefNum'=>Request::input('RefNum'), |
|
| 139 | + 'token'=>Request::input('token'), |
|
| 140 | + 'CustomerRefNum'=>Request::input('CustomerRefNum'), |
|
| 141 | + 'CardMaskPan'=>Request::input('CardMaskPan'), |
|
| 142 | + 'transactionAmount'=>Request::input('transactionAmount'), |
|
| 143 | + 'emailAddress'=>Request::input('emailAddress'), |
|
| 144 | + 'mobileNo'=>Request::input('mobileNo'), |
|
| 145 | + ]); |
|
| 146 | 146 | return $receipt; |
| 147 | 147 | } |
| 148 | 148 | |
@@ -184,11 +184,11 @@ discard block |
||
| 184 | 184 | private function httpClientInit(): void |
| 185 | 185 | { |
| 186 | 186 | $this->client = new Client([ |
| 187 | - 'curl'=>[CURLOPT_SSL_CIPHER_LIST=>'DEFAULT@SECLEVEL=1',], |
|
| 188 | - 'verify' => false, |
|
| 189 | - 'base_uri' => $this->settings->baseUri, |
|
| 190 | - 'headers' => ['Content-Type' => 'application/json',], |
|
| 191 | - ]); |
|
| 187 | + 'curl'=>[CURLOPT_SSL_CIPHER_LIST=>'DEFAULT@SECLEVEL=1',], |
|
| 188 | + 'verify' => false, |
|
| 189 | + 'base_uri' => $this->settings->baseUri, |
|
| 190 | + 'headers' => ['Content-Type' => 'application/json',], |
|
| 191 | + ]); |
|
| 192 | 192 | } |
| 193 | 193 | |
| 194 | 194 | private function getWsContext(): array |
@@ -46,7 +46,7 @@ discard block |
||
| 46 | 46 | public function __construct(Invoice $invoice, $settings) |
| 47 | 47 | { |
| 48 | 48 | $this->invoice($invoice); |
| 49 | - $this->settings = (object)$settings; |
|
| 49 | + $this->settings = (object) $settings; |
|
| 50 | 50 | $this->httpClientInit(); |
| 51 | 51 | } |
| 52 | 52 | |
@@ -60,7 +60,7 @@ discard block |
||
| 60 | 60 | public function purchase() |
| 61 | 61 | { |
| 62 | 62 | $this->invoice->uuid(crc32($this->invoice->getUuid())); |
| 63 | - $token = $this->getToken(); |
|
| 63 | + $token = $this->getToken(); |
|
| 64 | 64 | $this->invoice->transactionId($token['Token']); |
| 65 | 65 | |
| 66 | 66 | return $this->invoice->getTransactionId(); |
@@ -184,10 +184,10 @@ discard block |
||
| 184 | 184 | private function httpClientInit(): void |
| 185 | 185 | { |
| 186 | 186 | $this->client = new Client([ |
| 187 | - 'curl'=>[CURLOPT_SSL_CIPHER_LIST=>'DEFAULT@SECLEVEL=1',], |
|
| 187 | + 'curl'=>[CURLOPT_SSL_CIPHER_LIST=>'DEFAULT@SECLEVEL=1', ], |
|
| 188 | 188 | 'verify' => false, |
| 189 | 189 | 'base_uri' => $this->settings->baseUri, |
| 190 | - 'headers' => ['Content-Type' => 'application/json',], |
|
| 190 | + 'headers' => ['Content-Type' => 'application/json', ], |
|
| 191 | 191 | ]); |
| 192 | 192 | } |
| 193 | 193 | |
@@ -121,7 +121,7 @@ discard block |
||
| 121 | 121 | $transactionId = $this->invoice->getTransactionId(); |
| 122 | 122 | $paymentUrl = $this->getPaymentUrl(); |
| 123 | 123 | |
| 124 | - $payUrl = $paymentUrl . $transactionId; |
|
| 124 | + $payUrl = $paymentUrl.$transactionId; |
|
| 125 | 125 | |
| 126 | 126 | return $this->redirectWithForm($payUrl, [], 'GET'); |
| 127 | 127 | } |
@@ -163,7 +163,7 @@ discard block |
||
| 163 | 163 | |
| 164 | 164 | $refId = $result['data']['ref_id']; |
| 165 | 165 | |
| 166 | - $receipt = $this->createReceipt($refId); |
|
| 166 | + $receipt = $this->createReceipt($refId); |
|
| 167 | 167 | $receipt->detail([ |
| 168 | 168 | 'code' => $result['data']['code'], |
| 169 | 169 | 'message' => $result['data']['message'] ?? null, |
@@ -107,7 +107,7 @@ discard block |
||
| 107 | 107 | $token = Request::input('Token'); |
| 108 | 108 | |
| 109 | 109 | if ($status != 0 || empty($token)) { |
| 110 | - throw new InvalidPaymentException('تراکنش توسط کاربر کنسل شده است.', (int)$status); |
|
| 110 | + throw new InvalidPaymentException('تراکنش توسط کاربر کنسل شده است.', (int) $status); |
|
| 111 | 111 | } |
| 112 | 112 | |
| 113 | 113 | $data = $this->prepareVerificationData(); |
@@ -123,7 +123,7 @@ discard block |
||
| 123 | 123 | $hasWrongRRN = (!isset($result->RRN) || $result->RRN <= 0); |
| 124 | 124 | if ($hasWrongStatus || $hasWrongRRN) { |
| 125 | 125 | $message = 'خطا از سمت بانک با کد '.$result->Status.' رخ داده است.'; |
| 126 | - throw new InvalidPaymentException($message, (int)$result->Status); |
|
| 126 | + throw new InvalidPaymentException($message, (int) $result->Status); |
|
| 127 | 127 | } |
| 128 | 128 | |
| 129 | 129 | return $this->createReceipt($result->RRN); |
@@ -104,7 +104,7 @@ discard block |
||
| 104 | 104 | */ |
| 105 | 105 | public function getOrderById($id) |
| 106 | 106 | { |
| 107 | - return $this->callCurl('/purchases?purchaseId=' . $id, [], true, 0, 'GET'); |
|
| 107 | + return $this->callCurl('/purchases?purchaseId='.$id, [], true, 0, 'GET'); |
|
| 108 | 108 | } |
| 109 | 109 | |
| 110 | 110 | /** |
@@ -151,10 +151,10 @@ discard block |
||
| 151 | 151 | } |
| 152 | 152 | |
| 153 | 153 | if (!empty($result['accessToken'])) { |
| 154 | - $this->cache->set('accessToken', 'Bearer ' . $result['accessToken'], 24 * 60 * 60 - 60); |
|
| 154 | + $this->cache->set('accessToken', 'Bearer '.$result['accessToken'], 24 * 60 * 60 - 60); |
|
| 155 | 155 | $this->cache->set('refreshToken', $result['refreshToken'], 48 * 60 * 60 - 60); |
| 156 | 156 | |
| 157 | - $this->setAccessToken('Bearer ' . $result['accessToken']); |
|
| 157 | + $this->setAccessToken('Bearer '.$result['accessToken']); |
|
| 158 | 158 | $this->setRefreshToken($result['refreshToken']); |
| 159 | 159 | |
| 160 | 160 | return 'ok'; |
@@ -184,15 +184,15 @@ discard block |
||
| 184 | 184 | $accessToken = $this->getAccessToken(); |
| 185 | 185 | } |
| 186 | 186 | |
| 187 | - $ch = curl_init($this->baseUrl . $url); |
|
| 187 | + $ch = curl_init($this->baseUrl.$url); |
|
| 188 | 188 | curl_setopt($ch, CURLOPT_USERAGENT, 'Jibit.class Rest Api'); |
| 189 | 189 | curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method); |
| 190 | 190 | curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData); |
| 191 | 191 | curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); |
| 192 | 192 | curl_setopt($ch, CURLOPT_HTTPHEADER, [ |
| 193 | 193 | 'Content-Type: application/json', |
| 194 | - 'Authorization: ' . $accessToken, |
|
| 195 | - 'Content-Length: ' . strlen($jsonData) |
|
| 194 | + 'Authorization: '.$accessToken, |
|
| 195 | + 'Content-Length: '.strlen($jsonData) |
|
| 196 | 196 | ]); |
| 197 | 197 | |
| 198 | 198 | $result = curl_exec($ch); |
@@ -201,7 +201,7 @@ discard block |
||
| 201 | 201 | curl_close($ch); |
| 202 | 202 | |
| 203 | 203 | if ($err) { |
| 204 | - throw new PurchaseFailedException('cURL Error #:' . $err); |
|
| 204 | + throw new PurchaseFailedException('cURL Error #:'.$err); |
|
| 205 | 205 | } |
| 206 | 206 | |
| 207 | 207 | if (empty($result['errors'])) { |
@@ -271,11 +271,11 @@ discard block |
||
| 271 | 271 | throw new PurchaseFailedException('Token generation encoutered an error.'); |
| 272 | 272 | } |
| 273 | 273 | |
| 274 | - if (! empty($result['accessToken'])) { |
|
| 275 | - $this->cache->set('accessToken', 'Bearer ' . $result['accessToken'], 24 * 60 * 60 - 60); |
|
| 274 | + if (!empty($result['accessToken'])) { |
|
| 275 | + $this->cache->set('accessToken', 'Bearer '.$result['accessToken'], 24 * 60 * 60 - 60); |
|
| 276 | 276 | $this->cache->set('refreshToken', $result['refreshToken'], 48 * 60 * 60 - 60); |
| 277 | 277 | |
| 278 | - $this->setAccessToken('Bearer ' . $result['accessToken']); |
|
| 278 | + $this->setAccessToken('Bearer '.$result['accessToken']); |
|
| 279 | 279 | $this->setRefreshToken($result['refreshToken']); |
| 280 | 280 | |
| 281 | 281 | return 'ok'; |
@@ -296,6 +296,6 @@ discard block |
||
| 296 | 296 | $this->generateToken(); |
| 297 | 297 | $data = []; |
| 298 | 298 | |
| 299 | - return $this->callCurl('/purchases/' . $purchaseId . '/verify', $data, true, 0, 'GET'); |
|
| 299 | + return $this->callCurl('/purchases/'.$purchaseId.'/verify', $data, true, 0, 'GET'); |
|
| 300 | 300 | } |
| 301 | 301 | } |
@@ -64,12 +64,12 @@ discard block |
||
| 64 | 64 | ); |
| 65 | 65 | |
| 66 | 66 | |
| 67 | - if (! empty($requestResult['pspSwitchingUrl'])) { |
|
| 67 | + if (!empty($requestResult['pspSwitchingUrl'])) { |
|
| 68 | 68 | $this->paymentUrl = $requestResult['pspSwitchingUrl']; |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | - if (! empty($requestResult['errors'])) { |
|
| 72 | - $errMsgs = array_map(function ($err) { |
|
| 71 | + if (!empty($requestResult['errors'])) { |
|
| 72 | + $errMsgs = array_map(function($err) { |
|
| 73 | 73 | return $err['code']; |
| 74 | 74 | }, $requestResult['errors']); |
| 75 | 75 | |
@@ -110,7 +110,7 @@ discard block |
||
| 110 | 110 | |
| 111 | 111 | $requestResult = $this->jibit->paymentVerify($purchaseId); |
| 112 | 112 | |
| 113 | - if (! empty($requestResult['status']) && $requestResult['status'] === 'SUCCESSFUL') { |
|
| 113 | + if (!empty($requestResult['status']) && $requestResult['status'] === 'SUCCESSFUL') { |
|
| 114 | 114 | $order = $this->jibit->getOrderById($purchaseId); |
| 115 | 115 | |
| 116 | 116 | $receipt = new Receipt('jibit', $purchaseId); |
@@ -61,7 +61,7 @@ discard block |
||
| 61 | 61 | public function __construct(Invoice $invoice, $settings) |
| 62 | 62 | { |
| 63 | 63 | $this->invoice($invoice); |
| 64 | - $this->settings= (object) $settings; |
|
| 64 | + $this->settings = (object) $settings; |
|
| 65 | 65 | $this->client = new Client(); |
| 66 | 66 | $this->oauthToken = $this->oauth(); |
| 67 | 67 | } |
@@ -113,7 +113,7 @@ discard block |
||
| 113 | 113 | RequestOptions::HEADERS => [ |
| 114 | 114 | 'Agent' => $this->invoice->getDetail('agent') ?? 'WEB', |
| 115 | 115 | 'Content-Type' => 'application/json', |
| 116 | - 'Authorization' => 'Bearer ' . $this->oauthToken, |
|
| 116 | + 'Authorization' => 'Bearer '.$this->oauthToken, |
|
| 117 | 117 | 'Digipay-Version' => '2022-02-02', |
| 118 | 118 | ], |
| 119 | 119 | RequestOptions::HTTP_ERRORS => false, |
@@ -152,12 +152,12 @@ discard block |
||
| 152 | 152 | |
| 153 | 153 | $response = $this->client->request( |
| 154 | 154 | 'POST', |
| 155 | - $this->settings->apiVerificationUrl . $tracingId, |
|
| 155 | + $this->settings->apiVerificationUrl.$tracingId, |
|
| 156 | 156 | [ |
| 157 | 157 | RequestOptions::QUERY => ['type' => $digipayTicketType], |
| 158 | 158 | RequestOptions::HEADERS => [ |
| 159 | 159 | "Accept" => "application/json", |
| 160 | - "Authorization" => "Bearer " . $this->oauthToken, |
|
| 160 | + "Authorization" => "Bearer ".$this->oauthToken, |
|
| 161 | 161 | ], |
| 162 | 162 | RequestOptions::HTTP_ERRORS => false, |
| 163 | 163 | ] |
@@ -186,7 +186,7 @@ discard block |
||
| 186 | 186 | $this->settings->apiOauthUrl, |
| 187 | 187 | [ |
| 188 | 188 | RequestOptions::HEADERS => [ |
| 189 | - 'Authorization' => 'Basic ' . base64_encode("{$this->settings->client_id}:{$this->settings->client_secret}"), |
|
| 189 | + 'Authorization' => 'Basic '.base64_encode("{$this->settings->client_id}:{$this->settings->client_secret}"), |
|
| 190 | 190 | ], |
| 191 | 191 | RequestOptions::MULTIPART => [ |
| 192 | 192 | [ |