summaryrefslogtreecommitdiffstats
path: root/nfsw/redis.py
blob: d05ce52d501fa9a68eb32c100f783c97b3386581 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# -*- coding: utf-8 -*-
#
#   SPDX-License-Identifier: ISC
#
#   Copyright (C) 2019 rsiddharth <s@ricketyspace.net>
#
#   This file is part of nfsw.
#

from redis import Redis

from flask import current_app, g, session


def redis():
    if 'redisc' in g:
        return g.redisc

    g.redisc = RedisC()

    return g.redisc


class RedisC:
    r = None

    def __init__(self):
        self.r = Redis()


    def keys(self):
        return [
            'log',

            'epilogue:done',

            'scene',
            'scene:sexshop:gg',
            'scene:garden:gg',
            'scene:nymphomaniac:gg',
            'scene:nymphomaniac:gg-hunk',
            'scene:coitus:gg',
            'scene:coitus:fucked',
            'scene:strayed:gg',
            'scene:xkcd:gg',
            'scenes:done',

            'player:type',
            'player:type:body',
            'player:type:mind',
        ]



    def key(self, k):
        if 'user_id' in session:
            return '{}:{}'.format(k, session['user_id'])
        else:
            return k


    def exists(self, k):
        k = self.key(k)

        return self.r.exists(k)


    def set(self, k, v):
        k = self.key(k)

        return self.r.set(k, v)


    def get(self, k):
        k = self.key(k)

        return self.r.get(k)


    def delete(self, k):
        k = self.key(k)

        return self.r.delete(k)


    def rpush(self, k, v):
        k = self.key(k)

        return self.r.rpush(k, v)


    def sadd(self, k, v):
        k = self.key(k)

        return self.r.sadd(k, v)


    def sismember(self, k, v):
        k = self.key(k)

        return self.r.sismember(k, v)