Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Author: Xavier Thevenot

Introduction to enterprise properties

...

Then in Abiquo, administrators can modify existing properties or add new properties when they create or edit the enterprise. 

Tip

The maximum length of enterprise property elements is:

  • key of 255 characters

  • value of 255 characters

...

Create a list of preset enterprise properties

To define preset enterprise properties, enter a list of your custom property definitions in the client-config-custom.json file. 

Use the UI configuration property defined in the client-config-default.json file. By default, the preset list will be empty and the property is the following:

...

Enterprise properties
Code Block
"config.enterprise.properties" : []

...

The preset property types you can define are described in the following sections and can be the following:

  • input

  • combo

  • multiple

Define an input property

To enable the user to edit a text value for a key, use the Input type.

Input property
Code Block
languagejavascript
titleInput property
js
{"type": "input", "key":"property_input", "value":"value", "required":true}

The object must have the type value as 'input'. Then you have to define key  and value attributes (these are mandatory, otherwise the property will fail in UI). You can also add the required attribute, set to true if you want to force this property value to be added to enterprise properties.Image Removed

...

Define a Combo selection property

To enable the enable the user to set a value by selecting one of the set of elements defined in the values attributes, use the Combo type.

Combo property
Code Block
languagejavascripttitleCombo propertyjs
{"type": "combo", "key":"property_combo", "value": "first", "values":[
        {"name":"First property", "value":"first"},
        {"name":"Second property", "value":"second"},
        {"name":"Third property", "value":"third"}
 	]
}

The object must have the type value as 'combo'. Then you have to define key  and value attributes (these are mandatory, otherwise the property will fail in UI), and a list of values: each object must have a name (displayed in the combo-box) and a value (will be used as value in the key/value property). You  You can also add the required attribute set to true if you want to force this property to be added to enterprise properties.Image Removed

...

Define a multi-selection property

To enable the user to edit a list of values by selecting one or more values from the set of elements displayed elements displayed in a multi-selection grid, use the Multi type.

Multi property
Code Block
languagejavascriptjs
titleMulti property
{"type": "multi", "key":"property_multi", "value": "second", "values":[
        {"name":"First property", "value":"first"},
        {"name":"Second property", "value":"second"},
        {"name":"Third property", "value":"third"}
 	]
}

The object must have the type value as 'multi'. Then you have to define key  and value attributes (these are mandatory, otherwise the property will fail in UI), and a list of values: each object must have a name and a value (which will be used as the value in the key/value property). You  You can also add the required attribute to true if you want to force this property to be added to enterprise properties.Image Removed

...

Full example

Putting all the above examples together, the client property will have the following value.

...

...

Full example
Code Block
"config.enterprise.properties" : [
{"type": "input", "key":"property_input", "value":"value", "required":true},
{"type": "combo", "key":"property_combo", "value": "first", "values":[
        {"name":"First property", "value":"first"},
        {"name":"Second property", "value":"second"},
        {"name":"Third property", "value":"third"}
 	]
},
{"type": "multi", "key":"property_multi", "value": "second", "values":[
        {"name":"First property", "value":"first"},
        {"name":"Second property", "value":"second"},
        {"name":"Third property", "value":"third"}
 	]
}]