sharepoint-ruby 0.1.2 → 0.2.1
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.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/lib/sharepoint-files.rb +2 -2
- data/lib/sharepoint-lists.rb +7 -3
- data/lib/sharepoint-object.rb +3 -3
- data/lib/sharepoint-ruby.rb +4 -3
- metadata +6 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b395db257ebda33c64b88dbd20a458d93029e062346e9761dbeb1c5783e60ae8
|
4
|
+
data.tar.gz: be1fde7c525cc0b28905bd40d98914528142d3ef4a14e345e73cc376aff0d224
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cb0514576fad6f8727632ff7adc2170f635f43420bd54122cb88040309730096b1325d359c9e49736cd254096c996b450e937f7ff650ff49f29fdbcda8fa033f
|
7
|
+
data.tar.gz: ffb84d515c7163fffb3fd70869175197d484f381d59dac264486e98b35cadc21821e420bdcb526b48bceff6efe71f9ddbb8e3253508b00812d363553aadfb623
|
data/README.md
CHANGED
@@ -12,7 +12,7 @@ require 'sharepoint-ruby'
|
|
12
12
|
site = Sharepoint::Site.new 'mysite.sharepoint.com', 'server-relative-site-url'
|
13
13
|
site.session.authenticate 'mylogin', 'mypassword'
|
14
14
|
|
15
|
-
blog = Sharepoint::Site.new 'mytenant.sharepoint.com', '
|
15
|
+
blog = Sharepoint::Site.new 'mytenant.sharepoint.com', 'blog', prefix: "sites"
|
16
16
|
blog.session.authenticate 'user', 'pwd'
|
17
17
|
lists = blog.lists
|
18
18
|
for l in lists
|
@@ -98,7 +98,7 @@ The `copy` method can duplicate an existing object. If you send it a Sharepoint:
|
|
98
98
|
Some of the properties of the OData object are 'deferred', which means that the property only provides a link to a ressource that you would have to get for yourself.
|
99
99
|
Not with the sharepoint-ruby gem however: the first time you try to access a deferred property, the object will on it's own go look for the corresponding remote ressource: the result will be stored for later uses, and then be returned to you.
|
100
100
|
|
101
|
-
### Modifying Sharepoint's
|
101
|
+
### Modifying Sharepoint's resources
|
102
102
|
The Sharepoint REST API provides us with methods to create, update or delete resources. In the Sharepoint::Object, these behaviours are implemented through the save and delete methods.
|
103
103
|
|
104
104
|
##### Updating objects
|
data/lib/sharepoint-files.rb
CHANGED
@@ -13,11 +13,11 @@ module Sharepoint
|
|
13
13
|
method :recycle
|
14
14
|
|
15
15
|
def file_from_name name
|
16
|
-
@site.query :get, "#{__metadata['uri']}/files/getbyurl('#{
|
16
|
+
@site.query :get, "#{__metadata['uri']}/files/getbyurl('#{CGI.escape(name.to_s)}')"
|
17
17
|
end
|
18
18
|
|
19
19
|
def add_file name, content
|
20
|
-
uri = "#{__metadata['uri']}/files/add(overwrite=true,url='#{
|
20
|
+
uri = "#{__metadata['uri']}/files/add(overwrite=true,url='#{CGI.escape(name.to_s)}')"
|
21
21
|
@site.query :post, uri, content
|
22
22
|
end
|
23
23
|
|
data/lib/sharepoint-lists.rb
CHANGED
@@ -157,7 +157,11 @@ module Sharepoint
|
|
157
157
|
has_options = false
|
158
158
|
options.each do |key,value|
|
159
159
|
url += if has_options then '&' else '?' end
|
160
|
-
|
160
|
+
<<<<<<< Updated upstream
|
161
|
+
url += "$#{key}=#{CGI.escape value.to_s}"
|
162
|
+
=======
|
163
|
+
url += "$#{key}=#{CGI::escape value.to_s}"
|
164
|
+
>>>>>>> Stashed changes
|
161
165
|
has_options = true
|
162
166
|
end
|
163
167
|
url
|
@@ -214,7 +218,7 @@ module Sharepoint
|
|
214
218
|
belongs_to :view
|
215
219
|
|
216
220
|
def add_view_field name
|
217
|
-
@site.query :post, "#{__metadata['uri']}/addviewfield('#{URI.
|
221
|
+
@site.query :post, "#{__metadata['uri']}/addviewfield('#{URI::Parser.new.escape name}')"
|
218
222
|
end
|
219
223
|
|
220
224
|
def move_view_field_to name, index
|
@@ -229,7 +233,7 @@ module Sharepoint
|
|
229
233
|
end
|
230
234
|
|
231
235
|
def remove_view_field name
|
232
|
-
@site.query :post, "#{__metadata['uri']}/removeviewfield('#{URI.
|
236
|
+
@site.query :post, "#{__metadata['uri']}/removeviewfield('#{URI::Parser.new.escape name}')"
|
233
237
|
end
|
234
238
|
end
|
235
239
|
end
|
data/lib/sharepoint-object.rb
CHANGED
@@ -44,7 +44,7 @@ module Sharepoint
|
|
44
44
|
action += ',' unless params.keys.first == key
|
45
45
|
action += key + '='
|
46
46
|
action += (if (value.class < String) or (value.class < Symbol)
|
47
|
-
"'#{(URI.
|
47
|
+
"'#{(URI::Parser.new.escape value.gsub("'", %q(\\\')))}'"
|
48
48
|
else
|
49
49
|
value
|
50
50
|
end)
|
@@ -70,7 +70,7 @@ module Sharepoint
|
|
70
70
|
if id =~ /^[a-z0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}$/
|
71
71
|
self.query :get, "#{options[:getter]}(guid'#{id}')"
|
72
72
|
else
|
73
|
-
self.query :get, "#{options[:get_from_name]}('#{URI.
|
73
|
+
self.query :get, "#{options[:get_from_name]}('#{URI::Parser.new.escape id}')"
|
74
74
|
end
|
75
75
|
end
|
76
76
|
end
|
@@ -83,7 +83,7 @@ module Sharepoint
|
|
83
83
|
resource.site.query :get, "#{resource.__metadata['uri']}/#{method_name}"
|
84
84
|
end
|
85
85
|
define_singleton_method "get_from_#{resource_name}" do |resource, name|
|
86
|
-
resource.site.query :get, "#{resource.__metadata['uri']}/#{method_name}('#{URI.
|
86
|
+
resource.site.query :get, "#{resource.__metadata['uri']}/#{method_name}('#{URI::Parser.new.escape name}')"
|
87
87
|
end
|
88
88
|
define_method "create_uri" do
|
89
89
|
unless self.parent.nil?
|
data/lib/sharepoint-ruby.rb
CHANGED
@@ -13,10 +13,11 @@ module Sharepoint
|
|
13
13
|
attr_accessor :name
|
14
14
|
attr_accessor :verbose
|
15
15
|
|
16
|
-
def initialize server_url, site_name
|
16
|
+
def initialize server_url, site_name, prefix: "sites"
|
17
17
|
@server_url = server_url
|
18
18
|
@name = site_name
|
19
|
-
|
19
|
+
uri_prefix = unless prefix.empty? then prefix + '/' else '' end
|
20
|
+
@url = "#{@server_url}/#{uri_prefix}#{@name}"
|
20
21
|
@session = Session.new self
|
21
22
|
@web_context = nil
|
22
23
|
@protocol = 'https'
|
@@ -61,7 +62,7 @@ module Sharepoint
|
|
61
62
|
if method != :get
|
62
63
|
curl.headers["Content-Type"] = curl.headers["Accept"]
|
63
64
|
curl.headers["X-RequestDigest"] = form_digest unless @getting_form_digest == true
|
64
|
-
curl.headers["Authorization"] = "Bearer " + form_digest unless @getting_form_digest == true
|
65
|
+
curl.headers["Authorization"] = "Bearer " + form_digest unless @getting_form_digest == true
|
65
66
|
end
|
66
67
|
curl.verbose = @verbose
|
67
68
|
@session.send :curl, curl unless not @session.methods.include? :curl
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sharepoint-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Martin Moro
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: curb
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: '0.8'
|
20
20
|
- - "<="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.9.
|
22
|
+
version: 0.9.11
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: '0.8'
|
30
30
|
- - "<="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 0.9.
|
32
|
+
version: 0.9.11
|
33
33
|
description: Client for Sharepoint's REST API
|
34
34
|
email: michael@unetresgrossebite.com
|
35
35
|
executables: []
|
@@ -54,7 +54,7 @@ files:
|
|
54
54
|
- lib/soap/authenticate.xml.erb
|
55
55
|
homepage: https://github.com/Plaristote/sharepoint-ruby
|
56
56
|
licenses:
|
57
|
-
-
|
57
|
+
- 0BSD
|
58
58
|
metadata: {}
|
59
59
|
post_install_message:
|
60
60
|
rdoc_options: []
|
@@ -71,8 +71,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
71
71
|
- !ruby/object:Gem::Version
|
72
72
|
version: '0'
|
73
73
|
requirements: []
|
74
|
-
|
75
|
-
rubygems_version: 2.7.9
|
74
|
+
rubygems_version: 3.0.9
|
76
75
|
signing_key:
|
77
76
|
specification_version: 4
|
78
77
|
summary: sharepoint client
|