Moving an archived card does not get persisted
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1.4k
- Forks
- 354
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 43
Description
How to use GitHub
- Please use the 👍 reaction to show that you are affected by the same issue.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
- Archive a card
- Toggle view -> Display only archived cards
- Find your card, move it to another stack
- Reload browser (F5)
- Card is on the original stack
Expected behavior
Either disable moving archived cards or persist the new stack.
Client details:
- OS: Linux Mint
- Browser Firefox
Deck: 1.8.3
Operating system: Debian
Web server: Apache
Database: MySQL
PHP version: 8.1.12
Nextcloud version: 25.0.3
Nextcloud log (data/nextcloud.log)
[deck] Fehler: OCA\Deck\StatusException: Operation not allowed. This card is archived. at <<closure>>
0. /var/www/vhosts/xxx/apps/deck/lib/Controller/CardController.php line 60
OCA\Deck\Service\CardService->reorder()
1. /var/www/vhosts/xxx/lib/private/AppFramework/Http/Dispatcher.php line 225
OCA\Deck\Controller\CardController->reorder()
2. /var/www/vhosts/xxx/lib/private/AppFramework/Http/Dispatcher.php line 133
OC\AppFramework\Http\Dispatcher->executeController()
3. /var/www/vhosts/xxx/lib/private/AppFramework/App.php line 172
OC\AppFramework\Http\Dispatcher->dispatch()
4. /var/www/vhosts/xxx/lib/private/Route/Router.php line 298
OC\AppFramework\App::main()
5. /var/www/vhosts/xxx/lib/base.php line 1047
OC\Route\Router->match()
6. /var/www/vhosts/xxx/index.php line 36
OC::handleRequest()
PUT /index.php/apps/deck/cards/1162/reorder
from 2003:ee:f70c:4a00:70f5:3880:c7c:9ff1 by stefan at 2023-02-01T13:17:42+00:00
Browser log
Uncaught (in promise)
Object { message: "Request failed with status code 500", name: "AxiosError", code: "ERR_BAD_RESPONSE", config: {…}, request: XMLHttpRequest, response: {…}, stack: "" }
code: "ERR_BAD_RESPONSE"
config: Object { timeout: 0, xsrfCookieName: "XSRF-TOKEN", xsrfHeaderName: "X-XSRF-TOKEN", … }
message: "Request failed with status code 500"
name: "AxiosError"
request: XMLHttpRequest { readyState: 4, timeout: 0, withCredentials: false, … }
response: Object { data: {…}, status: 500, statusText: "Internal Server Error", … }
stack: ""
<prototype>: Object { constructor: a(e, t, n, r, a), toJSON: toJSON(), stack: "", … }
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with apps/deck/lib/Controller/CardController.php at line 60 and trace the CardService->reorder() path for PUT /index.php/apps/deck/cards/1162/reorder. Reproduce the archived-card move, then verify that moving it to another stack either is disabled or remains persisted after a browser reload.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, php
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100