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 -r1.4.2.1 -r1.4.2.2 --- openacs-4/packages/lars-blogger/tcl/entry-procs-oracle.xql 24 Nov 2003 13:32:15 -0000 1.4.2.1 +++ openacs-4/packages/lars-blogger/tcl/entry-procs-oracle.xql 5 Feb 2004 17:46:10 -0000 1.4.2.2 @@ -37,6 +37,8 @@ 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, + to_char(b.entry_date , 'YYYY-MM-DD ')||to_char(b.posted_date , 'HH24:MI:SS') as entry_date_ansi, + to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') as sysdate_ansi, b.package_id, (select count(gc.comment_id) from general_comments gc, cr_revisions cr 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 -r1.4.2.1 -r1.4.2.2 --- openacs-4/packages/lars-blogger/tcl/entry-procs-postgresql.xql 24 Nov 2003 13:32:15 -0000 1.4.2.1 +++ openacs-4/packages/lars-blogger/tcl/entry-procs-postgresql.xql 5 Feb 2004 17:46:10 -0000 1.4.2.2 @@ -36,6 +36,8 @@ 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, + to_char(b.entry_date , 'YYYY-MM-DD ')||to_char(b.posted_date , 'HH24:MI:SS') as entry_date_ansi, + to_char(current_timestamp,'YYYY-MM-DD HH24:MI:SS') as sysdate_ansi, b.package_id, (select count(gc.comment_id) from general_comments gc, cr_revisions cr 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 -r1.13.2.1 -r1.13.2.2 --- openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.tcl 24 Nov 2003 13:32:15 -0000 1.13.2.1 +++ openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.tcl 5 Feb 2004 17:46:10 -0000 1.13.2.2 @@ -5,6 +5,8 @@ @cvs-id $Id$ } +namespace eval lars_blogger {} + ad_proc -deprecated -warn lars_blog_entry_add { {-entry_id:required} {-package_id:required} @@ -187,3 +189,45 @@ } return [parameter::get -package_id $package_id -parameter "StylesheetURL" -default "/resources/lars-blogger/lars-blogger.css"] } + +ad_proc -public lars_blogger::count { + -package_id +} { + @return the number of published blog entries in the package. +} { + if { ![exists_and_not_null package_id] } { + set package_id [ad_conn package_id] + } + return [db_string entry_count {}] +} + + +ad_proc -public lars_blogger::get_rss_file_url { + -package_id + -screen_name +} { + @param package_id The package_id of the lars-blogger instance. Defaults to current package. + + @param screen_name If specified, returns the RSS feed for just that user's postings. + + @return The URL of the RSS feed. +} { + if { ![exists_and_not_null package_id] } { + set package_id [ad_conn package_id] + } + + set rss_file_url {} + + set rss_file_name [parameter::get -parameter "rss_file_name" -package_id $package_id] + + if { ![empty_string_p $rss_file_name] } { + set package_url [lars_blog_public_package_url -package_id $package_id] + + if { [exists_and_not_null screen_name] } { + set rss_file_url "${package_url}user/$screen_name/rss/$rss_file_name" + } else { + set rss_file_url "${package_url}rss/$rss_file_name" + } + } + return $rss_file_url +} Index: openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.xql,v diff -u -r1.2.2.1 -r1.2.2.2 --- openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.xql 24 Nov 2003 13:32:15 -0000 1.2.2.1 +++ openacs-4/packages/lars-blogger/tcl/lars-blogger-procs.xql 5 Feb 2004 17:46:10 -0000 1.2.2.2 @@ -59,4 +59,13 @@ + + + select count(*) + from pinds_blog_entries + where package_id = :package_id + and draft_p = 'f' + + + 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 -r1.5 -r1.5.2.1 --- openacs-4/packages/lars-blogger/www/blog-oracle.xql 17 Oct 2003 00:39:22 -0000 1.5 +++ openacs-4/packages/lars-blogger/www/blog-oracle.xql 5 Feb 2004 17:46:10 -0000 1.5.2.1 @@ -31,6 +31,8 @@ p.last_name as poster_last_name, o.creation_user as user_id, to_char(posted_date , 'HH24:MI') as posted_time_pretty, + to_char(e.entry_date , 'YYYY-MM-DD ')||to_char(e.posted_date , 'HH24:MI:SS') as entry_date_ansi, + to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') as sysdate_ansi, (select count(gc.comment_id) from general_comments gc, cr_revisions cr where gc.object_id = entry_id @@ -63,6 +65,8 @@ p.last_name as poster_last_name, o.creation_user as user_id, to_char(posted_date , 'HH24:MI') as posted_time_pretty, + to_char(e.entry_date , 'YYYY-MM-DD ')||to_char(e.posted_date , 'HH24:MI:SS') as entry_date_ansi, + to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') as sysdate_ansi, (select count(gc.comment_id) from general_comments gc, cr_revisions cr where gc.object_id = entry_id 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 -r1.7 -r1.7.2.1 --- openacs-4/packages/lars-blogger/www/blog-postgresql.xql 29 Sep 2003 08:05:42 -0000 1.7 +++ openacs-4/packages/lars-blogger/www/blog-postgresql.xql 5 Feb 2004 17:46:10 -0000 1.7.2.1 @@ -31,6 +31,8 @@ p.last_name as poster_last_name, o.creation_user as user_id, to_char(posted_date , 'HH24:MI') as posted_time_pretty, + to_char(e.entry_date , 'YYYY-MM-DD ')||to_char(e.posted_date , 'HH24:MI:SS') as entry_date_ansi, + to_char(current_timestamp,'YYYY-MM-DD HH24:MI:SS') as sysdate_ansi, (select count(gc.comment_id) from general_comments gc, cr_revisions cr where gc.object_id = entry_id @@ -62,6 +64,8 @@ p.last_name as poster_last_name, o.creation_user as user_id, to_char(posted_date , 'HH24:MI') as posted_time_pretty, + to_char(e.entry_date , 'YYYY-MM-DD ')||to_char(e.posted_date , 'HH24:MI:SS') as entry_date_ansi, + to_char(current_timestamp,'YYYY-MM-DD HH24:MI:SS') as sysdate_ansi, (select count(gc.comment_id) from general_comments gc, cr_revisions cr where gc.object_id = entry_id Index: openacs-4/packages/lars-blogger/www/blog.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/blog.adp,v diff -u -r1.15 -r1.15.2.1 --- openacs-4/packages/lars-blogger/www/blog.adp 16 Oct 2003 23:10:45 -0000 1.15 +++ openacs-4/packages/lars-blogger/www/blog.adp 5 Feb 2004 17:46:10 -0000 1.15.2.1 @@ -18,23 +18,25 @@
- +
-

- + +

» - @blog_name@
- - - » - Archive
- - + Archive
+

+ + + +

» Add entry - -

+

+
+ + + XML + Index: openacs-4/packages/lars-blogger/www/blog.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/blog.tcl,v diff -u -r1.16 -r1.16.2.1 --- openacs-4/packages/lars-blogger/www/blog.tcl 21 Oct 2003 20:31:07 -0000 1.16 +++ openacs-4/packages/lars-blogger/www/blog.tcl 5 Feb 2004 17:46:10 -0000 1.16.2.1 @@ -5,8 +5,11 @@ # archive_interval:optional # archive_date:optional # screen_name:optional +# max_num_entries: optional +# min_num_entries: optional +# num_days: optional +# max_content_length:integer,optional - # If the caller specified a URL, then we gather the package_id from that URL if { [info exists url] } { array set blog_site_node [site_node $url] @@ -33,27 +36,31 @@ set blog_user_id [cc_screen_name_user $screen_name] } -# TODO: -# - Upgrade the installed package to get the latest parameters -# - Test on PG and Oracle +if { ![exists_and_not_null max_num_entries] } { + set max_num_entries [parameter::get \ + -package_id $package_id \ + -parameter MaxNumEntriesOnFrontPage \ + -default {}] +} +if { ![exists_and_not_null min_num_entries] } { + set min_num_entries [parameter::get \ + -package_id $package_id \ + -parameter MinNumEntriesOnFrontPage \ + -default {}] +} -set max_num_entries [parameter::get \ - -package_id $package_id \ - -parameter MaxNumEntriesOnFrontPage \ - -default {}] +if { ![exists_and_not_null num_days] } { + set num_days [parameter::get \ + -package_id $package_id \ + -parameter NumDaysOnFrontPage \ + -default {}] +} -set min_num_entries [parameter::get \ - -package_id $package_id \ - -parameter MinNumEntriesOnFrontPage \ - -default {}] - -set num_days [parameter::get \ - -package_id $package_id \ - -parameter NumDaysOnFrontPage \ - -default {}] +if { ![exists_and_not_null max_content_length] } { + set max_content_length 0 +} - if { ![info exists type] } { set type "current" @@ -143,4 +150,6 @@ set header_background_color [lars_blog_header_background_color -package_id $package_id] -set stylesheet_url [lars_blog_stylesheet_url] +set stylesheet_url [lars_blog_stylesheet_url -package_id $package_id] + +set rss_file_url [lars_blogger::get_rss_file_url -package_id $package_id] Index: openacs-4/packages/lars-blogger/www/entry-chunk.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/entry-chunk.adp,v diff -u -r1.14 -r1.14.2.1 --- openacs-4/packages/lars-blogger/www/entry-chunk.adp 16 Oct 2003 23:10:45 -0000 1.14 +++ openacs-4/packages/lars-blogger/www/entry-chunk.adp 5 Feb 2004 17:46:10 -0000 1.14.2.1 @@ -1,68 +1,66 @@
+
+ + @blog.title@@blog.title_url@ -
- - @blog.title@@blog.title_url@ - - -   [@blog.title_url_base@] + +   [@blog.title_url_base@] + +

-

-
- - -

@blog.title@

-
-
-
+ + +

@blog.title@

+
+
+
-
- @blog.content;noquote@ -
+
+ @blog.content;noquote@ +
-
- -
- Posted by @blog.poster_first_names@ @blog.poster_last_name@ at @blog.posted_time_pretty@ -
+
+ +
+ Posted @blog.posted_time_pretty@ by @blog.poster_first_names@ @blog.poster_last_name@ +
- -      - Edit - - - Publish - - - Draft - - -
+ +      + Edit - + + Publish + + + Draft + + +
-
- # - - G - - - - - @blog.num_comments@ commentcomments +
+ # - + G + + + + - @blog.num_comments@ commentcomments + - - - - Add comment - + + - Add comment + - - - @blog.category_name@ - + + - @blog.category_name@ + +
-
-

@comments.title@

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 -r1.11 -r1.11.2.1 --- openacs-4/packages/lars-blogger/www/entry-chunk.tcl 29 Oct 2003 10:03:41 -0000 1.11 +++ openacs-4/packages/lars-blogger/www/entry-chunk.tcl 5 Feb 2004 17:46:10 -0000 1.11.2.1 @@ -4,6 +4,7 @@ # retrun_url:onevalue,optional # package_id:optional # screen_name:onevalue,optional +# max_content_length:integer,optional if { ![exists_and_not_null show_comments_p] } { set show_comments_p "f" @@ -21,6 +22,10 @@ set screen_name "" } +if { ![exists_and_not_null max_content_length] } { + set max_content_length 0 +} + set package_url [lars_blog_public_package_url -package_id $package_id] set user_id [ad_conn user_id] @@ -29,13 +34,14 @@ set show_poster_p [ad_parameter "ShowPosterP" "" "1"] -# 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) +if { [empty_string_p $screen_name] } { + set blog(entry_archive_url) "${package_url}one-entry?[export_vars { entry_id }]" +} else { + set blog(entry_archive_url) "${package_url}user/$screen_name/one-entry?[export_vars { entry_id }]" +} + set blog(edit_url) "${package_url}entry-edit?[export_vars { entry_id return_url }]" set blog(delete_url) "${package_url}entry-delete?[export_vars { entry_id return_url }]" @@ -44,12 +50,6 @@ set blog(write_p) [permission::write_permission_p -object_id $blog(entry_id) -creation_user $blog(user_id)] -if { [empty_string_p $screen_name] } { - set blog(entry_archive_url) "${package_url}one-entry?[export_vars { entry_id }]" -} else { - set blog(entry_archive_url) "${package_url}user/$screen_name/one-entry?[export_vars { entry_id }]" -} - set blog(google_url) "http://www.google.com/search?[export_vars { {q $blog(title) } }]" if { ![empty_string_p $general_comments_package_url] } { @@ -58,9 +58,28 @@ set blog(comments_view_url) "${package_url}one-entry?[export_vars { entry_id }]" +set blog(posted_time_pretty) [util::age_pretty \ + -timestamp_ansi $blog(entry_date_ansi) \ + -sysdate_ansi $blog(sysdate_ansi)] + set display_categories [lars_blog_categories_p -package_id [ad_conn package_id]] if { [string equal $show_comments_p "t"] } { lars_blogger::entry::get_comments -entry_id $entry_id } -ad_return_template + +set blog(content) [ns_adp_parse \ + -string [ad_html_text_convert \ + -from $blog(content_format) \ + -to "text/html" \ + -- $blog(content)]] + +if { $max_content_length > 0 && [string length $blog(content)] > $max_content_length } { + set blog(content) [util_close_html_tags $blog(content) $max_content_length $max_content_length] + append blog(content) "..." + if { ![string equal [ad_return_url] $blog(entry_archive_url)] } { + append blog(content) "
(more)" + } +} + + Index: openacs-4/packages/lars-blogger/www/index.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/index.adp,v diff -u -r1.20 -r1.20.2.1 --- openacs-4/packages/lars-blogger/www/index.adp 16 Oct 2003 23:10:45 -0000 1.20 +++ openacs-4/packages/lars-blogger/www/index.adp 5 Feb 2004 17:46:10 -0000 1.20.2.1 @@ -49,130 +49,131 @@
- + + + + + + - -
+
+ + + +
+
+ + - - - - - - - - - - - -
-
- -
-
- - +
+ + + + + + + + + + -
-
+ Archive +
+ +
+
+
- - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + +
- Archive -
- -
-
-
+ +
+
+
- -
-
-
+ Categories +
+ + @categories.category_name@
+
+
+
+
- Categories -
- - @categories.category_name@
-
-
-
-
+ Actions +
+ Add entry
+ Draft entries + +
Administer + +
 
- Actions -
- Add entry
- Draft entries - -
Administer - -
 
+ Notifications +
+ @notification_chunk;noquote@ +
+
+
- Notifications -
- @notification_chunk;noquote@ -
-
-
+ Syndication Feed +
+ XML +
+
- -
- Syndication Feed -
- XML -
- - -
- + + + +
Index: openacs-4/packages/lars-blogger/www/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lars-blogger/www/index.tcl,v diff -u -r1.15.2.1 -r1.15.2.2 --- openacs-4/packages/lars-blogger/www/index.tcl 17 Nov 2003 14:47:43 -0000 1.15.2.1 +++ openacs-4/packages/lars-blogger/www/index.tcl 5 Feb 2004 17:46:10 -0000 1.15.2.2 @@ -18,6 +18,8 @@ set package_url [ad_conn package_url] set package_url_with_extras $package_url +set index_page_p 1 + set context [list] set context_base_url [ad_conn package_url] @@ -37,21 +39,14 @@ # Show Category in context bar append context_base_url /category/$category_short_name lappend context [list $context_base_url $category_name] + + set index_page_p 0 } else { set category_id "" } -if { ![empty_string_p [parameter::get -parameter "rss_file_name"]] } { +set rss_file_url [lars_blogger::get_rss_file_url] - if {[exists_and_not_null screen_name]} { - set rss_file_url "[ad_conn package_url]user/$screen_name/rss/[parameter::get -parameter "rss_file_name"]" - } else { - set rss_file_url "[ad_conn package_url]rss/[parameter::get -parameter "rss_file_name"]" - } - -} - - set create_p [permission::permission_p -object_id $package_id -privilege read] set admin_p [permission::permission_p -object_id $package_id -privilege admin] @@ -91,6 +86,8 @@ if { [exists_and_not_null year] } { + set index_page_p 0 + # Show Year and Month in context append context_base_url archive/ lappend context [list $context_base_url Archive] @@ -104,7 +101,7 @@ # Month and day in context append context_base_url /$month - lappend context [list $context_base_url $month] + lappend context [list $context_base_url [lc_time_fmt "1970-$month-01 01:01:01" %B]] append context_base_url /$day lappend context [list $context_base_url $day] @@ -114,7 +111,7 @@ # Month in context append context_base_url /$month - lappend context [list $context_base_url $month] + lappend context [list $context_base_url [lc_time_fmt "1970-$month-01 01:01:01" %B]] } else { set interval "year" db_1row archive_date_year {}