jugyo-filetter 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile CHANGED
@@ -26,6 +26,8 @@ Gem::Specification.new do |s|
26
26
  s.executables = ["filetter"]
27
27
  s.add_dependency("configatron", ">= 2.2.2")
28
28
  s.add_dependency("rubytter", ">= 0.4.5")
29
+ s.add_dependency("rflickr", ">= 2006.02.01")
30
+ s.add_dependency("highline", ">= 1.5.0")
29
31
  s.author = 'jugyo'
30
32
  s.email = 'jugyo.org@gmail.com'
31
33
  s.homepage = 'http://github.com/jugyo/filetter'
@@ -1,5 +1,4 @@
1
1
  # -*- coding: utf-8 -*-
2
- $:.unshift(File.expand_path(File.dirname(__FILE__) + '/modes'))
3
2
 
4
3
  require 'optparse'
5
4
  require 'rubygems'
@@ -46,7 +45,7 @@ module Filetter
46
45
  begin
47
46
  unless mode || load_file
48
47
  puts '=> Run as "sample" mode'
49
- require 'sample'
48
+ require 'modes/sample'
50
49
  else
51
50
  if load_file && File.exist?(load_file)
52
51
  puts "=> load \"#{load_file}\""
@@ -54,7 +53,7 @@ module Filetter
54
53
  end
55
54
  if mode
56
55
  puts "=> Run as \"#{mode}\" mode"
57
- require mode
56
+ require "modes/#{mode}"
58
57
  end
59
58
  end
60
59
  rescue LoadError => e
@@ -1,4 +1,4 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  module Filetter
3
- VERSION = '0.2.4'
3
+ VERSION = '0.2.5'
4
4
  end
@@ -0,0 +1,63 @@
1
+ # -*- coding: utf-8 -*-
2
+ require 'flickr'
3
+ require 'highline/import'
4
+ HighLine.track_eof = false
5
+
6
+ module Filetter
7
+
8
+ def self.open_brawser(url)
9
+ case RUBY_PLATFORM
10
+ when /linux/
11
+ system 'firefox', url
12
+ when /mswin(?!ce)|mingw|bccwin/
13
+ system 'explorer', url
14
+ else
15
+ system 'open', url
16
+ end
17
+ end
18
+
19
+ flickr_api_key = '83f3811287387fa8c604bf3bdcec2c9f'
20
+ flickr_secret = '7c180f792cf64ca9'
21
+ flickr = Flickr.new('./flickr_token', flickr_api_key, flickr_secret)
22
+
23
+ unless flickr.auth.token
24
+ puts 'Please allow to access to your Flickr account.'
25
+ open_brawser flickr.auth.login_link('write')
26
+
27
+ a = ask("Did you have allowed? [Y/n] ") {|q| q.validate = /^(y|yes|n|no)$/i }
28
+ case a
29
+ when /^y/i
30
+ flickr.auth.getToken
31
+ flickr.auth.cache_token
32
+ when /^n/i
33
+ puts 'No token for Flickr authentication!'
34
+ exit!
35
+ end
36
+ end
37
+
38
+ Dir.mkdir('done') unless File.exist?('done')
39
+
40
+ config.flickr.set_default(:title, nil)
41
+ config.flickr.set_default(:description, nil)
42
+ config.flickr.set_default(:public, false)
43
+ config.flickr.set_default(:friend, false)
44
+ config.flickr.set_default(:family, false)
45
+
46
+ add_hook :create do |files, event|
47
+ files.each do |file|
48
+ if File.file?(file) && Pathname.new(file).dirname == Pathname.pwd
49
+ puts "=> Upload '#{file}' to flickr."
50
+ flickr.photos.upload.upload_file(
51
+ file,
52
+ config.flickr.title,
53
+ config.flickr.description,
54
+ config.flickr.public,
55
+ config.flickr.friend,
56
+ config.flickr.family
57
+ )
58
+ rename_to = 'done/' + File.basename(file)
59
+ File.rename(file, rename_to)
60
+ end
61
+ end
62
+ end
63
+ end
@@ -13,7 +13,7 @@ module Filetter
13
13
  files.each do |file|
14
14
  file_name = File.basename(file)
15
15
  rubytter.update(file_name)
16
- puts "=> post to twitter '#{file_name}'"
16
+ puts "=> Post to twitter '#{file_name}'"
17
17
  end
18
18
  end
19
19
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jugyo-filetter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - jugyo
@@ -32,6 +32,26 @@ dependencies:
32
32
  - !ruby/object:Gem::Version
33
33
  version: 0.4.5
34
34
  version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: rflickr
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 2006.02.01
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: highline
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.5.0
54
+ version:
35
55
  description: Filetter is a pluggable tool for file system.
36
56
  email: jugyo.org@gmail.com
37
57
  executables:
@@ -46,6 +66,7 @@ files:
46
66
  - lib/filetter/observer.rb
47
67
  - lib/filetter/version.rb
48
68
  - lib/filetter.rb
69
+ - lib/modes/flickr.rb
49
70
  - lib/modes/mozrepl.rb
50
71
  - lib/modes/sample.rb
51
72
  - lib/modes/twitter.rb