-- -- wp_slide__new_revision/13 -- create or replace function wp_slide__new_revision( timestamp with time zone, integer, character varying, integer, character varying, text, character varying, character varying, integer, integer, integer, boolean, boolean ) returns int4 as $$ declare p_creation_date alias for $1; p_creation_user alias for $2; p_creation_ip alias for $3; p_slide_item_id alias for $4; p_slide_title alias for $5; p_preamble alias for $6; p_bullet_items alias for $7; p_postamble alias for $8; p_style alias for $9; p_original_slide_id alias for $10; p_sort_key alias for $11; p_include_in_outline_p alias for $12; p_context_break_after_p alias for $13; v_preamble_item_id cr_items.item_id%TYPE; v_postamble_item_id cr_items.item_id%TYPE; v_bullet_items_item_id cr_items.item_id%TYPE; v_revision_id cr_revisions.revision_id%TYPE; v_preamble_revision_id cr_revisions.revision_id%TYPE; v_postamble_revision_id cr_revisions.revision_id%TYPE; v_bullet_items_revision_id cr_revisions.revision_id%TYPE; begin v_revision_id := content_revision__new( null, null, current_timestamp, 'text/plain', null, null, p_slide_item_id, null, p_creation_date, p_creation_user, p_creation_ip ); perform content_item__set_live_revision(v_revision_id); insert into cr_wp_slides ( slide_id, slide_title, style, original_slide_id, sort_key, include_in_outline_p, context_break_after_p ) values ( v_revision_id, p_slide_title, p_style, p_original_slide_id, p_sort_key, p_include_in_outline_p, p_context_break_after_p ); select item_id into v_preamble_item_id from cr_items where parent_id = p_slide_item_id and content_type = 'cr_wp_slide_preamble'; v_preamble_revision_id := content_revision__new( null, null, current_timestamp, 'text/plain', null, p_preamble, v_preamble_item_id, null, p_creation_date, p_creation_user, p_creation_ip ); perform content_item__set_live_revision(v_preamble_revision_id); insert into cr_wp_slides_preamble (id, slide_id) values (v_preamble_revision_id, v_revision_id); select item_id into v_postamble_item_id from cr_items where parent_id = p_slide_item_id and content_type = 'cr_wp_slide_postamble'; v_postamble_revision_id := content_revision__new( null, null, current_timestamp, 'text/plain', null, p_postamble, v_postamble_item_id, null, p_creation_date, p_creation_user, p_creation_ip ); perform content_item__set_live_revision(v_postamble_revision_id); insert into cr_wp_slides_postamble (id, slide_id) values (v_postamble_revision_id, v_revision_id); select item_id into v_bullet_items_item_id from cr_items where parent_id = p_slide_item_id and content_type = 'cr_wp_slide_bullet_items'; v_bullet_items_revision_id := content_revision__new( null, null, current_timestamp, 'text/plain', null, p_bullet_items, v_bullet_items_item_id, null, p_creation_date, p_creation_user, p_creation_ip ); perform content_item__set_live_revision(v_bullet_items_revision_id); insert into cr_wp_slides_bullet_items (id, slide_id) values (v_bullet_items_revision_id, v_revision_id); return 0; end;$$ language plpgsql;