Esempio n. 1
0
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', {})
Esempio n. 2
0
 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
Esempio n. 3
0
 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'
Esempio n. 4
0
 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()})
Esempio n. 5
0
 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'])
Esempio n. 6
0
 def create(self):
     return CRMConnector.add_party({'party': self.as_dict()})
Esempio n. 7
0
 def update(self):
     self.__capsule_party and self.get()
     return CRMConnector.update_party(self.__capsule_party['id'],
                                      {'party': self.as_dict()})