Showing 61 - 70 of 694 Postings (
summary)
Created by gustaf neumann, last modified by Gustaf Neumann 21 Aug 2020, at 04:54 PM
This is the OpenACS Wiki system, built with the xowiki package. This wiki contains user documentation, how-tos, and tips and tricks related to OpenACS. It also serves as a collaboration area for OpenACS contributors.
Quick Links:
Recent Wiki Page Edits:
Events
HOME
Subsystems Documentation
Cookbook
External Resources
OpenACS Projects
Package Documentation
Tutorials for Administrators
Non-Core Packages
Documentation
Tutorials
Core Documentation
Coding Standards
Packages
Created by Gustaf Neumann, last modified by Gustaf Neumann 21 Aug 2020, at 12:47 PM
Newer versions of NaviServer produce by default an error, when a script tries to write a connection, which as already closed by the server (e.g. doing two ad_returndirect in a sequence). Such program code does not make sense and indicates an error that should be fixed.
In general, one can silence the behavior or fix it. To silence the behavior, on can alter the NaviServer config file to silently swallow these error conditions named "rejectalreadyclosedconn". See e.g. Sample configuration file
Recent version of OpenACS (oacs-5-10) have such error conditions already fixed in all the actively maintained packages in the oacs-5-10 branch. In order to fix custom packages, one has to watch out for the following situations:
- Request pages: all after every command that finishes a request a call to "ad_script_abort" is required. Such commands are essentially all "ns_return*" commands and the "ad_*" counterparts.
- Filters: in case, an application handles such commands in filters, the filter has to return with "filter_return" to stop the filter chain (i.e. not to call further filters). Notice that the documentation of ns_register states that the request page is as well handled to trigger e.g. the access log entry. So, in rare conditions, one has to check as well for additional closed cases by using "ns_conn isconnected".
Sometimes, it might be still tricky to find such occurrences. On recent versions of OpenACS one can use the xo* machinery to activate/deactivate Tcl command traces for such commands via ds/shell, like e.g. in:
xo::broadcast send {
set traced_cmds [info commands ::ns_return*]
foreach cmd $traced_cmds {trace add execution $cmd enter {::tcltrace::before}}
}
"xo::broadcast" sends the command to every tcl based thread that executes the provided command. Tracing can be deactivated by replacing "trace add" by "trace remove" in this command.
Plain OpenACS (in oacs-5-10) has as well some support for this via acs-tcl/tcl/tcltrace-init.tcl.
Created by Gustaf Neumann, last modified by Gustaf Neumann 11 Aug 2020, at 09:40 AM
Code metrics and Package Description
Package Specification Summary for Package: xowf-monaco-plugin
Summary: |
|
Description: |
This package is unknown (not available at this site) |
Maturity: |
0 |
This package depends on: |
None |
Packages that depend on xowf-monaco-plugin: |
None |
Package parameters: |
None
|
Bug Tracker Summary for Package: xowf-monaco-plugin
There is no package with the name "xowf-monaco-plugin" known to bug-tracker.
Code Metrics Summary for Package: xowf-monaco-plugin
# Tcl Procs |
0 |
# Tcl Lines |
0 |
# Tcl Blank Lines |
1 |
# Tcl Comment Lines |
0 |
# Automated Tests |
0 |
# Stored Procedures |
PG: 0 ORA: 0 |
# SQL Lines |
PG: 0 (blank 1 comments 0)
ORA: 0 (blank 1 comments 0) |
# ADP pages |
0 |
# ADP lines |
0 |
# Include pages (xowf-monaco-plugin/lib/) |
0 |
# Documentation pages |
0
|
# Documentation lines |
0 |
Browse Source |
Not installed |
Github Repository: |
https://github.com/openacs/xowf-monaco-plugin/tree/oacs-5-10
|
Created by Gustaf Neumann, last modified by Gustaf Neumann 13 Jul 2020, at 02:24 PM
On sites with high number of configured threads and high number of activated packages, the VM size of nsd might become large. One measures is to compile NaviServer and Tcl with the flag SYSTEM_MALLOC, and to run it with a memory efficient malloc library such as TCMalloc (using in the service file LD_PRELOAD=/usr/lib/libtcmalloc.so").
However, even then memory might become short, when "exec" is performed, even via the nsproxy module. The nsproxy module was developed to reduce memory consumption by running a separate process which communicates via pipes to nsd. The nsproxy module is designed to run multiple worker processes (the number can be configured), but when this number runs out (more such worker processes are needed) a new nsproxy worker process has to be created. This happens via a fork() system call under Linux, which can result in an out-of-memory message like the following:
Error: exec: ns_fork() failed: Cannot allocate memory
Error: exec failed: not enough memory
What should one do in such cases? In general, the first rule is to reduce the "exec" calls as far as possible, since these are relative slow and resource intensive, and NaviServer/Tcl provide a large number of built-ins or library functions, which should be used if possible.
Secondly, it is preferable to start many nsproxy workers rather soon in the live-time of nsd (e.g. at startup, when it has a small footprint) and ensure that the nsproxy module keeps these worker process alive a long time (by setting "idletimeout" to a high value)
ns_section ns/server/${server}/module/nsproxy {
# ns_param recvtimeout 5000
# ns_param waittimeout 1000
# ns_param idletimeout 300000
ns_param idletimeout 700000000
}
When all configured nsproxy worker processes are running all the time, there is not need to fork later, and the error above will not occur anymore. The following snippet shows, how to start all nsproxy worker processes by creatin an ns_job queue with sufficient threads, and start a simple command executed by via nsproxy asynchronously (using the "-detached" flag) in parallel.
set concurrency [ns_proxy configure ExecPool -maxslaves]
if {"q1" ni [ns_job queues]} {
ns_job create q1 $concurrency
}
#
# Queue a sufficient number of jobs to be executed in parallel
#
time {ns_job queue -detached q1 {exec sleep 1}} [expr {$concurrency * 2}]
Additionally, versions of NaviServer beyond 4.99.20 show via
ns_proxy stats ExecPool
the number of running worker processes of the ExecPool (also included in the process page of nsstats).
Created by Dave Bauer, last modified by Gustaf Neumann 01 May 2020, at 04:50 PM
MGH and Solution Grove are collaborating on a new image upload widget that will hopefully be easier to use and more easily integrated into any Xinha text element.
Here is how it will work. The user will be editing the content of an object using a rich text editor (XINHA). If they decide an image or reference to a file is needed in the content, they can click the attach-file or attach-image icon. A popup window appears allowing the user to choose a file to upload. The file is uploaded and stored in the content repository. If it is an image a thumbnail will be generated and linked to the full size image. When the content of the object is saved, the content is scanned for references to files or images, and a link is stored in the database that the particular object is "using" a file or image. This is the simplest case. Some more complex cases include allowing the user to search or browse images they have previously uploaded in a popup window to choose and image to insert.

The use case we are trying to solve:
- In assessment, right now an admin can associate one file or image with a question. The admin can already enter HTML for the question description. We need to allow image upload from Xinha so the admin can add an arbitraty number of images to one question description. We need this functionality in any richtext widget within the assessment creation process.
Requirements:
Once we have this in place, we have a simple, site-wide solution to upload image attachments to any object. This can be used in places like forums etc, and solves the problem of figuring out how to configure each Xinha widget in every package to find a place to store images. By attaching the image directly to the object we solve the issue of finding a place to store images.
Future Ideas
These ideas are not planned for an initial implementation, but definitely are on our TODO list
- Add a UI to browse images you uploaded
- Add a UI to allow users to browse any images they can read?
- Add a way to search metadata on images when choosing an image so when you choose the add image button in Xinha, it will allow you to search existing images you have uploaded
- Add a recently viewed/uploaded feature to the image picker, so you can choose an image you recently viewed or uploaded without searching for it
- Here is an example of what that could look like (actual working code exists for this now)
- Add a clipboard feature to the image picker, so you can use the optional clipboard package to mark an image in your clipboard while viewing it, then choose it from the clipboard to insert a link into another object.
Created by Carl Robert Blesius, last modified by Gustaf Neumann 01 May 2020, at 04:49 PM
Training and Hacking Days
The training and hacking days are part of the Fall_Conference_2006 and will be held in parallel at the Boston Museum of Science (details to follow).
Newbie Training for OpenACS/.LRN
This will be held in a beautiful classroom at the Musuem of Science with about 20 computers and taught by Tracy Adams. This is an overview course designed to give you cover just enough of the right topics to lay the foundation for more advanced work. The objective of the day will be to
1) Get hand-on introduction to the very basics
2) Get a high-level introduction to the more advanced topics and know where to go for more.
Agenda
9:30-10 - Preparation time, download and explore your virtual server image
10-11 - The Basics
- TCL Basics - set, list
- ADP Basics - tags
- Templating Basics
- Hands on exercise
11-12 - Package Management, Site Map, Request Processor
- Package Manager, Installation Example
- Site Map Tour - Mounting
- Hands on Exercise - Modifying Site Map
12-1 - Basic Apis
- Procedure Documentation - api_doc
- URL Parameters - ad_page_contract
- Request Parameters - ad_conn
- Protecting pages to members
- Logging ns_log
- Hands on example
1-2 - Lunch at Museum of Science - There is no food or drink in the Museum of Science classrooms.
2-3 - Creating Packages
- Package Info File
- Directory Structure
- Creating Data Model
- Installing Package on System
- Creating Upgrade Script
- Upgrading
- Adding to Site Map
- Hands on Exercise
3-4 Procedures, Forms, Mail
- Forms - ad_form and components
- Mail - acs_mail_lite
- Procedures and self documenting
- Hands on Exercise
4-5 Database API, Displaying Multirow Database Results
- Database API
- Multirow/Multiple
- Hands on Exercise
5-6 Advance Topics
- ACS Objects
- Permission System
Hacking Days (a.k.a. Bug Bash)
more soon
Created by Benjamin Brink, last modified by Gustaf Neumann 01 May 2020, at 04:48 PM
Core packages are defined in CVS. See Aliases_at_CVS
Chart showing core package dependencies according to package specification files for oacs-5-9:

Chart is available in 2 versions:
Created by Carl Robert Blesius, last modified by Gustaf Neumann 01 May 2020, at 11:39 AM
Location
Boston, Massachusetts, USA
Harvard Conference Center
Map (includes location, close hotels, and public transportation stops)
Dates and Schedule
Registration and Fees
- Registration is open. Please let us know if you need any documents beforehand for visa applications or reimbursement
- Fees: Main conference fee is $95 (if you can not afford the cost of the conference please let us know - we will have a discounted rate and financial assistance may be available). Please see the registration page for additional details.

Travel
Weather
Average from Weather Underground
Local Airports
Logan International Airport is the airport in Boston. It is the closest airport to the conference center. Logan's airport code is BOS. International flights can land at Logan.
The Manchester Airport in Manchester, New Hampshire, and T.F. Green in Providence, Rhode Island, are airports within about an hour's drive of Boston and Cambridge. Many inexpensive airlines serve Providence and Manchester. It is possible to get from downtown Providence to Boston via commuter rail or bus. Hanscom Field in Bedford, Massachusetts, about 25 minutes away from Boston, has flights to and from Trenton, New Jersey.
Local Train Stations
Amtrak, the major American rail company, serves several stations in the Boston area. South Station is one of the area's major transit hubs. It is also on the Red Line (subway line). Amtrak also arrives at North Station, which is on the Green Line, and Back Bay station on the Orange Line.
Bus Lines and Subway

Lodging
Hotels
Best Western Inn at Longwood (SOLDOUT)
342 Longwood Ave, Boston, MA 02115
(617) 731-4700 or 1-(800)-GOT BEST
$159/night - "PARTNERS HEALTHCARE" rate
(try to reserve before October 16th to ensure availability)
0.5 miles from conference center
Longwood Guest Suites
63 Parker Hill Avenue, Boston, MA 02120
1-800-246-8357
$132/night - 1 person occupancy
1 mile from conference center
Longwood Inn
123 Longwood Ave, Brookline, MA 02446
1-800-754-6835
$119/night standard rate
0.8 miles from conference center
Looking for Roommates
(please add your name here if you are looking for someone to share a hotel room with)
Crash Space
(please add to these lists with a link to your user profile)
Crash Space Available:
Crash Space Needed:
Who needs a visa to enter the US?
If you are not a resident of the United States, you may need a visa to enter. If you already have a visa and need to enter the US, make sure it will not expire before you use it to apply for admission (entry) at the port. Citizens of the following 27 countries do not need a visa to enter the US for tourism or business for stays of 90 days or less [1]:
Andorra |
Iceland |
Norway |
Australia |
Ireland |
Portugal |
Austria |
Italy |
San Marino |
Belgium |
Japan |
Singapore |
Brunei |
Liechtenstein |
Slovenia |
Denmark |
Luxembourg |
Spain |
Finland |
Monaco |
Sweden |
France |
the Netherlands |
Switzerland |
Germany |
New Zealand |
United Kingdom |
[1] Providing you meet the visa waiver criteria:
a) You must have a machine-readable passport (this means it should have a line of chevrons (e.g., <<< ) valid for six months past your expected stay in the U.S.
b) Any passport issued after October 26, 2005 must include a digital photo.
c) You must have a ticket going out of the US. I.e. only a one-way ticket into the US is not sufficient.
Information for Canadians
Canadian citizens generally do not need either visa or passport to enter the US. All travelers should bring evidence of their identity (e.g., a government photo-id) and citizenship (e.g., a passport; or a birth or citizenship certificate). Fiancees of US citizens, or spouses of US permanent residents, may need a visa even if they are Canadian citizens — especially if they are coming to the US to await final immigration status. .
Getting a visa
To get a visa, contact the nearest US Embassy, Consulate, or other authorized institute to find out how long the process will take (generally anywhere from 3 to 45 days).
Some guidelines for painless visa processing:
- Ask us for a letter of invitation.
- Start applying for a visa early. The basic visa process will not take this long, but you will want time to resubmit the application if necessary, and to buy your tickets after the visa has been granted.
- Prepare for your visa interview/application. You should have
- Your entire travel itinerary, from when you leave your country to when you return
Note that your travel plans depend upon early approval of the visa application
- Your invitation, and printed information about the conference
If you are getting financial support to attend the conference, make sure you have printed documentation of this as well.
- Proof of association with OpenACS and/or .LRN (information about you as a researcher, developer, .LRN user, etc.)
- Evidence that you will return home -- that is, of "binding or sufficient" ties to your home country (normally your country of residence). Useful examples include:
- evidence of family ties in your home country
- evidence of property ownership
- evidence/statements of bank accounts
- an employment contract or letter from an employer demonstrating you have employment beyond the end of your trip
- evidence of attending school, or a letter from a school official demonstrating you will be a student there beyond the end of your trip
Getting visa help
A letter of invitation alone does not guarantee you will be issued a visa. If you have followed the above steps, and your visa application is rejected, let us know immediately. Immigration officials in Massachusetts will contact your embassy to try to overturn the rejection.
If you cannot afford the cost of visas or related fees, let us know. Financial assistance may be available.
Interest in Attending
Enter your name, and any topics you are interested in here Fall Conference 2006 Interest in Attending
Social Program
Dinner on November 1st will take place at
Jasper White's Summer Shack
Starts at 8:00PM
50 Dalton Street in the Back Bay, Boston, MA
across from the Sheraton Hotel entrance and the Hynes Auditorium. Upstairs from Kings Bowling Alley.
Closest Subway T Station: Green Line - Hynes Auditorium.
The social program on subsequent days will be informal and will be announced at the event
Sponsors
Created by Robert Taylor, last modified by Gustaf Neumann 01 May 2020, at 11:37 AM
I added views support to file storage folder-chunk as can be seen here:

Furthermore I added the ability to download checked files (instead of having to download the whole folder). THe name of the zipfile will be the name of the folder you are looking at (so the same as if you download the whole folder).
As the file is zipped, this effectively lets you download a compressed ZIP file, so you don't have to download that much data.

Created by Robert Taylor, last modified by Gustaf Neumann 01 May 2020, at 11:36 AM
One stormy night I was bored ... and this was born:
1. Some links to other design work ideas:
a) http://www.thedesignexperience.org/openacs/oacs-design-hack.png
b) http://www.thedesignexperience.org/openacs/?=
c) http://www.thedesignexperience.org/openacs/image-library
2. I was playing around with a screenshot of openacs.org the other night and I wanted to see what the site would look like with the following criteria:
a) REUSE all standard OACS components. No funky layouts, no funky font work, just standard OACS out of the box layout and components.
b) SIMPLIFY the design. Don't change anything, just remove the unnecessary design components already present. We should NOT get caught up in a multimonth redesign sessions that takes forever to implement. Modify what we have and make it look unified.
c) Consider the UTILITY factor of the website. I don't want to think about the website as a 'special use case' of our toolkit. I would like to re-use our own tools as much as possible. Out of the box the site would default to XoWiki for the content management, we would have the bt, cal and forums tabs as normal. I was playing around with having a PM (pm needs some cleanup) and SEARCH tabs for advanced search and for project managing oacs based activities by those of us that want to use that tool.
3. The oacs logo was stripped of the alex graphic. It was kinda goofy and I'm going to try to work on something and see what I come up with. Maybe we can holda contest for the logo ... the joomla team ended up with a pretty cool logo as a result.
4. I will create a sample site layout here and make it available online live for evaluations by everyone.
5. Here is the sample i was playing around with:
