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.
- checksums.yaml +7 -0
- data/.travis.yml +9 -9
- data/CHANGELOG.md +482 -477
- data/Gemfile +3 -3
- data/LICENSE.txt +21 -21
- data/README.md +94 -94
- data/Rakefile +9 -9
- data/examples/README.md +12 -12
- data/examples/api-samples/Gemfile +5 -5
- data/examples/api-samples/Gemfile.lock +49 -49
- data/examples/api-samples/README.md +23 -23
- data/examples/api-samples/public/css/style.css +229 -229
- data/examples/api-samples/public/docs/annotation-sample.html +167 -167
- data/examples/api-samples/public/docs/docco.css +500 -500
- data/examples/api-samples/public/docs/envelope-sample.html +374 -374
- data/examples/api-samples/public/docs/sample01.html +181 -181
- data/examples/api-samples/public/docs/sample02.html +199 -199
- data/examples/api-samples/public/docs/sample03.html +318 -318
- data/examples/api-samples/public/docs/sample04.html +217 -217
- data/examples/api-samples/public/docs/sample05.html +296 -296
- data/examples/api-samples/public/docs/sample06.html +347 -347
- data/examples/api-samples/public/docs/sample07.html +209 -209
- data/examples/api-samples/public/docs/sample08.html +277 -277
- data/examples/api-samples/public/docs/sample09.html +314 -314
- data/examples/api-samples/public/docs/sample10.html +270 -270
- data/examples/api-samples/public/docs/sample11.html +462 -462
- data/examples/api-samples/public/docs/sample12.html +199 -199
- data/examples/api-samples/public/docs/sample13.html +201 -201
- data/examples/api-samples/public/docs/sample14.html +204 -204
- data/examples/api-samples/public/docs/sample15.html +182 -182
- data/examples/api-samples/public/docs/sample16.html +234 -234
- data/examples/api-samples/public/docs/sample17.html +309 -309
- data/examples/api-samples/public/docs/sample18.html +721 -721
- data/examples/api-samples/public/docs/sample19.html +631 -631
- data/examples/api-samples/public/docs/sample20.html +230 -230
- data/examples/api-samples/public/docs/sample21.html +790 -790
- data/examples/api-samples/public/docs/sample22.html +408 -408
- data/examples/api-samples/public/docs/sample25.html +550 -550
- data/examples/api-samples/public/templates/base-simple_source.html +191 -191
- data/examples/api-samples/public/templates/testdocument.html +100 -100
- data/examples/api-samples/public/templates/welcome.htm +137 -137
- data/examples/api-samples/samples/annotation-sample.rb +56 -56
- data/examples/api-samples/samples/envelope-sample.rb +133 -133
- data/examples/api-samples/samples/sample01.rb +44 -44
- data/examples/api-samples/samples/sample02.rb +50 -50
- data/examples/api-samples/samples/sample03.rb +79 -79
- data/examples/api-samples/samples/sample04.rb +54 -54
- data/examples/api-samples/samples/sample05.rb +83 -83
- data/examples/api-samples/samples/sample06.rb +86 -86
- data/examples/api-samples/samples/sample07.rb +59 -59
- data/examples/api-samples/samples/sample08.rb +76 -76
- data/examples/api-samples/samples/sample09.rb +85 -85
- data/examples/api-samples/samples/sample10.rb +70 -70
- data/examples/api-samples/samples/sample11.rb +132 -132
- data/examples/api-samples/samples/sample12.rb +48 -48
- data/examples/api-samples/samples/sample13.rb +49 -49
- data/examples/api-samples/samples/sample14.rb +54 -54
- data/examples/api-samples/samples/sample15.rb +43 -43
- data/examples/api-samples/samples/sample16.rb +57 -57
- data/examples/api-samples/samples/sample17.rb +70 -70
- data/examples/api-samples/samples/sample18.rb +190 -190
- data/examples/api-samples/samples/sample19.rb +188 -188
- data/examples/api-samples/samples/sample20.rb +68 -68
- data/examples/api-samples/samples/sample21.rb +212 -212
- data/examples/api-samples/samples/sample22.rb +109 -109
- data/examples/api-samples/samples/sample25.rb +127 -127
- data/examples/api-samples/views/_others_samples.haml +233 -233
- data/examples/api-samples/views/annotation_sample.haml +63 -63
- data/examples/api-samples/views/envelope_sample.haml +72 -72
- data/examples/api-samples/views/index.haml +235 -235
- data/examples/api-samples/views/layout.haml +3 -3
- data/examples/api-samples/views/sample01.haml +63 -63
- data/examples/api-samples/views/sample02.haml +52 -52
- data/examples/api-samples/views/sample03.haml +87 -87
- data/examples/api-samples/views/sample04.haml +55 -55
- data/examples/api-samples/views/sample05.haml +86 -86
- data/examples/api-samples/views/sample06.haml +58 -58
- data/examples/api-samples/views/sample07.haml +52 -52
- data/examples/api-samples/views/sample08.haml +100 -100
- data/examples/api-samples/views/sample09.haml +95 -95
- data/examples/api-samples/views/sample10.haml +93 -93
- data/examples/api-samples/views/sample11.haml +140 -140
- data/examples/api-samples/views/sample12.haml +68 -68
- data/examples/api-samples/views/sample13.haml +64 -64
- data/examples/api-samples/views/sample14.haml +60 -60
- data/examples/api-samples/views/sample15.haml +51 -51
- data/examples/api-samples/views/sample16.haml +50 -50
- data/examples/api-samples/views/sample17.haml +54 -54
- data/examples/api-samples/views/sample18.haml +143 -143
- data/examples/api-samples/views/sample19.haml +92 -92
- data/examples/api-samples/views/sample20.haml +54 -54
- data/examples/api-samples/views/sample21.haml +123 -123
- data/examples/api-samples/views/sample22.haml +106 -106
- data/examples/api-samples/views/sample25.haml +101 -101
- data/examples/api-samples/views/sample31.haml +2 -2
- data/examples/api-samples/web.rb +20 -20
- data/examples/viewer/Gemfile +5 -5
- data/examples/viewer/app.rb +52 -52
- data/groupdocs.gemspec +31 -31
- data/lib/groupdocs.rb +62 -62
- data/lib/groupdocs/api.rb +6 -6
- data/lib/groupdocs/api/entity.rb +112 -112
- data/lib/groupdocs/api/helpers.rb +11 -11
- data/lib/groupdocs/api/helpers/access_mode_helper.rb +27 -27
- data/lib/groupdocs/api/helpers/access_rights_helper.rb +55 -55
- data/lib/groupdocs/api/helpers/accessor_helper.rb +30 -30
- data/lib/groupdocs/api/helpers/byte_flag_helper.rb +49 -49
- data/lib/groupdocs/api/helpers/credentials_helper.rb +35 -35
- data/lib/groupdocs/api/helpers/mime_helper.rb +21 -21
- data/lib/groupdocs/api/helpers/path_helper.rb +28 -28
- data/lib/groupdocs/api/helpers/rest_helper.rb +99 -99
- data/lib/groupdocs/api/helpers/signature_public_helper.rb +22 -22
- data/lib/groupdocs/api/helpers/status_helper.rb +27 -27
- data/lib/groupdocs/api/helpers/url_helper.rb +101 -101
- data/lib/groupdocs/api/request.rb +91 -91
- data/lib/groupdocs/datasource.rb +249 -249
- data/lib/groupdocs/datasource/field.rb +39 -39
- data/lib/groupdocs/document.rb +1550 -1550
- data/lib/groupdocs/document/annotation.rb +421 -421
- data/lib/groupdocs/document/annotation/reply.rb +173 -173
- data/lib/groupdocs/document/annotation/reviewer.rb +66 -66
- data/lib/groupdocs/document/change.rb +56 -56
- data/lib/groupdocs/document/field.rb +53 -53
- data/lib/groupdocs/document/metadata.rb +32 -32
- data/lib/groupdocs/document/rectangle.rb +18 -18
- data/lib/groupdocs/document/view.rb +36 -36
- data/lib/groupdocs/errors.rb +8 -8
- data/lib/groupdocs/job.rb +468 -468
- data/lib/groupdocs/questionnaire.rb +530 -530
- data/lib/groupdocs/questionnaire/collector.rb +335 -335
- data/lib/groupdocs/questionnaire/execution.rb +181 -181
- data/lib/groupdocs/questionnaire/page.rb +43 -43
- data/lib/groupdocs/questionnaire/question.rb +108 -108
- data/lib/groupdocs/questionnaire/question/answer.rb +15 -15
- data/lib/groupdocs/signature.rb +380 -380
- data/lib/groupdocs/signature/contact.rb +181 -181
- data/lib/groupdocs/signature/envelope.rb +747 -747
- data/lib/groupdocs/signature/envelope/log.rb +20 -20
- data/lib/groupdocs/signature/field.rb +286 -286
- data/lib/groupdocs/signature/field/location.rb +71 -71
- data/lib/groupdocs/signature/form.rb +804 -804
- data/lib/groupdocs/signature/list.rb +92 -92
- data/lib/groupdocs/signature/recipient.rb +79 -79
- data/lib/groupdocs/signature/role.rb +54 -54
- data/lib/groupdocs/signature/shared.rb +6 -6
- data/lib/groupdocs/signature/shared/document_methods.rb +158 -158
- data/lib/groupdocs/signature/shared/entity_fields.rb +76 -76
- data/lib/groupdocs/signature/shared/entity_methods.rb +144 -144
- data/lib/groupdocs/signature/shared/field_methods.rb +354 -354
- data/lib/groupdocs/signature/shared/recipient_methods.rb +75 -75
- data/lib/groupdocs/signature/shared/resource_methods.rb +65 -65
- data/lib/groupdocs/signature/template.rb +124 -124
- data/lib/groupdocs/storage.rb +44 -44
- data/lib/groupdocs/storage/file.rb +432 -432
- data/lib/groupdocs/storage/folder.rb +288 -288
- data/lib/groupdocs/storage/package.rb +48 -48
- data/lib/groupdocs/storage/provider.rb +32 -32
- data/lib/groupdocs/subscription.rb +323 -323
- data/lib/groupdocs/subscription/limit.rb +20 -20
- data/lib/groupdocs/user.rb +955 -930
- data/lib/groupdocs/version.rb +3 -3
- data/spec/groupdocs/api/entity_spec.rb +55 -55
- data/spec/groupdocs/api/helpers/access_mode_helper_spec.rb +21 -21
- data/spec/groupdocs/api/helpers/access_rights_helper_spec.rb +43 -43
- data/spec/groupdocs/api/helpers/accessor_helper_spec.rb +16 -16
- data/spec/groupdocs/api/helpers/byte_flag_helper_spec.rb +23 -23
- data/spec/groupdocs/api/helpers/credentials_helpers_spec.rb +48 -48
- data/spec/groupdocs/api/helpers/mime_helper_spec.rb +16 -16
- data/spec/groupdocs/api/helpers/path_helper_spec.rb +15 -15
- data/spec/groupdocs/api/helpers/rest_helper_spec.rb +161 -161
- data/spec/groupdocs/api/helpers/signature_public_helper_spec.rb +21 -21
- data/spec/groupdocs/api/helpers/status_helper_spec.rb +22 -22
- data/spec/groupdocs/api/helpers/url_helper_spec.rb +112 -112
- data/spec/groupdocs/api/request_spec.rb +112 -112
- data/spec/groupdocs/datasource/field_spec.rb +29 -29
- data/spec/groupdocs/datasource_spec.rb +145 -145
- data/spec/groupdocs/document/annotation/reply_spec.rb +154 -154
- data/spec/groupdocs/document/annotation/reviewer_spec.rb +51 -51
- data/spec/groupdocs/document/annotation_spec.rb +234 -234
- data/spec/groupdocs/document/change_spec.rb +39 -39
- data/spec/groupdocs/document/field_spec.rb +28 -28
- data/spec/groupdocs/document/metadata_spec.rb +21 -21
- data/spec/groupdocs/document/rectangle_spec.rb +14 -14
- data/spec/groupdocs/document/view_spec.rb +33 -33
- data/spec/groupdocs/document_spec.rb +859 -859
- data/spec/groupdocs/errors_spec.rb +7 -7
- data/spec/groupdocs/job_spec.rb +323 -323
- data/spec/groupdocs/questionnaire/collector_spec.rb +197 -197
- data/spec/groupdocs/questionnaire/execution_spec.rb +162 -162
- data/spec/groupdocs/questionnaire/page_spec.rb +47 -47
- data/spec/groupdocs/questionnaire/question/answer_spec.rb +9 -9
- data/spec/groupdocs/questionnaire/question_spec.rb +75 -75
- data/spec/groupdocs/questionnaire_spec.rb +295 -295
- data/spec/groupdocs/signature/contact_spec.rb +142 -142
- data/spec/groupdocs/signature/envelope/log_spec.rb +15 -15
- data/spec/groupdocs/signature/envelope_spec.rb +384 -384
- data/spec/groupdocs/signature/field/location_spec.rb +40 -40
- data/spec/groupdocs/signature/field_spec.rb +235 -235
- data/spec/groupdocs/signature/form_spec.rb +205 -205
- data/spec/groupdocs/signature/list_spec.rb +87 -87
- data/spec/groupdocs/signature/recipient_spec.rb +26 -26
- data/spec/groupdocs/signature/role_spec.rb +47 -47
- data/spec/groupdocs/signature/template_spec.rb +80 -80
- data/spec/groupdocs/signature_spec.rb +194 -194
- data/spec/groupdocs/storage/file_spec.rb +303 -303
- data/spec/groupdocs/storage/folder_spec.rb +270 -270
- data/spec/groupdocs/storage/package_spec.rb +38 -38
- data/spec/groupdocs/storage/provider_spec.rb +21 -21
- data/spec/groupdocs/storage_spec.rb +27 -27
- data/spec/groupdocs/subscription/limit_spec.rb +16 -16
- data/spec/groupdocs/subscription_spec.rb +74 -74
- data/spec/groupdocs/user_spec.rb +257 -257
- data/spec/groupdocs_spec.rb +63 -63
- data/spec/spec_helper.rb +73 -73
- data/spec/support/json/annotation_access_set.json +11 -11
- data/spec/support/json/annotation_collaborators_get.json +16 -16
- data/spec/support/json/annotation_collaborators_set.json +16 -16
- data/spec/support/json/annotation_create.json +12 -12
- data/spec/support/json/annotation_list.json +32 -32
- data/spec/support/json/annotation_marker_move.json +10 -10
- data/spec/support/json/annotation_move.json +8 -8
- data/spec/support/json/annotation_remove.json +9 -9
- data/spec/support/json/annotation_replies_create.json +9 -9
- data/spec/support/json/annotation_replies_get.json +25 -25
- data/spec/support/json/annotation_reviewers_get.json +18 -18
- data/spec/support/json/comparison_changes.json +46 -46
- data/spec/support/json/comparison_compare.json +8 -8
- data/spec/support/json/comparison_document.json +10 -10
- data/spec/support/json/contact_add.json +12 -12
- data/spec/support/json/contacts_get.json +19 -19
- data/spec/support/json/contacts_import.json +8 -8
- data/spec/support/json/datasource_add.json +8 -8
- data/spec/support/json/datasource_get.json +22 -22
- data/spec/support/json/datasource_remove.json +8 -8
- data/spec/support/json/datasource_update.json +8 -8
- data/spec/support/json/delete_account.json +9 -9
- data/spec/support/json/document_access_info_get.json +14 -14
- data/spec/support/json/document_convert.json +8 -8
- data/spec/support/json/document_datasource.json +10 -10
- data/spec/support/json/document_fields.json +34 -34
- data/spec/support/json/document_formats.json +8 -8
- data/spec/support/json/document_metadata.json +15 -15
- data/spec/support/json/document_page_images_get.json +20 -20
- data/spec/support/json/document_questionnaire_create.json +9 -9
- data/spec/support/json/document_questionnaires.json +23 -23
- data/spec/support/json/document_sharers_remove.json +8 -8
- data/spec/support/json/document_sharers_set.json +16 -16
- data/spec/support/json/document_thumbnails.json +24 -24
- data/spec/support/json/document_views.json +32 -32
- data/spec/support/json/envelope_get.json +46 -46
- data/spec/support/json/envelope_logs.json +16 -16
- data/spec/support/json/envelope_recipient_add.json +26 -26
- data/spec/support/json/envelopes_all.json +48 -48
- data/spec/support/json/envelopes_resources.json +31 -31
- data/spec/support/json/file_compress.json +8 -8
- data/spec/support/json/file_copy.json +14 -14
- data/spec/support/json/file_delete.json +5 -5
- data/spec/support/json/file_move.json +14 -14
- data/spec/support/json/file_upload.json +8 -8
- data/spec/support/json/folder_create.json +8 -8
- data/spec/support/json/folder_delete.json +5 -5
- data/spec/support/json/folder_list.json +22 -22
- data/spec/support/json/folder_move.json +8 -8
- data/spec/support/json/folder_sharers_get.json +16 -16
- data/spec/support/json/folder_sharers_remove.json +8 -8
- data/spec/support/json/folder_sharers_set.json +16 -16
- data/spec/support/json/form_get.json +21 -21
- data/spec/support/json/forms_all.json +23 -23
- data/spec/support/json/job_add_url.json +8 -8
- data/spec/support/json/job_create.json +8 -8
- data/spec/support/json/job_documents.json +40 -40
- data/spec/support/json/job_file_add.json +8 -8
- data/spec/support/json/job_get.json +30 -30
- data/spec/support/json/job_update.json +7 -7
- data/spec/support/json/jobs_get.json +58 -58
- data/spec/support/json/list_add.json +12 -12
- data/spec/support/json/lists_get.json +19 -19
- data/spec/support/json/package_create.json +7 -7
- data/spec/support/json/questionnaire_collector.json +17 -17
- data/spec/support/json/questionnaire_collectors.json +38 -38
- data/spec/support/json/questionnaire_collectors_add.json +10 -10
- data/spec/support/json/questionnaire_create.json +10 -10
- data/spec/support/json/questionnaire_datasources.json +26 -26
- data/spec/support/json/questionnaire_execution_add.json +9 -9
- data/spec/support/json/questionnaire_execution_status_set.json +8 -8
- data/spec/support/json/questionnaire_execution_update.json +8 -8
- data/spec/support/json/questionnaire_executions.json +28 -28
- data/spec/support/json/questionnaire_get.json +17 -17
- data/spec/support/json/questionnaire_remove.json +8 -8
- data/spec/support/json/questionnaire_update.json +8 -8
- data/spec/support/json/questionnaires_get.json +40 -40
- data/spec/support/json/sign_documents.json +16 -16
- data/spec/support/json/signature_create.json +12 -12
- data/spec/support/json/signature_field_add.json +25 -25
- data/spec/support/json/signature_fields_get.json +27 -27
- data/spec/support/json/signature_roles_get.json +17 -17
- data/spec/support/json/signatures_get.json +19 -19
- data/spec/support/json/storage_info.json +10 -10
- data/spec/support/json/subscription_plan_get.json +9 -9
- data/spec/support/json/subscription_plans_get.json +17 -17
- data/spec/support/json/template_get.json +35 -35
- data/spec/support/json/template_get_documents.json +15 -15
- data/spec/support/json/template_get_recipients.json +20 -20
- data/spec/support/json/templates_all.json +37 -37
- data/spec/support/json/templates_get.json +21 -21
- data/spec/support/json/update_account.json +10 -10
- data/spec/support/json/user_area.json +67 -67
- data/spec/support/json/user_embed_key.json +38 -38
- data/spec/support/json/user_get_embed_key.json +67 -67
- data/spec/support/json/user_login.json +67 -67
- data/spec/support/json/user_profile_get.json +24 -24
- data/spec/support/json/user_providers.json +31 -31
- data/spec/support/json/user_roles.json +25 -25
- data/spec/support/json/user_users_get.json +27 -27
- data/spec/support/shared_examples/api/entity.rb +39 -39
- data/spec/support/shared_examples/api/helpers/access_mode_helper.rb +11 -11
- data/spec/support/shared_examples/api/helpers/status_helper.rb +11 -11
- data/spec/support/shared_examples/signature/shared/document_methods.rb +68 -68
- data/spec/support/shared_examples/signature/shared/entity_fields.rb +56 -56
- data/spec/support/shared_examples/signature/shared/entity_methods.rb +116 -116
- data/spec/support/shared_examples/signature/shared/field_methods.rb +220 -220
- data/spec/support/shared_examples/signature/shared/recipient_methods.rb +46 -46
- data/spec/support/shared_examples/signature/shared/resource_methods.rb +46 -46
- 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
|