def generatecarddavlogin(self): carddavName = self.getRequiredParameter("name") while True: generatedUsername = self._generateRandomSequence(8) if not CardDAVLogin.all().filter("generatedUsername ="******"key": str(cardDAVLogin.key()), "username": generatedUsername, "password": generatedPassword, })
def getCardDAVLogin(username): carddavLogin = CardDAVLogin.all(). \ filter("generatedUsername =", username). \ get() if carddavLogin is None: return None if not carddavLogin.parent().userSettings.cardDAVenabled: return None carddavLogin.put() # to update the 'lastUsed' field return carddavLogin
def deletecarddav(self): try: cardDAVLogin = CardDAVLogin.get(self.getRequiredParameter("key")) if cardDAVLogin.parent().key() != self.userProfile.key(): raise AjaxError("You don't own these CardDAV credentials.") cardDAVLogin.delete() self.sendJsonOK() except datastore_errors.BadKeyError: raise AjaxError("CardDAV login does not exist.")
def view(self): if self.getUserProfile(): userSettings = self._getUserSettings() carddavLogins = CardDAVLogin.all(). \ ancestor(self.userProfile). \ fetch(1000) self.sendContent('templates/Settings.html', activeEntry = "Settings", templateVariables = { 'userSettings': userSettings, 'carddavLogins': carddavLogins, 'availableLanguages': availableLanguages, })
def deleteProfile(userProfileKey): userProfile = UserProfile.get(userProfileKey) for e in CardDAVLogin.all().ancestor(userProfile): e.delete() for e in IndividualPermit.all().ancestor(userProfile): e.delete() for e in Persona.all().ancestor(userProfile): e.delete() for e in Psinque.all().ancestor(userProfile): e.delete() for e in Contact.all().ancestor(userProfile): e.delete() for e in Group.all().ancestor(userProfile): e.delete() for e in UserAddress.all().ancestor(userProfile): e.delete() for e in UserEmail.all().ancestor(userProfile): e.delete() for e in UserIM.all().ancestor(userProfile): e.delete() for e in UserPhoneNumber.all().ancestor(userProfile): e.delete() for e in UserPhoto.all().ancestor(userProfile): e.image.delete() e.delete() for e in UserNickname.all().ancestor(userProfile): e.delete() for e in UserCompany.all().ancestor(userProfile): e.delete() for e in UserWebpage.all().ancestor(userProfile): e.delete() if not userProfile.userSettings is None: userProfile.userSettings.delete() userProfile.delete() logging.info("User profile deleted")