Completed
Branch dev (a40d3d)
by
unknown
56:03 queued 46:45
created
core/data_migration_scripts/4_1_0_stages/EE_DMS_4_1_0_prices.dmsstage.php 3 patches
Doc Comments   +3 added lines, -4 removed lines patch added patch discarded remove patch
@@ -349,8 +349,8 @@  discard block
 block discarded – undo
349 349
     /**
350 350
      * Adds a join between a ticket and a price
351 351
      * @global type $wpdb
352
-     * @param type $new_ticket_id
353
-     * @param type $new_price_id
352
+     * @param integer $new_ticket_id
353
+     * @param integer $new_price_id
354 354
      * @return int
355 355
      */
356 356
     private function _insert_ticket_price_relation($new_ticket_id, $new_price_id)
@@ -376,8 +376,7 @@  discard block
 block discarded – undo
376 376
     /**
377 377
      * Adds a join between a ticket and a datetime
378 378
      * @global type $wpdb
379
-     * @param type $new_ticket_id
380
-     * @param type $new_price_id
379
+     * @param integer $new_ticket_id
381 380
      * @return int
382 381
      */
383 382
     private function _insert_datetime_ticket_relation($new_datetime_id, $new_ticket_id)
Please login to merge, or discard this patch.
Indentation   +292 added lines, -292 removed lines patch added patch discarded remove patch
@@ -87,57 +87,57 @@  discard block
 block discarded – undo
87 87
  */
88 88
 class EE_DMS_4_1_0_prices extends EE_Data_Migration_Script_Stage_Table
89 89
 {
90
-    private $_new_price_table;
91
-    private $_new_ticket_table;
92
-    private $_new_ticket_price_table;
93
-    private $_new_datetime_ticket_table;
94
-    /**
95
-     * A count of all the different tickets created, used for setting the new ones' TKT_Order
96
-     * @var int
97
-     */
98
-    private $_ticket_count = 0;
99
-    const price_type_base = 1;
100
-    const price_type_member_discount = 3;
101
-    const price_type_percent_surcharge = 4;
102
-    const price_type_flat_surcharge = 5;
90
+	private $_new_price_table;
91
+	private $_new_ticket_table;
92
+	private $_new_ticket_price_table;
93
+	private $_new_datetime_ticket_table;
94
+	/**
95
+	 * A count of all the different tickets created, used for setting the new ones' TKT_Order
96
+	 * @var int
97
+	 */
98
+	private $_ticket_count = 0;
99
+	const price_type_base = 1;
100
+	const price_type_member_discount = 3;
101
+	const price_type_percent_surcharge = 4;
102
+	const price_type_flat_surcharge = 5;
103 103
 
104
-    public function __construct()
105
-    {
106
-        global $wpdb;
107
-        $this->_pretty_name = __("Prices", "event_espresso");
108
-        $this->_old_table = $wpdb->prefix . "events_prices";
109
-        $this->select_expression = 'p.*, e.event_status';
110
-        $this->_extra_where_sql = ' AS p 
104
+	public function __construct()
105
+	{
106
+		global $wpdb;
107
+		$this->_pretty_name = __("Prices", "event_espresso");
108
+		$this->_old_table = $wpdb->prefix . "events_prices";
109
+		$this->select_expression = 'p.*, e.event_status';
110
+		$this->_extra_where_sql = ' AS p 
111 111
             INNER JOIN ' . $wpdb->prefix . 'events_detail AS e ON p.event_id=e.id
112 112
             WHERE e.event_status!="D"';
113
-        $this->_new_price_table = $wpdb->prefix . "esp_price";
114
-        $this->_new_ticket_table = $wpdb->prefix . "esp_ticket";
115
-        $this->_new_ticket_price_table = $wpdb->prefix . "esp_ticket_price";
116
-        $this->_new_datetime_ticket_table = $wpdb->prefix . "esp_datetime_ticket";
117
-        parent::__construct();
118
-    }
119
-    protected function _migrate_old_row($old_row)
120
-    {
121
-        // create the base price
122
-        $new_price_id = $this->_insert_new_price($old_row);
123
-        // create the member discount if there is any
124
-        // commented-out because we may actually NOT be supporting this in 4.1
113
+		$this->_new_price_table = $wpdb->prefix . "esp_price";
114
+		$this->_new_ticket_table = $wpdb->prefix . "esp_ticket";
115
+		$this->_new_ticket_price_table = $wpdb->prefix . "esp_ticket_price";
116
+		$this->_new_datetime_ticket_table = $wpdb->prefix . "esp_datetime_ticket";
117
+		parent::__construct();
118
+	}
119
+	protected function _migrate_old_row($old_row)
120
+	{
121
+		// create the base price
122
+		$new_price_id = $this->_insert_new_price($old_row);
123
+		// create the member discount if there is any
124
+		// commented-out because we may actually NOT be supporting this in 4.1
125 125
 //      if($old_row['event_cost'] != $old_row['member_price']){
126 126
 //          $member_price_discount_id = $this->_insert_new_member_price($old_row);
127 127
 //      }else{
128 128
 //          $member_price_discount_id = 0;
129 129
 //      }
130
-        // create the surcharge if there is any
131
-        if (floatval($old_row['surcharge']) >= 0.01) {
132
-            $surcharge_price_id = $this->_insert_new_surcharge_price($old_row);
133
-            $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id,$surcharge_price_id));
134
-        } else {
135
-            $surcharge_price_id = 0;
136
-            $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id));
137
-        }
138
-        // associate the ticket to all datetimes for event (ie, this ONE ticket grants access to ALL datetimes, not just one of the attendee's choice.
139
-        // if the latter were the case, then we'd create a separate ticket for each datetime and ahve their association be one-to-one)
140
-        // create ticket
130
+		// create the surcharge if there is any
131
+		if (floatval($old_row['surcharge']) >= 0.01) {
132
+			$surcharge_price_id = $this->_insert_new_surcharge_price($old_row);
133
+			$this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id,$surcharge_price_id));
134
+		} else {
135
+			$surcharge_price_id = 0;
136
+			$this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id));
137
+		}
138
+		// associate the ticket to all datetimes for event (ie, this ONE ticket grants access to ALL datetimes, not just one of the attendee's choice.
139
+		// if the latter were the case, then we'd create a separate ticket for each datetime and ahve their association be one-to-one)
140
+		// create ticket
141 141
 //      $ticket_id = $this->_insert_new_ticket($old_row);
142 142
 //      if($ticket_id){
143 143
 //          $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_ticket_table, $ticket_id);
@@ -149,62 +149,62 @@  discard block
 block discarded – undo
149 149
 //              $this->_insert_datetime_ticket_relation($new_datetime_id, $ticket_id);
150 150
 //          }
151 151
 //      }
152
-        // create a ticket for each old price -old datetime combo
153
-        $tickets_for_old_price = array();
154
-        foreach ($this->_get_datetime_ids_for_old_event_id($old_row['event_id']) as $new_datetime_id) {
155
-            $ticket_id = $this->_insert_new_ticket($old_row);
156
-            $tickets_for_old_price[] = $ticket_id;
157
-            // associate to old prices
158
-            $this->_insert_ticket_price_relation($ticket_id, $new_price_id);
159
-            $this->_insert_ticket_price_relation($ticket_id, $surcharge_price_id);
160
-            $this->_insert_datetime_ticket_relation($new_datetime_id, $ticket_id);
161
-        }
162
-        $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_ticket_table, $tickets_for_old_price);
163
-    }
164
-    /**
165
-     * Creates a 4.1 price base type
166
-     * @global type $wpdb
167
-     * @param type $old_price
168
-     * @return int
169
-     */
170
-    private function _insert_new_price($old_price)
171
-    {
172
-        global $wpdb;
173
-        $cols_n_values = array(
174
-            'PRT_ID' => self::price_type_base,
175
-            'PRC_amount' => floatval($old_price['event_cost']),
176
-            'PRC_name' => $old_price['price_type'],
177
-            'PRC_is_default' => false,
178
-            'PRC_overrides' => false,
179
-            'PRC_order' => 0,
180
-            'PRC_deleted' => false,
181
-            'PRC_parent' => null
152
+		// create a ticket for each old price -old datetime combo
153
+		$tickets_for_old_price = array();
154
+		foreach ($this->_get_datetime_ids_for_old_event_id($old_row['event_id']) as $new_datetime_id) {
155
+			$ticket_id = $this->_insert_new_ticket($old_row);
156
+			$tickets_for_old_price[] = $ticket_id;
157
+			// associate to old prices
158
+			$this->_insert_ticket_price_relation($ticket_id, $new_price_id);
159
+			$this->_insert_ticket_price_relation($ticket_id, $surcharge_price_id);
160
+			$this->_insert_datetime_ticket_relation($new_datetime_id, $ticket_id);
161
+		}
162
+		$this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_ticket_table, $tickets_for_old_price);
163
+	}
164
+	/**
165
+	 * Creates a 4.1 price base type
166
+	 * @global type $wpdb
167
+	 * @param type $old_price
168
+	 * @return int
169
+	 */
170
+	private function _insert_new_price($old_price)
171
+	{
172
+		global $wpdb;
173
+		$cols_n_values = array(
174
+			'PRT_ID' => self::price_type_base,
175
+			'PRC_amount' => floatval($old_price['event_cost']),
176
+			'PRC_name' => $old_price['price_type'],
177
+			'PRC_is_default' => false,
178
+			'PRC_overrides' => false,
179
+			'PRC_order' => 0,
180
+			'PRC_deleted' => false,
181
+			'PRC_parent' => null
182 182
 
183
-        );
184
-        $datatypes = array(
185
-            '%d',// PRT_ID
186
-            '%f',// PRT_amount
187
-            '%s',// PRC_name
188
-            '%d',// PRC_is_default
189
-            '%d',// PRC_overrides
190
-            '%d',// PRC_order
191
-            '%d',// PRC_deleted
192
-            '%d',// PRC_parent
193
-        );
194
-        $success = $wpdb->insert($this->_new_price_table, $cols_n_values, $datatypes);
195
-        if (! $success) {
196
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price, $this->_new_price_table, $cols_n_values, $datatypes));
197
-            return 0;
198
-        }
199
-        $new_id = $wpdb->insert_id;
200
-        return $new_id;
201
-    }
202
-    /**
203
-     * Creates a 4.1 member price discount
204
-     * @global type $wpdb
205
-     * @param type $old_price
206
-     * @return int
207
-     */
183
+		);
184
+		$datatypes = array(
185
+			'%d',// PRT_ID
186
+			'%f',// PRT_amount
187
+			'%s',// PRC_name
188
+			'%d',// PRC_is_default
189
+			'%d',// PRC_overrides
190
+			'%d',// PRC_order
191
+			'%d',// PRC_deleted
192
+			'%d',// PRC_parent
193
+		);
194
+		$success = $wpdb->insert($this->_new_price_table, $cols_n_values, $datatypes);
195
+		if (! $success) {
196
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price, $this->_new_price_table, $cols_n_values, $datatypes));
197
+			return 0;
198
+		}
199
+		$new_id = $wpdb->insert_id;
200
+		return $new_id;
201
+	}
202
+	/**
203
+	 * Creates a 4.1 member price discount
204
+	 * @global type $wpdb
205
+	 * @param type $old_price
206
+	 * @return int
207
+	 */
208 208
 //  private function _insert_new_member_price($old_price){
209 209
 //      $discount_amount = floatval($old_price['event_cost']) - floatval($old_price['member_price']);
210 210
 //      global $wpdb;
@@ -237,207 +237,207 @@  discard block
 block discarded – undo
237 237
 //      $new_id = $wpdb->insert_id;
238 238
 //      return $new_id;
239 239
 //  }
240
-    /**
241
-     * Creates a 4.1 member price discount
242
-     * @global type $wpdb
243
-     * @param type $old_price
244
-     * @return int
245
-     */
246
-    private function _insert_new_surcharge_price($old_price)
247
-    {
240
+	/**
241
+	 * Creates a 4.1 member price discount
242
+	 * @global type $wpdb
243
+	 * @param type $old_price
244
+	 * @return int
245
+	 */
246
+	private function _insert_new_surcharge_price($old_price)
247
+	{
248 248
 
249
-        if ($old_price['surcharge_type'] == 'flat_rate') {
250
-            $price_type = self::price_type_flat_surcharge;
251
-        } else {
252
-            $price_type = self::price_type_percent_surcharge;
253
-        }
254
-        global $wpdb;
255
-        $cols_n_values = array(
256
-            'PRT_ID' => $price_type,
257
-            'PRC_amount' => floatval($old_price['surcharge']),
258
-            'PRC_name' =>  __("Surcharge", "event_espresso"),
259
-            'PRC_is_default' => false,
260
-            'PRC_overrides' => false,
261
-            'PRC_order' => 20,
262
-            'PRC_deleted' => false,
263
-            'PRC_parent' => null
249
+		if ($old_price['surcharge_type'] == 'flat_rate') {
250
+			$price_type = self::price_type_flat_surcharge;
251
+		} else {
252
+			$price_type = self::price_type_percent_surcharge;
253
+		}
254
+		global $wpdb;
255
+		$cols_n_values = array(
256
+			'PRT_ID' => $price_type,
257
+			'PRC_amount' => floatval($old_price['surcharge']),
258
+			'PRC_name' =>  __("Surcharge", "event_espresso"),
259
+			'PRC_is_default' => false,
260
+			'PRC_overrides' => false,
261
+			'PRC_order' => 20,
262
+			'PRC_deleted' => false,
263
+			'PRC_parent' => null
264 264
 
265
-        );
266
-        $datatypes = array(
267
-            '%d',// PRT_ID
268
-            '%f',// PRT_amount
269
-            '%s',// PRC_name
270
-            '%d',// PRC_is_default
271
-            '%d',// PRC_overrides
272
-            '%d',// PRC_order
273
-            '%d',// PRC_deleted
274
-            '%d',// PRC_parent
275
-        );
276
-        $success = $wpdb->insert($this->_new_price_table, $cols_n_values, $datatypes);
277
-        if (! $success) {
278
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price, $this->_new_price_table, $cols_n_values, $datatypes));
279
-            return 0;
280
-        }
281
-        $new_id = $wpdb->insert_id;
282
-        return $new_id;
283
-    }
284
-    /**
285
-     * Inserts a 4.1 ticket based off the 3.1 price, and the price IDs we've already made from the 3.1 price
286
-     * @param $old_price_row array where keys are columns
287
-     * @param $new_base_price_id int
288
-     * @param $new_member_discount_id int
289
-     * @param $new_surcharge_id int
290
-     * @return int new ticket id
291
-     */
292
-    private function _insert_new_ticket($old_price_row)
293
-    {
294
-        global $wpdb;
295
-        $event_row = $this->_get_event_row($old_price_row['event_id']);
296
-        if ($old_price_row['surcharge_type'] == 'flat_rate') {
297
-            $final_ticket_price = floatval($old_price_row['event_cost']) + floatval($old_price_row['surcharge']);
298
-        } else {// percent surcharge
299
-            $final_ticket_price = floatval($old_price_row['event_cost']) * (1 + floatval($old_price_row['surcharge']) / 100);
300
-        }
301
-        $start_date = $event_row['registration_start'] . " " . $this->get_migration_script()->convertTimeFromAMPM($event_row['registration_startT']);
302
-        $start_date_utc = $this->get_migration_script()->convert_date_string_to_utc($this, $old_price_row, $start_date, $event_row['timezone_string']);
303
-        $end_date = $event_row['registration_end'] . " " . $this->get_migration_script()->convertTimeFromAMPM($event_row['registration_endT']);
304
-        $end_date_utc = $this->get_migration_script()->convert_date_string_to_utc($this, $old_price_row, $end_date, $event_row['timezone_string']);
305
-        $cols_n_values = array(
306
-            'TTM_ID' => 0,
307
-            'TKT_name' => $old_price_row['price_type'],
308
-            'TKT_description' => '',
309
-            'TKT_start_date' => $start_date_utc,
310
-            'TKT_end_date' => $end_date_utc,
311
-            'TKT_min' => 0,
312
-            'TKT_max' => -1,
313
-            'TKT_price' => $final_ticket_price,
314
-            'TKT_sold' => 0,// note: this will get calculated as we actually add registrations during the migration
315
-            'TKT_qty' => -1,
316
-            'TKT_uses' => 1,
317
-            'TKT_taxable' => false,// so by default, old prices are NOT taxable. This way they don't suddenly have a sudden spike in prices
318
-            'TKT_is_default' => false,
319
-            'TKT_order' => $this->_get_ticket_count(),
320
-            'TKT_row' => 0,// doesn't matter because UI reset this on first save anyways
321
-            'TKT_deleted' => false,
322
-            'TKT_parent' => 0
265
+		);
266
+		$datatypes = array(
267
+			'%d',// PRT_ID
268
+			'%f',// PRT_amount
269
+			'%s',// PRC_name
270
+			'%d',// PRC_is_default
271
+			'%d',// PRC_overrides
272
+			'%d',// PRC_order
273
+			'%d',// PRC_deleted
274
+			'%d',// PRC_parent
275
+		);
276
+		$success = $wpdb->insert($this->_new_price_table, $cols_n_values, $datatypes);
277
+		if (! $success) {
278
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price, $this->_new_price_table, $cols_n_values, $datatypes));
279
+			return 0;
280
+		}
281
+		$new_id = $wpdb->insert_id;
282
+		return $new_id;
283
+	}
284
+	/**
285
+	 * Inserts a 4.1 ticket based off the 3.1 price, and the price IDs we've already made from the 3.1 price
286
+	 * @param $old_price_row array where keys are columns
287
+	 * @param $new_base_price_id int
288
+	 * @param $new_member_discount_id int
289
+	 * @param $new_surcharge_id int
290
+	 * @return int new ticket id
291
+	 */
292
+	private function _insert_new_ticket($old_price_row)
293
+	{
294
+		global $wpdb;
295
+		$event_row = $this->_get_event_row($old_price_row['event_id']);
296
+		if ($old_price_row['surcharge_type'] == 'flat_rate') {
297
+			$final_ticket_price = floatval($old_price_row['event_cost']) + floatval($old_price_row['surcharge']);
298
+		} else {// percent surcharge
299
+			$final_ticket_price = floatval($old_price_row['event_cost']) * (1 + floatval($old_price_row['surcharge']) / 100);
300
+		}
301
+		$start_date = $event_row['registration_start'] . " " . $this->get_migration_script()->convertTimeFromAMPM($event_row['registration_startT']);
302
+		$start_date_utc = $this->get_migration_script()->convert_date_string_to_utc($this, $old_price_row, $start_date, $event_row['timezone_string']);
303
+		$end_date = $event_row['registration_end'] . " " . $this->get_migration_script()->convertTimeFromAMPM($event_row['registration_endT']);
304
+		$end_date_utc = $this->get_migration_script()->convert_date_string_to_utc($this, $old_price_row, $end_date, $event_row['timezone_string']);
305
+		$cols_n_values = array(
306
+			'TTM_ID' => 0,
307
+			'TKT_name' => $old_price_row['price_type'],
308
+			'TKT_description' => '',
309
+			'TKT_start_date' => $start_date_utc,
310
+			'TKT_end_date' => $end_date_utc,
311
+			'TKT_min' => 0,
312
+			'TKT_max' => -1,
313
+			'TKT_price' => $final_ticket_price,
314
+			'TKT_sold' => 0,// note: this will get calculated as we actually add registrations during the migration
315
+			'TKT_qty' => -1,
316
+			'TKT_uses' => 1,
317
+			'TKT_taxable' => false,// so by default, old prices are NOT taxable. This way they don't suddenly have a sudden spike in prices
318
+			'TKT_is_default' => false,
319
+			'TKT_order' => $this->_get_ticket_count(),
320
+			'TKT_row' => 0,// doesn't matter because UI reset this on first save anyways
321
+			'TKT_deleted' => false,
322
+			'TKT_parent' => 0
323 323
 
324
-        );
325
-        $datatypes = array(
326
-            '%d',// TTM_ID
327
-            '%s',// TKT_name
328
-            '%s',// TKT_description
329
-            '%s',// TKT_start_date
330
-            '%s',// TKT_end_date
331
-            '%d',// TKT_min
332
-            '%d',// TKT_max
333
-            '%f',// TKT_price
334
-            '%d',// TKT_sold
335
-            '%d',// TKT_qty
336
-            '%d',// TKT_uses
337
-            '%d',// TKT_taxable
338
-            '%d',// TKT_is_default
339
-            '%d',// TKT_order
340
-            '%d',// TKT_row
341
-            '%d',// TKT_deleted
342
-            '%d',// TKT_parent
343
-        );
344
-        $success = $wpdb->insert($this->_new_ticket_table, $cols_n_values, $datatypes);
345
-        if (! $success) {
346
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price_row, $this->_new_ticket_table, $cols_n_values, $datatypes));
347
-            return 0;
348
-        }
349
-        $new_id = $wpdb->insert_id;
350
-        return $new_id;
351
-    }
324
+		);
325
+		$datatypes = array(
326
+			'%d',// TTM_ID
327
+			'%s',// TKT_name
328
+			'%s',// TKT_description
329
+			'%s',// TKT_start_date
330
+			'%s',// TKT_end_date
331
+			'%d',// TKT_min
332
+			'%d',// TKT_max
333
+			'%f',// TKT_price
334
+			'%d',// TKT_sold
335
+			'%d',// TKT_qty
336
+			'%d',// TKT_uses
337
+			'%d',// TKT_taxable
338
+			'%d',// TKT_is_default
339
+			'%d',// TKT_order
340
+			'%d',// TKT_row
341
+			'%d',// TKT_deleted
342
+			'%d',// TKT_parent
343
+		);
344
+		$success = $wpdb->insert($this->_new_ticket_table, $cols_n_values, $datatypes);
345
+		if (! $success) {
346
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price_row, $this->_new_ticket_table, $cols_n_values, $datatypes));
347
+			return 0;
348
+		}
349
+		$new_id = $wpdb->insert_id;
350
+		return $new_id;
351
+	}
352 352
 
353
-    /**
354
-     * Adds a join between a ticket and a price
355
-     * @global type $wpdb
356
-     * @param type $new_ticket_id
357
-     * @param type $new_price_id
358
-     * @return int
359
-     */
360
-    private function _insert_ticket_price_relation($new_ticket_id, $new_price_id)
361
-    {
362
-        global $wpdb;
363
-        $cols_n_values = array(
364
-            'TKT_ID' => $new_ticket_id,
365
-            'PRC_ID' => $new_price_id,
366
-        );
367
-        $datatypes = array(
368
-            '%d',// TKT_ID
369
-            '%d',// PRC_ID
370
-        );
371
-        $success = $wpdb->insert($this->_new_ticket_price_table, $cols_n_values, $datatypes);
372
-        if (! $success) {
373
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id,'price id' => $new_price_id), $this->_new_ticket_price_table, $cols_n_values, $datatypes));
374
-            return 0;
375
-        }
376
-        $new_id = $wpdb->insert_id;
377
-        return $new_id;
378
-    }
353
+	/**
354
+	 * Adds a join between a ticket and a price
355
+	 * @global type $wpdb
356
+	 * @param type $new_ticket_id
357
+	 * @param type $new_price_id
358
+	 * @return int
359
+	 */
360
+	private function _insert_ticket_price_relation($new_ticket_id, $new_price_id)
361
+	{
362
+		global $wpdb;
363
+		$cols_n_values = array(
364
+			'TKT_ID' => $new_ticket_id,
365
+			'PRC_ID' => $new_price_id,
366
+		);
367
+		$datatypes = array(
368
+			'%d',// TKT_ID
369
+			'%d',// PRC_ID
370
+		);
371
+		$success = $wpdb->insert($this->_new_ticket_price_table, $cols_n_values, $datatypes);
372
+		if (! $success) {
373
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id,'price id' => $new_price_id), $this->_new_ticket_price_table, $cols_n_values, $datatypes));
374
+			return 0;
375
+		}
376
+		$new_id = $wpdb->insert_id;
377
+		return $new_id;
378
+	}
379 379
 
380
-    /**
381
-     * Adds a join between a ticket and a datetime
382
-     * @global type $wpdb
383
-     * @param type $new_ticket_id
384
-     * @param type $new_price_id
385
-     * @return int
386
-     */
387
-    private function _insert_datetime_ticket_relation($new_datetime_id, $new_ticket_id)
388
-    {
389
-        global $wpdb;
390
-        $cols_n_values = array(
391
-            'TKT_ID' => $new_ticket_id,
392
-            'DTT_ID' => $new_datetime_id,
393
-        );
394
-        $datatypes = array(
395
-            '%d',// TKT_ID
396
-            '%d',// DTT_ID
397
-        );
398
-        $success = $wpdb->insert($this->_new_datetime_ticket_table, $cols_n_values, $datatypes);
399
-        if (! $success) {
400
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id,'datetime id' => $new_datetime_id), $this->_new_datetime_ticket_table, $cols_n_values, $datatypes));
401
-            return 0;
402
-        }
403
-        $new_id = $wpdb->insert_id;
404
-        return $new_id;
405
-    }
380
+	/**
381
+	 * Adds a join between a ticket and a datetime
382
+	 * @global type $wpdb
383
+	 * @param type $new_ticket_id
384
+	 * @param type $new_price_id
385
+	 * @return int
386
+	 */
387
+	private function _insert_datetime_ticket_relation($new_datetime_id, $new_ticket_id)
388
+	{
389
+		global $wpdb;
390
+		$cols_n_values = array(
391
+			'TKT_ID' => $new_ticket_id,
392
+			'DTT_ID' => $new_datetime_id,
393
+		);
394
+		$datatypes = array(
395
+			'%d',// TKT_ID
396
+			'%d',// DTT_ID
397
+		);
398
+		$success = $wpdb->insert($this->_new_datetime_ticket_table, $cols_n_values, $datatypes);
399
+		if (! $success) {
400
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id,'datetime id' => $new_datetime_id), $this->_new_datetime_ticket_table, $cols_n_values, $datatypes));
401
+			return 0;
402
+		}
403
+		$new_id = $wpdb->insert_id;
404
+		return $new_id;
405
+	}
406 406
 
407
-    /**
408
-     * Simply gets the 3.1 event row data
409
-     * @global type $wpdb
410
-     * @param type $event_id
411
-     * @return array
412
-     */
413
-    private function _get_event_row($event_id)
414
-    {
415
-        global $wpdb;
416
-        $old_event_table = $wpdb->prefix . "events_detail";
417
-        return $wpdb->get_row($wpdb->prepare("SELECT * FROM $old_event_table WHERE id=%d", $event_id), ARRAY_A);
418
-    }
419
-    /**
420
-     * Gets a higher ticket count than last time it was called (and is persisted between HTTP requests).
421
-     * Yes we COULD run a query joining events->datetimes->ticket_datetimes->tickets, but this should work fine too
422
-     * @return int
423
-     */
424
-    private function _get_ticket_count()
425
-    {
426
-        return $this->_ticket_count++;
427
-    }
407
+	/**
408
+	 * Simply gets the 3.1 event row data
409
+	 * @global type $wpdb
410
+	 * @param type $event_id
411
+	 * @return array
412
+	 */
413
+	private function _get_event_row($event_id)
414
+	{
415
+		global $wpdb;
416
+		$old_event_table = $wpdb->prefix . "events_detail";
417
+		return $wpdb->get_row($wpdb->prepare("SELECT * FROM $old_event_table WHERE id=%d", $event_id), ARRAY_A);
418
+	}
419
+	/**
420
+	 * Gets a higher ticket count than last time it was called (and is persisted between HTTP requests).
421
+	 * Yes we COULD run a query joining events->datetimes->ticket_datetimes->tickets, but this should work fine too
422
+	 * @return int
423
+	 */
424
+	private function _get_ticket_count()
425
+	{
426
+		return $this->_ticket_count++;
427
+	}
428 428
 
429
-    /**
430
-     * Using the 3.1 event id, gets the 4.1 datetimes for it
431
-     * @param int $old_event_id
432
-     * @return array where values are datetime ids
433
-     */
434
-    private function _get_datetime_ids_for_old_event_id($old_event_id)
435
-    {
436
-        global $wpdb;
437
-        $new_cpt_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_detail", $old_event_id, $wpdb->posts);
438
-        $datetime_ids = $wpdb->get_col($wpdb->prepare("SELECT DTT_ID FROM {$wpdb->prefix}esp_datetime WHERE EVT_ID=%d", $new_cpt_id));
439
-        return $datetime_ids;
440
-    }
429
+	/**
430
+	 * Using the 3.1 event id, gets the 4.1 datetimes for it
431
+	 * @param int $old_event_id
432
+	 * @return array where values are datetime ids
433
+	 */
434
+	private function _get_datetime_ids_for_old_event_id($old_event_id)
435
+	{
436
+		global $wpdb;
437
+		$new_cpt_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_detail", $old_event_id, $wpdb->posts);
438
+		$datetime_ids = $wpdb->get_col($wpdb->prepare("SELECT DTT_ID FROM {$wpdb->prefix}esp_datetime WHERE EVT_ID=%d", $new_cpt_id));
439
+		return $datetime_ids;
440
+	}
441 441
 }
442 442
 // @todo: tell users that in 3.1 the limit was on registration PER event,in 4.1 it's limit PER TICKET... SO, if they sell 2 different types of tickets
443 443
 //
Please login to merge, or discard this patch.
Spacing   +58 added lines, -58 removed lines patch added patch discarded remove patch
@@ -105,15 +105,15 @@  discard block
 block discarded – undo
105 105
     {
106 106
         global $wpdb;
107 107
         $this->_pretty_name = __("Prices", "event_espresso");
108
-        $this->_old_table = $wpdb->prefix . "events_prices";
108
+        $this->_old_table = $wpdb->prefix."events_prices";
109 109
         $this->select_expression = 'p.*, e.event_status';
110 110
         $this->_extra_where_sql = ' AS p 
111
-            INNER JOIN ' . $wpdb->prefix . 'events_detail AS e ON p.event_id=e.id
111
+            INNER JOIN ' . $wpdb->prefix.'events_detail AS e ON p.event_id=e.id
112 112
             WHERE e.event_status!="D"';
113
-        $this->_new_price_table = $wpdb->prefix . "esp_price";
114
-        $this->_new_ticket_table = $wpdb->prefix . "esp_ticket";
115
-        $this->_new_ticket_price_table = $wpdb->prefix . "esp_ticket_price";
116
-        $this->_new_datetime_ticket_table = $wpdb->prefix . "esp_datetime_ticket";
113
+        $this->_new_price_table = $wpdb->prefix."esp_price";
114
+        $this->_new_ticket_table = $wpdb->prefix."esp_ticket";
115
+        $this->_new_ticket_price_table = $wpdb->prefix."esp_ticket_price";
116
+        $this->_new_datetime_ticket_table = $wpdb->prefix."esp_datetime_ticket";
117 117
         parent::__construct();
118 118
     }
119 119
     protected function _migrate_old_row($old_row)
@@ -130,7 +130,7 @@  discard block
 block discarded – undo
130 130
         // create the surcharge if there is any
131 131
         if (floatval($old_row['surcharge']) >= 0.01) {
132 132
             $surcharge_price_id = $this->_insert_new_surcharge_price($old_row);
133
-            $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id,$surcharge_price_id));
133
+            $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id, $surcharge_price_id));
134 134
         } else {
135 135
             $surcharge_price_id = 0;
136 136
             $this->get_migration_script()->set_mapping($this->_old_table, $old_row['id'], $this->_new_price_table, array($new_price_id));
@@ -182,17 +182,17 @@  discard block
 block discarded – undo
182 182
 
183 183
         );
184 184
         $datatypes = array(
185
-            '%d',// PRT_ID
186
-            '%f',// PRT_amount
187
-            '%s',// PRC_name
188
-            '%d',// PRC_is_default
189
-            '%d',// PRC_overrides
190
-            '%d',// PRC_order
191
-            '%d',// PRC_deleted
192
-            '%d',// PRC_parent
185
+            '%d', // PRT_ID
186
+            '%f', // PRT_amount
187
+            '%s', // PRC_name
188
+            '%d', // PRC_is_default
189
+            '%d', // PRC_overrides
190
+            '%d', // PRC_order
191
+            '%d', // PRC_deleted
192
+            '%d', // PRC_parent
193 193
         );
194 194
         $success = $wpdb->insert($this->_new_price_table, $cols_n_values, $datatypes);
195
-        if (! $success) {
195
+        if ( ! $success) {
196 196
             $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price, $this->_new_price_table, $cols_n_values, $datatypes));
197 197
             return 0;
198 198
         }
@@ -264,17 +264,17 @@  discard block
 block discarded – undo
264 264
 
265 265
         );
266 266
         $datatypes = array(
267
-            '%d',// PRT_ID
268
-            '%f',// PRT_amount
269
-            '%s',// PRC_name
270
-            '%d',// PRC_is_default
271
-            '%d',// PRC_overrides
272
-            '%d',// PRC_order
273
-            '%d',// PRC_deleted
274
-            '%d',// PRC_parent
267
+            '%d', // PRT_ID
268
+            '%f', // PRT_amount
269
+            '%s', // PRC_name
270
+            '%d', // PRC_is_default
271
+            '%d', // PRC_overrides
272
+            '%d', // PRC_order
273
+            '%d', // PRC_deleted
274
+            '%d', // PRC_parent
275 275
         );
276 276
         $success = $wpdb->insert($this->_new_price_table, $cols_n_values, $datatypes);
277
-        if (! $success) {
277
+        if ( ! $success) {
278 278
             $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price, $this->_new_price_table, $cols_n_values, $datatypes));
279 279
             return 0;
280 280
         }
@@ -298,9 +298,9 @@  discard block
 block discarded – undo
298 298
         } else {// percent surcharge
299 299
             $final_ticket_price = floatval($old_price_row['event_cost']) * (1 + floatval($old_price_row['surcharge']) / 100);
300 300
         }
301
-        $start_date = $event_row['registration_start'] . " " . $this->get_migration_script()->convertTimeFromAMPM($event_row['registration_startT']);
301
+        $start_date = $event_row['registration_start']." ".$this->get_migration_script()->convertTimeFromAMPM($event_row['registration_startT']);
302 302
         $start_date_utc = $this->get_migration_script()->convert_date_string_to_utc($this, $old_price_row, $start_date, $event_row['timezone_string']);
303
-        $end_date = $event_row['registration_end'] . " " . $this->get_migration_script()->convertTimeFromAMPM($event_row['registration_endT']);
303
+        $end_date = $event_row['registration_end']." ".$this->get_migration_script()->convertTimeFromAMPM($event_row['registration_endT']);
304 304
         $end_date_utc = $this->get_migration_script()->convert_date_string_to_utc($this, $old_price_row, $end_date, $event_row['timezone_string']);
305 305
         $cols_n_values = array(
306 306
             'TTM_ID' => 0,
@@ -311,38 +311,38 @@  discard block
 block discarded – undo
311 311
             'TKT_min' => 0,
312 312
             'TKT_max' => -1,
313 313
             'TKT_price' => $final_ticket_price,
314
-            'TKT_sold' => 0,// note: this will get calculated as we actually add registrations during the migration
314
+            'TKT_sold' => 0, // note: this will get calculated as we actually add registrations during the migration
315 315
             'TKT_qty' => -1,
316 316
             'TKT_uses' => 1,
317
-            'TKT_taxable' => false,// so by default, old prices are NOT taxable. This way they don't suddenly have a sudden spike in prices
317
+            'TKT_taxable' => false, // so by default, old prices are NOT taxable. This way they don't suddenly have a sudden spike in prices
318 318
             'TKT_is_default' => false,
319 319
             'TKT_order' => $this->_get_ticket_count(),
320
-            'TKT_row' => 0,// doesn't matter because UI reset this on first save anyways
320
+            'TKT_row' => 0, // doesn't matter because UI reset this on first save anyways
321 321
             'TKT_deleted' => false,
322 322
             'TKT_parent' => 0
323 323
 
324 324
         );
325 325
         $datatypes = array(
326
-            '%d',// TTM_ID
327
-            '%s',// TKT_name
328
-            '%s',// TKT_description
329
-            '%s',// TKT_start_date
330
-            '%s',// TKT_end_date
331
-            '%d',// TKT_min
332
-            '%d',// TKT_max
333
-            '%f',// TKT_price
334
-            '%d',// TKT_sold
335
-            '%d',// TKT_qty
336
-            '%d',// TKT_uses
337
-            '%d',// TKT_taxable
338
-            '%d',// TKT_is_default
339
-            '%d',// TKT_order
340
-            '%d',// TKT_row
341
-            '%d',// TKT_deleted
342
-            '%d',// TKT_parent
326
+            '%d', // TTM_ID
327
+            '%s', // TKT_name
328
+            '%s', // TKT_description
329
+            '%s', // TKT_start_date
330
+            '%s', // TKT_end_date
331
+            '%d', // TKT_min
332
+            '%d', // TKT_max
333
+            '%f', // TKT_price
334
+            '%d', // TKT_sold
335
+            '%d', // TKT_qty
336
+            '%d', // TKT_uses
337
+            '%d', // TKT_taxable
338
+            '%d', // TKT_is_default
339
+            '%d', // TKT_order
340
+            '%d', // TKT_row
341
+            '%d', // TKT_deleted
342
+            '%d', // TKT_parent
343 343
         );
344 344
         $success = $wpdb->insert($this->_new_ticket_table, $cols_n_values, $datatypes);
345
-        if (! $success) {
345
+        if ( ! $success) {
346 346
             $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_price_row, $this->_new_ticket_table, $cols_n_values, $datatypes));
347 347
             return 0;
348 348
         }
@@ -365,12 +365,12 @@  discard block
 block discarded – undo
365 365
             'PRC_ID' => $new_price_id,
366 366
         );
367 367
         $datatypes = array(
368
-            '%d',// TKT_ID
369
-            '%d',// PRC_ID
368
+            '%d', // TKT_ID
369
+            '%d', // PRC_ID
370 370
         );
371 371
         $success = $wpdb->insert($this->_new_ticket_price_table, $cols_n_values, $datatypes);
372
-        if (! $success) {
373
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id,'price id' => $new_price_id), $this->_new_ticket_price_table, $cols_n_values, $datatypes));
372
+        if ( ! $success) {
373
+            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id, 'price id' => $new_price_id), $this->_new_ticket_price_table, $cols_n_values, $datatypes));
374 374
             return 0;
375 375
         }
376 376
         $new_id = $wpdb->insert_id;
@@ -392,12 +392,12 @@  discard block
 block discarded – undo
392 392
             'DTT_ID' => $new_datetime_id,
393 393
         );
394 394
         $datatypes = array(
395
-            '%d',// TKT_ID
396
-            '%d',// DTT_ID
395
+            '%d', // TKT_ID
396
+            '%d', // DTT_ID
397 397
         );
398 398
         $success = $wpdb->insert($this->_new_datetime_ticket_table, $cols_n_values, $datatypes);
399
-        if (! $success) {
400
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id,'datetime id' => $new_datetime_id), $this->_new_datetime_ticket_table, $cols_n_values, $datatypes));
399
+        if ( ! $success) {
400
+            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, array('ticket id' => $new_ticket_id, 'datetime id' => $new_datetime_id), $this->_new_datetime_ticket_table, $cols_n_values, $datatypes));
401 401
             return 0;
402 402
         }
403 403
         $new_id = $wpdb->insert_id;
@@ -413,7 +413,7 @@  discard block
 block discarded – undo
413 413
     private function _get_event_row($event_id)
414 414
     {
415 415
         global $wpdb;
416
-        $old_event_table = $wpdb->prefix . "events_detail";
416
+        $old_event_table = $wpdb->prefix."events_detail";
417 417
         return $wpdb->get_row($wpdb->prepare("SELECT * FROM $old_event_table WHERE id=%d", $event_id), ARRAY_A);
418 418
     }
419 419
     /**
@@ -434,7 +434,7 @@  discard block
 block discarded – undo
434 434
     private function _get_datetime_ids_for_old_event_id($old_event_id)
435 435
     {
436 436
         global $wpdb;
437
-        $new_cpt_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_detail", $old_event_id, $wpdb->posts);
437
+        $new_cpt_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix."events_detail", $old_event_id, $wpdb->posts);
438 438
         $datetime_ids = $wpdb->get_col($wpdb->prepare("SELECT DTT_ID FROM {$wpdb->prefix}esp_datetime WHERE EVT_ID=%d", $new_cpt_id));
439 439
         return $datetime_ids;
440 440
     }
Please login to merge, or discard this patch.
4_1_0_stages/EE_DMS_4_1_0_question_group_question.dmsstage.php 3 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -130,7 +130,7 @@
 block discarded – undo
130 130
      * being address info, and 0 being neither)
131 131
      * @global type $wpdb
132 132
      * @param type $new_question_group_id
133
-     * @return boolean
133
+     * @return integer
134 134
      */
135 135
     private function _is_system_question_group($new_question_group_id)
136 136
     {
Please login to merge, or discard this patch.
Indentation   +106 added lines, -108 removed lines patch added patch discarded remove patch
@@ -12,8 +12,6 @@  discard block
 block discarded – undo
12 12
   KEY `group_id` (`group_id`),
13 13
   KEY `question_id` (`question_id`)
14 14
 ) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8$$
15
-
16
-
17 15
  * 4.1 question group question model's tables and fields:
18 16
  $this->_tables = array(
19 17
             'Question_Group_Question'=>new EE_Primary_Table('esp_question_group_question','QGQ_ID')
@@ -29,114 +27,114 @@  discard block
 block discarded – undo
29 27
  */
30 28
 class EE_DMS_4_1_0_question_group_question extends EE_Data_Migration_Script_Stage
31 29
 {
32
-    private $_old_table;
33
-    private $_new_table;
34
-    public function _migration_step($num_items = 50)
35
-    {
30
+	private $_old_table;
31
+	private $_new_table;
32
+	public function _migration_step($num_items = 50)
33
+	{
36 34
 
37
-        global $wpdb;
38
-        $start_at_record = $this->count_records_migrated();
39
-        $rows = $wpdb->get_results($wpdb->prepare("SELECT * FROM $this->_old_table LIMIT %d,%d", $start_at_record, $num_items), ARRAY_A);
40
-        $items_actually_migrated = 0;
41
-        foreach ($rows as $question_group_question) {
42
-            $this->_insert_new_question_group_question($question_group_question);
43
-            $items_actually_migrated++;
44
-        }
45
-        if ($this->count_records_migrated() + $items_actually_migrated >= $this->count_records_to_migrate()) {
46
-            $this->set_completed();
47
-        }
48
-        return $items_actually_migrated;
49
-    }
50
-    public function _count_records_to_migrate()
51
-    {
52
-        global $wpdb;
53
-        $count = $wpdb->get_var("SELECT COUNT(id) FROM " . $this->_old_table);
54
-        return $count;
55
-    }
56
-    public function __construct()
57
-    {
58
-        global $wpdb;
59
-        $this->_old_table = $wpdb->prefix . "events_qst_group_rel";
60
-        $this->_new_table = $wpdb->prefix . "esp_question_group_question";
61
-        $this->_pretty_name = __("Question Group to Question Relations", "event_espresso");
62
-        parent::__construct();
63
-    }
35
+		global $wpdb;
36
+		$start_at_record = $this->count_records_migrated();
37
+		$rows = $wpdb->get_results($wpdb->prepare("SELECT * FROM $this->_old_table LIMIT %d,%d", $start_at_record, $num_items), ARRAY_A);
38
+		$items_actually_migrated = 0;
39
+		foreach ($rows as $question_group_question) {
40
+			$this->_insert_new_question_group_question($question_group_question);
41
+			$items_actually_migrated++;
42
+		}
43
+		if ($this->count_records_migrated() + $items_actually_migrated >= $this->count_records_to_migrate()) {
44
+			$this->set_completed();
45
+		}
46
+		return $items_actually_migrated;
47
+	}
48
+	public function _count_records_to_migrate()
49
+	{
50
+		global $wpdb;
51
+		$count = $wpdb->get_var("SELECT COUNT(id) FROM " . $this->_old_table);
52
+		return $count;
53
+	}
54
+	public function __construct()
55
+	{
56
+		global $wpdb;
57
+		$this->_old_table = $wpdb->prefix . "events_qst_group_rel";
58
+		$this->_new_table = $wpdb->prefix . "esp_question_group_question";
59
+		$this->_pretty_name = __("Question Group to Question Relations", "event_espresso");
60
+		parent::__construct();
61
+	}
64 62
 
65
-    /**
66
-     * Attempts to insert a new question group inthe new format given an old one
67
-     * @global type $wpdb
68
-     * @param array $old_question_group_question
69
-     * @return int
70
-     */
71
-    private function _insert_new_question_group_question($old_question_group_question)
72
-    {
73
-        global $wpdb;
74
-        $new_question_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_question", $old_question_group_question['question_id'], $wpdb->prefix . "esp_question");
75
-        $new_question_group_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_qst_group", $old_question_group_question['group_id'], $wpdb->prefix . "esp_question_group");
76
-        if (! $new_question_id) {
77
-            $this->add_error(sprintf(__("Could not find 4.1 question id for 3.1 question #%d.", "event_espresso"), $old_question_group_question['question_id']));
78
-            return 0;
79
-        }
80
-        if (! $new_question_group_id) {
81
-            $this->add_error(sprintf(__("Could not find 4.1 question group id for 3.1 question group #%d.", "event_espresso"), $old_question_group_question['group_id']));
82
-            return 0;
83
-        }
84
-        // if it's a system question, it needs to be in the right system group. otherwise no dice!
85
-        if (
86
-            ($this->_is_system_question_group($new_question_group_id) == $this->_is_system_question_for_question_group($new_question_id) )
87
-                ||
88
-                ! $this->_is_system_question_for_question_group($new_question_id)
89
-        ) {
90
-            $cols_n_values = array(
91
-                'QSG_ID' => $new_question_group_id,
92
-                'QST_ID' => $new_question_id
93
-            );
94
-            $datatypes = array(
95
-                '%d',// QSG_ID
96
-                '%d',// QST_ID
97
-            );
98
-            $success = $wpdb->insert($this->_new_table, $cols_n_values, $datatypes);
99
-            if (! $success) {
100
-                $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_question_group_question, $this->_new_table, $cols_n_values, $datatypes));
101
-                return 0;
102
-            }
103
-            return $wpdb->insert_id;
104
-        } else {
105
-            return false;
106
-        }
107
-    }
63
+	/**
64
+	 * Attempts to insert a new question group inthe new format given an old one
65
+	 * @global type $wpdb
66
+	 * @param array $old_question_group_question
67
+	 * @return int
68
+	 */
69
+	private function _insert_new_question_group_question($old_question_group_question)
70
+	{
71
+		global $wpdb;
72
+		$new_question_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_question", $old_question_group_question['question_id'], $wpdb->prefix . "esp_question");
73
+		$new_question_group_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_qst_group", $old_question_group_question['group_id'], $wpdb->prefix . "esp_question_group");
74
+		if (! $new_question_id) {
75
+			$this->add_error(sprintf(__("Could not find 4.1 question id for 3.1 question #%d.", "event_espresso"), $old_question_group_question['question_id']));
76
+			return 0;
77
+		}
78
+		if (! $new_question_group_id) {
79
+			$this->add_error(sprintf(__("Could not find 4.1 question group id for 3.1 question group #%d.", "event_espresso"), $old_question_group_question['group_id']));
80
+			return 0;
81
+		}
82
+		// if it's a system question, it needs to be in the right system group. otherwise no dice!
83
+		if (
84
+			($this->_is_system_question_group($new_question_group_id) == $this->_is_system_question_for_question_group($new_question_id) )
85
+				||
86
+				! $this->_is_system_question_for_question_group($new_question_id)
87
+		) {
88
+			$cols_n_values = array(
89
+				'QSG_ID' => $new_question_group_id,
90
+				'QST_ID' => $new_question_id
91
+			);
92
+			$datatypes = array(
93
+				'%d',// QSG_ID
94
+				'%d',// QST_ID
95
+			);
96
+			$success = $wpdb->insert($this->_new_table, $cols_n_values, $datatypes);
97
+			if (! $success) {
98
+				$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_question_group_question, $this->_new_table, $cols_n_values, $datatypes));
99
+				return 0;
100
+			}
101
+			return $wpdb->insert_id;
102
+		} else {
103
+			return false;
104
+		}
105
+	}
108 106
 
109
-    /**
110
-     * If this question is a system question, returns the QSG_system number that
111
-     * indicates the question group its permitted in.
112
-     * @global type $wpdb
113
-     * @param type $new_question_id
114
-     * @return int
115
-     */
116
-    private function _is_system_question_for_question_group($new_question_id)
117
-    {
118
-        global $wpdb;
119
-        $system_id = $wpdb->get_var($wpdb->prepare("SELECT QST_system FROM " . $wpdb->prefix . "esp_question WHERE QST_ID=%d", $new_question_id));
120
-        if (in_array($system_id, array('fname','lname','email'))) {
121
-            return 1;
122
-        } elseif ($system_id != '' && $system_id) {
123
-            return 2;
124
-        } else {
125
-            return 0;
126
-        }
127
-    }
107
+	/**
108
+	 * If this question is a system question, returns the QSG_system number that
109
+	 * indicates the question group its permitted in.
110
+	 * @global type $wpdb
111
+	 * @param type $new_question_id
112
+	 * @return int
113
+	 */
114
+	private function _is_system_question_for_question_group($new_question_id)
115
+	{
116
+		global $wpdb;
117
+		$system_id = $wpdb->get_var($wpdb->prepare("SELECT QST_system FROM " . $wpdb->prefix . "esp_question WHERE QST_ID=%d", $new_question_id));
118
+		if (in_array($system_id, array('fname','lname','email'))) {
119
+			return 1;
120
+		} elseif ($system_id != '' && $system_id) {
121
+			return 2;
122
+		} else {
123
+			return 0;
124
+		}
125
+	}
128 126
 
129
-    /**
130
-     * Returns the questino group's QSG_system value (1 meaning personal info, 2
131
-     * being address info, and 0 being neither)
132
-     * @global type $wpdb
133
-     * @param type $new_question_group_id
134
-     * @return boolean
135
-     */
136
-    private function _is_system_question_group($new_question_group_id)
137
-    {
138
-        global $wpdb;
139
-        $system_id = $wpdb->get_var($wpdb->prepare("SELECT QSG_system FROM " . $wpdb->prefix . "esp_question_group WHERE QSG_ID=%d", $new_question_group_id));
140
-        return intval($system_id);
141
-    }
127
+	/**
128
+	 * Returns the questino group's QSG_system value (1 meaning personal info, 2
129
+	 * being address info, and 0 being neither)
130
+	 * @global type $wpdb
131
+	 * @param type $new_question_group_id
132
+	 * @return boolean
133
+	 */
134
+	private function _is_system_question_group($new_question_group_id)
135
+	{
136
+		global $wpdb;
137
+		$system_id = $wpdb->get_var($wpdb->prepare("SELECT QSG_system FROM " . $wpdb->prefix . "esp_question_group WHERE QSG_ID=%d", $new_question_group_id));
138
+		return intval($system_id);
139
+	}
142 140
 }
Please login to merge, or discard this patch.
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -50,14 +50,14 @@  discard block
 block discarded – undo
50 50
     public function _count_records_to_migrate()
51 51
     {
52 52
         global $wpdb;
53
-        $count = $wpdb->get_var("SELECT COUNT(id) FROM " . $this->_old_table);
53
+        $count = $wpdb->get_var("SELECT COUNT(id) FROM ".$this->_old_table);
54 54
         return $count;
55 55
     }
56 56
     public function __construct()
57 57
     {
58 58
         global $wpdb;
59
-        $this->_old_table = $wpdb->prefix . "events_qst_group_rel";
60
-        $this->_new_table = $wpdb->prefix . "esp_question_group_question";
59
+        $this->_old_table = $wpdb->prefix."events_qst_group_rel";
60
+        $this->_new_table = $wpdb->prefix."esp_question_group_question";
61 61
         $this->_pretty_name = __("Question Group to Question Relations", "event_espresso");
62 62
         parent::__construct();
63 63
     }
@@ -71,19 +71,19 @@  discard block
 block discarded – undo
71 71
     private function _insert_new_question_group_question($old_question_group_question)
72 72
     {
73 73
         global $wpdb;
74
-        $new_question_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_question", $old_question_group_question['question_id'], $wpdb->prefix . "esp_question");
75
-        $new_question_group_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix . "events_qst_group", $old_question_group_question['group_id'], $wpdb->prefix . "esp_question_group");
76
-        if (! $new_question_id) {
74
+        $new_question_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix."events_question", $old_question_group_question['question_id'], $wpdb->prefix."esp_question");
75
+        $new_question_group_id = $this->get_migration_script()->get_mapping_new_pk($wpdb->prefix."events_qst_group", $old_question_group_question['group_id'], $wpdb->prefix."esp_question_group");
76
+        if ( ! $new_question_id) {
77 77
             $this->add_error(sprintf(__("Could not find 4.1 question id for 3.1 question #%d.", "event_espresso"), $old_question_group_question['question_id']));
78 78
             return 0;
79 79
         }
80
-        if (! $new_question_group_id) {
80
+        if ( ! $new_question_group_id) {
81 81
             $this->add_error(sprintf(__("Could not find 4.1 question group id for 3.1 question group #%d.", "event_espresso"), $old_question_group_question['group_id']));
82 82
             return 0;
83 83
         }
84 84
         // if it's a system question, it needs to be in the right system group. otherwise no dice!
85 85
         if (
86
-            ($this->_is_system_question_group($new_question_group_id) == $this->_is_system_question_for_question_group($new_question_id) )
86
+            ($this->_is_system_question_group($new_question_group_id) == $this->_is_system_question_for_question_group($new_question_id))
87 87
                 ||
88 88
                 ! $this->_is_system_question_for_question_group($new_question_id)
89 89
         ) {
@@ -92,11 +92,11 @@  discard block
 block discarded – undo
92 92
                 'QST_ID' => $new_question_id
93 93
             );
94 94
             $datatypes = array(
95
-                '%d',// QSG_ID
96
-                '%d',// QST_ID
95
+                '%d', // QSG_ID
96
+                '%d', // QST_ID
97 97
             );
98 98
             $success = $wpdb->insert($this->_new_table, $cols_n_values, $datatypes);
99
-            if (! $success) {
99
+            if ( ! $success) {
100 100
                 $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_question_group_question, $this->_new_table, $cols_n_values, $datatypes));
101 101
                 return 0;
102 102
             }
@@ -116,8 +116,8 @@  discard block
 block discarded – undo
116 116
     private function _is_system_question_for_question_group($new_question_id)
117 117
     {
118 118
         global $wpdb;
119
-        $system_id = $wpdb->get_var($wpdb->prepare("SELECT QST_system FROM " . $wpdb->prefix . "esp_question WHERE QST_ID=%d", $new_question_id));
120
-        if (in_array($system_id, array('fname','lname','email'))) {
119
+        $system_id = $wpdb->get_var($wpdb->prepare("SELECT QST_system FROM ".$wpdb->prefix."esp_question WHERE QST_ID=%d", $new_question_id));
120
+        if (in_array($system_id, array('fname', 'lname', 'email'))) {
121 121
             return 1;
122 122
         } elseif ($system_id != '' && $system_id) {
123 123
             return 2;
@@ -136,7 +136,7 @@  discard block
 block discarded – undo
136 136
     private function _is_system_question_group($new_question_group_id)
137 137
     {
138 138
         global $wpdb;
139
-        $system_id = $wpdb->get_var($wpdb->prepare("SELECT QSG_system FROM " . $wpdb->prefix . "esp_question_group WHERE QSG_ID=%d", $new_question_group_id));
139
+        $system_id = $wpdb->get_var($wpdb->prepare("SELECT QSG_system FROM ".$wpdb->prefix."esp_question_group WHERE QSG_ID=%d", $new_question_group_id));
140 140
         return intval($system_id);
141 141
     }
142 142
 }
Please login to merge, or discard this patch.
core/data_migration_scripts/4_1_0_stages/EE_DMS_4_1_0_venues.dmsstage.php 3 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -205,7 +205,7 @@
 block discarded – undo
205 205
 
206 206
     /**
207 207
      * Inserts into the venue_meta table
208
-     * @param type $cpt_id
208
+     * @param integer $cpt_id
209 209
      * @param type $old_venue
210 210
      * @return int
211 211
      */
Please login to merge, or discard this patch.
Indentation   +202 added lines, -202 removed lines patch added patch discarded remove patch
@@ -63,210 +63,210 @@
 block discarded – undo
63 63
  */
64 64
 class EE_DMS_4_1_0_venues extends EE_Data_Migration_Script_Stage
65 65
 {
66
-    private $_old_table;
67
-    private $_new_table;
68
-    private $_new_meta_table;
69
-    public function _migration_step($num_items = 50)
70
-    {
71
-        global $wpdb;
72
-        $start_at_record = $this->count_records_migrated();
73
-        $rows = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $this->_old_table . " LIMIT %d,%d", $start_at_record, $num_items), ARRAY_A);
74
-        $items_actually_migrated = 0;
75
-        foreach ($rows as $old_venue) {
76
-            if (! $new_id = $this->_insert_into_posts($old_venue)) {
77
-                $items_actually_migrated++;
78
-                continue;
79
-            }
80
-            $this->get_migration_script()->set_mapping($this->_old_table, $old_venue['id'], $this->_new_table, $new_id);
81
-            if (! $new_meta_id = $this->_insert_into_meta_table($new_id, $old_venue)) {
82
-                $items_actually_migrated++;
83
-                continue;
84
-            }
85
-            $this->get_migration_script()->set_mapping($this->_old_table, $old_venue['id'], $this->_new_meta_table, $new_meta_id);
86
-            // lastly, save the 'contact' as post meta, because it doesn't exist anywhere else but someone may still want it
87
-            $venue_meta = maybe_unserialize($old_venue['meta']);
88
-            if (isset($venue_meta['contact']) && $venue_meta['contact']) {
89
-                add_post_meta($new_id, 'contact', $venue_meta['contact']);
90
-            }
91
-            // is there an image on this venue?
92
-            $guid = isset($venue_meta['image']) && $venue_meta['image'] ? $venue_meta['image'] : null;
93
-            if ($guid) {
94
-                $this->get_migration_script()->convert_image_url_to_attachment_and_attach_to_post($guid, $new_id, $this);
95
-            }
96
-            $items_actually_migrated++;
97
-            if ($guid) {
98
-                // if there was an image, we may have had to download it etc and it may have taken
99
-                // longer, then let's not bother migrating anymore on this step
100
-                break;
101
-            }
102
-        }
103
-        if ($this->count_records_migrated() + $items_actually_migrated >= $this->count_records_to_migrate()) {
104
-            $this->set_completed();
105
-        }
106
-        return $items_actually_migrated;
107
-    }
108
-    public function _count_records_to_migrate()
109
-    {
110
-        global $wpdb;
111
-        $count = $wpdb->get_var("SELECT COUNT(id) FROM " . $this->_old_table);
112
-        return $count;
113
-    }
114
-    public function __construct()
115
-    {
116
-        $this->_pretty_name = __("Venues", "event_espresso");
117
-        global $wpdb;
118
-        $this->_old_table = $wpdb->prefix . "events_venue";
119
-        $this->_new_table = $wpdb->posts;
120
-        $this->_new_meta_table = $wpdb->prefix . "esp_venue_meta";
121
-        parent::__construct();
122
-    }
66
+	private $_old_table;
67
+	private $_new_table;
68
+	private $_new_meta_table;
69
+	public function _migration_step($num_items = 50)
70
+	{
71
+		global $wpdb;
72
+		$start_at_record = $this->count_records_migrated();
73
+		$rows = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $this->_old_table . " LIMIT %d,%d", $start_at_record, $num_items), ARRAY_A);
74
+		$items_actually_migrated = 0;
75
+		foreach ($rows as $old_venue) {
76
+			if (! $new_id = $this->_insert_into_posts($old_venue)) {
77
+				$items_actually_migrated++;
78
+				continue;
79
+			}
80
+			$this->get_migration_script()->set_mapping($this->_old_table, $old_venue['id'], $this->_new_table, $new_id);
81
+			if (! $new_meta_id = $this->_insert_into_meta_table($new_id, $old_venue)) {
82
+				$items_actually_migrated++;
83
+				continue;
84
+			}
85
+			$this->get_migration_script()->set_mapping($this->_old_table, $old_venue['id'], $this->_new_meta_table, $new_meta_id);
86
+			// lastly, save the 'contact' as post meta, because it doesn't exist anywhere else but someone may still want it
87
+			$venue_meta = maybe_unserialize($old_venue['meta']);
88
+			if (isset($venue_meta['contact']) && $venue_meta['contact']) {
89
+				add_post_meta($new_id, 'contact', $venue_meta['contact']);
90
+			}
91
+			// is there an image on this venue?
92
+			$guid = isset($venue_meta['image']) && $venue_meta['image'] ? $venue_meta['image'] : null;
93
+			if ($guid) {
94
+				$this->get_migration_script()->convert_image_url_to_attachment_and_attach_to_post($guid, $new_id, $this);
95
+			}
96
+			$items_actually_migrated++;
97
+			if ($guid) {
98
+				// if there was an image, we may have had to download it etc and it may have taken
99
+				// longer, then let's not bother migrating anymore on this step
100
+				break;
101
+			}
102
+		}
103
+		if ($this->count_records_migrated() + $items_actually_migrated >= $this->count_records_to_migrate()) {
104
+			$this->set_completed();
105
+		}
106
+		return $items_actually_migrated;
107
+	}
108
+	public function _count_records_to_migrate()
109
+	{
110
+		global $wpdb;
111
+		$count = $wpdb->get_var("SELECT COUNT(id) FROM " . $this->_old_table);
112
+		return $count;
113
+	}
114
+	public function __construct()
115
+	{
116
+		$this->_pretty_name = __("Venues", "event_espresso");
117
+		global $wpdb;
118
+		$this->_old_table = $wpdb->prefix . "events_venue";
119
+		$this->_new_table = $wpdb->posts;
120
+		$this->_new_meta_table = $wpdb->prefix . "esp_venue_meta";
121
+		parent::__construct();
122
+	}
123 123
 
124
-    /**
125
-     * Inserts the CPT
126
-     * @param array $old_venue keys are cols, values are col values
127
-     * @return int
128
-     */
129
-    private function _insert_into_posts($old_venue)
130
-    {
131
-        global $wpdb;
132
-        $meta = maybe_unserialize($old_venue['meta']);
133
-        $slug = $this->_find_unique_slug($old_venue['name'], $old_venue['identifier']);
134
-        $insertion_array = array(
135
-                    'post_title' => stripslashes($old_venue['name']),// VNU_name
136
-                    'post_content' => isset($meta['description']) ? stripslashes(strip_tags($meta['description'])) : '',// VNU_desc
137
-                    'post_name' => $slug,// VNU_identifier
138
-                    'post_date' => current_time('mysql'),// VNU_created
139
-                    'post_date_gmt' =>  current_time('mysql', true),
140
-                    'post_excerpt' => '',// wp_trim_words($meta['description'] ? $meta['description'] : '',50),//VNU_short_desc arbitraty only 50 characters
141
-                    'post_modified' => current_time('mysql'),// VNU_modified
142
-                    'post_modified_gmt' => current_time('mysql', true),
143
-                    'post_author' => $old_venue['wp_user'],// VNU_wp_user
144
-                    'post_parent' => 0,// parent
145
-                    'menu_order' => 0,// VNU_order
146
-                    'post_type' => 'espresso_venues'// post_type
147
-                );
148
-        $datatypes_array = array(
149
-                    '%s',// VNU_name
150
-                    '%s',// VNU_desc
151
-                    '%s',// VNU_identifier
152
-                    '%s',// VNU_created
153
-                    '%s',
154
-                    '%s',// VNU_short_desc
155
-                    '%s',// VNU_modified
156
-                    '%s',
157
-                    '%d',// VNU_wp_user
158
-                    '%d',// parent
159
-                    '%d',// VNU_order
160
-                    '%s',// post_type
161
-                );
162
-        $success = $wpdb->insert(
163
-            $this->_new_table,
164
-            $insertion_array,
165
-            $datatypes_array
166
-        );
167
-        if (! $success) {
168
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_venue, $this->_new_table, $insertion_array, $datatypes_array));
169
-            return 0;
170
-        }
171
-        return $wpdb->insert_id;
172
-    }
124
+	/**
125
+	 * Inserts the CPT
126
+	 * @param array $old_venue keys are cols, values are col values
127
+	 * @return int
128
+	 */
129
+	private function _insert_into_posts($old_venue)
130
+	{
131
+		global $wpdb;
132
+		$meta = maybe_unserialize($old_venue['meta']);
133
+		$slug = $this->_find_unique_slug($old_venue['name'], $old_venue['identifier']);
134
+		$insertion_array = array(
135
+					'post_title' => stripslashes($old_venue['name']),// VNU_name
136
+					'post_content' => isset($meta['description']) ? stripslashes(strip_tags($meta['description'])) : '',// VNU_desc
137
+					'post_name' => $slug,// VNU_identifier
138
+					'post_date' => current_time('mysql'),// VNU_created
139
+					'post_date_gmt' =>  current_time('mysql', true),
140
+					'post_excerpt' => '',// wp_trim_words($meta['description'] ? $meta['description'] : '',50),//VNU_short_desc arbitraty only 50 characters
141
+					'post_modified' => current_time('mysql'),// VNU_modified
142
+					'post_modified_gmt' => current_time('mysql', true),
143
+					'post_author' => $old_venue['wp_user'],// VNU_wp_user
144
+					'post_parent' => 0,// parent
145
+					'menu_order' => 0,// VNU_order
146
+					'post_type' => 'espresso_venues'// post_type
147
+				);
148
+		$datatypes_array = array(
149
+					'%s',// VNU_name
150
+					'%s',// VNU_desc
151
+					'%s',// VNU_identifier
152
+					'%s',// VNU_created
153
+					'%s',
154
+					'%s',// VNU_short_desc
155
+					'%s',// VNU_modified
156
+					'%s',
157
+					'%d',// VNU_wp_user
158
+					'%d',// parent
159
+					'%d',// VNU_order
160
+					'%s',// post_type
161
+				);
162
+		$success = $wpdb->insert(
163
+			$this->_new_table,
164
+			$insertion_array,
165
+			$datatypes_array
166
+		);
167
+		if (! $success) {
168
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_venue, $this->_new_table, $insertion_array, $datatypes_array));
169
+			return 0;
170
+		}
171
+		return $wpdb->insert_id;
172
+	}
173 173
 
174
-    /**
175
-     * Finds a unique slug for this venue, given its name (we could have simply used
176
-     * the old unique_identifier column, but it added a long string of seemingly random characters onto the end
177
-     * and really wasn't that pretty for a slug, so we decided we'd make our own slug again)
178
-     * @param string $post_name
179
-     * @return string
180
-     */
181
-    private function _find_unique_slug($post_name, $old_identifier = '')
182
-    {
183
-        $count = 0;
184
-        $original_name = $post_name ? sanitize_title($post_name) : $old_identifier;
185
-        $event_slug = $original_name;
186
-        while ($this->_other_post_exists_with_that_slug($event_slug) && $count < 50) {
187
-            $event_slug = sanitize_title($original_name . "-" . ++$count);
188
-        }
189
-        return $event_slug;
190
-    }
174
+	/**
175
+	 * Finds a unique slug for this venue, given its name (we could have simply used
176
+	 * the old unique_identifier column, but it added a long string of seemingly random characters onto the end
177
+	 * and really wasn't that pretty for a slug, so we decided we'd make our own slug again)
178
+	 * @param string $post_name
179
+	 * @return string
180
+	 */
181
+	private function _find_unique_slug($post_name, $old_identifier = '')
182
+	{
183
+		$count = 0;
184
+		$original_name = $post_name ? sanitize_title($post_name) : $old_identifier;
185
+		$event_slug = $original_name;
186
+		while ($this->_other_post_exists_with_that_slug($event_slug) && $count < 50) {
187
+			$event_slug = sanitize_title($original_name . "-" . ++$count);
188
+		}
189
+		return $event_slug;
190
+	}
191 191
 
192
-    /**
193
-     * returns whether or not there is a post that has this same slug (post_title)
194
-     * @global type $wpdb
195
-     * @param type $slug
196
-     * @return boolean
197
-     */
198
-    private function _other_post_exists_with_that_slug($slug)
199
-    {
200
-        global $wpdb;
201
-        $query = $wpdb->prepare("SELECT COUNT(ID) FROM " . $this->_new_table . " WHERE post_name = %s", $slug);
202
-        $count = $wpdb->get_var($query);
203
-        return (bool) intval($count);
204
-    }
192
+	/**
193
+	 * returns whether or not there is a post that has this same slug (post_title)
194
+	 * @global type $wpdb
195
+	 * @param type $slug
196
+	 * @return boolean
197
+	 */
198
+	private function _other_post_exists_with_that_slug($slug)
199
+	{
200
+		global $wpdb;
201
+		$query = $wpdb->prepare("SELECT COUNT(ID) FROM " . $this->_new_table . " WHERE post_name = %s", $slug);
202
+		$count = $wpdb->get_var($query);
203
+		return (bool) intval($count);
204
+	}
205 205
 
206
-    /**
207
-     * Inserts into the venue_meta table
208
-     * @param type $cpt_id
209
-     * @param type $old_venue
210
-     * @return int
211
-     */
212
-    private function _insert_into_meta_table($cpt_id, $old_venue)
213
-    {
214
-        global $wpdb;
215
-        // get a country with the same name, or insert one
216
-        try {
217
-            $country = $this->get_migration_script()->get_or_create_country(stripslashes($old_venue['country']));
218
-            $country_iso = $country['CNT_ISO'];
219
-        } catch (EE_Error $e) {
220
-            $this->add_error(sprintf(__("%s for venue %s", "event_espresso"), $e->getMessage(), $this->_json_encode($old_venue)));
221
-            $country_iso = null;
222
-        }
223
-        // get a state with the same name, if possible
224
-        try {
225
-            $state = $this->get_migration_script()->get_or_create_state(stripslashes($old_venue['state']), isset($country['CNT_name']) ? $country['CNT_name'] : strip_tags($old_venue['country']));
226
-            $state_id = $state['STA_ID'];
227
-        } catch (EE_Error $e) {
228
-            $this->add_error(sprintf(__("%s for venue %s", "event_espresso"), $e->getMessage(), $this->_json_encode($old_venue)));
229
-            $state_id = 0;
230
-        }
231
-        $meta = maybe_unserialize($old_venue['meta']);
232
-        // now insert into meta table
233
-        $insertion_array = array(
234
-            'VNU_ID' => $cpt_id,// VNU_ID_fk
235
-            'VNU_address' => stripslashes($old_venue['address']),// VNU_address
236
-            'VNU_address2' => stripslashes($old_venue['address2']),// VNU_address2
237
-            'VNU_city' => stripslashes($old_venue['city']),// VNU_city
238
-            'STA_ID' => $state_id,// STA_ID
239
-            'CNT_ISO' => $country_iso,// CNT_ISO
240
-            'VNU_zip' => stripslashes($old_venue['zip']),// VNU_zip
241
-            'VNU_phone' => isset($meta['phone']) ? stripslashes($meta['phone']) : '',// VNU_phone
242
-            'VNU_capacity' => -1,// VNU_capacity
243
-            'VNU_url' => isset($meta['website']) ? stripslashes($meta['website']) : '',// VNU_url
244
-            'VNU_virtual_phone' => '',// VNU_virtual_phone
245
-            'VNU_virtual_url' => '',// VNU_virtual_url
246
-            'VNU_google_map_link' => '',// VNU_google_map_link
247
-            'VNU_enable_for_gmap' => true // VNU_enable_for_gmap
248
-        );
249
-        $datatypes = array(
250
-            '%d',// VNU_ID_fk
251
-            '%s',// VNU_address
252
-            '%s',// VNU_address2
253
-            '%s',// VNU_city
254
-            '%d',// STA_ID
255
-            '%s',// CNT_ISO
256
-            '%s',// VNU_zip
257
-            '%s',// VNU_phone
258
-            '%d',// VNU_capacity
259
-            '%s',// VNU_url
260
-            '%s',// VNU_virtual_phone
261
-            '%s',// VNU_virtual_url
262
-            '%s',// VNU_google_map_link
263
-            '%d',// VNU_enable_for_gmap
264
-        );
265
-        $success = $wpdb->insert($this->_new_meta_table, $insertion_array, $datatypes);
266
-        if (! $success) {
267
-            $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_venue, $this->_new_meta_table, $insertion_array, $datatypes));
268
-            return 0;
269
-        }
270
-        return $wpdb->insert_id;
271
-    }
206
+	/**
207
+	 * Inserts into the venue_meta table
208
+	 * @param type $cpt_id
209
+	 * @param type $old_venue
210
+	 * @return int
211
+	 */
212
+	private function _insert_into_meta_table($cpt_id, $old_venue)
213
+	{
214
+		global $wpdb;
215
+		// get a country with the same name, or insert one
216
+		try {
217
+			$country = $this->get_migration_script()->get_or_create_country(stripslashes($old_venue['country']));
218
+			$country_iso = $country['CNT_ISO'];
219
+		} catch (EE_Error $e) {
220
+			$this->add_error(sprintf(__("%s for venue %s", "event_espresso"), $e->getMessage(), $this->_json_encode($old_venue)));
221
+			$country_iso = null;
222
+		}
223
+		// get a state with the same name, if possible
224
+		try {
225
+			$state = $this->get_migration_script()->get_or_create_state(stripslashes($old_venue['state']), isset($country['CNT_name']) ? $country['CNT_name'] : strip_tags($old_venue['country']));
226
+			$state_id = $state['STA_ID'];
227
+		} catch (EE_Error $e) {
228
+			$this->add_error(sprintf(__("%s for venue %s", "event_espresso"), $e->getMessage(), $this->_json_encode($old_venue)));
229
+			$state_id = 0;
230
+		}
231
+		$meta = maybe_unserialize($old_venue['meta']);
232
+		// now insert into meta table
233
+		$insertion_array = array(
234
+			'VNU_ID' => $cpt_id,// VNU_ID_fk
235
+			'VNU_address' => stripslashes($old_venue['address']),// VNU_address
236
+			'VNU_address2' => stripslashes($old_venue['address2']),// VNU_address2
237
+			'VNU_city' => stripslashes($old_venue['city']),// VNU_city
238
+			'STA_ID' => $state_id,// STA_ID
239
+			'CNT_ISO' => $country_iso,// CNT_ISO
240
+			'VNU_zip' => stripslashes($old_venue['zip']),// VNU_zip
241
+			'VNU_phone' => isset($meta['phone']) ? stripslashes($meta['phone']) : '',// VNU_phone
242
+			'VNU_capacity' => -1,// VNU_capacity
243
+			'VNU_url' => isset($meta['website']) ? stripslashes($meta['website']) : '',// VNU_url
244
+			'VNU_virtual_phone' => '',// VNU_virtual_phone
245
+			'VNU_virtual_url' => '',// VNU_virtual_url
246
+			'VNU_google_map_link' => '',// VNU_google_map_link
247
+			'VNU_enable_for_gmap' => true // VNU_enable_for_gmap
248
+		);
249
+		$datatypes = array(
250
+			'%d',// VNU_ID_fk
251
+			'%s',// VNU_address
252
+			'%s',// VNU_address2
253
+			'%s',// VNU_city
254
+			'%d',// STA_ID
255
+			'%s',// CNT_ISO
256
+			'%s',// VNU_zip
257
+			'%s',// VNU_phone
258
+			'%d',// VNU_capacity
259
+			'%s',// VNU_url
260
+			'%s',// VNU_virtual_phone
261
+			'%s',// VNU_virtual_url
262
+			'%s',// VNU_google_map_link
263
+			'%d',// VNU_enable_for_gmap
264
+		);
265
+		$success = $wpdb->insert($this->_new_meta_table, $insertion_array, $datatypes);
266
+		if (! $success) {
267
+			$this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_venue, $this->_new_meta_table, $insertion_array, $datatypes));
268
+			return 0;
269
+		}
270
+		return $wpdb->insert_id;
271
+	}
272 272
 }
Please login to merge, or discard this patch.
Spacing   +56 added lines, -56 removed lines patch added patch discarded remove patch
@@ -70,15 +70,15 @@  discard block
 block discarded – undo
70 70
     {
71 71
         global $wpdb;
72 72
         $start_at_record = $this->count_records_migrated();
73
-        $rows = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $this->_old_table . " LIMIT %d,%d", $start_at_record, $num_items), ARRAY_A);
73
+        $rows = $wpdb->get_results($wpdb->prepare("SELECT * FROM ".$this->_old_table." LIMIT %d,%d", $start_at_record, $num_items), ARRAY_A);
74 74
         $items_actually_migrated = 0;
75 75
         foreach ($rows as $old_venue) {
76
-            if (! $new_id = $this->_insert_into_posts($old_venue)) {
76
+            if ( ! $new_id = $this->_insert_into_posts($old_venue)) {
77 77
                 $items_actually_migrated++;
78 78
                 continue;
79 79
             }
80 80
             $this->get_migration_script()->set_mapping($this->_old_table, $old_venue['id'], $this->_new_table, $new_id);
81
-            if (! $new_meta_id = $this->_insert_into_meta_table($new_id, $old_venue)) {
81
+            if ( ! $new_meta_id = $this->_insert_into_meta_table($new_id, $old_venue)) {
82 82
                 $items_actually_migrated++;
83 83
                 continue;
84 84
             }
@@ -108,16 +108,16 @@  discard block
 block discarded – undo
108 108
     public function _count_records_to_migrate()
109 109
     {
110 110
         global $wpdb;
111
-        $count = $wpdb->get_var("SELECT COUNT(id) FROM " . $this->_old_table);
111
+        $count = $wpdb->get_var("SELECT COUNT(id) FROM ".$this->_old_table);
112 112
         return $count;
113 113
     }
114 114
     public function __construct()
115 115
     {
116 116
         $this->_pretty_name = __("Venues", "event_espresso");
117 117
         global $wpdb;
118
-        $this->_old_table = $wpdb->prefix . "events_venue";
118
+        $this->_old_table = $wpdb->prefix."events_venue";
119 119
         $this->_new_table = $wpdb->posts;
120
-        $this->_new_meta_table = $wpdb->prefix . "esp_venue_meta";
120
+        $this->_new_meta_table = $wpdb->prefix."esp_venue_meta";
121 121
         parent::__construct();
122 122
     }
123 123
 
@@ -132,39 +132,39 @@  discard block
 block discarded – undo
132 132
         $meta = maybe_unserialize($old_venue['meta']);
133 133
         $slug = $this->_find_unique_slug($old_venue['name'], $old_venue['identifier']);
134 134
         $insertion_array = array(
135
-                    'post_title' => stripslashes($old_venue['name']),// VNU_name
136
-                    'post_content' => isset($meta['description']) ? stripslashes(strip_tags($meta['description'])) : '',// VNU_desc
137
-                    'post_name' => $slug,// VNU_identifier
138
-                    'post_date' => current_time('mysql'),// VNU_created
135
+                    'post_title' => stripslashes($old_venue['name']), // VNU_name
136
+                    'post_content' => isset($meta['description']) ? stripslashes(strip_tags($meta['description'])) : '', // VNU_desc
137
+                    'post_name' => $slug, // VNU_identifier
138
+                    'post_date' => current_time('mysql'), // VNU_created
139 139
                     'post_date_gmt' =>  current_time('mysql', true),
140
-                    'post_excerpt' => '',// wp_trim_words($meta['description'] ? $meta['description'] : '',50),//VNU_short_desc arbitraty only 50 characters
141
-                    'post_modified' => current_time('mysql'),// VNU_modified
140
+                    'post_excerpt' => '', // wp_trim_words($meta['description'] ? $meta['description'] : '',50),//VNU_short_desc arbitraty only 50 characters
141
+                    'post_modified' => current_time('mysql'), // VNU_modified
142 142
                     'post_modified_gmt' => current_time('mysql', true),
143
-                    'post_author' => $old_venue['wp_user'],// VNU_wp_user
144
-                    'post_parent' => 0,// parent
145
-                    'menu_order' => 0,// VNU_order
143
+                    'post_author' => $old_venue['wp_user'], // VNU_wp_user
144
+                    'post_parent' => 0, // parent
145
+                    'menu_order' => 0, // VNU_order
146 146
                     'post_type' => 'espresso_venues'// post_type
147 147
                 );
148 148
         $datatypes_array = array(
149
-                    '%s',// VNU_name
150
-                    '%s',// VNU_desc
151
-                    '%s',// VNU_identifier
152
-                    '%s',// VNU_created
149
+                    '%s', // VNU_name
150
+                    '%s', // VNU_desc
151
+                    '%s', // VNU_identifier
152
+                    '%s', // VNU_created
153 153
                     '%s',
154
-                    '%s',// VNU_short_desc
155
-                    '%s',// VNU_modified
154
+                    '%s', // VNU_short_desc
155
+                    '%s', // VNU_modified
156 156
                     '%s',
157
-                    '%d',// VNU_wp_user
158
-                    '%d',// parent
159
-                    '%d',// VNU_order
160
-                    '%s',// post_type
157
+                    '%d', // VNU_wp_user
158
+                    '%d', // parent
159
+                    '%d', // VNU_order
160
+                    '%s', // post_type
161 161
                 );
162 162
         $success = $wpdb->insert(
163 163
             $this->_new_table,
164 164
             $insertion_array,
165 165
             $datatypes_array
166 166
         );
167
-        if (! $success) {
167
+        if ( ! $success) {
168 168
             $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_venue, $this->_new_table, $insertion_array, $datatypes_array));
169 169
             return 0;
170 170
         }
@@ -184,7 +184,7 @@  discard block
 block discarded – undo
184 184
         $original_name = $post_name ? sanitize_title($post_name) : $old_identifier;
185 185
         $event_slug = $original_name;
186 186
         while ($this->_other_post_exists_with_that_slug($event_slug) && $count < 50) {
187
-            $event_slug = sanitize_title($original_name . "-" . ++$count);
187
+            $event_slug = sanitize_title($original_name."-".++$count);
188 188
         }
189 189
         return $event_slug;
190 190
     }
@@ -198,7 +198,7 @@  discard block
 block discarded – undo
198 198
     private function _other_post_exists_with_that_slug($slug)
199 199
     {
200 200
         global $wpdb;
201
-        $query = $wpdb->prepare("SELECT COUNT(ID) FROM " . $this->_new_table . " WHERE post_name = %s", $slug);
201
+        $query = $wpdb->prepare("SELECT COUNT(ID) FROM ".$this->_new_table." WHERE post_name = %s", $slug);
202 202
         $count = $wpdb->get_var($query);
203 203
         return (bool) intval($count);
204 204
     }
@@ -231,39 +231,39 @@  discard block
 block discarded – undo
231 231
         $meta = maybe_unserialize($old_venue['meta']);
232 232
         // now insert into meta table
233 233
         $insertion_array = array(
234
-            'VNU_ID' => $cpt_id,// VNU_ID_fk
235
-            'VNU_address' => stripslashes($old_venue['address']),// VNU_address
236
-            'VNU_address2' => stripslashes($old_venue['address2']),// VNU_address2
237
-            'VNU_city' => stripslashes($old_venue['city']),// VNU_city
238
-            'STA_ID' => $state_id,// STA_ID
239
-            'CNT_ISO' => $country_iso,// CNT_ISO
240
-            'VNU_zip' => stripslashes($old_venue['zip']),// VNU_zip
241
-            'VNU_phone' => isset($meta['phone']) ? stripslashes($meta['phone']) : '',// VNU_phone
242
-            'VNU_capacity' => -1,// VNU_capacity
243
-            'VNU_url' => isset($meta['website']) ? stripslashes($meta['website']) : '',// VNU_url
244
-            'VNU_virtual_phone' => '',// VNU_virtual_phone
245
-            'VNU_virtual_url' => '',// VNU_virtual_url
246
-            'VNU_google_map_link' => '',// VNU_google_map_link
234
+            'VNU_ID' => $cpt_id, // VNU_ID_fk
235
+            'VNU_address' => stripslashes($old_venue['address']), // VNU_address
236
+            'VNU_address2' => stripslashes($old_venue['address2']), // VNU_address2
237
+            'VNU_city' => stripslashes($old_venue['city']), // VNU_city
238
+            'STA_ID' => $state_id, // STA_ID
239
+            'CNT_ISO' => $country_iso, // CNT_ISO
240
+            'VNU_zip' => stripslashes($old_venue['zip']), // VNU_zip
241
+            'VNU_phone' => isset($meta['phone']) ? stripslashes($meta['phone']) : '', // VNU_phone
242
+            'VNU_capacity' => -1, // VNU_capacity
243
+            'VNU_url' => isset($meta['website']) ? stripslashes($meta['website']) : '', // VNU_url
244
+            'VNU_virtual_phone' => '', // VNU_virtual_phone
245
+            'VNU_virtual_url' => '', // VNU_virtual_url
246
+            'VNU_google_map_link' => '', // VNU_google_map_link
247 247
             'VNU_enable_for_gmap' => true // VNU_enable_for_gmap
248 248
         );
249 249
         $datatypes = array(
250
-            '%d',// VNU_ID_fk
251
-            '%s',// VNU_address
252
-            '%s',// VNU_address2
253
-            '%s',// VNU_city
254
-            '%d',// STA_ID
255
-            '%s',// CNT_ISO
256
-            '%s',// VNU_zip
257
-            '%s',// VNU_phone
258
-            '%d',// VNU_capacity
259
-            '%s',// VNU_url
260
-            '%s',// VNU_virtual_phone
261
-            '%s',// VNU_virtual_url
262
-            '%s',// VNU_google_map_link
263
-            '%d',// VNU_enable_for_gmap
250
+            '%d', // VNU_ID_fk
251
+            '%s', // VNU_address
252
+            '%s', // VNU_address2
253
+            '%s', // VNU_city
254
+            '%d', // STA_ID
255
+            '%s', // CNT_ISO
256
+            '%s', // VNU_zip
257
+            '%s', // VNU_phone
258
+            '%d', // VNU_capacity
259
+            '%s', // VNU_url
260
+            '%s', // VNU_virtual_phone
261
+            '%s', // VNU_virtual_url
262
+            '%s', // VNU_google_map_link
263
+            '%d', // VNU_enable_for_gmap
264 264
         );
265 265
         $success = $wpdb->insert($this->_new_meta_table, $insertion_array, $datatypes);
266
-        if (! $success) {
266
+        if ( ! $success) {
267 267
             $this->add_error($this->get_migration_script()->_create_error_message_for_db_insertion($this->_old_table, $old_venue, $this->_new_meta_table, $insertion_array, $datatypes));
268 268
             return 0;
269 269
         }
Please login to merge, or discard this patch.
4_6_0_stages/EE_DMS_4_6_0_payment_method_currencies.dmsstage.php 3 patches
Doc Comments   +3 added lines, -2 removed lines patch added patch discarded remove patch
@@ -128,6 +128,9 @@  discard block
 block discarded – undo
128 128
         return $items_actually_migrated;
129 129
     }
130 130
 
131
+    /**
132
+     * @param integer $num_items_to_migrate
133
+     */
131 134
     private function _gather_relations_to_add($num_items_to_migrate)
132 135
     {
133 136
         $relations_to_add_this_step = array();
@@ -160,8 +163,6 @@  discard block
 block discarded – undo
160 163
 
161 164
     /**
162 165
      * Adds teh relation between the payment method and the currencies it can be used for
163
-     * @param int $id
164
-     * @param string $gateway_slug
165 166
      */
166 167
     private function _add_currency_relations($pm_id, $currency_code)
167 168
     {
Please login to merge, or discard this patch.
Indentation   +166 added lines, -166 removed lines patch added patch discarded remove patch
@@ -12,176 +12,176 @@
 block discarded – undo
12 12
  */
13 13
 class EE_DMS_4_6_0_payment_method_currencies extends EE_Data_Migration_Script_Stage
14 14
 {
15
-    protected $_currency_table_name;
16
-    protected $_currency_payment_method_table_name;
17
-    protected $_payment_method_table_name;
18
-    /**
19
-     * each key is the name of a 4.1-style gateway we know how to migrate to 4.6
20
-     * @var array
21
-     */
22
-    protected $_gateway_currencies = array(
23
-        'Aim' => array(
24
-            'AUD',
25
-            'USD',
26
-            'CAD',
27
-            'EUR',
28
-            'GBP',
29
-            'NZD',
30
-        ),
31
-        'Bank' => 'all',
32
-        'Check' => 'all',
33
-        'Invoice' => 'all',
34
-        'Mijireh' => 'all',
35
-        'Paypal_Pro' => array(
36
-            'USD',
37
-            'GBP',
38
-            'CAD',
39
-            'AUD',
40
-            'BRL',
41
-            'CHF',
42
-            'CZK',
43
-            'DKK',
44
-            'EUR',
45
-            'HKD',
46
-            'HUF',
47
-            'ILS',
48
-            'JPY',
49
-            'MXN',
50
-            'MYR',
51
-            'NOK',
52
-            'NZD',
53
-            'PHP',
54
-            'PLN',
55
-            'SEK',
56
-            'SGD',
57
-            'THB',
58
-            'TRY',
59
-            'TWD',
60
-        ),
61
-        'Paypal_Standard' => array(
62
-            'USD',
63
-            'GBP',
64
-            'CAD',
65
-            'AUD',
66
-            'BRL',
67
-            'CHF',
68
-            'CZK',
69
-            'DKK',
70
-            'EUR',
71
-            'HKD',
72
-            'HUF',
73
-            'ILS',
74
-            'JPY',
75
-            'MXN',
76
-            'MYR',
77
-            'NOK',
78
-            'NZD',
79
-            'PHP',
80
-            'PLN',
81
-            'SEK',
82
-            'SGD',
83
-            'THB',
84
-            'TRY',
85
-            'TWD'
86
-        )
87
-    );
88
-    public function __construct()
89
-    {
90
-        global $wpdb;
91
-        $this->_pretty_name = __('Payment Method Currencies', 'event_espresso');
92
-        $this->_payment_method_table_name = $wpdb->prefix . 'esp_payment_method';
93
-        $this->_currency_payment_method_table_name = $wpdb->prefix . 'esp_currency_payment_method';
94
-        $this->_currency_table_name = $wpdb->prefix . 'esp_currency';
95
-        parent::__construct();
96
-    }
15
+	protected $_currency_table_name;
16
+	protected $_currency_payment_method_table_name;
17
+	protected $_payment_method_table_name;
18
+	/**
19
+	 * each key is the name of a 4.1-style gateway we know how to migrate to 4.6
20
+	 * @var array
21
+	 */
22
+	protected $_gateway_currencies = array(
23
+		'Aim' => array(
24
+			'AUD',
25
+			'USD',
26
+			'CAD',
27
+			'EUR',
28
+			'GBP',
29
+			'NZD',
30
+		),
31
+		'Bank' => 'all',
32
+		'Check' => 'all',
33
+		'Invoice' => 'all',
34
+		'Mijireh' => 'all',
35
+		'Paypal_Pro' => array(
36
+			'USD',
37
+			'GBP',
38
+			'CAD',
39
+			'AUD',
40
+			'BRL',
41
+			'CHF',
42
+			'CZK',
43
+			'DKK',
44
+			'EUR',
45
+			'HKD',
46
+			'HUF',
47
+			'ILS',
48
+			'JPY',
49
+			'MXN',
50
+			'MYR',
51
+			'NOK',
52
+			'NZD',
53
+			'PHP',
54
+			'PLN',
55
+			'SEK',
56
+			'SGD',
57
+			'THB',
58
+			'TRY',
59
+			'TWD',
60
+		),
61
+		'Paypal_Standard' => array(
62
+			'USD',
63
+			'GBP',
64
+			'CAD',
65
+			'AUD',
66
+			'BRL',
67
+			'CHF',
68
+			'CZK',
69
+			'DKK',
70
+			'EUR',
71
+			'HKD',
72
+			'HUF',
73
+			'ILS',
74
+			'JPY',
75
+			'MXN',
76
+			'MYR',
77
+			'NOK',
78
+			'NZD',
79
+			'PHP',
80
+			'PLN',
81
+			'SEK',
82
+			'SGD',
83
+			'THB',
84
+			'TRY',
85
+			'TWD'
86
+		)
87
+	);
88
+	public function __construct()
89
+	{
90
+		global $wpdb;
91
+		$this->_pretty_name = __('Payment Method Currencies', 'event_espresso');
92
+		$this->_payment_method_table_name = $wpdb->prefix . 'esp_payment_method';
93
+		$this->_currency_payment_method_table_name = $wpdb->prefix . 'esp_currency_payment_method';
94
+		$this->_currency_table_name = $wpdb->prefix . 'esp_currency';
95
+		parent::__construct();
96
+	}
97 97
 
98
-    protected function _count_records_to_migrate()
99
-    {
100
-        $count = 0;
101
-        foreach ($this->_gateway_currencies as $currencies) {
102
-            if ($currencies == 'all') {
103
-                $currencies = $this->_get_all_currencies();
104
-            }
105
-            $count += count($currencies);
106
-        }
107
-        return $count;
108
-    }
98
+	protected function _count_records_to_migrate()
99
+	{
100
+		$count = 0;
101
+		foreach ($this->_gateway_currencies as $currencies) {
102
+			if ($currencies == 'all') {
103
+				$currencies = $this->_get_all_currencies();
104
+			}
105
+			$count += count($currencies);
106
+		}
107
+		return $count;
108
+	}
109 109
 
110 110
 
111 111
 
112
-    protected function _migration_step($num_items_to_migrate = 50)
113
-    {
114
-        $items_actually_migrated = 0;
115
-        $relations_to_add_this_step = $this->_gather_relations_to_add($num_items_to_migrate);
116
-        foreach ($relations_to_add_this_step as $pm_slug => $currencies) {
117
-            $id = $this->get_migration_script()->get_mapping_new_pk('EE_Gateway_Config', $pm_slug, $this->_payment_method_table_name);
118
-            foreach ($currencies as $currency) {
119
-                if ($id) {
120
-                    $this->_add_currency_relations($id, $currency);
121
-                }
122
-                $items_actually_migrated++;
123
-            }
124
-        }
125
-        if ($this->count_records_migrated() + $items_actually_migrated >= $this->count_records_to_migrate()) {
126
-            $this->set_completed();
127
-        }
128
-        return $items_actually_migrated;
129
-    }
112
+	protected function _migration_step($num_items_to_migrate = 50)
113
+	{
114
+		$items_actually_migrated = 0;
115
+		$relations_to_add_this_step = $this->_gather_relations_to_add($num_items_to_migrate);
116
+		foreach ($relations_to_add_this_step as $pm_slug => $currencies) {
117
+			$id = $this->get_migration_script()->get_mapping_new_pk('EE_Gateway_Config', $pm_slug, $this->_payment_method_table_name);
118
+			foreach ($currencies as $currency) {
119
+				if ($id) {
120
+					$this->_add_currency_relations($id, $currency);
121
+				}
122
+				$items_actually_migrated++;
123
+			}
124
+		}
125
+		if ($this->count_records_migrated() + $items_actually_migrated >= $this->count_records_to_migrate()) {
126
+			$this->set_completed();
127
+		}
128
+		return $items_actually_migrated;
129
+	}
130 130
 
131
-    private function _gather_relations_to_add($num_items_to_migrate)
132
-    {
133
-        $relations_to_add_this_step = array();
134
-        $migrate_up_to_count = $this->count_records_migrated() + $num_items_to_migrate;
135
-        $iterator = 0;
136
-        foreach ($this->_gateway_currencies as $pm_slug => $currencies) {
137
-            if ($currencies == 'all') {
138
-                $currencies = $this->_get_all_currencies();
139
-            }
140
-            foreach ($currencies as $currency_code) {
141
-                if (
142
-                    $this->count_records_migrated() <= $iterator &&
143
-                        $iterator < $migrate_up_to_count
144
-                ) {
145
-                    $relations_to_add_this_step[ $pm_slug ] [] = $currency_code;
146
-                }
147
-                $iterator++;
148
-            }
149
-        }
150
-        return $relations_to_add_this_step;
151
-    }
152
-    /**
153
-     * Gets all the currency codes in the database
154
-     * @return array
155
-     */
156
-    private function _get_all_currencies()
157
-    {
158
-        global $wpdb;
159
-        $currencies = $wpdb->get_col("SELECT CUR_code FROM {$this->_currency_table_name}");
160
-        return $currencies;
161
-    }
131
+	private function _gather_relations_to_add($num_items_to_migrate)
132
+	{
133
+		$relations_to_add_this_step = array();
134
+		$migrate_up_to_count = $this->count_records_migrated() + $num_items_to_migrate;
135
+		$iterator = 0;
136
+		foreach ($this->_gateway_currencies as $pm_slug => $currencies) {
137
+			if ($currencies == 'all') {
138
+				$currencies = $this->_get_all_currencies();
139
+			}
140
+			foreach ($currencies as $currency_code) {
141
+				if (
142
+					$this->count_records_migrated() <= $iterator &&
143
+						$iterator < $migrate_up_to_count
144
+				) {
145
+					$relations_to_add_this_step[ $pm_slug ] [] = $currency_code;
146
+				}
147
+				$iterator++;
148
+			}
149
+		}
150
+		return $relations_to_add_this_step;
151
+	}
152
+	/**
153
+	 * Gets all the currency codes in the database
154
+	 * @return array
155
+	 */
156
+	private function _get_all_currencies()
157
+	{
158
+		global $wpdb;
159
+		$currencies = $wpdb->get_col("SELECT CUR_code FROM {$this->_currency_table_name}");
160
+		return $currencies;
161
+	}
162 162
 
163
-    /**
164
-     * Adds teh relation between the payment method and the currencies it can be used for
165
-     * @param int $id
166
-     * @param string $gateway_slug
167
-     */
168
-    private function _add_currency_relations($pm_id, $currency_code)
169
-    {
170
-        global $wpdb;
171
-        $cur_pm_relation = array(
172
-                    'CUR_code' => $currency_code,
173
-                    'PMD_ID' => $pm_id,
174
-                );
175
-        $success = $wpdb->insert(
176
-            $this->_currency_payment_method_table_name,
177
-            $cur_pm_relation,
178
-            array(
179
-                    '%s',// CUR_code
180
-                    '%d',// PMD_ID
181
-                )
182
-        );
183
-        if (! $success) {
184
-            $this->add_error(sprintf(__('Could not add currency relation %s because %s', "event_espresso"), wp_json_encode($cur_pm_relation), $wpdb->last_error));
185
-        }
186
-    }
163
+	/**
164
+	 * Adds teh relation between the payment method and the currencies it can be used for
165
+	 * @param int $id
166
+	 * @param string $gateway_slug
167
+	 */
168
+	private function _add_currency_relations($pm_id, $currency_code)
169
+	{
170
+		global $wpdb;
171
+		$cur_pm_relation = array(
172
+					'CUR_code' => $currency_code,
173
+					'PMD_ID' => $pm_id,
174
+				);
175
+		$success = $wpdb->insert(
176
+			$this->_currency_payment_method_table_name,
177
+			$cur_pm_relation,
178
+			array(
179
+					'%s',// CUR_code
180
+					'%d',// PMD_ID
181
+				)
182
+		);
183
+		if (! $success) {
184
+			$this->add_error(sprintf(__('Could not add currency relation %s because %s', "event_espresso"), wp_json_encode($cur_pm_relation), $wpdb->last_error));
185
+		}
186
+	}
187 187
 }
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -89,9 +89,9 @@  discard block
 block discarded – undo
89 89
     {
90 90
         global $wpdb;
91 91
         $this->_pretty_name = __('Payment Method Currencies', 'event_espresso');
92
-        $this->_payment_method_table_name = $wpdb->prefix . 'esp_payment_method';
93
-        $this->_currency_payment_method_table_name = $wpdb->prefix . 'esp_currency_payment_method';
94
-        $this->_currency_table_name = $wpdb->prefix . 'esp_currency';
92
+        $this->_payment_method_table_name = $wpdb->prefix.'esp_payment_method';
93
+        $this->_currency_payment_method_table_name = $wpdb->prefix.'esp_currency_payment_method';
94
+        $this->_currency_table_name = $wpdb->prefix.'esp_currency';
95 95
         parent::__construct();
96 96
     }
97 97
 
@@ -142,7 +142,7 @@  discard block
 block discarded – undo
142 142
                     $this->count_records_migrated() <= $iterator &&
143 143
                         $iterator < $migrate_up_to_count
144 144
                 ) {
145
-                    $relations_to_add_this_step[ $pm_slug ] [] = $currency_code;
145
+                    $relations_to_add_this_step[$pm_slug] [] = $currency_code;
146 146
                 }
147 147
                 $iterator++;
148 148
             }
@@ -176,11 +176,11 @@  discard block
 block discarded – undo
176 176
             $this->_currency_payment_method_table_name,
177 177
             $cur_pm_relation,
178 178
             array(
179
-                    '%s',// CUR_code
180
-                    '%d',// PMD_ID
179
+                    '%s', // CUR_code
180
+                    '%d', // PMD_ID
181 181
                 )
182 182
         );
183
-        if (! $success) {
183
+        if ( ! $success) {
184 184
             $this->add_error(sprintf(__('Could not add currency relation %s because %s', "event_espresso"), wp_json_encode($cur_pm_relation), $wpdb->last_error));
185 185
         }
186 186
     }
Please login to merge, or discard this patch.
core/data_migration_scripts/4_6_0_stages/EE_DMS_4_6_0_payments.dmsstage.php 3 patches
Doc Comments   -1 removed lines patch added patch discarded remove patch
@@ -58,7 +58,6 @@
 block discarded – undo
58 58
             'IV'=>  __("Invoice", 'event_espresso'),
59 59
             'MO'=>  __("Money Order", 'event_espresso'),
60 60
      * @global type $wpdb
61
-     * @param int $id
62 61
      * @return string
63 62
      */
64 63
     protected function _get_payment_method_id_by_gateway_name($gateway_name, $old_pay_method_column)
Please login to merge, or discard this patch.
Indentation   +78 added lines, -78 removed lines patch added patch discarded remove patch
@@ -11,44 +11,44 @@  discard block
 block discarded – undo
11 11
  */
12 12
 class EE_DMS_4_6_0_payments extends EE_Data_Migration_Script_Stage_Table
13 13
 {
14
-    protected $_payment_method_table;
15
-    public function __construct()
16
-    {
17
-        global $wpdb;
18
-        $this->_old_table = $wpdb->prefix . 'esp_payment';
19
-        $this->_payment_method_table = $wpdb->prefix . 'esp_payment_method';
20
-        $this->_pretty_name = __('Payment-Payment Method Relations', 'event_espresso');
21
-        parent::__construct();
22
-    }
23
-    protected function _migrate_old_row($payment_row)
24
-    {
25
-        global $wpdb;
26
-        // get the payment method's ID
27
-        $PMD_ID = apply_filters('FHEE__EE_DMS_4_6_0_payments__migrate_old_row__PMD_ID', $this->_get_payment_method_id_by_gateway_name($payment_row['PAY_gateway'], $payment_row['PAY_method']));
28
-        if (! $PMD_ID) {
29
-            $this->add_error(sprintf(__('Could not find payment method with PMD_type = \'%1$s\' when migrating payment row %2$s so just assigned it an unknown payment method', 'event_espresso'), $payment_row['PAY_gateway'], $this->_json_encode($payment_row)));
30
-            $PMD_ID = 0;
31
-        }
32
-        $new_values = array(
33
-            'PMD_ID' => $PMD_ID,
34
-            'PAY_source' => ( $payment_row['PAY_via_admin'] ? 'ADMIN' : 'CART' ) );
35
-        $wheres = array( 'PAY_ID' => $payment_row['PAY_ID'] );
36
-        $new_value_datatypes = array( '%d', '%s' );
37
-        $where_datatypes = array( '%d' );
38
-        $success = $wpdb->update(
39
-            $this->_old_table,
40
-            $new_values,
41
-            $wheres,
42
-            $new_value_datatypes,
43
-            $where_datatypes
44
-        );
45
-        if (! $success) {
46
-            $this->add_error(sprintf(__('Couldnt set %1$s row in table %2$s where %3$s', 'event_espresso'), $this->_json_encode($new_values), $this->_old_table, $this->_json_encode($wheres)));
47
-        }
48
-    }
49
-    /**
50
-     *
51
-     *  array(
14
+	protected $_payment_method_table;
15
+	public function __construct()
16
+	{
17
+		global $wpdb;
18
+		$this->_old_table = $wpdb->prefix . 'esp_payment';
19
+		$this->_payment_method_table = $wpdb->prefix . 'esp_payment_method';
20
+		$this->_pretty_name = __('Payment-Payment Method Relations', 'event_espresso');
21
+		parent::__construct();
22
+	}
23
+	protected function _migrate_old_row($payment_row)
24
+	{
25
+		global $wpdb;
26
+		// get the payment method's ID
27
+		$PMD_ID = apply_filters('FHEE__EE_DMS_4_6_0_payments__migrate_old_row__PMD_ID', $this->_get_payment_method_id_by_gateway_name($payment_row['PAY_gateway'], $payment_row['PAY_method']));
28
+		if (! $PMD_ID) {
29
+			$this->add_error(sprintf(__('Could not find payment method with PMD_type = \'%1$s\' when migrating payment row %2$s so just assigned it an unknown payment method', 'event_espresso'), $payment_row['PAY_gateway'], $this->_json_encode($payment_row)));
30
+			$PMD_ID = 0;
31
+		}
32
+		$new_values = array(
33
+			'PMD_ID' => $PMD_ID,
34
+			'PAY_source' => ( $payment_row['PAY_via_admin'] ? 'ADMIN' : 'CART' ) );
35
+		$wheres = array( 'PAY_ID' => $payment_row['PAY_ID'] );
36
+		$new_value_datatypes = array( '%d', '%s' );
37
+		$where_datatypes = array( '%d' );
38
+		$success = $wpdb->update(
39
+			$this->_old_table,
40
+			$new_values,
41
+			$wheres,
42
+			$new_value_datatypes,
43
+			$where_datatypes
44
+		);
45
+		if (! $success) {
46
+			$this->add_error(sprintf(__('Couldnt set %1$s row in table %2$s where %3$s', 'event_espresso'), $this->_json_encode($new_values), $this->_old_table, $this->_json_encode($wheres)));
47
+		}
48
+	}
49
+	/**
50
+	 *
51
+	 *  array(
52 52
             'PP' => __( 'PayPal', 'event_espresso' ),
53 53
             'CC' => __( 'Credit Card', 'event_espresso' ),
54 54
             'DB'=>  __("Debit Card", 'event_espresso'),
@@ -57,44 +57,44 @@  discard block
 block discarded – undo
57 57
             'BK'=>  __("Bank", 'event_espresso'),
58 58
             'IV'=>  __("Invoice", 'event_espresso'),
59 59
             'MO'=>  __("Money Order", 'event_espresso'),
60
-     * @global type $wpdb
61
-     * @param int $id
62
-     * @return string
63
-     */
64
-    protected function _get_payment_method_id_by_gateway_name($gateway_name, $old_pay_method_column)
65
-    {
66
-        global $wpdb;
67
-        // convert from old known PAY_method values to their corresponding
68
-        // PMD_type or default PMD_name
69
-        switch ($old_pay_method_column) {
70
-            case 'PP':
71
-                $pmd_type = 'Paypal_Standard';
72
-                break;
73
-            case 'CC':
74
-                $pmd_type = 'Credit_Card';
75
-                break;
76
-            case 'DB':
77
-                $pmd_type = 'Debit_Card';
78
-                break;
79
-            case 'CHQ':
80
-                $pmd_type = 'Check';
81
-                break;
82
-            case 'CSH':
83
-                $pmd_type = 'Cash';
84
-                break;
85
-            case 'BK':
86
-                $pmd_type = 'Bank';
87
-                break;
88
-            case 'IV':
89
-                $pmd_type = 'Invoice';
90
-                break;
91
-            case 'MO':
92
-                $pmd_type = 'Money_Order';
93
-                break;
94
-            default:
95
-                $pmd_type = $gateway_name;
96
-        }
97
-        $pmd_name = str_replace("_", " ", $pmd_type);
98
-        return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM " . $wpdb->prefix . "esp_payment_method WHERE PMD_type = %s OR PMD_name = %s", $pmd_type, $pmd_name));
99
-    }
60
+	 * @global type $wpdb
61
+	 * @param int $id
62
+	 * @return string
63
+	 */
64
+	protected function _get_payment_method_id_by_gateway_name($gateway_name, $old_pay_method_column)
65
+	{
66
+		global $wpdb;
67
+		// convert from old known PAY_method values to their corresponding
68
+		// PMD_type or default PMD_name
69
+		switch ($old_pay_method_column) {
70
+			case 'PP':
71
+				$pmd_type = 'Paypal_Standard';
72
+				break;
73
+			case 'CC':
74
+				$pmd_type = 'Credit_Card';
75
+				break;
76
+			case 'DB':
77
+				$pmd_type = 'Debit_Card';
78
+				break;
79
+			case 'CHQ':
80
+				$pmd_type = 'Check';
81
+				break;
82
+			case 'CSH':
83
+				$pmd_type = 'Cash';
84
+				break;
85
+			case 'BK':
86
+				$pmd_type = 'Bank';
87
+				break;
88
+			case 'IV':
89
+				$pmd_type = 'Invoice';
90
+				break;
91
+			case 'MO':
92
+				$pmd_type = 'Money_Order';
93
+				break;
94
+			default:
95
+				$pmd_type = $gateway_name;
96
+		}
97
+		$pmd_name = str_replace("_", " ", $pmd_type);
98
+		return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM " . $wpdb->prefix . "esp_payment_method WHERE PMD_type = %s OR PMD_name = %s", $pmd_type, $pmd_name));
99
+	}
100 100
 }
Please login to merge, or discard this patch.
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -15,8 +15,8 @@  discard block
 block discarded – undo
15 15
     public function __construct()
16 16
     {
17 17
         global $wpdb;
18
-        $this->_old_table = $wpdb->prefix . 'esp_payment';
19
-        $this->_payment_method_table = $wpdb->prefix . 'esp_payment_method';
18
+        $this->_old_table = $wpdb->prefix.'esp_payment';
19
+        $this->_payment_method_table = $wpdb->prefix.'esp_payment_method';
20 20
         $this->_pretty_name = __('Payment-Payment Method Relations', 'event_espresso');
21 21
         parent::__construct();
22 22
     }
@@ -25,16 +25,16 @@  discard block
 block discarded – undo
25 25
         global $wpdb;
26 26
         // get the payment method's ID
27 27
         $PMD_ID = apply_filters('FHEE__EE_DMS_4_6_0_payments__migrate_old_row__PMD_ID', $this->_get_payment_method_id_by_gateway_name($payment_row['PAY_gateway'], $payment_row['PAY_method']));
28
-        if (! $PMD_ID) {
28
+        if ( ! $PMD_ID) {
29 29
             $this->add_error(sprintf(__('Could not find payment method with PMD_type = \'%1$s\' when migrating payment row %2$s so just assigned it an unknown payment method', 'event_espresso'), $payment_row['PAY_gateway'], $this->_json_encode($payment_row)));
30 30
             $PMD_ID = 0;
31 31
         }
32 32
         $new_values = array(
33 33
             'PMD_ID' => $PMD_ID,
34
-            'PAY_source' => ( $payment_row['PAY_via_admin'] ? 'ADMIN' : 'CART' ) );
35
-        $wheres = array( 'PAY_ID' => $payment_row['PAY_ID'] );
36
-        $new_value_datatypes = array( '%d', '%s' );
37
-        $where_datatypes = array( '%d' );
34
+            'PAY_source' => ($payment_row['PAY_via_admin'] ? 'ADMIN' : 'CART') );
35
+        $wheres = array('PAY_ID' => $payment_row['PAY_ID']);
36
+        $new_value_datatypes = array('%d', '%s');
37
+        $where_datatypes = array('%d');
38 38
         $success = $wpdb->update(
39 39
             $this->_old_table,
40 40
             $new_values,
@@ -42,7 +42,7 @@  discard block
 block discarded – undo
42 42
             $new_value_datatypes,
43 43
             $where_datatypes
44 44
         );
45
-        if (! $success) {
45
+        if ( ! $success) {
46 46
             $this->add_error(sprintf(__('Couldnt set %1$s row in table %2$s where %3$s', 'event_espresso'), $this->_json_encode($new_values), $this->_old_table, $this->_json_encode($wheres)));
47 47
         }
48 48
     }
@@ -95,6 +95,6 @@  discard block
 block discarded – undo
95 95
                 $pmd_type = $gateway_name;
96 96
         }
97 97
         $pmd_name = str_replace("_", " ", $pmd_type);
98
-        return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM " . $wpdb->prefix . "esp_payment_method WHERE PMD_type = %s OR PMD_name = %s", $pmd_type, $pmd_name));
98
+        return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM ".$wpdb->prefix."esp_payment_method WHERE PMD_type = %s OR PMD_name = %s", $pmd_type, $pmd_name));
99 99
     }
100 100
 }
Please login to merge, or discard this patch.
data_migration_scripts/4_6_0_stages/EE_DMS_4_6_0_transactions.dmsstage.php 3 patches
Doc Comments   -1 removed lines patch added patch discarded remove patch
@@ -50,7 +50,6 @@
 block discarded – undo
50 50
     /**
51 51
      *
52 52
      * @global type $wpdb
53
-     * @param int $id
54 53
      * @return string
55 54
      */
56 55
     protected function _get_payment_method_id_by_gateway_name($gateway_name)
Please login to merge, or discard this patch.
Indentation   +47 added lines, -47 removed lines patch added patch discarded remove patch
@@ -11,51 +11,51 @@
 block discarded – undo
11 11
  */
12 12
 class EE_DMS_4_6_0_transactions extends EE_Data_Migration_Script_Stage_Table
13 13
 {
14
-    protected $_transaction_table;
15
-    protected $_payment_method_table;
16
-    public function __construct()
17
-    {
18
-        global $wpdb;
19
-        $this->_old_table = $wpdb->prefix . 'esp_extra_meta';
20
-        $this->_transaction_table = $wpdb->prefix . 'esp_transaction';
21
-        $this->_payment_method_table = $wpdb->prefix . 'esp_payment_method';
22
-        $this->_pretty_name = __('Transaction Payment Method Relations', 'event_espresso');
23
-        $this->_extra_where_sql = "WHERE EXM_key = 'gateway' AND EXM_type = 'Transaction'";
24
-        parent::__construct();
25
-    }
26
-    protected function _migrate_old_row($extra_meta_row)
27
-    {
28
-        global $wpdb;
29
-        // get the payment method's ID
30
-        $PMD_ID = $this->_get_payment_method_id_by_gateway_name($extra_meta_row['EXM_value']);
31
-        if (! $PMD_ID) {
32
-            $this->add_error(sprintf(__('Could not find payment method with PMD_type = \'%1$s\' when migrating extra meta row %2$s', 'event_espresso'), $extra_meta_row['EXM_value'], $this->_json_encode($extra_meta_row)));
33
-            return;
34
-        }
35
-        $new_values = array( 'PMD_ID' => $PMD_ID );
36
-        $wheres = array( 'TXN_ID' => $extra_meta_row['OBJ_ID'] );
37
-        $new_value_datatypes = array( '%d' );
38
-        $where_datatypes = array( '%d' );
39
-        $success = $wpdb->update(
40
-            $this->_transaction_table,
41
-            $new_values,
42
-            $wheres,
43
-            $new_value_datatypes,
44
-            $where_datatypes
45
-        );
46
-        if (! $success) {
47
-            $this->add_error(sprintf(__('Couldnt set %1$s row in table %2$s where %3$s', 'event_espresso'), $this->_json_encode($new_values), $this->_transaction_table, $this->_json_encode($wheres)));
48
-        }
49
-    }
50
-    /**
51
-     *
52
-     * @global type $wpdb
53
-     * @param int $id
54
-     * @return string
55
-     */
56
-    protected function _get_payment_method_id_by_gateway_name($gateway_name)
57
-    {
58
-        global $wpdb;
59
-        return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM " . $wpdb->prefix . "esp_payment_method WHERE PMD_type = %s", $gateway_name));
60
-    }
14
+	protected $_transaction_table;
15
+	protected $_payment_method_table;
16
+	public function __construct()
17
+	{
18
+		global $wpdb;
19
+		$this->_old_table = $wpdb->prefix . 'esp_extra_meta';
20
+		$this->_transaction_table = $wpdb->prefix . 'esp_transaction';
21
+		$this->_payment_method_table = $wpdb->prefix . 'esp_payment_method';
22
+		$this->_pretty_name = __('Transaction Payment Method Relations', 'event_espresso');
23
+		$this->_extra_where_sql = "WHERE EXM_key = 'gateway' AND EXM_type = 'Transaction'";
24
+		parent::__construct();
25
+	}
26
+	protected function _migrate_old_row($extra_meta_row)
27
+	{
28
+		global $wpdb;
29
+		// get the payment method's ID
30
+		$PMD_ID = $this->_get_payment_method_id_by_gateway_name($extra_meta_row['EXM_value']);
31
+		if (! $PMD_ID) {
32
+			$this->add_error(sprintf(__('Could not find payment method with PMD_type = \'%1$s\' when migrating extra meta row %2$s', 'event_espresso'), $extra_meta_row['EXM_value'], $this->_json_encode($extra_meta_row)));
33
+			return;
34
+		}
35
+		$new_values = array( 'PMD_ID' => $PMD_ID );
36
+		$wheres = array( 'TXN_ID' => $extra_meta_row['OBJ_ID'] );
37
+		$new_value_datatypes = array( '%d' );
38
+		$where_datatypes = array( '%d' );
39
+		$success = $wpdb->update(
40
+			$this->_transaction_table,
41
+			$new_values,
42
+			$wheres,
43
+			$new_value_datatypes,
44
+			$where_datatypes
45
+		);
46
+		if (! $success) {
47
+			$this->add_error(sprintf(__('Couldnt set %1$s row in table %2$s where %3$s', 'event_espresso'), $this->_json_encode($new_values), $this->_transaction_table, $this->_json_encode($wheres)));
48
+		}
49
+	}
50
+	/**
51
+	 *
52
+	 * @global type $wpdb
53
+	 * @param int $id
54
+	 * @return string
55
+	 */
56
+	protected function _get_payment_method_id_by_gateway_name($gateway_name)
57
+	{
58
+		global $wpdb;
59
+		return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM " . $wpdb->prefix . "esp_payment_method WHERE PMD_type = %s", $gateway_name));
60
+	}
61 61
 }
Please login to merge, or discard this patch.
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -16,9 +16,9 @@  discard block
 block discarded – undo
16 16
     public function __construct()
17 17
     {
18 18
         global $wpdb;
19
-        $this->_old_table = $wpdb->prefix . 'esp_extra_meta';
20
-        $this->_transaction_table = $wpdb->prefix . 'esp_transaction';
21
-        $this->_payment_method_table = $wpdb->prefix . 'esp_payment_method';
19
+        $this->_old_table = $wpdb->prefix.'esp_extra_meta';
20
+        $this->_transaction_table = $wpdb->prefix.'esp_transaction';
21
+        $this->_payment_method_table = $wpdb->prefix.'esp_payment_method';
22 22
         $this->_pretty_name = __('Transaction Payment Method Relations', 'event_espresso');
23 23
         $this->_extra_where_sql = "WHERE EXM_key = 'gateway' AND EXM_type = 'Transaction'";
24 24
         parent::__construct();
@@ -28,14 +28,14 @@  discard block
 block discarded – undo
28 28
         global $wpdb;
29 29
         // get the payment method's ID
30 30
         $PMD_ID = $this->_get_payment_method_id_by_gateway_name($extra_meta_row['EXM_value']);
31
-        if (! $PMD_ID) {
31
+        if ( ! $PMD_ID) {
32 32
             $this->add_error(sprintf(__('Could not find payment method with PMD_type = \'%1$s\' when migrating extra meta row %2$s', 'event_espresso'), $extra_meta_row['EXM_value'], $this->_json_encode($extra_meta_row)));
33 33
             return;
34 34
         }
35
-        $new_values = array( 'PMD_ID' => $PMD_ID );
36
-        $wheres = array( 'TXN_ID' => $extra_meta_row['OBJ_ID'] );
37
-        $new_value_datatypes = array( '%d' );
38
-        $where_datatypes = array( '%d' );
35
+        $new_values = array('PMD_ID' => $PMD_ID);
36
+        $wheres = array('TXN_ID' => $extra_meta_row['OBJ_ID']);
37
+        $new_value_datatypes = array('%d');
38
+        $where_datatypes = array('%d');
39 39
         $success = $wpdb->update(
40 40
             $this->_transaction_table,
41 41
             $new_values,
@@ -43,7 +43,7 @@  discard block
 block discarded – undo
43 43
             $new_value_datatypes,
44 44
             $where_datatypes
45 45
         );
46
-        if (! $success) {
46
+        if ( ! $success) {
47 47
             $this->add_error(sprintf(__('Couldnt set %1$s row in table %2$s where %3$s', 'event_espresso'), $this->_json_encode($new_values), $this->_transaction_table, $this->_json_encode($wheres)));
48 48
         }
49 49
     }
@@ -56,6 +56,6 @@  discard block
 block discarded – undo
56 56
     protected function _get_payment_method_id_by_gateway_name($gateway_name)
57 57
     {
58 58
         global $wpdb;
59
-        return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM " . $wpdb->prefix . "esp_payment_method WHERE PMD_type = %s", $gateway_name));
59
+        return $wpdb->get_var($wpdb->prepare("SELECT PMD_ID FROM ".$wpdb->prefix."esp_payment_method WHERE PMD_type = %s", $gateway_name));
60 60
     }
61 61
 }
Please login to merge, or discard this patch.
core/data_migration_scripts/EE_Data_Migration_Class_Base.core.php 3 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -325,7 +325,7 @@
 block discarded – undo
325 325
      * @param array  $old_row_as_array
326 326
      * @param string $new_table
327 327
      * @param array  $new_row_as_array columns=>values like used in wpdb->insert
328
-     * @param array  $data_types       numerically indexed
328
+     * @param string[]  $data_types       numerically indexed
329 329
      * @return string
330 330
      */
331 331
     protected function _create_error_message_for_db_insertion(
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -185,7 +185,7 @@  discard block
 block discarded – undo
185 185
      */
186 186
     public function add_error($error, $force = false)
187 187
     {
188
-        if (! defined('EE_DMS_ERROR_LIMIT')) {
188
+        if ( ! defined('EE_DMS_ERROR_LIMIT')) {
189 189
             $limit = 50;
190 190
         } else {
191 191
             $limit = EE_DMS_ERROR_LIMIT;
@@ -201,7 +201,7 @@  discard block
 block discarded – undo
201 201
                 $this->_errors[] = "Limit reached; removed first half of errors to save space";
202 202
                 $this->_errors[] = $error;
203 203
             } else {
204
-                $this->_errors[ $limit ] = 'More, but limit reached...';
204
+                $this->_errors[$limit] = 'More, but limit reached...';
205 205
             }
206 206
         } else {
207 207
             $this->_errors[] = $error;
@@ -343,7 +343,7 @@  discard block
 block discarded – undo
343 343
         $new_columns_and_values_for_string = array();
344 344
         $count = 0;
345 345
         foreach ($new_row_as_array as $column => $value) {
346
-            $new_columns_and_values_for_string[] = " $column => $value (" . $data_types[ $count++ ] . ")";
346
+            $new_columns_and_values_for_string[] = " $column => $value (".$data_types[$count++].")";
347 347
         }
348 348
         return sprintf(
349 349
             __(
@@ -374,7 +374,7 @@  discard block
 block discarded – undo
374 374
         foreach ($array_of_data as $name => $value) {
375 375
             $unserialized_data = @unserialize($value);
376 376
             if ($unserialized_data === false) {
377
-                $fields_to_include[ $name ] = $value;
377
+                $fields_to_include[$name] = $value;
378 378
             }
379 379
         }
380 380
         return wp_json_encode($fields_to_include);
Please login to merge, or discard this patch.
Indentation   +404 added lines, -404 removed lines patch added patch discarded remove patch
@@ -17,408 +17,408 @@
 block discarded – undo
17 17
 abstract class EE_Data_Migration_Class_Base
18 18
 {
19 19
 
20
-    /**
21
-     * @var $records_to_migrate int count of all that have been migrated
22
-     */
23
-    protected $_records_to_migrate = 0;
24
-
25
-    /**
26
-     *
27
-     * @var $records_migrated int
28
-     */
29
-    protected $_records_migrated = 0;
30
-
31
-    /**
32
-     * Whether this migration script is done or not. This COULD be deduced by
33
-     * _records_to_migrate and _records_migrated, but that might nto be accurate
34
-     *
35
-     * @var string one of EE_Data_migration_Manager::status_* constants
36
-     */
37
-    protected $_status = null;
38
-
39
-    /**
40
-     * internationalized name of this class. Convention is to NOT restate that
41
-     * this class if a migration script or a migration script stage
42
-     *
43
-     * @var string (i18ned)
44
-     */
45
-    protected $_pretty_name = null;
46
-
47
-    /**
48
-     * @var array
49
-     */
50
-    protected $_errors = array();
51
-
52
-    /**
53
-     * @var \EventEspresso\core\services\database\TableManager $table_manager
54
-     */
55
-    protected $_table_manager;
56
-
57
-    /**
58
-     * @var \EventEspresso\core\services\database\TableAnalysis $table_analysis
59
-     */
60
-    protected $_table_analysis;
61
-
62
-
63
-    /**
64
-     * Just initializes the status of the migration
65
-     *
66
-     * @param TableManager  $table_manager
67
-     * @param TableAnalysis $table_analysis
68
-     */
69
-    public function __construct(TableManager $table_manager = null, TableAnalysis $table_analysis = null)
70
-    {
71
-        $this->_table_manager = $table_manager;
72
-        $this->_table_analysis = $table_analysis;
73
-        $this->set_status(EE_Data_Migration_Manager::status_continue);
74
-    }
75
-
76
-
77
-    /**
78
-     * Just gets the pretty name for this migration script or stage
79
-     *
80
-     * @throws EE_Error
81
-     * @return string
82
-     */
83
-    public function pretty_name()
84
-    {
85
-        if ($this->_pretty_name === null) {
86
-            throw new EE_Error(
87
-                sprintf(
88
-                    __(
89
-                        "Please give a pretty name to the migration script stage %s by assigning the property _pretty_name in the constructor",
90
-                        "event_espresso"
91
-                    ),
92
-                    get_class($this)
93
-                )
94
-            );
95
-        }
96
-        return $this->_pretty_name;
97
-    }
98
-
99
-    /**
100
-     *
101
-     * @return int
102
-     */
103
-    public function count_records_to_migrate()
104
-    {
105
-        if ($this->_records_to_migrate == null) {
106
-            $this->_records_to_migrate = $this->_count_records_to_migrate();
107
-        }
108
-        return $this->_records_to_migrate;
109
-    }
110
-
111
-    /**
112
-     * Counts records already migrated. This should only be implemented by EE_Data_Migration_Script_base and
113
-     * EE_Data_migration_Script_Stage
114
-     *
115
-     * @return int
116
-     */
117
-    abstract public function count_records_migrated();
118
-
119
-    /**
120
-     * Counts the records to migrate; the public version may cache it
121
-     *
122
-     * @return int
123
-     */
124
-    abstract protected function _count_records_to_migrate();
125
-
126
-    /**
127
-     * Returns a string indicating the migration script's status.
128
-     *
129
-     * @return string one of EE_Data_Migration_Manager::status_* constants
130
-     * @throws EE_Error
131
-     */
132
-    public function get_status()
133
-    {
134
-        if ($this->_status === null) {
135
-            throw new EE_Error(
136
-                sprintf(
137
-                    __(
138
-                        "Trying to get status of Migration class %s, but it has not been initialized yet. It should be set in the constructor.",
139
-                        "event_espresso"
140
-                    ),
141
-                    get_class($this)
142
-                )
143
-            );
144
-        }
145
-        return $this->_status;
146
-    }
147
-
148
-    /**
149
-     *
150
-     * @param string $status
151
-     * @return void
152
-     */
153
-    protected function set_status($status)
154
-    {
155
-        $this->_status = $status;
156
-    }
157
-
158
-    /**
159
-     * @return array of strings
160
-     */
161
-    abstract public function get_errors();
162
-
163
-    /**
164
-     * Returns the last error that occurred. If none occurred, returns null
165
-     *
166
-     * @return string
167
-     */
168
-    public function get_last_error()
169
-    {
170
-        $errors = $this->get_errors();
171
-        if ($errors) {
172
-            return end($errors);
173
-        } else {
174
-            return null;
175
-        }
176
-    }
177
-
178
-    /**
179
-     * Adds an error to the array of errors on this class.
180
-     *
181
-     * @param string  $error a string describing the error that will be useful for debugging. Consider including all
182
-     *                       the data that led to the error, and a stack trace etc.
183
-     * @param boolean $force force the error to be added (because otherwise we have a limit). If forcing and errors are
184
-     *                       already at their limit, we will purposefully forget the first half
185
-     */
186
-    public function add_error($error, $force = false)
187
-    {
188
-        if (! defined('EE_DMS_ERROR_LIMIT')) {
189
-            $limit = 50;
190
-        } else {
191
-            $limit = EE_DMS_ERROR_LIMIT;
192
-        }
193
-        // make sure errors is an array, see ticket #8261
194
-        if (is_string($this->_errors)) {
195
-            $this->_errors = array($this->_errors);
196
-        }
197
-        if (count($this->_errors) >= $limit) {
198
-            if ($force) {
199
-                // get rid of the first half of the errors and any above the limit
200
-                $this->_errors = array_slice($this->_errors, $limit / 2, $limit / 2);
201
-                $this->_errors[] = "Limit reached; removed first half of errors to save space";
202
-                $this->_errors[] = $error;
203
-            } else {
204
-                $this->_errors[ $limit ] = 'More, but limit reached...';
205
-            }
206
-        } else {
207
-            $this->_errors[] = $error;
208
-        }
209
-    }
210
-
211
-    /**
212
-     * Indicates there was a fatal error and the migration cannot possibly continue
213
-     *
214
-     * @return boolean
215
-     */
216
-    public function is_broken()
217
-    {
218
-        return $this->get_status() == EE_Data_Migration_Manager::status_fatal_error;
219
-    }
220
-
221
-    /**
222
-     * @deprecated since 4.6.12
223
-     */
224
-    public function is_borked()
225
-    {
226
-        EE_Error::doing_it_wrong(
227
-            'is_borked',
228
-            __(
229
-                'The cheeky "is_borked" method had been replaced with the more proper "is_broken"',
230
-                'event_espresso'
231
-            ),
232
-            '4.6.12'
233
-        );
234
-        return $this->is_broken();
235
-    }
236
-
237
-    /**
238
-     * Sets the status to as having a fatal error
239
-     */
240
-    public function set_broken()
241
-    {
242
-        $this->_status = EE_Data_Migration_Manager::status_fatal_error;
243
-    }
244
-
245
-    /**
246
-     *
247
-     * @deprecated since 4.6.12
248
-     */
249
-    public function set_borked()
250
-    {
251
-        EE_Error::doing_it_wrong(
252
-            'is_borked',
253
-            __(
254
-                'The cheeky "is_borked" method had been replaced with the more proper "is_broken"',
255
-                'event_espresso'
256
-            ),
257
-            '4.6.12'
258
-        );
259
-        return $this->set_broken();
260
-    }
261
-
262
-    /**
263
-     * Checks if this thing believes it is completed
264
-     *
265
-     * @return boolean
266
-     */
267
-    public function is_completed()
268
-    {
269
-        return $this->get_status() == EE_Data_Migration_Manager::status_completed;
270
-    }
271
-
272
-    /**
273
-     * Checks if the current script has more to do or not (ie, if it's status is CONTINUE)
274
-     *
275
-     * @return boolean
276
-     */
277
-    public function has_more_to_do()
278
-    {
279
-        return $this->get_status() == EE_Data_Migration_Manager::status_continue;
280
-    }
281
-
282
-    /**
283
-     * Marks that we believe this migration thing is completed
284
-     */
285
-    public function set_completed()
286
-    {
287
-        $this->_status = EE_Data_Migration_Manager::status_completed;
288
-    }
289
-
290
-    /**
291
-     * Marks that we think this migration class can continue to migrate
292
-     */
293
-    public function reattempt()
294
-    {
295
-        $this->_status = EE_Data_Migration_Manager::status_continue;
296
-        $this->add_error(__('Reattempt migration', 'event_espresso'), true);
297
-    }
298
-
299
-    /**
300
-     * A lot like "__sleep()" magic method in purpose, this is meant for persisting this class'
301
-     * properties to the DB. However, we don't want to use __sleep() because its quite
302
-     * possible that this class is defined when it goes to sleep, but NOT available when it
303
-     * awakes (eg, this class is part of an addon that is deactivated at some point).
304
-     */
305
-    public function properties_as_array()
306
-    {
307
-        $properties = get_object_vars($this);
308
-        $properties['class'] = get_class($this);
309
-        unset($properties['_migration_script']);
310
-        unset($properties['_table_manager']);
311
-        unset($properties['_table_analysis']);
312
-        return $properties;
313
-    }
314
-
315
-    /**
316
-     * Sets all of the properties of this script stage to match what's in the array, which is assumed
317
-     * to have been made from the properties_as_array() function.
318
-     *
319
-     * @param array $array_of_properties like what's produced from properties_as_array() method
320
-     */
321
-    abstract public function instantiate_from_array_of_properties($array_of_properties);
322
-
323
-    /**
324
-     * Convenience method for showing a database insertion error
325
-     *
326
-     * @param string $old_table
327
-     * @param array  $old_row_as_array
328
-     * @param string $new_table
329
-     * @param array  $new_row_as_array columns=>values like used in wpdb->insert
330
-     * @param array  $data_types       numerically indexed
331
-     * @return string
332
-     */
333
-    protected function _create_error_message_for_db_insertion(
334
-        $old_table,
335
-        $old_row_as_array,
336
-        $new_table,
337
-        $new_row_as_array,
338
-        $data_types
339
-    ) {
340
-        global $wpdb;
341
-        $old_columns_and_values_for_string = array();
342
-        foreach ($old_row_as_array as $column => $value) {
343
-            $old_columns_and_values_for_string[] = "$column => $value";
344
-        }
345
-        $new_columns_and_values_for_string = array();
346
-        $count = 0;
347
-        foreach ($new_row_as_array as $column => $value) {
348
-            $new_columns_and_values_for_string[] = " $column => $value (" . $data_types[ $count++ ] . ")";
349
-        }
350
-        return sprintf(
351
-            __(
352
-                'Received error "%6$s" inserting row %5$s %1$s %5$s into table %2$s.%5$s Data used was %5$s %3$s %5$s from table %4$s.',
353
-                'event_espresso'
354
-            ),
355
-            implode(", ", $new_columns_and_values_for_string),
356
-            $new_table,
357
-            implode(", ", $old_columns_and_values_for_string),
358
-            $old_table,
359
-            '<br/>',
360
-            $wpdb->last_error
361
-        );
362
-    }
363
-
364
-
365
-    /**
366
-     * Same as json_encode, just avoids putting
367
-     * serialized arrays into the http build query, as that would
368
-     *
369
-     * @param array $array_of_data
370
-     * @return string
371
-     */
372
-    protected function _json_encode($array_of_data)
373
-    {
374
-        // we'd rather NOT serialize the transaction details
375
-        $fields_to_include = array();
376
-        foreach ($array_of_data as $name => $value) {
377
-            $unserialized_data = @unserialize($value);
378
-            if ($unserialized_data === false) {
379
-                $fields_to_include[ $name ] = $value;
380
-            }
381
-        }
382
-        return wp_json_encode($fields_to_include);
383
-    }
384
-
385
-    /**
386
-     * Gets the table manager (or throws an exception if it cannot be retrieved)
387
-     *
388
-     * @return TableManager
389
-     * @throws EE_Error
390
-     */
391
-    protected function _get_table_manager()
392
-    {
393
-        if ($this->_table_manager instanceof TableManager) {
394
-            return $this->_table_manager;
395
-        } else {
396
-            throw new EE_Error(
397
-                sprintf(
398
-                    __('Table manager on migration class %1$s is not set properly.', 'event_espresso'),
399
-                    get_class($this)
400
-                )
401
-            );
402
-        }
403
-    }
404
-
405
-    /**
406
-     * Gets the injected table analyzer, or throws an exception
407
-     *
408
-     * @return TableAnalysis
409
-     * @throws EE_Error
410
-     */
411
-    protected function _get_table_analysis()
412
-    {
413
-        if ($this->_table_analysis instanceof TableAnalysis) {
414
-            return $this->_table_analysis;
415
-        } else {
416
-            throw new EE_Error(
417
-                sprintf(
418
-                    __('Table analysis class on migration class %1$s is not set properly.', 'event_espresso'),
419
-                    get_class($this)
420
-                )
421
-            );
422
-        }
423
-    }
20
+	/**
21
+	 * @var $records_to_migrate int count of all that have been migrated
22
+	 */
23
+	protected $_records_to_migrate = 0;
24
+
25
+	/**
26
+	 *
27
+	 * @var $records_migrated int
28
+	 */
29
+	protected $_records_migrated = 0;
30
+
31
+	/**
32
+	 * Whether this migration script is done or not. This COULD be deduced by
33
+	 * _records_to_migrate and _records_migrated, but that might nto be accurate
34
+	 *
35
+	 * @var string one of EE_Data_migration_Manager::status_* constants
36
+	 */
37
+	protected $_status = null;
38
+
39
+	/**
40
+	 * internationalized name of this class. Convention is to NOT restate that
41
+	 * this class if a migration script or a migration script stage
42
+	 *
43
+	 * @var string (i18ned)
44
+	 */
45
+	protected $_pretty_name = null;
46
+
47
+	/**
48
+	 * @var array
49
+	 */
50
+	protected $_errors = array();
51
+
52
+	/**
53
+	 * @var \EventEspresso\core\services\database\TableManager $table_manager
54
+	 */
55
+	protected $_table_manager;
56
+
57
+	/**
58
+	 * @var \EventEspresso\core\services\database\TableAnalysis $table_analysis
59
+	 */
60
+	protected $_table_analysis;
61
+
62
+
63
+	/**
64
+	 * Just initializes the status of the migration
65
+	 *
66
+	 * @param TableManager  $table_manager
67
+	 * @param TableAnalysis $table_analysis
68
+	 */
69
+	public function __construct(TableManager $table_manager = null, TableAnalysis $table_analysis = null)
70
+	{
71
+		$this->_table_manager = $table_manager;
72
+		$this->_table_analysis = $table_analysis;
73
+		$this->set_status(EE_Data_Migration_Manager::status_continue);
74
+	}
75
+
76
+
77
+	/**
78
+	 * Just gets the pretty name for this migration script or stage
79
+	 *
80
+	 * @throws EE_Error
81
+	 * @return string
82
+	 */
83
+	public function pretty_name()
84
+	{
85
+		if ($this->_pretty_name === null) {
86
+			throw new EE_Error(
87
+				sprintf(
88
+					__(
89
+						"Please give a pretty name to the migration script stage %s by assigning the property _pretty_name in the constructor",
90
+						"event_espresso"
91
+					),
92
+					get_class($this)
93
+				)
94
+			);
95
+		}
96
+		return $this->_pretty_name;
97
+	}
98
+
99
+	/**
100
+	 *
101
+	 * @return int
102
+	 */
103
+	public function count_records_to_migrate()
104
+	{
105
+		if ($this->_records_to_migrate == null) {
106
+			$this->_records_to_migrate = $this->_count_records_to_migrate();
107
+		}
108
+		return $this->_records_to_migrate;
109
+	}
110
+
111
+	/**
112
+	 * Counts records already migrated. This should only be implemented by EE_Data_Migration_Script_base and
113
+	 * EE_Data_migration_Script_Stage
114
+	 *
115
+	 * @return int
116
+	 */
117
+	abstract public function count_records_migrated();
118
+
119
+	/**
120
+	 * Counts the records to migrate; the public version may cache it
121
+	 *
122
+	 * @return int
123
+	 */
124
+	abstract protected function _count_records_to_migrate();
125
+
126
+	/**
127
+	 * Returns a string indicating the migration script's status.
128
+	 *
129
+	 * @return string one of EE_Data_Migration_Manager::status_* constants
130
+	 * @throws EE_Error
131
+	 */
132
+	public function get_status()
133
+	{
134
+		if ($this->_status === null) {
135
+			throw new EE_Error(
136
+				sprintf(
137
+					__(
138
+						"Trying to get status of Migration class %s, but it has not been initialized yet. It should be set in the constructor.",
139
+						"event_espresso"
140
+					),
141
+					get_class($this)
142
+				)
143
+			);
144
+		}
145
+		return $this->_status;
146
+	}
147
+
148
+	/**
149
+	 *
150
+	 * @param string $status
151
+	 * @return void
152
+	 */
153
+	protected function set_status($status)
154
+	{
155
+		$this->_status = $status;
156
+	}
157
+
158
+	/**
159
+	 * @return array of strings
160
+	 */
161
+	abstract public function get_errors();
162
+
163
+	/**
164
+	 * Returns the last error that occurred. If none occurred, returns null
165
+	 *
166
+	 * @return string
167
+	 */
168
+	public function get_last_error()
169
+	{
170
+		$errors = $this->get_errors();
171
+		if ($errors) {
172
+			return end($errors);
173
+		} else {
174
+			return null;
175
+		}
176
+	}
177
+
178
+	/**
179
+	 * Adds an error to the array of errors on this class.
180
+	 *
181
+	 * @param string  $error a string describing the error that will be useful for debugging. Consider including all
182
+	 *                       the data that led to the error, and a stack trace etc.
183
+	 * @param boolean $force force the error to be added (because otherwise we have a limit). If forcing and errors are
184
+	 *                       already at their limit, we will purposefully forget the first half
185
+	 */
186
+	public function add_error($error, $force = false)
187
+	{
188
+		if (! defined('EE_DMS_ERROR_LIMIT')) {
189
+			$limit = 50;
190
+		} else {
191
+			$limit = EE_DMS_ERROR_LIMIT;
192
+		}
193
+		// make sure errors is an array, see ticket #8261
194
+		if (is_string($this->_errors)) {
195
+			$this->_errors = array($this->_errors);
196
+		}
197
+		if (count($this->_errors) >= $limit) {
198
+			if ($force) {
199
+				// get rid of the first half of the errors and any above the limit
200
+				$this->_errors = array_slice($this->_errors, $limit / 2, $limit / 2);
201
+				$this->_errors[] = "Limit reached; removed first half of errors to save space";
202
+				$this->_errors[] = $error;
203
+			} else {
204
+				$this->_errors[ $limit ] = 'More, but limit reached...';
205
+			}
206
+		} else {
207
+			$this->_errors[] = $error;
208
+		}
209
+	}
210
+
211
+	/**
212
+	 * Indicates there was a fatal error and the migration cannot possibly continue
213
+	 *
214
+	 * @return boolean
215
+	 */
216
+	public function is_broken()
217
+	{
218
+		return $this->get_status() == EE_Data_Migration_Manager::status_fatal_error;
219
+	}
220
+
221
+	/**
222
+	 * @deprecated since 4.6.12
223
+	 */
224
+	public function is_borked()
225
+	{
226
+		EE_Error::doing_it_wrong(
227
+			'is_borked',
228
+			__(
229
+				'The cheeky "is_borked" method had been replaced with the more proper "is_broken"',
230
+				'event_espresso'
231
+			),
232
+			'4.6.12'
233
+		);
234
+		return $this->is_broken();
235
+	}
236
+
237
+	/**
238
+	 * Sets the status to as having a fatal error
239
+	 */
240
+	public function set_broken()
241
+	{
242
+		$this->_status = EE_Data_Migration_Manager::status_fatal_error;
243
+	}
244
+
245
+	/**
246
+	 *
247
+	 * @deprecated since 4.6.12
248
+	 */
249
+	public function set_borked()
250
+	{
251
+		EE_Error::doing_it_wrong(
252
+			'is_borked',
253
+			__(
254
+				'The cheeky "is_borked" method had been replaced with the more proper "is_broken"',
255
+				'event_espresso'
256
+			),
257
+			'4.6.12'
258
+		);
259
+		return $this->set_broken();
260
+	}
261
+
262
+	/**
263
+	 * Checks if this thing believes it is completed
264
+	 *
265
+	 * @return boolean
266
+	 */
267
+	public function is_completed()
268
+	{
269
+		return $this->get_status() == EE_Data_Migration_Manager::status_completed;
270
+	}
271
+
272
+	/**
273
+	 * Checks if the current script has more to do or not (ie, if it's status is CONTINUE)
274
+	 *
275
+	 * @return boolean
276
+	 */
277
+	public function has_more_to_do()
278
+	{
279
+		return $this->get_status() == EE_Data_Migration_Manager::status_continue;
280
+	}
281
+
282
+	/**
283
+	 * Marks that we believe this migration thing is completed
284
+	 */
285
+	public function set_completed()
286
+	{
287
+		$this->_status = EE_Data_Migration_Manager::status_completed;
288
+	}
289
+
290
+	/**
291
+	 * Marks that we think this migration class can continue to migrate
292
+	 */
293
+	public function reattempt()
294
+	{
295
+		$this->_status = EE_Data_Migration_Manager::status_continue;
296
+		$this->add_error(__('Reattempt migration', 'event_espresso'), true);
297
+	}
298
+
299
+	/**
300
+	 * A lot like "__sleep()" magic method in purpose, this is meant for persisting this class'
301
+	 * properties to the DB. However, we don't want to use __sleep() because its quite
302
+	 * possible that this class is defined when it goes to sleep, but NOT available when it
303
+	 * awakes (eg, this class is part of an addon that is deactivated at some point).
304
+	 */
305
+	public function properties_as_array()
306
+	{
307
+		$properties = get_object_vars($this);
308
+		$properties['class'] = get_class($this);
309
+		unset($properties['_migration_script']);
310
+		unset($properties['_table_manager']);
311
+		unset($properties['_table_analysis']);
312
+		return $properties;
313
+	}
314
+
315
+	/**
316
+	 * Sets all of the properties of this script stage to match what's in the array, which is assumed
317
+	 * to have been made from the properties_as_array() function.
318
+	 *
319
+	 * @param array $array_of_properties like what's produced from properties_as_array() method
320
+	 */
321
+	abstract public function instantiate_from_array_of_properties($array_of_properties);
322
+
323
+	/**
324
+	 * Convenience method for showing a database insertion error
325
+	 *
326
+	 * @param string $old_table
327
+	 * @param array  $old_row_as_array
328
+	 * @param string $new_table
329
+	 * @param array  $new_row_as_array columns=>values like used in wpdb->insert
330
+	 * @param array  $data_types       numerically indexed
331
+	 * @return string
332
+	 */
333
+	protected function _create_error_message_for_db_insertion(
334
+		$old_table,
335
+		$old_row_as_array,
336
+		$new_table,
337
+		$new_row_as_array,
338
+		$data_types
339
+	) {
340
+		global $wpdb;
341
+		$old_columns_and_values_for_string = array();
342
+		foreach ($old_row_as_array as $column => $value) {
343
+			$old_columns_and_values_for_string[] = "$column => $value";
344
+		}
345
+		$new_columns_and_values_for_string = array();
346
+		$count = 0;
347
+		foreach ($new_row_as_array as $column => $value) {
348
+			$new_columns_and_values_for_string[] = " $column => $value (" . $data_types[ $count++ ] . ")";
349
+		}
350
+		return sprintf(
351
+			__(
352
+				'Received error "%6$s" inserting row %5$s %1$s %5$s into table %2$s.%5$s Data used was %5$s %3$s %5$s from table %4$s.',
353
+				'event_espresso'
354
+			),
355
+			implode(", ", $new_columns_and_values_for_string),
356
+			$new_table,
357
+			implode(", ", $old_columns_and_values_for_string),
358
+			$old_table,
359
+			'<br/>',
360
+			$wpdb->last_error
361
+		);
362
+	}
363
+
364
+
365
+	/**
366
+	 * Same as json_encode, just avoids putting
367
+	 * serialized arrays into the http build query, as that would
368
+	 *
369
+	 * @param array $array_of_data
370
+	 * @return string
371
+	 */
372
+	protected function _json_encode($array_of_data)
373
+	{
374
+		// we'd rather NOT serialize the transaction details
375
+		$fields_to_include = array();
376
+		foreach ($array_of_data as $name => $value) {
377
+			$unserialized_data = @unserialize($value);
378
+			if ($unserialized_data === false) {
379
+				$fields_to_include[ $name ] = $value;
380
+			}
381
+		}
382
+		return wp_json_encode($fields_to_include);
383
+	}
384
+
385
+	/**
386
+	 * Gets the table manager (or throws an exception if it cannot be retrieved)
387
+	 *
388
+	 * @return TableManager
389
+	 * @throws EE_Error
390
+	 */
391
+	protected function _get_table_manager()
392
+	{
393
+		if ($this->_table_manager instanceof TableManager) {
394
+			return $this->_table_manager;
395
+		} else {
396
+			throw new EE_Error(
397
+				sprintf(
398
+					__('Table manager on migration class %1$s is not set properly.', 'event_espresso'),
399
+					get_class($this)
400
+				)
401
+			);
402
+		}
403
+	}
404
+
405
+	/**
406
+	 * Gets the injected table analyzer, or throws an exception
407
+	 *
408
+	 * @return TableAnalysis
409
+	 * @throws EE_Error
410
+	 */
411
+	protected function _get_table_analysis()
412
+	{
413
+		if ($this->_table_analysis instanceof TableAnalysis) {
414
+			return $this->_table_analysis;
415
+		} else {
416
+			throw new EE_Error(
417
+				sprintf(
418
+					__('Table analysis class on migration class %1$s is not set properly.', 'event_espresso'),
419
+					get_class($this)
420
+				)
421
+			);
422
+		}
423
+	}
424 424
 }
Please login to merge, or discard this patch.
core/db_models/EEM_Message_Template_Group.model.php 3 patches
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -84,7 +84,7 @@  discard block
 block discarded – undo
84 84
      * @param        $messenger
85 85
      * @param string $orderby
86 86
      * @param string $order
87
-     * @return array all (including trashed or inactive) message template group objects for the given messenger
87
+     * @return EE_Base_Class[] all (including trashed or inactive) message template group objects for the given messenger
88 88
      */
89 89
     public function get_all_message_templates_by_messenger($messenger, $orderby = 'GRP_ID', $order = 'ASC')
90 90
     {
@@ -341,7 +341,7 @@  discard block
 block discarded – undo
341 341
     /**
342 342
      * This sends things to the validator for the given messenger and message type.
343 343
      *
344
-     * @param  array $fields the incoming fields to check.
344
+     * @param  string $fields the incoming fields to check.
345 345
      *                       Note this array is in the formatted fields from the form fields setup.
346 346
      *                       So we need to reformat this into an array of expected field refs by the validator.
347 347
      *                       Note also that this is not only the fields for the Message Template Group
Please login to merge, or discard this patch.
Indentation   +425 added lines, -425 removed lines patch added patch discarded remove patch
@@ -12,429 +12,429 @@
 block discarded – undo
12 12
 class EEM_Message_Template_Group extends EEM_Soft_Delete_Base
13 13
 {
14 14
 
15
-    // private instance of the EEM_Message_Template_Group object
16
-    protected static $_instance = null;
17
-
18
-
19
-
20
-    protected function __construct($timezone = null)
21
-    {
22
-        $this->singular_item = __('Message Template Group', 'event_espresso');
23
-        $this->plural_item = __('Message Template Groups', 'event_espresso');
24
-        $this->_tables = array(
25
-            'Message_Template_Group' => new EE_Primary_Table('esp_message_template_group', 'GRP_ID')
26
-        );
27
-        $this->_fields = array(
28
-            'Message_Template_Group' => array(
29
-                'GRP_ID' => new EE_Primary_Key_Int_Field('GRP_ID', __('Message Template Group ID', 'event_espresso')),
30
-                'MTP_name' => new EE_Plain_Text_Field('MTP_name', __('The name of the template group', 'event_espresso'), false, ''),
31
-                'MTP_description' => new EE_Simple_HTML_Field('MTP_description', __('A brief description about this template.', 'event_espresso'), false, ''),
32
-                'MTP_user_id' => new EE_WP_User_Field('MTP_user_id', __('Template Creator ID', 'event_espresso'), false, get_current_user_id()),
33
-                'MTP_messenger' => new EE_Plain_Text_Field('MTP_messenger', __('Messenger Used for Template', 'event_espresso'), false, 'email'),
34
-                'MTP_message_type' => new EE_Plain_Text_Field('MTP_message_type', __('Message Type', 'event_espresso'), false, 'registration'),
35
-                'MTP_is_global' => new EE_Boolean_Field('MTP_is_global', __('Flag indicating if Template Group is Global', 'event_espresso'), false, true),
36
-                'MTP_is_override' => new EE_Boolean_Field('MTP_is_override', __('Flag indicating if Template Group overrides any other Templates for the messenger/messagetype combination', 'event_espresso'), false, false),
37
-                'MTP_deleted' => new EE_Trashed_Flag_Field('MTP_deleted', __('Flag indicating whether this has been trashed', 'event_espresso'), false, false),
38
-                'MTP_is_active' => new EE_Boolean_Field('MTP_is_active', __('Flag indicating whether template group is active', 'event_espresso'), false, true)
39
-            )
40
-        );
41
-        $this->_model_relations = array(
42
-            'Message_Template' => new EE_Has_Many_Relation(),
43
-            'Message' => new EE_Has_Many_Relation(),
44
-            'Event' => new EE_HABTM_Relation('Event_Message_Template'),
45
-            'WP_User' => new EE_Belongs_To_Relation()
46
-        );
47
-        foreach ($this->_cap_contexts_to_cap_action_map as $context => $action) {
48
-            $this->_cap_restriction_generators[ $context ] = new EE_Restriction_Generator_Global('MTP_is_global');
49
-        }
50
-        $this->_caps_slug = 'messages';
51
-
52
-        parent::__construct($timezone);
53
-    }
54
-
55
-
56
-
57
-    /**
58
-     * get_all_trashed_message_templates_by_event
59
-     *
60
-     * @access public
61
-     * @param int    $EVT_ID specific event id
62
-     * @param string $orderby
63
-     * @param string $order
64
-     * @param null   $limit
65
-     * @param bool   $count
66
-     * @return array message template objects that are attached to a specific event.
67
-     */
68
-    public function get_all_trashed_message_templates_by_event(
69
-        $EVT_ID,
70
-        $orderby = 'GRP_ID',
71
-        $order = 'ASC',
72
-        $limit = null,
73
-        $count = false
74
-    ) {
75
-        $query_params = array( array('Event.EVT_ID' => $EVT_ID), 'order_by' => array($orderby => $order), 'limit' => $limit );
76
-        return $count ? $this->count_deleted($query_params, 'GRP_ID', true) : $this->get_all_deleted($query_params);
77
-    }
78
-
79
-
80
-
81
-    /**
82
-     * get_all_message_templates_by_messenger
83
-     *
84
-     * @access public
85
-     * @param        $messenger
86
-     * @param string $orderby
87
-     * @param string $order
88
-     * @return array all (including trashed or inactive) message template group objects for the given messenger
89
-     */
90
-    public function get_all_message_templates_by_messenger($messenger, $orderby = 'GRP_ID', $order = 'ASC')
91
-    {
92
-        return $this->get_all_deleted_and_undeleted(
93
-            array( array( 'MTP_messenger' => $messenger ), 'order_by' => array( $orderby => $order ) )
94
-        );
95
-    }
96
-
97
-
98
-
99
-    /**
100
-     * This simply adds on any messenger/message type filters that may be present in the $_POST global
101
-     * @param  array  $_where any existing where conditions to append these to.
102
-     * @return array          original where conditions or original with additional filters.
103
-     */
104
-    protected function _maybe_mtp_filters($_where = array())
105
-    {
106
-        // account for messenger or message type filters
107
-        if (
108
-            isset($_REQUEST['ee_messenger_filter_by'])
109
-            && $_REQUEST['ee_messenger_filter_by'] != 'none_selected'
110
-            && $_REQUEST['ee_messenger_filter_by'] != 'all'
111
-        ) {
112
-            $_where['MTP_messenger'] =  $_REQUEST['ee_messenger_filter_by'] ;
113
-        }
114
-
115
-        if (
116
-            isset($_REQUEST['ee_message_type_filter_by'])
117
-            && $_REQUEST['ee_message_type_filter_by'] != 'none_selected'
118
-        ) {
119
-            $_where['MTP_message_type'] = $_REQUEST['ee_message_type_filter_by'];
120
-        }
121
-
122
-        return $_where;
123
-    }
124
-
125
-
126
-
127
-    /**
128
-     * get_all_active_message_templates groups
129
-     *
130
-     * @access public
131
-     * @param string $orderby
132
-     * @param string $order
133
-     * @param null   $limit
134
-     * @param bool   $count
135
-     * @param bool   $global
136
-     * @param bool   $user_check
137
-     * @return array all active (non_trashed, active) message template objects
138
-     */
139
-    public function get_all_active_message_templates(
140
-        $orderby = 'GRP_ID',
141
-        $order = 'ASC',
142
-        $limit = null,
143
-        $count = false,
144
-        $global = true,
145
-        $user_check = false
146
-    ) {
147
-        $_where = $global ? array('MTP_is_global' => true ) : array('MTP_is_global' => false );
148
-        $_where['MTP_is_active'] = true;
149
-        $_where = $this->_maybe_mtp_filters($_where);
150
-
151
-        if (
152
-            $user_check
153
-            && ! $global
154
-            && ! EE_Registry::instance()->CAP->current_user_can(
155
-                'ee_read_others_messages',
156
-                'get_all_active_message_templates'
157
-            )
158
-        ) {
159
-            $_where['MTP_user_id'] = get_current_user_id();
160
-        }
161
-
162
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
163
-
164
-        return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
165
-    }
166
-
167
-
168
-
169
-    /**
170
-     *    retrieve ALL message_template groups from db regardless of wht
171
-     *
172
-     * @access    public
173
-     * @param string $orderby
174
-     * @param string $order
175
-     * @param null   $limit
176
-     * @param bool   $count
177
-     * @return mixed array on success, FALSE on fail
178
-     */
179
-    public function get_all_message_templates($orderby = 'GRP_ID', $order = 'ASC', $limit = null, $count = false)
180
-    {
181
-        $_where = $this->_maybe_mtp_filters();
182
-
183
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
184
-
185
-        $r_templates = $count
186
-            ? $this->count_deleted_and_undeleted($query_params, 'GRP_ID', true)
187
-            : $this->get_all_deleted_and_undeleted($query_params);
188
-
189
-        return $r_templates;
190
-    }
191
-
192
-
193
-
194
-
195
-    /**
196
-     * This gets all the custom templates attached to a specific event
197
-     * @param  int      $EVT_ID         event id
198
-     * @param  array  $query_params @see https://github.com/eventespresso/event-espresso-core/tree/master/docs/G--Model-System/model-query-params.md
199
-     * @return  EE_Message_Template_Group[]
200
-     */
201
-    public function get_all_custom_templates_by_event($EVT_ID, $query_params = array())
202
-    {
203
-        $where = array_merge($query_params, array( 'Event.EVT_ID' => $EVT_ID ));
204
-        return $this->get_all(
205
-            array( $where )
206
-        );
207
-    }
208
-
209
-
210
-
211
-    /**
212
-     * get_all_trashed_grouped_message_templates
213
-     * this returns ONLY the template groups where ALL contexts are trashed and none of the group are non-trashed
214
-     *
215
-     * @access public
216
-     * @param string $orderby
217
-     * @param string $order
218
-     * @param null   $limit
219
-     * @param bool   $count
220
-     * @param bool   $global
221
-     * @return \EE_Message_Template_Group[] message template groups.
222
-     */
223
-    public function get_all_trashed_grouped_message_templates(
224
-        $orderby = 'GRP_ID',
225
-        $order = 'ASC',
226
-        $limit = null,
227
-        $count = false,
228
-        $global = true
229
-    ) {
230
-        $_where = $global ? array('MTP_is_global' => true ) : array('MTP_is_global' => false );
231
-        $_where['MTP_is_active'] = true;
232
-        $_where = $this->_maybe_mtp_filters($_where);
233
-
234
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
235
-
236
-        return $count ? $this->count_deleted($query_params, 'GRP_ID', true) : $this->get_all_deleted($query_params);
237
-    }
238
-
239
-
240
-
241
-    /**
242
-     * this returns the message template group(s) for a given event, messenger, and message template
243
-     *
244
-     * @param  string             $messenger
245
-     * @param  string             $message_type
246
-     * @param                     $evt_id
247
-     * @param  string             $orderby pointless at this point but still included
248
-     * @param  string             $order
249
-     * @param  mixed (array|null) $limit   array($offset, $num)
250
-     * @param  bool               $count   true = just return count, false = objects
251
-     * @param  bool               $active  ignore "active" or not. (default only return active)
252
-     * @return \mixed[]) depending on $count.
253
-     */
254
-    public function get_event_message_templates_by_m_and_mt_and_evt(
255
-        $messenger,
256
-        $message_type,
257
-        $evt_id,
258
-        $orderby = 'GRP_ID',
259
-        $order = 'ASC',
260
-        $limit = null,
261
-        $count = false,
262
-        $active = true
263
-    ) {
264
-        $_where = array(
265
-            'MTP_messenger' => $messenger,
266
-            'MTP_message_type' => $message_type,
267
-            'Event.EVT_ID' => $evt_id,
268
-            'MTP_is_global' => true,
269
-            'MTP_is_active' => $active
270
-        );
271
-
272
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
273
-
274
-        return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
275
-    }
276
-
277
-
278
-
279
-
280
-    /**
281
-     * get all GLOBAL message template groups for the given messenger and message type
282
-     *
283
-     * @param  string $messenger    slug for messenger
284
-     * @param  string $message_type slug for message type
285
-     * @param  string $orderby      what column to orderby
286
-     * @param  string $order        ASC or DESC
287
-     * @param  mixed (array|null) $limit array($offset, $num)
288
-     * @param  bool   $count        true = just return count, false = objects
289
-     * @param  bool   $active       ignore "active" or not. (default only return active) -
290
-     *                              'all' means return both inactive AND inactive.
291
-     * @return array               message template objects that are global (i.e. non-event)
292
-     */
293
-    public function get_global_message_template_by_m_and_mt(
294
-        $messenger,
295
-        $message_type,
296
-        $orderby = 'GRP_ID',
297
-        $order = 'ASC',
298
-        $limit = null,
299
-        $count = false,
300
-        $active = true
301
-    ) {
302
-        $_where = array(
303
-            'MTP_messenger' => $messenger,
304
-            'MTP_message_type' => $message_type,
305
-            'MTP_is_global' => true,
306
-        );
307
-
308
-        if ($active != 'all') {
309
-            $_where['MTP_is_active'] = $active;
310
-        }
311
-
312
-        $query_params = array( $_where, 'order_by' => array( $orderby => $order ), 'limit' => $limit );
313
-
314
-        return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
315
-    }
316
-
317
-
318
-
319
-
320
-    /**
321
-     * get all custom message template groups for the given messenger and message type
322
-     * @param  string $messenger    messenger
323
-     * @param  string $message_type messagetype
324
-     * @param  array  $query_params same as EEM_Base->get_all()
325
-     * @return EE_Message_Template_Group[]
326
-     */
327
-    public function get_custom_message_template_by_m_and_mt($messenger, $message_type, $query_params = array())
328
-    {
329
-        return $this->get_all(
330
-            array_merge(
331
-                $query_params,
332
-                array(
333
-                    array(
334
-                        'MTP_is_global'    => false,
335
-                        'MTP_messenger'    => $messenger,
336
-                        'MTP_message_type' => $message_type
337
-                    )
338
-                )
339
-            )
340
-        );
341
-    }
342
-
343
-
344
-
345
-    /**
346
-     * This sends things to the validator for the given messenger and message type.
347
-     *
348
-     * @param  array $fields the incoming fields to check.
349
-     *                       Note this array is in the formatted fields from the form fields setup.
350
-     *                       So we need to reformat this into an array of expected field refs by the validator.
351
-     *                       Note also that this is not only the fields for the Message Template Group
352
-     *                       but ALSO for Message Template.
353
-     * @param string $context      The context the fields were obtained from.
354
-     * @param string $messenger    The messenger we are validating
355
-     * @param string $message_type The message type we are validating.
356
-     * @return mixed If the fields all check out then we return true otherwise error messages are returned
357
-     *                       (indexed by field name);
358
-     * @throws \EE_Error
359
-     */
360
-    public function validate($fields, $context, $messenger, $message_type)
361
-    {
362
-
363
-        $assembled_fields = array();
364
-
365
-        // let's loop through all the fields and set them up in the right format
366
-        foreach ($fields as $index => $value) {
367
-            // first let's figure out if the value['content'] in the current index is an array.
368
-            //  If it is then this is special fields that are used in parsing special shortcodes (i.e. 'attendee_list').
369
-            if (is_array($value['content'])) {
370
-                $assembled_fields[ $value['name'] ] = $value['content']['main'];
371
-                // loop through the content and get the other fields.
372
-                foreach ($value['content'] as $name => $val) {
373
-                    if ($name == 'main') {
374
-                        continue;
375
-                    }
376
-                    $assembled_fields[ $name ] = $val;
377
-                }
378
-                continue;
379
-            }
380
-
381
-            // okay if we're here then this is just a straight field=>$value arrangement
382
-            $assembled_fields[ $value['name'] ] = $value['content'];
383
-        }
384
-
385
-        // now we've got the assembled_fields.
386
-        // We need to setup the string for the appropriate validator class and call that.
387
-        $m_ref = ucwords(str_replace('_', ' ', $messenger));
388
-        $m_ref = str_replace(' ', '_', $m_ref);
389
-        $mt_ref = ucwords(str_replace('_', ' ', $message_type));
390
-        $mt_ref = str_replace(' ', '_', $mt_ref);
391
-
392
-        $classname = 'EE_Messages_' . $m_ref . '_' . $mt_ref . '_Validator';
393
-
394
-        if (!class_exists($classname)) {
395
-            $msg[] = __('The Validator class was unable to load', 'event_espresso');
396
-            $msg[] = sprintf(
397
-                __(
398
-                    'The class name compiled was %s. Please check and make sure the spelling and case is correct for the class name and that there is an autoloader in place for this class',
399
-                    'event_espresso'
400
-                ),
401
-                $classname
402
-            );
403
-            throw new EE_Error(implode('||', $msg));
404
-        }
405
-
406
-        $a = new ReflectionClass($classname);
407
-        $_VLD = $a->newInstance($assembled_fields, $context);
408
-        $result = $_VLD->validate();
409
-        return $result;
410
-    }
411
-
412
-
413
-
414
-    /**
415
-     * Updates all message template groups matching the incoming arguments to inactive status.
416
-     *
417
-     * @param array $messenger_names    The messenger slugs.
418
-     *                              If empty then all templates matching the message types are marked inactive.
419
-     *                              Otherwise only templates matching the messengers and message types.
420
-     * @param array $message_type_names     The message type slugs.
421
-     *                              If empty then all templates matching the messengers are marked inactive.
422
-     *                              Otherwise only templates matching the messengers and message types.
423
-     *
424
-     * @return int  count of updated records.
425
-     */
426
-    public function deactivate_message_template_groups_for($messenger_names = array(), $message_type_names = array())
427
-    {
428
-        $query_args = array();
429
-        if (empty($messenger_names) && empty($message_type_names)) {
430
-            return 0;
431
-        }
432
-        if (! empty($messenger_names)) {
433
-            $query_args[0]['MTP_messenger'] = array( 'IN', (array) $messenger_names );
434
-        }
435
-        if (! empty($message_type_names)) {
436
-            $query_args[0]['MTP_message_type'] = array( 'IN', (array) $message_type_names );
437
-        }
438
-        return $this->update(array( 'MTP_is_active' => false ), $query_args);
439
-    }
15
+	// private instance of the EEM_Message_Template_Group object
16
+	protected static $_instance = null;
17
+
18
+
19
+
20
+	protected function __construct($timezone = null)
21
+	{
22
+		$this->singular_item = __('Message Template Group', 'event_espresso');
23
+		$this->plural_item = __('Message Template Groups', 'event_espresso');
24
+		$this->_tables = array(
25
+			'Message_Template_Group' => new EE_Primary_Table('esp_message_template_group', 'GRP_ID')
26
+		);
27
+		$this->_fields = array(
28
+			'Message_Template_Group' => array(
29
+				'GRP_ID' => new EE_Primary_Key_Int_Field('GRP_ID', __('Message Template Group ID', 'event_espresso')),
30
+				'MTP_name' => new EE_Plain_Text_Field('MTP_name', __('The name of the template group', 'event_espresso'), false, ''),
31
+				'MTP_description' => new EE_Simple_HTML_Field('MTP_description', __('A brief description about this template.', 'event_espresso'), false, ''),
32
+				'MTP_user_id' => new EE_WP_User_Field('MTP_user_id', __('Template Creator ID', 'event_espresso'), false, get_current_user_id()),
33
+				'MTP_messenger' => new EE_Plain_Text_Field('MTP_messenger', __('Messenger Used for Template', 'event_espresso'), false, 'email'),
34
+				'MTP_message_type' => new EE_Plain_Text_Field('MTP_message_type', __('Message Type', 'event_espresso'), false, 'registration'),
35
+				'MTP_is_global' => new EE_Boolean_Field('MTP_is_global', __('Flag indicating if Template Group is Global', 'event_espresso'), false, true),
36
+				'MTP_is_override' => new EE_Boolean_Field('MTP_is_override', __('Flag indicating if Template Group overrides any other Templates for the messenger/messagetype combination', 'event_espresso'), false, false),
37
+				'MTP_deleted' => new EE_Trashed_Flag_Field('MTP_deleted', __('Flag indicating whether this has been trashed', 'event_espresso'), false, false),
38
+				'MTP_is_active' => new EE_Boolean_Field('MTP_is_active', __('Flag indicating whether template group is active', 'event_espresso'), false, true)
39
+			)
40
+		);
41
+		$this->_model_relations = array(
42
+			'Message_Template' => new EE_Has_Many_Relation(),
43
+			'Message' => new EE_Has_Many_Relation(),
44
+			'Event' => new EE_HABTM_Relation('Event_Message_Template'),
45
+			'WP_User' => new EE_Belongs_To_Relation()
46
+		);
47
+		foreach ($this->_cap_contexts_to_cap_action_map as $context => $action) {
48
+			$this->_cap_restriction_generators[ $context ] = new EE_Restriction_Generator_Global('MTP_is_global');
49
+		}
50
+		$this->_caps_slug = 'messages';
51
+
52
+		parent::__construct($timezone);
53
+	}
54
+
55
+
56
+
57
+	/**
58
+	 * get_all_trashed_message_templates_by_event
59
+	 *
60
+	 * @access public
61
+	 * @param int    $EVT_ID specific event id
62
+	 * @param string $orderby
63
+	 * @param string $order
64
+	 * @param null   $limit
65
+	 * @param bool   $count
66
+	 * @return array message template objects that are attached to a specific event.
67
+	 */
68
+	public function get_all_trashed_message_templates_by_event(
69
+		$EVT_ID,
70
+		$orderby = 'GRP_ID',
71
+		$order = 'ASC',
72
+		$limit = null,
73
+		$count = false
74
+	) {
75
+		$query_params = array( array('Event.EVT_ID' => $EVT_ID), 'order_by' => array($orderby => $order), 'limit' => $limit );
76
+		return $count ? $this->count_deleted($query_params, 'GRP_ID', true) : $this->get_all_deleted($query_params);
77
+	}
78
+
79
+
80
+
81
+	/**
82
+	 * get_all_message_templates_by_messenger
83
+	 *
84
+	 * @access public
85
+	 * @param        $messenger
86
+	 * @param string $orderby
87
+	 * @param string $order
88
+	 * @return array all (including trashed or inactive) message template group objects for the given messenger
89
+	 */
90
+	public function get_all_message_templates_by_messenger($messenger, $orderby = 'GRP_ID', $order = 'ASC')
91
+	{
92
+		return $this->get_all_deleted_and_undeleted(
93
+			array( array( 'MTP_messenger' => $messenger ), 'order_by' => array( $orderby => $order ) )
94
+		);
95
+	}
96
+
97
+
98
+
99
+	/**
100
+	 * This simply adds on any messenger/message type filters that may be present in the $_POST global
101
+	 * @param  array  $_where any existing where conditions to append these to.
102
+	 * @return array          original where conditions or original with additional filters.
103
+	 */
104
+	protected function _maybe_mtp_filters($_where = array())
105
+	{
106
+		// account for messenger or message type filters
107
+		if (
108
+			isset($_REQUEST['ee_messenger_filter_by'])
109
+			&& $_REQUEST['ee_messenger_filter_by'] != 'none_selected'
110
+			&& $_REQUEST['ee_messenger_filter_by'] != 'all'
111
+		) {
112
+			$_where['MTP_messenger'] =  $_REQUEST['ee_messenger_filter_by'] ;
113
+		}
114
+
115
+		if (
116
+			isset($_REQUEST['ee_message_type_filter_by'])
117
+			&& $_REQUEST['ee_message_type_filter_by'] != 'none_selected'
118
+		) {
119
+			$_where['MTP_message_type'] = $_REQUEST['ee_message_type_filter_by'];
120
+		}
121
+
122
+		return $_where;
123
+	}
124
+
125
+
126
+
127
+	/**
128
+	 * get_all_active_message_templates groups
129
+	 *
130
+	 * @access public
131
+	 * @param string $orderby
132
+	 * @param string $order
133
+	 * @param null   $limit
134
+	 * @param bool   $count
135
+	 * @param bool   $global
136
+	 * @param bool   $user_check
137
+	 * @return array all active (non_trashed, active) message template objects
138
+	 */
139
+	public function get_all_active_message_templates(
140
+		$orderby = 'GRP_ID',
141
+		$order = 'ASC',
142
+		$limit = null,
143
+		$count = false,
144
+		$global = true,
145
+		$user_check = false
146
+	) {
147
+		$_where = $global ? array('MTP_is_global' => true ) : array('MTP_is_global' => false );
148
+		$_where['MTP_is_active'] = true;
149
+		$_where = $this->_maybe_mtp_filters($_where);
150
+
151
+		if (
152
+			$user_check
153
+			&& ! $global
154
+			&& ! EE_Registry::instance()->CAP->current_user_can(
155
+				'ee_read_others_messages',
156
+				'get_all_active_message_templates'
157
+			)
158
+		) {
159
+			$_where['MTP_user_id'] = get_current_user_id();
160
+		}
161
+
162
+		$query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
163
+
164
+		return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
165
+	}
166
+
167
+
168
+
169
+	/**
170
+	 *    retrieve ALL message_template groups from db regardless of wht
171
+	 *
172
+	 * @access    public
173
+	 * @param string $orderby
174
+	 * @param string $order
175
+	 * @param null   $limit
176
+	 * @param bool   $count
177
+	 * @return mixed array on success, FALSE on fail
178
+	 */
179
+	public function get_all_message_templates($orderby = 'GRP_ID', $order = 'ASC', $limit = null, $count = false)
180
+	{
181
+		$_where = $this->_maybe_mtp_filters();
182
+
183
+		$query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
184
+
185
+		$r_templates = $count
186
+			? $this->count_deleted_and_undeleted($query_params, 'GRP_ID', true)
187
+			: $this->get_all_deleted_and_undeleted($query_params);
188
+
189
+		return $r_templates;
190
+	}
191
+
192
+
193
+
194
+
195
+	/**
196
+	 * This gets all the custom templates attached to a specific event
197
+	 * @param  int      $EVT_ID         event id
198
+	 * @param  array  $query_params @see https://github.com/eventespresso/event-espresso-core/tree/master/docs/G--Model-System/model-query-params.md
199
+	 * @return  EE_Message_Template_Group[]
200
+	 */
201
+	public function get_all_custom_templates_by_event($EVT_ID, $query_params = array())
202
+	{
203
+		$where = array_merge($query_params, array( 'Event.EVT_ID' => $EVT_ID ));
204
+		return $this->get_all(
205
+			array( $where )
206
+		);
207
+	}
208
+
209
+
210
+
211
+	/**
212
+	 * get_all_trashed_grouped_message_templates
213
+	 * this returns ONLY the template groups where ALL contexts are trashed and none of the group are non-trashed
214
+	 *
215
+	 * @access public
216
+	 * @param string $orderby
217
+	 * @param string $order
218
+	 * @param null   $limit
219
+	 * @param bool   $count
220
+	 * @param bool   $global
221
+	 * @return \EE_Message_Template_Group[] message template groups.
222
+	 */
223
+	public function get_all_trashed_grouped_message_templates(
224
+		$orderby = 'GRP_ID',
225
+		$order = 'ASC',
226
+		$limit = null,
227
+		$count = false,
228
+		$global = true
229
+	) {
230
+		$_where = $global ? array('MTP_is_global' => true ) : array('MTP_is_global' => false );
231
+		$_where['MTP_is_active'] = true;
232
+		$_where = $this->_maybe_mtp_filters($_where);
233
+
234
+		$query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
235
+
236
+		return $count ? $this->count_deleted($query_params, 'GRP_ID', true) : $this->get_all_deleted($query_params);
237
+	}
238
+
239
+
240
+
241
+	/**
242
+	 * this returns the message template group(s) for a given event, messenger, and message template
243
+	 *
244
+	 * @param  string             $messenger
245
+	 * @param  string             $message_type
246
+	 * @param                     $evt_id
247
+	 * @param  string             $orderby pointless at this point but still included
248
+	 * @param  string             $order
249
+	 * @param  mixed (array|null) $limit   array($offset, $num)
250
+	 * @param  bool               $count   true = just return count, false = objects
251
+	 * @param  bool               $active  ignore "active" or not. (default only return active)
252
+	 * @return \mixed[]) depending on $count.
253
+	 */
254
+	public function get_event_message_templates_by_m_and_mt_and_evt(
255
+		$messenger,
256
+		$message_type,
257
+		$evt_id,
258
+		$orderby = 'GRP_ID',
259
+		$order = 'ASC',
260
+		$limit = null,
261
+		$count = false,
262
+		$active = true
263
+	) {
264
+		$_where = array(
265
+			'MTP_messenger' => $messenger,
266
+			'MTP_message_type' => $message_type,
267
+			'Event.EVT_ID' => $evt_id,
268
+			'MTP_is_global' => true,
269
+			'MTP_is_active' => $active
270
+		);
271
+
272
+		$query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
273
+
274
+		return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
275
+	}
276
+
277
+
278
+
279
+
280
+	/**
281
+	 * get all GLOBAL message template groups for the given messenger and message type
282
+	 *
283
+	 * @param  string $messenger    slug for messenger
284
+	 * @param  string $message_type slug for message type
285
+	 * @param  string $orderby      what column to orderby
286
+	 * @param  string $order        ASC or DESC
287
+	 * @param  mixed (array|null) $limit array($offset, $num)
288
+	 * @param  bool   $count        true = just return count, false = objects
289
+	 * @param  bool   $active       ignore "active" or not. (default only return active) -
290
+	 *                              'all' means return both inactive AND inactive.
291
+	 * @return array               message template objects that are global (i.e. non-event)
292
+	 */
293
+	public function get_global_message_template_by_m_and_mt(
294
+		$messenger,
295
+		$message_type,
296
+		$orderby = 'GRP_ID',
297
+		$order = 'ASC',
298
+		$limit = null,
299
+		$count = false,
300
+		$active = true
301
+	) {
302
+		$_where = array(
303
+			'MTP_messenger' => $messenger,
304
+			'MTP_message_type' => $message_type,
305
+			'MTP_is_global' => true,
306
+		);
307
+
308
+		if ($active != 'all') {
309
+			$_where['MTP_is_active'] = $active;
310
+		}
311
+
312
+		$query_params = array( $_where, 'order_by' => array( $orderby => $order ), 'limit' => $limit );
313
+
314
+		return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
315
+	}
316
+
317
+
318
+
319
+
320
+	/**
321
+	 * get all custom message template groups for the given messenger and message type
322
+	 * @param  string $messenger    messenger
323
+	 * @param  string $message_type messagetype
324
+	 * @param  array  $query_params same as EEM_Base->get_all()
325
+	 * @return EE_Message_Template_Group[]
326
+	 */
327
+	public function get_custom_message_template_by_m_and_mt($messenger, $message_type, $query_params = array())
328
+	{
329
+		return $this->get_all(
330
+			array_merge(
331
+				$query_params,
332
+				array(
333
+					array(
334
+						'MTP_is_global'    => false,
335
+						'MTP_messenger'    => $messenger,
336
+						'MTP_message_type' => $message_type
337
+					)
338
+				)
339
+			)
340
+		);
341
+	}
342
+
343
+
344
+
345
+	/**
346
+	 * This sends things to the validator for the given messenger and message type.
347
+	 *
348
+	 * @param  array $fields the incoming fields to check.
349
+	 *                       Note this array is in the formatted fields from the form fields setup.
350
+	 *                       So we need to reformat this into an array of expected field refs by the validator.
351
+	 *                       Note also that this is not only the fields for the Message Template Group
352
+	 *                       but ALSO for Message Template.
353
+	 * @param string $context      The context the fields were obtained from.
354
+	 * @param string $messenger    The messenger we are validating
355
+	 * @param string $message_type The message type we are validating.
356
+	 * @return mixed If the fields all check out then we return true otherwise error messages are returned
357
+	 *                       (indexed by field name);
358
+	 * @throws \EE_Error
359
+	 */
360
+	public function validate($fields, $context, $messenger, $message_type)
361
+	{
362
+
363
+		$assembled_fields = array();
364
+
365
+		// let's loop through all the fields and set them up in the right format
366
+		foreach ($fields as $index => $value) {
367
+			// first let's figure out if the value['content'] in the current index is an array.
368
+			//  If it is then this is special fields that are used in parsing special shortcodes (i.e. 'attendee_list').
369
+			if (is_array($value['content'])) {
370
+				$assembled_fields[ $value['name'] ] = $value['content']['main'];
371
+				// loop through the content and get the other fields.
372
+				foreach ($value['content'] as $name => $val) {
373
+					if ($name == 'main') {
374
+						continue;
375
+					}
376
+					$assembled_fields[ $name ] = $val;
377
+				}
378
+				continue;
379
+			}
380
+
381
+			// okay if we're here then this is just a straight field=>$value arrangement
382
+			$assembled_fields[ $value['name'] ] = $value['content'];
383
+		}
384
+
385
+		// now we've got the assembled_fields.
386
+		// We need to setup the string for the appropriate validator class and call that.
387
+		$m_ref = ucwords(str_replace('_', ' ', $messenger));
388
+		$m_ref = str_replace(' ', '_', $m_ref);
389
+		$mt_ref = ucwords(str_replace('_', ' ', $message_type));
390
+		$mt_ref = str_replace(' ', '_', $mt_ref);
391
+
392
+		$classname = 'EE_Messages_' . $m_ref . '_' . $mt_ref . '_Validator';
393
+
394
+		if (!class_exists($classname)) {
395
+			$msg[] = __('The Validator class was unable to load', 'event_espresso');
396
+			$msg[] = sprintf(
397
+				__(
398
+					'The class name compiled was %s. Please check and make sure the spelling and case is correct for the class name and that there is an autoloader in place for this class',
399
+					'event_espresso'
400
+				),
401
+				$classname
402
+			);
403
+			throw new EE_Error(implode('||', $msg));
404
+		}
405
+
406
+		$a = new ReflectionClass($classname);
407
+		$_VLD = $a->newInstance($assembled_fields, $context);
408
+		$result = $_VLD->validate();
409
+		return $result;
410
+	}
411
+
412
+
413
+
414
+	/**
415
+	 * Updates all message template groups matching the incoming arguments to inactive status.
416
+	 *
417
+	 * @param array $messenger_names    The messenger slugs.
418
+	 *                              If empty then all templates matching the message types are marked inactive.
419
+	 *                              Otherwise only templates matching the messengers and message types.
420
+	 * @param array $message_type_names     The message type slugs.
421
+	 *                              If empty then all templates matching the messengers are marked inactive.
422
+	 *                              Otherwise only templates matching the messengers and message types.
423
+	 *
424
+	 * @return int  count of updated records.
425
+	 */
426
+	public function deactivate_message_template_groups_for($messenger_names = array(), $message_type_names = array())
427
+	{
428
+		$query_args = array();
429
+		if (empty($messenger_names) && empty($message_type_names)) {
430
+			return 0;
431
+		}
432
+		if (! empty($messenger_names)) {
433
+			$query_args[0]['MTP_messenger'] = array( 'IN', (array) $messenger_names );
434
+		}
435
+		if (! empty($message_type_names)) {
436
+			$query_args[0]['MTP_message_type'] = array( 'IN', (array) $message_type_names );
437
+		}
438
+		return $this->update(array( 'MTP_is_active' => false ), $query_args);
439
+	}
440 440
 }
Please login to merge, or discard this patch.
Spacing   +23 added lines, -23 removed lines patch added patch discarded remove patch
@@ -45,7 +45,7 @@  discard block
 block discarded – undo
45 45
             'WP_User' => new EE_Belongs_To_Relation()
46 46
         );
47 47
         foreach ($this->_cap_contexts_to_cap_action_map as $context => $action) {
48
-            $this->_cap_restriction_generators[ $context ] = new EE_Restriction_Generator_Global('MTP_is_global');
48
+            $this->_cap_restriction_generators[$context] = new EE_Restriction_Generator_Global('MTP_is_global');
49 49
         }
50 50
         $this->_caps_slug = 'messages';
51 51
 
@@ -72,7 +72,7 @@  discard block
 block discarded – undo
72 72
         $limit = null,
73 73
         $count = false
74 74
     ) {
75
-        $query_params = array( array('Event.EVT_ID' => $EVT_ID), 'order_by' => array($orderby => $order), 'limit' => $limit );
75
+        $query_params = array(array('Event.EVT_ID' => $EVT_ID), 'order_by' => array($orderby => $order), 'limit' => $limit);
76 76
         return $count ? $this->count_deleted($query_params, 'GRP_ID', true) : $this->get_all_deleted($query_params);
77 77
     }
78 78
 
@@ -90,7 +90,7 @@  discard block
 block discarded – undo
90 90
     public function get_all_message_templates_by_messenger($messenger, $orderby = 'GRP_ID', $order = 'ASC')
91 91
     {
92 92
         return $this->get_all_deleted_and_undeleted(
93
-            array( array( 'MTP_messenger' => $messenger ), 'order_by' => array( $orderby => $order ) )
93
+            array(array('MTP_messenger' => $messenger), 'order_by' => array($orderby => $order))
94 94
         );
95 95
     }
96 96
 
@@ -109,7 +109,7 @@  discard block
 block discarded – undo
109 109
             && $_REQUEST['ee_messenger_filter_by'] != 'none_selected'
110 110
             && $_REQUEST['ee_messenger_filter_by'] != 'all'
111 111
         ) {
112
-            $_where['MTP_messenger'] =  $_REQUEST['ee_messenger_filter_by'] ;
112
+            $_where['MTP_messenger'] = $_REQUEST['ee_messenger_filter_by'];
113 113
         }
114 114
 
115 115
         if (
@@ -144,7 +144,7 @@  discard block
 block discarded – undo
144 144
         $global = true,
145 145
         $user_check = false
146 146
     ) {
147
-        $_where = $global ? array('MTP_is_global' => true ) : array('MTP_is_global' => false );
147
+        $_where = $global ? array('MTP_is_global' => true) : array('MTP_is_global' => false);
148 148
         $_where['MTP_is_active'] = true;
149 149
         $_where = $this->_maybe_mtp_filters($_where);
150 150
 
@@ -159,7 +159,7 @@  discard block
 block discarded – undo
159 159
             $_where['MTP_user_id'] = get_current_user_id();
160 160
         }
161 161
 
162
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
162
+        $query_params = array($_where, 'order_by' => array($orderby => $order), 'limit' => $limit);
163 163
 
164 164
         return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
165 165
     }
@@ -180,7 +180,7 @@  discard block
 block discarded – undo
180 180
     {
181 181
         $_where = $this->_maybe_mtp_filters();
182 182
 
183
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
183
+        $query_params = array($_where, 'order_by' => array($orderby => $order), 'limit' => $limit);
184 184
 
185 185
         $r_templates = $count
186 186
             ? $this->count_deleted_and_undeleted($query_params, 'GRP_ID', true)
@@ -200,9 +200,9 @@  discard block
 block discarded – undo
200 200
      */
201 201
     public function get_all_custom_templates_by_event($EVT_ID, $query_params = array())
202 202
     {
203
-        $where = array_merge($query_params, array( 'Event.EVT_ID' => $EVT_ID ));
203
+        $where = array_merge($query_params, array('Event.EVT_ID' => $EVT_ID));
204 204
         return $this->get_all(
205
-            array( $where )
205
+            array($where)
206 206
         );
207 207
     }
208 208
 
@@ -227,11 +227,11 @@  discard block
 block discarded – undo
227 227
         $count = false,
228 228
         $global = true
229 229
     ) {
230
-        $_where = $global ? array('MTP_is_global' => true ) : array('MTP_is_global' => false );
230
+        $_where = $global ? array('MTP_is_global' => true) : array('MTP_is_global' => false);
231 231
         $_where['MTP_is_active'] = true;
232 232
         $_where = $this->_maybe_mtp_filters($_where);
233 233
 
234
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
234
+        $query_params = array($_where, 'order_by' => array($orderby => $order), 'limit' => $limit);
235 235
 
236 236
         return $count ? $this->count_deleted($query_params, 'GRP_ID', true) : $this->get_all_deleted($query_params);
237 237
     }
@@ -269,7 +269,7 @@  discard block
 block discarded – undo
269 269
             'MTP_is_active' => $active
270 270
         );
271 271
 
272
-        $query_params = array( $_where, 'order_by' => array($orderby => $order), 'limit' => $limit );
272
+        $query_params = array($_where, 'order_by' => array($orderby => $order), 'limit' => $limit);
273 273
 
274 274
         return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
275 275
     }
@@ -309,7 +309,7 @@  discard block
 block discarded – undo
309 309
             $_where['MTP_is_active'] = $active;
310 310
         }
311 311
 
312
-        $query_params = array( $_where, 'order_by' => array( $orderby => $order ), 'limit' => $limit );
312
+        $query_params = array($_where, 'order_by' => array($orderby => $order), 'limit' => $limit);
313 313
 
314 314
         return $count ? $this->count($query_params, 'GRP_ID', true) : $this->get_all($query_params);
315 315
     }
@@ -367,19 +367,19 @@  discard block
 block discarded – undo
367 367
             // first let's figure out if the value['content'] in the current index is an array.
368 368
             //  If it is then this is special fields that are used in parsing special shortcodes (i.e. 'attendee_list').
369 369
             if (is_array($value['content'])) {
370
-                $assembled_fields[ $value['name'] ] = $value['content']['main'];
370
+                $assembled_fields[$value['name']] = $value['content']['main'];
371 371
                 // loop through the content and get the other fields.
372 372
                 foreach ($value['content'] as $name => $val) {
373 373
                     if ($name == 'main') {
374 374
                         continue;
375 375
                     }
376
-                    $assembled_fields[ $name ] = $val;
376
+                    $assembled_fields[$name] = $val;
377 377
                 }
378 378
                 continue;
379 379
             }
380 380
 
381 381
             // okay if we're here then this is just a straight field=>$value arrangement
382
-            $assembled_fields[ $value['name'] ] = $value['content'];
382
+            $assembled_fields[$value['name']] = $value['content'];
383 383
         }
384 384
 
385 385
         // now we've got the assembled_fields.
@@ -389,9 +389,9 @@  discard block
 block discarded – undo
389 389
         $mt_ref = ucwords(str_replace('_', ' ', $message_type));
390 390
         $mt_ref = str_replace(' ', '_', $mt_ref);
391 391
 
392
-        $classname = 'EE_Messages_' . $m_ref . '_' . $mt_ref . '_Validator';
392
+        $classname = 'EE_Messages_'.$m_ref.'_'.$mt_ref.'_Validator';
393 393
 
394
-        if (!class_exists($classname)) {
394
+        if ( ! class_exists($classname)) {
395 395
             $msg[] = __('The Validator class was unable to load', 'event_espresso');
396 396
             $msg[] = sprintf(
397 397
                 __(
@@ -429,12 +429,12 @@  discard block
 block discarded – undo
429 429
         if (empty($messenger_names) && empty($message_type_names)) {
430 430
             return 0;
431 431
         }
432
-        if (! empty($messenger_names)) {
433
-            $query_args[0]['MTP_messenger'] = array( 'IN', (array) $messenger_names );
432
+        if ( ! empty($messenger_names)) {
433
+            $query_args[0]['MTP_messenger'] = array('IN', (array) $messenger_names);
434 434
         }
435
-        if (! empty($message_type_names)) {
436
-            $query_args[0]['MTP_message_type'] = array( 'IN', (array) $message_type_names );
435
+        if ( ! empty($message_type_names)) {
436
+            $query_args[0]['MTP_message_type'] = array('IN', (array) $message_type_names);
437 437
         }
438
-        return $this->update(array( 'MTP_is_active' => false ), $query_args);
438
+        return $this->update(array('MTP_is_active' => false), $query_args);
439 439
     }
440 440
 }
Please login to merge, or discard this patch.
core/db_models/EEM_Price_Type.model.php 3 patches
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -27,7 +27,7 @@  discard block
 block discarded – undo
27 27
     /**
28 28
      * return an array of Base types. Keys are INTs which are used in the database,
29 29
      * values are text-representations of the base type.
30
-     * @return array
30
+     * @return integer
31 31
      */
32 32
     public function get_base_types()
33 33
     {
@@ -107,7 +107,7 @@  discard block
 block discarded – undo
107 107
      *      instantiate a new price type object with blank/empty properties
108 108
      *
109 109
      *      @access     public
110
-     *      @return     mixed       array on success, FALSE on fail
110
+     *      @return     EE_Price_Type       array on success, FALSE on fail
111 111
      */
112 112
     public function get_new_price_type()
113 113
     {
Please login to merge, or discard this patch.
Indentation   +123 added lines, -123 removed lines patch added patch discarded remove patch
@@ -12,108 +12,108 @@  discard block
 block discarded – undo
12 12
 class EEM_Price_Type extends EEM_Soft_Delete_Base
13 13
 {
14 14
 
15
-    // private instance of the Price Type object
16
-    protected static $_instance = null;
17
-    // An array of the price type objects
18
-    public $type = null;
19
-
20
-    /**
21
-    *   Price Base types
22
-    *
23
-    *   @access private
24
-    *   @var int
25
-    */
26
-    public $base_types = null;
27
-
28
-    /**
29
-     * return an array of Base types. Keys are INTs which are used in the database,
30
-     * values are text-representations of the base type.
31
-     * @return array
32
-     */
33
-    public function get_base_types()
34
-    {
35
-        return $this->base_types;
36
-    }
37
-
38
-    /**
39
-     * Gets the name of the base
40
-     * @param type $base_type_int
41
-     * @return type
42
-     */
43
-    public function get_base_type_name($base_type_int)
44
-    {
45
-        return $this->base_types[ $base_type_int ];
46
-    }
47
-
48
-    /**
49
-     * constants for price base types. In the DB, we decided to store the price base type
50
-     * as an integer. So, to avoid just having magic numbers everwhere (eg, querying for
51
-     * all price types with PBT_ID = 2), we define these constants, to make code more understandable.
52
-     * So, as an example, to query for all price types that are a tax, we'd do
53
-     * EEM_PRice_Type::instance()->get_all(array(array('PBT_ID'=>EEM_Price_Type::base_type_tax)))
54
-     * instead of
55
-     * EEM_Price_Type::instance()->get_all(array(array('PBT_ID'=>2)))
56
-     * Although the 2nd is shorter, it's much less obvious what it's doing. Also, should these magic IDs ever
57
-     * change, we can continue to use the constant, by simply change its value.
58
-     */
59
-    const base_type_base_price = 1;
60
-    const base_type_discount = 2;
61
-    const base_type_surcharge = 3;
62
-    const base_type_tax = 4;
63
-    /**
64
-     *      private constructor to prevent direct creation
65
-     *      @Constructor
66
-     *      @access protected
67
-     *      @return void
68
-     */
69
-    protected function __construct($timezone = null)
70
-    {
71
-        $this->base_types = array(
72
-            EEM_Price_Type::base_type_base_price => __('Price', 'event_espresso'),
73
-            EEM_Price_Type::base_type_discount => __('Discount', 'event_espresso'),
74
-            EEM_Price_Type::base_type_surcharge => __('Surcharge', 'event_espresso'),
75
-            EEM_Price_Type::base_type_tax => __('Tax', 'event_espresso') );
76
-        $this->singular_item = __('Price Type', 'event_espresso');
77
-        $this->plural_item = __('Price Types', 'event_espresso');
78
-
79
-        $this->_tables = array(
80
-            'Price_Type' => new EE_Primary_Table('esp_price_type', 'PRT_ID')
81
-        );
82
-        $this->_fields = array(
83
-            'Price_Type' => array(
84
-                'PRT_ID' => new EE_Primary_Key_Int_Field('PRT_ID', __('Price Type ID', 'event_espresso')),
85
-                'PRT_name' => new EE_Plain_Text_Field('PRT_name', __('Price Type Name', 'event_espresso'), false, ''),
86
-                'PBT_ID' => new EE_Enum_Integer_Field('PBT_ID', __('Price Base type ID, 1 = Price , 2 = Discount , 3 = Surcharge , 4 = Tax', 'event_espresso'), false, EEM_Price_Type::base_type_base_price, $this->base_types),
87
-                'PRT_is_percent' => new EE_Boolean_Field('PRT_is_percent', __('Flag indicating price is a percentage', 'event_espresso'), false, false),
88
-                'PRT_order' => new EE_Integer_Field('PRT_order', __('Order in which price should be applied. ', 'event_espresso'), false, 0),
89
-                'PRT_deleted' => new EE_Trashed_Flag_Field('PRT_deleted', __('Flag indicating price type has been trashed', 'event_espresso'), false, false),
90
-                'PRT_wp_user' => new EE_WP_User_Field('PRT_wp_user', __('Price Type Creator ID', 'event_espresso'), false),
91
-            )
92
-        );
93
-        $this->_model_relations = array(
94
-            'Price' => new EE_Has_Many_Relation(),
95
-            'WP_User' => new EE_Belongs_To_Relation(),
96
-        );
97
-        // this model is generally available for reading
98
-        $this->_cap_restriction_generators[ EEM_Base::caps_read ] = new EE_Restriction_Generator_Public();
99
-        // all price types are "default" in terms of capability names
100
-        $this->_caps_slug = 'default_price_types';
101
-        parent::__construct($timezone);
102
-    }
103
-
104
-
105
-
106
-
107
-    /**
108
-     *      instantiate a new price type object with blank/empty properties
109
-     *
110
-     *      @access     public
111
-     *      @return     mixed       array on success, FALSE on fail
112
-     */
113
-    public function get_new_price_type()
114
-    {
115
-        return EE_Price_Type::new_instance();
116
-    }
15
+	// private instance of the Price Type object
16
+	protected static $_instance = null;
17
+	// An array of the price type objects
18
+	public $type = null;
19
+
20
+	/**
21
+	 *   Price Base types
22
+	 *
23
+	 *   @access private
24
+	 *   @var int
25
+	 */
26
+	public $base_types = null;
27
+
28
+	/**
29
+	 * return an array of Base types. Keys are INTs which are used in the database,
30
+	 * values are text-representations of the base type.
31
+	 * @return array
32
+	 */
33
+	public function get_base_types()
34
+	{
35
+		return $this->base_types;
36
+	}
37
+
38
+	/**
39
+	 * Gets the name of the base
40
+	 * @param type $base_type_int
41
+	 * @return type
42
+	 */
43
+	public function get_base_type_name($base_type_int)
44
+	{
45
+		return $this->base_types[ $base_type_int ];
46
+	}
47
+
48
+	/**
49
+	 * constants for price base types. In the DB, we decided to store the price base type
50
+	 * as an integer. So, to avoid just having magic numbers everwhere (eg, querying for
51
+	 * all price types with PBT_ID = 2), we define these constants, to make code more understandable.
52
+	 * So, as an example, to query for all price types that are a tax, we'd do
53
+	 * EEM_PRice_Type::instance()->get_all(array(array('PBT_ID'=>EEM_Price_Type::base_type_tax)))
54
+	 * instead of
55
+	 * EEM_Price_Type::instance()->get_all(array(array('PBT_ID'=>2)))
56
+	 * Although the 2nd is shorter, it's much less obvious what it's doing. Also, should these magic IDs ever
57
+	 * change, we can continue to use the constant, by simply change its value.
58
+	 */
59
+	const base_type_base_price = 1;
60
+	const base_type_discount = 2;
61
+	const base_type_surcharge = 3;
62
+	const base_type_tax = 4;
63
+	/**
64
+	 *      private constructor to prevent direct creation
65
+	 *      @Constructor
66
+	 *      @access protected
67
+	 *      @return void
68
+	 */
69
+	protected function __construct($timezone = null)
70
+	{
71
+		$this->base_types = array(
72
+			EEM_Price_Type::base_type_base_price => __('Price', 'event_espresso'),
73
+			EEM_Price_Type::base_type_discount => __('Discount', 'event_espresso'),
74
+			EEM_Price_Type::base_type_surcharge => __('Surcharge', 'event_espresso'),
75
+			EEM_Price_Type::base_type_tax => __('Tax', 'event_espresso') );
76
+		$this->singular_item = __('Price Type', 'event_espresso');
77
+		$this->plural_item = __('Price Types', 'event_espresso');
78
+
79
+		$this->_tables = array(
80
+			'Price_Type' => new EE_Primary_Table('esp_price_type', 'PRT_ID')
81
+		);
82
+		$this->_fields = array(
83
+			'Price_Type' => array(
84
+				'PRT_ID' => new EE_Primary_Key_Int_Field('PRT_ID', __('Price Type ID', 'event_espresso')),
85
+				'PRT_name' => new EE_Plain_Text_Field('PRT_name', __('Price Type Name', 'event_espresso'), false, ''),
86
+				'PBT_ID' => new EE_Enum_Integer_Field('PBT_ID', __('Price Base type ID, 1 = Price , 2 = Discount , 3 = Surcharge , 4 = Tax', 'event_espresso'), false, EEM_Price_Type::base_type_base_price, $this->base_types),
87
+				'PRT_is_percent' => new EE_Boolean_Field('PRT_is_percent', __('Flag indicating price is a percentage', 'event_espresso'), false, false),
88
+				'PRT_order' => new EE_Integer_Field('PRT_order', __('Order in which price should be applied. ', 'event_espresso'), false, 0),
89
+				'PRT_deleted' => new EE_Trashed_Flag_Field('PRT_deleted', __('Flag indicating price type has been trashed', 'event_espresso'), false, false),
90
+				'PRT_wp_user' => new EE_WP_User_Field('PRT_wp_user', __('Price Type Creator ID', 'event_espresso'), false),
91
+			)
92
+		);
93
+		$this->_model_relations = array(
94
+			'Price' => new EE_Has_Many_Relation(),
95
+			'WP_User' => new EE_Belongs_To_Relation(),
96
+		);
97
+		// this model is generally available for reading
98
+		$this->_cap_restriction_generators[ EEM_Base::caps_read ] = new EE_Restriction_Generator_Public();
99
+		// all price types are "default" in terms of capability names
100
+		$this->_caps_slug = 'default_price_types';
101
+		parent::__construct($timezone);
102
+	}
103
+
104
+
105
+
106
+
107
+	/**
108
+	 *      instantiate a new price type object with blank/empty properties
109
+	 *
110
+	 *      @access     public
111
+	 *      @return     mixed       array on success, FALSE on fail
112
+	 */
113
+	public function get_new_price_type()
114
+	{
115
+		return EE_Price_Type::new_instance();
116
+	}
117 117
 
118 118
 
119 119
 
@@ -132,33 +132,33 @@  discard block
 block discarded – undo
132 132
  *
133 133
  * @param type $query_params
134 134
  * @param boolean $allow_blocking if TRUE, matched objects will only be deleted if there is no related model info
135
-     * that blocks it (ie, there' sno other data that depends on this data); if false, deletes regardless of other objects
136
-     * which may depend on it. Its generally advisable to always leave this as TRUE, otherwise you could easily corrupt your DB
135
+ * that blocks it (ie, there' sno other data that depends on this data); if false, deletes regardless of other objects
136
+ * which may depend on it. Its generally advisable to always leave this as TRUE, otherwise you could easily corrupt your DB
137 137
  * @return boolean
138 138
  */
139
-    public function delete_permanently($query_params = array(), $allow_blocking = true)
140
-    {
139
+	public function delete_permanently($query_params = array(), $allow_blocking = true)
140
+	{
141 141
 
142
-        $would_be_deleted_price_types = $this->get_all_deleted_and_undeleted($query_params);
143
-        $would_be_deleted_price_type_ids = array_keys($would_be_deleted_price_types);
142
+		$would_be_deleted_price_types = $this->get_all_deleted_and_undeleted($query_params);
143
+		$would_be_deleted_price_type_ids = array_keys($would_be_deleted_price_types);
144 144
 
145
-        $ID = $query_params[0][ $this->get_primary_key_field()->get_name() ];
145
+		$ID = $query_params[0][ $this->get_primary_key_field()->get_name() ];
146 146
 
147
-        // check if any prices use this price type
148
-        $prc_query_params = array(array('PRT_ID' => array('IN',$would_be_deleted_price_type_ids)));
149
-        if ($prices = $this->get_all_related($ID, 'Price', $prc_query_params)) {
150
-            $prices_names_and_ids = array();
151
-            foreach ($prices as $price) {
152
-                /* @var $price EE_Price */
153
-                $prices_names_and_ids[] = $price->name() . "(" . $price->ID() . ")";
154
-            }
155
-            $msg = sprintf(__('The Price Type(s) could not be deleted because there are existing Prices that currently use this Price Type.  If you still wish to delete this Price Type, then either delete those Prices or change them to use other Price Types.The prices are: %s', 'event_espresso'), implode(",", $prices_names_and_ids));
156
-            EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__);
157
-            return false;
158
-        }
147
+		// check if any prices use this price type
148
+		$prc_query_params = array(array('PRT_ID' => array('IN',$would_be_deleted_price_type_ids)));
149
+		if ($prices = $this->get_all_related($ID, 'Price', $prc_query_params)) {
150
+			$prices_names_and_ids = array();
151
+			foreach ($prices as $price) {
152
+				/* @var $price EE_Price */
153
+				$prices_names_and_ids[] = $price->name() . "(" . $price->ID() . ")";
154
+			}
155
+			$msg = sprintf(__('The Price Type(s) could not be deleted because there are existing Prices that currently use this Price Type.  If you still wish to delete this Price Type, then either delete those Prices or change them to use other Price Types.The prices are: %s', 'event_espresso'), implode(",", $prices_names_and_ids));
156
+			EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__);
157
+			return false;
158
+		}
159 159
 
160 160
 
161 161
 
162
-        return parent::delete_permanently($query_params);
163
-    }
162
+		return parent::delete_permanently($query_params);
163
+	}
164 164
 }
Please login to merge, or discard this patch.
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -42,7 +42,7 @@  discard block
 block discarded – undo
42 42
      */
43 43
     public function get_base_type_name($base_type_int)
44 44
     {
45
-        return $this->base_types[ $base_type_int ];
45
+        return $this->base_types[$base_type_int];
46 46
     }
47 47
 
48 48
     /**
@@ -95,7 +95,7 @@  discard block
 block discarded – undo
95 95
             'WP_User' => new EE_Belongs_To_Relation(),
96 96
         );
97 97
         // this model is generally available for reading
98
-        $this->_cap_restriction_generators[ EEM_Base::caps_read ] = new EE_Restriction_Generator_Public();
98
+        $this->_cap_restriction_generators[EEM_Base::caps_read] = new EE_Restriction_Generator_Public();
99 99
         // all price types are "default" in terms of capability names
100 100
         $this->_caps_slug = 'default_price_types';
101 101
         parent::__construct($timezone);
@@ -142,15 +142,15 @@  discard block
 block discarded – undo
142 142
         $would_be_deleted_price_types = $this->get_all_deleted_and_undeleted($query_params);
143 143
         $would_be_deleted_price_type_ids = array_keys($would_be_deleted_price_types);
144 144
 
145
-        $ID = $query_params[0][ $this->get_primary_key_field()->get_name() ];
145
+        $ID = $query_params[0][$this->get_primary_key_field()->get_name()];
146 146
 
147 147
         // check if any prices use this price type
148
-        $prc_query_params = array(array('PRT_ID' => array('IN',$would_be_deleted_price_type_ids)));
148
+        $prc_query_params = array(array('PRT_ID' => array('IN', $would_be_deleted_price_type_ids)));
149 149
         if ($prices = $this->get_all_related($ID, 'Price', $prc_query_params)) {
150 150
             $prices_names_and_ids = array();
151 151
             foreach ($prices as $price) {
152 152
                 /* @var $price EE_Price */
153
-                $prices_names_and_ids[] = $price->name() . "(" . $price->ID() . ")";
153
+                $prices_names_and_ids[] = $price->name()."(".$price->ID().")";
154 154
             }
155 155
             $msg = sprintf(__('The Price Type(s) could not be deleted because there are existing Prices that currently use this Price Type.  If you still wish to delete this Price Type, then either delete those Prices or change them to use other Price Types.The prices are: %s', 'event_espresso'), implode(",", $prices_names_and_ids));
156 156
             EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__);
Please login to merge, or discard this patch.