hydra-batch-edit 0.0.1 → 0.0.2
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.
@@ -7,8 +7,8 @@ module BatchEditHelper
|
|
7
7
|
end
|
8
8
|
|
9
9
|
# Returns true if user has activated batch edit mode in session
|
10
|
-
def
|
11
|
-
session[:batch_edit_state]
|
10
|
+
def batch_edit_state
|
11
|
+
session[:batch_edit_state] ||= 'off'
|
12
12
|
end
|
13
13
|
|
14
14
|
# Displays the batch edit tools. Put this in your search result page template. We recommend putting it in catalog/_sort_and_per_page.html.erb
|
@@ -4,7 +4,7 @@
|
|
4
4
|
<span class="caret"></span>
|
5
5
|
</button>
|
6
6
|
<ul class="dropdown-menu">
|
7
|
-
<li data-behavior="batch-edit-activate" data-state="
|
7
|
+
<li data-behavior="batch-edit-activate" data-state="<%= batch_edit_state %>"><a href="#"><i class=""></i> Batch edit</a></li>
|
8
8
|
</ul>
|
9
9
|
</div>
|
10
10
|
|
@@ -10,7 +10,6 @@ module Hydra
|
|
10
10
|
|
11
11
|
def draw
|
12
12
|
add_routes do |options|
|
13
|
-
match 'batch_edits/:id' => 'batch_edits#add', :via=>:put
|
14
13
|
resources :batch_edits, :only=>[:index] do
|
15
14
|
member do
|
16
15
|
delete :destroy
|
@@ -19,8 +18,10 @@ module Hydra
|
|
19
18
|
get :edit
|
20
19
|
put :update
|
21
20
|
delete :clear
|
21
|
+
put :state
|
22
22
|
end
|
23
23
|
end
|
24
|
+
match 'batch_edits/:id' => 'batch_edits#add', :via=>:put
|
24
25
|
end
|
25
26
|
end
|
26
27
|
|
@@ -7,17 +7,39 @@ $ ->
|
|
7
7
|
css_class: "batch_toggle"
|
8
8
|
})
|
9
9
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
$(this).attr("data-state", 'on')
|
14
|
-
$(this).find('a i').addClass('icon-ok')
|
10
|
+
setState = (obj) ->
|
11
|
+
activate = ->
|
12
|
+
obj.find('a i').addClass('icon-ok')
|
15
13
|
$("[data-behavior='batch-edit']").removeClass('hidden')
|
16
14
|
$("[data-behavior='batch-add-button']").removeClass('hidden')
|
17
|
-
|
18
|
-
|
19
|
-
|
15
|
+
|
16
|
+
deactivate = ->
|
17
|
+
obj.find('a i').removeClass('icon-ok')
|
20
18
|
$("[data-behavior='batch-edit']").addClass('hidden')
|
21
19
|
$("[data-behavior='batch-add-button']").addClass('hidden')
|
20
|
+
|
21
|
+
if obj.attr("data-state") == 'off'
|
22
|
+
deactivate(obj)
|
23
|
+
else
|
24
|
+
activate(obj)
|
25
|
+
|
26
|
+
toggleState = (obj) ->
|
27
|
+
if obj.attr('data-state') == 'off'
|
28
|
+
obj.attr("data-state", 'on')
|
29
|
+
else
|
30
|
+
obj.attr("data-state", 'off')
|
31
|
+
setState(obj)
|
32
|
+
|
33
|
+
#set initial state
|
34
|
+
setState($("[data-behavior='batch-edit-activate']"))
|
35
|
+
|
36
|
+
$("[data-behavior='batch-edit-activate']").click (e) ->
|
37
|
+
e.preventDefault()
|
38
|
+
toggleState($(this))
|
39
|
+
$.ajax({
|
40
|
+
type: 'POST',
|
41
|
+
url: '/batch_edits/state',
|
42
|
+
data: {_method:'PUT', state: $(this).attr('data-state')},
|
43
|
+
});
|
22
44
|
# TODO check-all
|
23
45
|
|