Skip to content

Commit

Permalink
Merge branch 'refactoring'
Browse files Browse the repository at this point in the history
  • Loading branch information
ivandokov committed Feb 8, 2018
2 parents 8fd31ce + 42cb4a4 commit 82231c6
Show file tree
Hide file tree
Showing 29 changed files with 865 additions and 653 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
Expand Down
13 changes: 13 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
language: python
python:
- "3.4"
- "3.5"
- "3.6"
before_install:
- sudo apt-get install -y libimage-exiftool-perl
install:
- pip install -r requirements-dev.txt
script:
- pytest
notifications:
email: false
78 changes: 78 additions & 0 deletions __main__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
#!/usr/bin/env python3
import getopt
import os
import re
import sys

from src.date import Date
from src.dependency import check_dependencies
from src.help import help
from src.phockup import Phockup
from src.printer import Printer

version = '1.4.1'
printer = Printer()


def main(argv):
check_dependencies()

move = False
link = False
date_regex = None
dir_format = os.path.sep.join(['%Y', '%m', '%d'])

try:
opts, args = getopt.getopt(argv[2:], "d:r:mlh", ["date=", "regex=", "move", "link", "help"])
except getopt.GetoptError:
help(version)
sys.exit(2)

for opt, arg in opts:
if opt in ("-h", "--help"):
help(version)
sys.exit(2)

if opt in ("-d", "--date"):
if not arg:
printer.print.error("Date format cannot be empty")
dir_format = Date().parse(arg)

if opt in ("-m", "--move"):
move = True
printer.line("Using move strategy!")

if opt in ("-l", "--link"):
link = True
printer.line("Using link strategy!")

if opt in ("-r", "--regex"):
try:
date_regex = re.compile(arg)
except:
printer.error("Provided regex is invalid!")
sys.exit(2)

if link and move:
printer.error("Can't use move and link strategy together!")
sys.exit(1)

if len(argv) < 2:
help(version)
sys.exit(2)

return Phockup(
argv[0], argv[1],
dir_format=dir_format,
move=move,
link=link,
date_regex=date_regex
)


if __name__ == '__main__':
try:
main(sys.argv[1:])
except KeyboardInterrupt:
printer.empty().line('Exiting...')
sys.exit(0)
Loading

0 comments on commit 82231c6

Please sign in to comment.