## GENERAL * refimg - upload from client, make only thumb and face encoding into DB, & no b/e at all [DONE] -- person needs an: add refimg (see bits of newrefimg.html) [DONE] remove refimg (see person2.html) -- processing it needs to be smart... [DONE] - remove refimg menu from top-level -> sub of Person (to view/mangage?) -- at the moment refimg menu (view/create) needs thought, remove create totally, view might be okay? (BUT, might also cause issues) - remove AI menu from top-level -> make a sub-of Person, and just have Match or AI (Fix BUG-41 and bits of BUG-43 & TODO: many ref imgs on create person should span multiple rows) * need AI job to: log amount matched, amount comparing too -> count should actually be total files in 'entries' (as we can select random entries to check) * with any job, count logs, then commit per 100 log lines of a job (and then ditch the commit in import dir for this) * allow rotate of image (permanently on FS, so its right everywhere) * improve photo browser -> view file, rather than just allowing browser to show image * fix up logging in general * comment your code * more OO goodness :) ## DB * Dir can have date in the DB, so we can do Oldest/Newest dirs in Folder view ### BACKEND * revisit SymlinkName() and make it simpler (see comment in shared.py) * if you change paths in settings, then re-run Initialisation checks (for symlinks to new path names) - this actively is crashing, added a file in storage2/ (no symlink), so job mgr crashed, and DB doesnt have the content until you make the symlink (via re-running job mgr) -- started on some basic optimisations (commit logs every 100 logs, not each log) - with debugs: import = 04:11, getfiledetails== 0:35:35 - without debugs: import == 04:03, getfiledetails == 0:35:36 -- not a sig diff - with exifread & debug: import == 04:26 *** Need to use thread-safe sessions per Thread, half-assed version did not work - would it be quicker/smarter to use md5 hash matching on import (and if so, not re-do face* ) ??? need a manual button to restart a job in the GUI, (based on file-level optims, just run the job as new and it will optim over already done parts and continue) Future: Admin -> reset face_flag AI -> rescan