| @@ 24-118 (lines=95) @@ | ||
| 21 | * |
|
| 22 | * @since 2.0 |
|
| 23 | */ |
|
| 24 | class Give_DB_Form_Meta extends Give_DB_Meta { |
|
| 25 | /** |
|
| 26 | * Post type |
|
| 27 | * |
|
| 28 | * @since 2.0 |
|
| 29 | * @access protected |
|
| 30 | * @var bool |
|
| 31 | */ |
|
| 32 | protected $post_type = 'give_forms'; |
|
| 33 | ||
| 34 | /** |
|
| 35 | * Meta type |
|
| 36 | * |
|
| 37 | * @since 2.0 |
|
| 38 | * @access protected |
|
| 39 | * @var bool |
|
| 40 | */ |
|
| 41 | protected $meta_type = 'form'; |
|
| 42 | ||
| 43 | /** |
|
| 44 | * Give_DB_Form_Meta constructor. |
|
| 45 | * |
|
| 46 | * @access public |
|
| 47 | * @since 2.0 |
|
| 48 | */ |
|
| 49 | public function __construct() { |
|
| 50 | /* @var WPDB $wpdb */ |
|
| 51 | global $wpdb; |
|
| 52 | ||
| 53 | $wpdb->formmeta = $this->table_name = $wpdb->prefix . 'give_formmeta'; |
|
| 54 | $this->primary_key = 'meta_id'; |
|
| 55 | $this->version = '1.0'; |
|
| 56 | ||
| 57 | $this->register_table(); |
|
| 58 | ||
| 59 | parent::__construct(); |
|
| 60 | } |
|
| 61 | ||
| 62 | /** |
|
| 63 | * Get table columns and data types. |
|
| 64 | * |
|
| 65 | * @access public |
|
| 66 | * @since 2.0 |
|
| 67 | * |
|
| 68 | * @return array Columns and formats. |
|
| 69 | */ |
|
| 70 | public function get_columns() { |
|
| 71 | return array( |
|
| 72 | 'meta_id' => '%d', |
|
| 73 | 'form_id' => '%d', |
|
| 74 | 'meta_key' => '%s', |
|
| 75 | 'meta_value' => '%s', |
|
| 76 | ); |
|
| 77 | } |
|
| 78 | ||
| 79 | /** |
|
| 80 | * Create the table |
|
| 81 | * |
|
| 82 | * @access public |
|
| 83 | * @since 2.0 |
|
| 84 | * |
|
| 85 | * @return void |
|
| 86 | */ |
|
| 87 | public function create_table() { |
|
| 88 | global $wpdb; |
|
| 89 | ||
| 90 | $charset_collate = $wpdb->get_charset_collate(); |
|
| 91 | ||
| 92 | $sql = "CREATE TABLE {$this->table_name} ( |
|
| 93 | meta_id bigint(20) NOT NULL AUTO_INCREMENT, |
|
| 94 | form_id bigint(20) NOT NULL, |
|
| 95 | meta_key varchar(255) DEFAULT NULL, |
|
| 96 | meta_value longtext, |
|
| 97 | PRIMARY KEY (meta_id), |
|
| 98 | KEY form_id (form_id), |
|
| 99 | KEY meta_key (meta_key) |
|
| 100 | ) {$charset_collate};"; |
|
| 101 | ||
| 102 | require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); |
|
| 103 | dbDelta( $sql ); |
|
| 104 | ||
| 105 | update_option( $this->table_name . '_db_version', $this->version ); |
|
| 106 | } |
|
| 107 | ||
| 108 | /** |
|
| 109 | * check if custom meta table enabled or not. |
|
| 110 | * |
|
| 111 | * @since 2.0 |
|
| 112 | * @access protected |
|
| 113 | * @return bool |
|
| 114 | */ |
|
| 115 | protected function is_custom_meta_table_active() { |
|
| 116 | return give_has_upgrade_completed( 'v20_move_metadata_into_new_table' ); |
|
| 117 | } |
|
| 118 | } |
|
| 119 | ||
| @@ 24-118 (lines=95) @@ | ||
| 21 | * |
|
| 22 | * @since 2.0 |
|
| 23 | */ |
|
| 24 | class Give_DB_Payment_Meta extends Give_DB_Meta { |
|
| 25 | /** |
|
| 26 | * Post type |
|
| 27 | * |
|
| 28 | * @since 2.0 |
|
| 29 | * @access protected |
|
| 30 | * @var bool |
|
| 31 | */ |
|
| 32 | protected $post_type = 'give_payment'; |
|
| 33 | ||
| 34 | /** |
|
| 35 | * Meta type |
|
| 36 | * |
|
| 37 | * @since 2.0 |
|
| 38 | * @access protected |
|
| 39 | * @var bool |
|
| 40 | */ |
|
| 41 | protected $meta_type = 'payment'; |
|
| 42 | ||
| 43 | /** |
|
| 44 | * Give_DB_Payment_Meta constructor. |
|
| 45 | * |
|
| 46 | * @access public |
|
| 47 | * @since 2.0 |
|
| 48 | */ |
|
| 49 | public function __construct() { |
|
| 50 | /* @var WPDB $wpdb */ |
|
| 51 | global $wpdb; |
|
| 52 | ||
| 53 | $wpdb->paymentmeta = $this->table_name = $wpdb->prefix . 'give_paymentmeta'; |
|
| 54 | $this->primary_key = 'meta_id'; |
|
| 55 | $this->version = '1.0'; |
|
| 56 | ||
| 57 | $this->register_table(); |
|
| 58 | ||
| 59 | parent::__construct(); |
|
| 60 | } |
|
| 61 | ||
| 62 | /** |
|
| 63 | * Get table columns and data types. |
|
| 64 | * |
|
| 65 | * @access public |
|
| 66 | * @since 2.0 |
|
| 67 | * |
|
| 68 | * @return array Columns and formats. |
|
| 69 | */ |
|
| 70 | public function get_columns() { |
|
| 71 | return array( |
|
| 72 | 'meta_id' => '%d', |
|
| 73 | 'payment_id' => '%d', |
|
| 74 | 'meta_key' => '%s', |
|
| 75 | 'meta_value' => '%s', |
|
| 76 | ); |
|
| 77 | } |
|
| 78 | ||
| 79 | /** |
|
| 80 | * Create the table |
|
| 81 | * |
|
| 82 | * @access public |
|
| 83 | * @since 2.0 |
|
| 84 | * |
|
| 85 | * @return void |
|
| 86 | */ |
|
| 87 | public function create_table() { |
|
| 88 | global $wpdb; |
|
| 89 | ||
| 90 | $charset_collate = $wpdb->get_charset_collate(); |
|
| 91 | ||
| 92 | $sql = "CREATE TABLE {$this->table_name} ( |
|
| 93 | meta_id bigint(20) NOT NULL AUTO_INCREMENT, |
|
| 94 | payment_id bigint(20) NOT NULL, |
|
| 95 | meta_key varchar(255) DEFAULT NULL, |
|
| 96 | meta_value longtext, |
|
| 97 | PRIMARY KEY (meta_id), |
|
| 98 | KEY payment_id (payment_id), |
|
| 99 | KEY meta_key (meta_key) |
|
| 100 | ) {$charset_collate};"; |
|
| 101 | ||
| 102 | require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); |
|
| 103 | dbDelta( $sql ); |
|
| 104 | ||
| 105 | update_option( $this->table_name . '_db_version', $this->version ); |
|
| 106 | } |
|
| 107 | ||
| 108 | /** |
|
| 109 | * check if custom meta table enabled or not. |
|
| 110 | * |
|
| 111 | * @since 2.0 |
|
| 112 | * @access protected |
|
| 113 | * @return bool |
|
| 114 | */ |
|
| 115 | protected function is_custom_meta_table_active() { |
|
| 116 | return give_has_upgrade_completed( 'v20_move_metadata_into_new_table' ); |
|
| 117 | } |
|
| 118 | } |
|
| 119 | ||