Example #1
0
    def __init__(self, force=False):
        engine = g.dbm.get_engine('email')
        self.metadata = make_metadata(engine)
        self.queue_table = mail_queue(self.metadata)
        indices = [
            index_str(self.queue_table, "date", "date"),
            index_str(self.queue_table, 'kind', 'kind')
        ]
        create_table(self.queue_table, indices)

        self.opt_table = opt_out(self.metadata)
        indices = [index_str(self.opt_table, 'email', 'email')]
        create_table(self.opt_table, indices)

        self.track_table = sent_mail_table(self.metadata)
        self.reject_table = sent_mail_table(self.metadata, name="reject_mail")

        def sent_indices(tab):
            indices = [
                index_str(tab, 'to_addr', 'to_addr'),
                index_str(tab, 'date', 'date'),
                index_str(tab, 'ip', 'ip'),
                index_str(tab, 'kind', 'kind'),
                index_str(tab, 'fullname', 'fullname'),
                index_str(tab, 'account_id', 'account_id'),
                index_str(tab, 'msg_hash', 'msg_hash'),
            ]

        create_table(self.track_table, sent_indices(self.track_table))
        create_table(self.reject_table, sent_indices(self.reject_table))
Example #2
0
    def __init__(self, force = False):
        engine = g.dbm.get_engine('email')
        self.metadata = make_metadata(engine)
        self.queue_table = mail_queue(self.metadata)
        indices = [index_str(self.queue_table, "date", "date"),
                   index_str(self.queue_table, 'kind', 'kind')]
        create_table(self.queue_table, indices)

        self.opt_table = opt_out(self.metadata)
        indices = [index_str(self.opt_table, 'email', 'email')]
        create_table(self.opt_table, indices)

        self.track_table = sent_mail_table(self.metadata)
        self.reject_table = sent_mail_table(self.metadata, name = "reject_mail")

        def sent_indices(tab):
            indices = [index_str(tab, 'to_addr', 'to_addr'),
                       index_str(tab, 'date', 'date'),
                       index_str(tab, 'ip', 'ip'),
                       index_str(tab, 'kind', 'kind'),
                       index_str(tab, 'fullname', 'fullname'),
                       index_str(tab, 'account_id', 'account_id'),
                       index_str(tab, 'msg_hash', 'msg_hash'),
                       ]

        create_table(self.track_table, sent_indices(self.track_table))
        create_table(self.reject_table, sent_indices(self.reject_table))
Example #3
0
    def __init__(self, force=False):
        engine = g.dbm.get_engine("email")
        self.metadata = make_metadata(engine)
        self.queue_table = mail_queue(self.metadata)
        indices = [index_str(self.queue_table, "date", "date"), index_str(self.queue_table, "kind", "kind")]
        create_table(self.queue_table, indices)

        self.opt_table = opt_out(self.metadata)
        indices = [index_str(self.opt_table, "email", "email")]
        create_table(self.opt_table, indices)

        self.track_table = sent_mail_table(self.metadata)
        self.reject_table = sent_mail_table(self.metadata, name="reject_mail")

        def sent_indices(tab):
            indices = [
                index_str(tab, "to_addr", "to_addr"),
                index_str(tab, "date", "date"),
                index_str(tab, "ip", "ip"),
                index_str(tab, "kind", "kind"),
                index_str(tab, "fullname", "fullname"),
                index_str(tab, "account_id", "account_id"),
                index_str(tab, "msg_hash", "msg_hash"),
            ]

        create_table(self.track_table, sent_indices(self.track_table))
        create_table(self.reject_table, sent_indices(self.reject_table))
Example #4
0
def make_change_tables(force = False):
    metadata = make_metadata(change_engine)
    table = change_table(metadata)
    indices = [
        index_str(table, 'fullname', 'fullname'),
        index_str(table, 'date', 'date')
        ]
    create_table(table, indices, force = force)
    return table
Example #5
0
def make_change_tables(force=False):
    metadata = make_metadata(change_engine)
    table = change_table(metadata)
    indices = [
        index_str(table, 'fullname', 'fullname'),
        index_str(table, 'date', 'date')
    ]
    create_table(table, indices, force=force)
    return table
Example #6
0
def make_query_queue_table():
    metadata = make_metadata(query_queue_engine)
    table = sa.Table(settings.DB_APP_NAME + '_query_queue', metadata,
                     sa.Column('iden', sa.String, primary_key=True),
                     sa.Column('query', sa.Binary),
                     sa.Column('date', sa.DateTime(timezone=True)))
    date_idx = index_str(table, 'date', 'date')
    create_table(table, [date_idx])
    return table
Example #7
0
def make_query_queue_table():
    metadata = make_metadata(query_queue_engine)
    table =  sa.Table(settings.DB_APP_NAME + '_query_queue', metadata,
                      sa.Column('iden', sa.String, primary_key = True),
                      sa.Column('query', sa.Binary),
                      sa.Column('date', sa.DateTime(timezone = True)))
    date_idx = index_str(table, 'date', 'date')
    create_table(table, [date_idx])
    return table
Example #8
0
def make_query_queue_table():
    engine = g.dbm.engines['query_queue']
    metadata = make_metadata(engine)
    table =  sa.Table(g.db_app_name + '_query_queue', metadata,
                      sa.Column('iden', sa.String, primary_key = True),
                      sa.Column('query', sa.Binary),
                      sa.Column('date', sa.DateTime(timezone = True)))
    date_idx = index_str(table, 'date', 'date')
    create_table(table, [date_idx])
    return table
Example #9
0
#
# The Original Developer is the Initial Developer.  The Initial Developer of the
# Original Code is CondeNet, Inc.
#
# All portions of the code written by CondeNet are Copyright (c) 2006-2010
# CondeNet, Inc. All Rights Reserved.
################################################################################

from r2.lib.db.tdb_sql import make_metadata, index_str, create_table
from pylons import g
import sqlalchemy as sa

ENGINE_NAME = 'authorize'

ENGINE = g.dbm.get_engine(ENGINE_NAME)
METADATA = make_metadata(ENGINE)

gold_table = sa.Table('reddit_gold', METADATA,
                      sa.Column('trans_id', sa.String, nullable = False,
                                primary_key = True),
                      # status can be: invalid, unclaimed, claimed
                      sa.Column('status', sa.String, nullable = False),
                      sa.Column('date', sa.DateTime(timezone=True),
                                        nullable=False),
                      sa.Column('payer_email', sa.String, nullable = False),
                      sa.Column('paying_id', sa.String, nullable = False),
                      sa.Column('pennies', sa.Integer, nullable = False),
                      sa.Column('secret', sa.String, nullable = True),
                      sa.Column('account_id', sa.String, nullable = True))

indices = [index_str(gold_table, 'status', 'status'),
Example #10
0
File: gold.py Project: z0r0/saidit
from r2.lib.memoize import memoize

import stripe

gold_bonus_cutoff = datetime(2010, 7, 27, 0, 0, 0, 0, g.tz)
gold_static_goal_cutoff = datetime(2013, 11, 7, tzinfo=g.display_tz)

NON_REVENUE_STATUSES = ("declined", "chargeback", "fudge", "invalid",
                        "refunded", "reversed")

# SaidIt: see g.databases
# ENGINE_NAME = 'authorize'
ENGINE_NAME = 'main'

ENGINE = g.dbm.get_engine(ENGINE_NAME)
METADATA = make_metadata(ENGINE)
TIMEZONE = pytz.timezone("America/Los_Angeles")

Session = scoped_session(sessionmaker(bind=ENGINE))
Base = declarative_base(bind=ENGINE)

gold_table = sa.Table(
    'reddit_gold',
    METADATA,
    sa.Column('trans_id', sa.String, nullable=False, primary_key=True),
    # status can be: invalid, unclaimed, claimed
    sa.Column('status', sa.String, nullable=False),
    sa.Column('date',
              sa.DateTime(timezone=True),
              nullable=False,
              default=sa.func.now()),