Commit Graph

  • 74647bcdfb remove duplicate lines of code refactor-entry-viewing Damien De Paoli 2025-11-18 21:13:02 +11:00
  • 0ee55ee73d fixed BUG-143, disable next/prev as first thing we do when going next/prev Page Damien De Paoli 2025-10-28 23:04:33 +11:00
  • 89e8c5d9f7 fix BUG-125: right-click changes highlight if its not in the highlight set Damien De Paoli 2025-10-28 22:31:15 +11:00
  • 76b0745cc3 remove face data after transform (BUG-142), also only reset viewing image if we are viewing, and remove debugs Damien De Paoli 2025-10-28 22:16:26 +11:00
  • bc2d4384c9 fix BUG-141, crashing pa_job_manager when transforming a non-Image Damien De Paoli 2025-10-28 22:04:47 +11:00
  • d247ecec54 fix up bug where sucess used instead of success, also if we delete/restore/move a file from inside the viewer, then adjust the files* divs, and go out of the viewer (back/up) and show updated files div Damien De Paoli 2025-10-27 22:06:54 +11:00
  • bb43cc5623 new TODOs Damien De Paoli 2025-10-27 22:04:31 +11:00
  • a6edbd184b fixed mistaken removal of shift/ctrl buttons on mobiles for file* views Damien De Paoli 2025-10-26 20:30:44 +11:00
  • 09e7b8eea7 one more old BUG gone, reordered file Damien De Paoli 2025-10-26 20:30:22 +11:00
  • f2ef55a58a cleaned up old bugs that are fixed by new entry_amendments logic Damien De Paoli 2025-10-26 15:55:13 +11:00
  • 4d7f3dfed9 Fixing BUGs 144/145, (needed a parseInt), and force MovedBox path selection to Storage always - if moving from Import path, likely storing, if in Storage path, likely moving inside the Storage area, user can always override Damien De Paoli 2025-10-26 15:44:13 +11:00
  • 4421da0d1d make move_files have EntryAmendments, do not remove from the UI instantly, and handle just like delete_files, remove restriction on forcing the page to go back to / on search, with new logic its not an issue, also force MoveDBox to start with Storage path rather than another, MOST moves should be to Storage, but should tweak this to be the opposite of current path type Damien De Paoli 2025-10-26 13:32:31 +11:00
  • 6eba21e028 added BUG-143 around fast page changes Damien De Paoli 2025-10-25 20:26:32 +11:00
  • 9bdd9d5b78 revamp whole EA flow. Server created EAs when we do certain jobs (transform, delete_files, restore_files), then instead of faking amendments in the jscript, get job creation to return EA from job ORM, then check is now generic for end of any amendment job, and when it finishes, use that to clear our amendments in document, and redraw through normal UI code. No smarts in client, all driven by state from server, and if we reload a page mid jobs, it has required state, and because an amendment job is still progressing, it runs check code again Damien De Paoli 2025-10-25 18:21:28 +11:00
  • d3ae9b788f make sure loading viewer for the first time add query param to get latest version of img, and when we leave viewer reset document.viewing Damien De Paoli 2025-10-25 18:18:58 +11:00
  • 1396cbab78 added removeEntryAmendment() and call that when transform/delete_files/restore_files Damien De Paoli 2025-10-25 18:13:19 +11:00
  • b7500e5170 use throbber gray, rather than white Damien De Paoli 2025-10-25 18:12:32 +11:00
  • 392708bad9 reformat Damien De Paoli 2025-10-25 18:12:15 +11:00
  • 90b3fe4c2f try to warm the cache to help with restart / traefik not noticing Damien De Paoli 2025-10-25 18:06:38 +11:00
  • bd6c9c1fbd code formatting Damien De Paoli 2025-10-25 10:52:30 +11:00
  • 56771308a6 updated BUGs in general to remove older / fixed BUGs relating to the confusion of current/eids, etc. update amendments in tables.sql to include job_id in entry_ammendment added amend.py to move amendment-related code into its own file when we create a job (NewJob) and that job matches an amendmentType (via job_name or job_name:amt <- where amt relates to how we do a transform_image), then we enter a new EntryAmendment pa_job_mgr knows when a Transform job ends, and removes relevant EntryAmendment files*.js use EntryAmendment data to render thumbnails with relevant AmendmentType if a normal page load (like /files_ip), and there is an EntryAmendment, mark up the thumb, run the check jobs to look for completion of the job, removeal of the EntryAmendment and update the entry based on 'transformed' image Damien De Paoli 2025-10-20 19:31:57 +11:00
  • 905910ecf0 updated BUGs in general to remove older / fixed BUGs relating to the confusion of current/eids, etc. update amendments in tables.sql to include job_id in entry_ammendment added amend.py to move amendment-related code into its own file when we create a job (NewJob) and that job matches an amendmentType (via job_name or job_name:amt <- where amt relates to how we do a transform_image), then we enter a new EntryAmendment pa_job_mgr knows when a Transform job ends, and removes relevant EntryAmendment files*.js use EntryAmendment data to render thumbnails with relevant AmendmentType and if a normal page load (like /files_ip), and there is an EntryAmendment, mark up the thumb, run the check jobs to look for completion of the job, removeal of the EntryAmendment and update the entry based on 'transformed' image OVERALL: this is a functioning version that uses EntryAmendments and can handle loading a new page with outstanding amendments and 'deals' with it. This is a good base, but does not cater for remove_files or move_files Damien De Paoli 2025-10-20 19:23:52 +11:00
  • a38c54812c use amendments to render throbber/grayscale Damien De Paoli 2025-10-20 19:23:12 +11:00
  • dc6b831481 remove overkill use of make_response Damien De Paoli 2025-10-20 19:16:25 +11:00
  • 8969cd452e for now, store away amendment types into dom for client-side additions - still working on right place for the additions Damien De Paoli 2025-10-19 11:29:52 +11:00
  • d65f3b32d3 pass amendmentTypes to client in query_data, make query_data single func to remove duplicate code, reference new amend.py for class defintions Damien De Paoli 2025-10-19 11:29:10 +11:00
  • 0b0035d1d2 adding job_name into amendment type, and updating inserts to match Damien De Paoli 2025-10-19 11:24:54 +11:00
  • 80ceb7aaed removed __repr__ from classes in files.py, and added in sqlalchemy class and marshmallow schemas for entry amendments, then load amendments on get_entry_by_id - so any page load (first or next/prev) will see amendments, we then display them into the files list and now add a white circle inside the throbber and overlay that with approrpiate icon/image - all of which is taken from amendment type and eid. tables.sql also updated to create the amendment data, tweaked icons.svg to remove hardcoded-colours for flip_[vh] Damien De Paoli 2025-10-15 23:06:05 +11:00
  • 9cf47f4582 removed __repr__ from classes in files.py, and added in sqlalchemy class and marshmallow schemas for entry amendments Damien De Paoli 2025-10-15 22:52:17 +11:00
  • a683da13cc gave whole of TODO a once over, removed old stuff Damien De Paoli 2025-10-12 23:49:35 +11:00
  • 9ffb704648 fix bug where AI search used wrong query as I rewrote the search_term and lost AI: now compares original / OPT.search_term. Also, the union/sql did not work with otdering, rewrote this to use python code to remove duplicates from the 3 separate queries and remove duplicates (if any) Damien De Paoli 2025-10-12 21:23:45 +11:00
  • 27e06a9462 any change of opts needs to invaldiate cache Damien De Paoli 2025-10-12 21:22:14 +11:00
  • 4556afb3bb changed token word Damien De Paoli 2025-10-12 19:34:00 +11:00
  • 0eee594206 fix up bug with cache not working when we change how_many Damien De Paoli 2025-10-12 19:33:12 +11:00
  • 78b112d050 when we change file options, make sure we call correct query data function - search needs GetSerachQueryData Damien De Paoli 2025-10-12 19:31:45 +11:00
  • 97e738dc13 implemented a quick cache for flat view Damien De Paoli 2025-10-12 16:29:39 +11:00
  • b61f048dec reverted partial client side back button logic, but also now tested / validated if somehow we are in a flat view and ask for entries and dont get all of them back, or we are in folder view and we try to go into a folder or back up a folder and we get no data as someone deleted it since we made the view, so then show appropriate client-side errors Damien De Paoli 2025-10-12 16:02:21 +11:00
  • e3f6b416ce forgot to add js_vers for search, fixed Damien De Paoli 2025-10-12 13:24:53 +11:00
  • 0ac0eedef9 handle going into Dirs and back from Dirs by doing logic of parent dir on server side, only return eids, and get normal code to handle rendering, no specific get_dir_entries route -> its not get_dir_eids, and the rest is normal code. Much cleaner/simpler. At this point I think the major rewrite it functional, commiting before more testing and then merge code and removed firstEntryOnPage bug (its now pageList[0]) Damien De Paoli 2025-10-12 13:14:53 +11:00
  • cb5ff7e985 comments for clarity of root_eid=0 meaning no entries Damien De Paoli 2025-10-12 13:14:13 +11:00
  • 517b5c6167 made more of the javascript hopefulyl honour versions, sort of works, not fully deployed consistently but works well enough for home use in dev. Also tweaked how the layout looks on a phone so that la / ra buttons on beside the image. Still oddly needs me to shrink that page, but it is now visually right - odd Damien De Paoli 2025-10-11 15:02:58 +11:00
  • 16d28bc02e first pass of versioning, working for files.html only for now Damien De Paoli 2025-10-11 12:47:53 +11:00
  • da0019ecdc adding a get_version function that gets the mtime of the jscript file and then lets us embed that into the <script src=> Note, accidentally committed, partially tested Damien De Paoli 2025-10-11 12:27:14 +11:00
  • e4bf9606b9 move functions to appropriate file location for files/view support js, commented them better, removed some dead code Damien De Paoli 2025-10-11 12:13:44 +11:00
  • 3a053bea49 found new todo around going back in folder view and sort order Damien De Paoli 2025-10-11 12:13:17 +11:00
  • 1e421c3f22 move jscript logic out of template/html, into jscript so we can keep all logic into the included file, then I can force version on it and stop caching issues in mobiles, and a shift-reload will also get new code, rather than a container restart even on desktops Damien De Paoli 2025-10-11 11:11:51 +11:00
  • 346defde8b added a functional (small) up button in the viewer, all works Damien De Paoli 2025-10-11 09:19:51 +11:00
  • 6419e20d7e updated as I have fixed the restore/del from the viewer Damien De Paoli 2025-10-10 23:14:15 +11:00
  • b51d9e1776 make delete/restore button in viewer be the right colour, and go back to / when the success for the delete or restore finishes Damien De Paoli 2025-10-10 23:13:03 +11:00
  • fa2197adbe fix up bug where empty file_rbp did not work and displayed in the wrong div Damien De Paoli 2025-10-10 23:03:23 +11:00
  • 66344e146e added a health check to see if this can help with the odd startup lag, it didnt Damien De Paoli 2025-10-10 23:02:47 +11:00
  • ee1c9b5494 all override add and remove now use new datastructures, close to be able to test / augment as per TODO Damien De Paoli 2025-10-09 23:56:27 +11:00
  • 846bdc4e52 fix up linking between face to refimg when we add that face to a person from right-click Damien De Paoli 2025-10-07 23:52:06 +11:00
  • 541cbec0de update adding refimg to new or existing person via right-click on a face to use new data structures Damien De Paoli 2025-10-07 23:43:07 +11:00
  • 071164d381 remove dead code Damien De Paoli 2025-10-07 23:42:17 +11:00
  • 1adb1bc7af no longer have pa_user_state data really, ditch the table Damien De Paoli 2025-10-07 23:42:02 +11:00
  • 747f524343 remove more dead code Damien De Paoli 2025-10-07 23:41:38 +11:00
  • 4feae96511 remove comments/format Damien De Paoli 2025-10-07 23:31:37 +11:00
  • e6c9429466 remove search term from DB Damien De Paoli 2025-10-07 23:30:28 +11:00
  • 005b5be2b9 remove search_term from DB fields we want Damien De Paoli 2025-10-07 23:28:54 +11:00
  • f369b6d796 ticked off a couple of items around no content being better displayed Damien De Paoli 2025-10-07 00:01:30 +11:00
  • eb7bb84e09 add some padding, and set root_eid - Its 0 when nothing at all in Path (first run/empty). Also, started override for marshmallow, but overrides wont work yet Damien De Paoli 2025-10-07 00:00:50 +11:00
  • 7f13d78700 deal with completely empty directories, remove ChangeSize and move that content into changeSize Damien De Paoli 2025-10-06 21:41:35 +11:00
  • e5d6ce9b73 move MoveDBox into full javascript and fold it into internal/js/files_support.js, also remove unused parameter for MoveDBox, and use marshmallow to pass people in query_data - overall just cleaner more consistent code for existing functionality Damien De Paoli 2025-10-05 23:20:17 +11:00
  • e0654edd21 alter move_paths from a specific var passed in the render_template, to be folded into query_data var Damien De Paoli 2025-10-05 22:36:49 +11:00
  • 24c2922f74 actually set NMO var based on marshmallow data Damien De Paoli 2025-10-05 22:21:57 +11:00
  • 24c3762c61 remove PathDetails*, and use marshmallow schemas with methods to get icon_url, and "path" renamed to "root_dir", updated move* code to use new data structure Damien De Paoli 2025-10-05 22:19:58 +11:00
  • 40f0b5d369 refactor most javascript code, moved what can be moved into files_support.js, made keydown() items only apply when I go to the viewer code Damien De Paoli 2025-10-04 23:25:46 +10:00
  • 2f5c6ec949 update for sqlalchemy v2 Damien De Paoli 2025-10-04 23:23:39 +10:00
  • 81ebf6fa01 use to_dict() here, so we can use |json in jscript Damien De Paoli 2025-10-04 22:45:28 +10:00
  • 7a4f5ddb17 update z-index so we dont get buttons being higher than toast popup Damien De Paoli 2025-10-04 22:45:01 +10:00
  • 00e42447fc make download link work with document.viewing rather than objs[current] Damien De Paoli 2025-10-04 10:43:00 +10:00
  • 50f9fbee20 update to use new viewing data structures, consolidate to one set of transform functions with successCallback to cover the files vs viewer content. Updated TODO appropriately Damien De Paoli 2025-10-04 10:39:11 +10:00
  • 1b9b4c9c4f update to use new viewing data structures, consolidate to one set of transform functions with successCallback to cover the files vs viewer content. Updated TODO appropriately Damien De Paoli 2025-10-04 10:39:06 +10:00
  • 86761994df need to check length of faces, not just it exists - it comes back as an empty array when no faces Damien De Paoli 2025-10-04 10:37:29 +10:00
  • 4138f392d3 clean up includes, double up of fullscreen var, and use of current still Damien De Paoli 2025-10-04 10:37:00 +10:00
  • 525b823632 dont crash server if we have not scanned the Path yet Damien De Paoli 2025-10-04 10:34:54 +10:00
  • d019dc7960 more things to test/fix Damien De Paoli 2025-10-03 21:40:59 +10:00
  • a15fbd74d5 update for new db models/marshmallow object Damien De Paoli 2025-10-03 21:40:48 +10:00
  • 3c8babb619 made basic viewer now handle new marshmallowed data - faces, model_used, face_distance, etc. Damien De Paoli 2025-10-03 21:28:25 +10:00
  • cd73c16545 include refimg_lnk and facefile_lnk into Face to be used in viewer Damien De Paoli 2025-10-03 21:10:52 +10:00
  • efaec00127 OMG, face_distance is float not int, how has this ever worked Damien De Paoli 2025-10-03 21:10:04 +10:00
  • 0777bbe237 remove more dead code Damien De Paoli 2025-10-02 23:14:42 +10:00
  • b0c738fcc1 moved cFO() to changeOPT() into internal/js, transformed file_list_ip to work with new query_data model, made the Size buttons use modern bootstrap5 radio buttons and work again without the form for all file* routes. Removed a lot of dead code, moved code to resetNextPrev buttons to anytime we getPage, reducing code, handle setting OPT in jscript via a to_dict() for States. Overall, search and file_list_ip now work. Only main thing left is the override code Damien De Paoli 2025-10-02 23:11:14 +10:00
  • 2b9e0e19a2 add a to_dict() for States, and then I can use a 1-liner to set a var in jscript Damien De Paoli 2025-10-02 18:20:31 +10:00
  • e526d99389 no longer maintain too much state per user, remove all need to update it Damien De Paoli 2025-10-02 17:54:51 +10:00
  • 5a923359bc remove dead viewing code Damien De Paoli 2025-10-02 17:54:31 +10:00
  • a147308b64 removed fields from PA_USER_STATE, no longer needed with new viewing logic Damien De Paoli 2025-10-02 17:51:47 +10:00
  • 9e943c7e1f removed fields from PA_USER_STATE, no longer needed with new viewing logic Damien De Paoli 2025-10-02 17:51:39 +10:00
  • 87651e80a0 fix up capitalisation of bOOLEAN, and removed fields from PA_USER_STATE, no longer needed with new viewing logic Damien De Paoli 2025-10-02 17:51:25 +10:00
  • 2e952deda0 added code to support changing noo/how_many/folders and do this with json data back and forth, update the UI, all works - only search is missing now. Lots of dead code can still be deleted Damien De Paoli 2025-10-01 23:48:19 +10:00
  • b9b7a24326 removing done items Damien De Paoli 2025-10-01 23:43:15 +10:00
  • a7ce8e66b5 change back to how_many, too hard to fix and the inconsistency broke the GUI change Damien De Paoli 2025-10-01 23:40:39 +10:00
  • 6199c042e3 remove most of the code, just have States with default values and some derived values such as prefix Damien De Paoli 2025-10-01 23:40:05 +10:00
  • c32b99f53e augment CreateFoldersSelect to support supplying js Damien De Paoli 2025-10-01 23:39:17 +10:00
  • 175e43c9bb make viewer work for files_sp, by resetting entryList and pageList for any new directory load Damien De Paoli 2025-09-30 18:38:54 +10:00
  • 4bb99ce589 catch all to cover when we try to view an img/video and the dir contents is empty, so nothing to show Damien De Paoli 2025-09-30 18:38:20 +10:00
  • 70ca93b14e convert files_rbp to new query_data model Damien De Paoli 2025-09-30 18:37:15 +10:00
  • a0e06717ac viewer now works for files_ip, still have broken bits everywhere - files_rbp, change_opts, do I want a back button? lots of dead/old code, probably cam move more js into *_support, and do I want to keep files_support separate to view_support Damien De Paoli 2025-09-30 00:29:11 +10:00
  • 0851b79e16 remove debug Damien De Paoli 2025-09-30 00:26:45 +10:00