Index: openacs-4/packages/edit-this-page/Changes =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/Changes,v diff -u -r1.2 -r1.2.4.1 --- openacs-4/packages/edit-this-page/Changes 1 Nov 2001 22:51:46 -0000 1.2 +++ openacs-4/packages/edit-this-page/Changes 26 Jan 2003 03:08:48 -0000 1.2.4.1 @@ -1,5 +1,13 @@ Edit This Page version history +25 January 2003 +-Oracle is broken. We will fix it later. +-Changed base content type to be etp_page_revision, all custom types should +subtype that. There is an upgrade script, please read the notes before +applying it. With this new types are automatically registered with a +search service contract. + + 30 October 2001 ETP code changed to support Oracle and OpenACS function style. No new functionallity has been added. Index: openacs-4/packages/edit-this-page/edit-this-page.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/edit-this-page.info,v diff -u -r1.4 -r1.4.4.1 --- openacs-4/packages/edit-this-page/edit-this-page.info 18 Nov 2001 18:57:58 -0000 1.4 +++ openacs-4/packages/edit-this-page/edit-this-page.info 26 Jan 2003 03:08:48 -0000 1.4.4.1 @@ -7,15 +7,15 @@ f f - + - oracle postgresql - Luke Pond + Dave Bauer + Luke Pond Jon Griffin An easy-to-use content management system. - Nothing Yet + Easy to use publishing system Index: openacs-4/packages/edit-this-page/sql/oracle/edit-this-page-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/sql/oracle/edit-this-page-create.sql,v diff -u -r1.5 -r1.5.4.1 --- openacs-4/packages/edit-this-page/sql/oracle/edit-this-page-create.sql 12 Feb 2002 00:02:13 -0000 1.5 +++ openacs-4/packages/edit-this-page/sql/oracle/edit-this-page-create.sql 26 Jan 2003 03:09:36 -0000 1.5.4.1 @@ -90,12 +90,11 @@ is v_item_id cr_items.item_id%TYPE; v_revision_id cr_revisions.revision_id%TYPE; - v_content_type acs_objects.object_type%TYPE; v_folder_id cr_folders.folder_id%TYPE; begin v_item_id := acs_object.new ( null, - 'content_item', + create_page.content_type, sysdate(), null, null, @@ -107,14 +106,17 @@ insert into cr_items (item_id, parent_id, name, content_type) values - (v_item_id, v_folder_id, name, v_content_type); + (v_item_id, v_folder_id, name, content_type); - -- would like to use content_type here, but since there''s - -- no table that corresponds to it, we get an error from - -- the dynamic sql in acs_object__delete. so just use content_revision. +-- due to a change in acs_object__delete we can reference the actual +-- object type we want +-- using this we can more easily search, but we will have to create a service +-- contract for each custom content type +-- we define a default etp_page_revision and service contract to go with it +-- make sure to subtype from etp_page_revision for any custom types +-- 2003-01-12 DaveB - v_content_type := 'content_revision'; - v_revision_id := acs_object.new(null, v_content_type); + v_revision_id := acs_object.new(null, content_type); insert into cr_revisions (revision_id, item_id, title, publish_date, mime_type) Index: openacs-4/packages/edit-this-page/sql/postgresql/edit-this-page-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/sql/postgresql/edit-this-page-create.sql,v diff -u -r1.7.4.2 -r1.7.4.3 --- openacs-4/packages/edit-this-page/sql/postgresql/edit-this-page-create.sql 21 Jan 2003 13:49:47 -0000 1.7.4.2 +++ openacs-4/packages/edit-this-page/sql/postgresql/edit-this-page-create.sql 26 Jan 2003 03:10:00 -0000 1.7.4.3 @@ -39,26 +39,28 @@ p_content_type alias for $4; -- default null -> use content_revision v_item_id integer; v_revision_id integer; - v_content_type varchar; v_folder_id integer; begin v_item_id := acs_object__new(null, ''content_item'', now(), null, null, p_package_id); v_folder_id := etp__get_folder_id(p_package_id); +-- due to a change in acs_object__delete we can reference the actual +-- object type we want +-- using this we can more easily search, but we will have to create a service +-- contract for each custom content type +-- we define a default etp_page_revision and service contract to go with it +-- make sure to subtype from etp_page_revision for any custom types +-- 2003-01-12 DaveB + insert into cr_items ( item_id, parent_id, name, content_type ) values ( - v_item_id, v_folder_id, p_name, v_content_type + v_item_id, v_folder_id, p_name, p_content_type ); - -- would like to use p_content_type here, but since there''s - -- no table that corresponds to it, we get an error from - -- the dynamic sql in acs_object__delete. so just use content_revision. + v_revision_id := acs_object__new(null, p_content_type, now(), null, null, v_item_id); - v_content_type := ''content_revision''; - v_revision_id := acs_object__new(null, v_content_type, now(), null, null, v_item_id); - insert into cr_revisions (revision_id, item_id, title, publish_date, mime_type) values (v_revision_id, v_item_id, p_title, now(), ''text/html''); @@ -448,3 +450,17 @@ select inline_1 (); drop function inline_1 (); + +-- create a default content_type etp_page_revision +-- DaveB +-- this references a non-existant table +-- which I might have to change... +select content_type__create_type ( + 'etp_page_revision', -- content_type + 'content_revision', -- supertype + 'ETP managed page', -- pretty_name + 'ETP managed pages', -- pretty_plural + 'etp_page_revisions', -- table_name + 'etp_page_revision_id', -- id_column + 'content_revision__revision_name' -- name_method +); Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/edit-this-page/sql/postgresql/edit-this-page-sc-create.sql'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/edit-this-page/sql/postgresql/upgrade/upgrade-1.1d-1.2b.sql'. Fisheye: No comparison available. Pass `N' to diff? Index: openacs-4/packages/edit-this-page/tcl/etp-init.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/tcl/etp-init.tcl,v diff -u -r1.4 -r1.4.2.1 --- openacs-4/packages/edit-this-page/tcl/etp-init.tcl 10 Sep 2002 22:22:52 -0000 1.4 +++ openacs-4/packages/edit-this-page/tcl/etp-init.tcl 26 Jan 2003 03:10:34 -0000 1.4.2.1 @@ -30,14 +30,14 @@ etp::define_application default { index_template packages/edit-this-page/templates/article-index - index_content_type content_revision + index_content_type etp_page_revision index_object_name "subtopic" index_title_attr_name "Title" index_description_attr_name "Description" index_content_attr_name "Content" content_template packages/edit-this-page/templates/article-content - content_content_type content_revision + content_content_type etp_page_revision content_object_name "page" content_title_attr_name "Title" content_description_attr_name "Description" Index: openacs-4/packages/edit-this-page/tcl/etp-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/tcl/etp-procs-postgresql.xql,v diff -u -r1.9 -r1.9.4.1 --- openacs-4/packages/edit-this-page/tcl/etp-procs-postgresql.xql 10 Dec 2001 19:02:02 -0000 1.9 +++ openacs-4/packages/edit-this-page/tcl/etp-procs-postgresql.xql 26 Jan 2003 03:10:34 -0000 1.9.4.1 @@ -2,13 +2,19 @@ postgresql7.1 + + +select site_node__url(node_id) as package_url from site_nodes where object_id = (select package_id from cr_folders where folder_id= (select parent_id from cr_items where latest_revision = :object_id)) + + + select acs_object_type__create_type ( :content_type, :pretty_name, :pretty_plural, - 'content_revision', + 'etp_page_revision', :content_type, :content_type, null, Index: openacs-4/packages/edit-this-page/tcl/etp-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/tcl/etp-procs.tcl,v diff -u -r1.8 -r1.8.2.1 --- openacs-4/packages/edit-this-page/tcl/etp-procs.tcl 10 Sep 2002 22:22:52 -0000 1.8 +++ openacs-4/packages/edit-this-page/tcl/etp-procs.tcl 26 Jan 2003 03:10:34 -0000 1.8.2.1 @@ -80,8 +80,12 @@ if {![info exists content_types]} { array set content_types [list] } - + + # probably should use content_type functions instead + # DaveB + # anyway we make sure new types are children of etp_page_revision # ensure an entry in acs_object_types + if { ![db_0or1row object_type_exists ""] } { db_exec_plsql object_type_create "" } @@ -111,6 +115,10 @@ } set content_types($content_type) $attribute_metadata_with_ids + # add service contract implementations for content_type if necessary + # creates search service contract implementation if it doesn't + # already exist + etp::create_search_impl -content_type $content_type } @@ -337,7 +345,7 @@ } { set extended_attributes "" if { ![empty_string_p $content_type] && - ![string equal $content_type "content_revision"] } { + ![string equal $content_type "etp_page_revision"] } { variable content_types set attributes $content_types($content_type) Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/edit-this-page/tcl/etp-sc-procs-postgresql.xql'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/edit-this-page/tcl/etp-sc-procs.tcl'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/edit-this-page/tcl/etp-sc-procs.xql'. Fisheye: No comparison available. Pass `N' to diff? Index: openacs-4/packages/edit-this-page/www/etp-setup-2-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/www/etp-setup-2-postgresql.xql,v diff -u -r1.2 -r1.2.4.1 --- openacs-4/packages/edit-this-page/www/etp-setup-2-postgresql.xql 2 Nov 2001 06:16:37 -0000 1.2 +++ openacs-4/packages/edit-this-page/www/etp-setup-2-postgresql.xql 26 Jan 2003 03:11:00 -0000 1.2.4.1 @@ -4,7 +4,7 @@ -select content_folder__new(:name, :title, '', etp__get_folder_id(:parent_package_id)); +select content_folder__new(:name, :title, '', coalesce(etp__get_folder_id(:parent_package_id), NULL)); Index: openacs-4/packages/edit-this-page/www/index.vuh =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/edit-this-page/www/index.vuh,v diff -u -r1.3 -r1.3.2.1 --- openacs-4/packages/edit-this-page/www/index.vuh 24 Sep 2002 00:14:44 -0000 1.3 +++ openacs-4/packages/edit-this-page/www/index.vuh 26 Jan 2003 03:11:00 -0000 1.3.2.1 @@ -18,7 +18,7 @@ # get the portion of the url following the package directory set name [ad_conn path_info] -ns_log Notice "index.vuh: request for $name" +#ns_log Notice "index.vuh: request for $name" if { [string index $name end] == "/" } { # it's in a subdirectory, and we know there's no @@ -45,7 +45,7 @@ ns_set put [ns_getform] "name" $name } -ns_log Notice "Edit This Page index.vuh: serving $path" +#ns_log Notice "Edit This Page index.vuh: serving $path" rp_internal_redirect $path