Ejemplo n.º 1
0
def ssh_passwd(request):
    u = request.session.get('switched_user', request.user)
    superuser = request.user

    if request.method == 'POST':
        form = PassCheckForm(request.POST)
        if form.is_valid():
            sr = SystemRequest(u, u.parms.web_machine)
            sr.passwd(form.cleaned_data["password1"])

            messages.add_message(request, messages.SUCCESS, _('Password has been changed'))
            return HttpResponseRedirect(reverse("wsgiadmin.useradmin.views.ok"))
    else:
        form = PassCheckForm()

    return render_to_response('universal.html',
            {
            "form": form,
            "form_helper": RostiFormHelper(),
            "title": _("Change password for SSH/FTP"),
            "u": u,
            "superuser": superuser,
            "menu_active": "settings",
            },
                              context_instance=RequestContext(request)
    )
Ejemplo n.º 2
0
def show(request, p=1):
    """
    Vylistování seznamu databází
    """
    if not request.user.is_superuser:
        return HttpResponseForbidden(_("Permission error"))
    u = request.session.get('switched_user', request.user)

    p = int(p)
    paginator = Paginator(list(user.objects.order_by("username")), 75)

    if not paginator.count:
        page = None
    else:
        page = paginator.page(p)

    sr = SystemRequest(u, u.parms.web_machine)
    #TODO - sed required columns only
    data = sr.run("cat /etc/passwd", instant=True)[0]

    ssh_users = [x.strip().split(":")[0] for x in data.split("\n") if x]
    return render_to_response('users.html',
            {
            "users": page,
            "ssh_users": ssh_users,
            "paginator": paginator,
            "num_page": p,
            "u": u,
            "superuser": request.user,
            "menu_active": "users",
            },
        context_instance=RequestContext(request)
    )
Ejemplo n.º 3
0
def show(request, p=1):
    """
    Vylistování seznamu databází
    """
    if not request.user.is_superuser:
        return HttpResponseForbidden(_("Permission error"))
    u = request.session.get('switched_user', request.user)

    p = int(p)
    paginator = Paginator(list(user.objects.order_by("username")), 75)

    if not paginator.count:
        page = None
    else:
        page = paginator.page(p)

    sr = SystemRequest(u, u.parms.web_machine)
    #TODO - sed required columns only
    data = sr.run("cat /etc/passwd", instant=True)[0]

    ssh_users = [x.strip().split(":")[0] for x in data.split("\n") if x]
    return render_to_response('users.html',
            {
            "users": page,
            "ssh_users": ssh_users,
            "paginator": paginator,
            "num_page": p,
            "u": u,
            "superuser": request.user,
            "menu_active": "users",
            },
        context_instance=RequestContext(request)
    )
Ejemplo n.º 4
0
def ssh_passwd(request):
    u = request.session.get('switched_user', request.user)
    superuser = request.user

    if request.method == 'POST':
        form = PassCheckForm(request.POST)
        if form.is_valid():
            sr = SystemRequest(u, u.parms.web_machine)
            sr.passwd(form.cleaned_data["password1"])

            messages.add_message(request, messages.SUCCESS, _('Password has been changed'))
            return HttpResponseRedirect(reverse("wsgiadmin.useradmin.views.ok"))
    else:
        form = PassCheckForm()

    return render_to_response('universal.html',
            {
            "form": form,
            "form_helper": RostiFormHelper(),
            "title": _("Change password for SSH/FTP"),
            "u": u,
            "superuser": superuser,
            "menu_active": "settings",
            },
                              context_instance=RequestContext(request)
    )
Ejemplo n.º 5
0
 def form_valid(self, form):
     ret = super(CronUpdateView, self).form_valid(form)
     sr = SystemRequest(self.user, self.user.parms.web_machine)
     sr.cron(self.user)
     messages.add_message(self.request, messages.SUCCESS,
                          _('Cron record has been updated'))
     return ret
Ejemplo n.º 6
0
def show(request):
    """
    Vylistování seznamu databází
    """
    if not request.user.is_superuser:
        return HttpResponseForbidden(_("Permission error"))
    u = request.session.get('switched_user', request.user)

    data = []
    data_json = []
    users = User.objects.order_by("username")
    for user in users:
        try:
            parms = user.parms
        except ObjectDoesNotExist:
            continue
        user_dict = {
            "username": user.username,
            "discount": parms.discount,
            "fee": parms.fee,
            "enable": parms.enable,
            "low_level_credits": parms.low_level_credits,
            "last_notification": parms.last_notification.strftime("%d.%m.%Y") if parms.last_notification else "--",
            "pay_total_day": parms.pay_total_day(),
            "pay_total_month": parms.pay_total_month(),
            "credit": parms.credit,
            "credit_until": parms.credit_until.strftime("%d.%m.%Y") if parms.credit_until else "--",
            "count_domains": parms.count_domains,
            "count_ftps": parms.count_ftps,
            "count_pgs": parms.count_pgs,
            "count_mys": parms.count_mys,
            "count_sites": parms.count_sites,
            "count_emails": parms.count_emails,
            "installed": parms.installed,
            "url_switch": reverse("wsgiadmin.users.views.switch_to_user", args=[user.id]),
            "url_install": reverse("wsgiadmin.users.views.install", args=[user.id]),
        }
        data.append(user_dict)
        data_json.append(json.dumps(user_dict))

    sr = SystemRequest(u, u.parms.web_machine)
    #TODO - sed required columns only
    data = sr.run("cat /etc/passwd", instant=True)[0]

    ssh_users = [x.strip().split(":")[0] for x in data.split("\n") if x]
    return render_to_response('users.html',
            {
            "users": ", ".join(data_json),
            "ssh_users": ssh_users,
            "u": u,
            "superuser": request.user,
            "menu_active": "users",
            },
        context_instance=RequestContext(request)
    )
Ejemplo n.º 7
0
def remove_cron(request):
    u = request.session.get('switched_user', request.user)
    superuser = request.user
    try:
        cron = request.user.cron_set.get(id=int(request.POST.get("object_id")))
        cron.delete()
        sr = SystemRequest(request.user, request.user.parms.web_machine)
        sr.cron(request.user)
        return JsonResponse("OK", {1: ugettext("Cron record was successfuly removed")})
    except Exception, e:
        return JsonResponse("KO", {1: ugettext("Error deleting cron record")})
Ejemplo n.º 8
0
    def form_valid(self, form):
        self.object = form.save(commit=False)
        self.object.owner = self.request.user

        ret =  super(CronCreateView, self).form_valid(form)

        sr = SystemRequest(self.user, self.user.parms.web_machine)
        sr.cron(self.user)
        messages.add_message(self.request, messages.SUCCESS, _('Cron record has been created'))

        return ret
Ejemplo n.º 9
0
def remove_cron(request):
    u = request.session.get('switched_user', request.user)
    superuser = request.user
    try:
        cron = request.user.cron_set.get(id=int(request.POST.get("object_id")))
        cron.delete()
        sr = SystemRequest(request.user, request.user.parms.web_machine)
        sr.cron(request.user)
        return JsonResponse(
            "OK", {1: ugettext("Cron record was successfuly removed")})
    except Exception, e:
        return JsonResponse("KO", {1: ugettext("Error deleting cron record")})
Ejemplo n.º 10
0
    def form_valid(self, form):
        self.object = form.save(commit=False)
        self.object.owner = self.request.user

        ret = super(CronCreateView, self).form_valid(form)

        sr = SystemRequest(self.user, self.user.parms.web_machine)
        sr.cron(self.user)
        messages.add_message(self.request, messages.SUCCESS,
                             _('Cron record has been created'))

        return ret
Ejemplo n.º 11
0
def install(request, uid):
    superuser = request.user
    u = request.session.get('switched_user', request.user)
    if not superuser.is_superuser:
        return HttpResponseForbidden(_("Permission error"))

    iuser = get_object_or_404(u, id=uid)
    if not iuser.username or ";" in iuser.username:
        return HttpResponseForbidden("Wrong username")

    # System user
    HOME = join("/home", iuser.username)

    sr = SystemRequest(u, iuser.parms.web_machine)
    sr.install(iuser)
    sr.commit()

    line = sr.run("cat /etc/passwd |grep ^%s:" % iuser.username, instant=True)[0].strip()
    user, foo, uid, gid, bar = line.split(":", 4)

    iuser.parms.home = HOME
    iuser.parms.uid = uid
    iuser.parms.gid = gid
    iuser.parms.save()

    iuser.parms.add_credit(30, True)

    iuser.is_active = True
    iuser.save()

    message = Message.objects.filter(purpose="approved_reg")
    if message:
        message[0].send(iuser.email)

    messages.add_message(request, messages.SUCCESS, _('User has been installed'))
    return HttpResponseRedirect(reverse("wsgiadmin.useradmin.views.ok"))
Ejemplo n.º 12
0
def install(request, uid):
    superuser = request.user
    u = request.session.get('switched_user', request.user)
    if not superuser.is_superuser:
        return HttpResponseForbidden(_("Permission error"))

    iuser = get_object_or_404(u, id=uid)
    if not iuser.username or ";" in iuser.username:
        return HttpResponseForbidden("Wrong username")

    # System user
    HOME = join("/home", iuser.username)

    sr = SystemRequest(u, iuser.parms.web_machine)
    sr.install(iuser)
    sr.commit()

    line = sr.run("cat /etc/passwd |grep ^%s:" % iuser.username, instant=True)[0].strip()
    user, foo, uid, gid, bar = line.split(":", 4)

    iuser.parms.home = HOME
    iuser.parms.uid = uid
    iuser.parms.gid = gid
    iuser.parms.save()

    iuser.parms.add_credit(30)

    iuser.is_active = True
    iuser.save()

    message = Message.objects.filter(purpose="approved_reg")
    if message:
        message[0].send(iuser.email)

    messages.add_message(request, messages.SUCCESS, _('User has been installed'))
    return HttpResponseRedirect(reverse("wsgiadmin.useradmin.views.ok"))
Ejemplo n.º 13
0
    superuser = request.user
    u = request.session.get('switched_user', request.user)
    if not superuser.is_superuser:
        return HttpResponseForbidden(_("Permission error"))

    iuser = get_object_or_404(user, id=int(uid))
    try:
        iparms = iuser.parms
    except Exception, e:
        print 'users/views - handle only this exception type'
        print type(e)
        iparms = None

    if iparms: iparms.delete()
    if ";" not in iuser.username:
        sr = SystemRequest(u, iuser.parms.web_machine)
        sr.run("dropuser %s" % iuser.username)
        sr.run("userdel %s" % iuser.username)
        sr.run("groupdel %s" % iuser.username)
    iuser.delete()

    return HttpResponse("Smazáno")


@login_required
def ssh_passwd(request):
    u = request.session.get('switched_user', request.user)
    superuser = request.user

    if request.method == 'POST':
        form = PassCheckForm(request.POST)
Ejemplo n.º 14
0
    u = request.session.get('switched_user', request.user)
    if not superuser.is_superuser:
        return HttpResponseForbidden(_("Permission error"))

    iuser = get_object_or_404(User, id=int(uid))
    try:
        iparms = iuser.parms
    except Exception, e:
        print 'users/views - handle only this exception type'
        print type(e)
        iparms = None

    if iparms: iparms.delete()

    if ";" not in iuser.username:
        sr = SystemRequest(u, iparms.web_machine)
        sr.run("dropuser %s" % iuser.username)
        sr.run("userdel %s" % iuser.username)
        sr.run("groupdel %s" % iuser.username)
        sr.run("rm -r %s" % iparms.home)
    iuser.delete()

    return HttpResponse("Smazáno")


@login_required
def ssh_passwd(request):
    u = request.session.get('switched_user', request.user)
    superuser = request.user

    if request.method == 'POST':
Ejemplo n.º 15
0
 def form_valid(self, form):
     ret = super(CronUpdateView, self).form_valid(form)
     sr = SystemRequest(self.user, self.user.parms.web_machine)
     sr.cron(self.user)
     messages.add_message(self.request, messages.SUCCESS, _('Cron record has been updated'))
     return ret