-- -- pa_photo__new/16 -- create or replace function pa_photo__new( character varying, integer, integer, integer, timestamp with time zone, integer, character varying, character varying, integer, character varying, character varying, boolean, timestamp with time zone, character varying, character varying, text ) returns int4 as $$ declare new__name alias for $1; new__parent_id alias for $2; -- default null new__item_id alias for $3; -- default null new__revision_id alias for $4; -- default null new__creation_date alias for $5; -- default now() new__creation_user alias for $6; -- default null new__creation_ip alias for $7; -- default null new__locale alias for $8; -- default null new__context_id alias for $9; -- default null new__title alias for $10; -- default null new__description alias for $11; -- default null new__is_live alias for $12; -- default f new__publish_date alias for $13; -- default now() new__nls_language alias for $14; -- default null new__caption alias for $15; -- default null new__story alias for $16; -- default null -- mime_type determined by image content_type new__mime_type varchar default null; -- the same as title -- user_filename in pa_photos.user_filename%TYPE default null new__content_type varchar default 'pa_photo'; new__relation_tag varchar default null; v_item_id cr_items.item_id%TYPE; v_revision_id cr_revisions.revision_id%TYPE; begin v_item_id := content_item__new ( new__name, new__parent_id, new__item_id, new__locale, new__creation_date, new__creation_user, new__context_id, new__creation_ip, 'content_item', new__content_type, null, null, null, null, null ); -- not needed in the new call to content_item__new -- new__relation_tag, v_revision_id := content_revision__new ( new__title, new__description, new__publish_date, new__mime_type, new__nls_language, null, v_item_id, new__revision_id, new__creation_date, new__creation_user, new__creation_ip ); insert into pa_photos (pa_photo_id, caption, story, user_filename) values (v_revision_id, new__caption, new__story, new__title); if new__is_live = 't' then PERFORM content_item__set_live_revision (v_revision_id); end if; return v_item_id; end; $$ language plpgsql;