Server IP : 192.158.238.246 / Your IP : 3.143.110.165 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/task/7779/cwd/plugins/give/src/Revenue/Migrations/ |
Upload File : |
<?php namespace Give\Revenue\Migrations; use Give\Framework\Database\DB; use Give\Framework\Migrations\Contracts\Migration; /** * Class RemoveRevenueForeignKeys * * @package Give\Revenue\Migrations * @since 2.9.6 */ class RemoveRevenueForeignKeys extends Migration { /** * @inheritDoc */ public static function id() { return 'remove_revenue_foreign_keys'; } /** * @inheritDoc */ public function run() { global $wpdb; $this->dropColumnForeignKeyConstraint($wpdb->give_revenue, 'form_id'); $this->dropColumnForeignKeyConstraint($wpdb->give_revenue, 'donation_id'); } /** * @inheritDoc */ public static function timestamp() { return strtotime('01-05-2020 12:45:00'); } /** * Drops the foreign key constraint for a given table and column * * @since 2.9.6 * * @param string $table * @param string $column */ private function dropColumnForeignKeyConstraint($table, $column) { $constraintName = DB::get_var( DB::prepare( " SELECT constraints.CONSTRAINT_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS as constraints JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE as column_usage ON constraints.CONSTRAINT_NAME = column_usage.CONSTRAINT_NAME WHERE constraints.CONSTRAINT_TYPE = 'FOREIGN KEY' AND constraints.TABLE_NAME = %s AND column_usage.COLUMN_NAME = %s ", $table, $column ) ); if ( ! empty($constraintName)) { // phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared DB::query("ALTER TABLE {$table} DROP FOREIGN KEY {$constraintName}"); } } }