scrivito_jr_form_widget 0.0.5 → 0.0.7
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/app/models/jr_form_widget.rb +12 -1
- data/app/presenter/jr_form_presenter.rb +14 -3
- data/app/views/jr_form_widget/_jr_multienum.html.erb +8 -1
- data/app/views/jr_form_widget/_jr_string.html.erb +1 -1
- data/app/views/jr_form_widget/_jr_text.html.erb +1 -1
- data/app/views/jr_form_widget/details.html.erb +10 -0
- data/lib/scrivito_jr_form_widget/version.rb +1 -1
- data/scrivito/migrate/0_create_jr_form_widget.rb +2 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 676dbda876781edca0055d27c8c41d8a242b6bed
|
4
|
+
data.tar.gz: d5ff7437b7e00abc0cbe4303b17c604fb690da67
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 586ec51684c0935eecd0a5656a42dea0f4dc0ca1b37ba163d48b60318e445334b31ccde23f63336bfd4a1ed32f889c1da18e4b6ebcf39189230d58c48ce50858
|
7
|
+
data.tar.gz: e805c699337fbdbd693de4e55090add43872a98abdb02bc6928eb618300b4a8f0bd0ba42de07e6370ee365d829f0649671b1161879f5b82144e88e450f4e7b65
|
@@ -1,8 +1,15 @@
|
|
1
1
|
class JrFormWidget < Widget
|
2
2
|
include JustRelate
|
3
3
|
|
4
|
+
attribute :activity_id, :string
|
5
|
+
attribute :event_id, :string
|
6
|
+
attribute :subject, :string
|
7
|
+
attribute :tags, :string
|
8
|
+
attribute :redirect_to, :reference
|
9
|
+
attribute :submit_button_text, :string
|
10
|
+
|
4
11
|
def self.activities
|
5
|
-
Obj.try(:jr_activity_filter) || JustRelate::Type.all.
|
12
|
+
Obj.try(:jr_activity_filter) || JustRelate::Type.all.select {|i| i.item_base_type == "Activity"}
|
6
13
|
end
|
7
14
|
|
8
15
|
def attributes
|
@@ -20,4 +27,8 @@ class JrFormWidget < Widget
|
|
20
27
|
def submit_button
|
21
28
|
submit_button_text.present? ? submit_button_text : "send"
|
22
29
|
end
|
30
|
+
|
31
|
+
def self.events
|
32
|
+
Obj.try(:jr_activity_filter) || JustRelate::Event.all.to_a
|
33
|
+
end
|
23
34
|
end
|
@@ -24,11 +24,12 @@ class JrFormPresenter < JrFormAttributes
|
|
24
24
|
|
25
25
|
if contact
|
26
26
|
set_params_for_activty(contact)
|
27
|
+
add_contact_to_event(contact) if @widget.event_id.present?
|
27
28
|
end
|
28
29
|
|
29
30
|
@params["title"] = @params[:title].empty? ? @activity.id : @params[:title]
|
30
31
|
@params["type_id"] = @activity.id
|
31
|
-
@params["state"] = '
|
32
|
+
@params["state"] = @activity.attributes['states'].first
|
32
33
|
|
33
34
|
activity = JustRelate::Activity.create(@params)
|
34
35
|
|
@@ -54,9 +55,19 @@ class JrFormPresenter < JrFormAttributes
|
|
54
55
|
return contact
|
55
56
|
end
|
56
57
|
|
58
|
+
def add_contact_to_event(contact)
|
59
|
+
JustRelate::EventContact.create({
|
60
|
+
contact_id: contact.id,
|
61
|
+
event_id: @widget.event_id,
|
62
|
+
state: 'registered'
|
63
|
+
})
|
64
|
+
end
|
65
|
+
|
57
66
|
def add_tags_to(contact)
|
58
|
-
|
59
|
-
|
67
|
+
if @widget.tags
|
68
|
+
tags = contact.tags + @widget.tags.split("|")
|
69
|
+
contact.update({tags: tags})
|
70
|
+
end
|
60
71
|
end
|
61
72
|
|
62
73
|
def set_params_for_activty(contact)
|
@@ -1,6 +1,13 @@
|
|
1
1
|
<div class="form-group">
|
2
2
|
<%= form.label name.to_sym, class: "control-label col-sm-3 #{options[:mandatory] ? 'mandatory' : ''}" %>
|
3
3
|
<div class="col-sm-9">
|
4
|
-
|
4
|
+
<% options['valid_values'].each do |value| %>
|
5
|
+
<div class="^checkbox">
|
6
|
+
<%= form.label "#{name}_#{value.downcase}" do %>
|
7
|
+
<%= form.check_box name.to_sym, value %>
|
8
|
+
<%= t("helpers.label.jr_form_presenter.#{name}_option.#{value.downcase}") %>
|
9
|
+
<% end %>
|
10
|
+
</div>
|
11
|
+
<% end %>
|
5
12
|
</div>
|
6
13
|
</div>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div class="form-group">
|
2
2
|
<%= form.label name.to_sym, class: "control-label col-sm-3 #{options[:mandatory] ? 'mandatory' : ''}" %>
|
3
3
|
<div class="col-sm-9">
|
4
|
-
<%= form.text_field name.to_sym, class: "form-control" %>
|
4
|
+
<%= form.text_field name.to_sym, class: "form-control", maxlength: options[:maxlength] %>
|
5
5
|
</div>
|
6
6
|
</div>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div class="form-group">
|
2
2
|
<%= form.label name.to_sym, class: "control-label col-sm-3 #{options[:mandatory] ? 'mandatory' : ''}" %>
|
3
3
|
<div class="col-sm-9">
|
4
|
-
<%= form.text_area name.to_sym, class: "form-control" %>
|
4
|
+
<%= form.text_area name.to_sym, class: "form-control", maxlength: options[:maxlength] %>
|
5
5
|
</div>
|
6
6
|
</div>
|
@@ -3,6 +3,7 @@
|
|
3
3
|
<li class="active" data-panel-target="#edit-general">General</li>
|
4
4
|
<li data-panel-target="#edit-tags">Tags</li>
|
5
5
|
<li data-panel-target="#edit-activity">Activity</li>
|
6
|
+
<li data-panel-target="#edit-event">Event</li>
|
6
7
|
</ul>
|
7
8
|
|
8
9
|
<div class="tab-panels">
|
@@ -25,5 +26,14 @@
|
|
25
26
|
<h4>Activity</h4>
|
26
27
|
<%= scrivito_toggle_button_editor widget, :activity_id, JrFormWidget.activities.map { |a| a.id } %>
|
27
28
|
</div>
|
29
|
+
|
30
|
+
<div class="tab-panel" id="edit-event">
|
31
|
+
<h4>Activity</h4>
|
32
|
+
<%= scrivito_toggle_button_editor widget, :event_id, JrFormWidget.events do |event|
|
33
|
+
scrivito_tag(:button, widget, :event_id, data: {editor: 'scrivito-toggle-button', content: event.id}) do
|
34
|
+
event.name
|
35
|
+
end
|
36
|
+
end %>
|
37
|
+
</div>
|
28
38
|
</div>
|
29
39
|
</div>
|
@@ -6,10 +6,11 @@ class CreateJrFormWidget < ::Scrivito::Migration
|
|
6
6
|
title: 'Just Relate Fromular Widget',
|
7
7
|
attributes: [
|
8
8
|
{name: "activity_id", type: "string"},
|
9
|
+
{name: "event_id", type: "string"},
|
9
10
|
{name: "subject", type: "string"},
|
10
11
|
{name: "tags", type: "string"},
|
11
12
|
{name: "redirect_to", type: "reference"},
|
12
|
-
{name: "submit_button_text", type: "string"}
|
13
|
+
{name: "submit_button_text", type: "string"},
|
13
14
|
]
|
14
15
|
)
|
15
16
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scrivito_jr_form_widget
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scrivito
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-04-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|