Upgrades
3 weeks ago
AudioPresets.php
1 year ago
EmailCollection.php
1 year ago
Migrations.php
1 year ago
Presets.php
1 year ago
Table.php
3 weeks ago
Videos.php
1 year ago
Visits.php
1 year ago
Webhooks.php
1 year ago
AudioPresets.php
88 lines
| 1 | <?php |
| 2 | |
| 3 | namespace PrestoPlayer\Database; |
| 4 | |
| 5 | use PrestoPlayer\Database\Table; |
| 6 | |
| 7 | class AudioPresets { |
| 8 | |
| 9 | protected $table; |
| 10 | |
| 11 | protected $version = 20; |
| 12 | |
| 13 | protected $name = 'presto_player_audio_presets'; |
| 14 | |
| 15 | public function __construct( Table $table ) { |
| 16 | $this->table = $table; |
| 17 | } |
| 18 | |
| 19 | public function getName() { |
| 20 | global $wpdb; |
| 21 | return $wpdb->prefix . $this->name; |
| 22 | } |
| 23 | |
| 24 | /** |
| 25 | * Add relationships custom table |
| 26 | * This allows for simple, efficient queries |
| 27 | * |
| 28 | * @return void |
| 29 | */ |
| 30 | public function install() { |
| 31 | return $this->table->create( |
| 32 | $this->name, |
| 33 | ' |
| 34 | id bigint(20) unsigned NOT NULL auto_increment, |
| 35 | name varchar(155) NULL, |
| 36 | slug varchar(155) NULL, |
| 37 | icon varchar(155) NULL, |
| 38 | skin varchar(155) NULL, |
| 39 | rewind boolean DEFAULT 0 NOT NULL, |
| 40 | play boolean DEFAULT 0 NOT NULL, |
| 41 | `play-large` boolean DEFAULT 0 NOT NULL, |
| 42 | `fast-forward` boolean DEFAULT 0 NOT NULL, |
| 43 | progress boolean DEFAULT 0 NOT NULL, |
| 44 | `current-time` boolean DEFAULT 0 NOT NULL, |
| 45 | mute boolean DEFAULT 0 NOT NULL, |
| 46 | volume boolean DEFAULT 0 NOT NULL, |
| 47 | speed boolean DEFAULT 0 NOT NULL, |
| 48 | pip boolean DEFAULT 0 NOT NULL, |
| 49 | reset_on_end boolean DEFAULT 0 NOT NULL, |
| 50 | save_player_position boolean DEFAULT 0 NOT NULL, |
| 51 | sticky_scroll boolean DEFAULT 0 NOT NULL, |
| 52 | sticky_scroll_position varchar(16) DEFAULT NULL, |
| 53 | on_video_end varchar(16) DEFAULT NULL, |
| 54 | play_video_viewport boolean DEFAULT 0 NOT NULL, |
| 55 | show_time_elapsed boolean DEFAULT 0 NOT NULL, |
| 56 | hide_logo boolean DEFAULT 0 NOT NULL, |
| 57 | border_radius bigint(20) unsigned NULL, |
| 58 | background_color varchar(155) NULL, |
| 59 | control_color varchar(155) NULL, |
| 60 | is_locked boolean DEFAULT 0 NOT NULL, |
| 61 | cta LONGTEXT NOT NULL, |
| 62 | email_collection LONGTEXT NOT NULL, |
| 63 | action_bar LONGTEXT NOT NULL, |
| 64 | created_by bigint(20) unsigned NULL, |
| 65 | created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(), |
| 66 | updated_at TIMESTAMP NOT NULL, |
| 67 | deleted_at TIMESTAMP NULL, |
| 68 | PRIMARY KEY (id), |
| 69 | KEY name (name) |
| 70 | ', |
| 71 | $this->version |
| 72 | ); |
| 73 | } |
| 74 | |
| 75 | /** |
| 76 | * Uninstall tables |
| 77 | * |
| 78 | * @return void |
| 79 | */ |
| 80 | public function uninstall() { |
| 81 | $this->table->drop( $this->getName() ); |
| 82 | } |
| 83 | |
| 84 | public function exists() { |
| 85 | return $this->table->exists( $this->name ); |
| 86 | } |
| 87 | } |
| 88 |