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

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

## Functions

| identity_check_service_class ($account_id)
| validate_channelname ($name)
| create_sys_channel ()
| get_sys_channel ()
| is_sys_channel ($channel_id)
| channel_total ()
| create_identity ($arr)
| set_default_login_identity ($account_id, $channel_id, $force=true)
| identity_basic_export ($channel_id, $items=false)
| profile_load (&$a, $nickname, $profile= '')
| profile_create_sidebar (&$a, $connect=true)
| profile_sidebar ($profile, $block=0, $show_connect=true)
| get_birthdays ()
| get_events ()
| advanced_profile (&$a)
| get_my_url ()
| get_my_address ()
| zid_init (&$a)
| zid ($s, $address= '')
| get_theme_uid ()
| get_default_profile_photo ($size=175)
| is_foreigner ($s)
| is_member ($s)
| get_online_status ($nick)
| remote_online_status ($webbie)
| get_channel_by_nick ($nick)
| identity_selector ()
| is_public_profile ()
| get_profile_fields_basic ($filter=0)
| get_profile_fields_advanced ($filter=0)

## Function Documentation

advanced_profile | ( | & | $a | ) |

Referenced by profile_content().

channel_total | ( |  | ) |

() Return the total number of channels on this site. No filtering is performed except to check PAGE_REMOVED

Returns
  int on error returns boolean false

Referenced by zfinger_init().

create_identity | ( |  | $arr | ) |

create_identity($arr) Create a new channel Also creates the related xchan, hubloc, profile, and "self" abook records, and an empty "Friends" group/collection for the new channel

Parameters

  array | $arr | 'name' => full name of channel 'nickname' => "email/url-compliant" nickname 'account_id' => account_id to attach with this channel [other identity fields as desired]

Returns
  array 'success' => boolean true or false 'message' => optional error text if success is false 'channel' => if successful the created channel array

Referenced by create_sys_channel(), and new_channel_post().

create_sys_channel | ( |  | ) |

create_sys_channel() Create a system channel - which has no account attached

Referenced by check_config(), and what_next().

get_birthdays | ( |  | ) |

get_channel_by_nick | ( |  | $nick | ) |

Referenced by editblock_content(), importelm_post(), wall_attach_post(), and wall_upload_post().

get_default_profile_photo | ( |  | $size = `175` | ) |

get_default_profile_photo($size = 175) Retrieves the path of the default_profile_photo for this system with the specified size.

Parameters

  int | $size | one of (175, 80, 48)

Returns
  string

Referenced by app_render(), app_store(), app_update(), avatar_img(), import_profile_photo(), openid_content(), parse_app_description(), and photo_init().

get_events | ( |  | ) |

get_my_address | ( |  | ) |

Referenced by App\build_pagehead(), rmagic_init(), zid(), and zid_init().

get_my_url | ( |  | ) |

Referenced by nav(), and zid().

get_online_status | ( |  | $nick | ) |

Referenced by online_init(), and profile_load().

get_profile_fields_advanced | ( |  | $filter = `0` | ) |

Referenced by profile_load(), profiles_content(), and profiles_post().

get_profile_fields_basic | ( |  | $filter = `0` | ) |

Referenced by get_profile_fields_advanced(), profile_load(), profiles_content(), and profiles_post().

get_sys_channel | ( |  | ) |

Referenced by check_config(), create_sys_channel(), display_content(), expire_run(), externals_run(), get_theme_uid(), home_content(), like_content(), network_content(), notifier_run(), search_content(), subthread_content(), viewsrc_content(), zot_import(), and zotfeed_init().

get_theme_uid | ( |  | ) |

identity_basic_export | ( |  | $channel_id,
|  |  | $items = `false`
| ) |  |

identity_basic_export($channel_id,$items = false) Create an array representing the important channel information which would be necessary to create a nomadic identity clone. This includes most channel resources and connection information with the exception of content.

Parameters

  int | $channel_id | Channel_id to export
  boolean | $items | Include channel posts (wall items), default false

Returns
  array See function for details

Referenced by api_export_basic(), and uexport_init().

identity_check_service_class | ( |  | $account_id | ) |

identity_check_service_class($account_id) Called when creating a new channel. Checks the account's service class and number of current channels to determine whether creating a new channel is within the current service class constraints.

Parameters

  int | $account_id | Account_id used for this request

Returns
  array 'success' => boolean true if creating a new channel is allowed for this account 'message' => if success is false, optional error text

Referenced by create_identity().

identity_selector | ( |  | ) |

is_foreigner | ( |  | $s | ) |

is_foreigner($s) Test whether a given identity is NOT a member of the Red Matrix

Parameters

  string | $s,; | xchan_hash of the identity in question

Returns
  boolean true or false

Referenced by is_member(), and theme_attachments().

is_member | ( |  | $s | ) |

is_member($s) Test whether a given identity is a member of the Red Matrix

Parameters

  string | $s,; | xchan_hash of the identity in question

Returns
  boolean true or false

is_public_profile | ( |  | ) |

Referenced by app_render(), and parse_app_description().

is_sys_channel | ( |  | $channel_id | ) |

Referenced by zot_feed().

profile_create_sidebar | ( | & | $a,
|  |  | $connect = `true`
| ) |  |

profile_load | ( | & | $a,
|  |  | $nickname,
|  |  | $profile = `''`
| ) |  |

: profile_load(&$a, $nickname, $profile) Generate

Parameters

  App | $a |
  string | $nickname |
  string | $profile | Summary: Loads a profile into the App structure. The function requires a writeable copy of the main App structure, and the nickname of a valid channel.

Permissions of the current observer are checked. If a restricted profile is available to the current observer, that will be loaded instead of the channel default profile.

The channel owner can set $profile to a valid profile_guid to preview that profile.

The channel default theme is also selected for use, unless over-riden elsewhere.

load/reload current theme info

Referenced by achievements_content(), block_init(), blocks_content(), channel_init(), chat_init(), cloud_init(), common_init(), connect_init(), hcard_init(), layouts_content(), page_init(), photos_init(), profile_init(), profile_photo_init(), profiles_init(), profperm_init(), viewconnections_init(), and webpages_content().

profile_sidebar | ( |  | $profile,
|  |  | $block = `0`,
|  |  | $show_connect = `true`
| ) |  |

Function: profile_sidebar

Formats a profile for display in the sidebar. It is very difficult to templatise the HTML completely because of all the conditional logic.

: array $profile

Returns HTML string stuitable for sidebar inclusion Exceptions: Returns empty string if passed $profile is wrong type or not populated

Referenced by profile_create_sidebar(), widget_fullprofile(), and widget_profile().

remote_online_status | ( |  | $webbie | ) |

Referenced by dirprofile_init().

set_default_login_identity | ( |  | $account_id,
|  |  | $channel_id,
|  |  | $force = `true`
| ) |  |

set_default_login_identity($account_id, $channel_id, $force = true) Set default channel to be used on login

Parameters

  int | $account_id | login account
  int | $channel_id | channel id to set as default for this account
  | boolean | force if true, set this default unconditionally if $force is false only do this if there is no existing default

Returns
  nil

Referenced by create_identity(), and import_post().

validate_channelname | ( |  | $name | ) |

validate_channelname($name) Determine if the channel name is allowed when creating a new channel. This action is pluggable.

Parameters

  string | $name |

Returns
  nil return if name is valid, or string describing the error state.

We're currently only checking for an empty name or one that exceeds our storage limit (255 chars). 255 chars is probably going to create a mess on some pages. Plugins can set additional policies such as full name requirements, character sets, multi-byte length, etc.

Referenced by create_identity(), and settings_post().

zid | ( |  | $s,
|  |  | $address = `''`
| ) |  |

zid($s,$address = '') Adds a zid parameter to a url

Parameters

  string | $s | The url to accept the zid
  boolean | $address | $address to use instead of session environment

Returns
  string

'zid' string url - url to accept zid string zid - urlencoded zid string result - the return string we calculated, change it if you want to return something else

Referenced by advanced_profile(), app_render(), chanview_content(), chatsvc_content(), conversation(), dirprofile_init(), format_categories(), format_hashtags(), format_mentions(), get_plink(), get_things(), localize_item(), match_content(), menu_render(), new_contact(), oembed_fetch_url(), parse_app_description(), tryzrlaudio(), tryzrlvideo(), widget_bookmarkedchats(), widget_photo(), and widget_suggestedchats().

zid_init | ( | & | $a | ) |

zid_init(&$a) If somebody arrives at our site using a zid, add their xchan to our DB if we don't have it already. And if they aren't already authenticated here, attempt reverse magic auth.

'zid_init' string 'zid' - their zid string 'url' - the destination url