Index: openacs-4/packages/general-comments/sql/postgresql/general-comments-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/general-comments/sql/postgresql/general-comments-create.sql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/general-comments/sql/postgresql/general-comments-create.sql 4 May 2001 09:41:11 -0000 1.1 +++ openacs-4/packages/general-comments/sql/postgresql/general-comments-create.sql 28 May 2001 20:44:03 -0000 1.2 @@ -11,7 +11,7 @@ -- create a table to extend cr_items create table general_comments ( - comment_id integer constraint general_comments_comment_id_fk + comment_id integer constraint general_comments_comment_id_fk references acs_messages (message_id) on delete cascade constraint general_comments_pk primary key, @@ -42,22 +42,23 @@ begin -- retreive object ids for magic objects - registered_users := acs.magic_object_id(''registered_users''); - default_context := acs.magic_object_id(''default_context''); + registered_users := acs__magic_object_id(''registered_users''); + default_context := acs__magic_object_id(''default_context''); -- create privileges - acs_privilege.create_privilege(''general_comments_create''); + PERFORM acs_privilege__create_privilege(''general_comments_create'', null, null); -- associte privileges to global privileges - acs_privilege.add_child(''create'',''general_comments_create''); + PERFORM acs_privilege__add_child(''create'',''general_comments_create''); -- allow registered users to create comments - acs_permission.grant_permission ( - object_id => default_context, - grantee_id => registered_users, - privilege => ''general_comments_create'' + PERFORM acs_permission__grant_permission ( + default_context, + registered_users, + ''general_comments_create'' ); - + + return 0; end;' language 'plpgsql'; select inline_0 (); @@ -72,19 +73,22 @@ returns integer as ' begin - content_type.register_child_type ( - parent_type => ''acs_message_revision'', - child_type => ''content_revision'' + PERFORM content_type__register_child_type ( + /* parent_type => */ ''acs_message_revision'', + /* child_type => */ ''content_revision'', + ''generic'', 0, null ); - content_type.register_child_type ( - parent_type => ''acs_message_revision'', - child_type => ''image'' + PERFORM content_type__register_child_type ( + /* parent_type => */ ''acs_message_revision'', + /* child_type => */ ''image'', + ''generic'', 0, null ); - content_type.register_child_type ( - parent_type => ''acs_message_revision'', - child_type => ''content_extlink'' + PERFORM content_type__register_child_type ( + /* parent_type => */ ''acs_message_revision'', + /* child_type => */ ''content_extlink'', + ''generic'', 0, null ); - + return 0; end;' language 'plpgsql'; select inline_1 (); Index: openacs-4/packages/general-comments/sql/postgresql/general-comments-drop.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/general-comments/sql/postgresql/general-comments-drop.sql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/general-comments/sql/postgresql/general-comments-drop.sql 4 May 2001 09:41:11 -0000 1.1 +++ openacs-4/packages/general-comments/sql/postgresql/general-comments-drop.sql 28 May 2001 20:44:03 -0000 1.2 @@ -7,39 +7,49 @@ -- @cvs-id $Id$ -- - -- revoke all 'general_comments_create' permissions delete from acs_permissions where privilege = 'general_comments_create'; -- remove create privilege from the system -begin - acs_privilege.remove_child('create','general_comments_create'); - acs_privilege.drop_privilege('general_comments_create'); -end; -/ +-- begin + select acs_privilege__remove_child('create','general_comments_create'); + select acs_privilege__drop_privilege('general_comments_create'); +-- end; +-- / -- remove all comments from the system -declare - cursor comment_cur is - select comment_id - from general_comments; +create function inline_0 () +returns integer as ' +declare + comment_rec RECORD; begin - for comment_rec in comment_cur loop + + FOR comment_rec IN select comment_id from general_comments LOOP + -- There is a bug in content_item.delete that results in -- referential integrity violations when deleting a content -- item that has an image attachment. This is a temporary fix -- until ACS 4.1 is released. delete from images where image_id in (select latest_revision - from cr_items + from cr_items where parent_id = comment_rec.comment_id); - acs_message.delete(comment_rec.comment_id); - end loop; -end; -/ + perform acs_message__delete(comment_rec.comment_id); + END LOOP; + + return 0; +end;' language 'plpgsql'; + +select inline_0 (); + +drop function inline_0 (); + +-- / + drop table general_comments; +