-- API for survey objects select define_function_args('survey__new','survey_id,name,description,description_html_p;f,single_response_p;f,editable_p;f,enabled_p;f,single_section_p;t,type;general,display_type,package_id,public_p,creation_user,context_id'); create or replace function survey__new (integer,varchar,text,boolean,boolean,boolean,boolean,boolean,varchar,varchar,integer,boolean,integer,integer) returns integer as ' declare new__survey_id alias for $1; -- default null new__name alias for $2; new__description alias for $3; new__description_html_p alias for $4; -- default f new__single_response_p alias for $5; -- default f new__editable_p alias for $6; -- default t new__enabled_p alias for $7; -- default f new__single_section_p alias for $8; -- default t new__type alias for $9; -- default general new__display_type alias for $10; new__package_id alias for $11; new__public_p alias for $12; -- default t new__creation_user alias for $13; -- default null new__context_id alias for $14; -- default null v_survey_id integer; begin v_survey_id := acs_object__new ( new__survey_id, ''survey'', now(), new__creation_user, null, new__context_id, ''t'', new__name, new__package_id ); insert into surveys (survey_id, name, description, description_html_p, single_response_p, editable_p, enabled_p, single_section_p, type, display_type, package_id, public_p) values (v_survey_id, new__name, new__description, new__description_html_p, new__single_response_p, new__editable_p, new__enabled_p, new__single_section_p, new__type, new__display_type, new__package_id, new__public_p); return v_survey_id; end;' language 'plpgsql'; -- API for survey_section objects select define_function_args('survey_section__new','section_id,survey_id,name,description,description_html_p;f,sort_key;0,branch_p;f,branched_p;f,block_section_p;f,page_break_p;t,creation_user,context_id,pretty_id'); create or replace function survey_section__new (integer,integer,varchar,text,boolean,integer,boolean,boolean,boolean,boolean,integer,integer,text) returns integer as ' declare new__section_id alias for $1; -- default null new__survey_id alias for $2; -- default null new__name alias for $3; -- default null new__description alias for $4; -- default null new__description_html_p alias for $5; -- default f new__sort_key alias for $6; -- default 0 new__branch_p alias for $7; -- default f new__branched_p alias for $8; -- default f new__block_section_p alias for $9; -- default f new__page_break_p alias for $10; -- default t new__creation_user alias for $11; -- default null new__context_id alias for $12; -- default null new__pretty_id alias for $13; v_section_id integer; v_package_id integer; begin select package_id into v_package_id from surveys where survey_id = new__survey_id; v_section_id := acs_object__new ( new__section_id, ''survey_section'', now(), new__creation_user, null, new__context_id, ''t'', new__name, v_package_id ); insert into survey_sections (section_id, survey_id, name, description, description_html_p, sort_key, branch_p, branched_p, page_break_p, block_section_p,pretty_id) values (v_section_id, new__survey_id, new__name, new__description, new__description_html_p, new__sort_key, new__branch_p, new__branched_p, new__page_break_p, new__block_section_p, new__pretty_id); return v_section_id; end;' language 'plpgsql'; -- API for predefined questions create or replace function survey_predefined_question__new (integer,text,varchar,varchar,varchar,varchar,boolean,varchar,varchar,text,varchar,varchar,varchar,integer,integer) returns integer as ' declare new__predefined_question_id alias for $1; -- default null new__question_text alias for $2; -- default null new__abstract_data_type alias for $3; -- default null new__presentation_type alias for $4; -- default null new__presentation_options alias for $5; -- default null new__presentation_alignment alias for $6; -- default below new__question_html_p alias for $7; -- default f new__summary_type alias for $8; new__action_type alias for $9; -- default null new__tcl alias for $10; -- default null new__table_name alias for $11; -- default null new__column_name alias for $12; -- default null new__key_name alias for $13; -- default null new__creation_user alias for $14; -- default null new__context_id alias for $15; -- default null v_predefined_question_id survey_predefined_questions.predefined_question_id%TYPE; begin v_predefined_question_id := acs_object__new ( new__predefined_question_id, ''survey_predefined_question'', now(), new__creation_user, null, new__context_id, ''t'', new__question_text, null ); insert into survey_predefined_questions (predefined_question_id,question_text,abstract_data_type,presentation_type,presentation_options,presentation_alignment,question_html_p,summary_type,action_type,tcl,table_name,column_name,key_name) values (v_predefined_question_id,new__question_text,new__abstract_data_type,new__presentation_type,new__presentation_options,new__presentation_alignment,new__question_html_p,new__summary_type,new__action_type,new__tcl,new__table_name,new__column_name,new__key_name); return v_predefined_question_id; end;' language 'plpgsql'; -- API for Survey questions create or replace function survey_question__new (integer,integer,integer,text,varchar,boolean,boolean,varchar,varchar,varchar,boolean,varchar,varchar,integer,integer,integer) returns integer as ' declare new__question_id alias for $1; -- default null new__section_id alias for $2; -- default null new__sort_order alias for $3; -- default null new__question_text alias for $4; -- default null new__abstract_data_type alias for $5; -- default null new__required_p alias for $6; -- default t new__active_p alias for $7; -- default new__presentation_type alias for $8; -- default null new__presentation_options alias for $9; -- default null new__presentation_alignment alias for $10; -- default below new__question_html_p alias for $11; -- default f new__summary_type alias for $12; new__answer_description alias for $13; new__predefined_question_id alias for $14; -- default null new__creation_user alias for $15; -- default null new__context_id alias for $16; -- default null v_question_id integer; v_package_id integer; begin select package_id into v_package_id from acs_objects where object_id = new__section_id; v_question_id := acs_object__new ( new__question_id, ''survey_question'', now(), new__creation_user, null, new__context_id, ''t'', new__question_text, v_package_id ); insert into survey_questions (question_id, section_id, sort_order, question_text, abstract_data_type, required_p, active_p, presentation_type, presentation_options, presentation_alignment, predefined_question_id) values (v_question_id, new__section_id, new__sort_order, new__question_text, new__abstract_data_type, new__required_p, new__active_p, new__presentation_type, new__presentation_options, new__presentation_alignment, new__predefined_question_id); return v_question_id; end;' language 'plpgsql'; select define_function_args('survey_question__new','question_id,section_id,sort_order,question_text,abstract_data_type,required_p;t,active_p,presentation_type,presentation_options,presentation_alignment;below,question_html_p;f,summary_type,answer_description,predefined_qustion_id,creation_user,context_id,pretty_id'); create or replace function survey_question__new (integer,integer,integer,text,varchar,boolean,boolean,varchar,varchar,varchar,boolean,varchar,varchar,integer,integer,integer,text) returns integer as ' declare new__question_id alias for $1; -- default null new__section_id alias for $2; -- default null new__sort_order alias for $3; -- default null new__question_text alias for $4; -- default null new__abstract_data_type alias for $5; -- default null new__required_p alias for $6; -- default t new__active_p alias for $7; -- default new__presentation_type alias for $8; -- default null new__presentation_options alias for $9; -- default null new__presentation_alignment alias for $10; -- default below new__question_html_p alias for $11; -- default f new__summary_type alias for $12; new__answer_description alias for $13; new__predefined_question_id alias for $14; -- default null new__creation_user alias for $15; -- default null new__context_id alias for $16; -- default null new__pretty_id alias for $17; v_question_id integer; v_package_id integer; begin select package_id into v_package_id from acs_objects where object_id = new__section_id; v_question_id := acs_object__new ( new__question_id, ''survey_question'', now(), new__creation_user, null, new__context_id, ''t'', new__question_text, v_package_id ); insert into survey_questions (question_id, section_id, sort_order, question_text, abstract_data_type, required_p, active_p, presentation_type, presentation_options, presentation_alignment, predefined_question_id,pretty_id) values (v_question_id, new__section_id, new__sort_order, new__question_text, new__abstract_data_type, new__required_p, new__active_p, new__presentation_type, new__presentation_options, new__presentation_alignment, new__predefined_question_id,new__pretty_id); return v_question_id; end;' language 'plpgsql'; -- API for survey responses create or replace function survey_response__new(integer,integer,varchar,boolean,integer,varchar,integer,integer) returns integer as ' declare new__response_id alias for $1; -- default null new__survey_id alias for $2; -- default null new__title alias for $3; -- default null new__notify_on_comment_p alias for $4; -- default f new__creation_user alias for $5; -- default null new__creation_ip alias for $6; -- default null new__context_id alias for $7; -- default null new__initial_response_id alias for $8; -- default null v_response_id integer; v_package_id integer; begin select package_id into v_package_id from surveys where survey_id = new__survey_id; v_response_id := acs_object__new ( new__response_id, ''survey_response'', now(), new__creation_user, new__creation_ip, new__context_id, ''t'', new__title, v_package_id ); insert into survey_responses (response_id, survey_id, title, notify_on_comment_p, initial_response_id) values (v_response_id, new__survey_id, new__title, new__notify_on_comment_p, new__initial_response_id); return v_response_id; end;' language 'plpgsql';