photofy 0.3.5 → 0.4.1
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.
- checksums.yaml +4 -4
- data/README.md +0 -3
- data/lib/photofy.rb +2 -2
- data/lib/photofy/dummy_s3methods.rb +19 -0
- metadata +6 -26
- data/lib/photofy/s3methods.rb +0 -85
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2add7237edac4155ae0a095859ac13b60d568a89
|
4
|
+
data.tar.gz: ad0bc7cee2ed54ee24dfb7dc86f1e9180fe7cb38
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 13ebe95eea938e86e0d46e35f9b51ece44de02d52bd5cf5e5628a1671840c65d9dac95738f409e518c9ac0774031a4653eb2b8bf23b871c7d42ca155b48bfca9
|
7
|
+
data.tar.gz: 26f7fdadf2ae7dff282989fb5daa2a00832430f0701d75f927f445a348bc7032592571b22a16dce46cb2e4125d2ca4a64acfca59a25be4c4f5dcecf24ee644f2
|
data/README.md
CHANGED
@@ -39,6 +39,3 @@ Add photo field(s) to model by adding lines like
|
|
39
39
|
`after_photofy :collage, :post_card, Proc.new { |img| img.scale(450, 200) }`
|
40
40
|
> Creates 'post_card' photo field by taking source from 'collage' and scaling it to 450x200px.
|
41
41
|
|
42
|
-
Enables aws s3 as backend storage (may be in initializer).
|
43
|
-
|
44
|
-
`ActiveRecord::Base.photofy_s3_storage({access_key_id: 'xxxxxxxx',secret_access_key: 'xxxxxxxx'}, {bucket: 'test_bucket'})`
|
data/lib/photofy.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'photofy/
|
1
|
+
require 'photofy/dummy_s3methods'
|
2
2
|
require 'photofy/core'
|
3
3
|
require 'tempfile'
|
4
4
|
begin
|
@@ -9,7 +9,7 @@ end
|
|
9
9
|
|
10
10
|
module Photofy
|
11
11
|
def self.included(base)
|
12
|
-
base.extend(
|
12
|
+
base.extend(DummyS3Methods)
|
13
13
|
base.extend(Core)
|
14
14
|
end
|
15
15
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Photofy
|
2
|
+
|
3
|
+
module DummyS3Methods
|
4
|
+
def self.extended(base)
|
5
|
+
base.send(:include, InstanceMethods)
|
6
|
+
end
|
7
|
+
|
8
|
+
module InstanceMethods
|
9
|
+
def s3_connected?
|
10
|
+
self.class.s3_connected?
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def s3_connected?
|
15
|
+
false
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: photofy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Praveen Kumar Sinha
|
@@ -10,30 +10,10 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
14
|
-
dependencies:
|
15
|
-
- !ruby/object:Gem::Dependency
|
16
|
-
name: aws-sdk
|
17
|
-
requirement: !ruby/object:Gem::Requirement
|
18
|
-
requirements:
|
19
|
-
- - "~>"
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: '1.49'
|
22
|
-
- - ">="
|
23
|
-
- !ruby/object:Gem::Version
|
24
|
-
version: 1.49.0
|
25
|
-
type: :runtime
|
26
|
-
prerelease: false
|
27
|
-
version_requirements: !ruby/object:Gem::Requirement
|
28
|
-
requirements:
|
29
|
-
- - "~>"
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
version: '1.49'
|
32
|
-
- - ">="
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version: 1.49.0
|
13
|
+
date: 2015-03-26 00:00:00.000000000 Z
|
14
|
+
dependencies: []
|
35
15
|
description: |2
|
36
|
-
A gem to
|
16
|
+
A simple gem to add accessors on rails models for file upload of pictures/assets (which will be persisted on remote media's disk on object save).
|
37
17
|
Refer documentation for more help.
|
38
18
|
email: praveen.kumar.sinha@gmail.com
|
39
19
|
executables: []
|
@@ -43,7 +23,7 @@ files:
|
|
43
23
|
- README.md
|
44
24
|
- lib/photofy.rb
|
45
25
|
- lib/photofy/core.rb
|
46
|
-
- lib/photofy/
|
26
|
+
- lib/photofy/dummy_s3methods.rb
|
47
27
|
homepage: http://praveenkumarsinha.github.io/Photofy
|
48
28
|
licenses:
|
49
29
|
- MIT
|
@@ -65,7 +45,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
65
45
|
version: '0'
|
66
46
|
requirements: []
|
67
47
|
rubyforge_project:
|
68
|
-
rubygems_version: 2.
|
48
|
+
rubygems_version: 2.4.4
|
69
49
|
signing_key:
|
70
50
|
specification_version: 4
|
71
51
|
summary: Photofy
|
data/lib/photofy/s3methods.rb
DELETED
@@ -1,85 +0,0 @@
|
|
1
|
-
require 'singleton'
|
2
|
-
require 'aws-sdk'
|
3
|
-
|
4
|
-
module Photofy
|
5
|
-
|
6
|
-
class S3Setting
|
7
|
-
include Singleton
|
8
|
-
|
9
|
-
attr_accessor :s3_setup
|
10
|
-
attr_accessor :s3_bucket
|
11
|
-
end
|
12
|
-
|
13
|
-
module S3Methods
|
14
|
-
def self.extended(base)
|
15
|
-
base.send(:include, InstanceMethods)
|
16
|
-
end
|
17
|
-
|
18
|
-
module InstanceMethods
|
19
|
-
def s3_connected?
|
20
|
-
self.class.s3_connected?
|
21
|
-
end
|
22
|
-
|
23
|
-
def s3_bucket
|
24
|
-
S3Setting.instance.s3_bucket
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def s3_connected?
|
29
|
-
(S3Setting.instance.s3_bucket.class == AWS::S3::Bucket)
|
30
|
-
end
|
31
|
-
|
32
|
-
#Enables aws s3 as backend storage.
|
33
|
-
#Takes two arguments:
|
34
|
-
#1. aws_settings. Hash with access_key_id and secret_access_key from aws s3
|
35
|
-
#2. instance_settings. Hash with bucket as valid aws s3 bucket to be
|
36
|
-
#
|
37
|
-
#Example usage:
|
38
|
-
#photofy_s3_storage({access_key_id: 'xxxxxxxx',secret_access_key: 'xxxxxxxx'}, {bucket: 'test_bucket'})
|
39
|
-
def photofy_s3_storage(aws_settings = {}, instance_settings = {})
|
40
|
-
instance_settings[:bucket] ||= 'photofy'
|
41
|
-
(S3Setting.instance.s3_setup ||= {}).merge!(aws_settings: aws_settings, instance_settings: instance_settings)
|
42
|
-
|
43
|
-
try_connect
|
44
|
-
end
|
45
|
-
|
46
|
-
def try_connect
|
47
|
-
if try_accessing_existing_awsconfig
|
48
|
-
setup_bucket
|
49
|
-
else
|
50
|
-
begin
|
51
|
-
AWS.config(S3Setting.instance.s3_setup[:aws_settings])
|
52
|
-
setup_bucket
|
53
|
-
rescue AWS::Errors::MissingCredentialsError => e
|
54
|
-
puts 'Photofy:S3: AWS credentials not provided.'
|
55
|
-
puts e.message
|
56
|
-
rescue AWS::S3::Errors::SignatureDoesNotMatch => e
|
57
|
-
puts 'Photofy:S3: AWS credentials is most probably not correct.'
|
58
|
-
puts e.message
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
def setup_bucket
|
64
|
-
s3 = AWS::S3.new
|
65
|
-
_bucket_name = S3Setting.instance.s3_setup[:instance_settings][:bucket]
|
66
|
-
S3Setting.instance.s3_bucket = if s3.buckets.collect { |x| x.name }.include?(_bucket_name)
|
67
|
-
s3.buckets[_bucket_name]
|
68
|
-
else
|
69
|
-
s3.buckets.create(_bucket_name)
|
70
|
-
end
|
71
|
-
S3Setting.instance.s3_bucket
|
72
|
-
end
|
73
|
-
|
74
|
-
def try_accessing_existing_awsconfig
|
75
|
-
begin
|
76
|
-
setup_bucket
|
77
|
-
rescue AWS::Errors::MissingCredentialsError => e
|
78
|
-
puts 'Photofy:S3: No existing aws config found.'
|
79
|
-
return false
|
80
|
-
end
|
81
|
-
true
|
82
|
-
end
|
83
|
-
|
84
|
-
end
|
85
|
-
end
|