sharepoint-ruby 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06a548cde4c7aede93cbc0f46fd90e5343faff5f64e4d18bb877cf4ce4bdbf7e
4
- data.tar.gz: 5b34f39ca74c0583f3dc5d509639f1dbe73972477aa2a259e6a741b7a0cbd649
3
+ metadata.gz: b6b2fcf02c32e07141b1461e3eb63efe5295f40a387d6c2edeb99f3ba780379f
4
+ data.tar.gz: b2c207588c72b8bd09b6ba06605f84e2d061370a27f33beb3252dc5a86f0b43d
5
5
  SHA512:
6
- metadata.gz: '0708c3ab5cf9238fd35617ebf07d634ef7ad0c766efec37f47ed4050938fc4aaecddc793b1a9ff4ce5e2ccc32cc0c829e650ad87ecf73abe3b5b1b6e4c857446'
7
- data.tar.gz: ef28ea0e00baee2d803a30a36fedbb8b48e03e637972033e002db56fd401f8af33214bc30fb525275f41cb0503e8e3f5833e06bb6bef3cf46df21c94b7dcfdfb
6
+ metadata.gz: 7df63bea112e3319e6fa6a51954ac0c65883fbafe2654ffdf4c277b3b2985bcc646ff8b4ef0ea3b2e47a2c2b49ee5e4fbde704b30a50719ba6b3352f5a0c3e2e
7
+ data.tar.gz: 92f19a6f216f6b76c064f44d4d09c56feffb57609b53ffd5824c1a57c1f3daea3e3093b0d5207d581bf32251dc808a4fa16585599a45da6c547a5c243349d6f0
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', 'sites/blog'
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 ressources
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
@@ -214,7 +214,7 @@ module Sharepoint
214
214
  belongs_to :view
215
215
 
216
216
  def add_view_field name
217
- @site.query :post, "#{__metadata['uri']}/addviewfield('#{URI.encode name}')"
217
+ @site.query :post, "#{__metadata['uri']}/addviewfield('#{URI::Parser.new.escape name}')"
218
218
  end
219
219
 
220
220
  def move_view_field_to name, index
@@ -229,7 +229,7 @@ module Sharepoint
229
229
  end
230
230
 
231
231
  def remove_view_field name
232
- @site.query :post, "#{__metadata['uri']}/removeviewfield('#{URI.encode name}')"
232
+ @site.query :post, "#{__metadata['uri']}/removeviewfield('#{URI::Parser.new.escape name}')"
233
233
  end
234
234
  end
235
235
  end
@@ -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.encode value.gsub("'", %q(\\\')))}'"
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.encode id}')"
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.encode name}')"
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?
@@ -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
- @url = "#{@server_url}/#{@name}"
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.2
4
+ version: 0.2.0
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: 2021-01-03 00:00:00.000000000 Z
11
+ date: 2021-12-04 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.10
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.10
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
- - BSD
57
+ - 0BSD
58
58
  metadata: {}
59
59
  post_install_message:
60
60
  rdoc_options: []