cortex-reaver 0.2.9 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/cortex_reaver/config.rb +3 -3
- data/lib/cortex_reaver/controller/comment.rb +1 -1
- data/lib/cortex_reaver/controller/photograph.rb +1 -1
- data/lib/cortex_reaver/helper/form.rb +2 -0
- data/lib/cortex_reaver/helper/navigation.rb +29 -26
- data/lib/cortex_reaver/layout/blank.rhtml +0 -14
- data/lib/cortex_reaver/layout/text.rhtml +0 -14
- data/lib/cortex_reaver/model/comment.rb +0 -1
- data/lib/cortex_reaver/public/css/actions.css +23 -4
- data/lib/cortex_reaver/public/css/colophon.css +2 -2
- data/lib/cortex_reaver/public/css/commments.css +5 -0
- data/lib/cortex_reaver/public/css/context_navigation.css +26 -0
- data/lib/cortex_reaver/public/css/flash.css +4 -0
- data/lib/cortex_reaver/public/css/fonts.css +6 -1
- data/lib/cortex_reaver/public/css/main.css +25 -20
- data/lib/cortex_reaver/public/css/pagination.css +14 -7
- data/lib/cortex_reaver/public/css/photo-show.css +17 -3
- data/lib/cortex_reaver/public/css/photo.css +15 -23
- data/lib/cortex_reaver/public/css/sidebar.css +23 -60
- data/lib/cortex_reaver/public/css/text.css +1 -0
- data/lib/cortex_reaver/public/images/grid_34_light.png +0 -0
- data/lib/cortex_reaver/public/images/next_34_light.png +0 -0
- data/lib/cortex_reaver/public/images/prev_34_light.png +0 -0
- data/lib/cortex_reaver/version.rb +1 -1
- data/lib/cortex_reaver/view/comments/form.rhtml +1 -1
- data/lib/cortex_reaver/view/comments/post_form.rhtml +1 -1
- data/lib/cortex_reaver/view/journals/form.rhtml +25 -1
- data/lib/cortex_reaver/view/photographs/grid.rhtml +0 -18
- data/lib/cortex_reaver/view/photographs/show.rhtml +2 -1
- data/lib/cortex_reaver/view/sidebar/context_navigation.rhtml +5 -0
- data/lib/cortex_reaver/view/top.rhtml +2 -3
- metadata +129 -62
- data/lib/cortex_reaver/public/css/top_actions.css +0 -50
data/lib/cortex_reaver/config.rb
CHANGED
@@ -151,7 +151,7 @@ You can also just provide a regex for the path, in which case it is matched dire
|
|
151
151
|
[/^\/journals(\/(page|tagged))?/, 'explore_journals']
|
152
152
|
",
|
153
153
|
:default => [
|
154
|
-
['
|
154
|
+
['*', 'context_navigation'],
|
155
155
|
['/', 'photographs']
|
156
156
|
]
|
157
157
|
|
@@ -184,8 +184,8 @@ You can also just provide a regex for the path, in which case it is matched dire
|
|
184
184
|
photographs.define :sizes,
|
185
185
|
:desc => "What sizes of each photograph to maintain.",
|
186
186
|
:default => {
|
187
|
-
:thumbnail => '
|
188
|
-
:grid => '
|
187
|
+
:thumbnail => '160x',
|
188
|
+
:grid => '140x140',
|
189
189
|
:small => 'x512',
|
190
190
|
:medium => 'x768',
|
191
191
|
:large => 'x1024'
|
@@ -96,7 +96,7 @@ module CortexReaver
|
|
96
96
|
|
97
97
|
# Save comment and go back to the parent.
|
98
98
|
session[:pending_comment] = @comment
|
99
|
-
redirect comment.parent.url
|
99
|
+
redirect @comment.parent.url
|
100
100
|
else
|
101
101
|
# Okay, set anonymous info
|
102
102
|
@comment.name = request[:name] unless request[:name].blank?
|
@@ -45,7 +45,7 @@ module CortexReaver
|
|
45
45
|
on_second_save do |photograph, request|
|
46
46
|
photograph.tags = request[:tags]
|
47
47
|
photograph.image = request[:image][:tempfile] if request[:image]
|
48
|
-
photograph.infer_date_from_exif! if request[:infer_date]
|
48
|
+
photograph.infer_date_from_exif! if request[:infer_date] == "1"
|
49
49
|
|
50
50
|
Ramaze::Cache.action.clear
|
51
51
|
end
|
@@ -46,7 +46,7 @@ module Ramaze
|
|
46
46
|
|
47
47
|
# Returns a list with next/up/previous links for the record.
|
48
48
|
def model_nav(model)
|
49
|
-
if not model.respond_to? :next
|
49
|
+
if not (model.respond_to? :next and model.respond_to? :absolute_window_url)
|
50
50
|
# Not applicable
|
51
51
|
return
|
52
52
|
elsif CortexReaver::User === model or CortexReaver::Page === model
|
@@ -72,7 +72,7 @@ module Ramaze
|
|
72
72
|
# of the class (in which case the page which would contain that instance
|
73
73
|
# is highlighted, or a page number. Limit determines how many numeric links
|
74
74
|
# to include--use :all to include all pages.
|
75
|
-
def page_nav(klass, index = nil, limit =
|
75
|
+
def page_nav(klass, index = nil, limit = 17)
|
76
76
|
# Translate :first, :last into corresponding windows.
|
77
77
|
case index
|
78
78
|
when :first
|
@@ -95,28 +95,33 @@ module Ramaze
|
|
95
95
|
if limit.kind_of? Integer and window_count > limit
|
96
96
|
# There are more pages than we can display.
|
97
97
|
|
98
|
-
# Default first and last pages are the size of the collection
|
99
|
-
first_page = 1
|
100
|
-
last_page = window_count - 2
|
101
|
-
|
102
98
|
# The desired number of previous or next pages
|
103
|
-
previous_pages = (Float(limit -
|
104
|
-
next_pages = (Float(limit -
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
last_page = page + next_pages
|
99
|
+
previous_pages = (Float(limit - 1) / 2).floor
|
100
|
+
next_pages = (Float(limit - 1) / 2).ceil
|
101
|
+
|
102
|
+
# Shift window near edges
|
103
|
+
first = page - previous_pages
|
104
|
+
last = page + next_pages
|
105
|
+
if first < 0
|
106
|
+
last -= first
|
107
|
+
first = 0
|
108
|
+
elsif last > (window_count - 1)
|
109
|
+
first -= last - (window_count - 1)
|
110
|
+
last = window_count - 1
|
116
111
|
end
|
117
112
|
|
118
|
-
#
|
119
|
-
pages =
|
113
|
+
# Build pages
|
114
|
+
pages = (first .. last).to_a
|
115
|
+
|
116
|
+
# Check for elided segments
|
117
|
+
if pages[0] != 0
|
118
|
+
pages[0] = 0
|
119
|
+
pages[1] = :elided
|
120
|
+
end
|
121
|
+
if pages[-1] != window_count - 1
|
122
|
+
pages[-1] = window_count - 1
|
123
|
+
pages[-2] = :elided
|
124
|
+
end
|
120
125
|
else
|
121
126
|
# The window encompasses the entire set of pages
|
122
127
|
pages = (0 ... window_count).to_a
|
@@ -132,12 +137,10 @@ module Ramaze
|
|
132
137
|
# Convert pages to links
|
133
138
|
unless pages.empty?
|
134
139
|
pages.inject(pages.first - 1) do |previous, i|
|
135
|
-
if
|
140
|
+
if i == :elided
|
136
141
|
# These pages are not side-by-side.
|
137
142
|
links << '<li class="elided"><span>…</span></li>'
|
138
|
-
|
139
|
-
|
140
|
-
if i == page
|
143
|
+
elsif i == page
|
141
144
|
# This is a link to the current page.
|
142
145
|
links << "<li class=\"current\"><span>#{i + 1}</span></li>"
|
143
146
|
else
|
@@ -162,7 +165,7 @@ module Ramaze
|
|
162
165
|
|
163
166
|
# Produces a section navigation list from an array of titles to urls.
|
164
167
|
def section_nav(sections)
|
165
|
-
s = "<ul class=\"actions\">\n"
|
168
|
+
s = "<ul class=\"sections actions\">\n"
|
166
169
|
sections.each do |section|
|
167
170
|
title = section.first
|
168
171
|
url = section.last.to_s
|
@@ -21,19 +21,5 @@
|
|
21
21
|
</div>
|
22
22
|
|
23
23
|
<%= CortexReaver::MainController.render_view('tracker') %>
|
24
|
-
|
25
|
-
<script type="text/javascript">
|
26
|
-
/* <![CDATA[ */
|
27
|
-
$(document).ready(function() {
|
28
|
-
$('.pagination li').not('.elided').add('.actions > li').not('.current').not('.placeholder').each(function(i) {
|
29
|
-
$(this).fadeTo(0,0.8);
|
30
|
-
$(this).hover(
|
31
|
-
function() { $(this).fadeTo(0,1) },
|
32
|
-
function() { $(this).fadeTo(200,0.8) }
|
33
|
-
);
|
34
|
-
});
|
35
|
-
});
|
36
|
-
/* ]]> */
|
37
|
-
</script>
|
38
24
|
</body>
|
39
25
|
</html>
|
@@ -45,19 +45,5 @@
|
|
45
45
|
</div>
|
46
46
|
|
47
47
|
<%= CortexReaver::MainController.render_view('tracker') %>
|
48
|
-
|
49
|
-
<script type="text/javascript">
|
50
|
-
/* <![CDATA[ */
|
51
|
-
$(document).ready(function() {
|
52
|
-
$('.pagination li').add('.actions > li').not('.elided').not('.current').not('.placeholder').each(function(i) {
|
53
|
-
$(this).fadeTo(0,0.8);
|
54
|
-
$(this).hover(
|
55
|
-
function() { $(this).fadeTo(0,1) },
|
56
|
-
function() { $(this).fadeTo(200,0.8) }
|
57
|
-
);
|
58
|
-
});
|
59
|
-
});
|
60
|
-
/* ]]> */
|
61
|
-
</script>
|
62
48
|
</body>
|
63
49
|
</html>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/* Actions */
|
2
2
|
ul.actions {
|
3
3
|
margin: 0;
|
4
|
-
padding:
|
4
|
+
padding: 0;
|
5
5
|
}
|
6
6
|
.actions li {
|
7
7
|
color: #000;
|
@@ -12,13 +12,32 @@ ul.actions {
|
|
12
12
|
.actions li a {
|
13
13
|
color: #000;
|
14
14
|
}
|
15
|
-
|
16
|
-
|
15
|
+
|
16
|
+
/* Top actions */
|
17
|
+
#top .actions li {
|
18
|
+
display: inline-block;
|
19
|
+
}
|
20
|
+
|
21
|
+
#top .sections.actions li {
|
22
|
+
padding-bottom: 3px;
|
23
|
+
border-bottom: 3px solid transparent;
|
24
|
+
position: relative;
|
25
|
+
top: 3px;
|
17
26
|
}
|
18
|
-
|
27
|
+
|
28
|
+
#top .sections.actions a {
|
29
|
+
padding: 6px;
|
19
30
|
color: #000;
|
20
31
|
}
|
21
32
|
|
33
|
+
#top .sections.actions li:hover {
|
34
|
+
border-bottom-color: #444 !important;
|
35
|
+
}
|
36
|
+
|
37
|
+
#top .sections.actions li.current {
|
38
|
+
border-bottom-color: #888;
|
39
|
+
}
|
40
|
+
|
22
41
|
/* Footer actions on journals, pages, etc */
|
23
42
|
.footer .actions {
|
24
43
|
font-size: 80%;
|
@@ -0,0 +1,26 @@
|
|
1
|
+
.navigation.actions li {
|
2
|
+
display: inline-block;
|
3
|
+
margin-left: 8px;
|
4
|
+
}
|
5
|
+
|
6
|
+
.navigation.actions li:first-child {
|
7
|
+
margin-left: 0;
|
8
|
+
}
|
9
|
+
|
10
|
+
.navigation.actions a {
|
11
|
+
height: 34px;
|
12
|
+
width: 34px;
|
13
|
+
display: block;
|
14
|
+
text-indent: 100px;
|
15
|
+
overflow: hidden;
|
16
|
+
white-space: nowrap;
|
17
|
+
background: no-repeat center;
|
18
|
+
}
|
19
|
+
|
20
|
+
.navigation.actions a.up { background-image: url('/images/grid_34_light.png'); }
|
21
|
+
.navigation.actions a.previous { background-image: url('/images/prev_34_light.png'); }
|
22
|
+
.navigation.actions a.next { background-image: url('/images/next_34_light.png'); }
|
23
|
+
|
24
|
+
.navigation.actions a.up:hover { background-image: url('/images/grid_34.png'); }
|
25
|
+
.navigation.actions a.previous:hover { background-image: url('/images/prev_34.png'); }
|
26
|
+
.navigation.actions a.next:hover { background-image: url('/images/next_34.png'); }
|
@@ -24,10 +24,12 @@
|
|
24
24
|
color: #003;
|
25
25
|
background: #e6e6ff;
|
26
26
|
-webkit-box-shadow: 0 1px 2px #88a;
|
27
|
+
-moz-box-shadow: 0 1px 2px #88a;
|
27
28
|
}
|
28
29
|
body.photographs .flash.notice {
|
29
30
|
background: #3C3C54;
|
30
31
|
-webkit-box-shadow: none;
|
32
|
+
-moz-box-shadow: none;
|
31
33
|
color: #fff;
|
32
34
|
}
|
33
35
|
.flash.notice .icon {
|
@@ -38,11 +40,13 @@ body.photographs .flash.notice {
|
|
38
40
|
color: #300;
|
39
41
|
background: #ffe6e6;
|
40
42
|
-webkit-box-shadow: 0 1px 2px #a88;
|
43
|
+
-moz-box-shadow: 0 1px 2px #a88;
|
41
44
|
}
|
42
45
|
body.photographs .flash.error {
|
43
46
|
background: #541C1C;
|
44
47
|
color: #fff;
|
45
48
|
-webkit-box-shadow: none;
|
49
|
+
-moz-box-shadow: none;
|
46
50
|
}
|
47
51
|
.flash.error .icon {
|
48
52
|
background-position: -256px -32px;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
body {
|
2
|
-
font-size:
|
2
|
+
font-size: 13px;
|
3
3
|
font-family: sans-serif;
|
4
4
|
}
|
5
5
|
|
@@ -9,9 +9,14 @@ h1 {
|
|
9
9
|
}
|
10
10
|
|
11
11
|
h2 {
|
12
|
+
margin-top: 0;
|
12
13
|
font-size: 150%;
|
13
14
|
}
|
14
15
|
|
16
|
+
h2:first-child {
|
17
|
+
margin-top: 0;
|
18
|
+
}
|
19
|
+
|
15
20
|
h3 {
|
16
21
|
font-size: 120%;
|
17
22
|
}
|
@@ -1,56 +1,61 @@
|
|
1
1
|
body {
|
2
|
-
background:
|
2
|
+
background: #fff;
|
3
3
|
color: #000;
|
4
4
|
margin: 0;
|
5
5
|
}
|
6
6
|
|
7
7
|
#content {
|
8
|
-
width:
|
8
|
+
width: 900px;
|
9
9
|
position: relative;
|
10
10
|
margin: auto;
|
11
|
-
background: #fee;
|
12
11
|
}
|
13
12
|
|
14
13
|
#top {
|
15
|
-
padding: 20px 10px 10px 10px;
|
16
|
-
text-align: right;
|
17
14
|
position: absolute;
|
18
|
-
|
19
|
-
|
20
|
-
width: 760px;
|
15
|
+
height: 80px;
|
16
|
+
width: 900px;
|
21
17
|
left: 0px;
|
22
|
-
|
18
|
+
border-bottom: 1px solid #aaa;
|
23
19
|
}
|
24
20
|
|
25
21
|
#top h1 {
|
26
|
-
|
22
|
+
padding: 0;
|
23
|
+
margin: 0;
|
24
|
+
font-size: 48px;
|
25
|
+
font-weight: 700;
|
26
|
+
position: absolute;
|
27
|
+
left: 0;
|
28
|
+
bottom: 0;
|
29
|
+
}
|
30
|
+
|
31
|
+
#top .actions {
|
32
|
+
position: absolute;
|
33
|
+
right: 0;
|
34
|
+
bottom: 0;
|
27
35
|
}
|
28
36
|
|
29
37
|
#top a {
|
30
|
-
color: #
|
38
|
+
color: #000;
|
39
|
+
}
|
40
|
+
#top a:hover {
|
41
|
+
text-decoration: none;
|
31
42
|
}
|
32
43
|
|
33
44
|
#boxes {
|
34
45
|
position: absolute;
|
35
46
|
width: 170px;
|
36
47
|
top: 100px;
|
37
|
-
right:
|
48
|
+
right: 0;
|
38
49
|
}
|
39
50
|
|
40
51
|
#main-container {
|
41
52
|
position: absolute;
|
42
53
|
left: 0px;
|
43
54
|
top: 100px;
|
44
|
-
|
45
|
-
}
|
46
|
-
|
47
|
-
body.blank #main-container {
|
48
|
-
width: 900px;
|
55
|
+
right: 196px;
|
49
56
|
}
|
50
57
|
|
51
58
|
#main {
|
59
|
+
background: #fff;
|
52
60
|
min-height: 260px;
|
53
|
-
padding: 10px;
|
54
|
-
-moz-border-radius: 10px;
|
55
|
-
-webkit-border-radius: 10px;
|
56
61
|
}
|
@@ -7,10 +7,10 @@
|
|
7
7
|
.pagination.actions li {
|
8
8
|
margin: 1px;
|
9
9
|
padding: 0;
|
10
|
-
width:
|
11
|
-
background: #
|
10
|
+
width: 35px;
|
11
|
+
background: #ddd;
|
12
12
|
display: inline-block;
|
13
|
-
color:
|
13
|
+
color: #000;
|
14
14
|
}
|
15
15
|
|
16
16
|
.pagination.actions li:first-child {
|
@@ -28,8 +28,6 @@
|
|
28
28
|
}
|
29
29
|
|
30
30
|
.pagination.actions li.elided {
|
31
|
-
background: transparent url('/images/elided.png') center;
|
32
|
-
background-repeat: repeat-y;
|
33
31
|
}
|
34
32
|
|
35
33
|
.pagination.actions li > * {
|
@@ -40,14 +38,23 @@
|
|
40
38
|
width: 28px;
|
41
39
|
line-height: 18px;
|
42
40
|
text-decoration: none !important;
|
43
|
-
color:
|
41
|
+
color: #000 !important;
|
44
42
|
overflow: hidden;
|
45
43
|
}
|
46
44
|
|
45
|
+
.pagination.actions li:hover, .pagination.actions li.current > *:hover {
|
46
|
+
background: #444;
|
47
|
+
}
|
48
|
+
|
49
|
+
.pagination.actions li > *:hover {
|
50
|
+
color: #fff !important;
|
51
|
+
}
|
52
|
+
|
47
53
|
.pagination.actions li.current {
|
48
|
-
background-color: #
|
54
|
+
background-color: #888;
|
49
55
|
}
|
50
56
|
|
57
|
+
|
51
58
|
.pagination.actions li > a.previous, .pagination.actions li > a.next {
|
52
59
|
text-indent: -100px;
|
53
60
|
}
|
@@ -1,14 +1,23 @@
|
|
1
1
|
#top.photograph {
|
2
2
|
width: 600px;
|
3
|
-
height:
|
4
|
-
position:
|
3
|
+
height: 80px;
|
4
|
+
position: relative;
|
5
5
|
margin-left: auto;
|
6
6
|
margin-right: auto;
|
7
|
+
border: none;
|
8
|
+
}
|
9
|
+
|
10
|
+
#top.photograph a {
|
11
|
+
color: #999;
|
12
|
+
}
|
13
|
+
|
14
|
+
#top.photograph .actions {
|
15
|
+
bottom: 10px;
|
7
16
|
}
|
8
17
|
|
9
18
|
.photograph.full {
|
10
19
|
text-align: center;
|
11
|
-
margin:
|
20
|
+
margin: 20px auto;
|
12
21
|
color: #fff;
|
13
22
|
}
|
14
23
|
|
@@ -23,6 +32,7 @@
|
|
23
32
|
display: block;
|
24
33
|
-moz-border-radius: 6px;
|
25
34
|
-webkit-border-radius: 6px;
|
35
|
+
border-radius: 6px;
|
26
36
|
}
|
27
37
|
|
28
38
|
.frame a {
|
@@ -87,3 +97,7 @@
|
|
87
97
|
background: #333;
|
88
98
|
color: #fff;
|
89
99
|
}
|
100
|
+
|
101
|
+
body.blank #colophon a {
|
102
|
+
color: #fff;
|
103
|
+
}
|
@@ -1,43 +1,35 @@
|
|
1
|
-
/*
|
2
|
-
body.
|
3
|
-
background:
|
4
|
-
}
|
5
|
-
body.photographs .box .actions li.current {
|
6
|
-
background: #666;
|
7
|
-
}
|
8
|
-
body.photographs .box .actions li.current a {
|
9
|
-
color: #fff;
|
10
|
-
}
|
11
|
-
|
12
|
-
/* Dark main section */
|
13
|
-
body.photographs #main-container {
|
14
|
-
background: transparent;
|
15
|
-
}
|
16
|
-
body.photographs #main {
|
17
|
-
background: #000;
|
1
|
+
/* Backgrounds */
|
2
|
+
body.blank {
|
3
|
+
background: url('/images/background_tile.png');
|
18
4
|
}
|
19
5
|
|
20
6
|
/* Grid */
|
21
7
|
.photographs.grid {
|
22
|
-
|
8
|
+
margin: 10px -5px;
|
23
9
|
padding: 0;
|
24
|
-
margin: 2px -2px 8px -2px;
|
25
10
|
}
|
26
11
|
|
27
12
|
.photographs.grid .thumb {
|
28
13
|
display: block;
|
29
14
|
float: left;
|
30
|
-
margin:
|
15
|
+
margin: 5px;
|
31
16
|
}
|
32
17
|
|
33
18
|
.photographs.grid .thumb > a {
|
34
|
-
width:
|
35
|
-
height:
|
36
|
-
background-color: #111;
|
19
|
+
width: 166px;
|
20
|
+
height: 166px;
|
37
21
|
display: table-cell;
|
38
22
|
vertical-align: middle;
|
23
|
+
background-color: #f0f0f0;
|
24
|
+
border-width: 1px;
|
25
|
+
border-style: solid;
|
26
|
+
border-color: #fff #ccc #aaa #ccc;
|
39
27
|
-moz-border-radius: 4px;
|
40
28
|
-webkit-border-radius: 4px;
|
29
|
+
border-radius: 4px;
|
30
|
+
-webkit-box-shadow: 0px 1px 8px rgba(0,0,0,0.3);
|
31
|
+
-moz-box-shadow: 0px 1px 8px rgba(0,0,0,0.3);
|
32
|
+
box-shadow: 0px 1px 8px rgba(0,0,0,0.3);
|
41
33
|
}
|
42
34
|
|
43
35
|
.photographs.grid .thumb > a > img {
|
@@ -1,83 +1,46 @@
|
|
1
|
-
#boxes {
|
2
|
-
text-align: right;
|
3
|
-
}
|
4
|
-
|
5
|
-
.box a {
|
6
|
-
color: #fff;
|
7
|
-
}
|
8
|
-
|
9
1
|
.box {
|
10
|
-
margin-bottom:
|
11
|
-
}
|
12
|
-
|
13
|
-
.box > ul {
|
14
|
-
list-style: none;
|
15
|
-
margin: 0px;
|
16
|
-
padding: 0px;
|
17
|
-
}
|
18
|
-
|
19
|
-
.box > ul > li {
|
20
|
-
margin: 0;
|
21
|
-
padding: 0;
|
2
|
+
margin-bottom: 20px;
|
22
3
|
}
|
23
4
|
|
24
5
|
.box .top {
|
25
|
-
color: #
|
26
|
-
|
27
|
-
|
28
|
-
}
|
29
|
-
|
30
|
-
.box .top a {
|
6
|
+
color: #000;
|
7
|
+
font-size: 110%;
|
8
|
+
margin-bottom: 4px;
|
31
9
|
font-weight: bolder;
|
32
10
|
}
|
33
11
|
|
34
|
-
.box .
|
35
|
-
|
36
|
-
border-right: 6px solid #3D3D3D;
|
37
|
-
padding: 6px;
|
38
|
-
margin-bottom: 3px;
|
39
|
-
font-weight: bolder;
|
40
|
-
font-size: 115%;
|
41
|
-
margin-left: -20px;
|
12
|
+
.box .top a {
|
13
|
+
color: #000;
|
42
14
|
}
|
43
15
|
|
44
|
-
.box .
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
text-decoration: none;
|
16
|
+
.box ul, .box ol {
|
17
|
+
list-style-type: none;
|
18
|
+
margin: 0;
|
19
|
+
padding: 0;
|
49
20
|
}
|
50
21
|
|
51
|
-
.box
|
52
|
-
|
53
|
-
|
54
|
-
}
|
55
|
-
.box .actions li.current {
|
56
|
-
background: #fff;
|
57
|
-
border-right-color: #168715;
|
58
|
-
}
|
59
|
-
.box .actions li.current a {
|
60
|
-
color: #000;
|
22
|
+
.box li {
|
23
|
+
margin: 0;
|
24
|
+
padding: 0;
|
61
25
|
}
|
62
26
|
|
63
27
|
.box .text {
|
64
|
-
text-align: left;
|
65
28
|
background: #fff;
|
66
|
-
font-size:
|
67
|
-
padding: 6px;
|
68
|
-
}
|
69
|
-
.box .text a {
|
70
|
-
color: blue;
|
29
|
+
font-size: 85%;
|
71
30
|
}
|
31
|
+
|
72
32
|
.box .text .date {
|
33
|
+
display: block;
|
73
34
|
font-size: 80%;
|
74
35
|
text-align: right;
|
36
|
+
color: #999;
|
75
37
|
}
|
76
38
|
|
77
39
|
.box .photo {
|
78
|
-
background: #
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
40
|
+
background: #fff;
|
41
|
+
padding: 3px;
|
42
|
+
margin: 0px 2px 10px 2px;
|
43
|
+
-webkit-box-shadow: 0px 0px 3px #000;
|
44
|
+
-moz-box-shadow: 0px 0px 3px #000;
|
45
|
+
box-shadow: 0px 0px 3px #000;
|
83
46
|
}
|
Binary file
|
Binary file
|
Binary file
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
<%= errors_on @journal %>
|
4
4
|
|
5
|
-
<form class="edit-form" action="<%= rs(@form_action) %>" method="post" enctype="multipart/form-data">
|
5
|
+
<form class="edit-form" id="journal-edit-form" action="<%= rs(@form_action) %>" method="post" enctype="multipart/form-data">
|
6
6
|
<%= form_p :title, :model => @journal %>
|
7
7
|
<%= live_name_field @journal %>
|
8
8
|
<%= live_tags_field @journal %>
|
@@ -12,4 +12,28 @@
|
|
12
12
|
<%= attachment_form @journal %>
|
13
13
|
<%= form_p :draft, :model => @journal, :type => 'checkbox', :description => 'This is a draft' %>
|
14
14
|
<input type="submit" name="submit" />
|
15
|
+
|
16
|
+
<script type="text/javascript">
|
17
|
+
/* <![CDATA[ */
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
function saveJournal() {
|
22
|
+
localStorage.setItem('journal_id', <%= @journal.id %>);
|
23
|
+
localStorage.setItem('journal_title', $('#journal-edit-form #title').value);
|
24
|
+
localStorage.setItem('journal_name', $('#journal-edit-form #name').value);
|
25
|
+
localStorage.setItem('journal_tags', $('#journal-edit-form #tags').value);
|
26
|
+
localStorage.setItem('journal_body', $('#journal-edit-form #body').value);
|
27
|
+
}
|
28
|
+
|
29
|
+
function loadJournal() {
|
30
|
+
if (localStorage.getItem('journal_id') == <%= @journal.id %>) {
|
31
|
+
$('#journal-edit-form #title').value(localStorage.getItem('journal_title'));
|
32
|
+
$('#journal-edit-form #name').value(localStorage.getItem('journal_name'));
|
33
|
+
$('#journal-edit-form #tags').value(localStorage.getItem('journal_tags'));
|
34
|
+
$('#journal-edit-form #body').value(localStorage.getItem('journal_body'));
|
35
|
+
}
|
36
|
+
|
37
|
+
window.setInterval(saveJournal, 10000);
|
38
|
+
}
|
15
39
|
</form>
|
@@ -9,21 +9,3 @@
|
|
9
9
|
</ol>
|
10
10
|
|
11
11
|
<div class="clear" style="height: 4px;"></div>
|
12
|
-
|
13
|
-
<script type="text/javascript">
|
14
|
-
/* <![CDATA[ */
|
15
|
-
$(document).ready(function() {
|
16
|
-
$('.grid .photograph > *').each(function(i) {
|
17
|
-
var elem = $(this);
|
18
|
-
elem.hover(
|
19
|
-
function() {
|
20
|
-
elem.animate( {backgroundColor: "#222"}, 1)
|
21
|
-
},
|
22
|
-
function() {
|
23
|
-
elem.animate( {backgroundColor: "#111"}, 200);
|
24
|
-
}
|
25
|
-
);
|
26
|
-
});
|
27
|
-
});
|
28
|
-
/* ]]> */
|
29
|
-
</script>
|
@@ -1,8 +1,9 @@
|
|
1
1
|
<div id="top" class="photograph">
|
2
|
+
<h1><a href="/"><%=h CortexReaver.config.site.name %></a></h1>
|
3
|
+
|
2
4
|
<% if @model %>
|
3
5
|
<%= model_nav @model %>
|
4
6
|
<% end %>
|
5
|
-
<h1><a href="/"><%=h CortexReaver.config.site.name %></a></h1>
|
6
7
|
</div>
|
7
8
|
|
8
9
|
<div id="photograph_<%= @photograph.name %>" class="photograph full">
|
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cortex-reaver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 3
|
8
|
+
- 0
|
9
|
+
version: 0.3.0
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- Kyle Kingsbury
|
@@ -9,149 +14,203 @@ autorequire:
|
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
16
|
|
12
|
-
date: 2010-
|
17
|
+
date: 2010-06-29 00:00:00 -07:00
|
13
18
|
default_executable:
|
14
19
|
dependencies:
|
15
20
|
- !ruby/object:Gem::Dependency
|
16
21
|
name: ramaze
|
17
|
-
|
18
|
-
|
19
|
-
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
20
24
|
requirements:
|
21
25
|
- - "="
|
22
26
|
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 2009
|
29
|
+
- 7
|
23
30
|
version: "2009.07"
|
24
|
-
|
31
|
+
type: :runtime
|
32
|
+
version_requirements: *id001
|
25
33
|
- !ruby/object:Gem::Dependency
|
26
34
|
name: libxml-ruby
|
27
|
-
|
28
|
-
|
29
|
-
version_requirements: !ruby/object:Gem::Requirement
|
35
|
+
prerelease: false
|
36
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
30
37
|
requirements:
|
31
38
|
- - ~>
|
32
39
|
- !ruby/object:Gem::Version
|
40
|
+
segments:
|
41
|
+
- 1
|
42
|
+
- 1
|
43
|
+
- 3
|
33
44
|
version: 1.1.3
|
34
|
-
|
45
|
+
type: :runtime
|
46
|
+
version_requirements: *id002
|
35
47
|
- !ruby/object:Gem::Dependency
|
36
48
|
name: erubis
|
37
|
-
|
38
|
-
|
39
|
-
version_requirements: !ruby/object:Gem::Requirement
|
49
|
+
prerelease: false
|
50
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
40
51
|
requirements:
|
41
52
|
- - ~>
|
42
53
|
- !ruby/object:Gem::Version
|
54
|
+
segments:
|
55
|
+
- 2
|
56
|
+
- 6
|
57
|
+
- 2
|
43
58
|
version: 2.6.2
|
44
|
-
|
59
|
+
type: :runtime
|
60
|
+
version_requirements: *id003
|
45
61
|
- !ruby/object:Gem::Dependency
|
46
62
|
name: sanitize
|
47
|
-
|
48
|
-
|
49
|
-
version_requirements: !ruby/object:Gem::Requirement
|
63
|
+
prerelease: false
|
64
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
50
65
|
requirements:
|
51
66
|
- - ~>
|
52
67
|
- !ruby/object:Gem::Version
|
68
|
+
segments:
|
69
|
+
- 1
|
70
|
+
- 1
|
71
|
+
- 0
|
53
72
|
version: 1.1.0
|
54
|
-
|
73
|
+
type: :runtime
|
74
|
+
version_requirements: *id004
|
55
75
|
- !ruby/object:Gem::Dependency
|
56
76
|
name: BlueCloth
|
57
|
-
|
58
|
-
|
59
|
-
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
prerelease: false
|
78
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
60
79
|
requirements:
|
61
80
|
- - ~>
|
62
81
|
- !ruby/object:Gem::Version
|
82
|
+
segments:
|
83
|
+
- 1
|
84
|
+
- 0
|
85
|
+
- 0
|
63
86
|
version: 1.0.0
|
64
|
-
|
87
|
+
type: :runtime
|
88
|
+
version_requirements: *id005
|
65
89
|
- !ruby/object:Gem::Dependency
|
66
90
|
name: sequel
|
67
|
-
|
68
|
-
|
69
|
-
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
prerelease: false
|
92
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
70
93
|
requirements:
|
71
94
|
- - ~>
|
72
95
|
- !ruby/object:Gem::Version
|
96
|
+
segments:
|
97
|
+
- 3
|
98
|
+
- 5
|
99
|
+
- 0
|
73
100
|
version: 3.5.0
|
74
|
-
|
101
|
+
type: :runtime
|
102
|
+
version_requirements: *id006
|
75
103
|
- !ruby/object:Gem::Dependency
|
76
104
|
name: thin
|
77
|
-
|
78
|
-
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
prerelease: false
|
106
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
80
107
|
requirements:
|
81
108
|
- - ~>
|
82
109
|
- !ruby/object:Gem::Version
|
110
|
+
segments:
|
111
|
+
- 1
|
112
|
+
- 2
|
113
|
+
- 4
|
83
114
|
version: 1.2.4
|
84
|
-
|
115
|
+
type: :runtime
|
116
|
+
version_requirements: *id007
|
85
117
|
- !ruby/object:Gem::Dependency
|
86
118
|
name: exifr
|
87
|
-
|
88
|
-
|
89
|
-
version_requirements: !ruby/object:Gem::Requirement
|
119
|
+
prerelease: false
|
120
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
90
121
|
requirements:
|
91
122
|
- - ~>
|
92
123
|
- !ruby/object:Gem::Version
|
124
|
+
segments:
|
125
|
+
- 0
|
126
|
+
- 10
|
127
|
+
- 7
|
93
128
|
version: 0.10.7
|
94
|
-
|
129
|
+
type: :runtime
|
130
|
+
version_requirements: *id008
|
95
131
|
- !ruby/object:Gem::Dependency
|
96
132
|
name: construct
|
97
|
-
|
98
|
-
|
99
|
-
version_requirements: !ruby/object:Gem::Requirement
|
133
|
+
prerelease: false
|
134
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
100
135
|
requirements:
|
101
136
|
- - ~>
|
102
137
|
- !ruby/object:Gem::Version
|
138
|
+
segments:
|
139
|
+
- 0
|
140
|
+
- 1
|
141
|
+
- 5
|
103
142
|
version: 0.1.5
|
104
|
-
|
143
|
+
type: :runtime
|
144
|
+
version_requirements: *id009
|
105
145
|
- !ruby/object:Gem::Dependency
|
106
146
|
name: rmagick
|
107
|
-
|
108
|
-
|
109
|
-
version_requirements: !ruby/object:Gem::Requirement
|
147
|
+
prerelease: false
|
148
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
110
149
|
requirements:
|
111
150
|
- - ~>
|
112
151
|
- !ruby/object:Gem::Version
|
152
|
+
segments:
|
153
|
+
- 2
|
154
|
+
- 5
|
155
|
+
- 1
|
113
156
|
version: 2.5.1
|
114
|
-
|
157
|
+
type: :runtime
|
158
|
+
version_requirements: *id010
|
115
159
|
- !ruby/object:Gem::Dependency
|
116
160
|
name: cssmin
|
117
|
-
|
118
|
-
|
119
|
-
version_requirements: !ruby/object:Gem::Requirement
|
161
|
+
prerelease: false
|
162
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
120
163
|
requirements:
|
121
164
|
- - ~>
|
122
165
|
- !ruby/object:Gem::Version
|
166
|
+
segments:
|
167
|
+
- 1
|
168
|
+
- 0
|
169
|
+
- 2
|
123
170
|
version: 1.0.2
|
124
|
-
|
171
|
+
type: :runtime
|
172
|
+
version_requirements: *id011
|
125
173
|
- !ruby/object:Gem::Dependency
|
126
174
|
name: jsmin
|
127
|
-
|
128
|
-
|
129
|
-
version_requirements: !ruby/object:Gem::Requirement
|
175
|
+
prerelease: false
|
176
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
130
177
|
requirements:
|
131
178
|
- - ~>
|
132
179
|
- !ruby/object:Gem::Version
|
180
|
+
segments:
|
181
|
+
- 1
|
182
|
+
- 0
|
183
|
+
- 1
|
133
184
|
version: 1.0.1
|
134
|
-
|
185
|
+
type: :runtime
|
186
|
+
version_requirements: *id012
|
135
187
|
- !ruby/object:Gem::Dependency
|
136
188
|
name: json
|
137
|
-
|
138
|
-
|
139
|
-
version_requirements: !ruby/object:Gem::Requirement
|
189
|
+
prerelease: false
|
190
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
140
191
|
requirements:
|
141
192
|
- - ~>
|
142
193
|
- !ruby/object:Gem::Version
|
194
|
+
segments:
|
195
|
+
- 1
|
196
|
+
- 1
|
197
|
+
- 9
|
143
198
|
version: 1.1.9
|
144
|
-
|
199
|
+
type: :runtime
|
200
|
+
version_requirements: *id013
|
145
201
|
- !ruby/object:Gem::Dependency
|
146
202
|
name: trollop
|
147
|
-
|
148
|
-
|
149
|
-
version_requirements: !ruby/object:Gem::Requirement
|
203
|
+
prerelease: false
|
204
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
150
205
|
requirements:
|
151
206
|
- - ~>
|
152
207
|
- !ruby/object:Gem::Version
|
208
|
+
segments:
|
209
|
+
- 1
|
210
|
+
- 15
|
153
211
|
version: "1.15"
|
154
|
-
|
212
|
+
type: :runtime
|
213
|
+
version_requirements: *id014
|
155
214
|
description:
|
156
215
|
email: aphyr@aphyr.com
|
157
216
|
executables:
|
@@ -175,9 +234,9 @@ files:
|
|
175
234
|
- lib/cortex_reaver/public/css/text.css
|
176
235
|
- lib/cortex_reaver/public/css/colophon.css
|
177
236
|
- lib/cortex_reaver/public/css/table-of-contents.css
|
237
|
+
- lib/cortex_reaver/public/css/context_navigation.css
|
178
238
|
- lib/cortex_reaver/public/css/photo-show.css
|
179
239
|
- lib/cortex_reaver/public/css/flash.css
|
180
|
-
- lib/cortex_reaver/public/css/top_actions.css
|
181
240
|
- lib/cortex_reaver/public/css/form.css
|
182
241
|
- lib/cortex_reaver/public/css/tags.css
|
183
242
|
- lib/cortex_reaver/public/css/autotags.css
|
@@ -199,10 +258,13 @@ files:
|
|
199
258
|
- lib/cortex_reaver/public/images/prev_34_prelight.png
|
200
259
|
- lib/cortex_reaver/public/images/header_background.png
|
201
260
|
- lib/cortex_reaver/public/images/delete.gif
|
261
|
+
- lib/cortex_reaver/public/images/prev_34_light.png
|
202
262
|
- lib/cortex_reaver/public/images/parent.gif
|
203
263
|
- lib/cortex_reaver/public/images/edit_34.png
|
204
264
|
- lib/cortex_reaver/public/images/grid_34.png
|
265
|
+
- lib/cortex_reaver/public/images/next_34_light.png
|
205
266
|
- lib/cortex_reaver/public/images/edit_34_prelight.png
|
267
|
+
- lib/cortex_reaver/public/images/grid_34_light.png
|
206
268
|
- lib/cortex_reaver/public/images/admin/icons.xcf
|
207
269
|
- lib/cortex_reaver/public/images/admin/icons.png
|
208
270
|
- lib/cortex_reaver/public/images/elided.png
|
@@ -242,6 +304,7 @@ files:
|
|
242
304
|
- lib/cortex_reaver/snippets/range.rb
|
243
305
|
- lib/cortex_reaver/view/sidebar/twitter.rhtml
|
244
306
|
- lib/cortex_reaver/view/sidebar/photographs.rhtml
|
307
|
+
- lib/cortex_reaver/view/sidebar/context_navigation.rhtml
|
245
308
|
- lib/cortex_reaver/view/sidebar/explore_photos.rhtml
|
246
309
|
- lib/cortex_reaver/view/sidebar/sections.rhtml
|
247
310
|
- lib/cortex_reaver/view/journals/short.rhtml
|
@@ -354,18 +417,22 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
354
417
|
requirements:
|
355
418
|
- - ">="
|
356
419
|
- !ruby/object:Gem::Version
|
420
|
+
segments:
|
421
|
+
- 1
|
422
|
+
- 8
|
423
|
+
- 6
|
357
424
|
version: 1.8.6
|
358
|
-
version:
|
359
425
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
360
426
|
requirements:
|
361
427
|
- - ">="
|
362
428
|
- !ruby/object:Gem::Version
|
429
|
+
segments:
|
430
|
+
- 0
|
363
431
|
version: "0"
|
364
|
-
version:
|
365
432
|
requirements: []
|
366
433
|
|
367
434
|
rubyforge_project: cortex-reaver
|
368
|
-
rubygems_version: 1.3.
|
435
|
+
rubygems_version: 1.3.6
|
369
436
|
signing_key:
|
370
437
|
specification_version: 3
|
371
438
|
summary: A dangerous Ruby blog engine, with a photographic memory.
|
@@ -1,50 +0,0 @@
|
|
1
|
-
#top .actions {
|
2
|
-
top: 30px;
|
3
|
-
position: absolute;
|
4
|
-
padding: 0;
|
5
|
-
margin: 0;
|
6
|
-
}
|
7
|
-
|
8
|
-
#top .actions > li {
|
9
|
-
float: left;
|
10
|
-
display: block;
|
11
|
-
padding: 0;
|
12
|
-
margin-right: 8px;
|
13
|
-
width: 40px;
|
14
|
-
height: 40px;
|
15
|
-
}
|
16
|
-
|
17
|
-
#top .actions > li > a {
|
18
|
-
display: block;
|
19
|
-
height: 40px;
|
20
|
-
overflow: hidden;
|
21
|
-
line-height: 200px;
|
22
|
-
margin: 0;
|
23
|
-
padding: 0;
|
24
|
-
color: transparent;
|
25
|
-
}
|
26
|
-
|
27
|
-
#top .actions a.previous {
|
28
|
-
background:transparent url(/images/prev_34.png) no-repeat scroll center center;
|
29
|
-
}
|
30
|
-
#top .actions a.previous:hover {
|
31
|
-
background-image: url(/images/prev_34_prelight.png);
|
32
|
-
}
|
33
|
-
#top .actions a.up {
|
34
|
-
background:transparent url(/images/grid_34.png) no-repeat scroll center center;
|
35
|
-
}
|
36
|
-
#top .actions a.up:hover {
|
37
|
-
background-image: url(/images/grid_34_prelight.png);
|
38
|
-
}
|
39
|
-
#top .actions a.edit {
|
40
|
-
background:transparent url(/images/edit_34.png) no-repeat scroll center center;
|
41
|
-
}
|
42
|
-
#top .actions a.edit:hover {
|
43
|
-
background-image: url(/images/edit_34_prelight.png);
|
44
|
-
}
|
45
|
-
#top .actions a.next {
|
46
|
-
background:transparent url(/images/next_34.png) no-repeat scroll center center;
|
47
|
-
}
|
48
|
-
#top .actions a.next:hover {
|
49
|
-
background-image: url(/images/next_34_prelight.png);
|
50
|
-
}
|