Commit dd12b0f7 authored by Frank Bergmann's avatar Frank Bergmann

- OpenACS 5.9 Import

parent 59b0cd6c
--
--
--
-- @author Victor Guerra (vguerra@gmail.com)
-- @creation-date 2010-11-05
-- @cvs-id $Id$
--
-- PG 9.x support - changes regarding usage of sequences
drop view acs_events_seq;
drop sequence acs_events_sequence;
drop view timespan_seq;
drop view recurrence_seq;
-- added
select define_function_args('time_interval__new','start_date;null,end_date;null');
--
-- procedure time_interval__new/2
--
CREATE OR REPLACE FUNCTION time_interval__new(
new__start_date timestamptz, -- default null,
new__end_date timestamptz -- default null
) RETURNS integer AS $$
DECLARE
v_interval_id time_intervals.interval_id%TYPE;
BEGIN
select nextval('timespan_sequence') into v_interval_id from dual;
insert into time_intervals
(interval_id, start_date, end_date)
values
(v_interval_id, new__start_date, new__end_date);
return v_interval_id;
END;
$$ LANGUAGE plpgsql;
-- added
--
-- procedure timespan__new/2
--
CREATE OR REPLACE FUNCTION timespan__new(
new__interval_id integer,
new__copy_p boolean
) RETURNS integer AS $$
-- timespans.timespan_id%TYPE
DECLARE
v_timespan_id timespans.timespan_id%TYPE;
v_interval_id time_intervals.interval_id%TYPE;
BEGIN
-- get a new id;
select nextval('timespan_sequence') into v_timespan_id from dual;
if new__copy_p
then
-- JS: Note use of overloaded function (zero offset)
v_interval_id := time_interval__copy(new__interval_id);
else
v_interval_id := new__interval_id;
end if;
insert into timespans
(timespan_id, interval_id)
values
(v_timespan_id, v_interval_id);
return v_timespan_id;
END;
$$ LANGUAGE plpgsql;
-- added
select define_function_args('recurrence__new','interval_name,every_nth_interval,days_of_week;null,recur_until;null,custom_func;null');
--
-- procedure recurrence__new/5
--
CREATE OR REPLACE FUNCTION recurrence__new(
new__interval_name varchar,
new__every_nth_interval integer,
new__days_of_week varchar, -- default null,
new__recur_until timestamptz, -- default null,
new__custom_func varchar -- default null
) RETURNS integer AS $$
-- recurrences.recurrence_id%TYPE
DECLARE
v_recurrence_id recurrences.recurrence_id%TYPE;
v_interval_type_id recurrence_interval_types.interval_type%TYPE;
BEGIN
select nextval('recurrence_sequence') into v_recurrence_id from dual;
select interval_type
into v_interval_type_id
from recurrence_interval_types
where interval_name = new__interval_name;
insert into recurrences
(recurrence_id,
interval_type,
every_nth_interval,
days_of_week,
recur_until,
custom_func)
values
(v_recurrence_id,
v_interval_type_id,
new__every_nth_interval,
new__days_of_week,
new__recur_until,
new__custom_func);
return v_recurrence_id;
END;
$$ LANGUAGE plpgsql;
create index acs_events_timespan_id_idx on acs_events(timespan_id);
select define_function_args('time_interval__copy','interval_id,offset;0');
select define_function_args('time_interval__delete','interval_id');
select define_function_args('time_interval__edit','interval_id,start_date;null,end_date;null');
select define_function_args('time_interval__eq','interval_1_id,interval_2_id');
select define_function_args('time_interval__overlaps_p','interval_id,start_date;null,end_date;null');
select define_function_args('time_interval__shift','interval_id,start_offset;0,end_offset;0');
select define_function_args('timespan__copy','timespan_id,offset');
select define_function_args('timespan__delete','timespan_id');
select define_function_args('timespan__exists_p','timespan_id');
select define_function_args('timespan__interval_delete','timespan_id,interval_id');
select define_function_args('timespan__join','timespan_id,start_date;null,end_date;null');
select define_function_args('timespan__join_interval','timespan_id,interval_id,copy_p;true');
select define_function_args('timespan__multi_interval_p','timespan_id');
select define_function_args('timespan__new','start_date;null,end_date;null');
select define_function_args('timespan__overlaps_interval_p','timespan_id,interval_id;null');
select define_function_args('timespan__overlaps_p','timespan_id,start_date;null,end_date;null');
select define_function_args('acs_event__new','event_id;null,name;null,description;null,html_p;null,status_summary;null,timespan_id;null,activity_id;null,recurrence_id;null,object_type;acs_event,creation_date;now(),creation_user;null,creation_ip;null,context_id;null,package_id;null');
select define_function_args('acs_event__delete','event_id');
select define_function_args('acs_event__delete_all_recurrences','recurrence_id;null');
select define_function_args('acs_event__delete_all','event_id');
select define_function_args('acs_event__get_name','event_id');
select define_function_args('acs_event__get_description','event_id');
select define_function_args('acs_event__get_html_p','event_id');
select define_function_args('acs_event__get_status_summary','event_id');
select define_function_args('acs_event__timespan_set','event_id,timespan_id');
select define_function_args('acs_event__recurrence_timespan_edit','event_id,start_date,end_date,edit_past_events_p');
select define_function_args('acs_event__activity_set','event_id,activity_id');
select define_function_args('acs_event__party_map','event_id,party_id');
select define_function_args('acs_event__party_unmap','event_id,party_id');
select define_function_args('acs_event__recurs_p','event_id');
select define_function_args('acs_event__instances_exist_p','recurrence_id');
select define_function_args('acs_event__get_value','parameter_name');
select define_function_args('acs_event__new_instance','event_id,date_offset');
select define_function_args('acs_event__insert_instances','event_id,cutoff_date;null');
select define_function_args('acs_event__shift','event_id;null,start_offset;0,end_offset;0');
select define_function_args('acs_event__shift_all','event_id;null,start_offset;0,end_offset;0');
select define_function_args('acs_activity__new','activity_id;null,name,description;null,html_p;f,status_summary;null,object_type;acs_activity,creation_date;now(),creation_user;null,creation_ip;null,context_id;null');
select define_function_args('acs_activity__delete','activity_id');
select define_function_args('acs_activity__name','activity_id');
select define_function_args('acs_activity__edit','activity_id,name;null,description;null,html_p;null,status_summary;null');
select define_function_args('acs_activity__object_map','activity_id,object_id');
select define_function_args('acs_activity__object_unmap','activity_id,object_id');
select define_function_args('recurrence__new','interval_name,every_nth_interval,days_of_week;null,recur_until;null,custom_func;null');
select define_function_args('recurrence__delete','recurrence_id');
This diff is collapsed.
<property name="context">"ACS Events"</property>
<property name="doc(title)">ACS Events Documentation</property>
<master>
<body bgcolor="#ffffff">
<h2>ACS Events Documentation</h2>
by <a href="mailto:wsmeeks@arsdigita.com">wsmeeks@arsdigita.com</a><hr><h3>Engineering Docs</h3>
<ul>
<li><a href="requirements">Requirements</a>
<li><a href="design">Design</a></li>
</li>
</ul>
<h3>Release Notes</h3><p>Please file bugs in the <a href="http://openacs.org/bugtracker/openacs/">Bug Tracker</a>.
</p><hr><address>wsmeeks@arsdigita.com</address>
</ul>
</body>
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment