Commit Graph

36 Commits

Author SHA1 Message Date
a8a4a1e5fe convereted all raw SQL to ORM, and tightened up str/int use in JobExtra-> value field - sqlalchemy 2 is more strict here 2023-09-26 12:35:23 +10:00
4f67cb30d9 had to remove the :int on route for Flask to load now - a library was failing with a converter / lookup failure 2023-09-18 22:26:30 +10:00
b636ac08b8 update file to use new pylint settings, added types and using docstrings in goolge format with partial openapi spec 2023-06-18 22:02:33 +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
06846b86c5 fixed BUG-105, unmatched faces now ignores overridden faces 2023-01-02 22:42:22 +11:00
b273cd2e25 spacing 2022-12-29 12:55:24 +11:00
2a1e2d7d5d cleaned up code around json, *locn -> transitioned to top, right, bottom, left to finally fix ORM replacing [ with { <- FIXES BUG-108 2022-12-23 16:18:27 +11:00
4232e139c7 remove use of tmp_locn, use explicit coords, sizes - partial BUG-108 fix 2022-12-23 13:35:42 +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
8646b3b8c2 quick fix/hack for unmatched faces 2022-07-19 21:23:32 +10:00
e9ab49c60a with viewer, unmatched face now has img data / thumbnail, so we know what it really looks like when we choose to override - still major WIP, tables.sql also has some override types, but not convinced I have design yet 2022-02-06 23:21:23 +11:00
8ef3a97eb7 use run_ai_on_path as job type, rather than find ent and pass it to run_ai_on 2022-02-04 21:57:13 +11:00
47b9e13a53 use tmp_locn, to remove any chance of accidentally overwriting face.locn - see /viewlist issues earlier 2022-01-31 21:08:19 +11:00
0f4632e240 changing options on files_*, search, also next/prev all now use POST->redirect model, so should allow back/forward browser buttons to work - commit so we can test in PROD 2022-01-22 21:36:58 +11:00
04726ed386 redirecting jobs to /jobs after they run, more work with back/forward 2022-01-19 23:16:54 +11:00
de81db9412 unmatched faces now sorts size of face desc, and is slightly prettier -- still slow and only takes you to the file anyway, might optimise that later. still no code to auto deal with unmatched face, but will add some capabilities next. Also, remembered last dir when file_ip/sp/bin. Also throw error if try to find unknown person - happened since I allowed the back/forward. 2022-01-18 20:59:39 +11:00
081b90e008 remove debugs 2022-01-15 16:35:28 +11:00
bf04c862d6 first pass of allowing to scan for all files in import and storage paths <- works, and showing all unknown faces to handle them somehow - very rudimentary 2022-01-10 01:20:20 +11:00
b7e0e9fdcb not using redirect 2021-09-24 12:46:13 +10:00
5b4bbeec46 order ai stats, and remember to put a container div in for formatting 2021-09-17 18:38:39 +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
b6f672b575 ai stats has divs not tables, so more compact/responsive, also stats now have clickable link to appropriate AI:<tag> search 2021-09-15 00:23:25 +10:00
03a2b4a9d9 updated comments 2021-08-10 21:31:09 +10:00
2e06c0b285 moved class Refimg to person, and ditched all other routes/direct access to ref images, they are only a part of Person in UI now 2021-07-05 16:51:44 +10:00
1cfb07903b slightly improve ai stats 2021-07-01 21:54:26 +10:00
78713a6767 updated stats to use new face tables and be more useful now amount of matches is in the thousands 2021-06-30 14:28:15 +10:00
4cb10c4a6b started hooking up right-click menu for Dir and Files all the way through to calling the new ScanFileForPerson() - which is still incomplete but does use the new Faces DB linkages and functions 2021-06-28 18:52:05 +10:00
371e2af64b added python ldap / login pages 2021-06-26 09:20:11 +10:00
6d071f14dd fixed up a few issues found from linter 2021-03-19 18:03:00 +11:00
18b8a30140 Fixed BUG-11: we have changed to file_refimg_link table (from file_person_link), this means we now have some optimisations, and can definitely re-run AI jobs without crashing. Several optims could still be done - see TODO 2021-01-25 01:05:30 +11:00
42b4880b62 added basic view of which files were matched with which people 2021-01-22 21:14:17 +11:00
e138ab22aa git commit, converted over to base.html pulling Status*, rather than every render_template calling it. Tightened up naming for job manager, fixed a few bugs in there with items like div by zero, created the active jobs link/badge in navbar, have it invoked each time by base.html template and it gets active jobs from DB, pa_job_manager now initiliases from an empty DB and can work out where it is at, no loop/thread/or actual job code yet. jobs.py has basics of a NewJob(), so next step is to force that job to be executed in pa_job_manager, but its tea time 2021-01-16 17:51:16 +11:00
b123f067b1 fix up comment 2021-01-15 16:57:14 +11:00
5bf41ce6a8 token placholder for AI menu with html 2021-01-12 23:58:27 +11:00