-- -- category_synonym__new/4 -- create or replace function category_synonym__new( character varying, character varying, integer, integer ) returns int4 as $$ declare p_name alias for $1; p_locale alias for $2; p_category_id alias for $3; p_synonym_id alias for $4; v_synonym_id integer; begin -- get new synonym_id if (p_synonym_id is null) then v_synonym_id := nextval ('category_synonyms_id_seq'); else v_synonym_id := p_synonym_id; end if; -- insert synonym data insert into category_synonyms (synonym_id, category_id, locale, name, synonym_p) values (v_synonym_id, p_category_id, p_locale, p_name, 't'); -- insert in synonym index and search results PERFORM category_synonym__reindex (v_synonym_id, p_name, p_locale); return (v_synonym_id); end;$$ language plpgsql;