scrivito_crm_form_widget 0.8.0.beta3 → 0.9.0.beta1
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4569ddbae114e16cb7d17dc8e8d2857b0ebc62da
|
4
|
+
data.tar.gz: 262ecd566b718f014b97b5ffc4ee6cc2f71aac55
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a6081661f981e78cd231405670b376559913d60bc2521fa71ff8dd285c594139aa019df5bcea30b78097264a12fbc4d6b50064a699e198182dbc64d1989f1292
|
7
|
+
data.tar.gz: b71cb0354e2f52ea1bd027d5e39aa7b5ead25219c96d866271820bff830ed0311e12612cc8c3ccce535fe7a89ad6678589dfd6a56b5bcc839ff7b67b4ea040f1
|
@@ -11,6 +11,8 @@ class CrmFormWidget < Widget
|
|
11
11
|
attribute :label_position, :enum, values: ['left','top'], default: 'left'
|
12
12
|
attribute :columns, :enum, values: ['one','two'], default: 'one'
|
13
13
|
|
14
|
+
attribute :file_upload, :enum, values: ['Yes','No'], default: 'No'
|
15
|
+
|
14
16
|
def valid_widget_classes_for(field_name)
|
15
17
|
[DynamicAttributeWidget]
|
16
18
|
end
|
@@ -58,4 +60,8 @@ class CrmFormWidget < Widget
|
|
58
60
|
def field_as_select?(options)
|
59
61
|
columns == 'two' || options['valid_values'].count > 5
|
60
62
|
end
|
61
|
-
|
63
|
+
|
64
|
+
def file_upload?
|
65
|
+
file_upload == 'Yes'
|
66
|
+
end
|
67
|
+
end
|
@@ -37,6 +37,11 @@ class CrmFormPresenter
|
|
37
37
|
private
|
38
38
|
def prepare_activity_params
|
39
39
|
@params[:comment_notes] = @dynamic_params if @dynamic_params.present?
|
40
|
+
@params[:comment_attachments] = [@params[:custom_file]] if @params[:custom_file].present?
|
41
|
+
|
42
|
+
if @params[:custom_file].present?
|
43
|
+
@params.delete(:custom_file)
|
44
|
+
end
|
40
45
|
|
41
46
|
@params.delete("widget_id")
|
42
47
|
@params["title"] = @params[:title].empty? ? @activity.id : @params[:title]
|
@@ -124,12 +129,12 @@ class CrmFormPresenter
|
|
124
129
|
|
125
130
|
def validate_params
|
126
131
|
return false if @params.nil?
|
127
|
-
email =
|
132
|
+
email = valid_email?(@params['custom_email'])
|
128
133
|
hook = Obj.respond_to?('crm_form_validation') ? Obj.crm_form_validation(@params) : false
|
129
|
-
email || hook
|
134
|
+
!email || hook
|
130
135
|
end
|
131
136
|
|
132
|
-
def
|
133
|
-
|
137
|
+
def valid_email?(email)
|
138
|
+
/.+@.+\..+/i.match(email).present?
|
134
139
|
end
|
135
140
|
end
|
@@ -15,12 +15,22 @@
|
|
15
15
|
<%= render "crm_form_widget/crm_#{attribute.type}", form: form, name: attribute.field_name, options: attribute.options || {}, label: attribute.label, widget: widget %>
|
16
16
|
<% end %>
|
17
17
|
|
18
|
+
<% if widget.file_upload? %>
|
19
|
+
<div class="form-group form-field-custom-file">
|
20
|
+
<% CrmFormPresenter.send(:attr_accessor, :custom_file) %>
|
21
|
+
<%= form.label :custom_file, t('scrivito_crm_form_widget.view.file', default: 'File'), class: "control-label col-sm-3" %>
|
22
|
+
<div class="col-sm-9">
|
23
|
+
<%= form.file_field :custom_file, class: "form-control" %>
|
24
|
+
</div>
|
25
|
+
</div>
|
26
|
+
<% end %>
|
27
|
+
|
18
28
|
<div class="form-group last">
|
19
29
|
<label class="control-label col-sm-3" for="crm_form_presenter_email">Email</label>
|
20
30
|
<div class="col-sm-9">
|
21
31
|
<input class="form-control" type="text" name="crm_form_presenter[email]" id="crm_form_presenter_email">
|
22
32
|
</div>
|
23
33
|
</div>
|
24
|
-
<%= form.submit widget.submit_button, class: "btn btn-primary pull-right" %>
|
25
34
|
|
26
|
-
|
35
|
+
<%= form.submit widget.submit_button, class: "btn btn-primary pull-right" %>
|
36
|
+
<% end %>
|
@@ -27,6 +27,10 @@
|
|
27
27
|
<%= scrivito_details_for t('scrivito_crm_form_widget.details.columns', default: 'Columns') do %>
|
28
28
|
<%= scrivito_tag :div, widget, :columns %>
|
29
29
|
<% end %>
|
30
|
+
|
31
|
+
<%= scrivito_details_for t('scrivito_crm_form_widget.details.file_upload', default: 'File upload') do %>
|
32
|
+
<%= scrivito_tag :div, widget, :file_upload %>
|
33
|
+
<% end %>
|
30
34
|
</div>
|
31
35
|
|
32
36
|
<div class="tab-panel" id="edit-tags">
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scrivito_crm_form_widget
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0.beta1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scrivito
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-05-
|
11
|
+
date: 2017-05-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: scrivito
|