Exemplo n.º 1
0
    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)
Exemplo n.º 2
0
    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))
Exemplo n.º 3
0
 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()
Exemplo n.º 4
0
 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"]),
     }
Exemplo n.º 5
0
    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())
Exemplo n.º 6
0
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)
Exemplo n.º 7
0
    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)
Exemplo n.º 8
0
    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)
Exemplo n.º 9
0
 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"))