예제 #1
0
 def render(self,context,instance,placeholder):
     request = context['request']
     if request.method=='POST':
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
                 projform = self.DjangoForm(request.POST,instance=proj)
                 note_type = 'update'
             except self.DjangoModel.DoesNotExist:
                 projform = self.DjangoForm(request.POST)
                 projform.creater = request.user
         else:
             projform = self.DjangoForm(request.POST)
             note_type='create'
         if projform.is_valid():
             p=projform.save()
             if projform.cleaned_data.get('investment_flow'):
                 for inv in projform.cleaned_data.get('investment_flow'):
                     obj = Investment.objects.get(pk=inv)
                     invflow = InvestmentFlow(father=obj,child=p)
                 try:
                     invflow.save()
                 except IntegrityError:
                     pass
             notificate(p,note_type,request.user,msg=_("test"))
             context.update({'redirect':p.pk})
             lang = get_language()
             redirect_url = self.redirect_language[lang]
             raise ForceResponse(HttpResponseRedirect(redirect_url+'?id=%s'%p.pk))
         else:
             context.update({'formset':projform})
             return context
     else:
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
             except self.DjangoModel.DoesNotExist:
                 context.update({'formset':self.DjangoForm() })
                 return context
             context.update({'formset':self.DjangoForm(instance=proj)})
             return context
         else:
             context.update({'formset':self.DjangoForm() })
             return context
예제 #2
0
 def render(self,context,instance,placeholder):
     request = context['request']
     if request.method=='POST':
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
                 projform = self.DjangoForm(request.POST,instance=proj)
                 note_type = 'edit'
                 msg = "User %s edited %s"
             except self.DjangoModel.DoesNotExist:
                 projform = self.DjangoForm(request.POST)
                 projform.creater = request.user
         else:
             projform = self.DjangoForm(request.POST)
             note_type='create'
             msg = "User %s created %s"
         if projform.is_valid():
             p=projform.save()
             notificate(p,note_type,request.user,msg=_("test"))
         else:
             context.update({'formset':projform})
             return context
     else:
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
             except self.DjangoModel.DoesNotExist:
                 context.update({'formset':self.DjangoForm() })
                 return context
             context.update({'formset':self.DjangoForm(instance=proj)})
             return context
         else:
             context.update({'formset':self.DjangoForm() })
             return context
예제 #3
0
 def render(self,context,instance,placeholder):
     request = context['request']
     if request.method=='POST':
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 user = UserProfile.objects.get(pk=pk_id)
                 userform = UserForm(request.POST,request.FILES,instance=user)
                 note_type="update"
                 userform.updater = request.user
             except UserProfile.DoesNotExist:
                 if instance.self_user:
                     raise Http404
         else:
             userform = UserForm(request.POST,request.FILES)
             note_type="create"
         if userform.is_valid():
             u =userform.save(commit=False)
             if not u.pk:
                 user = User()
             else:
                 user = u.user
             username = userform.cleaned_data.get('email')
             password = userform.cleaned_data.get('password')
             check_password = userform.cleaned_data.get('check_password')
             first_name = userform.cleaned_data.get('first_name')
             last_name = userform.cleaned_data.get('last_name')
             email = userform.cleaned_data.get('email')
             phone_country_prefix_01 = userform.cleaned_data.get('phone_country_prefix_01')
             phone_local_prefix_01 = userform.cleaned_data.get('phone_local_prefix_01')
             phone1 = userform.cleaned_data.get('phone1')
             phone_country_prefix_02 = userform.cleaned_data.get('phone_country_prefix_02')
             phone_local_prefix_02 = userform.cleaned_data.get('phone_local_prefix_02')
             phone2 = userform.cleaned_data.get('phone2')
             fax_country_prefix = userform.cleaned_data.get('fax_country_prefix')
             fax_local_prefix = userform.cleaned_data.get('fax_local_prefix')
             fax = userform.cleaned_data.get('fax')
             email_alt = userform.cleaned_data.get('email_alt')
             title = userform.cleaned_data.get('title')
             user_type = userform.cleaned_data.get('user_type')
             user.username = username
             user.first_name = first_name
             user.last_name = last_name
             user.set_password(password)
             user.save()
             u.user = user
             sendmail=False
             if not u.pk:
                 #como precisa dessa linha, vai precisar pegar todos campos manualmente
                 #sem contar com o modelform
                 u = user.get_profile()
                 if instance.self_user:
                     unvalidateduser = UserType.objects.get(name='incompleteuser')
                     u.user_type = unvalidateduser
                     sendmail=True
             u.phone_country_prefix_01=phone_country_prefix_01
             u.phone_local_prefix_01 = phone_local_prefix_01
             u.phone1 = phone1
             u.user_type = user_type
             u.phone_country_prefix_02=phone_country_prefix_02
             u.phone_local_prefix_0 = phone_local_prefix_02
             u.phone2 = phone2
             u.fax_country_prefix = fax_country_prefix
             u.fax_local_prefix = fax_local_prefix
             u.fax = fax
             u.email_alt = email_alt
             u.title = title
             u.save()
             if userform.cleaned_data.get('organizations'):
                 for orgid in userform.cleaned_data.get('organizations'):
                     obj = Organization.objects.get(pk=orgid)
                     userorg = UserProfileOrganization(userprofile=u,
                             organization=obj)
                     try:
                         userorg.save()
                     except IntegrityError:
                         pass
             if sendmail:
                 mvalidate=MailValidation(user=user)
                 mvalidate.save()
                 mvalidate.send_validation(userform.cleaned_data.get('email'))
             if request.user.is_authenticated:
                 notificate(u,note_type,request.user,'teste')
             else:
                 notificate(u,note_type,u,'teste')
             context.update({'redirect':u.pk})
             lang = get_language()
             redirect_url = self.redirect_language[lang]
             raise ForceResponse(HttpResponseRedirect(redirect_url+'?id=%s'%u.pk))
         else:
             context.update({'formset':userform})
             return context
     else:
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 user = UserProfile.objects.get(pk=pk_id)
             except UserProfile.DoesNotExist:
                 if instance.self_user:
                     userform = UserForm()
                     context.update({'formset':userform})
                     return context
         else:
             userform = UserForm()
             context.update({'formset':userform})
             return context
예제 #4
0
 def render(self,context,instance,placeholder):
     request = context['request']
     if request.method=='POST':
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
                 projform = self.DjangoForm(request.POST,request.FILES,instance=proj)
                 note_type = 'update'
             except self.DjangoModel.DoesNotExist:
                 projform = self.DjangoForm(request.POST,request.FILES)
         else:
             projform = self.DjangoForm(request.POST,request.FILES)
             note_type='create'
         if projform.is_valid():
             ceo = projform.cleaned_data.get('ceo')
             ceo = ceo.split(" ")
             first = ceo[0]
             if len(ceo)>1:
                 last = ceo[1]
             else:
                 last = ""
             p=projform.save(commit=False)
             if note_type=='create':
                 p.created_at = datetime.now()
                 p.creater = request.user
             elif note_type=='updated':
                 p.updated_at = datetime.now()
                 p.updater = request.user
             p.contact_first_name=first
             p.contact_last_name=last
             p.save()
             if projform.cleaned_data.get('connections'):
                 for profile in projform.cleaned_data.get('connections'):
                     obj = UserProfile.objects.get(pk=profile)
                     userorg = UserProfileOrganization(userprofile=obj,
                             organization=p,admin=True)
                     try:
                         userorg.save()
                     except IntegrityError:
                         pass
             if projform.cleaned_data.get('projects'):
                 for act in projform.cleaned_data.get('projects'):
                     obj = Project.objects.get(pk=act)
                     pjorg =ProjectOrganization(organization=p,entity=obj)
                     try:
                         pjorg.save()
                     except IntegrityError:
                         pass
             admin=False
             if projform.cleaned_data.get('admin')=='True':
                 admin=True
             prof = request.user.get_profile()
             if not UserProfileOrganization.objects.filter(userprofile=prof,organization=p):
                 UserProfileOrganization(userprofile=prof,
                     organization=p,admin=admin).save()
                 if prof.user_type.name=='regularuser':
                     orgadmintype=UserType.objects.get(name='organizationadmin')
                     prof.user_type = orgadmintype
                     prof.save()
             else:
                 upo = UserProfileOrganization.objects.get(userprofile=prof,organization=p)
                 upo.admin=admin
                 upo.save()
             #notifica no final
             notificate(p,note_type,request.user,'notificacao')
             context.update({'redirect':p.pk})
             lang = get_language()
             redirect_url = self.redirect_language[lang]
             raise ForceResponse(HttpResponseRedirect(redirect_url+'?id=%s'%p.pk))
         else:
             context.update({'formset':projform})
             return context
     else:
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
             except self.DjangoModel.DoesNotExist:
                 context.update({'formset':self.DjangoForm() })
                 return context
             ceo_init = proj.contact_first_name +' '+ proj.contact_last_name
             profile = request.user.get_profile()
             admin_init = 'False'
             if UserProfileOrganization.objects.filter(userprofile=profile,organization=proj,admin=True):
                 admin_init = 'True'
             formedit = self.DjangoForm(instance=proj,initial = {'ceo':ceo_init,'admin':admin_init})
             context.update({'formset':formedit})
             return context
         else:
             context.update({'formset':self.DjangoForm() })
             return context
예제 #5
0
 def render(self,context,instance,placeholder):
     request = context['request']
     if request.method=='POST':
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
                 projform = self.DjangoForm(request.POST,request.FILES,instance=proj)
                 note_type="update"
                 projform.updater=request.user
             except self.DjangoModel.DoesNotExist:
                 projform = self.DjangoForm(request.POST,request.FILES)
                 projform.creater = request.user
         else:
             projform = self.DjangoForm(request.POST,request.FILES)
             note_type="create"
         if projform.is_valid():
             p=projform.save(commit=False)
             p.creater = request.user
             if projform.cleaned_data.get('category')=='True':
                 p.is_project = True
             p.save()
             if projform.cleaned_data.get('organization'):
                 for org in projform.cleaned_data.get('organization'):
                     obj = Organization.objects.get(pk=org)
                     pjorg=ProjectOrganization(entity=p,organization=obj)
                     if org == projform.cleaned_data.get('main_org'):
                         pjorg.main=True
                     try:
                         pjorg.save()
                     except IntegrityError:
                         pjorg = ProjectOrganization.objects.get(entity=p,organization=obj)
                         if org == projform.cleaned_data.get('main_org'):
                             pjorg.main = True
                             pjorg.save()
             if projform.cleaned_data.get('activities'):
                 for act in projform.cleaned_data.get('activities'):
                     obj = Activity.objects.get(pk=act)
                     pjact = ProjectActivity(entity=p,activity=obj)
                     try:
                         pjact.save()
                     except IntegrityError:
                         pass
             if projform.cleaned_data.get('locations'):
                 for loc in projform.cleaned_data.get('locations'):
                     obj = Location.objects.get(pk=loc)
                     pjloc = ProjectLocation(entity=p,location=obj)
                     try:
                         pjloc.save()
                     except IntegrityError:
                         pass
             if projform.cleaned_data.get('child_projects'):
                 for subp  in projform.cleaned_data.get('child_projects'):
                     obj = Project.objects.get(pk=subp)
                     pxp = ProjectXProject(parent_project=p,child_project=obj)
                     try:
                         pxp.save()
                     except IntegrityError:
                         pass
             if projform.cleaned_data.get('father_projects'):
                 for subp  in projform.cleaned_data.get('child_projects'):
                     obj = Project.objects.get(pk=subp)
                     pxp = ProjectXProject(child_project=p,parent_project=obj)
                     try:
                         pxp.save()
                     except IntegrityError:
                         pass
             notificate(p,note_type,request.user,'teste')
             context.update({'redirect':p.pk})
             lang = get_language()
             redirect_url = self.redirect_language[lang]
             raise ForceResponse(HttpResponseRedirect(redirect_url+'?id=%s'%p.pk))
         else:
             print projform.errors
             context.update({'formset':projform})
             return context
     else:
         if request.GET.has_key('id'):
             pk_id = request.GET['id']
             try:
                 proj = self.DjangoModel.objects.get(pk=pk_id)
             except self.DjangoModel.DoesNotExist:
                 context.update({'formset':self.DjangoForm()})
                 return context
             context.update({'formset':self.DjangoForm(instance=proj)})
             return context
         else:
             context.update({'formset':self.DjangoForm() })
             return context