# HG changeset patch # User rougeronj # Date 1350401041 -7200 # Node ID 05b224ff82e84f6294c64db2c2702caff2aa55db # Parent 3fc0960ae97bf77bd7f4d62251fdf9ccf5c60cc3 remove group creation/modification popup diff -r 3fc0960ae97b -r 05b224ff82e8 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html --- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html Tue Oct 16 13:14:56 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html Tue Oct 16 17:24:01 2012 +0200 @@ -1,12 +1,11 @@ -{% extends "ldt/ldt_raw_base.html" %} +{% extends "ldt/ldt_utils/workspace_base.html" %} +{% load i18n %} -{% load i18n %} {% load adminmedia %} {% load thumbnail %} {% block js_import %} {{ block.super }} - @@ -25,28 +24,8 @@ {% block js_declaration %} {{ block.super }} {% endblock %} -{% block body %} +{% block content %}
{% if group_id %}{% trans "Update a group" %}{% else %}{% trans "Create a group" %}{% endif %}
@@ -96,9 +72,9 @@ {% include "ldt/ldt_utils/partial/permissions.html" %} {% include "ldt/ldt_utils/partial/picture.html"%} - +
- + {% if group_id %} {% if is_owner_group %} diff -r 3fc0960ae97b -r 05b224ff82e8 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html --- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html Tue Oct 16 13:14:56 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html Tue Oct 16 17:24:01 2012 +0200 @@ -19,7 +19,6 @@ function init_events(base_node) { init_events_projects(base_node, "{% url ldt.ldt_utils.views.workspace.popup_embed %}", project_filter_url, publish_project_url, unpublish_project_url) - init_events_groups(base_node, "{% url ldt.ldt_utils.views.workspace.popup_embed %}", groups_filter_url); } var global_csrf_token = "{{ csrf_token }}"; diff -r 3fc0960ae97b -r 05b224ff82e8 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/permissions.html --- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/permissions.html Tue Oct 16 13:14:56 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/permissions.html Tue Oct 16 17:24:01 2012 +0200 @@ -121,8 +121,10 @@
+ {% if media_form %}
{{ content_form.is_public }}

+ {% endif %}
{% trans "User and group list" %}
@@ -147,7 +149,9 @@
+ {% if media_form %}

+ {% endif %}
{% trans "Members list" %} diff -r 3fc0960ae97b -r 05b224ff82e8 src/ldt/ldt/ldt_utils/urls.py --- a/src/ldt/ldt/ldt_utils/urls.py Tue Oct 16 13:14:56 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/urls.py Tue Oct 16 17:24:01 2012 +0200 @@ -9,7 +9,7 @@ url(r'^searchInit/(?P.*)/(?P.*)$', 'views.lignesdetemps.search_init'), url(r'^searchForm/$', 'views.workspace.search_form'), url(r'^published/$', 'views.workspace.published_project'), - url(r'^groups/$', 'views.workspace.groups'), + url(r'^groups/$', 'views.workspace.groups', name="groups-view"), url(r'^get_group_projects/$', 'views.group.get_group_projects'), url(r'^search/$', 'views.workspace.search_index'), url(r'^search/(?P.*)/(?P.*)$', 'views.lignesdetemps.search_index_get'), diff -r 3fc0960ae97b -r 05b224ff82e8 src/ldt/ldt/ldt_utils/views/group.py --- a/src/ldt/ldt/ldt_utils/views/group.py Tue Oct 16 13:14:56 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/views/group.py Tue Oct 16 17:24:01 2012 +0200 @@ -2,13 +2,14 @@ from django.contrib.auth.decorators import login_required from django.contrib.auth.models import Group from django.http import HttpResponseServerError -from django.shortcuts import render_to_response, get_object_or_404 +from django.shortcuts import render_to_response, get_object_or_404, redirect from django.template import RequestContext from ldt.ldt_utils.forms import GroupAddForm from guardian.shortcuts import remove_perm, get_objects_for_group, get_objects_for_user from ldt.security.utils import add_change_attr, get_userlist, get_userlist_group from ldt.security.cache import get_cached_checker, cached_assign from ldt.user.forms import PictureForm +import logging @login_required @@ -41,37 +42,43 @@ if request.method == 'POST': form = GroupAddForm(request.POST) picture_form = PictureForm(None, request.POST, request.FILES) - - if form.is_valid(): - name = form.cleaned_data['name'] - members_list = form.cleaned_data['read_list'] - admin_list = form.cleaned_data['write_list'] - - group = Group.objects.create(name=name) - group.save() - group.profile.description = form.cleaned_data['description'] - group.profile.save() - - picture_form.model = group - if picture_form.is_valid(): - picture_form.save() - - cached_assign('is_owner_group', request.user, group) - cached_assign('change_group', request.user, group) - request.user.groups.add(group) - - for elem in members_list: - if hasattr(elem, 'username'): - elem.groups.add(group) - if elem in admin_list: - cached_assign('change_group', elem, group) - form_status = 'saved' - else: - group.delete() - + submit_action = request.REQUEST.get("submit_button", False) + + if submit_action == 'close': + return redirect("groups-view") + else: + if form.is_valid(): + name = form.cleaned_data['name'] + members_list = form.cleaned_data['read_list'] + admin_list = form.cleaned_data['write_list'] + + group = Group.objects.create(name=name) + group.save() + group.profile.description = form.cleaned_data['description'] + group.profile.save() + + picture_form.model = group + if picture_form.is_valid(): + picture_form.save() + + cached_assign('is_owner_group', request.user, group) + cached_assign('change_group', request.user, group) + request.user.groups.add(group) + + for elem in members_list: + if hasattr(elem, 'username'): + elem.groups.add(group) + if elem in admin_list: + cached_assign('change_group', elem, group) + form_status = 'saved' + else: + group.delete() else: form = GroupAddForm() picture_form = PictureForm() + + if form_status == 'saved': + return redirect("groups-view") return render_to_response("ldt/ldt_utils/create_group.html", {'group_edition': True, 'form' : form, 'form_status' : form_status, 'elem_list' : get_userlist(request.user), 'profile_picture_form': picture_form}, context_instance=RequestContext(request)) @@ -97,6 +104,8 @@ if is_owner_group: group.delete() form_status = 'deleted' + elif submit_action == 'close': + return redirect("groups-view") else: if form.is_valid() and picture_form.is_valid(): name = form.cleaned_data['name'] @@ -130,12 +139,11 @@ form = GroupAddForm(initial={'name':unicode(group.name)}) picture_form = PictureForm() - if form_status != 'deleted': + if form_status == 'deleted' or form_status == 'saved': + return redirect("groups-view") + else: member_list, admin_list = get_userlist_group(group, request.user) profile_image = group.profile - else: - member_list = admin_list = [] - profile_image = '' return render_to_response("ldt/ldt_utils/create_group.html", {'group_id' : group_id, 'form' : form, 'form_status' : form_status, 'group_edition': True, 'elem_list' : get_userlist(request.user), 'member_list': member_list, 'admin_list': admin_list,