ad_page_contract_filter_proc_attribute_dynamic_p       Checks whether the value (assumed to be an integer) is an attribute of a dynamic type. 
ad_page_contract_filter_proc_rel_type_dynamic_p       Checks whether the value (assumed to be a string referring to a relationship type) is a dynamic object type. 
application_group::child_application_groups       DEPRECATED: as of 2022-09-12 this API is not used in upstream codebase, and was still undocumented. 
application_group::closest_ancestor_application_group_id       Application group id of the closest ancestor package that has an application group 
application_group::closest_ancestor_application_group_site_node       Starting with the node with the given node_id (or URL), climb up the site map and return the node of the first non null application group 
application_group::closest_ancestor_element       Return one element of the site node for the closest ancestor package that has an application group. 
application_group::contains_party_p       Determines whether the party in question (identified by party_id) is contained by the application group identified by package_id. 
application_group::contains_relation_p       Determines whether the relation in question (identified by rel_id) is contained by the application group identified by package_id. 
application_group::contains_segment_p       Determines whether the segment in question (identified by segment_id) "belongs" to the application group identified by package_id. 
application_group::delete       Delete the given application group and all relational segments and constraints dependent on it (handled by the PL/[pg]SQL API 
application_group::group_id_from_package_id       Get the application_group of a package. 
application_group::new       Creates an application group (i.e., group of "users/parties of this application") Returns the group_id of the new application group. 
application_group::package_id_from_group_id       Returns the package_id of a given application group. 
attribute::add       wrapper for the <code>acs_attribute.create_attribute</code> call. 
attribute::add_form_elements       Adds form elements to the specified form_id. 
attribute::array_for_type       Fills in 2 arrays used for displaying attributes 
attribute::datatype_to_sql_type       Returns the appropriate sql type for a table definition based on the table, column, datatype, and default value. 
attribute::datatype_validator_exists_p       Returns 1 if we have a validator for this datatype. 
attribute::delete       Delete the specified attribute id and all its values. 
attribute::exists_p       Returns 1 if the object type already has an attribute of the given name. 
attribute::multirow       Sets up a multirow datasource containing the attribute values of object_id. 
attribute::translate_datatype       translates the datatype into one that can be validated. 
attribute::value_add       adds the specified enumeration value to the attribute. 
attribute::value_delete       deletes the specified enumeration value from the attribute. 
callback::subsite::get_extra_headers::contract        
callback::subsite::global_parameter_changed::contract       Callback for changing the value of a global parameter. 
callback::subsite::header_onload::contract        
callback::subsite::page_plugin::contract       Execute package-specific code on every page. 
callback::subsite::parameter_changed::contract       Callback for changing the value of an instance parameter. 
callback::subsite::theme_changed::contract       Callback for executing code after the subsite theme has been send changed 
callback::subsite::url::contract       Callback for creating a URL for an object_id. 
callback::user::registration::contract       used to verify if there is another registration process. 
callback::user::workspace::contract       used to generate HTML fragments for display on the /pvt/home page. 
callback::user::workspace::impl::acs-subsite       Generate a table showing the application group membership 
email_image::add_relation       Add a new relation between user_id and item_id 
email_image::create_type_folder_rel       Creates a new folder in the content repository with the name and label Email_Images. 
email_image::edit_email_image       Creates a new email_image of the user with his/her new edited email on it and store it in the content repository under the Email_Images folder. 
email_image::get_email       Returns the email of the user 
email_image::get_folder_id       Returns the folder_id of the folder with the name "Email_Images" 
email_image::get_priv_email       Returns the priv_email field of the user from the users table. 
email_image::get_priv_email_from_parameter       Returns the priv_email field of the user from the users table. 
email_image::get_related_item_id       Returns the item_id of the email_image stored in the content repository for user_id. 
email_image::get_user_email       Returns the email in different ways (text level 4, image or text and image level 3, link level 2, ...) according to the priv_email field in the users table. 
email_image::new_item       Creates the email_image of the user with his/her email on it and store it in the content repository under the Email_Images folder. 
email_image::update_private_p       Changes the priv_email field from the users table 
group::add_member       Adds a user to a group, checking that the rel_type is permissible given the user's privileges, Can default both the rel_type and the member_state to their relevant values. 
group::admin_p        
group::default_member_state       If user has 'create' privilege on group_id OR the group's join policy is 'open', then default_member_state will return "approved". 
group::delete       Deletes the group specified by group_id, including all relational segments specified for the group and any relational constraint that depends on this group in any way. 
group::description       Returns a group's description 
group::flush_members_cache       Flush group members cache. 
group::get       Get basic info about a group: group_name, join_policy. 
group::get_element       Get an element from the basic info about a group: group_name, join_policy. 
group::get_id       Retrieve the group_id to a given group-name. 
group::get_id_not_cached       Retrieve the group_id to a given group-name. 
group::get_join_policy_options       Returns a list of valid join policies in a format suitable for a form builder drop-down. 
group::get_member_state_pretty       Returns the pretty-name of a member state. 
group::get_members       Get party_ids of all members from cache. 
group::get_members_not_cached       Get party_ids of all members. 
group::get_not_cached       Get basic info about a group: group_name, join_policy. 
group::get_rel_segment       Get a segment for a particular relation type for a given group. 
group::get_rel_types_options       Get the valid relationship-types for this group in a format suitable for a select widget in the form builder. 
group::group_p       Test, of group exists 
group::join_policy       Returns a group's join policy ('open', 'closed', or 'needs approval') 
group::member_p       Return 1 if the user is a member of the group specified. 
group::member_p_not_cached       Return 1 if the user is a member of the group specified. 
group::new       Creates a group of this type by calling the .new function for the package associated with the given group_type. 
group::party_member_p       Return 1 if the party is an approved member of the group specified. 
group::permission_p       THIS PROC SHOULD GO AWAY! All calls to group::permission_p can be replaced with permission::permission_p Wrapper for ad_permission to allow us to bypass having to specify the read privilege 
group::possible_member_states       Returns the list of possible member states: approved, needs approval, banned, merged, rejected, deleted. 
group::remove_member       Removes a user from a group. 
group::title       Get the title of a group based either on group_name or on the group_id. 
group::update       Updates a group.The updated values can be either specified as dict or as array. 
group_type::delete       Deletes a group type 
group_type::drop_all_groups_p       Returns 1 if the user has permission to delete all groups of the specified type. 
group_type::new       Creates a new group type <p><b>Example:</b> <pre> # create a new group of type user_discount_class set group_type [group_type::new -group_type $group_type -supertype group "User Discount Class" "User Discount Classes"] </pre> 
package_attribute_default       Returns a sql value to be used as the default in a pl/sql function or procedure parameter list. 
package_create       Creates a packages with a new function and delete procedure for the specified object type. 
package_create_attribute_list       Generates the list of attributes for this object type. 
package_exec_plsql       Calls a pl/[pg]sql proc/func defined within the object type's package. 
package_function_p        
package_generate_body       Generates plsql to create the package body 
package_generate_spec       Generates pl/sql to create a package specification. 
package_insert_default_comment       Returns a string to be used verbatim as the default comment we insert into meta-generated packages and package bodies. 
package_instantiate_object       Creates a new object of the specified type by calling the associated PL/SQL package new function. 
package_object_attribute_list       Returns a list of lists all the attributes (column name or attribute_name) to be used for this object type. 
package_object_view       Returns a select statement to be used as an inner view for selecting out all the attributes for the object_type. 
package_object_view_helper       Returns a select statement to be used as an inner view for selecting out all the attributes for the object_type. 
package_object_view_reset       Resets the cached views for all chains (e.g. 
package_plsql_args       Return a list of parameters expected to a plsql function defined within a given package and cache these per thread. 
package_recreate_hierarchy       Recreates all the packages for the hierarchy starting with the specified object type down to a leaf. 
package_table_columns_for_type       Generates the list of tables and columns that are parameters of the object named <code>NEW</code> for PL/SQL package associated with this object type. 
package_type_dynamic_p       Returns 1 if the object type is dynamic. 
plpgsql_utility::define_function_args       Returns the attribute list as a string suitable for a call to define_function_args. 
plpgsql_utility::dollar       Return a literal dollar for use in .xql files. 
plpgsql_utility::generate_attribute_parameter_call       Generates the arg list for a call to a pl/pgsql function 
plpgsql_utility::generate_attribute_parameter_call_from_attributes       Wrapper for generate_attribute_parameter_call that formats default attribute list to the right format. 
plpgsql_utility::generate_attribute_parameters       Generates the arg list to a pl/sql function or procedure 
plpgsql_utility::generate_function_signature       Generates the signature for a pl/sql function or procedure 
plpgsql_utility::get_function_args       uncached version returns list of lists args called from generate_attribute_parameter_call 
plpgsql_utility::table_column_type       Returns the datatype for column in table 
plsql_utility::format_pieces       Proc to format a list of elements. 
plsql_utility::generate_attribute_dml       Generates the string for a sql insert... 
plsql_utility::generate_attribute_parameter_call       Generates the arg list for a call to a pl/sql function or procedure 
plsql_utility::generate_attribute_parameter_call_from_attributes       Wrapper for generate_attribute_parameter_call that formats default attribute list to the right format. 
plsql_utility::generate_attribute_parameters       Generates the arg list to a pl/sql function or procedure 
plsql_utility::generate_constraint_name       Generates a constraint name adhering to the arsdigita standard for naming constraints. 
plsql_utility::generate_oracle_name       Returns an object name of max_length characters, in lowercase, beginning with stem but without any unsafe characters. 
plsql_utility::object_type_exists_p       Returns 1 if the specified object_type exists. 
plsql_utility::parse_sql       Replaces bind variables with their Double Apos'd values to aid in debugging. 
rel_segment::delete       Deletes the specified relational segment including all relational constraints that depend on it. 
rel_segment::new       Creates a new relational segment 
rel_segments_delete       Deletes the specified relational segment including all relational constraints that depend on it. 
rel_segments_new       Creates a new relational segment 
rel_segments_permission_p       Wrapper for ad_permission to allow us to bypass having to specify the read privilege Deprecated: just another wrapper for permission::permission_p 
rel_types::add_permissible       Add a permissible relationship for a given group type 
rel_types::additional_rel_types_group_p       returns 1 if there is a rel type that is not defined as a segment for this group 
rel_types::additional_rel_types_group_type_p       returns 1 if there is a rel type that is not defined as allowable for the specified group_type. 
rel_types::additional_rel_types_p       Returns 1 if there is a relationship type not being used by the specified group_id or group_type. 
rel_types::create_role       Create a new Relationship Role 
rel_types::delete_role       Drop a Relationship Role. 
rel_types::new       Creates a new relationship type named rel_type 
rel_types::remove_permissible       Add a permissible relationship for a given group type 
relation::get_id       Find the rel_id of the relation matching the given object_id_one, object_id_two, and rel_type. 
relation::get_object_one       Return the object_id of object one if a relation of rel_type exists between the supplied object_id_two and it. 
relation::get_object_two       Return the object_id of object two if a relation of rel_type exists between the supplied object_id_one and it. 
relation::get_objects       Return the list of object_ids if a relation of rel_type exists between the supplied object_id and it. 
relation_add       Creates a new relation of the specified type between the two objects. 
relation_permission_p       Wrapper for ad_permission_p that lets us default to read permission Deprecated: just another wrapper for permission::permission_p 
relation_remove       Removes the specified relation. 
relation_required_segments_multirow       Sets up a multirow datasource. 
relation_segment_has_dependent       Returns 1 if the specified segment/party combination has a dependent (meaning a constraint would be violated if we removed this relation). 
relation_type_is_valid_to_group_p       Returns 1 if group $group_id allows elements through a relation of type $rel_type, or 0 otherwise. 
relation_types_valid_to_group_multirow       creates multirow datasource containing relationship types starting with the $start_with relationship type. 
subsite::add_section_row       Helper proc for adding rows of sections to the page flow of the subsite. 
subsite::after_mount       This is the Tcl proc that is called automatically by the APM whenever a new instance of the subsites application is mounted. 
subsite::after_upgrade       After upgrade callback for acs-subsite. 
subsite::assert_user_may_add_member       Used on pages that add users to the application group of the current subsite to assert that the currently logged-in user may add users. 
subsite::auto_mount_application       Mounts a new instance of the application specified by package_key beneath node_id. 
subsite::before_uninstantiate       Delete the application group associated with this subsite. 
subsite::before_upgrade       Handles upgrade 
subsite::callback       Executes any registered callbacks for this object. 
subsite::default::create_app_group       Create the default application group for a subsite. 
subsite::default::delete_app_group       Delete the default application group for a subsite. 
subsite::define_pageflow       Defines the page flow of the subsite TODO: add an image TODO: add link_p/selected_p for subsections 
subsite::delete_subsite_theme       Delete a subsite theme, making it unavailable to the theme configuration code. 
subsite::get       Get information about a subsite. 
subsite::get_application_options       Gets options list for applications to install 
subsite::get_element       Return a single element from the information about a subsite. 
subsite::get_pageflow_struct       Defines the page flow structure. 
subsite::get_section_info       Takes the sections_multirow and sets the passed array name with the elements label and url of the selected section. 
subsite::get_theme       Get the theme for the given (or current) subsite. 
subsite::get_theme_options       Gets options for subsite themes for use with a form builder select widget. 
subsite::get_theme_subsites       Returns a list of all packages implementing subsite that are currently using specified theme. 
subsite::get_url       Returns the url stub for the specified subsite. 
subsite::instance_name_exists_p       Returns 1 if the instance_name exists at this node. 
subsite::main_site_id       Get the package_id of the Main Site. 
subsite::new_subsite_theme       Add a new subsite theme, making it available to the theme configuration code. 
subsite::package_install        
subsite::package_keys       Get the list of packages which can be subsites. 
subsite::pivot_root       Pivot the package associated with node_id onto the root. 
subsite::refresh_theme_subsites       Reload theme subsite parameters from defaults on every subsite currently using specified theme. 
subsite::save_theme_parameters       Save the actual theming parameter set of the given/current subsite as default for the given/current theme. 
subsite::save_theme_parameters_as       Save the actual theming parameter for the given/current subsite under a new name. 
subsite::set_theme       Set the theme for the given or current subsite. 
subsite::sweep_expired_approvals       Sweep for expired approvals and bump them to the 'needs approval' state. 
subsite::update_subsite_theme       Update the default theming parameters in the database 
subsite::upload_allowed       Verifies SolicitPortraitP parameter to ensure upload portrait security. 
subsite::util::get_package_options       Get a list of pretty name, package key pairs for all packages which identify themselves as implementing subsite semantics. 
subsite::util::object_type_path_list        
subsite::util::object_type_pretty_name       returns pretty name of object. 
subsite::util::packages       Return a list of package_id's for the subsite containing node_id This is a memoized function which caches for 20 minutes. 
subsite::util::packages_no_cache       return a list of package_id's for children of the passed node_id 
subsite::util::return_url_stack       Given a list of return_urls, we recursively encode them into one return_url that can be redirected to or passed into a page. 
subsite::util::sub_type_exists_p        
subsite_callback       Executes any registered callbacks for this object. 
subsite_navigation::add_section_row       Helper proc for adding rows of sections to the page flow of the subsite. 
subsite_navigation::define_pageflow       Defines the page flow of the subsite. 
subsite_navigation::get_pageflow_from_parameter        
subsite_navigation::get_pageflow_struct       Defines the page flow structure. 
subsite_navigation::get_section_info       Takes the navigation_multirow and sets the passed array name with the elements label and url of the selected section. 

Package Documentation