50 Commits

Author SHA1 Message Date
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
Joel Valleroy
a23a40dede Removed default password warning. Fixes #386. 2016-02-02 00:12:07 +00:00
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
Ruben Lubbes
fad7448417 More punctuation and minor errors changed 2015-12-09 23:55:55 +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
fonfon
1dbc566515 names module, pagekite: moved updating names to utils 2015-11-25 15:22:27 +01:00
James Valleroy
e0bfd1401f Name Services module 2015-11-25 15:22:27 +01: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
Sunil Mohan Adapa
670be77b9a pagekite: Fix issue with setting port
- When the current configuration does not contain a port and we try to
  set the port for the frontend server, it fails.  This patch fixes
  that.

- Minor styling and spelling fixes.

- Make sure that if port is not set for frontend, it will be set on
  saving the form.
2015-10-11 17:54:26 +05:30
fonfon
aad69deb6e Display correctly if service is PageKite is enabled 2015-10-11 17:19:35 +05:30
fonfon
96a272b3b0 Added explicit port setting to pagekite configuration 2015-10-11 17:19:35 +05:30
fonfon
91b85f68ec pagekite: Remove redundent augeas dependency
- Plinth itself has depedency on augeas-tools and python3-augeas.
2015-09-29 09:14:25 +05:30
Sean Alexandre
21b9a5b02a Passwords now sent over stdin instead of command line.
Fixes Issue #166:
Don't pass passwords on command line
https://github.com/freedombox/Plinth/issues/166

This issue was for 4 modules: Transmission, Pagekite, DynamicDNS, and Ikiwiki.
2015-08-23 15:20:08 +05:30
Sunil Mohan Adapa
5ffe3dab70 Reorder all app menu items alphabetically
- Alphabetical order is best for users to find the necessary items
  quickly and precitably.

- Currently there is no particular order.
2015-07-28 12:15:35 +05:30
Sunil Mohan Adapa
07e2c0ce14 Don't use actions to check if service is running
- To check whether a service is running does not require root
  privileges.  This can directly be done from a module without any
  action.

- Since actions are allowed to be run using sudo, introducing
  unnecessary sub-commands increases attack surface.

- Simple functions calls are unnecessarily being converted to command
  line invocations and involve parsing response.

- There is a lot of repeated code because of this that can be
  eliminated.

- To generalize this, we need to make all non-root system operations
  directly from module instead of delegating to action commands.
2015-07-19 19:54:13 -04:00
Sunil Mohan Adapa
517c364559 pagekite: Move to using python3-augeas
- Merge actions/pagekite_util.py into plinth/modules/pagekite/util.py.

- Rename plinth/modules/pagekite/util.py to utils.py.

- Add python-augeus as dependency.

- Move actions/util.py to plinth/action_utils.py and update services
  that use it.

- Rename _run() method to run() as it is being used publicly.

- Import the utils in a more conventional manner.

- Move all python2 bits to python3.
2015-07-19 15:37:43 -04:00
fonfon
824a9091c1 use django-stronghold for authentication handling (instead of @login_required) 2015-07-01 00:01:02 +05:30
Bob Girard
d64ce6cc01 Bundle tests with applications
- For each application, add ./tests directory and __init__.py file
  within it.

- Modify test controllers (coverage.py, runtests.py) to find the new
  test directories for testing and coverage analysis.

- Move existing application-specific test modules (test_pagekite.py) to
  the newly created directories.
2015-06-26 12:05:48 +05:30
fonfon
32e94058f6 More consistent renaming from default to standard services 2015-05-04 11:04:35 +02:00
fonfon
702dbf5e61 Renamed default services to standard services 2015-05-04 10:32:53 +02:00
fonfon
0ffaaa3da7 Use JSON as pagekite action-script arguments
This allows to safe some conversions
2015-05-04 10:20:37 +02:00
fonfon
4561c3bcd9 Removed quote-checking functionality from pagekite
actions.py doesn't use shlex.quote anymore so I don't
have to check for accidentially quoted things anymore.
2015-05-03 19:27:12 +02:00
fonfon
7af92d9e65 Updated unit- and doctests 2015-05-03 19:27:12 +02:00
fonfon
7a4486fadf pagekite: restart service when config is changed
so the changed config gets applied immediately, and
not only after enabling/disabling the service manually.
2015-05-03 16:53:47 +02:00
fonfon
ef08f40447 minor layout cleanup 2015-05-03 15:28:45 +02:00
fonfon
3cc0cb74a6 Prevent adding existing or predefined services
and improved form error handling
2015-05-03 09:44:46 +02:00
fonfon
3f2c9ff2c8 cleaned up actions and configuration form 2015-05-03 09:44:46 +02:00
fonfon
99bfda3b69 removed default frontend stuff from actions
it's all handled via get-frontend and set-frontend now.
and there are now some doctests in actions/pagekite_util.py
2015-05-03 09:44:46 +02:00
fonfon
b96c89b0ab make pagekite login-required;
restart pagekite after adding/deleting a service so the changes take
effect;
improved warnings in the UI
2015-05-03 09:44:46 +02:00
fonfon
d5d9e2df2e renamed variables for consistency
there are only 'service' and 'service_string' now, no more 'params'
2015-05-03 09:44:46 +02:00
fonfon
c04897be8b Moved pagekit url creation to pagekite module
plus some minor cleanup
2015-05-03 09:44:46 +02:00
fonfon
8955e41f15 pagekite is required to be installed via package now 2015-05-03 09:44:46 +02:00
fonfon
1fc0064fd0 refactoring pagekite: configuration form works
splitting the services to a separate page is not yet finished
2015-05-03 09:44:46 +02:00
fonfon
cf96797040 pagekite action: Use augeas pagekite lens
And allow setting any server as pagekite frontend.
2015-05-03 09:44:45 +02:00
Sunil Mohan Adapa
be838a30c1 package: Add ability to receive notification on install
- Fix issue with Mumble firewall enabling after a fresh install.
2015-03-28 16:02:39 -04:00
Sunil Mohan Adapa
7b45ad1813 Use package framework for installing pagekite 2015-01-05 00:13:19 +05:30
fonfon
ae83566653 removed unused 'title' from subsubmenus 2014-12-15 15:54:40 +01:00
Sunil Mohan Adapa
4b249be175 Reduce pagekite configuration button size 2014-12-06 17:08:38 +05:30
Sunil Mohan Adapa
057d1063f3 Use <code> tag for commands 2014-12-06 17:08:38 +05:30
Sunil Mohan Adapa
10a32f43d9 Fix issue with showing installed status of pagekite 2014-12-06 17:08:37 +05:30
fonfon
96a14e3d0d moved 'in-app menu' from the sidebar to the top of the content; some template block renaming 2014-12-06 17:08:37 +05:30
fonfon
e2a867901d removed js_block: use page_js or app_js instead 2014-12-02 12:54:04 +01:00
Sunil Mohan Adapa
678d159a32 Minor styling changes 2014-11-23 14:26:48 +05:30
Sunil Mohan Adapa
86ce7cdf25 Use globe glyphicon for pagekite 2014-11-23 14:15:45 +05:30
Sunil Mohan Adapa
6a1f96d7c2 Bootstrap change .btn-primary -> .btn .btn-primary
Only then the full intended style will apply.  This is a change from
Bootstrap 2 to Bootstrap 3.
2014-11-23 14:08:13 +05:30
fonfon
f0582e7a94 replaced bootstrap2 by bootstrap3 2014-11-11 19:06:47 +01:00
Sunil Mohan Adapa
cc549fff61 Load modules using explict paths instead of config file name 2014-10-04 13:41:27 +05:30
Sunil Mohan Adapa
65fa648d9f Reorganize python sources into 'plinth' package 2014-08-29 12:57:27 +05:30