Index: openacs-4/packages/xowiki/tcl/includelet-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/includelet-procs.tcl,v
diff -u -r1.53 -r1.54
--- openacs-4/packages/xowiki/tcl/includelet-procs.tcl 12 Sep 2008 17:28:42 -0000 1.53
+++ openacs-4/packages/xowiki/tcl/includelet-procs.tcl 24 Sep 2008 09:55:05 -0000 1.54
@@ -942,25 +942,31 @@
my instvar feed
my get_parameters
my set feed [::xowiki::RSS-client new -url $url -destroy_on_cleanup]
- my title [ [$feed channel] title]
+ if {[info command [$feed channel]] ne ""} {
+ my title [ [$feed channel] title]
+ }
}
rss-client instproc render {} {
my instvar feed
my get_parameters
- set channel [$feed channel]
- #set html "
[$channel title]
"
- set html "\n"
- set i 0
- foreach item [ $feed items ] {
- #my msg "[$item title]"
- append html "- [$item title]
[$item description] #xowiki.weblog-more#\n"
- if {[incr i] >= $max_entries} break
+ if {[info command [$feed channel]] eq ""} {
+ set detail ""
+ if {[$feed exists errorMessage]} {set detail \n[$feed set errorMessage]}
+ return "No data available from $url
$detail"
+ } else {
+ set channel [$feed channel]
+ #set html "[$channel title]
"
+ set html "\n"
+ set i 0
+ foreach item [ $feed items ] {
+ append html "- [$item title]
[$item description] #xowiki.weblog-more#\n"
+ if {[incr i] >= $max_entries} break
+ }
+ append html "
\n"
+ return $html
}
- append html "
\n"
- return $html
}
-
}
namespace eval ::xowiki::includelet {
Index: openacs-4/packages/xowiki/tcl/syndicate-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/syndicate-procs.tcl,v
diff -u -r1.29 -r1.30
--- openacs-4/packages/xowiki/tcl/syndicate-procs.tcl 1 Jan 2008 23:32:33 -0000 1.29
+++ openacs-4/packages/xowiki/tcl/syndicate-procs.tcl 24 Sep 2008 09:55:06 -0000 1.30
@@ -392,15 +392,20 @@
# Constructor for a given URI
RSS-client instproc init {} {
- my parse [my load]
+ set XML [my load]
+ if {$XML ne ""} {
+ my parse [my load]
+ }
}
RSS-client instproc load { } {
set r [::xo::HttpRequest new -url [my url] -volatile]
#my msg "statuscode = [$r set status_code], content_type=[$r set content_type]"
- set f [open /tmp/feed w]; fconfigure $f -translation binary; puts $f [$r set data]; close $f
- set xml [$r set data]
- return $xml
+ #set f [open /tmp/feed w]; fconfigure $f -translation binary; puts $f [$r set data]; close $f
+ if {[$r exists status] && [$r set status] eq "canceled"} {
+ my set errorMessage [$r set cancel_message]
+ }
+ return [$r set data]
# the following does not appear to be necessary due to changes in http-client-procs.
#set charset utf-8
#regexp {^<\?xml\s+version\s*=\s*\S+\s+encoding\s*=\s*[\"'](\S+)[\"']} $xml _ charset
@@ -454,7 +459,6 @@
# Channel
set cN [ $root child 1 channel ]
set channel [::xowiki::RSS-client::channel create [self]::channel -root $cN]
- puts $channel
# Items
my set items {}