PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.15.0
GiveWP – Donation Plugin and Fundraising Platform v3.15.0
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Donations / Migrations / MoveDonationCommentToDonationMetaTable.php
give / src / Donations / Migrations Last commit date
AddMissingDonorIdToDonationComments.php 3 years ago MoveDonationCommentToDonationMetaTable.php 3 years ago SetAutomaticFormattingOption.php 3 years ago
MoveDonationCommentToDonationMetaTable.php
117 lines
1 <?php
2
3 namespace Give\Donations\Migrations;
4
5 use Exception;
6 use Give\Framework\Database\DB;
7 use Give\Framework\Migrations\Contracts\Migration;
8 use Give\Framework\Migrations\Exceptions\DatabaseMigrationException;
9 use Give\Log\Log;
10
11 /**
12 * Class MoveDonationCommentToDonationMetaTable
13 *
14 * @since 2.27.0
15 */
16 class MoveDonationCommentToDonationMetaTable extends Migration
17 {
18 /**
19 * @inheritdoc
20 * @throws Exception
21 */
22 public function run()
23 {
24 $commentMetaTable = DB::prefix('give_commentmeta');
25 $commentTable = DB::prefix('give_comments');
26 $donationMetaTable = DB::prefix('give_donationmeta');
27
28 $commentsCount = DB::get_var(
29 "
30 SELECT
31 COUNT(1)
32 FROM
33 $commentTable
34 WHERE
35 comment_type = 'donor_donation'
36 "
37 );
38
39 if (!intval($commentsCount)) {
40 return;
41 }
42
43 DB::beginTransaction();
44
45 try {
46 $insertQuery = DB::query(
47 "
48 INSERT INTO $donationMetaTable (donation_id, meta_key, meta_value)
49 SELECT
50 comment_parent,
51 '_give_donation_comment',
52 comment_content
53 FROM
54 $commentTable
55 WHERE
56 comment_type = 'donor_donation'
57 "
58 );
59
60 if (!$insertQuery) {
61 throw new Exception('Failed to insert donation comment into donation meta table.');
62 }
63
64 DB::query(
65 "
66 DELETE FROM $commentMetaTable
67 WHERE give_comment_id IN(
68 SELECT
69 comment_ID FROM $commentTable
70 WHERE
71 comment_type = 'donor_donation'
72 )
73 "
74 );
75
76 DB::query(
77 "
78 DELETE FROM $commentTable
79 WHERE comment_type = 'donor_donation'
80 "
81 );
82 } catch (Exception $exception) {
83 DB::rollback();
84
85 Log::error('Failed running migration: ' . self::title());
86
87 throw new DatabaseMigrationException('Failed running migration: ' . self::title(), 0, $exception);
88 }
89
90 DB::commit();
91 }
92
93 /**
94 * @inheritdoc
95 */
96 public static function id()
97 {
98 return 'move-donation-comment-to-donation-meta-table';
99 }
100
101 /**
102 * @inheritdoc
103 */
104 public static function title()
105 {
106 return 'Move donation comment to donation meta table';
107 }
108
109 /**
110 * @inheritdoc
111 */
112 public static function timestamp()
113 {
114 return strtotime('2023-03-27');
115 }
116 }
117