util: remove duplicate checks
Signed-off-by: Varun Patil <varunpatil@ucla.edu>pull/563/head
parent
bffefdd3ec
commit
5c9f1c4915
|
@ -25,23 +25,16 @@ namespace OCA\Memories\ClustersBackend;
|
||||||
|
|
||||||
use OCA\Memories\Db\TimelineQuery;
|
use OCA\Memories\Db\TimelineQuery;
|
||||||
use OCA\Memories\Exceptions;
|
use OCA\Memories\Exceptions;
|
||||||
use OCP\App\IAppManager;
|
use OCA\Memories\Util;
|
||||||
use OCP\IUserSession;
|
|
||||||
|
|
||||||
class AlbumsBackend extends Backend
|
class AlbumsBackend extends Backend
|
||||||
{
|
{
|
||||||
protected TimelineQuery $timelineQuery;
|
protected TimelineQuery $timelineQuery;
|
||||||
protected string $userId;
|
|
||||||
protected IAppManager $appManager;
|
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
TimelineQuery $timelineQuery,
|
TimelineQuery $timelineQuery
|
||||||
IUserSession $userSession,
|
|
||||||
IAppManager $appManager
|
|
||||||
) {
|
) {
|
||||||
$this->timelineQuery = $timelineQuery;
|
$this->timelineQuery = $timelineQuery;
|
||||||
$this->userId = $userSession->getUser()->getUID();
|
|
||||||
$this->appManager = $appManager;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function appName(): string
|
public function appName(): string
|
||||||
|
@ -51,7 +44,7 @@ class AlbumsBackend extends Backend
|
||||||
|
|
||||||
public function isEnabled(): bool
|
public function isEnabled(): bool
|
||||||
{
|
{
|
||||||
return \OCA\Memories\Util::albumsIsEnabled($this->appManager);
|
return Util::albumsIsEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function clusterName(string $name)
|
public function clusterName(string $name)
|
||||||
|
@ -68,10 +61,10 @@ class AlbumsBackend extends Backend
|
||||||
$list = [];
|
$list = [];
|
||||||
$t = (int) $request->getParam('t', 0);
|
$t = (int) $request->getParam('t', 0);
|
||||||
if ($t & 1) { // personal
|
if ($t & 1) { // personal
|
||||||
$list = array_merge($list, $this->timelineQuery->getAlbums($this->userId));
|
$list = array_merge($list, $this->timelineQuery->getAlbums(Util::getUID()));
|
||||||
}
|
}
|
||||||
if ($t & 2) { // shared
|
if ($t & 2) { // shared
|
||||||
$list = array_merge($list, $this->timelineQuery->getAlbums($this->userId, true));
|
$list = array_merge($list, $this->timelineQuery->getAlbums(Util::getUID(), true));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove elements with duplicate album_id
|
// Remove elements with duplicate album_id
|
||||||
|
@ -92,7 +85,7 @@ class AlbumsBackend extends Backend
|
||||||
public function getPhotos(string $name, ?int $limit = null): array
|
public function getPhotos(string $name, ?int $limit = null): array
|
||||||
{
|
{
|
||||||
// Get album
|
// Get album
|
||||||
$album = $this->timelineQuery->getAlbumIfAllowed($this->userId, $name);
|
$album = $this->timelineQuery->getAlbumIfAllowed(Util::getUID(), $name);
|
||||||
if (null === $album) {
|
if (null === $album) {
|
||||||
throw Exceptions::NotFound("album {$name}");
|
throw Exceptions::NotFound("album {$name}");
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,9 +25,8 @@ namespace OCA\Memories\ClustersBackend;
|
||||||
|
|
||||||
use OCA\Memories\Db\TimelineQuery;
|
use OCA\Memories\Db\TimelineQuery;
|
||||||
use OCA\Memories\Db\TimelineRoot;
|
use OCA\Memories\Db\TimelineRoot;
|
||||||
use OCP\App\IAppManager;
|
use OCA\Memories\Util;
|
||||||
use OCP\IConfig;
|
use OCP\IConfig;
|
||||||
use OCP\IUserSession;
|
|
||||||
|
|
||||||
class FaceRecognitionBackend extends Backend
|
class FaceRecognitionBackend extends Backend
|
||||||
{
|
{
|
||||||
|
@ -35,19 +34,13 @@ class FaceRecognitionBackend extends Backend
|
||||||
|
|
||||||
public TimelineRoot $root;
|
public TimelineRoot $root;
|
||||||
protected TimelineQuery $timelineQuery;
|
protected TimelineQuery $timelineQuery;
|
||||||
protected string $userId;
|
|
||||||
protected IAppManager $appManager;
|
|
||||||
protected IConfig $config;
|
protected IConfig $config;
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
TimelineQuery $timelineQuery,
|
TimelineQuery $timelineQuery,
|
||||||
IUserSession $userSession,
|
|
||||||
IAppManager $appManager,
|
|
||||||
IConfig $config
|
IConfig $config
|
||||||
) {
|
) {
|
||||||
$this->timelineQuery = $timelineQuery;
|
$this->timelineQuery = $timelineQuery;
|
||||||
$this->userId = $userSession->getUser()->getUID();
|
|
||||||
$this->appManager = $appManager;
|
|
||||||
$this->config = $config;
|
$this->config = $config;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -58,8 +51,8 @@ class FaceRecognitionBackend extends Backend
|
||||||
|
|
||||||
public function isEnabled(): bool
|
public function isEnabled(): bool
|
||||||
{
|
{
|
||||||
return \OCA\Memories\Util::facerecognitionIsInstalled($this->appManager)
|
return Util::facerecognitionIsInstalled()
|
||||||
&& \OCA\Memories\Util::facerecognitionIsEnabled($this->config, $this->userId);
|
&& Util::facerecognitionIsEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getClusters(): array
|
public function getClusters(): array
|
||||||
|
|
|
@ -25,20 +25,17 @@ namespace OCA\Memories\ClustersBackend;
|
||||||
|
|
||||||
use OCA\Memories\Db\TimelineQuery;
|
use OCA\Memories\Db\TimelineQuery;
|
||||||
use OCA\Memories\Db\TimelineRoot;
|
use OCA\Memories\Db\TimelineRoot;
|
||||||
use OCP\IUserSession;
|
use OCA\Memories\Util;
|
||||||
|
|
||||||
class PlacesBackend extends Backend
|
class PlacesBackend extends Backend
|
||||||
{
|
{
|
||||||
public TimelineRoot $root;
|
public TimelineRoot $root;
|
||||||
protected TimelineQuery $timelineQuery;
|
protected TimelineQuery $timelineQuery;
|
||||||
protected string $userId;
|
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
TimelineQuery $timelineQuery,
|
TimelineQuery $timelineQuery
|
||||||
IUserSession $userSession
|
|
||||||
) {
|
) {
|
||||||
$this->timelineQuery = $timelineQuery;
|
$this->timelineQuery = $timelineQuery;
|
||||||
$this->userId = $userSession->getUser()->getUID();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function appName(): string
|
public function appName(): string
|
||||||
|
@ -48,7 +45,7 @@ class PlacesBackend extends Backend
|
||||||
|
|
||||||
public function isEnabled(): bool
|
public function isEnabled(): bool
|
||||||
{
|
{
|
||||||
return \OCA\Memories\Util::placesGISType() > 0;
|
return Util::placesGISType() > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getClusters(): array
|
public function getClusters(): array
|
||||||
|
|
|
@ -25,8 +25,7 @@ namespace OCA\Memories\ClustersBackend;
|
||||||
|
|
||||||
use OCA\Memories\Db\TimelineQuery;
|
use OCA\Memories\Db\TimelineQuery;
|
||||||
use OCA\Memories\Db\TimelineRoot;
|
use OCA\Memories\Db\TimelineRoot;
|
||||||
use OCP\App\IAppManager;
|
use OCA\Memories\Util;
|
||||||
use OCP\IUserSession;
|
|
||||||
|
|
||||||
class RecognizeBackend extends Backend
|
class RecognizeBackend extends Backend
|
||||||
{
|
{
|
||||||
|
@ -34,17 +33,11 @@ class RecognizeBackend extends Backend
|
||||||
|
|
||||||
public TimelineRoot $root;
|
public TimelineRoot $root;
|
||||||
protected TimelineQuery $timelineQuery;
|
protected TimelineQuery $timelineQuery;
|
||||||
protected string $userId;
|
|
||||||
protected IAppManager $appManager;
|
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
TimelineQuery $timelineQuery,
|
TimelineQuery $timelineQuery
|
||||||
IUserSession $userSession,
|
|
||||||
IAppManager $appManager
|
|
||||||
) {
|
) {
|
||||||
$this->timelineQuery = $timelineQuery;
|
$this->timelineQuery = $timelineQuery;
|
||||||
$this->userId = $userSession->getUser()->getUID();
|
|
||||||
$this->appManager = $appManager;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function appName(): string
|
public function appName(): string
|
||||||
|
@ -54,12 +47,12 @@ class RecognizeBackend extends Backend
|
||||||
|
|
||||||
public function isEnabled(): bool
|
public function isEnabled(): bool
|
||||||
{
|
{
|
||||||
return \OCA\Memories\Util::recognizeIsEnabled($this->appManager);
|
return Util::recognizeIsEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getClusters(): array
|
public function getClusters(): array
|
||||||
{
|
{
|
||||||
return $this->timelineQuery->getPeopleRecognize($this->root, $this->userId);
|
return $this->timelineQuery->getPeopleRecognize($this->root, Util::getUID());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getPhotos(string $name, ?int $limit = null): array
|
public function getPhotos(string $name, ?int $limit = null): array
|
||||||
|
|
|
@ -25,24 +25,17 @@ namespace OCA\Memories\ClustersBackend;
|
||||||
|
|
||||||
use OCA\Memories\Db\TimelineQuery;
|
use OCA\Memories\Db\TimelineQuery;
|
||||||
use OCA\Memories\Db\TimelineRoot;
|
use OCA\Memories\Db\TimelineRoot;
|
||||||
use OCP\App\IAppManager;
|
use OCA\Memories\Util;
|
||||||
use OCP\IUserSession;
|
|
||||||
|
|
||||||
class TagsBackend extends Backend
|
class TagsBackend extends Backend
|
||||||
{
|
{
|
||||||
public TimelineRoot $root;
|
public TimelineRoot $root;
|
||||||
protected TimelineQuery $timelineQuery;
|
protected TimelineQuery $timelineQuery;
|
||||||
protected string $userId;
|
|
||||||
protected IAppManager $appManager;
|
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
TimelineQuery $timelineQuery,
|
TimelineQuery $timelineQuery
|
||||||
IUserSession $userSession,
|
|
||||||
IAppManager $appManager
|
|
||||||
) {
|
) {
|
||||||
$this->timelineQuery = $timelineQuery;
|
$this->timelineQuery = $timelineQuery;
|
||||||
$this->userId = $userSession->getUser()->getUID();
|
|
||||||
$this->appManager = $appManager;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function appName(): string
|
public function appName(): string
|
||||||
|
@ -52,7 +45,7 @@ class TagsBackend extends Backend
|
||||||
|
|
||||||
public function isEnabled(): bool
|
public function isEnabled(): bool
|
||||||
{
|
{
|
||||||
return \OCA\Memories\Util::tagsIsEnabled($this->appManager);
|
return Util::tagsIsEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getClusters(): array
|
public function getClusters(): array
|
||||||
|
|
|
@ -165,7 +165,7 @@ class DaysController extends GenericApiController
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filter for one album
|
// Filter for one album
|
||||||
if ($this->albumsIsEnabled()) {
|
if (Util::albumsIsEnabled()) {
|
||||||
if ($albumId = $this->request->getParam('album')) {
|
if ($albumId = $this->request->getParam('album')) {
|
||||||
$transforms[] = [$this->timelineQuery, 'transformAlbumFilter', $albumId];
|
$transforms[] = [$this->timelineQuery, 'transformAlbumFilter', $albumId];
|
||||||
}
|
}
|
||||||
|
@ -187,7 +187,7 @@ class DaysController extends GenericApiController
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filter only for one face on Recognize
|
// Filter only for one face on Recognize
|
||||||
if (($recognize = $this->request->getParam('recognize')) && $this->recognizeIsEnabled()) {
|
if (($recognize = $this->request->getParam('recognize')) && Util::recognizeIsEnabled()) {
|
||||||
$transforms[] = [$this->timelineQuery, 'transformPeopleRecognitionFilter', $recognize, $aggregateOnly];
|
$transforms[] = [$this->timelineQuery, 'transformPeopleRecognitionFilter', $recognize, $aggregateOnly];
|
||||||
|
|
||||||
$faceRect = $this->request->getParam('facerect');
|
$faceRect = $this->request->getParam('facerect');
|
||||||
|
@ -197,7 +197,7 @@ class DaysController extends GenericApiController
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filter only for one face on Face Recognition
|
// Filter only for one face on Face Recognition
|
||||||
if (($face = $this->request->getParam('facerecognition')) && $this->facerecognitionIsEnabled()) {
|
if (($face = $this->request->getParam('facerecognition')) && Util::facerecognitionIsEnabled()) {
|
||||||
$currentModel = (int) $this->config->getAppValue('facerecognition', 'model', -1);
|
$currentModel = (int) $this->config->getAppValue('facerecognition', 'model', -1);
|
||||||
$transforms[] = [$this->timelineQuery, 'transformPeopleFaceRecognitionFilter', $currentModel, $face];
|
$transforms[] = [$this->timelineQuery, 'transformPeopleFaceRecognitionFilter', $currentModel, $face];
|
||||||
|
|
||||||
|
@ -208,17 +208,13 @@ class DaysController extends GenericApiController
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filter only for one tag
|
// Filter only for one tag
|
||||||
if ($this->tagsIsEnabled()) {
|
if (($tagName = $this->request->getParam('tag')) && Util::tagsIsEnabled()) {
|
||||||
if ($tagName = $this->request->getParam('tag')) {
|
$transforms[] = [$this->timelineQuery, 'transformTagFilter', $tagName];
|
||||||
$transforms[] = [$this->timelineQuery, 'transformTagFilter', $tagName];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filter only for one place
|
// Filter only for one place
|
||||||
if ($this->placesIsEnabled()) {
|
if (($locationId = $this->request->getParam('place')) && Util::placesGISType() > 0) {
|
||||||
if ($locationId = $this->request->getParam('place')) {
|
$transforms[] = [$this->timelineQuery, 'transformPlaceFilter', (int) $locationId];
|
||||||
$transforms[] = [$this->timelineQuery, 'transformPlaceFilter', (int) $locationId];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filter geological bounds
|
// Filter geological bounds
|
||||||
|
|
|
@ -38,7 +38,6 @@ abstract class GenericApiController extends Controller
|
||||||
{
|
{
|
||||||
use GenericApiControllerFs;
|
use GenericApiControllerFs;
|
||||||
use GenericApiControllerParams;
|
use GenericApiControllerParams;
|
||||||
use GenericApiControllerUtils;
|
|
||||||
|
|
||||||
protected IConfig $config;
|
protected IConfig $config;
|
||||||
protected IUserSession $userSession;
|
protected IUserSession $userSession;
|
||||||
|
|
|
@ -36,7 +36,6 @@ use OCP\IUserSession;
|
||||||
trait GenericApiControllerFs
|
trait GenericApiControllerFs
|
||||||
{
|
{
|
||||||
use GenericApiControllerParams;
|
use GenericApiControllerParams;
|
||||||
use GenericApiControllerUtils;
|
|
||||||
|
|
||||||
protected IConfig $config;
|
protected IConfig $config;
|
||||||
protected IUserSession $userSession;
|
protected IUserSession $userSession;
|
||||||
|
@ -50,7 +49,7 @@ trait GenericApiControllerFs
|
||||||
$root = new TimelineRoot();
|
$root = new TimelineRoot();
|
||||||
|
|
||||||
// Albums have no folder
|
// Albums have no folder
|
||||||
if ($this->albumsIsEnabled() && $this->request->getParam('album')) {
|
if ($this->request->getParam('album') && Util::albumsIsEnabled()) {
|
||||||
if (null !== $user) {
|
if (null !== $user) {
|
||||||
return $root;
|
return $root;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,80 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
declare(strict_types=1);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @copyright Copyright (c) 2023 Varun Patil <radialapps@gmail.com>
|
|
||||||
* @author Varun Patil <radialapps@gmail.com>
|
|
||||||
* @license AGPL-3.0-or-later
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU Affero General Public License as
|
|
||||||
* published by the Free Software Foundation, either version 3 of the
|
|
||||||
* License, or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU Affero General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Affero General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
namespace OCA\Memories\Controller;
|
|
||||||
|
|
||||||
use OCA\Memories\Util;
|
|
||||||
use OCP\App\IAppManager;
|
|
||||||
use OCP\IConfig;
|
|
||||||
|
|
||||||
trait GenericApiControllerUtils
|
|
||||||
{
|
|
||||||
protected IAppManager $appManager;
|
|
||||||
protected IConfig $config;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if albums are enabled for this user.
|
|
||||||
*/
|
|
||||||
protected function albumsIsEnabled(): bool
|
|
||||||
{
|
|
||||||
return Util::albumsIsEnabled($this->appManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if tags is enabled for this user.
|
|
||||||
*/
|
|
||||||
protected function tagsIsEnabled(): bool
|
|
||||||
{
|
|
||||||
return Util::tagsIsEnabled($this->appManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if recognize is enabled for this user.
|
|
||||||
*/
|
|
||||||
protected function recognizeIsEnabled(): bool
|
|
||||||
{
|
|
||||||
return Util::recognizeIsEnabled($this->appManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check if facerecognition is installed and enabled for this user.
|
|
||||||
protected function facerecognitionIsInstalled(): bool
|
|
||||||
{
|
|
||||||
return Util::facerecognitionIsInstalled($this->appManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if facerecognition is enabled for this user.
|
|
||||||
*/
|
|
||||||
protected function facerecognitionIsEnabled(): bool
|
|
||||||
{
|
|
||||||
return Util::facerecognitionIsEnabled($this->config, Util::getUID());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if geolocation is enabled for this user.
|
|
||||||
*/
|
|
||||||
protected function placesIsEnabled(): bool
|
|
||||||
{
|
|
||||||
return Util::placesGISType() > 0;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -299,7 +299,7 @@ class ImageController extends GenericApiController
|
||||||
private function getTags(int $fileId): array
|
private function getTags(int $fileId): array
|
||||||
{
|
{
|
||||||
// Make sure tags are enabled
|
// Make sure tags are enabled
|
||||||
if (!Util::tagsIsEnabled($this->appManager)) {
|
if (!Util::tagsIsEnabled()) {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@ namespace OCA\Memories\Controller;
|
||||||
|
|
||||||
use OCA\Files\Event\LoadSidebar;
|
use OCA\Files\Event\LoadSidebar;
|
||||||
use OCA\Memories\AppInfo\Application;
|
use OCA\Memories\AppInfo\Application;
|
||||||
|
use OCA\Memories\Util;
|
||||||
use OCP\App\IAppManager;
|
use OCP\App\IAppManager;
|
||||||
use OCP\AppFramework\Controller;
|
use OCP\AppFramework\Controller;
|
||||||
use OCP\AppFramework\Http\ContentSecurityPolicy;
|
use OCP\AppFramework\Http\ContentSecurityPolicy;
|
||||||
|
@ -13,7 +14,7 @@ use OCP\EventDispatcher\IEventDispatcher;
|
||||||
use OCP\IConfig;
|
use OCP\IConfig;
|
||||||
use OCP\IRequest;
|
use OCP\IRequest;
|
||||||
use OCP\IUserSession;
|
use OCP\IUserSession;
|
||||||
use OCP\Util;
|
use OCP\Util as OCPUtil;
|
||||||
|
|
||||||
class PageController extends Controller
|
class PageController extends Controller
|
||||||
{
|
{
|
||||||
|
@ -58,7 +59,7 @@ class PageController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
// Scripts
|
// Scripts
|
||||||
Util::addScript($this->appName, 'memories-main');
|
OCPUtil::addScript($this->appName, 'memories-main');
|
||||||
$this->eventDispatcher->dispatchTyped(new LoadSidebar());
|
$this->eventDispatcher->dispatchTyped(new LoadSidebar());
|
||||||
|
|
||||||
// Configuration
|
// Configuration
|
||||||
|
@ -81,19 +82,19 @@ class PageController extends Controller
|
||||||
$pi('enableTopMemories', 'true');
|
$pi('enableTopMemories', 'true');
|
||||||
|
|
||||||
// Apps enabled
|
// Apps enabled
|
||||||
$this->initialState->provideInitialState('systemtags', true === $this->appManager->isEnabledForUser('systemtags'));
|
$this->initialState->provideInitialState('systemtags', Util::tagsIsEnabled());
|
||||||
$this->initialState->provideInitialState('recognize', \OCA\Memories\Util::recognizeIsEnabled($this->appManager));
|
$this->initialState->provideInitialState('recognize', Util::recognizeIsEnabled());
|
||||||
$this->initialState->provideInitialState('facerecognitionInstalled', \OCA\Memories\Util::facerecognitionIsInstalled($this->appManager));
|
$this->initialState->provideInitialState('facerecognitionInstalled', Util::facerecognitionIsInstalled());
|
||||||
$this->initialState->provideInitialState('facerecognitionEnabled', \OCA\Memories\Util::facerecognitionIsEnabled($this->config, $uid));
|
$this->initialState->provideInitialState('facerecognitionEnabled', Util::facerecognitionIsEnabled());
|
||||||
$this->initialState->provideInitialState('albums', \OCA\Memories\Util::albumsIsEnabled($this->appManager));
|
$this->initialState->provideInitialState('albums', Util::albumsIsEnabled());
|
||||||
|
|
||||||
// Common state
|
// Common state
|
||||||
self::provideCommonInitialState($this->initialState);
|
self::provideCommonInitialState($this->initialState);
|
||||||
|
|
||||||
// Extra translations
|
// Extra translations
|
||||||
if (\OCA\Memories\Util::recognizeIsEnabled($this->appManager)) {
|
if (Util::recognizeIsEnabled()) {
|
||||||
// Auto translation for tags
|
// Auto translation for tags
|
||||||
Util::addTranslations('recognize');
|
OCPUtil::addTranslations('recognize');
|
||||||
}
|
}
|
||||||
|
|
||||||
$response = new TemplateResponse($this->appName, 'main');
|
$response = new TemplateResponse($this->appName, 'main');
|
||||||
|
|
|
@ -39,7 +39,7 @@ class TagsController extends GenericApiController
|
||||||
{
|
{
|
||||||
return Util::guardEx(function () use ($id, $add, $remove) {
|
return Util::guardEx(function () use ($id, $add, $remove) {
|
||||||
// Check tags enabled for this user
|
// Check tags enabled for this user
|
||||||
if (!$this->tagsIsEnabled()) {
|
if (!Util::tagsIsEnabled()) {
|
||||||
throw Exceptions::NotEnabled('Tags');
|
throw Exceptions::NotEnabled('Tags');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
33
lib/Util.php
33
lib/Util.php
|
@ -59,8 +59,10 @@ class Util
|
||||||
/**
|
/**
|
||||||
* Check if albums are enabled for this user.
|
* Check if albums are enabled for this user.
|
||||||
*/
|
*/
|
||||||
public static function albumsIsEnabled(IAppManager &$appManager): bool
|
public static function albumsIsEnabled(): bool
|
||||||
{
|
{
|
||||||
|
$appManager = \OC::$server->get(IAppManager::class);
|
||||||
|
|
||||||
if (!$appManager->isEnabledForUser('photos')) {
|
if (!$appManager->isEnabledForUser('photos')) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -72,19 +74,21 @@ class Util
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if tags is enabled for this user.
|
* Check if tags is enabled for this user.
|
||||||
*
|
|
||||||
* @param mixed $appManager
|
|
||||||
*/
|
*/
|
||||||
public static function tagsIsEnabled(&$appManager): bool
|
public static function tagsIsEnabled(): bool
|
||||||
{
|
{
|
||||||
|
$appManager = \OC::$server->get(IAppManager::class);
|
||||||
|
|
||||||
return $appManager->isEnabledForUser('systemtags');
|
return $appManager->isEnabledForUser('systemtags');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if recognize is enabled for this user.
|
* Check if recognize is enabled for this user.
|
||||||
*/
|
*/
|
||||||
public static function recognizeIsEnabled(IAppManager &$appManager): bool
|
public static function recognizeIsEnabled(): bool
|
||||||
{
|
{
|
||||||
|
$appManager = \OC::$server->get(IAppManager::class);
|
||||||
|
|
||||||
if (!$appManager->isEnabledForUser('recognize')) {
|
if (!$appManager->isEnabledForUser('recognize')) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -105,9 +109,16 @@ class Util
|
||||||
/**
|
/**
|
||||||
* Check if Face Recognition is enabled by the user.
|
* Check if Face Recognition is enabled by the user.
|
||||||
*/
|
*/
|
||||||
public static function facerecognitionIsEnabled(IConfig &$config, string $userId): bool
|
public static function facerecognitionIsEnabled(): bool
|
||||||
{
|
{
|
||||||
$e = $config->getUserValue($userId, 'facerecognition', 'enabled', 'false');
|
try {
|
||||||
|
$uid = self::getUID();
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$config = \OC::$server->get(IConfig::class);
|
||||||
|
$e = $config->getUserValue($uid, 'facerecognition', 'enabled', 'false');
|
||||||
|
|
||||||
return 'true' === $e;
|
return 'true' === $e;
|
||||||
}
|
}
|
||||||
|
@ -115,8 +126,10 @@ class Util
|
||||||
/**
|
/**
|
||||||
* Check if Face Recognition is installed and enabled for this user.
|
* Check if Face Recognition is installed and enabled for this user.
|
||||||
*/
|
*/
|
||||||
public static function facerecognitionIsInstalled(IAppManager &$appManager): bool
|
public static function facerecognitionIsInstalled(): bool
|
||||||
{
|
{
|
||||||
|
$appManager = \OC::$server->get(IAppManager::class);
|
||||||
|
|
||||||
if (!$appManager->isEnabledForUser('facerecognition')) {
|
if (!$appManager->isEnabledForUser('facerecognition')) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -129,8 +142,10 @@ class Util
|
||||||
/**
|
/**
|
||||||
* Check if link sharing is allowed.
|
* Check if link sharing is allowed.
|
||||||
*/
|
*/
|
||||||
public static function isLinkSharingEnabled(IConfig &$config): bool
|
public static function isLinkSharingEnabled(): bool
|
||||||
{
|
{
|
||||||
|
$config = \OC::$server->get(IConfig::class);
|
||||||
|
|
||||||
// Check if the shareAPI is enabled
|
// Check if the shareAPI is enabled
|
||||||
if ('yes' !== $config->getAppValue('core', 'shareapi_enabled', 'yes')) {
|
if ('yes' !== $config->getAppValue('core', 'shareapi_enabled', 'yes')) {
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -12,7 +12,7 @@ trait UtilController
|
||||||
/**
|
/**
|
||||||
* Run a function and catch exceptions to return HTTP response.
|
* Run a function and catch exceptions to return HTTP response.
|
||||||
*
|
*
|
||||||
* @param Function $function
|
* @param mixed $function
|
||||||
*/
|
*/
|
||||||
public static function guardEx($function): Http\Response
|
public static function guardEx($function): Http\Response
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue