Bitpay_Core - Version 2.1.5

Version Notes

Download this release

Release Info

Developer Integrations Team
Extension Bitpay_Core
Version 2.1.5
Comparing to
See all releases


Code changes from version 2.1.4 to 2.1.5

Files changed (77) hide show
  1. app/code/community/Bitpay/Core/etc/config.xml +1 -1
  2. lib/Bitpay/AccessToken.php +1 -1
  3. lib/Bitpay/AccessTokenInterface.php +1 -1
  4. lib/Bitpay/Application.php +1 -1
  5. lib/Bitpay/ApplicationInterface.php +0 -0
  6. lib/Bitpay/Autoloader.php +6 -13
  7. lib/Bitpay/Bill.php +0 -0
  8. lib/Bitpay/BillInterface.php +0 -0
  9. lib/Bitpay/Bitpay.php +0 -0
  10. lib/Bitpay/Buyer.php +0 -0
  11. lib/Bitpay/BuyerInterface.php +0 -0
  12. lib/Bitpay/Client/Adapter/AdapterInterface.php +0 -0
  13. lib/Bitpay/Client/Adapter/CurlAdapter.php +0 -0
  14. lib/Bitpay/Client/Adapter/ca-bundle.crt +0 -0
  15. lib/Bitpay/Client/ArgumentException.php +0 -0
  16. lib/Bitpay/Client/BitpayException.php +0 -0
  17. lib/Bitpay/Client/Client.php +45 -21
  18. lib/Bitpay/Client/ClientInterface.php +0 -0
  19. lib/Bitpay/Client/ConnectionException.php +0 -0
  20. lib/Bitpay/Client/Request.php +0 -0
  21. lib/Bitpay/Client/RequestInterface.php +0 -0
  22. lib/Bitpay/Client/Response.php +0 -0
  23. lib/Bitpay/Client/ResponseInterface.php +0 -0
  24. lib/Bitpay/Config/Configuration.php +0 -0
  25. lib/Bitpay/Crypto/CryptoInterface.php +0 -0
  26. lib/Bitpay/Crypto/HashExtension.php +0 -0
  27. lib/Bitpay/Crypto/McryptExtension.php +0 -0
  28. lib/Bitpay/Crypto/OpenSSLExtension.php +0 -0
  29. lib/Bitpay/Currency.php +14 -14
  30. lib/Bitpay/CurrencyInterface.php +0 -0
  31. lib/Bitpay/DependencyInjection/BitpayExtension.php +0 -0
  32. lib/Bitpay/DependencyInjection/Loader/ArrayLoader.php +0 -0
  33. lib/Bitpay/DependencyInjection/services.xml +0 -0
  34. lib/Bitpay/Invoice.php +23 -1
  35. lib/Bitpay/InvoiceInterface.php +5 -1
  36. lib/Bitpay/Item.php +0 -0
  37. lib/Bitpay/ItemInterface.php +0 -0
  38. lib/Bitpay/Key.php +0 -0
  39. lib/Bitpay/KeyInterface.php +0 -0
  40. lib/Bitpay/KeyManager.php +0 -0
  41. lib/Bitpay/Math/BcEngine.php +9 -0
  42. lib/Bitpay/Math/EngineInterface.php +0 -0
  43. lib/Bitpay/Math/GmpEngine.php +0 -0
  44. lib/Bitpay/Math/Math.php +0 -0
  45. lib/Bitpay/Network/Customnet.php +0 -0
  46. lib/Bitpay/Network/Livenet.php +0 -0
  47. lib/Bitpay/Network/NetworkAware.php +0 -0
  48. lib/Bitpay/Network/NetworkAwareInterface.php +0 -0
  49. lib/Bitpay/Network/NetworkInterface.php +0 -0
  50. lib/Bitpay/Network/Testnet.php +0 -0
  51. lib/Bitpay/Payout.php +27 -3
  52. lib/Bitpay/PayoutInstruction.php +0 -0
  53. lib/Bitpay/PayoutInstructionInterface.php +0 -0
  54. lib/Bitpay/PayoutInterface.php +8 -0
  55. lib/Bitpay/PayoutTransaction.php +0 -0
  56. lib/Bitpay/PayoutTransactionInterface.php +0 -0
  57. lib/Bitpay/Point.php +0 -0
  58. lib/Bitpay/PointInterface.php +0 -0
  59. lib/Bitpay/PrivateKey.php +0 -0
  60. lib/Bitpay/PublicKey.php +0 -0
  61. lib/Bitpay/SinKey.php +0 -0
  62. lib/Bitpay/Storage/EncryptedFilesystemStorage.php +0 -0
  63. lib/Bitpay/Storage/FilesystemStorage.php +0 -0
  64. lib/Bitpay/Storage/MockStorage.php +0 -0
  65. lib/Bitpay/Storage/StorageInterface.php +0 -0
  66. lib/Bitpay/Token.php +41 -1
  67. lib/Bitpay/TokenInterface.php +10 -0
  68. lib/Bitpay/User.php +0 -0
  69. lib/Bitpay/UserInterface.php +0 -0
  70. lib/Bitpay/Util/Base58.php +0 -0
  71. lib/Bitpay/Util/CurveParameterInterface.php +0 -0
  72. lib/Bitpay/Util/Error.php +0 -0
  73. lib/Bitpay/Util/Fingerprint.php +0 -0
  74. lib/Bitpay/Util/Secp256k1.php +0 -0
  75. lib/Bitpay/Util/SecureRandom.php +0 -0
  76. lib/Bitpay/Util/Util.php +65 -0
  77. package.xml +1 -1
app/code/community/Bitpay/Core/etc/config.xml CHANGED
@@ -8,7 +8,7 @@
8
  <config>
9
  <modules>
10
  <Bitpay_Core>
11
- <version>2.1.4</version>
12
  </Bitpay_Core>
13
  </modules>
14
 
8
  <config>
9
  <modules>
10
  <Bitpay_Core>
11
+ <version>2.1.5</version>
12
  </Bitpay_Core>
13
  </modules>
14
 
lib/Bitpay/AccessToken.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
1
  <?php
2
  /**
3
+ * @license Copyright 2011-2015 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
lib/Bitpay/AccessTokenInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
1
  <?php
2
  /**
3
+ * @license Copyright 2011-2015 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
lib/Bitpay/Application.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
1
  <?php
2
  /**
3
+ * @license Copyright 2011-2015 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
lib/Bitpay/ApplicationInterface.php CHANGED
File without changes
lib/Bitpay/Autoloader.php CHANGED
@@ -41,24 +41,17 @@ class Autoloader
41
  */
42
  public static function autoload($class)
43
  {
44
- $isBitpay = false;
45
-
46
  if (0 === strpos($class, 'Bitpay\\')) {
47
- $isBitpay = true;
48
- }
49
 
50
- $file = __DIR__.'/../'.str_replace(array('\\'), array('/'), $class).'.php';
51
 
52
- if (is_file($file) && is_readable($file)) {
53
- require_once $file;
54
 
55
- return true;
56
- }
57
 
58
- /**
59
- * Only want to throw exceptions if class is under bitpay namespace
60
- */
61
- if ($isBitpay) {
62
  throw new \Exception(sprintf('Class "%s" Not Found', $class));
63
  }
64
  }
41
  */
42
  public static function autoload($class)
43
  {
 
 
44
  if (0 === strpos($class, 'Bitpay\\')) {
45
+ $classname = substr($class, 7);
 
46
 
47
+ $file = __DIR__.DIRECTORY_SEPARATOR.str_replace('\\', DIRECTORY_SEPARATOR, $classname).'.php';
48
 
49
+ if (is_file($file) && is_readable($file)) {
50
+ require_once $file;
51
 
52
+ return true;
53
+ }
54
 
 
 
 
 
55
  throw new \Exception(sprintf('Class "%s" Not Found', $class));
56
  }
57
  }
lib/Bitpay/Bill.php CHANGED
File without changes
lib/Bitpay/BillInterface.php CHANGED
File without changes
lib/Bitpay/Bitpay.php CHANGED
File without changes
lib/Bitpay/Buyer.php CHANGED
File without changes
lib/Bitpay/BuyerInterface.php CHANGED
File without changes
lib/Bitpay/Client/Adapter/AdapterInterface.php CHANGED
File without changes
lib/Bitpay/Client/Adapter/CurlAdapter.php CHANGED
File without changes
lib/Bitpay/Client/Adapter/ca-bundle.crt CHANGED
File without changes
lib/Bitpay/Client/ArgumentException.php CHANGED
File without changes
lib/Bitpay/Client/BitpayException.php CHANGED
File without changes
lib/Bitpay/Client/Client.php CHANGED
@@ -161,10 +161,12 @@ class Client implements ClientInterface
161
  $error_message = (!empty($body['errors'])) ? $body['errors'] : $error_message;
162
  $error_message = (is_array($error_message)) ? implode("\n", $error_message) : $error_message;
163
  if (false !== $error_message) {
164
- throw new \Exception($error_message);
165
  }
166
  $data = $body['data'];
 
167
  $invoice
 
168
  ->setId($data['id'])
169
  ->setUrl($data['url'])
170
  ->setStatus($data['status'])
@@ -191,7 +193,7 @@ class Client implements ClientInterface
191
  $this->response = $this->sendRequest($this->request);
192
  $body = json_decode($this->response->getBody(), true);
193
  if (empty($body['data'])) {
194
- throw new \Exception('Error with request');
195
  }
196
  $currencies = $body['data'];
197
  array_walk($currencies, function (&$value, $key) {
@@ -261,8 +263,12 @@ class Client implements ClientInterface
261
  $this->request = $request;
262
  $this->response = $this->sendRequest($request);
263
  $body = json_decode($this->response->getBody(), true);
264
- if (isset($body['error']) || isset($body['errors'])) {
265
- throw new \Exception('Error with request');
 
 
 
 
266
  }
267
 
268
  $data = $body['data'];
@@ -297,8 +303,12 @@ class Client implements ClientInterface
297
  $this->request = $request;
298
  $this->response = $this->sendRequest($this->request);
299
  $body = json_decode($this->response->getBody(), true);
300
- if (isset($body['error']) || isset($body['errors'])) {
301
- throw new \Exception('Error with request');
 
 
 
 
302
  }
303
 
304
  $payouts = array();
@@ -310,11 +320,13 @@ class Client implements ClientInterface
310
  ->setAccountId($value['account'])
311
  ->setCurrency(new \Bitpay\Currency($value['currency']))
312
  ->setEffectiveDate($value['effectiveDate'])
313
- ->setPricingMethod($value['pricingMethod'])
314
- ->setRate(@$value['rate'])
315
  ->setRequestdate($value['requestDate'])
 
316
  ->setStatus($value['status'])
 
317
  ->setResponseToken($value['token'])
 
 
318
  ->setReference(@$value['reference'])
319
  ->setNotificationURL(@$value['notificationURL'])
320
  ->setNotificationEmail(@$value['notificationEmail']);
@@ -364,7 +376,7 @@ class Client implements ClientInterface
364
 
365
  $body = json_decode($this->response->getBody(), true);
366
  if (empty($body['data'])) {
367
- throw new \Exception('Error with request');
368
  }
369
 
370
  $data = $body['data'];
@@ -390,7 +402,7 @@ class Client implements ClientInterface
390
 
391
  $body = json_decode($this->response->getBody(), true);
392
  if (empty($body['data'])) {
393
- throw new \Exception('Error with request');
394
  }
395
  $data = $body['data'];
396
 
@@ -400,6 +412,9 @@ class Client implements ClientInterface
400
  ->setAccountId($data['account'])
401
  ->setStatus($data['status'])
402
  ->setCurrency(new \Bitpay\Currency($data['currency']))
 
 
 
403
  ->setPricingMethod(@$data['pricingMethod'])
404
  ->setReference(@$data['reference'])
405
  ->setNotificationEmail(@$data['notificationEmail'])
@@ -449,7 +464,7 @@ class Client implements ClientInterface
449
  $this->response = $this->sendRequest($this->request);
450
  $body = json_decode($this->response->getBody(), true);
451
  if (empty($body['data'])) {
452
- throw new \Exception('Error with request');
453
  }
454
 
455
  $tokens = array();
@@ -473,10 +488,8 @@ class Client implements ClientInterface
473
  */
474
  public function createToken(array $payload = array())
475
  {
476
- if ($payload !== array()) {
477
- if (1 !== preg_match('/^[a-zA-Z0-9]{7}$/', $payload['pairingCode'])) {
478
- throw new ArgumentException("pairing code is not legal");
479
- }
480
  }
481
 
482
  $this->request = $this->createNewRequest();
@@ -492,14 +505,24 @@ class Client implements ClientInterface
492
  }
493
 
494
  $tkn = $body['data'][0];
 
 
495
 
496
  $token = new \Bitpay\Token();
497
  $token
498
  ->setPolicies($tkn['policies'])
499
- ->setResource($tkn['resource'])
500
  ->setToken($tkn['token'])
501
  ->setFacade($tkn['facade'])
502
- ->setCreatedAt($tkn['dateCreated']);
 
 
 
 
 
 
 
 
 
503
 
504
  return $token;
505
  }
@@ -532,7 +555,9 @@ class Client implements ClientInterface
532
  {
533
  $this->request = $this->createNewRequest();
534
  $this->request->setMethod(Request::METHOD_GET);
535
- $this->request->setPath(sprintf('invoices/%s', $invoiceId));
 
 
536
  $this->response = $this->sendRequest($this->request);
537
  $body = json_decode($this->response->getBody(), true);
538
 
@@ -543,10 +568,9 @@ class Client implements ClientInterface
543
  $data = $body['data'];
544
 
545
  $invoice = new \Bitpay\Invoice();
 
546
  $invoice
547
- //->setToken($data['token'])
548
- //->setBtcDue($data['btcDue'])
549
- //->setExRates($data['exRates'])
550
  ->setUrl($data['url'])
551
  ->setPosData($data['posData'])
552
  ->setStatus($data['status'])
161
  $error_message = (!empty($body['errors'])) ? $body['errors'] : $error_message;
162
  $error_message = (is_array($error_message)) ? implode("\n", $error_message) : $error_message;
163
  if (false !== $error_message) {
164
+ throw new \Exception($error_message);
165
  }
166
  $data = $body['data'];
167
+ $invoiceToken = new \Bitpay\Token();
168
  $invoice
169
+ ->setToken($invoiceToken->setToken($data['token']))
170
  ->setId($data['id'])
171
  ->setUrl($data['url'])
172
  ->setStatus($data['status'])
193
  $this->response = $this->sendRequest($this->request);
194
  $body = json_decode($this->response->getBody(), true);
195
  if (empty($body['data'])) {
196
+ throw new \Exception('Error with request: no data returned');
197
  }
198
  $currencies = $body['data'];
199
  array_walk($currencies, function (&$value, $key) {
263
  $this->request = $request;
264
  $this->response = $this->sendRequest($request);
265
  $body = json_decode($this->response->getBody(), true);
266
+ $error_message = false;
267
+ $error_message = (!empty($body['error'])) ? $body['error'] : $error_message;
268
+ $error_message = (!empty($body['errors'])) ? $body['errors'] : $error_message;
269
+ $error_message = (is_array($error_message)) ? implode("\n", $error_message) : $error_message;
270
+ if (false !== $error_message) {
271
+ throw new \Exception($error_message);
272
  }
273
 
274
  $data = $body['data'];
303
  $this->request = $request;
304
  $this->response = $this->sendRequest($this->request);
305
  $body = json_decode($this->response->getBody(), true);
306
+ $error_message = false;
307
+ $error_message = (!empty($body['error'])) ? $body['error'] : $error_message;
308
+ $error_message = (!empty($body['errors'])) ? $body['errors'] : $error_message;
309
+ $error_message = (is_array($error_message)) ? implode("\n", $error_message) : $error_message;
310
+ if (false !== $error_message) {
311
+ throw new \Exception($error_message);
312
  }
313
 
314
  $payouts = array();
320
  ->setAccountId($value['account'])
321
  ->setCurrency(new \Bitpay\Currency($value['currency']))
322
  ->setEffectiveDate($value['effectiveDate'])
 
 
323
  ->setRequestdate($value['requestDate'])
324
+ ->setPricingMethod($value['pricingMethod'])
325
  ->setStatus($value['status'])
326
+ ->setAmount($value['amount'])
327
  ->setResponseToken($value['token'])
328
+ ->setRate(@$value['rate'])
329
+ ->setBtcAmount(@$value['btc'])
330
  ->setReference(@$value['reference'])
331
  ->setNotificationURL(@$value['notificationURL'])
332
  ->setNotificationEmail(@$value['notificationEmail']);
376
 
377
  $body = json_decode($this->response->getBody(), true);
378
  if (empty($body['data'])) {
379
+ throw new \Exception('Error with request: no data returned');
380
  }
381
 
382
  $data = $body['data'];
402
 
403
  $body = json_decode($this->response->getBody(), true);
404
  if (empty($body['data'])) {
405
+ throw new \Exception('Error with request: no data returned');
406
  }
407
  $data = $body['data'];
408
 
412
  ->setAccountId($data['account'])
413
  ->setStatus($data['status'])
414
  ->setCurrency(new \Bitpay\Currency($data['currency']))
415
+ ->setRate(@$data['rate'])
416
+ ->setAmount($data['amount'])
417
+ ->setBtcAmount(@$data['btc'])
418
  ->setPricingMethod(@$data['pricingMethod'])
419
  ->setReference(@$data['reference'])
420
  ->setNotificationEmail(@$data['notificationEmail'])
464
  $this->response = $this->sendRequest($this->request);
465
  $body = json_decode($this->response->getBody(), true);
466
  if (empty($body['data'])) {
467
+ throw new \Exception('Error with request: no data returned');
468
  }
469
 
470
  $tokens = array();
488
  */
489
  public function createToken(array $payload = array())
490
  {
491
+ if (isset($payload['pairingCode']) && 1 !== preg_match('/^[a-zA-Z0-9]{7}$/', $payload['pairingCode'])) {
492
+ throw new ArgumentException("pairing code is not legal");
 
 
493
  }
494
 
495
  $this->request = $this->createNewRequest();
505
  }
506
 
507
  $tkn = $body['data'][0];
508
+ $createdAt = new \DateTime();
509
+ $pairingExpiration = new \DateTime();
510
 
511
  $token = new \Bitpay\Token();
512
  $token
513
  ->setPolicies($tkn['policies'])
 
514
  ->setToken($tkn['token'])
515
  ->setFacade($tkn['facade'])
516
+ ->setCreatedAt($createdAt->setTimestamp(floor($tkn['dateCreated']/1000)));
517
+
518
+ if (isset($tkn['resource'])) {
519
+ $token->setResource($tkn['resource']);
520
+ }
521
+
522
+ if (isset($tkn['pairingCode'])) {
523
+ $token->setPairingCode($tkn['pairingCode']);
524
+ $token->setPairingExpiration($pairingExpiration->setTimestamp(floor($tkn['pairingExpiration']/1000)));
525
+ }
526
 
527
  return $token;
528
  }
555
  {
556
  $this->request = $this->createNewRequest();
557
  $this->request->setMethod(Request::METHOD_GET);
558
+ $this->request->setPath(sprintf('invoices/%s?token=%s', $invoiceId, $this->token->getToken()));
559
+ $this->addIdentityHeader($this->request);
560
+ $this->addSignatureHeader($this->request);
561
  $this->response = $this->sendRequest($this->request);
562
  $body = json_decode($this->response->getBody(), true);
563
 
568
  $data = $body['data'];
569
 
570
  $invoice = new \Bitpay\Invoice();
571
+ $invoiceToken = new \Bitpay\Token();
572
  $invoice
573
+ ->setToken($invoiceToken->setToken($data['token']))
 
 
574
  ->setUrl($data['url'])
575
  ->setPosData($data['posData'])
576
  ->setStatus($data['status'])
lib/Bitpay/Client/ClientInterface.php CHANGED
File without changes
lib/Bitpay/Client/ConnectionException.php CHANGED
File without changes
lib/Bitpay/Client/Request.php CHANGED
File without changes
lib/Bitpay/Client/RequestInterface.php CHANGED
File without changes
lib/Bitpay/Client/Response.php CHANGED
File without changes
lib/Bitpay/Client/ResponseInterface.php CHANGED
File without changes
lib/Bitpay/Config/Configuration.php CHANGED
File without changes
lib/Bitpay/Crypto/CryptoInterface.php CHANGED
File without changes
lib/Bitpay/Crypto/HashExtension.php CHANGED
File without changes
lib/Bitpay/Crypto/McryptExtension.php CHANGED
File without changes
lib/Bitpay/Crypto/OpenSSLExtension.php CHANGED
File without changes
lib/Bitpay/Currency.php CHANGED
@@ -23,20 +23,20 @@ class Currency implements CurrencyInterface
23
  protected static $availableCurrencies = array(
24
  'BTC', 'AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG',
25
  'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB',
26
- 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP',
27
- 'CNY', 'CRC', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EEK', 'EGP',
28
- 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GHS', 'GIP', 'GMD',
29
- 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS',
30
- 'INR', 'IQD', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR',
31
- 'KMF', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL',
32
- 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP',
33
- 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO',
34
- 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN',
35
- 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG',
36
- 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SRD', 'STD', 'SVC', 'SYP', 'SZL',
37
- 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TWD', 'TZS', 'UAH',
38
- 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XAG',
39
- 'XAU', 'XCD', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWL'
40
  );
41
 
42
  /**
23
  protected static $availableCurrencies = array(
24
  'BTC', 'AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG',
25
  'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB',
26
+ 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLF',
27
+ 'CLP', 'CNY', 'COP', 'CRC', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD',
28
+ 'EEK', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GHS',
29
+ 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF',
30
+ 'IDR', 'ILS', 'INR', 'IQD', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES',
31
+ 'KGS', 'KHR', 'KMF', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR',
32
+ 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK',
33
+ 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD',
34
+ 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP',
35
+ 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD',
36
+ 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SRD', 'STD', 'SVC',
37
+ 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TWD',
38
+ 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST',
39
+ 'XAF', 'XAG', 'XAU', 'XCD', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWL'
40
  );
41
 
42
  /**
lib/Bitpay/CurrencyInterface.php CHANGED
File without changes
lib/Bitpay/DependencyInjection/BitpayExtension.php CHANGED
File without changes
lib/Bitpay/DependencyInjection/Loader/ArrayLoader.php CHANGED
File without changes
lib/Bitpay/DependencyInjection/services.xml CHANGED
File without changes
lib/Bitpay/Invoice.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
@@ -112,6 +112,11 @@ class Invoice implements InvoiceInterface
112
  */
113
  protected $rate;
114
 
 
 
 
 
 
115
  /**
116
  */
117
  public function __construct()
@@ -689,4 +694,21 @@ class Invoice implements InvoiceInterface
689
 
690
  return $this;
691
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
692
  }
1
  <?php
2
  /**
3
+ * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
112
  */
113
  protected $rate;
114
 
115
+ /**
116
+ * @var
117
+ */
118
+ protected $token;
119
+
120
  /**
121
  */
122
  public function __construct()
694
 
695
  return $this;
696
  }
697
+
698
+ /**
699
+ * @return TokenInterface
700
+ */
701
+ public function getToken()
702
+ {
703
+ return $this->token;
704
+ }
705
+ /**
706
+ * @param TokenInterface $token
707
+ * @return InvoiceInterface
708
+ */
709
+ public function setToken(TokenInterface $token)
710
+ {
711
+ $this->token = $token;
712
+ return $this;
713
+ }
714
  }
lib/Bitpay/InvoiceInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
@@ -352,4 +352,8 @@ interface InvoiceInterface
352
  /**
353
  */
354
  public function getRate();
 
 
 
 
355
  }
1
  <?php
2
  /**
3
+ * @license Copyright 2011-2014 BitPay Inc., MIT License
4
  * see https://github.com/bitpay/php-bitpay-client/blob/master/LICENSE
5
  */
6
 
352
  /**
353
  */
354
  public function getRate();
355
+
356
+ /**
357
+ */
358
+ public function getToken();
359
  }
lib/Bitpay/Item.php CHANGED
File without changes
lib/Bitpay/ItemInterface.php CHANGED
File without changes
lib/Bitpay/Key.php CHANGED
File without changes
lib/Bitpay/KeyInterface.php CHANGED
File without changes
lib/Bitpay/KeyManager.php CHANGED
File without changes
lib/Bitpay/Math/BcEngine.php CHANGED
@@ -9,6 +9,15 @@ namespace Bitpay\Math;
9
  class BcEngine implements EngineInterface
10
  {
11
  const HEX_CHARS = '0123456789abcdef';
 
 
 
 
 
 
 
 
 
12
  /**
13
  * @param String $a Numeric String
14
  * @param String $b Numeric String
9
  class BcEngine implements EngineInterface
10
  {
11
  const HEX_CHARS = '0123456789abcdef';
12
+ /**
13
+ * @param String $a Numeric String
14
+ * @param String $b Numeric String
15
+ */
16
+ public function __construct()
17
+ {
18
+ bcscale(0);
19
+ }
20
+
21
  /**
22
  * @param String $a Numeric String
23
  * @param String $b Numeric String
lib/Bitpay/Math/EngineInterface.php CHANGED
File without changes
lib/Bitpay/Math/GmpEngine.php CHANGED
File without changes
lib/Bitpay/Math/Math.php CHANGED
File without changes
lib/Bitpay/Network/Customnet.php CHANGED
File without changes
lib/Bitpay/Network/Livenet.php CHANGED
File without changes
lib/Bitpay/Network/NetworkAware.php CHANGED
File without changes
lib/Bitpay/Network/NetworkAwareInterface.php CHANGED
File without changes
lib/Bitpay/Network/NetworkInterface.php CHANGED
File without changes
lib/Bitpay/Network/Testnet.php CHANGED
File without changes
lib/Bitpay/Payout.php CHANGED
@@ -32,6 +32,10 @@ class Payout implements PayoutInterface
32
  */
33
  protected $amount;
34
 
 
 
 
 
35
  /**
36
  * @var CurrencyInterface
37
  */
@@ -146,7 +150,7 @@ class Payout implements PayoutInterface
146
  * @param $amount
147
  * @return $this
148
  */
149
- private function setAmount($amount)
150
  {
151
  if (!empty($amount)) {
152
  $this->amount = $amount;
@@ -221,6 +225,28 @@ class Payout implements PayoutInterface
221
  return $this;
222
  }
223
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
224
  /**
225
  * @inheritdoc
226
  */
@@ -259,8 +285,6 @@ class Payout implements PayoutInterface
259
  {
260
  if (!empty($instruction)) {
261
  $this->instructions[] = $instruction;
262
- $new_total = $this->getAmount() + $instruction->getAmount();
263
- $this->setAmount($new_total);
264
  }
265
 
266
  return $this;
32
  */
33
  protected $amount;
34
 
35
+ /**
36
+ * @var float
37
+ */
38
+ protected $btc;
39
  /**
40
  * @var CurrencyInterface
41
  */
150
  * @param $amount
151
  * @return $this
152
  */
153
+ public function setAmount($amount)
154
  {
155
  if (!empty($amount)) {
156
  $this->amount = $amount;
225
  return $this;
226
  }
227
 
228
+ /**
229
+ * @inheritdoc
230
+ */
231
+ public function getBtcAmount()
232
+ {
233
+ return $this->btc;
234
+ }
235
+
236
+ /**
237
+ * Set the Bitcoin amount for this payout, once set by Bitpay.
238
+ * @param $amount
239
+ * @return $this
240
+ */
241
+ public function setBtcAmount($amount)
242
+ {
243
+ if (!empty($amount)) {
244
+ $this->btc = $amount;
245
+ }
246
+
247
+ return $this;
248
+ }
249
+
250
  /**
251
  * @inheritdoc
252
  */
285
  {
286
  if (!empty($instruction)) {
287
  $this->instructions[] = $instruction;
 
 
288
  }
289
 
290
  return $this;
lib/Bitpay/PayoutInstruction.php CHANGED
File without changes
lib/Bitpay/PayoutInstructionInterface.php CHANGED
File without changes
lib/Bitpay/PayoutInterface.php CHANGED
@@ -65,6 +65,14 @@ interface PayoutInterface
65
  */
66
  public function getAmount();
67
 
 
 
 
 
 
 
 
 
68
  /**
69
  * This is the currency code set for the batch amount. The pricing currencies
70
  * currently supported are USD and EUR.
65
  */
66
  public function getAmount();
67
 
68
+ /**
69
+ * This will return the Bitcoin amount for this transaction. This
70
+ * should only be called once the payout is funded
71
+ *
72
+ * @return float
73
+ */
74
+ public function getBtcAmount();
75
+
76
  /**
77
  * This is the currency code set for the batch amount. The pricing currencies
78
  * currently supported are USD and EUR.
lib/Bitpay/PayoutTransaction.php CHANGED
File without changes
lib/Bitpay/PayoutTransactionInterface.php CHANGED
File without changes
lib/Bitpay/Point.php CHANGED
File without changes
lib/Bitpay/PointInterface.php CHANGED
File without changes
lib/Bitpay/PrivateKey.php CHANGED
File without changes
lib/Bitpay/PublicKey.php CHANGED
File without changes
lib/Bitpay/SinKey.php CHANGED
File without changes
lib/Bitpay/Storage/EncryptedFilesystemStorage.php CHANGED
File without changes
lib/Bitpay/Storage/FilesystemStorage.php CHANGED
File without changes
lib/Bitpay/Storage/MockStorage.php CHANGED
File without changes
lib/Bitpay/Storage/StorageInterface.php CHANGED
File without changes
lib/Bitpay/Token.php CHANGED
@@ -36,6 +36,16 @@ class Token implements TokenInterface
36
  */
37
  protected $policies;
38
 
 
 
 
 
 
 
 
 
 
 
39
  /**
40
  */
41
  public function __construct()
@@ -104,7 +114,7 @@ class Token implements TokenInterface
104
  return $this->createdAt;
105
  }
106
 
107
- public function setCreatedAt($createdAt)
108
  {
109
  $this->createdAt = $createdAt;
110
 
@@ -125,4 +135,34 @@ class Token implements TokenInterface
125
 
126
  return $this;
127
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  }
36
  */
37
  protected $policies;
38
 
39
+ /**
40
+ * @var string
41
+ */
42
+ protected $pairingCode;
43
+
44
+ /**
45
+ * @var \DateTime
46
+ */
47
+ protected $pairingExpiration;
48
+
49
  /**
50
  */
51
  public function __construct()
114
  return $this->createdAt;
115
  }
116
 
117
+ public function setCreatedAt(\DateTime $createdAt)
118
  {
119
  $this->createdAt = $createdAt;
120
 
135
 
136
  return $this;
137
  }
138
+
139
+ /**
140
+ * @return string
141
+ */
142
+ public function getPairingCode()
143
+ {
144
+ return $this->pairingCode;
145
+ }
146
+
147
+ public function setPairingCode($pairingCode)
148
+ {
149
+ $this->pairingCode = $pairingCode;
150
+
151
+ return $this;
152
+ }
153
+
154
+ /**
155
+ * @return \DateTime
156
+ */
157
+ public function getPairingExpiration()
158
+ {
159
+ return $this->pairingExpiration;
160
+ }
161
+
162
+ public function setPairingExpiration(\DateTime $pairingExpiration)
163
+ {
164
+ $this->pairingExpiration = $pairingExpiration;
165
+
166
+ return $this;
167
+ }
168
  }
lib/Bitpay/TokenInterface.php CHANGED
@@ -35,4 +35,14 @@ interface TokenInterface
35
  * @return array
36
  */
37
  public function getPolicies();
 
 
 
 
 
 
 
 
 
 
38
  }
35
  * @return array
36
  */
37
  public function getPolicies();
38
+
39
+ /**
40
+ * @return string
41
+ */
42
+ public function getPairingCode();
43
+
44
+ /**
45
+ * @return \DateTime
46
+ */
47
+ public function getPairingExpiration();
48
  }
lib/Bitpay/User.php CHANGED
File without changes
lib/Bitpay/UserInterface.php CHANGED
File without changes
lib/Bitpay/Util/Base58.php CHANGED
File without changes
lib/Bitpay/Util/CurveParameterInterface.php CHANGED
File without changes
lib/Bitpay/Util/Error.php CHANGED
File without changes
lib/Bitpay/Util/Fingerprint.php CHANGED
File without changes
lib/Bitpay/Util/Secp256k1.php CHANGED
File without changes
lib/Bitpay/Util/SecureRandom.php CHANGED
File without changes
lib/Bitpay/Util/Util.php CHANGED
@@ -406,4 +406,69 @@ class Util
406
 
407
  return strrev($byte);
408
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
409
  }
406
 
407
  return strrev($byte);
408
  }
409
+
410
+ /**
411
+ * Checks dependencies for the library
412
+ *
413
+ * @return array list of each requirement, boolean true if met, string error message if not as value
414
+ */
415
+ public static function checkRequirements()
416
+ {
417
+ $requirements = array();
418
+
419
+ // PHP Version
420
+ if (!defined('PHP_VERSION_ID')) {
421
+ $version = explode('.', PHP_VERSION);
422
+ define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
423
+ }
424
+ if (PHP_VERSION_ID < 50400) {
425
+ $requirements['PHP'] = 'Your PHP version, ' . PHP_VERSION . ', is too low. PHP version >= 5.4 is required.';
426
+ } else {
427
+ $requirements['PHP'] = true;
428
+ }
429
+
430
+ // Mcrypt Extension
431
+ if (!extension_loaded('mcrypt')) {
432
+ $requirements['Mcrypt'] = 'The Mcrypt PHP extension could not be found.';
433
+ } else {
434
+ $requirements['Mcrypt'] = true;
435
+ }
436
+
437
+ // OpenSSL Extension
438
+ if (!extension_loaded('openssl')) {
439
+ $requirements['OpenSSL'] = 'The OpenSSL PHP extension could not be found.';
440
+ } else {
441
+ $requirements['OpenSSL'] = true;
442
+ }
443
+
444
+ // JSON Extension
445
+ if (!extension_loaded('json')) {
446
+ $requirements['JSON'] = 'The JSON PHP extension could not be found.';
447
+ } else {
448
+ $requirements['JSON'] = true;
449
+ }
450
+
451
+ // cURL Extension
452
+ if (!extension_loaded('curl')) {
453
+ $requirements['cURL'] = 'The cURL PHP extension could not be found.';
454
+ } else {
455
+ $requirements['cURL'] = true;
456
+ $curl_version = curl_version();
457
+ $ssl_supported = ($curl_version['features'] & CURL_VERSION_SSL);
458
+ if (!$ssl_supported) {
459
+ $requirements['cURL.SSL'] = 'The cURL PHP extension does not have SSL support.';
460
+ } else {
461
+ $requirements['cURL.SSL'] = true;
462
+ }
463
+ }
464
+
465
+ // Math
466
+ if (!extension_loaded('bcmath') && !extension_loaded('gmp')) {
467
+ $requirements['Math'] = 'Either the BC Math or GMP PHP extension is required. Neither could be found.';
468
+ } else {
469
+ $requirements['Math'] = true;
470
+ }
471
+
472
+ return $requirements;
473
+ }
474
  }
package.xml CHANGED
@@ -1,2 +1,2 @@
1
  <?xml version="1.0"?>
2
- <package><name>Bitpay_Core</name><version>2.1.4</version><stability>stable</stability><license uri="https://github.com/bitpay/magento-plugin/blob/master/LICENSE">MIT</license><channel>community</channel><extends/><summary/><description/><notes/><authors><author><name>Integrations Team</name><user>BitPayInc</user><email>support@bitpay.com</email></author></authors><date>2015-06-09</date><time>10:51:06</time><compatible/><dependencies/><required php_min="5.4.0" php_max="6.0.0">php</required><extensions><name>openssl<min/><max/></name><name>mcrypt<min/><max/></name></extensions><contents><target name="mage"><dir name="app"><dir name="code"><dir name="community"><dir name="Bitpay"><dir name="Core"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Extension.php" hash="ce9dd3c24d090a4f3ecd10f0488eb635"/><file name="Header.php" hash="a1a0f427bfacfda6375acd345696262a"/></dir></dir></dir></dir></dir><dir name="Form"><file name="Bitpay.php" hash="c071d4a4f56b2c5cebaad25d21ad0645"/></dir><file name="Iframe.php" hash="4e30275678e7f53ee474ec4beeaa23c9"/><file name="Info.php" hash="3c8ca079710e5b8e5d176a0c15383400"/></dir><dir name="controllers"><file name="IndexController.php" hash="cccb8e613c6ddbc102c3f194d10bc17b"/><file name="IpnController.php" hash="0210d2d02ddc3059e8708d8153c76cd6"/></dir><dir name="etc"><file name="adminhtml.xml" hash="a3d6e1c3fb81e271a85260aba4f9f797"/><file name="config.xml" hash="450a7f61ec785ca13828050410ea7158"/><file name="system.xml" hash="292e163d31c53b3586f9f319f236ff47"/></dir><dir name="Helper"><file name="Data.php" hash="fa70c9276b88f86abaec6939b39f1afd"/></dir><file name="LICENSE" hash="c443b0598a4770735bb68838f7d563a3"/><dir name="Model"><dir name="Config"><file name="PairingCode.php" hash="2a5e0ad5ff0713505e0369650e3666b6"/></dir><file name="Invoice.php" hash="aabfe84828f8bb9b5f49ea400987c545"/><file name="Ipn.php" hash="a4fbded43a0afe2285f2d474ae5bfe26"/><dir name="Method"><file name="Bitcoin.php" hash="2255adc27d7f1b3d6af77dddc73f7933"/></dir><dir name="Mysql4"><dir name="Invoice"><file name="Collection.php" hash="22be8a79edc2e1cd5b61f1800c4cfe53"/></dir><file name="Invoice.php" hash="9bbf44a18a28e74528bc68eee4c43832"/><dir name="Ipn"><file name="Collection.php" hash="8c9b4087793d674b47d08d62812cf9f5"/></dir><file name="Ipn.php" hash="428c133bd044253229ac7876aa08acbf"/></dir><file name="Network.php" hash="a02a268fac47fe19fed93828f28285e2"/><file name="Observer.php" hash="c0e6a80ae7cd484ac0221c5621533100"/><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="285ede9c3abd026784b1b20fff3a1913"/></dir></dir><file name="Status.php" hash="deba733eeb8127395e9f23677627e8c4"/><file name="TransactionSpeed.php" hash="444a8dfce8bdde09efa8daeafcef6cf9"/></dir><file name="README.md" hash="5de7be17a73016fe9c2f27219641c28d"/><dir name="sql"><dir name="bitpay_setup"><file name="install-2.1.4.php" hash="fb4684735bcb535cd05cca29af169274"/><file name="upgrade-2.1.2-2.1.4.php" hash="e3a67cc75ffe28e032da1324ca5aecf2"/></dir></dir></dir></dir></dir></dir><dir name="design"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="bitpay.xml" hash="c7e3886904c20f44b58409968c4209f0"/></dir><dir name="template"><dir name="bitpay"><dir name="info"><file name="default.phtml" hash="7e31f22f964ccbbbdcd71504c60e0393"/></dir><dir name="system"><dir name="config"><dir name="field"><file name="header.phtml" hash="971ec034699d110f7842a2c8befb4c55"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="bitpay.xml" hash="c7e3886904c20f44b58409968c4209f0"/></dir><dir name="template"><dir name="bitpay"><dir name="form"><file name="bitpay.phtml" hash="c12ef983014d5a73906502d2031108e2"/></dir><file name="iframe.phtml" hash="84892655b0e807e905251b8763850bae"/><dir name="info"><file name="default.phtml" hash="a3bd6e183052b9d9181aaf96accfa42e"/></dir><file name="json.phtml" hash="cc43e25d0445d5ba15b448ba946dabfd"/></dir></dir></dir></dir></dir></dir><dir name="etc"><dir name="modules"><file name="Bitpay_Core.xml" hash="122aa83102518a01122aaddcafa8ea7f"/></dir></dir><dir name="locale"><dir name="en_US"><file name="Bitpay_Core.csv" hash="1f6198bdeee3f77f87c36b4e09b45be2"/></dir></dir></dir><dir name="lib"><dir name="Bitpay"><file name="AccessToken.php" hash="dd33ed2e4802be42097c3c09e0d12b63"/><file name="AccessTokenInterface.php" hash="57b7b403c1644dba10474d67b3b781ca"/><file name="Application.php" hash="832324bd621f53ac57d5d4d04ecf4e1c"/><file name="ApplicationInterface.php" hash="8721d3fe85f80dbf71ead7df93eb3f82"/><file name="Autoloader.php" hash="109400039e04ef345ac879a944fe45ba"/><file name="Bill.php" hash="d41fc149de27e026546cda7db6c060cb"/><file name="BillInterface.php" hash="4d4f7c1e6b8ea9421a5e6651c7bd0654"/><file name="Bitpay.php" hash="50120aeed758c3acb3bebfc4b202f168"/><file name="Buyer.php" hash="aa43ea51f57b00568e3827d1e7ba2025"/><file name="BuyerInterface.php" hash="749f9fc623ff65e5bce296a5b4dfdbbc"/><dir name="Client"><dir name="Adapter"><file name="AdapterInterface.php" hash="b85307a1bd110c08141a7eb29b305973"/><file name="ca-bundle.crt" hash="9025ca14554240fc05c4e919ae3f8923"/><file name="CurlAdapter.php" hash="267beddc7821db66f81a113c4d806a20"/></dir><file name="ArgumentException.php" hash="3dc6e11dfc71116cad8e843255a09d2b"/><file name="BitpayException.php" hash="f8de7190213f0fab975e44f29ffa17f1"/><file name="Client.php" hash="2df93e3402b02922ad5939ede9988bd0"/><file name="ClientInterface.php" hash="365b7a595eb15705bd4bd88273d10293"/><file name="ConnectionException.php" hash="f5cd06c10cca143d3e7a4f6c24e2727b"/><file name="Request.php" hash="fbdd615774ab606df4062b3874c03496"/><file name="RequestInterface.php" hash="1a77530dddf63f24a78ce488c401f499"/><file name="Response.php" hash="195796fb21d235e1348caca2a990910d"/><file name="ResponseInterface.php" hash="1d53f3b84efc12e370c72ac7be0e8211"/></dir><dir name="Config"><file name="Configuration.php" hash="7cb0441f0dce52bab9f30f0cc3dee2fa"/></dir><dir name="Crypto"><file name="CryptoInterface.php" hash="13ac34aa5f26fe5640c037511c7789f4"/><file name="HashExtension.php" hash="62f5d49ddafbc7e7ca19aaaea76830ba"/><file name="McryptExtension.php" hash="160e7e94e6ec50b255742bb5366dea29"/><file name="OpenSSLExtension.php" hash="e8393638871fc2605dbd6ec58e7a7564"/></dir><file name="Currency.php" hash="85fad91aae2c896aee7f463c9952d320"/><file name="CurrencyInterface.php" hash="561ff6c529ab29813e751999e70fb166"/><dir name="DependencyInjection"><file name="BitpayExtension.php" hash="fc361f93a85be0b066dd1a60bb5d4a15"/><dir name="Loader"><file name="ArrayLoader.php" hash="5176febbc2ff9bf1646f623dccd54cd7"/></dir><file name="services.xml" hash="cda4e79bf0e6f6821e5b4c2e16c240cb"/></dir><file name="Invoice.php" hash="f93959d593e54c30f01ccae85f521168"/><file name="InvoiceInterface.php" hash="1e280dbf85d96ad462b47c087fbe6d9f"/><file name="Item.php" hash="a4fc84d7309cf44de812612ca2fa6c90"/><file name="ItemInterface.php" hash="94e9fc64fafde84425cb30f73b96dc48"/><file name="Key.php" hash="0c6bdce34e7b3a650914393c9da5c99d"/><file name="KeyInterface.php" hash="30253c1e42ee7b452bbb0a7451c88685"/><file name="KeyManager.php" hash="ad48cd3f5ddba0c47606659a32e85e7b"/><dir name="Math"><file name="BcEngine.php" hash="2db2b0d7aed63b5641d646f56f196942"/><file name="EngineInterface.php" hash="a0de5260325608e0911d4128fe3e52c2"/><file name="GmpEngine.php" hash="3136a8196599b00f097c15c0aa3a4c49"/><file name="Math.php" hash="98fb61ecc9379c625c9b970df7e0ac54"/></dir><dir name="Network"><file name="Customnet.php" hash="d2af606a4a63babf0a08d0e8abac72f5"/><file name="Livenet.php" hash="7107f34a87978e78588482e5b1f868d4"/><file name="NetworkAware.php" hash="d92aad1b38105078cd5055b295014a11"/><file name="NetworkAwareInterface.php" hash="1d1f87d25469a8ce2d0f1f2eaaf03ef1"/><file name="NetworkInterface.php" hash="998b026f803b4d99daec03b876d2d132"/><file name="Testnet.php" hash="98b315759b32549c558e143e50a365ad"/></dir><file name="Payout.php" hash="ca73c1f0a81a642ed0a6fed6fd1002c1"/><file name="PayoutInstruction.php" hash="ef96db181023671aecac43950b709001"/><file name="PayoutInstructionInterface.php" hash="5d6c51b0b6a980d84bfad21ecaecf92c"/><file name="PayoutInterface.php" hash="5fe5e08a395d2179e64baa3364ff512c"/><file name="PayoutTransaction.php" hash="80ed69aae8134c32caddbfd8e17a85e3"/><file name="PayoutTransactionInterface.php" hash="43a42bf47814d44b431328b5e70731a4"/><file name="Point.php" hash="605d50d4b9890f2e1a3120fb5b0c50d2"/><file name="PointInterface.php" hash="2a8fce4bbc8e84e221563c27ce7b57ce"/><file name="PrivateKey.php" hash="d3e6ec3b5c91eb9627509365b26fb744"/><file name="PublicKey.php" hash="dca40e9a5e8679f21d143d205cd2c389"/><file name="SinKey.php" hash="f126c1344247e87aa5c108d57f0ca354"/><dir name="Storage"><file name="EncryptedFilesystemStorage.php" hash="e42a3c81bd19393ae78c10fed77dfb75"/><file name="FilesystemStorage.php" hash="673528691f5b999fc5481ff112140dfe"/><file name="MagentoStorage.php" hash="a2b276b80d0b568b67bd6b1dd1c4af04"/><file name="MockStorage.php" hash="2570dbf74083bb8a7117595a6c4aefb4"/><file name="StorageInterface.php" hash="bb136e52d599fdb59739f32d027a1602"/></dir><file name="Token.php" hash="8440fcdcbf7d20d8bda3e7ee7e6ad73f"/><file name="TokenInterface.php" hash="a0da969c86e363b201cc48c0a228ebed"/><file name="User.php" hash="061f9f4dcff8d3090cb358ae1b87e259"/><file name="UserInterface.php" hash="7714dd84ab21eac77736a80d9e19f7c0"/><dir name="Util"><file name="Base58.php" hash="544526f4f89848bfb61f7bfcae348af6"/><file name="CurveParameterInterface.php" hash="72ca86056b4abfebbcfec87037478db7"/><file name="Error.php" hash="d4e4ba021b73f94467793043db14cc93"/><file name="Fingerprint.php" hash="0dde9668583a04391a2faf99d4b72914"/><file name="Secp256k1.php" hash="84d9a363e0f185200664c712832b8759"/><file name="SecureRandom.php" hash="9e699a6e383cb439a604f6e6e1837833"/><file name="Util.php" hash="00a6664bc2a77483a01c614054a20e58"/></dir></dir></dir></target></contents></package>
1
  <?xml version="1.0"?>
2
+ <package><name>Bitpay_Core</name><version>2.1.5</version><stability>stable</stability><license uri="https://github.com/bitpay/magento-plugin/blob/master/LICENSE">MIT</license><channel>community</channel><extends/><summary/><description/><notes/><authors><author><name>Integrations Team</name><user>BitPayInc</user><email>support@bitpay.com</email></author></authors><date>2015-06-09</date><time>11:28:41</time><compatible/><dependencies/><required php_min="5.4.0" php_max="6.0.0">php</required><extensions><name>openssl<min/><max/></name><name>mcrypt<min/><max/></name></extensions><contents><target name="mage"><dir name="app"><dir name="code"><dir name="community"><dir name="Bitpay"><dir name="Core"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Extension.php" hash="ce9dd3c24d090a4f3ecd10f0488eb635"/><file name="Header.php" hash="a1a0f427bfacfda6375acd345696262a"/></dir></dir></dir></dir></dir><dir name="Form"><file name="Bitpay.php" hash="c071d4a4f56b2c5cebaad25d21ad0645"/></dir><file name="Iframe.php" hash="4e30275678e7f53ee474ec4beeaa23c9"/><file name="Info.php" hash="3c8ca079710e5b8e5d176a0c15383400"/></dir><dir name="controllers"><file name="IndexController.php" hash="cccb8e613c6ddbc102c3f194d10bc17b"/><file name="IpnController.php" hash="0210d2d02ddc3059e8708d8153c76cd6"/></dir><dir name="etc"><file name="adminhtml.xml" hash="a3d6e1c3fb81e271a85260aba4f9f797"/><file name="config.xml" hash="a399a9e9ba38384699651c02a85f35a7"/><file name="system.xml" hash="292e163d31c53b3586f9f319f236ff47"/></dir><dir name="Helper"><file name="Data.php" hash="fa70c9276b88f86abaec6939b39f1afd"/></dir><file name="LICENSE" hash="c443b0598a4770735bb68838f7d563a3"/><dir name="Model"><dir name="Config"><file name="PairingCode.php" hash="2a5e0ad5ff0713505e0369650e3666b6"/></dir><file name="Invoice.php" hash="aabfe84828f8bb9b5f49ea400987c545"/><file name="Ipn.php" hash="a4fbded43a0afe2285f2d474ae5bfe26"/><dir name="Method"><file name="Bitcoin.php" hash="2255adc27d7f1b3d6af77dddc73f7933"/></dir><dir name="Mysql4"><dir name="Invoice"><file name="Collection.php" hash="22be8a79edc2e1cd5b61f1800c4cfe53"/></dir><file name="Invoice.php" hash="9bbf44a18a28e74528bc68eee4c43832"/><dir name="Ipn"><file name="Collection.php" hash="8c9b4087793d674b47d08d62812cf9f5"/></dir><file name="Ipn.php" hash="428c133bd044253229ac7876aa08acbf"/></dir><file name="Network.php" hash="a02a268fac47fe19fed93828f28285e2"/><file name="Observer.php" hash="c0e6a80ae7cd484ac0221c5621533100"/><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="285ede9c3abd026784b1b20fff3a1913"/></dir></dir><file name="Status.php" hash="deba733eeb8127395e9f23677627e8c4"/><file name="TransactionSpeed.php" hash="444a8dfce8bdde09efa8daeafcef6cf9"/></dir><file name="README.md" hash="5de7be17a73016fe9c2f27219641c28d"/><dir name="sql"><dir name="bitpay_setup"><file name="install-2.1.4.php" hash="fb4684735bcb535cd05cca29af169274"/><file name="upgrade-2.1.2-2.1.4.php" hash="e3a67cc75ffe28e032da1324ca5aecf2"/></dir></dir></dir></dir></dir></dir><dir name="design"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="bitpay.xml" hash="c7e3886904c20f44b58409968c4209f0"/></dir><dir name="template"><dir name="bitpay"><dir name="info"><file name="default.phtml" hash="7e31f22f964ccbbbdcd71504c60e0393"/></dir><dir name="system"><dir name="config"><dir name="field"><file name="header.phtml" hash="971ec034699d110f7842a2c8befb4c55"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="bitpay.xml" hash="c7e3886904c20f44b58409968c4209f0"/></dir><dir name="template"><dir name="bitpay"><dir name="form"><file name="bitpay.phtml" hash="c12ef983014d5a73906502d2031108e2"/></dir><file name="iframe.phtml" hash="84892655b0e807e905251b8763850bae"/><dir name="info"><file name="default.phtml" hash="a3bd6e183052b9d9181aaf96accfa42e"/></dir><file name="json.phtml" hash="cc43e25d0445d5ba15b448ba946dabfd"/></dir></dir></dir></dir></dir></dir><dir name="etc"><dir name="modules"><file name="Bitpay_Core.xml" hash="122aa83102518a01122aaddcafa8ea7f"/></dir></dir><dir name="locale"><dir name="en_US"><file name="Bitpay_Core.csv" hash="1f6198bdeee3f77f87c36b4e09b45be2"/></dir></dir></dir><dir name="lib"><dir name="Bitpay"><file name="AccessToken.php" hash="6de3bca49ec2dac54edd710e56f7e7f0"/><file name="AccessTokenInterface.php" hash="05a21e15cb40068c9dccd707b6add3f1"/><file name="Application.php" hash="67d05a61a3e0535c32949c73425921cb"/><file name="ApplicationInterface.php" hash="8721d3fe85f80dbf71ead7df93eb3f82"/><file name="Autoloader.php" hash="ae31a6ee3b445751264cff7f2eb15609"/><file name="Bill.php" hash="d41fc149de27e026546cda7db6c060cb"/><file name="BillInterface.php" hash="4d4f7c1e6b8ea9421a5e6651c7bd0654"/><file name="Bitpay.php" hash="50120aeed758c3acb3bebfc4b202f168"/><file name="Buyer.php" hash="aa43ea51f57b00568e3827d1e7ba2025"/><file name="BuyerInterface.php" hash="749f9fc623ff65e5bce296a5b4dfdbbc"/><dir name="Client"><dir name="Adapter"><file name="AdapterInterface.php" hash="b85307a1bd110c08141a7eb29b305973"/><file name="ca-bundle.crt" hash="9025ca14554240fc05c4e919ae3f8923"/><file name="CurlAdapter.php" hash="267beddc7821db66f81a113c4d806a20"/></dir><file name="ArgumentException.php" hash="3dc6e11dfc71116cad8e843255a09d2b"/><file name="BitpayException.php" hash="f8de7190213f0fab975e44f29ffa17f1"/><file name="Client.php" hash="fee24c5413371380c6260b58979c9f9f"/><file name="ClientInterface.php" hash="365b7a595eb15705bd4bd88273d10293"/><file name="ConnectionException.php" hash="f5cd06c10cca143d3e7a4f6c24e2727b"/><file name="Request.php" hash="fbdd615774ab606df4062b3874c03496"/><file name="RequestInterface.php" hash="1a77530dddf63f24a78ce488c401f499"/><file name="Response.php" hash="195796fb21d235e1348caca2a990910d"/><file name="ResponseInterface.php" hash="1d53f3b84efc12e370c72ac7be0e8211"/></dir><dir name="Config"><file name="Configuration.php" hash="7cb0441f0dce52bab9f30f0cc3dee2fa"/></dir><dir name="Crypto"><file name="CryptoInterface.php" hash="13ac34aa5f26fe5640c037511c7789f4"/><file name="HashExtension.php" hash="62f5d49ddafbc7e7ca19aaaea76830ba"/><file name="McryptExtension.php" hash="160e7e94e6ec50b255742bb5366dea29"/><file name="OpenSSLExtension.php" hash="e8393638871fc2605dbd6ec58e7a7564"/></dir><file name="Currency.php" hash="032871dc2c1fa880f9583f50148563fb"/><file name="CurrencyInterface.php" hash="561ff6c529ab29813e751999e70fb166"/><dir name="DependencyInjection"><file name="BitpayExtension.php" hash="fc361f93a85be0b066dd1a60bb5d4a15"/><dir name="Loader"><file name="ArrayLoader.php" hash="5176febbc2ff9bf1646f623dccd54cd7"/></dir><file name="services.xml" hash="cda4e79bf0e6f6821e5b4c2e16c240cb"/></dir><file name="Invoice.php" hash="d08a8b972e2cf32d505c3bef381aa5ac"/><file name="InvoiceInterface.php" hash="9d4e69fd3c8185cbc93978e19cd87827"/><file name="Item.php" hash="a4fc84d7309cf44de812612ca2fa6c90"/><file name="ItemInterface.php" hash="94e9fc64fafde84425cb30f73b96dc48"/><file name="Key.php" hash="0c6bdce34e7b3a650914393c9da5c99d"/><file name="KeyInterface.php" hash="30253c1e42ee7b452bbb0a7451c88685"/><file name="KeyManager.php" hash="ad48cd3f5ddba0c47606659a32e85e7b"/><dir name="Math"><file name="BcEngine.php" hash="281c473a2cdbb73457c3f2c5ade514ae"/><file name="EngineInterface.php" hash="a0de5260325608e0911d4128fe3e52c2"/><file name="GmpEngine.php" hash="3136a8196599b00f097c15c0aa3a4c49"/><file name="Math.php" hash="98fb61ecc9379c625c9b970df7e0ac54"/></dir><dir name="Network"><file name="Customnet.php" hash="d2af606a4a63babf0a08d0e8abac72f5"/><file name="Livenet.php" hash="7107f34a87978e78588482e5b1f868d4"/><file name="NetworkAware.php" hash="d92aad1b38105078cd5055b295014a11"/><file name="NetworkAwareInterface.php" hash="1d1f87d25469a8ce2d0f1f2eaaf03ef1"/><file name="NetworkInterface.php" hash="998b026f803b4d99daec03b876d2d132"/><file name="Testnet.php" hash="98b315759b32549c558e143e50a365ad"/></dir><file name="Payout.php" hash="be6c641b0bfa64f809ea85fcab6da954"/><file name="PayoutInstruction.php" hash="ef96db181023671aecac43950b709001"/><file name="PayoutInstructionInterface.php" hash="5d6c51b0b6a980d84bfad21ecaecf92c"/><file name="PayoutInterface.php" hash="b9e264009a1738b8204572dafca97745"/><file name="PayoutTransaction.php" hash="80ed69aae8134c32caddbfd8e17a85e3"/><file name="PayoutTransactionInterface.php" hash="43a42bf47814d44b431328b5e70731a4"/><file name="Point.php" hash="605d50d4b9890f2e1a3120fb5b0c50d2"/><file name="PointInterface.php" hash="2a8fce4bbc8e84e221563c27ce7b57ce"/><file name="PrivateKey.php" hash="d3e6ec3b5c91eb9627509365b26fb744"/><file name="PublicKey.php" hash="dca40e9a5e8679f21d143d205cd2c389"/><file name="SinKey.php" hash="f126c1344247e87aa5c108d57f0ca354"/><dir name="Storage"><file name="EncryptedFilesystemStorage.php" hash="e42a3c81bd19393ae78c10fed77dfb75"/><file name="FilesystemStorage.php" hash="673528691f5b999fc5481ff112140dfe"/><file name="MagentoStorage.php" hash="a2b276b80d0b568b67bd6b1dd1c4af04"/><file name="MockStorage.php" hash="2570dbf74083bb8a7117595a6c4aefb4"/><file name="StorageInterface.php" hash="bb136e52d599fdb59739f32d027a1602"/></dir><file name="Token.php" hash="1fa586a9e05b86f5f1f8ef288c32f2c9"/><file name="TokenInterface.php" hash="b4d63534c0f88f13dc251ea981d8113f"/><file name="User.php" hash="061f9f4dcff8d3090cb358ae1b87e259"/><file name="UserInterface.php" hash="7714dd84ab21eac77736a80d9e19f7c0"/><dir name="Util"><file name="Base58.php" hash="544526f4f89848bfb61f7bfcae348af6"/><file name="CurveParameterInterface.php" hash="72ca86056b4abfebbcfec87037478db7"/><file name="Error.php" hash="d4e4ba021b73f94467793043db14cc93"/><file name="Fingerprint.php" hash="0dde9668583a04391a2faf99d4b72914"/><file name="Secp256k1.php" hash="84d9a363e0f185200664c712832b8759"/><file name="SecureRandom.php" hash="9e699a6e383cb439a604f6e6e1837833"/><file name="Util.php" hash="5b9a5032ee1385587d12d5df958e5d05"/></dir></dir></dir></target></contents></package>