PluginProbe ʕ •ᴥ•ʔ
Presto Player / 2.0.13
Presto Player v2.0.13
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 / Models / Webhook.php
presto-player / inc / Models Last commit date
AudioPreset.php 4 years ago Block.php 2 years ago CurrentUser.php 5 years ago EmailCollection.php 5 years ago LicensedProduct.php 5 years ago Model.php 4 years ago ModelInterface.php 5 years ago Player.php 5 years ago Post.php 5 years ago Preset.php 3 years ago ReusableVideo.php 3 years ago Setting.php 5 years ago Video.php 2 years ago Webhook.php 3 years ago
Webhook.php
88 lines
1 <?php
2
3 namespace PrestoPlayer\Models;
4
5 class Webhook extends Model
6 {
7 /**
8 * Table used to access db
9 *
10 * @var string
11 */
12 protected $table = 'presto_player_webhooks';
13
14 /**
15 * Model Schema
16 *
17 * @var array
18 */
19 public function schema()
20 {
21 return [
22 'id' => [
23 'type' => 'integer'
24 ],
25 'name' => [
26 'type' => 'string',
27 'sanitize_callback' => 'wp_kses_post'
28 ],
29 'url' => [
30 'type' => 'string',
31 'sanitize_callback' => 'sanitize_url'
32 ],
33 'method' => [
34 'type' => 'string',
35 'sanitize_callback' => 'sanitize_text_field'
36 ],
37 'email_name' => [
38 'type' => 'string',
39 'sanitize_callback' => 'sanitize_text_field'
40 ],
41 'headers' => [
42 'type' => 'array'
43 ],
44 'created_by' => [
45 'type' => 'integer',
46 'default' => get_current_user_id()
47 ],
48 'created_at' => [
49 'type' => 'string'
50 ],
51 'updated_at' => [
52 'type' => 'string',
53 'default' => current_time('mysql')
54 ],
55 'deleted_at' => [
56 'type' => 'string'
57 ]
58 ];
59 }
60
61 /**
62 * These attributes are queryable
63 *
64 * @var array
65 */
66 protected $queryable = ['name'];
67
68 /**
69 * Create a preset in the db
70 *
71 * @param array $args
72 * @return integer
73 */
74 public function create($args = [])
75 {
76 // name is required
77 if (empty($args['name'])) {
78 return new \WP_Error('missing_parameter', __('You must enter a name for the webhook.', 'presto-player'));
79 }
80
81 // generate slug on the fly
82 $args['name'] = !empty($args['name']) ? $args['name'] : sanitize_title($args['name']);
83
84 // create
85 return parent::create($args);
86 }
87 }
88