Update copyright
[friendica.git/.git] / src / Model / Verb.php
1 <?php
2 /**
3  * @copyright Copyright (C) 2010-2021, the Friendica project
4  *
5  * @license GNU AGPL version 3 or any later version
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU Affero General Public License as
9  * published by the Free Software Foundation, either version 3 of the
10  * License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU Affero General Public License for more details.
16  *
17  * You should have received a copy of the GNU Affero General Public License
18  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
19  *
20  */
21
22 namespace Friendica\Model;
23
24 use Friendica\Database\Database;
25 use Friendica\Database\DBA;
26
27 class Verb
28 {
29         /**
30          * Insert a verb record and return its id
31          *
32          * @param string $verb
33          *
34          * @return integer verb id
35          * @throws \Exception
36          */
37         public static function getID(string $verb)
38         {
39                 if (empty($verb)) {
40                         return 0;
41                 }
42
43                 $verb_record = DBA::selectFirst('verb', ['id'], ['name' => $verb]);
44                 if (DBA::isResult($verb_record)) {
45                         return $verb_record['id'];
46                 }
47
48                 DBA::insert('verb', ['name' => $verb], Database::INSERT_IGNORE);
49
50                 return DBA::lastInsertId();
51         }
52
53         /**
54          * Return verb name for the given ID
55          *
56          * @param integer $id
57          * @return string verb
58          */
59         public static function getByID(int $id)
60         {
61                 if (empty($id)) {
62                         return '';
63                 }
64
65                 $verb_record = DBA::selectFirst('verb', ['name'], ['id' => $id]);
66                 if (!DBA::isResult($verb_record)) {
67                         return '';
68                 }
69
70                 return $verb_record['name'];
71         }
72 }