25 Commits

Author SHA1 Message Date
Sunil Mohan Adapa
05908d1680
openvpn: Handle shortcut properly when enabling/disabling 2017-02-15 21:08:18 +05:30
Sunil Mohan Adapa
7465aafe89
openvpn: Fix i18n and minor refactoring
- Remove hard coded link
2017-02-15 21:07:43 +05:30
Sunil Mohan Adapa
dd5ab7612e
Minor refactoring and lint fixes
- Rename AdminMiddleware to AdminRequiredMiddleware to be consistent
  with stronghold/Django terminology

- Simplify .gitignore pattern

- Format single line docstrings as per PEP8.

- Add missing docstrings.

- Restrict lines to 79 characters.
2017-02-15 21:07:27 +05:30
lispyclouds
f54a9d89dd
Fix accidental debugging print 2017-02-15 21:07:08 +05:30
lispyclouds
b0321d7d29
openvpn: Allow non-admin users to download their own profiles
- This adds OpenVPN icon

- This enables the OpenVPN app on the index page.

- This allows only admins to create the certs for OpenVPN and admins and
  non admins can not download their own profiles via the app icon.
2017-02-15 21:05:48 +05:30
James Valleroy
b234d0e1b3
Ensure that services are registered when modules complete setup 2016-12-04 13:45:31 -05:00
mridulnagpal
941259df1e
Firewall updated 2016-12-04 13:45:26 -05:00
Sunil Mohan Adapa
31c6f866e2
Use loading icon for other busy operations 2016-08-26 21:51:51 -04:00
Sunil Mohan Adapa
5f548a9e36
packages: Make modules declare managed packages
This can then be used by a privileged action to verify that packages
requested for installation are in fact valid.  This slightly improves
security of those privileged actions.
2016-06-11 12:11:32 -04:00
Sunil Mohan Adapa
ad61028a3a
menu: Sort menu items for all locales
Currently menu items are shown in alphabetical order in applications and
no clear order in system configuration.  This is done using static
weights for menu items based on English names that does not work for
other locales.

Sorting can't be done at the time of adding menu items as users of
multiple locales may use the interface at the same time.

Implement a sorting mechanism based on existing order as well as labels
of menu item.  This allows the flexiblity of grouping menu items in
future as it may be need for system configuration.  In case of help menu

Remove sort order for all modules except for help menu as here we want
that specific order.
2016-06-06 17:44:59 -04:00
fonfon
b54846b0ce
Services: Template restructuring
- renamed app.html to simple_service.html
- allow hiding the 'status' block instead of using separate
  apache_service.html template
2016-05-11 18:19:35 -04:00
fonfon
f419c28596
Services: Explicitly use ServiceForm and ServiceView
- adapted all modules to not use views.ConfigurationView anymore
- removed templates that are not needed anymore
- no more implicit 'enabled' and 'get_status' functions in __init__.py files
- (more coherent/explicit use of Django functionality)
2016-05-11 18:19:31 -04:00
fonfon
a9528c56d9
Service object to handle services on a system-level
The Service object now offers handling services on a system level,
and gathering information whether it's enabled or running.
New methods: enable, disable, is_enabled, is_running;

For this it needs the correct (system-level) service name.
All of the methods can be overridden/customized.

This changes all modules to the new Service object and deletes
action scripts that are not required anymore.
2016-05-11 18:19:27 -04:00
Sunil Mohan Adapa
f04e1c1657
Minor PEP8 & spelling fixes in various modules 2016-02-28 19:38:53 +05:30
Sunil Mohan Adapa
b916d95a0b
openvpn: Use new setup mechanism 2016-02-13 13:51:32 +05:30
Sunil Mohan Adapa
7f4c5f7410
Make app names as module identifiers
- The last part of the module import path is the module name.  This also
  becomes the Django app name.  Apps names have to be unique.  Hence,
  there is no scope for two different modules with same name but
  different load path to exist in the project.

- Most uses of list of loaded modules are dealing with app names instead
  of full module load path.  This is due to the fact that Django deals
  with app names and not module paths.

- It is also somewhat clumsy to access a loaded module as we are
  re-importing every time to get access module.

- Simplify all of the above by using app names are module identifiers
  and maintaing an ordered dictionary of app names to loadded modules.

- Remove unused imports.

- Minor styling fixes.
2016-02-13 13:49:23 +05:30
Caly
15312fe595
Update messages for simplicity/consistency/grammer
- Closes #375 and #380.

- More use of configurable brand name.
2016-01-24 12:14:25 +05:30
Sunil Mohan Adapa
572e68dc36
Make remaining uses of brand name customizable 2016-01-24 00:50:14 +05:30
Sunil Mohan Adapa
4602c5bfce
Use translated brand name in templates
Using brand name directly from configuration means that it can't be
easily translated.  Instead use the translated brand name sent in my the
context processor.
2016-01-24 00:37:01 +05:30
Sunil Mohan Adapa
a69f419c3c Make Django urlpatterns list of url()s
- Support for legacy pattern() mechanism will be removed in Django
  1.10.  Currently we see a warning for each Plinth module.
2015-12-05 09:33:23 -05:00
Sunil Mohan Adapa
01d50c7ae8 Fix i18n of template expressions 2015-11-14 11:42:32 +05:30
Sunil Mohan Adapa
3df1a88824 Switch to Django i18n for code strings
Django i18n layer is on top of gettext and provide may crucial features
such as per-request locales, lazy translations etc.
2015-11-13 22:08:43 +05:30
Sunil Mohan Adapa
02cd89b60d Internationalize strings in template files 2015-11-13 22:02:17 +05:30
James Valleroy
24418e2469 openvpn: minor fixes 2015-11-04 07:05:27 -05:00
Sunil Mohan Adapa
646763ff3c openvpn: New module VPN into FreedomBox
- Authentication using client certificates.  Extra password based
  authentication for later.

- Auto setup of CA, server and client certificates.

- Provides a .ovpn profile for each user for easy setup.

- Use 4096 bit Diffie-Hellman parameters for better security.  If this
  takes to much time, reduce it to 2048 or 1024, at least during
  debugging.
2015-11-03 20:24:40 -05:00