browse-everything 0.1.1 → 0.2.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/HISTORY.md +3 -0
- data/README.md +1 -0
- data/app/assets/javascripts/browse_everything/behavior.js.coffee +1 -1
- data/app/assets/stylesheets/bootstrap-responsive.css.scss +4 -0
- data/app/assets/stylesheets/browse_everything.css.scss +49 -38
- data/app/helpers/bootstrap_version_helper.rb +19 -0
- data/app/views/browse_everything/_providers.html.erb +2 -2
- data/app/views/browse_everything/index.html.erb +18 -26
- data/browse-everything.gemspec +1 -1
- data/lib/browse_everything/driver/file_system.rb +3 -3
- data/lib/browse_everything/version.rb +1 -1
- data/spec/fixtures/vcr_cassettes/dropbox.yml +2 -2
- data/spec/support/app/views/file_handler/index.html.erb +2 -2
- data/spec/support/lib/generators/test_app_generator.rb +1 -1
- metadata +12 -5
data/HISTORY.md
CHANGED
data/README.md
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
[](http://badge.fury.io/rb/browse-everything)
|
1
2
|
[](https://travis-ci.org/projecthydra/browse-everything)
|
2
3
|
|
3
4
|
# BrowseEverything
|
@@ -5,7 +5,7 @@ $(document).ready ->
|
|
5
5
|
|
6
6
|
initialize = (obj,options) ->
|
7
7
|
if dialog.length == 0
|
8
|
-
dialog = $('<div id="browse-everything" class="ev-browser modal
|
8
|
+
dialog = $('<div id="browse-everything" class="ev-browser modal fade"></div>').hide().appendTo('body')
|
9
9
|
dialog.modal({ backdrop: 'static', show: false });
|
10
10
|
context[obj] =
|
11
11
|
opts: $.extend(true, {}, options)
|
@@ -27,56 +27,67 @@
|
|
27
27
|
}
|
28
28
|
}
|
29
29
|
|
30
|
-
|
31
|
-
|
32
|
-
|
30
|
+
#browse-everything {
|
31
|
+
overflow-y: hidden;
|
32
|
+
position: fixed !important;
|
33
|
+
margin: 0 0 0 -37.5%;
|
34
|
+
left: 50%;
|
35
|
+
width: 75%;
|
33
36
|
|
34
|
-
.
|
35
|
-
|
36
|
-
|
37
|
-
}
|
37
|
+
.modal-body {
|
38
|
+
overflow: hidden;
|
39
|
+
}
|
38
40
|
|
39
|
-
.
|
40
|
-
|
41
|
-
.ev-selected {
|
42
|
-
@include border-highlight(black);
|
41
|
+
.modal-footer {
|
42
|
+
margin: 0px;
|
43
43
|
}
|
44
|
-
}
|
45
44
|
|
46
|
-
.
|
47
|
-
|
48
|
-
}
|
45
|
+
.row {
|
46
|
+
margin: inherit;
|
47
|
+
}
|
48
|
+
|
49
|
+
.ev-files {
|
50
|
+
position: relative;
|
51
|
+
overflow-x: hidden;
|
52
|
+
overflow-y: auto;
|
49
53
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
+
li {
|
55
|
+
overflow: hidden;
|
56
|
+
text-overflow: ellipsis;
|
57
|
+
.ev-file-name {
|
58
|
+
// padding: 0px 6px;
|
59
|
+
white-space: nowrap;
|
60
|
+
}
|
61
|
+
border-top: none;
|
62
|
+
}
|
54
63
|
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
white-space: nowrap;
|
64
|
+
&.detail {
|
65
|
+
}
|
66
|
+
|
67
|
+
&.list ul {
|
68
|
+
@include content-columns(3);
|
61
69
|
}
|
62
|
-
border-top: none;
|
63
70
|
}
|
64
71
|
|
65
|
-
|
72
|
+
.ev-container li {
|
73
|
+
cursor: pointer;
|
66
74
|
}
|
67
75
|
|
68
|
-
|
69
|
-
|
76
|
+
.ev-body {
|
77
|
+
padding: 0;
|
70
78
|
}
|
71
|
-
}
|
72
79
|
|
73
|
-
.ev-
|
74
|
-
|
75
|
-
|
80
|
+
.ev-providers {
|
81
|
+
padding: 4px;
|
82
|
+
background-color: lightgray;
|
83
|
+
}
|
84
|
+
|
85
|
+
.ev-providers, .ev-files {
|
86
|
+
height: 50vh;
|
87
|
+
li { @include ev-link; }
|
88
|
+
.ev-selected {
|
89
|
+
@include border-highlight(black);
|
90
|
+
}
|
91
|
+
}
|
76
92
|
|
77
|
-
#browse-everything {
|
78
|
-
margin: 0 0 0 -37.5%;
|
79
|
-
left: 50%;
|
80
|
-
width: 75%;
|
81
|
-
height: 75%;
|
82
93
|
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module BootstrapVersionHelper
|
2
|
+
|
3
|
+
def bootstrap_three?
|
4
|
+
Bundler.environment.specs['bootstrap-sass'].first.version >= Gem::Version.new('3')
|
5
|
+
end
|
6
|
+
|
7
|
+
def bs2(if2)
|
8
|
+
bs2or3(if2,'')
|
9
|
+
end
|
10
|
+
|
11
|
+
def bs3(if3)
|
12
|
+
bs2or3('',if3)
|
13
|
+
end
|
14
|
+
|
15
|
+
def bs2or3(if2,if3)
|
16
|
+
bootstrap_three? ? if3 : if2
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
@@ -1,8 +1,8 @@
|
|
1
|
-
<ul class="unstyled">
|
1
|
+
<ul class="<%=bs3('list-')%>unstyled">
|
2
2
|
<% browser.providers.each_pair do |key, provider| %>
|
3
3
|
<li>
|
4
4
|
<span class="ev-container">
|
5
|
-
<i class="icon
|
5
|
+
<i class="<%=bs2or3('icon','glyphicon glyphicon')%>-<%=provider.icon%>"></i>
|
6
6
|
<%= link_to(provider.name, browse_everything_engine.contents_path(key)) %>
|
7
7
|
</span>
|
8
8
|
</li>
|
@@ -1,28 +1,20 @@
|
|
1
|
-
|
2
|
-
<div class="modal-
|
3
|
-
<div class="
|
4
|
-
<div class="
|
5
|
-
<%=
|
6
|
-
|
7
|
-
|
8
|
-
<%=
|
1
|
+
<% if bootstrap_three? %><div class="modal-content"><% end %>
|
2
|
+
<div class="modal-header"></div>
|
3
|
+
<div class="modal-body ev-body">
|
4
|
+
<div class="ev-browser row<%=bs2('-fluid')%>">
|
5
|
+
<div class="<%=bs2or3('span','col-xs-')%>2 ev-providers nav nav-list">
|
6
|
+
<%= render :partial => 'providers' %>
|
7
|
+
</div>
|
8
|
+
<div class="<%=bs2or3('span','col-xs-')%>10 ev-files list">
|
9
|
+
<%= render :partial => 'files' %>
|
10
|
+
</div>
|
9
11
|
</div>
|
10
12
|
</div>
|
11
|
-
|
12
|
-
<
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
<script>
|
20
|
-
$(window).resize(function() {
|
21
|
-
var be = $('#browse-everything').outerHeight();
|
22
|
-
var he = $('#browse-everything .modal-header').outerHeight();
|
23
|
-
var fo = $('#browse-everything .modal-footer').outerHeight();
|
24
|
-
$('#browse-everything .modal-body').css('max-height','none').height(be-(he+fo));
|
25
|
-
$('#browse-everything .ev-providers').height(be-(he+fo));
|
26
|
-
})
|
27
|
-
$(window).trigger('resize');
|
28
|
-
</script>
|
13
|
+
<div class="modal-footer">
|
14
|
+
<span class="pull-left ev-status">0 files selected</span>
|
15
|
+
<%= form_tag '#', :class => "ev-submit-form form-horizontal", :data => { :resolver => browse_everything_engine.resolver_path } do %>
|
16
|
+
<button class="ev-cancel btn btn-danger"><%= t('browse_everything.modal_form.cancel')%></button>
|
17
|
+
<button class="ev-submit btn btn-primary" data-loading-text="Loading..."><%= t('browse_everything.modal_form.submit')%></button>
|
18
|
+
<% end %>
|
19
|
+
</div>
|
20
|
+
<% if bootstrap_three? %></div><% end %>
|
data/browse-everything.gemspec
CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_dependency "bootstrap-sass"
|
24
24
|
spec.add_dependency "font-awesome-rails"
|
25
25
|
spec.add_dependency "google_drive"
|
26
|
-
spec.add_dependency "dropbox-sdk"
|
26
|
+
spec.add_dependency "dropbox-sdk", ">= 1.6.2"
|
27
27
|
spec.add_dependency "skydrive"
|
28
28
|
spec.add_dependency "ruby-box"
|
29
29
|
spec.add_dependency "google-api-client"
|
@@ -18,7 +18,7 @@ module BrowseEverything
|
|
18
18
|
result = []
|
19
19
|
if File.directory?(real_path)
|
20
20
|
if relative_path.present?
|
21
|
-
result << details('..')
|
21
|
+
result << details(File.expand_path('..',real_path),'..')
|
22
22
|
end
|
23
23
|
result += Dir[File.join(real_path,'*')].collect { |f| details(f) }
|
24
24
|
elsif File.exists?(real_path)
|
@@ -33,13 +33,13 @@ module BrowseEverything
|
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
|
-
def details(path)
|
36
|
+
def details(path,display=nil)
|
37
37
|
if File.exists?(path)
|
38
38
|
info = File::Stat.new(path)
|
39
39
|
BrowseEverything::FileEntry.new(
|
40
40
|
Pathname.new(File.expand_path(path)).relative_path_from(Pathname.new(config[:home])),
|
41
41
|
[self.key,path].join(':'),
|
42
|
-
File.basename(path),
|
42
|
+
display || File.basename(path),
|
43
43
|
info.size,
|
44
44
|
info.mtime,
|
45
45
|
info.directory?
|
@@ -152,7 +152,7 @@ http_interactions:
|
|
152
152
|
recorded_at: Fri, 20 Sep 2013 15:38:55 GMT
|
153
153
|
- request:
|
154
154
|
method: get
|
155
|
-
uri: https://api.dropbox.com/1/media/auto/Writer/Writer%20FAQ.txt
|
155
|
+
uri: https://api.dropbox.com/1/media/auto/Writer/Writer%20FAQ.txt?
|
156
156
|
body:
|
157
157
|
encoding: UTF-8
|
158
158
|
string: ''
|
@@ -191,7 +191,7 @@ http_interactions:
|
|
191
191
|
recorded_at: Fri, 20 Sep 2013 15:39:01 GMT
|
192
192
|
- request:
|
193
193
|
method: get
|
194
|
-
uri: https://api.dropbox.com/1/media/auto/Writer/Markdown%20Test.txt
|
194
|
+
uri: https://api.dropbox.com/1/media/auto/Writer/Markdown%20Test.txt?
|
195
195
|
body:
|
196
196
|
encoding: UTF-8
|
197
197
|
string: ''
|
@@ -1,9 +1,9 @@
|
|
1
|
-
<div class="hero-unit">
|
1
|
+
<div class="<%=bs2or3('hero-unit','jumbotron')%>">
|
2
2
|
<h1>Welcome!</h1>
|
3
3
|
|
4
4
|
<p>Please click the button below to start pickin' files!</p>
|
5
5
|
|
6
|
-
<%= form_tag(
|
6
|
+
<%= form_tag('/file', id: 'main_form', method: 'post') do %>
|
7
7
|
<%= button_tag("Browse", type: 'button', class: 'btn btn-large btn-success', id: "browse-btn",
|
8
8
|
'data-toggle' => 'browse-everything', 'data-route' => browse_everything_engine.root_path,
|
9
9
|
'data-target' => '#main_form' ) %>
|
@@ -28,7 +28,7 @@ class TestAppGenerator < Rails::Generators::Base
|
|
28
28
|
|
29
29
|
mount BrowseEverything::Engine => '/browse'
|
30
30
|
root :to => "file_handler#index"
|
31
|
-
post '/file', :to => "file_handler#update"
|
31
|
+
post '/file', :to => "file_handler#update"
|
32
32
|
}
|
33
33
|
end
|
34
34
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: browse-everything
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2013-
|
16
|
+
date: 2013-12-03 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: rails
|
@@ -102,7 +102,7 @@ dependencies:
|
|
102
102
|
requirements:
|
103
103
|
- - ! '>='
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version:
|
105
|
+
version: 1.6.2
|
106
106
|
type: :runtime
|
107
107
|
prerelease: false
|
108
108
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -110,7 +110,7 @@ dependencies:
|
|
110
110
|
requirements:
|
111
111
|
- - ! '>='
|
112
112
|
- !ruby/object:Gem::Version
|
113
|
-
version:
|
113
|
+
version: 1.6.2
|
114
114
|
- !ruby/object:Gem::Dependency
|
115
115
|
name: skydrive
|
116
116
|
requirement: !ruby/object:Gem::Requirement
|
@@ -325,8 +325,10 @@ files:
|
|
325
325
|
- app/.DS_Store
|
326
326
|
- app/assets/javascripts/browse_everything.js
|
327
327
|
- app/assets/javascripts/browse_everything/behavior.js.coffee
|
328
|
+
- app/assets/stylesheets/bootstrap-responsive.css.scss
|
328
329
|
- app/assets/stylesheets/browse_everything.css.scss
|
329
330
|
- app/controllers/browse_everything_controller.rb
|
331
|
+
- app/helpers/bootstrap_version_helper.rb
|
330
332
|
- app/helpers/browse_everything_helper.rb
|
331
333
|
- app/views/.DS_Store
|
332
334
|
- app/views/browse_everything/_auth.html.erb
|
@@ -385,12 +387,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
385
387
|
- - ! '>='
|
386
388
|
- !ruby/object:Gem::Version
|
387
389
|
version: '0'
|
390
|
+
segments:
|
391
|
+
- 0
|
392
|
+
hash: 1393661968678573604
|
388
393
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
389
394
|
none: false
|
390
395
|
requirements:
|
391
396
|
- - ! '>='
|
392
397
|
- !ruby/object:Gem::Version
|
393
398
|
version: '0'
|
399
|
+
segments:
|
400
|
+
- 0
|
401
|
+
hash: 1393661968678573604
|
394
402
|
requirements: []
|
395
403
|
rubyforge_project:
|
396
404
|
rubygems_version: 1.8.23
|
@@ -416,4 +424,3 @@ test_files:
|
|
416
424
|
- spec/unit/file_entry_spec.rb
|
417
425
|
- spec/unit/file_system_spec.rb
|
418
426
|
- spec/unit/sky_drive_spec.rb
|
419
|
-
has_rdoc:
|