sharepoint-ruby 0.1.2 → 0.2.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06a548cde4c7aede93cbc0f46fd90e5343faff5f64e4d18bb877cf4ce4bdbf7e
4
- data.tar.gz: 5b34f39ca74c0583f3dc5d509639f1dbe73972477aa2a259e6a741b7a0cbd649
3
+ metadata.gz: 9b09509945fb753da4c1f2597c737b5c353ced9a87e72605214b2228e308439a
4
+ data.tar.gz: 10833837608fee969d5e93b4f2ab1927d6d10fe95d8254c43259fead1f192c86
5
5
  SHA512:
6
- metadata.gz: '0708c3ab5cf9238fd35617ebf07d634ef7ad0c766efec37f47ed4050938fc4aaecddc793b1a9ff4ce5e2ccc32cc0c829e650ad87ecf73abe3b5b1b6e4c857446'
7
- data.tar.gz: ef28ea0e00baee2d803a30a36fedbb8b48e03e637972033e002db56fd401f8af33214bc30fb525275f41cb0503e8e3f5833e06bb6bef3cf46df21c94b7dcfdfb
6
+ metadata.gz: 482595a17d39db9d1f2b37db8d77b2853a34c5d318144269e893a779a6a81437526d68aef7446b34fd34824c04702d56a79a9de9fc38fa23c654d5b01626ea8c
7
+ data.tar.gz: 4ca1f8442f82f0a95fa6329876e5c68db70934f0ea1b90d72660d8a7a23f58b0c0df4ba94f959ed1a8141966af916af9e3ca5d1a40150477e7b6a27378796c5e
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
@@ -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('#{URI::encode(name.to_s)}')"
16
+ @site.query :get, "#{__metadata['uri']}/files/getbyurl('#{URI::Parser.new.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='#{URI::encode(name.to_s)}')"
20
+ uri = "#{__metadata['uri']}/files/add(overwrite=true,url='#{URI::Parser.new.escape(name.to_s)}')"
21
21
  @site.query :post, uri, content
22
22
  end
23
23
 
@@ -157,7 +157,7 @@ module Sharepoint
157
157
  has_options = false
158
158
  options.each do |key,value|
159
159
  url += if has_options then '&' else '?' end
160
- url += "$#{key}=#{URI::encode value.to_s}"
160
+ url += "$#{key}=#{CGI.escape value.to_s}"
161
161
  has_options = true
162
162
  end
163
163
  url
@@ -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,35 +1,29 @@
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.4
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: 2024-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: curb
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.8'
20
- - - "<="
21
- - !ruby/object:Gem::Version
22
- version: 0.9.10
19
+ version: '0'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '0.8'
30
- - - "<="
24
+ - - ">="
31
25
  - !ruby/object:Gem::Version
32
- version: 0.9.10
26
+ version: '0'
33
27
  description: Client for Sharepoint's REST API
34
28
  email: michael@unetresgrossebite.com
35
29
  executables: []
@@ -54,7 +48,7 @@ files:
54
48
  - lib/soap/authenticate.xml.erb
55
49
  homepage: https://github.com/Plaristote/sharepoint-ruby
56
50
  licenses:
57
- - BSD
51
+ - 0BSD
58
52
  metadata: {}
59
53
  post_install_message:
60
54
  rdoc_options: []
@@ -71,8 +65,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
71
65
  - !ruby/object:Gem::Version
72
66
  version: '0'
73
67
  requirements: []
74
- rubyforge_project:
75
- rubygems_version: 2.7.9
68
+ rubygems_version: 3.3.7
76
69
  signing_key:
77
70
  specification_version: 4
78
71
  summary: sharepoint client