rafactoring of activate_connection function:
as we now know the interface name of a connection we can pick the connection
by this value and activate the connection.
* Added a new choice to main selectbox for adding Network Connections (network.py)
* Added a new form which asks for name, interface, firewall zone, username and password (forms.py, urls.py)
* Added new helper functions to create PPPoE based connection object (network.py)
- Fetch network interfaces list at the time of form creation instead of
during definition.
- Add help text to interfaces list choice field.
- Don't write an explict check for requiring interface
selection. required=True, which is default, takes care of that.
- Internationalize the empty selection text.
- Update the empty selection text.
- Re-order interface parameter in the same order of priority/appearance.
- Make network-manager package get installed when accessing the index page of
networks. Also freedombox-setup shold actually pull network-manager package
as dependency and use it for configuring the initial networks.
- Remove the /connect page and re-use the /add_wifi page for that purpose.
- Fix add connection page titles.
- Handle the case when network-manager returned empty string for SSID.
- Don't explictly URL encode the Wi-Fi SSID when adding a new Wi-Fi network.
Django automatically handles this in 'url' tag and decodes before url
routing. Relax the regex that matches SSID as part of the URL to handle all
possible SSIDs.
- Name for a network connection is not unique. UUIDs are much less likely to
change compared to name of the connection. No necessity to perform URL
encoding too.
- Move UI error message strings to view module instead of the network module
for proper separation.
- Minor refactoring.