def group_create(request):
    """
    create a form a user can use to create a custom group, on POST save this group to the database
    and automatically add the creator to the said group as a manager.
    """
    nav_selected = "communities"
    if request.method == "POST":
        form = GroupForm(request.POST, request.FILES)
        if form.is_valid():
            group = form.save()
            GroupUsers.objects.create(group=group,
                                      user=request.user,
                                      is_manager=True)
            Stream.objects.get(slug="community-create").enqueue(
                content_object=group, start=group.created)
            Record.objects.create_record(request.user, 'group_create', group)
            badge_cache.possibly_award_badge('created_a_community',
                                             user=request.user)
            messages.success(request, "%s has been created." % group)
            return redirect("group_detail", group_slug=group.slug)
    else:
        form = GroupForm()
    return render_to_response("groups/group_create.html", {
        "form": form,
        "site": Site.objects.get_current(),
        "nav_selected": nav_selected
    },
                              context_instance=RequestContext(request))
Exemple #2
0
def group_edit(request, pk, template_name='accounts/group_add.html'):
    permission_list = Permission.objects.all()
    username = request.session['username']
    permission = 'auth.change_group'
    if current_user_permissions(username, permission):
        group = get_object_or_404(Group, pk=pk)
        # for item in group.permissions.all():
        #     print item
        form = GroupForm(instance=group)
        if request.method == 'POST':
            form = GroupForm(request.POST, request.FILES, instance=group)
            if form.is_valid():
                form.save()
                return redirect('group_list')
        return render(
            request, template_name, {
                'form': form,
                'username': username,
                'group': group,
                'var2': 'active',
                'highlight1': 'active',
                'permission_list': permission_list
            })
    else:
        return HttpResponse('权限不够')
Exemple #3
0
def edit_group(req, group_id):
    """
    :param req: the received HTTP request
    :param group_id: id of the group to be edited
    :return: an HTTP response:
             - redirect to group view with altered group data if request method is PUT and form data is valid
             - redirect to the group form otherwise
    """
    group = Group.objects.get(pk=group_id)
    if req.user == group.admin.user:
        if req.method == "POST":
            form = GroupForm(req.POST, req.FILES, instance=group)
            if form.is_valid():
                group.name = form.cleaned_data['name']
                group.description = form.cleaned_data['description']
                group.profile_pic = form.cleaned_data['profile_pic']
                group.members.add(req.user.student,
                                  *form.cleaned_data['members'])
                group.members.remove(*form.cleaned_data['deleted_members'])
                group.save()
                return redirect('group_view', group_id=group.id)

        group = Group.objects.get(pk=group_id)
        edit_group_form = GroupForm(instance=group)
        context = {"form": edit_group_form, "group": group, "action": "edit"}
        return render(req, 'mines_book/group_form.html', context)
    raise Exception("Please don't try to hack the application.")
Exemple #4
0
def TmcData6(request):
    """
    if CheckAccess(request,'2') != 'OK':
	return render_to_response("tmc/notaccess/tmc.html")
    """

    ## --- Номер заявки ---
    try:
        tmc_id = request.GET['tmc_id']
        request.session['tmc_id'] = tmc_id
    except:
        pass

    try:
        tmc_id = request.session['tmc_id']
    except:
        return HttpResponseRedirect("/tmc")

    if request.method == 'POST':
        form = GroupForm(request.POST)
        if form.is_valid():
            comment = form.cleaned_data['comment']
            group = form.cleaned_data['group']
            ChangeTmcGroup(GetUserKod(request), tmc_id, comment, group)

    d = GetTmcData(tmc_id)
    data = GetGroupHistory(tmc_id)

    form = GroupForm(None)

    s = GetLastStatus(tmc_id)

    c = RequestContext(request, {'d': d, 'form': form, 'data': data, 's': s})
    c.update(csrf(request))
    return render_to_response("tmc/tmcdata6.html", c)
def group_edit(request, group_slug):
    nav_selected = "communities"
    group = get_object_or_404(Group, slug=group_slug, is_geo_group=False)
    if not group.is_user_manager(request.user):
        return forbidden(request)
    if request.method == "POST":
        if "change_group" in request.POST:
            group_form = GroupForm(request.POST, request.FILES, instance=group)
            if group_form.is_valid():
                group = group_form.save()
                messages.success(request, "%s has been updated." % group)
                return redirect("group_edit", group_slug=group.slug)
            else:
                membership_form = MembershipForm(group=group)
                discussions_form = DiscussionSettingsForm(instance=group)
        if "discussion_settings" in request.POST:
            discussions_form = DiscussionSettingsForm(request.POST,
                                                      instance=group)
            if discussions_form.is_valid():
                group = discussions_form.save()
                messages.success(request, "%s has been updated." % group)
                return redirect("group_edit", group_slug=group.slug)
            else:
                membership_form = MembershipForm(group=group)
                group_form = GroupForm(instance=group)
        elif "delete_group" in request.POST:
            group.delete()
            messages.success(request, "%s has been deleted." % group)
            return redirect("group_list")
        elif "change_membership" in request.POST:
            membership_form = MembershipForm(group=group, data=request.POST)
            if membership_form.is_valid():
                membership_form.save()
                if group.is_user_manager(request.user):
                    messages.success(
                        request, "%s's memberships have been updated." % group)
                    return render_to_response(
                        "groups/group_edit.html",
                        locals(),
                        context_instance=RequestContext(request))
                else:
                    messages.success(
                        request,
                        "You no longer have permissions to edit %s" % group)
                    return redirect("group_detail", group_slug=group.slug)
            else:
                group_form = GroupForm(instance=group)
                discussions_form = DiscussionSettingsForm(instance=group)
        else:
            messages.error(request, "No action specified.")
    else:
        group_form = GroupForm(instance=group)
        membership_form = MembershipForm(group=group)
        discussions_form = DiscussionSettingsForm(instance=group)
    site = Site.objects.get_current()
    requesters = group.requesters_to_grant_or_deny(request.user)
    return render_to_response("groups/group_edit.html",
                              locals(),
                              context_instance=RequestContext(request))
Exemple #6
0
def create_group(request):
    """ Create a new group. """
    group_form = GroupForm()
    if request.method == "POST":
        group_form = GroupForm(request.POST)
        if group_form.is_valid():
            group = group_form.save(commit=False)
            group.owner = request.user
            group.save()
            messages.success(request, "%s added" % group.name)
            return redirect("view_group", group.id)
    return render(request, "contacts/groups/create.html", {"form": group_form})
def group_modify(request, group_id):
    group_obj = Group.objects.get(id=group_id)
    form = GroupForm(instance=group_obj)
    if request.method == "POST":
        form = GroupForm(request.POST, instance=group_obj)
        if form.is_valid():
            form.save()
            messages.add_message(request, messages.SUCCESS, u'信息修改成功')
            return HttpResponseRedirect(reverse('group_list'))
    return render_to_response("core/group_modify.html", {
        'form': form,
    },
                              context_instance=RequestContext(request))
Exemple #8
0
def dashboard(uid):
    # Call the firebase database and get all the user info
    user_doc = db.collection(u'users').document(uid).get().to_dict()
    url = "https://api.td-davinci.com/api/customers/" + user_doc[
        "td-customer-id"] + "/transactions"
    headers = {
        "accept":
        'application/json',
        "Authorization":
        'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJDQlAiLCJ0ZWFtX2lkIjoiM2IyZDVhMTYtYTMwMC0zY2U2LTgzZTYtOTE2OWU4OTEzYzQ1IiwiZXhwIjo5MjIzMzcyMDM2ODU0Nzc1LCJhcHBfaWQiOiI5MjVhZjU4Yi1kMmQzLTQ0MjctOGE2Zi1kM2Y1MGZjOGJlOTMifQ.RRdnWTXL8jMdlgKKQ_zAtazf78cF45FchafL4TlEA0g'
    }

    transactions = (requests.get(url, headers=headers).json())["result"]
    groups = []

    for doc in db.collection("groups").get():

        if (doc.id in [x.strip() for x in user_doc["groups"]]):
            group_dict = doc.to_dict()
            group_dict["id"] = doc.id
            groups.append(group_dict)

    result = {
        "user": user_doc,
        "transactions": transactions[:10],
        "groups": groups
    }

    form = GroupForm()
    if form.validate_on_submit():
        # form is an object with its fields
        flash("GOOD!")
        form = GroupForm()

        name = form.name.data
        members = form.members.data.split(',')
        desc = form.description.data

        data = {
            "name": name,
            "members": members,
            "desc": desc,
        }

        db.collection(u'groups').add(data)

        return redirect(url_for('dashboard', uid=uid))

    print(result["groups"])

    return render_template("dashboard.html", user=result, form=form)
def group_add(request):
    form = GroupForm()
    if request.method == "POST":
        form = GroupForm(request.POST)
        if form.is_valid():
            form.save()

            # 为新用户分配发送池
            messages.add_message(request, messages.SUCCESS, u'信息添加成功')
            return HttpResponseRedirect(reverse('group_list'))
    return render_to_response("core/group_modify.html", {
        'form': form,
    },
                              context_instance=RequestContext(request))
Exemple #10
0
def edit_group(request, pk):
    """ Edit a group. """
    group = get_object_or_404(Group, pk=pk, owner=request.user)
    group_form = GroupForm(instance=group)
    if request.method == "POST":
        group_form = GroupForm(request.POST, instance=group)
        if group_form.is_valid():
            group = group_form.save()
            messages.success(request, "%s updated" % group.name)
            return redirect("view_group", group.id)
    return render(request, "contacts/groups/edit.html", {
        "group": group,
        "form": group_form
    })
Exemple #11
0
def add_group(request):
    context = {}

    if request.method == "POST":
        form = GroupForm(request.POST)
        if form.is_valid():
            group = form.save(commit=False)
            group.added_by = request.user
            group.save()
            return HttpResponseRedirect("/group/%s" % group.id)
    else:
        form = GroupForm()

    context["form"] = form
    return r2r(request, "add_group", context)
Exemple #12
0
def addGroup():

    if 'email' not in session:
        return redirect(url_for('signin'))

    user = Smarketer.query.filter_by(username=session['email']).first()

    if user is None:
        return redirect(url_for('signin'))
    else:
        form = GroupForm()

        if request.method == 'POST':
            if form.validate() == False:
                return render_template('addGroup.html', form=form)
            else:
                totalTitle = form.groupTitle.data + " - " + form.groupID.data
                newGroup = Group(form.groupID.data, totalTitle)
                db.session.add(newGroup)
                db.session.commit()

                form.groupID.data = ""
                form.groupTitle.data = ""
                return render_template('addGroup.html',
                                       form=form,
                                       success=True)

        elif request.method == 'GET':
            return render_template('addGroup.html', form=form)
Exemple #13
0
def create_group(req):
    """
    :param req: the received HTTP request
    :return: an HTTP response:
             - redirect to group view if request method is POST
             - redirect to the user's page who sent the request otherwise
    """
    user = req.user
    if req.method == 'POST':
        form = GroupForm(req.POST, req.FILES)
        if form.is_valid():
            cleaned_data = form.cleaned_data
            name = cleaned_data['name']
            description = cleaned_data['description']
            profile_pic = req.FILES['profile_pic']
            group = Group(name=name,
                          description=description,
                          profile_pic=profile_pic,
                          admin=user.student)
            group.save()
            members = cleaned_data['members']
            if members.count() > 0:
                group.members.add(user.student, *members)
            else:
                group.members.add(user.student)
            return redirect('group_view', group_id=group.id)

    return redirect('student_view', student_username=user.username)
Exemple #14
0
 def getEditFormContext():
     group = conn.getObject("ExperimenterGroup", gid)
     ownerIds = [e.id for e in group.getOwners()]
     memberIds = [m.id for m in group.getMembers()]
     permissions = getActualPermissions(group)
     system_groups = [
         conn.getAdminService().getSecurityRoles().systemGroupId,
         conn.getAdminService().getSecurityRoles().userGroupId,
         conn.getAdminService().getSecurityRoles().guestGroupId
     ]
     group_is_current_or_system = ((conn.getEventContext().groupId
                                    == long(gid))
                                   or (long(gid) in system_groups))
     form = GroupForm(initial={
         'name': group.name,
         'description': group.description,
         'permissions': permissions,
         'owners': ownerIds,
         'members': memberIds,
         'experimenters': experimenters
     },
                      group_is_current_or_system=group_is_current_or_system)
     admins = [conn.getAdminService().getSecurityRoles().rootId]
     if long(gid) in system_groups:
         # prevent removing 'root' or yourself from group if it's a system
         # group
         admins.append(conn.getUserId())
     return {
         'form': form,
         'gid': gid,
         'permissions': permissions,
         "admins": admins
     }
Exemple #15
0
def group_add(request):
    temp_name = "cmdb/cmdb-header.html"
    if request.method == "POST":
        group_form = GroupForm(request.POST)
        if group_form.is_valid():
            group_form.save()
            tips = u"增加成功!"
            display_control = ""
        else:
            tips = u"增加失败!"
            display_control = ""
        return render(request, "cmdb/group_base.html", locals())
    else:
        display_control = "none"
        group_form = GroupForm()
        return render(request, "cmdb/group_base.html", locals())
Exemple #16
0
def group_view(req, group_id):
    """
    :param req: the received HTTP request
    :param group_id: id of the group whose page is requested
    :return: an HTTP response:
            - render to the group page if request method is PUT
            - json response if request method is DELETE
    """
    try:
        group = Group.objects.get(pk=group_id)
    except:
        raise Http404("The group does not exist")
    if req.method == "GET":
        group_form = GroupForm(instance=group)
        post_form = PostForm(instance=group)
        posts = group.posts_received.order_by("-post__date_created")
        return render(req,
                      'mines_book/group.html',
                      context={
                          "group": group,
                          "group_form": group_form,
                          "post_form": post_form,
                          "posts": posts
                      })

    if req.method == "DELETE":
        if req.user == group.admin.user:
            group.delete()
            response_data = {'msg': 'Group was deleted.'}
            return HttpResponse(json.dumps(response_data),
                                content_type='application/json')
        else:
            raise Exception("Please don't try to hack the application.")
Exemple #17
0
def new_groups():
    form = GroupForm()
    groups = []
    if form.validate_on_submit():
        cur = mysql.connection.cursor()
        cur.callproc("MAKEGROUP", [
            form.group_id.data, form.group_name.data, form.group_topic.data,
            form.group_context_editor.data
        ])
        cur.callproc("GROUPCREATE",
                     [session['username'], form.group_id.data,
                      datetime.now()])
        mysql.connection.commit()
        cur.close()
        flash(f' {form.group_name.data} added successfully', 'success')
        return redirect(url_for('new_groups'))
    cur = mysql.connection.cursor()
    cur.callproc("GETGROUP_BY_USERNAME", [session['username']])
    my_groups = cur.fetchall()
    cur.close()
    len_group = len(my_groups)
    #print('my groups:   ',len_group)
    return render_template('Create_group.html',
                           title='Create Group',
                           form=form,
                           legend='Create New Group',
                           groups=my_groups,
                           len_group=len_group)
Exemple #18
0
def edit_group(id):
    """
    Edit a group.
    :param id:
    :return:
    """
    check_admin()
    group = Group.query.get_or_404(id)
    form = GroupForm(obj=group)
    if form.validate_on_submit():
        group.name = form.name.data
        group.description = form.description.data
        try:
            db.session.add(group)
            db.session.commit()
            flash('You have successfully edited the group: "%s".' %
                  str(group.name))
        except:
            db.session.rollback()
            flash('Failed to edit the group: "%s".' % str(group.name))
        return redirect(url_for('admin.groups'))
    form.description.data = group.description
    form.name.data = group.name
    return render_template('admin/groups/edit_group.html',
                           title='Edit Group',
                           action='Edit',
                           group=group,
                           form=form)
Exemple #19
0
def edit_group(request, group_id):
    context = {}
    group = Group.objects.get(pk=group_id)

    if not request.user.is_staff and request.user.email != group.added_by.email:
        return HttpResponseRedirect("/group/%s" % group_id)

    if request.method == "POST":
        form = GroupForm(request.POST, instance=group)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect("/group/%s" % group_id)
    else:
        form = GroupForm(instance=group)

    context["form"] = form
    return r2r(request, "edit_group", context)
Exemple #20
0
def create_group(request):
    if request.method == 'POST':
        form = GroupForm(request.POST)
        group_title_form = GroupTitleForm(request.POST, prefix='gtf')
        if form.is_valid() and group_title_form.is_valid():
            group = form.save(commit=False)
            group.save()
            group_title = group_title_form.save(commit=False)
            group_title.group = group
            group_title.save()
            return redirect('accounts:administration:groups_list')
    else:
        form = GroupForm()
        group_title_form = GroupTitleForm(prefix='gtf')
    return render(request, 'accounts/administration/create_group.html', {
        'form': form,
        'group_title_form': group_title_form
    })
Exemple #21
0
def userManagementViews(request):
    """
    JunHU
    """
    form = GroupForm()
    context = {
        "form": form,
    }
    return render(request, "management/user_management.html", context)
Exemple #22
0
def titleManagementViews(request):
    """
    JunHU
    """
    form = GroupForm(request=request)
    context = {
        "form": form,
    }
    return render(request, "management/title_management.html", context)
Exemple #23
0
def new_group(request):
    form = GroupForm()
    form_url = "/webconf/aclsmanager/save_new_group/"
    context = {
        'form': form,
        'form_url': form_url,
    }
    return render_to_response('webconf/aclsmanager/form_acls.html',
                              context,
                              context_instance=RequestContext(request))
Exemple #24
0
def group_edit(request, group_id):
    project = HostGroup.objects.get(id=group_id)
    temp_name = "cmdb/cmdb-header.html"
    if request.method == 'POST':
        form = GroupForm(request.POST, instance=project)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(reverse('group'))
    else:
        form = GroupForm(instance=project)
    display_control = "none"
    results = {
        'group_form': form,
        'group_id': group_id,
        'request': request,
        'temp_name': temp_name,
        'display_control': display_control,
    }
    return render(request, 'cmdb/group_base.html', results)
Exemple #25
0
def group_add_mini(request):
    temp_name = "cmdb/cmdb-header.html"
    if request.method == "POST":
        group_form = GroupForm(request.POST)
        if group_form.is_valid():
            group_form.save()
            tips = u"增加成功!"
            display_control = ""
            status = 1
        else:
            tips = u"增加失败!"
            display_control = ""
        return render_to_response("cmdb/group_add_mini.html", locals(),
                                  RequestContext(request))
    else:
        display_control = "none"
        group_form = GroupForm()
        return render_to_response("cmdb/group_add_mini.html", locals(),
                                  RequestContext(request))
Exemple #26
0
def save_new_group(request):

    if request.method == 'POST':
        form = GroupForm(request.POST)
        if form.is_valid():
            group = Group()
            group.name = form.cleaned_data['name']
            group.max_loan_days = form.cleaned_data['max_loan_days']
            group.save()

    return HttpResponseRedirect('/webconf/couchauth/')
Exemple #27
0
def titleSettingViews(request):
    """
    JunHU
    """
    user_id = request.GET.get("user_id")
    user = User.objects.get(id=user_id)
    group_form = GroupForm(request=request)
    context = {
        "setting_user": user,
        "group_form": group_form,
    }
    return render(request, "management/title_setting.html", context)
Exemple #28
0
def add_new_group(request):
    if request.method == 'POST':
        form = GroupForm(request.POST, user=request.user)
        if form.is_valid():
            new_group = form.save(commit=False)
            new_group.user = request.user
            if Group.objects.filter(user=request.user, name=new_group.name).exists():
                # error, cannot duplicate name for the same user
                return index(request)

            new_group.save()
    return index(request)
Exemple #29
0
def save_new_group(request):

    if request.method == 'POST':

        form = GroupForm(request.POST)
        if form.is_valid():

            group = Group()
            group.name = form.cleaned_data['name']
            group.save()

    return HttpResponseRedirect('/webconf/aclsmanager/show_groups/')
Exemple #30
0
def save_group(request, group_id):
    try:
        group = Group.objects.get(id=group_id)
    except Group.DoesNotExist:
        return HttpResponseRedirect('/webconf/aclsmanager/show_groups/')

    if request.method == 'POST':
        form = GroupForm(request.POST)
        if form.is_valid():
            group.name = form.cleaned_data['name']
            group.save()

    return HttpResponseRedirect('/webconf/aclsmanager/show_groups/')