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) )
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) )
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
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) )
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")})
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
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")})
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"))
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"))
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)
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':