Index: openacs-4/packages/lars-blogger/lars-blogger.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/lars-blogger.info,v diff -u -N -r1.12 -r1.13 --- openacs-4/packages/lars-blogger/lars-blogger.info 16 Jan 2003 13:50:19 -0000 1.12 +++ openacs-4/packages/lars-blogger/lars-blogger.info 27 Jan 2003 16:17:43 -0000 1.13 @@ -6,8 +6,8 @@ Lars Bloggers f f - - + + oracle postgresql @@ -18,6 +18,7 @@ Collaboraid Manages multiple web logs for your site. Just mount multiple instances, and you can do all the blogging you want. + @@ -33,6 +34,7 @@ + @@ -44,8 +46,10 @@ + + + - @@ -70,12 +74,12 @@ - - + + @@ -85,9 +89,10 @@ + + - @@ -100,16 +105,18 @@ + + - - - + - - + + + + Index: openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-create.sql,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-create.sql 14 Sep 2002 21:43:33 -0000 1.2 +++ openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-create.sql 27 Jan 2003 16:17:55 -0000 1.3 @@ -34,6 +34,10 @@ references apm_packages(package_id), title varchar(500), content clob, + content_format varchar(50) + default 'text/html' + constraint pinds_blog_entr_cnt_format_nn + not null, entry_date date, posted_date date, draft_p char(1) default 'f' Index: openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-package-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-package-create.sql,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-package-create.sql 19 Aug 2002 21:52:59 -0000 1.1 +++ openacs-4/packages/lars-blogger/sql/oracle/lars-blogger-package-create.sql 27 Jan 2003 16:17:55 -0000 1.2 @@ -15,6 +15,7 @@ package_id in pinds_blog_entries.package_id%TYPE, title in pinds_blog_entries.title%TYPE default null, content in varchar default null, + content_format in varchar default 'text/html', entry_date in pinds_blog_entries.entry_date%TYPE default null, draft_p in pinds_blog_entries.draft_p%TYPE default 'f', creation_user in acs_objects.creation_user%TYPE default null, @@ -41,6 +42,7 @@ package_id in pinds_blog_entries.package_id%TYPE, title in pinds_blog_entries.title%TYPE default null, content in varchar default null, + content_format in varchar default 'text/html', entry_date in pinds_blog_entries.entry_date%TYPE default null, draft_p in pinds_blog_entries.draft_p%TYPE default 'f', creation_user in acs_objects.creation_user%TYPE default null, @@ -64,6 +66,7 @@ package_id, title, content, + content_format, entry_date, posted_date, draft_p, @@ -73,6 +76,7 @@ pinds_blog_entry.new.package_id, pinds_blog_entry.new.title, pinds_blog_entry.new.content, + pinds_blog_entry.new.content_format, pinds_blog_entry.new.entry_date, sysdate, pinds_blog_entry.new.draft_p, Index: openacs-4/packages/lars-blogger/sql/oracle/upgrade/upgrade-0.8.2-0.8.3.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/sql/oracle/upgrade/upgrade-0.8.2-0.8.3.sql,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/lars-blogger/sql/oracle/upgrade/upgrade-0.8.2-0.8.3.sql 27 Jan 2003 16:18:08 -0000 1.1 @@ -0,0 +1,129 @@ +-- +-- Upgrade script +-- +-- Adds format column +-- +-- @author Lars Pind (lars@pinds.com) +-- @creation-date 2003-01-27 +-- + +alter table pinds_blog_entries add content_format varchar(50); + +update pinds_blog_entries set content_format = 'text/html'; + +create or replace package pinds_blog_entry +as + + function new ( + entry_id in pinds_blog_entries.entry_id%TYPE default null, + package_id in pinds_blog_entries.package_id%TYPE, + title in pinds_blog_entries.title%TYPE default null, + content in varchar default null, + content_format in varchar default 'text/html', + entry_date in pinds_blog_entries.entry_date%TYPE default null, + draft_p in pinds_blog_entries.draft_p%TYPE default 'f', + creation_user in acs_objects.creation_user%TYPE default null, + creation_ip in acs_objects.creation_ip%TYPE default null + ) return pinds_blog_entries.entry_id%TYPE; + + procedure delete ( + entry_id in pinds_blog_entries.entry_id%TYPE + ); + + function title ( + entry_id in pinds_blog_entries.entry_id%TYPE + ) return pinds_blog_entries.title%TYPE; + +end pinds_blog_entry; +/ +show errors + +create or replace package body pinds_blog_entry +as + + function new ( + entry_id in pinds_blog_entries.entry_id%TYPE default null, + package_id in pinds_blog_entries.package_id%TYPE, + title in pinds_blog_entries.title%TYPE default null, + content in varchar default null, + content_format in varchar default 'text/html', + entry_date in pinds_blog_entries.entry_date%TYPE default null, + draft_p in pinds_blog_entries.draft_p%TYPE default 'f', + creation_user in acs_objects.creation_user%TYPE default null, + creation_ip in acs_objects.creation_ip%TYPE default null + ) return pinds_blog_entries.entry_id%TYPE + is + v_entry_id pinds_blog_entries.entry_id%TYPE; + begin + + v_entry_id := acs_object.new( + object_id => pinds_blog_entry.new.entry_id, + object_type => 'pinds_blog_entry', + creation_date => sysdate, + creation_user => pinds_blog_entry.new.creation_user, + creation_ip => pinds_blog_entry.new.creation_ip, + context_id => pinds_blog_entry.new.package_id + ); + + insert into pinds_blog_entries ( + entry_id, + package_id, + title, + content, + content_format, + entry_date, + posted_date, + draft_p, + deleted_p + ) values ( + v_entry_id, + pinds_blog_entry.new.package_id, + pinds_blog_entry.new.title, + pinds_blog_entry.new.content, + pinds_blog_entry.new.content_format, + pinds_blog_entry.new.entry_date, + sysdate, + pinds_blog_entry.new.draft_p, + 'f' + ); + + return v_entry_id; + + end new; + + procedure delete ( + entry_id in pinds_blog_entries.entry_id%TYPE + ) + is + begin + + delete + from pinds_blog_entries + where entry_id = pinds_blog_entry.delete.entry_id; + + acs_object.delete(pinds_blog_entry.delete.entry_id); + + end delete; + + function title ( + entry_id in pinds_blog_entries.entry_id%TYPE + ) return pinds_blog_entries.title%TYPE + is + v_title pinds_blog_entries.title%TYPE; + begin + + select title + into v_title + from pinds_blog_entries + where entry_id = pinds_blog_entry.title.entry_id; + + return v_title; + + exception when no_data_found then + return ''; + + end title; + +end pinds_blog_entry; +/ +show errors Index: openacs-4/packages/lars-blogger/sql/postgresql/lars-blogger-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/sql/postgresql/lars-blogger-create.sql,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/lars-blogger/sql/postgresql/lars-blogger-create.sql 21 Dec 2002 22:27:58 -0000 1.4 +++ openacs-4/packages/lars-blogger/sql/postgresql/lars-blogger-create.sql 27 Jan 2003 16:18:25 -0000 1.5 @@ -30,6 +30,10 @@ references apm_packages(package_id), title varchar(500), content varchar(32000), + content_format varchar(50) + default 'text/html' + constraint pinds_blog_entr_cnt_format_nn + not null, entry_date timestamp, posted_date timestamp, draft_p char(1) default 'f' @@ -42,7 +46,7 @@ create index pinds_blog_entry_pck_entr_idx on pinds_blog_entries (package_id, entry_date); -create function pinds_blog_entry__title (integer) +create or replace function pinds_blog_entry__title (integer) returns varchar as ' declare p_entry_id alias for $1; @@ -56,25 +60,27 @@ ' language 'plpgsql'; -create function pinds_blog_entry__new ( +create or replace function pinds_blog_entry__new ( integer, -- entry_id integer, -- package_id varchar, -- title varchar, -- content - timestamp, -- entry_date + varchar, -- content_format + timestamp, -- entry_date char, -- draft_p integer, -- creation_user varchar -- creation_ip ) returns integer as ' declare - p_entry_id alias for $1; + p_entry_id alias for $1; p_package_id alias for $2; - p_title alias for $3; - p_content alias for $4; - p_entry_date alias for $5; - p_draft_p alias for $6; - p_creation_user alias for $7; - p_creation_ip alias for $8; + p_title alias for $3; + p_content alias for $4; + p_content_format alias for $5; + p_entry_date alias for $6; + p_draft_p alias for $7; + p_creation_user alias for $8; + p_creation_ip alias for $9; v_entry_id integer; begin v_entry_id := acs_object__new ( @@ -91,6 +97,7 @@ package_id, title, content, + content_format, entry_date, posted_date, draft_p, @@ -100,6 +107,7 @@ p_package_id, p_title, p_content, + p_content_format, p_entry_date, current_timestamp, p_draft_p, @@ -111,7 +119,7 @@ ' language 'plpgsql'; -create function pinds_blog_entry__delete (integer) +create or replace function pinds_blog_entry__delete (integer) returns integer as ' declare p_entry_id alias for $1; Index: openacs-4/packages/lars-blogger/sql/postgresql/upgrade/upgrade-0.8.2-0.8.3.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/sql/postgresql/upgrade/upgrade-0.8.2-0.8.3.sql,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/lars-blogger/sql/postgresql/upgrade/upgrade-0.8.2-0.8.3.sql 27 Jan 2003 16:18:56 -0000 1.1 @@ -0,0 +1,71 @@ +-- +-- Upgrade script +-- +-- Adds format column +-- +-- @author Lars Pind (lars@pinds.com) +-- @creation-date 2003-01-27 +-- + +alter table pinds_blog_entries add content_format varchar(50); + +update pinds_blog_entries set content_format = 'text/html'; + +create or replace function pinds_blog_entry__new ( + integer, -- entry_id + integer, -- package_id + varchar, -- title + varchar, -- content + varchar, -- content_format + timestamp, -- entry_date + char, -- draft_p + integer, -- creation_user + varchar -- creation_ip +) returns integer as ' +declare + p_entry_id alias for $1; + p_package_id alias for $2; + p_title alias for $3; + p_content alias for $4; + p_content_format alias for $5; + p_entry_date alias for $6; + p_draft_p alias for $7; + p_creation_user alias for $8; + p_creation_ip alias for $9; + v_entry_id integer; +begin + v_entry_id := acs_object__new ( + p_entry_id, + ''pinds_blog_entry'', + current_timestamp, + p_creation_user, + p_creation_ip, + p_package_id + ); + + insert into pinds_blog_entries ( + entry_id, + package_id, + title, + content, + content_format, + entry_date, + posted_date, + draft_p, + deleted_p + ) values ( + v_entry_id, + p_package_id, + p_title, + p_content, + p_content_format, + p_entry_date, + current_timestamp, + p_draft_p, + ''f'' + ); + + return v_entry_id; +end; +' language 'plpgsql'; + Index: openacs-4/packages/lars-blogger/tcl/entry-procs-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/entry-procs-oracle.xql,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/lars-blogger/tcl/entry-procs-oracle.xql 27 Jan 2003 16:19:15 -0000 1.1 @@ -0,0 +1,33 @@ + + + + oracle8.1.6 + + + + select entry_id, + to_char(entry_date, 'fmDayfm, Month fmDDfm, YYYY') as entry_date_pretty, + to_char(entry_date, 'YYYY/MM/DD/') as entry_archive_url, + entry_date, + title, + content, + content_format, + draft_p, + 'f' as new_date_p, + p.first_names as poster_first_names, + p.last_name as poster_last_name, + to_char(posted_date , 'HH24:MI') as posted_time_pretty, + (select count(gc.comment_id) + from general_comments gc, cr_revisions cr + where gc.object_id = entry_id + and content_item.get_live_revision(gc.comment_id) = cr.revision_id) as num_comments + from pinds_blog_entries e, + acs_objects o, + persons p + where e.entry_id = :entry_id + and o.object_id = e.entry_id + and p.person_id = o.creation_user + + + + Index: openacs-4/packages/lars-blogger/tcl/entry-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/entry-procs-postgresql.xql,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/lars-blogger/tcl/entry-procs-postgresql.xql 27 Jan 2003 16:19:15 -0000 1.1 @@ -0,0 +1,32 @@ + + + + postgresql7.1 + + + + select b.entry_id, + b.title, + b.content, + b.content_format, + b.draft_p, + to_char(b.entry_date, 'YYYY-MM-DD') as entry_date, + to_char(b.entry_date, 'fmDayfm, Month fmDDfm, YYYY') as entry_date_pretty, + p.first_names as poster_first_names, + p.last_name as poster_last_name, + to_char(b.posted_date , 'HH24:MI') as posted_time_pretty, + b.package_id, + (select count(gc.comment_id) + from general_comments gc, cr_revisions cr + where gc.object_id = entry_id + and content_item__get_live_revision(gc.comment_id) = cr.revision_id) as num_comments + from pinds_blog_entries b, + acs_objects o, + persons p + where b.entry_id = :entry_id + and o.object_id = b.entry_id + and p.person_id = o.creation_user + + + + Index: openacs-4/packages/lars-blogger/tcl/entry-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/entry-procs.tcl,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/lars-blogger/tcl/entry-procs.tcl 14 Sep 2002 21:43:36 -0000 1.1 +++ openacs-4/packages/lars-blogger/tcl/entry-procs.tcl 27 Jan 2003 16:19:15 -0000 1.2 @@ -3,44 +3,42 @@ } -namespace eval lars_blogger::entry { +namespace eval lars_blogger::entry {} - ad_proc -public get { - -entry_id:required - -array:required - } { - # Select the info into the upvar'ed Tcl Array - upvar $array row +ad_proc -public lars_blogger::entry::get { + -entry_id:required + -array:required +} { + # Select the info into the upvar'ed Tcl Array + upvar $array row - db_1row select_entry { *SQL* } -column_array row - } + db_1row select_entry { *SQL* } -column_array row +} - ad_proc -public do_notifications { - {-entry_id:required} - } { - # Select all the important information - get -entry_id $entry_id -array blog +ad_proc -public do_notifications { + {-entry_id:required} +} { + # Select all the important information + get -entry_id $entry_id -array blog - set blog_url "[ad_url][lars_blog_public_package_url -package_id $blog(package_id)]" - set entry_url "[ad_url][lars_blog_public_package_url -package_id $blog(package_id)]one-entry?[export_vars { entry_id }]" - set blog_name [lars_blog_name -package_id $blog(package_id)] + set blog_url "[ad_url][lars_blog_public_package_url -package_id $blog(package_id)]" + set entry_url "[ad_url][lars_blog_public_package_url -package_id $blog(package_id)]one-entry?[export_vars { entry_id }]" + set blog_name [lars_blog_name -package_id $blog(package_id)] - set new_content "" - append new_content "$blog(poster_first_names) $blog(poster_last_name) posted to $blog_name at $blog(posted_time_pretty) on $blog(entry_date_pretty):\n\n" - append new_content "$blog(title)\n\n" - append new_content "[ad_convert_to_text -- [ns_adp_parse -string $blog(content)]]\n\n" - append new_content "This entry: $entry_url\n\n" - append new_content "$blog_name: $blog_url\n" + set new_content "" + append new_content "$blog(poster_first_names) $blog(poster_last_name) posted to $blog_name at $blog(posted_time_pretty) on $blog(entry_date_pretty):\n\n" + append new_content "$blog(title)\n\n" + append new_content "[ad_convert_to_text -- [ns_adp_parse -string $blog(content)]]\n\n" + append new_content "This entry: $entry_url\n\n" + append new_content "$blog_name: $blog_url\n" - # Do the notification for the forum - notification::new \ - -type_id [notification::type::get_type_id \ - -short_name lars_blogger_notif] \ - -object_id $blog(package_id) \ - -response_id $blog(entry_id) \ - -notif_subject $blog(title) \ - -notif_text $new_content - } - -} \ No newline at end of file + # Do the notification for the forum + notification::new \ + -type_id [notification::type::get_type_id \ + -short_name lars_blogger_notif] \ + -object_id $blog(package_id) \ + -response_id $blog(entry_id) \ + -notif_subject $blog(title) \ + -notif_text $new_content +} Index: openacs-4/packages/lars-blogger/tcl/entry-procs.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/Attic/entry-procs.xql,v diff -u -N --- openacs-4/packages/lars-blogger/tcl/entry-procs.xql 14 Sep 2002 21:43:36 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,30 +0,0 @@ - - - - - - - select b.entry_id, - b.title, - b.content, - b.draft_p, - to_char(b.entry_date, 'YYYY-MM-DD') as entry_date, - to_char(b.entry_date, 'fmDayfm, Month fmDDfm, YYYY') as entry_date_pretty, - p.first_names as poster_first_names, - p.last_name as poster_last_name, - to_char(b.posted_date , 'HH24:MI') as posted_time_pretty, - b.package_id, - (select count(gc.comment_id) - from general_comments gc, cr_revisions cr - where gc.object_id = entry_id - and content_item__get_live_revision(gc.comment_id) = cr.revision_id) as num_comments - from pinds_blog_entries b, - acs_objects o, - persons p - where b.entry_id = :entry_id - and o.object_id = b.entry_id - and p.person_id = o.creation_user - - - - Index: openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-oracle.xql,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-oracle.xql 14 Sep 2002 16:40:33 -0000 1.2 +++ openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-oracle.xql 27 Jan 2003 16:19:15 -0000 1.3 @@ -11,6 +11,7 @@ package_id => :package_id, title => :title, content => :content, + content_format => :content_format, entry_date => to_date(:entry_date, 'YYYY-MM-DD'), draft_p => :draft_p, creation_user => :creation_user, Index: openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-postgresql.xql,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-postgresql.xql 14 Sep 2002 16:40:33 -0000 1.2 +++ openacs-4/packages/lars-blogger/tcl/lars-blogger-procs-postgresql.xql 27 Jan 2003 16:19:15 -0000 1.3 @@ -10,6 +10,7 @@ :package_id, :title, :content, + :content_format, to_date(:entry_date, 'YYYY-MM-DD'), :draft_p, :creation_user, Index: openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.tcl,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.tcl 16 Sep 2002 09:25:49 -0000 1.7 +++ openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.tcl 27 Jan 2003 16:19:15 -0000 1.8 @@ -10,6 +10,7 @@ {-package_id:required} {-title:required} {-content:required} + {-content_format:required} {-entry_date:required} {-draft_p:required} } { Index: openacs-4/packages/lars-blogger/www/blog-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/blog-oracle.xql,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/lars-blogger/www/blog-oracle.xql 12 Sep 2002 15:09:26 -0000 1.2 +++ openacs-4/packages/lars-blogger/www/blog-oracle.xql 27 Jan 2003 16:19:27 -0000 1.3 @@ -20,26 +20,18 @@ select entry_id, to_char(entry_date, 'fmDayfm, Month fmDDfm, YYYY') as entry_date_pretty, to_char(entry_date, 'YYYY/MM/DD/') as entry_archive_url, - entry_date, + to_char(entry_date, 'YYYY-MM-DD') as entry_date, title, content, + content_format, draft_p, - 'f' as new_date_p, p.first_names as poster_first_names, p.last_name as poster_last_name, to_char(posted_date , 'HH24:MI') as posted_time_pretty, (select count(gc.comment_id) from general_comments gc, cr_revisions cr where gc.object_id = entry_id - and content_item.get_live_revision(gc.comment_id) = cr.revision_id) as num_comments, - 0 as row_number, - '' as edit_url, - '' as delete_url, - '' as publish_url, - '' as revoke_url, - '' as comments_view_url, - '' as comment_add_url, - '' as google_url + and content_item.get_live_revision(gc.comment_id) = cr.revision_id) as num_comments from pinds_blog_entries e, acs_objects o, persons p Index: openacs-4/packages/lars-blogger/www/blog-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/blog-postgresql.xql,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/lars-blogger/www/blog-postgresql.xql 30 Nov 2002 17:37:27 -0000 1.4 +++ openacs-4/packages/lars-blogger/www/blog-postgresql.xql 27 Jan 2003 16:19:27 -0000 1.5 @@ -23,6 +23,7 @@ to_char(entry_date, 'YYYY-MM-DD') as entry_date, title, content, + content_format, draft_p, p.first_names as poster_first_names, p.last_name as poster_last_name, Index: openacs-4/packages/lars-blogger/www/calendar-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/calendar-oracle.xql,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/lars-blogger/www/calendar-oracle.xql 27 Jan 2003 16:19:27 -0000 1.1 @@ -0,0 +1,16 @@ + + + + oracle8.1.6 + + + + select to_char(entry_date, 'J') as entry_date_julian + from pinds_blog_entries + where package_id = :package_id + and draft_p = 'f' + and deleted_p = 'f' + group by to_char(entry_date, 'J') + + + Index: openacs-4/packages/lars-blogger/www/calendar-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/calendar-postgresql.xql,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/lars-blogger/www/calendar-postgresql.xql 27 Jan 2003 16:19:27 -0000 1.1 @@ -0,0 +1,16 @@ + + + + postgresql7.1 + + + + select to_char(entry_date, 'J') as entry_date_julian + from pinds_blog_entries + where package_id = :package_id + and draft_p = 'f' + and deleted_p = 'f' + group by entry_date_julian + + + Index: openacs-4/packages/lars-blogger/www/calendar.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/Attic/calendar.xql,v diff -u -N --- openacs-4/packages/lars-blogger/www/calendar.xql 14 Sep 2002 18:05:12 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,14 +0,0 @@ - - - - - - select to_char(entry_date, 'J') as entry_date_julian - from pinds_blog_entries - where package_id = :package_id - and draft_p = 'f' - and deleted_p = 'f' - group by entry_date_julian - - - Index: openacs-4/packages/lars-blogger/www/entry-chunk.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/entry-chunk.tcl,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/lars-blogger/www/entry-chunk.tcl 4 Jan 2003 09:36:48 -0000 1.4 +++ openacs-4/packages/lars-blogger/www/entry-chunk.tcl 27 Jan 2003 16:19:27 -0000 1.5 @@ -26,8 +26,12 @@ set show_poster_p [ad_parameter "ShowPosterP" "" "1"] set blog(title) [ad_quotehtml $blog(title)] -set blog(content) [ns_adp_parse -string $blog(content)] +# LARS: +# Not sure we should do the ns_adp_parse thing here, but heck, why not +# It should be safe, given the security checks +set blog(content) [ns_adp_parse -string [ad_html_text_convert -from $blog(content_format) -to "text/html" $blog(content)]] + set entry_id $blog(entry_id) set blog(edit_url) "${package_url}admin/entry-edit?[export_vars { entry_id return_url }]" Index: openacs-4/packages/lars-blogger/www/admin/entry-edit.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/admin/Attic/entry-edit.tcl,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/lars-blogger/www/admin/entry-edit.tcl 2 Jan 2003 16:41:22 -0000 1.8 +++ openacs-4/packages/lars-blogger/www/admin/entry-edit.tcl 27 Jan 2003 16:19:43 -0000 1.9 @@ -1,28 +1,18 @@ ad_page_contract {} { {entry_id:integer ""} {return_url ""} - cancel:optional } -properties { context_bar today_html } -if { [info exists cancel] } { - catch { set return_url [element get_value entry return_url] } - if { [empty_string_p $return_url] } { - set return_url "." - } - ad_returnredirect $return_url - ad_script_abort -} - set today [db_string today {}] set today_html [ad_quotehtml $today] -form create entry +form create entry -cancel_url [ad_decode $return_url "" "../" $return_url] element create entry title -label "Title" -datatype text -html { size 50 } -element create entry content -label "Content" -datatype text -widget textarea -html { cols 80 rows 20 } +element create entry content -label "Content" -datatype richtext -widget richtext -html { cols 80 rows 20 } element create entry entry_date -label "Entry date" -datatype text \ -help_text "If you set this to something other than today's date, you must use this form to publish your entry, otherwise the entry date will be set to the date you publish the item." \ -after_html {(Set to today)} @@ -41,10 +31,12 @@ } else { db_1row entry {} - element set_properties entry title -value $title - element set_properties entry content -value $content - element set_properties entry entry_date -value $entry_date - element set_properties entry draft_p -value $draft_p + element set_value entry content \ + [template::util::richtext::set_property format [template::util::richtext::acquire contents $content] $content_format] + + element set_value entry title $title + element set_value entry entry_date $entry_date + element set_value entry draft_p $draft_p } element set_properties entry entry_id -value $entry_id @@ -54,7 +46,8 @@ if { [form is_valid entry] } { set entry_id [element get_value entry entry_id] set title [element get_value entry title] - set content [element get_value entry content] + set content [template::util::richtext::get_property contents [element get_value entry content]] + set content_format [template::util::richtext::get_property format [element get_value entry content]] set entry_date [element get_value entry entry_date] set draft_p [element get_value entry draft_p] set draft_p [ad_decode $draft_p "" "f" $draft_p] @@ -68,12 +61,19 @@ -package_id [ad_conn package_id] \ -title $title \ -content $content \ + -content_format $content_format \ -entry_date $entry_date \ -draft_p "$draft_p" } else { - set set_clauses { "title = :title" "content = :content" "entry_date = to_date(:entry_date, 'YYYY-MM-DD')" "draft_p = :draft_p" } + set set_clauses { + "title = :title" + "content = :content" + "content_format = :content_format" + "entry_date = to_date(:entry_date, 'YYYY-MM-DD')" + "draft_p = :draft_p" + } - set org_draft_p [db_string org_draft_p {} ] + set org_draft_p [db_string org_draft_p {}] if { [string equal $draft_p "t"] && [string equal $org_draft_p "f"] } { # If this is a publish, set the posted_date to now Index: openacs-4/packages/lars-blogger/www/admin/entry-edit.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/admin/Attic/entry-edit.xql,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/lars-blogger/www/admin/entry-edit.xql 2 Jan 2003 16:41:22 -0000 1.2 +++ openacs-4/packages/lars-blogger/www/admin/entry-edit.xql 27 Jan 2003 16:19:43 -0000 1.3 @@ -20,7 +20,7 @@ - select title, content, draft_p, to_char(entry_date, 'YYYY-MM-DD') as entry_date + select title, content, content_format, draft_p, to_char(entry_date, 'YYYY-MM-DD') as entry_date from pinds_blog_entries where entry_id = :entry_id