/** * Returns all filters on a given txttools account * @global moodle_database $DB Moodle database controller * @param TxttoolsAccount $txttoolsAccount Account to search against * @return TxttoolsAccount Updated account object * @version 2012042301 * @since 2011070401 */ public function getFiltersForAccount(TxttoolsAccount $txttoolsAccount) { global $DB; $filters = $DB->get_records('block_moodletxt_filter', array('account' => $txttoolsAccount->getId())); // Iterate over filters and build beans foreach ($filters as $filter) { $filterObj = new MoodletxtInboundFilter($filter->account, $filter->type, $filter->value, $filter->id); $users = $DB->get_records_sql(self::$FETCH_INBOXES_SQL, array('filterid' => $filterObj->getId())); // Get links between filters and user inboxes foreach ($users as $user) { $filterObj->addDestinationUser(new MoodletxtBiteSizedUser($user->id, $user->username, $user->firstname, $user->lastname)); } $txttoolsAccount->addInboundFilter($filterObj); } return $txttoolsAccount; }