class GroupDocs::Signature::Template

Attributes

enableTypedSignature[RW]

@attr [Boolean] enableTypedSignature

enableUploadedSignature[RW]

@attr [Boolean] enableUploadedSignature

fieldsCount[RW]

added in release 1.7.0

@attr [Double] fieldsCount
tags[RW]

@attr [String] tags

templateExpireTime[RW]

@attr [Integer] templateExpireTime

Public Class Methods

all!(options = {}, access = {}) click to toggle source

Changed in release 1.7.0

Returns a list of all templates.

@param [Hash] options Hash of options @option options [Integer] :page Page to start with @option options [Integer] :records How many items to list @option options [String] :documentGuid Fitler templates by document originalMD5 @option options [String] :recipientName Filter templates by recipient nickname @option options [String] :name Filter templates by signatureTemplate name @option options [String] :tag Filter templates by tag @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array<GroupDocs::Signature::Template>]

# File lib/groupdocs/signature/template.rb, line 29
def self.all!(options = {}, access = {})
  api = Api::Request.new do |request|
    request[:access] = access
    request[:method] = :GET
    request[:path] = '/signature/{{client_id}}/templates'
  end
  api.add_params(options)
  json = api.execute!

  json[:templates].map do |template|
    new(template)
  end
end

Public Instance Methods

add_recipient!(recipient, access = {}) click to toggle source

Adds recipient to template.

@example

roles = GroupDocs::Signature::Role.get!
template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
recipient = GroupDocs::Signature::Recipient.new
recipient.nickname = 'John Smith'
recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
template.add_recipient! recipient

@param [GroupDocs::Signature::Recipient] recipient @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient

# File lib/groupdocs/signature/template.rb, line 76
def add_recipient!(recipient, access = {})
  recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
    "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"

  api = Api::Request.new do |request|
    request[:access] = access
    request[:method] = :POST
    request[:path] = "/signature/{{client_id}}/templates/#{id}/recipient"
  end
  api.add_params(:nickname => recipient.nickname,
                 :role     => recipient.role_id,
                 :order    => recipient.order)
  api.execute!
end
modify_recipient!(recipient, access = {}) click to toggle source

Modify recipient of template.

@example

roles = GroupDocs::Signature::Role.get!
template = GroupDocs::Signature::Template.get!("g94h5g84hj9g4gf23i40j")
recipient = template.recipients!.first
recipient.nickname = 'John Smith'
recipient.role_id = roles.detect { |role| role.name == "Signer" }.id
template.modify_recipient! recipient

@param [GroupDocs::Signature::Recipient] recipient @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @raise [ArgumentError] if recipient is not GroupDocs::Signature::Recipient

# File lib/groupdocs/signature/template.rb, line 108
def modify_recipient!(recipient, access = {})
  recipient.is_a?(GroupDocs::Signature::Recipient) or raise ArgumentError,
    "Recipient should be GroupDocs::Signature::Recipient object, received: #{recipient.inspect}"

  api = Api::Request.new do |request|
    request[:access] = access
    request[:method] = :PUT
    request[:path] = "/signature/{{client_id}}/templates/#{id}/recipient/#{recipient.id}"
  end
  api.add_params(:nickname => recipient.nickname, :role => recipient.role_id , :order => recipient.order)
  api.execute!
end