approve_ip_script
bump_password_change_date
bump_password_times_forward
check_joining_allowed
check_password_complexity
cns_add_member_to_group
cns_authusername_is_bound_via_httpauth
cns_ban_member
cns_button_screen_wrap
cns_check_make_private_topic
cns_check_name_valid
cns_check_post
cns_create_selection_list_forum_groupings
cns_create_selection_list_topic_tree
cns_create_selection_list_usergroups
cns_decache_cms_blocks
cns_delete_custom_field
cns_delete_emoticon
cns_delete_forum
cns_delete_forum_grouping
cns_delete_group
cns_delete_member
cns_delete_multi_moderation
cns_delete_poll
cns_delete_post_template
cns_delete_posts_topic
cns_delete_topic
cns_delete_warning
cns_delete_welcome_email
cns_display_spacer_post
cns_edit_custom_field
cns_edit_emoticon
cns_edit_forum
cns_edit_forum_grouping
cns_edit_group
cns_edit_member
cns_edit_multi_moderation
cns_edit_poll
cns_edit_post
cns_edit_post_template
cns_edit_topic
cns_edit_warning
cns_edit_welcome_email
cns_ensure_forum_exists
cns_ensure_forum_grouping_exists
cns_ensure_groups_cached
cns_field_editable
cns_find_birthdays
cns_force_update_forum_caching
cns_force_update_member_post_count
cns_force_update_topic_caching
cns_forum_breadcrumbs
cns_get_all_custom_fields_match
cns_get_all_custom_fields_match_member
cns_get_all_default_groups
cns_get_all_subordinate_forums
cns_get_best_group_property
cns_get_custom_field_mappings
cns_get_custom_fields_member
cns_get_filter_cats
cns_get_forum_multi_code_field
cns_get_forum_parent_or_list
cns_get_forum_tree
cns_get_forums_stats
cns_get_group_link
cns_get_group_members_raw
cns_get_group_members_raw_count
cns_get_group_name
cns_get_group_property
cns_get_member_best_group_property
cns_get_member_fields
cns_get_member_fields_profile
cns_get_member_fields_settings
cns_get_member_primary_group
cns_get_members_groups
cns_get_post_templates
cns_get_pp_rows
cns_get_safe_specified_poster_name
cns_get_topic_tree
cns_get_topic_where
cns_get_warnings
cns_group_absorb_privileges_of
cns_has_read_topic
cns_has_replied_topic
cns_has_special_pt_access
cns_invite_to_pt
cns_is_httpauth_member
cns_is_ldap_member
cns_join_actual
cns_join_form
cns_list_multi_moderations
cns_make_boiler_custom_field
cns_make_custom_field
cns_make_emoticon
cns_make_forum
cns_make_forum_grouping
cns_make_group
cns_make_member
cns_make_multi_moderation
cns_make_poll
cns_make_post
cns_make_post_template
cns_make_topic
cns_make_warning
cns_make_welcome_email
cns_may_attach_poll
cns_may_control_group
cns_may_delete_poll_by
cns_may_delete_post_by
cns_may_delete_topics_by
cns_may_edit_poll_by
cns_may_edit_post_by
cns_may_edit_topics_by
cns_may_make_private_topic
cns_may_moderate_forum
cns_may_perform_multi_moderation
cns_may_post_in_topic
cns_may_post_topic
cns_may_report_post
cns_may_warn_members
cns_may_whisper
cns_member_ask_join_group
cns_member_choose_avatar
cns_member_choose_photo
cns_member_choose_photo_concrete
cns_member_choose_signature
cns_member_choose_title
cns_member_external_linker
cns_member_external_linker_ask
cns_member_handle_promotion
cns_member_leave_group
cns_member_validate_into_group
cns_mod_log_it
cns_move_posts
cns_move_topics
cns_organise_into_tree
cns_perform_multi_moderation
cns_ping_forum_read_all
cns_ping_forum_unread_all
cns_ping_topic_read
cns_poll_get_results
cns_read_in_custom_fields
cns_read_in_member_profile
cns_send_topic_notification
cns_set_context_forum
cns_set_custom_field
cns_unban_member
cns_validate_post
cns_vote_in_poll
create_selection_list_forum_tree
create_selection_list_timezone_list
find_cpf_field_id
find_usergroup_id
generate_notifications
get_cpf_storage_for
get_first_default_group
get_forum_access_sql
get_group_colour
get_member_title
get_username_from_human_name
handle_topic_ticket_reply
import_custom_emoticons
install_cns
member_field_is_required
member_get_csv_headings
member_password_expired
member_password_too_old
not_like_spacer_posts
render_forum_box
render_group_box
render_member_box
render_post_box
render_profile_tabset
render_topic_box
rules_script
send_pt_notification
uninstall_cns
update_member_username_caching
warnings_script
approve_ip_script()
package | core_cns |
---|
bump_password_change_date(\MEMBER $member_id, string $password, string $password_salted, string $salt, boolean $skip_checks= false
, \?TIME $time= null
)
package | core_cns |
---|
\MEMBER
The member this is for
string
New password
string
Hashed password
string
Password salt
boolean
Whether to skip enforcement checks
\?TIME
The time this is logged to be happening at (null: now)
bump_password_times_forward()
package | core_cns |
---|
check_joining_allowed()
package | core_cns |
---|
check_password_complexity(\ID_TEXT $username, string $password, boolean $return_errors = false
) : \?Tempcode
package | core_cns |
---|
\ID_TEXT
The username this is for
string
New password
boolean
Whether to return errors instead of dieing on them.
\?Tempcode
Error (null: none).cns_add_member_to_group(\MEMBER $member_id, \GROUP $id, \BINARY $validated = 1
)
package | core_cns |
---|
\MEMBER
The member.
\GROUP
The usergroup.
\BINARY
Whether the member is validated into the usergroup.
cns_authusername_is_bound_via_httpauth(string $authusername) : \?integer
package | core_cns |
---|
string
The username.
\?integer
The member ID, if it is (null: not bound).cns_ban_member(\AUTO_LINK $member_id)
cns_check_name_valid(\?SHORT_TEXT $username, \?MEMBER $member_id= null
, \?SHORT_TEXT $password= null
, boolean $return_errors= false
) : \?Tempcode
package | core_cns |
---|
\?SHORT_TEXT
The username (may get altered) (null: nothing to check).
\?MEMBER
The member (null: member not actually added yet; this ID is only given for the duplication check, to make sure it doesn't think we are duplicating with ourself).
\?SHORT_TEXT
The password (null: nothing to check).
boolean
Whether to return errors instead of dieing on them.
\?Tempcode
Error (null: none).cns_check_post(\LONG_TEXT $post, \?AUTO_LINK $topic_id= null
, \?MEMBER $poster= null
) : \?array
package | core_cns |
---|
\LONG_TEXT
The post.
\?AUTO_LINK
The ID of the topic the post would be in (null: don't check with regard to any particular topic).
\?MEMBER
The poster (null: current member).
\?array
Row of the existing post if a double post (single row map-element in a list of rows) (null: not a double post).cns_create_selection_list_forum_groupings(\?AUTO_LINK $avoid= null
, \?AUTO_LINK $it= null
) : \Tempcode
package | core_cns |
---|
\?AUTO_LINK
Category to avoid putting in the list (null: don't avoid any).
\?AUTO_LINK
Category selected by default (null: no specific default).
\Tempcode
The list.cns_create_selection_list_topic_tree(\?AUTO_LINK $it = null
) : \Tempcode
package | core_cns |
---|
\?AUTO_LINK
The currently selected topic (null: none selected)
\Tempcode
The list of topicscns_create_selection_list_usergroups(\?AUTO_LINK $it = null
) : \Tempcode
package | core_cns |
---|
\?AUTO_LINK
Usergroup selected by default (null: no specific default).
\Tempcode
The list.cns_decache_cms_blocks(\AUTO_LINK $updated_forum_id, \?string $forum_name= null
, \?MEMBER $member= null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the forum.
\?string
The name of the forum (null: find it from the DB).
\?MEMBER
The member (null: do no member decaching).
cns_delete_custom_field(\AUTO_LINK $id)
cns_delete_emoticon(\SHORT_TEXT $code)
cns_delete_forum(\AUTO_LINK $forum_id, \?AUTO_LINK $target_forum_id= null
, \BINARY $delete_topics= 0
)
package | core_cns |
---|
\AUTO_LINK
The ID of the forum we are deleting.
\?AUTO_LINK
The ID of the forum that topics will be moved to (null: root forum).
\BINARY
Whether to delete topics instead of moving them to the target forum.
cns_delete_forum_grouping(\AUTO_LINK $forum_grouping_id, \?AUTO_LINK $target_forum_grouping_id = null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the forum grouping we are editing.
\?AUTO_LINK
The ID of the forum grouping that we will move all the contained forum to (null: the first one).
cns_delete_group(\AUTO_LINK $group_id, \?GROUP $target_group = null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the usergroup to delete.
\?GROUP
The usergroup to move primary members to (null: main members).
cns_delete_member(\AUTO_LINK $member_id)
cns_delete_multi_moderation(\AUTO_LINK $id)
cns_delete_poll(\AUTO_LINK $poll_id, \LONG_TEXT $reason= ''
, boolean $check_perms= true
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the poll we're deleting.
\LONG_TEXT
The reason for deleting the poll.
boolean
Whether to check permissions.
\AUTO_LINK
The ID of the topic the poll is on.cns_delete_post_template(\AUTO_LINK $id)
cns_delete_posts_topic(\AUTO_LINK $topic_id, array $posts, \LONG_TEXT $reason= ''
, boolean $check_perms= true
, boolean $cleanup= true
) : boolean
package | core_cns |
---|
\AUTO_LINK
The ID of the topic we're deleting posts from.
array
A list of posts to delete.
\LONG_TEXT
The reason for this action.
boolean
Whether to check permissions.
boolean
Whether to do a cleanup: delete the topic if there will be no posts left in it.
boolean
Whether the topic was deleted, due to all posts in said topic being deleted.cns_delete_topic(\AUTO_LINK $topic_id, \LONG_TEXT $reason= ''
, \?AUTO_LINK $post_target_topic_id= null
, boolean $check_perms= true
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the topic to delete.
\LONG_TEXT
The reason for this action .
\?AUTO_LINK
Where topic to move posts in this topic to (null: delete the posts).
boolean
Whether to check permissions.
\AUTO_LINK
The forum ID the topic is in (could be found without calling the function, but as we've looked it up, it is worth keeping).cns_delete_warning(\AUTO_LINK $warning_id) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the formal warning we are deleting.
\AUTO_LINK
The member ID the warning was for.cns_delete_welcome_email(\AUTO_LINK $id)
cns_display_spacer_post(\ID_TEXT $linked_type, \ID_TEXT $linked_id) : array
package | core_cns |
---|
\ID_TEXT
Content type.
\ID_TEXT
Content ID.
array
A pair: better description (may be NULL), better post (may be NULL).cns_edit_custom_field(\AUTO_LINK $id, \SHORT_TEXT $name, \SHORT_TEXT $description, \LONG_TEXT $default, \BINARY $public_view, \BINARY $owner_view, \BINARY $owner_set, \BINARY $encrypted, \BINARY $required, \BINARY $show_in_posts, \BINARY $show_in_post_previews, integer $order, \LONG_TEXT $only_group, \ID_TEXT $type, \BINARY $show_on_join_form, \SHORT_TEXT $options)
package | core_cns |
---|---|
set | short_text long_text short_trans long_trans integer upload picture url list tick float |
\AUTO_LINK
The ID of the custom profile field.
\SHORT_TEXT
Name of the field.
\SHORT_TEXT
Description of the field.
\LONG_TEXT
The default value for the field.
\BINARY
Whether the field is publicly viewable.
\BINARY
Whether the field is viewable by the owner.
\BINARY
Whether the field may be set by the owner.
\BINARY
Whether the field should be encrypted.
\BINARY
Whether the field is to be shown on the join form
\BINARY
Whether this field is shown in posts and places where member details are highlighted (such as an image in a member gallery).
\BINARY
Whether this field is shown in preview places, such as in the forum member tooltip.
integer
The order of this field relative to other fields.
\LONG_TEXT
The usergroups that this field is confined to (comma-separated list).
\ID_TEXT
The type of the field.
\BINARY
Whether it is required that every member have this field filled in.
\SHORT_TEXT
Field options
cns_edit_emoticon(\SHORT_TEXT $old_code, \SHORT_TEXT $code, \ID_TEXT $theme_img_code, integer $relevance_level, \BINARY $use_topics, \BINARY $is_special = 0
)
package | core_cns |
---|---|
range | 0 4 |
\SHORT_TEXT
The textual code entered to make the emoticon appear.
\SHORT_TEXT
The old textual code.
\ID_TEXT
The image code used for the emoticon.
integer
The relevance level.
\BINARY
Whether this may be used as a topic emoticon.
\BINARY
Whether this may only be used by privileged members
cns_edit_forum(\AUTO_LINK $forum_id, \SHORT_TEXT $name, \SHORT_TEXT $description, \AUTO_LINK $forum_grouping_id, \?AUTO_LINK $new_parent, integer $position, \BINARY $post_count_increment, \BINARY $order_sub_alpha, \LONG_TEXT $intro_question, \SHORT_TEXT $intro_answer, \SHORT_TEXT $redirection= ''
, \ID_TEXT $order= 'last_post'
, \BINARY $is_threaded= 0
, boolean $reset_intro_acceptance= false
)
package | core_cns |
---|
\AUTO_LINK
The ID of the forum we are editing.
\SHORT_TEXT
The name of the forum.
\SHORT_TEXT
The description for the forum.
\AUTO_LINK
What forum grouping the forum will be filed with.
\?AUTO_LINK
The ID of the parent forum (null: this is the root forum).
integer
The position of this forum relative to other forums viewable on the same screen (if parent forum hasn't specified automatic ordering).
\BINARY
Whether post counts will be incremented if members post in the forum.
\BINARY
Whether the ordering of subforums is done automatically, alphabetically).
\LONG_TEXT
The question that is shown for newbies to the forum (blank: none).
\SHORT_TEXT
The answer to the question (blank: no specific answer.. if there's a 'question', it just requires a click-through).
\SHORT_TEXT
Either blank for no redirection, the ID of another forum we are mirroring, or a URL to redirect to.
\ID_TEXT
The order the topics are shown in, by default.
\BINARY
Whether the forum is threaded.
boolean
Whether to force forum rules to be re-agreed to, if they've just been changed.
cns_edit_forum_grouping(\AUTO_LINK $forum_grouping_id, \SHORT_TEXT $title, \SHORT_TEXT $description, \BINARY $expanded_by_default)
package | core_cns |
---|
\AUTO_LINK
The ID of the forum grouping we are editing.
\SHORT_TEXT
The title of the forum grouping.
\SHORT_TEXT
The description of the forum grouping.
\BINARY
Whether the forum grouping will be shown expanded by default (as opposed to contracted, where contained forums will not be shown until expansion).
cns_edit_group(\AUTO_LINK $group_id, \?SHORT_TEXT $name, \?BINARY $is_default, \?BINARY $is_super_admin, \?BINARY $is_super_moderator, \?SHORT_TEXT $title, \?URLPATH $rank_image, \?GROUP $promotion_target, \?integer $promotion_threshold, \?MEMBER $group_leader, \?integer $flood_control_submit_secs, \?integer $flood_control_access_secs, \?integer $max_daily_upload_mb, \?integer $max_attachments_per_post, \?integer $max_avatar_width, \?integer $max_avatar_height, \?integer $max_post_length_comcode, \?integer $max_sig_length_comcode, \?integer $gift_points_base, \?integer $gift_points_per_day, \?BINARY $enquire_on_new_ips, \?BINARY $is_presented_at_install, \?BINARY $hidden, \?integer $order, \?BINARY $rank_image_pri_only, \?BINARY $open_membership, \?BINARY $is_private_club, boolean $uniqify = false
)
package | core_cns |
---|
\AUTO_LINK
The ID of the usergroup to edit.
\?SHORT_TEXT
The name of the usergroup. (null: do not change)
\?BINARY
Whether members are automatically put into the when they join. (null: do not change)
\?BINARY
Whether members of this usergroup are all super administrators. (null: do not change)
\?BINARY
Whether members of this usergroup are all super moderators. (null: do not change)
\?SHORT_TEXT
The title for primary members of this usergroup that don't have their own title. (null: do not change)
\?URLPATH
The rank image for this. (null: do not change)
\?GROUP
The that members of this usergroup get promoted to at point threshold (null: no promotion prospects).
\?integer
The point threshold for promotion (null: no promotion prospects).
\?MEMBER
The leader of this usergroup (null: none).
\?integer
The number of seconds that members of this usergroup must endure between submits (group 'best of' applies). (null: do not change)
\?integer
The number of seconds that members of this usergroup must endure between accesses (group 'best of' applies). (null: do not change)
\?integer
The number of megabytes that members of this usergroup may attach per day (group 'best of' applies). (null: do not change)
\?integer
The number of attachments that members of this usergroup may attach to something (group 'best of' applies). (null: do not change)
\?integer
The maximum avatar width that members of this usergroup may have (group 'best of' applies). (null: do not change)
\?integer
The maximum avatar height that members of this usergroup may have (group 'best of' applies). (null: do not change)
\?integer
The maximum post length that members of this usergroup may make (group 'best of' applies). (null: do not change)
\?integer
The maximum signature length that members of this usergroup may make (group 'best of' applies). (null: do not change)
\?integer
The number of gift points that members of this usergroup start with (group 'best of' applies). (null: do not change)
\?integer
The number of gift points that members of this usergroup get per day (group 'best of' applies). (null: do not change)
\?BINARY
Whether e-mail confirmation is needed for new IP addresses seen for any member of this usergroup (group 'best of' applies). (null: do not change)
\?BINARY
Whether the is presented for joining at joining (implies anyone may be in the, but only choosable at joining) (null: do not change)
\?BINARY
Whether the name and membership of the is hidden (null: do not change)
\?integer
The display order this will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups. (null: do not change)
\?BINARY
Whether the rank image will not be shown for secondary membership (null: do not change)
\?BINARY
Whether members may join this usergroup without requiring any special permission (null: do not change)
\?BINARY
Whether this usergroup is a private club. Private clubs may be managed in the CMS zone, and do not have any special permissions - except over their own associated forum. (null: do not change)
boolean
Whether to force the title as unique, if there's a conflict
cns_edit_member(\AUTO_LINK $member_id, \?SHORT_TEXT $email_address, \?BINARY $preview_posts, \?integer $dob_day, \?integer $dob_month, \?integer $dob_year, \?ID_TEXT $timezone, \?GROUP $primary_group, array $custom_fields, \?ID_TEXT $theme, \?BINARY $reveal_age, \?BINARY $views_signatures, \?BINARY $auto_monitor_contrib_content, \?LANGUAGE_NAME $language, \?BINARY $allow_emails, \?BINARY $allow_emails_from_staff, \?BINARY $validated= null
, \?string $username= null
, \?string $password= null
, \?BINARY $highlighted_name= null
, \?SHORT_TEXT $pt_allow= '*'
, \?LONG_TEXT $pt_rules_text= ''
, \?TIME $on_probation_until= null
, \?TIME $join_time= null
, \?URLPATH $avatar_url= null
, \?LONG_TEXT $signature= null
, \?BINARY $is_perm_banned= null
, \?URLPATH $photo_url= null
, \?URLPATH $photo_thumb_url= null
, \?SHORT_TEXT $salt= null
, \?ID_TEXT $password_compatibility_scheme= null
, boolean $skip_checks= false
)
package | core_cns |
---|
\AUTO_LINK
The ID of the member.
\?SHORT_TEXT
The e-mail address. (null: don't change)
\?BINARY
Whether posts are previewed before they are made. (null: don't change)
\?integer
Day of date of birth. (null: don't change) (-1: deset)
\?integer
Month of date of birth. (null: don't change) (-1: deset)
\?integer
Year of date of birth. (null: don't change) (-1: deset)
\?ID_TEXT
The member timezone. (null: don't change)
\?GROUP
The members primary (null: don't change).
array
A map of custom fields values (field-id=>value).
\?ID_TEXT
The members default theme. (null: don't change)
\?BINARY
Whether the members age may be shown. (null: don't change)
\?BINARY
Whether the member sees signatures in posts. (null: don't change)
\?BINARY
Whether the member automatically is enabled for notifications for content they contribute to. (null: don't change)
\?LANGUAGE_NAME
The members language. (null: don't change)
\?BINARY
Whether the member allows e-mails via the site. (null: don't change)
\?BINARY
Whether the member allows e-mails from staff via the site. (null: don't change)
\?BINARY
Whether the profile has been validated (null: do not change this). (null: don't change)
\?string
The username. (null: don't change)
\?string
The password. (null: don't change)
\?BINARY
Whether the member username will be highlighted. (null: don't change)
\?SHORT_TEXT
Usergroups that may PT the member. (null: don't change)
\?LONG_TEXT
Rules that other members must agree to before they may start a PT with the member. (null: don't change)
\?TIME
When the member is on probation until (null: don't change)
\?TIME
When the member joined (null: don't change)
\?URLPATH
Avatar (null: don't change)
\?LONG_TEXT
Signature (null: don't change)
\?BINARY
Banned status (null: don't change)
\?URLPATH
Photo URL (null: don't change)
\?URLPATH
URL of thumbnail of photo (null: don't change)
\?SHORT_TEXT
Password salt (null: don't change)
\?ID_TEXT
Password compatibility scheme (null: don't change)
boolean
Whether to skip security checks and most of the change-triggered emails
cns_edit_multi_moderation(\AUTO_LINK $id, \SHORT_TEXT $name, \LONG_TEXT $post_text, \?AUTO_LINK $move_to, \?BINARY $pin_state, \?BINARY $sink_state, \?BINARY $open_state, \SHORT_TEXT $forum_multi_code, \SHORT_TEXT $title_suffix)
package | core_cns |
---|
\AUTO_LINK
The ID of the multi moderation we are editing.
\SHORT_TEXT
The name of the multi moderation.
\LONG_TEXT
The default post text to add when applying (may be blank).
\?AUTO_LINK
The forum to move the topic when applying (null: do not move).
\?BINARY
The pin state after applying (null: unchanged).
\?BINARY
The sink state after applying (null: unchanged).
\?BINARY
The open state after applying (null: unchanged).
\SHORT_TEXT
The forum multi code for where this multi moderation may be applied.
\SHORT_TEXT
The title suffix.
cns_edit_poll(\AUTO_LINK $poll_id, \SHORT_TEXT $question, \BINARY $is_private, \BINARY $is_open, integer $minimum_selections, integer $maximum_selections, \BINARY $requires_reply, array $answers, \LONG_TEXT $reason = ''
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the poll we're editing.
\SHORT_TEXT
The question.
\BINARY
Whether the result tallies are kept private until the poll is made non-private.
\BINARY
Whether the poll is open for voting.
integer
The minimum number of selections that may be made.
integer
The maximum number of selections that may be made.
\BINARY
Whether members must have a post in the topic before they made vote.
array
A list of the potential voteable answers.
\LONG_TEXT
The reason for editing the poll.
\AUTO_LINK
The ID of the topic the poll is on.cns_edit_post(\AUTO_LINK $post_id, \BINARY $validated, \SHORT_TEXT $title, \LONG_TEXT $post, \BINARY $skip_sig, \BINARY $is_emphasised, \?MEMBER $intended_solely_for, boolean $show_as_edited, boolean $mark_as_unread, \LONG_TEXT $reason, boolean $check_perms= true
, \?TIME $edit_time= null
, \?TIME $add_time= null
, \?MEMBER $submitter= null
, boolean $null_is_literal= false
, boolean $run_checks= true
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the post that we're editing.
\BINARY
Whether the post is validated (null: decide based on permissions).
\SHORT_TEXT
The title of the post (may be blank).
\LONG_TEXT
The post.
\BINARY
Whether to skip showing the posters signature in the post.
\BINARY
Whether the post is marked emphasised.
\?MEMBER
The member that this post is intended solely for (null: none).
boolean
Whether to show the post as edited.
boolean
Whether to mark the topic as unread by those previous having read this post.
\LONG_TEXT
The reason for this action.
boolean
Whether to check permissions.
\?TIME
Edit time (null: either means current time, or if $null_is_literal, means reset to to NULL)
\?TIME
Add time (null: do not change)
\?MEMBER
Submitter (null: do not change)
boolean
Determines whether some NULLs passed mean 'use a default' or literally mean 'set to NULL'
boolean
Whether to run checks
\AUTO_LINK
The ID of the topic (whilst this could be known without calling this function, as we've gone to effort and grabbed it from the DB, it might turn out useful for something).cns_edit_post_template(\AUTO_LINK $id, \SHORT_TEXT $title, \LONG_TEXT $text, \SHORT_TEXT $forum_multi_code, \BINARY $use_default_forums)
package | core_cns |
---|
\AUTO_LINK
The ID of the post template to edit.
\SHORT_TEXT
The title for the template.
\LONG_TEXT
The text of the template.
\SHORT_TEXT
The multi code specifying which forums this is applicable in.
\BINARY
Whether to use this as the default post in applicable forum.
cns_edit_topic(\?AUTO_LINK $topic_id, \?SHORT_TEXT $description= null
, \?SHORT_TEXT $emoticon= null
, \?BINARY $validated= null
, \?BINARY $open= null
, \?BINARY $pinned= null
, \?BINARY $sunk= null
, \?BINARY $cascading= null
, \LONG_TEXT $reason= ''
, \?string $title= null
, \?SHORT_TEXT $description_link= null
, boolean $check_perms= true
, \?integer $views= null
, boolean $null_is_literal= false
)
package | core_cns |
---|
\?AUTO_LINK
The ID of the topic to edit (null: Private Topic).
\?SHORT_TEXT
Description of the topic (null: do not change).
\?SHORT_TEXT
The image code of the emoticon for the topic (null: do not change).
\?BINARY
Whether the topic is validated (null: do not change).
\?BINARY
Whether the topic is open (null: do not change).
\?BINARY
Whether the topic is pinned (null: do not change).
\?BINARY
Whether the topic is sunk (null: do not change).
\?BINARY
Whether the topic is cascading (null: do not change).
\LONG_TEXT
The reason for this action.
\?string
New title for the topic (null: do not change).
\?SHORT_TEXT
Link related to the topic (e.g. link to view a ticket) (null: do not change).
boolean
Whether to check permissions.
\?integer
Number of views (null: do not change)
boolean
Determines whether some NULLs passed mean 'use a default' or literally mean 'set to NULL'
cns_edit_warning(\AUTO_LINK $warning_id, \LONG_TEXT $explanation, \BINARY $is_warning = 1
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the formal warning we are editing.
\LONG_TEXT
An explanation for why the member is being warned.
\BINARY
Whether this counts as a warning
\AUTO_LINK
The member ID the warning was for.cns_edit_welcome_email(\AUTO_LINK $id, \SHORT_TEXT $name, \SHORT_TEXT $subject, \LONG_TEXT $text, integer $send_time, \?AUTO_LINK $newsletter, \?AUTO_LINK $usergroup, \ID_TEXT $usergroup_type)
package | core_cns |
---|---|
set | primary secondary |
\AUTO_LINK
The ID
\SHORT_TEXT
A name for the Welcome E-mail
\SHORT_TEXT
The subject of the Welcome E-mail
\LONG_TEXT
The message body of the Welcome E-mail
integer
The number of hours before sending the e-mail
\?AUTO_LINK
What newsletter to send out to instead of members (null: none)
\?AUTO_LINK
The usergroup to tie to (null: none)
\ID_TEXT
How to send regarding usergroups (blank: indiscriminately)
cns_ensure_forum_exists(\AUTO_LINK $forum_id) : \SHORT_TEXT
package | core_cns |
---|
\AUTO_LINK
The ID of the forum.
\SHORT_TEXT
The name of the forum.cns_ensure_forum_grouping_exists(\AUTO_LINK $forum_grouping_id)
cns_ensure_groups_cached(mixed $groups)
cns_field_editable(\ID_TEXT $field_name, \ID_TEXT $special_type) : boolean
Called for fields that have a fair chance of being set to auto-sync, and hence be locked to local edits.
package | core_cns |
---|
\ID_TEXT
Field name
\ID_TEXT
The special type of the user (built-in types are:
boolean
Whether the field is editablecns_find_birthdays(\?TIME $time = null
) : array
package | core_cns |
---|
\?TIME
A timestamps that exists in the certain day (null: now).
array
List of maps describing the members whose birthday it is on the certain day.cns_force_update_forum_caching(\AUTO_LINK $forum_id, \?integer $num_topics_increment= null
, \?integer $num_posts_increment= null
, \?AUTO_LINK $last_topic_id= null
, \?string $last_title= null
, \?TIME $last_time= null
, \?string $last_username= null
, \?MEMBER $last_member_id= null
, \?AUTO_LINK $last_forum_id= null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the forum to update the cached details of.
\?integer
How much to increment the topic count by (null: It has to be completely recalculated).
\?integer
How much to increment the post count by (null: It has to be completely recalculated).
\?AUTO_LINK
The ID of the last topic (null: Unknown, it will have to be looked up).
\?string
The title of the last topic (null: Unknown, it will have to be looked up).
\?TIME
The last post time of the last topic (null: Unknown, it will have to be looked up).
\?string
The last post username of the last topic (null: Unknown, it will have to be looked up).
\?MEMBER
The last post member of the last topic (null: Unknown, it will have to be looked up).
\?AUTO_LINK
The forum the last post was in (note this makes sense, because there may be subforums under this forum that we have to take into account). (null: Unknown, it will have to be looked up).
cns_force_update_member_post_count(\MEMBER $member_id, \?integer $member_post_count_dif = null
)
package | core_cns |
---|
\MEMBER
The member.
\?integer
The amount to add to the post count (null: fully recalculate the post count).
cns_force_update_topic_caching(\AUTO_LINK $topic_id, \?integer $post_count_dif= null
, boolean $last= true
, boolean $first= false
, \?AUTO_LINK $last_post_id= null
, \?TIME $last_time= null
, \?string $last_title= null
, \?AUTO_LINK $last_post= null
, \?string $last_username= null
, \?MEMBER $last_member_id= null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the topic to update caching of.
\?integer
The post count difference we know the topic has undergone (null: we'll need to work out from scratch how many posts are in the topic)
boolean
Whether this is the latest post in the topic.
boolean
Whether this is the first post in the topic.
\?AUTO_LINK
The ID of the last post in the topic (null: unknown).
\?TIME
The time of the last post in the topic (null: unknown).
\?string
The title of the last post in the topic (null: unknown).
\?AUTO_LINK
The ID of the last posts language string for the topic (null: unknown).
\?string
The last username to post in the topic (null: unknown).
\?MEMBER
The ID of the last member to post in the topic (null: unknown).
cns_get_all_custom_fields_match(\?array $groups= null
, \?BINARY $public_view= null
, \?BINARY $owner_view= null
, \?BINARY $owner_set= null
, \?BINARY $required= null
, \?BINARY $show_in_posts= null
, \?BINARY $show_in_post_previews= null
, \BINARY $special_start= 0
, \?boolean $show_on_join_form= null
) : array
package | core_cns |
---|
\?array
That are applicable only to one of the usergroups in this list (empty: CPFs with no restriction) (null: disregard restriction).
\?BINARY
That are publicly viewable (null: don't care).
\?BINARY
That are owner viewable (null: don't care).
\?BINARY
That are owner settable (null: don't care).
\?BINARY
That are required (null: don't care).
\?BINARY
That are to be shown in posts (null: don't care).
\?BINARY
That are to be shown in post previews (null: don't care).
\BINARY
That start 'cms_'
\?boolean
That are to go on the join form (null: don't care).
array
A list of rows of such fields.cns_get_all_custom_fields_match_member(\MEMBER $member_id, \?BINARY $public_view= null
, \?BINARY $owner_view= null
, \?BINARY $owner_set= null
, \?BINARY $encrypted= null
, \?BINARY $required= null
, \?BINARY $show_in_posts= null
, \?BINARY $show_in_post_previews= null
, \BINARY $special_start= 0
, \?boolean $show_on_join_form= null
) : array
package | core_cns |
---|
\MEMBER
The member.
\?BINARY
That are publicly viewable (null: don't care).
\?BINARY
That are owner viewable (null: don't care).
\?BINARY
That are owner settable (null: don't care).
\?BINARY
That are encrypted (null: don't care).
\?BINARY
That are required (null: don't care).
\?BINARY
That are to be shown in posts (null: don't care).
\?BINARY
That are to be shown in post previews (null: don't care).
\BINARY
That start 'cms_'
\?boolean
That are to go on the join form (null: don't care).
array
A mapping of field title to a map of details: 'RAW' as the raw field value, 'RENDERED' as the rendered field value, 'FIELD_ID' to the field ID, 'EDITABILITY' defining if fractional editing can work on thiscns_get_all_default_groups(boolean $include_primary= false
, boolean $include_all_configured_default_groups= false
) : array
package | core_cns |
---|
boolean
Whether to include the default primary (at the end of the list).
boolean
The functionality does not usually consider configured default groups [unless there's just one], because this is a layer of uncertainity (the user PICKS one of these). If you want to return all configured default groups, set this parameter to true.
array
The list of default IDs.cns_get_all_subordinate_forums(\AUTO_LINK $forum_id, \?string $create_or_list= null
, \?array $tree= null
, boolean $ignore_permissions= false
) : mixed
package | core_cns |
---|
\AUTO_LINK
The ID of the forum we are finding subordinate forums of.
\?string
The field name to use in the OR list (null: do not make an OR list, return an array).
\?array
The forum tree structure (null: unknown, it will be found using cns_organise_into_tree).
boolean
Whether to ignore permissions in this.
mixed
The list (is either a true list, or an OR list).cns_get_best_group_property(array $groups, \ID_TEXT $property) : mixed
package | core_cns |
---|
array
The list of usergroups.
\ID_TEXT
The identifier of the property.
mixed
The best property value ('best' is dependant on the property we are looking at).cns_get_custom_field_mappings(\MEMBER $member_id) : array
package | core_cns |
---|
\MEMBER
The member.
array
The mapping, field_cns_get_custom_fields_member(\MEMBER $member_id) : array
cns_get_filter_cats(boolean $only_exists_now = false
) : array
package | core_cns |
---|
boolean
Whether to only show ones that already have things in (i.e. not default ones)
array
List of filter categoriescns_get_forum_multi_code_field(\SHORT_TEXT $forum_multi_code) : \Tempcode
package | core_cns |
---|
\SHORT_TEXT
The multi code.
\Tempcode
The form field.cns_get_forum_parent_or_list(\AUTO_LINK $forum_id, \?AUTO_LINK $parent_id = -1
) : string
package | core_cns |
---|
\AUTO_LINK
The ID of the forum.
\?AUTO_LINK
The ID of the parent forum (-1: get it from the DB) (null: there is no parent, as it is the root forum).
string
The OR list.cns_get_forum_tree(\?MEMBER $member_id= null
, \?AUTO_LINK $base_forum= null
, string $breadcrumbs= ''
, \?AUTO_LINK $skip= null
, \?array $forum_details= null
, boolean $use_compound_list= false
, \?integer $levels= null
, boolean $do_stats= false
, \?TIME $updated_since= null
) : array
package | core_cns |
---|
\?MEMBER
The member that the view privileges are done for (null: current member).
\?AUTO_LINK
The forum we are starting from (null: capture the whole tree).
string
The breadcrumbs at this point of the recursion (blank for the start).
\?AUTO_LINK
ID of a forum to skip display/recursion for (null: none).
\?array
Details of the current forum in the recursion (null: find from DB).
boolean
Whether to generate a compound list (a list of all the ancesters, for each point in the forum tree) as well as the tree.
\?integer
The number of recursive levels to search (null: all)
boolean
Whether to generate tree statistics.
\?TIME
Time from which content must be updated (null: no limit).
array
A list of maps, OR (if $use_compound_list) a pair of the Tempcode and the compound list.cns_get_forums_stats() : array
cns_get_group_link(\GROUP $id, boolean $hide_hidden = true
) : \Tempcode
package | core_cns |
---|
\GROUP
The ID of the group.
boolean
Whether to hide the name if it is a hidden group.
\Tempcode
The link.cns_get_group_members_raw(\GROUP $group_id, boolean $include_primaries= true
, boolean $non_validated= false
, boolean $include_secondaries= true
, boolean $include_unvalidated_members= true
, \?integer $max= null
, integer $start= 0
) : array
package | core_cns |
---|
\GROUP
The ID of the group.
boolean
Whether to include those in the as a primary member.
boolean
Whether to include those applied to join the, but not validated in (also causes it to return maps that contain this info).
boolean
Whether to include those in the as a secondary member.
boolean
Whether to include those members who are not validated as site members at all yet (parameter currently ignored).
\?integer
Return up to this many entries for primary members and this many entries for secondary members and all LDAP members (null: no limit, only use no limit if querying very restricted usergroups!)
integer
Return primary members after this offset and secondary members after this offset
array
The list.cns_get_group_members_raw_count(\GROUP $group_id, boolean $include_primaries= true
, boolean $non_validated= false
, boolean $include_secondaries= true
, boolean $include_unvalidated_members= true
) : integer
package | core_cns |
---|
\GROUP
The ID of the group.
boolean
Whether to include those in the as a primary member.
boolean
Whether to include those applied to join the, but not validated in.
boolean
Whether to include those in the as a secondary member.
boolean
Whether to include those members who are not validated as site members at all yet (parameter currently ignored).
integer
The count.cns_get_group_name(\GROUP $group, boolean $hide_hidden = true
) : string
package | core_cns |
---|
\GROUP
The ID of the group.
boolean
Whether to hide the name if it is a hidden group.
string
The usergroup name.cns_get_group_property(\GROUP $group, \ID_TEXT $property, boolean $hide_hidden = true
) : mixed
package | core_cns |
---|
\GROUP
The ID of the group.
\ID_TEXT
The identifier of the property.
boolean
Whether to hide the name if it is a hidden group.
mixed
The property value.cns_get_member_best_group_property(\MEMBER $member_id, \ID_TEXT $property) : mixed
package | core_cns |
---|
\MEMBER
The ID of the member.
\ID_TEXT
The identifier of the property.
mixed
The property value.cns_get_member_fields(boolean $mini_mode= true
, \?MEMBER $member_id= null
, \?array $groups= null
, \SHORT_TEXT $email_address= ''
, \BINARY $preview_posts= 0
, \?integer $dob_day= null
, \?integer $dob_month= null
, \?integer $dob_year= null
, \?ID_TEXT $timezone= null
, \?array $custom_fields= null
, \?ID_TEXT $theme= null
, \BINARY $reveal_age= 1
, \BINARY $views_signatures= 1
, \?BINARY $auto_monitor_contrib_content= null
, \?LANGUAGE_NAME $language= null
, \BINARY $allow_emails= 1
, \BINARY $allow_emails_from_staff= 1
, \BINARY $validated= 1
, \?GROUP $primary_group= null
, \SHORT_TEXT $username= ''
, \BINARY $is_perm_banned= 0
, \ID_TEXT $special_type= ''
, \BINARY $highlighted_name= 0
, \SHORT_TEXT $pt_allow= '*'
, \LONG_TEXT $pt_rules_text= ''
, \?TIME $on_probation_until= null
) : array
package | core_cns |
---|
boolean
Whether we are only handling the essential details of a profile.
\?MEMBER
The ID of the member we are handling (null: new member).
\?array
A list of usergroups (null: default/current usergroups).
\SHORT_TEXT
The e-mail address.
\BINARY
Whether posts are previewed before they are made.
\?integer
Day of date of birth (null: not known).
\?integer
Month of date of birth (null: not known).
\?integer
Year of date of birth (null: not known).
\?ID_TEXT
The member timezone (null: site default).
\?array
A map of custom fields values (field-id=>value) (null: not known).
\?ID_TEXT
The members default theme (null: not known).
\BINARY
Whether the members age may be shown.
\BINARY
Whether the member sees signatures in posts.
\?BINARY
Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).
\?LANGUAGE_NAME
The members language (null: auto detect).
\BINARY
Whether the member allows e-mails via the site.
\BINARY
Whether the member allows e-mails from staff via the site.
\BINARY
Whether the profile has been validated.
\?GROUP
The members primary (null: not known).
\SHORT_TEXT
The username.
\BINARY
Whether the member is permanently banned.
\ID_TEXT
The special type of profile this is (blank: not a special type).
\BINARY
Whether the member username will be highlighted.
\SHORT_TEXT
Usergroups that may PT the member.
\LONG_TEXT
Rules that other members must agree to before they may start a PT with the member.
\?TIME
When the member is on probation until (null: just finished probation / or effectively was never on it)
array
A pair: The form fields, Hidden fields (both Tempcode).cns_get_member_fields_profile(boolean $mini_mode= true
, \?MEMBER $member_id= null
, \?array $groups= null
, \?array $custom_fields= null
) : array
package | core_cns |
---|
boolean
Whether we are only handling the essential details of a profile.
\?MEMBER
The ID of the member we are handling (null: new member).
\?array
A list of usergroups (null: default/current usergroups).
\?array
A map of custom fields values (field-id=>value) (null: not known).
array
A pair: The form fields, Hidden fields (both Tempcode).cns_get_member_fields_settings(boolean $mini_mode= true
, \?MEMBER $member_id= null
, \?array $groups= null
, \SHORT_TEXT $email_address= ''
, \?BINARY $preview_posts= null
, \?integer $dob_day= null
, \?integer $dob_month= null
, \?integer $dob_year= null
, \?ID_TEXT $timezone= null
, \?ID_TEXT $theme= null
, \BINARY $reveal_age= 1
, \BINARY $views_signatures= 1
, \?BINARY $auto_monitor_contrib_content= null
, \?LANGUAGE_NAME $language= null
, \BINARY $allow_emails= 1
, \BINARY $allow_emails_from_staff= 1
, \BINARY $validated= 1
, \?GROUP $primary_group= null
, \SHORT_TEXT $username= ''
, \BINARY $is_perm_banned= 0
, \ID_TEXT $special_type= ''
, \BINARY $highlighted_name= 0
, \SHORT_TEXT $pt_allow= '*'
, \LONG_TEXT $pt_rules_text= ''
, \?TIME $on_probation_until= null
) : array
package | core_cns |
---|
boolean
Whether we are only handling the essential details of a profile.
\?MEMBER
The ID of the member we are handling (null: new member).
\?array
A list of usergroups (null: default/current usergroups).
\SHORT_TEXT
The e-mail address.
\?BINARY
Whether posts are previewed before they are made (null: calculate statistically).
\?integer
Day of date of birth (null: not known).
\?integer
Month of date of birth (null: not known).
\?integer
Year of date of birth (null: not known).
\?ID_TEXT
The member timezone (null: site default).
\?ID_TEXT
The members default theme (null: not known).
\BINARY
Whether the members age may be shown.
\BINARY
Whether the member sees signatures in posts.
\?BINARY
Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).
\?LANGUAGE_NAME
The members language (null: auto detect).
\BINARY
Whether the member allows e-mails via the site.
\BINARY
Whether the member allows e-mails from staff via the site.
\BINARY
Whether the profile has been validated.
\?GROUP
The members primary (null: not known).
\SHORT_TEXT
The username.
\BINARY
Whether the member is permanently banned.
\ID_TEXT
The special type of profile this is (blank: not a special type).
\BINARY
Whether the member username will be highlighted.
\SHORT_TEXT
Usergroups that may PT the member.
\LONG_TEXT
Rules that other members must agree to before they may start a PT with the member.
\?TIME
When the member is on probation until (null: just finished probation / or effectively was never on it)
array
A pair: The form fields, Hidden fields (both Tempcode).cns_get_member_primary_group(\MEMBER $member_id) : \GROUP
cns_get_members_groups(\?MEMBER $member_id= null
, boolean $skip_secret= false
, boolean $handle_probation= true
, boolean $include_implicit= true
) : array
package | core_cns |
---|
\?MEMBER
The member to find the usergroups of (null: current member).
boolean
Whether to skip looking at secret usergroups.
boolean
Whether to take probation into account
boolean
Whether to include implicit groups
array
Reverse list (e.g. array(1=>true,2=>true,3=>true) for someone in (1,2,3)).cns_get_post_templates(\AUTO_LINK $forum_id) : array
package | core_cns |
---|
\AUTO_LINK
The ID of the forum.
array
The list of applicable post templates.cns_get_pp_rows(\?integer $limit= 5
, boolean $unread= true
, boolean $include_inline= true
, \?TIME $time_barrier= null
) : array
package | core_cns |
---|
\?integer
The maximum number of rows to get (gets newest first) (null: no limit).
boolean
Whether to only get unread ones.
boolean
Whether to include inline personal posts.
\?TIME
Only since this date (null: no limit).
array
The personal post rows (with corresponding topic details).cns_get_safe_specified_poster_name(boolean $is_required_field = null
) : string
package | core_cns |
---|
boolean
If it is a required field (null: typically no, but look at hidden option for it).
string
Poster name.cns_get_topic_tree(\?AUTO_LINK $forum_id= null
, \?string $breadcrumbs= null
, \?ID_TEXT $title= null
, \?integer $levels= null
) : array
package | core_cns |
---|
\?AUTO_LINK
The forum being at the root of our recursion (null: true root forum)
\?string
The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)
\?ID_TEXT
The forum name of the $forum_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title
\?integer
The number of recursive levels to search (null: all)
array
A list of maps for all forums. Each map entry containins the fields 'id' (forum ID) and 'breadcrumbs' (path to the forum, including the forums own title), and more.cns_get_topic_where(\AUTO_LINK $topic_id, \?MEMBER $member_id = null
) : string
package | core_cns |
---|
\AUTO_LINK
The ID of the topic we are getting details of.
\?MEMBER
The member doing the lookup (null: current member).
string
The WHERE clause.cns_get_warnings(\MEMBER $member_id) : array
cns_group_absorb_privileges_of(\GROUP $to, \GROUP $from)
package | core_cns |
---|
\GROUP
The that is having it's permissions replaced.
\GROUP
The that the permissions are being drawn from.
cns_has_read_topic(\AUTO_LINK $topic_id, \?TIME $topic_last_time= null
, \?MEMBER $member_id= null
, \?TIME $member_last_time= null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The ID of the topic.
\?TIME
The time of the last post in the topic (null: get it from the DB).
\?MEMBER
The member (null: current member).
\?TIME
The time the member last viewed the topic (null: get it from the DB).
boolean
They have read it as such, yes.cns_has_replied_topic(\AUTO_LINK $topic_id, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The topic.
\?MEMBER
The member (null: current member).
boolean
The answer.cns_has_special_pt_access(\AUTO_LINK $topic_id, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The ID of the topic.
\?MEMBER
The member (null: current member).
boolean
Whether they have special access.cns_invite_to_pt(\MEMBER $member_id, \AUTO_LINK $topic_id)
cns_is_httpauth_member(\MEMBER $member_id) : boolean
cns_is_ldap_member(\MEMBER $member_id) : boolean
cns_join_actual(boolean $captcha_if_enabled= true
, boolean $intro_message_if_enabled= true
, boolean $invites_if_enabled= true
, boolean $one_per_email_address_if_enabled= true
, boolean $confirm_if_enabled= true
, boolean $validate_if_enabled= true
, boolean $coppa_if_enabled= true
, boolean $instant_login= true
, \?ID_TEXT $username= null
, \?EMAIL $email_address= null
, \?string $password= null
, \?array $actual_custom_fields= null
) : array
package | core_cns |
---|
boolean
Whether to handle CAPTCHA (if enabled at all)
boolean
Whether to ask for intro messages (if enabled at all)
boolean
Whether to check for invites (if enabled at all)
boolean
Whether to check email-address restrictions (if enabled at all)
boolean
Whether to require staff confirmation (if enabled at all)
boolean
Whether to force email address validation (if enabled at all)
boolean
Whether to do COPPA checks (if enabled at all)
boolean
Whether to instantly log the user in
\?ID_TEXT
Username (null: read from environment)
\?EMAIL
E-mail address (null: read from environment)
\?string
Password (null: read from environment)
\?array
Custom fields to save (null: read from environment)
array
A tuple: Messages to show, member ID of new membercns_join_form(\Tempcode $url, boolean $captcha_if_enabled= true
, boolean $intro_message_if_enabled= true
, boolean $invites_if_enabled= true
, boolean $one_per_email_address_if_enabled= true
) : array
package | core_cns |
---|
\Tempcode
URL to direct to
boolean
Whether to handle CAPTCHA (if enabled at all)
boolean
Whether to ask for intro messages (if enabled at all)
boolean
Whether to check for invites (if enabled at all)
boolean
Whether to check email-address restrictions (if enabled at all)
array
A tuple: Necessary JavaScript code, the formcns_list_multi_moderations(\AUTO_LINK $forum_id) : array
package | core_cns |
---|
\AUTO_LINK
The forum we are listing for.
array
List of multi moderations.cns_make_boiler_custom_field(\ID_TEXT $type) : \AUTO_LINK
package | core_cns |
---|
\ID_TEXT
The identifier of the boiler custom profile field.
\AUTO_LINK
The ID of the new custom profile field.cns_make_custom_field(\SHORT_TEXT $name, \BINARY $locked= 0
, \SHORT_TEXT $description= ''
, \LONG_TEXT $default= ''
, \BINARY $public_view= 0
, \BINARY $owner_view= 0
, \BINARY $owner_set= 0
, \BINARY $encrypted= 0
, \ID_TEXT $type= 'long_text'
, \BINARY $required= 0
, \BINARY $show_in_posts= 0
, \BINARY $show_in_post_previews= 0
, \?integer $order= null
, \LONG_TEXT $only_group= ''
, \BINARY $show_on_join_form= 0
, \SHORT_TEXT $options= ''
, boolean $no_name_dupe= false
) : \AUTO_LINK
package | core_cns |
---|---|
set | short_text long_text short_trans long_trans integer upload picture url list tick float |
\SHORT_TEXT
Name of the field.
\BINARY
Whether the field is locked (i.e. cannot be deleted from the system).
\SHORT_TEXT
Description of the field.
\LONG_TEXT
The default value for the field.
\BINARY
Whether the field is publicly viewable.
\BINARY
Whether the field is viewable by the owner.
\BINARY
Whether the field may be set by the owner.
\BINARY
Whether the field is encrypted.
\ID_TEXT
The type of the field.
\BINARY
Whether it is required that every member have this field filled in.
\BINARY
Whether this field is shown in posts and places where member details are highlighted (such as an image in a member gallery).
\BINARY
Whether this field is shown in preview places, such as in the forum member tooltip.
\?integer
The order of this field relative to other fields (null: next).
\LONG_TEXT
The usergroups that this field is confined to (comma-separated list).
\BINARY
Whether the field is to be shown on the join form
\SHORT_TEXT
Field options
boolean
Whether to check that no field has this name already.
\AUTO_LINK
The ID of the new custom profile field.cns_make_emoticon(\SHORT_TEXT $code, \ID_TEXT $theme_img_code, integer $relevance_level= 1
, \BINARY $use_topics= 1
, \BINARY $is_special= 0
)
package | core_cns |
---|---|
range | 0 4 |
\SHORT_TEXT
The textual code entered to make the emoticon appear.
\ID_TEXT
The image code used for the emoticon.
integer
The relevance level. 0 is core, shown immediately.
\BINARY
Whether this may be used as a topic emoticon.
\BINARY
Whether this may only be used by privileged members
cns_make_forum(\SHORT_TEXT $name, \SHORT_TEXT $description, \?AUTO_LINK $forum_grouping_id, \?array $access_mapping, \?AUTO_LINK $parent_forum, integer $position= 1
, \BINARY $post_count_increment= 1
, \BINARY $order_sub_alpha= 0
, \LONG_TEXT $intro_question= ''
, \SHORT_TEXT $intro_answer= ''
, \SHORT_TEXT $redirection= ''
, \ID_TEXT $order= 'last_post'
, \BINARY $is_threaded= 0
) : \AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The name of the forum.
\SHORT_TEXT
The description for the forum.
\?AUTO_LINK
What forum grouping the forum will be filed with (null: this is the root forum).
\?array
Permission map (null: do it the standard way, outside of this function). This parameter is for import/compatibility only and works upon an emulation of 'access levels' (ala Composr 2.5/2.6), and it is recommended to use the normal crud_module functionality for permissions setting.
\?AUTO_LINK
The ID of the parent forum (null: this is the root forum).
integer
The position of this forum relative to other forums viewable on the same screen (if parent forum hasn't specified automatic ordering).
\BINARY
Whether post counts will be incremented if members post in the forum.
\BINARY
Whether the ordering of subforums is done automatically, alphabetically).
\LONG_TEXT
The question that is shown for newbies to the forum (blank: none).
\SHORT_TEXT
The answer to the question (blank: no specific answer.. if there's a 'question', it just requires a click-through).
\SHORT_TEXT
Either blank for no redirection, the ID of another forum we are mirroring, or a URL to redirect to.
\ID_TEXT
The order the topics are shown in, by default.
\BINARY
Whether the forum is threaded.
\AUTO_LINK
The ID of the newly created forum.cns_make_forum_grouping(\SHORT_TEXT $title, \SHORT_TEXT $description, \BINARY $expanded_by_default = 1
) : \AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The title of the forum grouping.
\SHORT_TEXT
The description of the forum grouping.
\BINARY
Whether the forum grouping will be shown expanded by default (as opposed to contracted, where contained forums will not be shown until expansion).
\AUTO_LINK
The ID of the forum grouping just added.cns_make_group(\SHORT_TEXT $name, \BINARY $is_default= 0
, \BINARY $is_super_admin= 0
, \BINARY $is_super_moderator= 0
, \SHORT_TEXT $title= ''
, \URLPATH $rank_image= ''
, \?GROUP $promotion_target= null
, \?integer $promotion_threshold= null
, \?MEMBER $group_leader= null
, \?integer $flood_control_submit_secs= null
, \?integer $flood_control_access_secs= null
, \?integer $max_daily_upload_mb= null
, \?integer $max_attachments_per_post= null
, \?integer $max_avatar_width= null
, \?integer $max_avatar_height= null
, \?integer $max_post_length_comcode= null
, \?integer $max_sig_length_comcode= null
, \?integer $gift_points_base= null
, \?integer $gift_points_per_day= null
, \BINARY $enquire_on_new_ips= 0
, \BINARY $is_presented_at_install= 0
, \BINARY $hidden= 0
, \?integer $order= null
, \BINARY $rank_image_pri_only= 1
, \BINARY $open_membership= 0
, \BINARY $is_private_club= 0
, boolean $uniqify= false
, boolean $comes_with_permissions= true
) : \AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The name of the usergroup.
\BINARY
Whether members are automatically put into the when they join.
\BINARY
Whether members of this usergroup are all super administrators.
\BINARY
Whether members of this usergroup are all super moderators.
\SHORT_TEXT
The title for primary members of this usergroup that don't have their own title.
\URLPATH
The rank image for this.
\?GROUP
The that members of this usergroup get promoted to at point threshold (null: no promotion prospects).
\?integer
The point threshold for promotion (null: no promotion prospects).
\?MEMBER
The leader of this usergroup (null: none).
\?integer
The number of seconds that members of this usergroup must endure between submits (group 'best of' applies). 0 means N/A. (null: average for existing usergroups)
\?integer
The number of seconds that members of this usergroup must endure between accesses (group 'best of' applies). 0 means N/A. (null: average for existing usergroups)
\?integer
The number of megabytes that members of this usergroup may attach per day (group 'best of' applies). (null: average for existing usergroups)
\?integer
The number of attachments that members of this usergroup may attach to something (group 'best of' applies). (null: average for existing usergroups)
\?integer
The maximum avatar width that members of this usergroup may have (group 'best of' applies). (null: average for existing usergroups)
\?integer
The maximum avatar height that members of this usergroup may have (group 'best of' applies). (null: average for existing usergroups)
\?integer
The maximum post length that members of this usergroup may make (group 'best of' applies). (null: average for existing usergroups)
\?integer
The maximum signature length that members of this usergroup may make (group 'best of' applies). (null: average for existing usergroups)
\?integer
The number of gift points that members of this usergroup start with (group 'best of' applies). (null: average for existing usergroups)
\?integer
The number of gift points that members of this usergroup get per day (group 'best of' applies). (null: average for existing usergroups)
\BINARY
Whether e-mail confirmation is needed for new IP addresses seen for any member of this usergroup (group 'best of' applies).
\BINARY
Whether the usergroup is presented for joining at joining (implies anyone may be in the, but only choosable at joining)
\BINARY
Whether the name and membership of the is hidden
\?integer
The display order this will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups (null: next).
\BINARY
Whether the rank image will not be shown for secondary membership
\BINARY
Whether members may join this usergroup without requiring any special permission
\BINARY
Whether this usergroup is a private club. Private clubs may be managed in the CMS zone, and do not have any special permissions - except over their own associated forum.
boolean
Whether to force the title as unique, if there's a conflict
boolean
Whether permissions should be auto-copied
\AUTO_LINK
The ID of the new.cns_make_member(\SHORT_TEXT $username, \SHORT_TEXT $password, \SHORT_TEXT $email_address, \?array $secondary_groups, \?integer $dob_day, \?integer $dob_month, \?integer $dob_year, array $custom_fields, \?ID_TEXT $timezone= null
, \?GROUP $primary_group= null
, \BINARY $validated= 1
, \?TIME $join_time= null
, \?TIME $last_visit_time= null
, \ID_TEXT $theme= ''
, \?URLPATH $avatar_url= null
, \LONG_TEXT $signature= ''
, \BINARY $is_perm_banned= 0
, \?BINARY $preview_posts= null
, \BINARY $reveal_age= 0
, \SHORT_TEXT $title= ''
, \URLPATH $photo_url= ''
, \URLPATH $photo_thumb_url= ''
, \BINARY $views_signatures= 1
, \?BINARY $auto_monitor_contrib_content= null
, \?LANGUAGE_NAME $language= null
, \BINARY $allow_emails= 1
, \BINARY $allow_emails_from_staff= 1
, \?IP $ip_address= null
, \SHORT_TEXT $validated_email_confirm_code= ''
, boolean $check_correctness= true
, \?ID_TEXT $password_compatibility_scheme= null
, \SHORT_TEXT $salt= ''
, \?TIME $last_submit_time= null
, \?AUTO_LINK $id= null
, \BINARY $highlighted_name= 0
, \SHORT_TEXT $pt_allow= '*'
, \LONG_TEXT $pt_rules_text= ''
, \?TIME $on_probation_until= null
) : \AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The username.
\SHORT_TEXT
The password.
\SHORT_TEXT
The e-mail address.
\?array
A list of secondary usergroups (null: default/current usergroups).
\?integer
Day of date of birth (null: unknown).
\?integer
Month of date of birth (null: unknown).
\?integer
Year of date of birth (null: unknown).
array
A map of custom field values (fieldID=>value).
\?ID_TEXT
The member timezone (null: auto-detect).
\?GROUP
The member's primary (null: default).
\BINARY
Whether the profile has been validated.
\?TIME
When the member joined (null: now).
\?TIME
When the member last visited (null: now).
\ID_TEXT
The member's default theme.
\?URLPATH
The URL to the member's avatar (blank: none) (null: choose one automatically).
\LONG_TEXT
The member's signature (blank: none).
\BINARY
Whether the member is permanently banned.
\?BINARY
Whether posts are previewed before they are made (null: calculate automatically).
\BINARY
Whether the member's age may be shown.
\SHORT_TEXT
The member's title (blank: get from primary).
\URLPATH
The URL to the member's photo (blank: none).
\URLPATH
The URL to the member's photo thumbnail (blank: none).
\BINARY
Whether the member sees signatures in posts.
\?BINARY
Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).
\?LANGUAGE_NAME
The member's language (null: auto detect).
\BINARY
Whether the member allows e-mails via the site.
\BINARY
Whether the member allows e-mails from staff via the site.
\?IP
The member's IP address (null: IP address of current user).
\SHORT_TEXT
The code required before the account becomes active (blank: already entered).
boolean
Whether to check details for correctness.
\?ID_TEXT
The compatibility scheme that the password operates in (blank: none) (null: none [meaning normal Composr salted style] or plain, depending on whether passwords are encrypted).
\SHORT_TEXT
The password salt (blank: password compatibility scheme does not use a salt / auto-generate).
\?TIME
The time the member last made a submission (null: set to now).
\?AUTO_LINK
Force an ID (null: don't force an ID)
\BINARY
Whether the member username will be highlighted.
\SHORT_TEXT
Usergroups that may PT the member.
\LONG_TEXT
Rules that other members must agree to before they may start a PT with the member.
\?TIME
When the member is on probation until (null: not on probation)
\AUTO_LINK
The ID of the new member.cns_make_multi_moderation(\SHORT_TEXT $name, \LONG_TEXT $post_text, \?AUTO_LINK $move_to, \?BINARY $pin_state, \?BINARY $sink_state, \?BINARY $open_state, \SHORT_TEXT $forum_multi_code= '*'
, \SHORT_TEXT $title_suffix= ''
) : \AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The name of the multi moderation.
\LONG_TEXT
The post text to add when applying (blank: don't add a post).
\?AUTO_LINK
The forum to move the topic when applying (null: do not move).
\?BINARY
The pin state after applying (null: unchanged).
\?BINARY
The sink state after applying (null: unchanged).
\?BINARY
The open state after applying (null: unchanged).
\SHORT_TEXT
The forum multi code for where this multi moderation may be applied.
\SHORT_TEXT
The title suffix.
\AUTO_LINK
The ID of the multi moderation just added.cns_make_poll(\AUTO_LINK $topic_id, \SHORT_TEXT $question, \BINARY $is_private, \BINARY $is_open, integer $minimum_selections, integer $maximum_selections, \BINARY $requires_reply, array $answers, boolean $check_permissions = true
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the topic to add the poll to.
\SHORT_TEXT
The question.
\BINARY
Whether the result tallies are kept private until the poll is made non-private.
\BINARY
Whether the poll is open for voting.
integer
The minimum number of selections that may be made.
integer
The maximum number of selections that may be made.
\BINARY
Whether members must have a post in the topic before they made vote.
array
A list of pairs of the potential voteable answers and the number of votes.
boolean
Whether to check there are permissions to make the poll.
\AUTO_LINK
The ID of the newly created forum poll.cns_make_post(\AUTO_LINK $topic_id, \SHORT_TEXT $title, \LONG_TEXT $post, \BINARY $skip_sig= 0
, \?boolean $is_starter= false
, \?BINARY $validated= null
, \BINARY $is_emphasised= 0
, \?string $poster_name_if_guest= null
, \?IP $ip_address= null
, \?TIME $time= null
, \?MEMBER $poster= null
, \?MEMBER $intended_solely_for= null
, \?TIME $last_edit_time= null
, \?MEMBER $last_edit_by= null
, boolean $check_permissions= true
, boolean $update_caching= true
, \?AUTO_LINK $forum_id= null
, boolean $support_attachments= true
, \?string $topic_title= ''
, \BINARY $sunk= 0
, \?AUTO_LINK $id= null
, boolean $anonymous= false
, boolean $skip_post_checks= false
, \?boolean $is_pt= false
, boolean $insert_comcode_as_admin= false
, \?AUTO_LINK $parent_id= null
, boolean $send_notification= true
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the topic to add the post to.
\SHORT_TEXT
The title of the post (may be blank).
\LONG_TEXT
The post.
\BINARY
Whether to skip showing the posters signature in the post.
\?boolean
Whether the post is the first in the topic (null: work it out).
\?BINARY
Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially).
\BINARY
Whether the post is marked emphasised.
\?string
The name of the person making the post (null: username of current member).
\?IP
The IP address the post is to be made under (null: IP of current user).
\?TIME
The time of the post (null: now).
\?MEMBER
The poster (null: current member).
\?MEMBER
The member that this post is intended solely for (null: public).
\?TIME
The last edit time of the post (null: never edited).
\?MEMBER
The member that was last to edit the post (null: never edited).
boolean
Whether to check permissions for whether the post may be made as it is given.
boolean
Whether to update the caches after making the post.
\?AUTO_LINK
The forum the post will be in (null: find out from the DB).
boolean
Whether to allow attachments in this post.
\?string
The title of the topic (null: find from the DB).
\BINARY
Whether the topic is a sunk topic.
\?AUTO_LINK
Force an ID (null: don't force an ID)
boolean
Whether to make the post anonymous
boolean
Whether to skip post checks
\?boolean
Whether this is for a new Private Topic (null: work it out)
boolean
Whether to explicitly insert the Comcode with admin privileges
\?AUTO_LINK
Parent post ID (null: none-threaded/root-of-thread)
boolean
Whether to send out notifications
\AUTO_LINK
The ID of the new post.cns_make_post_template(\SHORT_TEXT $title, \LONG_TEXT $text, \SHORT_TEXT $forum_multi_code, \BINARY $use_default_forums) : \AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The title for the template.
\LONG_TEXT
The text of the template.
\SHORT_TEXT
The multi code specifying which forums this is applicable in.
\BINARY
Whether to use this as the default post in applicable forum.
\AUTO_LINK
The added IDcns_make_topic(\?AUTO_LINK $forum_id, \SHORT_TEXT $description= ''
, \SHORT_TEXT $emoticon= ''
, \?BINARY $validated= null
, \BINARY $open= 1
, \BINARY $pinned= 0
, \BINARY $sunk= 0
, \BINARY $cascading= 0
, \?MEMBER $pt_from= null
, \?MEMBER $pt_to= null
, boolean $check_perms= true
, integer $num_views= 0
, \?AUTO_LINK $id= null
, \SHORT_TEXT $description_link= ''
) : \AUTO_LINK
This does not create the first post, you need to do an cns_make_post call for that. Conversr allows topics with zero posts.
package | core_cns |
---|
\?AUTO_LINK
The ID of the forum the topic will be in (null: Private Topic).
\SHORT_TEXT
Description of the topic.
\SHORT_TEXT
The theme image code of the emoticon for the topic.
\?BINARY
Whether the topic is validated (null: detect whether it should be).
\BINARY
Whether the topic is open.
\BINARY
Whether the topic is pinned.
\BINARY
Whether the topic is sunk.
\BINARY
Whether the topic is cascading.
\?MEMBER
If it is a Private Topic, who is it 'from' (null: not a Private Topic).
\?MEMBER
If it is a Private Topic, who is it 'to' (null: not a Private Topic).
boolean
Whether to check the poster has permissions for the given topic settings.
integer
The number of times the topic has been viewed.
\?AUTO_LINK
Force an ID (null: don't force an ID)
\SHORT_TEXT
Link related to the topic (e.g. link to view a ticket).
\AUTO_LINK
The ID of the newly created topic.cns_make_warning(\MEMBER $member_id, \LONG_TEXT $explanation, \?MEMBER $by= null
, \?TIME $time= null
, \BINARY $is_warning= 1
, \?AUTO_LINK $silence_from_topic= null
, \?AUTO_LINK $silence_from_forum= null
, integer $probation= 0
, \IP $banned_ip= ''
, integer $charged_points= 0
, \BINARY $banned_member= 0
, \?GROUP $changed_usergroup_from= null
) : \AUTO_LINK
package | core_cns |
---|
\MEMBER
The member being warned.
\LONG_TEXT
An explanation for why the member is being warned.
\?MEMBER
The member doing the warning (null: current member).
\?TIME
The time of the warning (null: now).
\BINARY
Whether this counts as a warning
\?AUTO_LINK
The topic being silenced from (null: none)
\?AUTO_LINK
The forum being silenced from (null: none)
integer
Number of extra days for probation
\IP
The IP address being banned (blank: none)
integer
The points being charged
\BINARY
Whether the member is being banned
\?GROUP
The usergroup being changed from (null: no change)
\AUTO_LINK
The ID of the newly created warning.cns_make_welcome_email(\SHORT_TEXT $name, \SHORT_TEXT $subject, \LONG_TEXT $text, integer $send_time, \?AUTO_LINK $newsletter= null
, \?AUTO_LINK $usergroup= null
, \ID_TEXT $usergroup_type= ''
) : \AUTO_LINK
package | core_cns |
---|---|
set | primary secondary "" |
\SHORT_TEXT
A name for the Welcome E-mail
\SHORT_TEXT
The subject of the Welcome E-mail
\LONG_TEXT
The message body of the Welcome E-mail
integer
The number of hours before sending the e-mail
\?AUTO_LINK
What newsletter to send out to instead of members (null: none)
\?AUTO_LINK
The usergroup to tie to (null: none)
\ID_TEXT
How to send regarding usergroups (blank: indiscriminately)
\AUTO_LINK
The IDcns_may_attach_poll(\AUTO_LINK $topic_id, \?MEMBER $topic_owner= null
, \?boolean $has_poll_already= null
, \?MEMBER $forum_id= null
, \?MEMBER $member_id= null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The topic.
\?MEMBER
The topic owner (null: ask the DB for it).
\?boolean
Whether the topic already has a poll (null: ask the DB for it).
\?MEMBER
The forum the topic is in (null: ask the DB for it).
\?MEMBER
The member we are checking for (null: current member).
boolean
The answer.cns_may_control_group(\GROUP $group_id, \MEMBER $member_id) : boolean
package | core_cns |
---|
\GROUP
The usergroup.
\MEMBER
The member.
boolean
The answer.cns_may_delete_poll_by(\AUTO_LINK $forum_id, \MEMBER $poll_owner, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum.
\MEMBER
The poll owner.
\?MEMBER
The member we are checking for (null: current member).
boolean
The answer.cns_may_delete_post_by(\AUTO_LINK $post_id, \?TIME $post_time= null
, \?MEMBER $resource_owner, \?AUTO_LINK $forum_id, \?MEMBER $member_id= null
, \?boolean $topic_is_closed= null
, \?string $reason= null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The post ID.
\?TIME
The time of the post (null: lookup).
\?MEMBER
The owner of the post (null: lookup).
\?AUTO_LINK
The forum the post is in (null: is a Private Topic, unless $post_time is NULL in which case we look this up too).
\?MEMBER
The member (null: current member).
\?boolean
Whether the topic the post is in is closed (null: don't consider this, maybe we're not considering any one specific case, unless $post_time is NULL in which case we look this up to).
\?string
The reason for the topic being closed is put here (null: no interesting reason).
boolean
The answer.cns_may_delete_topics_by(\AUTO_LINK $forum_id, \MEMBER $member_id, \MEMBER $resource_owner) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum the topic would be in.
\MEMBER
The member checking access for.
\MEMBER
The member that owns this resource
boolean
The answer.cns_may_edit_poll_by(\AUTO_LINK $forum_id, \MEMBER $poll_owner, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum.
\MEMBER
The poll owner.
\?MEMBER
The member we are checking for (null: current member).
boolean
The answer.cns_may_edit_post_by(\AUTO_LINK $post_id, \?TIME $post_time, \?MEMBER $resource_owner, \?AUTO_LINK $forum_id, \?MEMBER $member_id= null
, \?boolean $topic_is_closed= null
, \?string $reason= null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The post ID.
\?TIME
The time of the post (null: lookup).
\?MEMBER
The owner of the post (null: lookup).
\?AUTO_LINK
The forum the post is in (null: is a Private Topic, unless $post_time is NULL in which case we look this up too).
\?MEMBER
The member (null: current member).
\?boolean
Whether the topic the post is in is closed (null: don't consider this, maybe we're not considering any one specific case, unless $post_time is NULL in which case we look this up to).
\?string
The reason for the topic being closed is put here (null: no interesting reason).
boolean
The answer.cns_may_edit_topics_by(\AUTO_LINK $forum_id, \MEMBER $member_id, \MEMBER $resource_owner) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum the topic would be in.
\MEMBER
The member checking access for.
\MEMBER
The member that owns this resource
boolean
The answer.cns_may_make_private_topic(\?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\?MEMBER
The member (null: current member).
boolean
The answer.cns_may_moderate_forum(\AUTO_LINK $forum_id, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The ID of the forum.
\?MEMBER
The member ID (null: current member).
boolean
The answer.cns_may_perform_multi_moderation(\AUTO_LINK $forum_id, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum.
\?MEMBER
The member (null: current member).
boolean
Answer.cns_may_post_in_topic(\AUTO_LINK $forum_id, \AUTO_LINK $topic_id, \?MEMBER $last_member_id= null
, boolean $closed= false
, \?MEMBER $member_id= null
, boolean $will_be_private_post= false
) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum ID of the forum the topic is in.
\AUTO_LINK
The topic ID is in.
\?MEMBER
The last poster in the topic (null: do not check for double posting).
boolean
Whether this topic is closed.
\?MEMBER
The member (null: current member).
boolean
Whether this post will be private.
boolean
The answer.cns_may_post_topic(\AUTO_LINK $forum_id, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The forum the topic would be in.
\?MEMBER
The member (null: current member).
boolean
The answer.cns_may_report_post(\?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\?MEMBER
The member (null: current member).
boolean
The answer.cns_may_warn_members(\?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\?MEMBER
The member (null: current member).
boolean
Answer.cns_may_whisper(\MEMBER $target, \?MEMBER $member_id = null
) : boolean
package | core_cns |
---|
\MEMBER
Member to be PT'd
\?MEMBER
Member to PT. (null: current member)
boolean
Whether the PT may be createdcns_member_ask_join_group(\GROUP $group_id, \?MEMBER $member_id = null
)
package | core_cns |
---|
\GROUP
The usergroup to apply to.
\?MEMBER
The member applying (null: current member).
cns_member_choose_avatar(\URLPATH $avatar_url, \?MEMBER $member_id = null
)
package | core_cns |
---|
\URLPATH
The new avatar URL.
\?MEMBER
The member (null: the current member).
cns_member_choose_photo(\ID_TEXT $param_name, \ID_TEXT $upload_name, \?MEMBER $member_id = null
)
package | core_cns |
---|
\ID_TEXT
The identifier for the name of the posted URL field.
\ID_TEXT
The identifier for the name of the posted upload.
\?MEMBER
The member (null: the current member).
cns_member_choose_photo_concrete(\URLPATH $url, \URLPATH $thumb_url, \?MEMBER $member_id = null
)
package | core_cns |
---|
\URLPATH
URL to photo.
\URLPATH
URL to thumbnail photo.
\?MEMBER
The member (null: the current member).
cns_member_choose_signature(\LONG_TEXT $new_signature, \?MEMBER $member_id = null
)
package | core_cns |
---|
\LONG_TEXT
The new signature.
\?MEMBER
The member (null: the current member).
cns_member_choose_title(\SHORT_TEXT $new_title, \?MEMBER $member_id = null
)
package | core_cns |
---|
\SHORT_TEXT
The new title.
\?MEMBER
The member (null: the current member).
cns_member_external_linker(\SHORT_TEXT $username, \SHORT_TEXT $password, \ID_TEXT $type, boolean $email_check= true
, string $email_address= ''
, \?integer $dob_day= null
, \?integer $dob_month= null
, \?integer $dob_year= null
, \?ID_TEXT $timezone= null
, \?ID_TEXT $language= null
, \?URLPATH $avatar_url= null
, \URLPATH $photo_url= ''
, \URLPATH $photo_thumb_url= ''
) : \MEMBER
package | core_cns |
---|
\SHORT_TEXT
The username for the member profile.
\SHORT_TEXT
The password for the member profile.
\ID_TEXT
The type of member profile we are finishing off.
boolean
Whether to check for duplicated email addresses.
string
Auto-detected e-mail address (blank: none)
\?integer
Auto-detected DOB day (null: unknown)
\?integer
Auto-detected DOB month (null: unknown)
\?integer
Auto-detected DOB year (null: unknown)
\?ID_TEXT
Auto-detected Timezone (null: unknown)
\?ID_TEXT
Auto-detected Language (null: unknown)
\?URLPATH
The URL to the member's avatar (blank: none) (null: choose one automatically).
\URLPATH
The URL to the member's photo (blank: none).
\URLPATH
The URL to the member's photo thumbnail (blank: none).
\MEMBER
The member ID for the finished off profile.cns_member_external_linker_ask(\SHORT_TEXT $username, \ID_TEXT $type, string $email_address= ''
, \?integer $dob_day= null
, \?integer $dob_month= null
, \?integer $dob_year= null
, \?ID_TEXT $timezone= null
, \?ID_TEXT $language= null
) : \Tempcode
package | core_cns |
---|
\SHORT_TEXT
The username for the member profile.
\ID_TEXT
The type of member profile we are finishing off.
string
Auto-detected e-mail address (blank: none)
\?integer
Auto-detected DOB day (null: unknown)
\?integer
Auto-detected DOB month (null: unknown)
\?integer
Auto-detected DOB year (null: unknown)
\?ID_TEXT
Auto-detected Timezone (null: unknown)
\?ID_TEXT
Auto-detected Language (null: unknown)
\Tempcode
The form.cns_member_handle_promotion(\?MEMBER $member_id = null
)
cns_member_leave_group(\GROUP $group_id, \?MEMBER $member_id = null
)
package | core_cns |
---|
\GROUP
The usergroup to remove from.
\?MEMBER
The member leaving (null: current member).
cns_member_validate_into_group(\GROUP $group_id, \MEMBER $prospective_member_id, boolean $decline= false
, string $reason= ''
)
package | core_cns |
---|
\GROUP
The usergroup.
\MEMBER
The prospective member.
boolean
Whether the member is being declined membership.
string
The reason given for declining.
cns_mod_log_it(\ID_TEXT $the_type, \SHORT_TEXT $param_a= ''
, \SHORT_TEXT $param_b= ''
, \LONG_TEXT $reason= ''
, \?MEMBER $by= null
, \?TIME $date_and_time= null
)
package | core_cns |
---|
\ID_TEXT
The type of moderation.
\SHORT_TEXT
First detailing parameter.
\SHORT_TEXT
Second detailing parameter.
\LONG_TEXT
The reason for the moderation (may be blank).
\?MEMBER
The member performing the moderation (null: current member).
\?TIME
The time of the moderation (null: just now).
cns_move_posts(\AUTO_LINK $from_topic_id, \?AUTO_LINK $to_topic_id, array $posts, \LONG_TEXT $reason, \?AUTO_LINK $to_forum_id= null
, boolean $delete_if_empty= false
, \?SHORT_TEXT $title= null
) : boolean
package | core_cns |
---|
\AUTO_LINK
The ID of the source topic.
\?AUTO_LINK
The ID of the destination topic (null: move to new topic in $forum_id).
array
A list of post IDs to move.
\LONG_TEXT
The reason for this action.
\?AUTO_LINK
The forum the destination topic is in (null: find from DB).
boolean
Whether to delete the topic if all posts in it have been moved.
\?SHORT_TEXT
The title for the new topic (null: work out / irrelevant).
boolean
Whether the topic was deleted.cns_move_topics(\AUTO_LINK $from, \AUTO_LINK $to, \?array $topics= null
, boolean $check_perms= true
)
package | core_cns |
---|
\AUTO_LINK
The forum the topics are currently in.
\AUTO_LINK
The forum the topics are being moved to.
\?array
A list of the topic IDs to move (null: move all topics from source forum).
boolean
Whether to check permissions.
cns_organise_into_tree(array $all_forums, \AUTO_LINK $forum_id) : array
package | core_cns |
---|
array
The list of all forum rows (be aware that this will get modified for performance reasons).
\AUTO_LINK
The forum row that we are taking as the root of our current recursion.
array
The child list of $forum_id.cns_perform_multi_moderation(\AUTO_LINK $id, \AUTO_LINK $topic_id, \LONG_TEXT $reason, \LONG_TEXT $post_text= ''
, \BINARY $is_emphasised= 1
, \BINARY $skip_sig= 0
)
package | core_cns |
---|
\AUTO_LINK
The ID of the multi moderation we are performing.
\AUTO_LINK
The ID of the topic we are performing the multi moderation on.
\LONG_TEXT
The reason for performing the multi moderation (may be blank).
\LONG_TEXT
The post text for a post to be added to the topic (blank: do not add a post).
\BINARY
Whether the post is marked emphasised.
\BINARY
Whether to skip showing the posters signature in the post.
cns_ping_forum_read_all(\AUTO_LINK $forum_id)
cns_ping_forum_unread_all(\AUTO_LINK $forum_id)
cns_ping_topic_read(\AUTO_LINK $topic_id, \?MEMBER $member_id = null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the topic to mark as read.
\?MEMBER
The member to do this for (null: current member).
cns_poll_get_results(\AUTO_LINK $poll_id, boolean $request_results = true
) : array
package | core_cns |
---|
\AUTO_LINK
The poll.
boolean
Whether we must record that the current member is requesting the results, blocking future voting for them.
array
The map of results.cns_read_in_custom_fields(array $custom_fields, \?MEMBER $member_id = null
) : array
package | core_cns |
---|
array
The CPF field rows that we'll be reading in the member's values for.
\?MEMBER
Member involved (null: new member)
array
The CPF data.cns_read_in_member_profile(\MEMBER $member_id, boolean $lite = true
) : array
package | core_cns |
---|
\MEMBER
The member to get details of.
boolean
Whether to get a 'lite' version (contains less detail, therefore less costly).
array
A map of details.cns_send_topic_notification(\URLPATH $url, \AUTO_LINK $topic_id, \?AUTO_LINK $forum_id, \MEMBER $sender_member_id, boolean $is_starter, \LONG_TEXT $post, \SHORT_TEXT $topic_title, \?MEMBER $_limit_to= null
, boolean $is_pt= false
, \?ID_TEXT $no_notify_for__notification_code= null
, \?SHORT_TEXT $no_notify_for__code_category= null
)
package | core_cns |
---|
\URLPATH
The URL to view the new post.
\AUTO_LINK
The ID of the topic that got posted in.
\?AUTO_LINK
The forum that the topic is in (null: find out from the DB).
\MEMBER
The member that made the post triggering this tracking notification.
boolean
Whether the post started a new topic.
\LONG_TEXT
The post, in Comcode format.
\SHORT_TEXT
The topic title (blank: look it up from the $topic_id). If non-blank we must use it as it is implying the database might not have the correct value yet.
\?MEMBER
Only send the notification to this member (null: no such limit).
boolean
Whether this is for a Private Topic.
\?ID_TEXT
DO NOT send notifications to: The notification code (null: no restriction)
\?SHORT_TEXT
DO NOT send notifications to: The category within the notification code (null: none / no restriction)
cns_set_context_forum(\AUTO_LINK $forum_id)
cns_set_custom_field(\MEMBER $member_id, \AUTO_LINK $field, mixed $value, \?ID_TEXT $type= null
, boolean $defer= false
) : \?array
package | core_cns |
---|
\MEMBER
The member.
\AUTO_LINK
The field being set.
mixed
The value of the field. For a trans-type field, this can be either a lang-ID to be copied (from forum DB), or an actual string.
\?ID_TEXT
The field type (null: look it up).
boolean
Whether to defer the change, by returning a result change rather than doing it right away.
\?array
Mapping change (null: none / can't defer).cns_unban_member(\AUTO_LINK $member_id)
cns_validate_post(\AUTO_LINK $post_id, \?AUTO_LINK $topic_id= null
, \?AUTO_LINK $forum_id= null
, \?MEMBER $poster= null
, \?LONG_TEXT $post= null
) : \AUTO_LINK
package | core_cns |
---|
\AUTO_LINK
The ID of the post.
\?AUTO_LINK
The ID of the topic that contains the post (null: find out from the DB).
\?AUTO_LINK
The forum that the topic containing the post is in (null: find out from the DB).
\?MEMBER
The member that made the post being validated (null: find out from the DB).
\?LONG_TEXT
The post, in Comcode format (null: It'll have to be looked-up).
\AUTO_LINK
The ID of the topic (whilst this could be known without calling this function, as we've gone to effort and grabbed it from the DB, it might turn out useful for something).cns_vote_in_poll(\AUTO_LINK $poll_id, array $votes, \?MEMBER $member_id= null
, \?array $topic_info= null
)
package | core_cns |
---|
\AUTO_LINK
The ID of the poll we're voting in.
array
A list of poll answers that are being voted for.
\?MEMBER
The member that's voting (null: current member).
\?array
The row of the topic the poll is for (null: get it from the DB).
create_selection_list_forum_tree(\?MEMBER $member_id= null
, \?AUTO_LINK $base_forum= null
, \?array $selected_forum= null
, boolean $use_compound_list= false
, \?integer $levels= null
, \?TIME $updated_since= null
) : \Tempcode
package | core_cns |
---|
\?MEMBER
The member that the view privileges are done for (null: current member).
\?AUTO_LINK
The forum we are starting from (null: capture the whole tree).
\?array
The forum(s) to select by default (null: no preference). Only applies if !$topics_too. An array of AUTO_LINK's (for IDs) or strings (for names).
boolean
Whether to generate a compound list (a list of all the ancesters, for each point in the forum tree) as well as the tree.
\?integer
The number of recursive levels to search (null: all)
\?TIME
Time from which content must be updated (null: no limit).
\Tempcode
Forum selection list.create_selection_list_timezone_list(\?string $timezone = null
) : \Tempcode
package | core_cns |
---|
\?string
Current timezone to select (null: server default)
\Tempcode
List of timezonesfind_cpf_field_id(\SHORT_TEXT $title) : \?AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The title.
\?AUTO_LINK
The ID (null: could not find).find_usergroup_id(\SHORT_TEXT $title) : \?AUTO_LINK
package | core_cns |
---|
\SHORT_TEXT
The title.
\?AUTO_LINK
The ID (null: could not find).generate_notifications(\MEMBER $member_id) : array
package | core_cns |
---|
\MEMBER
Member to look up for.
array
A pair: Number of notifications, Rendered notifications.get_cpf_storage_for(\ID_TEXT $type) : array
package | core_cns |
---|
\ID_TEXT
The field type.
array
A pair: the DB field type, whether to index.get_first_default_group() : \GROUP
get_forum_access_sql(\ID_TEXT $field) : string
get_group_colour(\GROUP $gid) : string
get_member_title(\MEMBER $member_id) : string
get_username_from_human_name(\SHORT_TEXT $username) : \SHORT_TEXT
package | core_cns |
---|
\SHORT_TEXT
The desired human name for the member profile.
\SHORT_TEXT
A unique username.handle_topic_ticket_reply(\AUTO_LINK $forum_id, \AUTO_LINK $topic_id, \SHORT_TEXT $topic_title, \LONG_TEXT $post)
package | core_cns |
---|
\AUTO_LINK
Forum ID
\AUTO_LINK
Topic ID
\SHORT_TEXT
Topic title
\LONG_TEXT
Post made
import_custom_emoticons(boolean $remove_old_core = false
)
Not used by default, but useful when coding projects to do hot-changes to a separate live site.
package | core_cns |
---|
boolean
Make some of the old core emoticons non-core (level 1).
install_cns(\?float $upgrade_from = null
)
member_field_is_required(\?MEMBER $member_id, string $field_class, \?string $current_value= null
, \?MEMBER $editing_member= null
) : boolean
package | core_cns |
---|---|
set | email_address dob required_cpfs |
\?MEMBER
The member being edited (null: new member).
string
Special code representing what kind of field it is.
\?string
The value the field has now (null: lookup from member record; cannot do this for a CPF).
\?MEMBER
The member doing the adding/editing operation (null: current member).
boolean
Whether the field must be filled in.member_get_csv_headings() : array
package | core_cns |
---|
array
A map of heading information (human name to field name/encoding details)member_password_expired(\MEMBER $member_id) : boolean
member_password_too_old(\MEMBER $member_id) : boolean
not_like_spacer_posts(\ID_TEXT $field) : string
render_forum_box(array $row, \ID_TEXT $zone= '_SEARCH'
, boolean $give_context= true
, boolean $include_breadcrumbs= true
, \?AUTO_LINK $root= null
, \ID_TEXT $guid= ''
) : \Tempcode
package | core_cns |
---|
array
Forum row
\ID_TEXT
Zone to link through to
boolean
Whether to include context (i.e. say WHAT this is, not just show the actual content)
boolean
Whether to include breadcrumbs (if there are any)
\?AUTO_LINK
Virtual root to use (null: none)
\ID_TEXT
Overridden GUID to send to templates (blank: none)
\Tempcode
The forum boxrender_group_box(array $row, \ID_TEXT $zone= '_SEARCH'
, boolean $give_context= true
, \ID_TEXT $guid= ''
) : \Tempcode
package | core_cns |
---|
array
Usergroup row
\ID_TEXT
Zone to link through to
boolean
Whether to include context (i.e. say WHAT this is, not just show the actual content)
\ID_TEXT
Overridden GUID to send to templates (blank: none)
\Tempcode
The usergroup boxrender_member_box(mixed $poster_details, boolean $preview= false
, \?array $hooks= null
, \?array $hook_objects= null
, boolean $show_avatar= true
, \?array $extra_fields= null
, boolean $give_context= true
, \ID_TEXT $guid= ''
) : \Tempcode
package | core_cns |
---|
mixed
Either a member ID or an array containing: ip_address, poster_num_warnings, poster, poster_posts, poster_points, poster_join_date_string, primary_group_name.
boolean
Whether only to show 'preview' details
\?array
An array of hooks. (null: lookup)
\?array
An array of hook objects that allow us to collect additional mouse-over member information. (null: lookup)
boolean
Whether to show the avatar
\?array
Map of extra fields to show (null: none)
boolean
Whether to include context (i.e. say WHAT this is, not just show the actual content)
\ID_TEXT
Overridden GUID to send to templates (blank: none)
\Tempcode
The member boxrender_post_box(array $row, boolean $use_post_title= false
, boolean $give_context= true
, boolean $include_breadcrumbs= true
, \?AUTO_LINK $root= null
, \ID_TEXT $guid= ''
) : \Tempcode
package | core_cns |
---|
array
The post row.
boolean
Whether to include context (i.e. say WHAT this is, not just show the actual content). Also uses the post title, as opposed to the post's topic's title.
boolean
Whether to embed a link to the topic.
boolean
Whether to include breadcrumbs (if there are any)
\?AUTO_LINK
Virtual root to use (null: none)
\ID_TEXT
Overridden GUID to send to templates (blank: none)
\Tempcode
The isolated post.render_profile_tabset(\Tempcode $title, \MEMBER $member_id_of, \?MEMBER $member_id_viewing= null
, \?ID_TEXT $username= null
) : \Tempcode
package | core_cns |
---|
\Tempcode
Screen title
\MEMBER
The ID of the member who is being viewed
\?MEMBER
The ID of the member who is doing the viewing (null: current member)
\?ID_TEXT
The username of the member who is being viewed (null: work out from member_id_of)
\Tempcode
The rendered profilerender_topic_box(array $row, \ID_TEXT $zone= '_SEARCH'
, boolean $give_context= true
, boolean $include_breadcrumbs= true
, \?AUTO_LINK $root= null
, \ID_TEXT $guid= ''
) : \Tempcode
package | core_cns |
---|
array
Topic row
\ID_TEXT
Zone to link through to
boolean
Whether to include context (i.e. say WHAT this is, not just show the actual content)
boolean
Whether to include breadcrumbs (if there are any)
\?AUTO_LINK
Virtual root to use (null: none)
\ID_TEXT
Overridden GUID to send to templates (blank: none)
\Tempcode
The topic boxsend_pt_notification(\AUTO_LINK $post_id, \SHORT_TEXT $subject, \AUTO_LINK $topic_id, \MEMBER $to_id, \?MEMBER $from_id= null
, \?string $post_comcode= null
, boolean $mark_unread= false
)
package | core_cns |
---|
\AUTO_LINK
The ID of the post made
\SHORT_TEXT
PT title
\AUTO_LINK
ID of the topic
\MEMBER
Member getting the PT
\?MEMBER
Member posting the PT (null: current member)
\?string
Post text (null: unknown, lookup from $post_id)
boolean
Whether to also mark the topic as unread
update_member_username_caching(\MEMBER $member_id, \ID_TEXT $username)
package | core_cns |
---|
\MEMBER
The member ID.
\ID_TEXT
The new username that is being set for them.