Commit Graph

47 Commits

Author SHA1 Message Date
Jaisen Mathai 3ad6c0db35
Fix issue where photos without EXIF were not using the correct date for folder or file names #330 (#331)
Fixes #330

Fixes a bug in the code where media.set_original_name() would set the mtime of a photo and then use the newly set mtime for generating the folder and file name.
2019-07-29 23:51:10 -07:00
Jaisen Mathai 12c17c9cac Add a plugin to upload photos to Google Photos (#319)
Fixes #315.

This PR aims to address the [recent changes](https://www.blog.google/products/photos/simplifying-google-photos-and-google-drive/) in Google Photos + Google Drive where syncing between the two is no longer supported.

It works by uploading photos as part of the import process to add a copy of every photo in your library to Google Photos. Google Drive is not required for this plugin to work.

This plugin lets you have all your photos in Google Photos without relying on Google Drive. You can use another cloud storage service like iCloud or Dropbox or no cloud storage at all.

- [x] Add tests for `after()` plugin methods.
- [x] Add support for storage/async support.
- [x] Include plugins into code coverage.
- [x] Sweep code and clean up and add comments.
2019-07-12 01:44:57 -07:00
Jaisen Mathai 7c3ea1e1d7
Create an extendable plugin framework #315 #316 (#318)
This commit introduces the initial version of a plugin framework with tests and sample plugins. This helps address #315 and closes #316.
2019-07-04 02:57:10 -07:00
Andrew DeMaria 92605764f8 Add configuration to optionally capitalize file names (#313)
This commit adds a `capitalization` field under `[File]` in `config.ini` which allows file names to be capitalized.
2019-06-12 14:27:03 -07:00
Matt Carey 2e2c103cfb Fix issue #252 to not modify original source files on import (#272) 2019-02-04 14:20:39 -08:00
Jaisen Mathai 5b07386e2c
Add support for customizing file name via config file. #107 #110 #111 (#225) 2019-01-23 01:06:48 +05:30
Jaisen Mathai 69937ca1a3
Add support for a %custom placeholder for more complex folder names than %location or %date provide #279 (#283) 2019-01-18 16:48:32 -08:00
Jaisen Mathai 4cd91e9f2d
Add support for camera make and model in directory path #254 (#255) 2017-11-14 23:14:26 -08:00
Adam Candy fbc7b04ef2 Fix bug so process_file will set access time on destination instead of source. Closes #237 (#238) 2017-08-06 14:29:34 -07:00
Ove Stavnås e5e811b215 Fix bug with fallback values in full_path variables in config.ini (#234)
* Add test for gh-234

* Force flush of cached configs in test
2017-08-06 14:26:28 -07:00
Jaisen Mathai 9be5ab13fc Skip copying file if source is identical to destination. #210 (#211)
This prevents a zero byte file from being written
2017-04-12 23:42:44 -07:00
Jaisen Mathai e3123872c4 Add fallback folder support when configuring folder hierarchy. #199 (#209)
* add test
2017-04-12 23:33:18 -07:00
Jaisen Mathai 74d8675b20 Add support for multiple levels of folders. #199 (#205)
* Use original name from EXIF instead of parsing assumed file name format. #107
* Updates to docs and code
2017-03-30 19:43:34 +05:30
Jaisen Mathai f7be8f323f Use original name from EXIF instead of parsing assumed file name format. #107 (#202) 2017-03-16 23:43:47 -07:00
Jaisen Mathai 0864f58a12 Add original file name methods to text and media class #186 (#187) 2017-01-22 00:19:44 -08:00
Jaisen Mathai 4a7df2d57d Add improved copy method for large files #173 (#189) 2017-01-21 21:21:03 -08:00
Terence Eden cd5ba92b0b Support user defined folder structure (#5) (#160)
* Custom date directories
* Add config module to parse ini files
* Add method/tests to get a customizable folder path
* Cache path definition
* Initial working version of custom paths
* Add Directory values in sample config
* Refactoring location parsing logic and adding tests
* Remove unused functions
* Add documentation to parse_mask_for_location
* Remove commented out code
* Add tests for migrating old location db to new
2017-01-02 20:58:52 -08:00
Jaisen Mathai 64773655d2 Convert FileSystem.get_all_files to be a generator function 2016-12-19 21:59:58 -08:00
Jaisen Mathai a1d3cb35fc Add log module and tests 2016-11-09 20:07:44 -08:00
Jaisen Mathai 852850d2e6 gh-145 Fix configparser unit test error for python 2 and 3 2016-11-07 20:47:16 -08:00
Jaisen Mathai ea34ccbf6c gh-139 Update logic to set file access/modify time 2016-10-21 20:16:25 -07:00
Daniel Dräs f00d8b8744 gh-139 added change requests 2016-10-21 17:17:00 -07:00
Daniel Dräs 56847511b9 gh-139 Add files via upload
added hours, minutes and seconds
2016-10-21 17:16:36 -07:00
Daniel Dräs 54f3fac155 gh-139 Target Directory on NAS 2016-10-21 17:16:22 -07:00
zserg af36de091e Python 3 compartibility added 2016-08-21 17:58:13 +03:00
Aaron Barnes 63ead49bcb gh-84 Do not attempt to process an invalid file 2016-02-14 21:28:13 +13:00
zserg 91e886163e core and photo_tests fixed 2016-01-26 22:01:05 +03:00
Nathan Ostgard cfe82012b0 gh-70 Adding Sphinx docs 2016-01-09 09:44:39 -08:00
Fabrice Laporte b01b611d26 fix pyflakes warnings reported in non-test files 2016-01-02 18:34:43 +01:00
Jaisen Mathai 60c4acc1b3 gh-58 Fix all pep8 issues reported in non-test files 2016-01-01 23:25:59 -08:00
Jaisen Mathai 3a916aa589 Closes gh-21 Add all tests for FileSystem class and test photo files 2015-12-01 01:03:00 -08:00
Jaisen Mathai 0a72ef481e gh-21 Initial unit tests for FileSystem.create_directory method 2015-12-01 01:03:00 -08:00
Jaisen Mathai f67314f6bc gh-2 Write to EXIF from earlier of modified or access time if no date is found in EXIF 2015-11-29 22:01:27 -08:00
Jaisen Mathai a7aee65ca0 Add initial screen to add config information 2015-11-19 02:31:32 -08:00
Jaisen Mathai a252a29c6b Add import support 2015-11-03 01:38:53 -08:00
Jaisen Mathai bc156a0577 Changes to get updating title and reflecting it in the file name to work.
* Cache metadata when calling get_metadata()
* Removing old title from filename (if set) so we do not end up appending multiple titles in the file name.
2015-10-29 01:12:52 -07:00
Jaisen Mathai 62f6e56bdb Add support for reading/writing titles for photos and videos 2015-10-28 00:19:21 -07:00
Jaisen Mathai 0f7bfd9f23 Restore "Unknown Location" folder 2015-10-16 23:08:48 -07:00
Jaisen Mathai 5316261b7d Refactor code to use pyexiv2 for photos and videos and move methods out to Media class 2015-10-14 00:39:30 -07:00
Jaisen Mathai ad62b0d61d Added FileSystem.process_file and adjust.py 2015-10-13 20:30:30 -07:00
Jaisen Mathai 3ac3b1a624 Remove filename prefix from prior run if it exists 2015-10-12 19:39:58 -07:00
Jaisen Mathai c9d52aaa59 Initial version of photo importer 2015-10-08 02:22:30 -07:00
Jaisen Mathai 0d471e0b4f Add arguments module and turn import.py into proper script with arguments 2015-10-06 22:35:11 -07:00
Jaisen Mathai a03c9c1d42 Update crawl script and FileSystem/Video classes to support proper naming and organizing 2015-10-06 01:28:00 -07:00
Jaisen Mathai 6232810f42 Add comments to video and filesystem classes 2015-10-04 23:36:06 -07:00
Jaisen Mathai f435eaabe6 Add method to recursively get files and implemented for videos 2015-10-04 23:10:46 -07:00
Jaisen Mathai f276d37e7f Initial Commit of working files 2015-10-02 00:23:13 -07:00