def __init__(self, *args, **kwargs): super(SettingsForm, self).__init__(*args, **kwargs) self.instance._original_stg_guiprotocol = self.instance.stg_guiprotocol self.instance._original_stg_guiaddress = self.instance.stg_guiaddress self.instance._original_stg_guiport = self.instance.stg_guiport self.instance._original_stg_guihttpsport = self.instance.stg_guihttpsport self.instance._original_stg_guihttpsredirect = self.instance.stg_guihttpsredirect self.instance._original_stg_syslogserver = ( self.instance.stg_syslogserver ) self.instance._original_stg_directoryservice = ( self.instance.stg_directoryservice ) self.fields['stg_language'].choices = settings.LANGUAGES self.fields['stg_language'].label = _("Language (Require UI reload)") self.fields['stg_guiaddress'] = forms.ChoiceField( label=self.fields['stg_guiaddress'].label ) self.fields['stg_guiaddress'].choices = [ ['0.0.0.0', '0.0.0.0'] ] + list(choices.IPChoices(ipv6=False)) self.fields['stg_guiv6address'] = forms.ChoiceField( label=self.fields['stg_guiv6address'].label ) self.fields['stg_guiv6address'].choices = [ ['::', '::'] ] + list(choices.IPChoices(ipv4=False))
def __init__(self, *args, **kwargs): super(iSCSITargetPortalIPForm, self).__init__(*args, **kwargs) self.fields['iscsi_target_portalip_ip'] = forms.ChoiceField( label=self.fields['iscsi_target_portalip_ip'].label, ) ips = [('', '------'), ('0.0.0.0', '0.0.0.0')] iface_ips = { iface.int_vip: f'{iface.int_ipv4address}, {iface.int_ipv4address_b}' for iface in Interfaces.objects.exclude( Q(int_vip=None) | Q(int_vip='')) } for alias in Alias.objects.exclude( Q(alias_vip=None) | Q(alias_vip='')): iface_ips[ alias. alias_vip] = f'{alias.alias_v4address}, {alias.alias_v4address_b}' for k, v in choices.IPChoices(): if v in iface_ips: v = iface_ips[v] ips.append((k, v)) self.fields['iscsi_target_portalip_ip'].choices = ips if not self.instance.id and not self.data: if not (self.parent and self.parent.instance.id and self.parent.instance.ips.all().count() > 0) or ( self.parent and not self.parent.instance.id): self.fields['iscsi_target_portalip_ip'].initial = '0.0.0.0'
def __init__(self, *args, **kwargs): super(S3Form, self).__init__(*args, **kwargs) key_order(self, 1, 's3_bindip', instance=True) key_order(self, 2, 's3_bindport', instance=True) key_order(self, 3, 's3_access_key', instance=True) key_order(self, 4, 's3_secret_key', instance=True) key_order(self, 5, 's3_secret_key2', instance=True) key_order(self, 6, 's3_disks', instance=True) key_order(self, 7, 's3_certificate', instance=True) key_order(self, 8, 's3_mode', instance=True) key_order(self, 9, 's3_browser', instance=True) self.fields['s3_bindip'].choices = [('0.0.0.0', '0.0.0.0')] + list( choices.IPChoices()) if self.instance.id and self.instance.s3_bindip: bindips = [] for ip in self.instance.s3_bindip: bindips.append(ip.encode('utf-8')) self.fields['s3_bindip'].initial = (bindips) else: self.fields['s3_bindip'].initial = ('') if self.instance.id: self.fields['s3_secret_key2'].initial = self.instance.s3_secret_key if self._api is True: del self.fields['s3_secret_key2'] self.fields['s3_mode'].widget = forms.widgets.HiddenInput()
def __init__(self, *args, **kwargs): super(CIFSForm, self).__init__(*args, **kwargs) if self.data and self.data.get('cifs_srv_bindip'): if ',' in self.data['cifs_srv_bindip']: self.data = self.data.copy() self.data.setlist('cifs_srv_bindip', self.data['cifs_srv_bindip'].split(',')) self.fields['cifs_srv_bindip'].choices = list( choices.IPChoices(noloopback=False)) self.fields[ 'cifs_srv_unixcharset'].choices = choices.UNIXCHARSET_CHOICES() if self.instance.id and self.instance.cifs_srv_bindip: bindips = [] for ip in self.instance.cifs_srv_bindip: bindips.append(ip) self.fields['cifs_srv_bindip'].initial = (bindips) else: self.fields['cifs_srv_bindip'].initial = ('') if activedirectory_enabled(): self.initial['cifs_srv_localmaster'] = False self.fields['cifs_srv_localmaster'].widget.attrs[ 'disabled'] = 'disabled' self.initial['cifs_srv_timeserver'] = False self.fields['cifs_srv_timeserver'].widget.attrs[ 'disabled'] = 'disabled' self.initial['cifs_srv_domain_logons'] = False self.fields['cifs_srv_domain_logons'].widget.attrs[ 'disabled'] = 'disabled' elif ldap_enabled(): self.initial['cifs_srv_domain_logons'] = True self.fields['cifs_srv_domain_logons'].widget.attrs[ 'readonly'] = True _n = notifier() if not _n.is_freenas(): if not _n.failover_licensed(): del self.fields['cifs_srv_netbiosname_b'] else: from freenasUI.failover.utils import node_label_field node_label_field( _n.failover_node(), self.fields['cifs_srv_netbiosname'], self.fields['cifs_srv_netbiosname_b'], ) else: del self.fields['cifs_srv_netbiosname_b']
def __init__(self, *args, **kwargs): super(AFPForm, self).__init__(*args, **kwargs) if self.data and self.data.get('afp_srv_bindip'): if ',' in self.data['afp_srv_bindip']: self.data = self.data.copy() self.data.setlist('afp_srv_bindip', self.data['afp_srv_bindip'].split(',')) self.fields['afp_srv_bindip'].choices = list(choices.IPChoices()) if self.instance.id and self.instance.afp_srv_bindip: bindips = [] for ip in self.instance.afp_srv_bindip: bindips.append(ip) self.fields['afp_srv_bindip'].initial = (bindips) else: self.fields['afp_srv_bindip'].initial = ('')
def __init__(self, *args, **kwargs): super(NFSForm, self).__init__(*args, **kwargs) if self.data and self.data.get('nfs_srv_bindip'): if ',' in self.data['nfs_srv_bindip']: self.data = self.data.copy() self.data.setlist( 'nfs_srv_bindip', self.data['nfs_srv_bindip'].split(',') ) self.fields['nfs_srv_bindip'].choices = list(choices.IPChoices()) if self.instance.id and self.instance.nfs_srv_bindip: bindips = [] for ip in self.instance.nfs_srv_bindip: bindips.append(ip) self.fields['nfs_srv_bindip'].initial = bindips else: self.fields['nfs_srv_bindip'].initial = '' key_order(self, 2, 'nfs_srv_bindip', instance=True) self.fields['nfs_srv_mountd_port'].label = ( self.fields['nfs_srv_mountd_port'].label.lower() ) self.fields['nfs_srv_rpcstatd_port'].label = ( self.fields['nfs_srv_rpcstatd_port'].label.lower() ) self.fields['nfs_srv_rpclockd_port'].label = ( self.fields['nfs_srv_rpclockd_port'].label.lower() ) self.instance._original_nfs_srv_v4 = self.instance.nfs_srv_v4 self.fields['nfs_srv_v4'].widget.attrs['onChange'] = ( 'javascript:toggleNFSService();' ) self.fields['nfs_srv_v4_v3owner'].widget.attrs['onChange'] = ( 'javascript:toggleNFSService();' ) self.fields['nfs_srv_16'].widget.attrs['onChange'] = ( 'javascript:toggleNFSService();' ) if not self.instance.nfs_srv_v4 or (self.instance.nfs_srv_v4 and self.instance.nfs_srv_16): self.fields['nfs_srv_v4_v3owner'].widget.attrs['disabled'] = ( 'disabled' ) if self.instance.nfs_srv_v4_v3owner: self.fields['nfs_srv_16'].widget.attrs['disabled'] = 'disabled'
class Migration(migrations.Migration): dependencies = [ ('services', '0009_auto_20170703_1109'), ] operations = [ migrations.AlterField( model_name='nfs', name='nfs_srv_bindip', field=freenasUI.freeadmin.models.fields.MultiSelectField(blank=True, choices=choices.IPChoices(), help_text='Select the IP addresses to listen to for NFS requests. If left unchecked, NFS will listen on all available addresses.', max_length=250, verbose_name='Bind IP Addresses'), ), ]