crud_menu 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.
- data/app/views/crud_menu/_crud_menu.html.erb +15 -0
- data/crud_menu.gemspec +2 -0
- data/lib/crud_menu.rb +11 -1
- data/lib/crud_menu/engine.rb +15 -0
- data/lib/crud_menu/railtie.rb +8 -0
- data/lib/crud_menu/version.rb +1 -1
- data/lib/crud_menu/view_helpers.rb +37 -0
- metadata +38 -2
@@ -0,0 +1,15 @@
|
|
1
|
+
<div class="crud_menu_container">
|
2
|
+
<ul class="crud_menu">
|
3
|
+
<% if action_called != 'edit' && action_called != 'new' %>
|
4
|
+
<li><%= new_crud_link %></li>
|
5
|
+
<% end %>
|
6
|
+
<% if action_called == 'show' %>
|
7
|
+
<li><%= edit_crud_link %></li>
|
8
|
+
<li><%= delete_crud_link %></li>
|
9
|
+
<li><%= close_crud_link %></li>
|
10
|
+
<% end %>
|
11
|
+
<% if action_called == 'edit' || action_called == 'new' %>
|
12
|
+
<li><%= cancel_crud_link %></li>
|
13
|
+
<% end %>
|
14
|
+
</ul>
|
15
|
+
</div>
|
data/crud_menu.gemspec
CHANGED
data/lib/crud_menu.rb
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
require "crud_menu/version"
|
2
2
|
require 'crud_menu/railtie' if defined?(Rails)
|
3
|
+
require "active_support/dependencies"
|
3
4
|
|
4
5
|
module CrudMenu
|
5
|
-
#
|
6
|
+
# Our host application root path
|
7
|
+
# We set this when the engine is initialized
|
8
|
+
mattr_accessor :app_root
|
9
|
+
|
10
|
+
# Yield self on setup for nice config blocks
|
11
|
+
def self.setup
|
12
|
+
yield self
|
13
|
+
end
|
6
14
|
end
|
15
|
+
|
16
|
+
require 'crud_menu/engine'
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module CrudMenu
|
2
|
+
class Engine < Rails::Engine
|
3
|
+
|
4
|
+
# initialize "crud_menu.load_app_instance_data" do |app|
|
5
|
+
# CrudMenu.setup do |config|
|
6
|
+
# config.app_root = app.root
|
7
|
+
# end
|
8
|
+
# end
|
9
|
+
|
10
|
+
# initialize "crud_menu.load_static_assets" do |app|
|
11
|
+
# app.middleware.use ::ActionDispatch::Static, "#{root}/public"
|
12
|
+
# end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
data/lib/crud_menu/version.rb
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
module CrudMenu
|
2
|
+
module ViewHelpers
|
3
|
+
def crud_menu(options={}, &block)
|
4
|
+
@link_hash = options[:link_hash] || build_link_hash
|
5
|
+
@controller = options[:controller] || controller_called
|
6
|
+
render partial: 'crud_menu/crud_menu'
|
7
|
+
end
|
8
|
+
|
9
|
+
def action_called
|
10
|
+
params[:action]
|
11
|
+
end
|
12
|
+
|
13
|
+
def controller_called
|
14
|
+
params[:controller]
|
15
|
+
end
|
16
|
+
|
17
|
+
def build_link_hash
|
18
|
+
{controller: controller_called}
|
19
|
+
end
|
20
|
+
|
21
|
+
def new_crud_link
|
22
|
+
link_to "New #{@controller.singularize.humanize}", @link_hash.merge({action: 'new'})
|
23
|
+
end
|
24
|
+
def edit_crud_link
|
25
|
+
link_to "Edit #{@controller.singularize.humanize}", @link_hash.merge({action: 'edit', id: params[:id]})
|
26
|
+
end
|
27
|
+
def delete_crud_link
|
28
|
+
link_to "Delete #{@controller.singularize.humanize}", @link_hash.merge({id: params[:id]}), method: :delete
|
29
|
+
end
|
30
|
+
def cancel_crud_link
|
31
|
+
link_to "Cancel", @link_hash.merge({action: 'show', id: params[:id]})
|
32
|
+
end
|
33
|
+
def close_crud_link
|
34
|
+
link_to "Close", @link_hash.merge({action: 'index'})
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: crud_menu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,8 +9,24 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-03-
|
12
|
+
date: 2013-03-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rails
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 3.2.12
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 3.2.12
|
14
30
|
- !ruby/object:Gem::Dependency
|
15
31
|
name: arbre
|
16
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -27,6 +43,22 @@ dependencies:
|
|
27
43
|
- - ! '>='
|
28
44
|
- !ruby/object:Gem::Version
|
29
45
|
version: 1.0.1
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: haml
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
30
62
|
description: Quickly generate a CRUD menu description
|
31
63
|
email:
|
32
64
|
- jg@the42.com
|
@@ -39,9 +71,13 @@ files:
|
|
39
71
|
- LICENSE
|
40
72
|
- README.md
|
41
73
|
- Rakefile
|
74
|
+
- app/views/crud_menu/_crud_menu.html.erb
|
42
75
|
- crud_menu.gemspec
|
43
76
|
- lib/crud_menu.rb
|
77
|
+
- lib/crud_menu/engine.rb
|
78
|
+
- lib/crud_menu/railtie.rb
|
44
79
|
- lib/crud_menu/version.rb
|
80
|
+
- lib/crud_menu/view_helpers.rb
|
45
81
|
homepage: http://www.the42.com
|
46
82
|
licenses: []
|
47
83
|
post_install_message:
|