Commit 07eca372 authored by Malte Sussdorff's avatar Malte Sussdorff

Initial Import

parents
Pipeline #652 failed with stages
-- @cvs-id: $Id$
create table phone_types (
phone_type_id integer
constraint phone_types_id_pk
primary key,
description varchar (40)
constraint phone_types_desc_nn
not null
);
-- insert some data
-- telecom_numbers
-- This table is used to store telephone numbers
-- I have deviated from HR-XML slightly to make the
-- table map more directly to dml
create table telecom_numbers
(
number_id integer
constraint telecom_number_id_pk
primary key
constraint telecom_number_id_fk
references acs_objects (object_id),
party_id integer
constraint telecom_party_id_fk
references parties (party_id),
itu_id integer
constraint telecom_number_itu_code_fk
references itu_codes(itu_id),
-- trunk number
national_number varchar(20),
-- area code npa
area_city_code varchar(30),
-- local number nxx
subscriber_number varchar(100)
constraint telecom_number_sub_num_nn
not null,
extension varchar(100),
sms_enabled_p boolean,
-- 24x7,weekdays
best_contact_time varchar (200),
-- home, office, etc
location varchar (200),
-- mobile, pager, fax
phone_type_id integer
constraint telecom_numbers_phontyp_id_fk
references phone_types(phone_type_id)
);
create index telecom_numbers_itu_ix on telecom_numbers (itu_id);
create index telecom_numbers_party_ix on telecom_numbers (party_id);
-- view
create view telecom_number_vw as
select
n.*,
area_city_code || ' ' || subscriber_number as pretty_number,
description as phone_type
from phone_types t,telecom_numbers n
where t.phone_type_id = n.phone_type_id;
-- plsql
\i telecom-number-plsql-create.sql
--drop functions
drop function
drop function
--drop permissions
delete from acs_permissions where object_id in (select _id from telecom_number);
--drop objects
create function inline_0 ()
returns integer as '
declare
object_rec record;
begin
for object_rec in select object_id from acs_objects where object_type=''telecom_number''
loop
perform acs_object__delete( object_rec.object_id );
end loop;
return 0;
end;' language 'plpgsql';
select inline_0();
drop function inline_0();
--drop table
drop table telecom_numbers;
drop table phone_types;
drop view telecom_number_vw;
--drop attributes
select acs_attribute__drop_attribute (
'note',
'TITLE'
);
select acs_attribute__drop_attribute (
'note',
'BODY'
);
--drop type
select acs_object_type__drop_type(
'telecom_number',
't'
);
-- packages/telecom_number/sql/postgresql/telecom_number-plsql.sql
--
-- @author Jon Griffin
-- @creation-date 27 February 2003
-- @cvs-id $Id$
create function inline_0 ()
returns integer as '
begin
PERFORM acs_object_type__create_type (
''telecom_number'', -- object_type
''Telecom Number'', -- pretty_name
''Telecom Number'', -- pretty_plural
''acs_object'', -- supertype
''telecom_numbers'', -- table_name
''number_id'', -- id_column
''telecom_number'', -- package_name
''f'', -- abstract_p
null, -- type_extension_table
null -- name_method
);
return 0;
end;' language 'plpgsql';
select inline_0 ();
drop function inline_0 ();
------ start of oacs new proc
create or replace function telecom_number__new ( varchar,varchar,varchar,integer,varchar,
varchar,integer,integer,integer,bool,varchar,integer,varchar,integer )
returns integer as '
declare
p_area_city_code alias for $1; -- comment
p_best_contact_time alias for $2; -- comment
p_extension alias for $3; -- comment
p_itu_id alias for $4; -- comment
p_location alias for $5; -- comment
p_national_number alias for $6; -- comment
p_number_id alias for $7; -- comment
p_party_id alias for $8; -- comment
p_phone_type_id alias for $9; -- comment
p_sms_enabled_p alias for $10; -- comment
p_subscriber_number alias for $11; -- comment
p_creation_user alias for $12; -- comment
p_creation_ip alias for $13; -- comment
p_context_id alias for $14; -- comment
-- local vars
v_number_id telecom_numbers.number_id%TYPE;
begin
v_number_id := acs_object__new (
null,
''telecom_number'',
now(),
p_creation_user,
p_creation_ip,
p_context_id
);
insert into telecom_numbers (
area_city_code,
best_contact_time,
extension,
itu_id,
location,
national_number,
number_id,
party_id,
phone_type_id,
sms_enabled_p,
subscriber_number
)
values (
p_area_city_code,
p_best_contact_time,
p_extension,
p_itu_id,
p_location,
p_national_number,
v_number_id,
p_party_id,
p_phone_type_id,
p_sms_enabled_p,
p_subscriber_number
);
PERFORM acs_permission__grant_permission (
v_number_id,
p_creation_user,
''admin''
);
raise NOTICE ''Adding telecom_number - %'',v_number_id;
return v_number_id;
end;' language 'plpgsql';
------ end new proc
create or replace function telecom_number__del (integer)
returns integer as '
declare
p_number_id alias for $1;
v_return integer := 0;
begin
delete from acs_permissions
where object_id = p_number_id;
delete from telecom_numbers
where number_id = p_number_id;
raise NOTICE ''Deleting telecom_number - %'',p_number_id;
PERFORM acs_object__delete(p_number_id);
return v_return;
end;' language 'plpgsql';
<?xml version="1.0"?>
<!-- Generated by the OpenACS Package Manager -->
<package key="telecom-number" url="http://openacs.org/repository/apm/packages/telecom-number" type="apm_service">
<package-name>Telecom Information</package-name>
<pretty-plural>Telecom Information</pretty-plural>
<initial-install-p>f</initial-install-p>
<singleton-p>f</singleton-p>
<version name="0.1d" url="http://openacs.org/repository/download/apm/telecom-number-0.1d.apm">
<database-support>
<database>oracle</database>
<database>postgresql</database>
</database-support>
<owner url="mailto:jon@mayuli.com">Jon Griffin</owner>
<summary>Datamodel and UI for the HR-XML telecom standard.</summary>
<vendor url="http://www.mayuli.com">Mayuli Enterprises, LLC</vendor>
<description format="text/html">This is a mapping of HR-XML's telecom standard.&lt;p&gt;
Originally part of contacts-lite, now stand-alone to allow for use in other packages.</description>
<provides url="telecom-number" version="0.1d"/>
<requires url="acs-kernel" version="4.6"/>
<requires url="acs-reference" version="0.2d"/>
<requires url="ref-itu" version="0.1d"/>
<files>
<file type="data_model_create" db_type="postgresql" path="sql/postgresql/telecom-number-create.sql"/>
<file type="data_model_drop" db_type="postgresql" path="sql/postgresql/telecom-number-drop.sql"/>
<file type="data_model" db_type="postgresql" path="sql/postgresql/telecom-number-plsql-create.sql"/>
<file type="package_spec" path="telecom-number.info"/>
<file type="content_page" path="www/admin/add-edit.adp"/>
<file type="content_page" path="www/admin/add-edit.tcl"/>
<file type="query_file" path="www/admin/add-edit.xql"/>
<file type="content_page" path="www/admin/delete-2.tcl"/>
<file type="content_page" path="www/admin/delete.adp"/>
<file type="content_page" path="www/admin/delete.tcl"/>
<file type="query_file" path="www/admin/delete.xql"/>
<file type="content_page" path="www/admin/index.adp"/>
<file type="content_page" path="www/admin/index.tcl"/>
<file type="query_file" path="www/admin/index.xql"/>
<file type="content_page" path="www/index.adp"/>
<file type="content_page" path="www/index.tcl"/>
</files>
<parameters>
<!-- No version parameters -->
</parameters>
</version>
</package>
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