def search_list(request): try: lists = dict() lists['search_form'] = SearchEquipForm() lists['del_form'] = DeleteForm() if request.method == "GET": # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all script_types from NetworkAPI script_list = client.create_roteiro().listar() lists['add_form'] = AssociateScriptForm(script_list) if request.GET.__contains__('equip_name'): lists['search_form'] = search_form = SearchEquipForm( request.GET) if search_form.is_valid(): # Get equip name in form name_equip = search_form.cleaned_data['equip_name'] # Get all equipment scripts from NetworkAPI equip_script_list = client.create_equipamento_roteiro( ).list_by_equip(name_equip) # Set equipment id equipment = equip_script_list['equipamento'] init_map = { 'equip_name': equipment['name'], 'equip_id': equipment['id'] } # New form add_form = AssociateScriptForm(script_list, initial=init_map) del_form = DeleteForm(initial=init_map) # Send to template lists['del_form'] = del_form lists['add_form'] = add_form lists['search_form'] = search_form try: lists['equip_script'] = equip_script_list[ 'equipamento_roteiro'] except KeyError: lists['equip_script'] = [] except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def search_list(request): try: lists = dict() lists['delete_form'] = DeleteForm() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all environments from NetworkAPI env_list = client.create_ambiente().list_all() # Get all equipment types from NetworkAPI type_equip_list = client.create_tipo_equipamento().listar() # Get all groups from NetworkAPI group_list = client.create_grupo_equipamento().listar() search_form = SearchEquipmentForm(env_list, type_equip_list, group_list) lists['search_form'] = search_form except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_all(request): try: filter_list = dict() # Get user auth = AuthSession(request.session) filter_client = auth.get_clientFactory().create_filter() # Get all filters from NetworkAPI filter_list = filter_client.list_all() for filter_ in filter_list['filter']: filter_['is_more'] = str(False) if filter_.get('equip_types') is not None: if type(filter_['equip_types']) is dict: filter_['equip_types'] = [filter_['equip_types']] if len(filter_['equip_types']) > 3: filter_['is_more'] = str(True) filter_list['form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def template_list(request): try: auth = AuthSession(request.session) client = auth.get_clientFactory() lists = dict() # Get user user = AuthSession(request.session).get_user() templates = get_templates(user) lists['templates'] = list() lists["delete_form"] = DeleteForm() for template in templates: envs = client.create_ambiente().get_environment_template( template['name'], template['network']) if envs: envs = envs['ambiente'] if not isinstance( envs['ambiente'], unicode) else [ envs['ambiente'], ] lists['templates'].append({ 'name': template['name'], 'network': template['network'], 'envs': envs }) except (NetworkAPIClientError, GITError, ValueError), e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def template_delete(request): auth = AuthSession(request.session) client = auth.get_clientFactory() if request.method == 'POST': form = DeleteForm(request.POST) if form.is_valid(): # Get user user = AuthSession(request.session).get_user() # All ids to be deleted ids = split_to_array(form.cleaned_data['ids']) for id in ids: id_split = id.split('+') template_name = id_split[0] template_name = urllib.unquote_plus(str(template_name)) network = id_split[1] if check_template(template_name, network, user): client.create_ambiente().set_template( 0, template_name, network) delete_template(template_name, network, user) messages.add_message(request, messages.SUCCESS, acl_messages.get("success_remove")) else: messages.add_message(request, messages.ERROR, error_messages.get("select_one")) return HttpResponseRedirect(reverse('acl.template.list'))
def delete_sudoer_all(request): if request.method == 'POST': ldap = Ldap(AuthSession(request.session).get_user().get_username()) form = DeleteForm(request.POST) if form.is_valid(): # All cns to be deleted cns = split_to_array(form.cleaned_data['ids']) # All messages to display error_list = list() # Control others exceptions have_errors = False # For each sudoer selected to remove for cn in cns: try: ldap.rem_sudoer(cn) except LDAPNotFoundError, e: error_list.append(cn) have_errors = True except LDAPError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) have_errors = True break # If cant remove nothing if len(error_list) == len(cns): messages.add_message( request, messages.ERROR, error_messages.get("can_not_remove_all")) # If cant remove someones elif len(error_list) > 0: msg = "" for id_error in error_list: msg = msg + id_error + ", " msg = error_messages.get("can_not_remove") % msg[:-2] messages.add_message(request, messages.WARNING, msg) # If all has ben removed elif have_errors == False: messages.add_message( request, messages.SUCCESS, ldap_messages.get("success_remove_sudoer")) else: messages.add_message( request, messages.SUCCESS, error_messages.get("can_not_remove_error"))
def list_all(request): try: lists = dict() lists['form'] = DeleteForm() auth = AuthSession(request.session) client = auth.get_clientFactory() column_index_name_map = { 0: '', 1: 'id', 2: 'divisao_dc__nome', 3: 'vrf', 4: 'dcroom__dc__dcname', 5: '' } dtp = DataTablePaginator(request, column_index_name_map) dtp.build_server_side_list() dtp.searchable_columns = [ 'grupo_l3__nome', 'ambiente_logico__nome', 'divisao_dc__nome', 'vrf', 'dcroom__dc__dcname', 'dcroom__name' ] dtp.end_record = 10000 pagination = Pagination(dtp.start_record, dtp.end_record, dtp.asorting_cols, dtp.searchable_columns, dtp.custom_search) extends_search = dict() extends_search["father_environment__isnull"] = True data = dict() data["start_record"] = pagination.start_record data["end_record"] = pagination.end_record data["asorting_cols"] = [ 'divisao_dc__nome', 'ambiente_logico__nome', 'grupo_l3__nome' ] data["searchable_columns"] = pagination.searchable_columns data["custom_search"] = pagination.custom_search or "" data["extends_search"] = [extends_search] if extends_search else [] environment = client.create_api_environment().search(fields=[ 'id', 'children__basic', 'vrf', 'name', 'configs__details', 'dcroom__details' ], search=data) lists['envs'] = json.dumps(environment.get("environments")) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def delete_validate_create_remove(request, operation): operation_text = OPERATION.get(int(operation)) if request.method == 'POST': form = DeleteForm(request.POST) if operation_text == 'DELETE'\ else CreateForm(request.POST) if operation_text == 'CREATE'\ else RemoveForm(request.POST) id = 'ids' if operation_text == 'DELETE' else 'ids_create'\ if operation_text == 'CREATE' else 'ids_remove' if form.is_valid(): # Get user auth = AuthSession(request.session) client_api_vip = auth.get_clientFactory().create_api_vip_request() # All ids to be deleted ids = split_to_array(form.cleaned_data[id]) vip_id = form.cleaned_data[id] # All messages to display error_list = list() error_list_created = list() error_list_not_validate = list() # Control others exceptions have_errors = False # FLAG only for ERROR in create all_ready_msg_script_error = False # For each script selected to remove try: if operation_text == 'DELETE': client_api_vip.delete_vip_request(vip_id) elif operation_text == 'REMOVE': client_api_vip.remove_vip(vip_id) elif operation_text == 'CREATE': client_api_vip.create_vip(vip_id) except VipAllreadyCreateError, e: logger.error(e) error_list_created.append(vip_id) except VipError, e: logger.error(e) error_list_not_validate.append(vip_id) except ScriptError, e: logger.error(e) if not all_ready_msg_script_error: messages.add_message(request, messages.ERROR, e) all_ready_msg_script_error = True error_list.append(vip_id)
def search_list(request): try: lists = dict() lists["delete_form"] = DeleteForm() lists["create_form"] = CreateForm() lists["remove_form"] = RemoveForm() lists["search_form"] = forms.SearchVipRequestForm() lists['modal'] = 'false' except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_all_sudoer(request): try: lists = dict() ldap = Ldap(AuthSession(request.session).get_user().get_username()) lists['sudoers'] = get_sudoers(ldap) lists['form'] = DeleteForm() except LDAPError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def delete_all(request): equip_nam = request.POST['equip_name'] if request.method == 'POST': form = DeleteForm(request.POST) if form.is_valid(): # Get user auth = AuthSession(request.session) equip_script = auth.get_clientFactory().create_equipamento_roteiro( ) # All ids to be deleted ids = split_to_array(form.cleaned_data['ids']) equipment = form.cleaned_data['equip_id'] equip_nam = form.cleaned_data['equip_name'] # Control others exceptions have_errors = False # For each script selected to remove for id_es in ids: try: # Execute in NetworkAPI equip_script.remover(equipment, id_es) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) have_errors = True break # If all has ben removed if have_errors == False: messages.add_message( request, messages.SUCCESS, equip_script_messages.get("success_remove")) else: messages.add_message( request, messages.WARNING, error_messages.get("can_not_remove_error")) else: messages.add_message(request, messages.ERROR, error_messages.get("select_one"))
def load_list(request, lists, id_egroup, tab): try: equipament_list = lists # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() equipament_list['equipments'] = validates_dict( client.create_equipamento().list_by_group(id_egroup), 'equipments') equipament_list['form'] = DeleteForm() equipament_list['egroup'] = client.create_grupo_equipamento().search( id_egroup)['group_equipament'] equipament_list['tab'] = '0' if tab == '0' else '1' group_equipment_perm = client.create_direito_grupo_equipamento( ).listar_por_grupo_equipamento(id_egroup).get( "direito_grupo_equipamento") equipament_list['ugroups'] = group_equipment_perm equipament_list['form_ugroup'] = DeleteFormAux() if not 'ugroup_form' in equipament_list: ugroups = client.create_grupo_usuario().listar() egroup = client.create_grupo_equipamento().search( id_egroup)['group_equipament'] equipament_list['ugroup_form'] = UserEquipGroupForm( ugroups, initial={ "id_egroup": id_egroup, "egroup": egroup.get('nome') }) if not 'url_form' in equipament_list: lists['url_form'] = reverse("equip-user-group.form", args=[id_egroup]) if not 'open_form' in equipament_list: lists['open_form'] = 'False' if not 'url_edit' in equipament_list: lists['edit'] = 'False' else: lists['edit'] = 'True' except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_variables(request): try: # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() lists = dict() if request.method == 'GET': lists['variables'] = list_all_variables(client) lists['delete_form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def delete_all(request): if request.method == 'POST': form = DeleteForm(request.POST) if form.is_valid(): auth = AuthSession(request.session) client = auth.get_clientFactory() ids = split_to_array(form.cleaned_data['ids']) error_list = list() have_errors = False for id_var in ids: try: client.create_system().delete_all(id_var) except VariableError: error_list.append(id_var) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) have_errors = True break if len(error_list) == len(ids): messages.add_message(request, messages.ERROR, error_messages.get("can_not_remove_all")) elif len(error_list) > 0: msg = "" for id_error in error_list: msg = msg + id_error + ", " msg = error_messages.get("can_not_remove") % msg[:-2] messages.add_message(request, messages.WARNING, msg) elif have_errors == False: messages.add_message( request, messages.SUCCESS, system_variable_messages.get("success_delete")) else: messages.add_message( request, messages.SUCCESS, error_messages.get("can_not_remove_error")) else: messages.add_message(request, messages.ERROR, error_messages.get("select_one"))
def list_all(request): try: script_type_list = dict() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all script_types from NetworkAPI script_type_list = client.create_tipo_roteiro().listar() script_type_list['form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_all(request): try: egroup_list = dict() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all Group Equipament from NetworkAPI egroup_list = client.create_grupo_equipamento().listar() egroup_list['form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def tab_pools(request, id_vip): lists = dict() lists['idt'] = id_vip lists['status_form'] = DeleteForm() try: auth = AuthSession(request.session) client_api = auth.get_clientFactory() vip = client_api.create_api_vip_request().get( ids=[id_vip], kind='details')['vips'][0] lists['vip'] = vip except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_all(request): try: option_vip_list = dict() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all option vips from NetworkAPI option_vip_list = client.create_option_vip().get_all() option_vip_list['form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_all(request): try: lists = dict() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all user groups from NetworkAPI user_groups = client.create_grupo_usuario().listar() lists['form'] = DeleteForm() lists['grupos'] = user_groups.get("user_group") except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def delete_all(request): if request.method == 'POST': form = DeleteForm(request.POST) if form.is_valid(): # Get user auth = AuthSession(request.session) client_equip = auth.get_clientFactory().create_equipamento() # All ids to be deleted ids = split_to_array(form.cleaned_data['ids']) delete_equipments_shared(request, client_equip, ids) else: messages.add_message(request, messages.ERROR, error_messages.get('select_one')) # Redirect to list_all action return redirect('equipment.search.list')
def list_all(request): try: environment_vip_list = dict() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all environment vips from NetworkAPI environment_vip_list = client.create_environment_vip().list_all() for environment_vip in environment_vip_list.get("environment_vip"): environment_vip['is_more'] = str(False) option_vip = client.create_option_vip().get_option_vip( environment_vip['id']) if option_vip is not None: ovip = [] if type(option_vip.get('option_vip')) is dict: option_vip['option_vip'] = [option_vip['option_vip']] for option in option_vip['option_vip']: ovip.append(option.get('nome_opcao_txt')) if len(ovip) > 3: environment_vip['is_more'] = str(True) environment_vip['option_vip'] = ovip environment_vip_list['form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def list_all(request): try: lists = dict() # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all scripts from NetworkAPI script_list = client.create_roteiro().listar() # Get all script_types from NetworkAPI script_type_list = client.create_tipo_roteiro().listar() # Business lists['scripts'] = replace_id_to_name(script_list["script"], script_type_list["script_type"], "tipo_roteiro", "id", "tipo") lists['form'] = DeleteForm() except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def load_list(request, lists, id_ugroup, tab): try: # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() data_search = { 'start_record': 0, 'end_record': 25, 'asorting_cols': [], 'searchable_columns': [], 'extends_search': [{ 'user_group': id_ugroup }] } kind = ['details'] fields = ['id', 'read', 'write', 'change_config', 'delete', 'user_group', 'object_type__details'] lists['object_perms'] = client.\ create_api_object_group_permission_general().\ search(search=data_search, kind=kind, fields=fields)['ogpgs'] fields = ['id', 'name'] ots = map(lambda x: x['object_type'], lists['object_perms']) ots_all = client.create_api_object_type().search(fields=fields)['ots'] for ot in ots_all: if ot not in ots: perm_fake = {'change_config': False, 'read': False, 'write': False, 'user_group': False, 'delete': False} perm_fake['object_type'] = ot perm_fake['id'] = ot['id'] lists['object_perms'].append(perm_fake) lists['users'] = validates_dict( client.create_usuario().list_by_group(id_ugroup), 'users') if 'ugroup' not in lists: lists['ugroup'] = client.create_grupo_usuario().search( id_ugroup).get('user_group') if 'form_users' not in lists: lists['form_users'] = UserGroupForm( client.create_usuario().list_by_group_out(id_ugroup)) lists['perms'] = validates_dict( client.create_permissao_administrativa().list_by_group(id_ugroup), 'perms') if 'form_perms' not in lists: function_list = validates_dict( client.create_permission().list_all(), 'perms') lists['form_perms'] = PermissionGroupForm(function_list) if 'action_edit_perms' not in lists: lists['action_edit_perms'] = reverse( "user-group-perm.form", args=[id_ugroup]) lists['form'] = DeleteForm() lists['form_aux'] = DeleteFormAux() lists['tab'] = '0' if tab == '0' else '1' if tab == '1' else '2' lists['action_new_users'] = reverse( "user-group.form", args=[id_ugroup]) lists['action_new_perms'] = reverse( "user-group-perm.form", args=[id_ugroup]) lists['cadperms'] = parse_cad_perms(PATH_PERMLISTS + "/cadperms.txt") lists['apiperms'] = parse_api_perms(PATH_PERMLISTS + "/apiperms.txt") except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
def delete_all(request): if request.method == 'POST': form = DeleteForm(request.POST) if form.is_valid(): # Get user auth = AuthSession(request.session) roteiro = auth.get_clientFactory().create_roteiro() # All ids to be deleted ids = split_to_array(form.cleaned_data['ids']) # All messages to display error_list = list() # Control others exceptions have_errors = False # For each script selected to remove for id_script in ids: try: # Execute in NetworkAPI roteiro.remover(id_script) except RoteiroError, e: # If isnt possible, add in error list error_list.append(id_script) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) have_errors = True break # If cant remove nothing if len(error_list) == len(ids): messages.add_message(request, messages.ERROR, error_messages.get("can_not_remove_all")) # If cant remove someones elif len(error_list) > 0: msg = "" for id_error in error_list: msg = msg + id_error + ", " msg = error_messages.get("can_not_remove") % msg[:-2] messages.add_message(request, messages.WARNING, msg) # If all has ben removed elif have_errors == False: messages.add_message(request, messages.SUCCESS, script_messages.get("success_remove")) else: messages.add_message( request, messages.SUCCESS, error_messages.get("can_not_remove_error"))
def delete_user_all(request, pattern): if request.method == 'POST': ldap = Ldap(AuthSession(request.session).get_user().get_username()) form = DeleteForm(request.POST) if form.is_valid(): # All cns to be deleted cns = split_to_array(form.cleaned_data['ids']) # All messages to display error_list = list() # Control others exceptions have_errors = False # For each user selected to remove for cn in cns: try: ldap.rem_user(cn) client_user = AuthSession( request.session).get_clientFactory().create_usuario() try: local_user = client_user.get_by_user_ldap(cn) local_user = local_user['usuario'] client_user.alterar(local_user['id'], local_user['user'], local_user[ 'pwd'], local_user['nome'], local_user['ativo'], local_user['email'], None) except UsuarioNaoExisteError: pass except LDAPMethodError, e: error_list.append(cn) have_errors = True except LDAPError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) have_errors = True break # If cant remove nothing if len(error_list) == len(cns): messages.add_message( request, messages.ERROR, error_messages.get("can_not_remove_all")) # If cant remove someones elif len(error_list) > 0: msg = "" for id_error in error_list: msg = msg + id_error + ", " msg = error_messages.get("can_not_remove") % msg[:-2] messages.add_message(request, messages.WARNING, msg) # If all has ben removed elif have_errors == False: messages.add_message( request, messages.SUCCESS, ldap_messages.get("success_remove_user")) else: messages.add_message( request, messages.SUCCESS, error_messages.get("can_not_remove_error"))
def list_all(request, id_user, status): lists = dict() edit = False if id_user == "0" else True lists['open_form'] = "True" if edit or status == "1" else "False" lists['edit'] = str(edit) lists['id_user'] = id_user lists['action_new_users'] = reverse("user.form", args=[0, 0]) try: # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() # Get all users from NetworkAPI try: ldap_groups_ = get_groups(Ldap(auth)) ldap_groups = [(ldap_grp['gidNumber'], ldap_grp['cn']) for ldap_grp in ldap_groups_] ldap_up = True except LDAPError: messages.add_message(request, messages.ERROR, user_messages.get("ldap_offline")) ldap_up = False ldap_groups_ = None ldap_groups = None lists['ldap_up'] = ldap_up groups = client.create_grupo_usuario().listar() lists['ldap_groups'] = ldap_groups_ lists['form'] = DeleteForm() lists['form_user'], lists['action'] = create_form_user( id_user, auth, groups, edit, ldap_groups) if request.method == 'POST': try: ldap_grp = int(request.POST['ldap_group']) except: ldap_grp = 0 if ldap_grp > 0 and ldap_up: list_users_ldap = Ldap(auth).get_users_group(ldap_grp) else: list_users_ldap = None form = UserForm(groups, ldap_groups, list_users_ldap, request.POST) lists['form_user'] = form if form.is_valid(): if edit: edit_user(form, client, id_user) messages.add_message(request, messages.SUCCESS, user_messages.get("success_edit")) else: save_user(form, client) messages.add_message(request, messages.SUCCESS, user_messages.get("success_insert")) lists['form_user'], lists['action'] = create_form_user( 0, auth, groups, False, ldap_groups) lists['open_form'] = "False" else: lists['open_form'] = 'True' lists['users'] = list_user(client) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)
continue users.append(user) lists['users'] = users else: lists['users'] = get_users_search(ldap, pattern) except LDAPError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) lists['search_form'] = formSearch lists['form'] = DeleteForm() lists['pattern'] = pattern return render_to_response(LDAP_USER_LIST, lists, context_instance=RequestContext(request)) @log @login_required @has_perm([{"permission": ADMINISTRATION, "write": True, "read": True}]) def ajax_reset_password_user(request): lists = dict() ldap = Ldap(AuthSession(request.session).get_user().get_username()) status_code = 500 try:
def apply_acl(request, id_vlan, network): lists = dict() lists['id_vlan'] = id_vlan lists['form'] = DeleteForm() try: # Get user auth = AuthSession(request.session) client = auth.get_clientFactory() vlan = client.create_vlan().get(id_vlan).get("vlan") environment = client.create_ambiente().buscar_por_id( vlan.get("ambiente")).get("ambiente") key_acl = acl_key(network) if vlan.get(key_acl) is None: messages.add_message(request, messages.ERROR, acl_messages.get("error_acl_not_exist")) return HttpResponseRedirect( reverse('vlan.edit.by.id', args=[id_vlan])) lists['vlan'] = vlan lists['environment'] = "%s - %s - %s" % ( environment.get("nome_divisao"), environment.get("nome_ambiente_logico"), environment.get("nome_grupo_l3")) # Type Network lists['network'] = network if request.method == "POST": form = DeleteForm(request.POST) if form.is_valid(): client_equip = client.create_equipamento() # All ids to be apply ids = split_to_array(form.cleaned_data['ids']) equipments = [] for _id in ids: try: equip = client_equip.listar_por_id(_id) equipments.append(equip) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) if equipments is not None and equipments != "": #is_apply, result = applyAcl(equipments, vlan, environment, network, AuthSession(request.session).get_user()) apply_result = client.create_vlan().apply_acl( equipments, vlan, environment, network) is_apply = apply_result.get('is_apply') result = apply_result.get('result') if is_apply == '0': lists['result'] = result messages.add_message(request, messages.SUCCESS, acl_messages.get("success_apply")) return render_to_response( ACL_APPLY_RESULT, lists, context_instance=RequestContext(request)) else: messages.add_message(request, messages.ERROR, acl_messages.get("error_apply")) else: messages.add_message(request, messages.ERROR, error_messages.get("select_one")) list_equipments = [] if len(vlan["redeipv4"]) > 0 and network == NETWORK_TYPES.v4: for net in vlan["redeipv4"]: try: ips = client.create_ip().find_ip4_by_network( net["id"]).get('ips') for ip in ips: equipment = {} equipment["description"] = ip["descricao"] equipment["ip"] = "%s.%s.%s.%s" % ( ip["oct1"], ip["oct2"], ip["oct3"], ip["oct4"]) equips = validates_dict(ip, "equipamento") for equip in equips: equipment_base = clone(equipment) equipment_base["id"] = equip["id"] equipment_base["name"] = equip["nome"] list_equipments.append(equipment_base) except (NetworkAPIClientError, Exception), e: pass
def delete_all(request): if request.method == 'POST': form = DeleteForm(request.POST) if form.is_valid(): # Get user auth = AuthSession(request.session) client_user = auth.get_clientFactory().create_usuario() # All ids to be deleted ids = split_to_array(form.cleaned_data['ids']) # All messages to display error_list = list() # Control others exceptions have_errors = False # For each user selected to remove for id_user in ids: try: # Execute in NetworkAPI user = client_user.get_by_id(id_user).get('usuario') client_user.alterar(user.get("id"), user.get("user"), user.get("pwd"), user.get('nome'), 0, user.get('email'), user.get('user_ldap')) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e) have_errors = True break # If cant remove nothing if len(error_list) == len(ids): messages.add_message(request, messages.ERROR, error_messages.get("can_not_remove_all")) # If cant remove someones elif len(error_list) > 0: msg = "" for id_error in error_list: msg = msg + id_error + ", " msg = error_messages.get("can_not_remove") % msg[:-2] messages.add_message(request, messages.WARNING, msg) # If all has ben removed elif have_errors == False: messages.add_message(request, messages.SUCCESS, user_messages.get("success_remove")) else: messages.add_message( request, messages.ERROR, error_messages.get("can_not_remove_error")) else: messages.add_message(request, messages.ERROR, error_messages.get("select_one"))
def ajax_list_all(request, search_term=None): try: lists = dict() lists['form'] = DeleteForm() auth = AuthSession(request.session) client = auth.get_clientFactory() column_index_name_map = { 0: '', 1: 'id', 2: 'divisao_dc__nome', 3: 'vrf', 4: 'dcroom__dc__dcname', 5: '' } dtp = DataTablePaginator(request, column_index_name_map) dtp.build_server_side_list() dtp.searchable_columns = [ 'grupo_l3__nome', 'ambiente_logico__nome', 'divisao_dc__nome', 'vrf', 'dcroom__dc__dcname', 'dcroom__name' ] dtp.end_record = 10000 fields = [ "divisao_dc__nome__icontains", "ambiente_logico__nome__icontains", "grupo_l3__nome__icontains" ] extends_search_dict = dict() if search_term: term = search_term.split("+") term_len = len(term) if term_len > 1: for i in xrange(len(term)): extends_search_dict.update({fields[i]: term[i]}) else: dtp.custom_search = term[0] pagination = Pagination( dtp.start_record, dtp.end_record, dtp.asorting_cols, dtp.searchable_columns, dtp.custom_search ) data = dict() data["start_record"] = pagination.start_record data["end_record"] = pagination.end_record data["asorting_cols"] = ['divisao_dc__nome','ambiente_logico__nome','grupo_l3__nome'] data["searchable_columns"] = pagination.searchable_columns data["custom_search"] = pagination.custom_search or "" data["extends_search"] = [extends_search_dict] if extends_search_dict else [] environment = client.create_api_environment().search(fields=['id', 'children__basic', 'vrf', 'name', 'configs__details', 'dcroom__details'], search=data) lists['envs'] = json.dumps(environment.get("environments")) return render_to_response(ENVIRONMENT_LIST, lists, context_instance=RequestContext(request)) except NetworkAPIClientError, e: logger.error(e) messages.add_message(request, messages.ERROR, e)