gitdocs 0.4.12 → 0.4.13

Sign up to get free protection for your applications and to get access to all the features.
@@ -165,7 +165,14 @@ module Gitdocs
165
165
  result = {} unless File.exist?(full_path) && log_result
166
166
  author, modified = log_result.split("|")
167
167
  modified = Time.parse(modified.sub(' ', 'T')).utc.iso8601
168
- size = (File.symlink?(full_path) || File.directory?(full_path)) ? -1 : File.size(full_path)
168
+ size = if File.directory?(full_path)
169
+ Dir[File.join(full_path, '**', '*')].inject(0) do |size, file|
170
+ File.symlink?(file) ? size : size += File.size(file)
171
+ end
172
+ else
173
+ File.symlink?(full_path) ? 0 : File.size(full_path)
174
+ end
175
+ size = -1 if size == 0 # A value of 0 breaks the table sort for some reason
169
176
  result = { :author => author, :size => size, :modified => modified }
170
177
  result
171
178
  end
@@ -21,7 +21,11 @@ module Gitdocs
21
21
  use Rack::MethodOverride
22
22
  run Renee {
23
23
  if request.path_info == '/'
24
- render! "home", :layout => 'app', :locals => {:conf => manager.config, :nav_state => "home" }
24
+ if manager.config.shares.size == 1
25
+ redirect! "/0"
26
+ else
27
+ render! "home", :layout => 'app', :locals => {:conf => manager.config, :nav_state => "home" }
28
+ end
25
29
  else
26
30
  path 'settings' do
27
31
  get.render! 'settings', :layout => 'app', :locals => {:conf => manager.config, :nav_state => "settings" }
@@ -89,7 +93,11 @@ module Gitdocs
89
93
  render! "edit", :layout => 'app', :locals => locals.merge(:contents => "")
90
94
  elsif File.directory?(expanded_path) # list directory
91
95
  contents = gd.dir_files(expanded_path)
92
- render! "dir", :layout => 'app', :locals => locals.merge(:contents => contents)
96
+ rendered_readme = nil
97
+ if readme = Dir[File.expand_path("README.{md,txt}", expanded_path)].first
98
+ rendered_readme = '<h3>' + File.basename(readme) + '</h3><div class="tilt">' + render(readme) + '</div>'
99
+ end
100
+ render! "dir", :layout => 'app', :locals => locals.merge(:contents => contents, :rendered_readme => rendered_readme)
93
101
  elsif mode == "revisions" # list revisions
94
102
  revisions = gd.file_revisions(file_path)
95
103
  render! "revisions", :layout => 'app', :locals => locals.merge(:revisions => revisions)
@@ -1,3 +1,3 @@
1
1
  module Gitdocs
2
- VERSION = "0.4.12"
2
+ VERSION = "0.4.13"
3
3
  end
@@ -2,6 +2,10 @@
2
2
 
3
3
  = partial("header", :locals => { :parent => parent, :file => false, :idx => idx })
4
4
 
5
+ - if rendered_readme
6
+ .contents
7
+ = preserve rendered_readme
8
+
5
9
  - if contents && contents.any?
6
10
  %table#fileListing.condensed-table.zebra-striped
7
11
  %thead
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitdocs
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 21
4
5
  prerelease:
5
- version: 0.4.12
6
+ segments:
7
+ - 0
8
+ - 4
9
+ - 13
10
+ version: 0.4.13
6
11
  platform: ruby
7
12
  authors:
8
13
  - Josh Hull
@@ -11,228 +16,324 @@ autorequire:
11
16
  bindir: bin
12
17
  cert_chain: []
13
18
 
14
- date: 2012-01-05 00:00:00 Z
19
+ date: 2012-01-11 00:00:00 Z
15
20
  dependencies:
16
21
  - !ruby/object:Gem::Dependency
17
- name: joshbuddy-guard
18
- prerelease: false
19
- requirement: &id001 !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
20
23
  none: false
21
24
  requirements:
22
25
  - - ~>
23
26
  - !ruby/object:Gem::Version
27
+ hash: 55
28
+ segments:
29
+ - 0
30
+ - 10
31
+ - 0
24
32
  version: 0.10.0
33
+ requirement: *id001
25
34
  type: :runtime
26
- version_requirements: *id001
27
- - !ruby/object:Gem::Dependency
28
- name: thin
29
35
  prerelease: false
30
- requirement: &id002 !ruby/object:Gem::Requirement
36
+ name: joshbuddy-guard
37
+ - !ruby/object:Gem::Dependency
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
31
39
  none: false
32
40
  requirements:
33
41
  - - ~>
34
42
  - !ruby/object:Gem::Version
43
+ hash: 25
44
+ segments:
45
+ - 1
46
+ - 3
47
+ - 1
35
48
  version: 1.3.1
49
+ requirement: *id002
36
50
  type: :runtime
37
- version_requirements: *id002
38
- - !ruby/object:Gem::Dependency
39
- name: renee
40
51
  prerelease: false
41
- requirement: &id003 !ruby/object:Gem::Requirement
52
+ name: thin
53
+ - !ruby/object:Gem::Dependency
54
+ version_requirements: &id003 !ruby/object:Gem::Requirement
42
55
  none: false
43
56
  requirements:
44
57
  - - ~>
45
58
  - !ruby/object:Gem::Version
59
+ hash: 29
60
+ segments:
61
+ - 0
62
+ - 3
63
+ - 7
46
64
  version: 0.3.7
65
+ requirement: *id003
47
66
  type: :runtime
48
- version_requirements: *id003
49
- - !ruby/object:Gem::Dependency
50
- name: redcarpet
51
67
  prerelease: false
52
- requirement: &id004 !ruby/object:Gem::Requirement
68
+ name: renee
69
+ - !ruby/object:Gem::Dependency
70
+ version_requirements: &id004 !ruby/object:Gem::Requirement
53
71
  none: false
54
72
  requirements:
55
73
  - - ~>
56
74
  - !ruby/object:Gem::Version
75
+ hash: 15
76
+ segments:
77
+ - 2
78
+ - 0
79
+ - 0
57
80
  version: 2.0.0
81
+ requirement: *id004
58
82
  type: :runtime
59
- version_requirements: *id004
60
- - !ruby/object:Gem::Dependency
61
- name: thor
62
83
  prerelease: false
63
- requirement: &id005 !ruby/object:Gem::Requirement
84
+ name: redcarpet
85
+ - !ruby/object:Gem::Dependency
86
+ version_requirements: &id005 !ruby/object:Gem::Requirement
64
87
  none: false
65
88
  requirements:
66
89
  - - ~>
67
90
  - !ruby/object:Gem::Version
91
+ hash: 43
92
+ segments:
93
+ - 0
94
+ - 14
95
+ - 6
68
96
  version: 0.14.6
97
+ requirement: *id005
69
98
  type: :runtime
70
- version_requirements: *id005
71
- - !ruby/object:Gem::Dependency
72
- name: coderay
73
99
  prerelease: false
74
- requirement: &id006 !ruby/object:Gem::Requirement
100
+ name: thor
101
+ - !ruby/object:Gem::Dependency
102
+ version_requirements: &id006 !ruby/object:Gem::Requirement
75
103
  none: false
76
104
  requirements:
77
105
  - - ~>
78
106
  - !ruby/object:Gem::Version
107
+ hash: 31
108
+ segments:
109
+ - 1
110
+ - 0
111
+ - 4
79
112
  version: 1.0.4
113
+ requirement: *id006
80
114
  type: :runtime
81
- version_requirements: *id006
82
- - !ruby/object:Gem::Dependency
83
- name: dante
84
115
  prerelease: false
85
- requirement: &id007 !ruby/object:Gem::Requirement
116
+ name: coderay
117
+ - !ruby/object:Gem::Dependency
118
+ version_requirements: &id007 !ruby/object:Gem::Requirement
86
119
  none: false
87
120
  requirements:
88
121
  - - ~>
89
122
  - !ruby/object:Gem::Version
123
+ hash: 31
124
+ segments:
125
+ - 0
126
+ - 1
127
+ - 2
90
128
  version: 0.1.2
129
+ requirement: *id007
91
130
  type: :runtime
92
- version_requirements: *id007
93
- - !ruby/object:Gem::Dependency
94
- name: growl
95
131
  prerelease: false
96
- requirement: &id008 !ruby/object:Gem::Requirement
132
+ name: dante
133
+ - !ruby/object:Gem::Dependency
134
+ version_requirements: &id008 !ruby/object:Gem::Requirement
97
135
  none: false
98
136
  requirements:
99
137
  - - ~>
100
138
  - !ruby/object:Gem::Version
139
+ hash: 17
140
+ segments:
141
+ - 1
142
+ - 0
143
+ - 3
101
144
  version: 1.0.3
145
+ requirement: *id008
102
146
  type: :runtime
103
- version_requirements: *id008
104
- - !ruby/object:Gem::Dependency
105
- name: yajl-ruby
106
147
  prerelease: false
107
- requirement: &id009 !ruby/object:Gem::Requirement
148
+ name: growl
149
+ - !ruby/object:Gem::Dependency
150
+ version_requirements: &id009 !ruby/object:Gem::Requirement
108
151
  none: false
109
152
  requirements:
110
153
  - - ~>
111
154
  - !ruby/object:Gem::Version
155
+ hash: 19
156
+ segments:
157
+ - 1
158
+ - 1
159
+ - 0
112
160
  version: 1.1.0
161
+ requirement: *id009
113
162
  type: :runtime
114
- version_requirements: *id009
115
- - !ruby/object:Gem::Dependency
116
- name: haml
117
163
  prerelease: false
118
- requirement: &id010 !ruby/object:Gem::Requirement
164
+ name: yajl-ruby
165
+ - !ruby/object:Gem::Dependency
166
+ version_requirements: &id010 !ruby/object:Gem::Requirement
119
167
  none: false
120
168
  requirements:
121
169
  - - ~>
122
170
  - !ruby/object:Gem::Version
171
+ hash: 11
172
+ segments:
173
+ - 3
174
+ - 1
175
+ - 4
123
176
  version: 3.1.4
177
+ requirement: *id010
124
178
  type: :runtime
125
- version_requirements: *id010
126
- - !ruby/object:Gem::Dependency
127
- name: sqlite3
128
179
  prerelease: false
129
- requirement: &id011 !ruby/object:Gem::Requirement
180
+ name: haml
181
+ - !ruby/object:Gem::Dependency
182
+ version_requirements: &id011 !ruby/object:Gem::Requirement
130
183
  none: false
131
184
  requirements:
132
185
  - - ~>
133
186
  - !ruby/object:Gem::Version
187
+ hash: 19
188
+ segments:
189
+ - 1
190
+ - 3
191
+ - 4
134
192
  version: 1.3.4
193
+ requirement: *id011
135
194
  type: :runtime
136
- version_requirements: *id011
137
- - !ruby/object:Gem::Dependency
138
- name: activerecord
139
195
  prerelease: false
140
- requirement: &id012 !ruby/object:Gem::Requirement
196
+ name: sqlite3
197
+ - !ruby/object:Gem::Dependency
198
+ version_requirements: &id012 !ruby/object:Gem::Requirement
141
199
  none: false
142
200
  requirements:
143
201
  - - ~>
144
202
  - !ruby/object:Gem::Version
203
+ hash: 3
204
+ segments:
205
+ - 3
206
+ - 1
207
+ - 0
145
208
  version: 3.1.0
209
+ requirement: *id012
146
210
  type: :runtime
147
- version_requirements: *id012
148
- - !ruby/object:Gem::Dependency
149
- name: grit
150
211
  prerelease: false
151
- requirement: &id013 !ruby/object:Gem::Requirement
212
+ name: activerecord
213
+ - !ruby/object:Gem::Dependency
214
+ version_requirements: &id013 !ruby/object:Gem::Requirement
152
215
  none: false
153
216
  requirements:
154
217
  - - ~>
155
218
  - !ruby/object:Gem::Version
219
+ hash: 29
220
+ segments:
221
+ - 2
222
+ - 4
223
+ - 1
156
224
  version: 2.4.1
225
+ requirement: *id013
157
226
  type: :runtime
158
- version_requirements: *id013
159
- - !ruby/object:Gem::Dependency
160
- name: shell_tools
161
227
  prerelease: false
162
- requirement: &id014 !ruby/object:Gem::Requirement
228
+ name: grit
229
+ - !ruby/object:Gem::Dependency
230
+ version_requirements: &id014 !ruby/object:Gem::Requirement
163
231
  none: false
164
232
  requirements:
165
233
  - - ~>
166
234
  - !ruby/object:Gem::Version
235
+ hash: 27
236
+ segments:
237
+ - 0
238
+ - 1
239
+ - 0
167
240
  version: 0.1.0
241
+ requirement: *id014
168
242
  type: :runtime
169
- version_requirements: *id014
170
- - !ruby/object:Gem::Dependency
171
- name: mimetype-fu
172
243
  prerelease: false
173
- requirement: &id015 !ruby/object:Gem::Requirement
244
+ name: shell_tools
245
+ - !ruby/object:Gem::Dependency
246
+ version_requirements: &id015 !ruby/object:Gem::Requirement
174
247
  none: false
175
248
  requirements:
176
249
  - - ~>
177
250
  - !ruby/object:Gem::Version
251
+ hash: 31
252
+ segments:
253
+ - 0
254
+ - 1
255
+ - 2
178
256
  version: 0.1.2
257
+ requirement: *id015
179
258
  type: :runtime
180
- version_requirements: *id015
181
- - !ruby/object:Gem::Dependency
182
- name: eventmachine
183
259
  prerelease: false
184
- requirement: &id016 !ruby/object:Gem::Requirement
260
+ name: mimetype-fu
261
+ - !ruby/object:Gem::Dependency
262
+ version_requirements: &id016 !ruby/object:Gem::Requirement
185
263
  none: false
186
264
  requirements:
187
265
  - - ">="
188
266
  - !ruby/object:Gem::Version
267
+ hash: 62196357
268
+ segments:
269
+ - 1
270
+ - 0
271
+ - 0
272
+ - beta
273
+ - 3
189
274
  version: 1.0.0.beta.3
275
+ requirement: *id016
190
276
  type: :runtime
191
- version_requirements: *id016
192
- - !ruby/object:Gem::Dependency
193
- name: minitest
194
277
  prerelease: false
195
- requirement: &id017 !ruby/object:Gem::Requirement
278
+ name: eventmachine
279
+ - !ruby/object:Gem::Dependency
280
+ version_requirements: &id017 !ruby/object:Gem::Requirement
196
281
  none: false
197
282
  requirements:
198
283
  - - ~>
199
284
  - !ruby/object:Gem::Version
285
+ hash: 21
286
+ segments:
287
+ - 2
288
+ - 6
289
+ - 1
200
290
  version: 2.6.1
291
+ requirement: *id017
201
292
  type: :development
202
- version_requirements: *id017
203
- - !ruby/object:Gem::Dependency
204
- name: rake
205
293
  prerelease: false
206
- requirement: &id018 !ruby/object:Gem::Requirement
294
+ name: minitest
295
+ - !ruby/object:Gem::Dependency
296
+ version_requirements: &id018 !ruby/object:Gem::Requirement
207
297
  none: false
208
298
  requirements:
209
299
  - - ">="
210
300
  - !ruby/object:Gem::Version
301
+ hash: 3
302
+ segments:
303
+ - 0
211
304
  version: "0"
305
+ requirement: *id018
212
306
  type: :development
213
- version_requirements: *id018
214
- - !ruby/object:Gem::Dependency
215
- name: mocha
216
307
  prerelease: false
217
- requirement: &id019 !ruby/object:Gem::Requirement
308
+ name: rake
309
+ - !ruby/object:Gem::Dependency
310
+ version_requirements: &id019 !ruby/object:Gem::Requirement
218
311
  none: false
219
312
  requirements:
220
313
  - - ">="
221
314
  - !ruby/object:Gem::Version
315
+ hash: 3
316
+ segments:
317
+ - 0
222
318
  version: "0"
319
+ requirement: *id019
223
320
  type: :development
224
- version_requirements: *id019
225
- - !ruby/object:Gem::Dependency
226
- name: fakeweb
227
321
  prerelease: false
228
- requirement: &id020 !ruby/object:Gem::Requirement
322
+ name: mocha
323
+ - !ruby/object:Gem::Dependency
324
+ version_requirements: &id020 !ruby/object:Gem::Requirement
229
325
  none: false
230
326
  requirements:
231
327
  - - ">="
232
328
  - !ruby/object:Gem::Version
329
+ hash: 3
330
+ segments:
331
+ - 0
233
332
  version: "0"
333
+ requirement: *id020
234
334
  type: :development
235
- version_requirements: *id020
335
+ prerelease: false
336
+ name: fakeweb
236
337
  description: Open-source Dropbox using Ruby and Git.
237
338
  email:
238
339
  - joshbuddy@gmail.com
@@ -342,17 +443,23 @@ required_ruby_version: !ruby/object:Gem::Requirement
342
443
  requirements:
343
444
  - - ">="
344
445
  - !ruby/object:Gem::Version
446
+ hash: 3
447
+ segments:
448
+ - 0
345
449
  version: "0"
346
450
  required_rubygems_version: !ruby/object:Gem::Requirement
347
451
  none: false
348
452
  requirements:
349
453
  - - ">="
350
454
  - !ruby/object:Gem::Version
455
+ hash: 3
456
+ segments:
457
+ - 0
351
458
  version: "0"
352
459
  requirements: []
353
460
 
354
461
  rubyforge_project: gitdocs
355
- rubygems_version: 1.8.12
462
+ rubygems_version: 1.8.10
356
463
  signing_key:
357
464
  specification_version: 3
358
465
  summary: Open-source Dropbox using Ruby and Git