PluginProbe
UpStream: a Project Management Plugin for WordPress / 1.39.0
UpStream: a Project Management Plugin for WordPress v1.39.0
trunk 1.39.0 1.39.1 1.39.2 1.39.3 2.0.7 2.1.0
upstream / includes / model / UpStream_Model_Reminder.php

UpStream_Model_Reminder.php in UpStream: a Project Management Plugin for WordPress 1.39.0, at includes/model/UpStream_Model_Reminder.php

47 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 // Exit if accessed directly
4 if ( ! defined('ABSPATH')) {
5 exit;
6 }
7
8
9 class UpStream_Model_Reminder
10 {
11 public $id = 0;
12
13 public $intervalId = 0;
14
15 public $timestamp = 0;
16
17 public $sentAt = 0;
18
19 /**
20 * UpStream_Model_Reminder constructor.
21 */
22 public function __construct($item_metadata)
23 {
24 $this->loadFromArray($item_metadata);
25 }
26
27 protected function loadFromArray($item_metadata)
28 {
29 $this->id = !empty($item_metadata['id']) ? $item_metadata['id'] : 0;
30 $this->intervalId = !empty($item_metadata['reminder']) && $item_metadata['reminder'] <= 1000 ? $item_metadata['reminder'] : 0;
31 $this->timestamp = !empty($item_metadata['reminder']) && $item_metadata['reminder'] > 1000 ? $item_metadata['reminder'] : 0;
32 $this->sentAt = !empty($item_metadata['sent_at']) && $item_metadata['sent_at'] != null ? $item_metadata['sent_at'] : 0;
33 }
34
35 public function storeToArray(&$item_metadata)
36 {
37 if (!empty($this->id)) $item_metadata['id'] = $this->id;
38 if ($this->intervalId > 0) $item_metadata['reminder'] = $this->intervalId;
39 if ($this->timestamp > 0) $item_metadata['reminder'] = $this->timestamp;
40 if ($this->sentAt > 0) {
41 $item_metadata['sent'] = true;
42 $item_metadata['sent_at'] = $this->sentAt;
43 } else {
44 $item_metadata['sent'] = false;
45 }
46 }
47 }