Example #1
0
    def search(self, *args):
        if self.isAjax:
            return self.search_ajax()
        else:
            results = []
#            languages = Language.all().fetch(limit=100)
            transAvailable = []
            dictionaries = Dictionary.all().fetch(limit=1000)
            for dict in dictionaries:
                if not ([dict.Language1, dict.Language2] in transAvailable):  
                    transAvailable.append([dict.Language1, dict.Language2])
            searches = []
            for langPair in transAvailable:
                searches.append(
                                SearchForm(instance = Search.CreateNew('', langPair[0], langPair[1]))
                                )
            showMessage=False
            
            if self.params.text:
                showMessage=True
                val = self.replaceWithCyrillic(self.params.Text)
                results = Word.gql('WHERE Value= :v', v=val).fetch(limit=100)
            randomResults = self.randomSample(30, DICT_SIZE, 5)
            return {'SearchForms':searches,'results':results,
                          'showMessage':showMessage,
                          'randomResults':randomResults}
Example #2
0
 def search_ajax(self, *args):
     self.SetTemplate(templateGroup='form', templateName='SearchForm_results.html')
     offset = self.params.offset and int(self.params.offset) or 0 
     results =[]
     showMessage=False
     sf = SearchForm(self.request.POST)
     if sf.is_valid():
         showMessage = True
         search = sf.save(commit=False)
         #search.Text = self.replaceWithCyrillic(search.Text)
         results = Word.gql('WHERE Value= :v', v=search.Text).fetch(limit=100, offset=offset)
         return {'results':results, 'showMessage':showMessage}
     else:
         return ''