• last updated 12 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
improve listing of test coverage

Add default to avoid empty values. Fixes 'acs_mail_lite_inbound_procs_check' test case

consider subject field restriction from the database also in the ui

just avoid tilde substitution, do not perform sanitizing

sanitizing can lead to file name clashes in case the names

without tilde exists, and they are OS specific. The intention

of "ad_file" is just to be a tilde-proof "file" replacement

use per_thread_cache for flusing rather than raw variables

make listing of tested procs more complete

  1. … 4 more files in changeset.
Fix typo

Do not allow backslashes in folders created via zipfile upload

As the folder name is used also for looking up for existing folders, the safest approach is to block the user: the risk with an automatic sanitization would be to overwrite existing folders without the user realizing

Sanitize all trailing tildes from the filename, mapping them to the current folder

Fixes acs-bootstrap-installer.ad_file automated test

Make 'ad_file' test case deterministic

Automated test for ad_file exposing a blind spot with files starting with the '~' character

file 00-proc-procs.tcl was initially added on branch oacs-5-10.

make listing of tested procs more complete

make listing of tested procs more complete

Whitespace changes

Adjust naming to openacs conventions. Fixes 'naming__proc_naming' test case.

whitespace changes

set default value only in case of failure

use ad_proc -private

improve warning message

    • -3
    • +3
    /openacs-4/packages/xowiki/tcl/package-procs.tcl
provide better error message

provide warning about deprecated location

reduce verbosity

improve spelling

    • -2
    • +2
    /openacs-4/packages/forums/www/message-view.tcl
make listing of tested procs more complete

make code slightly more regular

no need to use extra namespace for callback

reduce verbosity

remove race condition from user/person/party cache management

2 new API functions acs_user::promote_person_to_user and acs_user::demote_user (see issue #3461)

acs_user::promote_person_to_user

Promotes a person/party to an ACS user.

@param person_id the person_id in the acs system that should be promoted to a user.

@param username the username to be used for this user.

Defaults to the person's email

@param password the password to be used for this user.

Defaults to a randomly generated password.

@param authority_id the authority that will be used for the user.

@param locale locale to be used in user preferences.

Defaults to the site wide locale is taken.

@return The user_id of the person promoted to user

@error An error is thrown

if the username is already in use,

or the person_id has no email address,

or if person_id is not in the persons table.

acs_user::demote_user

Demotes an ACS user to a person/party.

This will fail if other tables have content referencing the users

table. It is probably best for tables created in other packages

to reference persons, parties, or acs_objects instead. This proc

could be extended with an option to find all referenced tables and

remove rows referencing this user.

See the following FK relationship in basic OpenACS installations:

TABLE "acs_objects" CONSTRAINT "acs_objects_creation_user_fk" FOREIGN KEY (creation_user) REFERENCES users(user_id)

TABLE "acs_objects" CONSTRAINT "acs_objects_modifying_user_fk" FOREIGN KEY (modifying_user) REFERENCES users(user_id)

TABLE "ad_locale_user_prefs" CONSTRAINT "ad_locale_user_prefs_users_fk" FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE

TABLE "auth_batch_job_entries" CONSTRAINT "auth_batch_job_entries_user_fk" FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE SET NULL

TABLE "auth_batch_jobs" CONSTRAINT "auth_batch_jobs_user_fk" FOREIGN KEY (creation_user) REFERENCES users(user_id) ON DELETE SET NULL

TABLE "cr_news" CONSTRAINT "cr_news_approval_user_fk" FOREIGN KEY (approval_user) REFERENCES users(user_id)

TABLE "email_images" CONSTRAINT "email_images_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id)

TABLE "forums_messages" CONSTRAINT "forums_mess_last_poster_fk" FOREIGN KEY (last_poster) REFERENCES users(user_id)

TABLE "forums_messages" CONSTRAINT "forums_mess_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id)

TABLE "forums_reading_info" CONSTRAINT "forums_read_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id)

TABLE "lang_messages_audit" CONSTRAINT "lang_messages_audit_ou_fk" FOREIGN KEY (overwrite_user) REFERENCES users(user_id)

TABLE "lang_messages" CONSTRAINT "lang_messages_creation_user_fk" FOREIGN KEY (creation_user) REFERENCES users(user_id)

TABLE "lang_user_timezone" CONSTRAINT "lang_user_timezone_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE

TABLE "notification_replies" CONSTRAINT "notif_repl_from_fk" FOREIGN KEY (from_user) REFERENCES users(user_id)

TABLE "notification_user_map" CONSTRAINT "notif_user_map_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE

TABLE "notifications" CONSTRAINT "notifications_notif_user_fk" FOREIGN KEY (notif_user) REFERENCES users(user_id)

TABLE "notification_requests" CONSTRAINT "notifications_request_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE

TABLE "proctoring_examination_statement_acceptance" CONSTRAINT "proctoring_examination_statement_acceptance_user_id_fkey" FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE

TABLE "user_portraits" CONSTRAINT "user_portraits_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id)

TABLE "user_preferences" CONSTRAINT "user_preferences_user_id_fk" FOREIGN KEY (user_id) REFERENCES users(user_id)

TABLE "xowiki_tags" CONSTRAINT "xowiki_tags_user_id_fkey" FOREIGN KEY (user_id) REFERENCES users(user_id)