PluginProbe
Better Payment – Instant Payments, Donations, Fundraising with Subscriptions & More / 2.4.1
Better Payment – Instant Payments, Donations, Fundraising with Subscriptions & More v2.4.1
2.4.1 2.4.0 2.3.4 2.3.3 2.3.2 2.3.1 2.3.0 2.2.2 2.2.1 2.2.0 2.1.2 2.1.1 trunk 0.0.1 0.0.2 0.0.3 0.0.4 0.0.5 0.0.6 0.0.7 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 All 68 releases
← All changes | includes/Classes/Migrator.php +24 -1 2.2.2 → 2.4.1 View file →
@@ -22,18 +22,41 @@
22 22 *
23 23 * @since 0.0.2
24 24 */
25 25 public static function migrator() {
26 + self::create_missing_tables();
26 27 self::update_tables();
27 28 }
28 29
29 30 /**
31 + * Create any table added since this install was activated (dbDelta is
32 + * idempotent). The migrator only runs once per version change, so an
33 + * existing install picks up e.g. the better_payment_subscription_order table
34 + * on its first load after an update — activation never re-runs there.
35 + *
36 + * Kept separate from update_tables(), which stays ALTER-only: the test
37 + * environment rewrites CREATE TABLE to CREATE TEMPORARY TABLE, so a
38 + * create inside a column-migration test would shadow the real table.
39 + *
40 + * @since 2.4.0
41 + */
42 + public static function create_missing_tables() {
43 + ( new \Better_Payment\Lite\Installer() )->create_tables();
44 + }
45 +
46 + /**
30 47 * Update the plugin tables
31 - *
48 + *
32 49 * @since 0.0.2
33 50 */
34 51 public static function update_tables() {
35 52 //Add column
53 + // `refund_info` is Pro's: only Pro's refunds write it, and Better Payment Pro
54 + // 1.4.4+ adds the column itself (Pro Installer::add_refund_info_column()). Lite
55 + // still adds it, idempotently, as a data guard for Pro 1.4.3: that Pro relies
56 + // on Lite for it, and on a fresh install its refund would reach the gateway
57 + // and then fail to record, leaving a refunded row marked paid. Stop once no
58 + // supported site can run Pro 1.4.3.
36 59 self::add_column( 'refund_info', 'longtext' );
37 60 self::add_column( 'campaign_id', 'text' );
38 61 }
39 62