XoWiki
XoWiki is a wiki implementation for OpenACS implemented based on xotcl-core. Instead of trying to implement the full set of wiki markup commands in systems like MediaWiki, XoWiki is based on a rich text editor and focuses more on integration with OpenACS (e.g. categories, general comments, adp-includes, ad-substitution of template variables). XoWiki combines aspects of wikis (ease of page-creation) with aspects of a content management system (revisions, reusable content, multiple languages, page templates).
XoWiki provides functionalities of enterprise wiki systems (such as combining structured with unstructured information, providing security policies, etc.). XoWiki is reused in several other packages such as XoWiki Content flow, S5 or the Learning Content Tool.
Documentation:
- Latest version of the XoWiki Documentation
- XoWiki FAQ
- XoWiki Tutorial (XoWiki as a framework)
- ::xowiki::Form examples (Import by XoWiki 'Import' feature in Admin UI)
- Solution Grove's xinha and xowiki howtos
Package Specification Summary for Package: xowiki
Summary: | A xotcl-based enterprise wiki system with multiple object types |
Description: | <pre> XoWiki is a Wiki implementation for OpenACS in XOTcl. Instead of trying to implement the full set of Wiki markup commands of systems like MediaWiki, XoWiki is based on a rich text editor and focuses more on integration with OpenACS (e.g. categories, general comments, ADP-includes). XoWiki combines aspects of wikis (ease of page-creation) with aspects of a content management system (revisions, reusable items, multiple languages). Furthermore, XoWiki allows one to define different types of links such one could define book-structures (where a navigation structure could be built on the fly) or glossaries with different kind of word relationships (like synonyms, etc.). XoWiki supports pages in multiple languages and is localized. Some features: - cross language links - inclusion of ADP pages - nesting of Wiki-pages - large set of includable content (includelets) - search - tags - categories - RSS - weblog - podcasts - notifications - web 2.0 gadgets (digg, delicious, my yahoo) - audio embedding - different appearances (template_file) - book-structures - prototype pages - import/export - virtual presence - analysis of collaboration networks - forms - named/unnamed pages - various security policies </pre> |
Maturity: | Mature |
This package depends on: | xotcl-core acs-datetime acs-kernel acs-tcl acs-templating acs-subsite acs-lang richtext-ckeditor4 categories file-storage general-comments acs-automated-testing |
Packages that depend on xowiki: | chat content-portlet eduwiki learning-content learning-content-portlet pages s5 xolirc xowf xowiki-includelet xowiki-portlet |
Package parameters: |
|
Bug Tracker Summary for Package: xowiki
Open Bugs: | 3 |
All Tracked Issues: | 54 |
Latest Bug Opened: | 2018-12-12 Unnecessary dependency between folders includelet and MenuBar |
Latest Bug Fixed: | 2024-10-13 ckeip fails because it provides wrong parameters to calc_wiki_image_links_to_image_tags. |
Top Bug Submitters: | Robert Taylor (10) Ryan Gallimore (9) Michael Aram (9) Carl Robert Blesius (6) Malte Sussdorff (3) |
Top Bug Fixers: | Gustaf Neumann (49) Stan Kaufman (2) Malte Sussdorff (1) |
Code Metrics Summary for Package: xowiki
# Tcl Procs | 48 |
# Tcl Lines | 37312 |
# Tcl Blank Lines | 3759 |
# Tcl Comment Lines | 7644 |
# Automated Tests | 22 |
# Stored Procedures | PG: 0 ORA: 0 |
# SQL Lines | PG: 0 (blank 1 comments 0) ORA: 0 (blank 1 comments 0) |
# ADP pages | 18 |
# ADP lines | 1659 |
# Include pages (xowiki/lib/) | 6 |
# Documentation pages | 0 |
# Documentation lines | 0 |
Browse Source | API-browser |
Github Repository: | https://github.com/openacs/xowiki/tree/oacs-5-10 |
Available Includelets
- {{LTI-LaunchButton -launch_button_label Join Meeting -launch_button_title Click to join -title "" -presentation window}}
- {{activity-graph -max_edges 70 -cutoff 0.1 -max_activities:integer 100 -show_anonymous message}}
Include an activity graph
- {{available-formfields -flat:boolean false}}
List the available form field types of this installation.
- {{available-includelets}}
List the available includelets of this installation.
- {{book -category_id -menu_buttons edit -folder_mode false -locale "" -range "" -allow_reorder "" -orderby page_order,asc -with_footer false -publish_status ready}}
Show contents in book mode.
- {{bookmarklet-button -siteurl "" -label ""}}
Include bookmarklet button that makes it easy to add the current page as a bookmark in the browser of the client.
- {{categories -tree_name "" -tree_style:boolean 1 -no_tree_name:boolean 0 -count:boolean 0 -summary:boolean 0 -locale "" -open_page "" -order_items_by title,asc -style mktree -category_ids "" -parent / -except_category_ids "" -allow_edit false -ordered_composite}}
List the specified category tree.
- {{categories-recent -max_entries:integer 10 -tree_name "" -locale "" -pretty_age off}}
Display recent entries by categories.
- {{chat -title "" -chat_id "" -mode "" -path "" -skin -login_messages_p -logout_messages_p -avatar_p -timewindow}}
Include a chat in the current page
- {{chat_room -chat_id -mode:optional "" -path:optional "" -skin:optional ""}}
Include a chat room
- {{child-resources -skin:optional yui-skin-sam -show_types ::xowiki::Page,::xowiki::File,::xowiki::Form,::xowiki::FormPage -regexp:optional -language_specific:boolean false -with_subtypes:boolean,optional false -orderby:token,optional last_modified,desc -publish_status:wordchar ready -view_target "" -html-content -parent . -columns objects edit publish_status object_type name last_modified mod_user duplicate delete -hide "" -menubar ""}}
- {{collab-graph -max_edges 70 -cutoff 0.1 -show_anonymous message -user_id}}
Include a collaboration graph
- {{community-link -text "" -url ""}}
Include a link to the community including the current page. This includelet is designed to work with dotlrn.
- {{composite-form -edit_links:boolean false -pages "" -ordered_pages}}
Create a form from the selection
- {{copy-item-button -page_id -alt copy -book_mode false}}
Button to copy a page
- {{countdown-timer -target_time "" -audio_alarm true}}
Countdown timer
- {{create-item-button -page_id -alt new -book_mode false}}
Button to create a new page based on the current one
- {{creation-date -source "" -format %m-%d-%Y}}
Include the creation date of the current or specified page in the provided format.
- {{current-irc-log -date ""}}
- {{delete-item-button -page_id -title Delete -alt delete -book_mode false}}
Button to delete the current or a different page
- {{delicious -description "" -tags "" -url}}
Add a button to submit article to delicious.
- {{digg -description "" -url}}
Add a button to submit article to digg.
- {{edit-item-button -page_id -title Edit -alt edit -book_mode false -link "" -target ""}}
Button to edit the current or a different page
- {{exam-top-includelet -countdown_audio_alarm true -target_time "" -url_poll "" -url_dismiss "" -poll_interval 5000}}
This is the top includelet for the in-class exam, containing a countdown timer and the personal notifications includelet
- {{flowplayer -mp4:required,nohtml}}
Include an mp4 image using flowplayer
- {{folders -show_full_tree false -context_tree_view false}}
List the folder tree of the current instance
- {{form-menu -form_item_id:integer -parent_id -form -buttons new answers -button_objs -return_url}}
Include a form menu for the specified Form
- {{form-stats -form -parent_id -property _state -orderby count,desc -renderer table}}
Include form statistics for the specofied Form page.
- {{form-usages -form_item_id:integer,1..n -form -parent_id -package_ids "" -orderby _raw_last_modified,desc -view_field _name -publish_status all -field_names -hidden_field_names _last_modified -extra_form_constraints "" -inherit_from_forms "" -category_id -unless -where -extra_where_clause "" -csv true -voting_form -voting_form_form "" -voting_form_anon_instances t -generate -with_form_link true -with_categories -wf -bulk_actions "" -buttons edit delete -renderer "" -return_url -date_format -with_checkboxes:boolean false}}
Show usages of the specified form.
- {{get -variable -form_variable -source ""}}
Get an instance variable from the current or from a different page.
- {{graph}}
- {{gravatar -email:required -size 80}}
Include gravatar picture for the specified email
- {{html-file -title "" -extra_css "" -levels 0 -file:required}}
Include the specified HTML file
- {{iframe -title "" -url:required -width 100% -height 500px}}
Include an iframe containing the specified URL
- {{item-button}}
- {{jquery-carousel}}
Display a sequence of pages via jquery-carousel, based on book includelet.
- {{jquery-cloud-carousel}}
Display a sequence of pages via jquery-cloud-carousel, based on book includelet.
- {{jquery-infinite-carousel}}
Display a sequence of pages via jquery-infinite-carousel, based on book includelet.
- {{jquery-spacegallery}}
Display a sequence of pages via jquery-spacegalleryl, based on book includelet.
- {{kibana -chart openacs-status-codes -from now-24h -to now -hash "" -width:integer 800 -height:integer 400}}
Include a Kibana chart identified by the provided hash
- {{last-visited -max_entries:integer 20}}
Display last visited pages.
- {{launch-bigbluebutton}}
- {{launch-jupyter}}
- {{launch-zoom}}
- {{link-with-local-return-url -text "" -url ""}}
Insert a link with extra return URL pointing the current object. This is particularly useful in cases, where a return URL must be created for a page that does not yet exist at time of definition (e.g. for link pointing to concrete workflow instances)
- {{most-frequent-visitors -max_entries:integer 15}}
List the most frequent visitors.
- {{most-popular -max_entries:integer 10 -interval}}
Display most popular pages of this wiki instance.
- {{my-categories -summary 1}}
List the categories associated with the current page.
- {{my-general-comments}}
List the general comments available for the current page.
- {{my-references}}
List the pages which are referring to the current page.
- {{my-refers}}
List the pages which are referred to the current page.
- {{my-tags -summary 1}}
List the tags associated with the current page.
- {{my-yahoo-publisher -publisher "" -rssurl}}
Name of the publisher, when posting URLs to my yahoo (use in connection with with_yahoo_publisher).
- {{personal-notification-messages -url_poll "" -url_dismiss "" -poll_interval 5000}}
- {{presence -interval 10 minutes -max_users:integer 40 -show_anonymous summary -page}}
Show users actively in the wiki.
- {{random-form-page -form:required -publish_status ready -expires 600}}
Include random form page (instance of the specified form)
- {{recent -max_entries:integer 10 -allow_edit:boolean false -allow_delete:boolean false -pretty_age off}}
Display recent modified entries.
- {{references-graph -folder . -page "" -link_type link -rankdir LR -fontsize 12}}
Include a graph of the (partial) link structure in a wiki, starting either with a page or a folder. When a page is provided, the local link structure of this page is visualized (including incoming and outgoing links of the page; e.g. -page "." for the current page). Alternatively, the content of a folder can be shown.
- {{rss-button -span 10d -name_filter -entries_of -title}}
Include an RSS button referring to pages of the specified time span.
- {{rss-client -url:required -max_entries:integer 15}}
Include RSS content
- {{s5 -category_id -slideshow:boolean false -pagenr 0 -style standard -menu_buttons view edit copy create delete}}
- {{selection -edit_links:boolean true -pages "" -ordered_pages "" -source -publish_status ready -menu_buttons edit -range ""}}
Provide a selection of pages
- {{set-parameter}}
Set a parameter accessible to the current page (for certain tailorings), accessible in the page via e.g. the query parameter interface.
- {{slidy}}
Display a sequence of pages via W3C slidy, based on book includelet
- {{tags -limit:integer 20 -summary:boolean 0 -popular:boolean 0 -page}}
Display specified tags.
- {{timeline -user_id -data timeline-data -interval1 DAY -interval2 MONTH}}
Include a timeline of changes (based on yahoo timeline API)
- {{toc -style "" -renderer "" -open_page "" -book_mode false -folder_mode false -ajax false -expand_all false -remove_levels 0 -category_id -locale "" -orderby "" -source "" -range "" -allow_reorder "" -include_in_foldertree true -CSSclass_top_ul "" -CSSclass_ul ""}}
- {{unread-items -max_entries:integer 20}}
List unread items.
- {{unresolved-references}}
List the pages with unresolved references in the current xowiki/xowf package. This is intended for use by admins.
- {{user-timeline -user_id -data timeline-data -interval1 DAY -interval2 MONTH}}
Include a timeline of changes of the current or specified user (based on yahoo timeline API)
- {{view-item-button -page_id -title View -alt view -link "" -book_mode false}}
Button to view the current or a different page
- {{vspace -height "" -width ""}}
- {{wf-todo -workflow "" -user_id -ical 0 -max_entries}}
- {{yui-carousel -title "" -item_size 600x400 -image_size -num_visible 1 -play_interval 0 -auto_size 0 -folder -glob "" -form ""}}
Include YUI carousel showing the pages of the specified or current folder.
Available Formfield Classes
- -CSSclass form-control
- -form_button_CSSclass btn btn-default
- -form_button_wrapper_CSSclass
- -form_help_text_CSSclass help-block
- -form_item_wrapper_CSSclass form-group
- -form_label_CSSclass
- -form_widget_CSSclass
- CompoundField (superclass FormField)
- -CSSclass compound-field
- -components
- CalendarField (abstract, superclass CompoundField)
- -calendar
- -multiday:boolean false
- -time_label Time
- event (superclass CalendarField)
- time_span (superclass CalendarField)
- FormGeneratorField (abstract, superclass CompoundField)
- TestItemField (abstract, superclass FormGeneratorField)
- -auto_correct:boolean false
- -feedback_level full
- -nr_attachments 15
- -with_correction_notes:boolean true
Abstract class for defining common attributes for all Test Item fields.
- mc_choice (superclass TestItemField)
- -multiple true
- mc_field (superclass TestItemField)
- -n
- mc_interaction (superclass TestItemField)
- -multiple true
- -nr_choices 5
- mc_interaction2 (superclass TestItemField)
- -multiple true
- -nr 25
- pool_question (superclass TestItemField)
- pool_question_placeholder (superclass TestItemField)
- -folder
- -item_types
- -pattern
- reorder_interaction (superclass TestItemField)
- -nr 25
- short_text_field (superclass TestItemField)
- short_text_interaction (superclass TestItemField)
- -nr 25
- test_item (superclass TestItemField)
- -grading exact
- -nr_choices 5
- -question_type mc
Wrapper for composite test items, containing specification for minutes, grading scheme, feedback levels, handling different types of questions ("interactions" in the terminology of QTI). When such a question is saved, an HTML form is generated, which is used as a question.
- test_section (superclass TestItemField)
- -form en:edit-interaction.wf
- -multiple true
- text_interaction (superclass TestItemField)
- upload_interaction (superclass TestItemField)
- TestItemField (abstract, superclass FormGeneratorField)
- comp_correct_when (superclass CompoundField)
- date (superclass CompoundField)
- -display_format %Y-%m-%d %T
- -format DD MONTH YYYY
- mc_alternative (superclass CompoundField)
- -feedback full
- -inplace true
- mc_exercise (superclass CompoundField)
- -feedback full
- -inplace true
- regression_test_compound_numeric (superclass CompoundField)
- regression_test_compound_with_repeat (superclass CompoundField)
- regression_test_compound_with_repeat2 (superclass CompoundField)
- regression_test_mycompound (superclass CompoundField)
- repeatContainer (superclass CompoundField)
- -max 5
- -min 1
- -repeat_add_label [add another]
- -repeat_remove_label Delete
- repeattest (superclass CompoundField)
- text_fields (superclass ShuffleField)
- -descriptions
- -paste:boolean true
- -spellcheck:boolean true
- -substvalues
Provide multiple text and short text entries. This field is a compound field which create for every text field a sub component. When the components are rendered, the items can be shuffled.
- ShuffleField (abstract, superclass FormField)
- -options
- -render_hints
- -show_max
- -shuffle_kind:wordchar none
An abstract class for shuffling options and answers. The options can be used a content of checkboxes, radioboxes and the like. This is particular useful when creating quizzes.
- enumeration (abstract, superclass ShuffleField)
- -category_tree
- -descriptions
- checkbox (superclass enumeration)
- -CSSclass form-check
- boolean_checkbox (superclass checkbox)
- -default t
- radio (superclass enumeration)
- -CSSclass form-check
- select (superclass enumeration)
- -CSSclass form-select
- DD (superclass select)
- HH24 (superclass select)
- MI (superclass select)
- MM (superclass select)
- bootstrap-select (superclass select)
- candidate_box_select (abstract, superclass select)
- -as_box:boolean false
- -bulk_operation:boolean false
- -dnd:boolean true
- -keep_order:boolean false
XOTcl class for selecting a subset from a list of candidates.
- abstract_page (abstract, superclass candidate_box_select)
- -as_box false
- -multiple_style comma
- form_page (superclass abstract_page)
- -entry_label _title
- -form
- -orderby title
- -parent_id *
- -unless
- -where
- page (superclass abstract_page)
- -entry_label name
- -glob
- -type ::xowiki::Page
- -with_subtypes false
- role_member (superclass candidate_box_select)
- -except
- -online_state off
- -role
- class (superclass select)
- -subclass_of ::xotcl::Object
- grading_scheme (superclass select)
- iprange (superclass select)
- mon (superclass select)
- month (superclass select)
- reorder_box (superclass select)
- -shuffle:boolean true
- security_policy (superclass select)
- text_fields (superclass ShuffleField)
- -descriptions
- -paste:boolean true
- -spellcheck:boolean true
- -substvalues
Provide multiple text and short text entries. This field is a compound field which create for every text field a sub component. When the components are rendered, the items can be shuffled.
- boolean_image (superclass FormField)
- -CSSclass img_boolean
- -default t
- -f_img_url /resources/xowiki/examples/check_falsch.png
- -t_img_url /resources/xowiki/examples/check_richtig.png
- file (superclass FormField)
- -choose_file_label
- -link_label
- -multiple:boolean false
- -searchable:boolean false
- -size 40
- -sticky:boolean false
- -viruscheck:boolean true
- image (superclass file)
- -border
- -border-width
- -bottom
- -cssclass
- -float
- -height
- -href
- -left
- -margin
- -margin-bottom
- -margin-left
- -margin-right
- -margin-top
- -padding
- -padding-bottom
- -padding-left
- -padding-right
- -padding-top
- -position
- -right
- -top
- -width
- import_archive (superclass file)
- -cleanup false
- hidden (superclass FormField)
- -max_age:integer
- -sign:boolean false
- inform (superclass FormField)
- label (superclass FormField)
- -disableOutputEscaping:boolean false
- child_pages (superclass label)
- -form
- -publish_status all
- current_state (superclass label)
- -as_graph true
- number (superclass FormField)
- -js_invalid_msg
- -js_validate false
- -max
- -min
- -step
- -td_CSSclass right
- -value
- grade_boundary (superclass number)
- omit (superclass FormField)
- range (superclass FormField)
- -CSSclass form-range
HTML5 range input field. The range input is rendered as a slider by the actual browsers.
- submit_button (superclass FormField)
- text (superclass FormField)
- -maxlength
- -size 80
- color (superclass text)
- correct_when (superclass text)
- datetime (superclass text)
- datetime-local (superclass text)
- -formats "%Y-%m-%dT%H:%M"
- email (superclass text)
- h5date (superclass text)
- -formats "%Y-%m-%d"
- h5time (superclass text)
- -formats "%H:%M"
- image_url (superclass text)
- -border
- -border-width
- -bottom
- -cssclass
- -float left
- -height
- -href
- -left
- -margin
- -margin-bottom
- -margin-left
- -margin-right
- -margin-top
- -padding
- -padding-bottom
- -padding-left
- -padding-right 10px
- -padding-top
- -position
- -right
- -top
- -width
- include (superclass text)
- -resolve_local false
- localized_text (superclass text)
This class can be used to provide an interface for specifying internationalized text strings saved in message keys via input from a form. When editing the content provided via the input field is saved together with an item-specific message keys in the message key tables via lang::util::convert_to_i18n. This formfield class is especially useful for xowiki items which have no language-prefix (e.g. folders or links). In other cases it is probably still a better idea to create same named pages with different language prefixes.
- localized_richtext (superclass richtext)
This class can be used to provide an interface for specifying internationalized text strings saved in message keys via input from a form. Very similar to localized_text
- localized_richtext (superclass richtext)
- numeric (superclass text)
- -connection_locale 1
- -format %.2f
- -keep_string_rep 0
- -strict 0
Field with numeric content. Depending on the format, the accepted value can be either an integer or a floating point number. The widget performs localization based on the setting of :locale. In case 'keep_string_rep' is not true, the widget converts the value to an internal representation to be able to evaluate numeric expressions by this. When 'keep_string_rep' is true, the original string representation is kept, and only validation is performed.
- password (superclass text)
- redirect (superclass text)
- search (superclass text)
- tel (superclass text)
- test_item_name (superclass text)
Name sanitizer for test items
- time (superclass text)
- url (superclass text)
- -link_label
- detail_link (superclass url)
- -link_label more...
- week (superclass text)
- youtube_url (superclass text)
- textarea (superclass FormField)
- -autosave:boolean false
- -cols 80
- -paste:boolean true
- -rows 2
- -spell false
- -spellcheck:boolean true
- code_listing (superclass textarea)
- -cols 80
- -rows 20
- form_constraints (superclass textarea)
- -rows 5
- menuentries (superclass textarea)
- -cols 80
- -rows 10
- richtext (superclass textarea)
- -displayMode standard
- -folder_id
- -height
- -plugins
- -preset standard
- -script_dir
- -width
- -wiki false
- ckeditor4 (superclass richtext)
- -CSSclass xowiki-ckeditor
- -CSSclass xowiki-ckeditor
- -additionalConfigOptions
- -allowedContent
- -callback /* callback code */
- -ck_package standard
- -contentsCss /resources/xowiki/ck_contents.css
- -customConfig config.js
- -destroy_callback /* callback code */
- -extraAllowedContent *(*)
- -extraPlugins
- -imageSelectorDialog /xowiki/ckeditor-images/
- -mode wysiwyg
- -skin bootstrapck,/resources/xowiki/ckeditor4/skins/bootstrapck/
- -submit_callback
- -templates
- -templatesFiles
- -toolbar Full
- -uiColor
- form (superclass richtext)
- -editor none
- -height 200
- localized_richtext (superclass richtext)
This class can be used to provide an interface for specifying internationalized text strings saved in message keys via input from a form. Very similar to localized_text
- tinymce (superclass richtext)
- -additionalConfig
- -customConfig
- -extraPlugins
TinyMCE XoWiki richtext-editor integration.
- wym (superclass richtext)
- -CSSclass wymeditor
- -height
- -plugins hovertools resizable fullscreen
- -skin silver
- -width
- xinha (superclass richtext)
- -CSSclass xinha
- -extraPlugins
- -height
- -javascript
- -slim false
- -style
- -wiki_p true
- workflow_definition (superclass textarea)
- -cols 80
- -dpi 120
- -rows 20
- xowf::Property (abstract, superclass FormField)
- -allow_query_parameter false
- xowf::test_item::td_pretty_value (superclass FormField)