diff --git a/lib/Api/V1Api.php b/lib/Api/V1Api.php
index daaa6ff12..5c4e61698 100644
--- a/lib/Api/V1Api.php
+++ b/lib/Api/V1Api.php
@@ -3,12 +3,9 @@
namespace OCA\Tables\Api;
use OCA\Tables\Errors\InternalError;
-use OCA\Tables\Errors\NotFoundError;
use OCA\Tables\Errors\PermissionError;
use OCA\Tables\Service\ColumnService;
use OCA\Tables\Service\RowService;
-use OCP\AppFramework\Db\DoesNotExistException;
-use OCP\AppFramework\Db\MultipleObjectsReturnedException;
class V1Api {
private RowService $rowService;
diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php
index 12af9ab48..3679992a9 100644
--- a/lib/AppInfo/Application.php
+++ b/lib/AppInfo/Application.php
@@ -8,11 +8,9 @@
use OCA\Tables\Listener\AnalyticsDatasourceListener;
use OCA\Tables\Listener\TablesReferenceListener;
use OCA\Tables\Listener\UserDeletedListener;
-use OCA\Tables\Reference\LegacyReferenceProvider;
-use OCA\Tables\Reference\RowReferenceProvider;
use OCA\Tables\Reference\ContentReferenceProvider;
+use OCA\Tables\Reference\LegacyReferenceProvider;
use OCA\Tables\Reference\ReferenceProvider;
-use OCA\Tables\Reference\ViewReferenceProvider;
use OCA\Tables\Search\SearchTablesProvider;
use OCP\AppFramework\App;
use OCP\AppFramework\Bootstrap\IBootContext;
diff --git a/lib/Controller/Api1Controller.php b/lib/Controller/Api1Controller.php
index e49e2fc41..83535c345 100644
--- a/lib/Controller/Api1Controller.php
+++ b/lib/Controller/Api1Controller.php
@@ -510,7 +510,7 @@ public function createRowInView(
];
}
- return $this->handleError(function () use ( $viewId, $dataNew) {
+ return $this->handleError(function () use ($viewId, $dataNew) {
return $this->rowService->create(null, $viewId, $dataNew);
});
}
@@ -553,8 +553,8 @@ public function getRow(int $rowId): DataResponse {
* @NoCSRFRequired
*/
public function updateRow(int $rowId,
- ?int $viewId,
- array $data): DataResponse {
+ ?int $viewId,
+ array $data): DataResponse {
$dataNew = [];
foreach ($data as $key => $value) {
$dataNew[] = [
diff --git a/lib/Controller/SearchController.php b/lib/Controller/SearchController.php
index 247a19f1a..4be328cad 100644
--- a/lib/Controller/SearchController.php
+++ b/lib/Controller/SearchController.php
@@ -3,7 +3,6 @@
namespace OCA\Tables\Controller;
use OCA\Tables\AppInfo\Application;
-use OCA\Tables\Service\ImportService;
use OCA\Tables\Service\SearchService;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\DataResponse;
diff --git a/lib/Db/ShareMapper.php b/lib/Db/ShareMapper.php
index a5aa08ef9..b4c1267de 100644
--- a/lib/Db/ShareMapper.php
+++ b/lib/Db/ShareMapper.php
@@ -15,7 +15,7 @@ class ShareMapper extends QBMapper {
protected string $table = 'tables_shares';
protected LoggerInterface $logger;
- public function __construct( LoggerInterface $logger, IDBConnection $db) {
+ public function __construct(LoggerInterface $logger, IDBConnection $db) {
parent::__construct($db, $this->table, Share::class);
$this->logger = $logger;
}
diff --git a/lib/Reference/LegacyReferenceProvider.php b/lib/Reference/LegacyReferenceProvider.php
index 5e4dfdb14..86088eba3 100644
--- a/lib/Reference/LegacyReferenceProvider.php
+++ b/lib/Reference/LegacyReferenceProvider.php
@@ -3,21 +3,18 @@
namespace OCA\Tables\Reference;
use OC\Collaboration\Reference\ReferenceManager;
-use OCA\Tables\AppInfo\Application;
-use OCP\Collaboration\Reference\ADiscoverableReferenceProvider;
use OCP\Collaboration\Reference\IReference;
use OCP\Collaboration\Reference\IReferenceProvider;
-use OCP\Collaboration\Reference\ISearchableReferenceProvider;
use OCP\IL10N;
use OCP\IURLGenerator;
class LegacyReferenceProvider implements IReferenceProvider {
- private TableReferenceHelper $referenceHelper;
+ private ReferenceHelper $referenceHelper;
private ReferenceManager $referenceManager;
private IURLGenerator $urlGenerator;
private IL10N $l10n;
- public function __construct(IL10N $l10n, IURLGenerator $urlGenerator, TableReferenceHelper $referenceHelper, ReferenceManager $referenceManager) {
+ public function __construct(IL10N $l10n, IURLGenerator $urlGenerator, ReferenceHelper $referenceHelper, ReferenceManager $referenceManager) {
$this->referenceHelper = $referenceHelper;
$this->referenceManager = $referenceManager;
$this->urlGenerator = $urlGenerator;
diff --git a/lib/Reference/ReferenceProvider.php b/lib/Reference/ReferenceProvider.php
index f783204c3..fb0a647e4 100644
--- a/lib/Reference/ReferenceProvider.php
+++ b/lib/Reference/ReferenceProvider.php
@@ -6,7 +6,6 @@
use OCA\Tables\AppInfo\Application;
use OCP\Collaboration\Reference\ADiscoverableReferenceProvider;
use OCP\Collaboration\Reference\IReference;
-use OCP\Collaboration\Reference\IReferenceProvider;
use OCP\Collaboration\Reference\ISearchableReferenceProvider;
use OCP\IL10N;
use OCP\IURLGenerator;
diff --git a/lib/Reference/stuff/RowReferenceHelper.php b/lib/Reference/stuff/RowReferenceHelper.php
deleted file mode 100644
index 2b04fa240..000000000
--- a/lib/Reference/stuff/RowReferenceHelper.php
+++ /dev/null
@@ -1,132 +0,0 @@
-userId === null) {
- return false;
- }
- $start = $this->urlGenerator->getAbsoluteURL('/apps/' . Application::APP_ID);
- $startIndex = $this->urlGenerator->getAbsoluteURL('/index.php/apps/' . Application::APP_ID);
-
- // link example:
- // https://nextcloud.local/apps/tables/#/table/3
- $noIndexMatch = preg_match('/^' . preg_quote($start, '/') . '\/#\/view\/\d+\/row\/\d+$/i', $referenceText) === 1;
- $indexMatch = preg_match('/^' . preg_quote($startIndex, '/') . '\/#\/view\/\d+\/row\/\d+$/i', $referenceText) === 1;
-
- return $noIndexMatch || $indexMatch;
- }
-
- /** @noinspection PhpUndefinedMethodInspection */
- /** @psalm-suppress InvalidReturnType */
- public function resolveReference(string $referenceText): ?IReference {
- if ($this->matchReference($referenceText)) {
- $viewId = $this->getTableIdFromLink($referenceText);
- $rowId = $this->getRowIdFromLink($referenceText);
- if ($viewId === null || $this->userId === null) {
- // fallback to opengraph if it matches, but somehow we can't resolve
- /** @psalm-suppress InvalidReturnStatement */
- return $this->linkReferenceProvider->resolveReference($referenceText);
- }
- try {
- $view = $this->viewService->find($viewId, false, $this->userId);
- } catch (Exception | Throwable $e) {
- /** @psalm-suppress InvalidReturnStatement */
- return $this->linkReferenceProvider->resolveReference($referenceText);
- }
-
- $reference = new Reference($referenceText);
- $viewReferenceInfo = [];
-
- if ($view->getEmoji()) {
- $reference->setDescription($view->getEmoji() . ' ' . $view->getTitle());
- $viewReferenceInfo['title'] = $view->getTitle();
- $viewReferenceInfo['emoji'] = $view->getEmoji();
- } else {
- $reference->setTitle($view->getTitle());
- $viewReferenceInfo['title'] = $view->getTitle();
- }
-
- $reference->setDescription($view->getOwnerDisplayName() ?? $view->getOwnership());
-
- $viewReferenceInfo['ownership'] = $view->getOwnership();
- $viewReferenceInfo['ownerDisplayName'] = $view->getOwnerDisplayName();
- $viewReferenceInfo['rowsCount'] = $view->getRowsCount();
- $viewReferenceInfo['columnIds'] = $view->getColumnsArray();
-
- $imageUrl = $this->urlGenerator->getAbsoluteURL(
- $this->urlGenerator->imagePath(Application::APP_ID, 'app-dark.svg')
- );
- $reference->setImageUrl($imageUrl);
-
- $viewReferenceInfo['link'] = $referenceText;
- $reference->setUrl($referenceText);
-
-
- // add Columns
- $viewReferenceInfo['columns'] = $this->columnService->findAllByView($viewId, $this->userId);
- // add rows data
- try {
- $viewReferenceInfo['rows'] = [$this->rowService->find($rowId)];
- } catch (InternalError $e) {
- } catch (PermissionError $e) {
- }
-
- $reference->setRichObject(
- $this::RICH_OBJECT_TYPE,
- $viewReferenceInfo,
- );
- return $reference;
- }
-
- return null;
- }
-
- /**
- * @param string $url
- * @return int|null
- */
- private function getRowIdFromLink(string $url): ?int {
- $start = $this->urlGenerator->getAbsoluteURL('/apps/' . Application::APP_ID);
- $startIndex = $this->urlGenerator->getAbsoluteURL('/index.php/apps/' . Application::APP_ID);
-
- preg_match('/^' . preg_quote($start, '/') . '\/#\/view\/\d+\/row\/(\d+)(?:\/[^\/]+)*$/i', $url, $matches);
- if (!$matches || count($matches) < 2) {
- preg_match('/^' . preg_quote($startIndex, '/') . '\/#\/view\/\d+\/row\/(\d+)(?:\/[^\/]+)*$/i', $url, $matches);
- }
- if ($matches && count($matches) > 1) {
- return (int) $matches[1];
- }
-
- return null;
- }
-}
diff --git a/lib/Reference/stuff/RowReferenceProvider.php b/lib/Reference/stuff/RowReferenceProvider.php
deleted file mode 100644
index 6e48c8735..000000000
--- a/lib/Reference/stuff/RowReferenceProvider.php
+++ /dev/null
@@ -1,61 +0,0 @@
-referenceHelper = $referenceHelper;
- $this->referenceManager = $referenceManager;
- }
-
- /**
- * @inheritDoc
- */
- public function matchReference(string $referenceText): bool {
- return $this->referenceHelper->matchReference($referenceText);
- }
-
- /**
- * @inheritDoc
- */
- public function resolveReference(string $referenceText): ?IReference {
- return $this->referenceHelper->resolveReference($referenceText);
- }
-
- /**
- * @param string $url
- * @return int|null
- */
- public function getTableIdFromLink(string $url): ?int {
- return $this->referenceHelper->getTableIdFromLink($url);
- }
-
- /**
- * @inheritDoc
- */
- public function getCachePrefix(string $referenceId): string {
- return $this->referenceHelper->getCachePrefix($referenceId);
- }
-
- /**
- * @inheritDoc
- */
- public function getCacheKey(string $referenceId): ?string {
- return $this->referenceHelper->getCacheKey($referenceId);
- }
-
- /**
- * @param string $userId
- * @return void
- */
- public function invalidateUserCache(string $userId): void {
- $this->referenceManager->invalidateCache($userId);
- }
-}
diff --git a/lib/Reference/stuff/SearchableTableReferenceProvider.php b/lib/Reference/stuff/SearchableTableReferenceProvider.php
deleted file mode 100644
index 920f60344..000000000
--- a/lib/Reference/stuff/SearchableTableReferenceProvider.php
+++ /dev/null
@@ -1,112 +0,0 @@
-referenceHelper = $referenceHelper;
- $this->l10n = $l10n;
- $this->urlGenerator = $urlGenerator;
- $this->referenceManager = $referenceManager;
- }
-
- /**
- * @inheritDoc
- */
- public function getId(): string {
- return Application::APP_ID . '-ref-tables';
- }
-
- /**
- * @inheritDoc
- */
- public function getTitle(): string {
- return $this->l10n->t('Nextcloud tables');
- }
-
- /**
- * @inheritDoc
- */
- public function getOrder(): int {
- return 10;
- }
-
- /**
- * @inheritDoc
- */
- public function getIconUrl(): string {
- return $this->urlGenerator->getAbsoluteURL(
- $this->urlGenerator->imagePath(Application::APP_ID, 'app-dark.svg')
- );
- }
-
- /**
- * @inheritDoc
- */
- public function getSupportedSearchProviderIds(): array {
- return ['tables-search-tables'];
- }
-
- /**
- * @inheritDoc
- */
- public function matchReference(string $referenceText): bool {
- return $this->referenceHelper->matchReference($referenceText);
- }
-
- /**
- * @inheritDoc
- */
- public function resolveReference(string $referenceText): ?IReference {
- return $this->referenceHelper->resolveReference($referenceText);
- }
-
- /**
- * @param string $url
- * @return int|null
- */
- public function getTableIdFromLink(string $url): ?int {
- return $this->referenceHelper->getTableIdFromLink($url);
- }
-
- /**
- * @inheritDoc
- */
- public function getCachePrefix(string $referenceId): string {
- return $this->referenceHelper->getCachePrefix($referenceId);
- }
-
- /**
- * @inheritDoc
- */
- public function getCacheKey(string $referenceId): ?string {
- return $this->referenceHelper->getCacheKey($referenceId);
- }
-
- /**
- * @param string $userId
- * @return void
- */
- public function invalidateUserCache(string $userId): void {
- $this->referenceManager->invalidateCache($userId);
- }
-}
diff --git a/lib/Reference/stuff/ViewReferenceProvider.php b/lib/Reference/stuff/ViewReferenceProvider.php
deleted file mode 100644
index fba2d44d5..000000000
--- a/lib/Reference/stuff/ViewReferenceProvider.php
+++ /dev/null
@@ -1,61 +0,0 @@
-referenceHelper = $referenceHelper;
- $this->referenceManager = $referenceManager;
- }
-
- /**
- * @inheritDoc
- */
- public function matchReference(string $referenceText): bool {
- return $this->referenceHelper->matchReference($referenceText, 'view');
- }
-
- /**
- * @inheritDoc
- */
- public function resolveReference(string $referenceText): ?IReference {
- return $this->referenceHelper->resolveReference($referenceText);
- }
-
- /**
- * @param string $url
- * @return int|null
- */
- public function getTableIdFromLink(string $url): ?int {
- return $this->referenceHelper->getViewIdFromLink($url);
- }
-
- /**
- * @inheritDoc
- */
- public function getCachePrefix(string $referenceId): string {
- return $this->referenceHelper->getCachePrefix($referenceId);
- }
-
- /**
- * @inheritDoc
- */
- public function getCacheKey(string $referenceId): ?string {
- return $this->referenceHelper->getCacheKey($referenceId);
- }
-
- /**
- * @param string $userId
- * @return void
- */
- public function invalidateUserCache(string $userId): void {
- $this->referenceManager->invalidateCache($userId);
- }
-}
diff --git a/lib/Service/ColumnService.php b/lib/Service/ColumnService.php
index 683ec20e9..0bc694fe2 100644
--- a/lib/Service/ColumnService.php
+++ b/lib/Service/ColumnService.php
@@ -186,7 +186,7 @@ public function create(
if ($viewId) {
$view = $this->viewService->find($viewId);
$table = $this->tableMapper->find($view->getTableId());
- } else if ($tableId) {
+ } elseif ($tableId) {
$table = $this->tableMapper->find($tableId);
} else {
throw new InternalError('Cannot update row without table or view in context');
diff --git a/lib/Service/ColumnTypes/TextLinkBusiness.php b/lib/Service/ColumnTypes/TextLinkBusiness.php
index c0c2c09bb..d6f6d1693 100644
--- a/lib/Service/ColumnTypes/TextLinkBusiness.php
+++ b/lib/Service/ColumnTypes/TextLinkBusiness.php
@@ -17,7 +17,9 @@ public function parseValue(string $value, ?Column $column = null): string {
}
preg_match('/(http|https)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/', $value, $matches);
- if (empty($matches)) return '';
+ if (empty($matches)) {
+ return '';
+ }
return json_encode(json_encode([
'title' => $matches[0],
'resourceUrl' => $matches[0]
diff --git a/lib/Service/ImportService.php b/lib/Service/ImportService.php
index 652058419..28bc454bc 100644
--- a/lib/Service/ImportService.php
+++ b/lib/Service/ImportService.php
@@ -198,7 +198,7 @@ private function createRow(Row $row): void {
// if cell is empty
if(!$cell || $cell->getValue() === null) {
$this->logger->info('Cell is empty while fetching rows data for importing.');
- if($this->columns[$i]->getMandatory()){
+ if($this->columns[$i]->getMandatory()) {
$this->logger->warning('Mandatory column was not set');
$this->countErrors++;
return;
diff --git a/lib/Service/PermissionsService.php b/lib/Service/PermissionsService.php
index 8ddbcc3df..152e1864d 100644
--- a/lib/Service/PermissionsService.php
+++ b/lib/Service/PermissionsService.php
@@ -111,9 +111,13 @@ public function canAccessView($view, ?string $userId = null): bool {
* @throws InternalError
*/
public function canManageElementById(int $elementId, string $nodeType = 'table', ?string $userId = null): bool {
- if ($nodeType === 'table') return $this->canManageTableById($elementId, $userId);
- else if ($nodeType === 'view') return $this->canManageViewById($elementId, $userId);
- else throw new InternalError('Cannot read permission for node type '.$nodeType);
+ if ($nodeType === 'table') {
+ return $this->canManageTableById($elementId, $userId);
+ } elseif ($nodeType === 'view') {
+ return $this->canManageViewById($elementId, $userId);
+ } else {
+ throw new InternalError('Cannot read permission for node type '.$nodeType);
+ }
}
/**
@@ -229,7 +233,9 @@ public function canReadRowsByElement($element, string $nodeType, ?string $userId
* @return bool
*/
public function canCreateRows($element, string $nodeType = 'view', ?string $userId = null): bool {
- if ($nodeType === 'table') return $this->checkPermission($element, 'table', 'manage', $userId);
+ if ($nodeType === 'table') {
+ return $this->checkPermission($element, 'table', 'manage', $userId);
+ }
return $this->checkPermission($element, 'view', 'create', $userId);
}
@@ -286,7 +292,7 @@ public function canReadShare(Share $share, ?string $userId = null): bool {
return true;
}
try {
- if ($this->canManageElementById($share->getNodeId(), $share->getNodeType())){
+ if ($this->canManageElementById($share->getNodeId(), $share->getNodeType())) {
return true;
}
} catch (InternalError $e) {
@@ -415,8 +421,7 @@ private function checkPermissionById(int $elementId, string $nodeType, string $p
* @param string|null $userId
* @return bool
*/
- private function basisCheck($element, string $nodeType, ?string &$userId): bool
- {
+ private function basisCheck($element, string $nodeType, ?string &$userId): bool {
try {
$userId = $this->preCheckUserId($userId);
} catch (InternalError $e) {
diff --git a/lib/Service/RowService.php b/lib/Service/RowService.php
index 94547c611..c1b5a21c8 100644
--- a/lib/Service/RowService.php
+++ b/lib/Service/RowService.php
@@ -122,20 +122,20 @@ public function create(
):Row {
if ($viewId) {
- $view = $this->viewMapper->find($viewId);
- // security
- if (!$this->permissionsService->canCreateRows($view)) {
- throw new PermissionError('create row at the view id = '.$viewId.' is not allowed.');
- }
+ $view = $this->viewMapper->find($viewId);
+ // security
+ if (!$this->permissionsService->canCreateRows($view)) {
+ throw new PermissionError('create row at the view id = '.$viewId.' is not allowed.');
+ }
- $columns = $view->getColumnsArray();
- } else if ($tableId) {
+ $columns = $view->getColumnsArray();
+ } elseif ($tableId) {
$table = $this->tableMapper->find($tableId);
// security
if (!$this->permissionsService->canCreateRows($table, 'table')) {
throw new PermissionError('create row at the table id = '.$tableId.' is not allowed.');
}
- $columns = $this->columnMapper->findAllIdsByTable($tableId);
+ $columns = $this->columnMapper->findAllIdsByTable($tableId);
} else {
throw new InternalError('Cannot create row without table or view in context');
}
@@ -192,7 +192,7 @@ public function update(
if(!in_array($id, $rowIds)) {
throw new PermissionError('update row id = '.$item->getId().' is not allowed.');
}
- } else if ($tableId) {
+ } elseif ($tableId) {
// security
if (!$this->permissionsService->canUpdateRowsByTableId($tableId)) {
throw new PermissionError('update row id = '.$item->getId().' is not allowed.');
@@ -270,7 +270,9 @@ public function updateSet(
$d = $item->getDataArray();
foreach ($data as $dataObject) {
// Check whether the column of which the value should change is part of the table / view
- if (!in_array($dataObject['columnId'],$columnIds)) continue;
+ if (!in_array($dataObject['columnId'], $columnIds)) {
+ continue;
+ }
$d = $this->replaceOrAddData($d, $dataObject);
}
$item->setDataArray($d);
diff --git a/lib/Service/SearchService.php b/lib/Service/SearchService.php
index 52716109b..01c4a2dfd 100644
--- a/lib/Service/SearchService.php
+++ b/lib/Service/SearchService.php
@@ -6,7 +6,6 @@
use OCA\Tables\Db\View;
use OCA\Tables\Errors\PermissionError;
use OCP\AppFramework\Db\MultipleObjectsReturnedException;
-use PhpOffice\PhpSpreadsheet\Worksheet\Row;
use Psr\Log\LoggerInterface;
class SearchService extends SuperService {
diff --git a/lib/Service/TableService.php b/lib/Service/TableService.php
index f90eb4e9b..3d0c2e985 100644
--- a/lib/Service/TableService.php
+++ b/lib/Service/TableService.php
@@ -166,9 +166,9 @@ private function enhanceTable(Table $table, string $userId): void {
// (senseless if we have no user in context)
if ($userId !== '' && $userId !== $table->getOwnership()) {
try {
- $permissions = $this->shareService->getSharedPermissionsIfSharedWithMe($table->getId(), 'table', $userId);
- $table->setIsShared(true);
- $table->setOnSharePermissions($permissions);
+ $permissions = $this->shareService->getSharedPermissionsIfSharedWithMe($table->getId(), 'table', $userId);
+ $table->setIsShared(true);
+ $table->setOnSharePermissions($permissions);
} catch (NotFoundError $e) {
}
}
diff --git a/lib/Service/TableTemplateService.php b/lib/Service/TableTemplateService.php
index 86e47baf0..2e54abee0 100644
--- a/lib/Service/TableTemplateService.php
+++ b/lib/Service/TableTemplateService.php
@@ -5,7 +5,6 @@
use OCA\Tables\Db\Column;
use OCA\Tables\Db\Table;
use OCA\Tables\Errors\InternalError;
-use OCA\Tables\Errors\NotFoundError;
use OCA\Tables\Errors\PermissionError;
use OCP\AppFramework\Db\DoesNotExistException;
use OCP\AppFramework\Db\MultipleObjectsReturnedException;
@@ -76,41 +75,40 @@ public function getTemplateList(): array {
/**
* @param Table $table
* @param string $template
- * @param int $defaultViewId
* @return Table
* @throws DoesNotExistException
* @throws Exception
* @throws InternalError
* @throws MultipleObjectsReturnedException
- * @throws NotFoundError
* @throws PermissionError
*/
public function makeTemplate(Table $table, string $template): Table {
- $createColumn = function ($params) use ($table) {return $this->createColumn($params, $table->getId());};
- $createRow = function ($data) use ($table) {$this->createRow($table->getId(), $data);};
- $createView = function ($data) use ($table) {$this->createView($table, $data);};
if ($template === 'todo') {
- $this->makeTodo($createColumn, $createRow);
+ $this->makeTodo($table);
} elseif ($template === 'members') {
- $this->makeMembers($createColumn, $createRow);
+ $this->makeMembers($table);
} elseif ($template === 'weight') {
- $this->makeWeight($createColumn, $createRow);
+ $this->makeWeight($table);
} elseif ($template === 'vacation-requests') {
- $this->makeVacationRequests($createColumn, $createRow, $createView);
+ $this->makeVacationRequests($table);
} elseif ($template === 'customers') {
- $this->makeCustomers($createColumn, $createRow);
+ $this->makeCustomers($table);
} elseif ($template === 'tutorial') {
- $this->makeStartupTable($createColumn, $createRow);
+ $this->makeStartupTable($table);
}
return $table;
}
/**
* @psalm-suppress PossiblyNullReference
- * @param $createColumn
- * @param $createRow
+ * @param Table $table
+ * @throws DoesNotExistException
+ * @throws Exception
+ * @throws InternalError
+ * @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function makeWeight($createColumn, $createRow):void {
+ private function makeWeight(Table $table):void {
$columns = [];
$params = [
@@ -120,7 +118,7 @@ private function makeWeight($createColumn, $createRow):void {
'mandatory' => true,
'datetimeDefault' => 'today',
];
- $columns['date'] = $createColumn($params);
+ $columns['date'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Weight'),
@@ -129,7 +127,7 @@ private function makeWeight($createColumn, $createRow):void {
'numberMin' => 0,
'numberMax' => 200,
];
- $columns['weight'] = $createColumn($params);
+ $columns['weight'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Body fat'),
@@ -138,45 +136,45 @@ private function makeWeight($createColumn, $createRow):void {
'numberMax' => 100,
'numberSuffix' => '%',
];
- $columns['bodyFat'] = $createColumn($params);
+ $columns['bodyFat'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Feeling over all'),
'type' => 'number',
'subtype' => 'stars',
];
- $columns['feeling'] = $createColumn($params);
+ $columns['feeling'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Comments'),
'type' => 'text',
'subtype' => 'long',
];
- $columns['comment'] = $createColumn($params);
+ $columns['comment'] = $this->createColumn($table->id, $params);
// let's add some example rows
- $createRow([
+ $this->createRow($table, [
$columns['date']->getId() => '2022-03-01',
$columns['weight']->getId() => 92.5,
$columns['bodyFat']->getId() => 30,
$columns['feeling']->getId() => 4,
$columns['comment']->getId() => '',
]);
- $createRow([
+ $this->createRow($table, [
$columns['date']->getId() => '2022-03-02',
$columns['weight']->getId() => 92.7,
$columns['bodyFat']->getId() => 30.3,
$columns['feeling']->getId() => 3,
$columns['comment']->getId() => $this->l->t('feel sick'),
]);
- $createRow([
+ $this->createRow($table, [
$columns['date']->getId() => '2022-03-10',
$columns['weight']->getId() => 91,
$columns['bodyFat']->getId() => 33.1,
$columns['feeling']->getId() => 4,
$columns['comment']->getId() => '',
]);
- $createRow([
+ $this->createRow($table, [
$columns['date']->getId() => '2022-03-19',
$columns['weight']->getId() => 92.5,
$columns['bodyFat']->getId() => 30.7,
@@ -187,10 +185,14 @@ private function makeWeight($createColumn, $createRow):void {
/**
* @psalm-suppress PossiblyNullReference
- * @param $createColumn
- * @param $createRow
+ * @param Table $table
+ * @throws DoesNotExistException
+ * @throws Exception
+ * @throws InternalError
+ * @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function makeCustomers($createColumn, $createRow):void {
+ private function makeCustomers(Table $table):void {
$columns = [];
$params = [
@@ -198,21 +200,21 @@ private function makeCustomers($createColumn, $createRow):void {
'type' => 'text',
'subtype' => 'line',
];
- $columns['name'] = $createColumn($params);
+ $columns['name'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Account manager'),
'type' => 'text',
'subtype' => 'line',
];
- $columns['accountManager'] = $createColumn($params);
+ $columns['accountManager'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Contract type'),
'type' => 'text',
'subtype' => 'line',
];
- $columns['contractType'] = $createColumn($params);
+ $columns['contractType'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Contract start'),
@@ -220,14 +222,14 @@ private function makeCustomers($createColumn, $createRow):void {
'subtype' => 'date',
'datetimeDefault' => 'today',
];
- $columns['contractStart'] = $createColumn($params);
+ $columns['contractStart'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Contract end'),
'type' => 'datetime',
'subtype' => 'date',
];
- $columns['contractEnd'] = $createColumn($params);
+ $columns['contractEnd'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Description'),
@@ -235,7 +237,7 @@ private function makeCustomers($createColumn, $createRow):void {
'subtype' => 'long',
];
- $columns['description'] = $createColumn($params);
+ $columns['description'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Contact information'),
@@ -243,7 +245,7 @@ private function makeCustomers($createColumn, $createRow):void {
'subtype' => 'long',
];
- $columns['contactInformation'] = $createColumn($params);
+ $columns['contactInformation'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Quality of relationship'),
@@ -252,7 +254,7 @@ private function makeCustomers($createColumn, $createRow):void {
'numberDefault' => 30,
];
- $columns['qualityRelationship'] = $createColumn($params);
+ $columns['qualityRelationship'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Comment'),
@@ -260,10 +262,10 @@ private function makeCustomers($createColumn, $createRow):void {
'subtype' => 'long',
];
- $columns['comment'] = $createColumn($params);
+ $columns['comment'] = $this->createColumn($table->id, $params);
// let's add some example rows
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['name']->getId() => $this->l->t('Dog'),
// TRANSLATORS This is an example account manager
@@ -280,7 +282,7 @@ private function makeCustomers($createColumn, $createRow):void {
// TRANSLATORS This is an example comment
$columns['comment']->getId() => $this->l->t('Likes treats'),
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['name']->getId() => $this->l->t('Cat'),
// TRANSLATORS This is an example account manager
@@ -297,7 +299,7 @@ private function makeCustomers($createColumn, $createRow):void {
// TRANSLATORS This is an example comment
$columns['comment']->getId() => $this->l->t('New customer, let\'s see if there is more.'),
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['name']->getId() => $this->l->t('Horse'),
// TRANSLATORS This is an example account manager
@@ -318,11 +320,14 @@ private function makeCustomers($createColumn, $createRow):void {
/**
* @psalm-suppress PossiblyNullReference
- * @param $createColumn
- * @param $createRow
- * @param $createView
+ * @param Table $table
+ * @throws DoesNotExistException
+ * @throws Exception
+ * @throws InternalError
+ * @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function makeVacationRequests($createColumn, $createRow, $createView):void {
+ private function makeVacationRequests(Table $table):void {
$columns = [];
$params = [
@@ -332,7 +337,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'mandatory' => true,
];
- $columns['employee'] = $createColumn($params);
+ $columns['employee'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('from'),
@@ -342,7 +347,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'mandatory' => true,
];
- $columns['from'] = $createColumn($params);
+ $columns['from'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('to'),
@@ -352,7 +357,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'mandatory' => true,
];
- $columns['to'] = $createColumn($params);
+ $columns['to'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Number of working days'),
@@ -363,7 +368,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'mandatory' => true,
];
- $columns['workingDays'] = $createColumn($params);
+ $columns['workingDays'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Request date'),
@@ -373,7 +378,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'datetimeDefault' => 'today',
];
- $columns['dateRequest'] = $createColumn($params);
+ $columns['dateRequest'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Approved'),
@@ -381,7 +386,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'subtype' => 'check',
];
- $columns['approved'] = $createColumn($params);
+ $columns['approved'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Approve date'),
@@ -389,7 +394,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'subtype' => 'date',
];
- $columns['dateApprove'] = $createColumn($params);
+ $columns['dateApprove'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Approved by'),
@@ -397,7 +402,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'subtype' => 'line',
];
- $columns['approveBy'] = $createColumn($params);
+ $columns['approveBy'] = $this->createColumn($table->id, $params);
$params = [
@@ -406,10 +411,10 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'subtype' => 'long',
];
- $columns['comment'] = $createColumn($params);
+ $columns['comment'] = $this->createColumn($table->id, $params);
// let's add some example rows
- $createRow([
+ $this->createRow($table, [
$columns['employee']->getId() => 'Alice',
$columns['from']->getId() => '2023-02-05',
$columns['to']->getId() => '2023-02-10',
@@ -422,7 +427,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
// TRANSLATORS This is an example comment
$columns['comment']->getId() => $this->l->t('Bob will help for this time'),
]);
- $createRow([
+ $this->createRow($table, [
$columns['employee']->getId() => 'Bob',
$columns['from']->getId() => '2023-04-05',
$columns['to']->getId() => '2023-04-12',
@@ -434,7 +439,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
$columns['approveBy']->getId() => $this->l->t('The Boss'),
$columns['comment']->getId() => '',
]);
- $createRow([
+ $this->createRow($table, [
$columns['employee']->getId() => 'Evil',
$columns['from']->getId() => '2023-03-05',
$columns['to']->getId() => '2023-04-10',
@@ -446,7 +451,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
// TRANSLATORS This is an example comment
$columns['comment']->getId() => $this->l->t('We have to talk about that.'),
]);
- $createRow([
+ $this->createRow($table, [
$columns['employee']->getId() => 'Pete',
$columns['from']->getId() => '2023-12-18',
$columns['to']->getId() => '2023-12-28',
@@ -456,7 +461,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
// let's add views
- $createView(
+ $this->createView($table,
[
'title' => $this->l->t('Create Vacation Request'),
'emoji' => '️➕',
@@ -465,7 +470,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'filter' => json_encode([[["columnId" => -2, "operator" => "is-equal", "value" => "@my-name"], ["columnId" => $columns['approved']->getId(), "operator" => "is-empty", "value" => ""]]]),
]
);
- $createView(
+ $this->createView($table,
[
'title' => $this->l->t('Open Request'),
'emoji' => '️📝',
@@ -476,7 +481,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'filter' => json_encode([[["columnId" => $columns['approved']->getId(), "operator" => "is-empty", "value" => ""]]]),
]
);
- $createView(
+ $this->createView($table,
[
'title' => $this->l->t('Request Status'),
'emoji' => '️❓',
@@ -487,7 +492,7 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
'filter' => json_encode([[["columnId" => -2, "operator" => "is-equal", "value" => "@my-name"]]]),
]
);
- $createView(
+ $this->createView($table,
[
'title' => $this->l->t('Closed requests'),
'emoji' => '️✅',
@@ -502,10 +507,14 @@ private function makeVacationRequests($createColumn, $createRow, $createView):vo
/**
* @psalm-suppress PossiblyNullReference
- * @param $createColumn
- * @param $createRow
+ * @param Table $table
+ * @throws DoesNotExistException
+ * @throws Exception
+ * @throws InternalError
+ * @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function makeMembers($createColumn, $createRow):void {
+ private function makeMembers(Table $table):void {
$columns = [];
$params = [
@@ -515,7 +524,7 @@ private function makeMembers($createColumn, $createRow):void {
'mandatory' => true,
];
- $columns['name'] = $createColumn($params);
+ $columns['name'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Position'),
@@ -523,7 +532,7 @@ private function makeMembers($createColumn, $createRow):void {
'subtype' => 'line',
];
- $columns['position'] = $createColumn($params);
+ $columns['position'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Skills'),
@@ -531,7 +540,7 @@ private function makeMembers($createColumn, $createRow):void {
'subtype' => 'long',
];
- $columns['skills'] = $createColumn($params);
+ $columns['skills'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Birthday'),
@@ -539,7 +548,7 @@ private function makeMembers($createColumn, $createRow):void {
'subtype' => 'date',
];
- $columns['birthday'] = $createColumn($params);
+ $columns['birthday'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Comments'),
@@ -547,10 +556,10 @@ private function makeMembers($createColumn, $createRow):void {
'subtype' => 'long',
];
- $columns['comment'] = $createColumn($params);
+ $columns['comment'] = $this->createColumn($table->id, $params);
// let's add some example rows
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['name']->getId() => $this->l->t('Santa Claus'),
// TRANSLATORS This is an example for a "position" for a member
@@ -564,10 +573,14 @@ private function makeMembers($createColumn, $createRow):void {
/**
* @psalm-suppress PossiblyNullReference
- * @param $createColumn
- * @param $createRow
+ * @param Table $table
+ * @throws DoesNotExistException
+ * @throws Exception
+ * @throws InternalError
+ * @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function makeTodo($createColumn, $createRow): void {
+ private function makeTodo(Table $table): void {
$columns = [];
$params = [
@@ -577,7 +590,7 @@ private function makeTodo($createColumn, $createRow): void {
'mandatory' => true,
];
- $columns['task'] = $createColumn($params);
+ $columns['task'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Description'),
@@ -587,7 +600,7 @@ private function makeTodo($createColumn, $createRow): void {
'textMultiline' => true,
];
- $columns['description'] = $createColumn($params);
+ $columns['description'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Target'),
@@ -596,7 +609,7 @@ private function makeTodo($createColumn, $createRow): void {
'description' => $this->l->t('Date, time or whatever'),
];
- $columns['target'] = $createColumn($params);
+ $columns['target'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Progress'),
@@ -605,7 +618,7 @@ private function makeTodo($createColumn, $createRow): void {
'numberDefault' => 0,
];
- $columns['progress'] = $createColumn($params);
+ $columns['progress'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Comments'),
@@ -613,7 +626,7 @@ private function makeTodo($createColumn, $createRow): void {
'subtype' => 'long',
];
- $columns['comments'] = $createColumn($params);
+ $columns['comments'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Proofed'),
@@ -621,10 +634,10 @@ private function makeTodo($createColumn, $createRow): void {
'subtype' => 'check',
];
- $columns['proofed'] = $createColumn($params);
+ $columns['proofed'] = $this->createColumn($table->id, $params);
// let's add some example rows
- $createRow([
+ $this->createRow($table, [
/** @psalm-suppress PossiblyNullArgument */
// TRANSLATORS This is an example for a task
$columns['task']->getId() => $this->l->t('Create initial milestones'),
@@ -637,7 +650,7 @@ private function makeTodo($createColumn, $createRow): void {
$columns['progress']->getId() => 100,
$columns['proofed']->getId() => 'true',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example for a task
$columns['task']->getId() => $this->l->t('Kickoff meeting'),
// TRANSLATORS This is an example description
@@ -649,7 +662,7 @@ private function makeTodo($createColumn, $createRow): void {
$columns['progress']->getId() => 80,
$columns['proofed']->getId() => 'true',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example for a task
$columns['task']->getId() => $this->l->t('Set up some documentation and collaboration tools'),
// TRANSLATORS This is an example description
@@ -661,7 +674,7 @@ private function makeTodo($createColumn, $createRow): void {
$columns['progress']->getId() => 10,
$columns['proofed']->getId() => 'false',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example for a task
$columns['task']->getId() => $this->l->t('Add more actions'),
// TRANSLATORS This is an example description
@@ -672,10 +685,14 @@ private function makeTodo($createColumn, $createRow): void {
/**
* @psalm-suppress PossiblyNullReference
- * @param $createColumn
- * @param $createRow
+ * @param Table $table
+ * @throws DoesNotExistException
+ * @throws Exception
+ * @throws InternalError
+ * @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function makeStartupTable($createColumn, $createRow):void {
+ private function makeStartupTable(Table $table):void {
$columns = [];
$params = [
@@ -685,7 +702,7 @@ private function makeStartupTable($createColumn, $createRow):void {
'subtype' => 'line',
];
- $columns['what'] = $createColumn($params);
+ $columns['what'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('How to do'),
@@ -693,7 +710,7 @@ private function makeStartupTable($createColumn, $createRow):void {
'subtype' => 'long',
];
- $columns['how'] = $createColumn($params);
+ $columns['how'] = $this->createColumn($table->id, $params);
$params = [
'title' => $this->l->t('Ease of use'),
@@ -701,7 +718,7 @@ private function makeStartupTable($createColumn, $createRow):void {
'subtype' => 'stars',
];
- $columns['ease'] = $createColumn($params);
+ $columns['ease'] = $this->createColumn($table->id, $params);
$params = [
// TRANSLATORS This is an example title for a column to show if an action was done
@@ -710,11 +727,11 @@ private function makeStartupTable($createColumn, $createRow):void {
'subtype' => 'check',
];
- $columns['done'] = $createColumn($params);
+ $columns['done'] = $this->createColumn($table->id, $params);
// let's add some example rows
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['what']->getId() => $this->l->t('Open the tables app'),
// TRANSLATORS This is an example account manager
@@ -722,7 +739,7 @@ private function makeStartupTable($createColumn, $createRow):void {
$columns['ease']->getId() => 5,
$columns['done']->getId() => 'true',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['what']->getId() => $this->l->t('Add your first row'),
// TRANSLATORS This is an example account manager
@@ -730,7 +747,7 @@ private function makeStartupTable($createColumn, $createRow):void {
$columns['ease']->getId() => 5,
$columns['done']->getId() => 'false',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['what']->getId() => $this->l->t('Edit a row'),
// TRANSLATORS This is an example account manager
@@ -738,7 +755,7 @@ private function makeStartupTable($createColumn, $createRow):void {
$columns['ease']->getId() => 5,
$columns['done']->getId() => 'false',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['what']->getId() => $this->l->t('Add a new column'),
// TRANSLATORS This is an example account manager
@@ -746,7 +763,7 @@ private function makeStartupTable($createColumn, $createRow):void {
$columns['ease']->getId() => 4,
$columns['done']->getId() => 'false',
]);
- $createRow([
+ $this->createRow($table, [
// TRANSLATORS This is an example name
$columns['what']->getId() => $this->l->t('Read the docs'),
// TRANSLATORS This is an example account manager
@@ -757,16 +774,16 @@ private function makeStartupTable($createColumn, $createRow):void {
}
/**
+ * @param int $tableId
* @param (mixed)[] $parameters
- * @param int $defaultViewId
* @return Column
+ * @throws DoesNotExistException
* @throws Exception
* @throws InternalError
- * @throws PermissionError
- * @throws DoesNotExistException
* @throws MultipleObjectsReturnedException
+ * @throws PermissionError
*/
- private function createColumn(array $parameters, int $tableId): ?Column {
+ private function createColumn(int $tableId, array $parameters): ?Column {
if ($this->userId === null) {
return null;
}
@@ -838,15 +855,7 @@ private function createColumn(array $parameters, int $tableId): ?Column {
);
}
- /**
- * @param int $viewId
- * @param array $values
- * @return void
- * @throws DoesNotExistException
- * @throws InternalError
- * @throws MultipleObjectsReturnedException
- */
- private function createRow(int $tableId, array $values): void {
+ private function createRow(Table $table, array $values): void {
$data = [];
foreach ($values as $columnId => $value) {
$data[] = [
@@ -855,10 +864,10 @@ private function createRow(int $tableId, array $values): void {
];
}
try {
- $this->rowService->create($tableId, null, $data);
+ $this->rowService->create($table->getId(), null, $data);
} catch (PermissionError $e) {
$this->logger->warning('Cannot create row, permission denied: '.$e->getMessage());
- } catch (Exception $e) {
+ } catch (Exception|InternalError|DoesNotExistException|MultipleObjectsReturnedException $e) {
$this->logger->warning('Exception occurred while creating a row: '.$e->getMessage());
}
}
diff --git a/lib/Service/ViewService.php b/lib/Service/ViewService.php
index 1efaca497..3de353db1 100644
--- a/lib/Service/ViewService.php
+++ b/lib/Service/ViewService.php
@@ -395,12 +395,12 @@ public function deleteColumnDataFromViews(int $columnId, Table $table) {
throw new InternalError($e->getMessage());
}
foreach ($views as $view) {
- $filteredSortingRules = array_filter($view->getSortArray(), function ($sort) use ($columnId) {
+ $filteredSortingRules = array_filter($view->getSortArray(), function (array $sort) use ($columnId) {
return $sort['columnId'] !== $columnId;
});
$filteredSortingRules = array_values($filteredSortingRules);
- $filteredFilters = array_filter(array_map(function ($filterGroup) use ($columnId) {
- return array_filter($filterGroup, function ($filter) use ($columnId) {
+ $filteredFilters = array_filter(array_map(function (array $filterGroup) use ($columnId) {
+ return array_filter($filterGroup, function (array $filter) use ($columnId) {
return $filter['columnId'] !== $columnId;
});
}, $view->getFilterArray()), fn ($filterGroup) => !empty($filterGroup));
diff --git a/src/modules/main/partials/editViewPartials/sort/SortForm.vue b/src/modules/main/partials/editViewPartials/sort/SortForm.vue
index 6d16b168a..5e92c8b9e 100644
--- a/src/modules/main/partials/editViewPartials/sort/SortForm.vue
+++ b/src/modules/main/partials/editViewPartials/sort/SortForm.vue
@@ -132,6 +132,7 @@ export default {
.locallyAdded {
background-color: var(--color-success-hover);
}
+
.locallyRemoved {
background-color: var(--color-error-hover);
}
diff --git a/src/modules/main/sections/Dashboard.vue b/src/modules/main/sections/Dashboard.vue
index 987f59dfd..9e6d511fe 100644
--- a/src/modules/main/sections/Dashboard.vue
+++ b/src/modules/main/sections/Dashboard.vue
@@ -359,7 +359,7 @@ export default {
diff --git a/src/modules/navigation/partials/NavigationTableItem.vue b/src/modules/navigation/partials/NavigationTableItem.vue
index f04825280..0550342db 100644
--- a/src/modules/navigation/partials/NavigationTableItem.vue
+++ b/src/modules/navigation/partials/NavigationTableItem.vue
@@ -95,7 +95,7 @@ export default {
NcAvatar,
Creation,
PlaylistPlus,
-},
+ },
filters: {
truncate(string, num) {
diff --git a/src/modules/navigation/sections/Navigation.vue b/src/modules/navigation/sections/Navigation.vue
index 2d84d57aa..2f35b0f6b 100644
--- a/src/modules/navigation/sections/Navigation.vue
+++ b/src/modules/navigation/sections/Navigation.vue
@@ -59,31 +59,25 @@