gitdocs 0.3.1 → 0.3.2
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/gitdocs/cli.rb +0 -1
- data/lib/gitdocs/configuration.rb +2 -0
- data/lib/gitdocs/server.rb +2 -4
- data/lib/gitdocs/version.rb +1 -1
- data/lib/gitdocs/views/dir.haml +1 -1
- data/lib/gitdocs/views/edit.haml +1 -1
- data/test/configuration_test.rb +2 -2
- metadata +2 -2
data/lib/gitdocs/cli.rb
CHANGED
@@ -60,7 +60,6 @@ module Gitdocs
|
|
60
60
|
|
61
61
|
desc "create PATH REMOTE", "Creates a new gitdoc root based on an existing remote"
|
62
62
|
def create(path, remote)
|
63
|
-
path = self.config.normalize_path(path)
|
64
63
|
FileUtils.mkdir_p(File.dirname(path))
|
65
64
|
system("git clone -q #{remote} #{path}") or raise "Unable to clone into #{path}"
|
66
65
|
self.add(path)
|
@@ -39,12 +39,14 @@ module Gitdocs
|
|
39
39
|
end
|
40
40
|
|
41
41
|
def add_path(path, opts = nil)
|
42
|
+
path = self.normalize_path(path)
|
42
43
|
path_opts = {:path => path}
|
43
44
|
path_opts.merge!(opts) if opts
|
44
45
|
Share.new(path_opts).save!
|
45
46
|
end
|
46
47
|
|
47
48
|
def remove_path(path)
|
49
|
+
path = self.normalize_path(path)
|
48
50
|
Share.where(:path => path).destroy_all
|
49
51
|
end
|
50
52
|
|
data/lib/gitdocs/server.rb
CHANGED
@@ -38,8 +38,6 @@ module Gitdocs
|
|
38
38
|
gd = gds[idx]
|
39
39
|
halt 404 if gd.nil?
|
40
40
|
file_path = request.path_info
|
41
|
-
file_path = request.path_info.gsub('/save', '') if save_file = request.path_info =~ %r{/save$}
|
42
|
-
file_path = request.path_info.gsub('/upload', '') if upload_file = request.path_info =~ %r{/upload$}
|
43
41
|
file_ext = File.extname(file_path)
|
44
42
|
expanded_path = File.expand_path(".#{file_path}", gd.root)
|
45
43
|
halt 400 unless expanded_path[/^#{Regexp.quote(gd.root)}/]
|
@@ -48,10 +46,10 @@ module Gitdocs
|
|
48
46
|
parent = nil if parent == '.'
|
49
47
|
locals = {:idx => idx, :parent => parent, :root => gd.root, :file_path => expanded_path}
|
50
48
|
mode, mime = request.params['mode'], `file -I #{expanded_path}`.strip
|
51
|
-
if
|
49
|
+
if mode == 'save' # Saving
|
52
50
|
File.open(expanded_path, 'w') { |f| f.print request.params['data'] }
|
53
51
|
redirect! "/" + idx.to_s + file_path
|
54
|
-
elsif
|
52
|
+
elsif mode == 'upload' # Uploading
|
55
53
|
halt 404 unless file = request.params['file']
|
56
54
|
tempfile, filename = file[:tempfile], file[:filename]
|
57
55
|
FileUtils.mv(tempfile.path, File.expand_path(filename, expanded_path))
|
data/lib/gitdocs/version.rb
CHANGED
data/lib/gitdocs/views/dir.haml
CHANGED
@@ -23,7 +23,7 @@
|
|
23
23
|
%input{:type => 'text', :name => "path", :class => "edit" }
|
24
24
|
%input{:type => 'submit', :value => "New file" }
|
25
25
|
|
26
|
-
%form.upload{ :method => "post", :enctype => "multipart/form-data", :action => "/#{idx}#{request.path_info}
|
26
|
+
%form.upload{ :method => "post", :enctype => "multipart/form-data", :action => "/#{idx}#{request.path_info}?mode=upload" }
|
27
27
|
%p Upload a file to this directory
|
28
28
|
%input{:type => 'file', :value => "Select a file", :name => "file", :class => "uploader" }
|
29
29
|
%input{:type => 'submit', :value => "Upload file"}
|
data/lib/gitdocs/views/edit.haml
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
%a{ :href => "?mode=edit" } (edit)
|
14
14
|
%a{ :href => "?mode=delete", :onclick => "javascript:return confirm('Are you sure?')" } (delete)
|
15
15
|
|
16
|
-
%form{ :class => "edit", :action => "/#{idx}#{request.path_info}
|
16
|
+
%form{ :class => "edit", :action => "/#{idx}#{request.path_info}?mode=save", :method => "post", :style => "display:none;" }
|
17
17
|
#editor
|
18
18
|
%textarea{ :id => 'data', :name => "data" }= preserve contents
|
19
19
|
%input{ :type => 'submit', :value => "Save" }
|
data/test/configuration_test.rb
CHANGED
@@ -14,7 +14,7 @@ describe "gitdocs configuration" do
|
|
14
14
|
end
|
15
15
|
|
16
16
|
it "can have a path added" do
|
17
|
-
@config.add_path('/my/path')
|
17
|
+
@config.add_path('/my/../my/path') # normalized test
|
18
18
|
assert_equal "/my/path", @config.shares.first.path
|
19
19
|
assert_equal 15.0, @config.shares.first.polling_interval
|
20
20
|
end
|
@@ -22,7 +22,7 @@ describe "gitdocs configuration" do
|
|
22
22
|
it "can have a path removed" do
|
23
23
|
@config.add_path('/my/path')
|
24
24
|
@config.add_path('/my/path/2')
|
25
|
-
@config.remove_path('/my/path/2')
|
25
|
+
@config.remove_path('/my/../my/path/2') # normalized test
|
26
26
|
assert_equal ["/my/path"], @config.shares.map(&:path)
|
27
27
|
end
|
28
28
|
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: gitdocs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.3.
|
5
|
+
version: 0.3.2
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Josh Hull
|
@@ -11,7 +11,7 @@ autorequire:
|
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
13
|
|
14
|
-
date: 2011-12-
|
14
|
+
date: 2011-12-06 00:00:00 -08:00
|
15
15
|
default_executable:
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|