OpenACS TCL

The Kernel Tcl API library. Contains all the core Tcl API, including the request processor, security and session management, permissions, site-nodes, package management infrastructure, etc.

 

Package Documentation

Procedure Files

lib/actions.adp        
lib/actions.tcl        
lib/ad-return-complaint.adp        
lib/ad-return-error.adp        
lib/complain.adp        
lib/page-error.adp        
lib/page-error.org.adp        
lib/page-error.org.tcl        
lib/page-error.tcl        
lib/progress-bar.adp        
lib/static-progress-bar.adp        
lib/static-progress-bar.tcl        
tcl/00-database-procs-postgresql.tcl       Postgres-specific database API and utility procs. 
tcl/00-database-procs.tcl       An API for managing database queries. 
tcl/10-charset-compat-procs.tcl       Compatibily procs in case we're not running a version of AOLServer that supports charsets. 
tcl/30-xml-utils-procs.tcl       Compatibily procs in case we're not running a version of AOLServer that supports charsets. 
tcl/acs-kernel-procs.tcl        
tcl/acs-permissions-procs.tcl       Tcl procs for the acs permissioning system. 
tcl/acs-private-data-procs.tcl       Tcl procs for managing privacy 
tcl/ad-functional-procs.tcl       Functional Programming in Tcl? - Absolutely! <p> This library adds the expressive power of functional languages like LISP, Gofer or Haskell to the Tcl language! <p> If you don't know what functional programming is, here's a good place to start: <ul> <li><a href="http://www.haskell.org/aboutHaskell.html">http://www.haskell.org/aboutHaskell.html</a> </ul> A general naming convention in this file is: <p> f = a function <br> x = an element <br> xs = a list of elements 
tcl/admin-procs.tcl       Procedures used only in admin pages (mostly the user class stuff). 
tcl/adp-parser-procs.tcl       Routines for a pure-Tcl parser supporting an ADP-like syntax. 
tcl/aolserver-3-procs.tcl       Contains procedures specific to AOLserver 3 (mostly recreating functionality dropped from AOLserver 2). 
tcl/apm-file-procs.tcl       Functions that APM uses to interact with the file system and I/O. 
tcl/apm-install-procs.tcl       Routines used for installing packages. 
tcl/apm-procs.tcl       Routines used by the package manager. 
tcl/apm-xml-procs.tcl       Functions that APM uses to parse and generate XML. 
tcl/application-data-link-procs.tcl       Procs of application data linking 
tcl/application-link-procs.tcl       Procs of application linking 
tcl/callback-procs.tcl       Supports the use of callbacks. 
tcl/community-core-2-procs.tcl       Community routines (dealing with users, parties, etc.). 
tcl/community-core-procs.tcl       Community routines (dealing with users, parties, etc.). 
tcl/defs-procs.tcl       ACS-specific general utility routines. 
tcl/deprecated-utilities-procs.tcl       Provides a variety of non-ACS-specific utilities that have been deprecated Note the 5.2 deprecated procs have been moved to deprecated/5.2/acs-tcl 
tcl/document-procs.tcl       An API for managing documents. 
tcl/ds-stub-procs.tcl       Stub procs for developer support procs we call in acs-tcl for logging. 
tcl/exception-procs.tcl        
tcl/form-processing-procs.tcl       Form processing utilities. 
tcl/html-email-procs.tcl       Contains procs to send HTML email outside of the context of ACS Mail package. 
tcl/http-auth-procs.tcl       Use openacs user logins for HTTP authentication 
tcl/http-client-procs.tcl       Procs for http client comunication 
tcl/image-procs.tcl       Procedures to manage image files. 
tcl/install-procs.tcl       Procs which may be invoked using similarly named elements in an install.xml file. 
tcl/json-procs.tcl       Utility ad_procs for Tcl <-> JSON conversion. 
tcl/membership-rel-procs.tcl       Manage Membership Relations 
tcl/memoize-procs.tcl       Defines a convenient cache mechanism, util_memoize. 
tcl/navigation-callback-procs.tcl       Callback contract definitions for page rendering. 
tcl/navigation-procs.tcl       Provides procedures to spit out the navigational parts of the site. 
tcl/object-procs.tcl       Object support for ACS. 
tcl/object-type-procs.tcl       Supporting procs for ACS Object Types 
tcl/openacs-kernel-procs.tcl       A library of additional OpenACS utilities 
tcl/parameter-procs.tcl       parameter procs 
tcl/pdf-procs.tcl       Functions for handling Template-documents 
tcl/proxy-procs.tcl       Proxy procs 
tcl/request-processor-procs.tcl       The ACS Request Processor: the set of routines called upon every single HTTP request to an ACS server. 
tcl/security-procs.tcl       Provides methods for authorizing and identifying ACS users (both logged in and not) and tracking their sessions. 
tcl/server-cluster-procs.tcl       Provides methods for communicating between load-balanced servers. 
tcl/set-operation-procs.tcl       Simple set-manipulation procedures. 
tcl/site-node-apm-integration-procs.tcl       site node / apm integration procs 
tcl/site-node-object-map-procs.tcl       Portal Node Mappings 
tcl/site-nodes-procs.tcl       site node api 
tcl/sql-statement-procs.tcl       Procs for manipulating SQL statements 
tcl/stack-trace-procs.tcl        
tcl/table-display-procs.tcl       This is the table, dimensional bar and sort tools. 
tcl/tcl-documentation-procs.tcl       Routines to support documenting pages and processing query arguments. 
tcl/tcltrace-procs.tcl       Tcl trace procs, accompanied by tcltrace-init.tcl Add Tcl execution traces to asserted Tcl commands 
tcl/tdom-procs.tcl       Procedures to make parsing XML using TDOM a little easier 
tcl/text-html-procs.tcl       Contains procs used to manipulate chunks of text and html, most notably converting between them. 
tcl/user-extensions-procs.tcl       Procs to manage extensions to user data. 
tcl/util-diff-procs.tcl       Procedures to generate pretty formatted diffs of some text 
tcl/utilities-procs.tcl       Provides a variety of non-ACS-specific utilities, including the procs to support the who's online feature. 
tcl/whos-online-procs.tcl       Provides support for registering which users are online. 
tcl/widgets-procs.tcl       UI widgets for use in forms, etc. 
tcl/xml-0-sgml-procs.tcl        
tcl/xml-1-dom-procs.tcl       # dom.tcl -- # # This file implements the Tcl language binding for the DOM - # the Document Object Model. 
tcl/xml-2-procs.tcl        

Procedures

NsSettoTclString       returns a plain text version of the passed ns_set id 
acs_community_member_admin_link        
acs_community_member_admin_url        
acs_community_member_link        
acs_community_member_page        
acs_community_member_url        
acs_magic_object       Returns the object ID of a magic object. 
acs_object::get       Gets information about an acs_object. 
acs_object::get_element       Gets a specific element from the info returned by acs_object::get. 
acs_object::object_p        
acs_object::package_id       Gets the package_id of the object 
acs_object::package_id_not_cached       Gets the package_id of the object 
acs_object::set_context_id       Sets the context_id of the specified object. 
acs_object_name       Returns the name of an object. 
acs_object_type       Returns the type of an object. 
acs_object_type::get       Get info about an object type. 
acs_object_type_hierarchy       Returns an HTML snippet representing a hierarchy of ACS Object Types 
acs_privacy::privacy_control_enabled_p       Returns whether privacy control is turned on or not. 
acs_privacy::privacy_control_set       set the privacy control 
acs_privacy::set_user_read_private_data       grant permission to access private data 
acs_privacy::user_can_read_private_data_p       check if a user can access an object's private data 
acs_user::ScreenName       Get the value of the ScreenName parameter. 
acs_user::approve       Approve a user 
acs_user::ban       Ban a user 
acs_user::change_state       Change the membership state of a user. 
acs_user::delete       Delete a user 
acs_user::flush_cache       Flush the acs_user::get cache for the given user_id. 
acs_user::get       Get basic information about a user. 
acs_user::get_by_username       Returns user_id from authority and username. 
acs_user::get_by_username_not_cached       Returns user_id from authority and username. 
acs_user::get_element       Get a particular element from the basic information about a user returned by acs_user::get. 
acs_user::get_portrait_id       Return the image_id of the portrait of a user, if it does not exist, return 0 
acs_user::get_portrait_id_not_cached       Return the image_id of the portrait of a user, if it does not exist, return 0 
acs_user::get_user_id_by_screen_name       Returns the user_id from a screen_name, or empty string if no user found. 
acs_user::registered_user_p       Return 1 if the specified user (defaults to logged in user) is a registered user and 0 otherwise. 
acs_user::reject       Reject a user 
acs_user::site_wide_admin_p       Return 1 if the specified user (defaults to logged in user) is site-wide administrator and 0 otherwise. 
acs_user::unapprove       Unapprove a user 
acs_user::update       Update information about a user. 
acs_user_extension::list_extensions       List the extensions (User Data contract) 
acs_user_extension::user_approve       Notifies packages when a user is approved. 
acs_user_extension::user_deapprove       Notifies packages when a user is deapproved. 
acs_user_extension::user_delete       Notifies packages when a user is deleted. 
acs_user_extension::user_modify       Notifies packages when a user is modified. 
acs_user_extension::user_new       Notifies packages when a new user is added to the system. 
ad_acs_admin_node        
ad_acs_administrator_exists_p        
ad_acs_kernel_id       Returns the package_id of the kernel. 
ad_acs_release_date       The OpenACS release date of this instance. 
ad_acs_version       The OpenACS version of this instance. 
ad_acs_version_no_cache       The OpenACS version of this instance. 
ad_admin_context_bar       Returns a Yahoo-style hierarchical navbar. 
ad_admin_footer       Signs pages with ad_admin_owner (usually a programmer who can fix bugs) rather than the signatory of the user pages 
ad_admin_header        
ad_admin_home       Returns the directory for the admin home. 
ad_admin_owner        
ad_admin_present_user       This function is an alias to acs_community_member_admin_link and receives identical parameters, but the former finds out the name of the user if a blank is passed. 
ad_apply       Evaluates the first argument with ARGLIST as its arguments, in the environment of its caller. 
ad_approval_system_inuse_p       Returns 1 if the system is configured to use and approval system. 
ad_block_sql_urls       A filter that detect attempts to smuggle in SQL code through form data variables. 
ad_cache_returnredirect       An addition to ad_returnredirect. 
ad_call_proc_if_exists       Calls a procedure with particular arguments, only if the procedure is defined. 
ad_change_password       Change the user's password 
ad_check_password       Returns 1 if the password is correct for the given user ID. 
ad_choice_bar       Displays a list of choices (Yahoo style), with the currently selected one highlighted. 
ad_color_to_hex       Converts a string of the form 0,192,255 to a string of the form #00C0FF. 
ad_color_widget       Returns a color selection widget, optionally using JavaScript. 
ad_color_widget_js       Returns JavaScript code necessary to use color widgets. 
ad_column_type        
ad_complain       Used to report a problem while validating user input. 
ad_conn       Returns a property about the connection. 
ad_context_bar       Returns a Yahoo-style hierarchical navbar. 
ad_context_bar_html       Generate the an html fragement for a context bar. 
ad_context_bar_multirow       Returns a Yahoo-style hierarchical navbar. 
ad_context_bar_ws       Returns a Yahoo-style hierarchical navbar. 
ad_context_bar_ws_or_index       Returns a Yahoo-style hierarchical navbar. 
ad_context_node_list       Starting with the given node_id, return a list of [list url instance_name] items for parent nodes. 
ad_convert_to_html       Convenient interface to convert text or html into html. 
ad_convert_to_text       Convenient interface to convert text or html into plaintext. 
ad_custom_form       sets up the head of a form to feed to /tools/form-custom.tcl 
ad_custom_list       Generates the html fragment for choosing, editing and creating user customized data 
ad_custom_load       load a persisted user customization as saved by for example table-custom.tcl. 
ad_custom_page_defaults       set the page defaults. 
ad_dateentrywidget       Returns form pieces for a date entry widget. 
ad_db_select_widget       given a sql query this generates a select group. 
ad_dbclick_check_dml       This proc is used for pages using double click protection. 
ad_decode       this procedure is analogus to sql decode procedure. 
ad_decorate_top       Use this for pages that might or might not have an image defined in ad.ini; if the second argument isn't the empty string, ad_decorate_top will make a one-row table for the top of the page 
ad_dimensional_set_variables       set the variables defined in option_list from the form provided (form defaults to ad_conn form) or to default value from option_list if not in the form data. 
ad_dimensional_settings       given a dimensional slider definition this routine returns a form to set the defaults for the given slider. 
ad_enhanced_text_to_html       Converts enhanced text format to normal HTML. 
ad_enhanced_text_to_plain_text       Converts enhanced text format to normal plaintext format. 
ad_export_vars       <b><em>Note</em></b> This proc is deprecated in favor of <a href="/api-doc/proc-view?proc=export_vars"><code>export_vars</code></a>. 
ad_footer       Writes a horizontal rule, a mailto address box (ad_system_owner if not specified as an argument), and then closes the BODY and HTML tags 
ad_form       This procedure implements a high-level, declarative syntax for the generation and handling of HTML forms. 
ad_form_new_p       This is for pages built with ad_form that handle edit and add requests in one file. 
ad_generate_random_string       Generates a random string made of numbers and letters 
ad_generic_optionlist       Use this to build select form fragments. 
ad_get_client_property       Looks up a property for a session. 
ad_get_cookie       Returns the value of a cookie, or $default if none exists. 
ad_get_login_url       Returns a URL to the login page of the closest subsite, or the main site, if there's no current connection. 
ad_get_logout_url       Returns a URL to the logout page of the closest subsite, or the main site, if there's no current connection. 
ad_get_signed_cookie       Retrieves a signed cookie. 
ad_get_signed_cookie_with_expr       Retrieves a signed cookie. 
ad_get_tcl_call_stack       Returns a stack trace from where the caller was called. 
ad_get_user_id       Gets the user ID. 
ad_get_user_info       Sets first_names, last_name, email in the environment of its caller. 
ad_header       writes HEAD, TITLE, and BODY tags to start off pages in a consistent fashion 
ad_header_with_extra_stuff       This is the version of the ad_header that accepts extra stuff for the document head and pre-page content html 
ad_host       Returns the hostname as it was typed in the browser, provided forcehostp is set to 0. 
ad_host_administrator       As defined in the HostAdministrator kernel parameter. 
ad_html_colors       Returns an array of HTML colors and names. 
ad_html_security_check       Returns a human-readable explanation if the user has used any HTML tag other than the ones marked allowed in antispam section of ad.ini. 
ad_html_text_convert       Converts a chunk of text from a variety of formats to either text/html or text/plain. 
ad_html_text_convertable_p       Returns true of ad_html_text_convert can handle the given from and to mime types. 
ad_html_to_text       Returns a best-guess plain text version of an HTML fragment. 
ad_httpget       Just like ns_httpget, but first headers is an ns_set of headers to send during the fetch. 
ad_include_contract       Define interface between a page and an <include> similar to the page_contract. 
ad_integer_optionlist       Produces an optionlist for a range of integers from start_value to end_value. 
ad_job       Convenience wrapper for simple usages of ns_job provided by AOLServer and NaviServer. 
ad_log       Output ns_log message with detailed context. 
ad_log_stack_trace       A wrapper for ad_print_stack_trace which does the logging for you. 
ad_looks_like_html_p       Tries to guess whether the text supplied is text or html. 
ad_maybe_redirect_for_registration       Checks to see if a user is logged in. 
ad_mutex_eval       Compatibility proc for handling differences between NaviServer and AOLserver since AOLserver does not support "ns_mutex eval". 
ad_navbar       produces navigation bar. 
ad_new_sort_by       Makes a new sort_by string, sorting by "key". 
ad_ns_set_keys       Returns the keys of a ns_set as a Tcl list, like <code>array names</code>. 
ad_ns_set_to_tcl_vars       Takes an ns_set and sets variables in the caller's environment correspondingly, i.e. 
ad_order_by_from_sort_spec       Takes a sort_by spec, and translates it into into an "order by" clause with each sort_by key dictated by the sort info in tabledef 
ad_outgoing_sender        
ad_package_admin_home        
ad_page_contract       Specifies the contract between programmer and graphic designer for a page. 
ad_page_contract_eval       This just uplevels it's args. 
ad_page_contract_filter       Declare a filter to be available for use in ad_page_contract. 
ad_page_contract_filter_invoke       Invokes a filter on the argument and returns the result (1 or 0). 
ad_page_contract_filter_priority       Returns the type of proc that executes the given ad_page_contract filter, or the empty string if the filter is not defined. 
ad_page_contract_filter_proc       Returns the proc that executes the given ad_page_contract filter. 
ad_page_contract_filter_proc_allhtml       Allows any html tags (a no-op filter) 
ad_page_contract_filter_proc_boolean       Checks whether the value is boolean (1 or 0) or predicate (t or f) or otherwise a 2 state value (true or false, y or n, yes or no) 
ad_page_contract_filter_proc_date       Validates date type variables 
ad_page_contract_filter_proc_email       Checks whether the value is a valid email address (stolen from philg_email_valid_p) 
ad_page_contract_filter_proc_float       Checks to make sure that the value in question is a valid number, possibly with a decimal point - randyb took this from the ACS dev bboard 
ad_page_contract_filter_proc_html       Checks whether the value contains naughty HTML 
ad_page_contract_filter_proc_integer       Checks whether the value is a valid integer, and removes any leading zeros so as not to confuse Tcl into thinking it's octal. 
ad_page_contract_filter_proc_naturalnum       Checks whether the value is a valid integer >= 0, and removes any leading zeros so as not to confuse Tcl into thinking it's octal. 
ad_page_contract_filter_proc_negative_float       Same as float but allows negative numbers too 
ad_page_contract_filter_proc_nohtml       Doesn't allow any HTML to pass through. 
ad_page_contract_filter_proc_path       Checks whether the value is a Tcl word, or contains a few rather safe other characters ("-", "/", ".") used in (file-system) paths 
ad_page_contract_filter_proc_phone       Checks whether the value is more or less a valid phone number with the area code. 
ad_page_contract_filter_proc_range       Checks whether the value falls between the specified range. 
ad_page_contract_filter_proc_sql_identifier       Checks whether the value is a valid SQL identifier 
ad_page_contract_filter_proc_string_length       Checks whether the string is less or greater than the minimum or maximum length specified, inclusive e.g.address_1:notnull,string_length(max|100) will test address_1 for maximum length of 100. 
ad_page_contract_filter_proc_string_length_range       Checks whether the string is within the specified range, inclusive 
ad_page_contract_filter_proc_time       Validates time type variables of the regular variety (that is 8:12:21 PM) 
ad_page_contract_filter_proc_time24       Validates time type variables of the 24HR variety (that is 20:12:21) 
ad_page_contract_filter_proc_tmpfile       Checks to see that the tmpfile path is allowed on the system 
ad_page_contract_filter_proc_token       Checks whether the value is a Tcl word, or contains a few rather safe other characters (".", ",", "-") used e.g. 
ad_page_contract_filter_proc_usphone       Checks whether the value is more or less a valid US phone number with the area code. 
ad_page_contract_filter_proc_word       Checks whether the value is a Tcl word, i.e. 
ad_page_contract_filter_rule       A filter rule determines what filters are applied to a given value. 
ad_page_contract_filter_rule_proc       Returns the proc that executes the given ad_page_contract default-filter. 
ad_page_contract_filter_rule_proc_html       Makes sure the filter nohtml gets applied, unless some other html filter (html or allhtml) is already specified. 
ad_page_contract_filter_rule_proc_tmpfile       Makes sure the tmpfile filter gets applied for all vars named *.tmpfile. 
ad_page_contract_filter_rule_script       Returns the proc that executes the given ad_page_contract default-filter. 
ad_page_contract_filter_script       Returns the type of proc that executes the given ad_page_contract filter, or the empty string if the filter is not defined. 
ad_page_contract_filter_type       Returns the type of proc that executes the given ad_page_contract filter, or the empty string if the filter is not defined. 
ad_page_contract_get_variables       Returns a list of all the formal variables specified in ad_page_contract. 
ad_page_contract_handle_datasource_error       Output a diagnostic page. 
ad_page_contract_verify_datasources       Check if all the datasources (properties) promised in the page contract have actually been set. 
ad_parameter       Package instances can have parameters associated with them. 
ad_parameter_all_values_as_list       Returns multiple values for a parameter as a list. 
ad_parameter_from_file       This proc returns the value of a parameter that has been set in the parameters/ad.ini file. 
ad_parse_html_attributes       This is a wrapper proc for <a href="/api-doc/proc-view?proc=ad_parse_html_attributes_upvar"><code>ad_parse_html_attributes_upvar</code></a>, so you can parse attributes from a string without upvar'ing. 
ad_parse_html_attributes_upvar       Parse attributes in an HTML fragment and return them as a list of lists. 
ad_permission_grant       Grant a permission 
ad_permission_p        
ad_permission_revoke       Revoke a permission 
ad_port       Returns the port as it was typed in the browser, provided forcehostp is set to 0. 
ad_present_user       This function is an alias to acs_community_member_link and receives identical parameters, but the former finds out the name of the user if a blank is passed. 
ad_pretty_mailing_address_from_args       Returns a prettily formatted address with country name, given an address. 
ad_print_stack_trace       Formerly known as PrintStackTrace. 
ad_privacy_threshold       Pages that are consider whether to display a user's name or email address should test to make sure that a user's priv_ from the database is less than or equal to what ad_privacy_threshold returns. 
ad_process_color_widgets       Sets variables corresponding to the color widgets named in $args. 
ad_progress_bar_begin       Return a proress bar. 
ad_progress_bar_end       Ends the progress bar by causing the browser to redirect to a new URL. 
ad_publisher_name       A human-readable name of the publisher, suitable for legal blather. 
ad_pvt_home       This is the URL of a user's private workspace on the system, usually [subsite]/pvt/home.tcl 
ad_pvt_home_link        
ad_pvt_home_name       This is the name that will be used for the user's workspace (usually "Your Workspace"). 
ad_quotehtml       Quotes ampersands, double-quotes, and angle brackets in $arg. 
ad_redirect_for_registration       Redirects user to [subsite]/register/index to require the user to register. 
ad_register_filter       Registers a filter that gets called during page serving. 
ad_register_proc       Registers a procedure (see ns_register_proc for syntax). 
ad_require_permission        
ad_restrict_entire_server_to_registered_users       A preauth filter that will halt service of any page if the user is unregistered, except the site index page and stuff underneath [subsite]/register. 
ad_restrict_to_https       Redirects user to HTTPS. 
ad_return       Works like the "return" Tcl command, with one difference. 
ad_return_complaint       Custom implementation of ad_return_complaint which allows for returning err msg only. 
ad_return_error       Returns a page with the HTTP 500 (Error) code, along with the given title and explanation. 
ad_return_exception_page       Returns an exception page. 
ad_return_forbidden       Returns a page with the HTTP 403 (Forbidden) code, along with the given title and explanation. 
ad_return_if_another_copy_is_running       Returns a page to the user about how this server is busy if another copy of the same script is running. 
ad_return_string_as_file       Return a string as the content of a file 
ad_return_top_of_page       Returns HTTP headers plus the top of the user-visible page. 
ad_return_url       Build a return url suitable for passing to a page you expect to return back to the current page. 
ad_return_warning       Returns a page with the HTTP 200 (Success) code, along with the given title and explanation. 
ad_returnredirect       Write the HTTP response required to get the browser to redirect to a different page, to the current connection. 
ad_reverse       returns the opposite sort order from the one it is given. 
ad_same_page_link       Makes a link to this page, with a new value for "variable". 
ad_schedule_proc       Replacement for ns_schedule_proc and friends, allowing us to track what's going on. 
ad_script_abort       Aborts the current running Tcl script, returning to the request processor. 
ad_secure_conn_p       Use security::secure_conn_p instead. 
ad_server_modules       Return the list of the available sever modules 
ad_set_client_property       Sets a client (session-level) property. 
ad_set_cookie       Sets a cookie. 
ad_set_element_value       Set the value of a particular element in the current form being built by ad_form. 
ad_set_form_values       Set multiple values in the current form. 
ad_set_signed_cookie       Sets a signed cookie. 
ad_set_typed_form_variable_filter       <pre> # # Register special rules for form variables. 
ad_sign       Returns a digital signature of the value. 
ad_site_home_link        
ad_sort_primary_key       return the primary (first) key of an order spec used by 
ad_sql_append       Adds to the SQL statement. 
ad_sql_get        
ad_system_name       This is the main name of the Web service that you're offering on top of the OpenACS Web Publishing System. 
ad_system_owner       Person who owns the service this person would be interested in user feedback, etc. 
ad_table       DRB: New code should use the listbuilder. 
ad_table_column_list       build a list of pointers into the list of column definitions <p> returns a list of indexes into the columns one per column it found <p> -sortable from t/f/all 
ad_table_form       builds a form for chosing the columns to display <p> columns is a list of the currently selected columns. 
ad_table_orderby_sql       create the order by clause consistent with the orderby and order variables and the datadef which built the table 
ad_table_same       Called from inside ad_table. 
ad_table_sort_form       builds a form for setting up custom sorts. 
ad_table_span       given string the function generates a row which spans the whole table. 
ad_tcl_list_list_to_ns_set       Takes a list of lists of key/value pairs and <code>ns_set update</code>s values in an ns_set. 
ad_tcl_vars_list_to_ns_set       Takes a Tcl list of variable names and <code>ns_set update</code>s values in an ns_set correspondingly: key is the name of the var, value is the value of the var. 
ad_tcl_vars_to_ns_set       Takes a list of variable names and <code>ns_set update</code>s values in an ns_set correspondingly: key is the name of the var, value is the value of the var. 
ad_text_to_html       Converts plaintext to html. 
ad_tmpdir       Convenience function to return the tmp directory 
ad_tmpnam       A stub function to replace the deprecated "ns_tmpnam", which uses the deprecated C-library function "tmpnam()" 
ad_unquotehtml       reverses ad_quotehtml 
ad_unset_cookie       Un-sets a cookie. 
ad_url       This will be called by email alerts. 
ad_urldecode_path       decode provided string with url-encoding for paths (instead of queries) as defined in RFC 3986 
ad_urldecode_query       decode provided string with url-encoding for query (instead of paths) as defined in RFC 3986 
ad_urlencode       same as ns_urlencode except that dash and underscore are left unencoded. 
ad_urlencode_path       encode provided string with url-encoding for paths (instead of queries) as defined in RFC 3986 
ad_urlencode_query       encode provided string with url-encoding for query (instead of paths) as defined in RFC 3986 
ad_user_login       Logs the user in, forever (via the user_login cookie) if -forever is true. 
ad_user_logout       Logs the user out. 
ad_user_new       Creates a new user in the system. 
ad_var_type_check_dirname_p       <pre> # # return 0 if $value contains a / or \, 1 otherwise. 
ad_var_type_check_fail_p       <pre> # # A check that always returns 0. 
ad_var_type_check_integer_p       <pre> # # return 1 if $value is an integer, 0 otherwise. 
ad_var_type_check_integerlist_p       <pre> # # return 1 if list contains only numbers, spaces, and commas. 
ad_var_type_check_nocheck_p       <pre> # # return 1 regardless of the value. 
ad_var_type_check_noquote_p       <pre> # # return 1 if $value contains any single-quotes # <pre> 
ad_var_type_check_number_p       <pre> # # return 1 if $value is a valid number # <pre> 
ad_var_type_check_safefilename_p       <pre> # # return 0 if the file contains ".." # <pre> 
ad_var_type_check_third_urlv_integer_p       <pre> # # Returns 1 if the third path element in the URL is integer. 
ad_var_type_check_word_p       <pre> # # return 1 if $value contains only letters, numbers, dashes, # and underscores, otherwise returns 0. 
ad_verify_and_get_user_id       Returns the current user's ID. 
ad_verify_install       Returns 1 if the acs is properly installed, 0 otherwise. 
ad_verify_signature       Verifies a digital signature. 
ad_verify_signature_with_expr       Verifies a digital signature. 
api_page_documentation_mode_p       Determines whether the thread is in "gathering documentation" or "executing the page" mode. 
apm::convert_type       Convert a package instance to a new type, doing the proper instantiate and mount callbacks and parameter creation. 
apm::get_package_descendent_options       Get a list of pretty name, package key pairs for all packages which are descendents of the given package key. 
apm::metrics       Return some code metrics about the files in package $package_key. 
apm::process_install_xml       process an xml install definition file which is expected to contain directives to install, mount and configure a series of packages. 
apm_arg_names_for_callback_type       Return the list of required argument names for the given callback type. 
apm_assert_callback_type_supported       Throw an error if the given callback type is not supported. 
apm_body_callback       This callback uses the document api to append more text to the stream. 
apm_build_one_package_relationships       Builds the nsv dependency structures for a single package. 
apm_build_package_relationships       Builds the nsv dependency and ancestor structures. 
apm_build_subsite_packages_list       Build the nsv_set cache of all packages which claim to implement subsite semantics. 
apm_callback_and_log       Executes the $callback callback routine with $message as an argument, and calls ns_log with the given $severity. 
apm_callback_format_args       Return a string on format -arg_name1 arg_value1 -arg_name2 arg_value2 ... 
apm_callback_type_supported_p       Return 1 if the given type of callback is supported and 0 otherwise. 
apm_copy_inherited_params       Copy parameters from a packages ancestors. 
apm_copy_param_to_descendents       Copy a new parameter in a package to its descendents. 
apm_db_type_keys       Returns a list of valid database type keys. 
apm_dependency_add       Add a dependency to a version. 
apm_dependency_provided_p       Returns 1 if the current system provides the dependency inquired about. 
apm_dependency_remove       Removes a dependency from the system. 
apm_doc_body_callback       This callback uses the document api to append more text to the stream. 
apm_dummy_callback       A dummy callback routine which does nothing. 
apm_enabled_packages       Returns a list of package_key's for all enabled packages. 
apm_file_type_keys       Returns a list of valid file type keys. 
apm_file_type_names       Returns an array list with filetypes as keys and filetype pretty names as values. 
apm_file_watch       Marks the file of the indicated path to be watched. 
apm_file_watch_cancel       Stop watching a certain file, or all watched files if path is not specified. 
apm_file_watchable_p       Given the path of a file determine if it is appropriate to be watched for reload. 
apm_get_callback_proc       Return Tcl procedure name for the callback of a certain type for the given package. 
apm_get_installed_provides       Sets the dependencies provided by the packages installed on this system in an array keyed by dependency service-uri. 
apm_get_installed_versions       Sets the current installed version of packages installed on this system in an array keyed by package_key. 
apm_get_repository_channel       Returns the channel to use when installing software from the repository. 
apm_get_repository_channels       Returns the channels and urls from a repository 
apm_highest_version       Return the highest version of the indicated package. 
apm_highest_version_name       Return the highest version of the indicated package. 
apm_instance_name_from_id        
apm_interface_add       Add a interface to a version. 
apm_interface_remove       Removes a interface from the system. 
apm_invoke_callback_proc       Invoke the Tcl callback proc of a given type for a given package version. 
apm_load_any_changed_libraries       In the running interpreter, reloads files marked for reload by apm_mark_version_for_reload. 
apm_load_packages       Load Tcl libraries and queries for the packages with given keys. 
apm_load_tests_p       Determine whether to load acs-automated-testing tests for packages. 
apm_log       Centralized APM logging. 
apm_ns_write_callback       A simple callback which prints out the log message to the server stream. 
apm_num_instances        
apm_one_package_descendents       Returns a list of package keys of all packages that inherit from the given package 
apm_one_package_inherit_order       Returns a list of package keys in package inheritance order. 
apm_one_package_load_libraries_dependencies       Generate a list of package keys in library load dependency order. 
apm_package_descendents       Wrapper that returns the cached package descendents list. 
apm_package_enabled_p       Returns 1 if there is an enabled package version corresponding to the package_key and 0 otherwise. 
apm_package_id_from_key        
apm_package_ids_from_key        
apm_package_info_file_path       Returns the path to a .info file in a package directory, or throws an error if none exists. 
apm_package_inherit_order       Wrapper that returns the cached package inheritance order list. 
apm_package_installed_p       Returns 1 if there is an installed package version corresponding to the package_key, 0 otherwise. 
apm_package_instance_delete       Deletes an instance of a package 
apm_package_instance_new       Creates a new instance of a package and calls the post instantiation proc, if any. 
apm_package_key_from_id        
apm_package_key_from_version_id       Returns the package_key for the given APM package version id. 
apm_package_list_url_resolution       Use a left-right, breadth-first traverse of the inheritance DAG to build a structure to be used by the request processor to resolve URLs based on a package's "extends" and "embeds" dependencies. 
apm_package_load_libraries_order       Wrapper that returns the cached package library load order list. 
apm_package_parameters        
apm_package_register       Register the package in the system. 
apm_package_registered_p       Returns 1 if there is a registered package with the indicated package_key. 
apm_package_rename       Renames a package instance 
apm_package_supported_databases       Return a list of db types (i.e. 
apm_package_url_from_id       Will return the first url found for a given package_id 
apm_package_url_from_key        
apm_package_url_resolution       Wrapper that returns the cached package search order list. 
apm_package_version_count        
apm_package_version_enabled_p        
apm_package_version_installed_p        
apm_parameter_register       Register a parameter in the system. 
apm_parameter_sync       Syncs the parameters in the database with the memory cache. 
apm_parameter_unregister       Unregisters a parameter from the system. 
apm_parameter_update        
apm_read_package_info_file       Reads a .info file, returning an array containing the following items: <ul> <li><code>path</code>: a path to the file read <li><code>mtime</code>: the mtime of the file read <li><code>provides</code>, <code>embeds</code>, <code>extends</code>, and <code>requires</code>: <p> lists of dependency information, containing elements of the form <code>[list $url $version]</code> <li><code>owners</code>: a list of owners containing elements of the form <code>[list $url $name]</code> <li><code>files</code>: a list of files in the package, containing elements of the form <code>[list $path $type]</code> NOTE: Files are no longer stored in info files but are always retrieved directly from the file system. 
apm_remove_callback_proc       Remove the callback of a certain type for the given package. 
apm_scan_packages       Scans a directory for unregistered package specification files. 
apm_set_callback_proc       Set the name of an APM Tcl procedure callback for a certain package version. 
apm_simple_package_install       Simple basic package install function. 
apm_supported_callback_types       Gets the list of package callback types that are supported by the system. 
apm_unregister_disinherited_params       Remove parameters for package_key that have been disinherited (i.e., the dependency that caused them to be inherited have been removed). 
apm_unused_callback_types       Get a list enumerating the supported callback types that are not used by the given package version. 
apm_upgrade_logic       Logic to help upgrade a package. 
apm_version_disable       Disables a version of a package. 
apm_version_enable       Enables a version of a package (disabling any other version of the package). 
apm_version_get       Gets information about a package version. 
apm_version_id_from_package_key       Return the id of the enabled version of the given package_key. 
apm_version_info       Sets a set of common package information in the caller's environment. 
apm_version_installed_p        
apm_version_loaded_p       Returns 1 if a version of a package has been loaded and initialized, or 0 otherwise. 
apm_version_names_compare       Compare two version names for which is earlier than the other. 
apm_version_sortable       Return a sortable version of the version name. 
apm_version_update       Update a version in the system to new information. 
apm_workspace_dir       Return the path to the apm-workspace, creating the directory if necessary. 
apm_workspace_install_dir       Return the path to the installation directory of the apm-workspace, creating the directory if necessary. 
application_data_link::delete_from_list       Delete references 
application_data_link::delete_links       Delete application data links for all objects linking to the given object_id. 
application_data_link::exist_link       Check for the existence of a link from an object_id to a target_object_id, with optional relation_tag. 
application_data_link::get       Retrieves a list of object_ids for all objects linked to the given object_id, tagged with the optional relation_tag. 
application_data_link::get_linked       Placeholder for contacts to work on 5.1 
application_data_link::get_linked_content       Gets the content of the linked object. 
application_data_link::get_linked_content_not_cached       Gets the content of the linked object. 
application_data_link::get_linked_not_cached       Gets the ID for the object linked to from_object_id and matches the to_object_type. 
application_data_link::get_links_from       Get a list of objects that are linked from an object, possible using the relation_tag. 
application_data_link::get_links_to       Get a list of objects that are linked to an object, possible using the relation_tag. 
application_data_link::link_exists       Check if a link exists, only checks in the directon requested. 
application_data_link::new       Create a new data link between this_object_id and target_object_id. 
application_data_link::new_from       Create a new data link between this_object_id and target_object_id. 
application_data_link::new_to       Create a new data link between this_object_id and target_object_id. 
application_data_link::relation_tag_where_clause       Utility proc to return relation tag where clause fragment. 
application_data_link::scan_for_links       Search for object references within text Supports /o/ /file/ /image/ object URL formats 
application_data_link::update_links_from       Update the references to this object in the database, optionally update links using the given relation_tag. 
application_link::delete_links       Delete application links for all packages linking to the given package_id. 
application_link::get       Retrieves a list of package_ids for all applications linked to the given package_id. 
application_link::get_linked       Placeholder for contacts to work on 5.1 
application_link::new       Create a new link between this_package_id and target_package_id. 
build_mime_message       Composes multipart/alternative email containing plain text and html versions of the message, parses out the headers we need, constructs an array and returns it to the caller. 
callback::get_object_type_impl       Finds the most type specific implementation of <code>callback</code>. 
callback::impl_exists       Returns whether the specified implementation exists. 
callback::navigation::package_admin::contract       <p>Returns the list of available admin actions for the passed in user on the passed in package_id.</p> <pre> { {LINK url_stub text title_text long_text} {SECTION title long_text} } </pre> <p>Where LINK and SECTION are the literal strings.</p> <p>For LINK the url and text are required, text and title should be plain text but long_text should be html (and renderers should present it noquote).</p> <p>For SECTION both title and long_text can be blank which for the rendering agent would imply a section break with something like blank space or an &lt;hr&gt; tag. 
cc_email_from_party        
cc_email_user       Returns the user ID for a particular email address, or an empty string if none exists. 
cc_name_to_group       Returns the group ID for a particular name, or an empty string if none exists. 
cc_screen_name_user       Returns the user ID for a particular screen name, or an empty string if none exists. 
check_for_form_variable_naughtiness       stuff to process the data that comes back from the users if the form looked like <input type=text name=yow> and <input type=text name=bar> then after you run this function you'll have Tcl vars $foo and $bar set to whatever the user typed in the form this uses the initially nauseating but ultimately delicious Tcl system function "uplevel" that lets a subroutine bash the environment and local vars of its caller. 
country_widget       Returns a country selection box. 
db_0or1row       Usage: <blockquote> db_0or1row <i>statement-name sql</i> [ -bind <i>bind_set_id</i> | -bind <i>bind_value_list</i> ] [ -column_array <i>array_name</i> | -column_set <i>set_name</i> ] </blockquote> <p>Performs the SQL query sql. 
db_1row       Usage: <blockquote> db_1row <i>statement-name sql</i> [ -bind <i>bind_set_id</i> | -bind <i>bind_value_list</i> ] [ -column_array <i>array_name</i> | -column_set <i>set_name</i> ] </blockquote> <p>Performs the SQL query sql. 
db_abort_transaction       Aborts all levels of a transaction. 
db_blob_get       <strong>PostgreSQL only.</strong> 
db_blob_get_file        
db_boolean       Converts a Tcl boolean (1/0) into a SQL boolean (t/f) 
db_bounce_pools        
db_column_exists        
db_column_type        
db_columns        
db_compatible_rdbms_p        
db_current_rdbms        
db_dml       Do a DML statement. 
db_exec_plsql       <strong>Oracle:</strong> Executes a PL/SQL statement, and returns the variable of bind variable <code>:1</code>. 
db_flush_cache       Flush the given cache of entries with keys that match the given pattern. 
db_foreach       Usage: <blockquote> db_foreach <em><i>statement-name sql</i></em> [ -bind <em><i>bind_set_id</i></em> | -bind <em><i>bind_value_list</i></em> ] [ -column_array <em><i>array_name</i></em> | -column_set <em><i>set_name</i></em> ] <em><i>code_block</i></em> [ if_no_rows <em><i>if_no_rows_block</i> ]</em> </blockquote> <p>Performs the SQL query <em><i><tt>sql</tt></i></em>, executing <em><i><tt>code_block</tt></i></em> once for each row with variables set to column values (or a set or array populated if <tt>-column_array</tt> or <tt>column_set</tt> is specified). 
db_get_database       <strong>PostgreSQL only.</strong> <p> 
db_get_dbhost       <strong>PostgreSQL only.</strong> <p> 
db_get_password        
db_get_pgbin       <strong>PostgreSQL only.</strong> <p> 
db_get_port       <strong>PostgreSQL only.</strong> <p> 
db_get_sql_user       <strong>Oracle only.</strong> <p> 
db_get_username        
db_html_select_options       Generate html option tags for an html selection widget. 
db_html_select_value_options       Generate html option tags with values for an html selection widget. 
db_known_database_types        
db_list       Usage: <b>db_list</b> <i>statement-name sql</i> [ <tt>-bind</tt> <i>bind_set_id</i> | <tt>-bind</tt> <i>bind_value_list</i> ] 
db_list_of_lists       Usage: <b>db_list_of_lists</b> <i>statement-name sql</i> [ <tt>-bind</tt> <i>bind_set_id</i> | <tt>-bind</tt> <i>bind_value_list</i> ] 
db_list_of_ns_sets       Usage: <b>db_list_of_ns_sets</b> <i>statement-name sql</i> [ <tt>-bind</tt> <i>bind_set_id</i> | <tt>-bind</tt> <i>bind_value_list</i> ] 
db_load_sql_data       Loads a CSV formatted file into a table using PostgreSQL's COPY command or Oracle's SQL*Loader utility. 
db_multirow        
db_multirow_group_last_row_p       Used inside the code_block to db_multirow to ask whether this row is the last row before the value of 'column' changes, or the last row of the result set. 
db_name        
db_nextval       Example: <pre> set new_object_id [db_nextval acs_object_id_seq] </pre> 
db_nth_pool_name        
db_null        
db_nullify_empty_string       A convenience function that returns [db_null] if $string is the empty string. 
db_package_supports_rdbms_p        
db_quote       Quotes a string value to be placed in a SQL statement. 
db_release_unused_handles       Releases any database handles that are presently unused. 
db_resultrows        
db_source_sql_file       Sources a SQL file into Oracle (SQL*Plus format file) or PostgreSQL (psql format file). 
db_source_sqlj_file       <strong>Oracle only.</strong> <p> Sources a SQLJ file using loadjava. 
db_string       Usage: <b>db_string</b> <i>statement-name sql</i> [ <tt>-default</tt> <i>default</i> ] [ <tt>-bind</tt> <i>bind_set_id</i> | <tt>-bind</tt> <i>bind_value_list</i> ] 
db_table_exists        
db_tables        
db_transaction       Usage: <b><i>db_transaction</i></b> <i>transaction_code</i> [ on_error { <i>error_code_block</i> } ] Executes transaction_code with transactional semantics. 
db_type        
db_version        
db_with_handle       Places a usable database handle in <i>db</i> and executes <i>code_block</i>. 
db_write_blob        
db_write_clob        
doc_adp_abort       Aborts evaluation of an ADP block. 
doc_adp_compile       Compiles a block of ADP code. 
doc_adp_execute       Evaluates an ADP block returned by <code>doc_adp_compile</code>. 
doc_adp_execute_file       Compiles and executes an ADP file. 
doc_adp_puts       Puts a string in the current ADP context. 
doc_body_append       Appends $str to the body property. 
doc_body_flush       Flushes the body (if possible). 
doc_exists_p       Returns 1 if there is a document in the global environment. 
doc_find_template       Finds a master.adp file which can be used as a master template, looking in the directory containing $filename and working our way down the directory tree. 
doc_get_property       Returns a property (or an empty string if no such property exists). 
doc_init       Initializes the global environment for document handling. 
doc_property_exists_p       Return 1 if a property exists, or 0 if not. 
doc_register_adptag       Registers a handler for an ADP tag. 
doc_return       A wrapper to be used instead of ns_return. 
doc_serve_document       Serves the document currently in the environment. 
doc_serve_template       Serves the document in the environment using a particular template. 
doc_set_mime_type       Sets the mime-type property. 
doc_set_page_documentation_mode       Set a flag in the environment determining whether the thread is in "gathering documentation" or "executing the page" mode. 
doc_set_property       Sets a document property. 
doc_tag_ad_document        
doc_tag_ad_property        
exec       This is the wrapped version of exec 
exists_and_equal       Returns 1 if the variable name exists in the caller's envirnoment and is equal to the given value. 
exists_and_not_null       Returns 1 if the variable name exists in the caller's environment and is not the empty string. 
exists_or_null       Returns the contents of the variable if it exists, otherwise returns empty string 
export_entire_form       Exports everything in ns_getform to the ns_set. 
export_entire_form_as_url_vars       export_vars is now the prefered interface. 
export_form_vars       Exports a number of variables as hidden input fields in a form. 
export_ns_set_vars       Returns all the params in an ns_set with the exception of those in exclusion_list. 
export_url_vars       export_vars is now the prefered interface. 
export_vars       Exports variables either in URL or hidden form variable format. 
f::abs       returns the absolute value of x 
f::all       Takes a predicate pred and a list xs and returns 1 if all elements of xs fulfill pred. 
f::and       reduces a list of boolean values using && 
f::any       takes a predicate pred and a list xs and returns 1 if there exists an element of xs that fulfills pred 
f::bind       binds args to the first k arguments of the n-ary function f and returns the resulting (n-k)-ary function 
f::bind2nd       binds arg to the 2nd argument of f 
f::choose       Here's how to compute 'n choose k' like a real nerd. 
f::compose       function composition: evaluates f (g x) 
f::cons       inserts x at the front of the list xs 
f::const       Returns a unary function that ignores its argument and constantly returns k. 
f::copy       returns list of n copies of x 
f::curry       Converts a function that takes one tuple as an argument into a function that takes a series of single arguments. 
f::cycle       returns concatenated list of n copies of xs 
f::drop       returns the remaining elements of xs (without the first n) 
f::drop_while       returns the remaining portion of the list 
f::elem_p       checks if x is contained in s 
f::enum_from_to       generates {lo lo+1 ... 
f::even_p       returns 1 if n is even and 0 otherwise 
f::factorial       compute n! 
f::filter       Returns all elements of the list <em>xs</em> that fulfill the predicate <em>pred</em>. 
f::flip       takes a binary function f and two arguments a and b and returns f b a (arguments are flipped) 
f::fold       Takes a binary function f, a start element e and a list {x1 x2 ...} and returns f (...(f (f (f e x1) x2) x3)...). 
f::fold1       Takes a binary function f and a list {x1 x2 x3 ...} and returns (...(f (f (f x1 x2) x3) x4)...). 
f::fst       returns the first element of a list 
f::gcd       returns the greatest common divisor of x and y 
f::head       first element of a list 
f::id       Identity function: just returns its argument. 
f::init       all elements of a list but the last 
f::iterate       Returns {x (f x) (f (f x) (f (f (f x))) ...}. 
f::lambda       The lambda function - one of the foundations of functional programming - defines an anonymous proc and returns it. 
f::last       last element of a list 
f::lcm       returns the least common multiple of x and y 
f::lmax       returns the maximum element of the list xs 
f::lmin       returns the minimum element of the list xs 
f::map       Takes a function f and a list { x1 x2 x3 ...}, applies the function on each element of the list and returns the result, i.e. 
f::max       returns the maximum of x and y 
f::min       returns the minimum of x and y 
f::mul       multiplies n with a fraction (given as a tuple) 
f::not_elem_p       checks if x is not contained in s 
f::nub       removes duplicates from xs 
f::null_p       checks if xs is the empty list 
f::odd_p       returns 1 if n is odd and 0 otherwise 
f::or       reduces a list of boolean values using || 
f::pascal       prints Pascal's triangle 
f::prime_p        
f::product       returns the product of the elements of the list xs 
f::products       returns the list of partial products of the list xs 
f::qsort       sorts a sequence with the quicksort algorithm 
f::reverse       reverses the list xs 
f::scanl       takes a binary function f, a start element e and a list {x1 x2 ...} and returns {e (f e x1) (f (f e x1) x2) ...} 
f::scanl1       takes a binary function f and a list {x1 x2 x3 ...} and returns {x1 (f x1 x2) (f (f x1 x2) x3) ...} 
f::snd       returns the second element of a list 
f::span       splits a list using take_while and drop_while 
f::split_at       splits a list using take and drop 
f::sum       returns the sum of the elements of the list xs 
f::sums       returns the list of partial sums of the list xs 
f::tail       all elements of a list but the first 
f::take       returns the first n elements of xs 
f::take_until       returns the list of elements upto and including the first element of xs which satisfies p 
f::take_while       returns the longest initial segment of xs whose elements satisfy p 
f::thd       returns the third element of a list 
f::transpose       tranposes a matrix (a list of lists) 
f::uncurry       Converts a function that takes a series of single arguments into a function that takes one tuple as an argument. 
f::unzip       unzip takes a list of tuples {x1 y1} {x2 y2} {x3 y3} ... 
f::zip       takes two lists {x1 x2 x3 ...} and {y1 y2 y3 ...} and returns a list of tuples {x1 y1} {x2 y2} {x3 y3} ... 
f::zip_with       takes two lists {x1 x2 x3 ...} and {y1 y2 y3 ...} and returns the list {(f x1 y1) (f x2 y2) (f x3 y3) ...} 
future_years_list       Returns a list containing the next num_year years in the future. 
get_referrer       gets the Referer for the headers 
http_auth::authorize       Check HTTP authentication for an openacs user account and call the registered procedure to handle the URL to check permissions 
http_auth::register_filter       Setup HTTP authentication for a URL pattern 
http_auth::set_user_id       Get the user_id from HTTP authentication headers. 
http_auth::site_node_authorize       Procedure to take HTTP authenticated user_id and check site_node permissions. 
image::get_info       Get the width and height of an image file. 
install::xml::action::add-subsite-admin       Add a member to a subsite's admins group. 
install::xml::action::add-subsite-member       Add a member to a subsites application group. 
install::xml::action::ats-page       Creates an ATS Page. 
install::xml::action::create-package       Create a relation type. 
install::xml::action::create-user       Create a new user. 
install::xml::action::install       Installs a package including dependencies. 
install::xml::action::location       Creates a url location object. 
install::xml::action::mount       Mounts a package on a specified node. 
install::xml::action::mount-existing       Mounts an existing package on a specified node. 
install::xml::action::register-parameter       Registers a package parameter. 
install::xml::action::relation-add       Create a relation. 
install::xml::action::relation-type       Create a relation type. 
install::xml::action::rename-instance       Change the instance name of an existing package (such as the main subsite). 
install::xml::action::set-id       set a name/id pair for use in other install xml things 
install::xml::action::set-join-policy       Set the join policy of a group. 
install::xml::action::set-parameter       Sets a package parameter. 
install::xml::action::set-parameter-default       Sets a package parameter default value <code>&lt;set-parameter-default name=&quot;<em>parameter</em>&quot; package-key=&quot;<em>package-key</em>&quot; value=&quot;val&quot;&gt;</code> 
install::xml::action::set-permission       Sets permissions on an object. 
install::xml::action::text       A documentation element which ignores its contents and does no processing. 
install::xml::action::unset-permission       Revokes a permissions on an object - has no effect if the permission is not granted directly (ie does not act as negative permissions). 
install::xml::action::wizard       Creates a wizard using the subtags for each step. 
install::xml::object_id::admin-group        
install::xml::object_id::application-group       Returns an object_id for an application group or relational segment of a given package. 
install::xml::object_id::group       Returns an object_id for a group or relational segment. 
install::xml::object_id::member-group        
install::xml::object_id::object       Returns a literal object_id for an object. 
install::xml::object_id::package       Returns an object_id for a package specified in node. 
install::xml::util::get_id       Returns an id from the global ids variable if it exists and attempts to find an acs_magic_object if not. 
lmap       Applies proc_name to each item of the list, appending the result of each call to a new list that is the return value. 
long_month_list       Returns list of months 
max       Returns the maximum of a list of numbers. 
membership_rel::approve       Approve a membership relation 
membership_rel::ban       Ban a membership relation 
membership_rel::change_state       Change the state of a membership relation 
membership_rel::delete       Delete a membership relation 
membership_rel::reject       Reject a membership relation 
membership_rel::unapprove       Unapprove a membership relation 
merge_form_with_query       Merges a form with a query string. 
min       Returns the minimum of a list of numbers. 
month_list       Returns list of month abbreviations 
oacs::user::get       Load up user information 
oacs_util::csv_foreach       reads a csv and executes code block for each row in the csv. 
oacs_util::process_objects_csv       This processes a CSV of objects, taking the csv and calling package_instantiate_object for each one. 
oacs_util::vars_to_ns_set       Does an ns_set put on each variable named in var_list 
parameter::get       Get the value of a package instance parameter. 
parameter::get_from_package_key       Gets an instance parameter for the package corresponding to package_key. 
parameter::get_global_value       Get the value of a global package parameter. 
parameter::set_default       Set the default for the package parameter to the provided value. 
parameter::set_from_package_key       sets an instance parameter for the package corresponding to package_key. 
parameter::set_global_value       Set a global package parameter. 
parameter::set_value       Set the value of a package instance parameter 
parse_incoming_email       Takes an incoming message and splits it into parts. 
party::approved_members       Get a list of approved members of the given party. 
party::get_by_email       Return the party_id of the party with the given email. 
party::update       Update information about a party. 
permission::grant       grant privilege Y to party X on object Z 
permission::inherit_p       does this object inherit permissions 
permission::permission_p       does party X have privilege Y on object Z 
permission::require_permission       require that party X have privilege Y on object Z 
permission::require_write_permission       If the user is not allowed to edit this object, returns a permission denied page. 
permission::revoke       revoke privilege Y from party X on object Z 
permission::set_inherit       set inherit to true 
permission::set_not_inherit       set inherit to false 
permission::toggle_inherit       toggle whether or not this object inherits permissions from it's parent 
permission::write_permission_p       Returns whether a user is allowed to edit an object. 
person::delete       delete a person 
person::get       get info for a person as a tcl array in list form 
person::get_bio       Get the value of the user's bio(graphy) field. 
person::name       get the name of a person. 
person::name_flush       Flush the person::name cache. 
person::name_not_cached       get the name of a person 
person::new       create a new person 
person::person_p       is this party a person? Cached 
person::person_p_not_cached       is this party a person? Cached 
person::update       update the name of a person 
person::update_bio       Update the bio for a person. 
philg_quote_double_quotes       This proc does exactly the same as <a href="/api-doc/proc-view?proc=ad_quotehtml"><code>ad_quotehtml</code></a>. 
pkg_home        
proc_doc       A synonym for <code>ad_proc</code> (to support legacy code). 
proxy::exec       Execute the statement in a proxy instead of normal exec 
random       Return a pseudo-random number between 0 and 1. 
randomInit       seed the random number generator. 
randomRange       Returns a pseudo-random number between 0 and range. 
remove_nulls_from_ns_set       Creates and returns a new ns_set without any null value fields 
request_denied_filter       Deny serving the request 
root_of_host       Maps a hostname to the corresponding sub-directory. 
rp_form_put       This proc adds a query variable to AOLserver's internal ns_getform form, so that it'll be picked up by ad_page_contract and other procs that look at the query variables or form supplied. 
rp_form_update       Identical to rp_form_put, but uses ns_set update instead. 
rp_getform       This proc is a simple wrapper around AOLserver's standard ns_getform proc, that will create the form if it doesn't exist, so that you can then add values to that form. 
rp_internal_redirect       Tell the request processor to return some other page. 
rp_report_error       Writes an error to the connection. 
rp_serve_concrete_file       Serves a file. 
safe_eval       Version of eval that checks its arguments for brackets that may be used to execute unsafe code. 
sec_change_user_auth_token       Change the user's auth_token, which invalidates all existing login cookies, ie. 
sec_get_user_auth_token       Get the user's auth token for verifying login cookies. 
security::RestrictLoginToSSLP       Return 1 if login pages and other pages taking user password should be restricted to a secure (HTTPS) connection and 0 otherwise. 
security::driver       Return the secure driver if available 
security::https_available_p       Return 1 if server is configured to support HTTPS and 0 otherwise. 
security::locations        
security::redirect_to_insecure       Redirect to the given URL and enter insecure (HTTP) mode. 
security::redirect_to_secure       Redirect to the given URL and enter secure (HTTPS) mode. 
security::require_secure_conn       Redirect back to the current page in secure mode (HTTPS) if we are not already in secure mode. 
security::secure_conn_p       Returns true if the connection [ad_conn] is secure (HTTPS), or false otherwise. 
server_cluster_all_hosts       Returns a list of all hosts, possibly including this host, in the server cluster. 
server_cluster_authorized_p       Can a request coming from $ip be a valid cluster request, i.e., matches some value in ClusterIPMask or is 127.0.0.1? 
server_cluster_enabled_p       Returns true if clustering is enabled. 
server_cluster_peer_hosts       Returns a list of all hosts, excluding this host, in the server cluster. 
set_append!       <p>Adds the element v to the set named s-name in the calling environment, if it isn't already there.</p> 
set_difference       <p>Returns the difference of sets $u and $v. 
set_difference!       <p>Computes the difference of the set stored in the variable named $u-name in the calling environment and the set v, sets the variable named $u-name in the calling environment to that difference, and also returns that difference.</p> 
set_intersection       <p>Returns the intersection of sets $u and $v.</p> 
set_intersection!       <p>Computes the intersection of the set stored in the variable named $u-name in the calling environment and the set v, sets the variable named $u-name in the calling environment to that intersection, and also returns that intersection.</p> 
set_member?       <p>Tests whether or not $v is a member of set $s.</p> 
set_union       <p>Returns the union of sets $u and $v.</p> 
set_union!       <p>Computes the union of the set stored in the variable named $u-name in the calling environment and the set v, sets the variable named $u-name in the calling environment to that union, and also returns that union.</p> 
set_variables_after_query       to be removed. 
set_variables_after_query_not_selection       to be removed. 
set_variables_after_subquery       to be removed. 
site_map_unmount_application       Unmounts the specified node. 
site_node::closest_ancestor_package       Starting with the node at with given id, or at given url, climb up the site map and return the id of the first not-null mounted object. 
site_node::conn_url       Use this in place of ns_conn url when referencing host_nodes. 
site_node::delete       delete the site node 
site_node::exists_p       Returns 1 if a site node exists at the given url and 0 otherwise. 
site_node::get       Returns an array representing the site node that matches the given url. 
site_node::get_all_from_object_id       Return a list of site node info associated with the given object_id. 
site_node::get_ancestors       return the ancestors of this node 
site_node::get_children       This proc gives answers to questions such as: What are all the package_id's (or any of the other available elements) for all the instances of package_key or package_type mounted under node_id xxx? 
site_node::get_element       returns an element from the array representing the site node that matches the given url either url or node_id is required, if both are passed url is ignored The array elements are: package_id, package_key, object_type, directory_p, instance_name, pattern_p, parent_id, node_id, object_id, url. 
site_node::get_from_node_id       returns an array representing the site node for the given node_id 
site_node::get_from_object_id       return the site node associated with the given object_id WARNING: Returns only the first site node associated with this object. 
site_node::get_from_url       Returns an array representing the site node that matches the given url.<p> A trailing '/' will be appended to $url if required and not present.<p> If the '-exact' switch is not present and $url is not found, returns the first match found by successively removing the trailing $url path component.<p> 
site_node::get_node_id       return the node_id for this url 
site_node::get_node_id_from_object_id       return the site node id associated with the given object_id 
site_node::get_object_id       return the object_id for this node 
site_node::get_package_url       Get the URL of any mounted instance of a package with the given package_key. 
site_node::get_parent       return the parent node of this node 
site_node::get_parent_id       return the parent_id of this node 
site_node::get_url       return the url of this node_id 
site_node::get_url_from_object_id       returns a list of urls for site_nodes that have the given object mounted or the empty list if there are none. 
site_node::instantiate_and_mount       Instantiate and mount a package of given type. 
site_node::mount       mount object at site node 
site_node::new       create a new site node 
site_node::rename       Rename the site node. 
site_node::unmount       unmount an object from the site node 
site_node::verify_folder_name       Verifies that the given folder name is valid for a folder under the given parent_node_id. 
site_node_apm_integration::child_package_exists_p       Returns 1 if there exists a child package with the given package_key, or 0 if not. 
site_node_apm_integration::delete_site_nodes_and_package       First deletes ALL the site nodes this instance is mapped to, then deletes the instance. 
site_node_apm_integration::get_child_package_id       get the package_id of package_key that is mounted directly under package_id. 
site_node_closest_ancestor_package       <p> Use site_node::closest_ancestor_package. 
site_node_closest_ancestor_package_url       Returns the url stub of the nearest application of the specified type. 
site_node_delete_package_instance       Wrapper for apm_package_instance_delete 
site_node_id       Returns the node_id of a site node. 
site_node_object_map::del       unmap object object_id from site_node node_id in table site_node_object_mappings 
site_node_object_map::get_node_id        
site_node_object_map::get_url        
site_node_object_map::new       map object object_id to site_node node_id in table site_node_object_mappings 
site_nodes_sync       Brings the in memory copy of the url hierarchy in sync with the database version. 
string_truncate       Truncates a string to len characters (defaults to the parameter TruncateDescriptionLength), adding the string provided in the ellipsis parameter if the string was truncated. 
tdom::get_attribute_value       Returns the value of the attribute specified 
tdom::get_node_object       Returns a tdom object to the args given If the tdom object doesn't exist or the value is null, return null <pre> Example ----------------------------------------------------- XML: &lt;experiment&gt; &lt;experimenter&gt; &lt;first-name&gt;Annabelle Lee&lt;/first-name&gt; &lt;last-name&gt;Poe&lt;/last-name&gt; &lt;/experimenter&gt; &lt;/experiment&gt; Params: parent_node_object=$tdom_experiment_object args=experimenter experimenter_two Returns: TDOM object for experimenter node End Example ------------------------------------------------- </pre> 
tdom::get_node_xml       Returns xml of the data pointed to by the node object If tag doesn't exist or the value is null, returns null 
tdom::get_parent_node_object       Returns a tdom object for the parent node of the child node object passed in 
tdom::get_tag_value       Returns the tag value of the tag_name passed in If tag doesn't exist or the value is null, returns null <pre> Example ----------------------------------------------------- XML: &lt;experiment-id&gt;1222&lt;/experiment-id&gt; Params: node_object=$document args=experiment-id EXPERIMENT-ID Returns: 1222 End Example ------------------------------------------------- </pre> 
text_templates::create_pdf_content       Create the pdf content from a template 
text_templates::create_pdf_from_html       The HTML Content is transformed into a PDF file 
text_templates::store_final_document       The document is stored in the given folder. 
us_state_widget       Returns a state selection box. 
util::age_pretty       Formats past time intervals in one of three different modes depending on age. 
util::array_list_spec_pretty       Pretty-format an array-list spec with proper indentation. 
util::backup_file       Backs up (move) the file or directory with given path to a file/directory with a backup suffix. 
util::catch_exec       Catch a call to Tcl exec. 
util::diff       Perform a UNIX diff on 'old' and 'new', and return a HTML fragment of the changes. 
util::disk_cache_eval        
util::disk_cache_flush        
util::external_url_p       check if this URL is external to the current host or a valid alternative valid alternatives include HTTPS or HTTP protocol change HTTP or HTTPS port number added or removed from current host name or another hostname that the host responds to (from host_node_map) 
util::find_all_files       Returns a list of lists with full paths and filename to all files under $path in the directory tree (descending the tree to a depth of up to $max_depth). 
util::get_http_status       Returns the HTTP status code, e.g., 200 for a normal response or 500 for an error, of a URL. 
util::html_diff       Perform a UNIX diff on 'old' and 'new', and return a HTML fragment of the changes. 
util::http::available       Check, if for the given url and preferences the current installation supports util::http::* . 
util::http::get       Issue an http GET request to <code>url</code>. 
util::http::post       Implement client-side HTTP POST request. 
util::interval_pretty       Takes a number of seconds and returns a pretty interval of the form "3h 49m 13s" 
util::json::array::create       Construct a JSON object with the given values list 
util::json::array::get_values       Verify that the given Tcl structure is an object, and return its values list. 
util::json::gen       Top-level procedure to generate a JSON string from its Tcl list representation. 
util::json::indent       Indent a JSON string to make it more easily digestable by the human mind. 
util::json::json_value_to_sql_value       While mysql happily treats false as 0, real SQL does not. 
util::json::object::create       Construct a JSON object with the given values list 
util::json::object::get_value       Returns the value of an attribute in an object. 
util::json::object::get_values       Verify that the given Tcl structure is an object, and return its values list. 
util::json::object::set_by_path       This is an odd utility that mimics some odd code in the Ilias SCORM module, included here because it might be of more general use. 
util::json::object::set_value       Set an attribute value in an object structure. 
util::json::parse       Parse JSON text into a tcl list. 
util::json::sql_values_to_json_values       Converts empty values to "null", consistent with how oracle, mysql, and the nspostgres bindvar hack treats them. 
util::json::type_of       Return the type of the item, "object" or "array" 
util::link_responding_p       Returns 1 if the URL is responding (generally we think that anything other than 404 (not found) is okay). 
util::name_to_path       Transforms a pretty name to a reasonable path name. 
util::random_list_element       Returns a random element from the list. 
util::randomize_list       Returns a random permutation of the list. 
util::roll_server_log       Invoke the AOLserver ns_logroll command with some bookend log records. 
util::string_check_urlsafe       This proc accepts a string and verifies if it is url safe. 
util::string_length_compare       String length comparison function for use with lsort's -command switch. 
util::subst_safe       Make string safe for subst'ing. 
util::unzip        
util::which        
util::word_diff       Does a word (or character) diff on two lines of text and indicates text that has been deleted/changed or added by enclosing it in start/end_old/new. 
util::zip       Create a zip file. 
util_AnsiDatetoPrettyDate       Converts 1998-09-05 to September 5, 1998 
util_PrettyBoolean        
util_PrettyTclBoolean       Turns a 1 (or anything else that makes a Tcl IF happy) into Yes; anything else into No 
util_ReturnMetaRefresh       Ugly workaround to deal with IE5.0 bug handling multipart/form-data using Meta Refresh page instead of a redirect. 
util_absolute_path_p       Check whether the path begins with a slash 
util_background_exec       Executes a chunk of code in the background. 
util_background_get_result       Gets the result of a completed background thread execution. 
util_background_reset       Gets the result of a completed background thread execution. 
util_background_running_p        
util_commify_number       Returns the number with commas inserted where appropriate. 
util_complete_url_p       Determine whether string is a complete URL, i.e. 
util_convert_line_breaks_to_html       Convert line breaks to <p> and <br> tags, respectively. 
util_convert_plaintext_to_html       Almost everything this proc does can be accomplished with the <a href="/api-doc/proc-view?proc=ad_text_to_html"><code>ad_text_to_html</code></a>. 
util_current_directory       Returns the directory of the current URL. 
util_current_location       Like ad_conn location - Returns the location string of the current request in the form protocol://hostname[:port] but it looks at the Host header, that is, takes into account the host name the client used although it may be different from the host name from the server configuration file. 
util_current_location_node_id       returns node_id of util_current_location. 
util_driver_info       Returns the protocol and port for the specified driver. 
util_email_unique_p       Returns 1 if the email passed in does not yet exist in the system. 
util_email_valid_p       Returns 1 if an email address has more or less the correct form. 
util_escape_quotes_for_csv       Returns its argument with double quote replaced by backslash double quote 
util_expand_entities       Replaces all occurrences of common HTML entities with their plaintext equivalents in a way that's appropriate for pretty-printing. 
util_expand_entities_ie_style       Replaces all occurrences of &amp;#111; and &amp;x0f; type HTML character entities to their ASCII equivalents. 
util_get_current_url       Returns a URL for re-issuing the current request, with query variables. 
util_get_http_status       Returns the HTTP status code, e.g., 200 for a normal response or 500 for an error, of a URL. 
util_get_subset_missing       Returns the elements in list1 that are not in list2. 
util_get_user_messages       Gets and clears the message to be displayed on the next page load. 
util_http_file_upload       Implement client-side HTTP file uploads as multipart/form-data as per RFC 1867. 
util_httpget       util_httpget simply calls util::http::get which also returns status and last_modfied 
util_httpopen       Like ns_httpopen but works for POST as well; called by util_httppost 
util_httppost       Returns the result of POSTing to another Web server or -1 if there is an error or timeout. 
util_link_responding_p       Returns 1 if the URL is responding (generally we think that anything other than 404 (not found) is okay). 
util_list_of_ns_sets_to_list_of_lists       Transform a list of ns_sets (most likely produced by db_list_of_ns_sets) into a list of lists that match the array set format in the sublists (key value key value ...) 
util_list_to_ns_set       Convert a list in the form "key value key value ..." into a ns_set. 
util_maybe_convert_to_html       This proc is deprecated. 
util_memoize       If <i>script</i> has been executed before, return the value it returned last time, unless it was more than <i>max_age</i> seconds ago. 
util_memoize_cached_p       Check whether <i>script</i>'s value has been cached, and whether it was cached no more than <i>max_age</i> seconds ago. 
util_memoize_flush_pattern       Loop through all cached scripts, flushing all that match the pattern that was passed in. 
util_memoize_flush_regexp       Loop through all cached scripts, flushing all that match the regular expression that was passed in. 
util_memoize_initialized_p       Return 1 if the util_memoize cache has been initialized and is ready to be used and 0 otherwise. 
util_memoize_seed       Pretend <code>util_memoize</code> was called with <i>script</i> and it returned <i>value</i>. 
util_ns_set_to_list       Convert an ns_set into a list suitable for passing in to the "array set" command (key value key value ...). 
util_quote_double_quotes       This proc does exactly the same as <a href="/api-doc/proc-view?proc=ad_quotehtml"><code>ad_quotehtml</code></a>. 
util_quotehtml       This proc does exactly the same as <a href="/api-doc/proc-view?proc=ad_quotehtml"><code>ad_quotehtml</code></a>. 
util_remove_html_tags       Removes everything between &lt; and &gt; from the string. 
util_report_library_entry       Should be called at beginning of private Tcl library files so that it is easy to see in the error log whether or not private Tcl library files contain errors. 
util_report_successful_library_load       Should be called at end of private Tcl library files so that it is easy to see in the error log whether or not private Tcl library files contain errors. 
util_search_list_of_lists       Returns position of sublist that contains QUERY_STRING at SUBLIST_ELEMENT_POS. 
util_sets_equal_p       Tests whether each unique string in list1 occurs as many times in list1 as in list2 and vice versa (regarless of order). 
util_striphtml       Deprecated. 
util_subset_p       Tests whether list1 is a subset of list2. 
util_text_to_url       Modify a string so that it is suited as a well formatted URL path element. 
util_unlist       Places the <i>n</i>th element of <code>list</code> into the variable named by the <i>n</i>th element of <code>args</code>. 
util_url_valid_p       Returns 1 if a URL is a web URL (HTTP, HTTPS or FTP). 
util_user_message       Sets a message to be displayed on the next page request. 
util_wrap_list       Wraps text to a particular line length. 
validate_ad_dateentrywidget       <p> validate via ad_page_contract 
validate_integer       Throws an error if the string isn't a decimal integer; otherwise strips any leading zeros (so this won't work for octals) and returns the result. 
validate_zip_code       Given a string, signals an error if it's not a legal zip code <p> validate via ad_page_contract 
value_if_exists       If the specified variable exists in the calling environment, returns the value of that variable. 
whos_online::all_invisible_user_ids       This function returns a list with all user_ids wich are set to invisible 
whos_online::num_anonymous       Get the number of anony users currently online, and not invisible 
whos_online::num_users       Get the number of registered users currently online, and not invisible 
whos_online::seconds_since_first_request       Returns the number of seconds since the user with given id first requested a page. 
whos_online::seconds_since_last_request       Returns the number of seconds since the user with given id requested a page. 
whos_online::set_invisible       This procedure sets the user user_id to invisible, his user_id will not be returned by user_ids. 
whos_online::unset_invisible       This procedure unsets the invisible state of user_id. 
whos_online::user_ids       This function returns a list of user_ids from users wich have requested a page from this Server in the last 10 min.And aren't set to invisible. 
whos_online::user_invisible_p       This function checks if the user user_id is set to invisible. 
with_catch       execute code in body with the catch errorMessage in error_var and if there is a non-zero return code from body execute the on_error block. 
with_finally       Execute CODE, then execute cleanup code FINALLY. 
wrap_string       wraps a string to be no wider than 80 columns by inserting line breaks 
xml_get_child_node_attribute_by_path       Return the attribute of a child node down a give path from the current node. 
xml_get_child_node_content_by_path       Return the first non-empty contents of a child node down a given path from the current node. 

SQL Files

Content Pages

 

  Contact Us
  Project Open Business Solutions S.L.

Calle Aprestadora 19, 12o-2a

08902 Hospitalet de Llobregat (Barcelona)

Spain

 Tel Europe: +34 609 953 751
 Tel US: +1 415 200 2465
 Mail: info@project-open.com