# The Red Matrix: include/permissions.php File Reference

All Classes Namespaces Files Functions Variables Pages
permissions.php File Reference

## Functions

| get_perms ()
| get_all_perms ($uid, $observer_xchan, $internal_use=true)
| perm_is_allowed ($uid, $observer_xchan, $permission)
| check_list_permissions ($uid, $arr, $perm)
| site_default_perms ()
| get_role_perms ($role)
| role_selector ($current)

## Function Documentation

check_list_permissions | ( |  | $uid,
|  |  | $arr,
|  |  | $perm
| ) |  |

Referenced by collect_recipients().

get_all_perms | ( |  | $uid,
|  |  | $observer_xchan,
|  |  | $internal_use = `true`
| ) |  |

get_all_perms($uid,$observer_xchan)

Parameters

  $uid | : The channel_id associated with the resource owner
  $observer_xchan,: | The xchan_hash representing the observer

Returns
  : array of all permissions, key is permission name, value is true or false

Referenced by achievements_content(), blocks_content(), change_channel(), channel_content(), connedit_content(), editlayout_content(), editwebpage_content(), filestorage_content(), layouts_content(), like_content(), page_content(), webpages_content(), zfinger_init(), and zot_refresh().

get_perms | ( |  | ) |

Referenced by connedit_content(), create_identity(), get_all_perms(), mail_post(), new_contact(), perm_is_allowed(), site_default_perms(), and zot_refresh().

get_role_perms | ( |  | $role | ) |

get_role_perms($role)

Parameters

  string

  $role

  Given a string for the channel role ('social','forum', etc) return an array of all permission fields pre-filled for this role. This includes the channel permission scope indicators (anything beginning with 'channel_') as well as perms_auto: true or false to create auto-permissions for this channel perms_follow: The permissions to apply when initiating a connection request to another channel perms_accept: The permissions to apply when accepting a connection request from another channel (not automatic) default_collection: true or false to make the default ACL include the channel's default collection directory_publish: true or false to publish this channel in the directory Any attributes may be extended (new roles defined) and modified (specific permissions altered) by plugins

Referenced by connedit_content(), create_identity(), and new_contact().

perm_is_allowed | ( |  | $uid,
|  |  | $observer_xchan,
|  |  | $permission
| ) |  |

Referenced by Conversation\add_thread(), advanced_profile(), api_statuses_home_timeline(), api_statuses_repeat(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), block_content(), chat_content(), chatsvc_init(), check_list_permissions(), common_content(), common_friends_visitor_widget(), contact_block(), RedDirectory\createDirectory(), RedDirectory\createFile(), RedFile\delete(), diaspora_asphoto(), diaspora_comment(), diaspora_conversation(), diaspora_like(), diaspora_photo(), diaspora_post(), diaspora_reshare(), display_content(), editblock_content(), get_feed_for(), RedDirectory\getChild(), RedDirectory\getChildren(), item_post(), like_content(), local_dir_update(), p_init(), photo_init(), photo_upload(), photos_album_widget(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), poco_init(), post_activity_item(), post_post(), process_delivery(), process_mail_delivery(), profile_content(), profile_load(), profile_sidebar(), RedChannelList(), search_content(), Conversation\set_mode(), RedBrowser\set_writeable(), RedDirectory\setName(), RedFile\setName(), subthread_content(), tag_deliver(), tgroup_check(), update_birthdays(), viewconnections_content(), widget_archive(), widget_categories(), widget_item(), widget_photo_albums(), widget_tagcloud_wall(), z_readdir(), and zot_feed().

role_selector | ( |  | $current | ) |

Referenced by new_channel_content().

site_default_perms | ( |  | ) |

Referenced by create_identity().