admin_interface 1.2.0 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +21 -6
- data/admin_interface.gemspec +1 -1
- data/doc/screenshot.png +0 -0
- data/lib/generators/admin_interface/templates/views/layout.html.erb +2 -2
- data/vendor/assets/javascripts/{jquery.admin.js → admin_interface.jquery.js} +0 -0
- data/vendor/assets/stylesheets/{admin.css → admin_interface.css.scss} +135 -135
- metadata +5 -4
data/README.rdoc
CHANGED
@@ -1,20 +1,27 @@
|
|
1
1
|
= AdminInterface
|
2
2
|
|
3
|
-
A Rails admin interface generator for Rails 3. Theme stolen from Redmine. Similar to web-app-theme.
|
3
|
+
A Rails admin interface generator for Rails 3.1+. Theme stolen from Redmine. Similar to web-app-theme.
|
4
4
|
|
5
5
|
== More info
|
6
6
|
|
7
|
-
Generator to create some nifty admin scaffolds. It can work with
|
7
|
+
Generator to create some nifty admin scaffolds. It can work with MetaSearch and Kaminari.
|
8
8
|
It also has admin authentication really well implemented.
|
9
9
|
|
10
10
|
== Install
|
11
11
|
|
12
|
+
=== Rails 3.1
|
13
|
+
|
14
|
+
You should be using v1.2.0+.
|
15
|
+
|
16
|
+
gem "admin_interface"
|
17
|
+
|
18
|
+
=== Earlier Rails Versions
|
19
|
+
|
20
|
+
If you're using Rails 3.0 or earlier use
|
21
|
+
|
12
22
|
Add following to your Gemfile
|
13
23
|
|
14
|
-
|
15
|
-
# Generators
|
16
|
-
gem 'admin_interface'
|
17
|
-
end
|
24
|
+
gem "admin_interface", "~> 1.0.0"
|
18
25
|
|
19
26
|
AdminInterface uses several gems. So put these in your Gemfile
|
20
27
|
|
@@ -71,10 +78,18 @@ Attribute pairs are column_name:sql_type arguments specifying the
|
|
71
78
|
model's attributes. Timestamps are added by default, so you don't have to
|
72
79
|
specify them by hand as 'created_at:datetime updated_at:datetime'.
|
73
80
|
|
81
|
+
=== Customize
|
82
|
+
|
83
|
+
You should customize your admin area so it can be more functional and nicely looking.
|
84
|
+
|
74
85
|
=== See it in action
|
75
86
|
|
76
87
|
Go to /admin and you can see everything in action.
|
77
88
|
|
89
|
+
== Screenshot
|
90
|
+
|
91
|
+
https://raw.github.com/joost/admin_interface/master/doc/screenshot.png
|
92
|
+
|
78
93
|
== Error messages
|
79
94
|
|
80
95
|
Add this to a initializer or in your environment.rb (see: http://railscasts.com/episodes/39-customize-field-error)
|
data/admin_interface.gemspec
CHANGED
@@ -4,7 +4,7 @@ require "devise/version"
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = "admin_interface"
|
7
|
-
spec.version = '1.2.
|
7
|
+
spec.version = '1.2.1'
|
8
8
|
spec.platform = Gem::Platform::RUBY
|
9
9
|
spec.summary = "A Rails admin interface generator. Theme stolen from Redmine."
|
10
10
|
spec.email = "joost@joopp.com"
|
data/doc/screenshot.png
ADDED
Binary file
|
@@ -4,8 +4,8 @@
|
|
4
4
|
<head>
|
5
5
|
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
|
6
6
|
<title>Admin</title>
|
7
|
-
<%= stylesheet_link_tag '
|
8
|
-
<%= javascript_include_tag :application, 'jquery.
|
7
|
+
<%= stylesheet_link_tag 'admin_interface' %>
|
8
|
+
<%= javascript_include_tag :application, 'admin_interface.jquery.js' %>
|
9
9
|
<%= csrf_meta_tag %>
|
10
10
|
</head>
|
11
11
|
<body>
|
File without changes
|
@@ -9,12 +9,12 @@ label.disabled {
|
|
9
9
|
}
|
10
10
|
|
11
11
|
/***** Custom additions to Redmine *****/
|
12
|
-
.icon-search { background-image: url(
|
13
|
-
.icon-download { background-image: url(
|
14
|
-
.icon-destroy { background-image: url(
|
15
|
-
.icon-document { background-image: url(
|
16
|
-
.icon-crop { background-image: url(
|
17
|
-
.icon-mail { background-image: url(
|
12
|
+
.icon-search { background-image: asset-url('admin/search.png', image); }
|
13
|
+
.icon-download { background-image: asset-url('admin/download.png', image); }
|
14
|
+
.icon-destroy { background-image: asset-url('admin/destroy.png', image); }
|
15
|
+
.icon-document { background-image: asset-url('admin/document.png', image); }
|
16
|
+
.icon-crop { background-image: asset-url('admin/crop.png', image); }
|
17
|
+
.icon-mail { background-image: asset-url('admin/mail.png', image); }
|
18
18
|
|
19
19
|
tfoot th {
|
20
20
|
text-align: left;
|
@@ -22,7 +22,7 @@ tfoot th {
|
|
22
22
|
|
23
23
|
/* Flash style, not only error class but also alert class (style either like warning or error) */
|
24
24
|
div.flash.alert {
|
25
|
-
background: url(
|
25
|
+
background: asset-url('admin/warning.png', image) 8px 5px no-repeat;
|
26
26
|
background-color: #FFEBC1;
|
27
27
|
border-color: #FDBF3B;
|
28
28
|
color: #A6750C;
|
@@ -33,7 +33,7 @@ div.flash.alert {
|
|
33
33
|
|
34
34
|
/*
|
35
35
|
* The application needs to be above the theme css (it is overwritten).
|
36
|
-
* The 'url(
|
36
|
+
* The 'asset-url('admin/' has been replaced by 'asset-url('admin/'.
|
37
37
|
*
|
38
38
|
*/
|
39
39
|
|
@@ -92,19 +92,19 @@ h4, .wiki h3 {font-size: 13px;padding: 2px 10px 1px 0px;margin-bottom: 5px; bord
|
|
92
92
|
#admin-menu li {margin: 0; padding: 0 0 12px 0; list-style-type:none;}
|
93
93
|
|
94
94
|
#admin-menu a { background-position: 0% 40%; background-repeat: no-repeat; padding-left: 20px; padding-top: 2px; padding-bottom: 3px;}
|
95
|
-
#admin-menu a.projects { background-image: url(
|
96
|
-
#admin-menu a.users { background-image: url(
|
97
|
-
#admin-menu a.groups { background-image: url(
|
98
|
-
#admin-menu a.roles { background-image: url(
|
99
|
-
#admin-menu a.trackers { background-image: url(
|
100
|
-
#admin-menu a.issue_statuses { background-image: url(
|
101
|
-
#admin-menu a.workflows { background-image: url(
|
102
|
-
#admin-menu a.custom_fields { background-image: url(
|
103
|
-
#admin-menu a.enumerations { background-image: url(
|
104
|
-
#admin-menu a.settings { background-image: url(
|
105
|
-
#admin-menu a.plugins { background-image: url(
|
106
|
-
#admin-menu a.info { background-image: url(
|
107
|
-
#admin-menu a.server_authentication { background-image: url(
|
95
|
+
#admin-menu a.projects { background-image: asset-url('admin/projects.png', image); }
|
96
|
+
#admin-menu a.users { background-image: asset-url('admin/user.png', image); }
|
97
|
+
#admin-menu a.groups { background-image: asset-url('admin/group.png', image); }
|
98
|
+
#admin-menu a.roles { background-image: asset-url('admin/database_key.png', image); }
|
99
|
+
#admin-menu a.trackers { background-image: asset-url('admin/ticket.png', image); }
|
100
|
+
#admin-menu a.issue_statuses { background-image: asset-url('admin/ticket_edit.png', image); }
|
101
|
+
#admin-menu a.workflows { background-image: asset-url('admin/ticket_go.png', image); }
|
102
|
+
#admin-menu a.custom_fields { background-image: asset-url('admin/textfield.png', image); }
|
103
|
+
#admin-menu a.enumerations { background-image: asset-url('admin/text_list_bullets.png', image); }
|
104
|
+
#admin-menu a.settings { background-image: asset-url('admin/changeset.png', image); }
|
105
|
+
#admin-menu a.plugins { background-image: asset-url('admin/plugin.png', image); }
|
106
|
+
#admin-menu a.info { background-image: asset-url('admin/help.png', image); }
|
107
|
+
#admin-menu a.server_authentication { background-image: asset-url('admin/server_key.png', image); }
|
108
108
|
|
109
109
|
#main {background-color:#EEEEEE;}
|
110
110
|
|
@@ -130,7 +130,7 @@ html>body #content { min-height: 600px; }
|
|
130
130
|
#login-form label {font-weight: bold;}
|
131
131
|
#login-form input#username, #login-form input#password { width: 300px; }
|
132
132
|
|
133
|
-
input#openid_url { background: url(
|
133
|
+
input#openid_url { background: asset-url('admin/openid-bg.gif', image) no-repeat; background-color: #fff; background-position: 0 50%; padding-left: 18px; }
|
134
134
|
|
135
135
|
.clear:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
136
136
|
|
@@ -153,7 +153,7 @@ table.list caption { text-align: left; padding: 0.5em 0.5em 0.5em 0; }
|
|
153
153
|
|
154
154
|
tr.project td.name a { white-space:nowrap; }
|
155
155
|
|
156
|
-
tr.project.idnt td.name span {background: url(
|
156
|
+
tr.project.idnt td.name span {background: asset-url('admin/bullet_arrow_right.png', image) no-repeat 0 50%; padding-left: 16px;}
|
157
157
|
tr.project.idnt-1 td.name {padding-left: 0.5em;}
|
158
158
|
tr.project.idnt-2 td.name {padding-left: 2em;}
|
159
159
|
tr.project.idnt-3 td.name {padding-left: 3.5em;}
|
@@ -169,7 +169,7 @@ tr.issue td.subject, tr.issue td.category, td.assigned_to { white-space: normal;
|
|
169
169
|
tr.issue td.subject { text-align: left; }
|
170
170
|
tr.issue td.done_ratio table.progress { margin-left:auto; margin-right: auto;}
|
171
171
|
|
172
|
-
tr.issue.idnt td.subject a {background: url(
|
172
|
+
tr.issue.idnt td.subject a {background: asset-url('admin/bullet_arrow_right.png', image) no-repeat 0 50%; padding-left: 16px;}
|
173
173
|
tr.issue.idnt-1 td.subject {padding-left: 0.5em;}
|
174
174
|
tr.issue.idnt-2 td.subject {padding-left: 2em;}
|
175
175
|
tr.issue.idnt-3 td.subject {padding-left: 3.5em;}
|
@@ -188,8 +188,8 @@ tr.entry td.revision, tr.entry td.author { text-align: center; }
|
|
188
188
|
tr.entry td.age { text-align: right; }
|
189
189
|
tr.entry.file td.filename a { margin-left: 16px; }
|
190
190
|
|
191
|
-
tr span.expander {background-image: url(
|
192
|
-
tr.open span.expander {background-image: url(
|
191
|
+
tr span.expander {background-image: asset-url('admin/bullet_toggle_plus.png', image); padding-left: 8px; margin-left: 0; cursor: pointer;}
|
192
|
+
tr.open span.expander {background-image: asset-url('admin/bullet_toggle_minus.png', image);}
|
193
193
|
|
194
194
|
tr.changeset td.author { text-align: center; width: 15%; }
|
195
195
|
tr.changeset td.committed_on { text-align: center; width: 15%; }
|
@@ -204,12 +204,12 @@ tr.message { height: 2.6em; }
|
|
204
204
|
tr.message td.subject { padding-left: 20px; }
|
205
205
|
tr.message td.created_on { white-space: nowrap; }
|
206
206
|
tr.message td.last_message { font-size: 80%; white-space: nowrap; }
|
207
|
-
tr.message.locked td.subject { background: url(
|
208
|
-
tr.message.sticky td.subject { background: url(
|
207
|
+
tr.message.locked td.subject { background: asset-url('admin/locked.png', image) no-repeat 0 1px; }
|
208
|
+
tr.message.sticky td.subject { background: asset-url('admin/bullet_go.png', image) no-repeat 0 1px; font-weight: bold; }
|
209
209
|
|
210
210
|
tr.version.closed, tr.version.closed a { color: #999; }
|
211
211
|
tr.version td.name { padding-left: 20px; }
|
212
|
-
tr.version.shared td.name { background: url(
|
212
|
+
tr.version.shared td.name { background: asset-url('admin/link.png', image) no-repeat 0% 70%; }
|
213
213
|
tr.version td.date, tr.version td.status, tr.version td.sharing { text-align: center; }
|
214
214
|
|
215
215
|
tr.user td { width:13%; }
|
@@ -242,23 +242,23 @@ table p {margin:0;}
|
|
242
242
|
.even {background-color: #fff;}
|
243
243
|
|
244
244
|
a.sort { padding-right: 16px; background-position: 100% 50%; background-repeat: no-repeat; }
|
245
|
-
a.sort.asc { background-image: url(
|
246
|
-
a.sort.desc { background-image: url(
|
245
|
+
a.sort.asc { background-image: asset-url('admin/sort_asc.png', image); }
|
246
|
+
a.sort.desc { background-image: asset-url('admin/sort_desc.png', image); }
|
247
247
|
|
248
248
|
table.attributes { width: 100% }
|
249
249
|
table.attributes th { vertical-align: top; text-align: left; }
|
250
250
|
table.attributes td { vertical-align: top; }
|
251
251
|
|
252
|
-
table.boards a.board, h3.comments { background: url(
|
252
|
+
table.boards a.board, h3.comments { background: asset-url('admin/comment.png', image) no-repeat 0% 50%; padding-left: 20px; }
|
253
253
|
|
254
254
|
td.center {text-align:center;}
|
255
255
|
|
256
|
-
h3.version { background: url(
|
256
|
+
h3.version { background: asset-url('admin/package.png', image) no-repeat 0% 50%; padding-left: 20px; }
|
257
257
|
|
258
|
-
div.issues h3 { background: url(
|
259
|
-
div.members h3 { background: url(
|
260
|
-
div.news h3 { background: url(
|
261
|
-
div.projects h3 { background: url(
|
258
|
+
div.issues h3 { background: asset-url('admin/ticket.png', image) no-repeat 0% 50%; padding-left: 20px; }
|
259
|
+
div.members h3 { background: asset-url('admin/group.png', image) no-repeat 0% 50%; padding-left: 20px; }
|
260
|
+
div.news h3 { background: asset-url('admin/news.png', image) no-repeat 0% 50%; padding-left: 20px; }
|
261
|
+
div.projects h3 { background: asset-url('admin/projects.png', image) no-repeat 0% 50%; padding-left: 20px; }
|
262
262
|
|
263
263
|
#watchers ul {margin: 0; padding: 0;}
|
264
264
|
#watchers li {list-style-type:none;margin: 0px 2px 0px 0px; padding: 0px 0px 0px 0px;}
|
@@ -318,8 +318,8 @@ div.issue div.subject h3 {margin: 0; margin-bottom: 0.1em;}
|
|
318
318
|
#issue_tree td.checkbox {display:none;}
|
319
319
|
|
320
320
|
fieldset.collapsible { border-width: 1px 0 0 0; font-size: 0.9em; }
|
321
|
-
fieldset.collapsible legend { padding-left: 16px; background: url(
|
322
|
-
fieldset.collapsible.collapsed legend { background-image: url(
|
321
|
+
fieldset.collapsible legend { padding-left: 16px; background: asset-url('admin/arrow_expanded.png', image) no-repeat 0% 40%; cursor:pointer; }
|
322
|
+
fieldset.collapsible.collapsed legend { background-image: asset-url('admin/arrow_collapsed.png', image); }
|
323
323
|
|
324
324
|
fieldset#date-range p { margin: 2px 0 2px 0; }
|
325
325
|
fieldset#filters table { border-collapse: collapse; }
|
@@ -348,21 +348,21 @@ div#search-results-counts {float:right;}
|
|
348
348
|
div#search-results-counts ul { margin-top: 0.5em; }
|
349
349
|
div#search-results-counts li { list-style-type:none; float: left; margin-left: 1em; }
|
350
350
|
|
351
|
-
dt.issue { background-image: url(
|
352
|
-
dt.issue-edit { background-image: url(
|
353
|
-
dt.issue-closed { background-image: url(
|
354
|
-
dt.issue-note { background-image: url(
|
355
|
-
dt.changeset { background-image: url(
|
356
|
-
dt.news { background-image: url(
|
357
|
-
dt.message { background-image: url(
|
358
|
-
dt.reply { background-image: url(
|
359
|
-
dt.wiki-page { background-image: url(
|
360
|
-
dt.attachment { background-image: url(
|
361
|
-
dt.document { background-image: url(
|
362
|
-
dt.project { background-image: url(
|
363
|
-
dt.time-entry { background-image: url(
|
364
|
-
|
365
|
-
#search-results dt.issue.closed { background-image: url(
|
351
|
+
dt.issue { background-image: asset-url('admin/ticket.png', image); }
|
352
|
+
dt.issue-edit { background-image: asset-url('admin/ticket_edit.png', image); }
|
353
|
+
dt.issue-closed { background-image: asset-url('admin/ticket_checked.png', image); }
|
354
|
+
dt.issue-note { background-image: asset-url('admin/ticket_note.png', image); }
|
355
|
+
dt.changeset { background-image: asset-url('admin/changeset.png', image); }
|
356
|
+
dt.news { background-image: asset-url('admin/news.png', image); }
|
357
|
+
dt.message { background-image: asset-url('admin/message.png', image); }
|
358
|
+
dt.reply { background-image: asset-url('admin/comments.png', image); }
|
359
|
+
dt.wiki-page { background-image: asset-url('admin/wiki_edit.png', image); }
|
360
|
+
dt.attachment { background-image: asset-url('admin/attachment.png', image); }
|
361
|
+
dt.document { background-image: asset-url('admin/document.png', image); }
|
362
|
+
dt.project { background-image: asset-url('admin/projects.png', image); }
|
363
|
+
dt.time-entry { background-image: asset-url('admin/time.png', image); }
|
364
|
+
|
365
|
+
#search-results dt.issue.closed { background-image: asset-url('admin/ticket_checked.png', image); }
|
366
366
|
|
367
367
|
div#roadmap .related-issues { margin-bottom: 1em; }
|
368
368
|
div#roadmap .related-issues td.checkbox { display: none; }
|
@@ -390,7 +390,7 @@ ul.projects ul.projects { border-left: 3px solid #e0e0e0; }
|
|
390
390
|
ul.projects li.root { list-style-type:none; margin-bottom: 1em; }
|
391
391
|
ul.projects li.child { list-style-type:none; margin-top: 1em;}
|
392
392
|
ul.projects div.root a.project { font-family: "Trebuchet MS", Verdana, sans-serif; font-weight: bold; font-size: 16px; margin: 0 0 10px 0; }
|
393
|
-
.my-project { padding-left: 18px; background: url(
|
393
|
+
.my-project { padding-left: 18px; background: asset-url('admin/fav.png', image) no-repeat 0 50%; }
|
394
394
|
|
395
395
|
#tracker_project_ids ul { margin: 0; padding-left: 1em; }
|
396
396
|
#tracker_project_ids li { list-style-type:none; }
|
@@ -456,7 +456,7 @@ width: auto;
|
|
456
456
|
|
457
457
|
input#time_entry_comments { width: 90%;}
|
458
458
|
|
459
|
-
#preview fieldset {margin-top: 1em; background: url(
|
459
|
+
#preview fieldset {margin-top: 1em; background: asset-url('admin/draft.png', image)}
|
460
460
|
|
461
461
|
.tabular.settings p{ padding-left: 300px; }
|
462
462
|
.tabular.settings label{ margin-left: -300px; width: 295px; }
|
@@ -478,7 +478,7 @@ div.attachments span.author { font-size: 0.9em; color: #888; }
|
|
478
478
|
p.other-formats { text-align: right; font-size:0.9em; color: #666; }
|
479
479
|
.other-formats span + span:before { content: "| "; }
|
480
480
|
|
481
|
-
a.atom { background: url(
|
481
|
+
a.atom { background: asset-url('admin/feed.png', image) no-repeat 1px 50%; padding: 2px 0px 3px 16px; }
|
482
482
|
|
483
483
|
/* Project members tab */
|
484
484
|
div#tab-content-members .splitcontentleft, div#tab-content-memberships .splitcontentleft, div#tab-content-users .splitcontentleft { width: 64% }
|
@@ -488,7 +488,7 @@ div#tab-content-members fieldset legend, div#tab-content-memberships fieldset le
|
|
488
488
|
div#tab-content-members fieldset label, div#tab-content-memberships fieldset label, div#tab-content-users fieldset label { display: block; }
|
489
489
|
div#tab-content-members fieldset div, div#tab-content-users fieldset div { max-height: 400px; overflow:auto; }
|
490
490
|
|
491
|
-
table.members td.group { padding-left: 20px; background: url(
|
491
|
+
table.members td.group { padding-left: 20px; background: asset-url('admin/group.png', image) no-repeat 0% 50%; }
|
492
492
|
|
493
493
|
input#principal_search, input#user_search {width:100%}
|
494
494
|
|
@@ -505,21 +505,21 @@ input#principal_search, input#user_search {width:100%}
|
|
505
505
|
div.flash {margin-top: 8px;}
|
506
506
|
|
507
507
|
div.flash.error, #errorExplanation {
|
508
|
-
background: url(
|
508
|
+
background: asset-url('admin/exclamation.png', image) 8px 50% no-repeat;
|
509
509
|
background-color: #ffe3e3;
|
510
510
|
border-color: #dd0000;
|
511
511
|
color: #880000;
|
512
512
|
}
|
513
513
|
|
514
514
|
div.flash.notice {
|
515
|
-
background: url(
|
515
|
+
background: asset-url('admin/true.png', image) 8px 5px no-repeat;
|
516
516
|
background-color: #dfffdf;
|
517
517
|
border-color: #9fcf9f;
|
518
518
|
color: #005f00;
|
519
519
|
}
|
520
520
|
|
521
521
|
div.flash.warning {
|
522
|
-
background: url(
|
522
|
+
background: asset-url('admin/warning.png', image) 8px 5px no-repeat;
|
523
523
|
background-color: #FFEBC1;
|
524
524
|
border-color: #FDBF3B;
|
525
525
|
color: #A6750C;
|
@@ -557,7 +557,7 @@ html>body #ajax-indicator { position: fixed; }
|
|
557
557
|
#ajax-indicator span {
|
558
558
|
background-position: 0% 40%;
|
559
559
|
background-repeat: no-repeat;
|
560
|
-
background-image: url(
|
560
|
+
background-image: asset-url('admin/loading.gif', image);
|
561
561
|
padding-left: 26px;
|
562
562
|
vertical-align: bottom;
|
563
563
|
}
|
@@ -573,9 +573,9 @@ table.cal td p.day-num {font-size: 1.1em; text-align:right;}
|
|
573
573
|
table.cal td.odd p.day-num {color: #bbb;}
|
574
574
|
table.cal td.today {background:#ffffdd;}
|
575
575
|
table.cal td.today p.day-num {font-weight: bold;}
|
576
|
-
table.cal .starting a, p.cal.legend .starting {background: url(
|
577
|
-
table.cal .ending a, p.cal.legend .ending {background: url(
|
578
|
-
table.cal .starting.ending a, p.cal.legend .starting.ending {background: url(
|
576
|
+
table.cal .starting a, p.cal.legend .starting {background: asset-url('admin/bullet_go.png', image) no-repeat -1px -2px; padding-left:16px;}
|
577
|
+
table.cal .ending a, p.cal.legend .ending {background: asset-url('admin/bullet_end.png', image) no-repeat -1px -2px; padding-left:16px;}
|
578
|
+
table.cal .starting.ending a, p.cal.legend .starting.ending {background: asset-url('admin/bullet_diamond.png', image) no-repeat -1px -2px; padding-left:16px;}
|
579
579
|
p.cal.legend span {display:block;}
|
580
580
|
|
581
581
|
/***** Tooltips ******/
|
@@ -668,12 +668,12 @@ button.tab-left, button.tab-right {
|
|
668
668
|
|
669
669
|
button.tab-left {
|
670
670
|
right: 20px;
|
671
|
-
background: #eeeeee url(
|
671
|
+
background: #eeeeee asset-url('admin/bullet_arrow_left.png', image) no-repeat 50% 50%;
|
672
672
|
}
|
673
673
|
|
674
674
|
button.tab-right {
|
675
675
|
right: 0;
|
676
|
-
background: #eeeeee url(
|
676
|
+
background: #eeeeee asset-url('admin/bullet_arrow_right.png', image) no-repeat 50% 50%;
|
677
677
|
}
|
678
678
|
|
679
679
|
/***** Auto-complete *****/
|
@@ -729,7 +729,7 @@ div.wiki .external {
|
|
729
729
|
background-position: 0% 60%;
|
730
730
|
background-repeat: no-repeat;
|
731
731
|
padding-left: 12px;
|
732
|
-
background-image: url(
|
732
|
+
background-image: asset-url('admin/external.png', image);
|
733
733
|
}
|
734
734
|
|
735
735
|
div.wiki a.new {
|
@@ -804,11 +804,11 @@ width:12px;
|
|
804
804
|
height:12px;
|
805
805
|
background-repeat: no-repeat;
|
806
806
|
cursor:pointer;
|
807
|
-
background-image:url('
|
807
|
+
background-image:asset-url('admin/close.png', image);
|
808
808
|
}
|
809
809
|
|
810
810
|
a.close-icon:hover {
|
811
|
-
background-image:url('
|
811
|
+
background-image:asset-url('admin/close_hl.png', image);
|
812
812
|
}
|
813
813
|
|
814
814
|
/***** Gantt chart *****/
|
@@ -840,24 +840,24 @@ background-image:url('/assets/admin/close_hl.png');
|
|
840
840
|
.task.label {width:100%;}
|
841
841
|
.task.label.project, .task.label.version { font-weight: bold; }
|
842
842
|
|
843
|
-
.task_late { background:#f66 url(
|
844
|
-
.task_done { background:#00c600 url(
|
845
|
-
.task_todo { background:#aaa url(
|
843
|
+
.task_late { background:#f66 asset-url('admin/task_late.png', image); border: 1px solid #f66; }
|
844
|
+
.task_done { background:#00c600 asset-url('admin/task_done.png', image); border: 1px solid #00c600; }
|
845
|
+
.task_todo { background:#aaa asset-url('admin/task_todo.png', image); border: 1px solid #aaa; }
|
846
846
|
|
847
847
|
.task_todo.parent { background: #888; border: 1px solid #888; height: 3px;}
|
848
848
|
.task_late.parent, .task_done.parent { height: 3px;}
|
849
|
-
.task.parent.marker.starting { position: absolute; background: url(
|
850
|
-
.task.parent.marker.ending { position: absolute; background: url(
|
849
|
+
.task.parent.marker.starting { position: absolute; background: asset-url('admin/task_parent_end.png', image) no-repeat 0 0; width: 8px; height: 16px; margin-left: -4px; left: 0px; top: -1px;}
|
850
|
+
.task.parent.marker.ending { position: absolute; background: asset-url('admin/task_parent_end.png', image) no-repeat 0 0; width: 8px; height: 16px; margin-left: -4px; right: 0px; top: -1px;}
|
851
851
|
|
852
|
-
.version.task_late { background:#f66 url(
|
853
|
-
.version.task_done { background:#00c600 url(
|
854
|
-
.version.task_todo { background:#fff url(
|
855
|
-
.version.marker { background-image:url(
|
852
|
+
.version.task_late { background:#f66 asset-url('admin/milestone_late.png', image); border: 1px solid #f66; height: 2px; margin-top: 3px;}
|
853
|
+
.version.task_done { background:#00c600 asset-url('admin/milestone_done.png', image); border: 1px solid #00c600; height: 2px; margin-top: 3px;}
|
854
|
+
.version.task_todo { background:#fff asset-url('admin/milestone_todo.png', image); border: 1px solid #fff; height: 2px; margin-top: 3px;}
|
855
|
+
.version.marker { background-image:asset-url('admin/version_marker.png', image); background-repeat: no-repeat; border: 0; margin-left: -4px; margin-top: 1px; }
|
856
856
|
|
857
|
-
.project.task_late { background:#f66 url(
|
858
|
-
.project.task_done { background:#00c600 url(
|
859
|
-
.project.task_todo { background:#fff url(
|
860
|
-
.project.marker { background-image:url(
|
857
|
+
.project.task_late { background:#f66 asset-url('admin/milestone_late.png', image); border: 1px solid #f66; height: 2px; margin-top: 3px;}
|
858
|
+
.project.task_done { background:#00c600 asset-url('admin/milestone_done.png', image); border: 1px solid #00c600; height: 2px; margin-top: 3px;}
|
859
|
+
.project.task_todo { background:#fff asset-url('admin/milestone_todo.png', image); border: 1px solid #fff; height: 2px; margin-top: 3px;}
|
860
|
+
.project.marker { background-image:asset-url('admin/project_marker.png', image); background-repeat: no-repeat; border: 0; margin-left: -4px; margin-top: 1px; }
|
861
861
|
|
862
862
|
.version-behind-schedule a, .issue-behind-schedule a {color: #f66914;}
|
863
863
|
.version-overdue a, .issue-overdue a, .project-overdue a {color: #f00;}
|
@@ -871,58 +871,58 @@ padding-top: 2px;
|
|
871
871
|
padding-bottom: 3px;
|
872
872
|
}
|
873
873
|
|
874
|
-
.icon-add { background-image: url(
|
875
|
-
.icon-edit { background-image: url(
|
876
|
-
.icon-copy { background-image: url(
|
877
|
-
.icon-duplicate { background-image: url(
|
878
|
-
.icon-del { background-image: url(
|
879
|
-
.icon-move { background-image: url(
|
880
|
-
.icon-save { background-image: url(
|
881
|
-
.icon-cancel { background-image: url(
|
882
|
-
.icon-multiple { background-image: url(
|
883
|
-
.icon-folder { background-image: url(
|
884
|
-
.open .icon-folder { background-image: url(
|
885
|
-
.icon-package { background-image: url(
|
886
|
-
.icon-home { background-image: url(
|
887
|
-
.icon-user { background-image: url(
|
888
|
-
.icon-projects { background-image: url(
|
889
|
-
.icon-help { background-image: url(
|
890
|
-
.icon-attachment { background-image: url(
|
891
|
-
.icon-history { background-image: url(
|
892
|
-
.icon-time { background-image: url(
|
893
|
-
.icon-time-add { background-image: url(
|
894
|
-
.icon-stats { background-image: url(
|
895
|
-
.icon-warning { background-image: url(
|
896
|
-
.icon-fav { background-image: url(
|
897
|
-
.icon-fav-off { background-image: url(
|
898
|
-
.icon-reload { background-image: url(
|
899
|
-
.icon-lock { background-image: url(
|
900
|
-
.icon-unlock { background-image: url(
|
901
|
-
.icon-checked { background-image: url(
|
902
|
-
.icon-details { background-image: url(
|
903
|
-
.icon-report { background-image: url(
|
904
|
-
.icon-comment { background-image: url(
|
905
|
-
.icon-summary { background-image: url(
|
906
|
-
.icon-server-authentication { background-image: url(
|
907
|
-
.icon-issue { background-image: url(
|
908
|
-
.icon-zoom-in { background-image: url(
|
909
|
-
.icon-zoom-out { background-image: url(
|
910
|
-
.icon-changeset { background-image: url(
|
911
|
-
|
912
|
-
.icon-file { background-image: url(
|
913
|
-
.icon-file.text-plain { background-image: url(
|
914
|
-
.icon-file.text-x-c { background-image: url(
|
915
|
-
.icon-file.text-x-csharp { background-image: url(
|
916
|
-
.icon-file.text-x-php { background-image: url(
|
917
|
-
.icon-file.text-x-ruby { background-image: url(
|
918
|
-
.icon-file.text-xml { background-image: url(
|
919
|
-
.icon-file.image-gif { background-image: url(
|
920
|
-
.icon-file.image-jpeg { background-image: url(
|
921
|
-
.icon-file.image-png { background-image: url(
|
922
|
-
.icon-file.image-tiff { background-image: url(
|
923
|
-
.icon-file.application-pdf { background-image: url(
|
924
|
-
.icon-file.application-zip { background-image: url(
|
925
|
-
.icon-file.application-x-gzip { background-image: url(
|
874
|
+
.icon-add { background-image: asset-url('admin/add.png', image); }
|
875
|
+
.icon-edit { background-image: asset-url('admin/edit.png', image); }
|
876
|
+
.icon-copy { background-image: asset-url('admin/copy.png', image); }
|
877
|
+
.icon-duplicate { background-image: asset-url('admin/duplicate.png', image); }
|
878
|
+
.icon-del { background-image: asset-url('admin/delete.png', image); }
|
879
|
+
.icon-move { background-image: asset-url('admin/move.png', image); }
|
880
|
+
.icon-save { background-image: asset-url('admin/save.png', image); }
|
881
|
+
.icon-cancel { background-image: asset-url('admin/cancel.png', image); }
|
882
|
+
.icon-multiple { background-image: asset-url('admin/table_multiple.png', image); }
|
883
|
+
.icon-folder { background-image: asset-url('admin/folder.png', image); }
|
884
|
+
.open .icon-folder { background-image: asset-url('admin/folder_open.png', image); }
|
885
|
+
.icon-package { background-image: asset-url('admin/package.png', image); }
|
886
|
+
.icon-home { background-image: asset-url('admin/home.png', image); }
|
887
|
+
.icon-user { background-image: asset-url('admin/user.png', image); }
|
888
|
+
.icon-projects { background-image: asset-url('admin/projects.png', image); }
|
889
|
+
.icon-help { background-image: asset-url('admin/help.png', image); }
|
890
|
+
.icon-attachment { background-image: asset-url('admin/attachment.png', image); }
|
891
|
+
.icon-history { background-image: asset-url('admin/history.png', image); }
|
892
|
+
.icon-time { background-image: asset-url('admin/time.png', image); }
|
893
|
+
.icon-time-add { background-image: asset-url('admin/time_add.png', image); }
|
894
|
+
.icon-stats { background-image: asset-url('admin/stats.png', image); }
|
895
|
+
.icon-warning { background-image: asset-url('admin/warning.png', image); }
|
896
|
+
.icon-fav { background-image: asset-url('admin/fav.png', image); }
|
897
|
+
.icon-fav-off { background-image: asset-url('admin/fav_off.png', image); }
|
898
|
+
.icon-reload { background-image: asset-url('admin/reload.png', image); }
|
899
|
+
.icon-lock { background-image: asset-url('admin/locked.png', image); }
|
900
|
+
.icon-unlock { background-image: asset-url('admin/unlock.png', image); }
|
901
|
+
.icon-checked { background-image: asset-url('admin/true.png', image); }
|
902
|
+
.icon-details { background-image: asset-url('admin/zoom_in.png', image); }
|
903
|
+
.icon-report { background-image: asset-url('admin/report.png', image); }
|
904
|
+
.icon-comment { background-image: asset-url('admin/comment.png', image); }
|
905
|
+
.icon-summary { background-image: asset-url('admin/lightning.png', image); }
|
906
|
+
.icon-server-authentication { background-image: asset-url('admin/server_key.png', image); }
|
907
|
+
.icon-issue { background-image: asset-url('admin/ticket.png', image); }
|
908
|
+
.icon-zoom-in { background-image: asset-url('admin/zoom_in.png', image); }
|
909
|
+
.icon-zoom-out { background-image: asset-url('admin/zoom_out.png', image); }
|
910
|
+
.icon-changeset { background-image: asset-url('admin/changeset.png', image); }
|
911
|
+
|
912
|
+
.icon-file { background-image: asset-url('admin/files/default.png', image); }
|
913
|
+
.icon-file.text-plain { background-image: asset-url('admin/files/text.png', image); }
|
914
|
+
.icon-file.text-x-c { background-image: asset-url('admin/files/c.png', image); }
|
915
|
+
.icon-file.text-x-csharp { background-image: asset-url('admin/files/csharp.png', image); }
|
916
|
+
.icon-file.text-x-php { background-image: asset-url('admin/files/php.png', image); }
|
917
|
+
.icon-file.text-x-ruby { background-image: asset-url('admin/files/ruby.png', image); }
|
918
|
+
.icon-file.text-xml { background-image: asset-url('admin/files/xml.png', image); }
|
919
|
+
.icon-file.image-gif { background-image: asset-url('admin/files/image.png', image); }
|
920
|
+
.icon-file.image-jpeg { background-image: asset-url('admin/files/image.png', image); }
|
921
|
+
.icon-file.image-png { background-image: asset-url('admin/files/image.png', image); }
|
922
|
+
.icon-file.image-tiff { background-image: asset-url('admin/files/image.png', image); }
|
923
|
+
.icon-file.application-pdf { background-image: asset-url('admin/files/pdf.png', image); }
|
924
|
+
.icon-file.application-zip { background-image: asset-url('admin/files/zip.png', image); }
|
925
|
+
.icon-file.application-x-gzip { background-image: asset-url('admin/files/zip.png', image); }
|
926
926
|
|
927
927
|
img.gravatar {
|
928
928
|
padding: 2px;
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: admin_interface
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 1.2.
|
5
|
+
version: 1.2.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Joost Hietbrink
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-08-
|
13
|
+
date: 2011-08-24 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: kaminari
|
@@ -57,6 +57,7 @@ files:
|
|
57
57
|
- .gitignore
|
58
58
|
- README.rdoc
|
59
59
|
- admin_interface.gemspec
|
60
|
+
- doc/screenshot.png
|
60
61
|
- lib/admin_interface.rb
|
61
62
|
- lib/generators/admin_interface/USAGE
|
62
63
|
- lib/generators/admin_interface/admin_interface_generator.rb
|
@@ -250,8 +251,8 @@ files:
|
|
250
251
|
- vendor/assets/images/admin/zoom_in_g.png
|
251
252
|
- vendor/assets/images/admin/zoom_out.png
|
252
253
|
- vendor/assets/images/admin/zoom_out_g.png
|
253
|
-
- vendor/assets/javascripts/jquery.
|
254
|
-
- vendor/assets/stylesheets/
|
254
|
+
- vendor/assets/javascripts/admin_interface.jquery.js
|
255
|
+
- vendor/assets/stylesheets/admin_interface.css.scss
|
255
256
|
homepage: http://github.com/joost/admin_interface
|
256
257
|
licenses: []
|
257
258
|
|