Index: openacs-4/packages/bookshelf/bookshelf.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bookshelf/bookshelf.info,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/bookshelf/bookshelf.info 11 Dec 2003 21:39:58 -0000 1.2
+++ openacs-4/packages/bookshelf/bookshelf.info 25 Mar 2004 16:03:26 -0000 1.3
@@ -7,7 +7,7 @@
f
f
-
+
oracle
postgresql
@@ -16,8 +16,7 @@
Share your bookshelf with others.
Store commentary on books with an interface to amazon to retrieve thumbnails and other book data
-
-
+
Index: openacs-4/packages/bookshelf/sql/postgresql/bookshelf-books-package-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bookshelf/sql/postgresql/bookshelf-books-package-create.sql,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/bookshelf/sql/postgresql/bookshelf-books-package-create.sql 3 Oct 2002 12:17:56 -0000 1.2
+++ openacs-4/packages/bookshelf/sql/postgresql/bookshelf-books-package-create.sql 25 Mar 2004 16:03:26 -0000 1.3
@@ -9,7 +9,7 @@
select define_function_args ('bookshelf_book__new', 'book_id,object_type;bookshelf_book,package_id,isbn,book_author,book_title,main_entry,additional_entry,excerpt,publish_status,read_status,creation_date,creation_user,creation_ip,context_id');
-create function bookshelf_book__new (
+create or replace function bookshelf_book__new (
integer, -- book_id
varchar, -- object_type
integer, -- package_id
@@ -59,7 +59,10 @@
v_creation_date,
p_creation_user,
p_creation_ip,
- coalesce(p_context_id, p_package_id)
+ coalesce(p_context_id, p_package_id),
+ ''t'',
+ p_book_title,
+ p_package_id
);
select coalesce(max(book_no),0) + 1
@@ -84,7 +87,7 @@
select define_function_args ('bookshelf_book__delete', 'message_id');
-create function bookshelf_book__delete (integer)
+create or replace function bookshelf_book__delete (integer)
returns integer as '
declare
p_book_id alias for $1;
@@ -100,7 +103,7 @@
select define_function_args('bookshelf_book__name','book_id');
-create function bookshelf_book__name (integer)
+create or replace function bookshelf_book__name (integer)
returns varchar as '
declare
p_book_id alias for $1;
@@ -112,7 +115,7 @@
-create function bookshelf_book__read_status_sort_order(
+create or replace function bookshelf_book__read_status_sort_order(
varchar -- read_status
) returns integer
as '
@@ -134,7 +137,7 @@
-create function bookshelf_book__read_status_pretty(
+create or replace function bookshelf_book__read_status_pretty(
varchar -- read_status
) returns varchar
as '
@@ -155,7 +158,7 @@
-create function bookshelf_book__pub_status_sort_order(
+create or replace function bookshelf_book__pub_status_sort_order(
varchar -- publish_status
) returns integer
as '
@@ -176,7 +179,7 @@
-create function bookshelf_book__pub_status_pretty(
+create or replace function bookshelf_book__pub_status_pretty(
varchar -- publish_status
) returns varchar
as '
Index: openacs-4/packages/bookshelf/sql/postgresql/upgrade/upgrade-0.2-0.3.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bookshelf/sql/postgresql/upgrade/upgrade-0.2-0.3.sql,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/bookshelf/sql/postgresql/upgrade/upgrade-0.2-0.3.sql 25 Mar 2004 16:03:26 -0000 1.1
@@ -0,0 +1,73 @@
+-- propigate package_id, title to acs_objects
+create or replace function bookshelf_book__new (
+ integer, -- book_id
+ varchar, -- object_type
+ integer, -- package_id
+ varchar, -- isbn
+ text, -- book_author
+ text, -- book_title
+ text, -- main_entry
+ text, -- additional_entry
+ text, -- excerpt
+ varchar, -- publish_status
+ varchar, -- read_status
+ date, -- creation_date
+ integer, -- creation_user
+ varchar, -- creation_ip
+ integer -- context_id
+)
+returns integer as '
+declare
+ p_book_id alias for $1;
+ p_object_type alias for $2;
+ p_package_id alias for $3;
+ p_isbn alias for $4;
+ p_book_author alias for $5;
+ p_book_title alias for $6;
+ p_main_entry alias for $7;
+ p_additional_entry alias for $8;
+ p_excerpt alias for $9;
+ p_publish_status alias for $10;
+ p_read_status alias for $11;
+ p_creation_date alias for $12;
+ p_creation_user alias for $13;
+ p_creation_ip alias for $14;
+ p_context_id alias for $15;
+ v_book_id integer;
+ v_book_no integer;
+ v_creation_date date;
+begin
+ if p_creation_date is null then
+ v_creation_date := now();
+ else
+ v_creation_date := p_creation_date;
+ end if;
+
+ v_book_id := acs_object__new(
+ p_book_id,
+ p_object_type,
+ v_creation_date,
+ p_creation_user,
+ p_creation_ip,
+ coalesce(p_context_id, p_package_id),
+ ''t'',
+ p_book_title,
+ p_package_id
+ );
+
+ select coalesce(max(book_no),0) + 1
+ into v_book_no
+ from bookshelf_books
+ where package_id = p_package_id;
+
+ insert into bookshelf_books
+ (book_id, book_no, isbn, book_author, book_title, main_entry, additional_entry, excerpt,
+ publish_status, read_status, package_id)
+ values
+ (v_book_id, v_book_no, p_isbn, p_book_author, p_book_title, p_main_entry, p_additional_entry, p_excerpt,
+ p_publish_status, p_read_status, p_package_id);
+
+ return v_book_id;
+end;
+' language 'plpgsql';
+