show correct link to compute instances in stack resource overview tab

There are two related fixes in the stacks resource overview page.
First, any resource types for which horizon does not have a link for
were getting a URL of "None" in the uuid field, and with this
change the link is suppressed if it is None. The second part involves
adding compute resources to the resource mappings, so that the uuid
field for those links to the instance detail page.

Change-Id: Ib8d51b49ac51092a3d7db6d889f4427167e5adb0
Closes-Bug: 1322162
render stack parameters in the correct order

Parameters in a heat template are now rendered in the order specified
in the "ParameterGroups" section. If this section is not available then
they are rendered unordered.

Change-Id: I3367b42c4c3037666b705cebf9cf67ccf0ce4fce
Closes-Bug: 1364567
Change page header heading to H1

Partially implements: blueprint detail-pages-ia

Change-Id: I42b58e73fd3990c5b5e197e5694eb77eeb42f77c
Document token hash algorithm option

With https://review.openstack.org/#/c/116509/ ,
django-openstack-auth will support a new option for the token hash
algorithm. This adds the documentation to Horizon's local settings
example file.

This is for security hardening. The token hash algorithm defaults
to MD5, which is considered too weak due to the potential for hash
collisions. Some security standards require a SHA2 hash algorithm to
be used.

DocImpact
SecurityImpact

Change-Id: I6774b9b7215d191259586e4721e357487bb777cd
Closes-Bug: #1174499
Fix concatenation in Database actions

Remove concatenation and pluralization issues from Terminate
Instance, Restart Instance, Delete User, Delete Database,
and Delete Backup actions.

Change-Id: Ic8f343e7ad03497591e154d92e78d637618bf5e9
partial-bug: 1307476
Fix concatenation in identity related actions

Fix concatenation and pluralization issues from
Delete Groups, Remove Users, Add Users, Delete
Projects, and Delete Domains actions.

Change-Id: I7ba06a1acd720165af23a6fb475d061d2cab0e8a
partial-bug: 1307476
Remove glyphicon-eye-open icon from Description

The glyphicon-eye-open icon is displayed in the Description section
of the 'Create User' and 'Update User' form under the Identify->Users
panel. This is because the no_autocomplete field has been set to
'True' for both the 'Create User' and 'Update User' forms. Enabling
this field causes an input of type="password" and name="fake_password"
to be added inorder to prevent Chrome v34+ from autofilling the form.

Change-Id: Ic628772112aae2d320d8d8342305c33d7ada6822
Closes-Bug: #1371787
Remove #noqa from django.conf.urls.include

We have one more import with #noqa: django.conf.urls.include that is also
commonly used in urls.py module and could be included to the list of
import exceptions. This change has also revealed one unused import.

Change-Id: I47cc582340625aac87ab0242b147e11ef1d9b38e
remove read-only network ID field from Edit Network form

Remove unnecessary field network_id from UpdateNetwork form.
Currently field is required to pass it to the
api.neutron.network_update method, but there is also
self.initial dict where the value can be get.

Closes-Bug: 1372348
Change-Id: I5cf9efa468d3f0a57d20e5ae54f74425d01ac606
Open Kilo development

Bump pre-version to 2015.1 to formally open master branch to Kilo
development.

Change-Id: I2ff0fb19a894cb6018807d667e233f4fa6dfa83c
Make Image Description an input field instead of a textarea

The glanceclient passes the value of the "Description" field as
HTTP headers to the API, completely unmodified.  If there are
newlines in the content, it corrupts the headers and creates havoc.

Encoding/decoding the results is not viable, since arbitrary (and
not necessarily controlled by anyone) clients can retrieve the data.  So as
a dodge, use a normal <input> field for Description instead of
<textarea> field, as newlines are not permitted in the former.

Closes-Bug: 1370732
Change-Id: I0231eaa693e7f36699fda6e011db8c976b639411
Override Error Message in Create Subnet Workflow

The Admin->Networks->Create Subnet and Project->Networks->Create Subnet
both inherited their error message from the Project->Create Network
workflow, this patch moves the error message into a instance variable
that can be overridden by sub-classes, and overrides it in the Create
Subnet workflow.

Change-Id: I87e9b89b68560291e389a24be86f788167c5d149
Closes-Bug: 1375783
Move translator notes just before translatable strings

Translator notes must be placed just before strings.
Otherwise translator notes are ignored when generating POT files.
We need to be careful when we use multiline *gettext* methods.
How to detect them is a future topic in I18N team.

Change-Id: I808271c76b1669b15ecc20b291493a4f751d546e
Closes-Bug: #1375607
Use shades of blue for distribution pie charts

Change-Id: I0bbcdadd2f4c6aee3822420933cc9b6f1f235164
Closes-bug: #1376227
Add "cancel" button

The Create Network dialogue does not have
a cancel button. Add button for more usability

Change-Id: I4f6c1d0cf40657fad892d5f64dc0a9042c0371bd
Closes-Bug: #1372304
Fix E127 errors in openstack_dashboard/dashboards/admin/

E127 continuation line over-indented for visual indent

Partial-Bug: #1375931
Change-Id: I0c3a95633e267294fc3b5576be2fc3c374b4b5d8
Merge "Override Error Message in Create Subnet Workflow"
Enable launching instance from zero-size image snapshot

Remove the general hardcoded minimum of 1GB volume size on the create
instance workflow, and selectively enforce it when the volume size field
is used and editable: namely, when launching an instance from an image
and creating a new volume.

This general minimum was preventing the launch of instances from image
snapshots (whose size is reported as 0) by causing browser errors as the
browser tried to highlight the error of the invisible size field.

Closes-Bug: 1374931
Change-Id: Ied0eb41f5198d935bbb0896e5004ea78176bc2b8
Add a session cache of can_access call results

This patch adds a decorator and function to all horizon components so
that the results of calls to can_access are cached in the session. This
should prevent large numbers of calls to APIs when can_access functions
need to get information from services. The cache is stored in
session['allowed'] using self.__class__ as the key, this ensures each
key is human readable and can be easily mocked out in future tests.

Change-Id: Ic65e4cb6499ecae4b09dd525416656a6f41853f5
Closes-Bug: 1367716
Merge "Enable launching instance from zero-size image snapshot"