| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445 |
- <?php
- /**
- * This file is part of the Klarna Core module
- *
- * (c) Klarna Bank AB (publ)
- *
- * For the full copyright and license information, please view the NOTICE
- * and LICENSE files that were distributed with this source code.
- */
- namespace Klarna\Core\Config;
- use Klarna\Core\Api\VersionInterface;
- /**
- * Class ApiVersion
- *
- * @package Klarna\Core\Config
- * @SuppressWarnings(PHPMD.TooManyFields)
- */
- class ApiVersion implements VersionInterface
- {
- /**
- * @var string
- */
- private $type = 'payments';
- /**
- * @var string
- */
- private $code = 'kp_na';
- /**
- * @var bool
- */
- private $shipping_callback_support = false;
- /**
- * @var bool
- */
- private $merchant_checkbox_support = false;
- /**
- * @var bool
- */
- private $date_of_birth_mandatory_support = false;
- /**
- * @var bool
- */
- private $phone_mandatory_support = false;
- /**
- * @var string
- */
- private $ordermanagement;
- /**
- * @var bool
- */
- private $title_mandatory_support = false;
- /**
- * @var bool
- */
- private $delayed_push_notification = false;
- /**
- * @var bool
- */
- private $partial_payment_disabled = false;
- /**
- * @var bool
- */
- private $separate_tax_line = false;
- /**
- * @var bool
- */
- private $shipping_in_iframe = false;
- /**
- * @var bool
- */
- private $cart_totals_in_iframe = false;
- /**
- * @var bool
- */
- private $packstation_support = false;
- /**
- * @var string
- */
- private $production_url = 'https://api.klarna.com';
- /**
- * @var string
- */
- private $testdrive_url = 'https://api.playground.klarna.com';
- /**
- * @var bool
- */
- private $payment_review = false;
- /**
- * @var string
- */
- private $label = '';
- /**
- * ApiVersion constructor.
- *
- * @param string $type
- */
- public function __construct($data = [])
- {
- foreach ($data as $key => $value) {
- if (property_exists($this, $key)) {
- $this->$key = $value;
- }
- }
- }
- /**
- * @return bool
- */
- public function isCartTotalsInIframe()
- {
- return $this->cart_totals_in_iframe;
- }
- /**
- * @param bool $cart_totals_in_iframe
- * @return ApiVersion
- */
- public function setCartTotalsInIframe($cart_totals_in_iframe)
- {
- $this->cart_totals_in_iframe = $cart_totals_in_iframe;
- return $this;
- }
- /**
- * @return bool
- */
- public function isPackstationSupport()
- {
- return $this->packstation_support;
- }
- /**
- * @param bool $packstation_support
- * @return ApiVersion
- */
- public function setPackstationSupport($packstation_support)
- {
- $this->packstation_support = $packstation_support;
- return $this;
- }
- /**
- * @return string
- */
- public function getType()
- {
- return $this->type;
- }
- /**
- * @param mixed $type
- * @return ApiVersion
- */
- public function setType($type)
- {
- $this->type = $type;
- return $this;
- }
- /**
- * @return bool
- */
- public function isShippingCallbackSupport()
- {
- return $this->shipping_callback_support;
- }
- /**
- * @param mixed $shipping_callback_support
- * @return ApiVersion
- */
- public function setShippingCallbackSupport($shipping_callback_support)
- {
- $this->shipping_callback_support = $shipping_callback_support;
- return $this;
- }
- /**
- * @return bool
- */
- public function isMerchantCheckboxSupport()
- {
- return $this->merchant_checkbox_support;
- }
- /**
- * @param mixed $merchant_checkbox_support
- * @return ApiVersion
- */
- public function setMerchantCheckboxSupport($merchant_checkbox_support)
- {
- $this->merchant_checkbox_support = $merchant_checkbox_support;
- return $this;
- }
- /**
- * @return bool
- */
- public function isDateOfBirthMandatorySupport()
- {
- return $this->date_of_birth_mandatory_support;
- }
- /**
- * @param mixed $date_of_birth_mandatory_support
- * @return ApiVersion
- */
- public function setDateOfBirthMandatorySupport($date_of_birth_mandatory_support)
- {
- $this->date_of_birth_mandatory_support = $date_of_birth_mandatory_support;
- return $this;
- }
- /**
- * @return bool
- */
- public function isPhoneMandatorySupport()
- {
- return $this->phone_mandatory_support;
- }
- /**
- * @param mixed $phone_mandatory_support
- * @return ApiVersion
- */
- public function setPhoneMandatorySupport($phone_mandatory_support)
- {
- $this->phone_mandatory_support = $phone_mandatory_support;
- return $this;
- }
- /**
- * @return string
- */
- public function getOrdermanagement()
- {
- return $this->ordermanagement;
- }
- /**
- * @param mixed $ordermanagement
- * @return ApiVersion
- */
- public function setOrdermanagement($ordermanagement)
- {
- $this->ordermanagement = $ordermanagement;
- return $this;
- }
- /**
- * @return bool
- */
- public function isTitleMandatorySupport()
- {
- return $this->title_mandatory_support;
- }
- /**
- * @param mixed $title_mandatory_support
- * @return ApiVersion
- */
- public function setTitleMandatorySupport($title_mandatory_support)
- {
- $this->title_mandatory_support = $title_mandatory_support;
- return $this;
- }
- /**
- * @return bool
- */
- public function isDelayedPushNotification()
- {
- return $this->delayed_push_notification;
- }
- /**
- * @param mixed $delayed_push_notification
- * @return ApiVersion
- */
- public function setDelayedPushNotification($delayed_push_notification)
- {
- $this->delayed_push_notification = $delayed_push_notification;
- return $this;
- }
- /**
- * @return bool
- */
- public function isPartialPaymentDisabled()
- {
- return $this->partial_payment_disabled;
- }
- /**
- * @param mixed $partial_payment_disabled
- * @return ApiVersion
- */
- public function setPartialPaymentDisabled($partial_payment_disabled)
- {
- $this->partial_payment_disabled = $partial_payment_disabled;
- return $this;
- }
- /**
- * @return bool
- */
- public function isSeparateTaxLine()
- {
- return $this->separate_tax_line;
- }
- /**
- * @param mixed $separate_tax_line
- * @return ApiVersion
- */
- public function setSeparateTaxLine($separate_tax_line)
- {
- $this->separate_tax_line = $separate_tax_line;
- return $this;
- }
- /**
- * @return bool
- */
- public function isShippingInIframe()
- {
- return $this->shipping_in_iframe;
- }
- /**
- * @param mixed $shipping_in_iframe
- * @return ApiVersion
- */
- public function setShippingInIframe($shipping_in_iframe)
- {
- $this->shipping_in_iframe = $shipping_in_iframe;
- return $this;
- }
- /**
- * @param bool $testmode
- * @return string
- */
- public function getUrl($testmode = true)
- {
- if ($testmode) {
- return $this->getTestdriveUrl();
- }
- return $this->getProductionUrl();
- }
- /**
- * @return string
- */
- public function getTestdriveUrl()
- {
- return $this->testdrive_url;
- }
- /**
- * @param mixed $testdrive_url
- * @return ApiVersion
- */
- public function setTestdriveUrl($testdrive_url)
- {
- $this->testdrive_url = $testdrive_url;
- return $this;
- }
- /**
- * @return string
- */
- public function getProductionUrl()
- {
- return $this->production_url;
- }
- /**
- * @param mixed $production_url
- * @return ApiVersion
- */
- public function setProductionUrl($production_url)
- {
- $this->production_url = $production_url;
- return $this;
- }
- /**
- * @return bool
- */
- public function isPaymentReview()
- {
- return $this->payment_review;
- }
- /**
- * @param bool $payment_review
- * @return ApiVersion
- */
- public function setPaymentReview($payment_review)
- {
- $this->payment_review = $payment_review;
- return $this;
- }
- /**
- * @return string
- */
- public function getLabel()
- {
- return $this->label;
- }
- /**
- * @param string $label
- * @return ApiVersion
- */
- public function setLabel($label)
- {
- $this->label = $label;
- return $this;
- }
- /**
- * @return string
- */
- public function getCode()
- {
- return $this->code;
- }
- /**
- * @param string $code
- * @return ApiVersion
- */
- public function setCode($code)
- {
- $this->code = $code;
- return $this;
- }
- }
|