-- I think some cascade or something needs to be added to the delete
-- statements in case some other object points to a presentation or slide.
-- certainly needs to be modified !!
-- DaveB content_item__delete should take care of this
-- delete from cr_item_publish_audit;
delete from cr_folder_type_map
where content_type in ('cr_wp_attachment', 'cr_wp_presentation', 'cr_wp_presentation_aud', 'cr_wp_presentation_back', 'cr_wp_slide', 'cr_wp_slide_preamble', 'cr_wp_slide_postamble', 'cr_wp_slide_bullet_items');
-- drop clobs tables
create function inline_0 ()
returns integer as'
declare
del_rec record;
begin
for del_rec in select item_id from cr_items
where content_type in (''cr_wp_file_attachment'', ''cr_wp_image_attachment'')
loop
-- DaveB this causes an RI error, and it works without it
-- update acs_objects set context_id = null where context_id = del_rec.item_id;
PERFORM content_item__delete(del_rec.item_id);
end loop;
return 0;
end;' language 'plpgsql';
select inline_0 ();
drop function inline_0 ();
--checked
-- drop attachment table and views
create function inline_1 ()
returns integer as'
begin
PERFORM content_type__unregister_child_type(''cr_wp_slide'',''cr_wp_file_attachment'',null);
PERFORM content_type__unregister_child_type(''cr_wp_slide'',''cr_wp_image_attachment'',null);
return 0;
end;' language 'plpgsql';
select inline_1 ();
drop function inline_1 ();
--checked
create function inline_2 ()
returns integer as'
begin
PERFORM content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_file_attachment'',''f'');
PERFORM content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_image_attachment'',''f'');
return 0;
end;' language 'plpgsql';
select inline_2 ();
drop function inline_2 ();
delete from cr_type_children
where parent_type in (
'cr_wp_file_attachment',
'cr_wp_image_attachment',
'cr_wp_presentation',
'cr_wp_presentation_aud',
'cr_wp_presentation_back',
'cr_wp_slide',
'cr_wp_slide_preamble',
'cr_wp_slide_postamble',
'cr_wp_slide_bullet_items'
);
create function inline_3 ()
returns integer as'
begin
PERFORM acs_attribute__drop_attribute(''cr_wp_file_attachment'', ''display'');
PERFORM acs_attribute__drop_attribute(''cr_wp_image_attachment'', ''display'');
return 0;
end;' language 'plpgsql';
select inline_3 ();
drop function inline_3 ();
delete from acs_objects where object_type = 'cr_wp_file_attachment';
delete from acs_objects where object_type = 'cr_wp_image_attachment';
create function inline_4 ()
returns integer as'
begin
PERFORM acs_object_type__drop_type(''cr_wp_file_attachment'',''f'');
PERFORM acs_object_type__drop_type(''cr_wp_image_attachment'',''f'');
return 0;
end;' language 'plpgsql';
select inline_4 ();
drop function inline_4 ();
create function inline_5 ()
returns integer as'
declare
del_rec_a record;
del_rec_b record;
del_rec_c record;
del_rec_d record;
begin
for del_rec_a in select item_id from cr_items
where content_type in (
''cr_wp_slide_preamble'',
''cr_wp_slide_postamble'',
''cr_wp_slide_bullet_items''
)
loop
-- DaveB this causes an RI error, and it works without it
-- update acs_objects set context_id = null
-- where context_id = del_rec_a.item_id;
PERFORM content_item__delete(del_rec_a.item_id);
end loop;
for del_rec_b
in select item_id from cr_items
where content_type = ''cr_wp_slide''
loop
-- DaveB this causes an RI error, and it works without it
-- update acs_objects set context_id = null
-- where context_id = del_rec_b.item_id;
PERFORM content_item__delete(del_rec_b.item_id);
end loop;
for del_rec_c
in select item_id from cr_items
where content_type in (
''cr_wp_presentation_aud'',
''cr_wp_presentation_back'')
loop
-- DaveB this causes an RI error, and it works without it
-- update acs_objects set context_id = null
-- where context_id = del_rec_c.item_id;
PERFORM content_item__delete(del_rec_c.item_id);
end loop;
for del_rec_d
in select item_id from cr_items
where content_type = ''cr_wp_presentation''
loop
-- DaveB this causes an RI error, and it works without it
-- update acs_objects set context_id = null
-- where context_id = del_rec_d.item_id;
PERFORM content_item__delete(del_rec_d.item_id);
end loop;
return 0;
end;' language 'plpgsql';
select inline_5 ();
drop function inline_5 ();
-- drop slides and presentations views and tables
create function inline_6 ()
returns integer as'
begin
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_presentation'',''f'');
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_presentation_aud'',''f'');
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_presentation_back'',''f'');
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_slide'',''f'');
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_slide_preamble'',''f'');
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_slide_postamble'',''f'');
PERFORM
content_folder__unregister_content_type(content_item_globals.c_root_folder_id,''cr_wp_slide_bullet_items'',''f'');
return 0;
end;' language 'plpgsql';
select inline_6 ();
drop function inline_6 ();
--checked
create function inline_7 ()
returns integer as'
begin
PERFORM content_type__unregister_child_type(''cr_wp_presentation'',''cr_wp_presentation_aud'', ''null'');
PERFORM content_type__unregister_child_type(''cr_wp_presentation'',''cr_wp_presentation_back'', ''null'');
PERFORM content_type__unregister_child_type(''cr_wp_presentation'',''cr_wp_slide'', ''null'');
PERFORM content_type__unregister_child_type(''cr_wp_slide'',''cr_wp_slide_preamble'', ''null'');
PERFORM content_type__unregister_child_type(''cr_wp_slide'',''cr_wp_slide_postamble'', ''null'');
PERFORM content_type__unregister_child_type(''cr_wp_slide'',''cr_wp_slide_bullet_items'',''null'');
return 0;
end;' language 'plpgsql';
select inline_7 ();
drop function inline_7 ();
create function inline_8 ()
returns integer as'
begin
PERFORM content_type__drop_type(
''cr_wp_presentation_aud'',
''f'',
''f''
);
PERFORM content_type__drop_type(
''cr_wp_presentation'',
''f'',
''f''
);
return 0;
end;' language 'plpgsql';
select inline_8 ();
drop function inline_8 ();
create function inline_20 ()
returns integer as'
begin
PERFORM content_type__drop_type(
''cr_wp_presentation_back'',
''f'',
''f''
);
PERFORM content_type__drop_type(
''cr_wp_slide_preamble'',
''f'',
''f''
);
PERFORM content_type__drop_type(
''cr_wp_slide'',
''f'',
''f''
);
PERFORM content_type__drop_type(
''cr_wp_slide_postamble'',
''f'',
''f''
);
PERFORM content_type__drop_type(
''cr_wp_slide_bullet_items'',
''f'',
''f''
);
return 0;
end;' language 'plpgsql';
select inline_20 ();
drop function inline_20 ();
--checked
create function inline_9 ()
returns integer as'
begin
PERFORM acs_attribute__drop_attribute(''cr_wp_presentation'',''pres_title'');
PERFORM acs_attribute__drop_attribute(''cr_wp_presentation'',''page_signature'');
PERFORM acs_attribute__drop_attribute(''cr_wp_presentation'',''copyright_notice'');
PERFORM acs_attribute__drop_attribute(''cr_wp_presentation'',''style'');
PERFORM acs_attribute__drop_attribute(''cr_wp_presentation'',''public_p'');
PERFORM acs_attribute__drop_attribute(''cr_wp_presentation'',''show_modified_p'');
PERFORM acs_attribute__drop_attribute(''cr_wp_slide'',''sort_key'');
PERFORM acs_attribute__drop_attribute(''cr_wp_slide'',''slide_title'');
PERFORM acs_attribute__drop_attribute(''cr_wp_slide'',''include_in_outline_p'');
PERFORM acs_attribute__drop_attribute(''cr_wp_slide'',''context_break_after_p'');
PERFORM acs_attribute__drop_attribute(''cr_wp_slide'',''style'');
return 0;
end;' language 'plpgsql';
select inline_9 ();
drop function inline_9 ();
delete from acs_objects
where object_type in (
'cr_wp_presentation',
'cr_wp_presentation_aud',
'cr_wp_presentation_back',
'cr_wp_slide',
'cr_wp_slide_preamble',
'cr_wp_slide_postamble',
'cr_wp_slide_bullet_items'
);
--checked
create function inline_10 ()
returns integer as'
begin
PERFORM acs_object_type__drop_type(''cr_wp_presentation'',''f'');
PERFORM
acs_object_type__drop_type(''cr_wp_presentation_aud'',''f'');
PERFORM
acs_object_type__drop_type(''cr_wp_presentation_back'',''f'');
PERFORM acs_object_type__drop_type(''cr_wp_slide'',''f'');
PERFORM acs_object_type__drop_type(''cr_wp_slide_preamble'',''f'');
PERFORM acs_object_type__drop_type(''cr_wp_slide_postamble'',''f'');
PERFORM acs_object_type__drop_type(''cr_wp_slide_bullet_items'',''f'');
return 0;
end;' language 'plpgsql';
select inline_10 ();
drop function inline_10 ();
--checked
create function inline_11 ()
returns integer as'
declare
default_context acs_objects.object_id%TYPE;
registered_users acs_objects.object_id%TYPE;
the_public acs_objects.object_id%TYPE;
begin
default_context := acs__magic_object_id(''default_context'');
registered_users := acs__magic_object_id(''registered_users'');
-- the_public := acs__magic_object_id(''the_public'');
PERFORM acs_permission__revoke_permission (
default_context,
registered_users,
''wp_create_presentation''
);
-- PERFORM acs_permission__revoke_permission (
-- default_context,
-- the_public,
-- ''wp_view_presentation''
-- );
return 0;
end;' language 'plpgsql';
select inline_11 ();
drop function inline_11 ();
--checked
select acs_privilege__remove_child('admin', 'wp_admin_presentation');
select acs_privilege__remove_child('wp_edit_presentation', 'wp_view_presentation');
select acs_privilege__remove_child('wp_admin_presentation', 'wp_create_presentation');
select acs_privilege__remove_child('wp_admin_presentation', 'wp_edit_presentation');
select acs_privilege__remove_child('wp_admin_presentation', 'wp_delete_presentation');
create function inline_12 ()
returns integer as'
begin
delete from acs_permissions
where privilege in (
''wp_admin_presentation'',
''wp_create_presentation'',
''wp_edit_presentation'',
''wp_delete_presentation'',
''wp_view_presentation''
);
PERFORM acs_privilege__drop_privilege(''wp_admin_presentation'');
PERFORM acs_privilege__drop_privilege(''wp_create_presentation'');
PERFORM acs_privilege__drop_privilege(''wp_edit_presentation'');
PERFORM acs_privilege__drop_privilege(''wp_delete_presentation'');
PERFORM acs_privilege__drop_privilege(''wp_view_presentation'');
return 0;
end;' language 'plpgsql';
select inline_12 ();
drop function inline_12 ();
DROP FUNCTION wp_attachment__delete (
integer
);
DROP FUNCTION wp_attachment__new_revision(
integer
);
--drop package wp_slide;
DROP FUNCTION wp_slide__new(
integer,
timestamp,
integer,
varchar,
varchar,
integer,
integer,
integer,
varchar,
varchar,
varchar,
boolean,
boolean,
integer
);
DROP FUNCTION wp_slide__delete_preamble(
integer
);
DROP FUNCTION wp_slide__delete_postamble(
integer
);
DROP FUNCTION wp_slide__delete_bullet_items(
integer
);
DROP FUNCTION wp_slide__delete(
integer
);
DROP FUNCTION wp_slide__get_preamble_revision(
integer
);
DROP FUNCTION wp_slide__get_preamble(
integer
);
--drop package wp_presentation;
DROP FUNCTION wp_presentation__new(
timestamp,
integer,
varchar,
varchar,
varchar,
varchar,
integer,
boolean,
boolean,
varchar,
varchar,
integer
);
DROP FUNCTION wp_presentation__delete_audience(
integer
);
DROP FUNCTION wp_presentation__delete_background(
integer
);
DROP FUNCTION wp_presentation__delete(
integer
);
DROP FUNCTION wp_presentation__get_ad_revision (
integer
);
DROP FUNCTION wp_presentation__get_bg_revision(
integer
);
DROP FUNCTION wp_presentation__get_audience(
integer
);
DROP FUNCTION wp_presentation__get_background(
integer
);
drop function wp_slide__new_revision(
timestamp,
integer,
varchar,
integer,
varchar,
text,
varchar,
varchar,
integer,
integer,
integer,
boolean,
boolean);
drop function wp_presentation__new_revision (
timestamp,
integer,
varchar,
integer,
varchar(400),
varchar(200),
varchar(400),
integer,
boolean,
boolean,
varchar,
varchar);
--checked
drop table cr_wp_presentations_aud;
drop table cr_wp_presentations_back;
drop table cr_wp_slides_preamble;
drop table cr_wp_slides_postamble;
drop table cr_wp_slides_bullet_items;
drop view cr_wp_image_attachmentsi;
drop view cr_wp_image_attachmentsx;
drop table cr_wp_image_attachments;
drop view cr_wp_file_attachmentsi;
drop view cr_wp_file_attachmentsx;
drop table cr_wp_file_attachments;
drop view cr_wp_slidesi;
drop view cr_wp_slidesx;
drop table cr_wp_slides;
drop view cr_wp_presentationsi;
drop view cr_wp_presentationsx;
drop table cr_wp_presentations;
drop function wp_slide__get_bullet_items_revision(integer);
drop function wp_slide__get_postamble_revision(integer);
drop function wp_slide__get_bullet_items(integer);
drop function wp_slide__get_postamble(integer);
drop function wp_presentation__set_live_revision(integer);
drop sequence wp_style_seq;
drop function wp_style__delete(integer);
drop function wp_style__image_delete(integer);
drop table wp_style_images;
drop table wp_styles;