interpret 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. data/README.md +488 -0
  2. data/app/controllers/interpret/search_controller.rb +3 -1
  3. data/app/controllers/interpret/tools_controller.rb +2 -1
  4. data/app/controllers/interpret/translations_controller.rb +16 -7
  5. data/app/models/interpret/expiration_observer.rb +29 -0
  6. data/app/models/interpret/translation.rb +9 -20
  7. data/app/views/interpret/tools/index.html.erb +16 -23
  8. data/app/views/interpret/translations/_listing.html.erb +1 -1
  9. data/app/views/interpret/translations/live_edit.html.erb +11 -0
  10. data/app/views/layouts/interpret.html.erb +6 -1
  11. data/app/views/layouts/interpret_base.html.erb +1 -1
  12. data/config/routes.rb +4 -0
  13. data/interpret.gemspec +0 -1
  14. data/lib/generators/interpret/setup_generator.rb +2 -1
  15. data/lib/interpret/controller_filter.rb +22 -0
  16. data/lib/interpret/engine.rb +17 -6
  17. data/lib/interpret/helpers.rb +39 -0
  18. data/lib/interpret/version.rb +1 -1
  19. data/lib/interpret.rb +4 -1
  20. data/lib/tasks/interpret.rake +4 -2
  21. data/public/javascripts/facebox-1.3/closelabel.png +0 -0
  22. data/public/javascripts/facebox-1.3/facebox.css +80 -0
  23. data/public/javascripts/facebox-1.3/facebox.js +309 -0
  24. data/public/javascripts/facebox-1.3/loading.gif +0 -0
  25. data/public/stylesheets/interpret_live_edit_style.css +38 -0
  26. data/public/stylesheets/interpret_style.css +18 -0
  27. data/spec/models/translation_spec.rb +33 -22
  28. data/spec/observers/expiration_observer_spec.rb +17 -0
  29. data/spec/spec_helper.rb +0 -1
  30. data/test_app/Gemfile +4 -2
  31. data/test_app/app/controllers/application_controller.rb +17 -1
  32. data/test_app/app/controllers/pages_controller.rb +0 -1
  33. data/test_app/app/models/my_sweeper.rb +5 -0
  34. data/test_app/app/views/layouts/application.html.erb +115 -5
  35. data/test_app/app/views/layouts/backoffice.html.erb +27 -0
  36. data/test_app/app/views/pages/archives.html.erb +3 -0
  37. data/test_app/app/views/pages/contact.html.erb +3 -0
  38. data/test_app/app/views/pages/index.html.erb +56 -0
  39. data/test_app/app/views/pages/links.html.erb +10 -0
  40. data/test_app/app/views/pages/resources.html.erb +5 -0
  41. data/test_app/config/application.rb +2 -2
  42. data/test_app/config/environments/production.rb +0 -5
  43. data/test_app/config/initializers/interpret.rb +3 -3
  44. data/test_app/config/locales/en.yml +55 -0
  45. data/test_app/config/locales/es.yml +3 -47
  46. data/test_app/config/routes.rb +8 -1
  47. data/test_app/public/images/a1.gif +0 -0
  48. data/test_app/public/images/a10.jpg +0 -0
  49. data/test_app/public/images/a16.gif +0 -0
  50. data/test_app/public/images/a18.gif +0 -0
  51. data/test_app/public/images/a22.gif +0 -0
  52. data/test_app/public/images/a26.gif +0 -0
  53. data/test_app/public/images/a33.gif +0 -0
  54. data/test_app/public/images/a36.gif +0 -0
  55. data/test_app/public/images/a38.gif +0 -0
  56. data/test_app/public/images/a41.gif +0 -0
  57. data/test_app/public/images/a47.gif +0 -0
  58. data/test_app/public/images/a50.gif +0 -0
  59. data/test_app/public/images/a8.gif +0 -0
  60. data/test_app/public/images/abg.gif +0 -0
  61. data/test_app/public/images/pic1.jpg +0 -0
  62. data/test_app/public/images/pic2.jpg +0 -0
  63. data/test_app/public/images/spacer.gif +0 -0
  64. data/test_app/public/images/upbg.gif +0 -0
  65. data/test_app/public/javascripts/facebox-1.3/closelabel.png +0 -0
  66. data/test_app/public/javascripts/facebox-1.3/facebox.css +80 -0
  67. data/test_app/public/javascripts/facebox-1.3/facebox.js +309 -0
  68. data/test_app/public/javascripts/facebox-1.3/loading.gif +0 -0
  69. data/test_app/public/stylesheets/default.css +361 -0
  70. data/test_app/public/stylesheets/interpret_live_edit_style.css +38 -0
  71. data/test_app/public/stylesheets/interpret_style.css +18 -0
  72. data/test_app/public/stylesheets/private.css +0 -0
  73. metadata +96 -29
  74. data/app/sweepers/interpret/base_sweeper.rb +0 -18
  75. data/app/sweepers/interpret/translation_sweeper.rb +0 -11
  76. data/public/javascripts/jquery.purr.js +0 -180
  77. data/test_app/app/sweepers/page_sweeper.rb +0 -12
  78. data/test_app/app/views/pages/contact.html.haml +0 -8
  79. data/test_app/app/views/pages/index.html.haml +0 -10
  80. data/test_app/config/locales/ca.yml +0 -6
  81. data/test_app/public/javascripts/jquery.purr.js +0 -180
@@ -0,0 +1,309 @@
1
+ /*
2
+ * Facebox (for jQuery)
3
+ * version: 1.2 (05/05/2008)
4
+ * @requires jQuery v1.2 or later
5
+ *
6
+ * Examples at http://famspam.com/facebox/
7
+ *
8
+ * Licensed under the MIT:
9
+ * http://www.opensource.org/licenses/mit-license.php
10
+ *
11
+ * Copyright 2007, 2008 Chris Wanstrath [ chris@ozmm.org ]
12
+ *
13
+ * Usage:
14
+ *
15
+ * jQuery(document).ready(function() {
16
+ * jQuery('a[rel*=facebox]').facebox()
17
+ * })
18
+ *
19
+ * <a href="#terms" rel="facebox">Terms</a>
20
+ * Loads the #terms div in the box
21
+ *
22
+ * <a href="terms.html" rel="facebox">Terms</a>
23
+ * Loads the terms.html page in the box
24
+ *
25
+ * <a href="terms.png" rel="facebox">Terms</a>
26
+ * Loads the terms.png image in the box
27
+ *
28
+ *
29
+ * You can also use it programmatically:
30
+ *
31
+ * jQuery.facebox('some html')
32
+ * jQuery.facebox('some html', 'my-groovy-style')
33
+ *
34
+ * The above will open a facebox with "some html" as the content.
35
+ *
36
+ * jQuery.facebox(function($) {
37
+ * $.get('blah.html', function(data) { $.facebox(data) })
38
+ * })
39
+ *
40
+ * The above will show a loading screen before the passed function is called,
41
+ * allowing for a better ajaxy experience.
42
+ *
43
+ * The facebox function can also display an ajax page, an image, or the contents of a div:
44
+ *
45
+ * jQuery.facebox({ ajax: 'remote.html' })
46
+ * jQuery.facebox({ ajax: 'remote.html' }, 'my-groovy-style')
47
+ * jQuery.facebox({ image: 'stairs.jpg' })
48
+ * jQuery.facebox({ image: 'stairs.jpg' }, 'my-groovy-style')
49
+ * jQuery.facebox({ div: '#box' })
50
+ * jQuery.facebox({ div: '#box' }, 'my-groovy-style')
51
+ *
52
+ * Want to close the facebox? Trigger the 'close.facebox' document event:
53
+ *
54
+ * jQuery(document).trigger('close.facebox')
55
+ *
56
+ * Facebox also has a bunch of other hooks:
57
+ *
58
+ * loading.facebox
59
+ * beforeReveal.facebox
60
+ * reveal.facebox (aliased as 'afterReveal.facebox')
61
+ * init.facebox
62
+ * afterClose.facebox
63
+ *
64
+ * Simply bind a function to any of these hooks:
65
+ *
66
+ * $(document).bind('reveal.facebox', function() { ...stuff to do after the facebox and contents are revealed... })
67
+ *
68
+ */
69
+ (function($) {
70
+ $.facebox = function(data, klass) {
71
+ $.facebox.loading()
72
+
73
+ if (data.ajax) fillFaceboxFromAjax(data.ajax, klass)
74
+ else if (data.image) fillFaceboxFromImage(data.image, klass)
75
+ else if (data.div) fillFaceboxFromHref(data.div, klass)
76
+ else if ($.isFunction(data)) data.call($)
77
+ else $.facebox.reveal(data, klass)
78
+ }
79
+
80
+ /*
81
+ * Public, $.facebox methods
82
+ */
83
+
84
+ $.extend($.facebox, {
85
+ settings: {
86
+ opacity : 0.2,
87
+ overlay : true,
88
+ loadingImage : '/javascripts/facebox-1.3/loading.gif',
89
+ closeImage : '/javascripts/facebox-1.3/closelabel.png',
90
+ imageTypes : [ 'png', 'jpg', 'jpeg', 'gif' ],
91
+ faceboxHtml : '\
92
+ <div id="facebox" style="display:none;"> \
93
+ <div class="popup"> \
94
+ <div class="content"> \
95
+ </div> \
96
+ <a href="#" class="close"><img src="/javascripts/facebox-1.3/closelabel.png" title="close" class="close_image" /></a> \
97
+ </div> \
98
+ </div>'
99
+ },
100
+
101
+ loading: function() {
102
+ init()
103
+ if ($('#facebox .loading').length == 1) return true
104
+ showOverlay()
105
+
106
+ $('#facebox .content').empty()
107
+ $('#facebox .body').children().hide().end().
108
+ append('<div class="loading"><img src="'+$.facebox.settings.loadingImage+'"/></div>')
109
+
110
+ $('#facebox').css({
111
+ top: getPageScroll()[1] + (getPageHeight() / 10),
112
+ left: $(window).width() / 2 - 205
113
+ }).show()
114
+
115
+ $(document).bind('keydown.facebox', function(e) {
116
+ if (e.keyCode == 27) $.facebox.close()
117
+ return true
118
+ })
119
+ $(document).trigger('loading.facebox')
120
+ },
121
+
122
+ reveal: function(data, klass) {
123
+ $(document).trigger('beforeReveal.facebox')
124
+ if (klass) $('#facebox .content').addClass(klass)
125
+ $('#facebox .content').append(data)
126
+ $('#facebox .loading').remove()
127
+ $('#facebox .body').children().fadeIn('normal')
128
+ $('#facebox').css('left', $(window).width() / 2 - ($('#facebox .popup').width() / 2))
129
+ $(document).trigger('reveal.facebox').trigger('afterReveal.facebox')
130
+ },
131
+
132
+ close: function() {
133
+ $(document).trigger('close.facebox')
134
+ return false
135
+ }
136
+ })
137
+
138
+ /*
139
+ * Public, $.fn methods
140
+ */
141
+
142
+ $.fn.facebox = function(settings) {
143
+ if ($(this).length == 0) return
144
+
145
+ init(settings)
146
+
147
+ function clickHandler() {
148
+ $.facebox.loading(true)
149
+
150
+ // support for rel="facebox.inline_popup" syntax, to add a class
151
+ // also supports deprecated "facebox[.inline_popup]" syntax
152
+ var klass = this.rel.match(/facebox\[?\.(\w+)\]?/)
153
+ if (klass) klass = klass[1]
154
+
155
+ fillFaceboxFromHref(this.href, klass)
156
+ return false
157
+ }
158
+
159
+ return this.bind('click.facebox', clickHandler)
160
+ }
161
+
162
+ /*
163
+ * Private methods
164
+ */
165
+
166
+ // called one time to setup facebox on this page
167
+ function init(settings) {
168
+ if ($.facebox.settings.inited) return true
169
+ else $.facebox.settings.inited = true
170
+
171
+ $(document).trigger('init.facebox')
172
+ makeCompatible()
173
+
174
+ var imageTypes = $.facebox.settings.imageTypes.join('|')
175
+ $.facebox.settings.imageTypesRegexp = new RegExp('\.(' + imageTypes + ')$', 'i')
176
+
177
+ if (settings) $.extend($.facebox.settings, settings)
178
+ $('body').append($.facebox.settings.faceboxHtml)
179
+
180
+ var preload = [ new Image(), new Image() ]
181
+ preload[0].src = $.facebox.settings.closeImage
182
+ preload[1].src = $.facebox.settings.loadingImage
183
+
184
+ $('#facebox').find('.b:first, .bl').each(function() {
185
+ preload.push(new Image())
186
+ preload.slice(-1).src = $(this).css('background-image').replace(/url\((.+)\)/, '$1')
187
+ })
188
+
189
+ $('#facebox .close').click($.facebox.close)
190
+ $('#facebox .close_image').attr('src', $.facebox.settings.closeImage)
191
+ }
192
+
193
+ // getPageScroll() by quirksmode.com
194
+ function getPageScroll() {
195
+ var xScroll, yScroll;
196
+ if (self.pageYOffset) {
197
+ yScroll = self.pageYOffset;
198
+ xScroll = self.pageXOffset;
199
+ } else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
200
+ yScroll = document.documentElement.scrollTop;
201
+ xScroll = document.documentElement.scrollLeft;
202
+ } else if (document.body) {// all other Explorers
203
+ yScroll = document.body.scrollTop;
204
+ xScroll = document.body.scrollLeft;
205
+ }
206
+ return new Array(xScroll,yScroll)
207
+ }
208
+
209
+ // Adapted from getPageSize() by quirksmode.com
210
+ function getPageHeight() {
211
+ var windowHeight
212
+ if (self.innerHeight) { // all except Explorer
213
+ windowHeight = self.innerHeight;
214
+ } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
215
+ windowHeight = document.documentElement.clientHeight;
216
+ } else if (document.body) { // other Explorers
217
+ windowHeight = document.body.clientHeight;
218
+ }
219
+ return windowHeight
220
+ }
221
+
222
+ // Backwards compatibility
223
+ function makeCompatible() {
224
+ var $s = $.facebox.settings
225
+
226
+ $s.loadingImage = $s.loading_image || $s.loadingImage
227
+ $s.closeImage = $s.close_image || $s.closeImage
228
+ $s.imageTypes = $s.image_types || $s.imageTypes
229
+ $s.faceboxHtml = $s.facebox_html || $s.faceboxHtml
230
+ }
231
+
232
+ // Figures out what you want to display and displays it
233
+ // formats are:
234
+ // div: #id
235
+ // image: blah.extension
236
+ // ajax: anything else
237
+ function fillFaceboxFromHref(href, klass) {
238
+ // div
239
+ if (href.match(/#/)) {
240
+ var url = window.location.href.split('#')[0]
241
+ var target = href.replace(url,'')
242
+ if (target == '#') return
243
+ $.facebox.reveal($(target).html(), klass)
244
+
245
+ // image
246
+ } else if (href.match($.facebox.settings.imageTypesRegexp)) {
247
+ fillFaceboxFromImage(href, klass)
248
+ // ajax
249
+ } else {
250
+ fillFaceboxFromAjax(href, klass)
251
+ }
252
+ }
253
+
254
+ function fillFaceboxFromImage(href, klass) {
255
+ var image = new Image()
256
+ image.onload = function() {
257
+ $.facebox.reveal('<div class="image"><img src="' + image.src + '" /></div>', klass)
258
+ }
259
+ image.src = href
260
+ }
261
+
262
+ function fillFaceboxFromAjax(href, klass) {
263
+ $.get(href, function(data) { $.facebox.reveal(data, klass) })
264
+ }
265
+
266
+ function skipOverlay() {
267
+ return $.facebox.settings.overlay == false || $.facebox.settings.opacity === null
268
+ }
269
+
270
+ function showOverlay() {
271
+ if (skipOverlay()) return
272
+
273
+ if ($('#facebox_overlay').length == 0)
274
+ $("body").append('<div id="facebox_overlay" class="facebox_hide"></div>')
275
+
276
+ $('#facebox_overlay').hide().addClass("facebox_overlayBG")
277
+ .css('opacity', $.facebox.settings.opacity)
278
+ .click(function() { $(document).trigger('close.facebox') })
279
+ .fadeIn(200)
280
+ return false
281
+ }
282
+
283
+ function hideOverlay() {
284
+ if (skipOverlay()) return
285
+
286
+ $('#facebox_overlay').fadeOut(200, function(){
287
+ $("#facebox_overlay").removeClass("facebox_overlayBG")
288
+ $("#facebox_overlay").addClass("facebox_hide")
289
+ $("#facebox_overlay").remove()
290
+ })
291
+
292
+ return false
293
+ }
294
+
295
+ /*
296
+ * Bindings
297
+ */
298
+
299
+ $(document).bind('close.facebox', function() {
300
+ $(document).unbind('keydown.facebox')
301
+ $('#facebox').fadeOut(function() {
302
+ $('#facebox .content').removeClass().addClass('content')
303
+ $('#facebox .loading').remove()
304
+ $(document).trigger('afterClose.facebox')
305
+ })
306
+ hideOverlay()
307
+ })
308
+
309
+ })(jQuery);
@@ -0,0 +1,361 @@
1
+ /*
2
+
3
+ terrafirma1.0 by nodethirtythree design
4
+ http://www.nodethirtythree.com
5
+
6
+ */
7
+
8
+ *
9
+ {
10
+ padding: 0px;
11
+ margin: 0px;
12
+ }
13
+
14
+ body
15
+ {
16
+ background: #F9F9F7 url('/images/a1.gif') repeat-x;
17
+ font-size: 11px;
18
+ font-family: "trebuchet ms", helvetica, sans-serif;
19
+ color: #8C8C73;
20
+ line-height: 18px;
21
+ }
22
+
23
+ a
24
+ {
25
+ color: #FF7800;
26
+ text-decoration: underline;
27
+ }
28
+
29
+ a:hover
30
+ {
31
+ text-decoration: none;
32
+ }
33
+
34
+ sup
35
+ {
36
+ font-size: 0.5em;
37
+ }
38
+
39
+
40
+ p
41
+ {
42
+ margin-bottom: 14px;
43
+ text-align: justify;
44
+ }
45
+
46
+ img.picA
47
+ {
48
+ position: relative;
49
+ top: -2px;
50
+ background: url('/images/a47.gif') no-repeat;
51
+ width: 76px;
52
+ height: 74px;
53
+ padding: 8px;
54
+ }
55
+
56
+ img.picB
57
+ {
58
+ position: relative;
59
+ top: -2px;
60
+ background: url('/images/a26.gif') no-repeat;
61
+ width: 146px;
62
+ height: 75px;
63
+ padding: 7px;
64
+ }
65
+
66
+ img.floatleft
67
+ {
68
+ float: left;
69
+ margin: 0px 14px 3px 0px;
70
+ }
71
+
72
+
73
+ ul.linklist
74
+ {
75
+ list-style: none;
76
+ }
77
+
78
+ ul.linklist li
79
+ {
80
+ border-top: solid 1px #EEEEEE;
81
+ padding-top: 5px;
82
+ margin: 5px 0px 0px 0px;
83
+ }
84
+
85
+ ul.linklist li.first
86
+ {
87
+ border-top: 0px;
88
+ margin-top: 0px;
89
+ padding-top: 0px;
90
+ }
91
+
92
+ #upbg
93
+ {
94
+ position: absolute;
95
+ top: 0px;
96
+ left: 0px;
97
+ background: #fff url('/images/upbg.gif') no-repeat;
98
+ width: 747px;
99
+ height: 264px;
100
+ z-index: 1;
101
+ }
102
+
103
+ #outer
104
+ {
105
+ position: relative;
106
+ width: 747px;
107
+ margin: 0 auto;
108
+ background: #fff url('/images/abg.gif') repeat-y;
109
+ }
110
+
111
+ #inner
112
+ {
113
+ position: relative;
114
+ padding: 13px 30px 13px 30px;
115
+ z-index: 2;
116
+ }
117
+
118
+ #header
119
+ {
120
+ position: absolute;
121
+ background: #FF7800 url('/images/a8.gif') repeat-x;
122
+ width: 202px;
123
+ height: 92px;
124
+ color: #fff;
125
+ padding-left: 20px;
126
+ }
127
+
128
+ #header span
129
+ {
130
+ font-weight: normal;
131
+ }
132
+
133
+ #header h1
134
+ {
135
+ position: absolute;
136
+ font-size: 23px;
137
+ letter-spacing: -1px;
138
+ top: 30px;
139
+ height: 92px;
140
+ }
141
+
142
+ #header h2
143
+ {
144
+ position: absolute;
145
+ font-size: 10px;
146
+ font-weight: normal;
147
+ color: #FCE2CA;
148
+ top: 51px;
149
+ }
150
+
151
+ #header sup
152
+ {
153
+ color: #FCE2CA;
154
+ }
155
+
156
+ #splash
157
+ {
158
+ position: absolute;
159
+ right: 30px;
160
+ background: #EAEAE2 url('/images/a10.jpg') no-repeat;
161
+ width: 458px;
162
+ height: 92px;
163
+ }
164
+
165
+ #menu
166
+ {
167
+ position: relative;
168
+ background: #46461F url('/images/a16.gif') repeat-x;
169
+ height: 67px;
170
+ padding: 0px 20px 0px 5px;
171
+ margin: 98px 0px 20px 0px;
172
+ }
173
+
174
+ #menu ul
175
+ {
176
+ }
177
+
178
+ #menu ul li
179
+ {
180
+ display: inline;
181
+ line-height: 52px;
182
+ padding-left: 3px;
183
+ }
184
+
185
+ #menu ul li.first
186
+ {
187
+ border-left: 0px;
188
+ }
189
+
190
+ #menu ul li a
191
+ {
192
+ background-color: transparent;
193
+ background-repeat: repeat-x;
194
+ padding: 8px 12px 8px 12px;
195
+ font-size: 12px;
196
+ color: #fff;
197
+ font-weight: bold;
198
+ }
199
+
200
+ #menu ul li a:hover
201
+ {
202
+ background: #fff url('/images/a18.gif') repeat-x top;
203
+ color: #4A4A24;
204
+ text-decoration: none;
205
+ }
206
+
207
+ #lang_menu {
208
+ color: black;
209
+ }
210
+
211
+ #secondarycontent
212
+ {
213
+ position: relative;
214
+ width: 180px;
215
+ float: right;
216
+ }
217
+
218
+ #secondarycontent h3
219
+ {
220
+ position: relative;
221
+ top: 4px;
222
+ font-size: 16px;
223
+ line-height: 25px;
224
+ color: #656551;
225
+ letter-spacing: -1px;
226
+ background: url('/images/a22.gif') bottom repeat-x;
227
+ padding: 0px 0px 10px 10px;
228
+ margin-bottom: 20px;
229
+ }
230
+
231
+ #secondarycontent .content
232
+ {
233
+ padding: 0px 10px 0px 10px;
234
+ margin-bottom: 20px;
235
+ }
236
+
237
+ #primarycontent
238
+ {
239
+ position: relative;
240
+ width: 480px;
241
+ float: left;
242
+ }
243
+
244
+ #primarycontent h3
245
+ {
246
+ position: relative;
247
+ top: 4px;
248
+ font-size: 18px;
249
+ line-height: 25px;
250
+ color: #111;
251
+ letter-spacing: -1px;
252
+ background: url('/images/a22.gif') bottom repeat-x;
253
+ padding: 0px 0px 10px 15px;
254
+ margin-bottom: 20px;
255
+ }
256
+
257
+ #primarycontent .content
258
+ {
259
+ padding: 0px 15px 0px 15px;
260
+ margin-bottom: 20px;
261
+ }
262
+
263
+ #primarycontent .post
264
+ {
265
+ margin-bottom: 30px;
266
+ }
267
+
268
+ #primarycontent .post .header
269
+ {
270
+ position: relative;
271
+ }
272
+
273
+ #primarycontent .post .date
274
+ {
275
+ position: absolute;
276
+ right: 15px;
277
+ top: 0px;
278
+ line-height: 35px;
279
+ color: #AFAFA4;
280
+ font-weight: bold;
281
+ }
282
+
283
+ #primarycontent .post .content
284
+ {
285
+ margin-bottom: 0px;
286
+ }
287
+
288
+ #primarycontent .post .footer
289
+ {
290
+ position: relative;
291
+ top: -10px;
292
+ background: url('/images/a33.gif') repeat-x;
293
+ height: 64px;
294
+ }
295
+
296
+ #primarycontent .post .footer ul
297
+ {
298
+ list-style: none;
299
+ position: absolute;
300
+ right: 15px;
301
+ bottom: 15px;
302
+ }
303
+
304
+ #primarycontent .post .footer ul li
305
+ {
306
+ display: inline;
307
+ line-height: 14px;
308
+ padding-left: 17px;
309
+ margin-left: 25px;
310
+ background-repeat: no-repeat;
311
+ background-position: 0px 2px;
312
+ }
313
+
314
+ #primarycontent .post .footer ul li.printerfriendly
315
+ {
316
+ background-image: url('/images/a41.gif');
317
+ }
318
+
319
+ #primarycontent .post .footer ul li.comments
320
+ {
321
+ background-image: url('/images/a36.gif');
322
+ }
323
+
324
+ #primarycontent .post .footer ul li.readmore
325
+ {
326
+ background-image: url('/images/a38.gif');
327
+ }
328
+
329
+ #footer
330
+ {
331
+ position: relative;
332
+ clear: both;
333
+ height: 66px;
334
+ text-align: center;
335
+ line-height: 66px;
336
+ background-image: url('/images/a50.gif');
337
+ color: #A8A88D;
338
+ }
339
+
340
+ #footer a
341
+ {
342
+ color: #8C8C73;
343
+ }
344
+
345
+
346
+
347
+ /* Interpret DEMO style */
348
+
349
+ #demo_sidebar {
350
+ position: fixed;
351
+ min-height: 200px;
352
+ width: 300px;
353
+ background-color: #333;
354
+ padding: 5px;
355
+ font-size: 1.2em;
356
+ }
357
+
358
+ ul.links {
359
+ margin-left: 20px;
360
+ margin-top: 10px;
361
+ }
@@ -0,0 +1,38 @@
1
+ #interpret_live_edit {
2
+ padding-top: 15px;
3
+ padding-right: 16px;
4
+ width: 700px;
5
+ min-height: 300px;
6
+ text-align: center;
7
+ }
8
+
9
+ #interpret_live_edit textarea {
10
+ width: 100%;
11
+ height: 31em;
12
+ }
13
+
14
+ #interpret_live_edit input[type=submit] {
15
+ background-color: #555;
16
+ color: #FFF;
17
+ border: none;
18
+ font-size: 1em;
19
+ margin-top: .5em;
20
+ padding: .6em 1.5em;
21
+ cursor: hand;
22
+ cursor: pointer;
23
+ border-radius: 5px;
24
+ }
25
+
26
+ #interpret_live_edit input[type=submit]:hover {
27
+ background-color: #777;
28
+ }
29
+
30
+ .interpret_editable {
31
+ background-color: #F8FD7D;
32
+ cursor: hand;
33
+ cursor: pointer;
34
+ }
35
+ .interpret_editable:hover {
36
+ background-color: #FCF305;
37
+ }
38
+
@@ -521,3 +521,21 @@ html body * dd.clear
521
521
  #interpret_container #tree_sidebar a:hover {
522
522
  text-decoration: underline;
523
523
  }
524
+
525
+ #interpret_container .interpret_flash {
526
+ width: 95%;
527
+ min-height: 0.8em;
528
+ padding: 1em;
529
+ margin-bottom: 0.5em;
530
+ text-align: center;
531
+ }
532
+
533
+ #interpret_container .interpret_flash.notice {
534
+ background-color: #BBFFBB;
535
+ border: 1px solid #55FF55;
536
+ }
537
+ #interpret_container .interpret_flash.alert {
538
+ background-color: #FFBBBB;
539
+ border: 1px solid #FF5555;
540
+ }
541
+