Пример #1
0
 def post(self):
     """Create a new phrase"""
     if not users.is_current_user_admin():
         self.error(403)
     else:
         text = self.request.get('text')
         phrase = Phrase(text=text)
         phrase.put()
Пример #2
0
    def post(self):
        """Create a new phrase"""
        if not users.is_current_user_admin():
            self.error(403)
        else:
            text = self.request.get('text')
            phrase = Phrase(text=text)
            phrase.put()

            for lang in Language.all():
                translation = Translation(phrase=phrase, text='')
                translation.save()

                lang.translations.append(translation.key())
                lang.save()
Пример #3
0
    def post(self):
        """Create a new phrase"""
        if not users.is_current_user_admin():
            self.error(403)
        else:
            text = self.request.get('text')
            phrase = Phrase(text=text)
            phrase.put()

            for lang in Language.all():
                translation = Translation(phrase=phrase, text='')
                translation.save()

                lang.translations.append(translation.key())
                lang.save()
Пример #4
0
    def post(self):
        """Create a new language and fill it with empty translations"""
        if not users.is_current_user_admin():
            self.error(403)

        code = self.request.get('code')
        label = self.request.get('label')

        language = Language.all().filter('code =', code).get()
        if language is not None:
            self.error(500)
        else:
            language = Language(code=code,
                                label=label,
                                enabled_in_tool=False,
                                enabled_on_site=False)
            for phrase in Phrase.all():
                translation = Translation(phrase=phrase, text='')
                translation.put()
                language.translations.append(translation.key())
            language.put()

        init_cached_languages()

        self.response.headers['Content-Type'] = 'text/plain'
        self.response.out.write('')
Пример #5
0
    def post(self):
        code = self.request.path.split('/')[-2]
        original = self.request.get('original')
        suggestion = self.request.get('suggestion')

        if not code in translations:
            raise Exception('Unknown language code')

        current_user = get_current_youtify_user()
        translation = Translation(text=suggestion, user=current_user)
        phrase = Phrase.all().filter(original=original)
        if phrase is None and users.is_current_user_admin():
            phrase = Phrase(original=original)

        suggestions = getattr(phrase, code)
        suggestions.append(suggestion)
        phrase.save()
Пример #6
0
 def get(self):
     """Get all phrases"""
     json = []
     phrases = Phrase.all().order('-date')
     for phrase in phrases:
         json.append({
             'id': phrase.key().id(),
             'text': phrase.text,
         })
     self.response.headers['Content-Type'] = 'application/json'
     self.response.out.write(simplejson.dumps(json))
Пример #7
0
 def get(self):
     """Get all phrases"""
     json = []
     phrases = Phrase.all().order('-date')
     for phrase in phrases:
         json.append({
             'id': phrase.key().id(),
             'text': phrase.text,
         })
     self.response.headers['Content-Type'] = 'application/json'
     self.response.out.write(simplejson.dumps(json))
Пример #8
0
    def process_item(self, item, spider):
        session = self.Session()
        phrase = Phrase(**item)

        try:
            session.add(phrase)
            session.commit()
        except:
            session.rollback()
            raise
        finally:
            session.close()

        return item
Пример #9
0
def add_phrase_to_db(phrase, translation):
    """Takes in phrase and its translation and adds it to the DB"""
    #Both user_id and article_id are stored in the flask session.
    user_id = session.get('user_id')
    article_id = session.get('article_id')

    #Instantiated an instance of the class Phrase.
    phrase_pair = Phrase(user_id=user_id,
                         article_id=article_id,
                         phrase=phrase,
                         translation=translation)

    #Add phrase_pair instance to the database and commits it. .
    db.session.add(phrase_pair)
    db.session.commit()
Пример #10
0
    def delete(self):
        """Delete a specific phrase and all its translations"""
        if not users.is_current_user_admin():
            self.error(403)

        phrase_id = self.request.path.split('/')[-1]
        phrase = Phrase.get_by_id(int(phrase_id))

        if phrase:
            phrase.delete()

            for translation in Translation.all().filter('phrase =', phrase):
                translation.delete()

            self.response.headers['Content-Type'] = 'text/plain'
            self.response.out.write('success');
        else:
            self.error(404)
Пример #11
0
def create_phrase_and_score(phrase_date, phrase_city, phrase_state_abbr, phrase_state, phrase_region, job_at_phrase, age_at_phrase, phrase_text, user_id, US_or_no=True):
    """Create and return a new Phrase, which includes a '0' or '1' score."""
# open the csv in the seed_database.py, not here
# pass in a phrase that is string as argument
# phrase_date is a string of form %Y-%m-%d – ex. '2021-02-18'

    polar_score = swn_polarity(phrase_text)
    # test that the above works; it does 
    # print(f'Score is {polar_score}.')

    #make sure phrase has no trailing white space
    phrase_text = phrase_text.rstrip()

    # variable name from model.py in class Phrase = variable name used in this funct
    new_phrase_and_score = Phrase(phrase_date=phrase_date, US_or_no=True, phrase_city=phrase_city, phrase_state_abbr=phrase_state_abbr, phrase_state=phrase_state, phrase_region=phrase_region, job_at_phrase=job_at_phrase, age_at_phrase=age_at_phrase, phrase_text=phrase_text, polar_score=polar_score, user_id=user_id)

    db.session.add(new_phrase_and_score)
    db.session.commit()

    return new_phrase_and_score
Пример #12
0
    def delete(self):
        """Delete a specific phrase and all its translations"""
        if not users.is_current_user_admin():
            self.error(403)

        phrase_id = self.request.path.split('/')[-1]
        phrase = Phrase.get_by_id(int(phrase_id))

        if phrase:
            for lang in Language.all():
                for translation in db.get(lang.translations):
                    if translation.phrase.key() == phrase.key():
                        lang.translations.remove(translation.key())
                        translation.delete()
                        lang.save()

            phrase.delete()

            self.response.headers['Content-Type'] = 'text/plain'
            self.response.out.write('success');
        else:
            self.error(404)
Пример #13
0
    def delete(self):
        """Delete a specific phrase and all its translations"""
        if not users.is_current_user_admin():
            self.error(403)

        phrase_id = self.request.path.split('/')[-1]
        phrase = Phrase.get_by_id(int(phrase_id))

        if phrase:
            for lang in Language.all():
                for translation in db.get(lang.translations):
                    if translation.phrase.key() == phrase.key():
                        lang.translations.remove(translation.key())
                        translation.delete()
                        lang.save()

            phrase.delete()

            self.response.headers['Content-Type'] = 'text/plain'
            self.response.out.write('success')
        else:
            self.error(404)
Пример #14
0
    def post(self):
        """Create a new language and fill it with empty translations"""
        if not users.is_current_user_admin():
            self.error(403)

        code = self.request.get('code')
        label = self.request.get('label')

        language = Language.all().filter('code =', code).get()
        if language is not None:
            self.error(500)
        else:
            language = Language(code=code, label=label, enabled_in_tool=False, enabled_on_site=False)
            for phrase in Phrase.all():
                translation = Translation(phrase=phrase, text='')
                translation.put()
                language.translations.append(translation.key())
            language.put()

        init_cached_languages()

        self.response.headers['Content-Type'] = 'text/plain'
        self.response.out.write('')