Index: openacs-4/packages/acs-messaging/sql/postgresql/acs-messaging-packages.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-messaging/sql/postgresql/acs-messaging-packages.sql,v diff -u -r1.20.4.4 -r1.20.4.5 --- openacs-4/packages/acs-messaging/sql/postgresql/acs-messaging-packages.sql 11 Feb 2017 20:23:19 -0000 1.20.4.4 +++ openacs-4/packages/acs-messaging/sql/postgresql/acs-messaging-packages.sql 11 Feb 2017 23:54:57 -0000 1.20.4.5 @@ -471,20 +471,20 @@ -- CREATE OR REPLACE FUNCTION acs_message__new_image( p_message_id integer, - p_image_id integer, -- default null + p_image_id integer, -- default null p_file_name varchar, - p_title varchar, -- default null - p_description text, -- default null - p_mime_type varchar, -- default 'text/plain' - p_data integer, -- default null - p_width integer, -- default null - p_height integer, -- default null - p_creation_date timestamptz, -- default sysdate - p_creation_user integer, -- default null - p_creation_ip varchar, -- default null - p_is_live boolean, -- default 't' - p_storage_type varchar, -- default 'file' - p_package_id integer -- default null + p_title varchar, -- default null + p_description text, -- default null + p_mime_type varchar, -- default 'text/plain' + p_data integer, -- default null + p_width integer, -- default null + p_height integer, -- default null + p_creation_date timestamptz, -- default sysdate + p_creation_user integer, -- default null + p_creation_ip varchar, -- default null + p_is_live boolean, -- default 't' + p_storage_type cr_items.storage_type%TYPE, -- default 'file' + p_package_id integer default null ) RETURNS integer AS $$ DECLARE @@ -504,10 +504,10 @@ 'content_revision', -- content_type null, -- title null, -- description - 'text/plain', -- mime_type + 'text/plain', -- mime_type null, -- nls_language null, -- text - 'file', -- storage_type + p_storage_type, -- storage_type p_package_id -- package_id ); @@ -531,50 +531,6 @@ $$ LANGUAGE plpgsql; - --- --- procedure acs_message__new_image/14 --- -CREATE OR REPLACE FUNCTION acs_message__new_image( - p_message_id integer, - p_image_id integer, -- default null - p_file_name varchar, - p_title varchar, -- default null - p_description text, -- default null - p_mime_type varchar, -- default 'text/plain' - p_data integer, -- default null - p_width integer, -- default null - p_height integer, -- default null - p_creation_date timestamptz, -- default sysdate - p_creation_user integer, -- default null - p_creation_ip varchar, -- default null - p_is_live boolean, -- default 't' - p_storage_type varchar -- default 'file' - -) RETURNS integer AS $$ -DECLARE -BEGIN - return acs_message__new_image (p_message_id, - p_image_id, - p_file_name, - p_title, - p_description, - p_mime_type, - p_data, - p_width, - p_height, - p_creation_date, - p_creation_user, - p_creation_ip, - p_is_live, - p_storage_type, - null - ); -END; -$$ LANGUAGE plpgsql; - - - -- added select define_function_args('acs_message__edit_image','image_id,title;null,description;null,mime_type;text/plain,data;null,width;null,height;null,creation_date;sysdate,creation_user;null,creation_ip;null,is_live;t'); Index: openacs-4/packages/acs-messaging/sql/postgresql/upgrade/upgrade-5.9.1d2-5.9.1d3.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-messaging/sql/postgresql/upgrade/upgrade-5.9.1d2-5.9.1d3.sql,v diff -u -r1.1.2.2 -r1.1.2.3 --- openacs-4/packages/acs-messaging/sql/postgresql/upgrade/upgrade-5.9.1d2-5.9.1d3.sql 11 Feb 2017 20:23:19 -0000 1.1.2.2 +++ openacs-4/packages/acs-messaging/sql/postgresql/upgrade/upgrade-5.9.1d2-5.9.1d3.sql 11 Feb 2017 23:54:57 -0000 1.1.2.3 @@ -59,6 +59,9 @@ END; $$ LANGUAGE plpgsql; + + + DROP FUNCTION IF EXISTS acs_message__new_file(integer,integer,character varying,character varying,text,character varying,integer,timestamp with time zone,integer,character varying,boolean,character varying,integer); DROP FUNCTION IF EXISTS acs_message__new_file(integer,integer,character varying,character varying,text,character varying,integer,timestamp with time zone,integer,character varying,boolean,character varying); @@ -122,3 +125,74 @@ return v_file_id; END; $$ LANGUAGE plpgsql; + + + + +DROP FUNCTION IF EXISTS acs_message__new_image(integer,integer,character varying,character varying,text,character varying,integer,integer,integer,timestamp with time zone,integer,character varying,boolean,character varying); +DROP FUNCTION IF EXISTS acs_message__new_image(integer,integer,character varying,character varying,text,character varying,integer,integer,integer,timestamp with time zone,integer,character varying,boolean,character varying,integer); + + +-- +-- procedure acs_message__new_image/15 +-- +CREATE OR REPLACE FUNCTION acs_message__new_image( + p_message_id integer, + p_image_id integer, -- default null + p_file_name varchar, + p_title varchar, -- default null + p_description text, -- default null + p_mime_type varchar, -- default 'text/plain' + p_data integer, -- default null + p_width integer, -- default null + p_height integer, -- default null + p_creation_date timestamptz, -- default sysdate + p_creation_user integer, -- default null + p_creation_ip varchar, -- default null + p_is_live boolean, -- default 't' + p_storage_type cr_items.storage_type%TYPE, -- default 'file' + p_package_id integer default null + +) RETURNS integer AS $$ +DECLARE + v_image_id cr_items.item_id%TYPE; + v_revision_id cr_revisions.revision_id%TYPE; +BEGIN + v_image_id := content_item__new ( + p_file_name, -- name + p_message_id, -- parent_id + p_image_id, -- item_id + null, -- locale + p_creation_date, -- creation_date + p_creation_user, -- creation_user + null, -- context_id + p_creation_ip, -- creation_ip + 'content_item', -- item_subtype + 'content_revision', -- content_type + null, -- title + null, -- description + 'text/plain', -- mime_type + null, -- nls_language + null, -- text + p_storage_type, -- storage_type + p_package_id -- package_id + ); + + -- create an initial revision for the new attachment + v_revision_id := acs_message__edit_image ( + v_image_id, -- image_id + p_title, -- title + p_description, -- description + p_mime_type, -- mime_type + p_data, -- data + p_width, -- width + p_height, -- height + p_creation_date, -- creation_date + p_creation_user, -- creation_user + p_creation_ip, -- creation_ip + p_is_live -- is_live + ); + + return v_image_id; +END; +$$ LANGUAGE plpgsql;