Index: openacs-4/packages/forums/sql/postgresql/upgrade/upgrade-1.1d1-1.1d2.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/forums/sql/postgresql/upgrade/upgrade-1.1d1-1.1d2.sql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/forums/sql/postgresql/upgrade/upgrade-1.1d1-1.1d2.sql 30 Mar 2004 21:00:31 -0000 1.2 +++ openacs-4/packages/forums/sql/postgresql/upgrade/upgrade-1.1d1-1.1d2.sql 12 Aug 2013 09:34:30 -0000 1.3 @@ -1,29 +1,37 @@ -- replace new functions with ones that set acs_object.title, package_id -create or replace function forums_forum__new (integer,varchar,varchar,varchar,varchar,varchar,integer,timestamptz,integer,varchar,integer) -returns integer as ' -declare - p_forum_id alias for $1; - p_object_type alias for $2; - p_name alias for $3; - p_charter alias for $4; - p_presentation_type alias for $5; - p_posting_policy alias for $6; - p_package_id alias for $7; - p_creation_date alias for $8; - p_creation_user alias for $9; - p_creation_ip alias for $10; - p_context_id alias for $11; + + +-- added +select define_function_args('forums_forum__new','forum_id,object_type,name,charter,presentation_type,posting_policy,package_id,creation_date,creation_user,creation_ip,context_id'); + +-- +-- procedure forums_forum__new/11 +-- +CREATE OR REPLACE FUNCTION forums_forum__new( + p_forum_id integer, + p_object_type varchar, + p_name varchar, + p_charter varchar, + p_presentation_type varchar, + p_posting_policy varchar, + p_package_id integer, + p_creation_date timestamptz, + p_creation_user integer, + p_creation_ip varchar, + p_context_id integer +) RETURNS integer AS $$ +DECLARE v_forum_id integer; -begin +BEGIN v_forum_id:= acs_object__new( p_forum_id, p_object_type, p_creation_date, p_creation_user, p_creation_ip, coalesce(p_context_id, p_package_id), - ''t'', + 't', p_name, p_package_id ); @@ -34,38 +42,47 @@ (v_forum_id, p_name, p_charter, p_presentation_type, p_posting_policy, p_package_id); return v_forum_id; -end; -' language 'plpgsql'; +END; +$$ LANGUAGE plpgsql; -create or replace function forums_message__new (integer,varchar,integer,varchar,text,char,integer,timestamptz,varchar,integer,timestamptz,integer,varchar,integer) -returns integer as ' -declare - p_message_id alias for $1; - p_object_type alias for $2; - p_forum_id alias for $3; - p_subject alias for $4; - p_content alias for $5; - p_html_p alias for $6; - p_user_id alias for $7; - p_posting_date alias for $8; - p_state alias for $9; - p_parent_id alias for $10; - p_creation_date alias for $11; - p_creation_user alias for $12; - p_creation_ip alias for $13; - p_context_id alias for $14; + + + +-- added +select define_function_args('forums_message__new','message_id,object_type,forum_id,subject,content,html_p,user_id,posting_date,state,parent_id,creation_date,creation_user,creation_ip,context_id'); + +-- +-- procedure forums_message__new/14 +-- +CREATE OR REPLACE FUNCTION forums_message__new( + p_message_id integer, + p_object_type varchar, + p_forum_id integer, + p_subject varchar, + p_content text, + p_html_p char, + p_user_id integer, + p_posting_date timestamptz, + p_state varchar, + p_parent_id integer, + p_creation_date timestamptz, + p_creation_user integer, + p_creation_ip varchar, + p_context_id integer +) RETURNS integer AS $$ +DECLARE v_message_id integer; v_forum_policy forums_forums.posting_policy%TYPE; v_state forums_messages.state%TYPE; v_posting_date forums_messages.posting_date%TYPE; v_package_id acs_objects.package_id%TYPE; -begin +BEGIN select package_id into v_package_id from forums_forums where forum_id = p_forum_id; if v_package_id is null then - raise exception ''forums_message__new: forum_id % not found'', p_forum_id; + raise exception 'forums_message__new: forum_id % not found', p_forum_id; end if; v_message_id := acs_object__new( @@ -75,7 +92,7 @@ p_creation_user, p_creation_ip, coalesce(p_context_id, p_forum_id), - ''t'', + 't', p_subject, v_package_id ); @@ -86,9 +103,9 @@ from forums_forums where forum_id = p_forum_id; - if v_forum_policy = ''moderated'' - then v_state := ''pending''; - else v_state := ''approved''; + if v_forum_policy = 'moderated' + then v_state := 'pending'; + else v_state := 'approved'; end if; else v_state := p_state; @@ -115,5 +132,6 @@ return v_message_id; -end; -' language 'plpgsql'; +END; + +$$ LANGUAGE plpgsql;