begin;
drop view registered_users;
drop view acs_users_all;
drop view cc_users;
alter table users drop column no_alerts_until;
create view registered_users
as
select p.email, p.url, pe.first_names, pe.last_name, u.*, mr.member_state
from parties p, persons pe, users u, group_member_map m, membership_rels mr
where party_id = person_id
and person_id = user_id
and u.user_id = m.member_id
and m.rel_id = mr.rel_id
and m.group_id = acs__magic_object_id('registered_users')
and m.container_id = m.group_id
and m.rel_type = 'membership_rel'
and mr.member_state = 'approved'
and u.email_verified_p = 't';
-- faster simpler view
-- does not check for registered user/banned etc
create or replace view acs_users_all
as
select pa.*, pe.*, u.*
from parties pa, persons pe, users u
where pa.party_id = pe.person_id
and pe.person_id = u.user_id;
create view cc_users
as
select o.*, pa.*, pe.*, u.*, mr.member_state, mr.rel_id
from acs_objects o, parties pa, persons pe, users u, group_member_map m, membership_rels mr
where o.object_id = pa.party_id
and pa.party_id = pe.person_id
and pe.person_id = u.user_id
and u.user_id = m.member_id
and m.group_id = acs__magic_object_id('registered_users')
and m.rel_id = mr.rel_id
and m.container_id = m.group_id
and m.rel_type = 'membership_rel';
delete from acs_function_args where function = 'ACS_USER__RECEIVES_ALERTS_P';
drop function acs_user__receives_alerts_p(integer);
end;