<?php
/**
- * @copyright Copyright (C) 2020, Friendica
+ * @copyright Copyright (C) 2010-2022, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
* Insert an item-uri record and return its id
*
* @param array $fields Item-uri fields
- *
* @return int|null item-uri id
* @throws \Exception
*/
* Searched for an id of a given uri. Adds it, if not existing yet.
*
* @param string $uri
- *
* @return integer item-uri id
* @throws \Exception
*/
- public static function getIdByURI($uri)
+ public static function getIdByURI(string $uri): int
{
+ if (empty($uri)) {
+ return 0;
+ }
+
// If the URI gets too long we only take the first parts and hope for best
$uri = substr($uri, 0, 255);
return self::insert(['uri' => $uri]);
}
+ return $itemuri['id'];
+ }
+ /**
+ * Searched for an id of a given guid.
+ *
+ * @param string $guid
+ * @return integer item-uri id
+ * @throws \Exception
+ */
+ public static function getIdByGUID(string $guid): int
+ {
+ // If the GUID gets too long we only take the first parts and hope for best
+ $guid = substr($guid, 0, 255);
+
+ $itemuri = DBA::selectFirst('item-uri', ['id'], ['guid' => $guid]);
+
+ if (!DBA::isResult($itemuri)) {
+ return 0;
+ }
+
return $itemuri['id'];
}
}