.. _integrator_customise: ========================= Customize the application ========================= .. toctree:: :maxdepth: 2 The application can be customized in the following manners: ``functionalities``, ``UI metadata`` and data model extensions. The functionalities will be attached to the ``role`` and the ``theme``, and the UI metadata will be attached to all the elements of the theme. They should be configured in the vars file, in the ``admin_interface`` / ``available_functionalities`` or respectively ``available_metadata``. It is a list of objects which have a ``name`` and a ``type``. The type can be: * ``string`` * ``list`` a list of strings * ``boolean`` * ``integer`` * ``float`` * ``json`` * ``date`` * ``time`` * ``datetime`` `see the python-dateutil documentation `_ * ``url`` see below Check ``CONST_vars.yaml`` for examples of usage. In order to inherit the default values from ``CONST_vars.yaml``, make sure the ``update_paths`` section contains the item ``admin_interface.available_functionnalities`` or respectively ``admin_interface.available_metadata``. URL --- In the admin interface, we can use for all URL definitions the following special schema: * ``static``: to use a static route, * ``static:///icon.png`` will get the URL of the ``static-ngeo`` static route of the project. * ``static://static-cgxp/icon.png`` will get the URL of the ``static-cgxp`` static route of the project. * ``static://prj:img/icon.png`` will get the URL of the ``img`` static route of ``prj``. * ``config``: to get the server name from the URL, with the config from the ``vars`` file: .. code:: yaml servers: my_server: http://example.com/test ``config://my_server/icon.png`` will be transformed into the URL ``http://example.com/test/icon.png``. .. include:: functionality.rst .. include:: extend_data_model.rst