tuskar-ui/doc/source/topics/customizing.rst
Clark Boylan f1a8e0c54f Move docs to doc.
To better facilitate the building and publishing of sphinx
documentation by Jenkins we are moving all openstack projects with
sphinx documentation to a common doc tree structure. Documentation
goes in project/doc and build results go in project/doc/build.

Change-Id: Ic523a716e4113198b777d6dc3db8bb8a729e7696
2012-06-12 11:41:04 -07:00

2.7 KiB

Customizing Horizon

Changing the Site Title

The OpenStack Dashboard Site Title branding (i.e. "OpenStack Dashboard") can be overwritten by adding the attribute SITE_BRANDING to local_settings.py with the value being the desired name.

The file local_settings.py can be found at the Horizon directory path of horizon/openstack-dashboard/local/local_settings.py.

The OpenStack Logo is pulled in through style.css:

#splash .modal {
    background: #fff url(../images/logo.png) no-repeat center 35px;

h1.brand a {
    background: url(../images/logo.png) top left no-repeat;

To override the OpenStack Logo image, replace the image at the directory path horizon/openstack-dashboard/dashboard/static/dashboard/images/logo.png.

The dimensions should be width: 108px, height: 121px.

Modifying Existing Dashboards and Panels

If you wish to alter dashboards or panels which are not part of your codebase, you can specify a custom python module which will be loaded after the entire Horizon site has been initialized, but prior to the URLconf construction. This allows for common site-customization requirements such as:

  • Registering or unregistering panels from an existing dashboard.
  • Changing the names of dashboards and panels.
  • Re-ordering panels within a dashboard or panel group.

To specify the python module containing your modifications, add the key customization_module to your settings.HORIZON_CONFIG dictionary. The value should be a string containing the path to your module in dotted python path notation. Example:

HORIZON_CONFIG = {
    "customization_module": "my_project.overrides"
}

Button Icons

Horizon provides hooks for customizing the look and feel of each class of button on the site. The following classes are used to identify each type of button:

  • Generic Classes
    • btn-search
    • btn-delete
    • btn-upload
    • btn-download
    • btn-create
    • btn-edit
    • btn-list
    • btn-copy
    • btn-camera
    • btn-stats
    • btn-enable
    • btn-disable
  • Floating IP-specific Classes
    • btn-allocate
    • btn-release
    • btn-associate
    • btn-disassociate
  • Instance-specific Classes
    • btn-launch
    • btn-terminate
    • btn-reboot
    • btn-pause
    • btn-suspend
    • btn-console
    • btn-log
  • Volume-specific classes
    • btn-detach

Additionally, the site-wide default button classes can be configured by setting ACTION_CSS_CLASSES to a tuple of the classes you wish to appear on all action buttons in your local_settings.py file.