Network topology crashes with timing issue

Due to a timing issue, the network topology page can issue a 500 error
if a subnet is deleted at the inopportune moment.

Inside openstack_dashboard/dashboards/project/network_topology/views.py
---> JSONView.get method:

neutron_networks = api.neutron.network_list_for_tenant(
                request,
                request.user.tenant_id)

This can return a list of network objects whose subnet list can be [None]

Later, we attempt to iterate over that list and pull the .cidr attribute
off each element:

...
                    'subnets': [{'cidr': subnet.cidr}
                                for subnet in network.subnets],
...

Obviously, None doesn't have a .cidr attribute.

The real cause is inside the api.neutron.network_list_for_tenant call
above. Each network's list of subnets should never include None.

Change-Id: Ia88c5821bec73c80c4e743180354a69dabc93735
Closes-Bug: 1304600
Merge "Network topology crashes with timing issue"
User signup/signin in newly designed jio-dashboard

Port to master the new user signup, change password, phone number, email
addressed in below blueprints in havana_jio_dashboard branch:
https://blueprints.launchpad.net/jio/+spec/user-registration
https://blueprints.launchpad.net/jio/+spec/change-password
https://blueprints.launchpad.net/jio/+spec/change-phone-number
https://blueprints.launchpad.net/jio/+spec/change-email

P.S.
* The change-* functionalities were implemented using customization modules
in havana_jio_dashboard w.r.t the below URL:
http://docs.openstack.org/developer/horizon/topics/customizing.html
Now, they are implemented as plugins w.r.t the below upstream blueprint
https://blueprints.launchpad.net/horizon/+spec/plugin-panel-config

* User registration feature related URLs loading is slightly modified to avoid
modifications to openstack_dashboard.urls.py file. Instead, a new file
horizon_jiocloud/root_urls.py is added. So, for those urls to work,
add below entry in local_settings.py file
ROOT_URLCONF='horizon_jiocloud.root_urls'

The intention is to avoid as much changes as possible to core files in master
so that rebasing with upstream master is less painful.

Implements: blueprint icehouse-based-jiodashboard
Implements: blueprint user-signup-signin-new-jio-dashboard
User signup/signin in newly designed jio-dashboard

Follow up to commit c43647fc1c5961e374c034a7392f3e592b335f0a
Addressed code review feedback:
* Removed debug statements in horizon_jiocloud/root_urls.py
* Removed swap file horizon_jiocloud/README.rst~
User signup/signin in newly designed jio-dashboard

Follow up to commit c43647fc1c5961e374c034a7392f3e592b335f0a
Port the fix for below bug to master
https://bugs.launchpad.net/jio/+bug/1324475

The code from havana_jio_dashboard is refactored
to be easily rebase-able with upstream master

Implements: blueprint user-signup-signin-new-jio-dashboard