Esempio n. 1
0
def new_location(request):
    """
    New Location
    """
    data = {}
    template = 'itembase/simpleform.djhtml'
    data['message'] = None
    data['headstring'] = 'New Location'
    if request.method == "POST":
        form = LocationForm(request.POST)
        if form.is_valid():
            location = Location(lc_name=form.cleaned_data['lc_name'],
                                lc_geo=form.cleaned_data['lc_geo'],
                                lc_adr=form.cleaned_data['lc_adr'],
                                lc_city=form.cleaned_data['lc_city'],
                                lc_www=form.cleaned_data['lc_www'],
                                lc_mail=form.cleaned_data['lc_mail'],
                                lc_info=form.cleaned_data['lc_info'],
                                )
            location.save()
            print(location)
            membership = Membership(me_user = request.user,
                                    me_location = location,
                                    me_trust1 = request.user,
                                    me_trust2 = request.user,
            )
            membership.save()
            print membership
            return redirect('itembase/home')
        return redirect('itembase/home')
    else:
        data['form'] = LocationForm()
    return render(request, template, data)
Esempio n. 2
0
def new_location(request):
    """
    New Location
    """
    data = {}
    template = 'itembase/simpleform.djhtml'
    data['message'] = None
    data['headstring'] = 'New Location'
    if request.method == "POST":
        form = LocationForm(request.POST)
        if form.is_valid():
            location = Location(
                lc_name=form.cleaned_data['lc_name'],
                lc_geo=form.cleaned_data['lc_geo'],
                lc_adr=form.cleaned_data['lc_adr'],
                lc_city=form.cleaned_data['lc_city'],
                lc_www=form.cleaned_data['lc_www'],
                lc_mail=form.cleaned_data['lc_mail'],
                lc_info=form.cleaned_data['lc_info'],
            )
            location.save()
            print(location)
            membership = Membership(
                me_user=request.user,
                me_location=location,
                me_trust1=request.user,
                me_trust2=request.user,
            )
            membership.save()
            print membership
            return redirect('itembase/home')
        return redirect('itembase/home')
    else:
        data['form'] = LocationForm()
    return render(request, template, data)
Esempio n. 3
0
def create(request):
    '''
    Sets up a group creation form wherein the user may choose the necessary
    criteria for the group they wish to create.

    The user may select the name of the group.
    '''
    if request.method == 'POST':
        form = GroupCreationForm(request.POST)
        if form.is_valid():
            group = form.save()

            # Create the default user membership
            m = Membership(user=request.user, group=group, is_admin=True)
            m.save()

            # Send emails to invited members.
            _send_email_invites(request, group)
            ''' Redirect to the new group '''
            return HttpResponse(group.json(), mimetype='application/json')
    else:
        raise Http404
    return render(request, 'group_create_modal.html', {
        'form': form,
    })
Esempio n. 4
0
def addMembership(membership_dict):
    newMembership = Membership(
        #id = id,
        user_id=membership_dict.get('user_id'),
        start_date=membership_dict.get('start_date'),
        last_renew_date=membership_dict.get('last_renew_date'),
        is_active=membership_dict.get('is_active'))
    newMembership.save()
    return newMembership
Esempio n. 5
0
 def form_valid(self, form):
     self.object = form.save(commit=False)
     Membership.objects.filter(project=self.object).delete()
     for member_id in form.data.getlist("members[]"):
         membership = Membership()
         membership.project = self.object
         membership.employee = Employee.objects.get(pk=member_id)
         membership.save()
     return super(ModelFormMixin, self).form_valid(form)
Esempio n. 6
0
def join_location(request, location_id):
    """
    Join a Location
    """
    data = {}
    location = get_object_or_404(Location, pk=location_id)
    membership = Membership(me_user = request.user,
                            me_location = location,
    )
    membership.save()
    print membership
    return redirect('itembase/home')
Esempio n. 7
0
 def save(self,group_obj):
         try:
                 persons = User.objects.get(username=self.cleaned_data['member'])
         except User.DoesNotExist:
                 return "User does not exist."
         personss = User.objects.get(username=persons)
         try:
                 check = Membership.objects.get(group=group_obj,person=personss)
                 return "User already in group"
         except Membership.DoesNotExist:
                 new_membership = Membership(person=personss,membership_type=self.cleaned_data['membership_type'],group=group_obj)
                 new_membership.save()
                 return new_membership
Esempio n. 8
0
def join_location(request, location_id):
    """
    Join a Location
    """
    data = {}
    location = get_object_or_404(Location, pk=location_id)
    membership = Membership(
        me_user=request.user,
        me_location=location,
    )
    membership.save()
    print membership
    return redirect('itembase/home')
Esempio n. 9
0
def GuardarActividad(request,recurso):
    if request.user.is_authenticated():
        hoy = date.today()
        fechaHoy = str(hoy)
        iden = int(recurso) - 1 
        (mensaje, admin, logger, request.user.username) = autenticacionUsuario(request)
        nombreUsuario = request.user.username
        contenidos = Contenidos.objects.all()
        userName = Usuario.objects.get(nombre=nombreUsuario)
        m1 = Membership(contenido=contenidos[iden], usuario=userName,
                      fechaEleccion= fechaHoy)
        m1.save()
        todas = "/todas"
    return HttpResponseRedirect(todas)
Esempio n. 10
0
def save_memberships_from_form(user, form):
   delete_memberships_for_user(user)
   for project in form.cleaned_data['surveys']:
      membership = Membership(user = user, project = project)
      membership.save()
   user_details_list = UserDetail.objects.filter(user = user.id)
   if (len(user_details_list) > 0):
      user_details = user_details_list[0]
   else:
      user_details = UserDetail()
   user_details.phone_number = form.cleaned_data['phone_number']
   user_details.smartphone = form.cleaned_data['smartphone']
   user_details.no_messages = form.cleaned_data['no_messages']
   user_details.save()
   return
Esempio n. 11
0
def profile(request):
	basic = get_basic(request)
	try:
		profile = Profile.objects.get(user=request.GET['id'])
		edit = None
		invitables = None
		if request.method == 'POST' and request.POST['invite']:
			try:
				obj = Membership.objects.filter(
						project_id=request.POST['invite']
					).get(
						user_id=request.GET['id']
					)
			except Membership.DoesNotExist:
				obj = Membership(project_id=request.POST['invite'],
					user_id=request.GET['id'])
			obj.approved_by_proj=True
			note = Notification(
				user=obj.user, subject=obj.project.user, 
				project=obj.project)
			if obj.approved_by_user:
				note.content = "accepted your request to join the project"
			else:
				note.content = "invited you to join the project"
			obj.save()
			send_note(note)
		if request.user.id == profile.id:
			edit = 'edit'
		elif basic:
			committed = Membership.objects.filter(
				user=profile.user.id).filter(
				approved_by_proj=True).select_related('project')
			invitables = Project.objects.filter(
				user=request.user.id).exclude(
				id__in=committed.values_list('project', flat=True))
		memberships = get_memberships(profile.user)
		ac = are_colleagues(request.user, profile.user)
		return render(request, 'profile.html', {'profile': profile, 'basic': basic,
			'edit': edit, 'memberships': memberships, 'invitables': invitables,
			'are_colleagues': ac})
	except Profile.DoesNotExist:
		return HttpResponseRedirect("/profiles")
Esempio n. 12
0
def create(request):
    """
    Sets up a group creation form wherein the user may choose the necessary
    criteria for the group they wish to create.

    The user may select the name of the group.
    """
    if request.method == "POST":
        form = GroupCreationForm(request.POST)
        if form.is_valid():
            group = form.save()

            # Create the default user membership
            m = Membership(user=request.user, group=group, is_admin=True)
            m.save()

            # Send emails to invited members.
            _send_email_invites(request, group)

            """ Redirect to the new group """
            return HttpResponse(group.json(), mimetype="application/json")
    else:
        raise Http404
    return render(request, "group_create_modal.html", {"form": form})
Esempio n. 13
0
 def save(self,person_obj):
         new_group = Group(group_name=self.cleaned_data['group_name'],group_type=self.cleaned_data['group_type'])
         new_group.save()
         new_membership = Membership(person=person_obj,membership_type='owner',group=new_group)
         new_membership.save()
         return new_group
Esempio n. 14
0
def project(request):
	basic = get_basic(request)
	try:
		project = Project.objects.get(id=request.GET['id'])
		member_status = None
		if basic:
			try:
				memberships = Membership.objects.filter(user_id=request.user.id)
				membership = memberships.get(project_id=project.id)
			except Membership.DoesNotExist:
				membership = Membership(user=request.user, project=project)
			if request.user.id == project.user.id:
				member_status = 'admin'
			elif membership.is_staff:
				member_status = 'staff'
			elif membership.approved_by_user and not membership.approved_by_proj:
				member_status = 'requested'
			elif membership.approved_by_proj and not membership.approved_by_user:
				member_status = 'invited'
			elif membership.approved_by_user and membership.approved_by_proj:
				member_status = 'member'
			if request.method == 'POST':
				note = Notification(user=project.user, subject=membership.user,
					project=project)
				if request.POST.get('makepost'):
					return HttpResponseRedirect(
						"/makepost?id=" + str(project.id))
				elif request.POST.get('manageproject'):
					return HttpResponseRedirect(
						"/manageproject?id=" + str(project.id))
				elif request.POST.get('join'):
					membership.approved_by_user = True
					if membership.approved_by_proj == True:
						note.content = "accepted your invitation to join"
						member_status = 'member'
					else:
						note.content = "requested to join your project"
						note.request = True
						member_status = 'requested'
				elif request.POST.get('withdraw'):
					membership.approved_by_user = False
					note.deleted = True
					member_status = None
				elif request.POST.get('leave'):
					membership.approved_by_user = False
					membership.approved_by_proj = False
					membership.is_staff = False
					note.content = "left your project"
					member_status = None
				elif request.POST.get('quit'):
					membership.is_staff = False
					note.content = "is no longer a staff member of"
					if membership.approved_by_proj and membership.approved_by_user:
						member_status = 'member'
					else:
						member_status = None
				membership.save()
				send_note(note)
		memberships = Membership.objects.filter(project_id=project.id)
		members = memberships.filter(approved_by_user=True).filter(approved_by_proj=True)
		staff = members.filter(is_staff=True)
		participants = members.filter(is_staff=False)
		posts = Post.objects.filter(
				project_id=project.id
			).filter(
				deleted=False
			).order_by(
				'-posted'
			)
		if not basic:
			posts = posts.filter(public=True)
		posts = posts[:7]
		return render(request, 'project.html', {'project': project, 'basic': basic, 
			'member_status': member_status, 'staff': staff, 'participants': participants,
			'posts': posts, 'is_member': is_member(request.user, project)})
	except ObjectDoesNotExist:
		return HttpResponseRedirect("/projects")
Esempio n. 15
0
def save_memberships_for_projects(user, projects):
   for project in projects:
      membership = Membership(user = user, project = project)
      membership.save()