@@ -39,15 +39,15 @@ discard block |
||
39 | 39 | const TYPE_LIKED = 'liked'; |
40 | 40 | const TYPE_TAGGED = 'added_to_tag'; |
41 | 41 | |
42 | - final public function __toString (): string { |
|
42 | + final public function __toString(): string { |
|
43 | 43 | return "stories/{$this->getGid()}"; |
44 | 44 | } |
45 | 45 | |
46 | - final protected function _getDir (): string { |
|
46 | + final protected function _getDir(): string { |
|
47 | 47 | return "{$this->getTask()}/stories"; |
48 | 48 | } |
49 | 49 | |
50 | - protected function _getMap (): array { |
|
50 | + protected function _getMap(): array { |
|
51 | 51 | return [ |
52 | 52 | 'created_by' => User::class, |
53 | 53 | 'likes' => [User::class], |
@@ -55,15 +55,15 @@ discard block |
||
55 | 55 | ]; |
56 | 56 | } |
57 | 57 | |
58 | - final public function isComment (): bool { |
|
58 | + final public function isComment(): bool { |
|
59 | 59 | return $this->getResourceSubtype() === self::TYPE_COMMENT_ADDED; |
60 | 60 | } |
61 | 61 | |
62 | - public function isEdited (): bool { |
|
62 | + public function isEdited(): bool { |
|
63 | 63 | return $this->_is('is_edited'); |
64 | 64 | } |
65 | 65 | |
66 | - public function isPinned (): bool { |
|
66 | + public function isPinned(): bool { |
|
67 | 67 | return $this->_is('is_pinned'); |
68 | 68 | } |
69 | 69 | |
@@ -71,7 +71,7 @@ discard block |
||
71 | 71 | * @param bool $pinned |
72 | 72 | * @return $this |
73 | 73 | */ |
74 | - public function setPinned (bool $pinned) { |
|
74 | + public function setPinned(bool $pinned) { |
|
75 | 75 | return $this->_set('is_pinned', $pinned); |
76 | 76 | } |
77 | 77 |
@@ -26,15 +26,15 @@ discard block |
||
26 | 26 | |
27 | 27 | const TYPE = 'tag'; |
28 | 28 | |
29 | - final public function __toString (): string { |
|
29 | + final public function __toString(): string { |
|
30 | 30 | return "tags/{$this->getGid()}"; |
31 | 31 | } |
32 | 32 | |
33 | - final protected function _getDir (): string { |
|
33 | + final protected function _getDir(): string { |
|
34 | 34 | return 'tags'; |
35 | 35 | } |
36 | 36 | |
37 | - protected function _getMap (): array { |
|
37 | + protected function _getMap(): array { |
|
38 | 38 | return [ |
39 | 39 | 'followers' => [User::class], |
40 | 40 | 'workspace' => Workspace::class |
@@ -44,7 +44,7 @@ discard block |
||
44 | 44 | /** |
45 | 45 | * @return Task[] |
46 | 46 | */ |
47 | - public function getTasks () { |
|
47 | + public function getTasks() { |
|
48 | 48 | return $this->loadAll(Task::class, "{$this}/tasks"); |
49 | 49 | } |
50 | 50 | } |
51 | 51 | \ No newline at end of file |
@@ -23,15 +23,15 @@ discard block |
||
23 | 23 | |
24 | 24 | const TYPE = 'section'; |
25 | 25 | |
26 | - final public function __toString (): string { |
|
26 | + final public function __toString(): string { |
|
27 | 27 | return "sections/{$this->getGid()}"; |
28 | 28 | } |
29 | 29 | |
30 | - final protected function _getDir (): string { |
|
30 | + final protected function _getDir(): string { |
|
31 | 31 | return "{$this->getProject()}/sections"; |
32 | 32 | } |
33 | 33 | |
34 | - protected function _getMap (): array { |
|
34 | + protected function _getMap(): array { |
|
35 | 35 | return [ |
36 | 36 | 'projects' => [Project::class] |
37 | 37 | ]; |
@@ -40,14 +40,14 @@ discard block |
||
40 | 40 | /** |
41 | 41 | * @return Project |
42 | 42 | */ |
43 | - public function getProject () { |
|
43 | + public function getProject() { |
|
44 | 44 | return $this->_get('projects')[0]; |
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
48 | 48 | * @return Task[] |
49 | 49 | */ |
50 | - public function getTasks () { |
|
50 | + public function getTasks() { |
|
51 | 51 | return $this->loadAll(Task::class, 'tasks', ['section' => $this->getGid()]); |
52 | 52 | } |
53 | 53 | |
@@ -57,7 +57,7 @@ discard block |
||
57 | 57 | * @after-create |
58 | 58 | * @return Task |
59 | 59 | */ |
60 | - public function newTask () { |
|
60 | + public function newTask() { |
|
61 | 61 | /** @var Task $task */ |
62 | 62 | $task = $this->factory(Task::class); |
63 | 63 | return $task->addToProject($this); |
@@ -48,20 +48,20 @@ discard block |
||
48 | 48 | * @param Project $project |
49 | 49 | * @param array $data |
50 | 50 | */ |
51 | - public function __construct (Project $project, array $data = []) { |
|
51 | + public function __construct(Project $project, array $data = []) { |
|
52 | 52 | parent::__construct($project, $data); |
53 | 53 | $this->project = $project; |
54 | 54 | } |
55 | 55 | |
56 | - final public function __toString (): string { |
|
56 | + final public function __toString(): string { |
|
57 | 57 | return "project_statuses/{$this->getGid()}"; |
58 | 58 | } |
59 | 59 | |
60 | - final protected function _getDir (): string { |
|
60 | + final protected function _getDir(): string { |
|
61 | 61 | return "{$this->project}/project_statuses"; |
62 | 62 | } |
63 | 63 | |
64 | - protected function _getMap (): array { |
|
64 | + protected function _getMap(): array { |
|
65 | 65 | return [ |
66 | 66 | 'created_by' => User::class |
67 | 67 | ]; |
@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | /** |
71 | 71 | * @return Project |
72 | 72 | */ |
73 | - public function getProject () { |
|
73 | + public function getProject() { |
|
74 | 74 | return $this->project; |
75 | 75 | } |
76 | 76 | } |
77 | 77 | \ No newline at end of file |
@@ -28,11 +28,11 @@ discard block |
||
28 | 28 | const STATUS_SUCCESS = 'succeeded'; // api docs say "completed" but that's wrong. |
29 | 29 | const STATUS_FAIL = 'failed'; |
30 | 30 | |
31 | - final public function __toString (): string { |
|
31 | + final public function __toString(): string { |
|
32 | 32 | return "jobs/{$this->getGid()}"; |
33 | 33 | } |
34 | 34 | |
35 | - protected function _getMap (): array { |
|
35 | + protected function _getMap(): array { |
|
36 | 36 | return [ |
37 | 37 | 'new_project' => Project::class, |
38 | 38 | 'new_task' => Task::class |
@@ -44,7 +44,7 @@ discard block |
||
44 | 44 | * |
45 | 45 | * @return bool |
46 | 46 | */ |
47 | - public function isActive (): bool { |
|
47 | + public function isActive(): bool { |
|
48 | 48 | return $this->getStatus() === self::STATUS_ACTIVE; |
49 | 49 | } |
50 | 50 | |
@@ -53,7 +53,7 @@ discard block |
||
53 | 53 | * |
54 | 54 | * @return bool |
55 | 55 | */ |
56 | - public function isDone (): bool { |
|
56 | + public function isDone(): bool { |
|
57 | 57 | return $this->isSuccessful() or $this->isFailed(); |
58 | 58 | } |
59 | 59 | |
@@ -62,7 +62,7 @@ discard block |
||
62 | 62 | * |
63 | 63 | * @return bool |
64 | 64 | */ |
65 | - public function isFailed (): bool { |
|
65 | + public function isFailed(): bool { |
|
66 | 66 | return $this->getStatus() === self::STATUS_FAIL; |
67 | 67 | } |
68 | 68 | |
@@ -71,7 +71,7 @@ discard block |
||
71 | 71 | * |
72 | 72 | * @return bool |
73 | 73 | */ |
74 | - public function isQueued (): bool { |
|
74 | + public function isQueued(): bool { |
|
75 | 75 | return $this->getStatus() === self::STATUS_QUEUED; |
76 | 76 | } |
77 | 77 | |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | * |
81 | 81 | * @return bool |
82 | 82 | */ |
83 | - public function isSuccessful (): bool { |
|
83 | + public function isSuccessful(): bool { |
|
84 | 84 | return $this->getStatus() === self::STATUS_SUCCESS; |
85 | 85 | } |
86 | 86 | |
@@ -89,7 +89,7 @@ discard block |
||
89 | 89 | * |
90 | 90 | * @return $this |
91 | 91 | */ |
92 | - public function wait () { |
|
92 | + public function wait() { |
|
93 | 93 | while (!$this->isDone()) { |
94 | 94 | sleep(3); |
95 | 95 | $this->reload(); |
@@ -17,7 +17,7 @@ |
||
17 | 17 | * @param Workspace $workspace |
18 | 18 | * @return $this |
19 | 19 | */ |
20 | - public function setWorkspace (Workspace $workspace) { |
|
20 | + public function setWorkspace(Workspace $workspace) { |
|
21 | 21 | assert(!$this->hasGid()); |
22 | 22 | return $this->_set('workspace', $workspace); |
23 | 23 | } |
@@ -16,7 +16,7 @@ discard block |
||
16 | 16 | * |
17 | 17 | * @return string |
18 | 18 | */ |
19 | - abstract public function __toString (): string; |
|
19 | + abstract public function __toString(): string; |
|
20 | 20 | |
21 | 21 | /** |
22 | 22 | * Resolves entities to GIDs. |
@@ -24,7 +24,7 @@ discard block |
||
24 | 24 | * @param AbstractEntity[] $entities |
25 | 25 | * @return string[] |
26 | 26 | */ |
27 | - protected static function _getGids (array $entities) { |
|
27 | + protected static function _getGids(array $entities) { |
|
28 | 28 | return array_map(function(AbstractEntity $entity) { |
29 | 29 | return $entity->getGid(); |
30 | 30 | }, $entities); |
@@ -36,7 +36,7 @@ discard block |
||
36 | 36 | * @param string $key |
37 | 37 | * @return mixed |
38 | 38 | */ |
39 | - protected function _get (string $key) { |
|
39 | + protected function _get(string $key) { |
|
40 | 40 | if (!array_key_exists($key, $this->data) and isset($this->data['gid'])) { // can't use hasGid(), inf. loop |
41 | 41 | $this->reload($key); |
42 | 42 | } |
@@ -51,7 +51,7 @@ discard block |
||
51 | 51 | * @param bool $force |
52 | 52 | * @return $this |
53 | 53 | */ |
54 | - protected function _merge (string $key, array $entities, $force = false) { |
|
54 | + protected function _merge(string $key, array $entities, $force = false) { |
|
55 | 55 | if ($force or isset($this->data[$key])) { |
56 | 56 | foreach ($entities as $entity) { |
57 | 57 | $this->data[$key][] = $entity; |
@@ -74,7 +74,7 @@ discard block |
||
74 | 74 | * @param AbstractEntity[] $entities |
75 | 75 | * @return $this |
76 | 76 | */ |
77 | - protected function _remove (string $key, array $entities) { |
|
77 | + protected function _remove(string $key, array $entities) { |
|
78 | 78 | if (isset($this->data[$key])) { |
79 | 79 | $this->data[$key] = array_values(array_diff($this->data[$key], $entities)); |
80 | 80 | $this->api->getCache()->add($this); |
@@ -88,7 +88,7 @@ discard block |
||
88 | 88 | * @param AbstractEntity $entity |
89 | 89 | * @return $this |
90 | 90 | */ |
91 | - public function merge (AbstractEntity $entity) { |
|
91 | + public function merge(AbstractEntity $entity) { |
|
92 | 92 | assert($entity->api); // hydrated |
93 | 93 | foreach ($entity->data as $key => $value) { |
94 | 94 | if (!array_key_exists($key, $this->data) and !isset($entity->diff[$key])) { |
@@ -104,7 +104,7 @@ discard block |
||
104 | 104 | * @param string $key |
105 | 105 | * @return $this |
106 | 106 | */ |
107 | - public function reload (string $key = null) { |
|
107 | + public function reload(string $key = null) { |
|
108 | 108 | if (isset($key)) { |
109 | 109 | $value = $this->api->get($this, [], ['fields' => $key])[$key]; |
110 | 110 | $map = $this->_getMap(); |
@@ -30,15 +30,15 @@ discard block |
||
30 | 30 | |
31 | 31 | const TYPE = 'portfolio'; |
32 | 32 | |
33 | - final public function __toString (): string { |
|
33 | + final public function __toString(): string { |
|
34 | 34 | return "portfolios/{$this->getGid()}"; |
35 | 35 | } |
36 | 36 | |
37 | - final protected function _getDir (): string { |
|
37 | + final protected function _getDir(): string { |
|
38 | 38 | return 'portfolios'; |
39 | 39 | } |
40 | 40 | |
41 | - protected function _getMap (): array { |
|
41 | + protected function _getMap(): array { |
|
42 | 42 | return [ |
43 | 43 | 'created_by' => User::class, |
44 | 44 | 'owner' => User::class, |
@@ -52,7 +52,7 @@ discard block |
||
52 | 52 | * @param Project $item |
53 | 53 | * @return $this |
54 | 54 | */ |
55 | - public function addItem (Project $item) { |
|
55 | + public function addItem(Project $item) { |
|
56 | 56 | $this->api->post("{$this}/addItem", ['item' => $item->getGid()]); |
57 | 57 | return $this; |
58 | 58 | } |
@@ -61,7 +61,7 @@ discard block |
||
61 | 61 | * @param User $user |
62 | 62 | * @return $this |
63 | 63 | */ |
64 | - public function addMember (User $user) { |
|
64 | + public function addMember(User $user) { |
|
65 | 65 | return $this->addMembers([$user]); |
66 | 66 | } |
67 | 67 | |
@@ -69,7 +69,7 @@ discard block |
||
69 | 69 | * @param User[] $users |
70 | 70 | * @return $this |
71 | 71 | */ |
72 | - public function addMembers (array $users) { |
|
72 | + public function addMembers(array $users) { |
|
73 | 73 | if ($this->hasGid()) { |
74 | 74 | $this->api->post("{$this}/addMembers", ['members' => static::_getGids($users)]); |
75 | 75 | $this->_merge('members', $users); |
@@ -84,7 +84,7 @@ discard block |
||
84 | 84 | * @after-create |
85 | 85 | * @return Project[] |
86 | 86 | */ |
87 | - public function getItems () { |
|
87 | + public function getItems() { |
|
88 | 88 | return $this->loadAll(Project::class, "{$this}/items"); |
89 | 89 | } |
90 | 90 | |
@@ -93,7 +93,7 @@ discard block |
||
93 | 93 | * @param Project $item |
94 | 94 | * @return $this |
95 | 95 | */ |
96 | - public function removeItem (Project $item) { |
|
96 | + public function removeItem(Project $item) { |
|
97 | 97 | $this->api->post("{$this}/removeItem", ['item' => $item->getGid()]); |
98 | 98 | return $this; |
99 | 99 | } |
@@ -102,7 +102,7 @@ discard block |
||
102 | 102 | * @param User $user |
103 | 103 | * @return $this |
104 | 104 | */ |
105 | - public function removeMember (User $user) { |
|
105 | + public function removeMember(User $user) { |
|
106 | 106 | return $this->removeMembers([$user]); |
107 | 107 | } |
108 | 108 | |
@@ -110,7 +110,7 @@ discard block |
||
110 | 110 | * @param User[] $users |
111 | 111 | * @return $this |
112 | 112 | */ |
113 | - public function removeMembers (array $users) { |
|
113 | + public function removeMembers(array $users) { |
|
114 | 114 | if ($this->hasGid()) { |
115 | 115 | $this->api->post("{$this}/removeMembers", ['members' => static::_getGids($users)]); |
116 | 116 | } |
@@ -32,7 +32,7 @@ discard block |
||
32 | 32 | * |
33 | 33 | * @param AbstractEntity $entity |
34 | 34 | */ |
35 | - public function add (AbstractEntity $entity): void { |
|
35 | + public function add(AbstractEntity $entity): void { |
|
36 | 36 | if ($gid = $entity->getGid() and !$entity->isDiff()) { |
37 | 37 | $this->entities[$gid] = $entity; |
38 | 38 | foreach ($this->getKeys($entity) as $key) { |
@@ -52,7 +52,7 @@ discard block |
||
52 | 52 | * @param Closure $factory `fn($caller): null|AbstractEntity` |
53 | 53 | * @return null|mixed|AbstractEntity |
54 | 54 | */ |
55 | - public function get (string $key, $caller, Closure $factory) { |
|
55 | + public function get(string $key, $caller, Closure $factory) { |
|
56 | 56 | if ($gid = $this->gids[$key] ?? null) { |
57 | 57 | return $this->entities[$gid]; |
58 | 58 | } |
@@ -81,7 +81,7 @@ discard block |
||
81 | 81 | * @param AbstractEntity $entity |
82 | 82 | * @return string[] |
83 | 83 | */ |
84 | - protected function getKeys (AbstractEntity $entity) { |
|
84 | + protected function getKeys(AbstractEntity $entity) { |
|
85 | 85 | if (!$gid = $entity->getGid() or $entity->isDiff()) { |
86 | 86 | return []; |
87 | 87 | } |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | * |
98 | 98 | * @param AbstractEntity $entity |
99 | 99 | */ |
100 | - public function remove (AbstractEntity $entity): void { |
|
100 | + public function remove(AbstractEntity $entity): void { |
|
101 | 101 | unset($this->entities[$entity->getGid()]); |
102 | 102 | foreach ($this->getKeys($entity) as $key) { |
103 | 103 | unset($this->gids[$key]); |