Index: openacs-4/packages/acs-content-repository/acs-content-repository.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/acs-content-repository.info,v
diff -u -N -r1.109.2.19 -r1.109.2.20
--- openacs-4/packages/acs-content-repository/acs-content-repository.info 16 May 2016 10:38:40 -0000 1.109.2.19
+++ openacs-4/packages/acs-content-repository/acs-content-repository.info 26 May 2016 19:23:20 -0000 1.109.2.20
@@ -7,7 +7,7 @@
t
t
-
+
OpenACS
The canonical repository for OpenACS content.
2015-10-04
@@ -19,7 +19,7 @@
GPL
3
-
+
Index: openacs-4/packages/acs-content-repository/sql/common/mime-type-data.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/sql/common/mime-type-data.sql,v
diff -u -N -r1.10.8.5 -r1.10.8.6
--- openacs-4/packages/acs-content-repository/sql/common/mime-type-data.sql 3 May 2016 06:23:59 -0000 1.10.8.5
+++ openacs-4/packages/acs-content-repository/sql/common/mime-type-data.sql 26 May 2016 19:23:20 -0000 1.10.8.6
@@ -13,7 +13,7 @@
insert into cr_mime_types (label,mime_type,file_extension) values ( 'AutoCAD drawing files' , 'application/acad' , 'dwg' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'Andrew data stream' , 'application/andrew-inset' , 'ez' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'ClarisCAD files' , 'application/clariscad' , 'ccad' );
-insert into cr_mime_types (label,mime_type,file_extension) values ( 'Text - Comma separated value', 'application/csv' , 'csv' );
+insert into cr_mime_types (label,mime_type,file_extension) values ( 'Text - Comma separated value', 'text/csv' , 'csv' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'MATRA Prelude drafting' , 'application/drafting' , 'drw' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'DXF (AutoCAD)' , 'application/dxf' , 'dxf' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'Filemaker Pro' , 'application/filemaker' , 'fm' );
@@ -29,7 +29,7 @@
insert into cr_mime_types (label,mime_type,file_extension) values ( 'PostScript' , 'application/postscript' , 'ps' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'RTF - Rich Text Format' , 'application/rtf' , 'rtf' );
insert into cr_mime_types (label,mime_type,file_extension) values ( 'Stereolithography' , 'application/sla' , 'stl');
-insert into cr_mime_types (label,mime_type,file_extension) values ( 'VCard' , 'application/vcard' , 'vcf');
+insert into cr_mime_types (label,mime_type,file_extension) values ( 'VCard' , 'text/vcard' , 'vcf');
insert into cr_mime_types (label,mime_type,file_extension) values ( 'VDA-FS Surface data' , 'application/vda' , 'vda');
insert into cr_mime_types (label,mime_type,file_extension) values ( 'SSOYE Koan Files' , 'application/vnd.koan' , 'skp');
insert into cr_mime_types (label,mime_type,file_extension) values ( 'FrameMaker MIF format' , 'application/vnd.mif' , 'mif' );
@@ -177,7 +177,9 @@
insert into cr_mime_types (label,mime_type,file_extension) values ('SPPS data file' ,'application/x-spss-outputfile' , 'spo');
insert into cr_mime_types (label,mime_type,file_extension) values ('Video MP4' , 'video/mp4' , 'mp4');
insert into cr_mime_types (label,mime_type,file_extension) values ('XPInstall' , 'application/x-xpinstall' , 'xpi');
+insert into cr_mime_types (label,mime_type,file_extension) values ('iCalendar' , 'text/calendar' , 'ics');
+
-- Open Documents MIME types
insert into cr_mime_types (mime_type, file_extension, label) values ('application/vnd.oasis.opendocument.text', 'odt', 'OpenDocument Text');
insert into cr_mime_types (mime_type, file_extension, label) values ('application/vnd.oasis.opendocument.text-template', 'ott', 'OpenDocument Text Template');
@@ -263,7 +265,7 @@
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'cpio','application/x-cpio' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'cpt','application/mac-compactpro' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'css','text/css' );
-insert into cr_extension_mime_type_map (extension, mime_type) values ( 'csv','application/csv');
+insert into cr_extension_mime_type_map (extension, mime_type) values ( 'csv','text/csv');
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'cur','application/octet-stream' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'dcr','application/x-director' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'deb','application/x-debian-package' );
@@ -417,7 +419,7 @@
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'ustar','application/x-ustar' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'uu','application/octet-stream' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'vcd','application/x-cdlink' );
-insert into cr_extension_mime_type_map (extension, mime_type) values ( 'vcf','application/vcard' );
+insert into cr_extension_mime_type_map (extension, mime_type) values ( 'vcf','text/vcard' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'vdo','video/vdo' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'vda','application/vda' );
insert into cr_extension_mime_type_map (extension, mime_type) values ( 'vivo','video/vnd.vivo' );
@@ -476,6 +478,7 @@
insert into cr_extension_mime_type_map (extension, mime_type) values ('spo', 'application/x-spss-outputfile');
insert into cr_extension_mime_type_map (extension, mime_type) values ('mp4', 'video/mp4');
insert into cr_extension_mime_type_map (extension, mime_type) values ('xpi', 'application/x-xpinstall');
+insert into cr_extension_mime_type_map (extension, mime_type) values ('ics', 'text/calendar');
-- Open Documents MIME types
insert into cr_extension_mime_type_map (mime_type, extension) values ('application/vnd.oasis.opendocument.text', 'odt');
Index: openacs-4/packages/acs-content-repository/sql/oracle/upgrade/upgrade-5.9.1d15-5.9.1d16.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/sql/oracle/upgrade/upgrade-5.9.1d15-5.9.1d16.sql,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/acs-content-repository/sql/oracle/upgrade/upgrade-5.9.1d15-5.9.1d16.sql 26 May 2016 19:23:20 -0000 1.1.2.1
@@ -0,0 +1,36 @@
+--
+-- Update mime_type to official content type as registered by IANA.
+-- The changes have to be performed in a transaction, therefore the inline function.
+--
+create or replace function inline_0 (
+ p_label in varchar,
+ p_extension in varchar,
+ p_old_mime_type in varchar,
+ p_new_mime_type in varchar
+)
+return integer
+as
+begin
+ delete from cr_extension_mime_type_map where mime_type = p_old_mime_type;
+
+ insert into cr_mime_types(label, mime_type, file_extension)
+ select p_label, p_new_mime_type, p_extension from dual
+ where not exists (select 1 from cr_mime_types where mime_type = p_new_mime_type);
+
+ update cr_content_mime_type_map set mime_type = p_new_mime_type where mime_type = p_old_mime_type;
+ update cr_revisions set mime_type = p_new_mime_type where mime_type = p_old_mime_type;
+
+ insert into cr_extension_mime_type_map (extension, mime_type)
+ select p_extension, p_new_mime_type from dual
+ where not exists (select 1 from cr_extension_mime_type_map where mime_type = p_new_mime_type);
+
+ delete from cr_mime_types where mime_type = p_old_mime_type;
+ return 1;
+end;
+/
+
+select inline_0('Comma separated value','csv','application/csv','text/csv') from dual;
+select inline_0('VCard','vcf','application/vcard','text/vcard') from dual;
+select inline_0('iCalendar','ics','-- dummy --','text/calendar') from dual;
+
+drop function inline_0;
Index: openacs-4/packages/acs-content-repository/sql/postgresql/content-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/sql/postgresql/content-create.sql,v
diff -u -N -r1.63.2.5 -r1.63.2.6
--- openacs-4/packages/acs-content-repository/sql/postgresql/content-create.sql 16 May 2016 10:38:40 -0000 1.63.2.5
+++ openacs-4/packages/acs-content-repository/sql/postgresql/content-create.sql 26 May 2016 19:23:20 -0000 1.63.2.6
@@ -163,6 +163,7 @@
--------------------------------------------------------------
-- CONTENT ITEMS
--------------------------------------------------------------
+CREATE TYPE cr_item_storage_type_enum AS ENUM ('text', 'file', 'lob');
-- Define the cr_items table
Index: openacs-4/packages/acs-content-repository/sql/postgresql/content-template.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/sql/postgresql/content-template.sql,v
diff -u -N -r1.26 -r1.26.2.1
--- openacs-4/packages/acs-content-repository/sql/postgresql/content-template.sql 27 Oct 2014 16:39:07 -0000 1.26
+++ openacs-4/packages/acs-content-repository/sql/postgresql/content-template.sql 26 May 2016 19:23:20 -0000 1.26.2.1
@@ -106,13 +106,18 @@
new__creation_ip,
'content_item',
'content_template',
- null,
- null,
+ null, -- title
+ null, -- description
'text/plain',
- null,
- null,
- 'text'
- );
+ null, -- nls_language
+ null, -- text
+ null, -- data
+ null, -- relation_tag
+ 'f', -- is_live
+ 'text', -- storage_type
+ null, -- package_id
+ 't' -- with_child_rels
+ );
insert into cr_templates (
template_id
Index: openacs-4/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.9.1d15-5.9.1d16.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.9.1d15-5.9.1d16.sql,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.9.1d15-5.9.1d16.sql 26 May 2016 19:23:20 -0000 1.1.2.1
@@ -0,0 +1,36 @@
+--
+-- Update mime_type to official content type as registered by IANA.
+-- The changes have to be performed in a transaction, therefore the inline function.
+--
+create or replace function inline_0 (
+ p_label varchar,
+ p_extension varchar,
+ p_old_mime_type varchar,
+ p_new_mime_type varchar
+)
+returns integer as $$
+begin
+ SET CONSTRAINTS ALL DEFERRED;
+ delete from cr_extension_mime_type_map where mime_type = p_old_mime_type;
+
+ insert into cr_mime_types(label, mime_type, file_extension)
+ select p_label, p_new_mime_type, p_extension from dual
+ where not exists (select 1 from cr_mime_types where mime_type = p_new_mime_type);
+
+ update cr_content_mime_type_map set mime_type = p_new_mime_type where mime_type = p_old_mime_type;
+ update cr_revisions set mime_type = p_new_mime_type where mime_type = p_old_mime_type;
+
+ insert into cr_extension_mime_type_map (extension, mime_type)
+ select p_extension, p_new_mime_type from dual
+ where not exists (select 1 from cr_extension_mime_type_map where mime_type = p_new_mime_type);
+
+ delete from cr_mime_types where mime_type = p_old_mime_type;
+ return 0;
+end;
+$$ language 'plpgsql';
+
+select inline_0('Comma separated value','csv','application/csv','text/csv');
+select inline_0('VCard','vcf','application/vcard','text/vcard');
+select inline_0('iCalendar','ics','-- dummy --','text/calendar');
+
+drop function inline_0(varchar,varchar,varchar,varchar);
Index: openacs-4/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.9.1d16-5.9.1d17.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.9.1d16-5.9.1d17.sql,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.9.1d16-5.9.1d17.sql 26 May 2016 19:23:20 -0000 1.1.2.1
@@ -0,0 +1,70 @@
+--
+-- procedure content_template__new/6
+--
+CREATE OR REPLACE FUNCTION content_template__new(
+ new__name varchar,
+ new__parent_id integer, -- default null
+ new__template_id integer, -- default null
+ new__creation_date timestamptz, -- default now()
+ new__creation_user integer, -- default null
+ new__creation_ip varchar -- default null
+
+) RETURNS integer AS $$
+--
+-- content_template__new/6 maybe obsolete, when we define proper defaults for /8
+--
+DECLARE
+ v_template_id cr_templates.template_id%TYPE;
+ v_parent_id cr_items.parent_id%TYPE;
+BEGIN
+
+ if new__parent_id is null then
+ select c_root_folder_id into v_parent_id from content_template_globals;
+ else
+ v_parent_id := new__parent_id;
+ end if;
+
+ -- make sure we're allowed to create a template in this folder
+ if content_folder__is_folder(new__parent_id) = 't' and
+ content_folder__is_registered(new__parent_id,'content_template','f') = 'f' then
+
+ raise EXCEPTION '-20000: This folder does not allow templates to be created';
+
+ else
+ v_template_id := content_item__new (
+ new__name,
+ v_parent_id,
+ new__template_id,
+ null,
+ new__creation_date,
+ new__creation_user,
+ null,
+ new__creation_ip,
+ 'content_item',
+ 'content_template',
+ null, -- title
+ null, -- description
+ 'text/plain',
+ null, -- nls_language
+ null, -- text
+ null, -- data
+ null, -- relation_tag
+ 'f', -- is_live
+ 'text', -- storage_type
+ null, -- package_id
+ 't' -- with_child_rels
+ );
+
+ insert into cr_templates (
+ template_id
+ ) values (
+ v_template_id
+ );
+
+ return v_template_id;
+
+ end if;
+
+END;
+$$ LANGUAGE plpgsql;
+