class GroupDocs::Signature::Field

Constants

FIELD_TYPES

Attributes

acceptableValues[RW]

@attr [Array<String>] acceptableValues

align[RW]

@attr [Integer] align

defaultValue[RW]

@attr [String] defaultValue

fieldType[RW]

@attr [Integer] fieldType

fontBold[RW]

@attr [Boolean] fontBold

fontColor[RW]

@attr [String] fontColor

fontItalic[RW]

@attr [Boolean] fontItalic

fontName[RW]

@attr [String] fontName

fontSize[RW]

@attr [Integer] fontSize

fontUnderline[RW]

@attr [Boolean] fontUnderline

forceNewField[RW]

@attr [Integer] forceNewField

getDataFrom[RW]

@attr [String] getDataFrom

graphSizeH[RW]

@attr [Integer] graphSizeH

graphSizeW[RW]

@attr [Integer] graphSizeW

groupName[RW]

@attr [String] groupName

guidanceText[RW]

@attr [String] guidanceText

id[RW]

@attr [String] id

input[RW]

@attr [Integer] input

isSystem[RW]

@attr [Boolean] isSystem

location[RW]

@attr [GroupDocs::Signature::Field::Location] location

locationHeight[RW]

@attr [Integer] locationHeight

locationWidth[RW]

@attr [Integer] locationWidth

locationX[RW]

@attr [Integer] locationX

locationY[RW]

@attr [Integer] locationY

locations[RW]

@attr [Array<GroupDocs::Signature::Field::Location>] locations

mandatory[RW]

@attr [Boolean] mandatory

name[RW]

@attr [String] name

order[RW]

@attr [Integer] order

page[RW]

added in realise 2.2.0 @attr [Integer] page

pageHeight[RW]

@attr [Integer] pageHeight

pageWidth[RW]

added in realise 1.5.8 @attr [Integer] pageWidth

recipientId[RW]

@attr [String] recipientId

regularExpression[RW]

@attr [String] regularExpression

settings[RW]

@attr [String] settings

signatureFieldId[RW]

@attr [String] signatureFieldId

templateId[RW]

@attr [String] templateId

textColumns[RW]

@attr [String] textColumns

textRows[RW]

@attr [String] textRows

tooltip[RW]

@attr [String] tooltip

Public Class Methods

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

Returns array of predefined lists.

@param [Hash] options Hash of options @option options [String] :id Filter by identifier @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [Array<GroupDocs::Signature::Field>]

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

  json[:fields].map do |field|
    new(field)
  end
end

Public Instance Methods

acceptable_values() click to toggle source

Converts acceptable values to human-readable format. @return [Array<String>]

# File lib/groupdocs/signature/field.rb, line 218
def acceptable_values
  @acceptableValues.split(';') if @acceptableValues
end
acceptable_values=(values) click to toggle source

Converts array of acceptable values to machine-readable format. @param [Array<String>] values

# File lib/groupdocs/signature/field.rb, line 206
def acceptable_values=(values)
  if values.is_a?(Array)
    values = values.join(';')
  end

  @acceptableValues = values
end
create!(access = {}) click to toggle source

Creates signature field.

@example

field = GroupDocs::Signature::Field.new
field.name = 'Field'
field.create!

@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key

# File lib/groupdocs/signature/field.rb, line 234
def create!(access = {})
  json = Api::Request.new do |request|
    request[:access] = access
    request[:method] = :POST
    request[:path] = '/signature/{{client_id}}/field'
    request[:request_body] = to_hash
  end.execute!

  self.id = json[:field][:id]
end
delete!(access = {}) click to toggle source

Deletes signature field.

@example Remove all created fields

fields = GroupDocs::Signature::Field.get!.select { |field| !field.is_system }
fields.each { |field| field.delete! }

@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key

# File lib/groupdocs/signature/field.rb, line 277
def delete!(access = {})
  Api::Request.new do |request|
    request[:access] = access
    request[:method] = :DELETE
    request[:path] = "/signature/{{client_id}}/fields/#{id}"
  end.execute!
end
field_type() click to toggle source

Returns field type in human-readable format. @return [Symbol]

# File lib/groupdocs/signature/field.rb, line 197
def field_type
  FIELD_TYPES.invert[@fieldType]
end
Also aliased as: type
field_type=(type) click to toggle source

Saves field type in machine-readable format. @param [Symbol, Integer] type

# File lib/groupdocs/signature/field.rb, line 184
def field_type=(type)
  if type.is_a?(Symbol)
    type = FIELD_TYPES[type]
  end

  @fieldType = type
end
Also aliased as: type=
location=(location) click to toggle source

Converts location to GroupDocs::Signature::Field::Location object.

@param [GroupDocs::Signature::Field::Location, Hash] location

# File lib/groupdocs/signature/field.rb, line 156
def location=(location)
  if location
    @location = (location.is_a?(GroupDocs::Signature::Field::Location) ? location : Signature::Field::Location.new(location))
    locations ? locations << @location : self.locations = [@location]
  end
end
locations=(locations) click to toggle source

Converts each location to GroupDocs::Signature::Field::Location object.

@param [Array<GroupDocs::Signature::Field::Location, Hash>] locations

# File lib/groupdocs/signature/field.rb, line 168
def locations=(locations)
  if locations
    @locations = locations.map do |location|
      if location.is_a?(GroupDocs::Signature::Field::Location)
        location
      else
        Signature::Field::Location.new(location)
      end
    end
  end
end
modify!(access = {}) click to toggle source

Modifies signature field.

@example

field = GroupDocs::Signature::Field.get!.first
field.name = 'Field'
field.modify!

@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key

# File lib/groupdocs/signature/field.rb, line 257
def modify!(access = {})
  Api::Request.new do |request|
    request[:access] = access
    request[:method] = :POST
    request[:path] = "/signature/{{client_id}}/fields/#{id}"
    request[:request_body] = to_hash
  end.execute!
end
type()
Alias for: field_type
type=(type)
Alias for: field_type=