Git Repository Public Repository

namibia

URLs

Copy to Clipboard
 
df0489e1eeeeab5a9bd44e1d84fce49924fe1bac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?php
namespace Utility\Entity;

use Doctrine\ORM\Mapping as ORM;



/**
 * A document.
 * @ORM\Entity
 * @ORM\HasLifecycleCallbacks
 * @ORM\Table(name="lib_document")
 */
class Document
{

	/**
	 * Can archive records.
	 */
	const ARCHIVE = true;
	/**
	 * Pull Synchronization Strategy for this table.
	 */
	const PULL_SYNCH_STRATEGY = false;
	/**
	 * Push Synchronization Strategy for this table.
	 */
	const PUSH_SYNCH_STRATEGY = false;

	/**
	 * @ORM\Id
	 * @ORM\Column(type="integer");
	 * @ORM\GeneratedValue(strategy="AUTO")
	 */
	protected $id;

	/**
	 * @ORM\Column(type="string", length=250)
	 */
	protected $filename;

	/**
	 * @ORM\Column(type="string", length=200, name="mime_type")
	 */
	protected $mimeType;

	/**
	 * @ORM\Column(type="integer")
	 */
	protected $downloads = 0;

	/**
	 * @ORM\Column(type="datetime");
	 */
	protected $created;

	/**
	 * @ORM\Column(type="boolean");
	 */
	protected $archived = false;


	/**
	 * Magic getter to expose protected properties.
	 * @param string $property
	 * @return mixed
	 */
	public function __get($property)
	{
		return $this->$property;
	}

	/**
	 * Magic setter to save protected properties.
	 * @param string $property
	 * @param mixed $value
	 */
	public function __set($property, $value)
	{
		$this->$property = $value;
	}

	/**
	 * @ORM\PrePersist
	 */
	public function setCreateTime()
	{
		$this->created = new \DateTime("now");
	}

	/**
	 * Convert the object to an array.
	 * @param array $expand
	 * @return array
	 */
	public function toArray(array $expand = array())
	{
		return array(
				'id'        => $this->id,
				'filename'  => $this->filename,
				'mimeType'  => $this->mimeType,
				'downloads' => $this->downloads,
				'created'   => !is_null($this->created)
					? $this->created->format(\Utility\Registry::getConfigParam('DateTimeFormat'))
					: null
		);
	}

	/**
	 * Populate from an array.
	 * @param array $data
	 */
	public function fromArray($data = array())
	{
		isset($data['id'])
			&& $this->id = $data['id'];
		isset($data['filename'])
			&& $this->filename  = $data['filename'];
		isset($data['mimeType'])
			&& $this->mimeType  = $data['mimeType'];
		isset($data['downloads'])
			&& $this->downloads  = $data['downloads'];
	}

}

Commits for namibiamodule/Utility/src/Utility/Entity/Document.php

Diff revisions: vs.
Revision Author Commited Message
df0489 ... Mark Fri 14 Oct, 2016 10:01:00 +0000

initial commit