def get(self): speaker = None talk = None tag_list = [] if self.request.params.has_key("spk"): tag_type = "Speaker" speaker = ndb.Key(urlsafe=self.request.get("spk")).get() tags_list = tags.TagList(speaker.key).pretty_tag_list([tag_type]) parent_key = speaker.key.urlsafe() if self.request.params.has_key("talk"): tag_type = "Talk" talk = ndb.Key(urlsafe=self.request.get("talk")).get() tags_list = tags.TagList(talk.key).pretty_tag_list([tag_type]) parent_key = talk.key.urlsafe() template_values = { "speaker": speaker, "talk": talk, "parent_key": parent_key, "tags": tags_list, "tag_type": tag_type, "all_tags": tags.retrieve_all_unique_tags(), } self.write_page("scaffold/edittags.html", template_values)
def test_zero_out_speaker(self): s = speaker.make_new_speaker("mail@email") s.telephone = "+44 123" s.address = "Yellow Brick Road" s.bio = "Once upon a time" s.set_field("Twitter", "@Tweetypy") s.set_field(s.FIELD_JOBTITLE, "Superman") s.put() speakerdir.SpeakerDir().add_speaker(s.key) image.store_only_image(s.key, "Just some binary data") tags.TagList(s.key).add_tag("Test", "Speaker") self.assertTrue(image.image_exists(s.key)) self.assertFalse(s.is_zero_deleted()) s.zero_out_speaker() self.assertTrue(s.is_zero_deleted()) self.assertFalse(speaker.speaker_exists("mail@email")) self.assertEquals("*****@*****.**", s.email) self.assertEquals("", s.telephone) self.assertEquals("", s.address) self.assertEquals("", s.bio) self.assertEquals("", s.field("Twitter")) self.assertFalse(speakerdir.SpeakerDir().is_speaker_listed(s.key)) self.assertEquals([], tags.TagList(s.key).get_all_tags([])) self.assertFalse(image.image_exists(s.key))
def zero_out_speaker(self): speakerdir.SpeakerDir().remove_speaker(self.key) tags.TagList(self.key).remove_all_tags() self.set_empty_profile("*****@*****.**") image.delete_image(self.key) self.zero_deleted = True self.put()
def existing_talk_values(self): t = ndb.Key(urlsafe=self.request.params['talk']).get() return { "talk_details": t, "is_new": False, "talk_key": t.key.urlsafe(), "tags": tags.TagList(t.key).pretty_tag_list(["Talk"]), }
def post(self): parent_key = ndb.Key(urlsafe=self.request.get("parent_key")) if self.request.get("remove_tag"): tags.TagList(parent_key).remove_tag(self.request.get("newtag"), [self.request.get("tag_type")]) if self.request.get("tag_type") == "Speaker": self.redirect("/edittags?spk=" + parent_key.urlsafe()) else: self.redirect("/edittags?talk=" + parent_key.urlsafe())
def write_readonly_speaker_page(handler, who): template_values = { 'new_speaker': False, 'speaker': who, 'speakerKey': who.key, 'readonly': "readonly", "emaillocked": "readonly", "updateable": False, "dir_selected": False, # not used "speaker_tags": tags.TagList(who.key).pretty_tag_list([]) } handler.write_page('speaker_lib/speakerpage.html', template_values)
def get(self): user_email = self.get_crrt_user().email() if speaker.speaker_exists(user_email): new_speaker = False else: new_speaker = True speaker_details = speaker.retrieve_or_make(user_email) template_values = { 'new_speaker': new_speaker, 'speaker': speaker_details, 'speakerKey': speaker_details.key.urlsafe(), 'readonly': "", "emaillocked": "readonly", "updateable": True, "dir_selected": speakerdir.SpeakerDir().is_speaker_listed(speaker_details.key), "speaker_tags": tags.TagList(speaker_details.key).pretty_tag_list(["Speaker"]) } self.write_page('speaker_lib/speakerpage.html', template_values)
def get(self): if self.request.params.has_key("email"): email = self.request.get("email") else: sorrypage.redirect_sorry(self, "SpeakerPageAccessDenied") return if self.request.params.has_key("key"): requested_speaker = self.request.get("key") else: sorrypage.redirect_sorry(self, "SpeakerPageKeyNotSupplied") return if speaker.speaker_exists(email): speaker_details = speaker.retreive_speaker(email) speaker_key = speaker_details.key.urlsafe() else: speaker_key = None speaker_details = None if speaker_key != requested_speaker: sorrypage.redirect_sorry(self, "SpeakerPageCredentialsDoNotMatch") return template_values = { 'new_speaker': False, 'speaker': speaker_details, 'speakerKey': speaker_key, 'readonly': "", "emaillocked": "readonly", "updateable": True, "dir_selected": speakerdir.SpeakerDir().is_speaker_listed(speaker_key), "speaker_tags": tags.TagList(speaker_key).pretty_tag_list() } self.write_page('speakerpage.html', template_values)
def post(self): k = ndb.Key(urlsafe=self.request.get("key")) tags.TagList(k).add_tag(self.request.get("tag"), self.request.get("tag_type"))