module JamRuby class EmailBatchNewMusician < EmailBatchPeriodic BATCH_SIZE = 500 SINCE_DAYS = 14 VAR_MUSICIAN_COUNT = "@MUSICIAN_COUNT" VAR_MUSICIAN_TABLE = "@MUSICIAN_TABLE" TMP_NEW = 'tmp_new_musicians' TMP_PAIRS = 'tmp_receivers_new_musicians' def self.subject "New musicians with good Internet connections to you have joined JamKazam!" end # inserts eligible sessions to temp table def _fetch_new_musicians ActiveRecord::Base.connection.execute("DROP TABLE IF EXISTS #{TMP_NEW}") sql =< '#{time_since_last_batch(SINCE_DAYS)}' SQL ActiveRecord::Base.connection.execute(sql) end def _fetch_eligible_receivers ActiveRecord::Base.connection.execute("DROP TABLE IF EXISTS #{TMP_PAIRS}") # load eligible recipients into tmp table sql =<