PluginProbe ʕ •ᴥ•ʔ
WP All Import – Drag & Drop Import for CSV, XML, Excel & Google Sheets / 2.13
WP All Import – Drag & Drop Import for CSV, XML, Excel & Google Sheets v2.13
4.1.1 3.9.5 3.9.6 4.0.0 4.0.1 4.1.0 trunk 2.12 2.13 2.14 3.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6 3.4.7 3.4.8 3.4.9 3.5.0 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.5.6 3.5.7 3.5.8 3.5.9 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.6.8 3.6.9 3.7.0 3.7.1 3.7.2 3.7.3 3.7.3-beta-1.0 3.7.4 3.7.4-beta-1.0 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4
wp-all-import / models / file / record.php
wp-all-import / models / file Last commit date
list.php 14 years ago record.php 14 years ago
record.php
78 lines
1 <?php
2
3 class PMXI_File_Record extends PMXI_Model_Record {
4 /**
5 * Initialize model instance
6 * @param array[optional] $data Array of record data to initialize object with
7 */
8 public function __construct($data = array()) {
9 parent::__construct($data);
10 $this->setTable(PMXI_Plugin::getInstance()->getTablePrefix() . 'files');
11 }
12
13 /**
14 * @see PMXI_Model_Record::insert()
15 */
16 public function insert() {
17 $file_contents = NULL;
18 if ($this->offsetExists('contents')) {
19 $file_contents = $this['contents'];
20 unset($this->contents);
21 }
22
23 parent::insert();
24
25 if (isset($this->id) and ! is_null($file_contents)) {
26 file_put_contents(PMXI_Plugin::ROOT_DIR . '/history/' . $this->id, $file_contents);
27 }
28
29 $list = new PMXI_File_List();
30 $list->sweepHistory();
31 return $this;
32 }
33
34 /**
35 * @see PMXI_Model_Record::update()
36 */
37 public function update() {
38 $file_contents = NULL;
39 if ($this->offsetExists('contents')) {
40 $file_contents = $this['contents'];
41 unset($this->contents);
42 }
43
44 parent::update();
45
46 if (isset($this->id) and ! is_null($file_contents)) {
47 file_put_contents(PMXI_Plugin::ROOT_DIR . '/history/' . $this->id, $file_contents);
48 }
49
50 return $this;
51 }
52
53 public function __isset($field) {
54 if ('contents' == $field and ! $this->offsetExists($field)) {
55 return isset($this->id) and file_exists(PMXI_Plugin::ROOT_DIR . '/history/' . $this->id);
56 }
57 return parent::__isset($field);
58 }
59
60 public function __get($field) {
61 if ('contents' == $field and ! $this->offsetExists('contents')) {
62 if (isset($this->contents)) {
63 $this['contents'] = file_get_contents(PMXI_Plugin::ROOT_DIR . '/history/' . $this->id);
64 } else {
65 $this->contents = NULL;
66 }
67 }
68 return parent::__get($field);
69 }
70
71 public function delete() {
72 if ($this->id) { // delete history file first
73 $file_name = PMXI_Plugin::ROOT_DIR . '/history/' . $this->id;
74 is_file($file_name) and unlink($file_name);
75 }
76 return parent::delete();
77 }
78 }