Commit d61e0989 authored by Guillaume Michon's avatar Guillaume Michon

Initial revision


git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@1035 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent da3114cf
##############################################################################
#
# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved.
# Guillaume Michon <guillaume@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
from Globals import InitializeClass, PersistentMapping
from AccessControl import ClassSecurityInfo
from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface
from Products.ERP5.Document.Item import Item
from Products.ERP5.PropertySheet.Device import Device as ERP5Device
class VPN(Item):
"""
VPNs represent VPN equipments specific to Nexedi
"""
meta_type = 'Nexedi VPN'
portal_type = 'VPN'
add_permission = Permissions.AddPortalContent
isPortalContent = 1
isRADContent = 1
# Declarative security
security = ClassSecurityInfo()
security.declareObjectProtected(Permissions.View)
# Declarative properties
property_sheets = ( PropertySheet.Base
, PropertySheet.XMLObject
, PropertySheet.CategoryCore
, PropertySheet.DublinCore
, PropertySheet.Price
, PropertySheet.Resource
, PropertySheet.Item
, PropertySheet.Amount
, PropertySheet.Reference
, PropertySheet.Device
, PropertySheet.VPN
)
# Factory Type Information
factory_type_information = \
{ 'id' : portal_type
, 'meta_type' : meta_type
, 'description' : """\
Devices represent VPN equipments specific to Nexedi."""
, 'icon' : 'item_icon.gif'
, 'product' : 'Nexedi'
, 'factory' : 'addVPN'
, 'immediate_view' : 'VPN_view'
, 'actions' :
( { 'id' : 'view'
, 'name' : 'View'
, 'category' : 'object_view'
, 'action' : 'VPN_view'
, 'permissions' : (
Permissions.View, )
}
, { 'id' : 'print'
, 'name' : 'Print'
, 'category' : 'object_print'
, 'action' : 'VPN_print'
, 'permissions' : (
Permissions.View, )
}
, { 'id' : 'metadata'
, 'name' : 'Metadata'
, 'category' : 'object_view'
, 'action' : 'metadata_view'
, 'permissions' : (
Permissions.View, )
}
, { 'id' : 'translate'
, 'name' : 'Translate'
, 'category' : 'object_action'
, 'action' : 'translation_template_view'
, 'permissions' : (
Permissions.TranslateContent, )
}
)
}
##############################################################################
#
# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved.
# Guillaume Michon <guillaume@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
class VPN:
"""
VPN Class stores specific informations on a Nexedi VPN Device
"""
_properties = (
{ 'id' : 'external_ip_address',
'description' : 'External IP address',
'type' : 'string',
'mode' : '' },
{ 'id' : 'bind_shared_key',
'description' : 'Bind Shared Key',
'type' : 'string',
'mode' : '' },
{ 'id' : 'bind_zone',
'description' : 'Bind Zone',
'type' : 'string',
'mode' : '' },
{ 'id' : 'bind_records',
'description' : 'Bind Records',
'type' : 'text',
'mode' : '' },
{ 'id' : 'bind_reverse_records',
'description' : 'Bind Reverse Records',
'type' : 'text',
'mode' : '' },
{ 'id' : 'shorewall_rules_extra_config',
'description' : 'Shorewall Rules Extra Config',
'type' : 'text',
'mode' : '' },
{ 'id' : 'root_password',
'description' : 'Root Password',
'type' : 'string',
'mode' : '' },
{ 'id' : 'web_password',
'description' : 'Web Password',
'type' : 'string',
'mode' : '' },
{ 'id' : 'vpn_type',
'description' : 'VPN Type',
'type' : 'string',
'mode' : '' },
{ 'id' : 'bridge_device',
'description' : 'Bridge Device',
'type' : 'string',
'mode' : '' },
{ 'id' : 'version',
'description' : 'OS Version',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_netmask_bits',
'description' : 'Netmask Bits of Second Interface',
'type' : 'int',
'mode' : '' },
{ 'id' : 'second_network_address',
'description' : 'Network Address of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_wlan_wep_key',
'description' : 'WLAN Key of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_wlan_essid',
'description' : 'WLAN EssID of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_wlan_channel',
'description' : 'WLAN Channel of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_network_interface',
'description' : 'Second Network Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_network_type',
'description' : 'Network Type of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_dhcp_range_start',
'description' : 'DHCP Range Start of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_dhcp_range_end',
'description' : 'DHCP Range End of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'second_dhcp_extra_config',
'description' : 'DHCP Extra Config of Second Interface',
'type' : 'text',
'mode' : '' },
{ 'id' : 'second_dhcp_wlan_port',
'description' : 'WLAN Port of Second Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_netmask_bits',
'description' : 'Netmask Bits of Third Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_network_address',
'description' : 'Network Address of Third Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_network_interface',
'description' : 'Third Network Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_network_type',
'description' : 'Network Type of Third Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_dhcp_range_start',
'description' : 'DHCP Range Start of Third Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_dhcp_range_end',
'description' : 'DHCP Range End of Third Interface',
'type' : 'string',
'mode' : '' },
{ 'id' : 'third_dhcp_extra_config',
'description' : 'DHCP Extra Config of Third Interface',
'type' : 'text',
'mode' : '' }
)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment