merb-admin 0.8.1 → 0.8.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +29 -27
- data/Gemfile +24 -22
- data/Gemfile.lock +86 -0
- data/LICENSE +20 -20
- data/README.rdoc +54 -58
- data/Rakefile +11 -44
- data/app/controllers/application.rb +6 -6
- data/app/controllers/main.rb +191 -191
- data/app/helpers/application_helper.rb +64 -64
- data/app/helpers/main_helper.rb +167 -167
- data/app/models/.gitkeep +0 -0
- data/app/views/layout/_message.html.erb +10 -10
- data/app/views/layout/dashboard.html.erb +34 -34
- data/app/views/layout/form.html.erb +48 -48
- data/app/views/layout/list.html.erb +42 -42
- data/app/views/main/_belongs_to.html.erb +29 -29
- data/app/views/main/_big_decimal.html.erb +12 -12
- data/app/views/main/_boolean.html.erb +7 -7
- data/app/views/main/_date.html.erb +12 -12
- data/app/views/main/_datetime.html.erb +12 -12
- data/app/views/main/_float.html.erb +12 -12
- data/app/views/main/_has_many.html.erb +16 -16
- data/app/views/main/_has_one.html.erb +30 -30
- data/app/views/main/_integer.html.erb +12 -12
- data/app/views/main/_properties.html.erb +18 -18
- data/app/views/main/_string.html.erb +15 -15
- data/app/views/main/_text.html.erb +11 -11
- data/app/views/main/_time.html.erb +12 -12
- data/app/views/main/_timestamp.html.erb +12 -12
- data/app/views/main/delete.html.erb +28 -28
- data/app/views/main/edit.html.erb +19 -19
- data/app/views/main/index.html.erb +22 -22
- data/app/views/main/list.html.erb +93 -93
- data/app/views/main/new.html.erb +16 -16
- data/config/init.rb +30 -0
- data/config/router.rb +4 -0
- data/lib/abstract_model.rb +84 -86
- data/lib/active_record_support.rb +147 -147
- data/lib/datamapper_support.rb +139 -140
- data/lib/generic_support.rb +13 -13
- data/lib/merb-admin.rb +99 -99
- data/lib/merb-admin/merbtasks.rb +103 -103
- data/lib/merb-admin/slicetasks.rb +174 -174
- data/lib/merb-admin/spectasks.rb +55 -55
- data/lib/merb-admin/version.rb +3 -0
- data/lib/sequel_support.rb +275 -275
- data/merb-admin.gemspec +42 -232
- data/public/javascripts/CollapsedFieldsets.js +85 -85
- data/public/javascripts/DateTimeShortcuts.js +255 -255
- data/public/javascripts/RelatedObjectLookups.js +96 -96
- data/public/javascripts/SelectBox.js +111 -111
- data/public/javascripts/SelectFilter2.js +113 -113
- data/public/javascripts/actions.js +39 -39
- data/public/javascripts/calendar.js +143 -143
- data/public/javascripts/core.js +176 -176
- data/public/javascripts/dateparse.js +233 -233
- data/public/javascripts/getElementsBySelector.js +167 -167
- data/public/javascripts/i18n.js +33 -33
- data/public/javascripts/ordering.js +137 -137
- data/public/javascripts/timeparse.js +94 -94
- data/public/javascripts/urlify.js +140 -140
- data/public/stylesheets/base.css +746 -746
- data/public/stylesheets/changelists.css +269 -269
- data/public/stylesheets/dashboard.css +24 -24
- data/public/stylesheets/forms.css +327 -327
- data/public/stylesheets/global.css +142 -142
- data/public/stylesheets/ie.css +50 -50
- data/public/stylesheets/layout.css +29 -29
- data/public/stylesheets/login.css +54 -54
- data/public/stylesheets/master.css +1 -1
- data/public/stylesheets/patch-iewin.css +7 -7
- data/public/stylesheets/rtl.css +206 -206
- data/public/stylesheets/widgets.css +506 -506
- data/screenshots/create.png +0 -0
- data/screenshots/delete.png +0 -0
- data/screenshots/edit.png +0 -0
- data/screenshots/index.png +0 -0
- data/screenshots/list.png +0 -0
- data/screenshots/new.png +0 -0
- data/spec/controllers/main_spec.rb +25 -25
- data/spec/migrations/activerecord/001_create_divisions_migration.rb +13 -13
- data/spec/migrations/activerecord/002_create_drafts_migration.rb +19 -19
- data/spec/migrations/activerecord/003_create_leagues_migration.rb +12 -12
- data/spec/migrations/activerecord/004_create_players_migration.rb +19 -20
- data/spec/migrations/activerecord/005_create_teams_migration.rb +22 -22
- data/spec/migrations/sequel/001_create_divisions_migration.rb +15 -15
- data/spec/migrations/sequel/002_create_drafts_migration.rb +21 -21
- data/spec/migrations/sequel/003_create_leagues_migration.rb +14 -14
- data/spec/migrations/sequel/004_create_players_migration.rb +21 -22
- data/spec/migrations/sequel/005_create_teams_migration.rb +24 -24
- data/spec/models/activerecord/division.rb +7 -7
- data/spec/models/activerecord/draft.rb +11 -11
- data/spec/models/activerecord/league.rb +6 -6
- data/spec/models/activerecord/player.rb +8 -8
- data/spec/models/activerecord/team.rb +13 -13
- data/spec/models/datamapper/division.rb +12 -12
- data/spec/models/datamapper/draft.rb +18 -18
- data/spec/models/datamapper/league.rb +11 -11
- data/spec/models/datamapper/player.rb +20 -21
- data/spec/models/datamapper/team.rb +22 -22
- data/spec/models/sequel/division.rb +15 -15
- data/spec/models/sequel/draft.rb +19 -19
- data/spec/models/sequel/league.rb +14 -14
- data/spec/models/sequel/player.rb +18 -18
- data/spec/models/sequel/team.rb +21 -21
- data/spec/requests/main_spec.rb +763 -763
- data/spec/spec_helper.rb +113 -112
- metadata +247 -41
- data/VERSION +0 -1
data/app/models/.gitkeep
ADDED
File without changes
|
@@ -1,10 +1,10 @@
|
|
1
|
-
<% if message && message[:error] %>
|
2
|
-
<p class="errornote">
|
3
|
-
<%=h message[:error] %>
|
4
|
-
</p>
|
5
|
-
<% end %>
|
6
|
-
<% if message && message[:notice] %>
|
7
|
-
<ul class="messagelist">
|
8
|
-
<li><%=h message[:notice] %></li>
|
9
|
-
</ul>
|
10
|
-
<% end %>
|
1
|
+
<% if message && message[:error] %>
|
2
|
+
<p class="errornote">
|
3
|
+
<%=h message[:error] %>
|
4
|
+
</p>
|
5
|
+
<% end %>
|
6
|
+
<% if message && message[:notice] %>
|
7
|
+
<ul class="messagelist">
|
8
|
+
<li><%=h message[:notice] %></li>
|
9
|
+
</ul>
|
10
|
+
<% end %>
|
@@ -1,34 +1,34 @@
|
|
1
|
-
<%
|
2
|
-
slice_name = "MerbAdmin" + (MerbAdmin[:app_name].blank? ? "" : " for #{MerbAdmin[:app_name]}")
|
3
|
-
page_name = "Site administration"
|
4
|
-
%>
|
5
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
6
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
|
7
|
-
<head>
|
8
|
-
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
9
|
-
<meta name="robots" content="NONE,NOARCHIVE" />
|
10
|
-
<title><%= page_name %> | <%= slice_name %></title>
|
11
|
-
<link href="<%= public_path_for :stylesheet, 'base.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
12
|
-
<link href="<%= public_path_for :stylesheet, 'dashboard.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
13
|
-
<!--[if lte IE 7]><link href="<%= public_path_for :stylesheet, 'ie.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" /><![endif]-->
|
14
|
-
</head>
|
15
|
-
<body class="admin-slice dashboard">
|
16
|
-
<div id="container">
|
17
|
-
<div id="header">
|
18
|
-
<div id="branding">
|
19
|
-
<h1 id="site-name">
|
20
|
-
<%= slice_name %>
|
21
|
-
</h1>
|
22
|
-
</div>
|
23
|
-
</div>
|
24
|
-
<%= partial('layout/message', :message => message) unless message.blank? -%>
|
25
|
-
<div id="content" class="colMS">
|
26
|
-
<h1>
|
27
|
-
<%= page_name %>
|
28
|
-
</h1>
|
29
|
-
<%= catch_content(:for_layout) -%>
|
30
|
-
</div>
|
31
|
-
<div id="footer"></div>
|
32
|
-
</div>
|
33
|
-
</body>
|
34
|
-
</html>
|
1
|
+
<%
|
2
|
+
slice_name = "MerbAdmin" + (MerbAdmin[:app_name].blank? ? "" : " for #{MerbAdmin[:app_name]}")
|
3
|
+
page_name = "Site administration"
|
4
|
+
%>
|
5
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
|
7
|
+
<head>
|
8
|
+
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
9
|
+
<meta name="robots" content="NONE,NOARCHIVE" />
|
10
|
+
<title><%= page_name %> | <%= slice_name %></title>
|
11
|
+
<link href="<%= public_path_for :stylesheet, 'base.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
12
|
+
<link href="<%= public_path_for :stylesheet, 'dashboard.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
13
|
+
<!--[if lte IE 7]><link href="<%= public_path_for :stylesheet, 'ie.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" /><![endif]-->
|
14
|
+
</head>
|
15
|
+
<body class="admin-slice dashboard">
|
16
|
+
<div id="container">
|
17
|
+
<div id="header">
|
18
|
+
<div id="branding">
|
19
|
+
<h1 id="site-name">
|
20
|
+
<%= slice_name %>
|
21
|
+
</h1>
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
<%= partial('layout/message', :message => message) unless message.blank? -%>
|
25
|
+
<div id="content" class="colMS">
|
26
|
+
<h1>
|
27
|
+
<%= page_name %>
|
28
|
+
</h1>
|
29
|
+
<%= catch_content(:for_layout) -%>
|
30
|
+
</div>
|
31
|
+
<div id="footer"></div>
|
32
|
+
</div>
|
33
|
+
</body>
|
34
|
+
</html>
|
@@ -1,48 +1,48 @@
|
|
1
|
-
<%
|
2
|
-
slice_name = "MerbAdmin" + (MerbAdmin[:app_name].blank? ? "" : " for #{MerbAdmin[:app_name]}")
|
3
|
-
page_name = action_name.capitalize + " " + @abstract_model.pretty_name.downcase
|
4
|
-
%>
|
5
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
6
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
|
7
|
-
<head>
|
8
|
-
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
9
|
-
<meta name="robots" content="NONE,NOARCHIVE" />
|
10
|
-
<title><%= page_name %> | <%= slice_name %></title>
|
11
|
-
<link href="<%= public_path_for :stylesheet, 'base.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
12
|
-
<link href="<%= public_path_for :stylesheet, 'forms.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
13
|
-
<!--[if lte IE 7]><link href="<%= public_path_for :stylesheet, 'ie.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" /><![endif]-->
|
14
|
-
<script src="<%= public_path_for :javascript, 'i18n.js' %>" type="text/javascript" charset="utf-8"></script>
|
15
|
-
<script src="<%= public_path_for :javascript, 'core.js' %>" type="text/javascript" charset="utf-8"></script>
|
16
|
-
<script src="<%= public_path_for :javascript, 'RelatedObjectLookups.js' %>" type="text/javascript" charset="utf-8"></script>
|
17
|
-
<script src="<%= public_path_for :javascript, 'getElementsBySelector.js' %>" type="text/javascript" charset="utf-8"></script>
|
18
|
-
<script src="<%= public_path_for :javascript, 'actions.js' %>" type="text/javascript" charset="utf-8"></script>
|
19
|
-
<script src="<%= public_path_for :javascript, 'SelectBox.js' %>" type="text/javascript" charset="utf-8"></script>
|
20
|
-
<script src="<%= public_path_for :javascript, 'SelectFilter2.js' %>" type="text/javascript" charset="utf-8"></script>
|
21
|
-
<script src="<%= public_path_for :javascript, 'calendar.js' %>" type="text/javascript" charset="utf-8"></script>
|
22
|
-
<script src="<%= public_path_for :javascript, 'DateTimeShortcuts.js' %>" type="text/javascript" charset="utf-8"></script>
|
23
|
-
</head>
|
24
|
-
<body class="admin-slice change-form">
|
25
|
-
<div id="container">
|
26
|
-
<div id="header">
|
27
|
-
<div id="branding">
|
28
|
-
<h1 id="site-name">
|
29
|
-
<%= slice_name %>
|
30
|
-
</h1>
|
31
|
-
</div>
|
32
|
-
</div>
|
33
|
-
<div class="breadcrumbs">
|
34
|
-
<%= link_to("Home", url(:merb_admin_dashboard)) %> ›
|
35
|
-
<%= link_to(@abstract_model.pretty_name, url(:merb_admin_list, :model_name => @abstract_model.to_param)) %> ›
|
36
|
-
<%= page_name %>
|
37
|
-
</div>
|
38
|
-
<%= partial('layout/message', :message => message) unless message.blank? -%>
|
39
|
-
<div id="content" class="colM">
|
40
|
-
<h1>
|
41
|
-
<%= page_name %>
|
42
|
-
</h1>
|
43
|
-
<%= catch_content(:for_layout) -%>
|
44
|
-
</div>
|
45
|
-
<div id="footer"></div>
|
46
|
-
</div>
|
47
|
-
</body>
|
48
|
-
</html>
|
1
|
+
<%
|
2
|
+
slice_name = "MerbAdmin" + (MerbAdmin[:app_name].blank? ? "" : " for #{MerbAdmin[:app_name]}")
|
3
|
+
page_name = action_name.capitalize + " " + @abstract_model.pretty_name.downcase
|
4
|
+
%>
|
5
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
|
7
|
+
<head>
|
8
|
+
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
9
|
+
<meta name="robots" content="NONE,NOARCHIVE" />
|
10
|
+
<title><%= page_name %> | <%= slice_name %></title>
|
11
|
+
<link href="<%= public_path_for :stylesheet, 'base.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
12
|
+
<link href="<%= public_path_for :stylesheet, 'forms.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
13
|
+
<!--[if lte IE 7]><link href="<%= public_path_for :stylesheet, 'ie.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" /><![endif]-->
|
14
|
+
<script src="<%= public_path_for :javascript, 'i18n.js' %>" type="text/javascript" charset="utf-8"></script>
|
15
|
+
<script src="<%= public_path_for :javascript, 'core.js' %>" type="text/javascript" charset="utf-8"></script>
|
16
|
+
<script src="<%= public_path_for :javascript, 'RelatedObjectLookups.js' %>" type="text/javascript" charset="utf-8"></script>
|
17
|
+
<script src="<%= public_path_for :javascript, 'getElementsBySelector.js' %>" type="text/javascript" charset="utf-8"></script>
|
18
|
+
<script src="<%= public_path_for :javascript, 'actions.js' %>" type="text/javascript" charset="utf-8"></script>
|
19
|
+
<script src="<%= public_path_for :javascript, 'SelectBox.js' %>" type="text/javascript" charset="utf-8"></script>
|
20
|
+
<script src="<%= public_path_for :javascript, 'SelectFilter2.js' %>" type="text/javascript" charset="utf-8"></script>
|
21
|
+
<script src="<%= public_path_for :javascript, 'calendar.js' %>" type="text/javascript" charset="utf-8"></script>
|
22
|
+
<script src="<%= public_path_for :javascript, 'DateTimeShortcuts.js' %>" type="text/javascript" charset="utf-8"></script>
|
23
|
+
</head>
|
24
|
+
<body class="admin-slice change-form">
|
25
|
+
<div id="container">
|
26
|
+
<div id="header">
|
27
|
+
<div id="branding">
|
28
|
+
<h1 id="site-name">
|
29
|
+
<%= slice_name %>
|
30
|
+
</h1>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
<div class="breadcrumbs">
|
34
|
+
<%= link_to("Home", url(:merb_admin_dashboard)) %> ›
|
35
|
+
<%= link_to(@abstract_model.pretty_name, url(:merb_admin_list, :model_name => @abstract_model.to_param)) %> ›
|
36
|
+
<%= page_name %>
|
37
|
+
</div>
|
38
|
+
<%= partial('layout/message', :message => message) unless message.blank? -%>
|
39
|
+
<div id="content" class="colM">
|
40
|
+
<h1>
|
41
|
+
<%= page_name %>
|
42
|
+
</h1>
|
43
|
+
<%= catch_content(:for_layout) -%>
|
44
|
+
</div>
|
45
|
+
<div id="footer"></div>
|
46
|
+
</div>
|
47
|
+
</body>
|
48
|
+
</html>
|
@@ -1,42 +1,42 @@
|
|
1
|
-
<%
|
2
|
-
slice_name = "MerbAdmin" + (MerbAdmin[:app_name].blank? ? "" : " for #{MerbAdmin[:app_name]}")
|
3
|
-
page_name = "Select " + @abstract_model.pretty_name.downcase + " to edit"
|
4
|
-
%>
|
5
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
6
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
|
7
|
-
<head>
|
8
|
-
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
9
|
-
<meta name="robots" content="NONE,NOARCHIVE" />
|
10
|
-
<title><%= page_name %> | <%= slice_name %></title>
|
11
|
-
<link href="<%= public_path_for :stylesheet, 'base.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
12
|
-
<link href="<%= public_path_for :stylesheet, 'changelists.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
13
|
-
<!--[if lte IE 7]><link href="<%= public_path_for :stylesheet, 'ie.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" /><![endif]-->
|
14
|
-
<script src="<%= public_path_for :javascript, 'core.js' %>" type="text/javascript" charset="utf-8"></script>
|
15
|
-
<script src="<%= public_path_for :javascript, 'RelatedObjectLookups.js' %>" type="text/javascript" charset="utf-8"></script>
|
16
|
-
<script src="<%= public_path_for :javascript, 'getElementsBySelector.js' %>" type="text/javascript" charset="utf-8"></script>
|
17
|
-
<script src="<%= public_path_for :javascript, 'actions.js' %>" type="text/javascript" charset="utf-8"></script>
|
18
|
-
</head>
|
19
|
-
<body class="admin-slice change-list">
|
20
|
-
<div id="container">
|
21
|
-
<div id="header">
|
22
|
-
<div id="branding">
|
23
|
-
<h1 id="site-name">
|
24
|
-
<%= slice_name %>
|
25
|
-
</h1>
|
26
|
-
</div>
|
27
|
-
</div>
|
28
|
-
<div class="breadcrumbs">
|
29
|
-
<%= link_to("Home", url(:merb_admin_dashboard)) %> ›
|
30
|
-
<%= @abstract_model.pretty_name %>
|
31
|
-
</div>
|
32
|
-
<%= partial('layout/message', :message => message) unless message.blank? -%>
|
33
|
-
<div id="content" class="flex">
|
34
|
-
<h1>
|
35
|
-
<%= page_name %>
|
36
|
-
</h1>
|
37
|
-
<%= catch_content(:for_layout) -%>
|
38
|
-
</div>
|
39
|
-
<div id="footer"></div>
|
40
|
-
</div>
|
41
|
-
</body>
|
42
|
-
</html>
|
1
|
+
<%
|
2
|
+
slice_name = "MerbAdmin" + (MerbAdmin[:app_name].blank? ? "" : " for #{MerbAdmin[:app_name]}")
|
3
|
+
page_name = "Select " + @abstract_model.pretty_name.downcase + " to edit"
|
4
|
+
%>
|
5
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
|
7
|
+
<head>
|
8
|
+
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
9
|
+
<meta name="robots" content="NONE,NOARCHIVE" />
|
10
|
+
<title><%= page_name %> | <%= slice_name %></title>
|
11
|
+
<link href="<%= public_path_for :stylesheet, 'base.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
12
|
+
<link href="<%= public_path_for :stylesheet, 'changelists.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" />
|
13
|
+
<!--[if lte IE 7]><link href="<%= public_path_for :stylesheet, 'ie.css' %>" type="text/css" charset="utf-8" rel="stylesheet" media="all" /><![endif]-->
|
14
|
+
<script src="<%= public_path_for :javascript, 'core.js' %>" type="text/javascript" charset="utf-8"></script>
|
15
|
+
<script src="<%= public_path_for :javascript, 'RelatedObjectLookups.js' %>" type="text/javascript" charset="utf-8"></script>
|
16
|
+
<script src="<%= public_path_for :javascript, 'getElementsBySelector.js' %>" type="text/javascript" charset="utf-8"></script>
|
17
|
+
<script src="<%= public_path_for :javascript, 'actions.js' %>" type="text/javascript" charset="utf-8"></script>
|
18
|
+
</head>
|
19
|
+
<body class="admin-slice change-list">
|
20
|
+
<div id="container">
|
21
|
+
<div id="header">
|
22
|
+
<div id="branding">
|
23
|
+
<h1 id="site-name">
|
24
|
+
<%= slice_name %>
|
25
|
+
</h1>
|
26
|
+
</div>
|
27
|
+
</div>
|
28
|
+
<div class="breadcrumbs">
|
29
|
+
<%= link_to("Home", url(:merb_admin_dashboard)) %> ›
|
30
|
+
<%= @abstract_model.pretty_name %>
|
31
|
+
</div>
|
32
|
+
<%= partial('layout/message', :message => message) unless message.blank? -%>
|
33
|
+
<div id="content" class="flex">
|
34
|
+
<h1>
|
35
|
+
<%= page_name %>
|
36
|
+
</h1>
|
37
|
+
<%= catch_content(:for_layout) -%>
|
38
|
+
</div>
|
39
|
+
<div id="footer"></div>
|
40
|
+
</div>
|
41
|
+
</body>
|
42
|
+
</html>
|
@@ -1,29 +1,29 @@
|
|
1
|
-
<%
|
2
|
-
child_key = association[:child_key].first
|
3
|
-
collection = MerbAdmin::AbstractModel.new(association[:parent_model]).all.map{|object| [object.id, object_label(object)]}.sort_by{|object| object[1]}
|
4
|
-
selected = @object.send(child_key)
|
5
|
-
label = association[:pretty_name]
|
6
|
-
required = false
|
7
|
-
errors_exist = !(@object.errors[child_key].nil? || @object.errors[child_key].empty?)
|
8
|
-
@properties.select{|property| property[:name] == child_key}.each do |property|
|
9
|
-
required = true unless property[:nullable?]
|
10
|
-
end
|
11
|
-
%>
|
12
|
-
<fieldset class="module aligned">
|
13
|
-
<h2><%= label %></h2>
|
14
|
-
<div class="<%= errors_exist ? "form-row errors" : "form-row"%>">
|
15
|
-
<% if errors_exist %>
|
16
|
-
<ul class="errorlist">
|
17
|
-
<% @object.errors[child_key].each do |error| %>
|
18
|
-
<li><%= error %></li>
|
19
|
-
<% end %>
|
20
|
-
</ul>
|
21
|
-
<% end %>
|
22
|
-
<div>
|
23
|
-
<%= select(child_key, :collection => collection, :include_blank => true, :selected => selected.to_s, :label => label) %>
|
24
|
-
<p class="help">
|
25
|
-
<%= required ? "Required." : "Optional." %>
|
26
|
-
</p>
|
27
|
-
</div>
|
28
|
-
</div>
|
29
|
-
</fieldset>
|
1
|
+
<%
|
2
|
+
child_key = association[:child_key].first
|
3
|
+
collection = MerbAdmin::AbstractModel.new(association[:parent_model]).all.map{|object| [object.id, object_label(object)]}.sort_by{|object| object[1]}
|
4
|
+
selected = @object.send(child_key)
|
5
|
+
label = association[:pretty_name]
|
6
|
+
required = false
|
7
|
+
errors_exist = !(@object.errors[child_key].nil? || @object.errors[child_key].empty?)
|
8
|
+
@properties.select{|property| property[:name] == child_key}.each do |property|
|
9
|
+
required = true unless property[:nullable?]
|
10
|
+
end
|
11
|
+
%>
|
12
|
+
<fieldset class="module aligned">
|
13
|
+
<h2><%= label %></h2>
|
14
|
+
<div class="<%= errors_exist ? "form-row errors" : "form-row"%>">
|
15
|
+
<% if errors_exist %>
|
16
|
+
<ul class="errorlist">
|
17
|
+
<% @object.errors[child_key].each do |error| %>
|
18
|
+
<li><%= error %></li>
|
19
|
+
<% end %>
|
20
|
+
</ul>
|
21
|
+
<% end %>
|
22
|
+
<div>
|
23
|
+
<%= select(child_key, :collection => collection, :include_blank => true, :selected => selected.to_s, :label => label) %>
|
24
|
+
<p class="help">
|
25
|
+
<%= required ? "Required." : "Optional." %>
|
26
|
+
</p>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
</fieldset>
|
@@ -1,12 +1,12 @@
|
|
1
|
-
<%
|
2
|
-
property_name = property[:name]
|
3
|
-
length = property[:length]
|
4
|
-
label = property[:pretty_name]
|
5
|
-
required = !property[:nullable?] || property[:serial?]
|
6
|
-
%>
|
7
|
-
<div>
|
8
|
-
<%= text_field(property_name, :maxlength => length, :label => label) %>
|
9
|
-
<p class="help">
|
10
|
-
<%= required ? "Required." : "Optional." %>
|
11
|
-
</p>
|
12
|
-
</div>
|
1
|
+
<%
|
2
|
+
property_name = property[:name]
|
3
|
+
length = property[:length].to_i
|
4
|
+
label = property[:pretty_name]
|
5
|
+
required = !property[:nullable?] || property[:serial?]
|
6
|
+
%>
|
7
|
+
<div>
|
8
|
+
<%= text_field(property_name, :maxlength => length, :label => label) %>
|
9
|
+
<p class="help">
|
10
|
+
<%= required ? "Required." : "Optional." %>
|
11
|
+
</p>
|
12
|
+
</div>
|
@@ -1,7 +1,7 @@
|
|
1
|
-
<%
|
2
|
-
property_name = property[:name]
|
3
|
-
label = property[:pretty_name]
|
4
|
-
%>
|
5
|
-
<div>
|
6
|
-
<%= check_box(property_name, :label => label) %>
|
7
|
-
</div>
|
1
|
+
<%
|
2
|
+
property_name = property[:name]
|
3
|
+
label = property[:pretty_name]
|
4
|
+
%>
|
5
|
+
<div>
|
6
|
+
<%= check_box(property_name, :label => label) %>
|
7
|
+
</div>
|
@@ -1,12 +1,12 @@
|
|
1
|
-
<%
|
2
|
-
property_name = property[:name]
|
3
|
-
value = @object.send(property_name)
|
4
|
-
label = property[:pretty_name]
|
5
|
-
required = !property[:nullable?]
|
6
|
-
%>
|
7
|
-
<div>
|
8
|
-
<%= text_field(property_name, :class => "vDateField", :value => value.respond_to?(:strftime) ? value.strftime("%Y-%m-%d") : nil, :label => label) %>
|
9
|
-
<p class="help">
|
10
|
-
<%= required ? "Required." : "Optional." %>
|
11
|
-
</p>
|
12
|
-
</div>
|
1
|
+
<%
|
2
|
+
property_name = property[:name]
|
3
|
+
value = @object.send(property_name)
|
4
|
+
label = property[:pretty_name]
|
5
|
+
required = !property[:nullable?]
|
6
|
+
%>
|
7
|
+
<div>
|
8
|
+
<%= text_field(property_name, :class => "vDateField", :value => value.respond_to?(:strftime) ? value.strftime("%Y-%m-%d") : nil, :label => label) %>
|
9
|
+
<p class="help">
|
10
|
+
<%= required ? "Required." : "Optional." %>
|
11
|
+
</p>
|
12
|
+
</div>
|
@@ -1,12 +1,12 @@
|
|
1
|
-
<%
|
2
|
-
property_name = property[:name]
|
3
|
-
value = @object.send(property_name)
|
4
|
-
label = property[:pretty_name]
|
5
|
-
required = !property[:nullable?]
|
6
|
-
%>
|
7
|
-
<div>
|
8
|
-
<%= text_field(property_name, :class => "vDateField", :value => value.respond_to?(:strftime) ? value.strftime("%Y-%m-%d %H:%M:%S") : nil, :label => label) %>
|
9
|
-
<p class="help">
|
10
|
-
<%= required ? "Required." : "Optional." %>
|
11
|
-
</p>
|
12
|
-
</div>
|
1
|
+
<%
|
2
|
+
property_name = property[:name]
|
3
|
+
value = @object.send(property_name)
|
4
|
+
label = property[:pretty_name]
|
5
|
+
required = !property[:nullable?]
|
6
|
+
%>
|
7
|
+
<div>
|
8
|
+
<%= text_field(property_name, :class => "vDateField", :value => value.respond_to?(:strftime) ? value.strftime("%Y-%m-%d %H:%M:%S") : nil, :label => label) %>
|
9
|
+
<p class="help">
|
10
|
+
<%= required ? "Required." : "Optional." %>
|
11
|
+
</p>
|
12
|
+
</div>
|
@@ -1,12 +1,12 @@
|
|
1
|
-
<%
|
2
|
-
property_name = property[:name]
|
3
|
-
length = property[:length]
|
4
|
-
label = property[:pretty_name]
|
5
|
-
required = !property[:nullable?] || property[:serial?]
|
6
|
-
%>
|
7
|
-
<div>
|
8
|
-
<%= text_field(property_name, :maxlength => length, :label => label) %>
|
9
|
-
<p class="help">
|
10
|
-
<%= required ? "Required." : "Optional." %>
|
11
|
-
</p>
|
12
|
-
</div>
|
1
|
+
<%
|
2
|
+
property_name = property[:name]
|
3
|
+
length = property[:length].to_i
|
4
|
+
label = property[:pretty_name]
|
5
|
+
required = !property[:nullable?] || property[:serial?]
|
6
|
+
%>
|
7
|
+
<div>
|
8
|
+
<%= text_field(property_name, :maxlength => length, :label => label) %>
|
9
|
+
<p class="help">
|
10
|
+
<%= required ? "Required." : "Optional." %>
|
11
|
+
</p>
|
12
|
+
</div>
|