Index: openacs-4/packages/xowiki/resources/prototypes/CGI.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/CGI.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/CGI.page 18 Sep 2021 10:24:28 -0000 1.1.2.1
@@ -0,0 +1,11 @@
+# -*- tcl-*-
+# $Id: CGI.page,v 1.1.2.1 2021/09/18 10:24:28 gustafn Exp $
+::xowiki::Object new -title "CGI" -text {
+ proc content {} {
+ return "Hello \[\[Wiki\]\]-World. It is now [clock format [clock seconds]]."
+ }
+
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/CGI2.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/CGI2.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/CGI2.page 18 Sep 2021 10:24:28 -0000 1.1.2.1
@@ -0,0 +1,22 @@
+# -*- tcl-*-
+# $Id: CGI2.page,v 1.1.2.1 2021/09/18 10:24:28 gustafn Exp $
+::xowiki::Object new -title "CGI2" -text {
+ #
+ # The classes and objects here are all local to the object,
+ # as long as no absolute class or object names are used (no leading colons)
+ #
+ Class create CGI
+ CGI instproc content {} {
+ set somevar 100
+ return "Hello \[\[Wiki\]\]-World. It is now \
+ [clock format [clock seconds]]. Somevar=$somevar"
+ }
+
+ # mixin the Class CGI into the payload object of the ::xowiki::Object
+ # since the object renderer queries the method content, it picks up the
+ # above behavior
+ my mixin add CGI
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/CGI3.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/CGI3.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/CGI3.page 18 Sep 2021 10:24:29 -0000 1.1.2.1
@@ -0,0 +1,40 @@
+# -*- tcl-*-
+# $Id: CGI3.page,v 1.1.2.1 2021/09/18 10:24:29 gustafn Exp $
+::xowiki::Object new -title "CGI3" -text {
+ #
+ # The parameter declaration sets the context for the
+ # evaluation. It combines the provided values from an
+ # includelet with the values provided via the url with
+ # the specified default values.
+ #
+ my initialize -parameter {
+ {-object_type ::xowiki::Page}
+ {-text "Hello World"}
+ {-x:integer}
+ {-z:integer 100}
+ }
+
+ #
+ # The classes and objects here are all local to the object,
+ # as long as no absolute class or object names are used (no leading colons)
+ #
+
+ Class create CGI
+ CGI instproc content {} {
+ my get_parameters
+
+ set vars [info vars]
+ set somevar 100
+ return "Hello \[\[Wiki\]\]-World. It is now \
+ [clock format [clock seconds]]. Somevar=$somevar, vars=$vars,
+ package_id=$package_id, z=3. $text"
+ }
+
+ # mixin the Class CGI into the payload object of the ::xowiki::Object
+ # since the object renderer queries the method content, it picks up the
+ # above behavior
+ my mixin add CGI
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/Parameter.form.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/Parameter.form.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/Parameter.form.page 18 Sep 2021 10:24:29 -0000 1.1.2.1
@@ -0,0 +1,34 @@
+# -*- tcl-*-
+::xowiki::Form new \
+ -set name en:Parameter.form \
+ -title "XoWiki Parameter Form" \
+ -set anon_instances t \
+ -set text {} \
+ -set form {{
} \
+ -set form_constraints {
+ _title:text,label=#xowiki.title_of_event#
+ _text:richtext,editor=wym,label=#xowiki.abstract#
+ {event:event,label=#xowiki.event#,multiday=true}
+ {detail_link:detail_link,label=#xowiki.details#}
+ {_publish_status:radio,options={live ready} {draft production},label=#xowiki.publish_status#}
+ {_description:textarea,rows=3,label=#xowiki.news-teaser#}
+ _page_order:hidden _creator:hidden
+ }
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/bib.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/bib.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/bib.page 18 Sep 2021 10:24:29 -0000 1.1.2.1
@@ -0,0 +1,104 @@
+# -*- Tcl -*-
+# $Id: bib.page,v 1.1.2.1 2021/09/18 10:24:29 gustafn Exp $
+::xowiki::Object new -title "Bibliography Includelet" -text {
+ #
+ # A bibliography interface based on weblog.
+ # Bibliography entries are typically selected via
+ # entries_of (PageInstances, FormInstances).
+ #
+ # Gustaf Neumann fecit, May 2007
+ #
+ my initialize -parameter {
+ {-summary:boolean 0}
+ {-date ""}
+ {-category_id ""}
+ {-tag ""}
+ {-ptag ""}
+ {-entries_of ""}
+ }
+
+ #
+ # The following definition is the default rendering per
+ # weblog entry. This is executed in the context of every displayed page.
+ #
+ Class create EntryRenderer
+ EntryRenderer instproc render {} {
+ append content "
[next]
\n"
+ }
+ EntryRenderer instproc by_date {} {
+ if {[my exists instance_attributes]} {
+ array set ia {year "" month ""}
+ array set ia [my set instance_attributes]
+ return "$ia(year)-[format %2d $ia(month)]"
+ }
+ }
+
+ #
+ # The following definition is the renderer for the full weblog.
+ # This is executed in the context of the whole weblog object
+ #
+ Class create WeblogRenderer -instproc render {} {
+ my instvar filter_msg link name prev_page_link next_page_link
+
+ set prev ""
+ set next ""
+
+ if {[info exists prev_page_link]} {
+ set prev "\
+ "
+ }
+ if {[info exists next_page_link]} {
+ set next "\
+ "
+ }
+ return "
[next]
$prev $next"
+ }
+
+ my proc content {} {
+ my get_parameters
+ set page [my info parent]
+
+ if {$entries_of eq ""} {return ""}
+
+ if {[$page exists __including_page]} {
+ set i [$page set __including_page]
+ set exclude_item_ids [$i item_id]
+ $i set render_adp 0 ;# no double substitutions
+ #my log "--W including page $i"
+ } else {
+ #my log "--W NO including page"
+ set exclude_item_ids [$page item_id]
+ $page set __no_footer 1
+ }
+
+ # on the current page, an edit-new should not create an ::xowiki::object
+ ::xo::cc set_parameter object_type ::xowiki::Page
+
+ # use the custom renderers defined above
+ set renderer [self]::WeblogRenderer
+ set entry_renderer [self]::EntryRenderer
+
+ set w [::xowiki::Weblog new -destroy_on_cleanup \
+ -package_id $package_id \
+ -summary $summary \
+ -date $date \
+ -category_id $category_id \
+ -tag $tag \
+ -ptag $ptag \
+ -no_footer true \
+ -sort_composite "method,by_date,desc" \
+ -entries_of $entries_of \
+ -exclude_item_ids $exclude_item_ids \
+ -entry_renderer $entry_renderer \
+ ]
+
+ $w mixin add $renderer
+ return [$w render]
+ }
+
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/book-print.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/book-print.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/book-print.page 18 Sep 2021 10:24:30 -0000 1.1.2.1
@@ -0,0 +1,44 @@
+::xowiki::Page new -title "Book (print version)" -text {
+{{set-parameter template_file view-plain}}
+{{set-parameter master 0}}
+
+
+@title@
+
+
+
+
+
+
+
+
@title@
+
+
+
+
Creator:
+
@creator@
+
+
+
Version:
+
5.4
+
+
+
Date:
+
{{creation-date -format "%B %d, %Y"}}
+
+
+
+
+
Table of Contents:
+
+
{{toc -style list -decoration plain -book_mode 1 -expand_all 1}}
+
+{{book -menu_buttons "edit copy create delete"}}
+>><<
+
+}
Index: openacs-4/packages/xowiki/resources/prototypes/categories-portlet.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/categories-portlet.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/categories-portlet.page 18 Sep 2021 10:24:30 -0000 1.1.2.1
@@ -0,0 +1,118 @@
+# -*- tcl-*-
+# $Id: categories-portlet.page,v 1.1.2.1 2021/09/18 10:24:30 gustafn Exp $
+::xowiki::Object new -title "Categories" -text {
+
+ # display the category tree with associated pages
+ # -gustaf neumann
+ #
+ # valid parameters from the adp include are
+ # tree_name: match pattern, if specified displays only the trees
+ # with matching names
+ # no_tree_name: if specified, tree names are not displayed
+ # open_page: name (e.g. en:iMacs) of the page to be opened initially
+ # tree_style: boolean, default: true, display based on mktree
+
+ my initialize -parameter {
+ {-tree_name ""}
+ {-tree_style "mktree"}
+ {-no_tree_name:boolean 0}
+ {-count:boolean 0}
+ {-summary:boolean 0}
+ {-open_page ""}
+ {-category_ids ""}
+ {-except_category_ids ""}
+ }
+
+ #if {![info exists name]} {set name "Categories"}
+
+ my proc content {} {
+ my get_parameters
+ set folder_id [$package_id folder_id]
+
+ set open_item_id [expr {$open_page ne "" ?
+ [::xo::db::CrClass lookup -name $open_page -parent_id $folder_id] : 0}]
+
+ set content ""
+
+ set tree_ids [::xowiki::Category get_mapped_trees -object_id $package_id \
+ -names $tree_name -output {tree_id tree_name}]
+
+ foreach tree $tree_ids {
+ lassign $tree tree_id my_tree_name
+ if {!$no_tree_name} {
+ append content "
$my_tree_name
"
+ }
+ set categories [list]
+ set pos 0
+ set cattree(0) [::xowiki::Tree new -volatile -orderby pos -name $my_tree_name]
+ foreach category_info [::xowiki::Category get_category_infos -tree_id $tree_id] {
+ lassign $category_info cid category_label deprecated_p level
+ set c [::xowiki::TreeNode new -orderby pos \
+ -level $level -label $category_label -pos [incr pos]]
+ set cattree($level) $c
+ set plevel [expr {$level -1}]
+ $cattree($plevel) add $c
+ set category($cid) $c
+ lappend categories $cid
+ #set itemobj [Object new -set name en:index -set title MyTitle -set prefix "" -set suffix ""]
+ #$cattree(0) add_to_category -category $c -itemobj $itemobj -orderby title
+ }
+
+ # skip trees without categories, as nothing will be mapped to them
+ if {[llength $categories] == 0} continue
+
+ set sql "category_object_map c, cr_items ci, cr_revisions r, xowiki_page p \
+ where c.object_id = ci.item_id and ci.parent_id = :folder_id \
+ and ci.content_type not in ('::xowiki::PageTemplate') \
+ and category_id in ([join $categories ,]) \
+ and r.revision_id = ci.live_revision \
+ and p.page_id = r.revision_id"
+
+ if {$except_category_ids ne ""} {
+ append sql \
+ " and not exists (select * from category_object_map c2 \
+ where ci.item_id = c2.object_id \
+ and c2.category_id in ($except_category_ids))"
+ }
+ #my log "--c category_ids=$category_ids"
+ if {$category_ids ne ""} {
+ foreach cid [split $category_ids ,] {
+ append sql " and exists (select * from category_object_map \
+ where object_id = ci.item_id and category_id = $cid)"
+ }
+ }
+
+ if {$count} {
+ xo::dc foreach get_counts \
+ "select count(*) as nr,category_id from $sql group by category_id" {
+ $category($category_id) set count $nr
+ set s [expr {$summary ? "&summary=$summary" : ""}]
+ $category($category_id) href [ad_conn url]?category_id=$category_id$s
+ $category($category_id) open_tree
+ }
+ append content [$cattree(0) render -style $tree_style]
+ } else {
+ xo::dc foreach get_pages \
+ "select ci.item_id, ci.name, ci.content_type, r.title, category_id from $sql" {
+ if {$title eq ""} {set title $name}
+ set itemobj [Object new]
+ set prefix ""
+ set suffix ""
+ foreach var {name title prefix suffix} {$itemobj set $var [set $var]}
+ $itemobj set href [::$package_id pretty_link -parent_id $folder_id $name]
+ $cattree(0) add_item \
+ -category $category($category_id) \
+ -itemobj $itemobj \
+ -orderby title \
+ -open_item [expr {$item_id == $open_item_id}]
+ }
+ append content [$cattree(0) render -style $tree_style]
+ }
+ }
+ return $content
+ }
+
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/contributors.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/contributors.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/contributors.page 18 Sep 2021 10:24:30 -0000 1.1.2.1
@@ -0,0 +1,34 @@
+# -*- tcl-*-
+# $Id: contributors.page,v 1.1.2.1 2021/09/18 10:24:30 gustafn Exp $
+::xowiki::Object new -title "Contributors" -text {
+
+ my proc content {} {
+ my instvar package_id
+ set folder_id [$package_id folder_id]
+
+ TableWidget t1 -volatile \
+ -columns {
+ Field contributor -label "Contributor"
+ Field count -label "Page Revisions" -html { align right }
+ }
+
+ xo::dc foreach get_contributors {select count(object_id) as count, creation_user
+ from acs_objects o, cr_revisions cr,cr_items ci
+ where object_id = revision_id
+ and parent_id = :folder_id
+ and cr.item_id = ci.item_id
+ group by creation_user order by count desc
+ } {
+ if {$creation_user eq ""} continue
+ t1 add \
+ -contributor [::xo::get_user_name $creation_user] \
+ -count $count
+ }
+ [my info parent] render_adp 1
+ return "The following users have contributed to this xowiki instance:
[t1 asHTML]
"
+ }
+
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/ical.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/ical.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/ical.page 18 Sep 2021 10:24:30 -0000 1.1.2.1
@@ -0,0 +1,93 @@
+# -*- tcl-*-
+# $Id: ical.page,v 1.1.2.1 2021/09/18 10:24:30 gustafn Exp $
+::xowiki::Object new -title "Ical" -text {
+ #
+ # A sample Ical object.
+ #
+ my initialize -parameter {
+ {-page_size:integer 100}
+ {-page_number:integer 1}
+ {-summary:boolean 0}
+ {-date ""}
+ {-tag ""}
+ {-ptag ""}
+ {-entries_of en:announcement-talk|en:announcement-workshop}
+ }
+
+ #
+ # The following definition is the default rendering per
+ # news entry. This is executed in the context of every displayed page.
+ #
+ Class create IcalEntryRenderer -instproc render {} {
+ array set {} [my instance_attributes]
+ if {![info exists (event)]} {
+ ns_log warning "ical renderer: no event found page ${:name}"
+ return ""
+ }
+ array set event $(event)
+ #my msg [my instance_attributes]
+ set dtstart [::xo::ical clock_to_utc [clock scan $event(event.dtstart)]]
+ set dtend [::xo::ical clock_to_utc [clock scan $event(event.dtend)]]
+ set body "SUMMARY:[::xo::ical text_to_ical -remove_tags true $event(event.summary)]"
+ foreach f {location} {
+ set key event(event.$f)
+ if {[info exists $key] && [set $key] ne ""} {
+ append body \n[string toupper $f]:[::xo::ical text_to_ical -remove_tags true [set $key]]
+ }
+ }
+
+ return [subst {BEGIN:VEVENT
+DTSTART:$dtstart
+DTEND:$dtend
+$body
+URL:[my pretty_link -absolute true]
+END:VEVENT
+}]
+ }
+
+ #
+ # The following definition is the renderer for the aggregated content.
+ # This is executed in the context of the whole weblog object
+ #
+ Class create IcalRenderer -instproc render {} {
+ return [subst {BEGIN:VCALENDAR
+VERSION:2.0
+[next]END:VCALENDAR
+}]
+}
+
+ my proc content {} {
+ my get_parameters
+ #
+ # this is not an HTML page, decativate master and provide content-type
+ #
+ ::xo::cc set_parameter master 0
+ ::xo::cc set_parameter content-type text/plain
+
+ # use the above defined custom renderers
+ set renderer [self]::IcalRenderer
+ set entry_renderer [self]::IcalEntryRenderer
+
+ set w [::xowiki::Weblog new -destroy_on_cleanup \
+ -package_id $package_id \
+ -page_size $page_size \
+ -page_number $page_number \
+ -summary $summary \
+ -date $date \
+ -category_id [ns_queryget category_id] \
+ -tag $tag \
+ -ptag $ptag \
+ -entry_renderer $entry_renderer \
+ -entry_flag __no_form_page_footer \
+ -entries_of $entries_of \
+ ]
+
+ $w set __page [my info parent]
+ $w mixin add $renderer
+ return [$w render]
+ }
+
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/index.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/index.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/index.page 18 Sep 2021 10:24:30 -0000 1.1.2.1
@@ -0,0 +1,29 @@
+::xowiki::Page new -title "Index Page" -text {
+
+
+This is the default start page of XoWiki. You can edit this page and save it to
+provide a personalized look of the XoWiki instance. You can as well provide a different index
+page through configuration.
+You can also view the contents of the Wiki in a weblog style.
+For more details, consult the [[https://openacs.org/xowiki-doc/|XoWiki documentation]].
+
+
+A user can define notifications
+for the whole XoWiki instance (by clicking on the notifications button
+in the menu bar or for categories (by clicking on the letter symbol
+next to the category entries at the bottom of the page)
+
+>>left-col<<
+{{recent -max_entries 25}}
+>><<
+>>right-col<<
+{{last-visited -title "Last Visited" -max_entries 10 }}
+
+{{most-popular -title "Most Popular" -max_entries 10 }}
+>><<
+
+}
+
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/link.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/link.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/link.page 18 Sep 2021 10:24:30 -0000 1.1.2.1
@@ -0,0 +1,13 @@
+# -*- tcl-*-
+::xowiki::Form new \
+ -set name en:link \
+ -title "Symbolic Link" \
+ -set anon_instances t \
+ -set text {@link@} \
+ -set form {} \
+ -set form_constraints {
+ _title:localized_text link:include
+ }
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/news-item.form.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/news-item.form.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/news-item.form.page 18 Sep 2021 10:24:31 -0000 1.1.2.1
@@ -0,0 +1,21 @@
+# -*- tcl-*-
+# $Id: news-item.form.page,v 1.1.2.1 2021/09/18 10:24:31 gustafn Exp $
+::xowiki::Form new \
+ -set name en:news-item.form \
+ -title "News Item" \
+ -set anon_instances t \
+ -set text {@image_url@ @_text@ @detail_link@} \
+ -set form {{} text/html} \
+ -set form_constraints {
+ _page_order:hidden
+ _creator:hidden
+ _title:text,label=#acs-kernel.common_Title#
+ {detail_link:detail_link,label=#xowiki.news-source#}
+ _publish_date:date
+ image_url:image_url,float=left,width=100px
+ {_publish_status:radio,options={live ready} {draft production},label=#xowiki.publish_status#}
+ {_description:textarea,rows=3,label=#xowiki.news-teaser#}
+ }
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/news.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/news.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/news.page 18 Sep 2021 10:24:31 -0000 1.1.2.1
@@ -0,0 +1,161 @@
+# -*- tcl-*-
+# $Id: news.page,v 1.1.2.1 2021/09/18 10:24:31 gustafn Exp $
+::xowiki::Object new -title "News" -text {
+ #
+ # A sample News object.
+ #
+ my initialize -parameter {
+ {-page_size:integer 10}
+ {-page_number:integer 1}
+ {-summary:boolean 0}
+ {-date ""}
+ {-tag ""}
+ {-ptag ""}
+ {-entries_of en:news-item.form|en:announcement-talk.form|en:announcement-workshop.form}
+ }
+
+ my get_parameters
+ #
+ # Don't add the footer (with tags, general comments, etc.) to the
+ # aggregated page, since this can be confusing..
+ #
+ [my info parent] set __no_footer 1
+
+ #
+ # get current folder
+ #
+ set folder_form_id [::xowiki::Weblog instantiate_forms -forms en:folder.form -package_id $package_id]
+ set current_folder [[my info parent] get_folder -folder_form_ids $folder_form_id]
+ my set current_folder_id [$current_folder item_id]
+
+ # Provide a tailored link for creating new pages in the wiki menu
+ #
+ set forms [::xowiki::Weblog instantiate_forms -parent_id [my set current_folder_id] \
+ -forms $entries_of \
+ -package_id $package_id]
+ set template_id [lindex $forms 0]
+ if {$template_id ne ""} {
+ set form_link [$template_id pretty_link]
+ set new_link [$package_id make_link -link $form_link $template_id create-new return_url]
+ } else {
+ ns_log notice "Warning: could not resolve $entries_of with -parent_id [my set current_folder_id]"
+ set form_link ""
+ set new_link ""
+ }
+
+ [my info parent] set __link(new) $new_link
+
+ #
+ # The following definition is the default rendering per
+ # news entry. This is executed in the context of every displayed page.
+ #
+ Class create EntryRenderer -instproc render {} {
+ my instvar package_id name title creator creation_user pretty_date description publish_date
+ [my set __parent] instvar weblog_obj
+
+ set link [my detail_link]
+ regsub -all & $link "&" link
+ set more [expr {[$weblog_obj summary] ?
+ " \[#xowiki.weblog-more#\]" : ""}]
+ #append more ""
+ set day [lc_time_fmt [my set publish_date] "%x"]
+ set my_footer [my htmlFooter]
+
+ set edit_button [my include [list edit-item-button -book_mode true]]
+ if {$edit_button ne ""} {set edit_button "
"
+ }
+
+ #
+ # The following definition is the renderer for the aggregated content.
+ # This is executed in the context of the whole weblog object
+ #
+ Class create NewsRenderer -instproc render {} {
+ my instvar filter_msg link name prev_page_link next_page_link title package_id
+
+ set filter ""
+ set prev ""
+ set next ""
+
+ if {[info exists filter_msg]} {
+ set filter "
$filter_msg
"
+ }
+ if {[info exists prev_page_link]} {
+ set prev "\
+ "
+ }
+ if {[info exists next_page_link]} {
+ set next "\
+ "
+ }
+ #
+ # Include the RSS Button
+ #
+ set page [my set __page]
+ set rss [$page include "rss-button -title {[$page title]} -entries_of [my entries_of] -decoration none"]
+ #
+ # If the user has creation rights (on the first form), include the RSS Bookmarklet button
+ #
+ if {[my exists form_ids] && [my set form_ids] ne ""} {
+ set can_create_news_item [$package_id make_link [lindex [my set form_ids] 0] create-new return_url]
+ if {$can_create_news_item ne ""} {
+ append rss "Bookmarklet: " [$page include "bookmarklet-button -label {[$page title]}"]
+ }
+ }
+
+ return "
$filter [next] $prev $next $rss
"
+ }
+
+ my proc content {} {
+ my get_parameters
+ set page [my info parent]
+
+ if {[$page exists __including_page]} {
+ set i [$page set __including_page]
+ set exclude_item_ids [$i item_id]
+ $i set render_adp 0 ;# no double substitutions
+ #my log "--W including page $i"
+ } else {
+ #my log "--W NO including page"
+ set exclude_item_ids [$page item_id]
+ }
+
+ # on the news page, an edit-new should not create an object
+ ::xo::cc set_parameter object_type ::xowiki::Page
+ ::xo::cc set_parameter autoname 1
+
+ # use the above defined custom renderers
+ set renderer [self]::NewsRenderer
+ set entry_renderer [self]::EntryRenderer
+
+ set w [::xowiki::Weblog new -destroy_on_cleanup \
+ -package_id $package_id \
+ -parent_id [my set current_folder_id] \
+ -page_size $page_size \
+ -page_number $page_number \
+ -summary $summary \
+ -date $date \
+ -category_id [ns_queryget category_id] \
+ -tag $tag \
+ -ptag $ptag \
+ -entry_label "News Articles" \
+ -exclude_item_ids $exclude_item_ids \
+ -entry_renderer $entry_renderer \
+ -entry_flag __no_form_page_footer \
+ -entries_of $entries_of \
+ ]
+ $w set __page $page
+ $w mixin add $renderer
+ return [$w render]
+ }
+
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/podcast.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/podcast.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/podcast.page 18 Sep 2021 10:24:31 -0000 1.1.2.1
@@ -0,0 +1,31 @@
+# -*- tcl-*-
+# $Id: podcast.page,v 1.1.2.1 2021/09/18 10:24:31 gustafn Exp $
+::xowiki::Object new -title "XoWiki Podcast" -text {
+
+ my initialize -parameter {
+ {-name_filter ""}
+ {-days ""}
+ }
+
+ proc content {} {
+ my get_parameters
+
+ ::xo::cc set_parameter master 0
+ ::xo::cc set_parameter content-type text/xml
+ # -siteurl http://localhost:8053
+
+ set f [::xowiki::Podcast new -destroy_on_cleanup \
+ -package_id $package_id \
+ -name_filter $name_filter \
+ -title [[my info parent] set title] \
+ -description [[my info parent] set description] \
+ -author [[my info parent] creator] \
+ -subtitle "A Sample Collection of Podcast Items" \
+ -days $days]
+
+ return [$f render]
+ }
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/sitemap.xml.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/sitemap.xml.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/sitemap.xml.page 18 Sep 2021 10:24:31 -0000 1.1.2.1
@@ -0,0 +1,7 @@
+# -*- tcl-*-
+::xowiki::Object new -title "sitemap.xml" -set publish_status production -text {
+ proc content {} { [my package_id] google-sitemap }
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/sitemapindex.xml.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/sitemapindex.xml.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/sitemapindex.xml.page 18 Sep 2021 10:24:31 -0000 1.1.2.1
@@ -0,0 +1,7 @@
+# -*- tcl-*-
+::xowiki::Object new -title "sitemap.xml" -set publish_status production -text {
+ proc content {} { ::xowiki::Package www-google-sitemapindex }
+}
+
+
+
Index: openacs-4/packages/xowiki/resources/prototypes/table-of-contents.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/resources/prototypes/Attic/table-of-contents.page,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/xowiki/resources/prototypes/table-of-contents.page 18 Sep 2021 10:24:31 -0000 1.1.2.1
@@ -0,0 +1,2 @@
+::xowiki::Page new -title "Table of Contents" -text {{{child-resources -publish_status all}}}
+
Index: openacs-4/packages/xowiki/www/prototypes/index.page
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/www/prototypes/index.page,v
diff -u -N
--- openacs-4/packages/xowiki/www/prototypes/index.page 18 Sep 2019 19:29:33 -0000 1.5.6.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,29 +0,0 @@
-::xowiki::Page new -title "Index Page" -text {
-
-
-This is the default start page of XoWiki. You can edit this page and save it to
-provide a personalized look of the XoWiki instance. You can as well provide a different index
-page through configuration.
-You can also view the contents of the Wiki in a weblog style.
-For more details, consult the [[https://openacs.org/xowiki-doc/|XoWiki documentation]].
-
-
-A user can define notifications
-for the whole XoWiki instance (by clicking on the notifications button
-in the menu bar or for categories (by clicking on the letter symbol
-next to the category entries at the bottom of the page)
-