diff options
author | Jeremy Benoist <j0k3r@users.noreply.github.com> | 2017-01-27 09:34:32 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-27 09:34:32 +0100 |
commit | 6fb06904ecde15b1b07d0a2af945338b416cf0e2 (patch) | |
tree | e76f3e8142399316ec5660fab8c646b2c34b8336 /src/Wallabag/CoreBundle/Entity/Entry.php | |
parent | 05fa529bcfde01be5d320cb532900d72cf4b0830 (diff) | |
parent | 78295b99dd1721c613f1ce52e2debbe6f6db7753 (diff) | |
download | wallabag-6fb06904ecde15b1b07d0a2af945338b416cf0e2.tar.gz wallabag-6fb06904ecde15b1b07d0a2af945338b416cf0e2.tar.zst wallabag-6fb06904ecde15b1b07d0a2af945338b416cf0e2.zip |
Merge pull request #2416 from wallabag/2.2
wallabag 2.2.0
Diffstat (limited to 'src/Wallabag/CoreBundle/Entity/Entry.php')
-rw-r--r-- | src/Wallabag/CoreBundle/Entity/Entry.php | 66 |
1 files changed, 51 insertions, 15 deletions
diff --git a/src/Wallabag/CoreBundle/Entity/Entry.php b/src/Wallabag/CoreBundle/Entity/Entry.php index f2da3f4d..7276b437 100644 --- a/src/Wallabag/CoreBundle/Entity/Entry.php +++ b/src/Wallabag/CoreBundle/Entity/Entry.php | |||
@@ -19,7 +19,14 @@ use Wallabag\AnnotationBundle\Entity\Annotation; | |||
19 | * | 19 | * |
20 | * @XmlRoot("entry") | 20 | * @XmlRoot("entry") |
21 | * @ORM\Entity(repositoryClass="Wallabag\CoreBundle\Repository\EntryRepository") | 21 | * @ORM\Entity(repositoryClass="Wallabag\CoreBundle\Repository\EntryRepository") |
22 | * @ORM\Table(name="`entry`") | 22 | * @ORM\Table( |
23 | * name="`entry`", | ||
24 | * options={"collate"="utf8mb4_unicode_ci", "charset"="utf8mb4"}, | ||
25 | * indexes={ | ||
26 | * @ORM\Index(name="created_at", columns={"created_at"}), | ||
27 | * @ORM\Index(name="uid", columns={"uid"}) | ||
28 | * } | ||
29 | * ) | ||
23 | * @ORM\HasLifecycleCallbacks() | 30 | * @ORM\HasLifecycleCallbacks() |
24 | * @Hateoas\Relation("self", href = "expr('/api/entries/' ~ object.getId())") | 31 | * @Hateoas\Relation("self", href = "expr('/api/entries/' ~ object.getId())") |
25 | */ | 32 | */ |
@@ -40,11 +47,11 @@ class Entry | |||
40 | /** | 47 | /** |
41 | * @var string | 48 | * @var string |
42 | * | 49 | * |
43 | * @ORM\Column(name="uuid", type="text", nullable=true) | 50 | * @ORM\Column(name="uid", type="string", length=23, nullable=true) |
44 | * | 51 | * |
45 | * @Groups({"entries_for_user", "export_all"}) | 52 | * @Groups({"entries_for_user", "export_all"}) |
46 | */ | 53 | */ |
47 | private $uuid; | 54 | private $uid; |
48 | 55 | ||
49 | /** | 56 | /** |
50 | * @var string | 57 | * @var string |
@@ -177,6 +184,15 @@ class Entry | |||
177 | private $isPublic; | 184 | private $isPublic; |
178 | 185 | ||
179 | /** | 186 | /** |
187 | * @var string | ||
188 | * | ||
189 | * @ORM\Column(name="http_status", type="string", length=3, nullable=true) | ||
190 | * | ||
191 | * @Groups({"entries_for_user", "export_all"}) | ||
192 | */ | ||
193 | private $httpStatus; | ||
194 | |||
195 | /** | ||
180 | * @Exclude | 196 | * @Exclude |
181 | * | 197 | * |
182 | * @ORM\ManyToOne(targetEntity="Wallabag\UserBundle\Entity\User", inversedBy="entries") | 198 | * @ORM\ManyToOne(targetEntity="Wallabag\UserBundle\Entity\User", inversedBy="entries") |
@@ -190,10 +206,10 @@ class Entry | |||
190 | * @ORM\JoinTable( | 206 | * @ORM\JoinTable( |
191 | * name="entry_tag", | 207 | * name="entry_tag", |
192 | * joinColumns={ | 208 | * joinColumns={ |
193 | * @ORM\JoinColumn(name="entry_id", referencedColumnName="id") | 209 | * @ORM\JoinColumn(name="entry_id", referencedColumnName="id", onDelete="cascade") |
194 | * }, | 210 | * }, |
195 | * inverseJoinColumns={ | 211 | * inverseJoinColumns={ |
196 | * @ORM\JoinColumn(name="tag_id", referencedColumnName="id") | 212 | * @ORM\JoinColumn(name="tag_id", referencedColumnName="id", onDelete="cascade") |
197 | * } | 213 | * } |
198 | * ) | 214 | * ) |
199 | */ | 215 | */ |
@@ -636,33 +652,53 @@ class Entry | |||
636 | /** | 652 | /** |
637 | * @return string | 653 | * @return string |
638 | */ | 654 | */ |
639 | public function getUuid() | 655 | public function getUid() |
640 | { | 656 | { |
641 | return $this->uuid; | 657 | return $this->uid; |
642 | } | 658 | } |
643 | 659 | ||
644 | /** | 660 | /** |
645 | * @param string $uuid | 661 | * @param string $uid |
646 | * | 662 | * |
647 | * @return Entry | 663 | * @return Entry |
648 | */ | 664 | */ |
649 | public function setUuid($uuid) | 665 | public function setUid($uid) |
650 | { | 666 | { |
651 | $this->uuid = $uuid; | 667 | $this->uid = $uid; |
652 | 668 | ||
653 | return $this; | 669 | return $this; |
654 | } | 670 | } |
655 | 671 | ||
656 | public function generateUuid() | 672 | public function generateUid() |
657 | { | 673 | { |
658 | if (null === $this->uuid) { | 674 | if (null === $this->uid) { |
659 | // @see http://blog.kevingomez.fr/til/2015/07/26/why-is-uniqid-slow/ for true parameter | 675 | // @see http://blog.kevingomez.fr/til/2015/07/26/why-is-uniqid-slow/ for true parameter |
660 | $this->uuid = uniqid('', true); | 676 | $this->uid = uniqid('', true); |
661 | } | 677 | } |
662 | } | 678 | } |
663 | 679 | ||
664 | public function cleanUuid() | 680 | public function cleanUid() |
681 | { | ||
682 | $this->uid = null; | ||
683 | } | ||
684 | |||
685 | /** | ||
686 | * @return int | ||
687 | */ | ||
688 | public function getHttpStatus() | ||
689 | { | ||
690 | return $this->httpStatus; | ||
691 | } | ||
692 | |||
693 | /** | ||
694 | * @param int $httpStatus | ||
695 | * | ||
696 | * @return Entry | ||
697 | */ | ||
698 | public function setHttpStatus($httpStatus) | ||
665 | { | 699 | { |
666 | $this->uuid = null; | 700 | $this->httpStatus = $httpStatus; |
701 | |||
702 | return $this; | ||
667 | } | 703 | } |
668 | } | 704 | } |