Plugin Directory

Changeset 3010485


Ignore:
Timestamp:
12/15/2023 10:51:01 AM (2 years ago)
Author:
ndeet
Message:

Update to version 2.4.0 from GitHub

Location:
btcpay-greenfield-for-woocommerce
Files:
34 added
6 deleted
12 edited
1 copied

Legend:

Unmodified
Added
Removed
  • btcpay-greenfield-for-woocommerce/tags/2.4.0/btcpay-greenfield-for-woocommerce.php

    r2981570 r3010485  
    88 * Text Domain:     btcpay-greenfield-for-woocommerce
    99 * Domain Path:     /languages
    10  * Version:         2.3.0
     10 * Version:         2.4.0
    1111 * Requires PHP:    7.4
    12  * Tested up to:    6.3
     12 * Tested up to:    6.4
    1313 * Requires at least: 5.2
    1414 * WC requires at least: 6.0
    15  * WC tested up to: 8.0
     15 * WC tested up to: 8.4
    1616 */
    1717
     
    2727defined( 'ABSPATH' ) || exit();
    2828
    29 define( 'BTCPAYSERVER_VERSION', '2.3.1' );
     29define( 'BTCPAYSERVER_VERSION', '2.4.0' );
    3030define( 'BTCPAYSERVER_VERSION_KEY', 'btcpay_gf_version' );
    3131define( 'BTCPAYSERVER_PLUGIN_FILE_PATH', plugin_dir_path( __FILE__ ) );
     
    272272
    273273    /**
     274     * Register WooCommerce Blocks support.
     275     */
     276    public static function blocksSupport() {
     277        if ( class_exists( '\Automattic\WooCommerce\Blocks\Payments\Integrations\AbstractPaymentMethodType' ) ) {
     278            add_action(
     279                'woocommerce_blocks_payment_method_type_registration',
     280                function( \Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry $payment_method_registry ) {
     281                    $payment_method_registry->register(new \BTCPayServer\WC\Blocks\DefaultGatewayBlocks());
     282                }
     283            );
     284        }
     285    }
     286
     287    /**
    274288     * Gets the main plugin loader instance.
    275289     *
     
    304318        update_option('btcpaygf_permalinks_flushed', 1);
    305319    }
    306 
    307320});
    308321
     
    427440    if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
    428441        \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
     442        \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'cart_checkout_blocks', __FILE__, true );
    429443    }
    430444} );
     445
     446// Register WooCommerce Blocks integration.
     447add_action( 'woocommerce_blocks_loaded', [ 'BTCPayServerWCPlugin', 'blocksSupport' ] );
  • btcpay-greenfield-for-woocommerce/tags/2.4.0/languages/btcpay-greenfield-for-woocommerce.pot

    r2679022 r3010485  
    1 # Copyright (C) 2022 BTCPay Server
     1# Copyright (C) 2023 BTCPay Server
    22# This file is distributed under the same license as the BTCPay For Woocommerce V2 plugin.
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: BTCPay For Woocommerce V2 0.1.10\n"
    6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/btcpay-greenfield-for-woocommerce\n"
     5"Project-Id-Version: BTCPay For Woocommerce V2 2.4.0\n"
     6"Report-Msgid-Bugs-To: https://woocommerce.com/my-account/create-a-ticket/\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
    88"Language-Team: LANGUAGE <LL@li.org>\n"
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2022-02-15T11:29:35+00:00\n"
     12"POT-Creation-Date: 2023-12-15T10:50:37+00:00\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    14 "X-Generator: WP-CLI 2.6.0\n"
     14"X-Generator: WP-CLI 2.9.0\n"
     15"language-team: LANGUAGE <EMAIL@ADDRESS>\n"
    1516"X-Domain: btcpay-greenfield-for-woocommerce\n"
    1617
     
    3536msgstr ""
    3637
    37 #: btcpay-greenfield-for-woocommerce.php:95
     38#: btcpay-greenfield-for-woocommerce.php:121
    3839msgid "Plugin not configured yet, please %1$sconfigure the plugin here%2$s"
    3940msgstr ""
    4041
    41 #: btcpay-greenfield-for-woocommerce.php:113
     42#: btcpay-greenfield-for-woocommerce.php:139
    4243msgid "Your PHP version is %s but BTCPay Greenfield Payment plugin requires version 7.4+."
    4344msgstr ""
    4445
    45 #: btcpay-greenfield-for-woocommerce.php:119
     46#: btcpay-greenfield-for-woocommerce.php:145
    4647msgid "WooCommerce seems to be not installed. Make sure you do before you activate BTCPayServer Payment Gateway."
    4748msgstr ""
    4849
    49 #: btcpay-greenfield-for-woocommerce.php:130
     50#: btcpay-greenfield-for-woocommerce.php:151
     51msgid "The PHP cURL extension is not installed. Make sure it is available otherwise this plugin will not work."
     52msgstr ""
     53
     54#: btcpay-greenfield-for-woocommerce.php:161
    5055msgid "Seems you have the old BTCPay for WooCommerce plugin installed. While it should work it is strongly recommended to not run both versions but rely on the maintained version (BTCPay Greenfield for WooCommerce)."
    5156msgstr ""
    5257
    53 #: btcpay-greenfield-for-woocommerce.php:274
    54 msgid "Successfully received api key and store id from BTCPay Server API."
    55 msgstr ""
    56 
    57 #: btcpay-greenfield-for-woocommerce.php:277
     58#: btcpay-greenfield-for-woocommerce.php:334
     59msgid "Settings"
     60msgstr ""
     61
     62#: btcpay-greenfield-for-woocommerce.php:336
     63msgid "Debug log"
     64msgstr ""
     65
     66#: btcpay-greenfield-for-woocommerce.php:338
     67msgid "Docs"
     68msgstr ""
     69
     70#: btcpay-greenfield-for-woocommerce.php:340
     71msgid "Support Chat"
     72msgstr ""
     73
     74#: btcpay-greenfield-for-woocommerce.php:380
     75msgid "Error on verifiying redirected API wey with stored BTCPay Server url. Aborting API wizard. Please try again or do a manual setup."
     76msgstr ""
     77
     78#: btcpay-greenfield-for-woocommerce.php:402
     79msgid "Successfully received api key and store id from BTCPay Server API. Please finish setup by saving this settings form."
     80msgstr ""
     81
     82#: btcpay-greenfield-for-woocommerce.php:406
     83#: src/Admin/GlobalSettings.php:362
     84msgid "Successfully registered a new webhook on BTCPay Server."
     85msgstr ""
     86
     87#: btcpay-greenfield-for-woocommerce.php:410
     88#: src/Admin/GlobalSettings.php:366
     89msgid "Could not register a new webhook on the store."
     90msgstr ""
     91
     92#: btcpay-greenfield-for-woocommerce.php:419
    5893msgid "Please make sure you only select one store on the BTCPay API authorization page."
    5994msgstr ""
    6095
    61 #: btcpay-greenfield-for-woocommerce.php:282
     96#: btcpay-greenfield-for-woocommerce.php:424
    6297msgid "Error processing the data from BTCPay. Please try again."
    63 msgstr ""
    64 
    65 #: generated/BTCPay_GF_BTC.php:25
    66 #: generated/BTCPay_GF_BTC_LightningNetwork.php:26
    67 msgid "Token type"
    68 msgstr ""
    69 
    70 #: generated/BTCPay_GF_BTC.php:32
    71 #: generated/BTCPay_GF_BTC_LightningNetwork.php:33
    72 msgid "Tokens of type promotion will not have a FIAT (USD, EUR, ..) exchange rate but counted as 1 per item quantity. See <a target=\"_blank\" href=\"https://docs.btcpayserver.org/FAQ/Integrations/#token-types\">here</a> for more details."
    7398msgstr ""
    7499
     
    77102msgstr ""
    78103
    79 #: src/Admin/GlobalSettings.php:58
    80 msgctxt "global_settings"
    81 msgid "BTCPay Server Payments Settings"
    82 msgstr ""
    83 
    84 #: src/Admin/GlobalSettings.php:64
    85 msgctxt "global_settings"
    86 msgid "This plugin version is %s and your PHP version is %s. If you need assistance, please come on our chat <a href=\"https://chat.btcpayserver.org\" target=\"_blank\">https://chat.btcpayserver.org</a>. Thank you for using BTCPay!"
    87 msgstr ""
    88 
    89 #: src/Admin/GlobalSettings.php:68
     104#: src/Admin/GlobalSettings.php:52
     105msgctxt "global_settings"
     106msgid "BTCPay Server Payments settings"
     107msgstr ""
     108
     109#: src/Admin/GlobalSettings.php:73
     110msgctxt "global_settings"
     111msgid "BTCPay Server connected."
     112msgstr ""
     113
     114#: src/Admin/GlobalSettings.php:75
     115msgctxt "global_settings"
     116msgid "Not connected. Please use the setup wizard above or check advanced settings to manually enter connection settings."
     117msgstr ""
     118
     119#: src/Admin/GlobalSettings.php:88
     120msgctxt "global_settings"
     121msgid "Webhook setup automatically."
     122msgstr ""
     123
     124#: src/Admin/GlobalSettings.php:90
     125msgctxt "global_settings"
     126msgid "No webhook setup, yet."
     127msgstr ""
     128
     129#: src/Admin/GlobalSettings.php:94
     130msgctxt "global_settings"
     131msgid "Webhook setup manually with webhook secret."
     132msgstr ""
     133
     134#: src/Admin/GlobalSettings.php:100
     135msgctxt "global_settings"
     136msgid "Connection settings"
     137msgstr ""
     138
     139#: src/Admin/GlobalSettings.php:106
     140msgctxt "global_settings"
     141msgid "This plugin version is %s and your PHP version is %s. Check out our <a href=\"https://docs.btcpayserver.org/WooCommerce/\" target=\"_blank\">installation instructions</a>. If you need assistance, please come on our <a href=\"https://chat.btcpayserver.org\" target=\"_blank\">chat</a>. Thank you for using BTCPay!"
     142msgstr ""
     143
     144#: src/Admin/GlobalSettings.php:110
    90145msgctxt "global_settings"
    91146msgid "BTCPay Server URL"
    92147msgstr ""
    93148
    94 #: src/Admin/GlobalSettings.php:74
    95 msgctxt "global_settings"
    96 msgid "Url to your BTCPay Server instance."
    97 msgstr ""
    98 
    99 #: src/Admin/GlobalSettings.php:75
     149#: src/Admin/GlobalSettings.php:116
     150msgctxt "global_settings"
     151msgid "URL/host to your BTCPay Server instance. Note: if you use a self hosted node like Umbrel, RaspiBlitz, myNode, etc. you will have to make sure your node is reachable from the internet. You can do that through <a href=\"https://docs.btcpayserver.org/Deployment/ReverseProxyToTor/\" target=\"_blank\">Tor</a>, <a href=\"https://docs.btcpayserver.org/Docker/cloudflare-tunnel/\" target=\"_blank\">Cloudflare</a> or <a href=\"https://docs.btcpayserver.org/Deployment/ReverseSSHtunnel/\" target=\"_blank\">SSH (advanced)</a>."
     152msgstr ""
     153
     154#: src/Admin/GlobalSettings.php:117
    100155msgctxt "global_settings"
    101156msgid "e.g. https://btcpayserver.example.com"
    102157msgstr ""
    103158
    104 #: src/Admin/GlobalSettings.php:80
     159#: src/Admin/GlobalSettings.php:122
     160msgctxt "global_settings"
     161msgid "Setup wizard"
     162msgstr ""
     163
     164#: src/Admin/GlobalSettings.php:128
     165msgctxt "global_settings"
     166msgid "Setup status"
     167msgstr ""
     168
     169#: src/Admin/GlobalSettings.php:134
     170msgid "Advanced settings"
     171msgstr ""
     172
     173#: src/Admin/GlobalSettings.php:137
     174msgctxt "global_settings"
     175msgid "Show all connection settings / manual setup."
     176msgstr ""
     177
     178#: src/Admin/GlobalSettings.php:141
    105179msgctxt "global_settings"
    106180msgid "BTCPay API Key"
    107181msgstr ""
    108182
    109 #: src/Admin/GlobalSettings.php:82
    110 msgctxt "global_settings"
    111 msgid "Your BTCPay API Key. If you do not have any yet <a href=\"#\" class=\"btcpay-api-key-link\" target=\"_blank\">click here to generate API keys.</a>"
    112 msgstr ""
    113 
    114 #: src/Admin/GlobalSettings.php:87
     183#: src/Admin/GlobalSettings.php:143
     184msgctxt "global_settings"
     185msgid "Your BTCPay API Key. If you do not have any yet use the setup wizard above."
     186msgstr ""
     187
     188#: src/Admin/GlobalSettings.php:148
    115189msgctxt "global_settings"
    116190msgid "Store ID"
    117191msgstr ""
    118192
    119 #: src/Admin/GlobalSettings.php:89
     193#: src/Admin/GlobalSettings.php:150
    120194msgctxt "global_settings"
    121195msgid "Your BTCPay Store ID. You can find it on the store settings page on your BTCPay Server."
    122196msgstr ""
    123197
    124 #: src/Admin/GlobalSettings.php:97
     198#: src/Admin/GlobalSettings.php:155
     199msgctxt "global_settings"
     200msgid "Webhook secret (optional)"
     201msgstr ""
     202
     203#: src/Admin/GlobalSettings.php:157
     204msgctxt "global_settings"
     205msgid "If left empty an webhook will created automatically on save. Only fill out if you know the webhook secret and the webhook was created manually on BTCPay Server."
     206msgstr ""
     207
     208#: src/Admin/GlobalSettings.php:158
     209msgctxt "global_settings"
     210msgid "The BTCPay webhook endpoint can be reached here: "
     211msgstr ""
     212
     213#: src/Admin/GlobalSettings.php:163
     214msgctxt "global_settings"
     215msgid "Webhook status"
     216msgstr ""
     217
     218#: src/Admin/GlobalSettings.php:174
     219msgctxt "global_settings"
     220msgid "General settings"
     221msgstr ""
     222
     223#: src/Admin/GlobalSettings.php:186
    125224msgctxt "global_settings"
    126225msgid "You will be redirected to BTCPay to complete your purchase."
    127226msgstr ""
    128227
    129 #: src/Admin/GlobalSettings.php:104
     228#: src/Admin/GlobalSettings.php:193
    130229msgctxt "global_settings"
    131230msgid "An invoice becomes settled after the payment has this many confirmations..."
    132231msgstr ""
    133232
    134 #: src/Admin/GlobalSettings.php:106
     233#: src/Admin/GlobalSettings.php:195
    135234msgctxt "global_settings"
    136235msgid "Keep BTCPay Server store level configuration"
    137236msgstr ""
    138237
    139 #: src/Admin/GlobalSettings.php:107
     238#: src/Admin/GlobalSettings.php:196
    140239msgctxt "global_settings"
    141240msgid "0 confirmation on-chain"
    142241msgstr ""
    143242
    144 #: src/Admin/GlobalSettings.php:108
     243#: src/Admin/GlobalSettings.php:197
    145244msgctxt "global_settings"
    146245msgid "1 confirmation on-chain"
    147246msgstr ""
    148247
    149 #: src/Admin/GlobalSettings.php:109
     248#: src/Admin/GlobalSettings.php:198
    150249msgctxt "global_settings"
    151250msgid "2 confirmations on-chain"
    152251msgstr ""
    153252
    154 #: src/Admin/GlobalSettings.php:110
     253#: src/Admin/GlobalSettings.php:199
    155254msgctxt "global_settings"
    156255msgid "6 confirmations on-chain"
    157256msgstr ""
    158257
    159 #: src/Admin/GlobalSettings.php:121
     258#: src/Admin/GlobalSettings.php:210
     259msgid "Modal checkout"
     260msgstr ""
     261
     262#: src/Admin/GlobalSettings.php:213
     263msgctxt "global_settings"
     264msgid "Opens a modal overlay on the checkout page instead of redirecting to BTCPay Server."
     265msgstr ""
     266
     267#: src/Admin/GlobalSettings.php:217
    160268msgid "Separate Payment Gateways"
    161269msgstr ""
    162270
    163 #: src/Admin/GlobalSettings.php:124
    164 msgctxt "global_settings"
    165 msgid "Make all supported and enabled payment methods available as their own payment gateway. This opens new possibilities like discounts for specific payment methods. See our <a href=\"todo-input-link-here\" target=\"_blank\">full guide here</a>"
    166 msgstr ""
    167 
    168 #: src/Admin/GlobalSettings.php:128
     271#: src/Admin/GlobalSettings.php:220
     272msgctxt "global_settings"
     273msgid "Make all supported and enabled payment methods available as their own payment gateway. This opens new possibilities like discounts for specific payment methods. See our <a href=\"https://docs.btcpayserver.org/FAQ/Integrations/#how-to-configure-additional-token-support-separate-payment-gateways\" target=\"_blank\">full guide here</a>"
     274msgstr ""
     275
     276#: src/Admin/GlobalSettings.php:224
    169277msgid "Send customer data to BTCPayServer"
    170278msgstr ""
    171279
    172 #: src/Admin/GlobalSettings.php:131
     280#: src/Admin/GlobalSettings.php:227
    173281msgctxt "global_settings"
    174282msgid "If you want customer email, address, etc. sent to BTCPay Server enable this option. By default for privacy and GDPR reasons this is disabled."
    175283msgstr ""
    176284
    177 #: src/Admin/GlobalSettings.php:135
     285#: src/Admin/GlobalSettings.php:231
     286msgid "Sats-Mode"
     287msgstr ""
     288
     289#: src/Admin/GlobalSettings.php:234
     290msgctxt "global_settings"
     291msgid "Makes Satoshis/Sats available as currency \"SAT\" (can be found in WooCommerce->Settings->General) and handles conversion to BTC before creating the invoice on BTCPay."
     292msgstr ""
     293
     294#: src/Admin/GlobalSettings.php:238
    178295msgid "Debug Log"
    179296msgstr ""
    180297
    181 #: src/Admin/GlobalSettings.php:138
     298#: src/Admin/GlobalSettings.php:241
    182299msgctxt "global_settings"
    183300msgid "Enable logging <a href=\"%s\" class=\"button\">View Logs</a>"
    184301msgstr ""
    185302
    186 #: src/Admin/GlobalSettings.php:192
     303#: src/Admin/GlobalSettings.php:273
    187304msgid "The provided API key scope is valid for multiple stores, please make sure to create one for a single store."
    188305msgstr ""
    189306
    190 #: src/Admin/GlobalSettings.php:200
     307#: src/Admin/GlobalSettings.php:281
    191308msgid "The provided API key does not match the required permissions. Please make sure the following permissions are are given: %s"
    192309msgstr ""
    193310
    194 #: src/Admin/GlobalSettings.php:211
    195 msgid "Reusing existing webhook."
    196 msgstr ""
    197 
    198 #: src/Admin/GlobalSettings.php:217
    199 msgid "Successfully registered a new webhook on BTCPay Server."
    200 msgstr ""
    201 
    202 #: src/Admin/GlobalSettings.php:221
    203 msgid "Could not register a new webhook on the store."
    204 msgstr ""
    205 
    206 #: src/Admin/GlobalSettings.php:231
     311#: src/Admin/GlobalSettings.php:295
     312msgid "Your BTCPay Server is not fully synched yet. Until fully synched the checkout will not work."
     313msgstr ""
     314
     315#: src/Admin/GlobalSettings.php:304
     316msgid "Your BTCPay Server version does not support refunds, please update to at least version 1.7.6 or newer."
     317msgstr ""
     318
     319#: src/Admin/GlobalSettings.php:310
     320msgid "Your api key does not support refunds, if you want to use that feature you need to create a new API key with permission. See our guide <a href=\"https://docs.btcpayserver.org/WooCommerce/#create-a-new-api-key\" target=\"_blank\" rel=\"noreferrer\">here</a>."
     321msgstr ""
     322
     323#: src/Admin/GlobalSettings.php:333
     324#: src/Admin/GlobalSettings.php:354
     325msgid "Successfully setup manual webhook."
     326msgstr ""
     327
     328#: src/Admin/GlobalSettings.php:337
     329msgid "Webhook already exists, skipping webhook creation."
     330msgstr ""
     331
     332#: src/Admin/GlobalSettings.php:379
    207333msgid "No wallet configured on your BTCPay Server store settings. Make sure to add at least one otherwise this plugin will not work."
    208334msgstr ""
    209335
    210 #: src/Admin/GlobalSettings.php:241
     336#: src/Admin/GlobalSettings.php:385
     337msgid "Exception loading wallet information (payment methods) from BTCPay Server: %s."
     338msgstr ""
     339
     340#: src/Admin/GlobalSettings.php:394
    211341msgid "Error fetching data for this API key from server. Please check if the key is valid. Error: %s"
    212342msgstr ""
    213343
    214 #: src/Gateway/AbstractGateway.php:25
     344#: src/Gateway/AbstractGateway.php:26
    215345#: src/Gateway/DefaultGateway.php:19
    216346msgid "Proceed to BTCPay"
    217347msgstr ""
    218348
    219 #: src/Gateway/AbstractGateway.php:60
    220 msgid "Use this image"
     349#: src/Gateway/AbstractGateway.php:59
     350msgid "Enabled/Disabled"
    221351msgstr ""
    222352
    223353#: src/Gateway/AbstractGateway.php:61
    224 msgid "Insert image"
     354msgid "Enable this payment gateway."
    225355msgstr ""
    226356
     
    249379msgstr ""
    250380
    251 #: src/Gateway/AbstractGateway.php:160
     381#: src/Gateway/AbstractGateway.php:204
     382msgid "Refund of order "
     383msgstr ""
     384
     385#: src/Gateway/AbstractGateway.php:282
    252386msgid "Gateway Icon:"
    253387msgstr ""
    254388
    255 #: src/Gateway/AbstractGateway.php:165
     389#: src/Gateway/AbstractGateway.php:287
    256390msgid "Upload or select icon"
    257391msgstr ""
    258392
    259 #: src/Gateway/AbstractGateway.php:171
     393#: src/Gateway/AbstractGateway.php:293
    260394msgid "Remove image"
    261395msgstr ""
    262396
    263 #: src/Gateway/AbstractGateway.php:268
    264 msgid "Invoice payment received after invoice was already expired."
    265 msgstr ""
    266 
    267 #: src/Gateway/AbstractGateway.php:272
    268 msgid "Invoice (partial) payment received. Waiting for full payment."
    269 msgstr ""
    270 
    271 #: src/Gateway/AbstractGateway.php:282
     397#: src/Gateway/AbstractGateway.php:343
     398msgid "Use this image"
     399msgstr ""
     400
     401#: src/Gateway/AbstractGateway.php:344
     402msgid "Insert image"
     403msgstr ""
     404
     405#: src/Gateway/AbstractGateway.php:382
     406msgctxt "js"
     407msgid "The invoice expired. Please try again, choose a different payment method or contact us if you paid but the payment did not confirm in time."
     408msgstr ""
     409
     410#: src/Gateway/AbstractGateway.php:383
     411msgctxt "js"
     412msgid "Payment aborted by you. Please try again or choose a different payment method."
     413msgstr ""
     414
     415#: src/Gateway/AbstractGateway.php:463
     416msgid "Invoice (partial) payment incoming (unconfirmed) after invoice was already expired."
     417msgstr ""
     418
     419#: src/Gateway/AbstractGateway.php:466
     420msgid "Invoice (partial) payment incoming (unconfirmed). Waiting for settlement."
     421msgstr ""
     422
     423#: src/Gateway/AbstractGateway.php:485
     424msgid "Invoice fully settled after invoice was already expired. Needs manual checking."
     425msgstr ""
     426
     427#: src/Gateway/AbstractGateway.php:490
     428msgid "(Partial) payment settled but invoice not settled yet (could be more transactions incoming). Needs manual checking."
     429msgstr ""
     430
     431#: src/Gateway/AbstractGateway.php:494
     432msgid "Invoice (partial) payment settled."
     433msgstr ""
     434
     435#: src/Gateway/AbstractGateway.php:504
    272436msgid "Invoice payment received fully with overpayment, waiting for settlement."
    273437msgstr ""
    274438
    275 #: src/Gateway/AbstractGateway.php:284
     439#: src/Gateway/AbstractGateway.php:506
    276440msgid "Invoice payment received fully, waiting for settlement."
    277441msgstr ""
    278442
    279 #: src/Gateway/AbstractGateway.php:290
     443#: src/Gateway/AbstractGateway.php:512
    280444msgid "Invoice manually marked invalid."
    281445msgstr ""
    282446
    283 #: src/Gateway/AbstractGateway.php:292
     447#: src/Gateway/AbstractGateway.php:514
    284448msgid "Invoice became invalid."
    285449msgstr ""
    286450
    287 #: src/Gateway/AbstractGateway.php:298
     451#: src/Gateway/AbstractGateway.php:520
    288452msgid "Invoice expired but was paid partially, please check."
    289453msgstr ""
    290454
    291 #: src/Gateway/AbstractGateway.php:301
     455#: src/Gateway/AbstractGateway.php:523
    292456msgid "Invoice expired."
    293457msgstr ""
    294458
    295 #: src/Gateway/AbstractGateway.php:307
     459#: src/Gateway/AbstractGateway.php:529
    296460msgid "Invoice payment settled but was overpaid."
    297461msgstr ""
    298462
    299 #: src/Gateway/AbstractGateway.php:310
     463#: src/Gateway/AbstractGateway.php:532
    300464msgid "Invoice payment settled."
     465msgstr ""
     466
     467#: src/Gateway/AbstractGateway.php:575
     468msgid "BTCPay invoice manually set to invalid because customer went back to checkout and changed payment gateway."
    301469msgstr ""
    302470
     
    317485msgstr ""
    318486
    319 #: src/Helper/OrderStates.php:34
     487#: src/Helper/OrderStates.php:36
    320488msgctxt "global_settings"
    321489msgid "New"
    322490msgstr ""
    323491
    324 #: src/Helper/OrderStates.php:35
     492#: src/Helper/OrderStates.php:37
    325493msgctxt "global_settings"
    326494msgid "Paid"
    327495msgstr ""
    328496
    329 #: src/Helper/OrderStates.php:36
     497#: src/Helper/OrderStates.php:38
    330498msgctxt "global_settings"
    331499msgid "Settled"
    332500msgstr ""
    333501
    334 #: src/Helper/OrderStates.php:37
     502#: src/Helper/OrderStates.php:39
    335503msgctxt "global_settings"
    336504msgid "Settled (paid over)"
    337505msgstr ""
    338506
    339 #: src/Helper/OrderStates.php:38
     507#: src/Helper/OrderStates.php:40
    340508msgctxt "global_settings"
    341509msgid "Invalid"
    342510msgstr ""
    343511
    344 #: src/Helper/OrderStates.php:39
     512#: src/Helper/OrderStates.php:41
    345513msgctxt "global_settings"
    346514msgid "Expired"
    347515msgstr ""
    348516
    349 #: src/Helper/OrderStates.php:40
     517#: src/Helper/OrderStates.php:42
    350518msgctxt "global_settings"
    351519msgid "Expired with partial payment"
    352520msgstr ""
    353521
    354 #: src/Helper/OrderStates.php:50
     522#: src/Helper/OrderStates.php:43
     523msgctxt "global_settings"
     524msgid "Expired (paid late)"
     525msgstr ""
     526
     527#: src/Helper/OrderStates.php:53
    355528msgctxt "global_settings"
    356529msgid "- no mapping / defaults -"
    357530msgstr ""
    358531
    359 #: src/Helper/OrderStates.php:90
     532#: src/Helper/OrderStates.php:93
    360533msgctxt "global_settings"
    361534msgid "By keeping default behavior for the \"Settled\" status you make sure that WooCommerce handles orders of virtual and downloadable products only properly and set those orders to \"complete\" instead of \"processing\" like for orders containing physical products."
  • btcpay-greenfield-for-woocommerce/tags/2.4.0/readme.txt

    r2981570 r3010485  
    44Tags: bitcoin, btcpay, BTCPay Server, btcpayserver, WooCommerce, payment gateway, accept bitcoin, bitcoin plugin, bitcoin payment processor, bitcoin e-commerce, Lightning Network, Litecoin, cryptocurrency
    55Requires at least: 5.2
    6 Tested up to: 6.3
     6Tested up to: 6.4
    77Requires PHP: 7.4
    8 Stable tag: 2.3.1
     8Stable tag: 2.4.0
    99License: MIT
    1010License URI: https://github.com/btcpayserver/woocommerce-greenfield-plugin/blob/master/license.txt
     
    1414== Description ==
    1515
    16 BTCPay Server is a free and open-source cryptocurrency payment processor which allows you to receive payments in Bitcoin and altcoins directly, with no fees, transaction cost or a middleman.
     16= Accept Bitcoin payments in your WooCommerce powered WordPress site with BTCPay Server =
    1717
    18 BTCPay Server is a non-custodial invoicing system which eliminates the involvement of a third-party. Payments with BTCPay WooCommerce Plugin go directly to your wallet, which increases the privacy and security. Your private keys are never uploaded to the server. There is no address re-use since each invoice generates a new address deriving from your xPub key.
     18BTCPay Server for WooCommerce is a revolutionary, self-hosted, open-source payment gateway to accept Bitcoin payments. Our** seamless integration** with WooCommerce allows you to connect your self-hosted [BTCPay Server](https://btcpayserver.org) and start accepting Bitcoin payments in **just a few simple steps**.
    1919
    20 You can run BTCPay as a self-hosted solution on your own server, or use a third-party host.
     20= Features: =
    2121
    22 The self-hosted solution allows you not only to attach an unlimited number of stores and use the Lightning Network but also become the payment processor for others.
     22* **Zero fees**: Enjoy a payment gateway with no fees. Yes, really!
     23* **Fully automated system**: BTCPay takes care of payments, invoice management and refunds automatically.
     24* **Display Bitcoin QR code at checkout**: Enhance customer experience with an easy and secure payment option.
     25* **No middlemen or KYC**:
     26    * Direct, P2P payments (going directly to your wallet)
     27    * Say goodbye to intermediaries and tedious paperwork
     28    * Transaction information is only shared between you and your customer
     29* **Self-hosted infrastructure**: Maintain full control over your payment gateway.
     30* **Direct wallet payments**: Be your own bank with a self-custodial service.
     31* **Lightning Network** integrated out of the box - instant, fast and low cost payments and payouts
     32* **Reporting and accounting** - CSV exports
     33* **Advanced invoice managemen**t and refunding integrated in the WooCommerce UI
     34* **Real-time exchange price tracking **for correct payment amounts
     35* **Versatile plugin system**:
     36    * Extend functionality according to your needs
     37    * Accept payments in altcoins through various plugins
     38* **Elegant checkout design**: Compatible with all Bitcoin wallets and enhanced with your store's logo and branding for a unique UX.
     39* **Point-of-sale** integration - Accept payments in your physical shops
     40* **Multilingual ready**: Serve a global audience right out of the box.
     41* **Top-notch privacy and security**: Protect your and your customers' data.
     42* **Community-driven support**: Get responsive assistance from our dedicated community ([Mattermost](http://chat.btcpayserver.org) or [Telegram](https://t.me/btcpayserver)).
     43* Extensive [documentation](https://docs.btcpayserver.org/WooCommerce) and [video](https://www.youtube.com/c/btcpayserver) tutorials
    2344
    24 * Direct, peer-to-peer Bitcoin and altcoin payments
    25 * No transaction fees (other than mining fees by cryptocurrency network itself)
    26 * No processing fees
    27 * No middleman
    28 * No KYC
    29 * User has complete control over private keys
    30 * Enhanced privacy (no address re-use, no IP leaks to third parties)
    31 * Enhanced security
    32 * Self-hosted
    33 * SegWit, Taproot support
    34 * Lightning Network support (LND, c-lightning and Eclair)
    35 * Altcoin support
    36 * Attach unlimited stores, process payments for friends
    37 * Easy-embeddable Payment buttons
    38 * Point of Sale app
     45The non-profit [BTCPay Server Foundation ](https://foundation.btcpayserver.org)is committed to keeping this powerful payment gateway free forever. Our mission is to enable anyone to accept bitcoin regardless of financial, technical, social or political barriers.
     46
    3947
    4048== Installation ==
     
    1031116. Example of the PoS app you can launch.
    104112
     113== Upgrade Notice ==
     114= 2.4.0 =
     115* New feature: Add basic support for [WooCommerce cart and checkout blocks](https://woo.com/document/cart-checkout-blocks-status/).
     116
    105117== Changelog ==
     118
     119= 2.4.0 :: 2023-12-12 =
     120* Fix: Avoid error on InvoiceProcessing/InvoiceSettled event in case of paidOver property is missing.
     121* New feature: Add basic support for WooCommerce cart and checkout blocks.
     122Note: Works for default configuration; future versions will make it work with modal checkout and separate payment gateways too.
    106123
    107124= 2.3.1 :: 2023-10-20 =
  • btcpay-greenfield-for-woocommerce/tags/2.4.0/src/Admin/GlobalSettings.php

    r2963669 r3010485  
    3030        if (is_admin()) {
    3131            // Register and include JS.
    32             wp_register_script('btcpay_gf_global_settings', BTCPAYSERVER_PLUGIN_URL . 'assets/js/apiKeyRedirect.js', ['jquery'], BTCPAYSERVER_VERSION);
     32            wp_register_script('btcpay_gf_global_settings', BTCPAYSERVER_PLUGIN_URL . 'assets/js/backend/apiKeyRedirect.js', ['jquery'], BTCPAYSERVER_VERSION);
    3333            wp_enqueue_script('btcpay_gf_global_settings');
    3434            wp_localize_script( 'btcpay_gf_global_settings',
  • btcpay-greenfield-for-woocommerce/tags/2.4.0/src/Gateway/AbstractGateway.php

    r2981570 r3010485  
    332332            wp_register_script(
    333333                'btcpay_gf_abstract_gateway',
    334                 BTCPAYSERVER_PLUGIN_URL . 'assets/js/gatewayIconMedia.js',
     334                BTCPAYSERVER_PLUGIN_URL . 'assets/js/backend/gatewayIconMedia.js',
    335335                ['jquery'],
    336336                BTCPAYSERVER_VERSION
     
    364364        wp_register_script(
    365365            'btcpay_gf_modal_checkout',
    366             BTCPAYSERVER_PLUGIN_URL . 'assets/js/modalCheckout.js',
     366            BTCPAYSERVER_PLUGIN_URL . 'assets/js/frontend/modalCheckout.js',
    367367            [ 'jquery' ],
    368368            BTCPAYSERVER_VERSION,
     
    501501            case 'InvoiceProcessing': // The invoice is paid in full.
    502502                $this->updateWCOrderStatus($order, $configuredOrderStates[OrderStates::PROCESSING]);
    503                 if ($webhookData->overPaid) {
     503                if (isset($webhookData->overPaid) && $webhookData->overPaid) {
    504504                    $order->add_order_note(__('Invoice payment received fully with overpayment, waiting for settlement.', 'btcpay-greenfield-for-woocommerce'));
    505505                } else {
     
    526526            case 'InvoiceSettled':
    527527                $order->payment_complete();
    528                 if ($webhookData->overPaid) {
     528                if (isset($webhookData->overPaid) && $webhookData->overPaid) {
    529529                    $order->add_order_note(__('Invoice payment settled but was overpaid.', 'btcpay-greenfield-for-woocommerce'));
    530530                    $this->updateWCOrderStatus($order, $configuredOrderStates[OrderStates::SETTLED_PAID_OVER]);
     
    536536                // Store payment data (exchange rate, address).
    537537                $this->updateWCOrderPayments($order);
    538 
    539538                break;
    540539        }
  • btcpay-greenfield-for-woocommerce/tags/2.4.0/src/Gateway/DefaultGateway.php

    r2700264 r3010485  
    1010    public function __construct() {
    1111        // Set the id first.
    12         $this->id                 = 'btcpaygf_default';
     12        $this->id = 'btcpaygf_default';
    1313
    1414        // Call parent constructor.
     
    1717        // todo: maybe make the button text configurable via settings.
    1818        // General gateway setup.
    19         $this->order_button_text  = __('Proceed to BTCPay', 'btcpay-greenfield-for-woocommerce');
     19        $this->order_button_text = __('Proceed to BTCPay', 'btcpay-greenfield-for-woocommerce');
    2020        // Admin facing title and description.
    21         $this->method_title       = 'BTCPay (default)';
     21        $this->method_title = 'BTCPay (default)';
    2222        $this->method_description = __('BTCPay default gateway supporting all available tokens on your BTCPay store.', 'btcpay-greenfield-for-woocommerce');
    2323
  • btcpay-greenfield-for-woocommerce/trunk/btcpay-greenfield-for-woocommerce.php

    r2981570 r3010485  
    88 * Text Domain:     btcpay-greenfield-for-woocommerce
    99 * Domain Path:     /languages
    10  * Version:         2.3.0
     10 * Version:         2.4.0
    1111 * Requires PHP:    7.4
    12  * Tested up to:    6.3
     12 * Tested up to:    6.4
    1313 * Requires at least: 5.2
    1414 * WC requires at least: 6.0
    15  * WC tested up to: 8.0
     15 * WC tested up to: 8.4
    1616 */
    1717
     
    2727defined( 'ABSPATH' ) || exit();
    2828
    29 define( 'BTCPAYSERVER_VERSION', '2.3.1' );
     29define( 'BTCPAYSERVER_VERSION', '2.4.0' );
    3030define( 'BTCPAYSERVER_VERSION_KEY', 'btcpay_gf_version' );
    3131define( 'BTCPAYSERVER_PLUGIN_FILE_PATH', plugin_dir_path( __FILE__ ) );
     
    272272
    273273    /**
     274     * Register WooCommerce Blocks support.
     275     */
     276    public static function blocksSupport() {
     277        if ( class_exists( '\Automattic\WooCommerce\Blocks\Payments\Integrations\AbstractPaymentMethodType' ) ) {
     278            add_action(
     279                'woocommerce_blocks_payment_method_type_registration',
     280                function( \Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry $payment_method_registry ) {
     281                    $payment_method_registry->register(new \BTCPayServer\WC\Blocks\DefaultGatewayBlocks());
     282                }
     283            );
     284        }
     285    }
     286
     287    /**
    274288     * Gets the main plugin loader instance.
    275289     *
     
    304318        update_option('btcpaygf_permalinks_flushed', 1);
    305319    }
    306 
    307320});
    308321
     
    427440    if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
    428441        \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
     442        \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'cart_checkout_blocks', __FILE__, true );
    429443    }
    430444} );
     445
     446// Register WooCommerce Blocks integration.
     447add_action( 'woocommerce_blocks_loaded', [ 'BTCPayServerWCPlugin', 'blocksSupport' ] );
  • btcpay-greenfield-for-woocommerce/trunk/languages/btcpay-greenfield-for-woocommerce.pot

    r2679022 r3010485  
    1 # Copyright (C) 2022 BTCPay Server
     1# Copyright (C) 2023 BTCPay Server
    22# This file is distributed under the same license as the BTCPay For Woocommerce V2 plugin.
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: BTCPay For Woocommerce V2 0.1.10\n"
    6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/btcpay-greenfield-for-woocommerce\n"
     5"Project-Id-Version: BTCPay For Woocommerce V2 2.4.0\n"
     6"Report-Msgid-Bugs-To: https://woocommerce.com/my-account/create-a-ticket/\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
    88"Language-Team: LANGUAGE <LL@li.org>\n"
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2022-02-15T11:29:35+00:00\n"
     12"POT-Creation-Date: 2023-12-15T10:50:37+00:00\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    14 "X-Generator: WP-CLI 2.6.0\n"
     14"X-Generator: WP-CLI 2.9.0\n"
     15"language-team: LANGUAGE <EMAIL@ADDRESS>\n"
    1516"X-Domain: btcpay-greenfield-for-woocommerce\n"
    1617
     
    3536msgstr ""
    3637
    37 #: btcpay-greenfield-for-woocommerce.php:95
     38#: btcpay-greenfield-for-woocommerce.php:121
    3839msgid "Plugin not configured yet, please %1$sconfigure the plugin here%2$s"
    3940msgstr ""
    4041
    41 #: btcpay-greenfield-for-woocommerce.php:113
     42#: btcpay-greenfield-for-woocommerce.php:139
    4243msgid "Your PHP version is %s but BTCPay Greenfield Payment plugin requires version 7.4+."
    4344msgstr ""
    4445
    45 #: btcpay-greenfield-for-woocommerce.php:119
     46#: btcpay-greenfield-for-woocommerce.php:145
    4647msgid "WooCommerce seems to be not installed. Make sure you do before you activate BTCPayServer Payment Gateway."
    4748msgstr ""
    4849
    49 #: btcpay-greenfield-for-woocommerce.php:130
     50#: btcpay-greenfield-for-woocommerce.php:151
     51msgid "The PHP cURL extension is not installed. Make sure it is available otherwise this plugin will not work."
     52msgstr ""
     53
     54#: btcpay-greenfield-for-woocommerce.php:161
    5055msgid "Seems you have the old BTCPay for WooCommerce plugin installed. While it should work it is strongly recommended to not run both versions but rely on the maintained version (BTCPay Greenfield for WooCommerce)."
    5156msgstr ""
    5257
    53 #: btcpay-greenfield-for-woocommerce.php:274
    54 msgid "Successfully received api key and store id from BTCPay Server API."
    55 msgstr ""
    56 
    57 #: btcpay-greenfield-for-woocommerce.php:277
     58#: btcpay-greenfield-for-woocommerce.php:334
     59msgid "Settings"
     60msgstr ""
     61
     62#: btcpay-greenfield-for-woocommerce.php:336
     63msgid "Debug log"
     64msgstr ""
     65
     66#: btcpay-greenfield-for-woocommerce.php:338
     67msgid "Docs"
     68msgstr ""
     69
     70#: btcpay-greenfield-for-woocommerce.php:340
     71msgid "Support Chat"
     72msgstr ""
     73
     74#: btcpay-greenfield-for-woocommerce.php:380
     75msgid "Error on verifiying redirected API wey with stored BTCPay Server url. Aborting API wizard. Please try again or do a manual setup."
     76msgstr ""
     77
     78#: btcpay-greenfield-for-woocommerce.php:402
     79msgid "Successfully received api key and store id from BTCPay Server API. Please finish setup by saving this settings form."
     80msgstr ""
     81
     82#: btcpay-greenfield-for-woocommerce.php:406
     83#: src/Admin/GlobalSettings.php:362
     84msgid "Successfully registered a new webhook on BTCPay Server."
     85msgstr ""
     86
     87#: btcpay-greenfield-for-woocommerce.php:410
     88#: src/Admin/GlobalSettings.php:366
     89msgid "Could not register a new webhook on the store."
     90msgstr ""
     91
     92#: btcpay-greenfield-for-woocommerce.php:419
    5893msgid "Please make sure you only select one store on the BTCPay API authorization page."
    5994msgstr ""
    6095
    61 #: btcpay-greenfield-for-woocommerce.php:282
     96#: btcpay-greenfield-for-woocommerce.php:424
    6297msgid "Error processing the data from BTCPay. Please try again."
    63 msgstr ""
    64 
    65 #: generated/BTCPay_GF_BTC.php:25
    66 #: generated/BTCPay_GF_BTC_LightningNetwork.php:26
    67 msgid "Token type"
    68 msgstr ""
    69 
    70 #: generated/BTCPay_GF_BTC.php:32
    71 #: generated/BTCPay_GF_BTC_LightningNetwork.php:33
    72 msgid "Tokens of type promotion will not have a FIAT (USD, EUR, ..) exchange rate but counted as 1 per item quantity. See <a target=\"_blank\" href=\"https://docs.btcpayserver.org/FAQ/Integrations/#token-types\">here</a> for more details."
    7398msgstr ""
    7499
     
    77102msgstr ""
    78103
    79 #: src/Admin/GlobalSettings.php:58
    80 msgctxt "global_settings"
    81 msgid "BTCPay Server Payments Settings"
    82 msgstr ""
    83 
    84 #: src/Admin/GlobalSettings.php:64
    85 msgctxt "global_settings"
    86 msgid "This plugin version is %s and your PHP version is %s. If you need assistance, please come on our chat <a href=\"https://chat.btcpayserver.org\" target=\"_blank\">https://chat.btcpayserver.org</a>. Thank you for using BTCPay!"
    87 msgstr ""
    88 
    89 #: src/Admin/GlobalSettings.php:68
     104#: src/Admin/GlobalSettings.php:52
     105msgctxt "global_settings"
     106msgid "BTCPay Server Payments settings"
     107msgstr ""
     108
     109#: src/Admin/GlobalSettings.php:73
     110msgctxt "global_settings"
     111msgid "BTCPay Server connected."
     112msgstr ""
     113
     114#: src/Admin/GlobalSettings.php:75
     115msgctxt "global_settings"
     116msgid "Not connected. Please use the setup wizard above or check advanced settings to manually enter connection settings."
     117msgstr ""
     118
     119#: src/Admin/GlobalSettings.php:88
     120msgctxt "global_settings"
     121msgid "Webhook setup automatically."
     122msgstr ""
     123
     124#: src/Admin/GlobalSettings.php:90
     125msgctxt "global_settings"
     126msgid "No webhook setup, yet."
     127msgstr ""
     128
     129#: src/Admin/GlobalSettings.php:94
     130msgctxt "global_settings"
     131msgid "Webhook setup manually with webhook secret."
     132msgstr ""
     133
     134#: src/Admin/GlobalSettings.php:100
     135msgctxt "global_settings"
     136msgid "Connection settings"
     137msgstr ""
     138
     139#: src/Admin/GlobalSettings.php:106
     140msgctxt "global_settings"
     141msgid "This plugin version is %s and your PHP version is %s. Check out our <a href=\"https://docs.btcpayserver.org/WooCommerce/\" target=\"_blank\">installation instructions</a>. If you need assistance, please come on our <a href=\"https://chat.btcpayserver.org\" target=\"_blank\">chat</a>. Thank you for using BTCPay!"
     142msgstr ""
     143
     144#: src/Admin/GlobalSettings.php:110
    90145msgctxt "global_settings"
    91146msgid "BTCPay Server URL"
    92147msgstr ""
    93148
    94 #: src/Admin/GlobalSettings.php:74
    95 msgctxt "global_settings"
    96 msgid "Url to your BTCPay Server instance."
    97 msgstr ""
    98 
    99 #: src/Admin/GlobalSettings.php:75
     149#: src/Admin/GlobalSettings.php:116
     150msgctxt "global_settings"
     151msgid "URL/host to your BTCPay Server instance. Note: if you use a self hosted node like Umbrel, RaspiBlitz, myNode, etc. you will have to make sure your node is reachable from the internet. You can do that through <a href=\"https://docs.btcpayserver.org/Deployment/ReverseProxyToTor/\" target=\"_blank\">Tor</a>, <a href=\"https://docs.btcpayserver.org/Docker/cloudflare-tunnel/\" target=\"_blank\">Cloudflare</a> or <a href=\"https://docs.btcpayserver.org/Deployment/ReverseSSHtunnel/\" target=\"_blank\">SSH (advanced)</a>."
     152msgstr ""
     153
     154#: src/Admin/GlobalSettings.php:117
    100155msgctxt "global_settings"
    101156msgid "e.g. https://btcpayserver.example.com"
    102157msgstr ""
    103158
    104 #: src/Admin/GlobalSettings.php:80
     159#: src/Admin/GlobalSettings.php:122
     160msgctxt "global_settings"
     161msgid "Setup wizard"
     162msgstr ""
     163
     164#: src/Admin/GlobalSettings.php:128
     165msgctxt "global_settings"
     166msgid "Setup status"
     167msgstr ""
     168
     169#: src/Admin/GlobalSettings.php:134
     170msgid "Advanced settings"
     171msgstr ""
     172
     173#: src/Admin/GlobalSettings.php:137
     174msgctxt "global_settings"
     175msgid "Show all connection settings / manual setup."
     176msgstr ""
     177
     178#: src/Admin/GlobalSettings.php:141
    105179msgctxt "global_settings"
    106180msgid "BTCPay API Key"
    107181msgstr ""
    108182
    109 #: src/Admin/GlobalSettings.php:82
    110 msgctxt "global_settings"
    111 msgid "Your BTCPay API Key. If you do not have any yet <a href=\"#\" class=\"btcpay-api-key-link\" target=\"_blank\">click here to generate API keys.</a>"
    112 msgstr ""
    113 
    114 #: src/Admin/GlobalSettings.php:87
     183#: src/Admin/GlobalSettings.php:143
     184msgctxt "global_settings"
     185msgid "Your BTCPay API Key. If you do not have any yet use the setup wizard above."
     186msgstr ""
     187
     188#: src/Admin/GlobalSettings.php:148
    115189msgctxt "global_settings"
    116190msgid "Store ID"
    117191msgstr ""
    118192
    119 #: src/Admin/GlobalSettings.php:89
     193#: src/Admin/GlobalSettings.php:150
    120194msgctxt "global_settings"
    121195msgid "Your BTCPay Store ID. You can find it on the store settings page on your BTCPay Server."
    122196msgstr ""
    123197
    124 #: src/Admin/GlobalSettings.php:97
     198#: src/Admin/GlobalSettings.php:155
     199msgctxt "global_settings"
     200msgid "Webhook secret (optional)"
     201msgstr ""
     202
     203#: src/Admin/GlobalSettings.php:157
     204msgctxt "global_settings"
     205msgid "If left empty an webhook will created automatically on save. Only fill out if you know the webhook secret and the webhook was created manually on BTCPay Server."
     206msgstr ""
     207
     208#: src/Admin/GlobalSettings.php:158
     209msgctxt "global_settings"
     210msgid "The BTCPay webhook endpoint can be reached here: "
     211msgstr ""
     212
     213#: src/Admin/GlobalSettings.php:163
     214msgctxt "global_settings"
     215msgid "Webhook status"
     216msgstr ""
     217
     218#: src/Admin/GlobalSettings.php:174
     219msgctxt "global_settings"
     220msgid "General settings"
     221msgstr ""
     222
     223#: src/Admin/GlobalSettings.php:186
    125224msgctxt "global_settings"
    126225msgid "You will be redirected to BTCPay to complete your purchase."
    127226msgstr ""
    128227
    129 #: src/Admin/GlobalSettings.php:104
     228#: src/Admin/GlobalSettings.php:193
    130229msgctxt "global_settings"
    131230msgid "An invoice becomes settled after the payment has this many confirmations..."
    132231msgstr ""
    133232
    134 #: src/Admin/GlobalSettings.php:106
     233#: src/Admin/GlobalSettings.php:195
    135234msgctxt "global_settings"
    136235msgid "Keep BTCPay Server store level configuration"
    137236msgstr ""
    138237
    139 #: src/Admin/GlobalSettings.php:107
     238#: src/Admin/GlobalSettings.php:196
    140239msgctxt "global_settings"
    141240msgid "0 confirmation on-chain"
    142241msgstr ""
    143242
    144 #: src/Admin/GlobalSettings.php:108
     243#: src/Admin/GlobalSettings.php:197
    145244msgctxt "global_settings"
    146245msgid "1 confirmation on-chain"
    147246msgstr ""
    148247
    149 #: src/Admin/GlobalSettings.php:109
     248#: src/Admin/GlobalSettings.php:198
    150249msgctxt "global_settings"
    151250msgid "2 confirmations on-chain"
    152251msgstr ""
    153252
    154 #: src/Admin/GlobalSettings.php:110
     253#: src/Admin/GlobalSettings.php:199
    155254msgctxt "global_settings"
    156255msgid "6 confirmations on-chain"
    157256msgstr ""
    158257
    159 #: src/Admin/GlobalSettings.php:121
     258#: src/Admin/GlobalSettings.php:210
     259msgid "Modal checkout"
     260msgstr ""
     261
     262#: src/Admin/GlobalSettings.php:213
     263msgctxt "global_settings"
     264msgid "Opens a modal overlay on the checkout page instead of redirecting to BTCPay Server."
     265msgstr ""
     266
     267#: src/Admin/GlobalSettings.php:217
    160268msgid "Separate Payment Gateways"
    161269msgstr ""
    162270
    163 #: src/Admin/GlobalSettings.php:124
    164 msgctxt "global_settings"
    165 msgid "Make all supported and enabled payment methods available as their own payment gateway. This opens new possibilities like discounts for specific payment methods. See our <a href=\"todo-input-link-here\" target=\"_blank\">full guide here</a>"
    166 msgstr ""
    167 
    168 #: src/Admin/GlobalSettings.php:128
     271#: src/Admin/GlobalSettings.php:220
     272msgctxt "global_settings"
     273msgid "Make all supported and enabled payment methods available as their own payment gateway. This opens new possibilities like discounts for specific payment methods. See our <a href=\"https://docs.btcpayserver.org/FAQ/Integrations/#how-to-configure-additional-token-support-separate-payment-gateways\" target=\"_blank\">full guide here</a>"
     274msgstr ""
     275
     276#: src/Admin/GlobalSettings.php:224
    169277msgid "Send customer data to BTCPayServer"
    170278msgstr ""
    171279
    172 #: src/Admin/GlobalSettings.php:131
     280#: src/Admin/GlobalSettings.php:227
    173281msgctxt "global_settings"
    174282msgid "If you want customer email, address, etc. sent to BTCPay Server enable this option. By default for privacy and GDPR reasons this is disabled."
    175283msgstr ""
    176284
    177 #: src/Admin/GlobalSettings.php:135
     285#: src/Admin/GlobalSettings.php:231
     286msgid "Sats-Mode"
     287msgstr ""
     288
     289#: src/Admin/GlobalSettings.php:234
     290msgctxt "global_settings"
     291msgid "Makes Satoshis/Sats available as currency \"SAT\" (can be found in WooCommerce->Settings->General) and handles conversion to BTC before creating the invoice on BTCPay."
     292msgstr ""
     293
     294#: src/Admin/GlobalSettings.php:238
    178295msgid "Debug Log"
    179296msgstr ""
    180297
    181 #: src/Admin/GlobalSettings.php:138
     298#: src/Admin/GlobalSettings.php:241
    182299msgctxt "global_settings"
    183300msgid "Enable logging <a href=\"%s\" class=\"button\">View Logs</a>"
    184301msgstr ""
    185302
    186 #: src/Admin/GlobalSettings.php:192
     303#: src/Admin/GlobalSettings.php:273
    187304msgid "The provided API key scope is valid for multiple stores, please make sure to create one for a single store."
    188305msgstr ""
    189306
    190 #: src/Admin/GlobalSettings.php:200
     307#: src/Admin/GlobalSettings.php:281
    191308msgid "The provided API key does not match the required permissions. Please make sure the following permissions are are given: %s"
    192309msgstr ""
    193310
    194 #: src/Admin/GlobalSettings.php:211
    195 msgid "Reusing existing webhook."
    196 msgstr ""
    197 
    198 #: src/Admin/GlobalSettings.php:217
    199 msgid "Successfully registered a new webhook on BTCPay Server."
    200 msgstr ""
    201 
    202 #: src/Admin/GlobalSettings.php:221
    203 msgid "Could not register a new webhook on the store."
    204 msgstr ""
    205 
    206 #: src/Admin/GlobalSettings.php:231
     311#: src/Admin/GlobalSettings.php:295
     312msgid "Your BTCPay Server is not fully synched yet. Until fully synched the checkout will not work."
     313msgstr ""
     314
     315#: src/Admin/GlobalSettings.php:304
     316msgid "Your BTCPay Server version does not support refunds, please update to at least version 1.7.6 or newer."
     317msgstr ""
     318
     319#: src/Admin/GlobalSettings.php:310
     320msgid "Your api key does not support refunds, if you want to use that feature you need to create a new API key with permission. See our guide <a href=\"https://docs.btcpayserver.org/WooCommerce/#create-a-new-api-key\" target=\"_blank\" rel=\"noreferrer\">here</a>."
     321msgstr ""
     322
     323#: src/Admin/GlobalSettings.php:333
     324#: src/Admin/GlobalSettings.php:354
     325msgid "Successfully setup manual webhook."
     326msgstr ""
     327
     328#: src/Admin/GlobalSettings.php:337
     329msgid "Webhook already exists, skipping webhook creation."
     330msgstr ""
     331
     332#: src/Admin/GlobalSettings.php:379
    207333msgid "No wallet configured on your BTCPay Server store settings. Make sure to add at least one otherwise this plugin will not work."
    208334msgstr ""
    209335
    210 #: src/Admin/GlobalSettings.php:241
     336#: src/Admin/GlobalSettings.php:385
     337msgid "Exception loading wallet information (payment methods) from BTCPay Server: %s."
     338msgstr ""
     339
     340#: src/Admin/GlobalSettings.php:394
    211341msgid "Error fetching data for this API key from server. Please check if the key is valid. Error: %s"
    212342msgstr ""
    213343
    214 #: src/Gateway/AbstractGateway.php:25
     344#: src/Gateway/AbstractGateway.php:26
    215345#: src/Gateway/DefaultGateway.php:19
    216346msgid "Proceed to BTCPay"
    217347msgstr ""
    218348
    219 #: src/Gateway/AbstractGateway.php:60
    220 msgid "Use this image"
     349#: src/Gateway/AbstractGateway.php:59
     350msgid "Enabled/Disabled"
    221351msgstr ""
    222352
    223353#: src/Gateway/AbstractGateway.php:61
    224 msgid "Insert image"
     354msgid "Enable this payment gateway."
    225355msgstr ""
    226356
     
    249379msgstr ""
    250380
    251 #: src/Gateway/AbstractGateway.php:160
     381#: src/Gateway/AbstractGateway.php:204
     382msgid "Refund of order "
     383msgstr ""
     384
     385#: src/Gateway/AbstractGateway.php:282
    252386msgid "Gateway Icon:"
    253387msgstr ""
    254388
    255 #: src/Gateway/AbstractGateway.php:165
     389#: src/Gateway/AbstractGateway.php:287
    256390msgid "Upload or select icon"
    257391msgstr ""
    258392
    259 #: src/Gateway/AbstractGateway.php:171
     393#: src/Gateway/AbstractGateway.php:293
    260394msgid "Remove image"
    261395msgstr ""
    262396
    263 #: src/Gateway/AbstractGateway.php:268
    264 msgid "Invoice payment received after invoice was already expired."
    265 msgstr ""
    266 
    267 #: src/Gateway/AbstractGateway.php:272
    268 msgid "Invoice (partial) payment received. Waiting for full payment."
    269 msgstr ""
    270 
    271 #: src/Gateway/AbstractGateway.php:282
     397#: src/Gateway/AbstractGateway.php:343
     398msgid "Use this image"
     399msgstr ""
     400
     401#: src/Gateway/AbstractGateway.php:344
     402msgid "Insert image"
     403msgstr ""
     404
     405#: src/Gateway/AbstractGateway.php:382
     406msgctxt "js"
     407msgid "The invoice expired. Please try again, choose a different payment method or contact us if you paid but the payment did not confirm in time."
     408msgstr ""
     409
     410#: src/Gateway/AbstractGateway.php:383
     411msgctxt "js"
     412msgid "Payment aborted by you. Please try again or choose a different payment method."
     413msgstr ""
     414
     415#: src/Gateway/AbstractGateway.php:463
     416msgid "Invoice (partial) payment incoming (unconfirmed) after invoice was already expired."
     417msgstr ""
     418
     419#: src/Gateway/AbstractGateway.php:466
     420msgid "Invoice (partial) payment incoming (unconfirmed). Waiting for settlement."
     421msgstr ""
     422
     423#: src/Gateway/AbstractGateway.php:485
     424msgid "Invoice fully settled after invoice was already expired. Needs manual checking."
     425msgstr ""
     426
     427#: src/Gateway/AbstractGateway.php:490
     428msgid "(Partial) payment settled but invoice not settled yet (could be more transactions incoming). Needs manual checking."
     429msgstr ""
     430
     431#: src/Gateway/AbstractGateway.php:494
     432msgid "Invoice (partial) payment settled."
     433msgstr ""
     434
     435#: src/Gateway/AbstractGateway.php:504
    272436msgid "Invoice payment received fully with overpayment, waiting for settlement."
    273437msgstr ""
    274438
    275 #: src/Gateway/AbstractGateway.php:284
     439#: src/Gateway/AbstractGateway.php:506
    276440msgid "Invoice payment received fully, waiting for settlement."
    277441msgstr ""
    278442
    279 #: src/Gateway/AbstractGateway.php:290
     443#: src/Gateway/AbstractGateway.php:512
    280444msgid "Invoice manually marked invalid."
    281445msgstr ""
    282446
    283 #: src/Gateway/AbstractGateway.php:292
     447#: src/Gateway/AbstractGateway.php:514
    284448msgid "Invoice became invalid."
    285449msgstr ""
    286450
    287 #: src/Gateway/AbstractGateway.php:298
     451#: src/Gateway/AbstractGateway.php:520
    288452msgid "Invoice expired but was paid partially, please check."
    289453msgstr ""
    290454
    291 #: src/Gateway/AbstractGateway.php:301
     455#: src/Gateway/AbstractGateway.php:523
    292456msgid "Invoice expired."
    293457msgstr ""
    294458
    295 #: src/Gateway/AbstractGateway.php:307
     459#: src/Gateway/AbstractGateway.php:529
    296460msgid "Invoice payment settled but was overpaid."
    297461msgstr ""
    298462
    299 #: src/Gateway/AbstractGateway.php:310
     463#: src/Gateway/AbstractGateway.php:532
    300464msgid "Invoice payment settled."
     465msgstr ""
     466
     467#: src/Gateway/AbstractGateway.php:575
     468msgid "BTCPay invoice manually set to invalid because customer went back to checkout and changed payment gateway."
    301469msgstr ""
    302470
     
    317485msgstr ""
    318486
    319 #: src/Helper/OrderStates.php:34
     487#: src/Helper/OrderStates.php:36
    320488msgctxt "global_settings"
    321489msgid "New"
    322490msgstr ""
    323491
    324 #: src/Helper/OrderStates.php:35
     492#: src/Helper/OrderStates.php:37
    325493msgctxt "global_settings"
    326494msgid "Paid"
    327495msgstr ""
    328496
    329 #: src/Helper/OrderStates.php:36
     497#: src/Helper/OrderStates.php:38
    330498msgctxt "global_settings"
    331499msgid "Settled"
    332500msgstr ""
    333501
    334 #: src/Helper/OrderStates.php:37
     502#: src/Helper/OrderStates.php:39
    335503msgctxt "global_settings"
    336504msgid "Settled (paid over)"
    337505msgstr ""
    338506
    339 #: src/Helper/OrderStates.php:38
     507#: src/Helper/OrderStates.php:40
    340508msgctxt "global_settings"
    341509msgid "Invalid"
    342510msgstr ""
    343511
    344 #: src/Helper/OrderStates.php:39
     512#: src/Helper/OrderStates.php:41
    345513msgctxt "global_settings"
    346514msgid "Expired"
    347515msgstr ""
    348516
    349 #: src/Helper/OrderStates.php:40
     517#: src/Helper/OrderStates.php:42
    350518msgctxt "global_settings"
    351519msgid "Expired with partial payment"
    352520msgstr ""
    353521
    354 #: src/Helper/OrderStates.php:50
     522#: src/Helper/OrderStates.php:43
     523msgctxt "global_settings"
     524msgid "Expired (paid late)"
     525msgstr ""
     526
     527#: src/Helper/OrderStates.php:53
    355528msgctxt "global_settings"
    356529msgid "- no mapping / defaults -"
    357530msgstr ""
    358531
    359 #: src/Helper/OrderStates.php:90
     532#: src/Helper/OrderStates.php:93
    360533msgctxt "global_settings"
    361534msgid "By keeping default behavior for the \"Settled\" status you make sure that WooCommerce handles orders of virtual and downloadable products only properly and set those orders to \"complete\" instead of \"processing\" like for orders containing physical products."
  • btcpay-greenfield-for-woocommerce/trunk/readme.txt

    r2981570 r3010485  
    44Tags: bitcoin, btcpay, BTCPay Server, btcpayserver, WooCommerce, payment gateway, accept bitcoin, bitcoin plugin, bitcoin payment processor, bitcoin e-commerce, Lightning Network, Litecoin, cryptocurrency
    55Requires at least: 5.2
    6 Tested up to: 6.3
     6Tested up to: 6.4
    77Requires PHP: 7.4
    8 Stable tag: 2.3.1
     8Stable tag: 2.4.0
    99License: MIT
    1010License URI: https://github.com/btcpayserver/woocommerce-greenfield-plugin/blob/master/license.txt
     
    1414== Description ==
    1515
    16 BTCPay Server is a free and open-source cryptocurrency payment processor which allows you to receive payments in Bitcoin and altcoins directly, with no fees, transaction cost or a middleman.
     16= Accept Bitcoin payments in your WooCommerce powered WordPress site with BTCPay Server =
    1717
    18 BTCPay Server is a non-custodial invoicing system which eliminates the involvement of a third-party. Payments with BTCPay WooCommerce Plugin go directly to your wallet, which increases the privacy and security. Your private keys are never uploaded to the server. There is no address re-use since each invoice generates a new address deriving from your xPub key.
     18BTCPay Server for WooCommerce is a revolutionary, self-hosted, open-source payment gateway to accept Bitcoin payments. Our** seamless integration** with WooCommerce allows you to connect your self-hosted [BTCPay Server](https://btcpayserver.org) and start accepting Bitcoin payments in **just a few simple steps**.
    1919
    20 You can run BTCPay as a self-hosted solution on your own server, or use a third-party host.
     20= Features: =
    2121
    22 The self-hosted solution allows you not only to attach an unlimited number of stores and use the Lightning Network but also become the payment processor for others.
     22* **Zero fees**: Enjoy a payment gateway with no fees. Yes, really!
     23* **Fully automated system**: BTCPay takes care of payments, invoice management and refunds automatically.
     24* **Display Bitcoin QR code at checkout**: Enhance customer experience with an easy and secure payment option.
     25* **No middlemen or KYC**:
     26    * Direct, P2P payments (going directly to your wallet)
     27    * Say goodbye to intermediaries and tedious paperwork
     28    * Transaction information is only shared between you and your customer
     29* **Self-hosted infrastructure**: Maintain full control over your payment gateway.
     30* **Direct wallet payments**: Be your own bank with a self-custodial service.
     31* **Lightning Network** integrated out of the box - instant, fast and low cost payments and payouts
     32* **Reporting and accounting** - CSV exports
     33* **Advanced invoice managemen**t and refunding integrated in the WooCommerce UI
     34* **Real-time exchange price tracking **for correct payment amounts
     35* **Versatile plugin system**:
     36    * Extend functionality according to your needs
     37    * Accept payments in altcoins through various plugins
     38* **Elegant checkout design**: Compatible with all Bitcoin wallets and enhanced with your store's logo and branding for a unique UX.
     39* **Point-of-sale** integration - Accept payments in your physical shops
     40* **Multilingual ready**: Serve a global audience right out of the box.
     41* **Top-notch privacy and security**: Protect your and your customers' data.
     42* **Community-driven support**: Get responsive assistance from our dedicated community ([Mattermost](http://chat.btcpayserver.org) or [Telegram](https://t.me/btcpayserver)).
     43* Extensive [documentation](https://docs.btcpayserver.org/WooCommerce) and [video](https://www.youtube.com/c/btcpayserver) tutorials
    2344
    24 * Direct, peer-to-peer Bitcoin and altcoin payments
    25 * No transaction fees (other than mining fees by cryptocurrency network itself)
    26 * No processing fees
    27 * No middleman
    28 * No KYC
    29 * User has complete control over private keys
    30 * Enhanced privacy (no address re-use, no IP leaks to third parties)
    31 * Enhanced security
    32 * Self-hosted
    33 * SegWit, Taproot support
    34 * Lightning Network support (LND, c-lightning and Eclair)
    35 * Altcoin support
    36 * Attach unlimited stores, process payments for friends
    37 * Easy-embeddable Payment buttons
    38 * Point of Sale app
     45The non-profit [BTCPay Server Foundation ](https://foundation.btcpayserver.org)is committed to keeping this powerful payment gateway free forever. Our mission is to enable anyone to accept bitcoin regardless of financial, technical, social or political barriers.
     46
    3947
    4048== Installation ==
     
    1031116. Example of the PoS app you can launch.
    104112
     113== Upgrade Notice ==
     114= 2.4.0 =
     115* New feature: Add basic support for [WooCommerce cart and checkout blocks](https://woo.com/document/cart-checkout-blocks-status/).
     116
    105117== Changelog ==
     118
     119= 2.4.0 :: 2023-12-12 =
     120* Fix: Avoid error on InvoiceProcessing/InvoiceSettled event in case of paidOver property is missing.
     121* New feature: Add basic support for WooCommerce cart and checkout blocks.
     122Note: Works for default configuration; future versions will make it work with modal checkout and separate payment gateways too.
    106123
    107124= 2.3.1 :: 2023-10-20 =
  • btcpay-greenfield-for-woocommerce/trunk/src/Admin/GlobalSettings.php

    r2963669 r3010485  
    3030        if (is_admin()) {
    3131            // Register and include JS.
    32             wp_register_script('btcpay_gf_global_settings', BTCPAYSERVER_PLUGIN_URL . 'assets/js/apiKeyRedirect.js', ['jquery'], BTCPAYSERVER_VERSION);
     32            wp_register_script('btcpay_gf_global_settings', BTCPAYSERVER_PLUGIN_URL . 'assets/js/backend/apiKeyRedirect.js', ['jquery'], BTCPAYSERVER_VERSION);
    3333            wp_enqueue_script('btcpay_gf_global_settings');
    3434            wp_localize_script( 'btcpay_gf_global_settings',
  • btcpay-greenfield-for-woocommerce/trunk/src/Gateway/AbstractGateway.php

    r2981570 r3010485  
    332332            wp_register_script(
    333333                'btcpay_gf_abstract_gateway',
    334                 BTCPAYSERVER_PLUGIN_URL . 'assets/js/gatewayIconMedia.js',
     334                BTCPAYSERVER_PLUGIN_URL . 'assets/js/backend/gatewayIconMedia.js',
    335335                ['jquery'],
    336336                BTCPAYSERVER_VERSION
     
    364364        wp_register_script(
    365365            'btcpay_gf_modal_checkout',
    366             BTCPAYSERVER_PLUGIN_URL . 'assets/js/modalCheckout.js',
     366            BTCPAYSERVER_PLUGIN_URL . 'assets/js/frontend/modalCheckout.js',
    367367            [ 'jquery' ],
    368368            BTCPAYSERVER_VERSION,
     
    501501            case 'InvoiceProcessing': // The invoice is paid in full.
    502502                $this->updateWCOrderStatus($order, $configuredOrderStates[OrderStates::PROCESSING]);
    503                 if ($webhookData->overPaid) {
     503                if (isset($webhookData->overPaid) && $webhookData->overPaid) {
    504504                    $order->add_order_note(__('Invoice payment received fully with overpayment, waiting for settlement.', 'btcpay-greenfield-for-woocommerce'));
    505505                } else {
     
    526526            case 'InvoiceSettled':
    527527                $order->payment_complete();
    528                 if ($webhookData->overPaid) {
     528                if (isset($webhookData->overPaid) && $webhookData->overPaid) {
    529529                    $order->add_order_note(__('Invoice payment settled but was overpaid.', 'btcpay-greenfield-for-woocommerce'));
    530530                    $this->updateWCOrderStatus($order, $configuredOrderStates[OrderStates::SETTLED_PAID_OVER]);
     
    536536                // Store payment data (exchange rate, address).
    537537                $this->updateWCOrderPayments($order);
    538 
    539538                break;
    540539        }
  • btcpay-greenfield-for-woocommerce/trunk/src/Gateway/DefaultGateway.php

    r2700264 r3010485  
    1010    public function __construct() {
    1111        // Set the id first.
    12         $this->id                 = 'btcpaygf_default';
     12        $this->id = 'btcpaygf_default';
    1313
    1414        // Call parent constructor.
     
    1717        // todo: maybe make the button text configurable via settings.
    1818        // General gateway setup.
    19         $this->order_button_text  = __('Proceed to BTCPay', 'btcpay-greenfield-for-woocommerce');
     19        $this->order_button_text = __('Proceed to BTCPay', 'btcpay-greenfield-for-woocommerce');
    2020        // Admin facing title and description.
    21         $this->method_title       = 'BTCPay (default)';
     21        $this->method_title = 'BTCPay (default)';
    2222        $this->method_description = __('BTCPay default gateway supporting all available tokens on your BTCPay store.', 'btcpay-greenfield-for-woocommerce');
    2323
Note: See TracChangeset for help on using the changeset viewer.