def __init__(self, *args, **kwargs): super(NewHostForm, self).__init__(*args, **kwargs) self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices() self.fields['responsible_group'].choices = Dropdown.get('responsible_groups').as_choices() self.fields['support_group'].choices = Dropdown.get('responsible_groups').as_choices() self.fields['security_class'].choices = Dropdown.get('security_classes').as_choices() self.fields['managed_by'].choices = Dropdown.get('host_management_sw').as_choices()
def __init__(self, *args, **kwargs): super(EditServiceForm, self).__init__(*args, **kwargs) self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices() self.fields['responsible_group'].choices = Dropdown.get('responsible_groups').as_choices() self.fields['support_group'].choices = Dropdown.get('responsible_groups').as_choices() service_types = ServiceType.objects.all().prefetch_related('service_class').order_by('service_class__name','name') self.fields['service_type'].choices = [t.as_choice() for t in service_types] self.fields['relationship_provider'].choices = get_node_type_tuples('Provider')
def __init__(self, *args, **kwargs): super(NewOdfForm, self).__init__(*args, **kwargs) # Set max number of ports to choose from max_num_of_ports = 48 choices = [(x, x) for x in range(1, max_num_of_ports + 1) if x] self.fields['max_number_of_ports'].choices = choices self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices()
def edit_port(request, handle_id): nh, port = helpers.get_nh_node(handle_id) parent = port.get_parent() connected_to = port.get_connected_to() parent_categories = ['external-equipment', 'firewall', 'host', 'odf', 'optical-node', 'router', 'switch'] connections_categories = Dropdown.get('cable_types').as_values(False) if request.POST: form = forms.EditPortForm(request.POST) if form.is_valid(): # Generic node update helpers.form_update_node(request.user, port.handle_id, form) # Port specific updates if form.cleaned_data['relationship_parent']: parent_nh = NodeHandle.objects.get(pk=form.cleaned_data['relationship_parent']) helpers.set_has(request.user, parent_nh.get_node(), port.handle_id) if form.cleaned_data['relationship_connected_to']: cable_nh = NodeHandle.objects.get(pk=form.cleaned_data['relationship_connected_to']) helpers.set_connected_to(request.user, cable_nh.get_node(), port.handle_id) if 'saveanddone' in request.POST: return redirect(nh.get_absolute_url()) else: return redirect('%sedit' % nh.get_absolute_url()) else: form = forms.EditPortForm(port.data) return render(request, 'noclook/edit/edit_port.html', {'node_handle': nh, 'form': form, 'node': port, 'parent': parent, 'connected_to': connected_to, 'parent_categories': parent_categories, 'connections_categories': connections_categories})
def new_cable(request, **kwargs): cable_types = u', '.join([ u'"{}"'.format(val) for val in Dropdown.get('cable_types').as_values() ]) if request.POST: form = forms.NewCableForm(request.POST) if form.is_valid(): try: nh = helpers.form_to_unique_node_handle( request, form, 'cable', 'Physical') except UniqueNodeError: form = forms.NewCableForm(request.POST) form.add_error('name', 'A Cable with that name already exists.') return render(request, 'noclook/create/create_cable.html', {'form': form}) helpers.form_update_node(request.user, nh.handle_id, form) if form.cleaned_data['relationship_provider']: node = nh.get_node() provider_nh = NodeHandle.objects.get( pk=form.cleaned_data['relationship_provider']) helpers.set_provider(request.user, node, provider_nh.handle_id) return redirect(nh.get_absolute_url()) else: name = kwargs.get('name', None) initial = {'name': name} form = forms.NewCableForm(initial=initial) csv_form = forms.CsvForm(['name, cable_type, description'], request.POST or None) return render(request, 'noclook/create/create_cable.html', { 'form': form, 'csv_form': csv_form, 'cable_types': cable_types })
def __init__(self, *args, **kwargs): super(CableResource, self).__init__(*args, **kwargs) try: self.fields['cable_type'].help_text = u'Choices {}'.format( Dropdown.get('cable_types').as_values()) except: # Fails during creatin also will not update when cabletypes are added. pass
def create_site(self, name=None): # create object if not name: name = self.company_name() site = self.get_or_create_node( name, 'Site', META_TYPES[3]) # Location # add context self.add_network_context(site) # choices country_codes = self.get_dropdown_keys('countries') countries = [ x[1] for x in DropModel.get('countries').as_choices()[1:] ] site_types = self.get_dropdown_keys('site_types') data = { 'country': random.choice(country_codes), 'longitude': self.fake.longitude(), 'latitude': self.fake.latitude(), 'area': self.random_county(), 'owner_id': self.fake.license_plate(), 'owner_site_name': self.fake.company(), 'url': self.fake.url(), 'telenor_subscription_id': self.fake.license_plate(), } # add site type if site_types: data['site_type'] = random.choice(site_types) for key, value in data.items(): if value: value = self.escape_quotes(value) site.get_node().add_property(key, value) # add address num_address = random.randint(1, 3) for i in range(num_address): address = self.create_address(context_f=self.add_network_context) helpers.set_has_address(self.user, site.get_node(), address.handle_id) # add site owner site_owner = self.create_site_owner() helpers.set_responsible_for(self.user, site.get_node(), site_owner.handle_id) return site
def new_cable_csv(request): csv_headers = ['name', 'cable_type', 'description'] cable_types = u', '.join([ u'"{}"'.format(val) for val in Dropdown.get('cable_types').as_values() ]) form = forms.CsvForm(csv_headers, request.POST or None) form.is_valid() csv_data = form.cleaned_data['csv_data'] show_view = {} errors = False if csv_data: # check errors cables = form.csv_parse_list(_csv_to_cable_form) for cable in cables: if not cable.is_valid(): errors = True if not errors and form.cleaned_data['reviewed']: # Time to save data! error_cables = _create_cables(request, cables) if error_cables: show_view = {'cables': error_cables} else: msg = 'Successfully added {} cables'.format(len(cables)) messages.success(request, msg) else: show_view = {'reviewed': True, 'cables': cables} if show_view: new_csv = _forms_to_csv(show_view.get('cables'), csv_headers) form = forms.CsvForm(csv_headers, { 'csv_data': new_csv, 'reviewed': show_view.get('reviewed', False) }) return render( request, 'noclook/create/create_cable_csv.html', { 'form': form, 'cables': show_view.get('cables'), 'cable_types': cable_types }) else: # TODO: stop using hardcoded urls :( return redirect('/cable/')
def __init__(self, *args, **kwargs): super(NewPortForm, self).__init__(*args, **kwargs) self.fields['port_type'].choices = Dropdown.get('port_types').as_choices()
def get_dropdown_keys(self, dropdown_name): return [ x[0] for x in DropModel.get(dropdown_name).as_choices()[1:] ]
def countries(): choices = Dropdown.get('countries').as_choices() codes, countries = zip(*choices) return zip(countries, countries)
def __init__(self, *args, **kwargs): super(EditOpticalPathForm, self).__init__(*args, **kwargs) self.fields['framing'].choices = Dropdown.get('optical_path_framing').as_choices() self.fields['capacity'].choices = Dropdown.get('optical_path_capacity').as_choices() self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices() self.fields['relationship_provider'].choices = get_node_type_tuples('Provider')
def __init__(self, *args, **kwargs): super(NewCableForm, self).__init__(*args, **kwargs) self.fields['cable_type'].choices = Dropdown.get('cable_types').as_choices() self.fields['relationship_provider'].choices = get_node_type_tuples('Provider')
def __init__(self, *args, **kwargs): super(EditOpticalLinkForm, self).__init__(*args, **kwargs) self.fields['relationship_provider'].choices = get_node_type_tuples('Provider') self.fields['link_type'].choices = Dropdown.get('optical_link_types').as_choices() self.fields['interface_type'].choices = Dropdown.get('optical_link_interface_type').as_choices() self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices()
def __init__(self, *args, **kwargs): super(EditOpticalMultiplexSectionForm, self).__init__(*args, **kwargs) self.fields['relationship_provider'].choices = get_node_type_tuples('Provider') self.fields['relationship_depends_on'].choices = get_node_type_tuples('Optical Link') self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices()
def __init__(self, *args, **kwargs): super(EditSiteForm, self).__init__(*args, **kwargs) self.fields['country_code'].choices = country_codes() self.fields['country'].choices = countries() self.fields['site_type'].choices = Dropdown.get('site_types').as_choices() self.fields['relationship_responsible_for'].choices = get_node_type_tuples('Site_Owner')
def __init__(self, *args, **kwargs): super(OpticalNodeForm, self).__init__(*args, **kwargs) self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices() self.fields['type'].choices = Dropdown.get('optical_node_types').as_choices()
def __init__(self, *args, **kwargs): super(EditOdfForm, self).__init__(*args, **kwargs) self.fields['operational_state'].choices = Dropdown.get('operational_states').as_choices()
def country_map(country_code): return dict(Dropdown.get('countries').as_choices(False)).get(country_code, '')
def country_code_map(country): return {k: v for v, k in Dropdown.get('countries').as_choices(False)}.get(country, '')
def __init__(self, *args, **kwargs): super(EditCableForm, self).__init__(*args, **kwargs) self.fields['tele2_cable_contract'].choices = Dropdown.get( 'tele2_cable_contracts').as_choices()
def country_codes(): codes = Dropdown.get('countries').as_values() return zip(codes, codes)