Exemple #1
0
            elif re.match(validator, username) and re.match(validator, password) and re.match(validator, email):
                newUser = model_user.User(username, password, email, user.get("website"))
                self.session.add(newUser)
                self.session.commit()
                return {"user": newUser.to_dict()}
            else:
                raise rpc_exceptions.UserRegistrationValidationException
        raise rpc_exceptions.UserNameTaken

    def returning(self, params):
        """
        Tests if the user is a valid returning user
        """
        value = {"returning": False}
        if params[0]:
            user = params[0]
            username = user["username"]
            last_sec = user["sec_key"]
            value["returning"] = security.has_stored_sec_key(username, last_sec)

        if not value["returning"]:
            security.destroy_security_cookies()

        return value


user = User()
register_method("user.login", user.login)
register_method("user.returning", user.returning)
register_method("user.register", user.register)
Exemple #2
0
        user_tags = self.session.query(model_user_tag.UserTag).join(
            model_user.User).filter(
            model_user.User.username == userDict['username'])
        return [x.to_dict() for x in user_tags]
    
    @required_user_perm_dec
    def select_tag(self, userDict, params):
        """
        Select a tag for a user.
        """
        user_tag = self.session.query(model_user_tag.UserTag).filter(
            model_user.User.username == userDict['username'] and
            tag_id == params[0]['id']
        ).first()
        if user_tag:
            user_tag.user_selected = True
            
        else:
            user = self.session.query(model_user.User).filter(
                model_user.User.username == userDict['username']).first()
            tag = self.session.query(model_tag.Tag).filter(
                model_tag.Tag.id == params[0]['id']).first()
            user_tag = model_user_tag.UserTag(user, tag)
        self.session.add(user_tag)
        self.session.commit()

usertag = UserTag()
register_method('usertag.deselect_tag', usertag.deselect_tag)
register_method('usertag.list', usertag.list)
register_method('usertag.select_tag', usertag.select_tag)
Exemple #3
0
        return [x.article.to_dict() for x in top_articles]

    @no_required_perms_dec
    def ListAntiArticles(self, user_dict, params):
        """
        List articles a person may not normally care for.
        """
        top_articles = None
        try:
            user = User()
            if user.auth_match(user_dict['username'], user_dict['sec_key']):
                top_articles = self.session.query(model_user_suggested_article.UserSuggestedArticle).order_by('id').all()
        except rpc_exceptions.UserNotLoggedInException:
            top_articles = self.session.query(
                model_article.Article).order_by('-id').all()
        return [x.article.to_dict() for x in top_articles]

    @no_required_perms_dec
    def ListRandomArticles(self, user_dict, params):
        """
        List random articles to try and find new interests for a person.
        """
        articles = self.session.query(model_article.Article).order_by('id').all()
        return [x.to_dict() for x in articles]

article = Article()
register_method('article.listantiarticles', article.ListAntiArticles)
register_method('article.nonuserlist', article.NonUserList)
register_method('article.listrandomarticles', article.ListRandomArticles)
register_method('article.listuserarticles', article.ListUserArticles)
Exemple #4
0
# Company: 
# Author: Rob McGinley
# Date: April 30, 2011
# Copyright: 2011
  
import backend.models.tag as model_tag

from backend.rpc.dispatch import register_method
from database_connectivity import DatbaseConnectivity
from user import required_user_perm_dec

class Tag(DatbaseConnectivity):
        
    def __init__(self):
        """
        Create session for correct object query/update/create/delete
        """
        super(Tag, self).__init__()
        
    @required_user_perm_dec
    def list(self, user_dict, params):
        tags = self.session.query(model_tag.Tag).all()
        return [x.to_dict() for x in tags]

tag = Tag()
register_method('tag.list', tag.list)