Exemple #1
0
 def toggle(self, ID):
     """
     Toggles the given bucket via `ID` to the inverse of its current value
     """
     key = "bucket:{}:status".format(ID)
     current = dbu.toBoolean(self._redis.get(key))
     return self._redis.set(key, not current)
Exemple #2
0
    def __init__(self, redis=c.redis):
        self._redis = redis
        keys = {}
        for key in self._redis.keys("announcement:*:status"):
            val = dbu.toBoolean(self._redis.get(key))

            ann_start_key = ':'.join([key.rsplit(":", 1)[0], "start"])
            start = c.redis.get(ann_start_key)

            ann_end_key = ':'.join([key.rsplit(":", 1)[0], "end"])
            end = c.redis.get(ann_end_key)

            start = long(start) if start else 0
            end = long(end) if end else 0

            now = arrow.utcnow().timestamp
            if (start and end) and not (start <= now and now < end):
                val = False
            elif start and start > now:
                val = False
            elif end and end < now:
                val = False

            if val:
                ID = key.split(":")[1]
                ann_key = ':'.join([key.rsplit(":", 1)[0], "message"])
                message = self._redis.get(ann_key)

                keys[ID] = md.markdown(message)

        self._data = keys
Exemple #3
0
    def __init__(self, redis=c.redis):
        self._redis = redis
        keys = {}
        for key in self._redis.keys("announcement:*:status"):
            val = dbu.toBoolean(self._redis.get(key))

            ann_start_key = ':'.join([key.rsplit(":", 1)[0], "start"])
            start = c.redis.get(ann_start_key)

            ann_end_key = ':'.join([key.rsplit(":", 1)[0], "end"])
            end = c.redis.get(ann_end_key)

            start = long(start) if start else 0
            end = long(end) if end else 0

            now = arrow.utcnow().timestamp
            if (start and end) and not (start <= now and now < end):
                val = False
            elif start and start > now:
                val = False
            elif end and end < now:
                val = False

            if val:
                ID = key.split(":")[1]
                ann_key = ':'.join([key.rsplit(":", 1)[0], "message"])
                message = self._redis.get(ann_key)

                keys[ID] = message

        self._data = keys
Exemple #4
0
 def toggle(self, ID):
     """
     Toggles the given bucket via `ID` to the inverse of its current value
     """
     key = "bucket:{}:status".format(ID)
     current = dbu.toBoolean(self._redis.get(key))
     return self._redis.set(key, not current)
Exemple #5
0
 def toggle_announcement(self, ID, val=None):
     """
     Toggles the given announcement via `ID` to the inverse of its current value
     """
     if val is None:
         current = dbu.toBoolean(
             self._redis.get("announcement:%s:status" % ID))
         self._redis.set("announcement:%s:status" % ID, not current)
         return not current
     else:
         assert type(val) is bool
         self._redis.set("announcement:%s:status" % ID, val)
         return val
Exemple #6
0
    def __init__(self, redis=c.redis):
        self._redis = redis
        keys = {}
        for key in self._redis.keys("bucket:*:status"):
            val = dbu.toBoolean(self._redis.get(key))

            name_key = ':'.join([key.rsplit(":", 1)[0], "name"])
            name= c.redis.get(name_key)

            desc_key = ':'.join([key.rsplit(":", 1)[0], "description"])
            desc = c.redis.get(desc_key)

            ID = key.split(":")[1]
            keys[ID] = StandardODM(name=name, description=desc, status=val, id=ID)

        self._data = keys
Exemple #7
0
    def __init__(self, redis=c.redis):
        self._redis = redis
        keys = {}
        for key in self._redis.keys("bucket:*:status"):
            val = dbu.toBoolean(self._redis.get(key))

            name_key = ':'.join([key.rsplit(":", 1)[0], "name"])
            name = c.redis.get(name_key)

            desc_key = ':'.join([key.rsplit(":", 1)[0], "description"])
            desc = c.redis.get(desc_key)

            ID = key.split(":")[1]
            keys[ID] = StandardODM(name=name,
                                   description=desc,
                                   status=val,
                                   id=ID)

        self._data = keys
Exemple #8
0
def all_announcements():
    keys = []
    for key in c.redis.keys("announcement:*:status"):
        data = {}
        val = dbu.toBoolean(c.redis.get(key))
        ID = key.split(":")[1]
        ann_key = ':'.join([key.rsplit(":", 1)[0], "message"])
        message = c.redis.get(ann_key)

        ann_time_created_key = ':'.join([key.rsplit(":", 1)[0], "created"])
        time_created = arrow.get(c.redis.get(ann_time_created_key))

        data = {"message": message,
                "status": val,
                "id": ID,
                "created": time_created.timestamp,
                "formated_created": time_created.format("MM/DD/YYYY HH:mm")}


        ann_start_key = ':'.join([key.rsplit(":", 1)[0], "start"])
        start = c.redis.get(ann_start_key)
        if start and start != '0':
            start = arrow.get(start)
            data["start"] = start.timestamp
            data["formated_start"] = start.format("MM/DD/YYYY HH:mm")
        else:
            data["start"] = 0

        ann_end_key = ':'.join([key.rsplit(":", 1)[0], "end"])
        end = c.redis.get(ann_end_key)
        if end and end != '0':
            end = arrow.get(end)
            data["end"] = end.timestamp
            data["formated_end"] = end.format("MM/DD/YYYY HH:mm")
        else:
            data["end"] = 0

        keys.append(data)

    return keys
Exemple #9
0
def all_announcements():
    keys = []
    for key in c.redis.keys("announcement:*:status"):
        data = {}
        val = dbu.toBoolean(c.redis.get(key))
        ID = key.split(":")[1]
        ann_key = ':'.join([key.rsplit(":", 1)[0], "message"])
        message = c.redis.get(ann_key)

        ann_time_created_key = ':'.join([key.rsplit(":", 1)[0], "created"])
        time_created = arrow.get(c.redis.get(ann_time_created_key))

        data = {
            "message": message,
            "status": val,
            "id": ID,
            "created": time_created.timestamp
        }

        ann_start_key = ':'.join([key.rsplit(":", 1)[0], "start"])
        start = c.redis.get(ann_start_key)
        if start and start != '0':
            start = arrow.get(start)
            data["start"] = start.timestamp
        else:
            data["start"] = 0

        ann_end_key = ':'.join([key.rsplit(":", 1)[0], "end"])
        end = c.redis.get(ann_end_key)
        if end and end != '0':
            end = arrow.get(end)
            data["end"] = end.timestamp
        else:
            data["end"] = 0

        keys.append(data)

    return keys
Exemple #10
0
 def toggle_announcement(self, ID):
     """
     Toggles the given announcement via `ID` to the inverse of its current value
     """
     current = dbu.toBoolean(self._redis.get("announcement:%s:status"%ID))
     return self._redis.set("announcement:%s:status"%ID, not current)