houdini/lib/update/update_supporter.rb

25 lines
745 B
Ruby
Raw Normal View History

# frozen_string_literal: true
2020-06-12 20:03:43 +00:00
# License: AGPL-3.0-or-later WITH WTO-AP-3.0-or-later
# Full license explanation at https://github.com/houdiniproject/houdini/blob/master/LICENSE
module UpdateSupporter
def self.from_info(supporter, params)
supporter.update(params)
supporter
end
# Bulk delete, meaning mark all supporters given by a query as deleted='t'
def self.bulk_delete(np_id, supporter_ids)
Qx.update(:supporters)
.set(deleted: true)
.where('id IN ($ids)', ids: supporter_ids)
.and_where('nonprofit_id=$id', id: np_id)
.returning('id')
.execute
end
def self.general_info(supporter_id, data)
Qx.update(:supporters).set(data).where(id: supporter_id).returning('*').ex.last
end
end