Update Launch Instance button with ajax

Launch Instance button updates after instance has been terminated:
- added html temlpate for table actions
- ajax-update and update-url classes were added for link actions
- update all required actions via ajax when rows were removed from the table

Closes-Bug: #1192621
Change-Id: I81e8ea4e1921bbf344d210ba3353d51d4c11a7d1
Tell users when there is no data available in Daily Report

Here is the text from the bug:
If there is no metering data from the period selected,
user sees panel with no tables. It would be nicer to tell user that this is because there is no data to show.

The Daily Report displays one table per project. Since there is no data, then there are no tables.
This change displays the string "No data available" in this situation. This is the same
behavior as the Stats tab in the same Resouce Utilization Panel.

Change-Id: I15a5e029ec97d77c95c2567e8ba4493623952de7
Closes-bug: #1287931
Create links in LBaaS detail pages

LBaaS detail pages contains many UUIDs and it is not human-friendly.
This commit replaces UUIDs with name or similar strings and
add links to details of corresponding resource.

In addition, some columns are added to health monitor tables
because UUID and monitor type are not enough to identify
health monitors.

Change-Id: I7b13c827d96b57a82e3855743e7d68e564edebd7
Closes-Bug: #1243123
Closes-Bug: #1243126
Add tox env to build docs

In django-based projects, we need to specify DJANGO_SETTINGS_MODULE
when running docs build. It is required to addresses the warnings of
docs build job in the gate.

This commit also changes run_tests.sh --docs to use "python setup.py
build_sphinx" to match tox docs env. This change addresses all sphinx
build warning except keystone v3 related following warning.
I believe it is useful.
  NoReverseMatch: u'domains' is not a registered namespace
  inside 'horizon:admin'

Closes-Bug: #1302532
Related-Bug: #1257725

Change-Id: I3663b81b58be3c6cb05e4af914f768c28b21ea07
Sync latest Oslo

Sync from oslo-incubator commit 46f2b697b6aacc674bc040a8751997ed70490d1a

Major changes of the import are related to update policy module:
0da5de6b54 Allow policy.json resource vs constant check
5d1f15a778 Documenting policy.json syntax
33533b0d97 Keystone user can't perform revoke_token

Most changes are style-related topics:
* Improve Python3 compatibility
* Remove vim modelines
* Support Per-log-level logging translations

Closes-Bug: #1296337
Change-Id: I09f61b10b1b36015d248de25c5c6ed994717a565
Add go_to_home_page method and two more properties

I added the brand property which is used by the go_to_home_page
method. This method will generally be used for tests.
In particular, it will be part of the TestCase class, which is planned
to be the base class for all tests (on top of helpers's BaseTestCase
class), except login tests.

In addition, I modified the css selector in the _user_indicator_locator
and made the user property from it.

https://wiki.openstack.org/wiki/Horizon/Testing/UI

Partially implements blueprint: selenium-integration-testing

Change-Id: Ic614c6a37ea04aeccf1a06312f4bcd20e5fe2c76
Better tab name on Hosts Aggregate modal.

Change the Tab name on "Create Host Aggregate"
modal for a better match with the action.

Change-Id: I87d1ae63d719afcb6d5f9827171f8392d6dc3a8d
Closes-Bug: #1291120
Fix DynamicSelectWidget.get_add_item_url() method.

Do not wrap self.add_item_link_args in an additional list because it
makes impossible to pass more than one arg (i.e. tuple or list of
args) to url resolver.

Change-Id: Idf6d5d1f27c9176f1de93a475e0f1abbae5ee275
Closes-Bug: #1297317
Fix KeyError in router:AddInterface error handle

Under some circumstances the exception handling on adding an interface
to a router will produce a KeyError.

The exception happens in
openstack_dashboard/dashboards/project/routers/ports/forms.py in
AddInterface.populate_subnet_id_choices.

In the exception handling code, a reverse() is called an argument of
request.REQUEST['router_id'] which doesn't always exist.

The fix is quite simple: try to look for it in the initial form data as
well, and if 'router_id' is in neither location, fall-back to the index
page.

Change-Id: I74eaf8cd024d2929fed3d4e00b644e5850e2d5b3
Closes-Bug: 1304533
Daily Usage report format value column

Also fix small capitalization issue

Change-Id: Ibb32d4181eb00c0fd8856002522d70c1edf33ec0
Closes-Bug: #1304066
Use "python -m coverage" rather than use "coverage" explicitly

When coverage module is installed using a package from Debian/Ubuntu,
the command name is "python-coverage". By using "python -m coverage"
the coverage module is detected in both cases.

Change-Id: Icf9084855b83d0cc721de5325f38cf72ac85ff81
Closes-Bug: #1241332
Co-Authored-By: florent <florent.flament-ext@cloudwatt.com>
Just fix some minor coding styles inconsistency in local_settings.py.

Change-Id: I64a25b31fc53e4166f9ef3fd8903cc843b389c24
Add a centralized palette to Horizon

    With a centralized palette it will become easier to customize
Horizon design. Colors and file syntax are inspired by BootstrapV3
variables.less file

Change-Id: Iee0ed7cfea03fbba3385787646e55dd96a424327
Implements: blueprint centralized-color-palette
Co-Authored-By: miziel-r <robert.mizielski@cloudwatt.com>
Do not auto resize line charts by default

Init function for D3 line charts made them redraw automatically
on window resize. This behavior should be optional and not the default.
This patch ensures that by default, charts do not automatically redraw.

Change-Id: I8b5b0a44b44bb71b0bb7e543e7d7b3913f56d3e9
Fix default get_user_home with dynamic dashboards

The existing get_user_home implementation expects both the 'admin'
and 'project' dashboards to exist and throws an exception if they
are missing.  With the inclusion of configurable dashboard loading,
we can no longer count on certain dashboards being loaded.

Closes-Bug: #1293727

Change-Id: I4ee0b7b313f4e1b27c0daea829c8b38282fa78d9
Fix formatting of heat exceptions

Heat now consistently formats error messages in returned HTTP json
and heatclient HTTPException makes every attempt to capture these
messages.

This means that the safest way to display an error or validation
message from Heat is to rely on the existing behaviour of
Horizon's exceptions.handle.

Change-Id: I80cdb67df87cb5192f220bc78a156d6e4113112f
Closes-Bug: #1241395
Centre piecharts properly

The overview piecharts are slightly off-centre and it's hurting my
brain.

Change-Id: I8c3207979866ce2ab2a78c3da938219eceae8107
Closes-bug: 1307279
Fix translatable string for "Injected File Path Bytes"

Rename "Injected File Path Bytes" to "Length of Injected File Path"

Change-Id: I35c268e0568f032c2b7a40a2ec8cf4c576e0ea53
Closes-bug: 1258175
Correct default usage filtering on overview page

On the overview page, the usage data showed by default was not filtered by
the dates shown on the date selectors. This can lead the user to wrong
conclusions about resource usage.

This patch corrects the default filtering dates to match the dates showed
by default on overview (first day in the month to current date).

Change-Id: I37a240d784ca0826821c125f06922d2c1d1e8659
Closes-Bug: #1294668
Replace Horizon cookies by the angular one

    This change allow us to use the ngCookies module in the angular
app of Horizon, it also provide this service outside through the
horizon.cookies object.

Change-Id: I12d85efdff32ce4d7d6a9d3a65e1e93ec0bbc9a7
Implements: blueprint horizon-angular
Co-Authored-By: miziel-r <robert.mizielski@cloudwatt.com>