def login_page(request): #if request.user.is_authenticated: # return HttpResponseRedirect(reverse('dashboard:login')) if request.POST: username = request.POST['email'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: if user.is_active: login(request, user) profile = Profile.objects.get(user_id=user.id) crm_user = CRMConnector.search_party_by_email( profile.user.email) if not profile.crm_id: profile.crm_id = crm_user[ 'id'] if crm_user and 'id' in crm_user else None profile.save() messages.info(request, 'Welcome %s' % user.first_name.encode('utf-8')) return HttpResponseRedirect(reverse('dashboard:login')) else: messages.error(request, 'User Invalid') else: messages.error(request, 'Username or password are wrong!') return render(request, 'dashboard/login.html', {})
def get(self): remote_party = CRMConnector.search_party_by_email( self.emailAddresses[0]['address']) if remote_party: self.__capsule_party = remote_party else: self.__capsule_party = None return remote_party
def find_and_delete(self): from .exceptions import CRMdeletePartyException self.get() try: if self.__capsule_party: return CRMConnector.delete_party(self.__capsule_party['id']) except: raise CRMdeletePartyException # @TODO : write error/exception return 'error'
def safe_update(self): self.emailAddresses[0]['address'] in self.__capsule_party[ 'emailAddresses'] and self.emailAddresses.pop(0) self.__exclude_custom_fields() return CRMConnector.update_party(self.__capsule_party['id'], {'party': self.as_dict()})
def delete(self): if not self.__capsule_party: # @TODO : write error/exception return 'No remote id set' return CRMConnector.delete_party(self.__capsule_party['id'])
def create(self): return CRMConnector.add_party({'party': self.as_dict()})
def update(self): self.__capsule_party and self.get() return CRMConnector.update_party(self.__capsule_party['id'], {'party': self.as_dict()})