Commit Graph

52 Commits

Author SHA1 Message Date
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 2025-10-25 18:21:28 +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

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
2025-10-20 19:31:57 +11:00
2f5c6ec949 update for sqlalchemy v2 2025-10-04 23:23:39 +10:00
1831c49b15 fixed 2 x TODOs, can now add an existing face as a refimg, and I sped up the recent jobs page 2025-08-19 20:53:26 +10:00
db8cf68d4b added a clear messages (forced) to allow M to clear out annoying messages if needed 2025-08-19 20:19:57 +10:00
47190a8829 user newer sqlalchemy v2 syntax 2024-12-07 19:42:49 +11:00
3d124d78cb convert all raw sqls to ORM 2023-09-26 13:00:45 +10:00
cdef403187 removed unused code/debugs 2023-04-09 13:08:43 +10:00
4b1bbcb2bf broad (small) changes to make style of all routes and jobs to be consistent, e.g. use underscords between words 2023-01-15 23:17:59 +11:00
ef9f26189a another large clean up of code, all POSTs are now using make_response() and returning json OR are for a form that flask handles with rendering direct html. Where there is a POST with json response, the jscript now calls CheckForJobs() to show it in the F/E. Removed several debugs. Fixed up undocumented BUG where import datetime was wrong, and prefix/suffix also to offer directories near the date of an image. Removed unused routes for clearing messages 2023-01-12 16:47:43 +11:00
a29cbb143c Huge change, removed Status class and all "alert" messages are now shown as BS toast() and are via the DB and handled async in the F/E in jscript via Ajax. Fixed BUG-113 where toasts() were repeating. Removed many of the explicit alert messages (other than errors) and hooked {New|Finish}Job to consistently send messages to the F/E. Other messages (F/E without a job, like save settings) now use this model as well. Finally converted most of the older POST responses to formal json 2023-01-11 13:50:05 +11:00
dc96dce02d remove white space on status message 2023-01-10 17:47:33 +11:00
0784861331 added persistent and cant_close to PA_JobManager_FE_Message, used them from pa_job_manager to set status messages with persistence/close buttons appropriately for items like fix_dups/stale_jobs. When "fixing" now, the persistent Status message stays, but its now positioned approx. below the navbar on the right and is ok. Started on changing status to a more sensible naming conventions (away from alert to level) - more work to complete this 2023-01-10 17:45:02 +11:00
56c2d586b6 clean up how we create toasts() [no longer try to reuse dom elements, just add new ones each time], support persistent notifications and close button or not [via separate booleans], created a clear message route and use that now in templates/base.html to clear FE messages. This will break for check dups as I am not setting persistence / close buttons correctly for those jobs, that is next. Converted move_files to new format 2023-01-09 13:13:51 +11:00
1ba9bf4312 renamed toast.js to jobs.js and moved Job related calls to jobs.py form files.py AND get job.py to allow job_mgr msgs to go to F/E via a POST of /checkforjobs (picked up in templates/base.html). move files also calls new CheckForJobs() to pick up when move job finishes without needing a page reload 2023-01-06 17:37:15 +11:00
c3971eb495 first-pass of popups for job creation for more than just move files, and fix BUG-112 (after move highlighting is broken) 2023-01-04 12:26:25 +11:00
a8af00fe66 big change to get metadata working fully in DB and on Filesystem, and recover from most common scenarios, improved GUI as well for allowing an immediate search after adding refimg as well 2022-08-01 23:44:38 +10:00
24bcfa0aab now have a NewJob used in pa_job_mgr and it does not set start_time until it starts, caters for BUG-97 (restarting jobs resetting start times) 2022-07-23 00:33:04 +10:00
fd79ee2cf4 fix BUG-98 (user cancel of a job not dealing with dependant jobs) & constrain the width of the chosen face in DBox for overrides/create refimg 2022-07-19 20:45:54 +10:00
d08d10a3ae if restarting a job, reset file numbering/current_file 2022-07-17 15:56:50 +10:00
8625b1d217 order joblogsearch by log_date 2022-02-06 16:16:09 +11:00
66eab072ce polished log button and content of dbox 2022-02-06 16:11:41 +11:00
83eff02910 added plumbing for viewer to have a joblog search for the current file 2022-02-05 23:23:10 +11:00
b5f6a33518 made stale jobs POST redirect to /jobs, more back-forward button cleanups and honestly a better Ux anyway 2022-01-20 10:10:32 +11:00
5fee1b8e30 remove debugs 2022-01-18 22:02:47 +11:00
28f15ee4e6 fixed sort order to work with datatables sorting 2022-01-16 14:49:38 +11:00
e03d11b9e1 fixed job refresh issues 2022-01-16 01:17:54 +11:00
a2fb877f12 implemented job archiving (via a Setting, and just viewing recent or all) 2022-01-13 23:11:21 +11:00
8a6a7a5115 joblog rewrite to show only a few "newest" lines and "oldest" logs for a job, with the more button in the middle, also has a little icon to show the re-ordering that goes with each view - should really make this clickable/togglable. 2022-01-13 21:12:09 +11:00
a67c20d72b new BUG (very minor), reordered TODOs and now have basic stale job handling - they are detected, and can be cancelled or restarted from GUI 2022-01-11 13:18:21 +11:00
4179806017 not using redirect 2021-09-24 12:46:38 +10:00
68b84a2b07 prevent div by zero error, when job is > 5 minutes, and no progress yet 2021-09-21 13:45:45 +10:00
85902bbc3c redo Status SetMessage so it defaults to success and danger is a force in the setting of the message, to fix BUG-52 where a success message ended up with danger colour somehow -- might not perfectly fix it, but its neater and if it does not fix it, then its a timing issue I am not sure how to test/fix 2021-09-16 21:18:09 +10:00
c59e23efda provide estimates, format dates better 2021-09-16 19:20:43 +10:00
5258a7c915 updated comments 2021-08-11 17:33:04 +10:00
aa826f6933 if > 100 logs, truncate them and add button to show all logs, and stop auto-refresh too 2021-07-03 12:29:19 +10:00
371e2af64b added python ldap / login pages 2021-06-26 09:20:11 +10:00
c2d0004537 fixed up a few issues found from linter 2021-03-19 18:00:44 +11:00
03ddbb1c90 display logs ordered by log_date 2021-02-17 21:35:53 +11:00
d9a94ff5da allow NewJob to have job extras added 2021-02-14 16:02:41 +11:00
ec4033e0fa order jobs by descending order, more useful to see newest at top 2021-01-25 10:44:13 +11:00
72a892fd17 added BUG-3 (import dir job on 1st run does not track num_files - even at end), and now have wakeup route expose in menu 2021-01-21 01:08:52 +11:00
021aeb69c7 use correct seqs and order jobs by id 2021-01-20 21:47:53 +11:00
4be0ef2a73 removed pass* from jobs 2021-01-20 16:34:56 +11:00
0de95d56d5 fixed up JobExtra printout in class, also put it in job.py, and passed extras to templates/jobs.html to show the extra details on the jobs list page so we can see what path is imported for example 2021-01-20 00:05:56 +11:00
5c840273c2 added hidden route to wake up the job manager 2021-01-19 23:33:08 +11:00
3951b3e0a1 do not need to send any data down the client conn to wake up the pa_job_manager 2021-01-18 13:19:50 +11:00
507336c2b2 commented out sleep which I use for testing of active jobs/job refresh page, and re-title the job list html 2021-01-17 12:38:28 +11:00
2b9dedb9b9 change how we calculate active jobs, probably will remove it from pa_job_engine, safer with threads I think. But, mostyle, added in client / server socket comms between web FE and job manager, with better job creation message (including link to job detail) and when you view job detail it auto-refreshes every few seconds until job complete) 2021-01-17 12:35:28 +11:00
c5d8811671 actually create a job for scan now, and let the job manager do the work and send back output via new PA_JobManager_FE_Message table 2021-01-17 10:50:43 +11:00