コード例 #1
0
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")
コード例 #2
0
ファイル: views.py プロジェクト: tovmeod/anaf
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)
コード例 #3
0
ファイル: views.py プロジェクト: kingofhawks/smartwifi
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)
コード例 #4
0
ファイル: app.py プロジェクト: EdgyEdgemond/siq_verification
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)
コード例 #5
0
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)
コード例 #6
0
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)
コード例 #7
0
ファイル: views.py プロジェクト: tovmeod/anaf
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)
コード例 #8
0
ファイル: views.py プロジェクト: kingofhawks/smartwifi
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)