Class: Contentful::Management::UIExtension

Inherits:
Object
  • Object
show all
Includes:
Resource, Resource::EnvironmentAware, Resource::Refresher, Resource::SystemProperties
Defined in:
lib/contentful/management/ui_extension.rb

Overview

Resource class for UIExtension.

See Also:

  • https://www.contentful.com/developers/docs/references/content-management-api/#/reference/ui-extensions

Instance Attribute Summary

Attributes included from Resource::SystemProperties

#sys

Attributes included from Resource

#client, #properties, #raw_object, #request

Instance Method Summary collapse

Methods included from Resource::EnvironmentAware

#environment_id

Methods included from Resource::Refresher

#reload

Methods included from Resource

#array?, #default_locale, #destroy, #environment_id, #fields, #nested_locale_fields?, #resource?, #sys, #update

Instance Method Details

#field_typesArray<String>

Returns extension field types

Returns:

  • (Array<String>)

    field types



62
63
64
# File 'lib/contentful/management/ui_extension.rb', line 62

def field_types
  extension['fieldTypes']
end

#field_types=(values) ⇒ Object

Sets extension field types

Parameters:



68
69
70
# File 'lib/contentful/management/ui_extension.rb', line 68

def field_types=(values)
  extension['fieldTypes'] = values
end

#nameString

Returns extension name

Returns:

  • (String)

    name



50
51
52
# File 'lib/contentful/management/ui_extension.rb', line 50

def name
  extension['name']
end

#name=(value) ⇒ Object

Sets extension name

Parameters:

  • value (String)


56
57
58
# File 'lib/contentful/management/ui_extension.rb', line 56

def name=(value)
  extension['name'] = value
end

#parametersHash

Returns extensions parameters

Returns:

  • (Hash)

    parameters



104
105
106
# File 'lib/contentful/management/ui_extension.rb', line 104

def parameters
  extension['parameters']
end

#parameters=(value) ⇒ Object

Sets extension parameters

Parameters:

  • value (Hash)


110
111
112
# File 'lib/contentful/management/ui_extension.rb', line 110

def parameters=(value)
  extension['parameters'] = value
end

#saveContentful::Management::UIExtension

If an extension is a new object gets created in the Contentful, otherwise the existing extension gets updated.

Returns:

See Also:

  • https://github.com/contentful/contentful-management.rb for details.


43
44
45
46
# File 'lib/contentful/management/ui_extension.rb', line 43

def save
  fail 'Invalid UI extension attributes' unless self.class.valid_extension?(extension)
  update(extension: extension)
end

Returns if extension is on sidebar

Returns:

  • (Boolean)

    sidebar



92
93
94
# File 'lib/contentful/management/ui_extension.rb', line 92

def sidebar
  extension['sidebar']
end

#sidebar=(value) ⇒ Object

Sets if extension is on sidebar

Parameters:

  • value (Boolean)


98
99
100
# File 'lib/contentful/management/ui_extension.rb', line 98

def sidebar=(value)
  extension['sidebar'] = value
end

#sourceString

Returns extension source URL or data

Returns:

  • (String)

    source URL or data



74
75
76
# File 'lib/contentful/management/ui_extension.rb', line 74

def source
  extension['src'] || extension['srcdoc']
end

#source=(value) ⇒ Object

Sets extension source

Parameters:

  • value (String)

    URL or data



80
81
82
83
84
85
86
87
88
# File 'lib/contentful/management/ui_extension.rb', line 80

def source=(value)
  if value.start_with?('http')
    extension['src'] = value
    extension.delete('srcdoc')
  else
    extension['srcdoc'] = value
    extension.delete('src')
  end
end