groupdocs 2.2.0 → 2.3.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.
Files changed (324) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +9 -9
  3. data/CHANGELOG.md +482 -477
  4. data/Gemfile +3 -3
  5. data/LICENSE.txt +21 -21
  6. data/README.md +94 -94
  7. data/Rakefile +9 -9
  8. data/examples/README.md +12 -12
  9. data/examples/api-samples/Gemfile +5 -5
  10. data/examples/api-samples/Gemfile.lock +49 -49
  11. data/examples/api-samples/README.md +23 -23
  12. data/examples/api-samples/public/css/style.css +229 -229
  13. data/examples/api-samples/public/docs/annotation-sample.html +167 -167
  14. data/examples/api-samples/public/docs/docco.css +500 -500
  15. data/examples/api-samples/public/docs/envelope-sample.html +374 -374
  16. data/examples/api-samples/public/docs/sample01.html +181 -181
  17. data/examples/api-samples/public/docs/sample02.html +199 -199
  18. data/examples/api-samples/public/docs/sample03.html +318 -318
  19. data/examples/api-samples/public/docs/sample04.html +217 -217
  20. data/examples/api-samples/public/docs/sample05.html +296 -296
  21. data/examples/api-samples/public/docs/sample06.html +347 -347
  22. data/examples/api-samples/public/docs/sample07.html +209 -209
  23. data/examples/api-samples/public/docs/sample08.html +277 -277
  24. data/examples/api-samples/public/docs/sample09.html +314 -314
  25. data/examples/api-samples/public/docs/sample10.html +270 -270
  26. data/examples/api-samples/public/docs/sample11.html +462 -462
  27. data/examples/api-samples/public/docs/sample12.html +199 -199
  28. data/examples/api-samples/public/docs/sample13.html +201 -201
  29. data/examples/api-samples/public/docs/sample14.html +204 -204
  30. data/examples/api-samples/public/docs/sample15.html +182 -182
  31. data/examples/api-samples/public/docs/sample16.html +234 -234
  32. data/examples/api-samples/public/docs/sample17.html +309 -309
  33. data/examples/api-samples/public/docs/sample18.html +721 -721
  34. data/examples/api-samples/public/docs/sample19.html +631 -631
  35. data/examples/api-samples/public/docs/sample20.html +230 -230
  36. data/examples/api-samples/public/docs/sample21.html +790 -790
  37. data/examples/api-samples/public/docs/sample22.html +408 -408
  38. data/examples/api-samples/public/docs/sample25.html +550 -550
  39. data/examples/api-samples/public/templates/base-simple_source.html +191 -191
  40. data/examples/api-samples/public/templates/testdocument.html +100 -100
  41. data/examples/api-samples/public/templates/welcome.htm +137 -137
  42. data/examples/api-samples/samples/annotation-sample.rb +56 -56
  43. data/examples/api-samples/samples/envelope-sample.rb +133 -133
  44. data/examples/api-samples/samples/sample01.rb +44 -44
  45. data/examples/api-samples/samples/sample02.rb +50 -50
  46. data/examples/api-samples/samples/sample03.rb +79 -79
  47. data/examples/api-samples/samples/sample04.rb +54 -54
  48. data/examples/api-samples/samples/sample05.rb +83 -83
  49. data/examples/api-samples/samples/sample06.rb +86 -86
  50. data/examples/api-samples/samples/sample07.rb +59 -59
  51. data/examples/api-samples/samples/sample08.rb +76 -76
  52. data/examples/api-samples/samples/sample09.rb +85 -85
  53. data/examples/api-samples/samples/sample10.rb +70 -70
  54. data/examples/api-samples/samples/sample11.rb +132 -132
  55. data/examples/api-samples/samples/sample12.rb +48 -48
  56. data/examples/api-samples/samples/sample13.rb +49 -49
  57. data/examples/api-samples/samples/sample14.rb +54 -54
  58. data/examples/api-samples/samples/sample15.rb +43 -43
  59. data/examples/api-samples/samples/sample16.rb +57 -57
  60. data/examples/api-samples/samples/sample17.rb +70 -70
  61. data/examples/api-samples/samples/sample18.rb +190 -190
  62. data/examples/api-samples/samples/sample19.rb +188 -188
  63. data/examples/api-samples/samples/sample20.rb +68 -68
  64. data/examples/api-samples/samples/sample21.rb +212 -212
  65. data/examples/api-samples/samples/sample22.rb +109 -109
  66. data/examples/api-samples/samples/sample25.rb +127 -127
  67. data/examples/api-samples/views/_others_samples.haml +233 -233
  68. data/examples/api-samples/views/annotation_sample.haml +63 -63
  69. data/examples/api-samples/views/envelope_sample.haml +72 -72
  70. data/examples/api-samples/views/index.haml +235 -235
  71. data/examples/api-samples/views/layout.haml +3 -3
  72. data/examples/api-samples/views/sample01.haml +63 -63
  73. data/examples/api-samples/views/sample02.haml +52 -52
  74. data/examples/api-samples/views/sample03.haml +87 -87
  75. data/examples/api-samples/views/sample04.haml +55 -55
  76. data/examples/api-samples/views/sample05.haml +86 -86
  77. data/examples/api-samples/views/sample06.haml +58 -58
  78. data/examples/api-samples/views/sample07.haml +52 -52
  79. data/examples/api-samples/views/sample08.haml +100 -100
  80. data/examples/api-samples/views/sample09.haml +95 -95
  81. data/examples/api-samples/views/sample10.haml +93 -93
  82. data/examples/api-samples/views/sample11.haml +140 -140
  83. data/examples/api-samples/views/sample12.haml +68 -68
  84. data/examples/api-samples/views/sample13.haml +64 -64
  85. data/examples/api-samples/views/sample14.haml +60 -60
  86. data/examples/api-samples/views/sample15.haml +51 -51
  87. data/examples/api-samples/views/sample16.haml +50 -50
  88. data/examples/api-samples/views/sample17.haml +54 -54
  89. data/examples/api-samples/views/sample18.haml +143 -143
  90. data/examples/api-samples/views/sample19.haml +92 -92
  91. data/examples/api-samples/views/sample20.haml +54 -54
  92. data/examples/api-samples/views/sample21.haml +123 -123
  93. data/examples/api-samples/views/sample22.haml +106 -106
  94. data/examples/api-samples/views/sample25.haml +101 -101
  95. data/examples/api-samples/views/sample31.haml +2 -2
  96. data/examples/api-samples/web.rb +20 -20
  97. data/examples/viewer/Gemfile +5 -5
  98. data/examples/viewer/app.rb +52 -52
  99. data/groupdocs.gemspec +31 -31
  100. data/lib/groupdocs.rb +62 -62
  101. data/lib/groupdocs/api.rb +6 -6
  102. data/lib/groupdocs/api/entity.rb +112 -112
  103. data/lib/groupdocs/api/helpers.rb +11 -11
  104. data/lib/groupdocs/api/helpers/access_mode_helper.rb +27 -27
  105. data/lib/groupdocs/api/helpers/access_rights_helper.rb +55 -55
  106. data/lib/groupdocs/api/helpers/accessor_helper.rb +30 -30
  107. data/lib/groupdocs/api/helpers/byte_flag_helper.rb +49 -49
  108. data/lib/groupdocs/api/helpers/credentials_helper.rb +35 -35
  109. data/lib/groupdocs/api/helpers/mime_helper.rb +21 -21
  110. data/lib/groupdocs/api/helpers/path_helper.rb +28 -28
  111. data/lib/groupdocs/api/helpers/rest_helper.rb +99 -99
  112. data/lib/groupdocs/api/helpers/signature_public_helper.rb +22 -22
  113. data/lib/groupdocs/api/helpers/status_helper.rb +27 -27
  114. data/lib/groupdocs/api/helpers/url_helper.rb +101 -101
  115. data/lib/groupdocs/api/request.rb +91 -91
  116. data/lib/groupdocs/datasource.rb +249 -249
  117. data/lib/groupdocs/datasource/field.rb +39 -39
  118. data/lib/groupdocs/document.rb +1550 -1550
  119. data/lib/groupdocs/document/annotation.rb +421 -421
  120. data/lib/groupdocs/document/annotation/reply.rb +173 -173
  121. data/lib/groupdocs/document/annotation/reviewer.rb +66 -66
  122. data/lib/groupdocs/document/change.rb +56 -56
  123. data/lib/groupdocs/document/field.rb +53 -53
  124. data/lib/groupdocs/document/metadata.rb +32 -32
  125. data/lib/groupdocs/document/rectangle.rb +18 -18
  126. data/lib/groupdocs/document/view.rb +36 -36
  127. data/lib/groupdocs/errors.rb +8 -8
  128. data/lib/groupdocs/job.rb +468 -468
  129. data/lib/groupdocs/questionnaire.rb +530 -530
  130. data/lib/groupdocs/questionnaire/collector.rb +335 -335
  131. data/lib/groupdocs/questionnaire/execution.rb +181 -181
  132. data/lib/groupdocs/questionnaire/page.rb +43 -43
  133. data/lib/groupdocs/questionnaire/question.rb +108 -108
  134. data/lib/groupdocs/questionnaire/question/answer.rb +15 -15
  135. data/lib/groupdocs/signature.rb +380 -380
  136. data/lib/groupdocs/signature/contact.rb +181 -181
  137. data/lib/groupdocs/signature/envelope.rb +747 -747
  138. data/lib/groupdocs/signature/envelope/log.rb +20 -20
  139. data/lib/groupdocs/signature/field.rb +286 -286
  140. data/lib/groupdocs/signature/field/location.rb +71 -71
  141. data/lib/groupdocs/signature/form.rb +804 -804
  142. data/lib/groupdocs/signature/list.rb +92 -92
  143. data/lib/groupdocs/signature/recipient.rb +79 -79
  144. data/lib/groupdocs/signature/role.rb +54 -54
  145. data/lib/groupdocs/signature/shared.rb +6 -6
  146. data/lib/groupdocs/signature/shared/document_methods.rb +158 -158
  147. data/lib/groupdocs/signature/shared/entity_fields.rb +76 -76
  148. data/lib/groupdocs/signature/shared/entity_methods.rb +144 -144
  149. data/lib/groupdocs/signature/shared/field_methods.rb +354 -354
  150. data/lib/groupdocs/signature/shared/recipient_methods.rb +75 -75
  151. data/lib/groupdocs/signature/shared/resource_methods.rb +65 -65
  152. data/lib/groupdocs/signature/template.rb +124 -124
  153. data/lib/groupdocs/storage.rb +44 -44
  154. data/lib/groupdocs/storage/file.rb +432 -432
  155. data/lib/groupdocs/storage/folder.rb +288 -288
  156. data/lib/groupdocs/storage/package.rb +48 -48
  157. data/lib/groupdocs/storage/provider.rb +32 -32
  158. data/lib/groupdocs/subscription.rb +323 -323
  159. data/lib/groupdocs/subscription/limit.rb +20 -20
  160. data/lib/groupdocs/user.rb +955 -930
  161. data/lib/groupdocs/version.rb +3 -3
  162. data/spec/groupdocs/api/entity_spec.rb +55 -55
  163. data/spec/groupdocs/api/helpers/access_mode_helper_spec.rb +21 -21
  164. data/spec/groupdocs/api/helpers/access_rights_helper_spec.rb +43 -43
  165. data/spec/groupdocs/api/helpers/accessor_helper_spec.rb +16 -16
  166. data/spec/groupdocs/api/helpers/byte_flag_helper_spec.rb +23 -23
  167. data/spec/groupdocs/api/helpers/credentials_helpers_spec.rb +48 -48
  168. data/spec/groupdocs/api/helpers/mime_helper_spec.rb +16 -16
  169. data/spec/groupdocs/api/helpers/path_helper_spec.rb +15 -15
  170. data/spec/groupdocs/api/helpers/rest_helper_spec.rb +161 -161
  171. data/spec/groupdocs/api/helpers/signature_public_helper_spec.rb +21 -21
  172. data/spec/groupdocs/api/helpers/status_helper_spec.rb +22 -22
  173. data/spec/groupdocs/api/helpers/url_helper_spec.rb +112 -112
  174. data/spec/groupdocs/api/request_spec.rb +112 -112
  175. data/spec/groupdocs/datasource/field_spec.rb +29 -29
  176. data/spec/groupdocs/datasource_spec.rb +145 -145
  177. data/spec/groupdocs/document/annotation/reply_spec.rb +154 -154
  178. data/spec/groupdocs/document/annotation/reviewer_spec.rb +51 -51
  179. data/spec/groupdocs/document/annotation_spec.rb +234 -234
  180. data/spec/groupdocs/document/change_spec.rb +39 -39
  181. data/spec/groupdocs/document/field_spec.rb +28 -28
  182. data/spec/groupdocs/document/metadata_spec.rb +21 -21
  183. data/spec/groupdocs/document/rectangle_spec.rb +14 -14
  184. data/spec/groupdocs/document/view_spec.rb +33 -33
  185. data/spec/groupdocs/document_spec.rb +859 -859
  186. data/spec/groupdocs/errors_spec.rb +7 -7
  187. data/spec/groupdocs/job_spec.rb +323 -323
  188. data/spec/groupdocs/questionnaire/collector_spec.rb +197 -197
  189. data/spec/groupdocs/questionnaire/execution_spec.rb +162 -162
  190. data/spec/groupdocs/questionnaire/page_spec.rb +47 -47
  191. data/spec/groupdocs/questionnaire/question/answer_spec.rb +9 -9
  192. data/spec/groupdocs/questionnaire/question_spec.rb +75 -75
  193. data/spec/groupdocs/questionnaire_spec.rb +295 -295
  194. data/spec/groupdocs/signature/contact_spec.rb +142 -142
  195. data/spec/groupdocs/signature/envelope/log_spec.rb +15 -15
  196. data/spec/groupdocs/signature/envelope_spec.rb +384 -384
  197. data/spec/groupdocs/signature/field/location_spec.rb +40 -40
  198. data/spec/groupdocs/signature/field_spec.rb +235 -235
  199. data/spec/groupdocs/signature/form_spec.rb +205 -205
  200. data/spec/groupdocs/signature/list_spec.rb +87 -87
  201. data/spec/groupdocs/signature/recipient_spec.rb +26 -26
  202. data/spec/groupdocs/signature/role_spec.rb +47 -47
  203. data/spec/groupdocs/signature/template_spec.rb +80 -80
  204. data/spec/groupdocs/signature_spec.rb +194 -194
  205. data/spec/groupdocs/storage/file_spec.rb +303 -303
  206. data/spec/groupdocs/storage/folder_spec.rb +270 -270
  207. data/spec/groupdocs/storage/package_spec.rb +38 -38
  208. data/spec/groupdocs/storage/provider_spec.rb +21 -21
  209. data/spec/groupdocs/storage_spec.rb +27 -27
  210. data/spec/groupdocs/subscription/limit_spec.rb +16 -16
  211. data/spec/groupdocs/subscription_spec.rb +74 -74
  212. data/spec/groupdocs/user_spec.rb +257 -257
  213. data/spec/groupdocs_spec.rb +63 -63
  214. data/spec/spec_helper.rb +73 -73
  215. data/spec/support/json/annotation_access_set.json +11 -11
  216. data/spec/support/json/annotation_collaborators_get.json +16 -16
  217. data/spec/support/json/annotation_collaborators_set.json +16 -16
  218. data/spec/support/json/annotation_create.json +12 -12
  219. data/spec/support/json/annotation_list.json +32 -32
  220. data/spec/support/json/annotation_marker_move.json +10 -10
  221. data/spec/support/json/annotation_move.json +8 -8
  222. data/spec/support/json/annotation_remove.json +9 -9
  223. data/spec/support/json/annotation_replies_create.json +9 -9
  224. data/spec/support/json/annotation_replies_get.json +25 -25
  225. data/spec/support/json/annotation_reviewers_get.json +18 -18
  226. data/spec/support/json/comparison_changes.json +46 -46
  227. data/spec/support/json/comparison_compare.json +8 -8
  228. data/spec/support/json/comparison_document.json +10 -10
  229. data/spec/support/json/contact_add.json +12 -12
  230. data/spec/support/json/contacts_get.json +19 -19
  231. data/spec/support/json/contacts_import.json +8 -8
  232. data/spec/support/json/datasource_add.json +8 -8
  233. data/spec/support/json/datasource_get.json +22 -22
  234. data/spec/support/json/datasource_remove.json +8 -8
  235. data/spec/support/json/datasource_update.json +8 -8
  236. data/spec/support/json/delete_account.json +9 -9
  237. data/spec/support/json/document_access_info_get.json +14 -14
  238. data/spec/support/json/document_convert.json +8 -8
  239. data/spec/support/json/document_datasource.json +10 -10
  240. data/spec/support/json/document_fields.json +34 -34
  241. data/spec/support/json/document_formats.json +8 -8
  242. data/spec/support/json/document_metadata.json +15 -15
  243. data/spec/support/json/document_page_images_get.json +20 -20
  244. data/spec/support/json/document_questionnaire_create.json +9 -9
  245. data/spec/support/json/document_questionnaires.json +23 -23
  246. data/spec/support/json/document_sharers_remove.json +8 -8
  247. data/spec/support/json/document_sharers_set.json +16 -16
  248. data/spec/support/json/document_thumbnails.json +24 -24
  249. data/spec/support/json/document_views.json +32 -32
  250. data/spec/support/json/envelope_get.json +46 -46
  251. data/spec/support/json/envelope_logs.json +16 -16
  252. data/spec/support/json/envelope_recipient_add.json +26 -26
  253. data/spec/support/json/envelopes_all.json +48 -48
  254. data/spec/support/json/envelopes_resources.json +31 -31
  255. data/spec/support/json/file_compress.json +8 -8
  256. data/spec/support/json/file_copy.json +14 -14
  257. data/spec/support/json/file_delete.json +5 -5
  258. data/spec/support/json/file_move.json +14 -14
  259. data/spec/support/json/file_upload.json +8 -8
  260. data/spec/support/json/folder_create.json +8 -8
  261. data/spec/support/json/folder_delete.json +5 -5
  262. data/spec/support/json/folder_list.json +22 -22
  263. data/spec/support/json/folder_move.json +8 -8
  264. data/spec/support/json/folder_sharers_get.json +16 -16
  265. data/spec/support/json/folder_sharers_remove.json +8 -8
  266. data/spec/support/json/folder_sharers_set.json +16 -16
  267. data/spec/support/json/form_get.json +21 -21
  268. data/spec/support/json/forms_all.json +23 -23
  269. data/spec/support/json/job_add_url.json +8 -8
  270. data/spec/support/json/job_create.json +8 -8
  271. data/spec/support/json/job_documents.json +40 -40
  272. data/spec/support/json/job_file_add.json +8 -8
  273. data/spec/support/json/job_get.json +30 -30
  274. data/spec/support/json/job_update.json +7 -7
  275. data/spec/support/json/jobs_get.json +58 -58
  276. data/spec/support/json/list_add.json +12 -12
  277. data/spec/support/json/lists_get.json +19 -19
  278. data/spec/support/json/package_create.json +7 -7
  279. data/spec/support/json/questionnaire_collector.json +17 -17
  280. data/spec/support/json/questionnaire_collectors.json +38 -38
  281. data/spec/support/json/questionnaire_collectors_add.json +10 -10
  282. data/spec/support/json/questionnaire_create.json +10 -10
  283. data/spec/support/json/questionnaire_datasources.json +26 -26
  284. data/spec/support/json/questionnaire_execution_add.json +9 -9
  285. data/spec/support/json/questionnaire_execution_status_set.json +8 -8
  286. data/spec/support/json/questionnaire_execution_update.json +8 -8
  287. data/spec/support/json/questionnaire_executions.json +28 -28
  288. data/spec/support/json/questionnaire_get.json +17 -17
  289. data/spec/support/json/questionnaire_remove.json +8 -8
  290. data/spec/support/json/questionnaire_update.json +8 -8
  291. data/spec/support/json/questionnaires_get.json +40 -40
  292. data/spec/support/json/sign_documents.json +16 -16
  293. data/spec/support/json/signature_create.json +12 -12
  294. data/spec/support/json/signature_field_add.json +25 -25
  295. data/spec/support/json/signature_fields_get.json +27 -27
  296. data/spec/support/json/signature_roles_get.json +17 -17
  297. data/spec/support/json/signatures_get.json +19 -19
  298. data/spec/support/json/storage_info.json +10 -10
  299. data/spec/support/json/subscription_plan_get.json +9 -9
  300. data/spec/support/json/subscription_plans_get.json +17 -17
  301. data/spec/support/json/template_get.json +35 -35
  302. data/spec/support/json/template_get_documents.json +15 -15
  303. data/spec/support/json/template_get_recipients.json +20 -20
  304. data/spec/support/json/templates_all.json +37 -37
  305. data/spec/support/json/templates_get.json +21 -21
  306. data/spec/support/json/update_account.json +10 -10
  307. data/spec/support/json/user_area.json +67 -67
  308. data/spec/support/json/user_embed_key.json +38 -38
  309. data/spec/support/json/user_get_embed_key.json +67 -67
  310. data/spec/support/json/user_login.json +67 -67
  311. data/spec/support/json/user_profile_get.json +24 -24
  312. data/spec/support/json/user_providers.json +31 -31
  313. data/spec/support/json/user_roles.json +25 -25
  314. data/spec/support/json/user_users_get.json +27 -27
  315. data/spec/support/shared_examples/api/entity.rb +39 -39
  316. data/spec/support/shared_examples/api/helpers/access_mode_helper.rb +11 -11
  317. data/spec/support/shared_examples/api/helpers/status_helper.rb +11 -11
  318. data/spec/support/shared_examples/signature/shared/document_methods.rb +68 -68
  319. data/spec/support/shared_examples/signature/shared/entity_fields.rb +56 -56
  320. data/spec/support/shared_examples/signature/shared/entity_methods.rb +116 -116
  321. data/spec/support/shared_examples/signature/shared/field_methods.rb +220 -220
  322. data/spec/support/shared_examples/signature/shared/recipient_methods.rb +46 -46
  323. data/spec/support/shared_examples/signature/shared/resource_methods.rb +46 -46
  324. metadata +35 -55
@@ -1,75 +1,75 @@
1
- module GroupDocs
2
- class Signature
3
- #
4
- # Envelope and template entities share the same set of recipient methods.
5
- #
6
- # @see GroupDocs::Signature::Envelope
7
- # @see GroupDocs::Signature::Template
8
- #
9
- module RecipientMethods
10
-
11
- include Api::Helpers::SignaturePublic
12
-
13
- #
14
- # Returns recipients array.
15
- #
16
- # roles = GroupDocs::Signature::Role.get!
17
- # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
18
- # recipient = GroupDocs::Signature::Recipient.new
19
- # recipient.nickname = 'John Smith'
20
- # recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
21
- # template.add_recipient! recipient
22
- # template.recipients!
23
- #
24
- # @param [Hash] options
25
- # @option options [Boolean] :public Defaults to false
26
- # @param [Hash] access Access credentials
27
- # @option access [String] :client_id
28
- # @option access [String] :private_key
29
- # @return [Array<GroupDocs::Signature::Recipient>]
30
- #
31
- def recipients!(options = {}, access = {})
32
- json = Api::Request.new do |request|
33
- request[:access] = access
34
- request[:method] = :GET
35
- request[:path] = "/signature/#{client_id(options[:public])}/#{class_name.pluralize}/#{id}/recipients"
36
- end.execute!
37
-
38
- json[:recipients].map do |recipient|
39
- Signature::Recipient.new(recipient)
40
- end
41
- end
42
-
43
- #
44
- # Removes recipient.
45
- #
46
- # @example
47
- # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
48
- # recipient = template.recipients!.first
49
- # template.remove_recipient! recipient
50
- #
51
- # @example
52
- # envelope = GroupDocs::Signature::Envelope.get!("g94h5g84hj9g4gf23i40j")
53
- # recipient = envelope.recipients!.first
54
- # envelope.remove_recipient! recipient
55
- #
56
- # @param [GroupDocs::Signature::Recipient] recipient
57
- # @param [Hash] access Access credentials
58
- # @option access [String] :client_id
59
- # @option access [String] :private_key
60
- # @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient
61
- #
62
- def remove_recipient!(recipient, access = {})
63
- recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
64
- "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"
65
-
66
- Api::Request.new do |request|
67
- request[:access] = access
68
- request[:method] = :DELETE
69
- request[:path] = "/signature/{{client_id}}/#{class_name.pluralize}/#{id}/recipients/#{recipient.id}"
70
- end.execute!
71
- end
72
-
73
- end # RecipientMethods
74
- end # Signature
75
- end # GroupDocs
1
+ module GroupDocs
2
+ class Signature
3
+ #
4
+ # Envelope and template entities share the same set of recipient methods.
5
+ #
6
+ # @see GroupDocs::Signature::Envelope
7
+ # @see GroupDocs::Signature::Template
8
+ #
9
+ module RecipientMethods
10
+
11
+ include Api::Helpers::SignaturePublic
12
+
13
+ #
14
+ # Returns recipients array.
15
+ #
16
+ # roles = GroupDocs::Signature::Role.get!
17
+ # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
18
+ # recipient = GroupDocs::Signature::Recipient.new
19
+ # recipient.nickname = 'John Smith'
20
+ # recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
21
+ # template.add_recipient! recipient
22
+ # template.recipients!
23
+ #
24
+ # @param [Hash] options
25
+ # @option options [Boolean] :public Defaults to false
26
+ # @param [Hash] access Access credentials
27
+ # @option access [String] :client_id
28
+ # @option access [String] :private_key
29
+ # @return [Array<GroupDocs::Signature::Recipient>]
30
+ #
31
+ def recipients!(options = {}, access = {})
32
+ json = Api::Request.new do |request|
33
+ request[:access] = access
34
+ request[:method] = :GET
35
+ request[:path] = "/signature/#{client_id(options[:public])}/#{class_name.pluralize}/#{id}/recipients"
36
+ end.execute!
37
+
38
+ json[:recipients].map do |recipient|
39
+ Signature::Recipient.new(recipient)
40
+ end
41
+ end
42
+
43
+ #
44
+ # Removes recipient.
45
+ #
46
+ # @example
47
+ # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
48
+ # recipient = template.recipients!.first
49
+ # template.remove_recipient! recipient
50
+ #
51
+ # @example
52
+ # envelope = GroupDocs::Signature::Envelope.get!("g94h5g84hj9g4gf23i40j")
53
+ # recipient = envelope.recipients!.first
54
+ # envelope.remove_recipient! recipient
55
+ #
56
+ # @param [GroupDocs::Signature::Recipient] recipient
57
+ # @param [Hash] access Access credentials
58
+ # @option access [String] :client_id
59
+ # @option access [String] :private_key
60
+ # @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient
61
+ #
62
+ def remove_recipient!(recipient, access = {})
63
+ recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
64
+ "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"
65
+
66
+ Api::Request.new do |request|
67
+ request[:access] = access
68
+ request[:method] = :DELETE
69
+ request[:path] = "/signature/{{client_id}}/#{class_name.pluralize}/#{id}/recipients/#{recipient.id}"
70
+ end.execute!
71
+ end
72
+
73
+ end # RecipientMethods
74
+ end # Signature
75
+ end # GroupDocs
@@ -1,65 +1,65 @@
1
- module GroupDocs
2
- class Signature
3
- #
4
- # Envelope and template entities share the same set of resource methods.
5
- #
6
- # @see GroupDocs::Signature::Envelope
7
- # @see GroupDocs::Signature::Form
8
- # @see GroupDocs::Signature::Template
9
- #
10
- module ResourceMethods
11
-
12
- #
13
- # Returns a list of resources.
14
- #
15
- # @example
16
- # resources = GroupDocs::Signature::Envelope.resources!
17
- # resources[:documents]
18
- # #=> [#<GroupDocs::Document>]
19
- # resources[:recipients]
20
- # #=> [#<GroupDocs::Signature::Recipient>]
21
- # resources[:dates]
22
- # #=> ["2012-09-25T00:00:00.0000000"]
23
- #
24
- # @param [Hash] options Hash of options
25
- # @option options [Array<Integer>] :status_ids List of status identifiers to filter. Doesn't work for template
26
- # @param [Hash] access Access credentials
27
- # @option access [String] :client_id
28
- # @option access [String] :private_key
29
- # @return [Hash]
30
- #
31
- def resources!(options = {}, access = {})
32
- class_name = self.name.split('::').last.downcase
33
-
34
- # filter doesn't work for template
35
- unless class_name == 'template'
36
- ids = options.delete(:status_ids)
37
- options[:statusIds] = ids.join(?,) if ids
38
- end
39
-
40
- api = Api::Request.new do |request|
41
- request[:access] = access
42
- request[:method] = :GET
43
- request[:path] = "/signature/{{client_id}}/#{class_name}s/resources"
44
- end
45
- api.add_params(options)
46
- json = api.execute!
47
-
48
- resources = {}
49
- json.each do |key, value|
50
- resources[key] = case key
51
- when :documents
52
- value.map { |doc| Document.new(:file => Storage::File.new(doc)) }
53
- when :recipients
54
- value.map { |recipient| Signature::Recipient.new(recipient) }
55
- else
56
- value
57
- end
58
- end
59
-
60
- resources
61
- end
62
-
63
- end # ResourceMethods
64
- end # Signature
65
- end # GroupDocs
1
+ module GroupDocs
2
+ class Signature
3
+ #
4
+ # Envelope and template entities share the same set of resource methods.
5
+ #
6
+ # @see GroupDocs::Signature::Envelope
7
+ # @see GroupDocs::Signature::Form
8
+ # @see GroupDocs::Signature::Template
9
+ #
10
+ module ResourceMethods
11
+
12
+ #
13
+ # Returns a list of resources.
14
+ #
15
+ # @example
16
+ # resources = GroupDocs::Signature::Envelope.resources!
17
+ # resources[:documents]
18
+ # #=> [#<GroupDocs::Document>]
19
+ # resources[:recipients]
20
+ # #=> [#<GroupDocs::Signature::Recipient>]
21
+ # resources[:dates]
22
+ # #=> ["2012-09-25T00:00:00.0000000"]
23
+ #
24
+ # @param [Hash] options Hash of options
25
+ # @option options [Array<Integer>] :status_ids List of status identifiers to filter. Doesn't work for template
26
+ # @param [Hash] access Access credentials
27
+ # @option access [String] :client_id
28
+ # @option access [String] :private_key
29
+ # @return [Hash]
30
+ #
31
+ def resources!(options = {}, access = {})
32
+ class_name = self.name.split('::').last.downcase
33
+
34
+ # filter doesn't work for template
35
+ unless class_name == 'template'
36
+ ids = options.delete(:status_ids)
37
+ options[:statusIds] = ids.join(?,) if ids
38
+ end
39
+
40
+ api = Api::Request.new do |request|
41
+ request[:access] = access
42
+ request[:method] = :GET
43
+ request[:path] = "/signature/{{client_id}}/#{class_name}s/resources"
44
+ end
45
+ api.add_params(options)
46
+ json = api.execute!
47
+
48
+ resources = {}
49
+ json.each do |key, value|
50
+ resources[key] = case key
51
+ when :documents
52
+ value.map { |doc| Document.new(:file => Storage::File.new(doc)) }
53
+ when :recipients
54
+ value.map { |recipient| Signature::Recipient.new(recipient) }
55
+ else
56
+ value
57
+ end
58
+ end
59
+
60
+ resources
61
+ end
62
+
63
+ end # ResourceMethods
64
+ end # Signature
65
+ end # GroupDocs
@@ -1,124 +1,124 @@
1
- module GroupDocs
2
- class Signature::Template < Api::Entity
3
-
4
- include Signature::DocumentMethods
5
- include Signature::EntityFields
6
- include Signature::EntityMethods
7
- include Signature::FieldMethods
8
- include Signature::RecipientMethods
9
- extend Signature::ResourceMethods
10
-
11
- #
12
- # Changed in release 1.7.0
13
- #
14
- #
15
- # Returns a list of all templates.
16
- #
17
- # @param [Hash] options Hash of options
18
- # @option options [Integer] :page Page to start with
19
- # @option options [Integer] :records How many items to list
20
- # @option options [String] :documentGuid Fitler templates by document originalMD5
21
- # @option options [String] :recipientName Filter templates by recipient nickname
22
- # @option options [String] :name Filter templates by signatureTemplate name
23
- # @option options [String] :tag Filter templates by tag
24
- # @param [Hash] access Access credentials
25
- # @option access [String] :client_id
26
- # @option access [String] :private_key
27
- # @return [Array<GroupDocs::Signature::Template>]
28
- #
29
- def self.all!(options = {}, access = {})
30
- api = Api::Request.new do |request|
31
- request[:access] = access
32
- request[:method] = :GET
33
- request[:path] = '/signature/{{client_id}}/templates'
34
- end
35
- api.add_params(options)
36
- json = api.execute!
37
-
38
- json[:templates].map do |template|
39
- new(template)
40
- end
41
- end
42
-
43
- # @attr [Integer] templateExpireTime
44
- attr_accessor :templateExpireTime
45
-
46
- #added in release 1.7.0
47
- # @attr [Double] fieldsCount
48
- attr_accessor :fieldsCount
49
- # @attr [Boolean] enableTypedSignature
50
- attr_accessor :enableTypedSignature
51
- # @attr [Boolean] enableUploadedSignature
52
- attr_accessor :enableUploadedSignature
53
- # @attr [String] tags
54
- attr_accessor :tags
55
-
56
- # Human-readable accessors
57
- alias_accessor :template_expire_time, :templateExpireTime
58
-
59
- #
60
- # Adds recipient to template.
61
- #
62
- # @example
63
- # roles = GroupDocs::Signature::Role.get!
64
- # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
65
- # recipient = GroupDocs::Signature::Recipient.new
66
- # recipient.nickname = 'John Smith'
67
- # recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
68
- # template.add_recipient! recipient
69
- #
70
- # @param [GroupDocs::Signature::Recipient] recipient
71
- # @param [Hash] access Access credentials
72
- # @option access [String] :client_id
73
- # @option access [String] :private_key
74
- # @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient
75
- #
76
- def add_recipient!(recipient, access = {})
77
- recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
78
- "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"
79
-
80
- api = Api::Request.new do |request|
81
- request[:access] = access
82
- request[:method] = :POST
83
- request[:path] = "/signature/{{client_id}}/templates/#{id}/recipient"
84
- end
85
- api.add_params(:nickname => recipient.nickname,
86
- :role => recipient.role_id,
87
- :order => recipient.order)
88
- api.execute!
89
- end
90
-
91
- #
92
- # Modify recipient of template.
93
- #
94
- # @example
95
- # roles = GroupDocs::Signature::Role.get!
96
- # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
97
- # recipient = template.recipients!.first
98
- # recipient.nickname = 'John Smith'
99
- # recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
100
- # template.modify_recipient! recipient
101
- #
102
- # @param [GroupDocs::Signature::Recipient] recipient
103
- # @param [Hash] access Access credentials
104
- # @option access [String] :client_id
105
- # @option access [String] :private_key
106
- # @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient
107
- #
108
- def modify_recipient!(recipient, access = {})
109
- recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
110
- "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"
111
-
112
- api = Api::Request.new do |request|
113
- request[:access] = access
114
- request[:method] = :PUT
115
- request[:path] = "/signature/{{client_id}}/templates/#{id}/recipient/#{recipient.id}"
116
- end
117
- api.add_params(:nickname => recipient.nickname, :role => recipient.role_id , :order => recipient.order)
118
- api.execute!
119
- end
120
-
121
-
122
-
123
- end # Signature::Template
124
- end # GroupDocs
1
+ module GroupDocs
2
+ class Signature::Template < Api::Entity
3
+
4
+ include Signature::DocumentMethods
5
+ include Signature::EntityFields
6
+ include Signature::EntityMethods
7
+ include Signature::FieldMethods
8
+ include Signature::RecipientMethods
9
+ extend Signature::ResourceMethods
10
+
11
+ #
12
+ # Changed in release 1.7.0
13
+ #
14
+ #
15
+ # Returns a list of all templates.
16
+ #
17
+ # @param [Hash] options Hash of options
18
+ # @option options [Integer] :page Page to start with
19
+ # @option options [Integer] :records How many items to list
20
+ # @option options [String] :documentGuid Fitler templates by document originalMD5
21
+ # @option options [String] :recipientName Filter templates by recipient nickname
22
+ # @option options [String] :name Filter templates by signatureTemplate name
23
+ # @option options [String] :tag Filter templates by tag
24
+ # @param [Hash] access Access credentials
25
+ # @option access [String] :client_id
26
+ # @option access [String] :private_key
27
+ # @return [Array<GroupDocs::Signature::Template>]
28
+ #
29
+ def self.all!(options = {}, access = {})
30
+ api = Api::Request.new do |request|
31
+ request[:access] = access
32
+ request[:method] = :GET
33
+ request[:path] = '/signature/{{client_id}}/templates'
34
+ end
35
+ api.add_params(options)
36
+ json = api.execute!
37
+
38
+ json[:templates].map do |template|
39
+ new(template)
40
+ end
41
+ end
42
+
43
+ # @attr [Integer] templateExpireTime
44
+ attr_accessor :templateExpireTime
45
+
46
+ #added in release 1.7.0
47
+ # @attr [Double] fieldsCount
48
+ attr_accessor :fieldsCount
49
+ # @attr [Boolean] enableTypedSignature
50
+ attr_accessor :enableTypedSignature
51
+ # @attr [Boolean] enableUploadedSignature
52
+ attr_accessor :enableUploadedSignature
53
+ # @attr [String] tags
54
+ attr_accessor :tags
55
+
56
+ # Human-readable accessors
57
+ alias_accessor :template_expire_time, :templateExpireTime
58
+
59
+ #
60
+ # Adds recipient to template.
61
+ #
62
+ # @example
63
+ # roles = GroupDocs::Signature::Role.get!
64
+ # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
65
+ # recipient = GroupDocs::Signature::Recipient.new
66
+ # recipient.nickname = 'John Smith'
67
+ # recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
68
+ # template.add_recipient! recipient
69
+ #
70
+ # @param [GroupDocs::Signature::Recipient] recipient
71
+ # @param [Hash] access Access credentials
72
+ # @option access [String] :client_id
73
+ # @option access [String] :private_key
74
+ # @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient
75
+ #
76
+ def add_recipient!(recipient, access = {})
77
+ recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
78
+ "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"
79
+
80
+ api = Api::Request.new do |request|
81
+ request[:access] = access
82
+ request[:method] = :POST
83
+ request[:path] = "/signature/{{client_id}}/templates/#{id}/recipient"
84
+ end
85
+ api.add_params(:nickname => recipient.nickname,
86
+ :role => recipient.role_id,
87
+ :order => recipient.order)
88
+ api.execute!
89
+ end
90
+
91
+ #
92
+ # Modify recipient of template.
93
+ #
94
+ # @example
95
+ # roles = GroupDocs::Signature::Role.get!
96
+ # template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
97
+ # recipient = template.recipients!.first
98
+ # recipient.nickname = 'John Smith'
99
+ # recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
100
+ # template.modify_recipient! recipient
101
+ #
102
+ # @param [GroupDocs::Signature::Recipient] recipient
103
+ # @param [Hash] access Access credentials
104
+ # @option access [String] :client_id
105
+ # @option access [String] :private_key
106
+ # @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient
107
+ #
108
+ def modify_recipient!(recipient, access = {})
109
+ recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
110
+ "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"
111
+
112
+ api = Api::Request.new do |request|
113
+ request[:access] = access
114
+ request[:method] = :PUT
115
+ request[:path] = "/signature/{{client_id}}/templates/#{id}/recipient/#{recipient.id}"
116
+ end
117
+ api.add_params(:nickname => recipient.nickname, :role => recipient.role_id , :order => recipient.order)
118
+ api.execute!
119
+ end
120
+
121
+
122
+
123
+ end # Signature::Template
124
+ end # GroupDocs