Add an edit/delete manage screen to the Android app
A new Manage screen (reached from the Post screen) lists published posts with thumbnails and lets you edit a post's caption, date and tags or delete it to the server's trash, over the same /api/photos, /api/edit and /api/delete endpoints the web /manage uses. UploadClient gains listPhotos/editPost/deletePost/fetchThumbnail, parsing JSON with the built-in org.json (no new dependency) and posting edits/deletes as urlencoded forms. The app sends no Origin or Sec-Fetch-Site header, so it passes the server's same-origin CSRF check as a non-browser client; Basic auth is already attached on every request. UploadViewModel holds the manage state, loads the list, fetches thumbnails in the background, and applies edits/deletes optimistically.
This commit is contained in:
1 parent
e67d25b191
commit
225bdc9b4f
7 files changed
+585
-11
No files matched your search
+7
-4
@@ -1,11 +1,14 @@
|
||||
# Gallery Upload — Android client
|
||||
|
||||
Native uploader for the photogallery `POST /upload` endpoint. Pick or share a
|
||||
photo, add a caption and date, post. Credentials are entered once and sealed
|
||||
with a key held in the Android Keystore.
|
||||
Native uploader and manager for the photogallery server. Pick or share one or
|
||||
many photos, add caption/date/tags, and post. A **Manage** screen lists the
|
||||
published posts and edits their caption/date/tags or deletes them (to the
|
||||
server's trash) over the same `/api/*` endpoints the web `/manage` uses.
|
||||
Credentials are entered once and sealed with a key held in the Android Keystore.
|
||||
|
||||
The server is not modified by this app. Everything it needs, it does client
|
||||
side.
|
||||
side; the management calls send no browser headers, so they pass the server's
|
||||
same-origin (CSRF) check as a non-browser client.
|
||||
|
||||
## Build
|
||||
|
||||
|
||||
Reference in new issue
Block a user