PluginProbe ʕ •ᴥ•ʔ
Presto Player / 4.3.1
Presto Player v4.3.1
4.3.1 4.3.0 4.2.4 4.2.3 4.2.2 4.2.0 4.2.1 trunk 1.10.0 1.10.1 1.10.2 1.11.0 1.12.0 1.13.0 1.14.0 1.14.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.13 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.11 2.0.12 2.0.13 2.0.14 2.0.15 2.0.16 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.3-beta1 2.3.0 2.3.1 2.3.2 2.3.3 3.0.0 3.0.0-beta1 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.1.0 3.1.1 3.1.2 3.1.3 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4
presto-player / inc / Database / Upgrades / VisitsUpgrade.php
presto-player / inc / Database / Upgrades Last commit date
BunnyWebhookUpgrade.php 4 months ago OnboardingBackfillUpgrade.php 1 month ago PerformanceUpgrade.php 1 year ago TransientsUpgrade.php 3 weeks ago Upgrades.php 1 month ago VisitsUpgrade.php 1 year ago
VisitsUpgrade.php
63 lines
1 <?php
2
3 namespace PrestoPlayer\Database\Upgrades;
4
5 use PrestoPlayer\Models\ReusableVideo;
6
7 class VisitsUpgrade {
8
9 protected $table;
10 protected $version = 2;
11 protected $name = 'presto_player_visits_upgrade_version';
12
13 public function run() {
14 $this->fixReusableVideoStats();
15 }
16
17 /**
18 * Fixes error where reusable video ids were stored instead of video id
19 * in visits table
20 *
21 * @return void
22 */
23 public function fixReusableVideoStats() {
24 global $wpdb;
25
26 $current_version = get_option( $this->name, 0 );
27
28 // we've already done this one
29 if ( $this->version <= $current_version ) {
30 return;
31 }
32
33 // get all reusable video ids
34 $reusable_videos = get_posts(
35 array(
36 'posts_per_page' => -1,
37 'post_type' => 'pp_video_block',
38 )
39 );
40
41 // bail if we have no reusable videos
42 if ( empty( $reusable_videos ) ) {
43 return;
44 }
45
46 // get visits with this id and update to video
47 foreach ( $reusable_videos as $reusable_video ) {
48 $video_block = new ReusableVideo( $reusable_video );
49 $block = $video_block->getBlock();
50
51 if ( ! empty( $block['attrs']['id'] ) ) {
52 $id = $block['attrs']['id'];
53 try {
54 $wpdb->update( $wpdb->prefix . 'presto_player_visits', array( 'video_id' => $id ), array( 'video_id' => (int) $reusable_video->ID ) );
55 } catch ( \Exception $e ) {
56 }
57 }
58 }
59
60 update_option( $this->name, $this->version );
61 }
62 }
63