b315503832
fixed subtle BUG, from when I changed over form EntryDirLink to PathDirLink, I was still joining Entry AND Path for Dir Links, by hand joining these tables, I get lost, so not surprised it gives ambigous results -- manifested in lost Dirs in the f/e after delete/undelete. Also cleaned up debugs
Damien De Paoli2021-06-08 21:13:18 +10:00
11386f57a4
thumbs should not land in image dirs, they are both linux/windows meant to land in cache/home dirs, so ignoring this todo
Damien De Paoli2021-06-07 17:51:39 +10:00
66268ad6bb
use explicit set of dir_obj for path, as ORM cant easily work out which dir is the right one for a path
Damien De Paoli2021-06-07 17:46:45 +10:00
43f60cba93
default for grouping should be None not Day when searching (only time there is no grouping value set) AND this matches defaults now set in files.py ViewingOptions function
Damien De Paoli2021-06-06 17:34:45 +10:00
baab4569d2
finished showing path location on search TODO, also dont want to do the route consolidation suggestion after more thought
Damien De Paoli2021-06-06 17:25:30 +10:00
6d854628ae
removed unnecessary css/js -> copied form pybook and not used, also made all upstream/internet resources local. NOTE: static/upstream is not in git, can just be downloaded from internet if needed again anyway
Damien De Paoli2021-06-06 17:24:55 +10:00
46fc90ddeb
if via folders or grouping is none we create the row of images. if we are searching, added mini icon in bottom-left to show where the image is from (import/storage/bin)
Damien De Paoli2021-06-06 17:23:23 +10:00
e20faac23b
added new func LocationIcon so html can ieve the icon based on objects type of path
Damien De Paoli2021-06-06 17:22:25 +10:00
ecefb59458
added icons for paths into a dict ICON, and func to retrieve the icon based on objects type of path
Damien De Paoli2021-06-06 17:21:45 +10:00
b27391003f
fix bug where view import via folder did not have a cwd set, also fixed new bug where toggling from flat to folders with a grouping set would bug out, force grouping=None when folders chosen
Damien De Paoli2021-06-06 17:20:18 +10:00
9a9dc01c5a
added code to check paths exist on startup
Damien De Paoli
2021-05-28 16:37:26 +10:00
4ed76961a8
Now have an AddPath (which calls AddDir if needed). This also fixes a bug where re-scanning, caused duplicate database entries. Also cleaned up comments, prints
Damien De Paoli2021-05-27 18:34:08 +10:00
9b926938e4
added viewing recycle bin via folders, added comments, cleaned up TODO to note this is done
Damien De Paoli2021-05-26 18:32:52 +10:00
8dc98dd368
first-pass of deleting a file moving to the bin instead, not in right spot on FS/ path&rel_path, and no visualisation yet
Damien De Paoli2021-05-24 07:42:08 +10:00
74943f6112
Merge branch 'master' of 192.168.0.2:photoassistant
Damien De Paoli2021-05-22 17:48:39 +10:00
3898d1a943
remove unused path_prefix from DIR, its not in PATH
Damien De Paoli2021-05-22 17:48:34 +10:00
e04fc4c068
mostly a TODO update, but start of recycle bin in DB work (PATH, etc.) is now created when we do a force rebuild from the GUI
Damien De Paoli
2021-05-22 17:24:48 +10:00
5e03650ed5
first cut of paths actually working with folder viewing - for now defaulting on for both Storage only
Damien De Paoli2021-05-01 18:16:45 +10:00
b6b98ae5ca
added path type via new path.py to avoid more circular imports
Damien De Paoli2021-04-17 17:48:24 +10:00
4b0c64e9d8
updated TODO based on last file.py change for static/Storage usage
Damien De Paoli2021-04-17 17:47:47 +10:00
3237e3bf8f
fixed up dup code to work with paths, added path_types throughout and updated TODO to be clear on what next
Damien De Paoli2021-04-17 17:43:42 +10:00
477aa4e5b8
removed debug, fixed search to always be flat view and search paths with new rel_path field
Damien De Paoli2021-04-13 15:45:59 +10:00
ca7391e21b
fixed hard-coded static/storage, now use in_path.path_prefix
Damien De Paoli2021-04-12 00:06:26 +10:00
095b7c8333
Path in the DB is complete, still have hacks around displaying folders (hardcoded path name)
Damien De Paoli2021-04-11 15:35:01 +10:00
4a55e98f5b
first pass at removing explicit use of path_prefix, the remaining code either uses it to search so needs new path_dir_link table, or is AddDir which I need to think about
Damien De Paoli2021-04-10 11:48:56 +10:00
fddd47a1ab
now using uselist=False to ensure file_details, dir_details, in_dir are one-to-one, and dont have useless list of 1 element. updated TODO to reflect order of how to tackle change over to paths and dirs
Damien De Paoli2021-04-10 11:28:17 +10:00
5e6d63d668
cleaned up some logs / debugs, fixed bug where we stripped comma of list of hashes, but there was none, so failed to find that hash, also created convenience functions to remove a file / dir from DB for exists_of_fs code, but also re-used so deleting duplicates also removes files
Damien De Paoli2021-03-28 16:30:46 +11:00
5f42e19bcd
use kfid instead of kfname for consistency, and now we have 2 loops of kfids, then keep the count explicit (kfid.count) rather than implicity loop.index
Damien De Paoli2021-03-28 16:17:01 +11:00
62cbfcebdf
one further nuance with counts after testing, fixed
Damien De Paoli2021-03-27 15:11:19 +11:00
932d05b8e3
improved duplicate counting, removed concept of sets, and validated counts work via DB selects, and they do
Damien De Paoli2021-03-27 14:24:27 +11:00
c4f36713bf
improved duplicate counting, removed concept of sets, and validated counts work via DB selects, and they do
Damien De Paoli2021-03-27 14:24:16 +11:00
b1771baa2d
providing some totals via the code, and fudging numbers to show how many keep/del due to auto rules, and how many manual choices left
Damien De Paoli2021-03-25 19:53:26 +11:00
b216d138b9
renamed self.KeepInSameDups to self.KeepInIPSPDups as it is not same dir, but ip to sp
Damien De Paoli2021-03-25 19:52:48 +11:00
1ab339ffea
had to revert the import line - pylint didnt originally like it this way, cant see issue now - go figure, but it definitely caused the video thumbs to fail. turned off debug again, fixed up how we account for current_file_num increases via explicit use of ProcessFileForJob() to increment where required, or just inc. properly. Finally, check if image has transparency, if so convert it to rgb as we cant save it as jpeg otherwise (in thumbnail creation)
Damien De Paoli2021-03-23 18:39:58 +11:00
a2ef27e6a1
had to revert the import line - pylint didnt originally like it this way, cant see issue now - go figure, but it definitely caused the video thumbs to fail
Damien De Paoli2021-03-23 18:38:10 +11:00
92c5ee3e9d
keep processing all dups, even when > pagesize, so that alert at end is definitive about automatic matches that will be deleted. Also, fixed issue where a duplicate in the root dir of an import / storage path, was showing as blank after TrimmedPath()
Damien De Paoli2021-03-23 18:37:32 +11:00
072705005d
removed all references to /static except in SymlinkName()
Damien De Paoli2021-03-23 18:36:07 +11:00
ebd5a8f3ba
make ./static be owned by mythtv (passed in 500/500 for uid/gid) so that it can manipulate files in storage area on mara - still need to work out build args, not just hack it in Dockerfile ENV vars
Damien De Paoli2021-03-23 18:35:43 +11:00
055dd58d34
better formatting for all automatic matches, deal with automatic matching of preferred_paths, put <input type=hidden> fields in for files in storage and import paths, only display headings/content if it actually exists
Damien De Paoli2021-03-21 17:00:36 +11:00
7e14280ec5
made new/better function to deal with path duplicates / reduced duplicate code, fixed overall count vars, improved debugs
Damien De Paoli2021-03-21 16:58:54 +11:00
86ff96fefb
now passing single DD var (duplicate data) from files.py for simplicity, also added the beginnings of support for regex-d auto keeping / auto deleting of files, and paths - noting that path data from dups.py seems to not be working with my test data at present, so html showing it needs testing too
Damien De Paoli2021-03-21 12:18:59 +11:00
2292777b83
fixed bug with no pagesize on fresh DB / first time in fix_dups. Also passing duplicate data (DD) as single object to dups.html
Damien De Paoli2021-03-21 12:17:43 +11:00
054d024ae0
added more debugs into Dump(), its noisier, but while testing in small number of files in DEV, its needed
Damien De Paoli2021-03-21 12:08:21 +11:00
9c263f54e3
minor fix to only remove trailing slash if there is content at all in sig_bit of SymlinkName
Damien De Paoli2021-03-21 12:06:56 +11:00
1de74f8f51
added token settings data for testing so it has a storage path too
Damien De Paoli2021-03-21 10:29:51 +11:00
924058e18d
made pa_job_manager use mythtv:mythtv, but had to hardcode PJM_* vars, I tried to pass them through docker-compose.yml
Damien De Paoli2021-03-18 19:08:30 +11:00
2cd55580a9
rewrote dups.html to now use newer model, where we will auto-delete those that match the regexp, and not show a per row view of these. Also removed extra / unneeded line when processing deleting files
Damien De Paoli2021-03-17 20:04:25 +11:00
08dc646371
first pass of using Duplicate class, rather than files doing all the dup work. The html still is shown preferreds, and does not know there are preferred files and preferred dirs yet
Damien De Paoli2021-03-15 20:36:10 +11:00
f88ef2542f
updated dups.py to have a DupRow class to store the data in a way dot-notation works consistently in Duplicates class, also moved attributes into top of __init__ for consistency, but needed for DupRow to work (implies the attributes are not globally shared per DupRow, which would not work). Broke into a couple more functions for readability, and added back the first-pass duplicate row creation into AddDups -- that needs a better name too
Damien De Paoli2021-03-14 11:51:56 +11:00
8ff61dddfa
trialing a new duplicate class to deal more consistently with the various types of duplicates -- mostly to enable "auto" deleting of duplicates in specific conditions, e.g. in both an import dir and storage dir - just delete dups from import dir
Damien De Paoli2021-03-13 12:36:16 +11:00
0d0607e9c6
made help go via on mouse over instead of onclick
Damien De Paoli2021-03-06 17:26:28 +11:00
76aee3a10a
okay fix_dups page now has functioning pagination, highlights regex matching "good" files as green, and just a file as yellow if we cant find the right one, so easily shows where to really pat attention. Has DBox based help page, and overall just a better UI/UX
Damien De Paoli2021-03-06 17:18:11 +11:00
b9dea327d0
use pagesize not page_size, and pass it in based on job extras, also use path based on job extras, so we fix issue of fix_dups not knowing which path from settings was used (import or storage)
Damien De Paoli2021-03-06 11:45:21 +11:00
f1ec7f9eb6
just make sure file size is the same as well as hash, this should make it nearly impossible for accidentally having 2 files with the same hash that are different
Damien De Paoli2021-03-06 11:18:11 +11:00
1dc8477758
first pass of paginated dups, with drop-down (non-functional), but otherwise pages work - presume if I clicked it to delete, it would, but then I would need to re-do check_dups OR optimise and get it to come back to dups with next page -- probably preferred -- BUT, need to keep job state between page loads?
Damien De Paoli2021-03-03 22:05:58 +11:00