Endian banner

endian.hotspot.web package

Submodules

endian.hotspot.web.controllers module

class HotspotController(storage=None, key=None, action=None, check=None, **params)

Bases: endian.emi.controllers.switch.SwitchController

action()
check()
controllers = [<endian.hotspot.web.controllers.HotspotSettingsController object at 0xb8b472c>]
description = 'To enable the hotspot click on the switch above.'
key = 'HOTSPOT_ENABLED'
settings = <endian.hotspot.web.controllers.HotspotSettingsController object at 0xb8b472c>
storage = <endian.emi.storage.datasourcestorage.DataSourceStorage object at 0xb8b450c>
switch()

toggle the value of the key form on to off or off to on

switch_title = 'Enable Hotspot'

endian.hotspot.web.widgets module

class HotspotSettings(*args, **kw)

Bases: endian.emi.widgets.settingseditor.SettingsEditor

children = [SingleSelectField('HOTSPOT_ROLE', children=[], **{'expands': True, 'label_text': 'Role', 'hover_help': True, 'options': [('master', 'Master / Standalone hotspot'), ('satellite', 'Satellite hotspot'), ('external', 'External RADIUS Server')]}), HiddenField('HOTSPOT_ENABLED', children=[], **{}), Container('a_satelliteContainer', children=[TextField('HOTSPOT_MASTER', children=[], **{'label_text': 'Master hotspot IP address'}), PasswordField('HOTSPOT_MASTER_PASSWORD', children=[], **{'label_text': 'Master hotspot password'}), RelationField('HOTSPOT_VPN', children=[], **{'help_text': 'Only hotspots connected to the Master hotspot via OpenVPN can act as hotspot satellite.', 'key': 'key', 'relation': <function getVPNServer at 0xbb50064>, 'value': 'name', 'label_text': 'Hotspot VPN tunnel'})], **{'info_text': 'Please note that when using this hotspot as a satellite, account and ticket management can only be used on the master hotspot.', 'toggle_option': 'satellite', 'toggle_name': 'HOTSPOT_ROLE'}), Container('externalContainer', children=[TextField('RADIUS_IP', children=[], **{'label_text': 'RADIUS Server IP address'}), PasswordField('RADIUS_PASSWORD', children=[], **{'label_text': 'RADIUS Server password'}), TextField('RADIUS_IP2', children=[], **{'expands': True, 'label_text': 'Fallback RADIUS Server IP address'}), TextField('RADIUS_AUTHPORT', children=[], **{'label_text': 'RADIUS Server AUTH port', 'size': 5}), TextField('RADIUS_ACCTPORT', children=[], **{'label_text': 'RADIUS Server ACCT port', 'size': 5}), TextField('RADIUS_COAPORT', children=[], **{'expands': True, 'label_text': 'RADIUS Server COA port', 'size': 5}), CheckBox('CHILLI_EXTERNAL_PORTAL', children=[], **{'expands': True, 'label_text': 'Use external Portal'}), TextField('CHILLI_UAMSERVER', children=[], **{'expands': True, 'toggle_option': 'on', 'label_text': 'External Portal URL', 'toggle_name': 'CHILLI_EXTERNAL_PORTAL'}), TextField('RADIUS_NASID', children=[], **{'help_text': 'hostname will be used if empty', 'toggle_option': 'on', 'label_text': 'NAS ID', 'toggle_name': 'CHILLI_EXTERNAL_PORTAL'}), TextField('CHILLI_UAMSECRET', children=[], **{'help_text': 'will be disabled if empty', 'toggle_option': 'on', 'label_text': 'UAM Secret', 'toggle_name': 'CHILLI_EXTERNAL_PORTAL'}), TextArea('CHILLI_ALLOWED', children=[], **{'help_text': 'Example (one each line): .google.com www.google.com:443 tcp:www.google.com:80 udp:10.1.1.1:11', 'toggle_option': 'on', 'label_text': 'Allowed Sites / Access', 'toggle_name': 'CHILLI_EXTERNAL_PORTAL'}), CheckBox('CHILLI_UAMANYIP', children=[], **{'help_text': 'Allows access for clients which have dhcp disabled', 'toggle_option': 'on', 'label_text': 'Enable AnyIP', 'toggle_name': 'CHILLI_EXTERNAL_PORTAL'})], **{'info_text': 'Please note that when using an external RADIUS Server account and ticket management on this machine cannot be used.', 'toggle_option': 'external', 'toggle_name': 'HOTSPOT_ROLE'}), Container('masterContainer', children=[TextField('HOTSPOT_PASSWORD', children=[], **{'help_text': 'Leave it empty to generate a random password.', 'label_text': 'Hotspot password'}), MultipleRelationField('HOTSPOT_OPENVPNUSER', children=[], **{'relation': <function getVPNUser at 0xbb50294>, 'label_text': 'Hotspot satellites', 'key': 'key', 'help_text': 'Only hotspots running on OpenVPN accounts that have been configured with a static IP address can act as hotspot satellites.', 'expands': True, 'value': 'name'}), Container(None, children=[CheckBox('AUTH_LAYER_ENABLED', children=[], **{'help_text': 'RADIUS, LDAP or Active Directory authentication', 'expand': True, 'toggle_option': 'master', 'label_text': 'Use External Authentication', 'toggle_name': 'HOTSPOT_ROLE'}), Container(None, children=[SingleSelectField('AUTH_LAYER_PROVIDER', children=[], **{'expands': True, 'hover_help': True, 'label_text': 'Server type', 'options': [('ldap', 'LDAP (v2, v3, Novell eDirectory, AD)'), ('radius', 'RADIUS')]}), Container(None, children=[SingleSelectField('AUTH_LDAP_PRESET', children=[], **{'label_text': 'LDAP server type', 'hover_help': True, 'options': [('none', 'Generic'), ('activedirectory', 'Active Directory'), ('novelledirectory', 'Novell eDirectory')]}), TextField('AUTH_LDAP_URI', children=[], **{'label_text': 'LDAP server'}), TextField('AUTH_LDAP_USER_BASEDN', children=[], **{'label_text': 'Bind DN settings'}), TextField('AUTH_LDAP_BIND_DN', children=[], **{'label_text': 'Bind DN username'}), PasswordField('AUTH_LDAP_BIND_PASSWORD', children=[], **{'label_text': 'Bind DN password'}), TextField('AUTH_LDAP_USER_SEARCHFILTER', children=[], **{'label_text': 'User search filter'}), TextField('AUTH_LDAP_URI_BACKUP', children=[], **{'label_text': 'LDAP backup server'}), SingleSelectField('EXTERNAL_RATE_LDAP', children=[], **{'label_text': 'Default rate', 'hover_help': True, 'options': <function getRatesForExternalUsers at 0xbb50614>})], **{'info_text': 'LDAP Settings', 'toggle_option': 'ldap', 'toggle_name': 'AUTH_LAYER_PROVIDER'}), Container(None, children=[TextField('AUTH_RADIUS_SERVER', children=[], **{'label_text': 'RADIUS server'}), TextField('AUTH_RADIUS_PORT', children=[], **{'label_text': 'Port of RADIUS server'}), TextField('AUTH_RADIUS_IDENTIFIER', children=[], **{'label_text': 'Identifier'}), PasswordField('AUTH_RADIUS_SECRET', children=[], **{'label_text': 'Shared secret'}), TextField('AUTH_RADIUS_SERVER_BACKUP', children=[], **{'label_text': 'RADIUS backup server'}), SingleSelectField('EXTERNAL_RATE_RADIUS', children=[], **{'label_text': 'Default rate', 'hover_help': True, 'options': <function getRatesForExternalUsers at 0xbb50614>})], **{'info_text': 'RADIUS Settings', 'toggle_option': 'radius', 'toggle_name': 'AUTH_LAYER_PROVIDER'}), Container(None, children=[SingleSelectField('EXTERNAL_RATE_EHI', children=[], **{'label_text': 'Default rate', 'hover_help': True, 'options': <function getRatesForExternalUsers at 0xbb50614>})], **{'info_text': 'Endpont Settings', 'toggle_option': 'ehi', 'toggle_name': 'AUTH_LAYER_PROVIDER'})], **{'expands': True, 'toggle_option': 'on', 'columns': 2, 'toggle_name': 'AUTH_LAYER_ENABLED'})], **{'separator': True, 'expands': True, 'columns': 2})], **{'toggle_option': 'master', 'columns': 2, 'toggle_name': 'HOTSPOT_ROLE'}), HiddenField('ACTION', children=[], **{}), HiddenField('CONTROLLERNAME', children=[], **{})]
params = frozenset(['show_control', 'strip_name', 'disabled', 'attrs', 'container_attrs', 'help_text', 'id', 'show_labels', 'submit_text', 'style', 'hover_help', 'title', 'show_error', 'show_children_errors', 'chained_validators', 'is_required', 'method', 'columns', 'label_text', 'suppress_label', 'container_id', 'legend', 'enctype', 'name', 'table_attrs', 'info_text', 'css_class', 'fields_group', 'separator', 'css_classes', 'action', 'expands', 'save_text'])
source_vars = frozenset([])

Module contents

init(root)

Table Of Contents

Previous topic

endian.hotspot package

Next topic

endian.ipsec package