murlsh 1.4.1 → 1.5.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/.gitignore +4 -0
- data/.htaccess +0 -3
- data/Gemfile +41 -0
- data/README.textile +68 -6
- data/Rakefile +65 -152
- data/config.ru +13 -2
- data/config.yaml +9 -4
- data/db/migrate/20110213023123_init.rb +20 -0
- data/lib/murlsh/atom_body.rb +78 -0
- data/lib/murlsh/atom_server.rb +38 -0
- data/lib/murlsh/auth.rb +12 -0
- data/lib/murlsh/build_query.rb +1 -1
- data/lib/murlsh/cat_files.rb +17 -0
- data/lib/murlsh/delicious_parse.rb +1 -0
- data/lib/murlsh/dispatch.rb +25 -11
- data/lib/murlsh/etag_add_encoding.rb +1 -1
- data/lib/murlsh/feed_body.rb +36 -0
- data/lib/murlsh/img_store.rb +27 -28
- data/lib/murlsh/install.rb +1 -0
- data/lib/murlsh/json_body.rb +5 -2
- data/lib/murlsh/json_server.rb +9 -13
- data/lib/murlsh/m3u_body.rb +28 -0
- data/lib/murlsh/m3u_server.rb +50 -0
- data/lib/murlsh/markup.rb +1 -1
- data/lib/murlsh/plugin.rb +5 -0
- data/lib/murlsh/podcast_server.rb +44 -0
- data/lib/murlsh/pop_server.rb +78 -0
- data/lib/murlsh/random_server.rb +41 -0
- data/lib/murlsh/rss_body.rb +46 -0
- data/lib/murlsh/rss_server.rb +38 -0
- data/lib/murlsh/search_conditions.rb +2 -2
- data/lib/murlsh/uri_ask.rb +2 -2
- data/lib/murlsh/url_body.rb +21 -6
- data/lib/murlsh/url_result_set.rb +2 -2
- data/lib/murlsh/url_server.rb +19 -16
- data/lib/murlsh/write_ordered_hash.rb +17 -0
- data/lib/murlsh.rb +13 -2
- data/murlsh.gemspec +41 -194
- data/plugins/add_post_60_notify_hubs.rb +3 -2
- data/plugins/add_pre_30_unajax_twitter.rb +1 -1
- data/plugins/add_pre_40_thumbnail_shortcuts.rb +23 -0
- data/plugins/add_pre_45_supplied_thumbnail.rb +4 -9
- data/plugins/add_pre_50_media_thumbnail.rb +4 -9
- data/plugins/add_pre_50_open_graph_image.rb +4 -8
- data/plugins/add_pre_60_github_title.rb +1 -1
- data/plugins/add_pre_65_html_thumb.rb +3 -8
- data/plugins/add_pre_65_img_thumb.rb +4 -9
- data/plugins/avatar_50_gravatar.rb +2 -1
- data/plugins/store_asset_40_s3.rb +40 -0
- data/plugins/store_asset_50_local.rb +22 -0
- data/public/js/js.js +0 -7
- data/spec/auth_spec.rb +7 -0
- data/spec/cat_files_spec.rb +49 -0
- data/spec/img_store_spec.rb +24 -8
- metadata +119 -76
- data/VERSION +0 -1
- data/lib/murlsh/build_md5.rb +0 -12
- data/lib/murlsh/head_from_get.rb +0 -15
- data/plugins/add_post_50_update_feed.rb +0 -84
- data/plugins/add_post_50_update_m3u.rb +0 -35
- data/plugins/add_post_50_update_podcast.rb +0 -44
- data/plugins/add_post_50_update_rss.rb +0 -51
- data/plugins/add_pre_60_s3_image.rb +0 -35
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: murlsh
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 3
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 1.
|
8
|
+
- 5
|
9
|
+
- 0
|
10
|
+
version: 1.5.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Matthew M. Boedicker
|
@@ -15,8 +15,8 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-02-
|
19
|
-
default_executable:
|
18
|
+
date: 2011-02-21 00:00:00 -05:00
|
19
|
+
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
name: activerecord
|
@@ -35,23 +35,22 @@ dependencies:
|
|
35
35
|
type: :runtime
|
36
36
|
version_requirements: *id001
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
|
-
name:
|
38
|
+
name: aws-s3
|
39
39
|
prerelease: false
|
40
40
|
requirement: &id002 !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
|
-
- -
|
43
|
+
- - ~>
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
hash:
|
45
|
+
hash: 7
|
46
46
|
segments:
|
47
|
-
-
|
48
|
-
-
|
49
|
-
|
50
|
-
version: 2.1.2
|
47
|
+
- 0
|
48
|
+
- 6
|
49
|
+
version: "0.6"
|
51
50
|
type: :runtime
|
52
51
|
version_requirements: *id002
|
53
52
|
- !ruby/object:Gem::Dependency
|
54
|
-
name:
|
53
|
+
name: bcrypt-ruby
|
55
54
|
prerelease: false
|
56
55
|
requirement: &id003 !ruby/object:Gem::Requirement
|
57
56
|
none: false
|
@@ -67,9 +66,23 @@ dependencies:
|
|
67
66
|
type: :runtime
|
68
67
|
version_requirements: *id003
|
69
68
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
69
|
+
name: builder
|
71
70
|
prerelease: false
|
72
71
|
requirement: &id004 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ">"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
hash: 3
|
77
|
+
segments:
|
78
|
+
- 0
|
79
|
+
version: "0"
|
80
|
+
type: :runtime
|
81
|
+
version_requirements: *id004
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: htmlentities
|
84
|
+
prerelease: false
|
85
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
73
86
|
none: false
|
74
87
|
requirements:
|
75
88
|
- - ">="
|
@@ -81,11 +94,11 @@ dependencies:
|
|
81
94
|
- 0
|
82
95
|
version: 4.2.0
|
83
96
|
type: :runtime
|
84
|
-
version_requirements: *
|
97
|
+
version_requirements: *id005
|
85
98
|
- !ruby/object:Gem::Dependency
|
86
99
|
name: json
|
87
100
|
prerelease: false
|
88
|
-
requirement: &
|
101
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
89
102
|
none: false
|
90
103
|
requirements:
|
91
104
|
- - ">="
|
@@ -97,11 +110,11 @@ dependencies:
|
|
97
110
|
- 3
|
98
111
|
version: 1.2.3
|
99
112
|
type: :runtime
|
100
|
-
version_requirements: *
|
113
|
+
version_requirements: *id006
|
101
114
|
- !ruby/object:Gem::Dependency
|
102
115
|
name: nokogiri
|
103
116
|
prerelease: false
|
104
|
-
requirement: &
|
117
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
105
118
|
none: false
|
106
119
|
requirements:
|
107
120
|
- - ~>
|
@@ -112,27 +125,27 @@ dependencies:
|
|
112
125
|
- 0
|
113
126
|
version: "1.0"
|
114
127
|
type: :runtime
|
115
|
-
version_requirements: *
|
128
|
+
version_requirements: *id007
|
116
129
|
- !ruby/object:Gem::Dependency
|
117
130
|
name: plumnailer
|
118
131
|
prerelease: false
|
119
|
-
requirement: &
|
132
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
120
133
|
none: false
|
121
134
|
requirements:
|
122
135
|
- - ">="
|
123
136
|
- !ruby/object:Gem::Version
|
124
|
-
hash:
|
137
|
+
hash: 29
|
125
138
|
segments:
|
126
139
|
- 0
|
127
140
|
- 1
|
128
|
-
-
|
129
|
-
version: 0.1.
|
141
|
+
- 3
|
142
|
+
version: 0.1.3
|
130
143
|
type: :runtime
|
131
|
-
version_requirements: *
|
144
|
+
version_requirements: *id008
|
132
145
|
- !ruby/object:Gem::Dependency
|
133
146
|
name: postrank-uri
|
134
147
|
prerelease: false
|
135
|
-
requirement: &
|
148
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
136
149
|
none: false
|
137
150
|
requirements:
|
138
151
|
- - ~>
|
@@ -143,11 +156,11 @@ dependencies:
|
|
143
156
|
- 0
|
144
157
|
version: "1.0"
|
145
158
|
type: :runtime
|
146
|
-
version_requirements: *
|
159
|
+
version_requirements: *id009
|
147
160
|
- !ruby/object:Gem::Dependency
|
148
161
|
name: public_suffix_service
|
149
162
|
prerelease: false
|
150
|
-
requirement: &
|
163
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
151
164
|
none: false
|
152
165
|
requirements:
|
153
166
|
- - ~>
|
@@ -158,11 +171,11 @@ dependencies:
|
|
158
171
|
- 0
|
159
172
|
version: "0.0"
|
160
173
|
type: :runtime
|
161
|
-
version_requirements: *
|
174
|
+
version_requirements: *id010
|
162
175
|
- !ruby/object:Gem::Dependency
|
163
176
|
name: push-notify
|
164
177
|
prerelease: false
|
165
|
-
requirement: &
|
178
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
166
179
|
none: false
|
167
180
|
requirements:
|
168
181
|
- - ">="
|
@@ -174,11 +187,11 @@ dependencies:
|
|
174
187
|
- 0
|
175
188
|
version: 0.1.0
|
176
189
|
type: :runtime
|
177
|
-
version_requirements: *
|
190
|
+
version_requirements: *id011
|
178
191
|
- !ruby/object:Gem::Dependency
|
179
192
|
name: rack
|
180
193
|
prerelease: false
|
181
|
-
requirement: &
|
194
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
182
195
|
none: false
|
183
196
|
requirements:
|
184
197
|
- - ">="
|
@@ -190,11 +203,11 @@ dependencies:
|
|
190
203
|
- 0
|
191
204
|
version: 1.0.0
|
192
205
|
type: :runtime
|
193
|
-
version_requirements: *
|
206
|
+
version_requirements: *id012
|
194
207
|
- !ruby/object:Gem::Dependency
|
195
208
|
name: rack-cache
|
196
209
|
prerelease: false
|
197
|
-
requirement: &
|
210
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
198
211
|
none: false
|
199
212
|
requirements:
|
200
213
|
- - ">="
|
@@ -206,11 +219,11 @@ dependencies:
|
|
206
219
|
- 2
|
207
220
|
version: 0.5.2
|
208
221
|
type: :runtime
|
209
|
-
version_requirements: *
|
222
|
+
version_requirements: *id013
|
210
223
|
- !ruby/object:Gem::Dependency
|
211
224
|
name: rack-rewrite
|
212
225
|
prerelease: false
|
213
|
-
requirement: &
|
226
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
214
227
|
none: false
|
215
228
|
requirements:
|
216
229
|
- - ">="
|
@@ -222,11 +235,11 @@ dependencies:
|
|
222
235
|
- 2
|
223
236
|
version: 1.0.2
|
224
237
|
type: :runtime
|
225
|
-
version_requirements: *
|
238
|
+
version_requirements: *id014
|
226
239
|
- !ruby/object:Gem::Dependency
|
227
240
|
name: rack-throttle
|
228
241
|
prerelease: false
|
229
|
-
requirement: &
|
242
|
+
requirement: &id015 !ruby/object:Gem::Requirement
|
230
243
|
none: false
|
231
244
|
requirements:
|
232
245
|
- - ">="
|
@@ -238,11 +251,11 @@ dependencies:
|
|
238
251
|
- 0
|
239
252
|
version: 0.3.0
|
240
253
|
type: :runtime
|
241
|
-
version_requirements: *
|
254
|
+
version_requirements: *id015
|
242
255
|
- !ruby/object:Gem::Dependency
|
243
256
|
name: rmagick
|
244
257
|
prerelease: false
|
245
|
-
requirement: &
|
258
|
+
requirement: &id016 !ruby/object:Gem::Requirement
|
246
259
|
none: false
|
247
260
|
requirements:
|
248
261
|
- - ">="
|
@@ -254,11 +267,26 @@ dependencies:
|
|
254
267
|
- 14
|
255
268
|
version: 1.15.14
|
256
269
|
type: :runtime
|
257
|
-
version_requirements: *
|
270
|
+
version_requirements: *id016
|
271
|
+
- !ruby/object:Gem::Dependency
|
272
|
+
name: rmail
|
273
|
+
prerelease: false
|
274
|
+
requirement: &id017 !ruby/object:Gem::Requirement
|
275
|
+
none: false
|
276
|
+
requirements:
|
277
|
+
- - ~>
|
278
|
+
- !ruby/object:Gem::Version
|
279
|
+
hash: 15
|
280
|
+
segments:
|
281
|
+
- 1
|
282
|
+
- 0
|
283
|
+
version: "1.0"
|
284
|
+
type: :runtime
|
285
|
+
version_requirements: *id017
|
258
286
|
- !ruby/object:Gem::Dependency
|
259
287
|
name: sqlite3
|
260
288
|
prerelease: false
|
261
|
-
requirement: &
|
289
|
+
requirement: &id018 !ruby/object:Gem::Requirement
|
262
290
|
none: false
|
263
291
|
requirements:
|
264
292
|
- - ~>
|
@@ -269,27 +297,27 @@ dependencies:
|
|
269
297
|
- 3
|
270
298
|
version: "1.3"
|
271
299
|
type: :runtime
|
272
|
-
version_requirements: *
|
300
|
+
version_requirements: *id018
|
273
301
|
- !ruby/object:Gem::Dependency
|
274
302
|
name: tinyatom
|
275
303
|
prerelease: false
|
276
|
-
requirement: &
|
304
|
+
requirement: &id019 !ruby/object:Gem::Requirement
|
277
305
|
none: false
|
278
306
|
requirements:
|
279
307
|
- - ">="
|
280
308
|
- !ruby/object:Gem::Version
|
281
|
-
hash:
|
309
|
+
hash: 27
|
282
310
|
segments:
|
283
311
|
- 0
|
284
312
|
- 3
|
285
|
-
-
|
286
|
-
version: 0.3.
|
313
|
+
- 4
|
314
|
+
version: 0.3.4
|
287
315
|
type: :runtime
|
288
|
-
version_requirements: *
|
316
|
+
version_requirements: *id019
|
289
317
|
- !ruby/object:Gem::Dependency
|
290
318
|
name: treetop
|
291
319
|
prerelease: false
|
292
|
-
requirement: &
|
320
|
+
requirement: &id020 !ruby/object:Gem::Requirement
|
293
321
|
none: false
|
294
322
|
requirements:
|
295
323
|
- - ~>
|
@@ -300,11 +328,11 @@ dependencies:
|
|
300
328
|
- 4
|
301
329
|
version: "1.4"
|
302
330
|
type: :runtime
|
303
|
-
version_requirements: *
|
331
|
+
version_requirements: *id020
|
304
332
|
- !ruby/object:Gem::Dependency
|
305
333
|
name: twitter
|
306
334
|
prerelease: false
|
307
|
-
requirement: &
|
335
|
+
requirement: &id021 !ruby/object:Gem::Requirement
|
308
336
|
none: false
|
309
337
|
requirements:
|
310
338
|
- - ">="
|
@@ -316,11 +344,11 @@ dependencies:
|
|
316
344
|
- 12
|
317
345
|
version: 0.9.12
|
318
346
|
type: :runtime
|
319
|
-
version_requirements: *
|
347
|
+
version_requirements: *id021
|
320
348
|
- !ruby/object:Gem::Dependency
|
321
349
|
name: fakeweb
|
322
350
|
prerelease: false
|
323
|
-
requirement: &
|
351
|
+
requirement: &id022 !ruby/object:Gem::Requirement
|
324
352
|
none: false
|
325
353
|
requirements:
|
326
354
|
- - ~>
|
@@ -331,11 +359,11 @@ dependencies:
|
|
331
359
|
- 3
|
332
360
|
version: "1.3"
|
333
361
|
type: :development
|
334
|
-
version_requirements: *
|
362
|
+
version_requirements: *id022
|
335
363
|
- !ruby/object:Gem::Dependency
|
336
364
|
name: flog
|
337
365
|
prerelease: false
|
338
|
-
requirement: &
|
366
|
+
requirement: &id023 !ruby/object:Gem::Requirement
|
339
367
|
none: false
|
340
368
|
requirements:
|
341
369
|
- - ">="
|
@@ -347,11 +375,11 @@ dependencies:
|
|
347
375
|
- 0
|
348
376
|
version: 2.5.0
|
349
377
|
type: :development
|
350
|
-
version_requirements: *
|
378
|
+
version_requirements: *id023
|
351
379
|
- !ruby/object:Gem::Dependency
|
352
380
|
name: rack-test
|
353
381
|
prerelease: false
|
354
|
-
requirement: &
|
382
|
+
requirement: &id024 !ruby/object:Gem::Requirement
|
355
383
|
none: false
|
356
384
|
requirements:
|
357
385
|
- - ~>
|
@@ -362,11 +390,11 @@ dependencies:
|
|
362
390
|
- 5
|
363
391
|
version: "0.5"
|
364
392
|
type: :development
|
365
|
-
version_requirements: *
|
393
|
+
version_requirements: *id024
|
366
394
|
- !ruby/object:Gem::Dependency
|
367
395
|
name: rspec
|
368
396
|
prerelease: false
|
369
|
-
requirement: &
|
397
|
+
requirement: &id025 !ruby/object:Gem::Requirement
|
370
398
|
none: false
|
371
399
|
requirements:
|
372
400
|
- - ~>
|
@@ -377,29 +405,34 @@ dependencies:
|
|
377
405
|
- 0
|
378
406
|
version: "2.0"
|
379
407
|
type: :development
|
380
|
-
version_requirements: *
|
408
|
+
version_requirements: *id025
|
381
409
|
description: Host your bookmarks or maintain a link blog
|
382
|
-
email:
|
410
|
+
email:
|
411
|
+
- matthewm@boedicker.org
|
383
412
|
executables:
|
384
413
|
- murlsh
|
385
414
|
extensions: []
|
386
415
|
|
387
|
-
extra_rdoc_files:
|
388
|
-
|
416
|
+
extra_rdoc_files: []
|
417
|
+
|
389
418
|
files:
|
419
|
+
- .gitignore
|
390
420
|
- .htaccess
|
391
421
|
- COPYING
|
422
|
+
- Gemfile
|
392
423
|
- README.textile
|
393
424
|
- Rakefile
|
394
|
-
- VERSION
|
395
425
|
- bin/murlsh
|
396
426
|
- config.ru
|
397
427
|
- config.yaml
|
428
|
+
- db/migrate/20110213023123_init.rb
|
398
429
|
- lib/murlsh.rb
|
399
430
|
- lib/murlsh/ask.rb
|
431
|
+
- lib/murlsh/atom_body.rb
|
432
|
+
- lib/murlsh/atom_server.rb
|
400
433
|
- lib/murlsh/auth.rb
|
401
|
-
- lib/murlsh/build_md5.rb
|
402
434
|
- lib/murlsh/build_query.rb
|
435
|
+
- lib/murlsh/cat_files.rb
|
403
436
|
- lib/murlsh/cp_r_safe.rb
|
404
437
|
- lib/murlsh/delicious_parse.rb
|
405
438
|
- lib/murlsh/dispatch.rb
|
@@ -407,17 +440,24 @@ files:
|
|
407
440
|
- lib/murlsh/etag_add_encoding.rb
|
408
441
|
- lib/murlsh/failproof.rb
|
409
442
|
- lib/murlsh/far_future_expires.rb
|
410
|
-
- lib/murlsh/
|
443
|
+
- lib/murlsh/feed_body.rb
|
411
444
|
- lib/murlsh/image_list.rb
|
412
445
|
- lib/murlsh/img_store.rb
|
413
446
|
- lib/murlsh/install.rb
|
414
447
|
- lib/murlsh/json_body.rb
|
415
448
|
- lib/murlsh/json_server.rb
|
416
449
|
- lib/murlsh/jsonp_body.rb
|
450
|
+
- lib/murlsh/m3u_body.rb
|
451
|
+
- lib/murlsh/m3u_server.rb
|
417
452
|
- lib/murlsh/markup.rb
|
418
453
|
- lib/murlsh/must_revalidate.rb
|
419
454
|
- lib/murlsh/openlock.rb
|
420
455
|
- lib/murlsh/plugin.rb
|
456
|
+
- lib/murlsh/podcast_server.rb
|
457
|
+
- lib/murlsh/pop_server.rb
|
458
|
+
- lib/murlsh/random_server.rb
|
459
|
+
- lib/murlsh/rss_body.rb
|
460
|
+
- lib/murlsh/rss_server.rb
|
421
461
|
- lib/murlsh/search_conditions.rb
|
422
462
|
- lib/murlsh/search_grammar.rb
|
423
463
|
- lib/murlsh/search_grammar.treetop
|
@@ -429,16 +469,14 @@ files:
|
|
429
469
|
- lib/murlsh/url_body.rb
|
430
470
|
- lib/murlsh/url_result_set.rb
|
431
471
|
- lib/murlsh/url_server.rb
|
472
|
+
- lib/murlsh/write_ordered_hash.rb
|
432
473
|
- lib/murlsh/yaml_ordered_hash.rb
|
433
474
|
- murlsh.gemspec
|
434
|
-
- plugins/add_post_50_update_feed.rb
|
435
|
-
- plugins/add_post_50_update_m3u.rb
|
436
|
-
- plugins/add_post_50_update_podcast.rb
|
437
|
-
- plugins/add_post_50_update_rss.rb
|
438
475
|
- plugins/add_post_60_notify_hubs.rb
|
439
476
|
- plugins/add_pre_30_unajax_twitter.rb
|
440
477
|
- plugins/add_pre_35_url_clean.rb
|
441
478
|
- plugins/add_pre_40_convert_mobile.rb
|
479
|
+
- plugins/add_pre_40_thumbnail_shortcuts.rb
|
442
480
|
- plugins/add_pre_45_supplied_thumbnail.rb
|
443
481
|
- plugins/add_pre_50_lookup_content_type_title.rb
|
444
482
|
- plugins/add_pre_50_media_thumbnail.rb
|
@@ -446,11 +484,12 @@ files:
|
|
446
484
|
- plugins/add_pre_60_github_title.rb
|
447
485
|
- plugins/add_pre_60_google_code_title.rb
|
448
486
|
- plugins/add_pre_60_imgur.rb
|
449
|
-
- plugins/add_pre_60_s3_image.rb
|
450
487
|
- plugins/add_pre_60_twitter.rb
|
451
488
|
- plugins/add_pre_65_html_thumb.rb
|
452
489
|
- plugins/add_pre_65_img_thumb.rb
|
453
490
|
- plugins/avatar_50_gravatar.rb
|
491
|
+
- plugins/store_asset_40_s3.rb
|
492
|
+
- plugins/store_asset_50_local.rb
|
454
493
|
- plugins/url_display_add_45_audio.rb
|
455
494
|
- plugins/url_display_add_50_hostrec.rb
|
456
495
|
- plugins/url_display_add_55_content_type.rb
|
@@ -464,6 +503,7 @@ files:
|
|
464
503
|
- public/js/js.js
|
465
504
|
- public/js/twitter-text-1.3.1.js
|
466
505
|
- spec/auth_spec.rb
|
506
|
+
- spec/cat_files_spec.rb
|
467
507
|
- spec/dispatch_spec.rb
|
468
508
|
- spec/doc_spec.rb
|
469
509
|
- spec/img_store_spec.rb
|
@@ -473,7 +513,7 @@ files:
|
|
473
513
|
- spec/url_spec.rb
|
474
514
|
- spec/yaml_ordered_hash_spec.rb
|
475
515
|
has_rdoc: true
|
476
|
-
homepage:
|
516
|
+
homepage: https://github.com/mmb/murlsh
|
477
517
|
licenses: []
|
478
518
|
|
479
519
|
post_install_message:
|
@@ -495,19 +535,22 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
495
535
|
requirements:
|
496
536
|
- - ">="
|
497
537
|
- !ruby/object:Gem::Version
|
498
|
-
hash:
|
538
|
+
hash: 23
|
499
539
|
segments:
|
500
|
-
-
|
501
|
-
|
540
|
+
- 1
|
541
|
+
- 3
|
542
|
+
- 6
|
543
|
+
version: 1.3.6
|
502
544
|
requirements: []
|
503
545
|
|
504
546
|
rubyforge_project:
|
505
|
-
rubygems_version: 1.
|
547
|
+
rubygems_version: 1.5.2
|
506
548
|
signing_key:
|
507
549
|
specification_version: 3
|
508
550
|
summary: Host your bookmarks or maintain a link blog
|
509
551
|
test_files:
|
510
552
|
- spec/auth_spec.rb
|
553
|
+
- spec/cat_files_spec.rb
|
511
554
|
- spec/dispatch_spec.rb
|
512
555
|
- spec/doc_spec.rb
|
513
556
|
- spec/img_store_spec.rb
|
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
1.4.1
|
data/lib/murlsh/build_md5.rb
DELETED
data/lib/murlsh/head_from_get.rb
DELETED
@@ -1,84 +0,0 @@
|
|
1
|
-
require 'uri'
|
2
|
-
|
3
|
-
require 'tinyatom'
|
4
|
-
|
5
|
-
require 'murlsh'
|
6
|
-
|
7
|
-
module Murlsh
|
8
|
-
|
9
|
-
# Regenerate atom feed after a new url has been added.
|
10
|
-
class AddPost50UpdateFeed < Plugin
|
11
|
-
|
12
|
-
@hook = 'add_post'
|
13
|
-
|
14
|
-
# Content types to add an enclosure for.
|
15
|
-
EnclosureContentTypes = %w{
|
16
|
-
application/pdf
|
17
|
-
audio/mpeg
|
18
|
-
image/gif
|
19
|
-
image/jpeg
|
20
|
-
image/png
|
21
|
-
}
|
22
|
-
|
23
|
-
def self.run(url, config)
|
24
|
-
feed = TinyAtom::Feed.new(config['root_url'], config.fetch('page_title'),
|
25
|
-
URI.join(config['root_url'], config['feed_file']),
|
26
|
-
:hubs => config.fetch('pubsubhubbub_hubs', []).
|
27
|
-
map { |x| x['subscribe_url'] } )
|
28
|
-
|
29
|
-
latest = Murlsh::Url.all(:order => 'time DESC',
|
30
|
-
:limit => config.fetch('num_posts_feed', 25))
|
31
|
-
|
32
|
-
latest.each do |mu|
|
33
|
-
options = {
|
34
|
-
:author_name => mu.name,
|
35
|
-
:summary => mu.title_stripped
|
36
|
-
}
|
37
|
-
|
38
|
-
if EnclosureContentTypes.include?(mu.content_type)
|
39
|
-
options.merge!(
|
40
|
-
:enclosure_type => mu.content_type,
|
41
|
-
:enclosure_href => mu.url,
|
42
|
-
:enclosure_title => mu.title
|
43
|
-
)
|
44
|
-
if mu.content_length
|
45
|
-
options.merge! :enclosure_length => mu.content_length
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
if mu.thumbnail_url
|
50
|
-
begin
|
51
|
-
# Add root url to relative urls.
|
52
|
-
tu = URI(mu.thumbnail_url)
|
53
|
-
abs_url = if tu.is_a?(URI::HTTP)
|
54
|
-
tu
|
55
|
-
else
|
56
|
-
URI.join config['root_url'], tu
|
57
|
-
end
|
58
|
-
options.merge! :media_thumbnail_url => abs_url
|
59
|
-
rescue URI::InvalidURIError
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
Murlsh::failproof do
|
64
|
-
if mu.via
|
65
|
-
options.merge!(
|
66
|
-
:via_type => 'text/html',
|
67
|
-
:via_href => mu.via,
|
68
|
-
:via_title => URI(mu.via).extend(Murlsh::URIDomain).domain
|
69
|
-
)
|
70
|
-
end
|
71
|
-
end
|
72
|
-
|
73
|
-
feed.add_entry mu.id, mu.title_stripped, mu.time, mu.url, options
|
74
|
-
end
|
75
|
-
|
76
|
-
Murlsh::openlock(config.fetch('feed_file'), 'w') do |f|
|
77
|
-
feed.make :target => f
|
78
|
-
end
|
79
|
-
|
80
|
-
end
|
81
|
-
|
82
|
-
end
|
83
|
-
|
84
|
-
end
|
@@ -1,35 +0,0 @@
|
|
1
|
-
require 'murlsh'
|
2
|
-
|
3
|
-
module Murlsh
|
4
|
-
|
5
|
-
# Regenerate m3u file after a new audio url has been added.
|
6
|
-
class AddPost50UpdateM3u < Plugin
|
7
|
-
|
8
|
-
@hook = 'add_post'
|
9
|
-
|
10
|
-
AudioContentTypes = %w{
|
11
|
-
application/ogg
|
12
|
-
audio/mpeg
|
13
|
-
audio/ogg
|
14
|
-
}
|
15
|
-
|
16
|
-
OutputFile = 'm3u.m3u'
|
17
|
-
|
18
|
-
def self.run(url, config)
|
19
|
-
if AudioContentTypes.include?(url.content_type) or
|
20
|
-
not File.exists?(OutputFile)
|
21
|
-
|
22
|
-
Murlsh::openlock(OutputFile, 'w') do |f|
|
23
|
-
f.write "# #{config['root_url']}\r\n\r\n"
|
24
|
-
Murlsh::Url.all(:conditions =>
|
25
|
-
["content_type IN (?)", AudioContentTypes],
|
26
|
-
:order => 'time DESC').each do |mu|
|
27
|
-
f.write "#{mu.url}\r\n"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|