KonaLast 0.0.3

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.tar.gz.sig ADDED
Binary file
data/.gitignore ADDED
@@ -0,0 +1,2 @@
1
+ /Gemfile.lock
2
+ /.idea/
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in KonaLast.gemspec
4
+ gemspec
data/KonaLast.gemspec ADDED
@@ -0,0 +1,24 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'KonaLast/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'KonaLast'
8
+ spec.version = KonaLast::VERSION
9
+ spec.authors = ['zeriyu']
10
+ spec.email = ['serhiy94@gmail.com']
11
+ spec.summary = %q{Get last x pictures from konachan}
12
+ spec.description = %q{Something else, maybe soon.}
13
+ spec.homepage = 'http://zeriyu.github.io'
14
+ spec.license = 'WTFPL'
15
+ spec.cert_chain = ['certs/zeriyu.pem']
16
+ spec.signing_key = File.expand_path("~/.ssh/gem-private_key.pem") if $0 =~ /gem\z/
17
+
18
+ spec.files = `git ls-files -z`.split("\x0")
19
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
20
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
21
+ spec.require_paths = ['lib']
22
+
23
+ spec.add_development_dependency 'bundler', '~> 1.7'
24
+ end
data/LICENSE.txt ADDED
@@ -0,0 +1,13 @@
1
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
2
+ Version 2, December 2004
3
+
4
+ Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
5
+
6
+ Everyone is permitted to copy and distribute verbatim or modified
7
+ copies of this license document, and changing it is allowed as long
8
+ as the name is changed.
9
+
10
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
11
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
12
+
13
+ 0. You just DO WHAT THE FUCK YOU WANT TO.
data/README.md ADDED
@@ -0,0 +1,35 @@
1
+ # KonaLast
2
+
3
+ Retrieves last images from konachan
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'KonaLast'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install KonaLast
20
+
21
+ ## Usage
22
+
23
+ $ kona-ask number
24
+
25
+ ### Example
26
+
27
+ $ kona-ask 5 # => retrives last 5 images
28
+
29
+ ## Contributing
30
+
31
+ 1. Fork it ( https://github.com/zeriyu/KonaLast/fork )
32
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
33
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
34
+ 4. Push to the branch (`git push origin my-new-feature`)
35
+ 5. Create a new Pull Request
data/bin/kona-ask ADDED
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env ruby
2
+ require 'KonaLast'
3
+
4
+ kona = KonaLast::Site.new
5
+ utils = KonaLast::Utils.new
6
+
7
+
8
+ options = utils.options(ARGV[0])
9
+
10
+ reply = kona.ask(options)
11
+ message = utils.translate(reply)
12
+
13
+ utils.print(message)
data/certs/zeriyu.pem ADDED
@@ -0,0 +1,20 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIDMjCCAhqgAwIBAgIBADANBgkqhkiG9w0BAQUFADA/MREwDwYDVQQDDAhzZXJo
3
+ aXk5NDEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
4
+ MB4XDTE0MDkyMDIwMjk0N1oXDTE1MDkyMDIwMjk0N1owPzERMA8GA1UEAwwIc2Vy
5
+ aGl5OTQxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
6
+ bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKZnFJKklGeojdhuutJn
7
+ m0gZVpf7GwftsnrTfhdbSovi4qBQAV47Vss2W7xbbK3mZPu7MNNjVN8j8YE+D1ep
8
+ yT4zsIT/XUrpbxA7xj+rOJkfB9fbxmPatpKqm5p1Q1ufZnBXzV9qRpR3J3w5q2mt
9
+ JecTCP2oL5wod3+m6dlD19T6KxyhYmqrzK7GSyWNy0CyvaZF9xCDxrYwd1R/hNnu
10
+ 3Bu3HfS1TuBdVUeBNChS/FNPpURZonCtpqfMK0tSzAtMEZvb91PHzrBm3751qsq0
11
+ FePIMo9Hr95zool+HG77epCTqkrbYdXYyS3Fezrl1AKoXqnQ279T8aW6iuTo/Vvy
12
+ jkcCAwEAAaM5MDcwCQYDVR0TBAIwADAdBgNVHQ4EFgQUWQCdB0J/VAmZ4hVbEYho
13
+ PgcyFNAwCwYDVR0PBAQDAgSwMA0GCSqGSIb3DQEBBQUAA4IBAQATFOaD63bXo2Hb
14
+ eRbG9Bnu5svdlKLzn2vji2uJB+WwNahALFuG3HpFEhdWaJxko/tLFJLd4o80yjEj
15
+ JJhR2KGxKcwM/m6qmL3Ra6Sdk7t5ErTpdvFca5MQkHTA0g6jegH7WKzDJssKT0Il
16
+ e6VgFdDTWFJ/uyl2PbQHV4v7AQ2vQ/QQVIJRndHACivhxHmGhai3IMkB7CS04Ad4
17
+ joqz8D5EG3DGjs+T7fko9IhwYpS85mhjPuaWV5u0qnlhNQ+hCsMEq1B/sm1pTiwM
18
+ H4KiWlHrAt89JxhzAXIRQjqVgGgM+RSx+nW2/t6JXefI1hMJjmcHflYwLnVxkzdF
19
+ oLGqlU6n
20
+ -----END CERTIFICATE-----
data/lib/KonaLast.rb ADDED
@@ -0,0 +1,45 @@
1
+ require 'net/http'
2
+ require 'json'
3
+
4
+ module KonaLast
5
+ class Utils
6
+ def options(limit, url='http://konachan.com/post.json')
7
+ if limit.nil?
8
+ num = '100'
9
+ else
10
+ if limit.to_i > 100
11
+ warn "#{limit} is too much, I'll give you just 5"
12
+ num = '5'
13
+ else
14
+ num = limit
15
+ end
16
+ end
17
+
18
+ {
19
+ :api => URI(url),
20
+ :limit => num
21
+ }
22
+ end
23
+
24
+ def translate(json)
25
+ JSON.parse(json)
26
+ end
27
+ # @return [String] with the "pretty output"
28
+ # @todo: prettify the output
29
+ def print(message)
30
+ message.each do |image|
31
+ puts image['file_url']
32
+ end
33
+
34
+ end
35
+ end
36
+
37
+ class Site
38
+ # @reurn [JSON] if everything is ok
39
+ # @todo: escape empty response
40
+ def ask(options)
41
+ response = Net::HTTP.post_form(options[:api], 'limit' => options[:limit])
42
+ response.body
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,3 @@
1
+ module KonaLast
2
+ VERSION = '0.0.3'
3
+ end
metadata ADDED
@@ -0,0 +1,101 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: KonaLast
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - zeriyu
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain:
12
+ - !binary |-
13
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURNakNDQWhxZ0F3SUJB
14
+ Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREEvTVJFd0R3WURWUVFEREFoelpY
15
+ Sm8KYVhrNU5ERVZNQk1HQ2dtU0pvbVQ4aXhrQVJrV0JXZHRZV2xzTVJNd0VR
16
+ WUtDWkltaVpQeUxHUUJHUllEWTI5dApNQjRYRFRFME1Ea3lNREl3TWprME4x
17
+ b1hEVEUxTURreU1ESXdNamswTjFvd1B6RVJNQThHQTFVRUF3d0ljMlZ5CmFH
18
+ bDVPVFF4RlRBVEJnb0praWFKay9Jc1pBRVpGZ1ZuYldGcGJERVRNQkVHQ2dt
19
+ U0pvbVQ4aXhrQVJrV0EyTnYKYlRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFB
20
+ RGdnRVBBRENDQVFvQ2dnRUJBS1puRkpLa2xHZW9qZGh1dXRKbgptMGdaVnBm
21
+ N0d3ZnRzbnJUZmhkYlNvdmk0cUJRQVY0N1ZzczJXN3hiYkszbVpQdTdNTk5q
22
+ Vk44ajhZRStEMWVwCnlUNHpzSVQvWFVycGJ4QTd4aityT0prZkI5ZmJ4bVBh
23
+ dHBLcW01cDFRMXVmWm5CWHpWOXFScFIzSjN3NXEybXQKSmVjVENQMm9MNXdv
24
+ ZDMrbTZkbEQxOVQ2S3h5aFltcXJ6SzdHU3lXTnkwQ3l2YVpGOXhDRHhyWXdk
25
+ MVIvaE5udQozQnUzSGZTMVR1QmRWVWVCTkNoUy9GTlBwVVJab25DdHBxZk1L
26
+ MHRTekF0TUVadmI5MVBIenJCbTM3NTFxc3EwCkZlUElNbzlIcjk1em9vbCtI
27
+ Rzc3ZXBDVHFrcmJZZFhZeVMzRmV6cmwxQUtvWHFuUTI3OVQ4YVc2aXVUby9W
28
+ dnkKamtjQ0F3RUFBYU01TURjd0NRWURWUjBUQkFJd0FEQWRCZ05WSFE0RUZn
29
+ UVVXUUNkQjBKL1ZBbVo0aFZiRVlobwpQZ2N5Rk5Bd0N3WURWUjBQQkFRREFn
30
+ U3dNQTBHQ1NxR1NJYjNEUUVCQlFVQUE0SUJBUUFURk9hRDYzYlhvMkhiCmVS
31
+ Ykc5Qm51NXN2ZGxLTHpuMnZqaTJ1SkIrV3dOYWhBTEZ1RzNIcEZFaGRXYUp4
32
+ a28vdExGSkxkNG84MHlqRWoKSkpoUjJLR3hLY3dNL202cW1MM1JhNlNkazd0
33
+ NUVyVHBkdkZjYTVNUWtIVEEwZzZqZWdIN1dLekRKc3NLVDBJbAplNlZnRmRE
34
+ VFdGSi91eWwyUGJRSFY0djdBUTJ2US9RUVZJSlJuZEhBQ2l2aHhIbUdoYWkz
35
+ SU1rQjdDUzA0QWQ0CmpvcXo4RDVFRzNER2pzK1Q3ZmtvOUlod1lwUzg1bWhq
36
+ UHVhV1Y1dTBxbmxoTlEraENzTUVxMUIvc20xcFRpd00KSDRLaVdsSHJBdDg5
37
+ SnhoekFYSVJRanFWZ0dnTStSU3grblcyL3Q2SlhlZkkxaE1Kam1jSGZsWXdM
38
+ blZ4a3pkRgpvTEdxbFU2bgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
39
+ date: 2014-09-20 00:00:00.000000000 Z
40
+ dependencies:
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '1.7'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ~>
55
+ - !ruby/object:Gem::Version
56
+ version: '1.7'
57
+ description: Something else, maybe soon.
58
+ email:
59
+ - serhiy94@gmail.com
60
+ executables:
61
+ - kona-ask
62
+ extensions: []
63
+ extra_rdoc_files: []
64
+ files:
65
+ - .gitignore
66
+ - .idea/dictionaries/Serhiy.xml
67
+ - Gemfile
68
+ - KonaLast-0.0.3.gem
69
+ - KonaLast.gemspec
70
+ - LICENSE.txt
71
+ - README.md
72
+ - bin/kona-ask
73
+ - certs/zeriyu.pem
74
+ - lib/KonaLast.rb
75
+ - lib/KonaLast/version.rb
76
+ homepage: http://zeriyu.github.io
77
+ licenses:
78
+ - WTFPL
79
+ post_install_message:
80
+ rdoc_options: []
81
+ require_paths:
82
+ - lib
83
+ required_ruby_version: !ruby/object:Gem::Requirement
84
+ none: false
85
+ requirements:
86
+ - - ! '>='
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ required_rubygems_version: !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ! '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ requirements: []
96
+ rubyforge_project:
97
+ rubygems_version: 1.8.28
98
+ signing_key:
99
+ specification_version: 3
100
+ summary: Get last x pictures from konachan
101
+ test_files: []
metadata.gz.sig ADDED
Binary file