hobo_rapid 2.1.1 → 2.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/taglibs/buttons/delete-button.dryml +1 -2
- data/taglibs/html/a.dryml +2 -0
- data/taglibs/inputs/check_many.dryml +2 -4
- data/taglibs/inputs/select_many.dryml +3 -2
- data/taglibs/inputs/select_one.dryml +4 -7
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9c315bf6c9cc975bbb615c85cf9bbf1f7f64b3b8
|
4
|
+
data.tar.gz: 41b597e0a0e35c44ca514f18e99f6b3a8fd59b66
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 26ab08c92cdb76ec208f9b04d936ce93e641cefa3fbf1706a14a1393f9c266f036dac7d647379055d7e7c1910973c4737a094d21e524cd405ce0801b2c88f1cc
|
7
|
+
data.tar.gz: 2130965d96ba503771c857c4085f4390b040255fa8df5e992033e920ade5d6c2c730db298d44a30d516a200eb1a77702e874d85697b7baa798cf3dfc05fd4c20
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.1.
|
1
|
+
2.1.2
|
@@ -54,8 +54,7 @@ All the standard ajax attributes *except the callbacks* are supported (see the m
|
|
54
54
|
attributes[:type] ||= 'submit'
|
55
55
|
end
|
56
56
|
label ||= t("hobo.actions.remove", :default=>"Remove")
|
57
|
-
confirm = t("hobo.messages.
|
58
|
-
ajax_attrs[:confirm] = confirm if confirm
|
57
|
+
ajax_attrs[:confirm] = confirm ? confirm : t("hobo.messages.confirm_delete", :name => this.to_s, :default=>"Are you sure that you want to delete #{this.to_s}?")
|
59
58
|
|
60
59
|
add_classes!(attributes,
|
61
60
|
image ? "image-button" : "button",
|
data/taglibs/html/a.dryml
CHANGED
@@ -137,6 +137,8 @@ The standard AJAX attributes are supported.
|
|
137
137
|
href = object_url(target, "new", params)
|
138
138
|
|
139
139
|
if href && (force || can_create?(new_record))
|
140
|
+
# Remove the object from memory after checking permissions
|
141
|
+
target.delete(new_record) if new_record && target.respond_to?(:build)
|
140
142
|
new_class_name = if target.respond_to?(:proxy_association)
|
141
143
|
target.proxy_association.reflection.klass.name
|
142
144
|
else
|
@@ -9,10 +9,8 @@
|
|
9
9
|
<def tag="check-many" attrs="options, disabled"><%
|
10
10
|
collection = this
|
11
11
|
param_name = param_name_for_this
|
12
|
-
options ||=
|
13
|
-
|
14
|
-
this_field_reflection.klass.all(:conditions => conditions, :limit => 100).select {|x| can_view?(x)}
|
15
|
-
end
|
12
|
+
options ||= \
|
13
|
+
this_field_reflection.klass.all.merge(this_field_reflection.scope).limit(100).select {|x| can_view?(x)}
|
16
14
|
-%>
|
17
15
|
<ul class="check-many" param="default" merge-attrs>
|
18
16
|
<input type="hidden" name="#{param_name}[]" value=""/><% # ensure all items are removed when nothing checked
|
@@ -17,9 +17,10 @@ To use this tag, the model of the items the user is chosing *must* have unique n
|
|
17
17
|
`name`: the parameter name. Defaults to `param_name_for_this`.
|
18
18
|
|
19
19
|
%>
|
20
|
-
<def tag="select-many" attrs="options, remove-label, prompt, disabled, name"><%
|
20
|
+
<def tag="select-many" polymorphic attrs="options, remove-label, prompt, disabled, name"><%
|
21
21
|
prompt ||= ht("#{this_field_reflection.klass.to_s.underscore}.form.select_many.prompt", :default=>"Add #{this_field.titleize.singularize}")
|
22
|
-
options ||=
|
22
|
+
options ||= \
|
23
|
+
this_field_reflection.klass.all.merge(this_field_reflection.scope).select {|x| can_view?(x)}
|
23
24
|
name ||= param_name_for_this
|
24
25
|
|
25
26
|
values = this
|
@@ -6,7 +6,7 @@ This is the default input that Rapid uses for `belongs_to` associations. The men
|
|
6
6
|
|
7
7
|
- `include-none` - whether to include a 'none' option (i.e. set the foreign key to null). If this value is not supplied, the default is "true" if the current value is nil; otherwise the default is "false". One implication of this is that the default may change when the form is re-rendered due to a validation failure. Setting this value explicitly is recommended.
|
8
8
|
- `blank-message` - the message for the 'none' option. Defaults to "(No `<model-name-human>`)", e.g. "(No Product)"
|
9
|
-
- `options` - an array of records to include in the menu. Defaults to the all the records in the target table that match any
|
9
|
+
- `options` - an array of records to include in the menu. Defaults to the all the records in the target table that match any scope declared on the `has_many` (subject to `limit`)
|
10
10
|
- `sort` - whether to sort the array of options. Defaults to no sorting.
|
11
11
|
- `limit` - if `options` is not specified, this limits the number of records. Default: 100
|
12
12
|
- `text_method` - The method to call on each record to get the text for the option. Multiple methods are supported ie "institution.name"
|
@@ -16,16 +16,13 @@ This is the default input that Rapid uses for `belongs_to` associations. The men
|
|
16
16
|
For situations where there are too many target records to practically include in a menu, `<name-one>` provides an autocompleter which would be more suitable.
|
17
17
|
|
18
18
|
-->
|
19
|
-
<def tag="select-one" attrs="include-none, blank-message, options, sort, limit, text-method"><%
|
19
|
+
<def tag="select-one" polymorphic attrs="include-none, blank-message, options, sort, limit, text-method"><%
|
20
20
|
raise Hobo::PermissionDeniedError.new("Not allowed to edit #{this_field}") if !attributes[:disabled] && !can_edit?
|
21
21
|
blank_message ||= ht("#{this_type.name.underscore}.messages.none", :default=>"No #{this_type.model_name.human} available.")
|
22
22
|
limit ||= 100
|
23
23
|
|
24
|
-
options ||=
|
25
|
-
|
26
|
-
order = this_field_reflection.klass.default_order
|
27
|
-
this_field_reflection.klass.where(conditions).limit(limit).order(order).select {|x| can_view?(x)}
|
28
|
-
end
|
24
|
+
options ||= \
|
25
|
+
this_field_reflection.klass.all.merge(this_field_reflection.scope).limit(limit).select {|x| can_view?(x)}
|
29
26
|
|
30
27
|
id_method = this_field_reflection.options[:primary_key] || this_field_reflection.klass.primary_key
|
31
28
|
if text_method.nil?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hobo_rapid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.
|
4
|
+
version: 2.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tom Locke, Bryan Larsen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-09-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hobo
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.1.
|
19
|
+
version: 2.1.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.1.
|
26
|
+
version: 2.1.2
|
27
27
|
description: The RAPID tag library for Hobo
|
28
28
|
email: tom@tomlocke.com
|
29
29
|
executables: []
|