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
-
-
+
+
+
+
+
+
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
+
+
+
-
-
-
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 @@
-
+
+
+
+
+
+ |
+
+
+ |
+
-
-
-
-
- |
-
-
- |
-
+
-
- |
-
-
-
+ |
+
+
+
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 {}