muck-shares 3.1.1 → 3.2.0
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 +1 -0
- data/VERSION +1 -1
- data/app/controllers/muck/email_shares_controller.rb +51 -0
- data/app/helpers/muck_shares_helper.rb +4 -0
- data/app/mailers/share_mailer.rb +12 -0
- data/app/views/email_shares/create.erb +8 -0
- data/app/views/email_shares/new.erb +29 -0
- data/app/views/share_mailer/share_email.html.erb +2 -0
- data/app/views/share_mailer/share_email.text.erb +2 -0
- data/app/views/shares/_form.erb +1 -1
- data/config/locales/en.yml +31 -20
- data/config/routes.rb +2 -0
- data/muck-shares.gemspec +12 -4
- metadata +27 -7
data/Rakefile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.2.0
|
@@ -0,0 +1,51 @@
|
|
1
|
+
class Muck::EmailSharesController < ApplicationController
|
2
|
+
|
3
|
+
before_filter :login_required
|
4
|
+
|
5
|
+
def new
|
6
|
+
flash.discard
|
7
|
+
@emails = params[:emails]
|
8
|
+
@message = CGI.unescape(params[:message] || '')
|
9
|
+
@subject = CGI.unescape(params[:subject] || '')
|
10
|
+
respond_to do |format|
|
11
|
+
format.html { render :template => 'email_shares/new', :layout => 'popup' }
|
12
|
+
format.pjs { render :template => 'email_shares/new', :layout => false }
|
13
|
+
format.js { render :template => 'email_shares/new', :layout => false }
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def create
|
18
|
+
if params[:emails].blank?
|
19
|
+
@result = t('muck.shares.emails_empty')
|
20
|
+
elsif params[:message].blank?
|
21
|
+
@result = t('muck.shares.message_empty')
|
22
|
+
else
|
23
|
+
@emails = params[:emails]
|
24
|
+
@emails = @emails.join(', ') if @emails.is_a?(Array)
|
25
|
+
@emails = @emails.split(/[, ]/) if !@emails.is_a?(Array)
|
26
|
+
@emails = @emails.find_all { |email| !email.blank? }
|
27
|
+
@emails = @emails.flatten.collect { |email| email.strip }
|
28
|
+
check_emails = []
|
29
|
+
subject = params[:subject]
|
30
|
+
message = params[:message]
|
31
|
+
@emails.each do |email|
|
32
|
+
if !check_emails.include?(email)
|
33
|
+
check_emails << email
|
34
|
+
response = ShareMailer.share_email(current_user, email, subject, message).deliver
|
35
|
+
end
|
36
|
+
end
|
37
|
+
@emails = @emails.join(',')
|
38
|
+
@result = t('muck.shares.share_email_success', :emails => @emails)
|
39
|
+
@success = true
|
40
|
+
end
|
41
|
+
respond_to do |format|
|
42
|
+
format.html do
|
43
|
+
flash[:notice] = @result
|
44
|
+
render :template => 'email_shares/new', :layout => 'popup'
|
45
|
+
end
|
46
|
+
format.pjs { render :template => 'email_shares/create', :layout => false }
|
47
|
+
format.js { render :template => 'email_shares/create', :layout => false }
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
jQuery('#share-messages-container').html("<%= escape_javascript(@result) %>");
|
2
|
+
jQuery('#share-messages-container').show();
|
3
|
+
jQuery('.wait-button').show();
|
4
|
+
jQuery('.waiting').hide();
|
5
|
+
<% if @success -%>
|
6
|
+
jQuery('#emails').val('');
|
7
|
+
jQuery('#message').val('');
|
8
|
+
<% end -%>
|
@@ -0,0 +1,29 @@
|
|
1
|
+
<div id="compose-email-share">
|
2
|
+
<%= output_errors('', {:class => 'help-box'}) %>
|
3
|
+
<%= share_ajax_message_container %>
|
4
|
+
<div id="invite-email-share">
|
5
|
+
<%= render :partial => 'invites/contacts_from_services' %>
|
6
|
+
</div>
|
7
|
+
<div id="email-share">
|
8
|
+
<%= muck_form_for(:email_share, :url => {:action => 'create'}, :html => {:id => "email-share-contacts-form", :name => 'email-share-contacts-form', :class => 'ajax'} ) do |f| -%>
|
9
|
+
<div id="share-emails" class="form-row">
|
10
|
+
<label class="email-share-email" for="emails"><%=translate('muck.shares.emails') %></label>
|
11
|
+
<p class="email-share-email"><%=translate('muck.shares.email_friends_prompt') %></p>
|
12
|
+
<%= text_area_tag :emails, @emails %>
|
13
|
+
</div>
|
14
|
+
<div id="share-subject" class="form-row">
|
15
|
+
<label class="email-share-subject" for="subject"><%=translate('muck.shares.subject_label') %></label>
|
16
|
+
<%= text_field_tag :subject, @subject %>
|
17
|
+
</div>
|
18
|
+
<div id="share-message" class="form-row">
|
19
|
+
<label class="email-share-message" for="message"><%=translate('muck.shares.message_label') %></label>
|
20
|
+
<%= text_area_tag :message, @message %>
|
21
|
+
</div>
|
22
|
+
<div class="form-row">
|
23
|
+
<%= f.submit t('muck.shares.email_share_button'), :class => "button email-share-submit wait-button" %>
|
24
|
+
<div class="waiting" style="display:none;"><%=translate('muck.shares.share_wait') %></div>
|
25
|
+
</div>
|
26
|
+
<% end -%>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
<%= render :partial => 'invites/invite_scripts' %>
|
data/app/views/shares/_form.erb
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
<%= f.text_area :message, { :label => t('muck.shares.message'),
|
14
14
|
:class => 'min' } %>
|
15
15
|
</div>
|
16
|
-
<%= capture(f, &block)
|
16
|
+
<%= capture(f, &block) if block -%>
|
17
17
|
<div class="button form-row">
|
18
18
|
<%= f.submit t('muck.shares.add_share_button'), :class => "button share-submit", :id => "share_submit_#{share.dom_id}" %>
|
19
19
|
</div>
|
data/config/locales/en.yml
CHANGED
@@ -1,21 +1,32 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
1
|
+
---
|
2
|
+
en:
|
3
|
+
muck:
|
4
|
+
shares:
|
5
|
+
add_share: Share
|
6
|
+
uri: Url
|
7
|
+
share_removed: Share successfully removed.
|
8
|
+
create_success: Successfully shared page
|
9
|
+
new_share: Share a Link
|
10
|
+
title: Title
|
11
|
+
cancel_share_button: Cancel
|
12
|
+
share_title: Share This Link
|
6
13
|
create_error: "Could not create the share: %{errors}"
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
14
|
+
adding_share: Sharing page...
|
15
|
+
problem_adding_share: There was a problem adding your share
|
16
|
+
share_via_email_title: Share
|
17
|
+
emails: Emails
|
18
|
+
add_share_button: Share
|
19
|
+
cant_delete_share: You don't have permission to delete that share
|
20
|
+
login_prompt: Login to share
|
21
|
+
subject_label: Subject
|
22
|
+
message: Message
|
23
|
+
share_activity_content: shared %{link}. %{message}
|
24
|
+
message_label: Message
|
25
|
+
email_friends_prompt: "Email of friends to share with:"
|
26
|
+
email_share_button: Send
|
27
|
+
emails_empty: You didn't specify any emails
|
28
|
+
message_empty: You didn't specify a message
|
29
|
+
share_email_success: "Emails have been sent to: %{emails}"
|
30
|
+
share_wait: Please Wait....
|
31
|
+
activity_templates:
|
32
|
+
share: Shares
|
data/config/routes.rb
CHANGED
data/muck-shares.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{muck-shares}
|
8
|
-
s.version = "3.
|
8
|
+
s.version = "3.2.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Justin Ball", "Joel Duffin"]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-05-06}
|
13
13
|
s.description = %q{The share engine for the muck system.}
|
14
14
|
s.email = %q{justin@tatemae.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -20,9 +20,15 @@ Gem::Specification.new do |s|
|
|
20
20
|
"README.rdoc",
|
21
21
|
"Rakefile",
|
22
22
|
"VERSION",
|
23
|
+
"app/controllers/muck/email_shares_controller.rb",
|
23
24
|
"app/controllers/muck/shares_controller.rb",
|
24
25
|
"app/helpers/muck_shares_helper.rb",
|
26
|
+
"app/mailers/share_mailer.rb",
|
25
27
|
"app/views/activity_templates/_share.erb",
|
28
|
+
"app/views/email_shares/create.erb",
|
29
|
+
"app/views/email_shares/new.erb",
|
30
|
+
"app/views/share_mailer/share_email.html.erb",
|
31
|
+
"app/views/share_mailer/share_email.text.erb",
|
26
32
|
"app/views/shares/_form.erb",
|
27
33
|
"app/views/shares/_share.erb",
|
28
34
|
"app/views/shares/destroy.js.erb",
|
@@ -86,11 +92,10 @@ Gem::Specification.new do |s|
|
|
86
92
|
]
|
87
93
|
s.homepage = %q{http://github.com/tatemae/muckshares}
|
88
94
|
s.require_paths = ["lib"]
|
89
|
-
s.rubygems_version = %q{1.
|
95
|
+
s.rubygems_version = %q{1.6.0}
|
90
96
|
s.summary = %q{The share engine for the muck system}
|
91
97
|
|
92
98
|
if s.respond_to? :specification_version then
|
93
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
94
99
|
s.specification_version = 3
|
95
100
|
|
96
101
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
@@ -98,17 +103,20 @@ Gem::Specification.new do |s|
|
|
98
103
|
s.add_runtime_dependency(%q<muck-users>, [">= 0"])
|
99
104
|
s.add_runtime_dependency(%q<muck-activities>, [">= 0"])
|
100
105
|
s.add_runtime_dependency(%q<muck-comments>, [">= 0"])
|
106
|
+
s.add_runtime_dependency(%q<muck-invites>, [">= 0"])
|
101
107
|
else
|
102
108
|
s.add_dependency(%q<muck-engine>, [">= 0"])
|
103
109
|
s.add_dependency(%q<muck-users>, [">= 0"])
|
104
110
|
s.add_dependency(%q<muck-activities>, [">= 0"])
|
105
111
|
s.add_dependency(%q<muck-comments>, [">= 0"])
|
112
|
+
s.add_dependency(%q<muck-invites>, [">= 0"])
|
106
113
|
end
|
107
114
|
else
|
108
115
|
s.add_dependency(%q<muck-engine>, [">= 0"])
|
109
116
|
s.add_dependency(%q<muck-users>, [">= 0"])
|
110
117
|
s.add_dependency(%q<muck-activities>, [">= 0"])
|
111
118
|
s.add_dependency(%q<muck-comments>, [">= 0"])
|
119
|
+
s.add_dependency(%q<muck-invites>, [">= 0"])
|
112
120
|
end
|
113
121
|
end
|
114
122
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: muck-shares
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 15
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 3
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 3.
|
8
|
+
- 2
|
9
|
+
- 0
|
10
|
+
version: 3.2.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Justin Ball
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-
|
19
|
+
date: 2011-05-06 00:00:00 -06:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -75,6 +75,20 @@ dependencies:
|
|
75
75
|
version: "0"
|
76
76
|
type: :runtime
|
77
77
|
version_requirements: *id004
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: muck-invites
|
80
|
+
prerelease: false
|
81
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
hash: 3
|
87
|
+
segments:
|
88
|
+
- 0
|
89
|
+
version: "0"
|
90
|
+
type: :runtime
|
91
|
+
version_requirements: *id005
|
78
92
|
description: The share engine for the muck system.
|
79
93
|
email: justin@tatemae.com
|
80
94
|
executables: []
|
@@ -88,9 +102,15 @@ files:
|
|
88
102
|
- README.rdoc
|
89
103
|
- Rakefile
|
90
104
|
- VERSION
|
105
|
+
- app/controllers/muck/email_shares_controller.rb
|
91
106
|
- app/controllers/muck/shares_controller.rb
|
92
107
|
- app/helpers/muck_shares_helper.rb
|
108
|
+
- app/mailers/share_mailer.rb
|
93
109
|
- app/views/activity_templates/_share.erb
|
110
|
+
- app/views/email_shares/create.erb
|
111
|
+
- app/views/email_shares/new.erb
|
112
|
+
- app/views/share_mailer/share_email.html.erb
|
113
|
+
- app/views/share_mailer/share_email.text.erb
|
94
114
|
- app/views/shares/_form.erb
|
95
115
|
- app/views/shares/_share.erb
|
96
116
|
- app/views/shares/destroy.js.erb
|
@@ -181,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
181
201
|
requirements: []
|
182
202
|
|
183
203
|
rubyforge_project:
|
184
|
-
rubygems_version: 1.
|
204
|
+
rubygems_version: 1.6.0
|
185
205
|
signing_key:
|
186
206
|
specification_version: 3
|
187
207
|
summary: The share engine for the muck system
|