Exemple #1
0
 def post(self):
     self.response.headers['Content-Type'] = 'text/html'
     if self.request.get('cancel') == 'Cancel':
         return self.redirect("/")
     my_user = utilities.getuser()
     input_text = utilities.preparetextinput(self.request.get('value'))
     self.add(input_text, my_user)
Exemple #2
0
 def get(self):
     self.response.headers['Content-Type'] = 'text/html'
     template_values = {
         'user': utilities.get_user(),
         'anagrams': utilities.getanagrams_from_user(utilities.getuser())
     }
     template = JINJA_ENVIRONMENT.get_template('/html/AddWord.html')
     self.response.write(template.render(template_values))
Exemple #3
0
 def post(self):
     self.response.headers['Content-Type'] = 'text/html'
     if self.request.get('cancel') == 'Cancel':
         return self.redirect("/")
     # Get user data object from datastore of current user (logged in)
     my_user = utilities.getuser()
     input_text = utilities.preparetextinput(self.request.get('value'))
     self.add(input_text, my_user)
 def get(self):
     self.response.headers['Content-Type'] = 'text/html'
     if utilities.user_loggedin():
         if not utilities.existing_user():
             utilities.add_new_user(utilities.get_user())
         result, wordCount, totalCount = utilities.getanagrams_from_user(
             utilities.getuser())
         renderer.render_main(self, utilities.getlogouturl(self), result,
                              wordCount, totalCount)
     # If user is not logged in create login url
     else:
         renderer.render_login(self, utilities.getloginurl(self))
Exemple #5
0
 def get(self):
     self.response.headers['Content-Type'] = 'text/html'
     # Check whether user is logged in
     if utilities.user_loggedin():
         # if myuser object is None --> No user with key found --> new user --> make new user in datastore
         if not utilities.existing_user():
             utilities.addnewuser(utilities.get_user())
         result, wordCount, totalCount = utilities.getanagrams_from_user(
             utilities.getuser())
         renderer.render_main(self, utilities.getlogouturl(self), result,
                              wordCount, totalCount)
     # If no user is logged in create login url
     else:
         renderer.render_login(self, utilities.getloginurl(self))
Exemple #6
0
    def post(self):
        self.response.headers['Content-Type'] = 'text/html'
        # Get user data object from datastore of current user (logged in)
        my_user = utilities.getuser()
        button = self.request.get('button')
        input_text = utilities.preparetextinput(self.request.get('value'))
        # Upload Anagrams
        file = self.request.get('uploadFile')

        if button == 'Upload':
            openFile = open(file)
            readLine = openFile.readline()
            while readLine:
                word = (readLine.strip('\n\r')).lower()

                permutations = utilities.a_permutations(word)
                wordsinfo = utilities.filterenglishwords(permutations)

                # Add anagram to datastore
                anagram_id = my_user.key.id(
                ) + '/' + utilities.generateid_for_users(word)
                anagram_key = ndb.Key(Anagram, anagram_id)
                anagrams = anagram_key.get()

                if anagrams:
                    # Anagram with this key already exists
                    utilities.addtoanagram(word, wordsinfo, anagram_key)
                else:
                    # This key doesnt exist so creates a new anagram object to datastore
                    utilities.addanagram_new(my_user, word, wordsinfo,
                                             anagram_id, anagram_key)

                readLine = openFile.readline()

            openFile.close()
            self.redirect('/')
        # Search Anagrams
        if button == 'Search':
            search_result = self.search(input_text, my_user)
            renderer.render_search(self, input_text, search_result)
        # Generate Anagrams
        elif button == 'Generate':
            words = self.generate(input_text, my_user)
            renderer.render_search(self, input_text, words)