def add_agent(): check_admin() add_agent = True form = AgentForm() if form.validate_on_submit(): agent = Agent( name=form.name.data, type=form.type.data, port=form.port.data, encryption=form.encryption.data, description=form.description.data, ) try: db.session.add(agent) db.session.commit() flash('You have successfully added a new agent.') except: flash('Error: agent name or port already in use.') return redirect(url_for('admin.list_agents')) form.encryption.data = True form.port.data = 5684 return render_template('admin/agents/agent.html', action="Add", add_agent=add_agent, form=form, title="Add Agent")
def agent_add(request, response_format='html'): "Agent add" if not request.user.profile.is_admin('anaf.services'): return user_denied(request, message="You don't have administrator access to the Service Support module") if request.POST: if 'cancel' not in request.POST: new_agent = ServiceAgent() form = AgentForm( request.user.profile, request.POST, instance=new_agent) if form.is_valid(): new_agent = form.save() new_agent.set_user_from_request(request) return HttpResponseRedirect(reverse('services_agent_view', args=[new_agent.id])) else: return HttpResponseRedirect(reverse('services_agent_index')) else: form = AgentForm(request.user.profile) context = _get_default_context(request) context.update({'form': form}) return render_to_response('services/agent_add', context, context_instance=RequestContext(request), response_format=response_format)
def profile(request, template='accounts/account_profile.html'): #print BaseUser.objects.all() #print request.user.pk #print request.user.username u = User.objects.get(id=request.user.pk) print u.groups.all() #base_user = get_object_or_404(BaseUser, user_id=request.user.pk) #print base_user print request.user.pk print request.user.username print request.user.groups.all() groups = request.user.groups.values_list('name', flat=True) print groups def update_user(user, form): for k, v in form.cleaned_data.items(): print k, v setattr(user, k, v) #agent.password = form.cleaned_data.get('password') #agent.phone = form.cleaned_data.get("phone") user.save() u.email = user.email from django.contrib.auth.hashers import (check_password, make_password, is_password_usable) u.password = make_password(user.password) u.save() if 'AgentGroup' in groups: agent = get_object_or_404(Agent, username=request.user.username) #form = AgentForm(request.POST or None, initial={'username': agent.username, 'phone': agent.phone}) form = AgentForm(request.POST or None, instance=agent) if request.method == "POST" and form.is_valid(): update_user(agent, form) info(request, _("Agent updated")) context = {"form": form, "title": _("Update Agent")} return render(request, template, context) elif 'CustomerGroup' in groups: customer = get_object_or_404(Customer, username=request.user.username) form = CustomerForm(request.POST or None, instance=customer) if request.method == "POST" and form.is_valid(): update_user(customer, form) info(request, _("Customer updated")) context = {"form": form, "title": _("Update Customer")} return render(request, template, context) elif 'SuperAdminGroup' in groups or 'AdminGroup' in groups: admin = get_object_or_404(SysAdmin, username=request.user.username) form = SysAdminForm(request.POST or None, instance=admin) if request.method == "POST" and form.is_valid(): update_user(admin, form) #TODO change group if necessary info(request, _("SysAdmin updated")) context = {"form": form, "title": _("Update SysAdmin")} return render(request, template, context) return render(request, template)
def agent(agent_id=None): if agent_id is not None: agent = Agent.query.get(agent_id) else: agent = Agent() form = AgentForm(request.form, agent) if form.validate_on_submit(): form.populate_obj(agent) if agent.id is None: db_session.add(agent) db_session.commit() return redirect(url_for('agent_list')) context = {'form': form} return render_template('agent.html', **context)
def agent_add(request, response_format='html'): "Agent add" if not request.user.profile.is_admin('anaf.services'): return user_denied( request, message= "You don't have administrator access to the Service Support module" ) if request.POST: if 'cancel' not in request.POST: new_agent = ServiceAgent() form = AgentForm(request.user.profile, request.POST, instance=new_agent) if form.is_valid(): new_agent = form.save() new_agent.set_user_from_request(request) return HttpResponseRedirect( reverse('services_agent_view', args=[new_agent.id])) else: return HttpResponseRedirect(reverse('services_agent_index')) else: form = AgentForm(request.user.profile) context = _get_default_context(request) context.update({'form': form}) return render_to_response('services/agent_add', context, context_instance=RequestContext(request), response_format=response_format)
def agent_edit(request, agent_id, response_format='html'): "Agent edit" view_agent = get_object_or_404(ServiceAgent, pk=agent_id) if not request.user.profile.has_permission(view_agent): return user_denied( request, message="You don't have access to this Service Agent") if request.POST: if 'cancel' not in request.POST: form = AgentForm(request.user.profile, request.POST, instance=view_agent) if form.is_valid(): view_agent = form.save() return HttpResponseRedirect( reverse('services_agent_view', args=[view_agent.id])) else: return HttpResponseRedirect( reverse('services_agent_view', args=[view_agent.id])) else: form = AgentForm(request.user.profile, instance=view_agent) context = _get_default_context(request) context.update({'form': form, 'view_agent': view_agent}) return render_to_response('services/agent_edit', context, context_instance=RequestContext(request), response_format=response_format)
def agent_edit(request, agent_id, response_format='html'): "Agent edit" view_agent = get_object_or_404(ServiceAgent, pk=agent_id) if not request.user.profile.has_permission(view_agent): return user_denied(request, message="You don't have access to this Service Agent") if request.POST: if 'cancel' not in request.POST: form = AgentForm( request.user.profile, request.POST, instance=view_agent) if form.is_valid(): view_agent = form.save() return HttpResponseRedirect(reverse('services_agent_view', args=[view_agent.id])) else: return HttpResponseRedirect(reverse('services_agent_view', args=[view_agent.id])) else: form = AgentForm(request.user.profile, instance=view_agent) context = _get_default_context(request) context.update({'form': form, 'view_agent': view_agent}) return render_to_response('services/agent_edit', context, context_instance=RequestContext(request), response_format=response_format)
def profile(request, template='accounts/account_profile.html'): #print BaseUser.objects.all() #print request.user.pk #print request.user.username u = User.objects.get(id=request.user.pk) print u.groups.all() #base_user = get_object_or_404(BaseUser, user_id=request.user.pk) #print base_user print request.user.pk print request.user.username print request.user.groups.all() groups = request.user.groups.values_list('name', flat=True) print groups def update_user(user, form): for k, v in form.cleaned_data.items(): print k, v setattr(user, k, v) #agent.password = form.cleaned_data.get('password') #agent.phone = form.cleaned_data.get("phone") user.save() u.email = user.email from django.contrib.auth.hashers import ( check_password, make_password, is_password_usable) u.password = make_password(user.password) u.save() if 'AgentGroup' in groups: agent = get_object_or_404(Agent, username=request.user.username) #form = AgentForm(request.POST or None, initial={'username': agent.username, 'phone': agent.phone}) form = AgentForm(request.POST or None, instance=agent) if request.method == "POST" and form.is_valid(): update_user(agent, form) info(request, _("Agent updated")) context = {"form": form, "title": _("Update Agent")} return render(request, template, context) elif 'CustomerGroup' in groups: customer = get_object_or_404(Customer, username=request.user.username) form = CustomerForm(request.POST or None, instance=customer) if request.method == "POST" and form.is_valid(): update_user(customer, form) info(request, _("Customer updated")) context = {"form": form, "title": _("Update Customer")} return render(request, template, context) elif 'SuperAdminGroup' in groups or 'AdminGroup' in groups: admin = get_object_or_404(SysAdmin, username=request.user.username) form = SysAdminForm(request.POST or None, instance=admin) if request.method == "POST" and form.is_valid(): update_user(admin, form) #TODO change group if necessary info(request, _("SysAdmin updated")) context = {"form": form, "title": _("Update SysAdmin")} return render(request, template, context) return render(request, template)