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 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 SearchLogic and WillPaginate.
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
- group :development, :test do
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)
@@ -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.0'
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"
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 'admin' %>
8
- <%= javascript_include_tag :application, 'jquery.admin.js' %>
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>
@@ -9,12 +9,12 @@ label.disabled {
9
9
  }
10
10
 
11
11
  /***** Custom additions to Redmine *****/
12
- .icon-search { background-image: url(/assets/admin/search.png); }
13
- .icon-download { background-image: url(/assets/admin/download.png); }
14
- .icon-destroy { background-image: url(/assets/admin/destroy.png); }
15
- .icon-document { background-image: url(/assets/admin/document.png); }
16
- .icon-crop { background-image: url(/assets/admin/crop.png); }
17
- .icon-mail { background-image: url(/assets/admin/mail.png); }
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(/assets/admin/warning.png) 8px 5px no-repeat;
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(/assets/admin/' has been replaced by 'url(/assets/admin/'.
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(/assets/admin/projects.png); }
96
- #admin-menu a.users { background-image: url(/assets/admin/user.png); }
97
- #admin-menu a.groups { background-image: url(/assets/admin/group.png); }
98
- #admin-menu a.roles { background-image: url(/assets/admin/database_key.png); }
99
- #admin-menu a.trackers { background-image: url(/assets/admin/ticket.png); }
100
- #admin-menu a.issue_statuses { background-image: url(/assets/admin/ticket_edit.png); }
101
- #admin-menu a.workflows { background-image: url(/assets/admin/ticket_go.png); }
102
- #admin-menu a.custom_fields { background-image: url(/assets/admin/textfield.png); }
103
- #admin-menu a.enumerations { background-image: url(/assets/admin/text_list_bullets.png); }
104
- #admin-menu a.settings { background-image: url(/assets/admin/changeset.png); }
105
- #admin-menu a.plugins { background-image: url(/assets/admin/plugin.png); }
106
- #admin-menu a.info { background-image: url(/assets/admin/help.png); }
107
- #admin-menu a.server_authentication { background-image: url(/assets/admin/server_key.png); }
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(/assets/admin/openid-bg.gif) no-repeat; background-color: #fff; background-position: 0 50%; padding-left: 18px; }
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(/assets/admin/bullet_arrow_right.png) no-repeat 0 50%; padding-left: 16px;}
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(/assets/admin/bullet_arrow_right.png) no-repeat 0 50%; padding-left: 16px;}
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(/assets/admin/bullet_toggle_plus.png); padding-left: 8px; margin-left: 0; cursor: pointer;}
192
- tr.open span.expander {background-image: url(/assets/admin/bullet_toggle_minus.png);}
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(/assets/admin/locked.png) no-repeat 0 1px; }
208
- tr.message.sticky td.subject { background: url(/assets/admin/bullet_go.png) no-repeat 0 1px; font-weight: bold; }
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(/assets/admin/link.png) no-repeat 0% 70%; }
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(/assets/admin/sort_asc.png); }
246
- a.sort.desc { background-image: url(/assets/admin/sort_desc.png); }
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(/assets/admin/comment.png) no-repeat 0% 50%; padding-left: 20px; }
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(/assets/admin/package.png) no-repeat 0% 50%; padding-left: 20px; }
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(/assets/admin/ticket.png) no-repeat 0% 50%; padding-left: 20px; }
259
- div.members h3 { background: url(/assets/admin/group.png) no-repeat 0% 50%; padding-left: 20px; }
260
- div.news h3 { background: url(/assets/admin/news.png) no-repeat 0% 50%; padding-left: 20px; }
261
- div.projects h3 { background: url(/assets/admin/projects.png) no-repeat 0% 50%; padding-left: 20px; }
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(/assets/admin/arrow_expanded.png) no-repeat 0% 40%; cursor:pointer; }
322
- fieldset.collapsible.collapsed legend { background-image: url(/assets/admin/arrow_collapsed.png); }
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(/assets/admin/ticket.png); }
352
- dt.issue-edit { background-image: url(/assets/admin/ticket_edit.png); }
353
- dt.issue-closed { background-image: url(/assets/admin/ticket_checked.png); }
354
- dt.issue-note { background-image: url(/assets/admin/ticket_note.png); }
355
- dt.changeset { background-image: url(/assets/admin/changeset.png); }
356
- dt.news { background-image: url(/assets/admin/news.png); }
357
- dt.message { background-image: url(/assets/admin/message.png); }
358
- dt.reply { background-image: url(/assets/admin/comments.png); }
359
- dt.wiki-page { background-image: url(/assets/admin/wiki_edit.png); }
360
- dt.attachment { background-image: url(/assets/admin/attachment.png); }
361
- dt.document { background-image: url(/assets/admin/document.png); }
362
- dt.project { background-image: url(/assets/admin/projects.png); }
363
- dt.time-entry { background-image: url(/assets/admin/time.png); }
364
-
365
- #search-results dt.issue.closed { background-image: url(/assets/admin/ticket_checked.png); }
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(/assets/admin/fav.png) no-repeat 0 50%; }
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(/assets/admin/draft.png)}
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(/assets/admin/feed.png) no-repeat 1px 50%; padding: 2px 0px 3px 16px; }
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(/assets/admin/group.png) no-repeat 0% 50%; }
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(/assets/admin/exclamation.png) 8px 50% no-repeat;
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(/assets/admin/true.png) 8px 5px no-repeat;
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(/assets/admin/warning.png) 8px 5px no-repeat;
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(/assets/admin/loading.gif);
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(/assets/admin/bullet_go.png) no-repeat -1px -2px; padding-left:16px;}
577
- table.cal .ending a, p.cal.legend .ending {background: url(/assets/admin/bullet_end.png) no-repeat -1px -2px; padding-left:16px;}
578
- table.cal .starting.ending a, p.cal.legend .starting.ending {background: url(/assets/admin/bullet_diamond.png) no-repeat -1px -2px; padding-left:16px;}
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(/assets/admin/bullet_arrow_left.png) no-repeat 50% 50%;
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(/assets/admin/bullet_arrow_right.png) no-repeat 50% 50%;
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(/assets/admin/external.png);
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('/assets/admin/close.png');
807
+ background-image:asset-url('admin/close.png', image);
808
808
  }
809
809
 
810
810
  a.close-icon:hover {
811
- background-image:url('/assets/admin/close_hl.png');
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(/assets/admin/task_late.png); border: 1px solid #f66; }
844
- .task_done { background:#00c600 url(/assets/admin/task_done.png); border: 1px solid #00c600; }
845
- .task_todo { background:#aaa url(/assets/admin/task_todo.png); border: 1px solid #aaa; }
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(/assets/admin/task_parent_end.png) no-repeat 0 0; width: 8px; height: 16px; margin-left: -4px; left: 0px; top: -1px;}
850
- .task.parent.marker.ending { position: absolute; background: url(/assets/admin/task_parent_end.png) no-repeat 0 0; width: 8px; height: 16px; margin-left: -4px; right: 0px; top: -1px;}
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(/assets/admin/milestone_late.png); border: 1px solid #f66; height: 2px; margin-top: 3px;}
853
- .version.task_done { background:#00c600 url(/assets/admin/milestone_done.png); border: 1px solid #00c600; height: 2px; margin-top: 3px;}
854
- .version.task_todo { background:#fff url(/assets/admin/milestone_todo.png); border: 1px solid #fff; height: 2px; margin-top: 3px;}
855
- .version.marker { background-image:url(/assets/admin/version_marker.png); background-repeat: no-repeat; border: 0; margin-left: -4px; margin-top: 1px; }
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(/assets/admin/milestone_late.png); border: 1px solid #f66; height: 2px; margin-top: 3px;}
858
- .project.task_done { background:#00c600 url(/assets/admin/milestone_done.png); border: 1px solid #00c600; height: 2px; margin-top: 3px;}
859
- .project.task_todo { background:#fff url(/assets/admin/milestone_todo.png); border: 1px solid #fff; height: 2px; margin-top: 3px;}
860
- .project.marker { background-image:url(/assets/admin/project_marker.png); background-repeat: no-repeat; border: 0; margin-left: -4px; margin-top: 1px; }
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(/assets/admin/add.png); }
875
- .icon-edit { background-image: url(/assets/admin/edit.png); }
876
- .icon-copy { background-image: url(/assets/admin/copy.png); }
877
- .icon-duplicate { background-image: url(/assets/admin/duplicate.png); }
878
- .icon-del { background-image: url(/assets/admin/delete.png); }
879
- .icon-move { background-image: url(/assets/admin/move.png); }
880
- .icon-save { background-image: url(/assets/admin/save.png); }
881
- .icon-cancel { background-image: url(/assets/admin/cancel.png); }
882
- .icon-multiple { background-image: url(/assets/admin/table_multiple.png); }
883
- .icon-folder { background-image: url(/assets/admin/folder.png); }
884
- .open .icon-folder { background-image: url(/assets/admin/folder_open.png); }
885
- .icon-package { background-image: url(/assets/admin/package.png); }
886
- .icon-home { background-image: url(/assets/admin/home.png); }
887
- .icon-user { background-image: url(/assets/admin/user.png); }
888
- .icon-projects { background-image: url(/assets/admin/projects.png); }
889
- .icon-help { background-image: url(/assets/admin/help.png); }
890
- .icon-attachment { background-image: url(/assets/admin/attachment.png); }
891
- .icon-history { background-image: url(/assets/admin/history.png); }
892
- .icon-time { background-image: url(/assets/admin/time.png); }
893
- .icon-time-add { background-image: url(/assets/admin/time_add.png); }
894
- .icon-stats { background-image: url(/assets/admin/stats.png); }
895
- .icon-warning { background-image: url(/assets/admin/warning.png); }
896
- .icon-fav { background-image: url(/assets/admin/fav.png); }
897
- .icon-fav-off { background-image: url(/assets/admin/fav_off.png); }
898
- .icon-reload { background-image: url(/assets/admin/reload.png); }
899
- .icon-lock { background-image: url(/assets/admin/locked.png); }
900
- .icon-unlock { background-image: url(/assets/admin/unlock.png); }
901
- .icon-checked { background-image: url(/assets/admin/true.png); }
902
- .icon-details { background-image: url(/assets/admin/zoom_in.png); }
903
- .icon-report { background-image: url(/assets/admin/report.png); }
904
- .icon-comment { background-image: url(/assets/admin/comment.png); }
905
- .icon-summary { background-image: url(/assets/admin/lightning.png); }
906
- .icon-server-authentication { background-image: url(/assets/admin/server_key.png); }
907
- .icon-issue { background-image: url(/assets/admin/ticket.png); }
908
- .icon-zoom-in { background-image: url(/assets/admin/zoom_in.png); }
909
- .icon-zoom-out { background-image: url(/assets/admin/zoom_out.png); }
910
- .icon-changeset { background-image: url(/assets/admin/changeset.png); }
911
-
912
- .icon-file { background-image: url(/assets/admin/files/default.png); }
913
- .icon-file.text-plain { background-image: url(/assets/admin/files/text.png); }
914
- .icon-file.text-x-c { background-image: url(/assets/admin/files/c.png); }
915
- .icon-file.text-x-csharp { background-image: url(/assets/admin/files/csharp.png); }
916
- .icon-file.text-x-php { background-image: url(/assets/admin/files/php.png); }
917
- .icon-file.text-x-ruby { background-image: url(/assets/admin/files/ruby.png); }
918
- .icon-file.text-xml { background-image: url(/assets/admin/files/xml.png); }
919
- .icon-file.image-gif { background-image: url(/assets/admin/files/image.png); }
920
- .icon-file.image-jpeg { background-image: url(/assets/admin/files/image.png); }
921
- .icon-file.image-png { background-image: url(/assets/admin/files/image.png); }
922
- .icon-file.image-tiff { background-image: url(/assets/admin/files/image.png); }
923
- .icon-file.application-pdf { background-image: url(/assets/admin/files/pdf.png); }
924
- .icon-file.application-zip { background-image: url(/assets/admin/files/zip.png); }
925
- .icon-file.application-x-gzip { background-image: url(/assets/admin/files/zip.png); }
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.0
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-22 00:00:00 Z
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.admin.js
254
- - vendor/assets/stylesheets/admin.css
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