From 075b7fa9c82d5b0663528d2cf5e6f28dd1c5f4ab Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 22 Feb 2014 13:33:18 -0800 Subject: [PATCH 001/130] This should resolve the dav authentication loop (correctly) --- include/auth.php | 23 ++++++++++++++++------- include/reddav.php | 2 ++ include/security.php | 7 +++++-- mod/ping.php | 2 +- 4 files changed, 24 insertions(+), 10 deletions(-) diff --git a/include/auth.php b/include/auth.php index a3b028c73..c21705c99 100644 --- a/include/auth.php +++ b/include/auth.php @@ -58,15 +58,18 @@ function account_verify_password($email,$pass) { } -// login/logout - - - - +/** + * Inline - not a function + * look for auth parameters or re-validate an existing session + * also handles logout + */ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-params'))) || ($_POST['auth-params'] !== 'login'))) { + + // process a logout request + if(((x($_POST,'auth-params')) && ($_POST['auth-params'] === 'logout')) || ($a->module === 'logout')) { // process logout request @@ -77,6 +80,8 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p goaway(z_root()); } + // re-validate a visitor, optionally invoke "su" if permitted to do so + if(x($_SESSION,'visitor_id') && (! x($_SESSION,'uid'))) { // if our authenticated guest is allowed to take control of the admin channel, make it so. $admins = get_config('system','remote_admin'); @@ -106,9 +111,11 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p $a->set_groups(init_groups_visitor($_SESSION['visitor_id'])); } + // already logged in user returning + if(x($_SESSION,'uid') || x($_SESSION,'account_id')) { - // already logged in user returning + // first check if we're enforcing that sessions can't change IP address $check = get_config('system','paranoia'); // extra paranoia - if the IP changed, log them out @@ -150,6 +157,8 @@ else { nuke_session(); } + // handle a fresh login request + if((x($_POST,'password')) && strlen($_POST['password'])) $encrypted = hash('whirlpool',trim($_POST['password'])); @@ -188,7 +197,7 @@ else { notice( t('Failed authentication') . EOL); } - logger('authenticate: ' . print_r(get_app()->account,true)); + logger('authenticate: ' . print_r(get_app()->account,true), LOGGER_DEBUG); } diff --git a/include/reddav.php b/include/reddav.php index 6182aeacd..2a26ac42a 100644 --- a/include/reddav.php +++ b/include/reddav.php @@ -792,6 +792,7 @@ class RedBasicAuth extends Sabre\DAV\Auth\Backend\AbstractBasic { $this->channel_id = $r[0]['channel_id']; $this->channel_hash = $this->observer = $r[0]['channel_hash']; $_SESSION['uid'] = $r[0]['channel_id']; + $_SESSION['account_id'] = $r[0]['channel_account_id']; $_SESSION['authenticated'] = true; return true; } @@ -813,6 +814,7 @@ class RedBasicAuth extends Sabre\DAV\Auth\Backend\AbstractBasic { $this->channel_id = $r[0]['channel_id']; $this->channel_hash = $this->observer = $r[0]['channel_hash']; $_SESSION['uid'] = $r[0]['channel_id']; + $_SESSION['account_id'] = $r[0]['channel_account_id']; $_SESSION['authenticated'] = true; return true; } diff --git a/include/security.php b/include/security.php index 68dd573f7..f52615357 100644 --- a/include/security.php +++ b/include/security.php @@ -32,9 +32,12 @@ function authenticate_success($user_record, $login_initial = false, $interactive } - if($login_initial) + if($login_initial) { + call_hooks('logged_in', $user_record); - + + // might want to log success here + } if($return || x($_SESSION,'workflow')) { unset($_SESSION['workflow']); diff --git a/mod/ping.php b/mod/ping.php index 390613d7a..b9d9a9c77 100644 --- a/mod/ping.php +++ b/mod/ping.php @@ -28,7 +28,7 @@ function ping_init(&$a) { header("content-type: application/json"); - $result['invalid'] = ((local_user()) && (intval($_GET['uid'])) && (intval($_GET['uid']) != local_user()) ? 1 : 0); + $result['invalid'] = ((intval($_GET['uid'])) && (intval($_GET['uid']) != local_user()) ? 1 : 0); if(x($_SESSION,'sysmsg')){ foreach ($_SESSION['sysmsg'] as $m){ From 5b4e3f46bca2def72fd2df2651eacdd853892a23 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 22 Feb 2014 14:58:12 -0800 Subject: [PATCH 002/130] minor stuff, some doco, auth cleanup, and make "unknown" more translateable by context. --- include/items.php | 2 +- include/zot.php | 4 ---- mod/openid.php | 1 + 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/include/items.php b/include/items.php index 1217616d7..d380a7939 100755 --- a/include/items.php +++ b/include/items.php @@ -753,7 +753,7 @@ function import_author_rss($x) { values ( '%s', '%s', '%s', '%s' )", dbesc($x['url']), dbesc($x['url']), - dbesc(($name) ? $name : t('Unknown')), + dbesc(($name) ? $name : t('(Unknown)')), dbesc('rss') ); if($r) { diff --git a/include/zot.php b/include/zot.php index 298abb178..d7d7eb419 100644 --- a/include/zot.php +++ b/include/zot.php @@ -1370,8 +1370,6 @@ function process_delivery($sender,$arr,$deliveries,$relay) { // remove_community_tag is a no-op if this isn't a community tag activity remove_community_tag($sender,$arr,$channel['channel_id']); - - $item_id = delete_imported_item($sender,$arr,$channel['channel_id']); $result[] = array($d['hash'],(($item_id) ? 'deleted' : 'delete_failed'),$channel['channel_name'] . ' <' . $channel['channel_address'] . '@' . get_app()->get_hostname() . '>'); @@ -1414,8 +1412,6 @@ function process_delivery($sender,$arr,$deliveries,$relay) { } } - - $r = q("select id, edited from item where mid = '%s' and uid = %d limit 1", dbesc($arr['mid']), intval($channel['channel_id']) diff --git a/mod/openid.php b/mod/openid.php index 1ab8749ee..b0d4008d4 100644 --- a/mod/openid.php +++ b/mod/openid.php @@ -42,6 +42,7 @@ function openid_content(&$a) { if(($record['account_flags'] == ACCOUNT_OK) || ($record['account_flags'] == ACCOUNT_UNVERIFIED)) { logger('mod_openid: openid success for ' . $x[0]['channel_name']); $_SESSION['uid'] = $r[0]['channel_id']; + $_SESSION['account_id'] = $r[0]['channel_account_id']; $_SESSION['authenticated'] = true; authenticate_success($record,true,true,true,true); goaway(z_root()); From 2ccff45221905981c6942f1f3064d477113e959e Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 23 Feb 2014 18:40:43 -0800 Subject: [PATCH 003/130] In case a page has overloaded a module, see if we already have a layout defined. Otherwise, if a pdl file exists for this module, use it. --- boot.php | 5 ++++- version.inc | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/boot.php b/boot.php index fb029c44e..be6b5c84b 100755 --- a/boot.php +++ b/boot.php @@ -1804,7 +1804,10 @@ function construct_page(&$a) { require_once('include/comanche.php'); - if(($p = theme_include('mod_' . $a->module . '.pdl')) != '') + // in case a page has overloaded a module, see if we already have a layout defined + // otherwise, if a pdl file exists for this module, use it + + if((! count($a->layout)) && ($p = theme_include('mod_' . $a->module . '.pdl')) != '') comanche_parser($a,@file_get_contents($p)); $comanche = ((count($a->layout)) ? true : false); diff --git a/version.inc b/version.inc index ad4b11889..490208526 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2014-02-22.596 +2014-02-23.597 From 8284901f9eda97457da1d4d5a74a0e24ee9249b3 Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Mon, 24 Feb 2014 05:11:56 +0000 Subject: [PATCH 004/130] Make bbcode the default doco ready for the next commit --- mod/help.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mod/help.php b/mod/help.php index a4ccd1cfe..bbfeb9a6c 100644 --- a/mod/help.php +++ b/mod/help.php @@ -60,7 +60,8 @@ function help_content(&$a) { $a->page['title'] = t('Help'); } if(! $text) { - $text = load_doc_file('doc/Home.md'); + $doctype = 'bbcode'; + $text = load_doc_file('doc/main.bb'); $a->page['title'] = t('Help'); } From 29f6975715b20597c6e19945ca5095f1e60dad42 Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Mon, 24 Feb 2014 05:13:28 +0000 Subject: [PATCH 005/130] Import doco from docs@friendicared.net --- doc/about.bb | 24 ++ doc/account_basics.bb | 33 +++ doc/api_functions.bb | 130 +++++++++++ doc/campaign.bb | 234 +++++++++++++++++++ doc/channels.bb | 27 +++ doc/checking_account_quota_usage.bb | 26 +++ doc/cloud.bb | 25 ++ doc/cloud_desktop_clients.bb | 16 ++ doc/comanche.bb | 146 ++++++++++++ doc/connecting_to_channels.bb | 17 ++ doc/dav_dolphin.bb | 9 + doc/dav_konqueror.bb | 11 + doc/dav_mount.bb | 63 +++++ doc/dav_nautilus.bb | 9 + doc/dav_nemo.bb | 19 ++ doc/dav_windows.bb | 11 + doc/debian_install.bb | 29 +++ doc/developer_function_primer.bb | 45 ++++ doc/developers.bb | 52 +++++ doc/external-resource-links.bb | 22 ++ doc/extra_features.bb | 103 ++++++++ doc/features.bb | 111 +++++++++ doc/git_for_non_developers.bb | 46 ++++ doc/install.bb | 103 ++++++++ doc/intro_for_developers.bb | 99 ++++++++ doc/main.bb | 59 +++++ doc/permissions.bb | 97 ++++++++ doc/plugins.bb | 257 ++++++++++++++++++++ doc/problems-following-an-update.bb | 37 +++ doc/profiles.bb | 33 +++ doc/red2pi.bb | 349 ++++++++++++++++++++++++++++ doc/remove_account.bb | 17 ++ doc/schema_development.bb | 74 ++++++ doc/tags_and_mentions.bb | 23 ++ doc/to_do_code.bb | 51 ++++ doc/to_do_doco.bb | 21 ++ doc/troubleshooting.bb | 5 + doc/webpages.bb | 13 ++ doc/what_is_zot.bb | 61 +++++ 39 files changed, 2507 insertions(+) create mode 100644 doc/about.bb create mode 100644 doc/account_basics.bb create mode 100644 doc/api_functions.bb create mode 100644 doc/campaign.bb create mode 100644 doc/channels.bb create mode 100644 doc/checking_account_quota_usage.bb create mode 100644 doc/cloud.bb create mode 100644 doc/cloud_desktop_clients.bb create mode 100644 doc/comanche.bb create mode 100644 doc/connecting_to_channels.bb create mode 100644 doc/dav_dolphin.bb create mode 100644 doc/dav_konqueror.bb create mode 100644 doc/dav_mount.bb create mode 100644 doc/dav_nautilus.bb create mode 100644 doc/dav_nemo.bb create mode 100644 doc/dav_windows.bb create mode 100644 doc/debian_install.bb create mode 100644 doc/developer_function_primer.bb create mode 100644 doc/developers.bb create mode 100644 doc/external-resource-links.bb create mode 100644 doc/extra_features.bb create mode 100644 doc/features.bb create mode 100644 doc/git_for_non_developers.bb create mode 100644 doc/install.bb create mode 100644 doc/intro_for_developers.bb create mode 100644 doc/main.bb create mode 100644 doc/permissions.bb create mode 100644 doc/plugins.bb create mode 100644 doc/problems-following-an-update.bb create mode 100644 doc/profiles.bb create mode 100644 doc/red2pi.bb create mode 100644 doc/remove_account.bb create mode 100644 doc/schema_development.bb create mode 100644 doc/tags_and_mentions.bb create mode 100644 doc/to_do_code.bb create mode 100644 doc/to_do_doco.bb create mode 100644 doc/troubleshooting.bb create mode 100644 doc/webpages.bb create mode 100644 doc/what_is_zot.bb diff --git a/doc/about.bb b/doc/about.bb new file mode 100644 index 000000000..90992b925 --- /dev/null +++ b/doc/about.bb @@ -0,0 +1,24 @@ +[b]About[/b] + +The Red Matrix is a decentralized communication network, which aims to provide communication that is censorship-resistant, privacy-respecting, and thus free from the oppressive claws of contemporary corporate communication giants. These giants function primarily as spy networks for paying clients of all sorts and types, in addition to monopolizing and centralizing the Internet; a feature that was not part of the original and revolutionary goals that produced the World Wide Web. + +The Red Matrix is free and open source. It is designed to scale from a $35 Raspberry Pi, to top of the line AMD and Intel Xeon-powered multi-core enterprise servers. It can be used to support communication between a few individuals, or scale to many thousands and more. + +Red aims to be skill and resource agnostic. It is easy to use by everyday computer users, as well as by systems administrators and developers. + +How you use it depends on how you want to use it. + +It is written in the PHP scripting language, thus making it trivial to install on any hosting platform in use today. This includes self-hosting at home, at hosting providers such as [url=http://mediatemple.com/]Media Temple[/url] and [url=http://www.dreamhost.com/]Dreamhost[/url], or on virtual and dedicated servers, offered by the likes of [url=https://www.linode.com]Linode[/url], [url=http://greenqloud.com]GreenQloud[/url] or [url=https://aws.amazon.com]Amazon AWS[/url]. + +In other words, the Red Matrix can run on any computing platform that comes with a web server, a MySQL-compatible database, and the PHP scripting language. + +Along the way, Red offers a number of unique goodies: + +[b][color= grey]Single-click user identification:[/color][/b] meaning you can access sites on the Red Matrix simply by clicking on links to remote sites. Authentication just happens automagically behind the scenes. Forget about remembering multiple user names with multiple passwords when accessing different sites online. + +[b][color= grey]Cloning:[/color][/b] of online identities. Your online presence no longer has to be tied to a single server, domain name or IP address. You can clone and import your identity to another server (or, a hub as servers are known in the Red Matrix). Now, should your primary hub go down, no worries, your contacts, posts, messages, and content will automagically continue to be available and accessible under your cloned identity. + +[b][color= grey]Privacy:[/color][/b] Red identities (Zot IDs) can be deleted, backed up/downloaded, and cloned. The user is in full control of their data. Should you decide to delete all your content and erase your Zot ID, all you have to do is click on a link and it's immediately deleted from the hub. No questions, no fuss. + +Return to the [url=[baseurl]/help/main]Main documentation page[/url] + diff --git a/doc/account_basics.bb b/doc/account_basics.bb new file mode 100644 index 000000000..902ff8bd0 --- /dev/null +++ b/doc/account_basics.bb @@ -0,0 +1,33 @@ +[b]Account Basics[/b] + +[b]Registration[/b] + +Not all Red Matrix sites allow open registration. If registration is allowed, you will see a "Register" link immediately below the login prompts on the site home page. Following this link will take you to the site Registration page. On some sites it may redirect you to another site which allow registrations. As all Red Matrix sites are linked, it does not matter where your account resides. + +[b]Your Email Address[/b] + +Please provide a valid email address. Your email address is never published. This address will be used to (optionally) send email notifications for incoming messages or items, and used to recover lost passwords. + +[b]Password[/b] + +Enter a password of your choice, and repeat it in the second box to ensure it was typed correctly. As the Red Matrix offers a decentralised identity, your account can log you in to many other websites. + +[b]Terms Of Service[/b] + +Click the link to read the site's terms of service. Once you've read them, tick the box in the register form to confirm. + +[b]Register[/b] + +Once you have provided the necessary details, click the 'Register' button. Some sites may require administrator approval before the registration is processed, and you will be alerted if this is the case. Please watch your email (including spam folders) for your registration approval. + +[b]Create a Channel[/b] + +Next, you will be presented with the "Add a channel" screen. Normally, your first channel will be one that represents you - so using your own name (or psuedonym) as the channel name is a good idea. The channel name should be thought of as a title, or brief description of your channel. The "choose a short nickname" box is similar to a "username" field. We will use whatever you enter here to create a channel address, which other people will use to connect to you, and you will use to log in to other sites. This looks like an email address, and takes the form nickname@siteyouregisteredat.xyz + +When your channel is created you will be taken straight to your settings page where you can define permissions, enable features, etc. All these things are covered in the appropriate section of the helpfiles. + +See Also + +[zrl=[baseurl]/help/permissions]Permissions[/zrl] +[zrl=[baseurl]/help/profiles]Profiles[/zrl] +[zrl=[baseurl]/help/remove_account]Remove Account[/zrl] \ No newline at end of file diff --git a/doc/api_functions.bb b/doc/api_functions.bb new file mode 100644 index 000000000..13460c1b9 --- /dev/null +++ b/doc/api_functions.bb @@ -0,0 +1,130 @@ +[b]Red Twitter API[/b] + +The "basic" Red web API is based on the Twitter API, as this provides instant compatibility with a huge number of third-party clients and applications without requiring any code changes on their part. It is also a super-set of the StatusNet version of the Twitter API, as this also has existing wide support. + +Red has a lot more capability that isn't exposed in the Twitter interfaces or where we are forced to "dumb-down" the API functions to work with the primitive Twitter/StatusNet communications and privacy model. So we plan to extend the Twitter API in ways that will allow Red-specific clients to make full use of Red features without being crippled. + +A dedicated Red API is also being developed to work with native data structures and permissions and which do not require translating to different privacy and permission models and storage formats. This will be described in other documents. The prefix for all of the native endpoints is 'api/red'. + +Red provides multiple channels accesible via the same login account. With Red, any API function which requires authentication will accept a parameter &channel={channel_nickname} - and will select that channel and make it current before executing the API command. By default, the default channel associated with an account is selected. + +Red also provides an extended permission model. In the absence of any Red specific API calls to set permissions, they will be set to the default permissions settings which are associated with the current channel. + +Red will probably never be able to support the Twitter 'api/friendships' functions fully because Red is not a social network and has no concept of "friendships" - it only recognises permissions to do stuff (or not do stuff as the case may be). + +Legend: T= Twitter, S= StatusNet, F= Friendica, R= Red, ()=Not yet working, J= JSON only (XML formats deprecated) + +Twitter API compatible functions: + + api/account/verify_credentials T,S,F,R + api/statuses/update T,S,F,R + api/users/show T,S,F,R + api/statuses/home_timeline T,S,F,R + api/statuses/friends_timeline T,S,F,R + api/statuses/public_timeline T,S,F,R + api/statuses/show T,S,F,R + api/statuses/retweet T,S,F,R + api/statuses/destroy T,S,F,(R) + api/statuses/mentions T,S,F,(R) + api/statuses/replies T,S,F,(R) + api/statuses/user_timeline T,S,F,(R) + api/favorites T,S,F,(R) + api/account/rate_limit_status T,S,F,R + api/help/test T,S,F,R + api/statuses/friends T,S,F,R + api/statuses/followers T,S,F,R + api/friends/ids T,S,F,R + api/followers/ids T,S,F,R + api/direct_messages/new T,S,F,(R) + api/direct_messages/conversation T,S,F,(R) + api/direct_messages/all T,S,F,(R) + api/direct_messages/sent T,S,F,(R) + api/direct_messages T,S,F,(R) + api/oauth/request_token T,S,F,R + api/oauth/access_token T,S,F,R + +Twitter API functions supported by StatusNet but not currently by Friendica or Red + + api/favorites T,S + api/favorites/create T,S + api/favorites/destroy T,S + api/statuses/retweets_of_me T,S + api/friendships/create T,S + api/friendships/destroy T,S + api/friendships/exists T,S + api/friendships/show T,S + api/account/update_location T,S + api/account/update_profile_background_image T,S + api/account/update_profile_image T,S + api/blocks/create T,S + api/blocks/destroy T,S + +Twitter API functions not currently supported by StatusNet + + api/statuses/retweeted_to_me T + api/statuses/retweeted_by_me T + api/direct_messages/destroy T + api/account/end_session T,(R) + api/account/update_delivery_device T + api/notifications/follow T + api/notifications/leave T + api/blocks/exists T + api/blocks/blocking T + api/lists T + +Statusnet compatible extensions to the Twitter API supported in both Friendica and Red + + api/statusnet/version S,F,R + api/statusnet/config S,F,R + +Friendica API extensions to the Twitter API supported in both Friendica and Red + + api/statuses/mediap F,R + +Red specific API extensions to the Twitter API not supported in Friendica + + api/account/logout R + api/export/basic R,J + api/friendica/config R + api/red/config R + api/friendica/version R + + api/red/version R + + api/red/channel/export/basic R,J + api/red/channel/stream R,J (currently post only) + api/red/albums R,J + api/red/photos R,J (option album=xxxx) + +Red proposed API extensions to the Twitter API + + api/statuses/edit (R),J + api/statuses/permissions (R),J + api/statuses/permissions/update (R),J + api/statuses/ids (R),J # search for existing message_id before importing a foreign post + api/files/show (R),J + api/files/destroy (R),J + api/files/update (R),J + api/files/permissions (R),J + api/files/permissions/update (R),J + api/pages/show (R),J + api/pages/destroy (R),J + api/pages/update (R),J + api/pages/permissions (R),J + api/pages/permissions/update (R),J + api/events/show (R),J + api/events/update (R),J + api/events/permissions (R),J + api/events/permissions/update (R),J + api/events/destroy (R),J + api/photos/show (R),J + api/photos/update (R),J + api/photos/permissions (R),J + api/photos/permissions/update (R),J + api/albums/destroy (R),J + api/albums/show (R),J + api/albums/update (R),J + api/albums/permissions (R),J + api/albums/permissions/update (R),J + api/albums/destroy (R),J + api/friends/permissions (R),J \ No newline at end of file diff --git a/doc/campaign.bb b/doc/campaign.bb new file mode 100644 index 000000000..63a072d42 --- /dev/null +++ b/doc/campaign.bb @@ -0,0 +1,234 @@ +[b]Initial Indiegg pitch[/b] + +[b][color= grey][size=20]What have we done, and what we hope to achieve[/size][/color][/b] + +[b][color= grey][size=18]Single-click sign on, nomadic identity, censorship-resistance, privacy, self-hosting[/size][/color][/b] + +We started the Red Matrix project by asking ourselves a few questions: + +- Imagine if it was possible to just access the content of different web sites, without the need to enter usernames and passwords for every site. Such a feature would permit Single-Click user identification: the ability to access sites simply by clicking on links to remote sites. +Authentication just happens automagically behind the scenes. Forget about remembering multiple user names with multiple passwords when accessing different sites online. + +We liked this idea and went ahead with coding it immediately. Today, single-click sign is in alpha state. It needs more love, which means a solid three months of full-time development efforts. + +- Think of your Facebook, Twitter, WordPress, or any other website where you currently have an account. Now imagine being able to clone your account, to make an exact duplicate of it (with all of your friends, posts and settings), then export your cloned account into another server that is part of this communication network. After you're done, both of your accounts are synced from the time they were cloned. It doesn't matter where you log in (at your original location, or where you imported your clone). You see the same content, the same friends, posts, and account settings. +At that point, it is more appropriate to call your account an identity that is nomadic (it is not tied to one home, unless you choose to do so!). +It's 2013, our online presence no longer has to be tied to a single server, domain name or IP address. We should be able to clone and import our identities to other servers. In such a network, it should only matter who you are, not where you are. + +We're very intrigued by the possibilities nomadic identities open up for freedom, censorship-resistance, and identity resilience. Consider the following scenarios: + + -- Should a repressive government or corporation decide to delete your account, your cloned identity lives on, because it is located on another server, across the world, which is part of the same communication network. You can't be silenced! + + -- What if there is a server meltdown, and your identity goes off line. No problem, you log into your clone and all is good. + + -- Your server administrator can no longer afford to keep paying to support a free service (a labor love and principle, which all of us have participating in as system administrators of Friendica sites!). She notifies you that you must clone your account before the shutoff date. Rather than loose all your friends, and start from scratch by creating a new identity somewhere, you clone and move to another server. +We feel this is especially helpful for the free web, where administrators of FOSS community sites are often faced with difficult financial decisions. Since many of them rely on donations, sometimes servers have to be taken offline, when costs become prohibitive for the brave DIY souls running those server. Nomadic identities should relieve some of the pressures associated with such situations. + +At the same time, we are also thinking of solutions that would make it possible for people running Red hubs to be financially sustainable. To that end, we're starting to implement service classes in our code, which would allow administrators to structure paid levels of service, if they choose to do so. + +Today, nomadic identity is currently in alpha state. It also needs more love, which means a solid three months of full-time development efforts. + +- Imagine a social network that is censorship-resistant, and privacy-respecting by design. It is not controlled by one mega-corporation, and where users cannot be easily censored by oppressive governments. So, in addition to nomadic identities, we are talking about decentralization, open source, freely software, that can run on any hardware that supports a database and a modern web browser. And we mean "any hardware", from a self-hosted $35 Raspberry Pi, to the very latest Intel Xeon and AMD Bulldozer-powered server behemoths. + +We've realized that privacy requires full control over content. We should be able to delete, backup and download all of our content, as well as associated account/identity information. To this end, we have already implemented the initial version of account export and backup. + +Concerned about pages and pages of posts from months and years past? The solution should be simple: visit your settings page, specify that all content older than 7 days, with the exception of starred posts, should be automatically deleted. Done, the clutter is gone! (Consider also the privacy and anti-mass surveillance implications of this feature. PRISM disclosures have hinted that three-letter spying agencies around the world are recording all internet traffic and storing it for a few days at a time. We feel that automatic post expiration becomes a rather useful feature in this context, and implementing it is one of our near future priorities.) + +[b][color= grey][size=18]The Affinity Slider and Access Control Lists[/size][/color][/b] + +- What if the permissions and access control lists that help secure modern operating systems were extended into a communication network that lived on the internet? This means somebody could log into this network from their home site, and with the simple click of a few buttons dynamically sort who can have access to their online content on a very fine level: from restricting others from seeing your latest blog post, to sharing your bookmarks with the world. + +We've coded the initial version of such a new feature. It is called the "Affinity Slider", and in our very-alpha user interface it looks like this. +[img]https://friendicared.net/photo/b07b0262e3146325508b81a9d1ae4a1e-0.png[/img] + +{INSERT SCREENSHOT OF A MATRIX PAGE} + +Think of it as an easy way to filter content that you see, based on the degree of "closeness" to you. Move the slider to Friends, and only content coming from contacts you've tagged as friends is displayed on your home page. Uncluttering thousands of contacts, friends, RSS feeds, and other content should be a basic feature of modern communication on the web, but not at the expense of ease of use. + +In addition to the Affinity Slider, we also have the ACL (Access Control List). Say you want to share something with only 5 of your contacts (a blog, two friends from college, and two forums). You click on the padlock, choose the recipients, and that's it. Only those identities will recieve their posts. Furthermore, the post will be encrypted via PKI (pulic key encryption) to help maintain privacy. In the age of PRISM, we don't know all the details on what's safe out there, but we still think that privacy by design should be automatically present, invisible to the user, and easy to use. +Attaching permissions to any data that lives on this network, potentially solves a great many headaches, while achieving simplicity in communication. + +Think of it this way: the internet is nothing, but a bunch of permissions and a folder of data. You, the user controls the permissions and thus the data that is relevant to you. + +[b][color= grey][size=20]The Matrix is Born![/size][/color][/b] + +After asking and striving to answer a number of such questions, we realized that we were imagining a general purpose communication network with a number of unique, and potentially game-changing, features. We called it the Red Matrix and started thinking of it as an over-lay on top of the internet as it exists today; an operating system re-invented as a communication network, with its own permissions, access control lists, protocol, connectors to others services, and open-ended possibilities via its API. The sum of the matrix is greater than it's parts. We're not building website, but a way for websites to link together and grow into something that is unique and ever-changing, with autonomy and privacy. + +It's a lot of work, for anyone. So far, we've got a team of a handful of volunteers, code geeks, brave early adopters, system administrators and other good people, willing to give the project a shot. We're motivated by our commitment to a free web, where privacy is built-in, and corporations don't have a stranglehold on our daily communication. + +We need your help to finish it and release it to the world! + +[b][color= grey][size=20]What have we written so far[/size][/color][/b] + +As of the today, the Red Matrix is in developer preview (alpha) state. It is not ready for everyday use, but some of the initial set of core features are implemented (again, in alpha state). These include: + +- Zot, the protocol powering the matrix +- Single-signon logins. +- Nomadic identities +- Basic content manipulation: creation, deletion, rudimentary handling of photos, and media files +- A bare-bones outline of the API and user documentation. + + +[b][color= grey][size=20]Our TO-DO List[/size][/color][/b] + +However, in addition to finishing and polishing the above, there are a number of features that have to implemented to make the Red Matrix ready for daily use. If we meet our fundraising goal, we hope to dive into the following road map, by order of priority: + +- A professionally designed user interface (UI), interface that is adaptive to any user level, from end users who want to use the Matrix as a social network, to tinkerers who will put together a customized blog using Comanche, to hackers who will develop and extend the matrix using a built-in code editor, that hooks to the API and the git. + +- Comanche, our new markup language, similar to BBCode, with which to create elaborate and complex web pages by assembling them from a series of components - some of which are pre-built and others which can be defined on the fly. You can read more about it on our github wiki: https://github.com/friendica/red/wiki/Comanche + +- A unique help system that lives in the matrix, but is not based on the principles of a search engine. We have some interesting ideas about decentralizing help documentation, without going down the road of distributed search engines. Here's a hint: We shouldn't be searching at all, we should just be filtering what's already there in new, and cunning ways. + +- An appropriate logo, along with professionally done documentation system, both for our API, as well as users. + +- WordPress-like single button software upgrades + +- A built-in development environment, using an integrated web-based code editor such as Ace9 + +[b][color= grey][size=20]What will the money be used for[/size][/color][/b] + +If we raise our targeted amount of funds, we plan to use it as follows: + +1) Fund 6 months {OR WHATEVER} of full time work for our current core developers, Mike, Thomas, and Tobias {ANYONE ELSE?] + +2) Pay a professional web developer to design an kick ass reference theme, along with a project logo. + +3) {WHAT ELSE?} + +[b][color= grey][size=20]Deadlines[/size][/color][/b] + +[b]March, 2014: Red Matrix Beta with the following features[/b] + +- {LIST FEATURES} + +[b][color= grey][size=20]Who We Are[/size][/color][/b] + +Mike: {FILL IN BIO, reference Friendica, etc.} + +Thomas: {bio blurb} + +Tobias: {bio blurb} + +Arto: {documentation, etc.} + +{WHO ELSE? WE NEED A TEAM, AT LEAST 3-4 PEOPLE} + +[b][color= grey][size=20]What Do I Get as a Supporter?[/size][/color][/b] + +Our ability to reach 1.0 stable release depends on your generosity and support. We appreciate your help, regardless of the amount! Here's what we're thinking as far as different contribution levels go: + +[b]$1: {CATCHY TAGLINE}[/b] + +We'll list your name on our initial supporters list, a Hall of Fame of the matrix! + +[b]$5:[/b] + +[b]$10: [/b] + +[b]$16: [/b] + +You get one of your Red Matrix t-shirts, as well as our undying gratitude. + +[b]$32: [/b] + +[b]$64 [/b] + +[b]128 [/b] + +[b]$256: [/b] + +[b]$512: [/b] + +[b]$1024 [/b] + +[b]$2048[/b] + +Each contributor at this level gets their own Red Matrix virtual private server, installed, hosted and supported by us for a period of 1 year. + +[b][color= grey][size=20]Why are we so excited about the Red Matrix?[/size][/color][/b] + +{SOMETHING ABOUT THE POTENTIAL IMPACT OF RED, ITS INNOVATIONS, ETC> + +[b][color= grey][size=20]Other Ways to Help[/size][/color][/b] + +We're a handful of volunteers, and we understand that not everyone can contribute by donating money. There are many other ways you can in getting the Matrix to version 1.0! + +First, you can checkout our source code on github: https://github.com/friendica/red + +Maybe you can dive in and help us out with some development. + +Second, you can install the current developer preview on a server and start compiling bug reports. + +Third, register at one of the public alpha Red hubs, and get a feel for what Red is trying to do! + +Perhaps you're good at writing and documenting stuff. Grab an account at one of the public alphas and give us a hand. + +[b][color= grey][size=20]Frequently Asked Questions[/size][/color][/b] + +[b]1. Is Red a social network?[/b] + +The Red Matrix is not a social network. We're thinking of it as a general purpose communication network, with sharing, and public/private communications built into the matrix. + +[b]2. What is the difference between Red and Friendica?[/b] + +What's the difference between a passport, and a postcard? + +Friendica is really, really good at sending postcards. It can do all sorts of things with postcards. It can send them to your friends. It can send them to people you don't know. It can put them in an envelope and send them privately. It can run them through a photocopier and plaster them all over the internet. It can even take postcards in one language and convert them to many others so your friends who speak a different language can read them. + +What Friendica can't do, is wave a postcard at somebody and expect them to believe that holding this postcard prove you are who you say you are. Sure, if you've been sending somebody postcards, they might accept that it is you in the picture, but somebody who has never heard of you will not accept ownership of a postcard as proof of identity. + +The Red Matrix offers a passport. + +You can still use it to send postcards. At the same time, when you wave your passport at somebody, they do accept it as proof of identity. No longer do you need to register at every single site you use. You already have an account - it's just not necessarily at our site - so we'll ask to see your passport instead. + +Once you've proven your identity, a Red hub lets you use our services, as though you'd registered with directly, and we'd verified your credentials as would have happened in the olden days. These resources can, of course, be anything at all. + +[b]2. Why did you choose PHP, instead of Ruby or Python?[/b] + +The reference implementation is in PHP. We chose PHP, because it is available everywhere, and is easily configurable. We understand the debates between proponents and opponents of PHP, Ruby and Python. Nothing prevents implementations of Zot and the matrix in those languages. In fact, people on the matrix have already started developing a version of Red in Python [SOURCE?], and there is talk about future implementations in C (aiming for blazing native performance) and Java. It's free and open source, so we feel it's only a matter of time, once Red is initially completed. + +[b]4. Other than PHP, what other technology does Red use?[/b] + +We use MySQL as our database (this include any forks such as, MariaDB or Percona), and any modern webserver (Apache, nginx, etc.). + +[b]5. How is the Affinity Slider different from Mozilla's Persona?[/b] +{COMPLETE} + +[b]6. Does the Red Matrix use encryption? Details please![/b] + +Yes, we do our best to use free and open source encryption libraries to help achieve privacy from general, mass surveillance. + +Communication between web browsers and Red hubs is encrypted using SSL certificates. + +Private communication on the matrix is protected by AES symmetric encryption, which is itself protected by RSA PKI (public key encryption). By default, we use AES-256-CBC, and our RSA keys are set to 4096-bits. + +For more info on our initial implementation of encrypted communication, check out our source code at Github: https://github.com/friendica/red/blob/master/include/crypto.php + +[b]7. What do you mean by decentralization? [/b] + + +[b]8. Can I build my own website with in the Red Matrix?[/b] + +Yes. The short explanation: We've got this spiffy idea we're calling "Comanche", which will allow non-programmers to build complete custom websites, and any such website will be able to connect to any other website or channel in the matrix. The goal of Comanche is to hide the technical complexities of communicating in the matrix, while encouraging people to use their creativity and put together their own unique presence on the matrix. + +The longer explanation: Comanche is a markup language, similar to bbcode, with which to create elaborate and complex web pages by assembling them from a series of components - some of which are pre-built and others which can be defined on the fly. Comanche uses a Page Description Language file (".pdl", pronounced "puddle") to create these pages. Bbcode is not a requirement; an XML PDL file could also be used. The tag delimiters would be different. Usage is the same. + +Additional information is available on our Github project wiki: https://github.com/friendica/red/wiki/Comanche + +Comanche is another one of our priorities for the next six months. + +[b]9. Where can I see some technical description of Zot?[/b] + +Our github wiki contains a number of high-level and technical descriptions of Zot, Comanche, and Red in general: https://github.com/friendica/red/wiki + +[b]10. What happens if you raise more than {TARGETED NUMBER}?[/b] + +Raising more than our initial goal of funds, will speed up our development efforts. More developers will be able to take time off from other jobs, and concentrate efforts on finishing Red. + +[b]11 Can I make a contribution via Bitcoin?[/b] + +{YES/NO} + +[b]12. I have additional Questions[/] + +Awesome. We'd be more than happy to chat. You can find us {HERE} \ No newline at end of file diff --git a/doc/channels.bb b/doc/channels.bb new file mode 100644 index 000000000..3be1211a6 --- /dev/null +++ b/doc/channels.bb @@ -0,0 +1,27 @@ +[b]Channels[/b] + +Channels are simply collections of content stored in one place. A channel can represent anything. It could represent you, a website, a forum, photo albums, anything. For most people, their first channel with be "Me". + +The most important features for a channel that represents "me" are: + +Secure and private "spam free" communications + +Identity and "single-signon" across the entire network + +Privacy controls and permissions which extend to the entire network + +Directory services (like a phone book) + +In short, a channel that represents yourself is "me, on the internet". + +You will be required to create your first channel as part of the sign up process. You can also create additonal channels from the "Select channel" link. + +You will be asked to provide a channel name, and a short nick name. For a channel that represents yourself, it is a good idea to use your real name here to ensure your friends can find you, and connect to your channel. The short nickname will be used to generate a "webbie". This is a bit like a username, and will look like an email address, taking the form nickname@domain. You should put a little thought into what you want to use here. Imagine somebody asking for your webbie and having to tell them it is "llamas-are_kewl.123". "llamasarecool" would be a much better choice. + +Once you have created your channel, you will be taken to the settings page, where you can configure your channel, and set your default permissions. + +Once you have done this, your channel is ready to use. At [observer.url] you will find your channel "stream". This is where your recent activity will appear, in reverse chronological order. If you post in the box marked "share", the entry will appear at the top of your stream. You will also find links to all the other communication areas for this channel here. The "About" tab contains your "profile", the photos page contain photo albums, and the events page contains events share by both yourself and your contacts. + +The "Matrix" page contains all recent posts from across the matrix, again in reverse chronologial order. The exact posts that appear here depend largely on your permissions. At their most permissive, you will receive posts from complete strangers. At the other end of the scale, you may see posts from only your friends - or if you're feeling really anti-social, only your own posts. + +As mentioned at the start, many other kinds of channel are possible, however, the creation procedure is the same. The difference between channels lies primarily in the permissions assigned. For example, a channel for sharing documents with colleagues at work would probably want more permissive settings for "Can write to my "public" file storage" than a personal account. For more information, see the permissions section. \ No newline at end of file diff --git a/doc/checking_account_quota_usage.bb b/doc/checking_account_quota_usage.bb new file mode 100644 index 000000000..198b15bfd --- /dev/null +++ b/doc/checking_account_quota_usage.bb @@ -0,0 +1,26 @@ +[b]Checking your account quota usage (service limits usage)[/b] + +Your hub might implement service class limits, assigning limits to the total size of file, photo, channels, top-level posts, etc., that can be created by an account holder for a specific service level. + +Here's how you can quickly check how much of your assigned quota you're currently using: + +[b][color= grey]Check file storage quota levels[/color][/b] +Visit the following URL in your browser: +[code] +https://{Red-domain}/filestorage/{your_username} +[/code] + +Example: +[code]https://friendicared.net/filestorage/test2 +[/code] + +[b][color= grey]Check uploaded photos storage quota levels[/color][/b] +[code] +https://{Red-domain}photos/{your_username}/upload/ +[/code] + +Example: +[code]https://friendicared.net/photos/test2/upload/ +[/code] + +Return to the [url=[baseurl]/help/main]Main documentation page[/url] \ No newline at end of file diff --git a/doc/cloud.bb b/doc/cloud.bb new file mode 100644 index 000000000..8997b88fe --- /dev/null +++ b/doc/cloud.bb @@ -0,0 +1,25 @@ +[b]Personal Cloud Storage[/b] + +The Red Matrix provides an ability to store privately and/or share arbitrary files with friends. + +You may either upload files from your computer into your storage area, or copy them directly from the operating system using the WebDAV protocol. + +On many public servers there may be limits on disk usage. + +[b]File Attachments[/b] + +The quickest and easiest way to share files is through file attachments. In the row of icons below the status post editor is a tool to upload attachments. Click the tool, select a file and submit. After the file is uploaded, you will see an attachment code placed inside the text region. Do not edit this line or it may break the ability for your friends to see the attachment. You can use the post permissions dialogue box or privacy hashtags to restrict the visibility of the file - which will be set to match the permissions of the post your are sending. + +To delete attachments or change the permissions on the stored files, visit [observer.baseurl]/filestorage/{{username}}" replacing {{username}} with the nickname you provided during channel creation. + +[b]Web Access[/b] + +Your files are visible on the web at the location "cloud/{{username}}" to anybody who is allowed to view them. If the viewer has sufficient privileges, they may also have the ability to create new files and folders/directories. + +[b]WebDAV access[/b] + +See: [zrl=[baseurl]/help/cloud_desktop_clients]Cloud Desktop Clients[/zrl] + +[b]Permissions[/b] + +When using WebDAV, the file is created with your channel's default file permissions and this cannot be changed from within the operating system. It also may not be as restrictive as you would like. What we've found is that the preferred method of making files private is to first create folders or directories; then visit "filestorage/{{username}}"; select the directory and change the permissions. Do this before you put anything into the directory. The directory permissions take precedence so you can then put files or other folders into that container and they will be protected from unwanted viewers by the directory permissions. It is common for folks to create a "personal" or "private" folder which is restricted to themselves. You can use this as a personal cloud to store anything from anywhere on the web or any computer and it is protected from others. You might also create folders for "family" and "friends" with permission granted to appropriate collections of channels. \ No newline at end of file diff --git a/doc/cloud_desktop_clients.bb b/doc/cloud_desktop_clients.bb new file mode 100644 index 000000000..b715678d9 --- /dev/null +++ b/doc/cloud_desktop_clients.bb @@ -0,0 +1,16 @@ +[b]Cloud Desktop Clients[/b] + +[b]Windows Clients[/b] + +[li][zrl=[baseurl]/help/dav_windows]Windows Internal Client[/zrl][/li] + + +[b]Linux Clients[/b] + +[li][zrl=[baseurl]/help/dav_mount]Command Line as a Filesystem[/zrl][/li] +[li][zrl=[baseurl]/help/dav_dolphin]Dolphin[/zrl][/li] +[li][zrl=[baseurl]/help/dav_konqueror]Konqueror[/zrl][/li] +[li][zrl=[baseurl]/help/dav_nautilus]Nautilus[/zrl][/li] +[li][zrl=[baseurl]/help/dav_nemo]Nemo[/zrl][/li] + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/comanche.bb b/doc/comanche.bb new file mode 100644 index 000000000..ea2069b35 --- /dev/null +++ b/doc/comanche.bb @@ -0,0 +1,146 @@ +[b]Comanche Page Description Language[/b] + +Comanche is a markup language similar to bbcode with which to create elaborate and complex web pages by assembling them from a series of components - some of which are pre-built and others which can be defined on the fly. Comanche uses a Page Decription Language to create these pages. + +Comanche primarily chooses what content will appear in various regions of the page. The various regions have names and these names can change depending on what layout template you choose. + +Currently there are two layout templates, unless your site provides additional layouts (TODO list all templates) + +[code] + default + + The default template defines a "nav" region across the top, "aside" as a fixed width sidebar, + "content" for the main content region, and "footer" for a page footer. + + + full + + The full template defines the same as the default template with the exception that there is no "aside" region. +[/code] + +To choose a layout template, use the 'layout' tag. + +[code] + [layout]full[/layout] +[/code] + +The default template will be used if no other template is specified. The template can use any names it desires for content regions. You will be using 'region' tags to decide what content to place in the respective regions. + + +Two "macros" have been defined for your use. +[code] + $nav - replaced with the site navigation bar content. + $content - replaced with the main page content. +[/code] + +By default, $nav is placed in the "nav" page region and $content is placed in the "content" region. You only need to use these macros if you wish to re-arrange where these items appear, either to change the order or to move them to other regions. + + +To select a theme for your page, use the 'theme' tag. +[code] + [theme]apw[/theme] +[/code] +This will select the theme named "apw". By default your channel's preferred theme will be used. + + +[b]Regions[/b] + +Each region has a name, as noted above. You will specify the region of interest using a 'region' tag, which includes the name. Any content you wish placed in this region should be placed between the opening region tag and the closing tag. + +[code] + [region=aside]....content goes here....[/region] + [region=nav]....content goes here....[/region] +[/code] + + +[b]Menus and Blocks[/b] + +Your webpage creation tools allow you to create menus and blocks, in addition to page content. These provide a chunk of existing content to be placed in whatever regions and whatever order you specify. Each of these has a name which you define when the menu or block is created. +[code] + [menu]mymenu[/menu] +[/code] +This places the menu called "mymenu" at this location on the page, which must be inside a region. +[code] + [block]contributors[/block] +[/code] +This places a block named "contributors" in this region. + + +[b]Widgets[/b] + +Widgets are executable apps provided by the system which you can place on your page. Some widgets take arguments which allows you to tailor the widget to your purpose. (TODO: list available widgets and arguments). The base system provides +[code] + profile - widget which duplicates the profile sidebar of your channel page. This widget takes no arguments + tagcloud - provides a tag cloud of categories + count - maximum number of category tags to list +[/code] + + +Widgets and arguments are specified with the 'widget' and 'arg' tags. +[code] + [widget=recent_visitors][arg=count]24[/arg][/widget] +[/code] + +This loads the "recent_visitors" widget and supplies it with the argument "count" set to "24". + + +[b]Comments[/b] + +The 'comment' tag is used to delimit comments. These comments will not appear on the rendered page. + +[code] + [comment]This is a comment[/comment] +[/code] + + +[b]Complex Example[/b] + +[code] + [comment]use an existing page template which provides a banner region plus 3 columns beneath it[/comment] + + [layout]3-column-with-header[/layout] + + [comment]Use the "darknight" theme[/comment] + + [theme]darkknight[/theme] + + [comment]Use the existing site navigation menu[/comment] + + [region=nav]$nav[/region] + + [region=side] + + [comment]Use my chosen menu and a couple of widgets[/comment] + + [menu]myfavouritemenu[/menu] + + [widget=recent_visitors] + [arg=count]24[/arg] + [arg=names_only]1[/arg] + [/widget] + + [widget=tagcloud][/widget] + [block]donate[/block] + + [/region] + + + + [region=middle] + + [comment]Show the normal page content[/comment] + + $content + + [/region] + + + + [region=right] + + [comment]Show my condensed channel "wall" feed and allow interaction if the observer is allowed to interact[/comment] + + [widget]channel[/widget] + + [/region] +[/code] \ No newline at end of file diff --git a/doc/connecting_to_channels.bb b/doc/connecting_to_channels.bb new file mode 100644 index 000000000..b81abc7bd --- /dev/null +++ b/doc/connecting_to_channels.bb @@ -0,0 +1,17 @@ +[b]Connecting To Channels[/b] + +Connections in the Red Matrix can take on a great many different meanings. But let's keep it simple, you want to be friends with somebody like you are familiar with from social networking. How do you do it? + +First, you need to find some channels to connect to. There are two primary ways of doing this. Firstly, setting the "Can send me their channel stream and posts" permission to "Anybody in this network" will bring posts from complete strangers to your matrix. This will give you a lot of public content and should hopefully help you find interesting, entertaing people, forums, and channels. + +The next thing you can do is look at the Directory. The directory is available on every Red Matrix website which means searching from your own site will bring in results from the entire network. You can search by name, interest, location and keyword. This is incomplete, so we'll improve this paragraph later. + +To connect with other Red Matrix channels: + +Visit their profile by clicking their photograph in the directory, matrix, or comments, and it will open their channel home page in the channel viewer. At the left hand side of the screen, you will usually see a link called "connect". Click it, and you're done. Depending on the settings of the channel you are connecting to, you may need to wait for them to approve your connection, but no further action is needed on your part. Once you've initiated the connection, you will be taken to the connection editor. This allows you to assign specific permissions for this channel. If you don't allow any permissions, communication will be very limited. There are some quick links which you can use to avoid setting individual permissions. To provide a social network environment, "Full Sharing" is recommended. You may review the settings that are applied with the quick links to ensure they are suitable for the channel you are connecting with and adjust if necessary. Then scroll to the bottom of the page and click "Submit". + +You may also connect with any channel by visiting the "Connections" page of your site or the Directory and typing their "webbie" into the "Add New Connection" field. Use this method if somebody tells you their webbie and you wish to connect with them. A webbie looks like an email address; for example "bob@example.com". The process is the same as connecting via the "Connect" button - you will then be taken to the connection editor to set permissions. + +[b]Premium Channels[/b] + +Some channels are designated "Premium Channels" and may require some action on your part before a connection can be established. The Connect button will for these channels will take you to a page which lists in detail what terms the channel owner has set. If the terms are accepted, the connection will then proceed normally. In some cases, such as with celebrities and world-reknowned publishers, this may involve payment. If you do not agree to the terms, the connection will not proceed, or it may proceed but with reduced permissions allowed on your interactions with that channel. \ No newline at end of file diff --git a/doc/dav_dolphin.bb b/doc/dav_dolphin.bb new file mode 100644 index 000000000..4429303d3 --- /dev/null +++ b/doc/dav_dolphin.bb @@ -0,0 +1,9 @@ +[b]Using The Cloud - Dolphin[/b] + +Visit webdavs://example.com/cloud where "example.com" is the URL of your hub. + +When prompted for a username and password, enter your username (the first part of your webbie - no @ or domain name) and password for your normal account. + +Note, if you are already logged in to the web interface via Konqueror, you will not be prompted for further authentication. + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/dav_konqueror.bb b/doc/dav_konqueror.bb new file mode 100644 index 000000000..f44c11fb2 --- /dev/null +++ b/doc/dav_konqueror.bb @@ -0,0 +1,11 @@ +[b]Using The Cloud - Konqueror[/b] + +Simply visit webdavs://example.com/cloud after logging in to your hub, where "example.com" is the URL of your hub. + +No further authentication is required if you are logged in to your hub in the normal manner. + +Additionally, if one has authenticated at a different hub during their normal browser session, your identity will be passed to the cloud for these hubs too - meaning you can access any private files on any server, as long as you have permissions to see them, as long as you have visited that site earlier in your session. + +This functionality is normally restricted to the web interface, and is not available to any desktop software other than KDE. + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/dav_mount.bb b/doc/dav_mount.bb new file mode 100644 index 000000000..f86e2a6e5 --- /dev/null +++ b/doc/dav_mount.bb @@ -0,0 +1,63 @@ +[b]Mounting As A Filesystem[/b] + +To install your cloud directory as a filesystem, you first need davfs2 installed. 99% of the time, this will be included in your distributions repositories. In Debian + +[code]apt-get install davfs2[/code] + +If you want to let normal users mount the filesystem + +[code] dpkg-reconfigure davfs2[/code] + +and select "yes" at the prompt. + +Now you need to add any user you want to be able to mount dav to the davfs2 group + +[code]usermod -aG davfs2 <DesktopUser>[/code] + +Edit /etc/fstab + +[code]nano /etc/fstab[/code] + + to include your cloud directory by adding + +[code] +example.com/cloud/ /mount/point davfs user,noauto,uid=<DesktopUser>,file_mode=600,dir_mode=700 0 1 +[/code] + +Where example.com is the URL of your hub, /mount/point is the location you want to mount the cloud, and <DesktopUser> is the user you log in to one your computer. Note that if you are mounting as a normal user (not root) the mount point must be in your home directory. + +For example, if I wanted to mount my cloud to a directory called 'cloud' in my home directory, and my username was bob, my fstab would be + +[code]example.com/cloud/ /home/bob/cloud davfs user,noauto,uid=bob,file_mode=600,dir_mode=700 0 1[/code] + +Now, create the mount point. + +[code]mkdir /home/bob/cloud[/code] + +and also create a directory file to store your credentials + +[code]mkdir /home/bob/.davfs2[/code] + +Create a file called 'secrets' + +[code]nano /home/bob/.davfs2/secrets[/code] + +and add your cloud login credentials + +[code] +example.com/cloud <username> <password> +[/code] + +Where <username> and <password> are the username and password [i]for your hub[/i]. + +Don't let this file be writeable by anyone who doesn't need it with + +[code]chmod 600 /home/bob/.davfs2/secrets[/code] + +Finally, mount the drive. + +[code]mount example.com/cloud[/code] + +You can now find your cloud at /home/bob/cloud and use it as though it were part of your local filesystem - even if the applications you are using have no dav support themselves. + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/dav_nautilus.bb b/doc/dav_nautilus.bb new file mode 100644 index 000000000..d3c478aa0 --- /dev/null +++ b/doc/dav_nautilus.bb @@ -0,0 +1,9 @@ +[b]Using The Cloud - Nautilus[/b] + +1. Open a File browsing window (that's Nautilus) +2. Select File > Connect to server from the menu +3. Type davs://<domain_name>/cloud/<your_username> and click Connect +4. You will be prompted for your username (same as above) and password +5. Your personal DAV directory will be shown in the window + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/dav_nemo.bb b/doc/dav_nemo.bb new file mode 100644 index 000000000..a2553c1d5 --- /dev/null +++ b/doc/dav_nemo.bb @@ -0,0 +1,19 @@ +[b]Using The Cloud - Nemo[/b] + +For (file browser) Nemo 1.8.2 under Linux Mint 15, Cinnamon 1.8.8. Nemo ist the standard file browser there. + +1st way +type "davs://yourusername@friendicared.net/cloud" in the address bar + +2nd way +Menu > file > connect to server +Fill the dialog +- Server: friendicared.net +- Type: Secure WebDAV (https) +- Folder: /cloud +- Username: yourusername +- Passwort: yourpasswort + +Once open you can set a bookmark. + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/dav_windows.bb b/doc/dav_windows.bb new file mode 100644 index 000000000..600944b68 --- /dev/null +++ b/doc/dav_windows.bb @@ -0,0 +1,11 @@ +[b]Using The Cloud - Windows Internal Client[/b] + +RedDav using Windows 7 graphical user interface wizard: +1. Left-click the Start-button to open the start menu. +2. Right-click the My computer icon to access its menu. +3. Left-click Map network drive... to open the connection dialog wizard. +4. Type #^[url=https://example.net/cloud/your_user_name]https://example.net/cloud/your_user_name[/url] in the textbox and click the Complete button where "example.net" is the URL of your hub. +5. Type your Red account's user name. IMPORTANT - NO at-sign or domain name. +6. Type your Red password + +Return to the [zrl=[baseurl]/help/main]Main documentation page[/zrl] \ No newline at end of file diff --git a/doc/debian_install.bb b/doc/debian_install.bb new file mode 100644 index 000000000..b2e74fdde --- /dev/null +++ b/doc/debian_install.bb @@ -0,0 +1,29 @@ +[b]Installing On Debian[/b] + +While following the instructions for any other installation will work on Debian, for this platform we also provide an install script which can be [zrl=https://friendicared.net/cloud/docs/debian-setup.sh]downloaded here[/zrl] + +[b]THIS SCRIPT IS MEANT TO BE RUN ON A NEW OR JUST REINSTALLED SERVER[/b] + +Some programs such as Apache & Samba are removed by this script. + +Note, this script will use Nginx as the webserver, and dropbear for ssh. It will also install PHP and MySQL from the DotDeb repository. The DotDeb is not an official Debian repository, though it is maintained by Debian developers. + +The file setup-debian.sh has to be on your server. + +For the initial setup git may not be installed on your server, to install git: + +[code]apt-get install git[/code] + +If wget is installed try + +[code]wget --no-check-certificate --timestamping [zrl=https://friendicared.net/cloud/docs/setup-debian.sh]https://friendicared.net/cloud/docs/debian-setup.sh[/zrl][/code] + +To install wget: +[code]apt-get install wget[/code] + +For intitial server setup run +[code]bash setup-debian.sh all[/code] + +To install Red for domain example.com, after the initial server setup run + +[code]bash setup-debian.sh red example.com[/code] \ No newline at end of file diff --git a/doc/developer_function_primer.bb b/doc/developer_function_primer.bb new file mode 100644 index 000000000..8a41c81f4 --- /dev/null +++ b/doc/developer_function_primer.bb @@ -0,0 +1,45 @@ +[b]Red development - some useful basic functions[/b] + +[b]get_account_id()[/b] + +Returns numeric account_id if authenticated or 0. It is possible to be authenticated and not connected to a channel. + +[b]local_user()[/b] + +Returns authenticated numeric channel_id if authenticated and connected to a channel or 0. Sometimes referred to as $uid in the code. + +[b]remote_user()[/b] + +Returns authenticated string hash of Red global identifier, if authenticated via remote auth, or an empty string. + +[b]get_app()[/b] + +Returns the global app structure ($a). + +[b]App::get_observer()[/b] + +(App:: is usually assigned to the global $a), so $a->get_observer() or get_app()->get_observer() - returns an xchan structure representing the current viewer if authenticated (locally or remotely). + +[b]get_config($family,$key), get_pconfig($uid,$family,$key)[/b] + +Returns the config setting for $family and $key or false if unset. + +[b] set_config($family,$key,$value), set_pconfig($uid,$family,$key,$value)[/b] + +Sets the value of config setting for $family and $key to $value. Returns $value. The config versions operate on system-wide settings. The pconfig versions get/set the values for a specific integer uid (channel_id). + +[b]dbesc()[/b] + +Always escape strings being used in DB queries. This function returns the escaped string. Integer DB parameters should all be proven integers by wrapping with intval() + +[b]q($sql,$var1...)[/b] + +Perform a DB query with the SQL statement $sql. printf style arguments %s and %d are replaced with variable arguments, which should each be appropriately dbesc() or intval(). SELECT queries return an array of results or false if SQL or DB error. Other queries return true if the command was successful or false if it wasn't. + +[b]t($string)[/b] + +Returns the translated variant of $string for the current language or $string (default 'en' language) if the language is unrecognised or a translated version of the string does not exist. + +[b]x($var), $x($array,$key)[/b] + +Shorthand test to see if variable $var is set and is not empty. Tests vary by type. Returns false if $var or $key is not set. If variable is set, returns 1 if has 'non-zero' value, otherwise returns 0. -- e.g. x('') or x(0) returns 0; \ No newline at end of file diff --git a/doc/developers.bb b/doc/developers.bb new file mode 100644 index 000000000..b925d31fb --- /dev/null +++ b/doc/developers.bb @@ -0,0 +1,52 @@ +[b]Red Developer Guide[/b] + +[b]Here is how you can join us.[/b] + +First, get yourself a working git package on the system where you will be +doing development. + +Create your own github account. + +You may fork/clone the Red repository from [url=https://github.com/friendica/red.git]https://github.com/friendica/red.git[/url] + +Follow the instructions provided here: [url=http://help.github.com/fork-a-repo/]http://help.github.com/fork-a-repo/[/url] +to create and use your own tracking fork on github + +Then go to your github page and create a "Pull request" when you are ready +to notify us to merge your work. + +[b]Translations[/b] + +Our translations are managed through Transifex. If you wish to help out translating the Red Matrix to another language, sign up on transifex.com, visit [url=https://www.transifex.com/projects/p/red-matrix/]https://www.transifex.com/projects/p/red-matrix/[/url] and request to join one of the existing language teams or create a new one. Notify one of the core developers when you have a translation update which requires merging, or ask about merging it yourself if you're comfortable with git and PHP. We have a string file called 'messages.po' which is gettext compliant and a handful of email templates, and from there we automatically generate the application's language files. + +[zrl=https://friendicared.net/pages/doc/translations]Translations - More Info[/zrl] + +[b]Important[/b] + +Please pull in any changes from the project repository and merge them with your work **before** issuing a pull request. We reserve the right to reject any patch which results in a large number of merge conflicts. This is especially true in the case of language translations - where we may not be able to understand the subtle differences between conflicting versions. + +Also - **test your changes**. Don't assume that a simple fix won't break something else. If possible get an experienced Red developer to review the code. + +Further documentation can be found at the Github wiki pages at: [url=https://github.com/friendica/red/wiki]https://github.com/friendica/red/wiki[/url] + +[b]Licensing[/b] + +All code contributed to the project falls under the MIT license, unless otherwise specified. We will accept third-party code which falls under MIT, BSD and LGPL, but copyleft licensing (GPL, and AGPL) is only permitted in addons. It must be possible to completely remove the GPL (copyleft) code from the main project without breaking anything. + +[b]Coding Style[/b] + +In the interests of consistency we adopt the following code styling. We may accept patches using other styles, but where possible please try to provide a consistent code style. We aren't going to argue or debate the merits of this style, and it is irrelevant what project 'xyz' uses. This is not project 'xyz'. This is a baseline to try and keep the code readable now and in the future. + +[li] All comments should be in English.[/li] + +[li] We use doxygen to generate documentation. This hasn't been consistently applied, but learning it and using it are highly encouraged.[/li] + +[li] Indentation is accomplished primarily with tabs using a tab-width of 4.[/li] + +[li] String concatenation and operators should be separated by whitespace. e.g. "$foo = $bar . 'abc';" instead of "$foo=$bar.'abc';"[/li] + +[li] Generally speaking, we use single quotes for string variables and double quotes for SQL statements. "Here documents" should be avoided. Sometimes using double quoted strings with variable replacement is the most efficient means of creating the string. In most cases, you should be using single quotes.[/li] + +[li] Use whitespace liberally to enhance readability. When creating arrays with many elements, we will often set one key/value pair per line, indented from the parent line appropriately. Lining up the assignment operators takes a bit more work, but also increases readability.[/li] + +[li] Generally speaking, opening braces go on the same line as the thing which opens the brace. They are the last character on the line. Closing braces are on a line by themselves. [/li] \ No newline at end of file diff --git a/doc/external-resource-links.bb b/doc/external-resource-links.bb new file mode 100644 index 000000000..09ac48a47 --- /dev/null +++ b/doc/external-resource-links.bb @@ -0,0 +1,22 @@ +[b]External Resource Links[/b] + +[b][color= grey][size=24]External Links[/size][/color][/b] +[b]Third-Party Themes[/b] + +[*][url=https://github.com/beardy-unixer/apw]APW[/url] +[*][url=https://github.com/omigeot/redstrap3]Redstrap[/url] +[*][url=https://github.com/23n/Pluto]Pluto[/url] +[*][url=https://bitbucket.org/tobiasd/red-clean]Clean[/url] + +[b]Third-Party Addons[/b] +[*][url=https://github.com/beardy-unixer/red-addons-extra]BBCode Extensions for Webpages/Wikis[/url] +[*][url=https://abcentric.net/git/abcjsplugin.git]ABCjs integration - display scores in posts (WIP)[/url] + +[b]Related Projects[/b] + +[*][url=https://addons.mozilla.org/en-US/firefox/addon/redshare/]Redshare for Firefox[/url] +[*][url=https://github.com/cvogeley/red-for-android]Red for Android[/url] +[*][url=https://github.com/zzottel/feed2red]feed2red.pl (posts Atom/RSS feeds to channel)[/url] + +[b]Utilities[/b] +[*][url=https://github.com/beardy-unixer/lowendscript-ng]Debian Install Script[/url] \ No newline at end of file diff --git a/doc/extra_features.bb b/doc/extra_features.bb new file mode 100644 index 000000000..91a16d365 --- /dev/null +++ b/doc/extra_features.bb @@ -0,0 +1,103 @@ +[b]Features[/b] + +The default interface of the Red Matrix was designed to be uncluttered. There are a huge number of extra features (some of which are extremely useful) which you can turn on and get the most of the application. These are found under the Extra Features link of your Settings page. + +[b]Content Expiration[/b] + +Remove posts/comments and/or private messages at a future time. An extra button is added to the post editor which asks you for an expiration. Typically this in "yyyy-mm-dd hh:mm" format, but in the English language you have a bit more freedom and can use most any recognisable date reference such as "next Thursday" or "+1 day". At the specified time (give or take approximately ten minutes based on the remote system's checking frequency) the post is removed. + +[b]Multiple Profiles[/b] + +The ability to create multiple profiles which are visible only to specific persons or groups. Your default profile may be visible to anybody, but secondary profiles can all contain different or additional information and can only be seen by those to whom that profile is assigned. + +[b]Web Pages[/b] + +Provides the ability to use web page design feaures and create custom webpages from your own content and also to design the pages with page layouts, custom menus, and content blocks. + +[b]Private Notes[/b] + +On pages where it is available (your matrix page and personal web pages) provide a "widget" to create and store personal reminders and notes. + +[b]Enhanced Photo Albums[/b] + +Provides a photo album viewer that is a bit prettier than the normal interface. + +[b]Extended Identity Sharing[/b] + +By default your identity travels with you as you browse the matrix to remote sites - and they know who you are and can show you content that only you can see. With Extended Identity Sharing you can provide this information to any website you visit from within the matrix. + +[b]Expert Mode[/b] + +This allows you to see some advanced configuration options that would confuse some people or cause support issues. In particular this can give you full control over theme features and colours - so that you can tweak a large number of settings of the display theme to your liking. + +[b]Premium Channel[/b] + +This allows you to set restrictions and terms on those that connect with your channel. This may be used by celebrities or anybody else who wishes to describe their channel to people who wish to connect with it. In certain cases you may be asked for payment in order to connect. + +[b]Richtext Editor[/b] + +The status post editor is plaintext, but the matrix allows a wide range of markup using BBcode. The visual editor provides "what you see is what you get" for many of the most frequently used markup tags. + +[b]Post Preview[/b] + +Allows previewing posts and comments exactly as they would look on the page before publishing them. + +[b]Channel Sources[/b] + +Automatically import and re-publish channel content from other channels or feeds. This allows you to create sub-channels and super-channels from content provided elsewhere. The rules are that the content must be public, and the channel owner must give you permission to source their channel. + +[b]Even More Encryption[/b] + +Private messages are encrypted during transport and storage. In this day and age, this encyption may not be enough if your communications are extremely sensitive. This options lets you provide optional encryption of content "end-to-end" with a shared secret key. How the recipient learns the secret key is completely up to you. You can provide a hint such as "the name of aunt Claire's first dog". + +[b]Search by Date[/b] + +This provides the ability to select posts by date ranges + +[b]Collections Filter[/b] + +Enable widget to display stream posts only from selected collections. This also toggles the outbound permissions while you are viewing a collection. This is analogous to Google "circles" or Disapora "aspects". + +[b]Saved Searches[/b] + +Provides a search widget on your matrix page which can save selected search terms for re-use. + +[b]Personal Tab[/b] + +Enable tab to display only matrix posts that you've interacted with in some way, as an author or a contributor to the conversation. + +[b]New Tab[/b] + +Enables a tab to display all new matrix activity as a firehose or timeline. + +[b]Affinity Tool[/b] + +Filter matrix stream activity by the depth of your relationships + +[b]Edit Sent Posts[/b] + +Edit and correct posts and comments after sending + +[b]Tagging[/b] + +Ability to tag existing posts, including those written by others. + +[b]Post Categories[/b] + +Add categories to your channel posts + +[b]Saved Folders[/b] + +Ability to file posts under folders or tags for later recall + +[b]Dislike Posts[/b] + +Ability to dislike posts/comments + +[b]Star Posts[/b] + +Ability to mark special posts with a star indicator + +[b]Tag Cloud[/b] + +Provide a personal tag cloud on your channel page \ No newline at end of file diff --git a/doc/features.bb b/doc/features.bb new file mode 100644 index 000000000..8fcbef02f --- /dev/null +++ b/doc/features.bb @@ -0,0 +1,111 @@ +[b]Features[/b] + +[b][color= grey][size=24]Red Matrix Features[/size][/color][/b] + + +The Red Matrix is a general-purpose communication network, with several unique features. It is designed to be used by the widest range of users on the web, from non-technical bloggers, to expert PHP programmers and seasoned systems administrators. + +This page lists some of the core features of Red that are bundled with the official. As we any free and open source software, there many other extensions, additions, plugins, themes and configurations that limited only by the needs and imagination of Red's users. + +[b][color= grey][size=20]Built for Privacy and Freedom[/size][/color][/b] + +One of the design goals of Red is to enable easy communication on the web, while preserving privacy, if so desired by users. To achieve this goal, Red includes a number of features allowing arbitrary levels of privacy: + +[b][color= grey]Affinity Slider[/color][/b] + +When adding contacts in the Red Matrix, users have the option of assigning affinity levels to the new member in their contact list. For example, when adding someone who happens to be a person who's blog you follow, you could assign their channel an affinity level of "Acquaintances". + +[img]https://friendicared.net/photo/b07b0262e3146325508b81a9d1ae4a1e-0.png[/img] + +On the other hand, when adding a friend's channel, they could be placed under the affinity level of "Friends". + +At this point, Red's [i]Affinity Slider[/i] tool, which usually appears at the top of your "Matrix" page, allows content on your Red account to be displayed by desired affinity levels. By moving the slider to cover all contacts with affinity levels of "Me" to "Friends", only contacts (or channels) that are marked as "Me", "Best Friends", and "Friends" will be displayed on your page. All other channels and contacts, such as the contact added under affinity level "Acquaintances", will not be displayed. + +The Affinity Slider allows instantaneous filtering of large amounts of content, grouped by levels of closeness. + +[b][color= grey]Access Control Lists[/color][/b] + +When sharing content with someone in their contact list, users have the option of restricting who sees the content. By clicking on the padlock underneath the sharing box, one could choose desired recipients of the post, by clicking on their names. + +Once sent, the message will be viewable only by the sender and the selected recipients. In other words, the message will not appear on any public walls. + + +[b][color=grey]Private Message Encryption and Privacy Concerns[/color][/b] + +In the Red Matrix, public messages are not encrypted prior to leaving the originating server, they are also stored in the database in clear text. + +Messages marked [b][color=white]private[/color][/b], however, are encrypted with AES-CBC 256-bit symmetric cipher, which is then protected (encrypted in turn) by public key cryptography, based on 4096-bit RSA keys, associated with the channel that is sending the message. + +Each Red channel has it's own unique set of private and associated public RSA 4096-bit keys, generated when the channels is first created. + +[b][color= grey]TLS/SSL[/color][/b] + +For Red hubs that use TLS/SSL, client to server communications are encrypted via TLS/SSL. Given recent disclosures in the media regarding widespread, global surveillance and encryption circumvention by the NSA and GCHQ, it is reasonable to assume that HTTPS-protected communications may be compromised in various ways. + +[b][color= grey]Channel Settings[/color][/b] + +In Red, each channel allows fine-grained permissions to be set for various aspects of communication. For example, under the "Security and Privacy Settings" heading, each aspect on the left side of the page, has six (6) possible viewing/access options, that can be selected by clicking on the dropdown menu. + +[img]https://friendicared.net/photo/0f5be8da282858edd645b0a1a6626491.png[/img] + +The six options are: + + - Nobody except yourself. + - Only those you specifically allow. + - Anybody in your address book. + - Anybody on this website. + - Anybody in this network. + - Anybody on the Internet. + + +[b][color= grey]Account Cloning[/color][/b] + +Accounts in the Red Matrix are called to as [i]nomadic identities[/]. Nomadic, because a user's identity (see What is Zot? for the full explanation) is stuck to the hub where the identity was originally created. For example, when you created your Facebook, or Gmail account, it is tied to those services. They cannot function without Facebook.com or Gmail.com. + +By contrast, say you've created a Red identity called [b][color=white]tina@redhub.com[/color][/b]. You can clone it to another Red hub by choosing the same, or a different name: [b][color=white]liveForever@SomeRedMatrixHub.info[/color][/b] + +Both channels are now synchronized, which means all your contacts and preferences will be duplicated on your clone. It doesn't matter whether you send a post from your original hub, or the new hub. Posts will be mirrored on both accounts. + +This is a rather revolutionary feature, if we consider some scenarios: + + - What happens if the hub where an identity is based, suddenly goes offline? Without cloning, a user will not be able to communicate until that hub comes back online. With cloning, you just log into your cloned account, and life goes on happily ever after. + + - The administrator of your hub can no longer afford to pay for his free and public Red Matrix hub. He announces that the hub will be shutting down in two weeks. This gives you ample time to clone your identity(ies) and preserve your Red relationships, friends and content. + + - What if your identity is subject to government censorship? Your hub provider is compelled to delete your account, along with any identities and associated data. With cloning, the Red Matrix offers [b][color=white]censorship resistance [/color][/b]. You can have hundreds of clones, if you wanted to, all named different, and existing on many different hubs, strewn around the internet. + +Red offers interesting new possibilities for privacy. You can read more at the <<Private Communications Best Practices>> page. + +Some caveats apply. For a full explanation of identity cloning, read the <HOW TO CLONE MY IDENTITY>. + + +[b][color= grey]Account Backup[/color][/b] + +Red offers a simple, one-click account backup, where you can download a complete backup of your profile(s). + +Backups can then be used to clone or restore a profile. + +[b][color= grey]Account Deletion[/color][/b] + +Accounts can be immediately deleted by clicking on a link. That's it. All associated content is immediately deleted from the matrix (this includes posts and any other content produced by the deleted profile). + +[b][color=grey][size=20]Content Creation[/size][/color][/b] + +[b][color=white]Writing Posts[/color][/b] + +Red supports a number of different ways of adding content, from a graphical text editor, to various types of markup and pure HTML. + +Red bundles the TinyMCE rich text editor, which can be turned on under "Settings." +For user who prefer not to use TinyMCE, content can be entered by typing BBCode markup. +Furthermore, when creating "Websites" or using "Comanche" and its PCL[FINISH], content can be entered in HTML, Markdown and plain text. + +[b][color=white]Deletion of content[/color][/b] +Any content created in the Red Matrix remains under the control of the user (or channel) that originally created. At any time, a user can delete a message, or a range of messages. The deletion process ensures that the content is deleted, regardless of whether it was posted on a channel's primary (home) hub, or on another hub, where the channel was remotely authenticated via Zot. + +[b][color=white]Media[/color][/b] +Similar to any other modern blogging system, social network, or a micro-blogging service, Red supports the uploading of files, embedding of videos, linking web pages. + +[b][color=white]Previewing[/color][/b] +Post can be previewed prior to sending. + +Return to the [url=[baseurl]/help/main]Main documentation page[/url] \ No newline at end of file diff --git a/doc/git_for_non_developers.bb b/doc/git_for_non_developers.bb new file mode 100644 index 000000000..e68634da1 --- /dev/null +++ b/doc/git_for_non_developers.bb @@ -0,0 +1,46 @@ +[b]Git For Non-Developers[/b] + +So you're handling a translation, or you're contributing to a theme, and every time you make a pull request you have to talk to one of the developers before your changes can be merged in? + +Chances are, you just haven't found a quick how-to explaining how to keep things in sync on your end. It's really very easy. + +After you've created a fork of the repo (just click "fork" at github), you need to clone your own copy. + +For the sake of examples, we'll assume you're working on a theme called redexample (which does not exist). + +[code]git clone https://github.com/username/red.git[/code] + +Once you've done that, cd into the directory, and add an upstream. + +[code] +cd red +git remote add upstream https://github.com/friendica/red +[/code] + +From now on, you can pull upstream changes with the command +[code]git fetch upstream[/code] + +Before your changes can be merged automatically, you will often need to merge upstream changes. + +[code] +git merge upstream/master +[/code] + +You should always merge upstream before pushing any changes, and [i]must[/i] merge upstream with any pull requests to make them automatically mergeable. + +99% of the time, this will all go well. The only time it won't is if somebody else has been editing the same files as you - and often, only if they have been editing the same lines of the same files. If that happens, that would be a good time to request help until you get the hang of handling your own merge conflicts. + +Then you just need to add your changes [code]git add view/theme/redexample/[/code] + +This will add all the files in view/theme/redexample and any subdirectories. If your particular files are mixed throughout the code, you should add one at a time. Try not to do git add -a, as this will add everything, including temporary files (we mostly, but not always catch those with a .gitignore) and any local changes you have, but did not intend to commit. + +Once you have added all the files you have changed, you need to commit them. [code]git commit[/code] + +This will open up an editor where you can describe the changes you have made. Save this file, and exit the editor. + +Finally, push the changes to your own git +[code]git push[/code] + +And that's it! + +Return to the [url=[baseurl]/help/main]Main documentation page[/url] \ No newline at end of file diff --git a/doc/install.bb b/doc/install.bb new file mode 100644 index 000000000..ef9ed2ca6 --- /dev/null +++ b/doc/install.bb @@ -0,0 +1,103 @@ +[b]Red Installation[/b] + +Red should run on commodity hosting platforms - such as those used to host Wordpress blogs and Drupal websites. But be aware that Red is more than a simple web application. The kind of functionality offered by Red requires a bit more of the host system than the typical blog. Not every PHP/MySQL hosting provider will be able to support Red. Many will. But **please** review the requirements and confirm these with your hosting provider prior to installation. + +Also if you encounter installation issues, please let us know via the Github issue tracker (#^[url=https://github.com/friendica/red/issues]https://github.com/friendica/red/issues[/url]). Please be as clear as you can about your operating environment and provide as much detail as possible about any error messages you may see, so that we can prevent it from happening in the future. Due to the large variety of operating systems and PHP platforms in existence we may have only limited ability to debug your PHP installation or acquire any missing modules - but we will do our best to solve any general code issues. + +Before you begin: Choose a domain name or subdomain name for your server. + +1. Requirements + - Apache with mod-rewrite enabled and "AllowOverride All" so you can use a +local .htaccess file + + - PHP 5.3 or later + - PHP *command line* access with register_argc_argv set to true in the +php.ini file + - curl, gd, mysql, and openssl extensions + - some form of email server or email gateway such that PHP mail() works + - mcrypt (optional; used for server-to-server message encryption) + + - Mysql 5.x + + - ability to schedule jobs with cron (Linux/Mac) or Scheduled Tasks +(Windows) [Note: other options are presented in Section 7 of this document] + + - Installation into a top-level domain or sub-domain (without a +directory/path component in the URL) is preferred. Directory paths will +not be as convenient to use and have not been thoroughly tested. + + + [Dreamhost.com offers all of the necessary hosting features at a +reasonable price. If your hosting provider doesn't allow Unix shell access, +you might have trouble getting everything to work.] + +2. Unpack the Red files into the root of your web server document area. + + - If you are able to do so, we recommend using git to clone the source repository rather than to use a packaged tar or zip file. This makes the software much easier to update. The Linux command to clone the repository into a directory "mywebsite" would be + + `git clone #^[url=https://github.com/friendica/red.git]https://github.com/friendica/red.git[/url] mywebsite` + + - and then you can pick up the latest changes at any time with + + `git pull` + + - make sure folder *view/tpl/smarty3* exists and is writable by webserver + + `mkdir view/tpl/smarty3` + + `chmod 777 view/smarty3` + + - For installing addons + + - First you should be **on** your website folder + + `cd mywebsite` + + - Then you should clone the addon repository (separtely) + + `git clone #^[url=https://github.com/friendica/red-addons.git]https://github.com/friendica/red-addons.git[/url] addon` + + - For keeping the addon tree updated, you should be on you addon tree and issue a git pull + + `cd mywebsite/addon` + + `git pull` + + - If you copy the directory tree to your webserver, make sure + that you also copy .htaccess - as "dot" files are often hidden + and aren't normally copied. + + +3. Create an empty database and note the access details (hostname, username, password, database name). + +4. Visit your website with a web browser and follow the instructions. Please note any error messages and correct these before continuing. + +5. *If* the automated installation fails for any reason, check the following: + + - ".htconfig.php" exists ... If not, edit htconfig.php and change system settings. Rename +to .htconfig.php + - Database is populated. ... If not, import the contents of "database.sql" with phpmyadmin +or mysql command line + +6. At this point visit your website again, and register your personal account. +Registration errors should all be recoverable automatically. +If you get any *critical* failure at this point, it generally indicates the +database was not installed correctly. You might wish to move/rename +.htconfig.php to another name and empty (called 'dropping') the database +tables, so that you can start fresh. + +7. Set up a cron job or scheduled task to run the poller once every 15 +minutes in order to perform background processing. Example: + + `cd /base/directory; /path/to/php include/poller.php` + +Change "/base/directory", and "/path/to/php" as appropriate for your situation. + +If you are using a Linux server, run "crontab -e" and add a line like the +one shown, substituting for your unique paths and settings: + +`*/15 * * * * cd /home/myname/mywebsite; /usr/bin/php include/poller.php` + +You can generally find the location of PHP by executing "which php". If you +have troubles with this section please contact your hosting provider for +assistance. Red will not work correctly if you cannot perform this step. \ No newline at end of file diff --git a/doc/intro_for_developers.bb b/doc/intro_for_developers.bb new file mode 100644 index 000000000..002088be3 --- /dev/null +++ b/doc/intro_for_developers.bb @@ -0,0 +1,99 @@ +[b]Red Developer Guide[/b] + +[b]File system layout:[/b] + +[addon] optional addons/plugins + +[boot.php] Every process uses this to bootstrap the application structure + +[doc] Help Files + +[images] core required images + +[include] The "model" in MVC - (back-end functions), also contains PHP "executables" for background processing + +[index.php] The front-end controller for web access + +[install] Installation and upgrade files and DB schema + +[js] core required javascript + +[library] Third party modules (must be license compatible) + +[mod] Controller modules based on URL pathname (e.g. #^[url=http://sitename/foo]http://sitename/foo[/url] loads mod/foo.php) + +[spec] protocol specifications + +[util] translation tools, main English string database and other miscellaneous utilities + +[version.inc] contains current version (auto-updated via cron for the master repository and distributed via git) + +[view] theming and language files + +[view/(css,js,img,php,tpl)] default theme files + +[view/(en,it,es ...)] language strings and resources + +[view/theme/] individual named themes containing (css,js,img,php,tpl) over-rides + +[b]The Database:[/b] + + [li]abook - contact table, replaces Friendica 'contact'[/li] + [li]account - service provider account[/li] + [li]addon - registered plugins[/li] + [li]attach - file attachments[/li] + [li]auth_codes - OAuth usage[/li] + [li]cache - TBD[/li] + [li]challenge - old DFRN structure, may re-use or may deprecate[/li] + [li]channel - replaces Friendica 'user'[/li] + [li]clients - OAuth usage[/li] + [li]config - main configuration storage[/li] + [li]event - Events[/li] + [li]fcontact - friend suggestion stuff[/li] + [li]ffinder - friend suggestion stuff[/li] + [li]fserver - obsolete[/li] + [li]fsuggest - friend suggestion stuff[/li] + [li]gcign - ignored friend suggestions[/li] + [li]gcontact - social graph storage, obsolete[/li] + [li]glink - social graph storage - obsolete[/li] + [li]group - privacy groups[/li] + [li]group_member - privacy groups[/li] + [li]hook - plugin hook registry[/li] + [li]hubloc - Red location storage, ties a location to an xchan[/li] + [li]intro - DFRN introductions, may be obsolete[/li] + [li]item - posts[/li] + [li]item_id - other identifiers on other services for posts[/li] + [li]mail - private messages[/li] + [li]manage - may be unused in Red, table of accounts that can "su" each other[/li] + [li]notify - notifications[/li] + [li]notify-threads - need to factor this out and use item thread info on notifications[/li] + [li]outq - Red output queue[/li] + [li]pconfig - personal (per channel) configuration storage[/li] + [li]photo - photo storage[/li] + [li]profile - channel profiles[/li] + [li]profile_check - DFRN remote auth use, may be obsolete[/li] + [li]queue - old Friendica queue, obsolete[/li] + [li]register - registrations requiring admin approval[/li] + [li]session - web session storage[/li] + [li]site - site table to find directory peers[/li] + [li]spam - unfinished[/li] + [li]term - item taxonomy (categories, tags, etc.) table[/li] + [li]tokens - OAuth usage[/li] + [li]verify - general purpose verification structure[/li] + [li]xchan - replaces 'gcontact', list of known channels in the universe[/li] + [li]xlink - "friends of friends" linkages derived from poco[/li] + [li]xprof - if this hub is a directory server, contains basic public profile info of everybody in the network[/li] + [li]xtag - if this hub is a directory server, contains tags or interests of everybody in the network[/li] + + +[b]How to theme Red - by Olivier Migeot[/b] + +This is a short documentation on what I found while trying to modify Red's appearance. + +First, you'll need to create a new theme. This is in /view/theme, and I chose to copy 'redbasic' since it's the only available for now. Let's assume I named it . + +Oh, and don't forget to rename the _init function in /php/theme.php to be _init() instead of redbasic_init(). + +At that point, if you need to add javascript or css files, add them to /js or /css, and then "register" them in _init() through head_add_js('file.js') and head_add_css('file.css'). + +Now you'll probably want to alter a template. These can be found in in /view/tpl OR view//tpl. All you should have to do is copy whatever you want to tweak from the first place to your theme's own tpl directory. \ No newline at end of file diff --git a/doc/main.bb b/doc/main.bb new file mode 100644 index 000000000..5db1736e9 --- /dev/null +++ b/doc/main.bb @@ -0,0 +1,59 @@ +[b]Red Matrix Documentation and Resources[/b] + +Contents + +[zrl=[baseurl]/help/about]What is the Red Matrix?[/zrl] +[zrl=[baseurl]/help/features]Red Matrix Features[/zrl] +[zrl=[baseurl]/help/what_is_zot] What is Zot?[/zrl] + +[b]Using the Red Matrix[/b] + +[zrl=[baseurl]/help/account_basics]Account Basics[/zrl] +[zrl=[baseurl]/help/profiles]Profiles[/zrl] +[zrl=[baseurl]/help/channels]Channels[/zrl] +[zrl=[baseurl]/help/connecting_to_channels]Connecting to Channels[/zrl] +[zrl=[baseurl]/help/permissions]Permissions[/zrl] +[zrl=[baseurl]/help/cloud]Cloud Storage[/zrl] + +[b]But Wait - There's More. MUCH More...[/b] + +[zrl=[baseurl]/help/tags_and_mentions]Tags and Mentions[/zrl] +[zrl=[baseurl]/help/webpages]Web Pages[/zrl] +[zrl=[baseurl]/help/remove_account]Remove Account[/zrl] +[zrl=[baseurl]/help/extra_features]BBcode reference for posts and comments[/zrl] +[zrl=[baseurl]/help/checking_account_quota_usage]Checking Account Quota Usage[/zrl] +[zrl=[baseurl]/help/cloud_desktop_clients]Cloud Desktop Clients[/zrl] + +[b]For Hub Administrators[/b] + +[zrl=[baseurl]/help/debian_install]Easy Install on Debian via script[/zrl] +[zrl=[baseurl]/help/red2pi]Installing Red on the Raspberry Pi[/zrl] +[zrl=[baseurl]/help/problems-following-an-update]Problems Following A Software Update[/zrl] +[zrl=[baseurl]/help/troubleshooting]Troubleshooting Tips[/zrl] + + +[b]Technical Documentation[/b] + +[zrl=[baseurl]/help/install]Install[/zrl] +[zrl=[baseurl]/help/comanche]Comanche Page Descriptions[/zrl] +[zrl=[baseurl]/help/plugins]Plugins[/zrl] +[zrl=[baseurl]/help/schema_development]Schemas[/zrl] +[zrl=[baseurl]/help/developers]Developers[/zrl] +[zrl=[baseurl]/help/intro_for_developers]Intro for Developers[/zrl] +[zrl=[baseurl]/help/api_functions]API functions[/zrl] +[zrl=[baseurl]/help/developer_function_primer]Red Functions 101[/zrl] +[zrl=https://friendicared.net/doc/html/]Code Reference (doxygen generated - sets cookies)[/zrl] +[zrl=[baseurl]/help/to_do_doco]To-Do list for the Red Documentation Project[/zrl] +[zrl=[baseurl]/help/to_do_code]To-Do list for Developers[/zrl] +[zrl=[baseurl]/help/git_for_non_developers]Git for Non-Developers[/zrl] + +[b]External Resources[/b] + +[zrl=[baseurl]/help/external-resource-links]External Resource Links[/zrl] +[url=https://github.com/friendica/red]Main Website[/url] +[url=https://github.com/friendica/red-addons]Addon Website[/url] +[url=https://zothub.com/channel/one]Development Channel[/url] + +[b]About[/b] + +[url=https://friendicared.net/siteinfo] Site/Version Info[/url] \ No newline at end of file diff --git a/doc/permissions.bb b/doc/permissions.bb new file mode 100644 index 000000000..69ee62139 --- /dev/null +++ b/doc/permissions.bb @@ -0,0 +1,97 @@ +[b]Permissions[/b] + +Permissions in the Red Matrix are more complete than you may be used to. This allows us to define more fine graded relationships than the black and white "this person is my friend, so they can do everything" or "this person is not my friend, so they can't do anything" permissions you may find elsewhere. + +[b]Default Permissions[/b] + +On your settings page, you will find a list of default permissions. These permissions are automatically applied to everybody unless you specify otherwise. The scope of these permissions varies from "Only me" to "Everybody" - though some scopes may not be available for some permissions. For example, you can't allow "anybody on the internet" to send you private messages, because we'd have no way to identify the sender, therefore no way to reply to them. + +The scopes of permissions are: + +[li]Nobody Except Yourself. This is self explanatory. Only you will be allowed to use this permission.[/li] + +[li]Only those you specifically allow. By default, people you are not connected to, and all new contacts will have this permission denied. You will be able to make exceptions for individual channels on their contact edit screen.[/li] + +[li]Anybody in your address book. Anybody you do not know will have this permission denied, but anybody you accept as a contact will have this permission approved. This is the way most legacy platforms handle permissions.[/li] + +[li]Anybody On This Website. Anybody using the same website as you will have permission approved. Anybody who registered at a different site will have this permission denied.[/li] + +[li]Anybody in this network. Anybody in the Red Matrix will have this permission approved. Even complete strangers. However, anybody not logged in/authenticated will have this permission denied. +Anybody on the internet. Completely public. This permission will be approved for anybody at all.[/li] + +The individual permissions are: + +[i]Can view my "public" stream and posts.[/i] + +This permision determines who can view your channel "stream" that is, the non-private posts that appear on the "home" tab when you're logged in. + +[i]Can view my "public" channel profile.[/i] + +This permission determines who can view your channel's profile. This refers to the "about" tab + +[i]Can view my "public" photo albums.[/i] + + This permission determines who can view your photo albums. Individual photographs may still be posted to a more private audience. + +[i]Can view my "public" address book.[/i] + +This permission determines who can view your contacts. These are the connections displayed in the "View connections" section. + +[i]Can view my "public" file storage.[/i] + +This permission determines who can view your public files. This isn't done yet, so this is placeholder text. + +[i]Can view my "public" pages.[/i] + +This permission determines who can view your public web pages. This isn't done yet, so this is placeholder text. + +[i]Can send me their channel stream and posts.[/i] + +This permission determines whose posts you will view. If your channel is a personal channel (ie, you as a person), you would probably want to set this to "anyone in my address book" at a minimum. A personal notes channel would probably want to choose "nobody except myself". Setting this to "Anybody in the network" will show you posts from complete strangers, which is a good form of discovery. + +[i]Can post on my channel page ("wall").[/i] + +This permission determines who can write to your wall when clicking through to your channel. + +[i]Can comment on my posts.[/i] + +This permission determines who can comment on posts you create. Normally, you would want this to match your "can view my public pages" permission + +[i]Can send me private mail messages.[/i] + +This determines who can send you private messages (zotmail). + +[i]Can post photos to my photo albums.[/i] + +This determines who can post photographs in your albums. This is very useful for forum-like channels where connections may not be connected to each other. + +[i]Can forward to all my channel contacts via post tags.[/i] + +Using @- mentions will reproduce a copy of your post on the profile specified, as though you posted on the channel wall. This determines if people can post to your channel in this way. + +[i]Can chat with me (when available).[/i] + +This determines who can join the public chat rooms created by your channel. + +[i]Can write to my "public" file storage.[/i] + +This determines who can upload files to your public file storage. This isn't done yet, so this is placeholder text. + +[i]Can edit my "public" pages.[/i] + +This determines who can edit your webpages. This is useful for wikis or sites with multiple editors. + +[i]Can administer my channel resources.[/i] + +This determines who can have full control of your channel. This should normally be set to "nobody except myself". + +[i]Note:[/i] +Plugins/addons may provide special permission settings, so you may be offered additional permission settings beyond what is described here. + +If you have set any of these permissions to "only those I specifically allow", you may specify indivudal permissions on the connnection edit screen. + +[b]Affinity[/b] + +The connection edit screen offers a slider to select a degree of friendship with the connnection (this tool is enabled through the "Extra Features" tab of your Settings page). Think of this as a measure of how much you like or dislike them. 1 is for people you like, whose posts you want to see all the time. 99 is for people you don't care for, and whose posts you might only wish to look at occasionally. Once you've assigned a value here, you can use the affinity tool on the matrix page to filter content based on this number. + +The slider on the matrix page has both a minimum and maximum value. Posts will only be shown from people who fall between this range. Affinity has no relation to permissions, and is only useful in conjunction with the affinity tool feature. \ No newline at end of file diff --git a/doc/plugins.bb b/doc/plugins.bb new file mode 100644 index 000000000..2440de762 --- /dev/null +++ b/doc/plugins.bb @@ -0,0 +1,257 @@ +[b]Plugins[/b] + +So you want to make the Red Matrix do something it doesn't already do. There are lots of ways. But let's learn how to write a plugin or addon. + + +In your Red Matrix folder/directory, you will probably see a sub-directory called 'addon'. If you don't have one already, go ahead and create it. +[code] + mkdir addon +[/code] +Then figure out a name for your addon. You probably have at least a vague idea of what you want it to do. For our example I'm going to create a plugin called 'randplace' that provides a somewhat random location for each of your posts. The name of your plugin is used to find the functions we need to access and is part of the function names, so to be safe, use only simple text characters. + +Once you've chosen a name, create a directory beneath 'addon' to hold your working file or files. +[code] + mkdir addon/randplace +[/code] +Now create your plugin file. It needs to have the same name, and it's a PHP script, so using your favourite editor, create the file +[code] + addon/randplace/randplace.php +[/code] +The very first line of this file needs to be +[code] + <?php +[/code] +Then we're going to create a comment block to describe the plugin. There's a special format for this. We use /* ... */ comment-style and some tagged lines consisting of +[code] + /** + * + * Name: Random Place (here you can use better descriptions than you could in the filename) + * Description: Sample Red Matrix plugin, Sets a random place when posting. + * Version: 1.0 + * Author: Mike Macgirvin <mike@zothub.com> + * + */ +[/code] +These tags will be seen by the site administrator when he/she installs or manages plugins from the admin panel. There can be more than one author. Just add another line starting with 'Author:'. + +The typical plugin will have at least the following functions: +[code] + pluginname_load() + pluginname_unload() +[/code] +In our case, we'll call them randplace_load() and randplace_unload(), as that is the name of our plugin. These functions are called whenever we wish to either initialise the plugin or remove it from the current webpage. Also if your plugin requires things like altering the database schema before it can run for the very first time, you would likely place these instructions in the functions named +[code] + pluginname_install() + pluginname_uninstall() +[/code] + +Next we'll talk about **hooks**. Hooks are places in the Red Matrix code where we allow plugins to do stuff. There are a [lot of these](help/Hooks), and they each have a name. What we normally do is use the pluginname_load() function to register a "handler function" for any hooks you are interested in. Then when any of these hooks are triggered, your code will be called. + +We register hook handlers with the 'register_hook()' function. It takes 3 arguments. The first is the hook we wish to catch, the second is the filename of the file to find our handler function (relative to the base of your Red Matrix installation), and the third is the function name of your handler function. So let's create our randplace_load() function right now. + +[code] + function randplace_load() { + register_hook('post_local', 'addon/randplace/randplace.php', 'randplace_post_hook'); + + register_hook('feature_settings', 'addon/randplace/randplace.php', 'randplace_settings'); + register_hook('feature_settings_post', 'addon/randplace/randplace.php', 'randplace_settings_post'); + + } +[/code] + +So we're going to catch three events, 'post_local' which is triggered when a post is made on the local system, 'feature_settings' to set some preferences for our plugin, and 'feature_settings_post' to store those settings. + +Next we'll create an unload function. This is easy, as it just unregisters our hooks. It takes exactly the same arguments. +[code] + function randplace_unload() { + unregister_hook('post_local', 'addon/randplace/randplace.php', 'randplace_post_hook'); + + unregister_hook('feature_settings', 'addon/randplace/randplace.php', 'randplace_settings'); + unregister_hook('feature_settings_post', 'addon/randplace/randplace.php', 'randplace_settings_post'); + + } +[/code] + +Hooks are called with two arguments. The first is always $a, which is our global App structure and contains a huge amount of information about the state of the web request we are processing; as well as who the viewer is, and what our login state is, and the current contents of the web page we're probably constructing. + +The second argument is specific to the hook you're calling. It contains information relevant to that particular place in the program, and often allows you to look at, and even change it. In order to change it, you need to add '&' to the variable name so it is passed to your function by reference. Otherwise it will create a copy and any changes you make will be lost when the hook process returns. Usually (but not always) the second argument is a named array of data structures. Please see the "hook reference" (not yet written as of this date) for details on any specific hook. Occasionally you may need to view the program source to see precisely how a given hook is called and how the results are processed. + +Let's go ahead and add some code to implement our post_local hook handler. +[code] + function randplace_post_hook($a, &$item) { + + /** + * + * An item was posted on the local system. + * We are going to look for specific items: + * - A status post by a profile owner + * - The profile owner must have allowed our plugin + * + */ + + logger('randplace invoked'); + + if(! local_user()) /* non-zero if this is a logged in user of this system */ + return; + + if(local_user() != $item['uid']) /* Does this person own the post? */ + return; + + if(($item['parent']) || ($item['item_restrict'])) { + /* If the item has a parent, or item_restrict is non-zero, this is a comment or something else, not a status post. */ + return; + } + + /* Retrieve our personal config setting */ + + $active = get_pconfig(local_user(), 'randplace', 'enable'); + + if(! $active) + return; + /** + * + * OK, we're allowed to do our stuff. + * Here's what we are going to do: + * load the list of timezone names, and use that to generate a list of world cities. + * Then we'll pick one of those at random and put it in the "location" field for the post. + * + */ + + $cities = array(); + $zones = timezone_identifiers_list(); + foreach($zones as $zone) { + if((strpos($zone,'/')) && (! stristr($zone,'US/')) && (! stristr($zone,'Etc/'))) + $cities[] = str_replace('_', ' ',substr($zone,strpos($zone,'/') + 1)); + } + + if(! count($cities)) + return; + $city = array_rand($cities,1); + $item['location'] = $cities[$city]; + + return; + } +[/code] + +Now let's add our functions to create and store preference settings. +[code] + /** + * + * Callback from the settings post function. + * $post contains the global $_POST array. + * We will make sure we've got a valid user account + * and that only our own submit button was clicked + * and if so set our configuration setting for this person. + * + */ + + function randplace_settings_post($a,$post) { + if(! local_user()) + return; + if($_POST['randplace-submit']) + set_pconfig(local_user(),'randplace','enable',intval($_POST['randplace'])); + } + + + + /** + * + * Called from the Feature Setting form. + * The second argument is a string in this case, the HTML content region of the page. + * Add our own settings info to the string. + * + * For uniformity of settings pages, we use the following convention + * <div class="settings-block"> + * <h3>title</h3> + * .... settings html - many elements will be floated... + * <div class="clear"></div> <!-- generic class which clears all floats --> + * <input type="submit" name="pluginnname-submit" class="settings-submit" ..... /> + * </div> + */ + + + + function randplace_settings(&$a,&$s) { + + if(! local_user()) + return; + + /* Add our stylesheet to the page so we can make our settings look nice */ + + head_add_css(/addon/randplace/randplace.css'); + + /* Get the current state of our config variable */ + + $enabled = get_pconfig(local_user(),'randplace','enable'); + + $checked = (($enabled) ? ' checked="checked" ' : ''); + + /* Add some HTML to the existing form */ + + $s .= '<div class="settings-block">'; + $s .= '<h3>' . t('Randplace Settings') . '</h3>'; + $s .= '<div id="randplace-enable-wrapper">'; + $s .= '<label id="randplace-enable-label" for="randplace-checkbox">' . t('Enable Randplace Plugin') . '</label>'; + $s .= '<input id="randplace-checkbox" type="checkbox" name="randplace" value="1" ' . $checked . '/>'; + $s .= '</div><div class="clear"></div>'; + + /* provide a submit button */ + + $s .= '<div class="settings-submit-wrapper" ><input type="submit" name="randplace-submit" class="settings-submit" value="' . t('Submit') . '" /></div></div>'; + + } + +[/code] + + + +***Advanced Plugins*** + +Sometimes your plugins want to provide a range of new functionality which isn't provided at all or is clumsy to provide using hooks. In this case your plugin can also act as a 'module'. A module in our case refers to a structured webpage handler which responds to a given URL. Then anything which accesses that URL will be handled completely by your plugin. + +The key to this is to create a simple function named pluginname_module() which does nothing. +[code] + function randplace_module() { return; } +[/code] +Once this function exists, the URL #^[url=https://yoursite/randplace]https://yoursite/randplace[/url] will access your plugin as a module. Then you can define functions which are called at various points to build a webpage just like the modules in the mod/ directory. The typical functions and the order which they are called is +[code] + modulename_init($a) // (e.g. randplace_init($a);) called first - if you wish to emit json or xml, + // you should do it here, followed by killme() which will avoid the default action of building a webpage + modulename_aside($a) // Often used to create sidebar content + modulename_post($a) // Called whenever the page is accessed via the "post" method + modulename_content($a) // called to generate the central page content. This function should return a string + // consisting of the central page content. +[/code] +Your module functions have access to the URL path as if they were standalone programs in the Unix operating system. For instance if you visit the page +[code] + https://yoursite/randplace/something/somewhere/whatever +[/code] +we will create an argc/argv list for use by your module functions +[code] + $x = argc(); $x will be 4, the number of path arguments after the sitename + + for($x = 0; $x < argc(); $x ++) + echo $x . ' ' . argv($x); + + + 0 randplace + 1 something + 2 somewhere + 3 whatever +[/code] + +***Porting Friendica Plugins*** + +The Red Matrix uses a similar plugin architecture to the Friendica project. The authentication, identity, and permissions systems are completely different. Many Friendica can be ported reasonably easily by renaming a few functions - and then ensuring that the permissions model is adhered to. The functions which need to be renamed are: + +[li] Friendica's pluginname_install() is pluginname_load()[/li] + +[li] Friendica's pluginname_uninstall() is pluginname_unload()[/li] + +The Red Matrix has _install and _uninstall functions but these are used differently. + +[li] Friendica's "plugin_settings" hook is called "feature_settings"[/li] + +[li] Friendica's "plugin_settings_post" hook is called "feature_settings_post"[/li] + +Changing these will often allow your plugin to function, but please double check all your permission and identity code because the concepts behind it are completely different in the Red Matrix. Many structured data names (especially DB schema columns) are also quite different. \ No newline at end of file diff --git a/doc/problems-following-an-update.bb b/doc/problems-following-an-update.bb new file mode 100644 index 000000000..bb2e07a07 --- /dev/null +++ b/doc/problems-following-an-update.bb @@ -0,0 +1,37 @@ +[b]Problems Following An Update[/b] + +A good 90% of all bugs encountered immediately after updating the code to the latest version are simple cache errors of one sort or another. If you update and find something very obvious is broken - like your matrix page doesn't load, notifications are missing, or comment boxes are missing - the chances are it's not a bug at all. Breaking basic functionality is the kind of thing developers tend to notice. + +If this happens to you, there are a few simple steps to take before resorting to the support forums: + +[b]Browser Cache[/b] + +Symptoms: Menus do not expand, ACL selector does not open, progress indicator does not display (or loops forever), Matrix and channel pages do not load. + +Force reload the page. Shift reload, or ctrl+f5. Occasionally, but very, very rarely, you will also need to clear the session data - which is achieved by restarting the browser. + +[b]FastCGI[/b] + +Symptoms: Incorrect variables. The basic UI mostly works, but displays incorrect content or is missing content entirely. + +If you're using php5-fpm, this problem is usually resolved with [code]service php5-fpm restart[/code] + +[b]Smarty Cache[/b] + +Symptoms: + +1) [zrl=https://beardyunixer.com/page/jargon/wsod]White Screen Of Death[/zrl]. This is most prevalent on the settings and admin pages. + +2) Missing icons, tabs, menus or features. + +We use the Smarty3 template engine to generate pages. These templates are compiled before they are displayed. Occasionally, a new or modified template will fail to overwrite the old compiled version. To clear the Smarty cache, delete all the files in view/tpl/smarty3/compiled [b]but do not delete the directory itself[/b]. Templates will then be recompiled on their next access. + +[b]Theme Issues[/b] + +There are many themes for The Red Matrix. Only Redbasic is officialy supported by the core developers. This applies [i]even if a core developer happens to support an additional theme[/i]. This means new features are only guaranteed to work in Redbasic. + +Redbasic uses a few javascript libraries that are done differently, or entirely absent in other themes. This means new features may only work properly in Redbasic. Before reporting an issue, therefore, you should switch to Redbasic to see if it exists there. If the issue goes away, this is not a bug - it's a theme that isn't up to date. + +Should you report an issue with the theme developers then? No. Theme developers use their themes. Chances are, they know. Give them two or three days to catch up and [i]then[/i] report the issue if it's still not fixed. There are two workarounds for this situation. Firstly, you can temporarily use Redbasic. Secondly, most themes are open source too - open a pull request and make yourself a friend. + +Return to the [url=[baseurl]/help/troubleshooting]Troubleshooting documentation page[/url] \ No newline at end of file diff --git a/doc/profiles.bb b/doc/profiles.bb new file mode 100644 index 000000000..e9b1d5571 --- /dev/null +++ b/doc/profiles.bb @@ -0,0 +1,33 @@ +[b]Profiles[/b] + +Red has unlimited profiles. You may use different profiles to show different "sides of yourself" to different audiences. This is different to having different channels. Different channels allow for completely different sets of information. You may have a channel for yourself, a channel for your sports team, a channel for your website, or whatever else. A profile allows for finely graded "sides" of each channel. For example, your default public profile might say "Hello, I'm Fred, and I like laughing". You may show your close friends a profile that adds "and I also enjoy dwarf tossing". + +You always have a profile known as your "default" or "public" profile. This profile is always available to the general public and cannot be hidden (there may be rare exceptions on privately run or disconnected sites). You may, and probably should restrict the information you make available on your public profile. + +That said, if you want other friends to be able to find you, it helps to have the following information in your public profile... + +[li]Your real name or at least a nickname everybody knows[/li] +[li]A photo of you[/li] +[li]Your location on the planet, at least to a country level.[/li] + +Without this basic information, you could get very lonely here. Most people (even your best friends) will not try and connect with somebody that has a fake name or doesn't contain a real photo. + +In addition, if you'd like to meet people that share some general interests with you, please take a moment and add some "Keywords" to your profile. Such as "music, linux, photography" or whatever. You can add as many keywords as you like. + +To create an alternate profile, select "View Profile" from the menu of your Red Matrix site, then click on the pencil at your profile photo. You may edit an existing profile, change the profile photo, add things to a profile or create a new profile. You may also create a "clone" of an existing profile if you only wish to change a few items but don't wish to enter all the information again. To do that, click on the profile you want to clone and choose "Clone this profile" there. + +In the list of your profiles, you can also choose the contacts who can see a specific profile. Just click on "Edit visibility" next to the profile in question (only available for the profiles that are not your default profile) and then click on user images to add them to or remove them from the group of people who can see this profile. + +Once a profile has been selected, when the person views your profile, they will see the private profile you have assigned. If they are not authenticated, they will see your public profile. + +There is a setting which allows you to publish your profile to a directory and ensure that it can be found by others. You can change this setting on the "Settings" page. + +If you do not wish to be found be people unless you give them your channel address, you may leave your profile unpublished. + +[b]Keywords and Directory Search[/b] + +On the directory page, you may search for people with published profiles. The search is typically for your nickname or part of your full name. However this search will also match against other profile fields - such as gender, location, "about", work, and education. You may also include "Keywords" in your default profile - which may be used to search for common interests with other members. Keywords are used in the channel suggestion tool and although they aren't visible in the directory, they are shown if people visit your profile page. + +Directory searches are also able to use "boolean" logic so that you can search for "+lesbian +Florida" and find those who's sexual preference (or keywords) contain the world "lesbian" and that live in Florida. See the section on "Topical Tags" on the Tags-and-Mentions page for more information on performing boolean searches. + +On your Connnections page and in the directory there is a link to "Suggestions" or "Channel Suggestions", respectively. This will find channels who have matching and/or similar keywords. The more keywords you provide, the more relevant the search results that are returned. These are sorted by relevance. \ No newline at end of file diff --git a/doc/red2pi.bb b/doc/red2pi.bb new file mode 100644 index 000000000..2abba8ec5 --- /dev/null +++ b/doc/red2pi.bb @@ -0,0 +1,349 @@ +[b]How to install the Red Matrix on a Raspberry Pi[/b] + +[zrl=[baseurl]/help/main] Back to the main page[/zrl] +Last update 2014-02-22 +[hr] + +You just bought a Raspberry Pi and want to run the RED Matrix with your own domain name? + +Then this page is for you! You will: +[list=1] +[*] Install Raspberry OS (Debian Linux) on a Raspberry +[*] Install Apache Web Server, PHP, MaySQL, phpMyAdmin +[*] Register a free domain (dynamic DNS) and use it for your RED hub +[*] Install the RED Matrix +[*] Keep your Raspberry Pi and your Redmatrix up-to-date +[*] TODO Running Friendica with SSL +[*] TODO Make the webserver less vulnarable to attacks +[/list] + +[size=large]1. Install Raspberry OS (Debian Linux)[/size] + +instructions under #^[url=http://www.raspberrypi.org/downloads]http://www.raspberrypi.org/downloads[/url] +This page links to the quick start containing detailed instruction. + +[b]Format SD card[/b] + +using the programm gparted under Linux Mint 15 + +format as FAT32 + +[b]Download NOOBS (offline and network install)[/b] + +#^[url=http://downloads.raspberrypi.org/noobs]http://downloads.raspberrypi.org/noobs[/url] + +unzip + +copy unzipped files to SD card + +[b]Install Raspbian as OS on the Rasperry Pi[/b] + +connect with keyboard via USB + +connect with monitor via HDMI + +Insert SD card into Rasperry Pi + +Connect with power supply to switch on the Rasperry + +choose Raspbian as OS (> installs Raspbian....) + +wait for the coniguration program raspi-config (you can later start it by sudo raspi-config) + +[b]Configure Raspbian[/b] + +in raspi-config > advanced > choose to use ssh (!! You need this to connect to administrate your Pi from your PC !!) + +in raspi-config > change the password (of default user "pi" from "raspberry" to your password) + +in raspi-config (optional) > Internationalisation options > Change Locale > to de_DE.utf-8 utf-8 (for example) + +in raspi-config (optional) > Internationalisation options > Change Timezoe > set your timezone + +in raspi-config (optional) > Overlock > medium + +(Source #^[url=http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#]http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#[/url]) + + +[b]More[/b] + +[code]sudo reboot[/code] + +Now its time to connect the Pi to the network. +[ul] +[*] pull out keyboard +[*] pull out monitor +[*] you even can pull out the power supply (USB) +[*] plug-in the network cable to the router +[*] plug-in the power supply again +[*] wait for a minute or to give the Pi time to boot and start ssh... +[/ul] + +On your PC connect to the Pi to administrate (here update it). +Open the console on the PC (Window: Start > cmd, Linux: Shell) + +Hint: use the router admin tool to find out the IP of your PI[code]ssh pi@192.168.178.37 +sudo apt-get update +sudo apt-get dist-upgrade[/code] + +(Source #^[url=http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#]http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#[/url]) + + + +[size=large]2. Install Apache Web Server, PHP, MaySQL, phpMyAdmin[/size] + +[b]Install Apache Webserver[/b] + +[code]sudo bash +sudo groupadd www-data[/code] might exist already + +[code]sudo usermod -a -G www-data www-data +sudo apt-get update +sudo reboot[/code] + +wait... +reconnect via ssh, example: [code]ssh pi@192.168.178.37 +sudo apt-get install apache2 apache2-doc apache2-utils[/code] + +Open webbrowser on PC and check #^[url=http://192.168.178.37]http://192.168.178.37[/url] +Should show you a page like "It works" + +(Source #^[url=http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#]http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#[/url]) + + +[b]Install PHP, MaySQL, phpMyAdmin[/b] + +[code]sudo bash +apt-get install libapache2-mod-php5 php5 php-pear php5-xcache php5-curl +apt-get install php5-mysql +apt-get install mysql-server mysql-client[/code] enter and note the mysql passwort + +[code]apt-get install phpmyadmin[/code] + +Configuring phpmyadmin +- Select apache2 +- Configure database for phpmyadmin with dbconfig-common?: Choose Yes + +(Source #^[url=http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#]http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#[/url]) + + +[b]Test installation[/b] + +[code]cd /var/www[/code] + +create a php file to test the php installation[code]sudo nano phpinfo.php[/code] + +Insert into the file:[code] +<?php + phpinfo(); +?> +[/code] +(save CTRL+0, ENTER, CTRL+X) + +open webbrowser on PC and try #^[url=http://192.168.178.37/phpinfo.php]http://192.168.178.37/phpinfo.php[/url] (page shows infos on php) + +connect phpMyAdmin with MySQL database [code]nano /etc/apache2/apache2.conf[/code] +- CTRL+V... to the end of the file +- Insert at the end of the file: (save CTRL+0, ENTER, CTRL+X)[code]Include /etc/phpmyadmin/apache.conf[/code] + +restart apache[code]/etc/init.d/apache2 restart +sudo apt-get update +sudo apt-get upgrade +sudo reboot[/code] + +(Source #^[url=http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#]http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#[/url]) + + +[b]phpMyAdmin[/b] + +open webbrowser on PC and try #^[url=http://192.168.178.37/phpmyadmin]http://192.168.178.37/phpmyadmin[/url] + +(Source #^[url=http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#]http://www.manfred-steger.de/tuts/20-der-eigene-webserver-mit-dem-raspberry-pi#[/url]) + + +[b]Create an empty database... that is later used by RED[/b] + +open webbrowser on PC and try #^[url=http://192.168.178.37/phpmyadmin]http://192.168.178.37/phpmyadmin[/url] + +Create an empty database + +Note the access details (hostname, username, password, database name). + + +[size=large]3. Selfhost[/size] + +(Source: #^[url=http://www.techjawab.com/2013/06/setup-dynamic-dns-dyndns-for-free-on.html]http://www.techjawab.com/2013/06/setup-dynamic-dns-dyndns-for-free-on.html[/url]) + +#^[url=http://freedns.afraid.org/signup/]http://freedns.afraid.org/signup/[/url] + +[b]Step 1[/b] +Register for a Free domain at #^[url=http://freedns.afraid.org/signup/]http://freedns.afraid.org/signup/[/url] +(We will take techhome.homenet.org in this guide) + +[b]Step 2[/b] + +Logon to FreeDNS (where you just registered) and goto #^[url=http://freedns.afraid.org/dynamic/]http://freedns.afraid.org/dynamic/[/url] +Right click on "Direct Link" and copy the URL and paste it somewhere. +You should notice a large and unique alpha-numeric key in the URL, make a note of it as shown below: +[code]http://freedns.afraid.org/dynamic/update.php?alphanumeric-key[/code] + + +[b]Step 3[/b] +Install inadyn using the following command:[code]sudo apt-get install inadyn[/code] + +[b]Step 4[/b] +Configure inadyn using the below steps:[code]sudo nano /etc/inadyn.conf[/code] +And add the following contains in it replacing the actual values: +[code] +--username [color=red]techhome[/color] +--password [color=red]mypassword[/color] +--update_period 3600 +--forced_update_period 14400 +--alias [color=red]techhome.homenet.org</b>,[color=red]alphanumeric key[/color] +--background +--dyndns_system default@freedns.afraid.org +--syslog +[/code] + + +[b]Step 5[/b] + +Now, we need to ensure that the DNS updater (Inadyn) runs automatically after every re-boot[code]export EDITOR=gedit && sudo crontab -e[/code] +Add the following line:[code]@reboot /usr/sbin/inadyn[/code] + + +[b]Step 6[/b] + +Reboot system and then run the following command to ensure inadyn is running:[code] +sudo reboot +ps -A | grep inadyn +[/code] +Now your host is ready and up for accessing from internet... +You can trying ssh-ing from another computer over the internet +[code]ssh username@techhome.homenet.org[/code] +Or, if any web server is running, then simply browse to #^[url=http://techhome.homenet.org]http://techhome.homenet.org[/url] +Or, you can just ping it to test ping techhome.homenet.org +To check the logs you can use this: +[code]more /var/log/messages |grep INADYN[/code] + + +[size=large]4. Install RED [/size] + +(Source: #^[zrl=https://friendicared.net/help/Install]https://friendicared.net/help/Install[/zrl]) + +Linux Appache document root is /var/www/ +Two files exist there (created by the steps above): index.html, phpinfo.php + + +[b]Install RED and its Addons[/b] + +Cleanup: Remove the directory www/ (Git will not create files and folders in directories that are not empty.) Make sure you are in directory var[code]pi@pi /var $ cd /var[/code] + +Remove directory[code]pi@pi /var $ sudo rm -rf www/[/code] + +Download the sources of RED from GIT +[code]pi@pi /var $ sudo git clone https://github.com/friendica/red.git www[/code] + +Download the sources of the addons from GIT +[code]pi@pi /var/www $ sudo git clone https://github.com/friendica/red-addons.git addon[/code] + +Make user www-data the owner of the whole red directory (including subdirectories and files) +(TODO: This step has to be proofed by the next installation.) +[code]pi@pi /var $ chown -R www-data:www-data /var/www/[/code] + +Check if you can update the sources from git[code] +pi@pi /var $ cd www +pi@pi /var/www $ git pull +[/code] + +Check if you can update the addons +[code]pi@pi /var/www $ cd addon/ +pi@pi /var/www/addon $ sudo git pull[/code] + +Make sure folder view/tpl/smarty3 exists and is writable by the webserver +[code]pi@pi /var/www $ sudo chmod ou+w view/tpl/smarty3/[/code] + +Create .htconfig.php and is writable by the webserver +[code]pi@pi /var/www $ sudo touch .htconfig.php +pi@pi /var/www $ sudo chmod ou+w .htconfig.php[/code] + +Prevent search engines from indexing your site. Why? This can fill up your database. +(Source: [url=http://wiki.pixelbits.de/redmatrix]Pixelbits[/url] ) +[code]pi@pi /var/www $ sudo touch robots.txt[/code] +Open the file. +[code]pi@pi /var/www $ sudo nano robots.txt[/code] +Paste this text and save. +[code] +# Prevent search engines to index this site + User-agent: * + Disallow: /search +[/code] + + +[b]First start and initial configuration of your RED Matrix hub[/b] + +In browser open #^[zrl=http://einervonvielen.mooo.com/]http://einervonvielen.mooo.com/[/zrl] +(Replace einervonvielen.mooo.com by your domain, see chapter selfhost. Be patient. It takes time.) +(#^[zrl=http://einervonvielen.mooo.com/index.php?q=setup]http://einervonvielen.mooo.com/index.php?q=setup[/zrl]) + +There might be errors like the following. + +Error: libCURL PHP module required but not installed. +Solution: +apt-get install php5-curl + +Error: Apache webserver mod-rewrite module is required but not installed. +Solution +(Source: #^[url=http://xmodulo.com/2013/01/how-to-enable-mod_rewrite-in-apache2-on-debian-ubuntu.html]http://xmodulo.com/2013/01/how-to-enable-mod_rewrite-in-apache2-on-debian-ubuntu.html[/url]) +The default installation of Apache2 comes with mod_rewrite installed. To check whether this is the case, verify the existence of /etc/apache2/mods-available/rewrite.load +- pi@pi /var/www $ nano /etc/apache2/mods-available/rewrite.load + (You should find the contendt: LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so) +To enable and load mod_rewrite, do the rest of steps. +Create a symbolic link in /etc/apache2/mods-enabled +- pi@pi /var/www $ sudo a2enmod rewrite +Then open up the following file, and replace every occurrence of "AllowOverride None" with "AllowOverride all". +- pi@pi /var/www $ sudo nano /etc/apache2/sites-available/default +Finally, restart Apache2. +- pi@pi /var/www $ sudo service apache2 restart + +Error store is writable (not checked) +Solution: +(TODO: Make writeable to group www-data only?) +pi@pi /var/www $ sudo mkdir store +pi@pi /var/www $ chown -R www-data:www-data /var/www/red/ +pi@pi /var/www $ sudo chmod ou+w view + +[b]More[/b] + +Set up a cron job to run the poller once every 15 minutes in order to perform background processing. +- pi@pi /var/www $ which php +Make sure you are in the document root directory of the webserver +- pi@pi /var/www $ cd /var/www/ +Try to execute the poller in oder to make sure it works +- pi@pi /var/www $ /usr/bin/php include/poller.php +Create the cronjob +- pi@pi /var/www $ crontab -e +Enter +- */15 * * * * cd /var/www/; /usr/bin/php include/poller.php +- Save and exit. + + +[size=large]5. Keep your Raspberry Pi and your Redmatrix up-to-date[/size] + +Git update of RED every day at 4 am and addons at 5 am every day +Try if the command is working +- pi@pi /var/www $ sudo git pull +Create the cronjob +- pi@pi /var/www $ crontab -e +Enter the following to update RED at 4:01 am every day +- 01 04 * * * cd /var/www/; sudo git pull +Enter the following to update the addons at 5:01 am every day +- 01 05 * * * cd /var/www/addon/; sudo git pull +Enter the following to update the Raspberry Pi (Raspbian OS = Debian) at 6:01 am every day +- 01 06 * * * sudo aptitude -y update && sudo aptitude -y safe-upgrade +Save and exit. + +[size=large]6. Running Friendica with SSL[/size] + +Follow the instructions here: +#^[url=https://github.com/friendica/friendica/wiki/Running-Friendica-with-SSL]https://github.com/friendica/friendica/wiki/Running-Friendica-with-SSL[/url] \ No newline at end of file diff --git a/doc/remove_account.bb b/doc/remove_account.bb new file mode 100644 index 000000000..90ef1d7df --- /dev/null +++ b/doc/remove_account.bb @@ -0,0 +1,17 @@ +[b]Remove Account[/b] + +[b]Remove Account[/b] + +It is presently not possible to remove an account without asking your site administrator for assistance. + +[b]Remove Channel[/b] + +Visit the URL + + [baseurl]/removeme + +You will need to confirm your password and the channel you are currently logged into will be removed. + +This is irreversible. + +If you have identity clones on other sites this only removes the channel instance which exists on this site. \ No newline at end of file diff --git a/doc/schema_development.bb b/doc/schema_development.bb new file mode 100644 index 000000000..6b2c3d315 --- /dev/null +++ b/doc/schema_development.bb @@ -0,0 +1,74 @@ +[b]Red Development - A Guide To The Schema System[/b] + +A schema, in a nutshell, is a collection of settings for a bunch of variables to define +certain elements of a theme. A schema is loaded as though it were part of config.php +and has access to all the same information. Importantly, this means it is identity aware, +and can be used to do some interesting things. One could, for example, restrict options +by service class, or present different options to different members. + +By default, we filter only by whether or not expert mode is enabled. If expert mode is +enabled, all options are presented to the member. If it is not, only scheme, background +image, font face, and iconset are available as choices. + +A schema is loaded *after* the member's personal settings. Therefore, to allow a member +to overwrite a particular aspect of a schema you would use the following syntax: +[code] + if (! $foo) + $foo = 'bar'; +[/code] +However, there are circumstances - particularly with positional elements - where it +may be desirable (or necessary) to override a member's settings. In this case, the syntax +is even simpler: +[code] + $foo = 'bar'; +[/code] +Members will not thank you for this, however, so only use it when it is required. + +If no personal options are set, and no schema is selected, we will first try to load a schema +with the file name "default.php". This file should never be included with a theme. If it +is, merge conflicts will occur as people update their code. Rather, this should be defined +by administrators on a site by site basis. + +You schema does not need to - and should not - contain all of these values. Only the values +that differ from the defaults should be listed. This gives you some very powerful options +with very few lines of code. + +Note the options available differ with each theme. The options available with the Redbasic +theme are as follows: + +[li] nav_colour + The colour of the navigation bar. Options are red, black and silver. Alternatively, + one can set $nav_bg_1, $nav_bg_2, $nav_bg_3 and $nav_bg_4 to provide gradient and + hover effects.[/li] +[li] banner_colour + The font colour of the banner element. Accepts an RGB or Hex value.[/li] +[li] bgcolour + Set the body background colour. Accepts an RGB or Hex value.[/li] +[li] background_image + Sets a background image. Accepts a URL or path.[/li] +[li] item_colour + Set the background colour of items. Accepts an RGB or Hex value.[/li] +[li] item_opacity + Set the opacity of items. Accepts a value from 0.01 to 1[/li] +[li] toolicon_colour + Set the colour of tool icons. Accepts an RGB or Hex value.[/li] +[li] toolicon_activecolour + Set the colour of active or hovered icon tools.[/li] +[li] font_size + Set the size of fonts in items and posts. Accepts px or em.[/li] +[li] body_font_size + Sets the size of fonts at the body level. Accepts px or em.[/li] +[li] font_colour + Sets the font colour. Accepts an RGB or Hex value.[/li] +[li] radius + Set the radius of corners. Accepts a numeral, and is always in px.[/li] +[li] shadow + Set the size of shadows shown with inline images. Accepts a numerical + value. Note shadows are not applied to smileys.[/li] +[li] converse_width + Set the maximum width of conversations. Accepts px, or %.[/li] +[li] nav_min_opacity[/li] +[li] top_photo[/li] +[li] reply_photo[/li] +[li] sloppy_photos + Determins whether photos are "sloppy" or aligned. Set or unset (1 or '')[/li] \ No newline at end of file diff --git a/doc/tags_and_mentions.bb b/doc/tags_and_mentions.bb new file mode 100644 index 000000000..0614a1e47 --- /dev/null +++ b/doc/tags_and_mentions.bb @@ -0,0 +1,23 @@ +[b]Tags And Mentions[/b] + +Like many other platforms, Red uses a special notation inside messages to indicate "tags" or contextual links to other entities. + +[b]Mentions[/b] + +Channels are tagged by simply preceding their name with the @ character. Unless their system blocks unsolicited "mentions", the person tagged will likely receive a "Mention" post/activity or become a direct participant in the conversation in the case of public posts. + +When you start to mention somebody, it will create an auto-complete box to select from your immediate connections. Select one as appropriate. Some connections will be displayed in different colours. A light blue entry (using the default theme) indicates a channel which will redeliver to others if tagged. This is generally a conversation group or forum. But be aware that when tagged, the message will also go to anybody they choose, in addition to anybody you choose. + +[b]Private Mentions[/b] + +If you wish to restrict a post to a single person or a number of people, you can do this by selecting channels or collections from the privacy tool. You can also just tag them with a privacy tag. A privacy tag is a name preceded by the two characters @! - and in addition to tagging these channels, will also change the privacy permissions of the post to include them (and perhaps restrict the post from "everybody" if this was the default). You can have more than one privacy tag, for instance @!bob and @!linda will send the post only to Bob and Linda (in addition to any recipients you selected with the privacy selector - if any). + +You may also tag public collections. When you create or edit a collection, there is a checkbox to allow the group members to be seen by others. If this box is checked for a collection and you tag (for instance) @!Friends - the post will be restricted to the Friends collection. Check that the collection is public before doing this - as there is no way to take back a post except to delete it. The collection name will appear in the post and will alert members of that collection that they are members of it. + + + +[b]Topical Tags[/b] + +Topical tags are indicated by preceding the tag name with the # character. This will create a link in the post to a generalised site search for the term provided. For example, #[zrl=https://friendicared.net/search?tag=cars]cars[/zrl] will provide a search link for all posts mentioning 'cars' on your site. Topical tags are generally a minimum of three characters in length. Shorter search terms are not likely to yield any search results, although this depends on the database configuration. The same rules apply as with names that spaces within tags are represented by the underscore character. It is therefore not possible to create a tag whose target contains an underscore. + +Topical tags are also not linked if they are purely numeric, e.g. #1. If you wish to use a numeric hashtag, please add some descriptive text such as #[zrl=https://friendicared.net/search?tag=2012-elections]2012-elections[/zrl]. \ No newline at end of file diff --git a/doc/to_do_code.bb b/doc/to_do_code.bb new file mode 100644 index 000000000..295095e87 --- /dev/null +++ b/doc/to_do_code.bb @@ -0,0 +1,51 @@ +[b]Project Code To-Do List[/b] + +We need much more than this, but here are areas where developers can help. Please edit this page when items are finished. Another place for developers to start is with the issues list. + +[li]Turn top-level Apps menu into an Apps page - which will probably require App plugins to have icons. Add documentation specifically to the plugin/addon documentation for creating apps. Add links to the App Store (which doesn't currently exist).[/li] + +[li]Documentation - see Red Documentation Project To-Do List[/li] + +[li]Infinite scroll to the directory pages[/li] + +[li]Finish the anti-spam bayesian engine[/li] + +[li]Integrate the "open site" list with the register page[/li] + +[li]Write more webpage layouts[/li] + +[li]Write more webpage widgets[/li] + +[li](Advanced) create a UI for building Comanche pages[/li] + +[li]templatise and translate the Web interface to webDAV[/li] + +[li]Extend WebDAV to provide desktop access to photo albums]/li] + +[li]service classes - provide a pluggable subscription payment gateway for premium accounts[/li] + +[li]service classes - account overview page showing resources consumed by channel. With special consideration this page can also be accessed at a meta level by the site admin to drill down on problematic accounts/channels.[/li] + +[li]Events module - bring back birthday reminders for friends, fix permissions on events, and provide JS translation support for the calendar overview; integrate with calDAV[/li] + +[li]Events module - event followups and RSVP[/li] + +[li]Uploads - integrate #^[url=https://github.com/blueimp/jQuery-File-Upload]https://github.com/blueimp/jQuery-File-Upload[/url][/li] + +[li]replace the tinymce visual editor and/or make the visual editor pluggable and responsive to different output formats. We probably want library/bbedit for bbcode. This needs a fair bit of work to catch up with our "enhanced bbcode", but start with images, links, bold and highlight and work from there.[/li] + +[li]Photos module - turn photos into normal conversations and fix tagging[/li] + +[li]Provide RSS feed support which look like channels (in matrix only - copyright issues)[/li] + +[li]Create mobile clients for the top platforms - which involves extending the API so that we can do stuff far beyond the current crop of Twitter/Statusnet clients. Ditto for mobile themes. We can probably use something like the Friendica Android app as a base to start from.[/li] + +[li]Activity Stream generation for liking things, liking channels and other combinations.[/li] + +[li]Implement owned and exchangeable "things".[/li] + +[li]Family Account creation - using service classes (an account holder can create a certain number of sub-accounts which are all tied to their subscription - if the subscription lapses they all go away).[/li] + +[li]Put mod_admin under Comanche[/li] + +In many cases some of the work has already been started and code exists so that you needn't start from scratch. Please contact one of the developer channels like Channel One (one@zothub.com) before embarking and we can tell you what we already have and provide some insights on how we envision these features fitting together. \ No newline at end of file diff --git a/doc/to_do_doco.bb b/doc/to_do_doco.bb new file mode 100644 index 000000000..4505de31a --- /dev/null +++ b/doc/to_do_doco.bb @@ -0,0 +1,21 @@ +[b]Documentation To-Do List[/b] + +[b]Documentation we need to write[/b] + + Database schema detailed descriptions + + Complete plugin hook documentation + + API documentation + + Function and code documentation (doxygen) + + New Member guide + + "Extra Feature" reference, description of each + + Detailed Personal Settings Documentation + + Administration Guide (post-install) + + Administration Guide (pre-install) \ No newline at end of file diff --git a/doc/troubleshooting.bb b/doc/troubleshooting.bb new file mode 100644 index 000000000..ea7dbb11a --- /dev/null +++ b/doc/troubleshooting.bb @@ -0,0 +1,5 @@ +[b]Troubleshooting[/b] + +[li][zrl=[baseurl]/help/problems-following-an-update]Problems following an update[/zrl][/li] + +Return to the [url=[baseurl]/help/main]Main documentation page[/url] \ No newline at end of file diff --git a/doc/webpages.bb b/doc/webpages.bb new file mode 100644 index 000000000..74760c8bf --- /dev/null +++ b/doc/webpages.bb @@ -0,0 +1,13 @@ +[b]Creating Web Pages[/b] + +Red enables users to create static webpages. To activate this feature, enable the web pages feature in your Additional Features section. + +Once enabled, a new tab will appear on your channel page labelled "Webpages". Clicking this link will take you to the webpage editor. Here you can create a post using either BBCode or the rich text editor. + +Pages will be accessible at mydomain/page/username/pagelinktitle + +The "page link title" box allows a user to specify the "pagelinktitle" of this URL. If no page link title is set, we will set one for you automatically, using the message ID of the item. + +Beneath the page creation box, a list of existing pages will appear with an "edit" link. Clicking this will take you to an editor, similar to that of the post editor, where you can make changes to your webpages. + +If you are the admin of a site, you can specify a channel whose webpages we will use at key points around the site. Presently, the only place this is implemented is the home page. If you specify the channel "admin" and then the channel called "admin" creates a webpage called "home", we will display it's content on your websites home page. We expect this functionality to be extended to other areas in future. \ No newline at end of file diff --git a/doc/what_is_zot.bb b/doc/what_is_zot.bb new file mode 100644 index 000000000..a398a65a4 --- /dev/null +++ b/doc/what_is_zot.bb @@ -0,0 +1,61 @@ +[b]What is Zot?[/b] + +Zot is the protocol that powers the Red Matrix, providing three core capabilities: Communications, Identity, and Access Control. + +The functionality it provides can also be described as follows: + + - a relationship online is just a bunch of permissions + - the internet is just another folder + +[b][color= grey][size=20]Communications[/size][/color][/b] + +Zot is a revolutionary protocol which provides [i]decentralised communications[/i] and [i]identity management[/i] across the matrix. The resulting platform can provide web services comparable to those offered by large corporate providers, but without the large corporate provider and their associated privacy issues, insatiable profit drive, and walled-garden mentality. + +Communications and social networking are an integral part of the matrix. Any channel (and any services provided by that channel) can make full use of feature-rich social communications on a global scale. These communications may be public or private - and private communications comprise not only fully encrypted transport, but also encrypted storage to help protect against accidental snooping and disclosure by rogue system administrators and internet service providers. + +Zot allows a wide array of background services in the matrix, from offering friend suggestions, to directory services. You can also perform other things which would typically only be possibly on a centralized provider - such as "Wall to Wall" posts. Priivate/multiple profiles can be easily created, and web content can be tailored to the viewer via the [i]Affinity Slider[/i]. + +You won't find these features at all on other decentralized communication services. In addition to providing hub (server) decentralization, perhaps the most innovative and interesting Zot feature is its provision of [i]decentralized identity[/i] services. + +[b][color= grey][size=20]Identity[/size][/color][/b] + +Zot's identity layer is unique. It provides [i]invisible single sign-on[/i] across all sites in the matrix. + +It also provides [i]nomadic identity[/i], so that your communications with friends, family, and or anyone else you're communicating with won't be affected by the loss of your primary communication node - either temporarily or permanently. + +The important bits of your identity and relationships can be backed up to a thumb drive, or your laptop, and may appear at any node in the matrix at any time - with all your friends and preferences intact. + +Crucially, these nomadic instances are kept in sync so any instance can take over if another one is compromised or damaged. This protects you against not only major system failure, but also temporary site overloads and governmental manipulation or censorship. + +Nomadic identity, single sign-on, and Red's decentralization of hubs, we believe, introduce a high degree of degree of [i]resiliency[/i] and [i]persistence[/i] in internet communications, that are sorely needed amidst global trends towards corporate centralization, as well as mass and indiscriminate government surveillance and censorship. + +As you browse the matrix, viewing channels and their unique content, you are seamlessly authenticated as you go, even across completely different server hubs. No passwords to enter. Nothing to type. You're just greeted by name on every new site you visit. + +How does Zot do that? We call it [i]magic-auth[/i], because Red hides the details of the complexities that go into single sign-on logins, and nomadic identities, from the experience of browsing on the matrix. This is one of the design goals of Red: to increase privacy, and freedom on the web, while reducing the complexity and tedium brought by the need to enter new passwords and user names for every different sight that someone might visit online. + +You login only once on your home hub (or any nomadic backup hub you have chosen). This allows you to access any authenticated services provided anywhere in the matrix - such as shopping, blogs, forums, and access to private information. This is just like the services offered by large corporate providers with huge user databases; however you can be a member of this community, as well as a server on this network using a $35 Rasberry Pi. Your password isn't stored on a thousand different sites, or even worse, only on a few sites like Google and Facebook, beyond your direct control. + +You cannot be silenced. You cannot be removed from the matrix, unless you yourself choose to exit it. + +[b][color= grey][size=20]Access Control[/size][/color][/b] + +Zot's identity layer allows you to provide fine-grained permissions to any content you wish to publish - and these permissions extend across the Red Matrix. This is like having one super huge website made up of an army of small individual websites - and where each channel in the matrix can completely control their privacy and sharing preferences for any web resources they create. + +Currently, the matrix supports communications, photo albums, events, and files. This will be extended in the future to provide content management services (web pages) and cloud storage facilities, such as WebDAV and multi-media libraries. Every object and how it is shared and with whom is completely under your control. + +This type of control is available on large corporate providers such as Facebook and Google, because they own the user database. Within the matrix, there is no need for a huge user databaseon your machine - because the matrix [i]is[/i] your user database. It has what is essentially infinite capacity (limited by the total number of hubs online across the internet), and is spread amongst hundreds, and potentially millions of computers. + +Access can be granted or denied for any resource, to any channel, or any group of channels; anywhere within the matrix. Others can access your content if you permit them to do so, and they do not even need to have an account on your hub. Your private photos cannot be viewed, because permission really work; they are not an addon that was added as an afterthought. If you aren't on the list of allowed viewers for a particular photo, you aren't going to look at it. + +[b][color= grey][size=18]Additional Resources and Links[/size][/color][/b] + +For more detailed, technical information about Zot, check out the following links: + + - [url=https://github.com/friendica/red/wiki/Zot---A-High-Level-Overview]A high level overview[/url] + + - [url=https://github.com/friendica/red/wiki/zot]Zot development specification[/url] + + - [url=https://github.com/friendica/red/blob/master/include/zot.php]Zot reference implementation in PHP[/url] + + +Return to the [url=[baseurl]/help/main]Main documentation page[/url] \ No newline at end of file From 5cc70f75a43438ad77542adf025d0ac3063b909b Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Mon, 24 Feb 2014 05:20:27 +0000 Subject: [PATCH 006/130] The string replacement missed that little blighter. --- doc/main.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/main.bb b/doc/main.bb index 5db1736e9..7ae5d3736 100644 --- a/doc/main.bb +++ b/doc/main.bb @@ -56,4 +56,4 @@ Contents [b]About[/b] -[url=https://friendicared.net/siteinfo] Site/Version Info[/url] \ No newline at end of file +[zrl=[baseurl]/siteinfo]Site/Version Info[/zrl] From fea3422b46fc6840fd7821d653a0eecb6b2c6bc6 Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Mon, 24 Feb 2014 17:34:40 +0000 Subject: [PATCH 007/130] Doco - just a friendicared => [baseurl] --- doc/main.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/main.bb b/doc/main.bb index 7ae5d3736..0e8ea15fd 100644 --- a/doc/main.bb +++ b/doc/main.bb @@ -42,7 +42,7 @@ Contents [zrl=[baseurl]/help/intro_for_developers]Intro for Developers[/zrl] [zrl=[baseurl]/help/api_functions]API functions[/zrl] [zrl=[baseurl]/help/developer_function_primer]Red Functions 101[/zrl] -[zrl=https://friendicared.net/doc/html/]Code Reference (doxygen generated - sets cookies)[/zrl] +[zrl=[baseurl]/doc/html/]Code Reference (doxygen generated - sets cookies)[/zrl] [zrl=[baseurl]/help/to_do_doco]To-Do list for the Red Documentation Project[/zrl] [zrl=[baseurl]/help/to_do_code]To-Do list for Developers[/zrl] [zrl=[baseurl]/help/git_for_non_developers]Git for Non-Developers[/zrl] From e4eeb9d101e7064049f721edcf959ef3bd968ac0 Mon Sep 17 00:00:00 2001 From: Alexandre Hannud Abdo Date: Mon, 24 Feb 2014 15:29:56 -0300 Subject: [PATCH 008/130] Updates to pt-br translation, including some email templates. --- view/pt-br/follow_notify_eml.tpl | 12 +- view/pt-br/friend_complete_eml.tpl | 23 +- view/pt-br/intro_complete_eml.tpl | 26 +- view/pt-br/lostpass_eml.tpl | 33 +- view/pt-br/messages.po | 1575 ++++++++++++++-------------- view/pt-br/passchanged_eml.tpl | 24 +- view/pt-br/register_open_eml.tpl | 23 +- view/pt-br/register_verify_eml.tpl | 18 +- view/pt-br/request_notify_eml.tpl | 16 +- view/pt-br/strings.php | 246 ++--- 10 files changed, 1023 insertions(+), 973 deletions(-) diff --git a/view/pt-br/follow_notify_eml.tpl b/view/pt-br/follow_notify_eml.tpl index ba07b19da..bc86e5fe1 100644 --- a/view/pt-br/follow_notify_eml.tpl +++ b/view/pt-br/follow_notify_eml.tpl @@ -1,14 +1,14 @@ -Dear {{$myname}}, +Caro/a {{$myname}}, -You have a new follower at {{$sitename}} - '{{$requestor}}'. +Você tem um novo seguidor em {{$sitename}} - '{{$requestor}}'. -You may visit their profile at {{$url}}. +Você pode ver o perfil dele em {{$url}}. -Please login to your site to approve or ignore/cancel the request. +Por favor, autentique-se no seu site para aprovara ou ignorar/cancelar esta solicitação. {{$siteurl}} -Regards, +Gratidão, - {{$sitename}} administrator + {{$sitename}} administrador diff --git a/view/pt-br/friend_complete_eml.tpl b/view/pt-br/friend_complete_eml.tpl index 1c647b994..51adf23e3 100644 --- a/view/pt-br/friend_complete_eml.tpl +++ b/view/pt-br/friend_complete_eml.tpl @@ -1,22 +1,23 @@ -Dear {{$username}}, +Caro/a {{$username}}, - Great news... '{{$fn}}' at '{{$dfrn_url}}' has accepted -your connection request at '{{$sitename}}'. + Boas notícias... '{{$fn}}' em '{{$dfrn_url}}' aceitou +seu pedido de conexão em '{{$sitename}}'. -You are now mutual friends and may exchange status updates, photos, and email -without restriction. +Vocês agora são amigos mútuos e podem trocar atualizações de status, fotos, +e email sem restrição. -Please visit your 'Connnections' page at {{$sitename}} if you wish to make -any changes to this relationship. +Por favor, visite sua página 'Conexões' em {{$sitename}} se quiser efetuar +quaisquer mudanças nesse relacionamento. {{$siteurl}} -[For instance, you may create a separate profile with information that is not -available to the general public - and assign viewing rights to '{{$fn}}']. +[Por exemplo, você pode criar um perfil à parte com informações que não +estão disponíveis para o público geral - e conceder permissões de acesso +para '{{$fn}}']. -Sincerely, +Atenciosamente, - {{$sitename}} Administrator + {{$sitename}} Administrador diff --git a/view/pt-br/intro_complete_eml.tpl b/view/pt-br/intro_complete_eml.tpl index 2c2428d68..bd20e0a6e 100644 --- a/view/pt-br/intro_complete_eml.tpl +++ b/view/pt-br/intro_complete_eml.tpl @@ -1,22 +1,22 @@ -Dear {{$username}}, +Caro/a {{$username}}, - '{{$fn}}' at '{{$dfrn_url}}' has accepted -your connection request at '{{$sitename}}'. + '{{$fn}}' em '{{$dfrn_url}}' aceitou sua solicitação de conexão +em '{{$sitename}}'. - '{{$fn}}' has chosen to accept you a "fan", which restricts -some forms of communication - such as private messaging and some profile -interactions. If this is a celebrity or community page, these settings were -applied automatically. + '{{$fn}}' optou por aceitá-lo como "fã", o que restringe algumas +formas de comunicação - como mensagens privadas e certas interações com o +perfil. Se esta é uma página de celebridade ou comunidade, essa +configuração é aplicada automaticamente. - '{{$fn}}' may choose to extend this into a two-way or more permissive -relationship in the future. + '{{$fn}}' pode escolher no futuro transformar essa relação em uma +mais permissiva, de duas vias. - You will start receiving public status updates from '{{$fn}}', -which will appear on your 'Matrix' page at + Você começará a receber atualizações de status públicas de '{{$fn}}', +que aparecerão na sua Matriz em {{$siteurl}} -Sincerely, +Atenciosamente, - {{$sitename}} Administrator + {{$sitename}} Administrador diff --git a/view/pt-br/lostpass_eml.tpl b/view/pt-br/lostpass_eml.tpl index 3b79d2791..15a72ffb6 100644 --- a/view/pt-br/lostpass_eml.tpl +++ b/view/pt-br/lostpass_eml.tpl @@ -1,32 +1,33 @@ -Dear {{$username}}, - A request was recently received at {{$sitename}} to reset your account -password. In order to confirm this request, please select the verification link -below or paste it into your web browser address bar. +Caro/a {{$username}}, -If you did NOT request this change, please DO NOT follow the link -provided and ignore and/or delete this email. + Uma solicitação para reiniciar a senha da sua conta foi recebida em +{{$sitename}}. Para confirmar este pedido, acesse o link de verificação clicando +nele abaixo ou copiando na barra de endereço do seu navegador. -Your password will not be changed unless we can verify that you -issued this request. +Se você NÃO solicitou essa mudança, por favor NÃO SIGA o link a seguir e +ignore e/ou delete este e-mail. -Follow this link to verify your identity: +Sua senha não será modificada até que você confirme este pedido. + +Siga este link para confirmá-lo: {{$reset_link}} -You will then receive a follow-up message containing the new password. +Você receberá então um outro e-mail contendo uma nova senha. -You may change that password from your account settings page after logging in. +Você poderá trocar essa senha a partir das suas configurações de conta, +após autenticar-se. -The login details are as follows: +Os detalhes de autenticação são os seguintes: -Site Location: {{$siteurl}} -Login Name: {{$email}} +Localização do site: {{$siteurl}} +Nome: {{$email}} -Sincerely, - {{$sitename}} Administrator +Atenciosamente, + {{$sitename}} Administrador diff --git a/view/pt-br/messages.po b/view/pt-br/messages.po index 3decef9bf..74288b429 100644 --- a/view/pt-br/messages.po +++ b/view/pt-br/messages.po @@ -15,8 +15,8 @@ msgid "" msgstr "" "Project-Id-Version: Red Matrix\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-02-14 00:02-0800\n" -"PO-Revision-Date: 2014-02-20 21:57+0000\n" +"POT-Creation-Date: 2014-02-21 00:03-0800\n" +"PO-Revision-Date: 2014-02-24 17:27+0000\n" "Last-Translator: solstag \n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/red-matrix/language/pt_BR/)\n" "MIME-Version: 1.0\n" @@ -30,7 +30,7 @@ msgid "Categories" msgstr "Categorias" #: ../../include/widgets.php:115 ../../include/widgets.php:155 -#: ../../include/Contact.php:104 ../../include/identity.php:628 +#: ../../include/Contact.php:107 ../../include/identity.php:632 #: ../../mod/directory.php:184 ../../mod/match.php:62 #: ../../mod/dirprofile.php:170 ../../mod/suggest.php:51 msgid "Connect" @@ -69,8 +69,8 @@ msgstr "Por exemplo: joao@exemplo.com, http://exemplo.com/maria" msgid "Notes" msgstr "Notas" -#: ../../include/widgets.php:173 ../../include/text.php:754 -#: ../../include/text.php:768 ../../mod/filer.php:36 +#: ../../include/widgets.php:173 ../../include/text.php:759 +#: ../../include/text.php:773 ../../mod/filer.php:36 msgid "Save" msgstr "Salvar" @@ -96,7 +96,7 @@ msgstr "Pastas salvas" msgid "Everything" msgstr "Tudo" -#: ../../include/widgets.php:318 ../../include/items.php:3636 +#: ../../include/widgets.php:318 msgid "Archives" msgstr "Arquivos" @@ -112,7 +112,7 @@ msgstr "Eu" msgid "Best Friends" msgstr "Melhores amigos" -#: ../../include/widgets.php:373 ../../include/identity.php:310 +#: ../../include/widgets.php:373 ../../include/identity.php:314 #: ../../include/profile_selectors.php:42 ../../mod/connedit.php:392 msgid "Friends" msgstr "Amigos" @@ -175,7 +175,7 @@ msgid "Channel Sources" msgstr "Fontes do canal" #: ../../include/widgets.php:487 ../../include/nav.php:181 -#: ../../mod/admin.php:837 ../../mod/admin.php:1042 +#: ../../mod/admin.php:838 ../../mod/admin.php:1043 msgid "Settings" msgstr "Configurações" @@ -226,7 +226,7 @@ msgstr "Visite o %2$s de %1$s" msgid "%1$s has an updated %2$s, changing %3$s." msgstr "%1$s atualizou %2$s, alterando %3$s." -#: ../../include/nav.php:72 ../../include/nav.php:91 ../../boot.php:1423 +#: ../../include/nav.php:72 ../../include/nav.php:91 ../../boot.php:1425 msgid "Logout" msgstr "Sair" @@ -236,7 +236,7 @@ msgstr "Encerrar essa sessão" #: ../../include/nav.php:75 ../../include/nav.php:125 msgid "Home" -msgstr "Meu canal" +msgstr "Ver canal" #: ../../include/nav.php:75 msgid "Your posts and conversations" @@ -310,7 +310,7 @@ msgstr "Páginas web" msgid "Your webpages" msgstr "Suas páginas web" -#: ../../include/nav.php:89 ../../boot.php:1424 +#: ../../include/nav.php:89 ../../boot.php:1426 msgid "Login" msgstr "Entrar" @@ -331,7 +331,7 @@ msgstr "Clique para se autenticar com seu hub de origem" msgid "Home Page" msgstr "Página inicial" -#: ../../include/nav.php:129 ../../mod/register.php:206 ../../boot.php:1400 +#: ../../include/nav.php:129 ../../mod/register.php:206 ../../boot.php:1402 msgid "Register" msgstr "Registrar" @@ -355,8 +355,8 @@ msgstr "Aplicações" msgid "Addon applications, utilities, games" msgstr "Aplicações adicionais, utilitários, jogos" -#: ../../include/nav.php:139 ../../include/text.php:752 -#: ../../include/text.php:766 ../../mod/search.php:29 +#: ../../include/nav.php:139 ../../include/text.php:757 +#: ../../include/text.php:771 ../../mod/search.php:29 msgid "Search" msgstr "Pesquisar" @@ -516,320 +516,320 @@ msgstr "mais antigo" msgid "newer" msgstr "mais recente" -#: ../../include/text.php:670 +#: ../../include/text.php:675 msgid "No connections" msgstr "Nenhuma conexão" -#: ../../include/text.php:681 +#: ../../include/text.php:686 #, php-format msgid "%d Connection" msgid_plural "%d Connections" msgstr[0] "%d conexão" msgstr[1] "%d conexões" -#: ../../include/text.php:693 +#: ../../include/text.php:698 msgid "View Connections" msgstr "Ver conexões" -#: ../../include/text.php:834 +#: ../../include/text.php:839 msgid "poke" msgstr "cutucar" -#: ../../include/text.php:834 ../../include/conversation.php:240 +#: ../../include/text.php:839 ../../include/conversation.php:240 msgid "poked" msgstr "cutucado" -#: ../../include/text.php:835 +#: ../../include/text.php:840 msgid "ping" msgstr "pingar" -#: ../../include/text.php:835 +#: ../../include/text.php:840 msgid "pinged" msgstr "pingou" -#: ../../include/text.php:836 +#: ../../include/text.php:841 msgid "prod" msgstr "espetar" -#: ../../include/text.php:836 +#: ../../include/text.php:841 msgid "prodded" msgstr "espetou" -#: ../../include/text.php:837 +#: ../../include/text.php:842 msgid "slap" msgstr "estapear" -#: ../../include/text.php:837 +#: ../../include/text.php:842 msgid "slapped" msgstr "estapeou" -#: ../../include/text.php:838 +#: ../../include/text.php:843 msgid "finger" msgstr "dar um toque" -#: ../../include/text.php:838 +#: ../../include/text.php:843 msgid "fingered" msgstr "deu um toque" -#: ../../include/text.php:839 +#: ../../include/text.php:844 msgid "rebuff" msgstr "rebater" -#: ../../include/text.php:839 +#: ../../include/text.php:844 msgid "rebuffed" msgstr "rebateu" -#: ../../include/text.php:851 +#: ../../include/text.php:856 msgid "happy" msgstr "feliz" -#: ../../include/text.php:852 +#: ../../include/text.php:857 msgid "sad" msgstr "triste" -#: ../../include/text.php:853 +#: ../../include/text.php:858 msgid "mellow" msgstr "suave" -#: ../../include/text.php:854 +#: ../../include/text.php:859 msgid "tired" msgstr "cansado" -#: ../../include/text.php:855 +#: ../../include/text.php:860 msgid "perky" msgstr "animado/a" -#: ../../include/text.php:856 +#: ../../include/text.php:861 msgid "angry" msgstr "nervoso" -#: ../../include/text.php:857 +#: ../../include/text.php:862 msgid "stupified" msgstr "embasbacado/a" -#: ../../include/text.php:858 +#: ../../include/text.php:863 msgid "puzzled" msgstr "confuso/a" -#: ../../include/text.php:859 +#: ../../include/text.php:864 msgid "interested" msgstr "interessado" -#: ../../include/text.php:860 +#: ../../include/text.php:865 msgid "bitter" msgstr "amargo/a" -#: ../../include/text.php:861 +#: ../../include/text.php:866 msgid "cheerful" msgstr "alegre" -#: ../../include/text.php:862 +#: ../../include/text.php:867 msgid "alive" msgstr "vivo" -#: ../../include/text.php:863 +#: ../../include/text.php:868 msgid "annoyed" msgstr "aborrecido" -#: ../../include/text.php:864 +#: ../../include/text.php:869 msgid "anxious" msgstr "ansioso" -#: ../../include/text.php:865 +#: ../../include/text.php:870 msgid "cranky" msgstr "irritado/a" -#: ../../include/text.php:866 +#: ../../include/text.php:871 msgid "disturbed" msgstr "perturbado" -#: ../../include/text.php:867 +#: ../../include/text.php:872 msgid "frustrated" msgstr "frustrado" -#: ../../include/text.php:868 +#: ../../include/text.php:873 msgid "motivated" msgstr "motivado" -#: ../../include/text.php:869 +#: ../../include/text.php:874 msgid "relaxed" msgstr "relaxado" -#: ../../include/text.php:870 +#: ../../include/text.php:875 msgid "surprised" msgstr "surpreso" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Monday" msgstr "Segunda" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Tuesday" msgstr "Terça" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Wednesday" msgstr "Quarta" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Thursday" msgstr "Quinta" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Friday" msgstr "Sexta" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Saturday" msgstr "Sábado" -#: ../../include/text.php:1031 +#: ../../include/text.php:1036 msgid "Sunday" msgstr "Domingo" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "January" msgstr "Janeiro" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "February" msgstr "Fevereiro" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "March" msgstr "Março" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "April" msgstr "Abril" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "May" msgstr "Maio" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "June" msgstr "Junho" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "July" msgstr "Julho" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "August" msgstr "Agosto" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "September" msgstr "Setembro" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "October" msgstr "Outubro" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "November" msgstr "Novembro" -#: ../../include/text.php:1035 +#: ../../include/text.php:1040 msgid "December" msgstr "Dezembro" -#: ../../include/text.php:1113 +#: ../../include/text.php:1118 msgid "unknown.???" msgstr "desconhecido.???" -#: ../../include/text.php:1114 +#: ../../include/text.php:1119 msgid "bytes" msgstr "bytes" -#: ../../include/text.php:1149 +#: ../../include/text.php:1154 msgid "remove category" msgstr "remover categoria" -#: ../../include/text.php:1171 +#: ../../include/text.php:1176 msgid "remove from file" msgstr "remover do arquivo" -#: ../../include/text.php:1229 ../../include/text.php:1241 +#: ../../include/text.php:1234 ../../include/text.php:1246 msgid "Click to open/close" msgstr "Clique para abrir/fechar" -#: ../../include/text.php:1417 ../../mod/events.php:332 +#: ../../include/text.php:1401 ../../mod/events.php:332 msgid "link to source" -msgstr "exibir a origem" +msgstr "Link para a origem" -#: ../../include/text.php:1436 +#: ../../include/text.php:1420 msgid "Select a page layout: " msgstr "Selecione um layout de página:" -#: ../../include/text.php:1439 ../../include/text.php:1504 +#: ../../include/text.php:1423 ../../include/text.php:1488 msgid "default" msgstr "default" -#: ../../include/text.php:1475 +#: ../../include/text.php:1459 msgid "Page content type: " msgstr "Tipo de conteúdo da página: " -#: ../../include/text.php:1516 +#: ../../include/text.php:1500 msgid "Select an alternate language" msgstr "Selecione um idioma alternativo" -#: ../../include/text.php:1637 ../../include/conversation.php:117 +#: ../../include/text.php:1621 ../../include/conversation.php:117 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:45 msgid "photo" msgstr "foto" -#: ../../include/text.php:1640 ../../include/conversation.php:120 +#: ../../include/text.php:1624 ../../include/conversation.php:120 #: ../../mod/tagger.php:49 msgid "event" msgstr "evento" -#: ../../include/text.php:1643 ../../include/conversation.php:145 +#: ../../include/text.php:1627 ../../include/conversation.php:145 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:53 msgid "status" msgstr "status" -#: ../../include/text.php:1645 ../../include/conversation.php:147 +#: ../../include/text.php:1629 ../../include/conversation.php:147 #: ../../mod/tagger.php:55 msgid "comment" msgstr "comentário" -#: ../../include/text.php:1650 +#: ../../include/text.php:1634 msgid "activity" msgstr "atividade" -#: ../../include/text.php:1907 +#: ../../include/text.php:1891 msgid "Design" msgstr "Design" -#: ../../include/text.php:1909 +#: ../../include/text.php:1893 msgid "Blocks" msgstr "Blocos" -#: ../../include/text.php:1910 +#: ../../include/text.php:1894 msgid "Menus" msgstr "Menus" -#: ../../include/text.php:1911 +#: ../../include/text.php:1895 msgid "Layouts" msgstr "Layouts" -#: ../../include/text.php:1912 +#: ../../include/text.php:1896 msgid "Pages" msgstr "Páginas" -#: ../../include/bbcode.php:128 ../../include/bbcode.php:594 -#: ../../include/bbcode.php:597 ../../include/bbcode.php:602 -#: ../../include/bbcode.php:605 ../../include/bbcode.php:608 -#: ../../include/bbcode.php:611 ../../include/bbcode.php:616 -#: ../../include/bbcode.php:619 ../../include/bbcode.php:624 -#: ../../include/bbcode.php:627 ../../include/bbcode.php:630 -#: ../../include/bbcode.php:633 +#: ../../include/bbcode.php:128 ../../include/bbcode.php:601 +#: ../../include/bbcode.php:604 ../../include/bbcode.php:609 +#: ../../include/bbcode.php:612 ../../include/bbcode.php:615 +#: ../../include/bbcode.php:618 ../../include/bbcode.php:623 +#: ../../include/bbcode.php:626 ../../include/bbcode.php:631 +#: ../../include/bbcode.php:634 ../../include/bbcode.php:637 +#: ../../include/bbcode.php:640 msgid "Image/photo" msgstr "Imagem/foto" -#: ../../include/bbcode.php:163 ../../include/bbcode.php:644 +#: ../../include/bbcode.php:163 ../../include/bbcode.php:651 msgid "Encrypted content" msgstr "Conteúdo criptografado" @@ -846,15 +846,15 @@ msgstr "%1$s escreveu a seguinte %2$s %3$s" msgid "post" msgstr "publicação" -#: ../../include/bbcode.php:562 ../../include/bbcode.php:582 +#: ../../include/bbcode.php:569 ../../include/bbcode.php:589 msgid "$1 wrote:" msgstr "$1 escreveu:" -#: ../../include/Contact.php:120 +#: ../../include/Contact.php:123 msgid "New window" msgstr "Nova janela" -#: ../../include/Contact.php:121 +#: ../../include/Contact.php:124 msgid "Open the selected location in a different window or browser tab" msgstr "Abre a localização selecionada em outra aba ou janela" @@ -1127,8 +1127,8 @@ msgstr "OStatus" msgid "RSS/Atom" msgstr "RSS/Atom" -#: ../../include/contact_selectors.php:77 ../../mod/admin.php:741 -#: ../../mod/admin.php:750 ../../boot.php:1426 +#: ../../include/contact_selectors.php:77 ../../mod/admin.php:742 +#: ../../mod/admin.php:751 ../../boot.php:1428 msgid "Email" msgstr "E-mail" @@ -1246,7 +1246,7 @@ msgstr "Início:" msgid "Finishes:" msgstr "Fim:" -#: ../../include/event.php:40 ../../include/identity.php:679 +#: ../../include/event.php:40 ../../include/identity.php:683 #: ../../include/bb2diaspora.php:455 ../../mod/events.php:462 #: ../../mod/directory.php:157 ../../mod/dirprofile.php:111 msgid "Location:" @@ -1263,7 +1263,7 @@ msgstr "Um grupo com esse nome, anteriormente excluído, foi reativado. Permiss msgid "Default privacy group for new contacts" msgstr "Grupo de privacidade padrão para novos contatos" -#: ../../include/group.php:242 ../../mod/admin.php:750 +#: ../../include/group.php:242 ../../mod/admin.php:751 msgid "All Channels" msgstr "Todos os canais" @@ -1303,7 +1303,7 @@ msgstr "exibir mais" #: ../../include/js_strings.php:8 msgid "show fewer" -msgstr "mostrar menos" +msgstr "exibir menos" #: ../../include/js_strings.php:9 msgid "Password too short" @@ -1414,39 +1414,40 @@ msgstr "Não foi possível determinar o remetente." msgid "Stored post could not be verified." msgstr "Não foi possível verificar a publicação armazenada." -#: ../../include/photo/photo_driver.php:637 ../../include/photos.php:51 +#: ../../include/photo/photo_driver.php:643 ../../include/photos.php:51 #: ../../mod/profile_photo.php:78 ../../mod/profile_photo.php:225 #: ../../mod/profile_photo.php:336 ../../mod/photos.php:91 #: ../../mod/photos.php:656 ../../mod/photos.php:678 msgid "Profile Photos" msgstr "Fotos do perfil" -#: ../../include/attach.php:98 ../../include/attach.php:129 -#: ../../include/attach.php:185 ../../include/attach.php:200 -#: ../../include/attach.php:233 ../../include/attach.php:247 -#: ../../include/attach.php:268 ../../include/attach.php:463 -#: ../../include/attach.php:541 ../../include/chat.php:113 -#: ../../include/photos.php:15 ../../include/items.php:3515 +#: ../../include/attach.php:119 ../../include/attach.php:166 +#: ../../include/attach.php:229 ../../include/attach.php:243 +#: ../../include/attach.php:283 ../../include/attach.php:297 +#: ../../include/attach.php:322 ../../include/attach.php:513 +#: ../../include/attach.php:585 ../../include/chat.php:113 +#: ../../include/photos.php:15 ../../include/items.php:3575 #: ../../mod/common.php:35 ../../mod/events.php:140 ../../mod/thing.php:247 #: ../../mod/thing.php:263 ../../mod/thing.php:298 ../../mod/invite.php:13 -#: ../../mod/invite.php:104 ../../mod/item.php:182 ../../mod/item.php:190 -#: ../../mod/menu.php:44 ../../mod/webpages.php:40 ../../mod/api.php:26 -#: ../../mod/api.php:31 ../../mod/bookmarks.php:46 ../../mod/chat.php:87 -#: ../../mod/chat.php:92 ../../mod/viewconnections.php:22 -#: ../../mod/viewconnections.php:27 ../../mod/delegate.php:6 -#: ../../mod/mitem.php:73 ../../mod/group.php:9 ../../mod/viewsrc.php:12 -#: ../../mod/editpost.php:13 ../../mod/connedit.php:182 -#: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/page.php:30 -#: ../../mod/page.php:80 ../../mod/network.php:12 ../../mod/profiles.php:152 +#: ../../mod/invite.php:104 ../../mod/settings.php:493 ../../mod/menu.php:44 +#: ../../mod/webpages.php:40 ../../mod/api.php:26 ../../mod/api.php:31 +#: ../../mod/bookmarks.php:46 ../../mod/item.php:182 ../../mod/item.php:190 +#: ../../mod/chat.php:87 ../../mod/chat.php:92 +#: ../../mod/viewconnections.php:22 ../../mod/viewconnections.php:27 +#: ../../mod/delegate.php:6 ../../mod/mitem.php:73 ../../mod/group.php:9 +#: ../../mod/viewsrc.php:12 ../../mod/editpost.php:13 +#: ../../mod/connedit.php:182 ../../mod/layouts.php:27 +#: ../../mod/layouts.php:42 ../../mod/page.php:30 ../../mod/page.php:80 +#: ../../mod/network.php:12 ../../mod/profiles.php:152 #: ../../mod/profiles.php:453 ../../mod/sources.php:66 ../../mod/setup.php:200 #: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 -#: ../../mod/achievements.php:27 ../../mod/settings.php:493 -#: ../../mod/manage.php:6 ../../mod/mail.php:108 ../../mod/editlayout.php:48 -#: ../../mod/profile_photo.php:187 ../../mod/profile_photo.php:200 -#: ../../mod/connections.php:169 ../../mod/notifications.php:66 -#: ../../mod/blocks.php:29 ../../mod/blocks.php:44 -#: ../../mod/editwebpage.php:44 ../../mod/editwebpage.php:83 -#: ../../mod/poke.php:128 ../../mod/channel.php:88 ../../mod/channel.php:188 +#: ../../mod/achievements.php:27 ../../mod/manage.php:6 ../../mod/mail.php:108 +#: ../../mod/editlayout.php:48 ../../mod/profile_photo.php:187 +#: ../../mod/profile_photo.php:200 ../../mod/connections.php:169 +#: ../../mod/notifications.php:66 ../../mod/blocks.php:29 +#: ../../mod/blocks.php:44 ../../mod/editwebpage.php:44 +#: ../../mod/editwebpage.php:83 ../../mod/poke.php:128 +#: ../../mod/channel.php:88 ../../mod/channel.php:188 #: ../../mod/channel.php:231 ../../mod/fsuggest.php:78 #: ../../mod/editblock.php:48 ../../mod/filestorage.php:10 #: ../../mod/filestorage.php:59 ../../mod/filestorage.php:75 @@ -1457,61 +1458,61 @@ msgstr "Fotos do perfil" msgid "Permission denied." msgstr "Permissão negada." -#: ../../include/attach.php:180 ../../include/attach.php:228 +#: ../../include/attach.php:224 ../../include/attach.php:278 msgid "Item was not found." msgstr "O item não foi encontrado." -#: ../../include/attach.php:281 +#: ../../include/attach.php:335 msgid "No source file." msgstr "Nenhum arquivo de origem." -#: ../../include/attach.php:298 +#: ../../include/attach.php:352 msgid "Cannot locate file to replace" msgstr "Não foi possível locar o arquivo a ser substituído" -#: ../../include/attach.php:316 +#: ../../include/attach.php:370 msgid "Cannot locate file to revise/update" msgstr "Não foi possível localizar o arquivo a ser revisado/atualizado" -#: ../../include/attach.php:327 +#: ../../include/attach.php:381 #, php-format msgid "File exceeds size limit of %d" msgstr "O arquivo excedeu o tamanho limite de %d" -#: ../../include/attach.php:339 +#: ../../include/attach.php:393 #, php-format msgid "You have reached your limit of %1$.0f Mbytes attachment storage." msgstr "Você atingiu o seu limite de %1$.0f Mbytes de armazenamento de anexos." -#: ../../include/attach.php:423 +#: ../../include/attach.php:475 msgid "File upload failed. Possible system limit or action terminated." msgstr "Não foi possível enviar o arquivo. Provável limite do sistema ou a ação foi encerrada." -#: ../../include/attach.php:435 +#: ../../include/attach.php:487 msgid "Stored file could not be verified. Upload failed." msgstr "Não foi possível verificar o arquivo armazenado. Falha no envio." -#: ../../include/attach.php:479 ../../include/attach.php:496 +#: ../../include/attach.php:528 ../../include/attach.php:545 msgid "Path not available." msgstr "O caminho não está disponível." -#: ../../include/attach.php:546 +#: ../../include/attach.php:590 msgid "Empty pathname" msgstr "O nome do caminho está em branco" -#: ../../include/attach.php:564 +#: ../../include/attach.php:606 msgid "duplicate filename or path" msgstr "nome de arquivo ou caminho duplicado" -#: ../../include/attach.php:589 +#: ../../include/attach.php:630 msgid "Path not found." msgstr "Caminho não encontrado." -#: ../../include/attach.php:634 +#: ../../include/attach.php:674 msgid "mkdir failed." msgstr "mkdir falhou." -#: ../../include/attach.php:638 +#: ../../include/attach.php:678 msgid "database storage failed." msgstr "armazenamento de banco de dados falhou." @@ -1554,8 +1555,8 @@ msgid "Select" msgstr "Selecionar" #: ../../include/conversation.php:632 ../../include/ItemObject.php:108 -#: ../../mod/thing.php:236 ../../mod/group.php:176 ../../mod/admin.php:745 -#: ../../mod/connedit.php:359 ../../mod/settings.php:579 +#: ../../mod/thing.php:236 ../../mod/settings.php:579 ../../mod/group.php:176 +#: ../../mod/admin.php:746 ../../mod/connedit.php:359 #: ../../mod/filestorage.php:171 ../../mod/photos.php:1044 msgid "Delete" msgstr "Excluir" @@ -1597,7 +1598,7 @@ msgid "View in context" msgstr "Ver no contexto" #: ../../include/conversation.php:707 ../../include/conversation.php:1120 -#: ../../include/ItemObject.php:259 ../../mod/editpost.php:112 +#: ../../include/ItemObject.php:259 ../../mod/editpost.php:121 #: ../../mod/mail.php:222 ../../mod/mail.php:336 ../../mod/editlayout.php:115 #: ../../mod/editwebpage.php:153 ../../mod/editblock.php:129 #: ../../mod/photos.php:975 @@ -1728,7 +1729,7 @@ msgid "Expires YYYY-MM-DD HH:MM" msgstr "Expira YYYY-MM-DD HH:MM" #: ../../include/conversation.php:1083 ../../include/ItemObject.php:557 -#: ../../mod/webpages.php:122 ../../mod/editpost.php:132 +#: ../../mod/webpages.php:122 ../../mod/editpost.php:141 #: ../../mod/editlayout.php:136 ../../mod/editwebpage.php:177 #: ../../mod/editblock.php:151 ../../mod/photos.php:995 msgid "Preview" @@ -1742,7 +1743,7 @@ msgstr "Compartilhar" msgid "Page link title" msgstr "Título do link da página" -#: ../../include/conversation.php:1101 ../../mod/editpost.php:104 +#: ../../include/conversation.php:1101 ../../mod/editpost.php:113 #: ../../mod/mail.php:219 ../../mod/mail.php:332 ../../mod/editlayout.php:107 #: ../../mod/editwebpage.php:145 ../../mod/editblock.php:121 msgid "Upload photo" @@ -1752,7 +1753,7 @@ msgstr "Enviar foto" msgid "upload photo" msgstr "enviar foto" -#: ../../include/conversation.php:1103 ../../mod/editpost.php:105 +#: ../../include/conversation.php:1103 ../../mod/editpost.php:114 #: ../../mod/mail.php:220 ../../mod/mail.php:333 ../../mod/editlayout.php:108 #: ../../mod/editwebpage.php:146 ../../mod/editblock.php:122 msgid "Attach file" @@ -1762,7 +1763,7 @@ msgstr "Anexar arquivo" msgid "attach file" msgstr "anexar arquivo" -#: ../../include/conversation.php:1105 ../../mod/editpost.php:106 +#: ../../include/conversation.php:1105 ../../mod/editpost.php:115 #: ../../mod/mail.php:221 ../../mod/mail.php:334 ../../mod/editlayout.php:109 #: ../../mod/editwebpage.php:147 ../../mod/editblock.php:123 msgid "Insert web link" @@ -1788,7 +1789,7 @@ msgstr "Inserir link de áudio" msgid "audio link" msgstr "link de áudio" -#: ../../include/conversation.php:1111 ../../mod/editpost.php:110 +#: ../../include/conversation.php:1111 ../../mod/editpost.php:119 #: ../../mod/editlayout.php:113 ../../mod/editwebpage.php:151 #: ../../mod/editblock.php:127 msgid "Set your location" @@ -1798,7 +1799,7 @@ msgstr "Definir sua localização" msgid "set location" msgstr "definir localização" -#: ../../include/conversation.php:1113 ../../mod/editpost.php:111 +#: ../../include/conversation.php:1113 ../../mod/editpost.php:120 #: ../../mod/editlayout.php:114 ../../mod/editwebpage.php:152 #: ../../mod/editblock.php:128 msgid "Clear browser location" @@ -1808,19 +1809,19 @@ msgstr "Limpar a localização do navegador" msgid "clear location" msgstr "limpar a localização" -#: ../../include/conversation.php:1116 ../../mod/editpost.php:124 +#: ../../include/conversation.php:1116 ../../mod/editpost.php:133 #: ../../mod/editlayout.php:127 ../../mod/editwebpage.php:169 #: ../../mod/editblock.php:142 msgid "Set title" msgstr "Definir o título" -#: ../../include/conversation.php:1119 ../../mod/editpost.php:126 +#: ../../include/conversation.php:1119 ../../mod/editpost.php:135 #: ../../mod/editlayout.php:130 ../../mod/editwebpage.php:171 #: ../../mod/editblock.php:145 msgid "Categories (comma-separated list)" msgstr "Categorias (lista separada por vírgulas)" -#: ../../include/conversation.php:1121 ../../mod/editpost.php:113 +#: ../../include/conversation.php:1121 ../../mod/editpost.php:122 #: ../../mod/editlayout.php:116 ../../mod/editwebpage.php:154 #: ../../mod/editblock.php:130 msgid "Permission settings" @@ -1830,43 +1831,43 @@ msgstr "Configurações de permissão" msgid "permissions" msgstr "permissões" -#: ../../include/conversation.php:1130 ../../mod/editpost.php:121 +#: ../../include/conversation.php:1130 ../../mod/editpost.php:130 #: ../../mod/editlayout.php:124 ../../mod/editwebpage.php:164 #: ../../mod/editblock.php:139 msgid "Public post" msgstr "Publicação pública" -#: ../../include/conversation.php:1132 ../../mod/editpost.php:127 +#: ../../include/conversation.php:1132 ../../mod/editpost.php:136 #: ../../mod/editlayout.php:131 ../../mod/editwebpage.php:172 #: ../../mod/editblock.php:146 msgid "Example: bob@example.com, mary@example.com" msgstr "Por exemplo: joao@exemplo.com, maria@exemplo.com" -#: ../../include/conversation.php:1145 ../../mod/editpost.php:138 +#: ../../include/conversation.php:1145 ../../mod/editpost.php:147 #: ../../mod/mail.php:226 ../../mod/mail.php:339 ../../mod/editlayout.php:141 #: ../../mod/editwebpage.php:182 ../../mod/editblock.php:156 msgid "Set expiration date" msgstr "Definir data de expiração" #: ../../include/conversation.php:1147 ../../include/ItemObject.php:560 -#: ../../mod/editpost.php:140 ../../mod/mail.php:228 ../../mod/mail.php:341 +#: ../../mod/editpost.php:149 ../../mod/mail.php:228 ../../mod/mail.php:341 msgid "Encrypt text" msgstr "Encriptar texto" -#: ../../include/conversation.php:1149 ../../mod/editpost.php:142 +#: ../../include/conversation.php:1149 ../../mod/editpost.php:151 msgid "OK" msgstr "Ok" -#: ../../include/conversation.php:1150 ../../mod/tagrm.php:11 -#: ../../mod/tagrm.php:94 ../../mod/editpost.php:143 -#: ../../mod/settings.php:517 ../../mod/settings.php:543 -#: ../../mod/fbrowser.php:82 ../../mod/fbrowser.php:117 +#: ../../include/conversation.php:1150 ../../mod/settings.php:517 +#: ../../mod/settings.php:543 ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 +#: ../../mod/editpost.php:152 ../../mod/fbrowser.php:82 +#: ../../mod/fbrowser.php:117 msgid "Cancel" msgstr "Cancelar" #: ../../include/conversation.php:1381 msgid "Commented Order" -msgstr "Recentemente comentados" +msgstr "Recentes e comentados" #: ../../include/conversation.php:1384 msgid "Sort by Comment Date" @@ -1874,7 +1875,7 @@ msgstr "Ordenar pela data do último comentário" #: ../../include/conversation.php:1387 msgid "Posted Order" -msgstr "Ordem de publicação" +msgstr "Recentemente publicados" #: ../../include/conversation.php:1390 msgid "Sort by Post Date" @@ -1953,238 +1954,238 @@ msgstr "Links guardados" msgid "Manage Webpages" msgstr "Administrar páginas web" -#: ../../include/identity.php:29 ../../mod/item.php:1177 +#: ../../include/identity.php:30 ../../mod/item.php:1187 msgid "Unable to obtain identity information from database" msgstr "Não foi possível obter a informação da identidade a partir do banco de dados" -#: ../../include/identity.php:62 +#: ../../include/identity.php:63 msgid "Empty name" msgstr "O nome está em branco" -#: ../../include/identity.php:64 +#: ../../include/identity.php:65 msgid "Name too long" msgstr "O nome é muito grande" -#: ../../include/identity.php:143 +#: ../../include/identity.php:147 msgid "No account identifier" msgstr "Nenhuma identificação da conta" -#: ../../include/identity.php:153 +#: ../../include/identity.php:157 msgid "Nickname is required." msgstr "É necessário informar o apelido." -#: ../../include/identity.php:167 +#: ../../include/identity.php:171 msgid "" "Nickname has unsupported characters or is already being used on this site." msgstr "A identificação possui caracteres não suportados ou já está sendo usada nesse site." -#: ../../include/identity.php:226 +#: ../../include/identity.php:230 msgid "Unable to retrieve created identity" msgstr "Não foi possível recuperar a identidade criada" -#: ../../include/identity.php:285 +#: ../../include/identity.php:289 msgid "Default Profile" msgstr "Perfil padrão" -#: ../../include/identity.php:477 +#: ../../include/identity.php:481 msgid "Requested channel is not available." msgstr "Canal solicitado não está disponível." -#: ../../include/identity.php:489 +#: ../../include/identity.php:493 msgid " Sorry, you don't have the permission to view this profile. " msgstr "Desculpe, você não tem permissão para ver este perfil." -#: ../../include/identity.php:524 ../../mod/webpages.php:8 +#: ../../include/identity.php:528 ../../mod/webpages.php:8 #: ../../mod/connect.php:13 ../../mod/layouts.php:8 #: ../../mod/achievements.php:8 ../../mod/blocks.php:10 #: ../../mod/profile.php:16 ../../mod/filestorage.php:40 msgid "Requested profile is not available." msgstr "O perfil solicitado não está disponível." -#: ../../include/identity.php:642 ../../mod/profiles.php:603 +#: ../../include/identity.php:646 ../../mod/profiles.php:603 msgid "Change profile photo" msgstr "Mudar a foto do perfil" -#: ../../include/identity.php:648 +#: ../../include/identity.php:652 msgid "Profiles" msgstr "Perfis" -#: ../../include/identity.php:648 +#: ../../include/identity.php:652 msgid "Manage/edit profiles" msgstr "Administrar/editar perfis" -#: ../../include/identity.php:649 ../../mod/profiles.php:604 +#: ../../include/identity.php:653 ../../mod/profiles.php:604 msgid "Create New Profile" msgstr "Criar um novo perfil" -#: ../../include/identity.php:652 +#: ../../include/identity.php:656 msgid "Edit Profile" msgstr "Editar perfil" -#: ../../include/identity.php:663 ../../mod/profiles.php:615 +#: ../../include/identity.php:667 ../../mod/profiles.php:615 msgid "Profile Image" msgstr "Imagem do perfil" -#: ../../include/identity.php:666 ../../mod/profiles.php:618 +#: ../../include/identity.php:670 ../../mod/profiles.php:618 msgid "visible to everybody" msgstr "visível para todos" -#: ../../include/identity.php:667 ../../mod/profiles.php:619 +#: ../../include/identity.php:671 ../../mod/profiles.php:619 msgid "Edit visibility" msgstr "Editar a visibilidade" -#: ../../include/identity.php:681 ../../include/identity.php:908 +#: ../../include/identity.php:685 ../../include/identity.php:912 #: ../../mod/directory.php:159 msgid "Gender:" msgstr "Gênero:" -#: ../../include/identity.php:682 ../../include/identity.php:928 +#: ../../include/identity.php:686 ../../include/identity.php:932 #: ../../mod/directory.php:161 msgid "Status:" msgstr "Situação:" -#: ../../include/identity.php:683 ../../include/identity.php:939 +#: ../../include/identity.php:687 ../../include/identity.php:943 #: ../../mod/directory.php:163 msgid "Homepage:" msgstr "Página web:" -#: ../../include/identity.php:684 ../../mod/dirprofile.php:157 +#: ../../include/identity.php:688 ../../mod/dirprofile.php:157 msgid "Online Now" msgstr "Online agora" -#: ../../include/identity.php:752 ../../include/identity.php:832 +#: ../../include/identity.php:756 ../../include/identity.php:836 #: ../../mod/ping.php:262 msgid "g A l F d" msgstr "G l d F" -#: ../../include/identity.php:753 ../../include/identity.php:833 +#: ../../include/identity.php:757 ../../include/identity.php:837 msgid "F d" msgstr "F d" -#: ../../include/identity.php:798 ../../include/identity.php:873 +#: ../../include/identity.php:802 ../../include/identity.php:877 #: ../../mod/ping.php:284 msgid "[today]" msgstr "[hoje]" -#: ../../include/identity.php:810 +#: ../../include/identity.php:814 msgid "Birthday Reminders" msgstr "Lembres de aniversário" -#: ../../include/identity.php:811 +#: ../../include/identity.php:815 msgid "Birthdays this week:" msgstr "Aniversários nesta semana:" -#: ../../include/identity.php:866 +#: ../../include/identity.php:870 msgid "[No description]" msgstr "[Sem descrição]" -#: ../../include/identity.php:884 +#: ../../include/identity.php:888 msgid "Event Reminders" msgstr "Lembretes de eventos" -#: ../../include/identity.php:885 +#: ../../include/identity.php:889 msgid "Events this week:" msgstr "Eventos nesta semana:" -#: ../../include/identity.php:898 ../../include/identity.php:982 +#: ../../include/identity.php:902 ../../include/identity.php:986 #: ../../mod/profperm.php:107 msgid "Profile" msgstr "Perfil" -#: ../../include/identity.php:906 ../../mod/settings.php:924 +#: ../../include/identity.php:910 ../../mod/settings.php:937 msgid "Full Name:" msgstr "Nome completo:" -#: ../../include/identity.php:913 +#: ../../include/identity.php:917 msgid "j F, Y" msgstr "j de F, Y" -#: ../../include/identity.php:914 +#: ../../include/identity.php:918 msgid "j F" msgstr "j de F" -#: ../../include/identity.php:921 +#: ../../include/identity.php:925 msgid "Birthday:" msgstr "Aniversário:" -#: ../../include/identity.php:925 +#: ../../include/identity.php:929 msgid "Age:" msgstr "Idade:" -#: ../../include/identity.php:934 +#: ../../include/identity.php:938 #, php-format msgid "for %1$d %2$s" msgstr "para %1$d %2$s" -#: ../../include/identity.php:937 ../../mod/profiles.php:526 +#: ../../include/identity.php:941 ../../mod/profiles.php:526 msgid "Sexual Preference:" msgstr "Preferência sexual:" -#: ../../include/identity.php:941 ../../mod/profiles.php:528 +#: ../../include/identity.php:945 ../../mod/profiles.php:528 msgid "Hometown:" msgstr "Cidade natal:" -#: ../../include/identity.php:943 +#: ../../include/identity.php:947 msgid "Tags:" msgstr "Etiquetas:" -#: ../../include/identity.php:945 ../../mod/profiles.php:529 +#: ../../include/identity.php:949 ../../mod/profiles.php:529 msgid "Political Views:" msgstr "Posição política:" -#: ../../include/identity.php:947 +#: ../../include/identity.php:951 msgid "Religion:" msgstr "Religião:" -#: ../../include/identity.php:949 ../../mod/directory.php:165 +#: ../../include/identity.php:953 ../../mod/directory.php:165 msgid "About:" msgstr "Sobre:" -#: ../../include/identity.php:951 +#: ../../include/identity.php:955 msgid "Hobbies/Interests:" msgstr "Hobbies/Interesses:" -#: ../../include/identity.php:953 ../../mod/profiles.php:532 +#: ../../include/identity.php:957 ../../mod/profiles.php:532 msgid "Likes:" msgstr "Gosta de:" -#: ../../include/identity.php:955 ../../mod/profiles.php:533 +#: ../../include/identity.php:959 ../../mod/profiles.php:533 msgid "Dislikes:" msgstr "Não gosta de:" -#: ../../include/identity.php:958 +#: ../../include/identity.php:962 msgid "Contact information and Social Networks:" msgstr "Informações de contato e redes sociais:" -#: ../../include/identity.php:960 +#: ../../include/identity.php:964 msgid "My other channels:" msgstr "Meus outros canais:" -#: ../../include/identity.php:962 +#: ../../include/identity.php:966 msgid "Musical interests:" msgstr "Interesses musicais:" -#: ../../include/identity.php:964 +#: ../../include/identity.php:968 msgid "Books, literature:" msgstr "Livros, literatura:" -#: ../../include/identity.php:966 +#: ../../include/identity.php:970 msgid "Television:" msgstr "Televisão:" -#: ../../include/identity.php:968 +#: ../../include/identity.php:972 msgid "Film/dance/culture/entertainment:" msgstr "Filmes/dança/cultura/entretenimento:" -#: ../../include/identity.php:970 +#: ../../include/identity.php:974 msgid "Love/Romance:" msgstr "Amor/romance:" -#: ../../include/identity.php:972 +#: ../../include/identity.php:976 msgid "Work/employment:" msgstr "Trabalho/emprego:" -#: ../../include/identity.php:974 +#: ../../include/identity.php:978 msgid "School/education:" msgstr "Escola/educação:" @@ -2193,11 +2194,12 @@ msgid "Private Message" msgstr "Mensagem privada" #: ../../include/ItemObject.php:96 ../../include/page_widgets.php:8 -#: ../../mod/thing.php:235 ../../mod/menu.php:59 ../../mod/webpages.php:118 -#: ../../mod/editpost.php:103 ../../mod/layouts.php:102 -#: ../../mod/settings.php:578 ../../mod/editlayout.php:106 -#: ../../mod/blocks.php:93 ../../mod/editwebpage.php:144 -#: ../../mod/editblock.php:120 ../../mod/filestorage.php:170 +#: ../../include/menu.php:41 ../../mod/thing.php:235 +#: ../../mod/settings.php:578 ../../mod/menu.php:59 ../../mod/webpages.php:118 +#: ../../mod/editpost.php:112 ../../mod/layouts.php:102 +#: ../../mod/editlayout.php:106 ../../mod/blocks.php:93 +#: ../../mod/editwebpage.php:144 ../../mod/editblock.php:120 +#: ../../mod/filestorage.php:170 msgid "Edit" msgstr "Editar" @@ -2288,15 +2290,15 @@ msgstr "Este(a) é você" #: ../../include/ItemObject.php:548 ../../mod/events.php:469 #: ../../mod/thing.php:283 ../../mod/thing.php:326 ../../mod/invite.php:156 +#: ../../mod/settings.php:516 ../../mod/settings.php:628 +#: ../../mod/settings.php:656 ../../mod/settings.php:680 +#: ../../mod/settings.php:752 ../../mod/settings.php:929 #: ../../mod/chat.php:162 ../../mod/chat.php:192 ../../mod/connect.php:92 -#: ../../mod/group.php:81 ../../mod/admin.php:431 ../../mod/admin.php:738 -#: ../../mod/admin.php:878 ../../mod/admin.php:1077 ../../mod/admin.php:1164 +#: ../../mod/group.php:81 ../../mod/admin.php:431 ../../mod/admin.php:739 +#: ../../mod/admin.php:879 ../../mod/admin.php:1078 ../../mod/admin.php:1165 #: ../../mod/connedit.php:437 ../../mod/profiles.php:506 #: ../../mod/sources.php:104 ../../mod/sources.php:138 ../../mod/setup.php:304 -#: ../../mod/setup.php:347 ../../mod/settings.php:516 -#: ../../mod/settings.php:628 ../../mod/settings.php:656 -#: ../../mod/settings.php:680 ../../mod/settings.php:752 -#: ../../mod/settings.php:916 ../../mod/import.php:387 ../../mod/mail.php:223 +#: ../../mod/setup.php:347 ../../mod/import.php:387 ../../mod/mail.php:223 #: ../../mod/mail.php:335 ../../mod/poke.php:166 ../../mod/fsuggest.php:108 #: ../../mod/filestorage.php:131 ../../mod/photos.php:566 #: ../../mod/photos.php:671 ../../mod/photos.php:954 ../../mod/photos.php:994 @@ -2645,7 +2647,7 @@ msgstr "Você saiu." msgid "Failed authentication" msgstr "Não foi possível autenticar" -#: ../../include/auth.php:203 +#: ../../include/auth.php:203 ../../mod/openid.php:185 msgid "Login failed." msgstr "Não foi possível entrar." @@ -3013,35 +3015,31 @@ msgstr "Essa ação excede o limite definido para o seu plano de assinatura." msgid "This action is not available under your subscription plan." msgstr "Essa ação não está disponível para o seu plano de assinatura." -#: ../../include/follow.php:21 +#: ../../include/follow.php:23 msgid "Channel is blocked on this site." msgstr "O canal está bloqueado neste site." -#: ../../include/follow.php:26 +#: ../../include/follow.php:28 msgid "Channel location missing." msgstr "A localização do canal foi perdida" -#: ../../include/follow.php:43 -msgid "Channel discovery failed. Website may be down or misconfigured." -msgstr "Não foi possível descobrir o canal. O site pode estar fora do ar ou desconfigurado." - -#: ../../include/follow.php:51 -msgid "Response from remote channel was not understood." -msgstr "A resposta do canal remoto não foi compreendida." - -#: ../../include/follow.php:58 +#: ../../include/follow.php:54 msgid "Response from remote channel was incomplete." msgstr "A resposta do canal remoto está incompleta." -#: ../../include/follow.php:129 +#: ../../include/follow.php:126 +msgid "Channel discovery failed." +msgstr "A descoberta de canais falhou." + +#: ../../include/follow.php:143 msgid "local account not found." msgstr "a conta local não foi encontrada." -#: ../../include/follow.php:138 +#: ../../include/follow.php:152 msgid "Cannot connect to yourself." msgstr "Não é possível conectar-se consigo mesmo." -#: ../../include/security.php:280 +#: ../../include/security.php:291 msgid "" "The form security token was not correct. This probably happened because the " "form has been opened for too long (>3 hours) before submitting it." @@ -3145,36 +3143,40 @@ msgid "" "Extremely advanced. Leave this alone unless you know what you are doing" msgstr "Extremamente avançado. Não mexa nisso a não ser que saiba o que está fazendo" -#: ../../include/items.php:231 ../../mod/like.php:55 ../../mod/profperm.php:23 +#: ../../include/items.php:240 ../../mod/like.php:55 ../../mod/profperm.php:23 #: ../../mod/group.php:68 ../../index.php:350 msgid "Permission denied" msgstr "Permissão negada" -#: ../../include/items.php:3453 ../../mod/thing.php:78 ../../mod/admin.php:151 -#: ../../mod/admin.php:782 ../../mod/admin.php:985 ../../mod/viewsrc.php:18 +#: ../../include/items.php:756 ../../mod/connedit.php:395 +msgid "Unknown" +msgstr "Desconhecidos" + +#: ../../include/items.php:3513 ../../mod/thing.php:78 ../../mod/admin.php:151 +#: ../../mod/admin.php:783 ../../mod/admin.php:986 ../../mod/viewsrc.php:18 #: ../../mod/home.php:63 ../../mod/display.php:32 ../../mod/filestorage.php:18 msgid "Item not found." msgstr "O item não foi encontrado." -#: ../../include/items.php:3809 ../../mod/group.php:38 ../../mod/group.php:140 +#: ../../include/items.php:3849 ../../mod/group.php:38 ../../mod/group.php:140 msgid "Collection not found." msgstr "A coleção não foi encontrada." -#: ../../include/items.php:3824 +#: ../../include/items.php:3864 msgid "Collection is empty." msgstr "A coleção está vazia." -#: ../../include/items.php:3831 +#: ../../include/items.php:3871 #, php-format msgid "Collection: %s" msgstr "Coleção: %s" -#: ../../include/items.php:3842 +#: ../../include/items.php:3882 #, php-format msgid "Connection: %s" msgstr "Conexão: %s" -#: ../../include/items.php:3845 +#: ../../include/items.php:3885 msgid "Connection not found." msgstr "A conexão não foi encontrada." @@ -3410,35 +3412,446 @@ msgid "" "http://getzot.com" msgstr "Para maiores informações sobre o Projeto Red Matrix e porque ele tem potencial para mudar a Internet como a conhecemos, por favor visite: http://getzot.com" -#: ../../mod/item.php:145 -msgid "Unable to locate original post." -msgstr "Não foi possível localizar a publicação original." +#: ../../mod/settings.php:71 +msgid "Name is required" +msgstr "O nome é obrigatório" -#: ../../mod/item.php:346 -msgid "Empty post discarded." -msgstr "A publicação em branco foi descartada." +#: ../../mod/settings.php:75 +msgid "Key and Secret are required" +msgstr "A chave e o segredo são obrigatórios" -#: ../../mod/item.php:388 -msgid "Executable content type not permitted to this channel." -msgstr "Conteúdo de tipo executável não permitido para este canal." +#: ../../mod/settings.php:79 ../../mod/settings.php:542 +msgid "Update" +msgstr "Atualizar" -#: ../../mod/item.php:835 -msgid "System error. Post not saved." -msgstr "Erro no sistema. A publicação não foi salva." +#: ../../mod/settings.php:195 +msgid "Passwords do not match. Password unchanged." +msgstr "As senhas não correspondem. A senha não foi modificada." -#: ../../mod/item.php:1102 ../../mod/wall_upload.php:41 -msgid "Wall Photos" -msgstr "Fotos do mural" +#: ../../mod/settings.php:199 +msgid "Empty passwords are not allowed. Password unchanged." +msgstr "Não é permitido uma senha em branco. A senha não foi modificada." -#: ../../mod/item.php:1182 -#, php-format -msgid "You have reached your limit of %1$.0f top level posts." -msgstr "Você atingiu o seu limite de %1$.0f publicações de novos tópicos." +#: ../../mod/settings.php:212 +msgid "Password changed." +msgstr "A senha foi modificada." -#: ../../mod/item.php:1188 -#, php-format -msgid "You have reached your limit of %1$.0f webpages." -msgstr "Você atingiu o seu limite de %1$.0f páginas web." +#: ../../mod/settings.php:214 +msgid "Password update failed. Please try again." +msgstr "Não foi possível atualizar a senha. Por favor, tente novamente." + +#: ../../mod/settings.php:228 +msgid "Not valid email." +msgstr "Não é um e-mail válido" + +#: ../../mod/settings.php:231 +msgid "Protected email address. Cannot change to that email." +msgstr "Endereço de e-mail protegido. Não é possível mudar para esse e-mail." + +#: ../../mod/settings.php:240 +msgid "System failure storing new email. Please try again." +msgstr "Falha do sistema ao armazenar novo e-mail. Por favor, tente novamente." + +#: ../../mod/settings.php:444 +msgid "Settings updated." +msgstr "As configurações foram atualizadas." + +#: ../../mod/settings.php:515 ../../mod/settings.php:541 +#: ../../mod/settings.php:577 +msgid "Add application" +msgstr "Adicionar aplicação" + +#: ../../mod/settings.php:518 ../../mod/settings.php:544 +msgid "Name" +msgstr "Nome" + +#: ../../mod/settings.php:518 +msgid "Name of application" +msgstr "Nome da aplicação" + +#: ../../mod/settings.php:519 ../../mod/settings.php:545 +msgid "Consumer Key" +msgstr "Chave de consumidor" + +#: ../../mod/settings.php:519 ../../mod/settings.php:520 +msgid "Automatically generated - change if desired. Max length 20" +msgstr "Gerado automaticamente - troque se desejável. Comprimento máximo 20" + +#: ../../mod/settings.php:520 ../../mod/settings.php:546 +msgid "Consumer Secret" +msgstr "Segredo de consumidor" + +#: ../../mod/settings.php:521 ../../mod/settings.php:547 +msgid "Redirect" +msgstr "Redirecionamento" + +#: ../../mod/settings.php:521 +msgid "" +"Redirect URI - leave blank unless your application specifically requires " +"this" +msgstr "URI de redirecionamento - deixe em branco, a não ser que sua aplicação especificamente requeira isso" + +#: ../../mod/settings.php:522 ../../mod/settings.php:548 +msgid "Icon url" +msgstr "URL do ícone" + +#: ../../mod/settings.php:522 +msgid "Optional" +msgstr "Opcional" + +#: ../../mod/settings.php:533 +msgid "You can't edit this application." +msgstr "Você não pode editar esta aplicação." + +#: ../../mod/settings.php:576 +msgid "Connected Apps" +msgstr "Aplicações conectadas" + +#: ../../mod/settings.php:580 +msgid "Client key starts with" +msgstr "Chave do cliente começa com" + +#: ../../mod/settings.php:581 +msgid "No name" +msgstr "Sem nome" + +#: ../../mod/settings.php:582 +msgid "Remove authorization" +msgstr "Remover autorização" + +#: ../../mod/settings.php:593 +msgid "No feature settings configured" +msgstr "Não foi definida nenhuma configuração do recurso" + +#: ../../mod/settings.php:601 +msgid "Feature Settings" +msgstr "Configurações do recurso" + +#: ../../mod/settings.php:624 +msgid "Account Settings" +msgstr "Configurações da conta" + +#: ../../mod/settings.php:625 +msgid "Password Settings" +msgstr "Configurações da senha" + +#: ../../mod/settings.php:626 +msgid "New Password:" +msgstr "Nova senha:" + +#: ../../mod/settings.php:627 +msgid "Confirm:" +msgstr "Confirme:" + +#: ../../mod/settings.php:627 +msgid "Leave password fields blank unless changing" +msgstr "Deixe os campos de senha em branco, a não ser que você queira alterá-la" + +#: ../../mod/settings.php:629 ../../mod/settings.php:938 +msgid "Email Address:" +msgstr "Endereço de e-mail:" + +#: ../../mod/settings.php:630 +msgid "Remove Account" +msgstr "Remover conta" + +#: ../../mod/settings.php:631 +msgid "Warning: This action is permanent and cannot be reversed." +msgstr "Atenção: Esta ação é permanente e não pode ser revertida." + +#: ../../mod/settings.php:647 +msgid "Off" +msgstr "Desligado" + +#: ../../mod/settings.php:647 +msgid "On" +msgstr "Ligado" + +#: ../../mod/settings.php:654 +msgid "Additional Features" +msgstr "Recursos adicionais" + +#: ../../mod/settings.php:679 +msgid "Connector Settings" +msgstr "Configurações do conector" + +#: ../../mod/settings.php:709 ../../mod/admin.php:379 +msgid "No special theme for mobile devices" +msgstr "Sem tema especial para aparelhos móveis" + +#: ../../mod/settings.php:750 +msgid "Display Settings" +msgstr "Configurações de exibição" + +#: ../../mod/settings.php:756 +msgid "Display Theme:" +msgstr "Tema do perfil:" + +#: ../../mod/settings.php:757 +msgid "Mobile Theme:" +msgstr "Tema móvel:" + +#: ../../mod/settings.php:758 +msgid "Update browser every xx seconds" +msgstr "Atualizar navegador a cada xx segundos" + +#: ../../mod/settings.php:758 +msgid "Minimum of 10 seconds, no maximum" +msgstr "Mínimo de 10 segundos, sem máximo" + +#: ../../mod/settings.php:759 +msgid "Maximum number of conversations to load at any time:" +msgstr "Número máximo permitido de conversas carregadas:" + +#: ../../mod/settings.php:759 +msgid "Maximum of 100 items" +msgstr "Máximo de 100 itens" + +#: ../../mod/settings.php:760 +msgid "Don't show emoticons" +msgstr "Não exibir emoticons" + +#: ../../mod/settings.php:761 +msgid "Do not view remote profiles in frames" +msgstr "Não exibir perfis remotos em frames" + +#: ../../mod/settings.php:761 +msgid "By default open in a sub-window of your own site" +msgstr "Por padrão, abrir em uma sub-janela do seu próprio site" + +#: ../../mod/settings.php:796 +msgid "Nobody except yourself" +msgstr "Ninguém exceto você mesmo" + +#: ../../mod/settings.php:797 +msgid "Only those you specifically allow" +msgstr "Apenas quem você der permissão" + +#: ../../mod/settings.php:798 +msgid "Anybody in your address book" +msgstr "Qualquer um nos seus contatos" + +#: ../../mod/settings.php:799 +msgid "Anybody on this website" +msgstr "Qualquer um neste site" + +#: ../../mod/settings.php:800 +msgid "Anybody in this network" +msgstr "Qualquer um nesta rede" + +#: ../../mod/settings.php:801 +msgid "Anybody authenticated" +msgstr "Qualquer um autenticado" + +#: ../../mod/settings.php:802 +msgid "Anybody on the internet" +msgstr "Qualquer um na internet" + +#: ../../mod/settings.php:879 +msgid "Publish your default profile in the network directory" +msgstr "Publicar seu perfil padrão no diretório da rede?" + +#: ../../mod/settings.php:879 ../../mod/settings.php:884 +#: ../../mod/settings.php:955 ../../mod/api.php:106 ../../mod/profiles.php:484 +msgid "No" +msgstr "Não" + +#: ../../mod/settings.php:879 ../../mod/settings.php:884 +#: ../../mod/settings.php:955 ../../mod/api.php:105 ../../mod/profiles.php:483 +msgid "Yes" +msgstr "Sim" + +#: ../../mod/settings.php:884 +msgid "Allow us to suggest you as a potential friend to new members?" +msgstr "Permitir sugerir você como amigo potencial para outros membros?" + +#: ../../mod/settings.php:888 ../../mod/profile_photo.php:288 +msgid "or" +msgstr "ou" + +#: ../../mod/settings.php:893 +msgid "Your channel address is" +msgstr "O endereço do seu canal é" + +#: ../../mod/settings.php:927 +msgid "Channel Settings" +msgstr "Configurações do canal" + +#: ../../mod/settings.php:936 +msgid "Basic Settings" +msgstr "Configurações básicas" + +#: ../../mod/settings.php:939 +msgid "Your Timezone:" +msgstr "Seu fuso horário:" + +#: ../../mod/settings.php:940 +msgid "Default Post Location:" +msgstr "Localização padrão de suas publicações:" + +#: ../../mod/settings.php:941 +msgid "Use Browser Location:" +msgstr "Usar localizador do navegador:" + +#: ../../mod/settings.php:943 +msgid "Adult Content" +msgstr "Conteúdo adulto" + +#: ../../mod/settings.php:943 +msgid "" +"This channel frequently or regularly publishes adult content. (Please tag " +"any adult material and/or nudity with #NSFW)" +msgstr "Este canal frequentemente ou regularmente publica conteúdo adulto. (Por favor marque qualquer material adulto e/ou nudez com #NSFW)" + +#: ../../mod/settings.php:945 +msgid "Security and Privacy Settings" +msgstr "Configurações de segurança e privacidade" + +#: ../../mod/settings.php:947 +msgid "Hide my online presence" +msgstr "Esconda minha presença online" + +#: ../../mod/settings.php:947 +msgid "Prevents displaying in your profile that you are online" +msgstr "Previne exibir em seu perfil que você está online" + +#: ../../mod/settings.php:949 +msgid "Simple Privacy Settings:" +msgstr "Configurações de privacidade simples:" + +#: ../../mod/settings.php:950 +msgid "" +"Very Public - extremely permissive (should be used with caution)" +msgstr "Muito público - extremamente permissivo (deve ser usado com cuidado)" + +#: ../../mod/settings.php:951 +msgid "" +"Typical - default public, privacy when desired (similar to social " +"network permissions but with improved privacy)" +msgstr "Típico - público por padrão, privado quando desejável (similar às permissões de redes sociais, mas com melhor privacidade)" + +#: ../../mod/settings.php:952 +msgid "Private - default private, never open or public" +msgstr "Privado - privado por padrão, nunca aberto ou público" + +#: ../../mod/settings.php:953 +msgid "Blocked - default blocked to/from everybody" +msgstr "Bloqueado - por padrão bloquado de/para todos" + +#: ../../mod/settings.php:955 +msgid "Allow others to tag your posts" +msgstr "Permitir que outros etiquetem suas publicações" + +#: ../../mod/settings.php:955 +msgid "" +"Often used by the community to retro-actively flag inappropriate content" +msgstr "Frequentemente utilizado pela comunidade para retroativamente sinalizar conteúdo inapropriado" + +#: ../../mod/settings.php:957 +msgid "Advanced Privacy Settings" +msgstr "Configurações de privacidade avançadas" + +#: ../../mod/settings.php:959 +msgid "Maximum Friend Requests/Day:" +msgstr "Número máximo de requisições de amizade por dia:" + +#: ../../mod/settings.php:959 +msgid "May reduce spam activity" +msgstr "Pode reduzir a frequência de spam" + +#: ../../mod/settings.php:960 +msgid "Default Post Permissions" +msgstr "Permissões padrão de publicação" + +#: ../../mod/settings.php:961 ../../mod/mitem.php:134 ../../mod/mitem.php:177 +msgid "(click to open/close)" +msgstr "(clique para abrir/fechar)" + +#: ../../mod/settings.php:972 +msgid "Maximum private messages per day from unknown people:" +msgstr "Máximo número de mensagens privadas por dia de pessoas desconhecidas:" + +#: ../../mod/settings.php:972 +msgid "Useful to reduce spamming" +msgstr "Útil para reduzir a frequência de spam" + +#: ../../mod/settings.php:975 +msgid "Notification Settings" +msgstr "Configurações de notificação" + +#: ../../mod/settings.php:976 +msgid "By default post a status message when:" +msgstr "Por padrão, publicar uma mensagem de status quando:" + +#: ../../mod/settings.php:977 +msgid "accepting a friend request" +msgstr "aceitar um pedido de amizade" + +#: ../../mod/settings.php:978 +msgid "joining a forum/community" +msgstr "associar-se a um fórum/comunidade" + +#: ../../mod/settings.php:979 +msgid "making an interesting profile change" +msgstr "modificar algo interessante em seu perfil" + +#: ../../mod/settings.php:980 +msgid "Send a notification email when:" +msgstr "Enviar um e-mail de notificação quando:" + +#: ../../mod/settings.php:981 +msgid "You receive an introduction" +msgstr "Você recebeu uma apresentação" + +#: ../../mod/settings.php:982 +msgid "Your introductions are confirmed" +msgstr "Suas solicitações forem confirmadas" + +#: ../../mod/settings.php:983 +msgid "Someone writes on your profile wall" +msgstr "Alguém escrever no mural do seu perfil" + +#: ../../mod/settings.php:984 +msgid "Someone writes a followup comment" +msgstr "Alguém comentou a sua mensagem" + +#: ../../mod/settings.php:985 +msgid "You receive a private message" +msgstr "Você recebeu uma mensagem privada" + +#: ../../mod/settings.php:986 +msgid "You receive a friend suggestion" +msgstr "Você recebe uma sugestão de amizade" + +#: ../../mod/settings.php:987 +msgid "You are tagged in a post" +msgstr "Você é mencionado num post" + +#: ../../mod/settings.php:988 +msgid "You are poked/prodded/etc. in a post" +msgstr "Você foi cutucado/espetado/etc. numa publicação" + +#: ../../mod/settings.php:991 +msgid "Advanced Account/Page Type Settings" +msgstr "Configurações avançadas de conta/tipo de página" + +#: ../../mod/settings.php:992 +msgid "Change the behaviour of this account for special situations" +msgstr "Mudar o comportamento dessa conta em situações especiais" + +#: ../../mod/settings.php:995 +msgid "" +"Please enable expert mode (in Settings > " +"Additional features) to adjust!" +msgstr "Por favor, habilite o modo expert (em Configurações > Recursos adicionais) para ajustar!" + +#: ../../mod/settings.php:996 +msgid "Miscellaneous Settings" +msgstr "Configurações miscelâneas" + +#: ../../mod/settings.php:998 +msgid "Personal menu to display in your channel pages" +msgstr "Menu pessoal para exibir nas páginas dos seus canais" #: ../../mod/menu.php:21 msgid "Menu updated." @@ -3564,16 +3977,6 @@ msgid "" " and/or create new posts for you?" msgstr "Deseja autorizar esta aplicação a acessar suas publicações e contatos e/ou criar novas publicações para você?" -#: ../../mod/api.php:105 ../../mod/profiles.php:483 ../../mod/settings.php:878 -#: ../../mod/settings.php:883 -msgid "Yes" -msgstr "Sim" - -#: ../../mod/api.php:106 ../../mod/profiles.php:484 ../../mod/settings.php:878 -#: ../../mod/settings.php:883 -msgid "No" -msgstr "Não" - #: ../../mod/apps.php:8 msgid "No installed applications." msgstr "Não existe nenhuma aplicação instalada." @@ -3602,6 +4005,36 @@ msgstr "Meus links guardados" msgid "My Connections Bookmarks" msgstr "Links guardados das minhas conexões" +#: ../../mod/item.php:145 +msgid "Unable to locate original post." +msgstr "Não foi possível localizar a publicação original." + +#: ../../mod/item.php:346 +msgid "Empty post discarded." +msgstr "A publicação em branco foi descartada." + +#: ../../mod/item.php:388 +msgid "Executable content type not permitted to this channel." +msgstr "Conteúdo de tipo executável não permitido para este canal." + +#: ../../mod/item.php:845 +msgid "System error. Post not saved." +msgstr "Erro no sistema. A publicação não foi salva." + +#: ../../mod/item.php:1112 ../../mod/wall_upload.php:34 +msgid "Wall Photos" +msgstr "Fotos do mural" + +#: ../../mod/item.php:1192 +#, php-format +msgid "You have reached your limit of %1$.0f top level posts." +msgstr "Você atingiu o seu limite de %1$.0f publicações de novos tópicos." + +#: ../../mod/item.php:1198 +#, php-format +msgid "You have reached your limit of %1$.0f webpages." +msgstr "Você atingiu o seu limite de %1$.0f páginas web." + #: ../../mod/subthread.php:105 #, php-format msgid "%1$s is following %2$s's %3$s" @@ -3614,7 +4047,7 @@ msgid "[Embedded content - reload page to view]" msgstr "[Conteúdo incorporado - recarregue a página para ver]" #: ../../mod/chanview.php:77 ../../mod/home.php:50 ../../mod/page.php:47 -#: ../../mod/wall_upload.php:35 +#: ../../mod/wall_upload.php:28 msgid "Channel not found." msgstr "O canal não foi encontrado." @@ -3842,10 +4275,6 @@ msgstr "Novo elemento de menu" msgid "Menu Item Permissions" msgstr "Permissões do item do menu" -#: ../../mod/mitem.php:134 ../../mod/mitem.php:177 ../../mod/settings.php:947 -msgid "(click to open/close)" -msgstr "(clique para abrir/fechar)" - #: ../../mod/mitem.php:136 ../../mod/mitem.php:180 msgid "Link text" msgstr "Texto do link" @@ -3962,15 +4391,15 @@ msgstr "As configurações de tema foram atualizadas." msgid "Site" msgstr "Site" -#: ../../mod/admin.php:89 ../../mod/admin.php:737 ../../mod/admin.php:749 +#: ../../mod/admin.php:89 ../../mod/admin.php:738 ../../mod/admin.php:750 msgid "Users" msgstr "Usuários" -#: ../../mod/admin.php:90 ../../mod/admin.php:835 ../../mod/admin.php:877 +#: ../../mod/admin.php:90 ../../mod/admin.php:836 ../../mod/admin.php:878 msgid "Plugins" msgstr "Plugins" -#: ../../mod/admin.php:91 ../../mod/admin.php:1040 ../../mod/admin.php:1076 +#: ../../mod/admin.php:91 ../../mod/admin.php:1041 ../../mod/admin.php:1077 msgid "Themes" msgstr "Temas" @@ -3982,7 +4411,7 @@ msgstr "Servidor" msgid "DB updates" msgstr "Atualizações do Banco de Dados" -#: ../../mod/admin.php:107 ../../mod/admin.php:114 ../../mod/admin.php:1163 +#: ../../mod/admin.php:107 ../../mod/admin.php:114 ../../mod/admin.php:1164 msgid "Logs" msgstr "Logs" @@ -3999,8 +4428,8 @@ msgid "Message queues" msgstr "Filas de mensagem" #: ../../mod/admin.php:194 ../../mod/admin.php:429 ../../mod/admin.php:528 -#: ../../mod/admin.php:736 ../../mod/admin.php:834 ../../mod/admin.php:876 -#: ../../mod/admin.php:1039 ../../mod/admin.php:1075 ../../mod/admin.php:1162 +#: ../../mod/admin.php:737 ../../mod/admin.php:835 ../../mod/admin.php:877 +#: ../../mod/admin.php:1040 ../../mod/admin.php:1076 ../../mod/admin.php:1163 msgid "Administration" msgstr "Administração" @@ -4028,10 +4457,6 @@ msgstr "Plugins ativos" msgid "Site settings updated." msgstr "As configurações de site foram atualizadas." -#: ../../mod/admin.php:379 ../../mod/settings.php:709 -msgid "No special theme for mobile devices" -msgstr "Sem tema especial para aparelhos móveis" - #: ../../mod/admin.php:381 msgid "No special theme for accessibility" msgstr "Sem tema especial para acessibilidade" @@ -4274,7 +4699,7 @@ msgstr "Carga máxima do sistema antes de adiar processos de entrega e coleta - msgid "No server found" msgstr "Nenhum servidor foi encontrado" -#: ../../mod/admin.php:527 ../../mod/admin.php:750 +#: ../../mod/admin.php:527 ../../mod/admin.php:751 msgid "ID" msgstr "ID" @@ -4363,136 +4788,136 @@ msgstr "O usuário/a '%s' foi desbloqueado/a" msgid "User '%s' blocked" msgstr "O usuário/a '%s' foi bloqueado/a" -#: ../../mod/admin.php:739 +#: ../../mod/admin.php:740 msgid "select all" msgstr "selecionar tudo" -#: ../../mod/admin.php:740 +#: ../../mod/admin.php:741 msgid "User registrations waiting for confirm" msgstr "Registros de usuário aguardando confirmação" -#: ../../mod/admin.php:741 +#: ../../mod/admin.php:742 msgid "Request date" msgstr "Data de requisição" -#: ../../mod/admin.php:742 +#: ../../mod/admin.php:743 msgid "No registrations." msgstr "Nenhum registro." -#: ../../mod/admin.php:743 +#: ../../mod/admin.php:744 msgid "Approve" msgstr "Aprovar" -#: ../../mod/admin.php:744 +#: ../../mod/admin.php:745 msgid "Deny" msgstr "Negar" -#: ../../mod/admin.php:746 ../../mod/connedit.php:333 +#: ../../mod/admin.php:747 ../../mod/connedit.php:333 #: ../../mod/connedit.php:475 msgid "Block" msgstr "Bloquear" -#: ../../mod/admin.php:747 ../../mod/connedit.php:333 +#: ../../mod/admin.php:748 ../../mod/connedit.php:333 #: ../../mod/connedit.php:475 msgid "Unblock" msgstr "Desbloquear" -#: ../../mod/admin.php:750 +#: ../../mod/admin.php:751 msgid "Register date" msgstr "Data de registro" -#: ../../mod/admin.php:750 +#: ../../mod/admin.php:751 msgid "Last login" msgstr "Última autenticação" -#: ../../mod/admin.php:750 +#: ../../mod/admin.php:751 msgid "Expires" msgstr "Expira" -#: ../../mod/admin.php:750 +#: ../../mod/admin.php:751 msgid "Service Class" msgstr "Classe de serviço" -#: ../../mod/admin.php:752 +#: ../../mod/admin.php:753 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "Os usuários selecionados serão deletados!\\n\\nTudo o que esses usuários postaram neste site será permanentemente deletado!\\n\\nTem certeza?" -#: ../../mod/admin.php:753 +#: ../../mod/admin.php:754 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "O/A usuário/a {0} será deletado/a!\\n\\nTudo o que esse/a usuário/a postou neste site será permanentemente deletado!\\n\\nTem certeza?" -#: ../../mod/admin.php:794 +#: ../../mod/admin.php:795 #, php-format msgid "Plugin %s disabled." msgstr "Plugin %s desabilitado." -#: ../../mod/admin.php:798 +#: ../../mod/admin.php:799 #, php-format msgid "Plugin %s enabled." msgstr "Plugin %s habilitado." -#: ../../mod/admin.php:808 ../../mod/admin.php:1010 +#: ../../mod/admin.php:809 ../../mod/admin.php:1011 msgid "Disable" msgstr "Desabilitar" -#: ../../mod/admin.php:810 ../../mod/admin.php:1012 +#: ../../mod/admin.php:811 ../../mod/admin.php:1013 msgid "Enable" msgstr "Habilitar" -#: ../../mod/admin.php:836 ../../mod/admin.php:1041 +#: ../../mod/admin.php:837 ../../mod/admin.php:1042 msgid "Toggle" msgstr "Alternar" -#: ../../mod/admin.php:844 ../../mod/admin.php:1051 +#: ../../mod/admin.php:845 ../../mod/admin.php:1052 msgid "Author: " msgstr "Autor:" -#: ../../mod/admin.php:845 ../../mod/admin.php:1052 +#: ../../mod/admin.php:846 ../../mod/admin.php:1053 msgid "Maintainer: " msgstr "Mantenedor:" -#: ../../mod/admin.php:974 +#: ../../mod/admin.php:975 msgid "No themes found." msgstr "Nenhum tema foi encontrado." -#: ../../mod/admin.php:1033 +#: ../../mod/admin.php:1034 msgid "Screenshot" msgstr "Captura de tela" -#: ../../mod/admin.php:1081 +#: ../../mod/admin.php:1082 msgid "[Experimental]" msgstr "[Experimental]" -#: ../../mod/admin.php:1082 +#: ../../mod/admin.php:1083 msgid "[Unsupported]" msgstr "[Desassistido]" -#: ../../mod/admin.php:1109 +#: ../../mod/admin.php:1110 msgid "Log settings updated." msgstr "As configurações de log foram atualizadas." -#: ../../mod/admin.php:1165 +#: ../../mod/admin.php:1166 msgid "Clear" msgstr "Limpar" -#: ../../mod/admin.php:1171 +#: ../../mod/admin.php:1172 msgid "Debugging" msgstr "Depuração" -#: ../../mod/admin.php:1172 +#: ../../mod/admin.php:1173 msgid "Log file" msgstr "Arquivo de log" -#: ../../mod/admin.php:1172 +#: ../../mod/admin.php:1173 msgid "" "Must be writable by web server. Relative to your Red top-level directory." msgstr "É necessário que o servidor web possa escrever neste arquivo. Relativo ao diretório raiz da Red." -#: ../../mod/admin.php:1173 +#: ../../mod/admin.php:1174 msgid "Log level" msgstr "Nível do log" @@ -4518,17 +4943,17 @@ msgstr "O item não está editável" msgid "Delete item?" msgstr "Deletar item?" -#: ../../mod/editpost.php:107 ../../mod/editlayout.php:110 +#: ../../mod/editpost.php:116 ../../mod/editlayout.php:110 #: ../../mod/editwebpage.php:148 ../../mod/editblock.php:124 msgid "Insert YouTube video" msgstr "Inserir vídeo do YouTube" -#: ../../mod/editpost.php:108 ../../mod/editlayout.php:111 +#: ../../mod/editpost.php:117 ../../mod/editlayout.php:111 #: ../../mod/editwebpage.php:149 ../../mod/editblock.php:125 msgid "Insert Vorbis [.ogg] video" msgstr "Inserir vídeo Vorbis (.ogg)" -#: ../../mod/editpost.php:109 ../../mod/editlayout.php:112 +#: ../../mod/editpost.php:118 ../../mod/editlayout.php:112 #: ../../mod/editwebpage.php:150 ../../mod/editblock.php:126 msgid "Insert Vorbis [.ogg] audio" msgstr "Inserir áudio Vorbis (.ogg)" @@ -4698,10 +5123,6 @@ msgstr "Ocultar ou deixar de ocultar esta conexão" msgid "Delete this connection" msgstr "Deletar esta conexão" -#: ../../mod/connedit.php:395 -msgid "Unknown" -msgstr "Desconhecidos" - #: ../../mod/connedit.php:405 ../../mod/connedit.php:434 msgid "Approve this connection" msgstr "Aprovar esta conexão" @@ -4898,15 +5319,29 @@ msgstr "Não encontrada" msgid "Page not found." msgstr "Página não encontrada." -#: ../../mod/rmagic.php:56 +#: ../../mod/rmagic.php:38 +msgid "" +"We encountered a problem while logging in with the OpenID you provided. " +"Please check the correct spelling of the ID." +msgstr "Encontramos um problema ao entrar com a OpenID fornecida. Por favor, verifique se digitou corretamente a ID." + +#: ../../mod/rmagic.php:38 +msgid "The error message was:" +msgstr "A mensagem de erro foi:" + +#: ../../mod/rmagic.php:42 +msgid "Authentication failed." +msgstr "A autenticação falhou." + +#: ../../mod/rmagic.php:78 msgid "Remote Authentication" msgstr "Autenticação remota" -#: ../../mod/rmagic.php:57 +#: ../../mod/rmagic.php:79 msgid "Enter your channel address (e.g. channel@example.com)" msgstr "Entre o endereço do seu canal (e.g. canal@exemplo.com)" -#: ../../mod/rmagic.php:58 +#: ../../mod/rmagic.php:80 msgid "Authenticate" msgstr "Autenticar" @@ -5196,7 +5631,7 @@ msgid "" " logout and retry." msgstr "Autenticação remota bloqueada. Você está autenticado neste site localmente. Por favor, saia e tente novamente." -#: ../../mod/post.php:256 +#: ../../mod/post.php:256 ../../mod/openid.php:70 ../../mod/openid.php:175 #, php-format msgid "Welcome %s. Remote authentication successful." msgstr "Bem vindo %s. Autenticação remota realizada com sucesso." @@ -5645,9 +6080,10 @@ msgstr "Doações para o projeto" #: ../../mod/siteinfo.php:94 msgid "" "

The Red Matrix is provided for you by volunteers working in their spare " -"time. Your support will help us to build a better web. Select the following " -"option for a one-time donation of your choosing

" -msgstr "

A Red Matrix é oferecida a você por voluntários trabalhando no seu tempo livre. Seu apoio irá nos ajudar a construir uma web melhor. Selecione uma das opções abaixo para realizar uma única doação de sua escolha:

" +"time. Your support will help us to build a better, freer, and privacy " +"respecting web. Select the following option for a one-time donation of your " +"choosing

" +msgstr "

A Red Matrix é oferecida a você por voluntários trabalhando no seu tempo livre. Seu apoio irá nos ajudar a construir uma web melhor, mais livre e com respeito à privacidade. Selecione uma das opções abaixo para realizar uma única doação de sua escolha:

" #: ../../mod/siteinfo.php:95 msgid "

or

" @@ -5745,7 +6181,7 @@ msgid "" "Password reset failed." msgstr "Não foi possível verificar a solicitação (você pode tê-la submetido anteriormente). A senha não foi restaurada." -#: ../../mod/lostpass.php:85 ../../boot.php:1434 +#: ../../mod/lostpass.php:85 ../../boot.php:1436 msgid "Password Reset" msgstr "Reiniciar a senha" @@ -5794,407 +6230,6 @@ msgstr "Endereço de e-mail" msgid "Reset" msgstr "Restaurar" -#: ../../mod/settings.php:71 -msgid "Name is required" -msgstr "O nome é obrigatório" - -#: ../../mod/settings.php:75 -msgid "Key and Secret are required" -msgstr "A chave e o segredo são obrigatórios" - -#: ../../mod/settings.php:79 ../../mod/settings.php:542 -msgid "Update" -msgstr "Atualizar" - -#: ../../mod/settings.php:195 -msgid "Passwords do not match. Password unchanged." -msgstr "As senhas não correspondem. A senha não foi modificada." - -#: ../../mod/settings.php:199 -msgid "Empty passwords are not allowed. Password unchanged." -msgstr "Não é permitido uma senha em branco. A senha não foi modificada." - -#: ../../mod/settings.php:212 -msgid "Password changed." -msgstr "A senha foi modificada." - -#: ../../mod/settings.php:214 -msgid "Password update failed. Please try again." -msgstr "Não foi possível atualizar a senha. Por favor, tente novamente." - -#: ../../mod/settings.php:228 -msgid "Not valid email." -msgstr "Não é um e-mail válido" - -#: ../../mod/settings.php:231 -msgid "Protected email address. Cannot change to that email." -msgstr "Endereço de e-mail protegido. Não é possível mudar para esse e-mail." - -#: ../../mod/settings.php:240 -msgid "System failure storing new email. Please try again." -msgstr "Falha do sistema ao armazenar novo e-mail. Por favor, tente novamente." - -#: ../../mod/settings.php:444 -msgid "Settings updated." -msgstr "As configurações foram atualizadas." - -#: ../../mod/settings.php:515 ../../mod/settings.php:541 -#: ../../mod/settings.php:577 -msgid "Add application" -msgstr "Adicionar aplicação" - -#: ../../mod/settings.php:518 ../../mod/settings.php:544 -msgid "Name" -msgstr "Nome" - -#: ../../mod/settings.php:518 -msgid "Name of application" -msgstr "Nome da aplicação" - -#: ../../mod/settings.php:519 ../../mod/settings.php:545 -msgid "Consumer Key" -msgstr "Chave de consumidor" - -#: ../../mod/settings.php:519 ../../mod/settings.php:520 -msgid "Automatically generated - change if desired. Max length 20" -msgstr "Gerado automaticamente - troque se desejável. Comprimento máximo 20" - -#: ../../mod/settings.php:520 ../../mod/settings.php:546 -msgid "Consumer Secret" -msgstr "Segredo de consumidor" - -#: ../../mod/settings.php:521 ../../mod/settings.php:547 -msgid "Redirect" -msgstr "Redirecionamento" - -#: ../../mod/settings.php:521 -msgid "" -"Redirect URI - leave blank unless your application specifically requires " -"this" -msgstr "URI de redirecionamento - deixe em branco, a não ser que sua aplicação especificamente requeira isso" - -#: ../../mod/settings.php:522 ../../mod/settings.php:548 -msgid "Icon url" -msgstr "URL do ícone" - -#: ../../mod/settings.php:522 -msgid "Optional" -msgstr "Opcional" - -#: ../../mod/settings.php:533 -msgid "You can't edit this application." -msgstr "Você não pode editar esta aplicação." - -#: ../../mod/settings.php:576 -msgid "Connected Apps" -msgstr "Aplicações conectadas" - -#: ../../mod/settings.php:580 -msgid "Client key starts with" -msgstr "Chave do cliente começa com" - -#: ../../mod/settings.php:581 -msgid "No name" -msgstr "Sem nome" - -#: ../../mod/settings.php:582 -msgid "Remove authorization" -msgstr "Remover autorização" - -#: ../../mod/settings.php:593 -msgid "No feature settings configured" -msgstr "Não foi definida nenhuma configuração do recurso" - -#: ../../mod/settings.php:601 -msgid "Feature Settings" -msgstr "Configurações do recurso" - -#: ../../mod/settings.php:624 -msgid "Account Settings" -msgstr "Configurações da conta" - -#: ../../mod/settings.php:625 -msgid "Password Settings" -msgstr "Configurações da senha" - -#: ../../mod/settings.php:626 -msgid "New Password:" -msgstr "Nova senha:" - -#: ../../mod/settings.php:627 -msgid "Confirm:" -msgstr "Confirme:" - -#: ../../mod/settings.php:627 -msgid "Leave password fields blank unless changing" -msgstr "Deixe os campos de senha em branco, a não ser que você queira alterá-la" - -#: ../../mod/settings.php:629 ../../mod/settings.php:925 -msgid "Email Address:" -msgstr "Endereço de e-mail:" - -#: ../../mod/settings.php:630 -msgid "Remove Account" -msgstr "Remover conta" - -#: ../../mod/settings.php:631 -msgid "Warning: This action is permanent and cannot be reversed." -msgstr "Atenção: Esta ação é permanente e não pode ser revertida." - -#: ../../mod/settings.php:647 -msgid "Off" -msgstr "Desligado" - -#: ../../mod/settings.php:647 -msgid "On" -msgstr "Ligado" - -#: ../../mod/settings.php:654 -msgid "Additional Features" -msgstr "Recursos adicionais" - -#: ../../mod/settings.php:679 -msgid "Connector Settings" -msgstr "Configurações do conector" - -#: ../../mod/settings.php:750 -msgid "Display Settings" -msgstr "Configurações de exibição" - -#: ../../mod/settings.php:756 -msgid "Display Theme:" -msgstr "Tema do perfil:" - -#: ../../mod/settings.php:757 -msgid "Mobile Theme:" -msgstr "Tema móvel:" - -#: ../../mod/settings.php:758 -msgid "Update browser every xx seconds" -msgstr "Atualizar navegador a cada xx segundos" - -#: ../../mod/settings.php:758 -msgid "Minimum of 10 seconds, no maximum" -msgstr "Mínimo de 10 segundos, sem máximo" - -#: ../../mod/settings.php:759 -msgid "Maximum number of conversations to load at any time:" -msgstr "Número máximo permitido de conversas carregadas:" - -#: ../../mod/settings.php:759 -msgid "Maximum of 100 items" -msgstr "Máximo de 100 itens" - -#: ../../mod/settings.php:760 -msgid "Don't show emoticons" -msgstr "Não exibir emoticons" - -#: ../../mod/settings.php:761 -msgid "Do not view remote profiles in frames" -msgstr "Não exibir perfis remotos em frames" - -#: ../../mod/settings.php:761 -msgid "By default open in a sub-window of your own site" -msgstr "Por padrão, abrir em uma sub-janela do seu próprio site" - -#: ../../mod/settings.php:796 -msgid "Nobody except yourself" -msgstr "Ninguém exceto você mesmo" - -#: ../../mod/settings.php:797 -msgid "Only those you specifically allow" -msgstr "Apenas quem você der permissão" - -#: ../../mod/settings.php:798 -msgid "Anybody in your address book" -msgstr "Qualquer um nos seus contatos" - -#: ../../mod/settings.php:799 -msgid "Anybody on this website" -msgstr "Qualquer um neste site" - -#: ../../mod/settings.php:800 -msgid "Anybody in this network" -msgstr "Qualquer um nesta rede" - -#: ../../mod/settings.php:801 -msgid "Anybody on the internet" -msgstr "Qualquer um na internet" - -#: ../../mod/settings.php:878 -msgid "Publish your default profile in the network directory" -msgstr "Publicar seu perfil padrão no diretório da rede?" - -#: ../../mod/settings.php:883 -msgid "Allow us to suggest you as a potential friend to new members?" -msgstr "Permitir sugerir você como amigo potencial para outros membros?" - -#: ../../mod/settings.php:887 ../../mod/profile_photo.php:288 -msgid "or" -msgstr "ou" - -#: ../../mod/settings.php:892 -msgid "Your channel address is" -msgstr "O endereço do seu canal é" - -#: ../../mod/settings.php:914 -msgid "Channel Settings" -msgstr "Configurações do canal" - -#: ../../mod/settings.php:923 -msgid "Basic Settings" -msgstr "Configurações básicas" - -#: ../../mod/settings.php:926 -msgid "Your Timezone:" -msgstr "Seu fuso horário:" - -#: ../../mod/settings.php:927 -msgid "Default Post Location:" -msgstr "Localização padrão de suas publicações:" - -#: ../../mod/settings.php:928 -msgid "Use Browser Location:" -msgstr "Usar localizador do navegador:" - -#: ../../mod/settings.php:930 -msgid "Adult Content" -msgstr "Conteúdo adulto" - -#: ../../mod/settings.php:930 -msgid "" -"This channel frequently or regularly publishes adult content. (Please tag " -"any adult material and/or nudity with #NSFW)" -msgstr "Este canal frequentemente ou regularmente publica conteúdo adulto. (Por favor marque qualquer material adulto e/ou nudez com #NSFW)" - -#: ../../mod/settings.php:932 -msgid "Security and Privacy Settings" -msgstr "Configurações de segurança e privacidade" - -#: ../../mod/settings.php:934 -msgid "Hide my online presence" -msgstr "Esconda minha presença online" - -#: ../../mod/settings.php:934 -msgid "Prevents displaying in your profile that you are online" -msgstr "Previne exibir em seu perfil que você está online" - -#: ../../mod/settings.php:936 -msgid "Simple Privacy Settings:" -msgstr "Configurações de privacidade simples:" - -#: ../../mod/settings.php:937 -msgid "" -"Very Public - extremely permissive (should be used with caution)" -msgstr "Muito público - extremamente permissivo (deve ser usado com cuidado)" - -#: ../../mod/settings.php:938 -msgid "" -"Typical - default public, privacy when desired (similar to social " -"network permissions but with improved privacy)" -msgstr "Típico - público por padrão, privado quando desejável (similar às permissões de redes sociais, mas com melhor privacidade)" - -#: ../../mod/settings.php:939 -msgid "Private - default private, never open or public" -msgstr "Privado - privado por padrão, nunca aberto ou público" - -#: ../../mod/settings.php:940 -msgid "Blocked - default blocked to/from everybody" -msgstr "Bloqueado - por padrão bloquado de/para todos" - -#: ../../mod/settings.php:943 -msgid "Advanced Privacy Settings" -msgstr "Configurações de privacidade avançadas" - -#: ../../mod/settings.php:945 -msgid "Maximum Friend Requests/Day:" -msgstr "Número máximo de requisições de amizade por dia:" - -#: ../../mod/settings.php:945 -msgid "May reduce spam activity" -msgstr "Pode reduzir a frequência de spam" - -#: ../../mod/settings.php:946 -msgid "Default Post Permissions" -msgstr "Permissões padrão de publicação" - -#: ../../mod/settings.php:958 -msgid "Maximum private messages per day from unknown people:" -msgstr "Máximo número de mensagens privadas por dia de pessoas desconhecidas:" - -#: ../../mod/settings.php:958 -msgid "Useful to reduce spamming" -msgstr "Útil para reduzir a frequência de spam" - -#: ../../mod/settings.php:961 -msgid "Notification Settings" -msgstr "Configurações de notificação" - -#: ../../mod/settings.php:962 -msgid "By default post a status message when:" -msgstr "Por padrão, publicar uma mensagem de status quando:" - -#: ../../mod/settings.php:963 -msgid "accepting a friend request" -msgstr "aceitar um pedido de amizade" - -#: ../../mod/settings.php:964 -msgid "joining a forum/community" -msgstr "associar-se a um fórum/comunidade" - -#: ../../mod/settings.php:965 -msgid "making an interesting profile change" -msgstr "modificar algo interessante em seu perfil" - -#: ../../mod/settings.php:966 -msgid "Send a notification email when:" -msgstr "Enviar um e-mail de notificação quando:" - -#: ../../mod/settings.php:967 -msgid "You receive an introduction" -msgstr "Você recebeu uma apresentação" - -#: ../../mod/settings.php:968 -msgid "Your introductions are confirmed" -msgstr "Suas solicitações forem confirmadas" - -#: ../../mod/settings.php:969 -msgid "Someone writes on your profile wall" -msgstr "Alguém escrever no mural do seu perfil" - -#: ../../mod/settings.php:970 -msgid "Someone writes a followup comment" -msgstr "Alguém comentou a sua mensagem" - -#: ../../mod/settings.php:971 -msgid "You receive a private message" -msgstr "Você recebeu uma mensagem privada" - -#: ../../mod/settings.php:972 -msgid "You receive a friend suggestion" -msgstr "Você recebe uma sugestão de amizade" - -#: ../../mod/settings.php:973 -msgid "You are tagged in a post" -msgstr "Você é mencionado num post" - -#: ../../mod/settings.php:974 -msgid "You are poked/prodded/etc. in a post" -msgstr "Você foi cutucado/espetado/etc. numa publicação" - -#: ../../mod/settings.php:977 -msgid "Advanced Account/Page Type Settings" -msgstr "Configurações avançadas de conta/tipo de página" - -#: ../../mod/settings.php:978 -msgid "Change the behaviour of this account for special situations" -msgstr "Mudar o comportamento dessa conta em situações especiais" - -#: ../../mod/settings.php:981 -msgid "" -"Please enable expert mode (in Settings > Additional features) to adjust!" -msgstr "Por favor, habilite o modo expert (em Configurações > Recursos adicionais) para ajustar!" - #: ../../mod/import.php:36 msgid "Nothing to import." msgstr "Nada a importar." @@ -6272,32 +6307,32 @@ msgstr "Para qualquer das opções, por favor escolha se deseja fazer deste hub msgid "Make this hub my primary location" msgstr "Faça deste hub meu local primário" -#: ../../mod/manage.php:63 +#: ../../mod/manage.php:64 #, php-format msgid "You have created %1$.0f of %2$.0f allowed channels." msgstr "Você criou %1$.0f de %2$.0f canais permitidos." -#: ../../mod/manage.php:71 +#: ../../mod/manage.php:72 msgid "Create a new channel" msgstr "Criar um novo canal" -#: ../../mod/manage.php:76 +#: ../../mod/manage.php:77 msgid "Channel Manager" msgstr "Administrador do canal" -#: ../../mod/manage.php:77 +#: ../../mod/manage.php:78 msgid "Current Channel" msgstr "Canal atual" -#: ../../mod/manage.php:79 +#: ../../mod/manage.php:80 msgid "Attach to one of your channels by selecting it." msgstr "Selecione um dos seus canais para utilizá-lo." -#: ../../mod/manage.php:80 +#: ../../mod/manage.php:81 msgid "Default Channel" msgstr "Canal padrão" -#: ../../mod/manage.php:81 +#: ../../mod/manage.php:82 msgid "Make Default" msgstr "Tornar padrão" @@ -6403,6 +6438,10 @@ msgstr "Comunicação segura indisponível. Você talvez consig msgid "Send Reply" msgstr "Enviar resposta" +#: ../../mod/openid.php:26 +msgid "OpenID protocol error. No ID returned." +msgstr "Erro do protocolo OpenID. Nenhuma ID retornada." + #: ../../mod/editlayout.php:72 msgid "Edit Layout" msgstr "Editar layout" @@ -6944,7 +6983,7 @@ msgstr "ou nome de um álbum já existente: " #: ../../mod/photos.php:605 msgid "Do not show a status post for this upload" -msgstr "Não mostrar uma publicação de status para este carregamento" +msgstr "Não exibir uma publicação de status para este carregamento" #: ../../mod/photos.php:656 ../../mod/photos.php:678 ../../mod/photos.php:1127 #: ../../mod/photos.php:1142 @@ -7285,41 +7324,41 @@ msgstr "Imagem de cabeçalho" msgid "Header image only on profile pages" msgstr "Imagem de cabeçalho apenas em páginas de perfil" -#: ../../boot.php:1232 +#: ../../boot.php:1234 #, php-format msgid "Update %s failed. See error logs." msgstr "A atualização %s falhou. Veja os logs de erro." -#: ../../boot.php:1235 +#: ../../boot.php:1237 #, php-format msgid "Update Error at %s" msgstr "Erro de atualização em %s" -#: ../../boot.php:1399 +#: ../../boot.php:1401 msgid "" "Create an account to access services and applications within the Red Matrix" msgstr "Crie uma conta para acessar serviços e aplicações na Red Matrix" -#: ../../boot.php:1427 +#: ../../boot.php:1429 msgid "Password" msgstr "Senha" -#: ../../boot.php:1428 +#: ../../boot.php:1430 msgid "Remember me" msgstr "Lembrar de mim" -#: ../../boot.php:1433 +#: ../../boot.php:1435 msgid "Forgot your password?" msgstr "Esqueceu a sua senha?" -#: ../../boot.php:1498 +#: ../../boot.php:1500 msgid "permission denied" msgstr "permissão negada" -#: ../../boot.php:1499 +#: ../../boot.php:1501 msgid "Got Zot?" msgstr "Já tem Zot?" -#: ../../boot.php:1899 +#: ../../boot.php:1906 msgid "toggle mobile" msgstr "alternar para interface móvel" diff --git a/view/pt-br/passchanged_eml.tpl b/view/pt-br/passchanged_eml.tpl index 0d94be3c2..8a9e0b637 100644 --- a/view/pt-br/passchanged_eml.tpl +++ b/view/pt-br/passchanged_eml.tpl @@ -1,20 +1,22 @@ -Dear {{$username}}, - Your password has been changed as requested. Please retain this -information for your records (or change your password immediately to -something that you will remember). +Caro/a {{$username}}, + + Sua senha foi modificada como solicitado. Por favor retenha +essa informação contigo (ou modifique sua senha imediatamente para +algo que você se lembrará). -Your login details are as follows: +Suas informações de autenticação são as seguintes: -Site Location: {{$siteurl}} -Login Name: {{$email}} -Password: {{$new_password}} +Localização do site: {{$siteurl}} +Nome: {{$email}} +Senha: {{$new_password}} -You may change that password from your account settings page after logging in. +Você pode modificar esta senha a partir da página de configurações de conta, +após autenticar-se. -Sincerely, - {{$sitename}} Administrator +Atenciosamente, + {{$sitename}} Administrador diff --git a/view/pt-br/register_open_eml.tpl b/view/pt-br/register_open_eml.tpl index 4b397201c..6dd4b714b 100644 --- a/view/pt-br/register_open_eml.tpl +++ b/view/pt-br/register_open_eml.tpl @@ -1,19 +1,18 @@ -An account has been created at {{$sitename}} for this email address. -The login details are as follows: +Uma conta foi criada em {{$sitename}} para este endereço de e-mail. +Os detalhes de autenticação são os seguintes: -Site Location: {{$siteurl}} -Login: {{$email}} -Password: (the password which was provided during registration) +Localização do site: {{$siteurl}} +Nome: {{$email}} +Senha: (the password which was provided during registration) -If this account was created without your knowledge and is not desired, you may -visit this site and reset the password. This will allow you to remove the -account from the links on the Settings page, and we -apologise for any inconvenience. +Se esta conta foi criada sem seu conhecimento e não é desejada, você pode +visitar o site e reiniciar a senha. Isso permitirá que você a remova a partir +da página de Configurações, e nesse caso desculpamo-nos pela inconveniência. -Thank you and welcome to {{$sitename}}. +Obrigado e bem vindo a {{$sitename}}. -Sincerely, - {{$sitename}} Administrator +Atenciosamente, + {{$sitename}} Administrador diff --git a/view/pt-br/register_verify_eml.tpl b/view/pt-br/register_verify_eml.tpl index 85d9a12d3..9576039bc 100644 --- a/view/pt-br/register_verify_eml.tpl +++ b/view/pt-br/register_verify_eml.tpl @@ -1,25 +1,25 @@ -A new user registration request was received at {{$sitename}} which requires -your approval. +Uma nova solicitação de registro de usuário foi recebida em {{$sitename}} e +requer sua aprovação. -The login details are as follows: +Os detalhes de autenticação são os seguintes: -Site Location: {{$siteurl}} -Login Name: {{$email}} -IP Address: {{$details}} +Localização do site: {{$siteurl}} +Nome: {{$email}} +Endereço IP: {{$details}} -To approve this request please visit the following link: +Para aprovar essa solicitação, acesse o link abaixo: {{$siteurl}}/regmod/allow/{{$hash}} -To deny the request and remove the account, please visit: +Para negar a solicitação e remover a conta, acesse: {{$siteurl}}/regmod/deny/{{$hash}} -Thank you. +Obrigado. diff --git a/view/pt-br/request_notify_eml.tpl b/view/pt-br/request_notify_eml.tpl index d01b8ff27..3f0befb3f 100644 --- a/view/pt-br/request_notify_eml.tpl +++ b/view/pt-br/request_notify_eml.tpl @@ -1,17 +1,17 @@ -Dear {{$myname}}, +Caro/a {{$myname}}, -You have just received a connection request at {{$sitename}} +Você acaba de receber uma solicitação de conexão em {{$sitename}} -from '{{$requestor}}'. +por '{{$requestor}}'. -You may visit their profile at {{$url}}. +Você pode ver o perfil dele em {{$url}}. -Please login to your site to view the complete introduction -and approve or ignore/cancel the request. +Por favor, autentique-se no seu site para ver a apresentação completa +e aprovar ou ignorar/cancelar o pedido. {{$siteurl}} -Regards, +Gratidão, - {{$sitename}} administrator + {{$sitename}} administrador diff --git a/view/pt-br/strings.php b/view/pt-br/strings.php index e59f5978a..c1c127e61 100644 --- a/view/pt-br/strings.php +++ b/view/pt-br/strings.php @@ -53,7 +53,7 @@ $a->strings["Visit %1\$s's %2\$s"] = "Visite o %2\$s de %1\$s"; $a->strings["%1\$s has an updated %2\$s, changing %3\$s."] = "%1\$s atualizou %2\$s, alterando %3\$s."; $a->strings["Logout"] = "Sair"; $a->strings["End this session"] = "Encerrar essa sessão"; -$a->strings["Home"] = "Meu canal"; +$a->strings["Home"] = "Ver canal"; $a->strings["Your posts and conversations"] = "Suas publicações e conversas"; $a->strings["View Profile"] = "Ver perfil"; $a->strings["Your profile page"] = "A página do seu perfil"; @@ -184,7 +184,7 @@ $a->strings["bytes"] = "bytes"; $a->strings["remove category"] = "remover categoria"; $a->strings["remove from file"] = "remover do arquivo"; $a->strings["Click to open/close"] = "Clique para abrir/fechar"; -$a->strings["link to source"] = "exibir a origem"; +$a->strings["link to source"] = "Link para a origem"; $a->strings["Select a page layout: "] = "Selecione um layout de página:"; $a->strings["default"] = "default"; $a->strings["Page content type: "] = "Tipo de conteúdo da página: "; @@ -314,7 +314,7 @@ $a->strings["Channels not in any collection"] = "Canais que não estão em nenhu $a->strings["Delete this item?"] = "Excluir este item?"; $a->strings["Comment"] = "Comentar"; $a->strings["show more"] = "exibir mais"; -$a->strings["show fewer"] = "mostrar menos"; +$a->strings["show fewer"] = "exibir menos"; $a->strings["Password too short"] = "A senha é muito curta"; $a->strings["Passwords do not match"] = "As senhas não correspondem"; $a->strings["everybody"] = "todos"; @@ -438,9 +438,9 @@ $a->strings["Set expiration date"] = "Definir data de expiração"; $a->strings["Encrypt text"] = "Encriptar texto"; $a->strings["OK"] = "Ok"; $a->strings["Cancel"] = "Cancelar"; -$a->strings["Commented Order"] = "Recentemente comentados"; +$a->strings["Commented Order"] = "Recentes e comentados"; $a->strings["Sort by Comment Date"] = "Ordenar pela data do último comentário"; -$a->strings["Posted Order"] = "Ordem de publicação"; +$a->strings["Posted Order"] = "Recentemente publicados"; $a->strings["Sort by Post Date"] = "Ordenar pela data da publicação"; $a->strings["Personal"] = "Pessoal"; $a->strings["Posts that mention or involve you"] = "Publicações que mencionam ou envolvem você"; @@ -714,9 +714,8 @@ $a->strings["This action exceeds the limits set by your subscription plan."] = " $a->strings["This action is not available under your subscription plan."] = "Essa ação não está disponível para o seu plano de assinatura."; $a->strings["Channel is blocked on this site."] = "O canal está bloqueado neste site."; $a->strings["Channel location missing."] = "A localização do canal foi perdida"; -$a->strings["Channel discovery failed. Website may be down or misconfigured."] = "Não foi possível descobrir o canal. O site pode estar fora do ar ou desconfigurado."; -$a->strings["Response from remote channel was not understood."] = "A resposta do canal remoto não foi compreendida."; $a->strings["Response from remote channel was incomplete."] = "A resposta do canal remoto está incompleta."; +$a->strings["Channel discovery failed."] = "A descoberta de canais falhou."; $a->strings["local account not found."] = "a conta local não foi encontrada."; $a->strings["Cannot connect to yourself."] = "Não é possível conectar-se consigo mesmo."; $a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "O token de segurança do formulário não estava correto. Isso provavelmente aconteceu porque o formulário ficou aberto por muito tempo (>3 horas) antes da sua submissão."; @@ -745,6 +744,7 @@ $a->strings["Can send me bookmarks"] = "Pode me enviar links guardados"; $a->strings["Can administer my channel resources"] = "Pode administrar os recursos do meu canal"; $a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Extremamente avançado. Não mexa nisso a não ser que saiba o que está fazendo"; $a->strings["Permission denied"] = "Permissão negada"; +$a->strings["Unknown"] = "Desconhecidos"; $a->strings["Item not found."] = "O item não foi encontrado."; $a->strings["Collection not found."] = "A coleção não foi encontrada."; $a->strings["Collection is empty."] = "A coleção está vazia."; @@ -808,13 +808,113 @@ $a->strings["Please visit my channel at"] = "Por favor, visite o meu canal em"; $a->strings["Once you have registered (on ANY Red Matrix site - they are all inter-connected), please connect with my Red Matrix channel address:"] = "Após você se registrar (em qualquer site da Red Matrix - eles são todos interconectados!), peço que conecte-se comigo usando o endereço do meu canal:"; $a->strings["Click the [Register] link on the following page to join."] = "Clique no link [Registrar] na seguinte página para participar."; $a->strings["For more information about the Red Matrix Project and why it has the potential to change the internet as we know it, please visit http://getzot.com"] = "Para maiores informações sobre o Projeto Red Matrix e porque ele tem potencial para mudar a Internet como a conhecemos, por favor visite: http://getzot.com"; -$a->strings["Unable to locate original post."] = "Não foi possível localizar a publicação original."; -$a->strings["Empty post discarded."] = "A publicação em branco foi descartada."; -$a->strings["Executable content type not permitted to this channel."] = "Conteúdo de tipo executável não permitido para este canal."; -$a->strings["System error. Post not saved."] = "Erro no sistema. A publicação não foi salva."; -$a->strings["Wall Photos"] = "Fotos do mural"; -$a->strings["You have reached your limit of %1$.0f top level posts."] = "Você atingiu o seu limite de %1$.0f publicações de novos tópicos."; -$a->strings["You have reached your limit of %1$.0f webpages."] = "Você atingiu o seu limite de %1$.0f páginas web."; +$a->strings["Name is required"] = "O nome é obrigatório"; +$a->strings["Key and Secret are required"] = "A chave e o segredo são obrigatórios"; +$a->strings["Update"] = "Atualizar"; +$a->strings["Passwords do not match. Password unchanged."] = "As senhas não correspondem. A senha não foi modificada."; +$a->strings["Empty passwords are not allowed. Password unchanged."] = "Não é permitido uma senha em branco. A senha não foi modificada."; +$a->strings["Password changed."] = "A senha foi modificada."; +$a->strings["Password update failed. Please try again."] = "Não foi possível atualizar a senha. Por favor, tente novamente."; +$a->strings["Not valid email."] = "Não é um e-mail válido"; +$a->strings["Protected email address. Cannot change to that email."] = "Endereço de e-mail protegido. Não é possível mudar para esse e-mail."; +$a->strings["System failure storing new email. Please try again."] = "Falha do sistema ao armazenar novo e-mail. Por favor, tente novamente."; +$a->strings["Settings updated."] = "As configurações foram atualizadas."; +$a->strings["Add application"] = "Adicionar aplicação"; +$a->strings["Name"] = "Nome"; +$a->strings["Name of application"] = "Nome da aplicação"; +$a->strings["Consumer Key"] = "Chave de consumidor"; +$a->strings["Automatically generated - change if desired. Max length 20"] = "Gerado automaticamente - troque se desejável. Comprimento máximo 20"; +$a->strings["Consumer Secret"] = "Segredo de consumidor"; +$a->strings["Redirect"] = "Redirecionamento"; +$a->strings["Redirect URI - leave blank unless your application specifically requires this"] = "URI de redirecionamento - deixe em branco, a não ser que sua aplicação especificamente requeira isso"; +$a->strings["Icon url"] = "URL do ícone"; +$a->strings["Optional"] = "Opcional"; +$a->strings["You can't edit this application."] = "Você não pode editar esta aplicação."; +$a->strings["Connected Apps"] = "Aplicações conectadas"; +$a->strings["Client key starts with"] = "Chave do cliente começa com"; +$a->strings["No name"] = "Sem nome"; +$a->strings["Remove authorization"] = "Remover autorização"; +$a->strings["No feature settings configured"] = "Não foi definida nenhuma configuração do recurso"; +$a->strings["Feature Settings"] = "Configurações do recurso"; +$a->strings["Account Settings"] = "Configurações da conta"; +$a->strings["Password Settings"] = "Configurações da senha"; +$a->strings["New Password:"] = "Nova senha:"; +$a->strings["Confirm:"] = "Confirme:"; +$a->strings["Leave password fields blank unless changing"] = "Deixe os campos de senha em branco, a não ser que você queira alterá-la"; +$a->strings["Email Address:"] = "Endereço de e-mail:"; +$a->strings["Remove Account"] = "Remover conta"; +$a->strings["Warning: This action is permanent and cannot be reversed."] = "Atenção: Esta ação é permanente e não pode ser revertida."; +$a->strings["Off"] = "Desligado"; +$a->strings["On"] = "Ligado"; +$a->strings["Additional Features"] = "Recursos adicionais"; +$a->strings["Connector Settings"] = "Configurações do conector"; +$a->strings["No special theme for mobile devices"] = "Sem tema especial para aparelhos móveis"; +$a->strings["Display Settings"] = "Configurações de exibição"; +$a->strings["Display Theme:"] = "Tema do perfil:"; +$a->strings["Mobile Theme:"] = "Tema móvel:"; +$a->strings["Update browser every xx seconds"] = "Atualizar navegador a cada xx segundos"; +$a->strings["Minimum of 10 seconds, no maximum"] = "Mínimo de 10 segundos, sem máximo"; +$a->strings["Maximum number of conversations to load at any time:"] = "Número máximo permitido de conversas carregadas:"; +$a->strings["Maximum of 100 items"] = "Máximo de 100 itens"; +$a->strings["Don't show emoticons"] = "Não exibir emoticons"; +$a->strings["Do not view remote profiles in frames"] = "Não exibir perfis remotos em frames"; +$a->strings["By default open in a sub-window of your own site"] = "Por padrão, abrir em uma sub-janela do seu próprio site"; +$a->strings["Nobody except yourself"] = "Ninguém exceto você mesmo"; +$a->strings["Only those you specifically allow"] = "Apenas quem você der permissão"; +$a->strings["Anybody in your address book"] = "Qualquer um nos seus contatos"; +$a->strings["Anybody on this website"] = "Qualquer um neste site"; +$a->strings["Anybody in this network"] = "Qualquer um nesta rede"; +$a->strings["Anybody authenticated"] = "Qualquer um autenticado"; +$a->strings["Anybody on the internet"] = "Qualquer um na internet"; +$a->strings["Publish your default profile in the network directory"] = "Publicar seu perfil padrão no diretório da rede?"; +$a->strings["No"] = "Não"; +$a->strings["Yes"] = "Sim"; +$a->strings["Allow us to suggest you as a potential friend to new members?"] = "Permitir sugerir você como amigo potencial para outros membros?"; +$a->strings["or"] = "ou"; +$a->strings["Your channel address is"] = "O endereço do seu canal é"; +$a->strings["Channel Settings"] = "Configurações do canal"; +$a->strings["Basic Settings"] = "Configurações básicas"; +$a->strings["Your Timezone:"] = "Seu fuso horário:"; +$a->strings["Default Post Location:"] = "Localização padrão de suas publicações:"; +$a->strings["Use Browser Location:"] = "Usar localizador do navegador:"; +$a->strings["Adult Content"] = "Conteúdo adulto"; +$a->strings["This channel frequently or regularly publishes adult content. (Please tag any adult material and/or nudity with #NSFW)"] = "Este canal frequentemente ou regularmente publica conteúdo adulto. (Por favor marque qualquer material adulto e/ou nudez com #NSFW)"; +$a->strings["Security and Privacy Settings"] = "Configurações de segurança e privacidade"; +$a->strings["Hide my online presence"] = "Esconda minha presença online"; +$a->strings["Prevents displaying in your profile that you are online"] = "Previne exibir em seu perfil que você está online"; +$a->strings["Simple Privacy Settings:"] = "Configurações de privacidade simples:"; +$a->strings["Very Public - extremely permissive (should be used with caution)"] = "Muito público - extremamente permissivo (deve ser usado com cuidado)"; +$a->strings["Typical - default public, privacy when desired (similar to social network permissions but with improved privacy)"] = "Típico - público por padrão, privado quando desejável (similar às permissões de redes sociais, mas com melhor privacidade)"; +$a->strings["Private - default private, never open or public"] = "Privado - privado por padrão, nunca aberto ou público"; +$a->strings["Blocked - default blocked to/from everybody"] = "Bloqueado - por padrão bloquado de/para todos"; +$a->strings["Allow others to tag your posts"] = "Permitir que outros etiquetem suas publicações"; +$a->strings["Often used by the community to retro-actively flag inappropriate content"] = "Frequentemente utilizado pela comunidade para retroativamente sinalizar conteúdo inapropriado"; +$a->strings["Advanced Privacy Settings"] = "Configurações de privacidade avançadas"; +$a->strings["Maximum Friend Requests/Day:"] = "Número máximo de requisições de amizade por dia:"; +$a->strings["May reduce spam activity"] = "Pode reduzir a frequência de spam"; +$a->strings["Default Post Permissions"] = "Permissões padrão de publicação"; +$a->strings["(click to open/close)"] = "(clique para abrir/fechar)"; +$a->strings["Maximum private messages per day from unknown people:"] = "Máximo número de mensagens privadas por dia de pessoas desconhecidas:"; +$a->strings["Useful to reduce spamming"] = "Útil para reduzir a frequência de spam"; +$a->strings["Notification Settings"] = "Configurações de notificação"; +$a->strings["By default post a status message when:"] = "Por padrão, publicar uma mensagem de status quando:"; +$a->strings["accepting a friend request"] = "aceitar um pedido de amizade"; +$a->strings["joining a forum/community"] = "associar-se a um fórum/comunidade"; +$a->strings["making an interesting profile change"] = "modificar algo interessante em seu perfil"; +$a->strings["Send a notification email when:"] = "Enviar um e-mail de notificação quando:"; +$a->strings["You receive an introduction"] = "Você recebeu uma apresentação"; +$a->strings["Your introductions are confirmed"] = "Suas solicitações forem confirmadas"; +$a->strings["Someone writes on your profile wall"] = "Alguém escrever no mural do seu perfil"; +$a->strings["Someone writes a followup comment"] = "Alguém comentou a sua mensagem"; +$a->strings["You receive a private message"] = "Você recebeu uma mensagem privada"; +$a->strings["You receive a friend suggestion"] = "Você recebe uma sugestão de amizade"; +$a->strings["You are tagged in a post"] = "Você é mencionado num post"; +$a->strings["You are poked/prodded/etc. in a post"] = "Você foi cutucado/espetado/etc. numa publicação"; +$a->strings["Advanced Account/Page Type Settings"] = "Configurações avançadas de conta/tipo de página"; +$a->strings["Change the behaviour of this account for special situations"] = "Mudar o comportamento dessa conta em situações especiais"; +$a->strings["Please enable expert mode (in Settings > Additional features) to adjust!"] = "Por favor, habilite o modo expert (em Configurações > Recursos adicionais) para ajustar!"; +$a->strings["Miscellaneous Settings"] = "Configurações miscelâneas"; +$a->strings["Personal menu to display in your channel pages"] = "Menu pessoal para exibir nas páginas dos seus canais"; $a->strings["Menu updated."] = "Menu atualizado."; $a->strings["Unable to update menu."] = "Não foi possível atualizar o menu."; $a->strings["Menu created."] = "Menu criado."; @@ -845,8 +945,6 @@ $a->strings["Authorize application connection"] = "Autorizar a conexão com a ap $a->strings["Return to your app and insert this Securty Code:"] = "Volte para a sua aplicação e digite este código de segurança:"; $a->strings["Please login to continue."] = "Por favor, autentique-se para continuar."; $a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "Deseja autorizar esta aplicação a acessar suas publicações e contatos e/ou criar novas publicações para você?"; -$a->strings["Yes"] = "Sim"; -$a->strings["No"] = "Não"; $a->strings["No installed applications."] = "Não existe nenhuma aplicação instalada."; $a->strings["Applications"] = "Aplicações"; $a->strings["Edit post"] = "Editar a publicação"; @@ -854,6 +952,13 @@ $a->strings["Red Matrix - Guests: Username: {your email address}, Password: +++" $a->strings["Bookmark added"] = "O link foi guardado"; $a->strings["My Bookmarks"] = "Meus links guardados"; $a->strings["My Connections Bookmarks"] = "Links guardados das minhas conexões"; +$a->strings["Unable to locate original post."] = "Não foi possível localizar a publicação original."; +$a->strings["Empty post discarded."] = "A publicação em branco foi descartada."; +$a->strings["Executable content type not permitted to this channel."] = "Conteúdo de tipo executável não permitido para este canal."; +$a->strings["System error. Post not saved."] = "Erro no sistema. A publicação não foi salva."; +$a->strings["Wall Photos"] = "Fotos do mural"; +$a->strings["You have reached your limit of %1$.0f top level posts."] = "Você atingiu o seu limite de %1$.0f publicações de novos tópicos."; +$a->strings["You have reached your limit of %1$.0f webpages."] = "Você atingiu o seu limite de %1$.0f páginas web."; $a->strings["%1\$s is following %2\$s's %3\$s"] = "%1\$s está acompanhando %3\$s de %2\$s"; $a->strings["[Embedded content - reload page to view]"] = "[Conteúdo incorporado - recarregue a página para ver]"; $a->strings["Channel not found."] = "O canal não foi encontrado."; @@ -909,7 +1014,6 @@ $a->strings["Delete this menu item"] = "Deleter este item de menu"; $a->strings["Edit this menu item"] = "Editar este item de menu"; $a->strings["New Menu Element"] = "Novo elemento de menu"; $a->strings["Menu Item Permissions"] = "Permissões do item do menu"; -$a->strings["(click to open/close)"] = "(clique para abrir/fechar)"; $a->strings["Link text"] = "Texto do link"; $a->strings["URL of link"] = "URL do link"; $a->strings["Use Red magic-auth if available"] = "Usar Red magic-auth se disponível"; @@ -955,7 +1059,6 @@ $a->strings["Pending registrations"] = "Registros pendentes"; $a->strings["Version"] = "Versão"; $a->strings["Active plugins"] = "Plugins ativos"; $a->strings["Site settings updated."] = "As configurações de site foram atualizadas."; -$a->strings["No special theme for mobile devices"] = "Sem tema especial para aparelhos móveis"; $a->strings["No special theme for accessibility"] = "Sem tema especial para acessibilidade"; $a->strings["Closed"] = "Fechado"; $a->strings["Requires approval"] = "Requer aprovação"; @@ -1114,7 +1217,6 @@ $a->strings["Unhide"] = "Não ocultar"; $a->strings["Hide"] = "Ocultar"; $a->strings["Hide or Unhide this connection"] = "Ocultar ou deixar de ocultar esta conexão"; $a->strings["Delete this connection"] = "Deletar esta conexão"; -$a->strings["Unknown"] = "Desconhecidos"; $a->strings["Approve this connection"] = "Aprovar esta conexão"; $a->strings["Accept connection to allow communication"] = "Aceite a conexão para permitir comunicação"; $a->strings["Automatic Permissions Settings"] = "Configurações de permissão automáticas"; @@ -1160,6 +1262,9 @@ $a->strings["Layout Name"] = "Nome do layout"; $a->strings["Help:"] = "Ajuda:"; $a->strings["Not Found"] = "Não encontrada"; $a->strings["Page not found."] = "Página não encontrada."; +$a->strings["We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID."] = "Encontramos um problema ao entrar com a OpenID fornecida. Por favor, verifique se digitou corretamente a ID."; +$a->strings["The error message was:"] = "A mensagem de erro foi:"; +$a->strings["Authentication failed."] = "A autenticação falhou."; $a->strings["Remote Authentication"] = "Autenticação remota"; $a->strings["Enter your channel address (e.g. channel@example.com)"] = "Entre o endereço do seu canal (e.g. canal@exemplo.com)"; $a->strings["Authenticate"] = "Autenticar"; @@ -1330,7 +1435,7 @@ $a->strings["Version %s"] = "Versão %s"; $a->strings["Installed plugins/addons/apps:"] = "Plugins/complementos/aplicações instalados:"; $a->strings["No installed plugins/addons/apps"] = "Nenhum plugin/complemento/aplicação instalado"; $a->strings["Project Donations"] = "Doações para o projeto"; -$a->strings["

The Red Matrix is provided for you by volunteers working in their spare time. Your support will help us to build a better web. Select the following option for a one-time donation of your choosing

"] = "

A Red Matrix é oferecida a você por voluntários trabalhando no seu tempo livre. Seu apoio irá nos ajudar a construir uma web melhor. Selecione uma das opções abaixo para realizar uma única doação de sua escolha:

"; +$a->strings["

The Red Matrix is provided for you by volunteers working in their spare time. Your support will help us to build a better, freer, and privacy respecting web. Select the following option for a one-time donation of your choosing

"] = "

A Red Matrix é oferecida a você por voluntários trabalhando no seu tempo livre. Seu apoio irá nos ajudar a construir uma web melhor, mais livre e com respeito à privacidade. Selecione uma das opções abaixo para realizar uma única doação de sua escolha:

"; $a->strings["

or

"] = "

ou

"; $a->strings["Recurring Donation Options"] = "Opções para doações recorrentes"; $a->strings["Red"] = "Red"; @@ -1362,104 +1467,6 @@ $a->strings["Forgot your Password?"] = "Esqueceu a sua senha?"; $a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Digite o seu endereço de e-mail e clique em 'Restaurar' para prosseguir com a restauração da sua senha. Após isso, verifique seu e-mail para mais instruções."; $a->strings["Email Address"] = "Endereço de e-mail"; $a->strings["Reset"] = "Restaurar"; -$a->strings["Name is required"] = "O nome é obrigatório"; -$a->strings["Key and Secret are required"] = "A chave e o segredo são obrigatórios"; -$a->strings["Update"] = "Atualizar"; -$a->strings["Passwords do not match. Password unchanged."] = "As senhas não correspondem. A senha não foi modificada."; -$a->strings["Empty passwords are not allowed. Password unchanged."] = "Não é permitido uma senha em branco. A senha não foi modificada."; -$a->strings["Password changed."] = "A senha foi modificada."; -$a->strings["Password update failed. Please try again."] = "Não foi possível atualizar a senha. Por favor, tente novamente."; -$a->strings["Not valid email."] = "Não é um e-mail válido"; -$a->strings["Protected email address. Cannot change to that email."] = "Endereço de e-mail protegido. Não é possível mudar para esse e-mail."; -$a->strings["System failure storing new email. Please try again."] = "Falha do sistema ao armazenar novo e-mail. Por favor, tente novamente."; -$a->strings["Settings updated."] = "As configurações foram atualizadas."; -$a->strings["Add application"] = "Adicionar aplicação"; -$a->strings["Name"] = "Nome"; -$a->strings["Name of application"] = "Nome da aplicação"; -$a->strings["Consumer Key"] = "Chave de consumidor"; -$a->strings["Automatically generated - change if desired. Max length 20"] = "Gerado automaticamente - troque se desejável. Comprimento máximo 20"; -$a->strings["Consumer Secret"] = "Segredo de consumidor"; -$a->strings["Redirect"] = "Redirecionamento"; -$a->strings["Redirect URI - leave blank unless your application specifically requires this"] = "URI de redirecionamento - deixe em branco, a não ser que sua aplicação especificamente requeira isso"; -$a->strings["Icon url"] = "URL do ícone"; -$a->strings["Optional"] = "Opcional"; -$a->strings["You can't edit this application."] = "Você não pode editar esta aplicação."; -$a->strings["Connected Apps"] = "Aplicações conectadas"; -$a->strings["Client key starts with"] = "Chave do cliente começa com"; -$a->strings["No name"] = "Sem nome"; -$a->strings["Remove authorization"] = "Remover autorização"; -$a->strings["No feature settings configured"] = "Não foi definida nenhuma configuração do recurso"; -$a->strings["Feature Settings"] = "Configurações do recurso"; -$a->strings["Account Settings"] = "Configurações da conta"; -$a->strings["Password Settings"] = "Configurações da senha"; -$a->strings["New Password:"] = "Nova senha:"; -$a->strings["Confirm:"] = "Confirme:"; -$a->strings["Leave password fields blank unless changing"] = "Deixe os campos de senha em branco, a não ser que você queira alterá-la"; -$a->strings["Email Address:"] = "Endereço de e-mail:"; -$a->strings["Remove Account"] = "Remover conta"; -$a->strings["Warning: This action is permanent and cannot be reversed."] = "Atenção: Esta ação é permanente e não pode ser revertida."; -$a->strings["Off"] = "Desligado"; -$a->strings["On"] = "Ligado"; -$a->strings["Additional Features"] = "Recursos adicionais"; -$a->strings["Connector Settings"] = "Configurações do conector"; -$a->strings["Display Settings"] = "Configurações de exibição"; -$a->strings["Display Theme:"] = "Tema do perfil:"; -$a->strings["Mobile Theme:"] = "Tema móvel:"; -$a->strings["Update browser every xx seconds"] = "Atualizar navegador a cada xx segundos"; -$a->strings["Minimum of 10 seconds, no maximum"] = "Mínimo de 10 segundos, sem máximo"; -$a->strings["Maximum number of conversations to load at any time:"] = "Número máximo permitido de conversas carregadas:"; -$a->strings["Maximum of 100 items"] = "Máximo de 100 itens"; -$a->strings["Don't show emoticons"] = "Não exibir emoticons"; -$a->strings["Do not view remote profiles in frames"] = "Não exibir perfis remotos em frames"; -$a->strings["By default open in a sub-window of your own site"] = "Por padrão, abrir em uma sub-janela do seu próprio site"; -$a->strings["Nobody except yourself"] = "Ninguém exceto você mesmo"; -$a->strings["Only those you specifically allow"] = "Apenas quem você der permissão"; -$a->strings["Anybody in your address book"] = "Qualquer um nos seus contatos"; -$a->strings["Anybody on this website"] = "Qualquer um neste site"; -$a->strings["Anybody in this network"] = "Qualquer um nesta rede"; -$a->strings["Anybody on the internet"] = "Qualquer um na internet"; -$a->strings["Publish your default profile in the network directory"] = "Publicar seu perfil padrão no diretório da rede?"; -$a->strings["Allow us to suggest you as a potential friend to new members?"] = "Permitir sugerir você como amigo potencial para outros membros?"; -$a->strings["or"] = "ou"; -$a->strings["Your channel address is"] = "O endereço do seu canal é"; -$a->strings["Channel Settings"] = "Configurações do canal"; -$a->strings["Basic Settings"] = "Configurações básicas"; -$a->strings["Your Timezone:"] = "Seu fuso horário:"; -$a->strings["Default Post Location:"] = "Localização padrão de suas publicações:"; -$a->strings["Use Browser Location:"] = "Usar localizador do navegador:"; -$a->strings["Adult Content"] = "Conteúdo adulto"; -$a->strings["This channel frequently or regularly publishes adult content. (Please tag any adult material and/or nudity with #NSFW)"] = "Este canal frequentemente ou regularmente publica conteúdo adulto. (Por favor marque qualquer material adulto e/ou nudez com #NSFW)"; -$a->strings["Security and Privacy Settings"] = "Configurações de segurança e privacidade"; -$a->strings["Hide my online presence"] = "Esconda minha presença online"; -$a->strings["Prevents displaying in your profile that you are online"] = "Previne exibir em seu perfil que você está online"; -$a->strings["Simple Privacy Settings:"] = "Configurações de privacidade simples:"; -$a->strings["Very Public - extremely permissive (should be used with caution)"] = "Muito público - extremamente permissivo (deve ser usado com cuidado)"; -$a->strings["Typical - default public, privacy when desired (similar to social network permissions but with improved privacy)"] = "Típico - público por padrão, privado quando desejável (similar às permissões de redes sociais, mas com melhor privacidade)"; -$a->strings["Private - default private, never open or public"] = "Privado - privado por padrão, nunca aberto ou público"; -$a->strings["Blocked - default blocked to/from everybody"] = "Bloqueado - por padrão bloquado de/para todos"; -$a->strings["Advanced Privacy Settings"] = "Configurações de privacidade avançadas"; -$a->strings["Maximum Friend Requests/Day:"] = "Número máximo de requisições de amizade por dia:"; -$a->strings["May reduce spam activity"] = "Pode reduzir a frequência de spam"; -$a->strings["Default Post Permissions"] = "Permissões padrão de publicação"; -$a->strings["Maximum private messages per day from unknown people:"] = "Máximo número de mensagens privadas por dia de pessoas desconhecidas:"; -$a->strings["Useful to reduce spamming"] = "Útil para reduzir a frequência de spam"; -$a->strings["Notification Settings"] = "Configurações de notificação"; -$a->strings["By default post a status message when:"] = "Por padrão, publicar uma mensagem de status quando:"; -$a->strings["accepting a friend request"] = "aceitar um pedido de amizade"; -$a->strings["joining a forum/community"] = "associar-se a um fórum/comunidade"; -$a->strings["making an interesting profile change"] = "modificar algo interessante em seu perfil"; -$a->strings["Send a notification email when:"] = "Enviar um e-mail de notificação quando:"; -$a->strings["You receive an introduction"] = "Você recebeu uma apresentação"; -$a->strings["Your introductions are confirmed"] = "Suas solicitações forem confirmadas"; -$a->strings["Someone writes on your profile wall"] = "Alguém escrever no mural do seu perfil"; -$a->strings["Someone writes a followup comment"] = "Alguém comentou a sua mensagem"; -$a->strings["You receive a private message"] = "Você recebeu uma mensagem privada"; -$a->strings["You receive a friend suggestion"] = "Você recebe uma sugestão de amizade"; -$a->strings["You are tagged in a post"] = "Você é mencionado num post"; -$a->strings["You are poked/prodded/etc. in a post"] = "Você foi cutucado/espetado/etc. numa publicação"; -$a->strings["Advanced Account/Page Type Settings"] = "Configurações avançadas de conta/tipo de página"; -$a->strings["Change the behaviour of this account for special situations"] = "Mudar o comportamento dessa conta em situações especiais"; -$a->strings["Please enable expert mode (in Settings > Additional features) to adjust!"] = "Por favor, habilite o modo expert (em Configurações > Recursos adicionais) para ajustar!"; $a->strings["Nothing to import."] = "Nada a importar."; $a->strings["Unable to download data from old server"] = "Não foi possível descarregar os dados do servidor antigo"; $a->strings["Imported file is empty."] = "O arquivo importado está vazio."; @@ -1509,6 +1516,7 @@ $a->strings["Private Conversation"] = "Conversa privada"; $a->strings["Delete conversation"] = "Excluir conversa"; $a->strings["No secure communications available. You may be able to respond from the sender's profile page."] = "Comunicação segura indisponível. Você talvez consiga responder pela página de perfil do remetente."; $a->strings["Send Reply"] = "Enviar resposta"; +$a->strings["OpenID protocol error. No ID returned."] = "Erro do protocolo OpenID. Nenhuma ID retornada."; $a->strings["Edit Layout"] = "Editar layout"; $a->strings["Delete layout?"] = "Deletar layout?"; $a->strings["Delete Layout"] = "Deletar layout"; @@ -1637,7 +1645,7 @@ $a->strings["You have used %1$.2f Mbytes of photo storage."] = "Você usou %1$.2 $a->strings["Upload Photos"] = "Enviar fotos"; $a->strings["New album name: "] = "Novo nome de álbum: "; $a->strings["or existing album name: "] = "ou nome de um álbum já existente: "; -$a->strings["Do not show a status post for this upload"] = "Não mostrar uma publicação de status para este carregamento"; +$a->strings["Do not show a status post for this upload"] = "Não exibir uma publicação de status para este carregamento"; $a->strings["Contact Photos"] = "Fotos dos contatos"; $a->strings["Edit Album"] = "Editar o álbum"; $a->strings["Show Newest First"] = "Exibir primeiro os mais recentes"; From 59211e0ac82f285dde81cc2c384a5fb807241d20 Mon Sep 17 00:00:00 2001 From: Alexandre Hannud Abdo Date: Mon, 24 Feb 2014 17:47:57 -0300 Subject: [PATCH 009/130] Translation for jQuery.divgrow strings. Fix mismatch in jQuery.timeago strings --- include/js_strings.php | 24 +++++++++++++----------- view/js/main.js | 2 +- view/tpl/js_strings.tpl | 24 +++++++++++++----------- 3 files changed, 27 insertions(+), 23 deletions(-) diff --git a/include/js_strings.php b/include/js_strings.php index afa8f075a..2d96ca9d2 100644 --- a/include/js_strings.php +++ b/include/js_strings.php @@ -2,18 +2,20 @@ function js_strings() { return replace_macros(get_markup_template('js_strings.tpl'), array( - '$delitem' => t('Delete this item?'), - '$comment' => t('Comment'), - '$showmore' => t('show more'), - '$showfewer' => t('show fewer'), - '$pwshort' => t("Password too short"), - '$pwnomatch' => t("Passwords do not match"), - '$everybody' => t('everybody'), - '$passphrase' => t('Secret Passphrase'), - '$passhint' => t('Passphrase hint'), + '$delitem' => t('Delete this item?'), + '$comment' => t('Comment'), + '$showmore' => t('show more'), + '$showfewer' => t('show fewer'), + '$divgrowmore' => t('+ Show More'), + '$divgrowless' => t('- Show Less'), + '$pwshort' => t("Password too short"), + '$pwnomatch' => t("Passwords do not match"), + '$everybody' => t('everybody'), + '$passphrase' => t('Secret Passphrase'), + '$passhint' => t('Passphrase hint'), '$t01' => ((t('timeago.prefixAgo') != 'timeago.prefixAgo') ? t('timeago.prefixAgo') : 'null'), - '$t02' => ((t('timeago.suffixAgo') != 'timeago.suffixAgo') ? t('timeago.suffixAgo') : 'null'), + '$t02' => ((t('timeago.prefixFromNow') != 'timeago.prefixFromNow') ? t('timeago.prefixFromNow') : 'null'), '$t03' => t('ago'), '$t04' => t('from now'), '$t05' => t('less than a minute'), @@ -32,4 +34,4 @@ function js_strings() { )); -} \ No newline at end of file +} diff --git a/view/js/main.js b/view/js/main.js index fa96596f4..5f88ea9ca 100644 --- a/view/js/main.js +++ b/view/js/main.js @@ -535,7 +535,7 @@ function updateConvItems(mode,data) { $(".wall-item-body").each(function() { if($(this).height() > 410) { if(! $(this).hasClass('divmore')) { - $(this).divgrow({ initialHeight: 400, showBrackets: false }); + $(this).divgrow({ initialHeight: 400, moreText: aStr['divgrowmore'], lessText: aStr['divgrowless'], showBrackets: false }); $(this).addClass('divmore'); } } diff --git a/view/tpl/js_strings.tpl b/view/tpl/js_strings.tpl index 9eb552767..cb0e8d24a 100755 --- a/view/tpl/js_strings.tpl +++ b/view/tpl/js_strings.tpl @@ -2,18 +2,20 @@ var aStr = { - 'delitem' : "{{$delitem}}", - 'comment' : "{{$comment}}", - 'showmore' : "{{$showmore}}", - 'showfewer' : "{{$showfewer}}", - 'pwshort' : "{{$pwshort}}", - 'pwnomatch' : "{{$pwnomatch}}", - 'everybody' : "{{$everybody}}", - 'passphrase' : "{{$passphrase}}", - 'passhint' : "{{$passhint}}", + 'delitem' : "{{$delitem}}", + 'comment' : "{{$comment}}", + 'showmore' : "{{$showmore}}", + 'showfewer' : "{{$showfewer}}", + 'divgrowmore' : "{{$divshowmore}}", + 'divgrowless' : "{{$divshowless}}", + 'pwshort' : "{{$pwshort}}", + 'pwnomatch' : "{{$pwnomatch}}", + 'everybody' : "{{$everybody}}", + 'passphrase' : "{{$passphrase}}", + 'passhint' : "{{$passhint}}", - 't01' : {{$t01}}, - 't02' : {{$t02}}, + 't01' : "{{$t01}}", + 't02' : "{{$t02}}", 't03' : "{{$t03}}", 't04' : "{{$t04}}", 't05' : "{{$t05}}", From 5bd71e4e4ddb28e85f3fc71d4cdf6763788da9d7 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 24 Feb 2014 14:19:21 -0800 Subject: [PATCH 010/130] set theme for un-viewable profile --- include/identity.php | 53 ++++++++++++++++++++++++++------------------ version.inc | 2 +- 2 files changed, 33 insertions(+), 22 deletions(-) diff --git a/include/identity.php b/include/identity.php index 82fc5fbea..9aa7d98c0 100644 --- a/include/identity.php +++ b/include/identity.php @@ -486,12 +486,12 @@ function profile_load(&$a, $nickname, $profile = '') { // get the current observer $observer = $a->get_observer(); + $can_view_profile = true; + // Can the observer see our profile? require_once('include/permissions.php'); if(! perm_is_allowed($user[0]['channel_id'],$observer['xchan_hash'],'view_profile')) { - // permission denied - notice( t(' Sorry, you don\'t have the permission to view this profile. ') . EOL); - return; + $can_view_profile = false; } if(! $profile) { @@ -502,10 +502,10 @@ function profile_load(&$a, $nickname, $profile = '') { if($r) $profile = $r[0]['abook_profile']; } - $r = null; + $p = null; if($profile) { - $r = q("SELECT profile.uid AS profile_uid, profile.*, channel.* FROM profile + $p = q("SELECT profile.uid AS profile_uid, profile.*, channel.* FROM profile LEFT JOIN channel ON profile.uid = channel.channel_id WHERE channel.channel_address = '%s' AND profile.profile_guid = '%s' LIMIT 1", dbesc($nickname), @@ -513,7 +513,7 @@ function profile_load(&$a, $nickname, $profile = '') { ); } - if(! $r) { + if(! $p) { $r = q("SELECT profile.uid AS profile_uid, profile.*, channel.* FROM profile LEFT JOIN channel ON profile.uid = channel.channel_id WHERE channel.channel_address = '%s' and not ( channel_pageflags & %d ) @@ -523,7 +523,7 @@ function profile_load(&$a, $nickname, $profile = '') { ); } - if(! $r) { + if(! $p) { logger('profile error: ' . $a->query_string, LOGGER_DEBUG); notice( t('Requested profile is not available.') . EOL ); $a->error = 404; @@ -532,37 +532,42 @@ function profile_load(&$a, $nickname, $profile = '') { // fetch user tags if this isn't the default profile - if(! $r[0]['is_default']) { + if(! $p[0]['is_default']) { $x = q("select `keywords` from `profile` where uid = %d and `is_default` = 1 limit 1", intval($profile_uid) ); - if($x) - $r[0]['keywords'] = $x[0]['keywords']; + if($x && $can_view_profile) + $p[0]['keywords'] = $x[0]['keywords']; } - if($r[0]['keywords']) { - $keywords = str_replace(array('#',',',' ',',,'),array('',' ',',',','),$r[0]['keywords']); - if(strlen($keywords)) + if($p[0]['keywords']) { + $keywords = str_replace(array('#',',',' ',',,'),array('',' ',',',','),$p[0]['keywords']); + if(strlen($keywords) && $can_view_profile) $a->page['htmlhead'] .= '' . "\r\n" ; } - $a->profile = $r[0]; - $online = get_online_status($nickname); - $a->profile['online_status'] = $online['result']; + if($can_view_profile) { + $a->profile = $p[0]; + $online = get_online_status($nickname); + $a->profile['online_status'] = $online['result']; - $a->profile_uid = $r[0]['profile_uid']; + $a->profile_uid = $p[0]['profile_uid']; - $a->page['title'] = $a->profile['channel_name'] . " - " . $a->profile['channel_address'] . "@" . $a->get_hostname(); + $a->page['title'] = $a->profile['channel_name'] . " - " . $a->profile['channel_address'] . "@" . $a->get_hostname(); + } - $a->profile['channel_mobile_theme'] = get_pconfig(local_user(),'system', 'mobile_theme'); - $_SESSION['theme'] = $a->profile['channel_theme']; - $_SESSION['mobile_theme'] = $a->profile['channel_mobile_theme']; + if(local_user()) { + $a->profile['channel_mobile_theme'] = get_pconfig(local_user(),'system', 'mobile_theme'); + $_SESSION['mobile_theme'] = $a->profile['channel_mobile_theme']; + } /** * load/reload current theme info */ + $_SESSION['theme'] = $p[0]['channel_theme']; + $a->set_template_engine(); // reset the template engine to the default in case the user's theme doesn't specify one $theme_info_file = "view/theme/".current_theme()."/php/theme.php"; @@ -570,6 +575,12 @@ function profile_load(&$a, $nickname, $profile = '') { require_once($theme_info_file); } + if(! $can_view_profile) { + // permission denied + notice( t(' Sorry, you don\'t have the permission to view this profile. ') . EOL); + return; + } + return; } diff --git a/version.inc b/version.inc index 490208526..adf85ba7e 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2014-02-23.597 +2014-02-24.598 From 29ebfc25ca4c7c475437dd02418eb6f4fc17c952 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 24 Feb 2014 15:07:00 -0800 Subject: [PATCH 011/130] take a p --- include/identity.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/identity.php b/include/identity.php index 9aa7d98c0..2e611625a 100644 --- a/include/identity.php +++ b/include/identity.php @@ -514,7 +514,7 @@ function profile_load(&$a, $nickname, $profile = '') { } if(! $p) { - $r = q("SELECT profile.uid AS profile_uid, profile.*, channel.* FROM profile + $p = q("SELECT profile.uid AS profile_uid, profile.*, channel.* FROM profile LEFT JOIN channel ON profile.uid = channel.channel_id WHERE channel.channel_address = '%s' and not ( channel_pageflags & %d ) AND profile.is_default = 1 LIMIT 1", From fdb25f3450a636b28aa640d096ae4feed308086e Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 24 Feb 2014 15:27:39 -0800 Subject: [PATCH 012/130] string 'null' showing up in timeago since last modify --- include/js_strings.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/js_strings.php b/include/js_strings.php index 2d96ca9d2..cd0ee8c7c 100644 --- a/include/js_strings.php +++ b/include/js_strings.php @@ -14,8 +14,8 @@ function js_strings() { '$passphrase' => t('Secret Passphrase'), '$passhint' => t('Passphrase hint'), - '$t01' => ((t('timeago.prefixAgo') != 'timeago.prefixAgo') ? t('timeago.prefixAgo') : 'null'), - '$t02' => ((t('timeago.prefixFromNow') != 'timeago.prefixFromNow') ? t('timeago.prefixFromNow') : 'null'), + '$t01' => ((t('timeago.prefixAgo') != 'timeago.prefixAgo') ? t('timeago.prefixAgo') : ''), + '$t02' => ((t('timeago.prefixFromNow') != 'timeago.prefixFromNow') ? t('timeago.prefixFromNow') : ''), '$t03' => t('ago'), '$t04' => t('from now'), '$t05' => t('less than a minute'), @@ -32,6 +32,5 @@ function js_strings() { '$t16' => t(' '), // wordSeparator '$t17' => ((t('timeago.numbers') != 'timeago.numbers') ? t('timeago.numbers') : '[]') - )); } From 5691a609c407b0c70a38b3b1e17d5c070e985931 Mon Sep 17 00:00:00 2001 From: Alexandre Hannud Abdo Date: Tue, 25 Feb 2014 01:12:27 -0300 Subject: [PATCH 013/130] Fix typo that broke jquery.divgrow. Sorry I should have tested. --- view/tpl/js_strings.tpl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/view/tpl/js_strings.tpl b/view/tpl/js_strings.tpl index cb0e8d24a..fe5228ee9 100755 --- a/view/tpl/js_strings.tpl +++ b/view/tpl/js_strings.tpl @@ -6,8 +6,8 @@ 'comment' : "{{$comment}}", 'showmore' : "{{$showmore}}", 'showfewer' : "{{$showfewer}}", - 'divgrowmore' : "{{$divshowmore}}", - 'divgrowless' : "{{$divshowless}}", + 'divgrowmore' : "{{$divgrowmore}}", + 'divgrowless' : "{{$divgrowless}}", 'pwshort' : "{{$pwshort}}", 'pwnomatch' : "{{$pwnomatch}}", 'everybody' : "{{$everybody}}", From 2becbae4022f6c418aa455e7477c00560bcd8b41 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 24 Feb 2014 20:46:52 -0800 Subject: [PATCH 014/130] remote "add bookmark" - like rpost but saves a bookmark from a remote hub into one of your own bookmark folders (or a new one if desired). --- boot.php | 6 +-- include/bookmarks.php | 33 +++++++++---- mod/rbmark.php | 112 ++++++++++++++++++++++++++++++++++++++++++ mod/rpost.php | 2 +- view/tpl/rbmark.tpl | 16 ++++++ 5 files changed, 156 insertions(+), 13 deletions(-) create mode 100644 mod/rbmark.php create mode 100644 view/tpl/rbmark.tpl diff --git a/boot.php b/boot.php index be6b5c84b..fbab83f05 100755 --- a/boot.php +++ b/boot.php @@ -307,9 +307,9 @@ define ( 'ATTACH_FLAG_OS', 0x0002); -define ( 'MENU_ITEM_ZID', 0x0001); -define ( 'MENU_ITEM_NEWWIN', 0x0002); - +define ( 'MENU_ITEM_ZID', 0x0001); +define ( 'MENU_ITEM_NEWWIN', 0x0002); +define ( 'MENU_ITEM_CHATROOM', 0x0004); /** * Poll/Survey types diff --git a/include/bookmarks.php b/include/bookmarks.php index 99cb60e64..895dedaff 100644 --- a/include/bookmarks.php +++ b/include/bookmarks.php @@ -2,7 +2,17 @@ require_once('include/menu.php'); -function bookmark_add($channel,$sender,$taxonomy,$private) { +function bookmark_add($channel,$sender,$taxonomy,$private,$opts = null) { + + $menu_id = 0; + $menu_name = ''; + $ischat = false; + + if(is_array($opts)) { + $menu_id = ((x($opts,'menu_id')) ? intval($opt['menu_id']) : 0); + $menu_name = ((x($opts,'menu_name')) ? escape_tags($opts['menu_name']) : ''); + $ischat = ((x($opts,'ischat')) ? intval($opts['ischat']) : 0); + } $iarr = array(); $channel_id = $channel['channel_id']; @@ -11,7 +21,7 @@ function bookmark_add($channel,$sender,$taxonomy,$private) { $iarr['contact_allow'] = array($channel['channel_hash']); $iarr['mitem_link'] = $taxonomy['url']; $iarr['mitem_desc'] = $taxonomy['term']; - $iarr['mitem_flags'] = 0; + $iarr['mitem_flags'] = (($ischat) ? MENU_ITEM_CHATROOM : 0); $m = @parse_url($taxonomy['url']); $zrl = false; @@ -27,16 +37,20 @@ function bookmark_add($channel,$sender,$taxonomy,$private) { $iarr['mitem_flags'] |= MENU_ITEM_ZID; $arr = array(); - $arr['menu_name'] = substr($sender['xchan_hash'],0,16) . ' ' . $sender['xchan_name']; + if(! $menu_name) + $arr['menu_name'] = substr($sender['xchan_hash'],0,16) . ' ' . $sender['xchan_name']; $arr['menu_desc'] = sprintf( t('%1$s\'s bookmarks'), $sender['xchan_name']); $arr['menu_flags'] = (($sender['xchan_hash'] === $channel['channel_hash']) ? MENU_BOOKMARK : MENU_SYSTEM|MENU_BOOKMARK); $arr['menu_channel_id'] = $channel_id; - $x = menu_list($arr['menu_channel_id'],$arr['menu_name'],$arr['menu_flags']); - if($x) - $menu_id = $x[0]['menu_id']; - else - $menu_id = menu_create($arr); + if(! $menu_id) { + $x = menu_list($arr['menu_channel_id'],$arr['menu_name'],$arr['menu_flags']); + if($x) + $menu_id = $x[0]['menu_id']; + else + $menu_id = menu_create($arr); + } + if(! $menu_id) { logger('bookmark_add: unable to create menu ' . $arr['menu_name']); return; @@ -51,5 +65,6 @@ function bookmark_add($channel,$sender,$taxonomy,$private) { logger('add_bookmark: duplicate menu entry', LOGGER_DEBUG); if(! $r) $r = menu_add_item($menu_id,$channel_id,$iarr); + return $r; -} \ No newline at end of file +} diff --git a/mod/rbmark.php b/mod/rbmark.php new file mode 100644 index 000000000..1c962152c --- /dev/null +++ b/mod/rbmark.php @@ -0,0 +1,112 @@ +get_channel(); + + $t = array('url' => escape_tags($_REQUEST['url']),'term' => escape_tags($_REQUEST['title'])); + bookmark_add($channel,$channel,$t,((x($_REQUEST,'private')) ? intval($_REQUEST['private']) : 0), + array('menu_id' => ((x($_REQUEST,'menu_id')) ? intval($_REQUEST['menu_id']) : 0), + 'menu_name' => ((x($_REQUEST,'menu_name')) ? escape_tags($_REQUEST['menu_name']) : '') + )); + + goaway(z_root() . '/bookmarks'); + +} + + +function rbmark_content(&$a) { + + $o = ''; + + if(! local_user()) { + + // The login procedure is going to bugger our $_REQUEST variables + // so save them in the session. + + if(array_key_exists('url',$_REQUEST)) { + $_SESSION['bookmark'] = $_REQUEST; + } + return login(); + } + + // If we have saved rbmark session variables, but nothing in the current $_REQUEST, recover the saved variables + + if((! array_key_exists('url',$_REQUEST)) && (array_key_exists('bookmark',$_SESSION))) { + $_REQUEST = $_SESSION['bookmark']; + unset($_SESSION['bookmark']); + } + + if($_REQUEST['remote_return']) { + $_SESSION['remote_return'] = $_REQUEST['remote_return']; + } + if(argc() > 1 && argv(1) === 'return') { + if($_SESSION['remote_return']) + goaway($_SESSION['remote_return']); + goaway(z_root() . '/bookmarks'); + } + + $channel = $a->get_channel(); + + $m = menu_list($channel,'',MENU_BOOKMARK); + $menus = array(); + if($m) { + $menus = array(0 => ''); + foreach($m as $n) { + $menus[$n['menu_id']] = $n['menu_name']; + } + } + $menu_select = array('menu_id',t('Select a bookmark folder'),false,'',$menus); + + + $o .= replace_macros(get_markup_template('rbmark.tpl'), array( + + '$header' => t('Save Bookmark'), + '$url' => array('url',t('URL of bookmark'),escape_tags($_REQUEST['url'])), + '$title' => array('title',t('Description'),escape_tags($_REQUEST['title'])), + '$ischat' => (($ischat) ? 1 : 0), + '$private' => (($private) ? 1 : 0), + '$submit' => t('Save'), + '$menu_name' => array('menu_name',t('Or enter new bookmark folder name'),'',''), + '$menus' => $menu_select + + )); + + + + + + + return $o; + +} + + diff --git a/mod/rpost.php b/mod/rpost.php index 852a57d78..18d4c86cd 100644 --- a/mod/rpost.php +++ b/mod/rpost.php @@ -33,7 +33,7 @@ function rpost_content(&$a) { if(remote_user()) { // redirect to your own site. // We can only do this with a GET request so you'll need to keep the text short or risk getting truncated - // by the wretched beast called 'shusoin'. All the browsers now allow long GET requests, but suhosin + // by the wretched beast called 'suhosin'. All the browsers now allow long GET requests, but suhosin // blocks them. $url = get_rpost_path($a->get_observer()); diff --git a/view/tpl/rbmark.tpl b/view/tpl/rbmark.tpl new file mode 100644 index 000000000..bead1de2f --- /dev/null +++ b/view/tpl/rbmark.tpl @@ -0,0 +1,16 @@ +

{{$header}}

+ + +
+ + + + +{{include file="field_input.tpl" field=$url}} +{{include file="field_input.tpl" field=$title}} +{{include file="field_select.tpl" field=$menus}} +{{include file="field_input.tpl" field=$menu_name}} + + + +
From b1021df485fb6129acda5bba616bac10aea75a45 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 24 Feb 2014 21:34:49 -0800 Subject: [PATCH 015/130] provide ability to bookmark chatrooms using rbmark --- include/bookmarks.php | 19 +++++++++++++++++-- mod/chat.php | 16 +++++++++++++++- view/tpl/chat.tpl | 2 +- 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/include/bookmarks.php b/include/bookmarks.php index 895dedaff..21a775f9a 100644 --- a/include/bookmarks.php +++ b/include/bookmarks.php @@ -37,9 +37,13 @@ function bookmark_add($channel,$sender,$taxonomy,$private,$opts = null) { $iarr['mitem_flags'] |= MENU_ITEM_ZID; $arr = array(); - if(! $menu_name) + if(! $menu_name) { $arr['menu_name'] = substr($sender['xchan_hash'],0,16) . ' ' . $sender['xchan_name']; - $arr['menu_desc'] = sprintf( t('%1$s\'s bookmarks'), $sender['xchan_name']); + $arr['menu_desc'] = sprintf( t('%1$s\'s bookmarks'), $sender['xchan_name']); + } + else { + $arr['menu_name'] = $arr['menu_desc'] = $menu_name; + } $arr['menu_flags'] = (($sender['xchan_hash'] === $channel['channel_hash']) ? MENU_BOOKMARK : MENU_SYSTEM|MENU_BOOKMARK); $arr['menu_channel_id'] = $channel_id; @@ -68,3 +72,14 @@ function bookmark_add($channel,$sender,$taxonomy,$private,$opts = null) { return $r; } + +function get_bookmark_link($observer) { + + if((! $observer) || ($observer['xchan_network'] !== 'zot')) + return ''; + + $h = @parse_url($observer['xchan_url']); + if($h) + return $h['scheme'] . '://' . $h['host'] . (($h['port']) ? ':' . $h['port'] : '') . '/rbmark?f='; + return ''; +} diff --git a/mod/chat.php b/mod/chat.php index a960f4f37..0f2b94b9d 100644 --- a/mod/chat.php +++ b/mod/chat.php @@ -1,6 +1,7 @@ get_channel(); + $ob = $a->get_observer(); $observer = get_observer_hash(); if(! $observer) { notice( t('Permission denied.') . EOL); @@ -144,6 +146,8 @@ function chat_content(&$a) { if(argc() > 2 && intval(argv(2))) { $room_id = intval(argv(2)); + $bookmark_link = get_bookmark_link($ob); + $x = chatroom_enter($observer,$room_id,'online',$_SERVER['REMOTE_ADDR']); if(! $x) return; @@ -152,8 +156,16 @@ function chat_content(&$a) { intval($a->profile['profile_uid']) ); if($x) { + $private = ((($x[0]['allow_cid']) || ($x[0]['allow_gid']) || ($x[0]['deny_cid']) || ($x[0]['deny_gid'])) ? true : false); $room_name = $x[0]['cr_name']; + if($bookmark_link) + $bookmark_link .= '&url=' . z_root() . '/chat/' . argv(1) . '/' . argv(2) . '&title=' . urlencode($x[0]['cr_name']) . (($private) ? '&private=1' : '') . '&ischat=1'; } + else { + notice( t('Room not found') . EOL); + return; + } + $o = replace_macros(get_markup_template('chat.tpl'),array( '$room_name' => $room_name, '$room_id' => $room_id, @@ -162,7 +174,9 @@ function chat_content(&$a) { '$submit' => t('Submit'), '$leave' => t('Leave Room'), '$away' => t('I am away right now'), - '$online' => t('I am online') + '$online' => t('I am online'), + '$bookmark_link' => $bookmark_link, + '$bookmark' => t('Bookmark this room') )); return $o; diff --git a/view/tpl/chat.tpl b/view/tpl/chat.tpl index 51aeb836e..acb7e5bef 100644 --- a/view/tpl/chat.tpl +++ b/view/tpl/chat.tpl @@ -17,7 +17,7 @@ - {{$leave}} | {{$away}} | {{$online}} + {{$leave}} | {{$away}} | {{$online}}{{if $bookmark_link}} | {{$bookmark}}{{/if}} From 8cf59c2e1b3e824d63352162c4e4089a88266092 Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Tue, 25 Feb 2014 18:46:04 +0100 Subject: [PATCH 016/130] assets dir had the old logo --- assets/home.html | 4 ++-- assets/logo_antiprism.png | Bin 62321 -> 0 bytes assets/logo_simplifiedap.png | Bin 0 -> 11419 bytes assets/redmatrixlogo.png | Bin 105403 -> 0 bytes 4 files changed, 2 insertions(+), 2 deletions(-) delete mode 100644 assets/logo_antiprism.png create mode 100644 assets/logo_simplifiedap.png delete mode 100644 assets/redmatrixlogo.png diff --git a/assets/home.html b/assets/home.html index 1a0a13481..0ec29832e 100644 --- a/assets/home.html +++ b/assets/home.html @@ -26,8 +26,8 @@ header { z-index: 10000; }
-
Dream it. Do it.
- +
Dream it. Do it.
+
Communications
diff --git a/assets/logo_antiprism.png b/assets/logo_antiprism.png deleted file mode 100644 index b72e2a2118c8da308f0837bf639b16d901e6f047..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62321 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 diff --git a/assets/logo_simplifiedap.png b/assets/logo_simplifiedap.png new file mode 100644 index 0000000000000000000000000000000000000000..a49a9c12a12e9c29e0405b94bed105582a1ab481 GIT binary patch literal 11419 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
- + diff --git a/doc/html/apw_2php_2style_8php.html b/doc/html/apw_2php_2style_8php.html index 6b54273e1..d28c59e70 100644 --- a/doc/html/apw_2php_2style_8php.html +++ b/doc/html/apw_2php_2style_8php.html @@ -114,10 +114,128 @@ $(document).ready(function(){initNavTree('apw_2php_2style_8php.html','');}); Variables - - + + + + + + + + + + + + + + + + + + + +
if (!function_exists('mark_for_death')) if (!function_exists('unmark_for_death')) random_profile if (!function_exists('mark_for_death')) if (!function_exists('unmark_for_death')) random_profile ( )
 $uid = get_theme_uid()
 
 if ($uid) load_pconfig($uid
 
 if ($uid) load_pconfig($uid
 
 $x = splitFilename($font)
 
 $fname = $x[0]
 
 $fext = $x[1]
 
if(file_exists('view/theme/apw/font/'.$fname.
+'i.'.$fext)) if(file_exists('view/theme/apw/font/'.$fname.
+'b.'.$fext)) 
$strongmacro = ''
 
 $obliquemacro = ''
 
if($nav$sectiontop = "28px"
 
 $iconsize = "16px"
 
 $navheight = "27px"
 
 $showlock = "block"
 

Variable Documentation

+ +
+
+ + + + +
$fext = $x[1]
+
+ +
+
+ +
+
+ + + + +
$fname = $x[0]
+
+ +

Referenced by reload_plugins().

+ +
+
+ +
+
+ + + + +
$iconsize = "16px"
+
+ +
+
+ +
+
+ + + + +
$navheight = "27px"
+
+ +
+
+ +
+
+ + + + +
$obliquemacro = ''
+
+ +
+
+ +
+
+ + + + +
if ($nav) $sectiontop = "28px"
+
+ +
+
+ +
+
+ + + + +
$showlock = "block"
+
+ +
+
+ +
+
+ + + + +
if (file_exists('view/theme/apw/font/'.$fname. 'i.'.$fext)) if (file_exists('view/theme/apw/font/'.$fname. 'b.'.$fext)) $strongmacro = ''
+
+ +
+
@@ -128,16 +246,30 @@ Variables
-

Referenced by admin_page_users(), admin_page_users_post(), all_friends(), build_sync_packet(), chatroom_list(), check_item_source(), check_list_permissions(), common_friends(), common_friends_zcid(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), current_theme_url(), del_pconfig(), delete_imported_item(), drop_items(), events_post(), feature_enabled(), first_post_date(), fix_attached_photo_permissions(), fix_private_photos(), follow_init(), get_all_perms(), get_pconfig(), get_theme_uid(), get_things(), get_words(), group_add(), group_add_member(), group_byname(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), import_channel_photo(), item_expire(), item_post(), item_store_update(), items_fetch(), load_contact_links(), load_pconfig(), local_dir_update(), FKOAuth1\loginUser(), menu_add_item(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit_item(), menu_fetch(), mini_group_select(), mood_init(), new_contact(), notifier_run(), pdl_selector(), perm_is_allowed(), photo_init(), poke_init(), posted_dates(), private_messages_list(), remove_community_tag(), send_message(), service_class_allows(), service_class_fetch(), set_pconfig(), Conversation\set_profile_owner(), photo_driver\store(), store_item_tag(), suggestion_query(), tag_deliver(), tagadelic(), tagblock(), tgroup_check(), widget_archive(), widget_follow(), widget_tagcloud(), and zot_feed().

+

Referenced by admin_page_users(), admin_page_users_post(), all_friends(), build_sync_packet(), chatroom_list(), check_item_source(), check_list_permissions(), common_friends(), common_friends_zcid(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), del_pconfig(), delete_imported_item(), drop_items(), events_post(), feature_enabled(), first_post_date(), fix_attached_photo_permissions(), fix_private_photos(), follow_init(), get_all_perms(), get_pconfig(), get_theme_uid(), get_things(), get_words(), group_add(), group_add_member(), group_byname(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), import_channel_photo(), item_expire(), item_post(), item_store_update(), items_fetch(), load_contact_links(), load_pconfig(), local_dir_update(), FKOAuth1\loginUser(), menu_add_item(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit_item(), menu_fetch(), mini_group_select(), mood_init(), new_contact(), notifier_run(), pdl_selector(), perm_is_allowed(), photo_init(), poke_init(), posted_dates(), private_messages_list(), remove_community_tag(), send_message(), service_class_allows(), service_class_fetch(), set_pconfig(), Conversation\set_profile_owner(), photo_driver\store(), store_item_tag(), suggestion_query(), tag_deliver(), tagadelic(), tagblock(), tgroup_check(), widget_archive(), widget_follow(), widget_tagcloud(), and zot_feed().

- +
- + + +
if($uid) load_pconfig($uid$x = splitFilename($font)
+
+ +

Referenced by Template\_replcb_for(), Template\_replcb_if(), account_remove(), acl_init(), activity_sanitise(), admin_page_themes(), aes_encapsulate(), argv(), array_sanitise(), attach_change_permissions(), attach_delete(), attach_store(), autoname(), bb_parse_crypt(), bbcode(), blocks_content(), bookmark_add(), bookmarks_content(), build_sync_packet(), change_channel(), channel_content(), chat_content(), chat_post(), chatroom_create(), chatroom_enter(), chatsvc_content(), chatsvc_init(), chatsvc_post(), check_config(), check_form_security_token(), check_item_source(), check_list_permissions(), check_webbie(), RedDirectory\childExists(), cloud_init(), common_init(), construct_page(), conversation(), RedDirectory\createFile(), photo_gd\cropImage(), photo_imagick\cropImage(), datesel(), datesel_format(), decode_tags(), deliver_run(), dir_tagadelic(), directory_content(), directory_run(), dirprofile_init(), display_content(), downgrade_accounts(), email_header_encode(), encode_item(), encode_mail(), event_store(), expand_groups(), feature_enabled(), fetch_post_tags(), find_xchan_in_array(), findpeople_widget(), fix_private_photos(), fix_system_urls(), photo_gd\flip(), fsuggest_post(), get_all_perms(), get_item_elements(), get_mail_elements(), get_mentions(), get_online_status(), get_profile_elements(), get_terms_oftype(), get_theme_uid(), RedDirectory\getChild(), RedDirectory\getDir(), RedDirectory\getQuotaInfo(), gprobe_run(), ids_to_querystr(), import_author_rss(), import_author_xchan(), import_author_zot(), import_directory_keywords(), import_directory_profile(), import_post(), import_site(), import_xchan(), invite_content(), invite_post(), item_post(), items_fetch(), json_decode_plus(), json_return_and_die(), layouts_content(), legal_webbie(), FKOAuth1\loginUser(), magic_init(), mail_post(), manage_content(), match_content(), menu_content(), menu_delete_id(), menu_fetch(), menu_render(), mimetype_select(), nav(), navbar_complete(), network_content(), new_channel_init(), new_contact(), notification(), notifier_run(), oembed_fetch_url(), onedirsync_run(), onepoll_run(), openid_content(), page_content(), parse_xml_string(), perm_is_allowed(), photos_list_photos(), photos_post(), ping_init(), poco_load(), poller_run(), post_init(), post_post(), preg_heart(), print_template(), private_messages_list(), proc_run(), process_channel_sync_delivery(), process_mail_delivery(), profile_init(), profile_load(), profile_photo_post(), public_recips(), RedFile\put(), dba_mysql\q(), dba_mysqli\q(), randprof_init(), RedCollectionData(), RedFileData(), remote_online_status(), remove_community_tag(), rpost_content(), photo_driver\save(), search_ac_init(), send_status_notifications(), share_init(), site_default_perms(), smilies(), sources_content(), sslify_init(), photo_driver\store(), string_splitter(), stringify_array_elms(), sync_directories(), tag_deliver(), tagadelic(), tagrm_content(), tagrm_post(), theme_status(), thing_content(), timesel(), toggle_theme(), update_directory_entry(), update_imported_item(), upgrade_bool_message(), upgrade_message(), valid_email(), RedBasicAuth\validateUserPass(), webpages_content(), widget_affinity(), widget_bookmarkedchats(), widget_suggestedchats(), widget_suggestions(), xchan_query(), xmlify(), zfinger_init(), zot_process_response(), zot_refresh(), and zot_register_hub().

+ +
+
+ +
+
+ + +
if ($uid) if (($schema)&&($schema!= '---')) if(!$schema||($schema== '---'))
diff --git a/doc/html/apw_2php_2style_8php.js b/doc/html/apw_2php_2style_8php.js index d92beec54..54fd68504 100644 --- a/doc/html/apw_2php_2style_8php.js +++ b/doc/html/apw_2php_2style_8php.js @@ -1,5 +1,14 @@ var apw_2php_2style_8php = [ + [ "$fext", "apw_2php_2style_8php.html#a404171b8f918c116e45a6421c92f0cc9", null ], + [ "$fname", "apw_2php_2style_8php.html#ab9e0f70d44ab67f4334f9883631777fc", null ], + [ "$iconsize", "apw_2php_2style_8php.html#a07adb491994deb72a00a975b431d3e30", null ], + [ "$navheight", "apw_2php_2style_8php.html#a1c8a7c0db8c174239f3909cb931cb872", null ], + [ "$obliquemacro", "apw_2php_2style_8php.html#a2cad82a3ecadbe58dbc4197de1c63da0", null ], + [ "$sectiontop", "apw_2php_2style_8php.html#acb0dedc3212a7c60ab2474768becd79a", null ], + [ "$showlock", "apw_2php_2style_8php.html#ad401ea1d1ba236f86863b4574f01e425", null ], + [ "$strongmacro", "apw_2php_2style_8php.html#aa58104ba36588bbf082cecbb3910e2ea", null ], [ "$uid", "apw_2php_2style_8php.html#a109bbd7f4add27541707b191b73ef84a", null ], - [ "if", "apw_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a", null ] + [ "$x", "apw_2php_2style_8php.html#af3a16c5f0dd7a74cf9acf6a49fff73a7", null ], + [ "if", "apw_2php_2style_8php.html#aea44f144ed341be483b334a7634c1aec", null ] ]; \ No newline at end of file diff --git a/doc/html/auth_8php.html b/doc/html/auth_8php.html index 0599457cf..1298d0826 100644 --- a/doc/html/auth_8php.html +++ b/doc/html/auth_8php.html @@ -117,13 +117,13 @@ Functions    account_verify_password ($email, $pass)   -if((x($_POST,'auth-params'))&&$_POST['auth-params']===
+if((x($_POST,'auth-params'))&&$_POST['auth-params']===
'login') match_openid ($authid)   -

Variables

if((isset($_SESSION))&&(x($_SESSION,'authenticated'))&&((!(x($_POST,'auth-params')))||($_POST['auth-params']!==
+
if((isset($_SESSION))&&(x($_SESSION,'authenticated'))&&((!(x($_POST,'auth-params')))||($_POST['auth-params']!==
'login'))) 
else
 
@@ -164,7 +164,7 @@ Variables
- + @@ -200,7 +200,7 @@ Variables
if ((x($_POST,'auth-params'))&&$_POST['auth-params']=== 'login') match_openid if ((x($_POST,'auth-params'))&&$_POST['auth-params']=== 'login') match_openid (   $authid)
- +
if ((isset($_SESSION))&&(x($_SESSION,'authenticated'))&&((!(x($_POST,'auth-params')))||($_POST['auth-params']!== 'login'))) elseif ((isset($_SESSION))&&(x($_SESSION,'authenticated'))&&((!(x($_POST,'auth-params')))||($_POST['auth-params']!== 'login'))) else
@@ -210,9 +210,12 @@ Variables
}
+
+
if((x($_POST,'password')) && strlen($_POST['password']))
$encrypted = hash('whirlpool',trim($_POST['password']))
-
+

Inline - not a function look for auth parameters or re-validate an existing session also handles logout

+

D&h1+KtxsF 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    terminate_friendship ($user, $self, $contact)   -if(!function_exists('mark_for_death'))
-if(!function_exists('unmark_for_death')) random_profile () +if(!function_exists('mark_for_death'))
+if(!function_exists('unmark_for_death')) random_profile ()  

Function Documentation

@@ -358,7 +358,7 @@ Functions

W3vx}29o9xi1@V^3(VALQbUSpAfD0ei%hpKNd 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 Date: Tue, 25 Feb 2014 21:06:47 +0000 Subject: [PATCH 017/130] Update channel permissions to full ints --- boot.php | 2 +- install/update.php | 22 ++++++++++++++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/boot.php b/boot.php index fbab83f05..26811a55e 100755 --- a/boot.php +++ b/boot.php @@ -47,7 +47,7 @@ define ( 'RED_PLATFORM', 'Red Matrix' ); define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R'); define ( 'ZOT_REVISION', 1 ); -define ( 'DB_UPDATE_VERSION', 1098 ); +define ( 'DB_UPDATE_VERSION', 1099 ); define ( 'EOL', '
' . "\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/install/update.php b/install/update.php index 7d1305863..9ad74fec4 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ Date: Tue, 25 Feb 2014 21:12:19 +0000 Subject: [PATCH 018/130] Also update database.sql --- install/database.sql | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/install/database.sql b/install/database.sql index cd31a0285..ac35f9bc3 100644 --- a/install/database.sql +++ b/install/database.sql @@ -160,18 +160,18 @@ CREATE TABLE IF NOT EXISTS `channel` ( `channel_allow_gid` mediumtext NOT NULL, `channel_deny_cid` mediumtext NOT NULL, `channel_deny_gid` mediumtext NOT NULL, - `channel_r_stream` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_r_profile` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_r_photos` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_r_abook` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_stream` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_wall` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_tagwall` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_comment` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_mail` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_photos` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_w_chat` tinyint(3) unsigned NOT NULL DEFAULT '128', - `channel_a_delegate` tinyint(3) unsigned NOT NULL DEFAULT '0', + `channel_r_stream` int(10) unsigned NOT NULL DEFAULT '128', + `channel_r_profile` int(10) unsigned NOT NULL DEFAULT '128', + `channel_r_photos` int(10) unsigned NOT NULL DEFAULT '128', + `channel_r_abook` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_stream` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_wall` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_tagwall` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_comment` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_mail` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_photos` int(10) unsigned NOT NULL DEFAULT '128', + `channel_w_chat` int(10) unsigned NOT NULL DEFAULT '128', + `channel_a_delegate` int(10) unsigned NOT NULL DEFAULT '0', `channel_r_storage` int(10) unsigned NOT NULL DEFAULT '128', `channel_w_storage` int(10) unsigned NOT NULL DEFAULT '128', `channel_r_pages` int(10) unsigned NOT NULL DEFAULT '128', From 08313bac6c7ce9f87b6b6ddf23cc5c4d50747aa1 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 25 Feb 2014 14:12:51 -0800 Subject: [PATCH 019/130] allow personalised page layouts for modules. --- boot.php | 14 ++++++++++++-- include/identity.php | 2 -- mod/settings.php | 1 - version.inc | 2 +- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/boot.php b/boot.php index fbab83f05..68b7c8d3c 100755 --- a/boot.php +++ b/boot.php @@ -1807,8 +1807,18 @@ function construct_page(&$a) { // in case a page has overloaded a module, see if we already have a layout defined // otherwise, if a pdl file exists for this module, use it - if((! count($a->layout)) && ($p = theme_include('mod_' . $a->module . '.pdl')) != '') - comanche_parser($a,@file_get_contents($p)); + if(! count($a->layout)) { + $n = 'mod_' . $a->module . '.pdl' ; + $u = get_theme_uid(); + if((! $u) && $a->profile_uid) + $u = $a->profile_uid; + if($u) + $s = get_pconfig($u,'system',$n); + if((! $s) && (($p = theme_include($n)) != '')) + $s = @file_get_contents($p); + if($s) + comanche_parser($a,$s); + } $comanche = ((count($a->layout)) ? true : false); diff --git a/include/identity.php b/include/identity.php index 2e611625a..93174031c 100644 --- a/include/identity.php +++ b/include/identity.php @@ -1112,8 +1112,6 @@ function get_theme_uid() { if(local_user()) { if((get_pconfig(local_user(),'system','always_my_theme')) || (! $uid)) return local_user(); - if(! $uid) - return local_user(); } if(! $uid) { $x = get_sys_channel(); diff --git a/mod/settings.php b/mod/settings.php index b88380ff0..13cb3cae9 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -439,7 +439,6 @@ function settings_post(&$a) { dbesc($str_group_deny), intval(local_user()) ); - if($r) info( t('Settings updated.') . EOL); diff --git a/version.inc b/version.inc index adf85ba7e..5e33a16d7 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2014-02-24.598 +2014-02-25.599 From 9a2e73ae1522c7e69d7d6e0ca6c1089189c6e697 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 25 Feb 2014 16:29:00 -0800 Subject: [PATCH 020/130] move bootstrap to theme and out of core. --- view/php/theme_init.php | 9 +-------- view/theme/redbasic/php/theme_init.php | 9 +++++++++ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/view/php/theme_init.php b/view/php/theme_init.php index b6aa5de0f..45eb2fc1d 100644 --- a/view/php/theme_init.php +++ b/view/php/theme_init.php @@ -2,8 +2,6 @@ require_once('include/plugin.php'); -head_add_css('library/bootstrap/css/bootstrap-theme.min.css'); -head_add_css('library/bootstrap/css/bootstrap.min.css'); head_add_css('library/fancybox/jquery.fancybox-1.3.4.css'); head_add_css('library/tiptip/tipTip.css'); head_add_css('library/jgrowl/jquery.jgrowl.css'); @@ -11,13 +9,10 @@ head_add_css('library/jslider/css/jslider.css'); head_add_css('library/colorbox/colorbox.css'); head_add_css('view/css/conversation.css'); -head_add_css('view/css/bootstrap-red.css'); head_add_css('view/css/widgets.css'); -head_add_css('library/bootstrap-datetimepicker/css/bootstrap-datetimepicker.min.css'); + head_add_js('jquery.js'); -head_add_js('library/bootstrap/js/bootstrap.min.js'); -head_add_js('library/bootstrap/js/bootbox.min.js'); head_add_js('jquery-migrate-1.1.1.js'); //head_add_js('jquery-compat.js'); head_add_js('spin.js'); @@ -42,8 +37,6 @@ head_add_js('crypto.js'); head_add_js('library/jslider/bin/jquery.slider.min.js'); head_add_js('docready.js'); head_add_js('library/colorbox/jquery.colorbox-min.js'); -head_add_js('library/bootstrap-datetimepicker/js/moment.js'); -head_add_js('library/bootstrap-datetimepicker/js/bootstrap-datetimepicker.min.js'); /** * Those who require this feature will know what to do with it. diff --git a/view/theme/redbasic/php/theme_init.php b/view/theme/redbasic/php/theme_init.php index ccb85a070..12f49efa7 100644 --- a/view/theme/redbasic/php/theme_init.php +++ b/view/theme/redbasic/php/theme_init.php @@ -1,5 +1,14 @@ Date: Tue, 25 Feb 2014 17:55:30 -0800 Subject: [PATCH 021/130] more chatroom discovery --- boot.php | 2 +- install/database.sql | 11 +++++++++++ install/update.php | 20 +++++++++++++++++++- mod/rbmark.php | 7 ++++--- 4 files changed, 35 insertions(+), 5 deletions(-) diff --git a/boot.php b/boot.php index 56a87ca9a..381f1eea0 100755 --- a/boot.php +++ b/boot.php @@ -47,7 +47,7 @@ define ( 'RED_PLATFORM', 'Red Matrix' ); define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R'); define ( 'ZOT_REVISION', 1 ); -define ( 'DB_UPDATE_VERSION', 1099 ); +define ( 'DB_UPDATE_VERSION', 1100 ); define ( 'EOL', '
' . "\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/install/database.sql b/install/database.sql index ac35f9bc3..5d00afb03 100644 --- a/install/database.sql +++ b/install/database.sql @@ -1027,6 +1027,17 @@ CREATE TABLE IF NOT EXISTS `xchan` ( KEY `xchan_follow` (`xchan_follow`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE IF NOT EXISTS `xchat` ( + `xchat_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `xchat_url` char(255) NOT NULL DEFAULT '', + `xchat_desc` char(255) NOT NULL DEFAULT '', + `xchat_xchan` char(255) NOT NULL DEFAULT '', + PRIMARY KEY (`xchat_id`), + KEY `xchat_url` (`xchat_url`), + KEY `xchat_desc` (`xchat_desc`), + KEY `xchat_xchan` (`xchat_xchan`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + CREATE TABLE IF NOT EXISTS `xconfig` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `xchan` char(255) NOT NULL, diff --git a/install/update.php b/install/update.php index 9ad74fec4..8612e7354 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ escape_tags($_REQUEST['url']),'term' => escape_tags($_REQUEST['title'])); bookmark_add($channel,$channel,$t,((x($_REQUEST,'private')) ? intval($_REQUEST['private']) : 0), array('menu_id' => ((x($_REQUEST,'menu_id')) ? intval($_REQUEST['menu_id']) : 0), - 'menu_name' => ((x($_REQUEST,'menu_name')) ? escape_tags($_REQUEST['menu_name']) : '') + 'menu_name' => ((x($_REQUEST,'menu_name')) ? escape_tags($_REQUEST['menu_name']) : ''), + 'ischat' => ((x($_REQUEST['ischat'])) ? intval($_REQUEST['ischat']) : 0) )); goaway(z_root() . '/bookmarks'); @@ -92,8 +93,8 @@ function rbmark_content(&$a) { '$header' => t('Save Bookmark'), '$url' => array('url',t('URL of bookmark'),escape_tags($_REQUEST['url'])), '$title' => array('title',t('Description'),escape_tags($_REQUEST['title'])), - '$ischat' => (($ischat) ? 1 : 0), - '$private' => (($private) ? 1 : 0), + '$ischat' => ((x($_REQUEST,'ischat')) ? intval($_REQUEST['ischat']) : 0), + '$private' => ((x($_REQUEST,'private')) ? intval($_REQUEST['private']) : 0), '$submit' => t('Save'), '$menu_name' => array('menu_name',t('Or enter new bookmark folder name'),'',''), '$menus' => $menu_select From 04e6cb515b524b35ae9f8d20c4b131aa0429a784 Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Wed, 26 Feb 2014 01:57:29 +0000 Subject: [PATCH 022/130] Fix the weirdness of messages appearing in the middle of the screen and working their way downwards one comment at a time as the ping runs when joining an active chat room. --- mod/chatsvc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mod/chatsvc.php b/mod/chatsvc.php index e6590f57a..9cc8778f5 100644 --- a/mod/chatsvc.php +++ b/mod/chatsvc.php @@ -113,7 +113,7 @@ function chatsvc_content(&$a) { $chats = array(); - $r = q("select * from chat left join xchan on chat_xchan = xchan_hash where chat_room = %d and chat_id > %d", + $r = q("select * from chat left join xchan on chat_xchan = xchan_hash where chat_room = %d and chat_id > %d order by created", intval($a->data['chat']['room_id']), intval($lastseen) ); @@ -147,4 +147,4 @@ function chatsvc_content(&$a) { json_return_and_die($ret); } - \ No newline at end of file + From e7e97e578b3069b8d24ea2a18ce4d3648b402ca3 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 25 Feb 2014 19:48:13 -0800 Subject: [PATCH 023/130] put bookmarked chatrooms into poco --- boot.php | 2 +- include/socgraph.php | 28 ++++++++++++++++++++++++++++ install/database.sql | 4 +++- install/update.php | 10 +++++++++- mod/poco.php | 11 +++++++++++ 5 files changed, 52 insertions(+), 3 deletions(-) diff --git a/boot.php b/boot.php index 381f1eea0..c37bd57b9 100755 --- a/boot.php +++ b/boot.php @@ -47,7 +47,7 @@ define ( 'RED_PLATFORM', 'Red Matrix' ); define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R'); define ( 'ZOT_REVISION', 1 ); -define ( 'DB_UPDATE_VERSION', 1100 ); +define ( 'DB_UPDATE_VERSION', 1101 ); define ( 'EOL', '
' . "\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/include/socgraph.php b/include/socgraph.php index 0e91eba60..2bd0290cc 100644 --- a/include/socgraph.php +++ b/include/socgraph.php @@ -64,6 +64,34 @@ function poco_load($xchan = '',$url = null) { logger('poco_load: ' . print_r($j,true),LOGGER_DATA); + if($xchan) { + if(array_key_exists('chatrooms',$j) && is_array($j['chatrooms'])) { + foreach($j['chatrooms'] as $room) { + $r = q("select * from xchat where xchat_url = '%s' and xchat_xchan = '%s' limit 1", + dbesc($room['url']) + ); + if($r) { + q("update xchat set xchat_edited = '%s' where xchat_id = %d limit 1", + dbesc(datetime_convert()), + intval($r[0]['xchat_id']) + ); + } + else { + $x = q("insert into xchat ( xchat_url, xchat_desc, xchat_xchan, xchat_edited ) + values ( '%s', '%s', '%s', '%s' ) ", + dbesc(escape_tags($room['url'])), + dbesc(escape_tags($room['desc'])), + dbesc($xchan), + dbesc(datetime_convert()) + ); + } + } + } + q("delete from xchat where xchat_edited < UTC_TIMESTAMP() - INTERVAL 7 DAY and xchat_xchan = '%s' ", + dbesc($xchan) + ); + } + if(! ((x($j,'entry')) && (is_array($j['entry'])))) { logger('poco_load: no entries'); return; diff --git a/install/database.sql b/install/database.sql index 5d00afb03..2c8bc50c7 100644 --- a/install/database.sql +++ b/install/database.sql @@ -1032,10 +1032,12 @@ CREATE TABLE IF NOT EXISTS `xchat` ( `xchat_url` char(255) NOT NULL DEFAULT '', `xchat_desc` char(255) NOT NULL DEFAULT '', `xchat_xchan` char(255) NOT NULL DEFAULT '', + `xchat_edited` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' PRIMARY KEY (`xchat_id`), KEY `xchat_url` (`xchat_url`), KEY `xchat_desc` (`xchat_desc`), - KEY `xchat_xchan` (`xchat_xchan`) + KEY `xchat_xchan` (`xchat_xchan`), + KEY `xchat_edited` (`xchat_edited`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `xconfig` ( diff --git a/install/update.php b/install/update.php index 8612e7354..9c9b6129a 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ $d['mitem_link'], 'desc' => $d['mitem_desc']); + } + } + $ret['entry'] = array(); From 1857036a994a5470aaece799d3bf07fbc863a91f Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 25 Feb 2014 20:36:56 -0800 Subject: [PATCH 024/130] I'll have to fix this someday. --- include/enotify.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/enotify.php b/include/enotify.php index e0991257f..036d5275e 100644 --- a/include/enotify.php +++ b/include/enotify.php @@ -384,6 +384,12 @@ function notification($params) { $itemlink = $a->get_baseurl() . '/notify/view/' . $notify_id; $msg = str_replace('$itemlink',$itemlink,$epreamble); + + // wretched hack, but we don't want to duplicate all the preamble variations and we also don't want to screw up a translation + + if(($a->language === 'en' || (! $a->language)) && strpos($msg,', ')) + $msg = substr($msg,strpos($msg,', ')+1); + $r = q("update notify set msg = '%s' where id = %d and uid = %d limit 1", dbesc($msg), intval($notify_id), From 364fc9f1638e67dad2c289b4d365753a5d06ac05 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 25 Feb 2014 20:58:20 -0800 Subject: [PATCH 025/130] comanche: provide an option to add a menu class for different theming choices on some menus (e.g. horizontal, tabbed, etc.) --- include/comanche.php | 15 ++++++++++++--- include/menu.php | 3 ++- mod/bookmarks.php | 4 ++-- view/tpl/usermenu.tpl | 2 +- 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/include/comanche.php b/include/comanche.php index 7d7e0e70c..f02190ee5 100644 --- a/include/comanche.php +++ b/include/comanche.php @@ -79,10 +79,10 @@ function comanche_parser(&$a,$s) { } -function comanche_menu($name) { +function comanche_menu($name,$class = '') { $a = get_app(); $m = menu_fetch($name,$a->profile['profile_uid'],get_observer_hash()); - return menu_render($m); + return menu_render($m,$class); } function comanche_replace_region($match) { @@ -152,13 +152,22 @@ function comanche_widget($name,$text) { function comanche_region(&$a,$s) { - $cnt = preg_match_all("/\[menu\](.*?)\[\/menu\]/ism", $s, $matches, PREG_SET_ORDER); if($cnt) { foreach($matches as $mtch) { $s = str_replace($mtch[0],comanche_menu(trim($mtch[1])),$s); } } + + // menu class e.g. [menu=horizontal]my_menu[/menu] or [menu=tabbed]my_menu[/menu] + // allows different menu renderings to be applied + + $cnt = preg_match_all("/\[menu=(.*?)\](.*?)\[\/menu\]/ism", $s, $matches, PREG_SET_ORDER); + if($cnt) { + foreach($matches as $mtch) { + $s = str_replace($mtch[0],comanche_menu(trim($mtch[2]),$match[1]),$s); + } + } $cnt = preg_match_all("/\[block\](.*?)\[\/block\]/ism", $s, $matches, PREG_SET_ORDER); if($cnt) { foreach($matches as $mtch) { diff --git a/include/menu.php b/include/menu.php index 2f1719d0b..4b0a11f10 100644 --- a/include/menu.php +++ b/include/menu.php @@ -24,7 +24,7 @@ function menu_fetch($name,$uid,$observer_xchan) { return null; } -function menu_render($menu, $edit = false) { +function menu_render($menu, $class='', $edit = false) { if(! $menu) return ''; @@ -38,6 +38,7 @@ function menu_render($menu, $edit = false) { return replace_macros(get_markup_template('usermenu.tpl'),array( '$menu' => $menu['menu'], + '$class' => $class, '$edit' => (($edit) ? t("Edit") : ''), '$items' => $menu['items'] )); diff --git a/mod/bookmarks.php b/mod/bookmarks.php index c5be68b8e..141ae2e0b 100644 --- a/mod/bookmarks.php +++ b/mod/bookmarks.php @@ -57,7 +57,7 @@ function bookmarks_content(&$a) { if($x) { foreach($x as $xx) { $y = menu_fetch($xx['menu_name'],local_user(),get_observer_hash()); - $o .= menu_render($y,true); + $o .= menu_render($y,'',true); } } @@ -69,7 +69,7 @@ function bookmarks_content(&$a) { if($x) { foreach($x as $xx) { $y = menu_fetch($xx['menu_name'],local_user(),get_observer_hash()); - $o .= menu_render($y,true); + $o .= menu_render($y,'',true); } } diff --git a/view/tpl/usermenu.tpl b/view/tpl/usermenu.tpl index 80e160fdf..a5c6faa99 100644 --- a/view/tpl/usermenu.tpl +++ b/view/tpl/usermenu.tpl @@ -1,4 +1,4 @@ -
+
{{if $menu.menu_desc}}

{{$menu.menu_desc}}

{{/if}} From c5b8224dcca6d867f1156757a9c78948fa007dad Mon Sep 17 00:00:00 2001 From: marijus Date: Wed, 26 Feb 2014 23:20:40 +0100 Subject: [PATCH 026/130] properly fix profile edit dropdown menu --- view/theme/redbasic/css/style.css | 87 +++++++------------------------ view/tpl/profile_vcard.tpl | 6 +-- 2 files changed, 21 insertions(+), 72 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 2402e514e..057a0fba4 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -429,6 +429,11 @@ footer { text-decoration: none; } +.vcard .dropdown-menu { + position: absolute; + left: 200px; + top: 18px; +} #profile-extra-links { clear: both; @@ -445,9 +450,7 @@ footer { margin-top: 5px; } -.profile-edit-side-div { - float: right; -} + .profile-edit-side-link { opacity: 0.3; filter:alpha(opacity=30); @@ -488,72 +491,6 @@ footer { padding: 12px; } -#profiles-menu.menu-popup { - left: 200px; - right: auto; - top: 22px; -} - -ul.menu-popup { - position: absolute; - display: none; - width: 10em; - background: #0080FF; - color: #eec; - padding: 0px; - list-style: none; -/* border-radius: 0px 0px 20px 20px; */ - z-index: 100000; - -webkit-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.7); - -moz-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.7); - box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.7); -} -ul.menu-popup a { - display: block; - color: #FFFFFF; - padding: 5px 10px; - text-decoration: none; -} - - -ul.menu-popup a:hover { - background-color: #888888; - color: #FFFFFF; -} -ul.menu-popup .menu-sep { - border-top: 1px solid #9eabb0; -} -ul.menu-popup li { - float: none; - overflow: auto; - height: auto; - display: block; -} -ul.menu-popup li img { - float: left; - width: 16px; - height: 16px; - padding-right: 5px; -} -ul.menu-popup .empty { - padding: 5px; - text-align: center; - color: #9eabb0; -} -ul.menu-popup .toolbar { - background-color: #9eabb0; - height: auto; - overflow: auto; -} -ul.menu-popup .toolbar a { - float: right; -} -ul.menu-popup .toolbar a:hover { - background-color: #ffffff; -} - - - #profile-in-dir-yes-label, #profile-in-dir-no-label, #profile-in-netdir-yes-label, @@ -2273,3 +2210,15 @@ nav .dropdown-menu { blockquote { font-size: $body_font_size; } + +.dropdown-menu { + font-size: $body_font_size; + border-radius: $radiuspx; +} + +.dropdown-menu img { + width: 32px; + height: 32px; + margin-right: 5px; + border-radius: $radiuspx; +} diff --git a/view/tpl/profile_vcard.tpl b/view/tpl/profile_vcard.tpl index 10a928e1c..10a0a25a9 100755 --- a/view/tpl/profile_vcard.tpl +++ b/view/tpl/profile_vcard.tpl @@ -1,9 +1,9 @@
{{if $profile.edit}} -
- -

diff --git a/doc/html/bbcode_8php.html b/doc/html/bbcode_8php.html index 1726b8b9b..1ce153f8b 100644 --- a/doc/html/bbcode_8php.html +++ b/doc/html/bbcode_8php.html @@ -122,8 +122,8 @@ Functions    bb_unspacefy_and_trim ($st)   -if(!function_exists('bb_extract_images'))
-if(!function_exists('bb_replace_images')) bb_parse_crypt ($match) +if(!function_exists('bb_extract_images'))
+if(!function_exists('bb_replace_images')) bb_parse_crypt ($match)    bb_qr ($match)   @@ -164,7 +164,7 @@ Functions
- + @@ -301,7 +301,7 @@ Functions
if (!function_exists('bb_extract_images')) if (!function_exists('bb_replace_images')) bb_parse_crypt if (!function_exists('bb_extract_images')) if (!function_exists('bb_replace_images')) bb_parse_crypt (   $match)
diff --git a/doc/html/boot_8php.html b/doc/html/boot_8php.html index 7b700a6c6..7c5fab00e 100644 --- a/doc/html/boot_8php.html +++ b/doc/html/boot_8php.html @@ -202,7 +202,7 @@ Variables   const ZOT_REVISION 1   -const DB_UPDATE_VERSION 1098 +const DB_UPDATE_VERSION 1101   const EOL '<br />' . "\r\n"   @@ -416,6 +416,8 @@ Variables   const MENU_ITEM_NEWWIN 0x0002   +const MENU_ITEM_CHATROOM 0x0004 +  const POLL_SIMPLE_RATING 0x0001   const POLL_TENSCALE 0x0002 @@ -720,7 +722,7 @@ Variables
-

Referenced by App\__construct(), _well_known_init(), achievements_content(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), api_get_user(), attach_init(), blocks_content(), channel_init(), chat_content(), chat_init(), cloud_init(), common_init(), connect_init(), connections_content(), connedit_content(), connedit_init(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), group_content(), group_post(), help_content(), layouts_content(), like_content(), lockview_content(), mail_content(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), online_init(), page_content(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), profile_init(), profile_photo_post(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), queue_run(), register_init(), regmod_content(), rpost_content(), settings_init(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), thing_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), xref_init(), and zotfeed_init().

+

Referenced by App\__construct(), _well_known_init(), achievements_content(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), api_get_user(), attach_init(), blocks_content(), channel_init(), chat_content(), chat_init(), cloud_init(), common_init(), connect_init(), connections_content(), connedit_content(), connedit_init(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), group_content(), group_post(), help_content(), layouts_content(), like_content(), lockview_content(), mail_content(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), online_init(), page_content(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), profile_init(), profile_photo_post(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), queue_run(), rbmark_content(), register_init(), regmod_content(), rpost_content(), settings_init(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), thing_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), xref_init(), and zotfeed_init().

@@ -738,7 +740,7 @@ Variables
-

Referenced by App\__construct(), _well_known_init(), achievements_content(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), api_get_user(), api_statuses_destroy(), api_statuses_repeat(), api_statuses_show(), attach_init(), blocks_content(), channel_init(), chat_content(), chat_init(), cloud_init(), common_init(), connect_init(), connections_content(), connections_post(), connedit_content(), connedit_init(), connedit_post(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), get_online_status(), group_content(), group_post(), help_content(), layouts_content(), like_content(), lockview_content(), mail_content(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), online_init(), page_content(), page_init(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), profile_init(), profile_photo_post(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), queue_run(), register_init(), regmod_content(), rpost_content(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), thing_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), view_init(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), widget_collections(), widget_mailmenu(), widget_settings_menu(), xref_init(), and zotfeed_init().

+

Referenced by App\__construct(), _well_known_init(), achievements_content(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), api_get_user(), api_statuses_destroy(), api_statuses_repeat(), api_statuses_show(), attach_init(), blocks_content(), channel_init(), chat_content(), chat_init(), cloud_init(), common_init(), connect_init(), connections_content(), connections_post(), connedit_content(), connedit_init(), connedit_post(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), get_online_status(), group_content(), group_post(), help_content(), layouts_content(), like_content(), lockview_content(), mail_content(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), online_init(), page_content(), page_init(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), profile_init(), profile_photo_post(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), queue_run(), rbmark_content(), register_init(), regmod_content(), rpost_content(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), thing_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), view_init(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), widget_collections(), widget_mailmenu(), widget_settings_menu(), xref_init(), and zotfeed_init().

@@ -960,7 +962,7 @@ Variables
-

Referenced by FriendicaSmarty\__construct(), FriendicaSmartyEngine\__construct(), abook_toggle_flag(), allowed_public_recips(), api_apply_template(), api_format_items(), api_get_user(), api_statuses_home_timeline(), api_statuses_repeat(), api_statuses_user_timeline(), api_user(), argc(), argv(), atom_entry(), authenticate_success(), avatar_img(), bbcode(), best_link_url(), blogtheme_imgurl(), build_sync_packet(), call_hooks(), can_comment_on_post(), categories_widget(), change_channel(), channel_remove(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), cli_suggest_run(), comanche_block(), comanche_menu(), comanche_replace_region(), comanche_widget(), common_friends_visitor_widget(), connedit_content(), contact_block(), contact_select(), create_identity(), current_theme(), deliver_run(), design_tools(), dir_tagblock(), drop_item(), editpost_content(), event_store(), fileas_widget(), findpeople_widget(), fix_attached_photo_permissions(), fix_private_photos(), format_event_diaspora(), RedBrowser\generateDirectoryIndex(), get_account_id(), get_best_language(), get_birthdays(), get_events(), get_feed_for(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_observer_hash(), get_plink(), get_theme_config_file(), get_theme_screenshot(), gprobe_run(), group_select(), guess_image_type(), handle_tag(), head_add_css(), head_add_js(), head_get_css(), head_get_js(), head_remove_css(), head_remove_js(), RedBrowser\htmlActionsPanel(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_xchan(), info(), insert_hook(), is_site_admin(), item_message_id(), item_photo_menu(), item_redir_and_replace_images(), item_store(), item_store_update(), items_fetch(), load_contact_links(), load_hooks(), local_dir_update(), login(), FKOAuth1\loginUser(), manage_content(), map_scope(), menu_add_item(), menu_edit_item(), nav_set_selected(), new_contact(), notice(), notification(), notifier_run(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), onedirsync_run(), onepoll_run(), page_content(), photos_album_widget(), photos_content(), ping_init(), poco_load(), poller_run(), post_activity_item(), preg_heart(), prepare_body(), proc_run(), process_delivery(), profile_activity(), profile_sidebar(), public_permissions_sql(), replace_macros(), rmagic_init(), rpost_callback(), scale_external_images(), search(), searchbox(), send_message(), send_reg_approval_email(), send_status_notifications(), send_verification_email(), service_class_allows(), service_class_fetch(), smilies(), tag_deliver(), terminate_friendship(), tgroup_check(), theme_include(), tryzrlvideo(), tt(), update_suggestions(), user_allow(), vcard_from_xchan(), what_next(), widget_archive(), widget_categories(), widget_chatroom_list(), widget_collections(), widget_design_tools(), widget_filer(), widget_follow(), widget_fullprofile(), widget_mailmenu(), widget_menu_preview(), widget_photo_albums(), widget_profile(), widget_savedsearch(), widget_settings_menu(), widget_tagcloud(), widget_tagcloud_wall(), widget_vcard(), z_fetch_url(), and zot_finger().

+

Referenced by FriendicaSmarty\__construct(), FriendicaSmartyEngine\__construct(), abook_toggle_flag(), allowed_public_recips(), api_apply_template(), api_format_items(), api_get_user(), api_statuses_home_timeline(), api_statuses_repeat(), api_statuses_user_timeline(), api_user(), argc(), argv(), atom_entry(), authenticate_success(), avatar_img(), bbcode(), best_link_url(), blogtheme_imgurl(), build_sync_packet(), call_hooks(), can_comment_on_post(), categories_widget(), change_channel(), channel_remove(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), cli_suggest_run(), comanche_block(), comanche_menu(), comanche_replace_region(), comanche_widget(), common_friends_visitor_widget(), connedit_content(), contact_block(), contact_select(), create_identity(), current_theme(), deliver_run(), design_tools(), dir_tagblock(), drop_item(), editpost_content(), event_store(), fileas_widget(), findpeople_widget(), fix_attached_photo_permissions(), fix_private_photos(), format_event_diaspora(), RedBrowser\generateDirectoryIndex(), get_account_id(), get_best_language(), get_birthdays(), get_events(), get_feed_for(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_observer_hash(), get_plink(), get_theme_config_file(), get_theme_screenshot(), gprobe_run(), group_select(), guess_image_type(), handle_tag(), head_add_css(), head_add_js(), head_get_css(), head_get_js(), head_remove_css(), head_remove_js(), RedBrowser\htmlActionsPanel(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_xchan(), info(), insert_hook(), is_site_admin(), item_message_id(), item_photo_menu(), item_redir_and_replace_images(), item_store(), item_store_update(), items_fetch(), load_contact_links(), load_hooks(), local_dir_update(), login(), FKOAuth1\loginUser(), manage_content(), map_scope(), menu_add_item(), menu_edit_item(), nav_set_selected(), new_contact(), notice(), notification(), notifier_run(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), onedirsync_run(), onepoll_run(), page_content(), photos_album_widget(), photos_content(), ping_init(), poco_load(), poller_run(), post_activity_item(), preg_heart(), prepare_body(), proc_run(), process_delivery(), profile_activity(), profile_sidebar(), public_permissions_sql(), replace_macros(), rmagic_init(), rpost_callback(), scale_external_images(), search(), searchbox(), send_message(), send_reg_approval_email(), send_status_notifications(), send_verification_email(), service_class_allows(), service_class_fetch(), smilies(), tag_deliver(), terminate_friendship(), tgroup_check(), theme_include(), tryzrlvideo(), tt(), update_suggestions(), user_allow(), vcard_from_xchan(), what_next(), widget_archive(), widget_categories(), widget_chatroom_list(), widget_collections(), widget_design_tools(), widget_filer(), widget_follow(), widget_fullprofile(), widget_mailmenu(), widget_menu_preview(), widget_photo_albums(), widget_profile(), widget_savedsearch(), widget_settings_menu(), widget_tagcloud(), widget_tagcloud_wall(), widget_vcard(), z_fetch_url(), and zot_finger().

@@ -1022,7 +1024,7 @@ Variables
-

Referenced by advanced_profile(), api_statuses_user_timeline(), attach_by_hash(), attach_by_hash_nodata(), attach_mkdir(), attach_store(), bookmarks_content(), chat_content(), chatsvc_content(), chatsvc_init(), chatsvc_post(), cloud_init(), comanche_menu(), common_content(), common_friends_visitor_widget(), dir_safe_mode(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_post(), get_public_feed(), item_permissions_sql(), magic_init(), mitem_content(), new_contact(), notice(), permissions_sql(), photo_init(), photos_content(), photos_post(), ping_init(), prepare_body(), profile_content(), profile_sidebar(), search_content(), RedBrowser\set_writeable(), stream_perms_xchans(), suggest_content(), tagger_content(), thing_init(), toggle_safesearch_init(), viewconnections_content(), vote_content(), vote_post(), wall_attach_post(), widget_photo_albums(), widget_suggestions(), and z_readdir().

+

Referenced by advanced_profile(), api_statuses_user_timeline(), attach_by_hash(), attach_by_hash_nodata(), attach_mkdir(), attach_store(), bookmarks_content(), chat_content(), chatsvc_content(), chatsvc_init(), chatsvc_post(), cloud_init(), comanche_menu(), common_content(), common_friends_visitor_widget(), dir_safe_mode(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_post(), get_public_feed(), item_permissions_sql(), magic_init(), mitem_content(), new_contact(), notice(), permissions_sql(), photo_init(), photos_content(), photos_post(), ping_init(), prepare_body(), profile_content(), profile_sidebar(), search_content(), RedBrowser\set_writeable(), stream_perms_xchans(), suggest_content(), tagger_content(), thing_init(), toggle_safesearch_init(), viewconnections_content(), vote_content(), vote_post(), wall_attach_post(), widget_bookmarkedchats(), widget_photo_albums(), widget_suggestedchats(), widget_suggestions(), and z_readdir().

@@ -1040,7 +1042,7 @@ Variables
-

Referenced by admin_page_dbsync(), admin_page_hubloc(), admin_page_hubloc_post(), admin_page_logs_post(), admin_page_plugins(), admin_page_site_post(), admin_page_themes(), admin_page_users(), admin_page_users_post(), admin_post(), api_content(), authenticate_success(), channel_content(), channel_remove(), chanview_content(), chat_content(), chat_post(), chatsvc_content(), check_form_security_token_redirectOnErr(), connect_post(), connections_post(), connedit_content(), connedit_post(), delegate_content(), directory_content(), display_content(), drop_item(), events_post(), filerm_content(), filestorage_content(), follow_init(), group_content(), group_post(), home_init(), import_post(), item_post(), login_content(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_post(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_post(), mood_init(), network_content(), new_channel_post(), new_contact(), notifications_post(), notify_init(), openid_content(), photos_post(), post_init(), profile_photo_post(), profiles_init(), randprof_init(), register_post(), removeme_content(), rmagic_init(), rmagic_post(), rpost_content(), search_content(), settings_post(), sources_content(), sources_post(), sslify_init(), tagrm_content(), tagrm_post(), toggle_mobile_init(), toggle_safesearch_init(), xref_init(), and zid_init().

+

Referenced by admin_page_dbsync(), admin_page_hubloc(), admin_page_hubloc_post(), admin_page_logs_post(), admin_page_plugins(), admin_page_site_post(), admin_page_themes(), admin_page_users(), admin_page_users_post(), admin_post(), api_content(), authenticate_success(), channel_content(), channel_remove(), chanview_content(), chat_content(), chat_post(), chatsvc_content(), check_form_security_token_redirectOnErr(), connect_post(), connections_post(), connedit_content(), connedit_post(), delegate_content(), directory_content(), display_content(), drop_item(), events_post(), filerm_content(), filestorage_content(), follow_init(), group_content(), group_post(), home_init(), import_post(), item_post(), login_content(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_post(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_post(), mood_init(), network_content(), new_channel_post(), new_contact(), notifications_post(), notify_init(), openid_content(), photos_post(), post_init(), profile_photo_post(), profiles_init(), randprof_init(), rbmark_content(), rbmark_post(), register_post(), removeme_content(), rmagic_init(), rmagic_post(), rpost_content(), search_content(), settings_post(), sources_content(), sources_post(), sslify_init(), tagrm_content(), tagrm_post(), toggle_mobile_init(), toggle_safesearch_init(), xref_init(), and zid_init().

@@ -1194,7 +1196,7 @@ Variables
-

Referenced by Conversation\__construct(), acl_init(), api_content(), api_get_user(), api_post(), api_user(), apw_form(), best_link_url(), blocks_content(), bookmarks_content(), bookmarks_init(), App\build_pagehead(), build_sync_packet(), change_channel(), channel_content(), channel_init(), channel_remove(), chanview_content(), chat_content(), chat_init(), chat_post(), cloud_init(), common_friends_visitor_widget(), community_content(), community_init(), connect_content(), connect_post(), connections_content(), connections_init(), connections_post(), connedit_content(), connedit_init(), connedit_post(), contact_select(), contactgroup_content(), conversation(), current_theme(), delegate_content(), directory_content(), dirprofile_init(), display_content(), drop_item(), drop_items(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), fbrowser_content(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), filestorage_post(), findpeople_widget(), follow_content(), follow_init(), fsuggest_content(), fsuggest_post(), get_birthdays(), Item\get_comment_box(), get_events(), get_online_status(), Item\get_template_data(), get_theme_uid(), group_content(), group_get_members(), group_post(), group_select(), group_side(), handle_tag(), home_init(), invite_content(), invite_post(), item_content(), item_permissions_sql(), item_photo_menu(), item_post(), item_store(), item_store_update(), items_fetch(), layouts_content(), like_puller(), lockview_content(), login(), login_content(), magic_init(), mail_content(), mail_post(), manage_content(), match_content(), menu_add_item(), menu_content(), menu_edit_item(), menu_post(), message_content(), mimetype_select(), mitem_content(), mitem_init(), mitem_post(), mood_content(), mood_init(), nav(), navbar_complete(), network_content(), network_init(), new_contact(), notes_init(), notifications_content(), notifications_post(), notify_content(), notify_init(), oexchange_content(), permissions_sql(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), poke_content(), poke_init(), post_init(), prepare_body(), private_messages_list(), profile_activity(), profile_content(), profile_create_sidebar(), profile_init(), profile_load(), profile_photo_init(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), profperm_init(), redbasic_form(), regmod_content(), removeme_content(), removeme_post(), rmagic_init(), rpost_content(), search(), search_ac_init(), search_content(), searchbox(), service_class_allows(), service_class_fetch(), Conversation\set_mode(), settings_init(), settings_post(), share_init(), smilies(), sources_content(), sources_post(), starred_init(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_content(), suggest_init(), tagger_content(), tagrm_content(), tagrm_post(), theme_content(), theme_post(), thing_content(), thing_init(), uexport_init(), vcard_from_xchan(), viewconnections_content(), viewconnections_init(), viewsrc_content(), webpages_content(), widget_affinity(), widget_design_tools(), widget_filer(), widget_follow(), widget_fullprofile(), widget_mailmenu(), widget_notes(), widget_profile(), widget_savedsearch(), widget_settings_menu(), widget_suggestions(), z_input_filter(), zid_init(), and zping_content().

+

Referenced by Conversation\__construct(), acl_init(), api_content(), api_get_user(), api_post(), api_user(), apw_form(), best_link_url(), blocks_content(), bookmarks_content(), bookmarks_init(), App\build_pagehead(), build_sync_packet(), change_channel(), channel_content(), channel_init(), channel_remove(), chanview_content(), chat_content(), chat_init(), chat_post(), cloud_init(), common_friends_visitor_widget(), community_content(), community_init(), connect_content(), connect_post(), connections_content(), connections_init(), connections_post(), connedit_content(), connedit_init(), connedit_post(), contact_select(), contactgroup_content(), conversation(), current_theme(), delegate_content(), directory_content(), dirprofile_init(), display_content(), drop_item(), drop_items(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), fbrowser_content(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), filestorage_post(), findpeople_widget(), follow_content(), follow_init(), fsuggest_content(), fsuggest_post(), get_birthdays(), Item\get_comment_box(), get_events(), get_online_status(), Item\get_template_data(), get_theme_uid(), group_content(), group_get_members(), group_post(), group_select(), group_side(), handle_tag(), home_init(), invite_content(), invite_post(), item_content(), item_permissions_sql(), item_photo_menu(), item_post(), item_store(), item_store_update(), items_fetch(), layouts_content(), like_puller(), lockview_content(), login(), login_content(), magic_init(), mail_content(), mail_post(), manage_content(), match_content(), menu_add_item(), menu_content(), menu_edit_item(), menu_post(), message_content(), mimetype_select(), mitem_content(), mitem_init(), mitem_post(), mood_content(), mood_init(), nav(), navbar_complete(), network_content(), network_init(), new_contact(), notes_init(), notifications_content(), notifications_post(), notify_content(), notify_init(), oexchange_content(), permissions_sql(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), poke_content(), poke_init(), post_init(), prepare_body(), private_messages_list(), profile_activity(), profile_content(), profile_create_sidebar(), profile_init(), profile_load(), profile_photo_init(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), profperm_init(), rbmark_content(), redbasic_form(), regmod_content(), removeme_content(), removeme_post(), rmagic_init(), rpost_content(), search(), search_ac_init(), search_content(), searchbox(), service_class_allows(), service_class_fetch(), Conversation\set_mode(), settings_init(), settings_post(), share_init(), smilies(), sources_content(), sources_post(), starred_init(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_content(), suggest_init(), tagger_content(), tagrm_content(), tagrm_post(), theme_content(), theme_post(), thing_content(), thing_init(), uexport_init(), vcard_from_xchan(), viewconnections_content(), viewconnections_init(), viewsrc_content(), webpages_content(), widget_affinity(), widget_design_tools(), widget_filer(), widget_follow(), widget_fullprofile(), widget_mailmenu(), widget_notes(), widget_profile(), widget_savedsearch(), widget_settings_menu(), widget_suggestions(), z_input_filter(), zid_init(), and zping_content().

@@ -1228,7 +1230,7 @@ Variables @@ -1346,7 +1348,7 @@ Variables
-

Referenced by FriendicaSmarty\__construct(), App\__construct(), acl_init(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_themes(), admin_page_users_post(), api_content(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_format_messages(), api_get_user(), api_login(), api_post(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_user(), attach_store(), authenticate_success(), bbcode(), bbtoevent(), best_link_url(), App\build_pagehead(), channel_content(), chatsvc_content(), check_form_security_token(), cloud_init(), community_content(), connections_content(), connections_post(), connedit_content(), construct_page(), consume_feed(), conversation(), create_account(), create_identity(), current_theme(), del_pconfig(), del_xconfig(), delegate_content(), detect_language(), directory_content(), dirprofile_init(), dirsearch_content(), display_content(), encode_rel_links(), events_content(), events_post(), feed_init(), filerm_content(), filestorage_post(), get_atom_elements(), get_browser_language(), get_item_elements(), get_my_address(), get_my_url(), get_plink(), get_public_feed(), Item\get_template_data(), group_add(), group_rmv(), group_side(), home_content(), import_post(), import_xchan(), info(), invite_post(), item_post(), item_store(), item_store_update(), lang_selector(), load_contact_links(), local_user(), lostpass_content(), magic_init(), mail_content(), mail_post(), mail_store(), mood_content(), mood_init(), nav(), navbar_complete(), network_content(), new_channel_content(), new_cookie(), notice(), oexchange_content(), openid_content(), parse_url_content(), photo_upload(), photos_content(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), post_activity_item(), post_init(), printable(), probe_content(), proc_run(), process_delivery(), profile_photo_post(), profile_sidebar(), profiles_post(), ref_session_read(), register_content(), register_post(), App\register_template_engine(), regmod_content(), remote_user(), removeme_post(), rpost_content(), script_path(), search_ac_init(), search_content(), search_init(), service_class_allows(), service_class_fetch(), App\set_baseurl(), settings_post(), setup_content(), setup_init(), siteinfo_init(), suggest_init(), t(), tagrm_post(), App\template_engine(), tt(), validate_channelname(), wall_upload_post(), webfinger_content(), wfinger_init(), widget_affinity(), widget_categories(), widget_filer(), widget_savedsearch(), widget_tagcloud(), xchan_content(), z_fetch_url(), z_post_url(), and zfinger_init().

+

Referenced by FriendicaSmarty\__construct(), App\__construct(), acl_init(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_themes(), admin_page_users_post(), api_content(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_format_messages(), api_get_user(), api_login(), api_post(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_user(), attach_store(), authenticate_success(), bbcode(), bbtoevent(), best_link_url(), bookmark_add(), App\build_pagehead(), channel_content(), chatsvc_content(), check_form_security_token(), cloud_init(), community_content(), connections_content(), connections_post(), connedit_content(), construct_page(), consume_feed(), conversation(), create_account(), create_identity(), current_theme(), current_theme_url(), del_pconfig(), del_xconfig(), delegate_content(), detect_language(), directory_content(), dirprofile_init(), dirsearch_content(), display_content(), encode_rel_links(), events_content(), events_post(), feed_init(), filerm_content(), filestorage_post(), get_atom_elements(), get_browser_language(), get_item_elements(), get_my_address(), get_my_url(), get_plink(), get_public_feed(), Item\get_template_data(), group_add(), group_rmv(), group_side(), home_content(), import_post(), import_xchan(), info(), invite_post(), item_post(), item_store(), item_store_update(), lang_selector(), load_contact_links(), local_user(), lostpass_content(), magic_init(), mail_content(), mail_post(), mail_store(), mood_content(), mood_init(), nav(), navbar_complete(), network_content(), new_channel_content(), new_cookie(), notice(), oexchange_content(), openid_content(), parse_url_content(), photo_upload(), photos_content(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), post_activity_item(), post_init(), printable(), probe_content(), proc_run(), process_delivery(), profile_photo_post(), profile_sidebar(), profiles_post(), rbmark_content(), rbmark_post(), ref_session_read(), register_content(), register_post(), App\register_template_engine(), regmod_content(), remote_user(), removeme_post(), rpost_content(), script_path(), search_ac_init(), search_content(), search_init(), service_class_allows(), service_class_fetch(), App\set_baseurl(), settings_post(), setup_content(), setup_init(), siteinfo_init(), suggest_init(), t(), tagrm_post(), App\template_engine(), tt(), validate_channelname(), wall_upload_post(), webfinger_content(), wfinger_init(), widget_affinity(), widget_categories(), widget_filer(), widget_savedsearch(), widget_tagcloud(), xchan_content(), z_fetch_url(), z_post_url(), and zfinger_init().

@@ -1380,7 +1382,7 @@ Variables
-

Referenced by allowed_public_recips(), authenticate_success(), bb_parse_crypt(), bbcode(), blocks_content(), chanlink_cid(), chanlink_hash(), chanlink_url(), channel_content(), channel_remove(), chat_content(), chat_post(), chatsvc_content(), check_config(), connect_post(), connections_content(), conversation(), create_identity(), deliver_run(), directory_content(), dirprofile_init(), display_content(), event_store(), filestorage_content(), follow_init(), format_categories(), format_filer(), RedBrowser\getAssetUrl(), group_post(), handle_tag(), App\head_get_icon(), head_get_icon(), home_init(), hostxrd_init(), import_post(), import_xchan(), invite_content(), item_photo_menu(), item_post(), item_store(), layouts_content(), login_content(), lostpass_content(), lostpass_post(), magic_init(), magiclink_url(), mail_post(), manage_content(), menu_content(), menu_post(), mitem_content(), mitem_post(), mood_init(), navbar_complete(), network_content(), new_channel_post(), notification(), notifications_post(), notifier_run(), openid_content(), photo_upload(), photos_album_widget(), photos_albums_list(), photos_create_item(), photos_list_photos(), post_activity_item(), post_init(), post_post(), profile_activity(), profile_sidebar(), public_recips(), pubsites_content(), register_post(), removeme_content(), rmagic_init(), rmagic_post(), rpost_content(), script_path(), search_content(), searchbox(), send_reg_approval_email(), send_verification_email(), setup_content(), setup_post(), siteinfo_content(), siteinfo_init(), sources_content(), sources_post(), sslify(), sync_directories(), tagger_content(), theme_attachments(), thing_init(), toggle_safesearch_init(), update_suggestions(), user_allow(), vcard_from_xchan(), webpages_content(), wfinger_init(), widget_archive(), widget_chatroom_list(), widget_dirtags(), widget_filer(), widget_savedsearch(), widget_suggestions(), xref_init(), zfinger_init(), zid_init(), zot_build_packet(), zot_fetch(), and zot_new_uid().

+

Referenced by allowed_public_recips(), authenticate_success(), bb_parse_crypt(), bbcode(), blocks_content(), chanlink_cid(), chanlink_hash(), chanlink_url(), channel_content(), channel_remove(), chat_content(), chat_post(), chatsvc_content(), check_config(), connect_post(), connections_content(), conversation(), create_identity(), deliver_run(), directory_content(), dirprofile_init(), display_content(), event_store(), filestorage_content(), follow_init(), format_categories(), format_filer(), RedBrowser\getAssetUrl(), group_post(), handle_tag(), App\head_get_icon(), head_get_icon(), home_init(), hostxrd_init(), import_post(), import_xchan(), invite_content(), item_photo_menu(), item_post(), item_store(), layouts_content(), login_content(), lostpass_content(), lostpass_post(), magic_init(), magiclink_url(), mail_post(), manage_content(), menu_content(), menu_post(), mitem_content(), mitem_post(), mood_init(), navbar_complete(), network_content(), new_channel_post(), notification(), notifications_post(), notifier_run(), openid_content(), photo_upload(), photos_album_widget(), photos_albums_list(), photos_create_item(), photos_list_photos(), post_activity_item(), post_init(), post_post(), profile_activity(), profile_sidebar(), public_recips(), pubsites_content(), rbmark_content(), rbmark_post(), register_post(), removeme_content(), rmagic_init(), rmagic_post(), rpost_content(), script_path(), search_content(), searchbox(), send_reg_approval_email(), send_verification_email(), setup_content(), setup_post(), siteinfo_content(), siteinfo_init(), sources_content(), sources_post(), sslify(), sync_directories(), tagger_content(), theme_attachments(), thing_init(), toggle_safesearch_init(), update_suggestions(), user_allow(), vcard_from_xchan(), webpages_content(), wfinger_init(), widget_archive(), widget_chatroom_list(), widget_dirtags(), widget_filer(), widget_savedsearch(), widget_suggestions(), xref_init(), zfinger_init(), zid_init(), zot_build_packet(), zot_fetch(), and zot_new_uid().

@@ -2129,7 +2131,7 @@ Variables
- +
const DB_UPDATE_VERSION 1098const DB_UPDATE_VERSION 1101
@@ -2828,7 +2830,7 @@ Variables
-

Referenced by RedDirectory\__construct(), Item\add_child(), Conversation\add_thread(), admin_content(), admin_page_hubloc_post(), admin_page_logs(), admin_post(), api_login(), api_statuses_user_timeline(), avatar_img(), bookmark_add(), consume_feed(), conversation(), RedDirectory\createDirectory(), RedDirectory\createFile(), delete_imported_item(), deliver_run(), directory_content(), directory_run(), dirprofile_init(), expire_run(), fix_private_photos(), RedFile\get(), get_language_name(), Conversation\get_template_data(), RedDirectory\getDir(), RedFile\getName(), group_content(), guess_image_type(), import_author_rss(), import_author_zot(), import_channel_photo(), import_directory_profile(), import_profile_photo(), import_xchan(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), local_dir_update(), FKOAuth1\loginUser(), magic_init(), mail_store(), mood_init(), new_contact(), notification(), notifier_run(), parse_url_content(), photo_upload(), photos_post(), poco_init(), poco_load(), poke_init(), post_post(), process_delivery(), process_profile_delivery(), profile_load(), RedFile\put(), RedFileData(), Item\remove_child(), scale_external_images(), enotify\send(), Conversation\set_mode(), RedFile\setName(), unload_plugin(), zot_finger(), zot_gethub(), zot_register_hub(), and zotfeed_init().

+

Referenced by RedDirectory\__construct(), Item\add_child(), Conversation\add_thread(), admin_content(), admin_page_hubloc_post(), admin_page_logs(), admin_post(), api_login(), api_statuses_user_timeline(), avatar_img(), bookmark_add(), consume_feed(), conversation(), RedDirectory\createDirectory(), RedDirectory\createFile(), delete_imported_item(), deliver_run(), directory_content(), directory_run(), dirprofile_init(), expire_run(), fix_private_photos(), RedFile\get(), get_language_name(), Conversation\get_template_data(), RedDirectory\getDir(), RedFile\getName(), group_content(), guess_image_type(), import_author_rss(), import_author_zot(), import_channel_photo(), import_directory_profile(), import_profile_photo(), import_xchan(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), local_dir_update(), FKOAuth1\loginUser(), magic_init(), mail_store(), mood_init(), new_contact(), notification(), notifier_run(), parse_url_content(), photo_upload(), photos_post(), poco_init(), poco_load(), poke_init(), post_post(), process_delivery(), process_profile_delivery(), profile_load(), RedFile\put(), RedFileData(), Item\remove_child(), scale_external_images(), enotify\send(), Conversation\set_mode(), RedFile\setName(), unload_plugin(), zot_finger(), zot_gethub(), zot_register_hub(), and zotfeed_init().

@@ -2982,7 +2984,21 @@ Variables + + +
+
+ + + + +
const MENU_ITEM_CHATROOM 0x0004
+
+ +

Referenced by bookmark_add(), and poco_init().

@@ -2996,7 +3012,7 @@ Variables @@ -3010,7 +3026,7 @@ Variables @@ -3025,7 +3041,7 @@ Variables diff --git a/doc/html/boot_8php.js b/doc/html/boot_8php.js index 7bcf18827..2a2602b58 100644 --- a/doc/html/boot_8php.js +++ b/doc/html/boot_8php.js @@ -155,6 +155,7 @@ var boot_8php = [ "MAX_IMAGE_LENGTH", "boot_8php.html#a525ca93ff35d3535d1a2b8ba57876afa", null ], [ "MAX_LIKERS", "boot_8php.html#a35625dacd2158b9f1f1a8e77f9f081fd", null ], [ "MENU_BOOKMARK", "boot_8php.html#a458e19af801bc4b0d1f1ce1a6d9e857e", null ], + [ "MENU_ITEM_CHATROOM", "boot_8php.html#af6b3de425e5849c73370a484c44607a3", null ], [ "MENU_ITEM_NEWWIN", "boot_8php.html#ad11f30a6590d3d77f0c5e1e3909af8f5", null ], [ "MENU_ITEM_ZID", "boot_8php.html#aed0dfb35f7dd00dc9e4f868ea7f7ff53", null ], [ "MENU_SYSTEM", "boot_8php.html#a718a801b0be6cbaef5e519516da12721", null ], diff --git a/doc/html/cloud_8php.html b/doc/html/cloud_8php.html index a5ea81c0a..229bf4d9a 100644 --- a/doc/html/cloud_8php.html +++ b/doc/html/cloud_8php.html @@ -112,8 +112,8 @@ $(document).ready(function(){initNavTree('cloud_8php.html','');}); - +

Functions

if(x($_SERVER,'REDIRECT_REMOTE_USER'))
-if(x($_SERVER,'HTTP_AUTHORIZATION')) 
cloud_init (&$a)
if(x($_SERVER,'REDIRECT_REMOTE_USER'))
+if(x($_SERVER,'HTTP_AUTHORIZATION')) 
cloud_init (&$a)
 

Function Documentation

@@ -122,7 +122,7 @@ Functions
- + diff --git a/doc/html/comanche_8php.html b/doc/html/comanche_8php.html index 57572239d..7a235b5b3 100644 --- a/doc/html/comanche_8php.html +++ b/doc/html/comanche_8php.html @@ -116,8 +116,8 @@ Functions - - + + @@ -148,7 +148,7 @@ Functions - +
if (x($_SERVER,'REDIRECT_REMOTE_USER')) if (x($_SERVER,'HTTP_AUTHORIZATION')) cloud_init if (x($_SERVER,'REDIRECT_REMOTE_USER')) if (x($_SERVER,'HTTP_AUTHORIZATION')) cloud_init ( $a)
 
 comanche_parser (&$a, $s)
 
 comanche_menu ($name)
 
 comanche_menu ($name, $class= '')
 
 comanche_replace_region ($match)
 
 comanche_block ($name)
@@ -156,8 +156,18 @@ Functions - + + + + + + + + + + +
comanche_menu (  $name)$name,
 $class = '' 
)
diff --git a/doc/html/comanche_8php.js b/doc/html/comanche_8php.js index f3c4d5ff3..4c16e7e84 100644 --- a/doc/html/comanche_8php.js +++ b/doc/html/comanche_8php.js @@ -1,7 +1,7 @@ var comanche_8php = [ [ "comanche_block", "comanche_8php.html#a5a7ab801717d38e91ac910b933973887", null ], - [ "comanche_menu", "comanche_8php.html#a1fe339e1454803aa502ac89379c17f5b", null ], + [ "comanche_menu", "comanche_8php.html#ad5a44e42231759aba1dda49e0490501e", null ], [ "comanche_parser", "comanche_8php.html#a1a208fdb40dd83d6298caec4290ee922", null ], [ "comanche_region", "comanche_8php.html#a5718daeda40bf835345fe061e8808cdf", null ], [ "comanche_replace_region", "comanche_8php.html#a028f004d5b8c23d6367816d899e17cfe", null ], diff --git a/doc/html/dba__driver_8php.html b/doc/html/dba__driver_8php.html index 8c47a8a44..94329a67e 100644 --- a/doc/html/dba__driver_8php.html +++ b/doc/html/dba__driver_8php.html @@ -202,7 +202,7 @@ Functions
-

Referenced by account_verify_password(), achievements_content(), acl_init(), admin_page_users(), allowed_public_recips(), api_direct_messages_new(), api_get_user(), api_status_show(), api_statuses_destroy(), api_statuses_mentions(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_change_permissions(), attach_count_files(), attach_delete(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), bookmark_add(), bookmarks_init(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), channel_content(), channel_remove(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), chat_post(), chatroom_create(), chatroom_destroy(), chatroom_enter(), chatroom_leave(), chatsvc_content(), chatsvc_post(), check_account_email(), check_account_invite(), check_item_source(), check_webbie(), Cache\clear(), comanche_block(), common_friends(), connect_init(), connect_post(), connections_content(), connections_post(), connedit_post(), consume_feed(), contact_remove(), contactgroup_content(), count_common_friends(), create_account(), create_identity(), RedDirectory\createFile(), dbesc_array_cb(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), directory_run(), dirsearch_content(), display_content(), downgrade_accounts(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), event_store(), events_content(), events_post(), fbrowser_content(), feed_init(), fetch_post_tags(), file_tag_file_query(), filerm_content(), filestorage_content(), fix_attached_photo_permissions(), fix_private_photos(), fix_system_urls(), fsuggest_post(), Cache\get(), RedFile\get(), get_all_perms(), get_birthdays(), get_channel_by_nick(), get_cloudpath(), get_config_from_storage(), get_events(), get_item_elements(), get_online_status(), RedDirectory\getDir(), RedDirectory\getLastModified(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), handle_tag(), home_content(), import_author_rss(), import_author_zot(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_message_id(), item_permissions_sql(), item_post(), item_store(), item_store_update(), items_fetch(), layouts_content(), like_content(), load_config(), load_plugin(), load_xconfig(), local_dir_update(), lockview_content(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), match_openid(), member_of(), menu_add_item(), menu_create(), menu_delete(), menu_edit(), menu_edit_item(), menu_fetch(), menu_list(), msearch_post(), network_content(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifier_run(), notify_init(), oauth_get_client(), oembed_fetch_url(), onedirsync_run(), onepoll_run(), openid_content(), page_content(), perm_is_allowed(), permissions_sql(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poller_run(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profiles_init(), profiles_post(), public_permissions_sql(), public_recips(), RedFile\put(), queue_run(), rconnect_url(), red_zrl_callback(), RedCollectionData(), RedFileData(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_hook(), register_post(), remote_online_status(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), send_message(), send_reg_approval_email(), send_status_notifications(), Cache\set(), set_config(), set_pconfig(), set_xconfig(), RedFile\setName(), settings_post(), siteinfo_init(), sources_content(), sources_post(), photo_driver\store(), store_item_tag(), stream_perms_xchans(), stringify_array_elms(), subthread_content(), suggest_init(), sync_directories(), tag_deliver(), tagger_content(), tagrm_post(), term_query(), tgroup_check(), thing_content(), thing_init(), tryzrlaudio(), tryzrlvideo(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_remote_id(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), vote_post(), webpages_content(), wfinger_init(), widget_savedsearch(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hublocs(), zot_gethub(), zot_process_response(), zot_refresh(), and zotfeed_init().

+

Referenced by account_verify_password(), achievements_content(), acl_init(), admin_page_users(), allowed_public_recips(), api_direct_messages_new(), api_get_user(), api_status_show(), api_statuses_destroy(), api_statuses_mentions(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_change_permissions(), attach_count_files(), attach_delete(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), bookmark_add(), bookmarks_init(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), channel_content(), channel_remove(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), chat_post(), chatroom_create(), chatroom_destroy(), chatroom_enter(), chatroom_leave(), chatsvc_content(), chatsvc_post(), check_account_email(), check_account_invite(), check_item_source(), check_webbie(), Cache\clear(), comanche_block(), common_friends(), connect_init(), connect_post(), connections_content(), connections_post(), connedit_post(), consume_feed(), contact_remove(), contactgroup_content(), count_common_friends(), create_account(), create_identity(), RedDirectory\createFile(), dbesc_array_cb(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), directory_run(), dirsearch_content(), display_content(), downgrade_accounts(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), event_store(), events_content(), events_post(), fbrowser_content(), feed_init(), fetch_post_tags(), file_tag_file_query(), filerm_content(), filestorage_content(), fix_attached_photo_permissions(), fix_private_photos(), fix_system_urls(), fsuggest_post(), Cache\get(), RedFile\get(), get_all_perms(), get_birthdays(), get_channel_by_nick(), get_cloudpath(), get_config_from_storage(), get_events(), get_item_elements(), get_online_status(), RedDirectory\getDir(), RedDirectory\getLastModified(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), handle_tag(), home_content(), import_author_rss(), import_author_zot(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_message_id(), item_permissions_sql(), item_post(), item_store(), item_store_update(), items_fetch(), layouts_content(), like_content(), load_config(), load_plugin(), load_xconfig(), local_dir_update(), lockview_content(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), match_openid(), member_of(), menu_add_item(), menu_create(), menu_delete(), menu_edit(), menu_edit_item(), menu_fetch(), menu_list(), msearch_post(), network_content(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifier_run(), notify_init(), oauth_get_client(), oembed_fetch_url(), onedirsync_run(), onepoll_run(), openid_content(), page_content(), perm_is_allowed(), permissions_sql(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poller_run(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profiles_init(), profiles_post(), public_permissions_sql(), public_recips(), RedFile\put(), queue_run(), rconnect_url(), red_zrl_callback(), RedCollectionData(), RedFileData(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_hook(), register_post(), remote_online_status(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), send_message(), send_reg_approval_email(), send_status_notifications(), Cache\set(), set_config(), set_pconfig(), set_xconfig(), RedFile\setName(), settings_post(), siteinfo_init(), sources_content(), sources_post(), photo_driver\store(), store_item_tag(), stream_perms_xchans(), stringify_array_elms(), subthread_content(), suggest_init(), sync_directories(), tag_deliver(), tagger_content(), tagrm_post(), term_query(), tgroup_check(), thing_content(), thing_init(), tryzrlaudio(), tryzrlvideo(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_remote_id(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), vote_post(), webpages_content(), wfinger_init(), widget_bookmarkedchats(), widget_savedsearch(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hublocs(), zot_gethub(), zot_process_response(), zot_refresh(), and zotfeed_init().

@@ -318,7 +318,7 @@ Functions

This will happen occasionally trying to store the session data after abnormal program termination

-

Referenced by abook_connections(), abook_self(), abook_toggle_flag(), account_remove(), account_total(), account_verify_password(), achievements_content(), acl_init(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_hubloc_post(), admin_page_summary(), admin_page_users(), admin_page_users_post(), all_friends(), allowed_public_recips(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_ff_ids(), api_format_items(), api_get_user(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_change_permissions(), attach_count_files(), attach_delete(), attach_init(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), bookmark_add(), bookmarks_init(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), chanman_remove_everything_from_network(), channel_content(), channel_remove(), channel_total(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), chat_content(), chat_post(), chatroom_create(), chatroom_destroy(), chatroom_enter(), chatroom_leave(), chatroom_list(), chatsvc_content(), chatsvc_init(), chatsvc_post(), check_account_email(), check_account_invite(), check_config(), check_item_source(), check_webbie(), Cache\clear(), collect_recipients(), comanche_block(), common_friends(), common_friends_zcid(), common_init(), community_content(), connect_init(), connect_post(), connections_content(), connections_post(), connedit_content(), connedit_init(), connedit_post(), consume_feed(), contact_block(), contact_profile_assign(), contact_remove(), contact_select(), contactgroup_content(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), create_account(), create_identity(), RedDirectory\createDirectory(), RedDirectory\createFile(), current_theme(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), dir_tagadelic(), directory_content(), directory_run(), dirprofile_init(), dirsearch_content(), display_content(), downgrade_accounts(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), encode_item(), event_store(), events_content(), expand_groups(), expire_run(), fbrowser_content(), feed_init(), fetch_post_tags(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), first_post_date(), fix_attached_photo_permissions(), fix_private_photos(), fix_system_urls(), fsuggest_content(), fsuggest_post(), Cache\get(), RedFile\get(), get_all_perms(), get_birthdays(), get_channel_by_nick(), get_cloudpath(), get_config_from_storage(), get_events(), get_item_elements(), get_online_status(), get_sys_channel(), get_things(), get_words(), RedDirectory\getDir(), RedDirectory\getLastModified(), RedDirectory\getQuotaInfo(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_get_members(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), group_select(), group_side(), groups_containing(), handle_tag(), home_content(), identity_basic_export(), identity_check_service_class(), import_author_rss(), import_author_zot(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_check_service_class(), item_expire(), item_message_id(), item_post(), item_store(), item_store_update(), items_fetch(), layout_select(), layouts_content(), like_content(), list_public_sites(), load_config(), load_contact_links(), load_hooks(), load_pconfig(), load_plugin(), load_translation_table(), load_xconfig(), local_dir_update(), lockview_content(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_store(), manage_content(), match_content(), match_openid(), member_of(), menu_add_item(), menu_create(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit(), menu_edit_item(), menu_fetch(), menu_fetch_id(), menu_list(), mimetype_select(), mini_group_select(), mitem_content(), mood_init(), msearch_post(), network_content(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oauth_get_client(), oembed_fetch_url(), onedirsync_run(), onepoll_run(), openid_content(), page_content(), pagelist_widget(), pdl_selector(), perm_is_allowed(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), public_recips(), RedFile\put(), queue_run(), random_profile(), rconnect_url(), red_zrl_callback(), RedChannelList(), RedCollectionData(), RedFileData(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_content(), register_hook(), register_post(), reload_plugins(), remote_online_status(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), send_message(), send_reg_approval_email(), send_status_notifications(), service_class_allows(), service_class_fetch(), Cache\set(), set_config(), set_default_login_identity(), set_pconfig(), set_xconfig(), RedFile\setName(), settings_post(), setup_content(), share_init(), siteinfo_content(), siteinfo_init(), sitelist_init(), sources_content(), sources_post(), starred_init(), photo_driver\store(), store_item_tag(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_init(), suggestion_query(), sync_directories(), tag_deliver(), tagadelic(), tagger_content(), tagrm_content(), tagrm_post(), tgroup_check(), thing_content(), thing_init(), tryzrlaudio(), tryzrlvideo(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_remote_id(), update_suggestions(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), vote_init(), vote_post(), webpages_content(), wfinger_init(), widget_filer(), widget_follow(), widget_savedsearch(), widget_settings_menu(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_input_filter(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hublocs(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zotfeed_init().

+

Referenced by abook_connections(), abook_self(), abook_toggle_flag(), account_remove(), account_total(), account_verify_password(), achievements_content(), acl_init(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_hubloc_post(), admin_page_summary(), admin_page_users(), admin_page_users_post(), all_friends(), allowed_public_recips(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_ff_ids(), api_format_items(), api_get_user(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_change_permissions(), attach_count_files(), attach_delete(), attach_init(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), bookmark_add(), bookmarks_init(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), chanman_remove_everything_from_network(), channel_content(), channel_remove(), channel_total(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), chat_content(), chat_post(), chatroom_create(), chatroom_destroy(), chatroom_enter(), chatroom_leave(), chatroom_list(), chatsvc_content(), chatsvc_init(), chatsvc_post(), check_account_email(), check_account_invite(), check_config(), check_item_source(), check_webbie(), Cache\clear(), collect_recipients(), comanche_block(), common_friends(), common_friends_zcid(), common_init(), community_content(), connect_init(), connect_post(), connections_content(), connections_post(), connedit_content(), connedit_init(), connedit_post(), consume_feed(), contact_block(), contact_profile_assign(), contact_remove(), contact_select(), contactgroup_content(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), create_account(), create_identity(), RedDirectory\createDirectory(), RedDirectory\createFile(), current_theme(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), dir_tagadelic(), directory_content(), directory_run(), dirprofile_init(), dirsearch_content(), display_content(), downgrade_accounts(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), encode_item(), event_store(), events_content(), expand_groups(), expire_run(), fbrowser_content(), feed_init(), fetch_post_tags(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), first_post_date(), fix_attached_photo_permissions(), fix_private_photos(), fix_system_urls(), fsuggest_content(), fsuggest_post(), Cache\get(), RedFile\get(), get_all_perms(), get_birthdays(), get_channel_by_nick(), get_cloudpath(), get_config_from_storage(), get_events(), get_item_elements(), get_online_status(), get_sys_channel(), get_things(), get_words(), RedDirectory\getDir(), RedDirectory\getLastModified(), RedDirectory\getQuotaInfo(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_get_members(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), group_select(), group_side(), groups_containing(), handle_tag(), home_content(), identity_basic_export(), identity_check_service_class(), import_author_rss(), import_author_zot(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_check_service_class(), item_expire(), item_message_id(), item_post(), item_store(), item_store_update(), items_fetch(), layout_select(), layouts_content(), like_content(), list_public_sites(), load_config(), load_contact_links(), load_hooks(), load_pconfig(), load_plugin(), load_translation_table(), load_xconfig(), local_dir_update(), lockview_content(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_store(), manage_content(), match_content(), match_openid(), member_of(), menu_add_item(), menu_create(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit(), menu_edit_item(), menu_fetch(), menu_fetch_id(), menu_list(), mimetype_select(), mini_group_select(), mitem_content(), mood_init(), msearch_post(), network_content(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oauth_get_client(), oembed_fetch_url(), onedirsync_run(), onepoll_run(), openid_content(), page_content(), pagelist_widget(), pdl_selector(), perm_is_allowed(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), public_recips(), RedFile\put(), queue_run(), random_profile(), rconnect_url(), red_zrl_callback(), RedChannelList(), RedCollectionData(), RedFileData(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_content(), register_hook(), register_post(), reload_plugins(), remote_online_status(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), send_message(), send_reg_approval_email(), send_status_notifications(), service_class_allows(), service_class_fetch(), Cache\set(), set_config(), set_default_login_identity(), set_pconfig(), set_xconfig(), RedFile\setName(), settings_post(), setup_content(), share_init(), siteinfo_content(), siteinfo_init(), sitelist_init(), sources_content(), sources_post(), starred_init(), photo_driver\store(), store_item_tag(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_init(), suggestion_query(), sync_directories(), tag_deliver(), tagadelic(), tagger_content(), tagrm_content(), tagrm_post(), tgroup_check(), thing_content(), thing_init(), tryzrlaudio(), tryzrlvideo(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_remote_id(), update_suggestions(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), vote_init(), vote_post(), webpages_content(), wfinger_init(), widget_bookmarkedchats(), widget_filer(), widget_follow(), widget_savedsearch(), widget_settings_menu(), widget_suggestedchats(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_input_filter(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hublocs(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zotfeed_init().

diff --git a/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html b/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html index d5d596a86..6f0ed1121 100644 --- a/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html +++ b/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html @@ -106,10 +106,14 @@ $(document).ready(function(){initNavTree('dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.h Files file  config.php   +file  functions.php +  file  style.php   file  theme.php   +file  theme_init.php diff --git a/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.js b/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.js index 749793501..5a54bf95f 100644 --- a/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.js +++ b/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.js @@ -1,6 +1,8 @@ var dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5 = [ [ "config.php", "view_2theme_2apw_2php_2config_8php.html", "view_2theme_2apw_2php_2config_8php" ], + [ "functions.php", "functions_8php.html", "functions_8php" ], [ "style.php", "apw_2php_2style_8php.html", "apw_2php_2style_8php" ], - [ "theme.php", "apw_2php_2theme_8php.html", "apw_2php_2theme_8php" ] + [ "theme.php", "apw_2php_2theme_8php.html", "apw_2php_2theme_8php" ], + [ "theme_init.php", "theme_2apw_2php_2theme__init_8php.html", "theme_2apw_2php_2theme__init_8php" ] ]; \ No newline at end of file diff --git a/doc/html/dir_d41ce877eb409a4791b288730010abe2.html b/doc/html/dir_d41ce877eb409a4791b288730010abe2.html index bbf142733..be8951bb9 100644 --- a/doc/html/dir_d41ce877eb409a4791b288730010abe2.html +++ b/doc/html/dir_d41ce877eb409a4791b288730010abe2.html @@ -276,6 +276,8 @@ Files   file  randprof.php   +file  rbmark.php +  file  register.php   file  regmod.php diff --git a/doc/html/dir_d41ce877eb409a4791b288730010abe2.js b/doc/html/dir_d41ce877eb409a4791b288730010abe2.js index 1fd7d42d1..fe3688887 100644 --- a/doc/html/dir_d41ce877eb409a4791b288730010abe2.js +++ b/doc/html/dir_d41ce877eb409a4791b288730010abe2.js @@ -86,6 +86,7 @@ var dir_d41ce877eb409a4791b288730010abe2 = [ "profperm.php", "profperm_8php.html", "profperm_8php" ], [ "pubsites.php", "pubsites_8php.html", "pubsites_8php" ], [ "randprof.php", "randprof_8php.html", "randprof_8php" ], + [ "rbmark.php", "rbmark_8php.html", "rbmark_8php" ], [ "register.php", "register_8php.html", "register_8php" ], [ "regmod.php", "regmod_8php.html", "regmod_8php" ], [ "removeme.php", "removeme_8php.html", "removeme_8php" ], diff --git a/doc/html/dir_d520c5cf583201d9437764f209363c22.html b/doc/html/dir_d520c5cf583201d9437764f209363c22.html index 5d99e87f7..c1c883fad 100644 --- a/doc/html/dir_d520c5cf583201d9437764f209363c22.html +++ b/doc/html/dir_d520c5cf583201d9437764f209363c22.html @@ -104,6 +104,8 @@ $(document).ready(function(){initNavTree('dir_d520c5cf583201d9437764f209363c22.h + + diff --git a/doc/html/dir_d520c5cf583201d9437764f209363c22.js b/doc/html/dir_d520c5cf583201d9437764f209363c22.js index d5e01c25e..9b58769c1 100644 --- a/doc/html/dir_d520c5cf583201d9437764f209363c22.js +++ b/doc/html/dir_d520c5cf583201d9437764f209363c22.js @@ -1,5 +1,6 @@ var dir_d520c5cf583201d9437764f209363c22 = [ + [ "css", "dir_f19da925ee886ec38f19b0e8c19779bc.html", "dir_f19da925ee886ec38f19b0e8c19779bc" ], [ "php", "dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html", "dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5" ], [ "schema", "dir_05f4fba29266e8fd7869afcd6cefb5cb.html", "dir_05f4fba29266e8fd7869afcd6cefb5cb" ] ]; \ No newline at end of file diff --git a/doc/html/docblox__errorchecker_8php.html b/doc/html/docblox__errorchecker_8php.html index 28091a557..7ef1bae9f 100644 --- a/doc/html/docblox__errorchecker_8php.html +++ b/doc/html/docblox__errorchecker_8php.html @@ -134,7 +134,7 @@ Variables - + diff --git a/doc/html/extract_8php.html b/doc/html/extract_8php.html index 2a5b6ba5b..e0508b65f 100644 --- a/doc/html/extract_8php.html +++ b/doc/html/extract_8php.html @@ -132,7 +132,7 @@ Variables

Directories

directory  css
 
directory  php
 
directory  schema
 
 $filelist =array()
 
while($dh=opendir($dir)) if(runs($filelist)) $res =$filelist
while($dh=opendir($dir)) if(runs($filelist)) $res =$filelist
 
 $i =0
 
-

Referenced by activity_sanitise(), api_rss_extra(), api_statuses_user_timeline(), array_sanitise(), attach_mkdir(), attach_store(), bookmark_add(), chat_post(), chatroom_create(), chatroom_destroy(), check_account_admin(), check_account_email(), check_account_invite(), check_account_password(), check_list_permissions(), check_webbie(), connect_content(), connections_post(), connedit_content(), connedit_post(), construct_page(), contact_block(), contact_select(), conversation(), create_account(), create_identity(), dbesc_array(), directory_content(), drop_item(), event_store(), feature_enabled(), find_xchan_in_array(), format_like(), get_all_perms(), get_atom_elements(), get_cloudpath(), get_features(), get_item_elements(), get_mail_elements(), get_mood_verbs(), get_poke_verbs(), get_profile_elements(), Item\get_template_data(), get_terms_oftype(), App\get_widgets(), group_select(), ids_to_querystr(), import_author_rss(), import_author_xchan(), import_directory_profile(), import_post(), import_site(), import_xchan(), item_getfeedattach(), item_store(), item_store_update(), items_fetch(), like_content(), like_puller(), load_database(), magic_init(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), mood_init(), network_content(), new_channel_post(), new_contact(), obj_verbs(), openid_content(), parse_url_content(), pdl_selector(), perm_is_allowed(), photo_upload(), photos_album_get_db_idstr(), photos_create_item(), ping_init(), po2php_run(), poke_init(), post_activity_item(), post_init(), post_post(), proc_run(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_activity(), profile_sidebar(), profiles_content(), redbasic_form(), register_post(), remove_community_tag(), replace_macros(), rmagic_post(), photo_driver\save(), send_reg_approval_email(), service_class_allows(), service_class_fetch(), App\set_apps(), settings_post(), sort_by_date(), stringify_array_elms(), subthread_content(), suggest_content(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), theme_content(), thing_init(), validate_channelname(), wfinger_init(), widget_affinity(), widget_archive(), widget_suggestions(), widget_tagcloud_wall(), xchan_mail_query(), xchan_query(), xml2array(), xrd_init(), zfinger_init(), zid(), zid_init(), zot_fetch(), zot_gethub(), zot_import(), zot_process_response(), and zot_register_hub().

+

Referenced by activity_sanitise(), api_rss_extra(), api_statuses_user_timeline(), array_sanitise(), attach_mkdir(), attach_store(), bookmark_add(), chat_post(), chatroom_create(), chatroom_destroy(), check_account_admin(), check_account_email(), check_account_invite(), check_account_password(), check_list_permissions(), check_webbie(), connect_content(), connections_post(), connedit_content(), connedit_post(), construct_page(), contact_block(), contact_select(), conversation(), create_account(), create_identity(), dbesc_array(), directory_content(), drop_item(), event_store(), feature_enabled(), find_xchan_in_array(), format_like(), get_all_perms(), get_atom_elements(), get_cloudpath(), get_features(), get_item_elements(), get_mail_elements(), get_mood_verbs(), get_poke_verbs(), get_profile_elements(), Item\get_template_data(), get_terms_oftype(), App\get_widgets(), group_select(), ids_to_querystr(), import_author_rss(), import_author_xchan(), import_directory_profile(), import_post(), import_site(), import_xchan(), item_getfeedattach(), item_store(), item_store_update(), items_fetch(), like_content(), like_puller(), load_database(), magic_init(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), mood_init(), network_content(), new_channel_post(), new_contact(), obj_verbs(), openid_content(), parse_url_content(), pdl_selector(), perm_is_allowed(), photo_upload(), photos_album_get_db_idstr(), photos_create_item(), ping_init(), po2php_run(), poke_init(), post_activity_item(), post_init(), post_post(), proc_run(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_activity(), profile_sidebar(), profiles_content(), redbasic_form(), register_post(), remove_community_tag(), replace_macros(), rmagic_post(), photo_driver\save(), send_reg_approval_email(), service_class_allows(), service_class_fetch(), App\set_apps(), settings_post(), sort_by_date(), stringify_array_elms(), subthread_content(), suggest_content(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), theme_content(), thing_init(), validate_channelname(), wfinger_init(), widget_affinity(), widget_archive(), widget_suggestions(), widget_tagcloud_wall(), xchan_mail_query(), xchan_query(), xml2array(), xrd_init(), zfinger_init(), zid(), zid_init(), zot_fetch(), zot_gethub(), zot_import(), zot_process_response(), and zot_register_hub().

@@ -160,7 +160,7 @@ Variables
-

Referenced by Template\_build_nodes(), Template\_replcb_node(), admin_page_themes(), attribute_contains(), base64url_decode(), base64url_encode(), bb_tag_preg_replace(), bb_translate_video(), bbtoevent(), bbtovcal(), bookmarks_init(), chanlink_hash(), chanlink_url(), comanche_parser(), comanche_region(), comanche_webpage(), datetime_convert(), day_translate(), detect_language(), diaspora2bb(), diaspora_ol(), diaspora_ul(), expand_acl(), file_tag_decode(), file_tag_encode(), file_tag_file_query(), fix_mce_lf(), fix_private_photos(), format_categories(), format_filer(), format_term_for_display(), get_bb_tag_pos(), get_intltext_template(), get_language_name(), get_markup_template(), get_tags(), html2bb_video(), info(), is_a_date_arg(), is_foreigner(), is_member(), json_decode_plus(), legal_webbie(), linkify(), magic_link(), mail_content(), network_to_name(), normalise_openid(), notice(), notifier_run(), oembed_iframe(), oembed_replacecb(), oexchange_content(), parse_xml_string(), photos_post(), poco_load(), prepare_body(), print_template(), printable(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), protect_sprintf(), purify_html(), qp(), random_string(), Template\replace(), replace_macros(), FriendicaSmartyEngine\replace_macros(), Template\replace_macros(), scale_external_images(), search(), searchbox(), siteinfo_content(), smilies(), sslify(), string_splitter(), strip_zids(), stripdcode_br_cb(), t(), tag_deliver(), template_escape(), template_unescape(), term_query(), theme_attachments(), unamp(), undo_post_tagging(), unxmlify(), Template\var_replace(), webfinger(), webfinger_dfrn(), x(), z_fetch_url(), z_input_filter(), z_post_url(), zfinger_init(), and zid().

+

Referenced by Template\_build_nodes(), Template\_replcb_node(), admin_page_themes(), attribute_contains(), base64url_decode(), base64url_encode(), bb_tag_preg_replace(), bb_translate_video(), bbtoevent(), bbtovcal(), bookmarks_init(), chanlink_hash(), chanlink_url(), comanche_parser(), comanche_region(), comanche_webpage(), construct_page(), datetime_convert(), day_translate(), detect_language(), diaspora2bb(), diaspora_ol(), diaspora_ul(), expand_acl(), file_tag_decode(), file_tag_encode(), file_tag_file_query(), fix_mce_lf(), fix_private_photos(), format_categories(), format_filer(), format_term_for_display(), get_bb_tag_pos(), get_intltext_template(), get_language_name(), get_markup_template(), get_tags(), html2bb_video(), info(), is_a_date_arg(), is_foreigner(), is_member(), json_decode_plus(), legal_webbie(), linkify(), magic_link(), mail_content(), network_to_name(), normalise_openid(), notice(), notifier_run(), oembed_iframe(), oembed_replacecb(), oexchange_content(), parse_xml_string(), photos_post(), poco_load(), prepare_body(), print_template(), printable(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), protect_sprintf(), purify_html(), qp(), random_string(), Template\replace(), replace_macros(), FriendicaSmartyEngine\replace_macros(), Template\replace_macros(), scale_external_images(), search(), searchbox(), siteinfo_content(), smilies(), sslify(), string_splitter(), strip_zids(), stripdcode_br_cb(), t(), tag_deliver(), template_escape(), template_unescape(), term_query(), theme_attachments(), unamp(), undo_post_tagging(), unxmlify(), Template\var_replace(), webfinger(), webfinger_dfrn(), x(), z_fetch_url(), z_input_filter(), z_post_url(), zfinger_init(), and zid().

diff --git a/doc/html/files.html b/doc/html/files.html index efc357c1c..ceb13a574 100644 --- a/doc/html/files.html +++ b/doc/html/files.html @@ -278,51 +278,52 @@ $(document).ready(function(){initNavTree('files.html','');}); |o*profperm.php |o*pubsites.php |o*randprof.php -|o*register.php -|o*regmod.php -|o*removeme.php -|o*rmagic.php -|o*rpost.php -|o*rsd_xml.php -|o*search.php -|o*search_ac.php -|o*settings.php -|o*setup.php -|o*share.php -|o*siteinfo.php -|o*sitelist.php -|o*smilies.php -|o*sources.php -|o*sslify.php -|o*starred.php -|o*subthread.php -|o*suggest.php -|o*tagger.php -|o*tagrm.php -|o*thing.php -|o*toggle_mobile.php -|o*toggle_safesearch.php -|o*uexport.php -|o*update_channel.php -|o*update_community.php -|o*update_display.php -|o*update_network.php -|o*update_search.php -|o*view.php -|o*viewconnections.php -|o*viewsrc.php -|o*vote.php -|o*wall_attach.php -|o*wall_upload.php -|o*webfinger.php -|o*webpages.php -|o*wfinger.php -|o*xchan.php -|o*xrd.php -|o*xref.php -|o*zfinger.php -|o*zotfeed.php -|\*zping.php +|o*rbmark.php +|o*register.php +|o*regmod.php +|o*removeme.php +|o*rmagic.php +|o*rpost.php +|o*rsd_xml.php +|o*search.php +|o*search_ac.php +|o*settings.php +|o*setup.php +|o*share.php +|o*siteinfo.php +|o*sitelist.php +|o*smilies.php +|o*sources.php +|o*sslify.php +|o*starred.php +|o*subthread.php +|o*suggest.php +|o*tagger.php +|o*tagrm.php +|o*thing.php +|o*toggle_mobile.php +|o*toggle_safesearch.php +|o*uexport.php +|o*update_channel.php +|o*update_community.php +|o*update_display.php +|o*update_network.php +|o*update_search.php +|o*view.php +|o*viewconnections.php +|o*viewsrc.php +|o*vote.php +|o*wall_attach.php +|o*wall_upload.php +|o*webfinger.php +|o*webpages.php +|o*wfinger.php +|o*xchan.php +|o*xrd.php +|o*xref.php +|o*zfinger.php +|o*zotfeed.php +|\*zping.php o+util |o+fpostit ||\*fpostit.php @@ -351,22 +352,26 @@ $(document).ready(function(){initNavTree('files.html','');}); ||\*theme_init.php |\+theme | o+apw -| |o+php -| ||o*config.php -| ||o*style.php -| ||\*theme.php -| |\+schema -| | o*darkness.php -| | o*darknessleftaside.php -| | o*darknessrightaside.php -| | o*greenthumbnails.php -| | o*minimalisticdarkness.php -| | o*olddefault.php -| | o*passion.php -| | o*passionwide.php -| | o*pine.php -| | o*redbasic.php -| | \*widedarkness.php +| |o+css +| ||\*mod_chanview.php +| |o+php +| ||o*config.php +| ||o*functions.php +| ||o*style.php +| ||o*theme.php +| ||\*theme_init.php +| |\+schema +| | o*darkness.php +| | o*darknessleftaside.php +| | o*darknessrightaside.php +| | o*greenthumbnails.php +| | o*minimalisticdarkness.php +| | o*olddefault.php +| | o*passion.php +| | o*passionwide.php +| | o*pine.php +| | o*redbasic.php +| | \*widedarkness.php | o+blogga | |o+php | ||o*config.php diff --git a/doc/html/fpostit_8php.html b/doc/html/fpostit_8php.html index b17a11384..edd788dd8 100644 --- a/doc/html/fpostit_8php.html +++ b/doc/html/fpostit_8php.html @@ -118,11 +118,11 @@ Functions - +if(isset($_GET['text'])) if(isset($_GET['url']))
+if((isset($title))&&(isset($text))&&(isset($url))) 

Variables

if(($_POST["friendika_acct_name"]!=
+
if(($_POST["friendika_acct_name"]!=
'')&&($_POST["friendika_password"]!=
'')) if(isset($_GET['title']))
-if(isset($_GET['text'])) if(isset($_GET['url']))
-if((isset($title))&&(isset($text))&&(isset($url))) 
else
else
 

Function Documentation

@@ -158,7 +158,7 @@ Variables
- +
if (isset($_POST['submit'])) elseif (isset($_POST['submit'])) else
diff --git a/doc/html/globals.html b/doc/html/globals.html index 5df6b05c9..c671f4918 100644 --- a/doc/html/globals.html +++ b/doc/html/globals.html @@ -177,13 +177,19 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $dirstack : docblox_errorchecker.php
  • +
  • $fext +: style.php +
  • $filelist : docblox_errorchecker.php
  • $files -: typo.php -, extract.php +: extract.php , tpldebug.php +, typo.php +
  • +
  • $fname +: style.php
  • $gc_probability : session.php @@ -197,6 +203,9 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $i : docblox_errorchecker.php
  • +
  • $iconsize +: style.php +
  • $infile : php2po.php
  • @@ -218,9 +227,15 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $nav_percent_min_opacity : style.php
  • +
  • $navheight +: style.php +
  • $needed : docblox_errorchecker.php
  • +
  • $obliquemacro +: style.php +
  • $out : php2po.php
  • @@ -254,6 +269,9 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $sectionleft : minimalisticdarkness.php
  • +
  • $sectiontop +: style.php +
  • $sectionwidth : minimalisticdarkness.php
  • @@ -263,9 +281,15 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $session_expire : session.php
  • +
  • $showlock +: style.php +
  • $str : typohelper.php
  • +
  • $strongmacro +: style.php +
  • $uid : style.php
  • @@ -275,6 +299,9 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $wwtop : style.php
  • +
  • $x +: style.php +
  • $zones : extract.php
  • diff --git a/doc/html/globals_0x62.html b/doc/html/globals_0x62.html index 07b3c6724..f36ed548c 100644 --- a/doc/html/globals_0x62.html +++ b/doc/html/globals_0x62.html @@ -220,7 +220,7 @@ $(document).ready(function(){initNavTree('globals_0x62.html','');}); : theme.php
  • bookmark_add() -: bookmarks.php +: bookmarks.php
  • bookmarks_content() : bookmarks.php diff --git a/doc/html/globals_0x63.html b/doc/html/globals_0x63.html index 1e9987b2f..dd801d9f9 100644 --- a/doc/html/globals_0x63.html +++ b/doc/html/globals_0x63.html @@ -322,7 +322,7 @@ $(document).ready(function(){initNavTree('globals_0x63.html','');}); : comanche.php
  • comanche_menu() -: comanche.php +: comanche.php
  • comanche_parser() : comanche.php diff --git a/doc/html/globals_0x67.html b/doc/html/globals_0x67.html index a3578bee3..5d11faf06 100644 --- a/doc/html/globals_0x67.html +++ b/doc/html/globals_0x67.html @@ -168,6 +168,9 @@ $(document).ready(function(){initNavTree('globals_0x67.html','');});
  • get_birthdays() : identity.php
  • +
  • get_bookmark_link() +: bookmarks.php +
  • get_browser_language() : language.php
  • diff --git a/doc/html/globals_0x69.html b/doc/html/globals_0x69.html index 0d880f0ff..2834e95b9 100644 --- a/doc/html/globals_0x69.html +++ b/doc/html/globals_0x69.html @@ -157,7 +157,7 @@ $(document).ready(function(){initNavTree('globals_0x69.html','');}); : php2po.php , default.php , full.php -, style.php +, style.php
  • import_author_rss() : items.php diff --git a/doc/html/globals_0x6d.html b/doc/html/globals_0x6d.html index 26714be71..c29a58934 100644 --- a/doc/html/globals_0x6d.html +++ b/doc/html/globals_0x6d.html @@ -240,6 +240,9 @@ $(document).ready(function(){initNavTree('globals_0x6d.html','');});
  • menu_fetch_id() : menu.php
  • +
  • MENU_ITEM_CHATROOM +: boot.php +
  • MENU_ITEM_NEWWIN : boot.php
  • @@ -253,7 +256,7 @@ $(document).ready(function(){initNavTree('globals_0x6d.html','');}); : menu.php
  • menu_render() -: menu.php +: menu.php
  • MENU_SYSTEM : boot.php diff --git a/doc/html/globals_0x72.html b/doc/html/globals_0x72.html index ba8858b00..778ccdc2a 100644 --- a/doc/html/globals_0x72.html +++ b/doc/html/globals_0x72.html @@ -159,6 +159,12 @@ $(document).ready(function(){initNavTree('globals_0x72.html','');});
  • randprof_init() : randprof.php
  • +
  • rbmark_content() +: rbmark.php +
  • +
  • rbmark_post() +: rbmark.php +
  • rconnect_url() : Contact.php
  • diff --git a/doc/html/globals_0x73.html b/doc/html/globals_0x73.html index b3892df35..9dce54a2c 100644 --- a/doc/html/globals_0x73.html +++ b/doc/html/globals_0x73.html @@ -270,6 +270,9 @@ $(document).ready(function(){initNavTree('globals_0x73.html','');});
  • sources_post() : sources.php
  • +
  • splitFilename() +: functions.php +
  • SSL_POLICY_FULL : boot.php
  • diff --git a/doc/html/globals_0x77.html b/doc/html/globals_0x77.html index f74429e9e..5c6c8c33c 100644 --- a/doc/html/globals_0x77.html +++ b/doc/html/globals_0x77.html @@ -177,6 +177,9 @@ $(document).ready(function(){initNavTree('globals_0x77.html','');});
  • widget_archive() : widgets.php
  • +
  • widget_bookmarkedchats() +: widgets.php +
  • widget_categories() : widgets.php
  • @@ -231,6 +234,9 @@ $(document).ready(function(){initNavTree('globals_0x77.html','');});
  • widget_settings_menu() : widgets.php
  • +
  • widget_suggestedchats() +: widgets.php +
  • widget_suggestions() : widgets.php
  • diff --git a/doc/html/globals_func_0x62.html b/doc/html/globals_func_0x62.html index cb663e545..7d1073194 100644 --- a/doc/html/globals_func_0x62.html +++ b/doc/html/globals_func_0x62.html @@ -219,7 +219,7 @@ $(document).ready(function(){initNavTree('globals_func_0x62.html','');}); : theme.php
  • bookmark_add() -: bookmarks.php +: bookmarks.php
  • bookmarks_content() : bookmarks.php diff --git a/doc/html/globals_func_0x63.html b/doc/html/globals_func_0x63.html index 01cfcc622..513c7125e 100644 --- a/doc/html/globals_func_0x63.html +++ b/doc/html/globals_func_0x63.html @@ -312,7 +312,7 @@ $(document).ready(function(){initNavTree('globals_func_0x63.html','');}); : comanche.php
  • comanche_menu() -: comanche.php +: comanche.php
  • comanche_parser() : comanche.php diff --git a/doc/html/globals_func_0x67.html b/doc/html/globals_func_0x67.html index abf85737c..12301d1d1 100644 --- a/doc/html/globals_func_0x67.html +++ b/doc/html/globals_func_0x67.html @@ -167,6 +167,9 @@ $(document).ready(function(){initNavTree('globals_func_0x67.html','');});
  • get_birthdays() : identity.php
  • +
  • get_bookmark_link() +: bookmarks.php +
  • get_browser_language() : language.php
  • diff --git a/doc/html/globals_func_0x6d.html b/doc/html/globals_func_0x6d.html index f1233bc97..50ebb053c 100644 --- a/doc/html/globals_func_0x6d.html +++ b/doc/html/globals_func_0x6d.html @@ -219,7 +219,7 @@ $(document).ready(function(){initNavTree('globals_func_0x6d.html','');}); : menu.php
  • menu_render() -: menu.php +: menu.php
  • message_content() : message.php diff --git a/doc/html/globals_func_0x72.html b/doc/html/globals_func_0x72.html index 8f621003b..6aa9487e2 100644 --- a/doc/html/globals_func_0x72.html +++ b/doc/html/globals_func_0x72.html @@ -152,6 +152,12 @@ $(document).ready(function(){initNavTree('globals_func_0x72.html','');});
  • randprof_init() : randprof.php
  • +
  • rbmark_content() +: rbmark.php +
  • +
  • rbmark_post() +: rbmark.php +
  • rconnect_url() : Contact.php
  • diff --git a/doc/html/globals_func_0x73.html b/doc/html/globals_func_0x73.html index c24e34214..b8aeeba55 100644 --- a/doc/html/globals_func_0x73.html +++ b/doc/html/globals_func_0x73.html @@ -269,6 +269,9 @@ $(document).ready(function(){initNavTree('globals_func_0x73.html','');});
  • sources_post() : sources.php
  • +
  • splitFilename() +: functions.php +
  • sslify() : text.php
  • diff --git a/doc/html/globals_func_0x77.html b/doc/html/globals_func_0x77.html index 860b694e2..8b0a9030c 100644 --- a/doc/html/globals_func_0x77.html +++ b/doc/html/globals_func_0x77.html @@ -173,6 +173,9 @@ $(document).ready(function(){initNavTree('globals_func_0x77.html','');});
  • widget_archive() : widgets.php
  • +
  • widget_bookmarkedchats() +: widgets.php +
  • widget_categories() : widgets.php
  • @@ -227,6 +230,9 @@ $(document).ready(function(){initNavTree('globals_func_0x77.html','');});
  • widget_settings_menu() : widgets.php
  • +
  • widget_suggestedchats() +: widgets.php +
  • widget_suggestions() : widgets.php
  • diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html index e2ba25cd8..5e3294c86 100644 --- a/doc/html/globals_vars.html +++ b/doc/html/globals_vars.html @@ -172,13 +172,19 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $dirstack : docblox_errorchecker.php
  • +
  • $fext +: style.php +
  • $filelist : docblox_errorchecker.php
  • $files -: typo.php -, extract.php +: extract.php , tpldebug.php +, typo.php +
  • +
  • $fname +: style.php
  • $gc_probability : session.php @@ -192,6 +198,9 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $i : docblox_errorchecker.php
  • +
  • $iconsize +: style.php +
  • $infile : php2po.php
  • @@ -213,9 +222,15 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $nav_percent_min_opacity : style.php
  • +
  • $navheight +: style.php +
  • $needed : docblox_errorchecker.php
  • +
  • $obliquemacro +: style.php +
  • $out : php2po.php
  • @@ -249,6 +264,9 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $sectionleft : minimalisticdarkness.php
  • +
  • $sectiontop +: style.php +
  • $sectionwidth : minimalisticdarkness.php
  • @@ -258,9 +276,15 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $session_expire : session.php
  • +
  • $showlock +: style.php +
  • $str : typohelper.php
  • +
  • $strongmacro +: style.php +
  • $uid : style.php
  • @@ -270,6 +294,9 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $wwtop : style.php
  • +
  • $x +: style.php +
  • $zones : extract.php
  • diff --git a/doc/html/globals_vars_0x69.html b/doc/html/globals_vars_0x69.html index 2d4e26940..6f96dad0f 100644 --- a/doc/html/globals_vars_0x69.html +++ b/doc/html/globals_vars_0x69.html @@ -142,7 +142,7 @@ $(document).ready(function(){initNavTree('globals_vars_0x69.html','');});
  • if : php2po.php , default.php -, style.php +, style.php , full.php
  • ITEM_BLOCKED diff --git a/doc/html/globals_vars_0x6d.html b/doc/html/globals_vars_0x6d.html index b67fde2da..b6da098d2 100644 --- a/doc/html/globals_vars_0x6d.html +++ b/doc/html/globals_vars_0x6d.html @@ -166,6 +166,9 @@ $(document).ready(function(){initNavTree('globals_vars_0x6d.html','');});
  • MENU_BOOKMARK : boot.php
  • +
  • MENU_ITEM_CHATROOM +: boot.php +
  • MENU_ITEM_NEWWIN : boot.php
  • diff --git a/doc/html/help_8php.html b/doc/html/help_8php.html index 3a7df70f8..87291e66d 100644 --- a/doc/html/help_8php.html +++ b/doc/html/help_8php.html @@ -112,7 +112,7 @@ $(document).ready(function(){initNavTree('help_8php.html','');}); - + @@ -123,7 +123,7 @@ Functions

    Functions

    if(!function_exists('load_doc_file')) help_content (&$a)
    if(!function_exists('load_doc_file')) help_content (&$a)
     
     preg_callback_help_include ($matches)
     
    - + diff --git a/doc/html/identity_8php.html b/doc/html/identity_8php.html index 24e96902c..f6317bf75 100644 --- a/doc/html/identity_8php.html +++ b/doc/html/identity_8php.html @@ -399,6 +399,8 @@ Functions
    if (!function_exists('load_doc_file')) help_content if (!function_exists('load_doc_file')) help_content ( $a)
    +

    Referenced by construct_page().

    +
    @@ -737,7 +739,7 @@ Functions
    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 chanview_content(), chatsvc_content(), conversation(), dirprofile_init(), format_categories(), get_plink(), like_puller(), localize_item(), match_content(), menu_render(), new_contact(), oembed_fetch_url(), tryzrlaudio(), tryzrlvideo(), and viewconnections_content().

    +

    Referenced by chanview_content(), chatsvc_content(), conversation(), dirprofile_init(), format_categories(), get_plink(), like_puller(), localize_item(), match_content(), menu_render(), new_contact(), oembed_fetch_url(), tryzrlaudio(), tryzrlvideo(), viewconnections_content(), widget_bookmarkedchats(), and widget_suggestedchats().

    diff --git a/doc/html/include_2bookmarks_8php.html b/doc/html/include_2bookmarks_8php.html index 28218b211..3628677c8 100644 --- a/doc/html/include_2bookmarks_8php.html +++ b/doc/html/include_2bookmarks_8php.html @@ -112,11 +112,13 @@ $(document).ready(function(){initNavTree('include_2bookmarks_8php.html','');}); - - + + + +

    Functions

     bookmark_add ($channel, $sender, $taxonomy, $private)
     
     bookmark_add ($channel, $sender, $taxonomy, $private, $opts=null)
     
     get_bookmark_link ($observer)
     

    Function Documentation

    - +
    @@ -142,7 +144,13 @@ Functions - + + + + + + + @@ -152,7 +160,25 @@ Functions
     $private $private,
     $opts = null 
    -

    Referenced by bookmarks_init(), and tag_deliver().

    +

    Referenced by bookmarks_init(), rbmark_post(), and tag_deliver().

    + +
    +
    + +
    +
    + + + + + + + + +
    get_bookmark_link ( $observer)
    +
    + +

    Referenced by chat_content().

    diff --git a/doc/html/include_2bookmarks_8php.js b/doc/html/include_2bookmarks_8php.js index c63d2d4dd..e1884bb55 100644 --- a/doc/html/include_2bookmarks_8php.js +++ b/doc/html/include_2bookmarks_8php.js @@ -1,4 +1,5 @@ var include_2bookmarks_8php = [ - [ "bookmark_add", "include_2bookmarks_8php.html#a88ce7dee6a3dc7465aa9b8eaa45b0087", null ] + [ "bookmark_add", "include_2bookmarks_8php.html#aef1cb2968c41c759f2d106e1088ca323", null ], + [ "get_bookmark_link", "include_2bookmarks_8php.html#a743763b0ce83af0bbc8a2f7ac16033aa", null ] ]; \ No newline at end of file diff --git a/doc/html/include_2config_8php.html b/doc/html/include_2config_8php.html index c46e26f27..cc593de76 100644 --- a/doc/html/include_2config_8php.html +++ b/doc/html/include_2config_8php.html @@ -324,7 +324,7 @@ Functions
    -

    Referenced by Conversation\__construct(), App\build_pagehead(), change_channel(), channel_content(), chanview_content(), community_content(), connect_content(), contact_block(), contact_remove(), conversation(), current_theme(), display_content(), editpost_content(), feature_enabled(), findpeople_widget(), Item\get_comment_box(), get_online_status(), get_theme_uid(), group_content(), home_init(), invite_content(), invite_post(), item_expire(), item_post(), item_store(), item_store_update(), items_fetch(), FKOAuth1\loginUser(), mail_content(), message_content(), network_content(), profile_activity(), profile_load(), profile_sidebar(), profperm_content(), remove_community_tag(), rpost_content(), search_content(), set_pconfig(), smilies(), tag_deliver(), theme_content(), and widget_notes().

    +

    Referenced by Conversation\__construct(), App\build_pagehead(), change_channel(), channel_content(), chanview_content(), community_content(), connect_content(), construct_page(), contact_block(), contact_remove(), conversation(), current_theme(), display_content(), editpost_content(), feature_enabled(), findpeople_widget(), Item\get_comment_box(), get_online_status(), get_theme_uid(), group_content(), home_init(), invite_content(), invite_post(), item_expire(), item_post(), item_store(), item_store_update(), items_fetch(), FKOAuth1\loginUser(), mail_content(), message_content(), network_content(), profile_activity(), profile_load(), profile_sidebar(), profperm_content(), remove_community_tag(), rpost_content(), search_content(), set_pconfig(), smilies(), tag_deliver(), theme_content(), and widget_notes().

    diff --git a/doc/html/include_2menu_8php.html b/doc/html/include_2menu_8php.html index 2fb579197..b00d62faa 100644 --- a/doc/html/include_2menu_8php.html +++ b/doc/html/include_2menu_8php.html @@ -114,8 +114,8 @@ $(document).ready(function(){initNavTree('include_2menu_8php.html','');}); Functions  menu_fetch ($name, $uid, $observer_xchan)   - menu_render ($menu, $edit=false) -  + menu_render ($menu, $class='', $edit=false) +   menu_fetch_id ($menu_id, $channel_id)    menu_create ($arr) @@ -166,7 +166,7 @@ Functions
    -

    Referenced by bookmark_add(), and mitem_post().

    +

    Referenced by bookmark_add(), and mitem_post().

    @@ -184,7 +184,7 @@ Functions
    -

    Referenced by bookmark_add(), and menu_post().

    +

    Referenced by bookmark_add(), and menu_post().

    @@ -358,7 +358,7 @@ Functions @@ -421,11 +421,11 @@ Functions

    If $flags is present, check that all the bits in $flags are set so that MENU_SYSTEM|MENU_BOOKMARK will return entries with both bits set. We will use this to find system generated bookmarks.

    -

    Referenced by bookmark_add(), bookmarks_content(), and menu_content().

    +

    Referenced by bookmark_add(), bookmarks_content(), menu_content(), and rbmark_content().

    - +
    @@ -435,6 +435,12 @@ Functions + + + + + + @@ -449,7 +455,7 @@ Functions
      $menu,
     $class = '',
    diff --git a/doc/html/include_2menu_8php.js b/doc/html/include_2menu_8php.js index e449b7920..c5e645c10 100644 --- a/doc/html/include_2menu_8php.js +++ b/doc/html/include_2menu_8php.js @@ -10,5 +10,5 @@ var include_2menu_8php = [ "menu_fetch", "include_2menu_8php.html#a68ebbf492470c930f652013656f9071d", null ], [ "menu_fetch_id", "include_2menu_8php.html#a47447c01ba8ea04cd74af1d4c5b68fc7", null ], [ "menu_list", "include_2menu_8php.html#a32701c4245e78ba9106eef52c08bf33d", null ], - [ "menu_render", "include_2menu_8php.html#a4d7123b0577fa994770199f9b831da11", null ] + [ "menu_render", "include_2menu_8php.html#a03a5deed3908543581c074ce333e9d6a", null ] ]; \ No newline at end of file diff --git a/doc/html/language_8php.html b/doc/html/language_8php.html index 6b1775abb..4a5553a59 100644 --- a/doc/html/language_8php.html +++ b/doc/html/language_8php.html @@ -361,7 +361,7 @@ Functions
    Returns
    translated string if exsists, otherwise s
    -

    Referenced by achievements_content(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_post(), advanced_profile(), alt_pager(), api_content(), api_post(), api_statuses_public_timeline(), apps_content(), apw_form(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_init(), attach_list_files(), attach_mkdir(), attach_store(), bbcode(), blocks_content(), blogtheme_form(), bookmark_add(), bookmarks_content(), bookmarks_init(), categories_widget(), channel_content(), channel_init(), chanview_content(), chat_content(), chat_init(), chatroom_create(), chatroom_destroy(), chatroom_enter(), chatsvc_content(), check_account_email(), check_account_invite(), check_config(), check_form_security_std_err_msg(), check_funcs(), check_htaccess(), check_htconfig(), check_keys(), check_php(), check_smarty3(), check_store(), cloud_init(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_content(), connections_post(), connedit_content(), connedit_post(), construct_page(), contact_block(), contact_poll_interval(), contact_reputation(), conversation(), create_account(), create_identity(), datesel_format(), day_translate(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), dir_tagblock(), directory_content(), dirprofile_init(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), fbrowser_content(), fileas_widget(), filer_content(), filestorage_content(), filestorage_post(), findpeople_widget(), fix_attached_photo_permissions(), follow_init(), format_categories(), format_event_diaspora(), format_event_html(), format_filer(), format_like(), format_notification(), fsuggest_content(), fsuggest_post(), gender_selector(), get_birthdays(), Item\get_comment_box(), get_events(), get_features(), get_mood_verbs(), get_perms(), get_plink(), get_poke_verbs(), Item\get_template_data(), group_add(), group_content(), group_post(), group_side(), help_content(), home_content(), RedBrowser\htmlActionsPanel(), identity_check_service_class(), import_author_rss(), import_channel_photo(), import_content(), import_post(), import_xchan(), dba_driver\install(), invite_content(), invite_post(), item_check_service_class(), item_photo_menu(), item_post(), item_post_type(), items_fetch(), lang_selector(), layout_select(), layouts_content(), like_content(), load_database(), localize_item(), lockview_content(), login(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_post(), manage_content(), manual_config(), marital_selector(), match_content(), menu_content(), menu_post(), menu_render(), message_content(), mimetype_select(), mini_group_select(), mitem_content(), mitem_init(), mitem_post(), mood_content(), mood_init(), nav(), network_content(), network_init(), network_to_name(), new_channel_content(), new_channel_post(), new_contact(), notice(), notification(), notifications_content(), notifications_post(), notify_content(), obj_verbs(), oembed_bbcode2html(), oembed_iframe(), oexchange_content(), openid_content(), page_content(), paginate(), pdl_selector(), photo_upload(), photos_album_widget(), photos_content(), photos_init(), photos_post(), ping_init(), poke_content(), poke_init(), populate_acl(), post_activity_item(), post_init(), profile_activity(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), pubsites_content(), redbasic_form(), register_content(), register_post(), regmod_content(), relative_date(), removeme_content(), rmagic_content(), rmagic_post(), rpost_content(), scale_external_images(), search(), search_content(), searchbox(), select_timezone(), send_message(), send_reg_approval_email(), send_verification_email(), settings_post(), setup_content(), sexpref_selector(), siteinfo_content(), sources_content(), sources_post(), subthread_content(), suggest_content(), tagblock(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), thing_content(), thing_init(), timezone_cmp(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), upgrade_bool_message(), upgrade_link(), upgrade_message(), user_allow(), user_deny(), validate_channelname(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), wall_upload_post(), webpages_content(), what_next(), widget_affinity(), widget_archive(), widget_chatroom_list(), widget_filer(), widget_follow(), widget_mailmenu(), widget_notes(), widget_savedsearch(), widget_settings_menu(), widget_suggestions(), widget_tagcloud(), writepages_widget(), xchan_content(), z_readdir(), and zfinger_init().

    +

    Referenced by achievements_content(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_post(), advanced_profile(), alt_pager(), api_content(), api_post(), api_statuses_public_timeline(), apps_content(), apw_form(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_init(), attach_list_files(), attach_mkdir(), attach_store(), bbcode(), blocks_content(), blogtheme_form(), bookmark_add(), bookmarks_content(), bookmarks_init(), categories_widget(), channel_content(), channel_init(), chanview_content(), chat_content(), chat_init(), chatroom_create(), chatroom_destroy(), chatroom_enter(), chatsvc_content(), check_account_email(), check_account_invite(), check_config(), check_form_security_std_err_msg(), check_funcs(), check_htaccess(), check_htconfig(), check_keys(), check_php(), check_smarty3(), check_store(), cloud_init(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_content(), connections_post(), connedit_content(), connedit_post(), construct_page(), contact_block(), contact_poll_interval(), contact_reputation(), conversation(), create_account(), create_identity(), datesel_format(), day_translate(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), dir_tagblock(), directory_content(), dirprofile_init(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), fbrowser_content(), fileas_widget(), filer_content(), filestorage_content(), filestorage_post(), findpeople_widget(), fix_attached_photo_permissions(), follow_init(), format_categories(), format_event_diaspora(), format_event_html(), format_filer(), format_like(), format_notification(), fsuggest_content(), fsuggest_post(), gender_selector(), get_birthdays(), Item\get_comment_box(), get_events(), get_features(), get_mood_verbs(), get_perms(), get_plink(), get_poke_verbs(), Item\get_template_data(), group_add(), group_content(), group_post(), group_side(), help_content(), home_content(), RedBrowser\htmlActionsPanel(), identity_check_service_class(), import_author_rss(), import_channel_photo(), import_content(), import_post(), import_xchan(), dba_driver\install(), invite_content(), invite_post(), item_check_service_class(), item_photo_menu(), item_post(), item_post_type(), items_fetch(), lang_selector(), layout_select(), layouts_content(), like_content(), load_database(), localize_item(), lockview_content(), login(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_post(), manage_content(), manual_config(), marital_selector(), match_content(), menu_content(), menu_post(), menu_render(), message_content(), mimetype_select(), mini_group_select(), mitem_content(), mitem_init(), mitem_post(), mood_content(), mood_init(), nav(), network_content(), network_init(), network_to_name(), new_channel_content(), new_channel_post(), new_contact(), notice(), notification(), notifications_content(), notifications_post(), notify_content(), obj_verbs(), oembed_bbcode2html(), oembed_iframe(), oexchange_content(), openid_content(), page_content(), paginate(), pdl_selector(), photo_upload(), photos_album_widget(), photos_content(), photos_init(), photos_post(), ping_init(), poke_content(), poke_init(), populate_acl(), post_activity_item(), post_init(), profile_activity(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), pubsites_content(), rbmark_content(), rbmark_post(), redbasic_form(), register_content(), register_post(), regmod_content(), relative_date(), removeme_content(), rmagic_content(), rmagic_post(), rpost_content(), scale_external_images(), search(), search_content(), searchbox(), select_timezone(), send_message(), send_reg_approval_email(), send_verification_email(), settings_post(), setup_content(), sexpref_selector(), siteinfo_content(), sources_content(), sources_post(), subthread_content(), suggest_content(), tagblock(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), thing_content(), thing_init(), timezone_cmp(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), upgrade_bool_message(), upgrade_link(), upgrade_message(), user_allow(), user_deny(), validate_channelname(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), wall_upload_post(), webpages_content(), what_next(), widget_affinity(), widget_archive(), widget_bookmarkedchats(), widget_chatroom_list(), widget_filer(), widget_follow(), widget_mailmenu(), widget_notes(), widget_savedsearch(), widget_settings_menu(), widget_suggestedchats(), widget_suggestions(), widget_tagcloud(), writepages_widget(), xchan_content(), z_readdir(), and zfinger_init().

    diff --git a/doc/html/navtree.js b/doc/html/navtree.js index e9b142c1f..8ebae3629 100644 --- a/doc/html/navtree.js +++ b/doc/html/navtree.js @@ -36,14 +36,14 @@ var NAVTREE = var NAVTREEINDEX = [ "BaseObject_8php.html", -"boot_8php.html#a7f4264232dbb6c3b41f2617deecb1866", -"classConversation.html#a4cff75d8c46b517e7133e4d0da6fc1c8", -"classphoto__imagick.html#a9df5738a4a18e76dd304c440e96f045f", -"functions_0x63.html", -"include_2config_8php.html#ac543813a980b3841cc5a277fcd4a24a6", -"namespaceFriendica.html", -"session_8php.html#af230b86bfff7db66c3bdd7e0bbc24052", -"viewsrc_8php.html#a6eff3d0c1d7d14b335c4edb785cd60a4" +"boot_8php.html#a7a8ba64d089cc0412c59a2eefc6d655c", +"classApp.html#af58db526040829b1c8bd95561b329262", +"classphoto__gd.html#a724703ecf71b1f1d04a80e86c76db6b1", +"friendica__smarty_8php.html", +"include_2chat_8php.html", +"mod_2oembed_8php.html#a9145025aaf057fb5d3f9f7011e5e1014", +"security_8php.html#a8d23d2597aae380a3341872fe9513380", +"view_2theme_2blogga_2php_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/doc/html/navtreeindex0.js b/doc/html/navtreeindex0.js index 7d3fb5a74..5f1c5338e 100644 --- a/doc/html/navtreeindex0.js +++ b/doc/html/navtreeindex0.js @@ -68,11 +68,20 @@ var NAVTREEINDEX0 = "annotated.html":[4,0], "apps_8php.html":[5,0,1,5], "apps_8php.html#a546016cb960d0b110ee8e489dfa6c27c":[5,0,1,5,0], -"apw_2php_2style_8php.html":[5,0,3,2,0,0,1], -"apw_2php_2style_8php.html#a109bbd7f4add27541707b191b73ef84a":[5,0,3,2,0,0,1,0], -"apw_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a":[5,0,3,2,0,0,1,1], -"apw_2php_2theme_8php.html":[5,0,3,2,0,0,2], -"apw_2php_2theme_8php.html#a42167c539043a39a6b83c252d05f1e89":[5,0,3,2,0,0,2,0], +"apw_2php_2style_8php.html":[5,0,3,2,0,1,2], +"apw_2php_2style_8php.html#a07adb491994deb72a00a975b431d3e30":[5,0,3,2,0,1,2,2], +"apw_2php_2style_8php.html#a109bbd7f4add27541707b191b73ef84a":[5,0,3,2,0,1,2,8], +"apw_2php_2style_8php.html#a1c8a7c0db8c174239f3909cb931cb872":[5,0,3,2,0,1,2,3], +"apw_2php_2style_8php.html#a2cad82a3ecadbe58dbc4197de1c63da0":[5,0,3,2,0,1,2,4], +"apw_2php_2style_8php.html#a404171b8f918c116e45a6421c92f0cc9":[5,0,3,2,0,1,2,0], +"apw_2php_2style_8php.html#aa58104ba36588bbf082cecbb3910e2ea":[5,0,3,2,0,1,2,7], +"apw_2php_2style_8php.html#ab9e0f70d44ab67f4334f9883631777fc":[5,0,3,2,0,1,2,1], +"apw_2php_2style_8php.html#acb0dedc3212a7c60ab2474768becd79a":[5,0,3,2,0,1,2,5], +"apw_2php_2style_8php.html#ad401ea1d1ba236f86863b4574f01e425":[5,0,3,2,0,1,2,6], +"apw_2php_2style_8php.html#aea44f144ed341be483b334a7634c1aec":[5,0,3,2,0,1,2,10], +"apw_2php_2style_8php.html#af3a16c5f0dd7a74cf9acf6a49fff73a7":[5,0,3,2,0,1,2,9], +"apw_2php_2theme_8php.html":[5,0,3,2,0,1,3], +"apw_2php_2theme_8php.html#a42167c539043a39a6b83c252d05f1e89":[5,0,3,2,0,1,3,0], "auth_8php.html":[5,0,0,7], "auth_8php.html#a07bae0e623e2daa9ee2cd5a8aa294dee":[5,0,0,7,0], "auth_8php.html#a0950af7c2888ca1d4743fe5d0bff9ae5":[5,0,0,7,3], @@ -117,137 +126,128 @@ var NAVTREEINDEX0 = "boot_8php.html#a009e6a0637cb65804ea8094ecc4450b0":[5,0,4,131], "boot_8php.html#a01353c9abebc3544ea080ac161729632":[5,0,4,35], "boot_8php.html#a022cea669f9f13ef7c6268b63884c57f":[5,0,4,145], -"boot_8php.html#a02566ac9d891369a1d3ebb81a15722fc":[5,0,4,244], +"boot_8php.html#a02566ac9d891369a1d3ebb81a15722fc":[5,0,4,245], "boot_8php.html#a032bbd6d0321e99e9117332c9ed2b1b8":[5,0,4,51], -"boot_8php.html#a03d19251c245587de7ed959300b87bdf":[5,0,4,163], +"boot_8php.html#a03d19251c245587de7ed959300b87bdf":[5,0,4,164], "boot_8php.html#a0450389f24c632906fbc24347700a543":[5,0,4,43], "boot_8php.html#a0603d6ece8c5d37b4b7db697db053a4b":[5,0,4,100], "boot_8php.html#a081307d681d7d04f17b9ced2076e7c85":[5,0,4,1], -"boot_8php.html#a09532c3f750ae8c4527e63b2b790cbf3":[5,0,4,202], +"boot_8php.html#a09532c3f750ae8c4527e63b2b790cbf3":[5,0,4,203], "boot_8php.html#a0a98dd0110dc6c8e24cefc8ae74d5562":[5,0,4,65], -"boot_8php.html#a0b73e2548d6f9beb9c93211f488e336a":[5,0,4,167], -"boot_8php.html#a0c59dde058efebbc66520d136cbd1631":[5,0,4,262], -"boot_8php.html#a0cc8dc76bd10ac0ec81bac08a46f82fe":[5,0,4,258], -"boot_8php.html#a0d877df1e20bae765e1708be50f6b503":[5,0,4,261], +"boot_8php.html#a0b73e2548d6f9beb9c93211f488e336a":[5,0,4,168], +"boot_8php.html#a0c59dde058efebbc66520d136cbd1631":[5,0,4,263], +"boot_8php.html#a0cc8dc76bd10ac0ec81bac08a46f82fe":[5,0,4,259], +"boot_8php.html#a0d877df1e20bae765e1708be50f6b503":[5,0,4,262], "boot_8php.html#a0e4701c9742c3ef88f02ac450a042a84":[5,0,4,21], "boot_8php.html#a0e57f846e6d47a308feced0f7274f178":[5,0,4,57], "boot_8php.html#a0e6db7e365f2b041a828b93786f694bc":[5,0,4,15], "boot_8php.html#a0fb63e51c2a9814941842ae8f2f4dff8":[5,0,4,75], -"boot_8php.html#a115faf8797718c3165498abbd6895843":[5,0,4,248], +"boot_8php.html#a115faf8797718c3165498abbd6895843":[5,0,4,249], "boot_8php.html#a12c781cefc20167231e2e3fd5866b1b5":[5,0,4,79], "boot_8php.html#a14ba8f9e162f2559831ee3bf98e0c3bd":[5,0,4,76], -"boot_8php.html#a14d44d4a00223dc3db4ea962325db192":[5,0,4,193], +"boot_8php.html#a14d44d4a00223dc3db4ea962325db192":[5,0,4,194], "boot_8php.html#a176664e78dcb9132e16be69418223eb2":[5,0,4,60], "boot_8php.html#a17b4ea23d9ecf628d9c8f53b7abcb805":[5,0,4,144], "boot_8php.html#a17cf72338b040891781a4bcbdd9a8595":[5,0,4,140], -"boot_8php.html#a181c111f4b6c14d091dfd3bf0d0a22cd":[5,0,4,166], +"boot_8php.html#a181c111f4b6c14d091dfd3bf0d0a22cd":[5,0,4,167], "boot_8php.html#a18a400fa45e5632811b33041d8c048bf":[5,0,4,134], -"boot_8php.html#a1af3ed96de14aa0d7891b39cc75b60f2":[5,0,4,269], -"boot_8php.html#a1ba00027b718db732f30fc0e2c3e0abc":[5,0,4,238], -"boot_8php.html#a1c923b99bf77e4203ae94e5684b6ad0f":[5,0,4,271], -"boot_8php.html#a1d6e7f4c08bb68e4a424326a811bdd86":[5,0,4,170], +"boot_8php.html#a1af3ed96de14aa0d7891b39cc75b60f2":[5,0,4,270], +"boot_8php.html#a1ba00027b718db732f30fc0e2c3e0abc":[5,0,4,239], +"boot_8php.html#a1c923b99bf77e4203ae94e5684b6ad0f":[5,0,4,272], +"boot_8php.html#a1d6e7f4c08bb68e4a424326a811bdd86":[5,0,4,171], "boot_8php.html#a1da180f961f49a11573cac4ff6c62c05":[5,0,4,74], -"boot_8php.html#a1db4f0009c9cb4e107eab0f914a3c8dc":[5,0,4,217], +"boot_8php.html#a1db4f0009c9cb4e107eab0f914a3c8dc":[5,0,4,218], "boot_8php.html#a1f5906598e90b5ea2b4245f682be4348":[5,0,4,102], "boot_8php.html#a1fbb93cf030f07391f22cc2948744869":[5,0,4,151], -"boot_8php.html#a20f0eed431d25870b624b8937a07a59f":[5,0,4,186], -"boot_8php.html#a21cc29e0025943e7c28ff58cb4856ac3":[5,0,4,240], +"boot_8php.html#a20f0eed431d25870b624b8937a07a59f":[5,0,4,187], +"boot_8php.html#a21cc29e0025943e7c28ff58cb4856ac3":[5,0,4,241], "boot_8php.html#a222395aa223cfbff6166fab0b4e2e1d5":[5,0,4,38], "boot_8php.html#a24a7a70afedd5d85fe0eadc85afa9f77":[5,0,4,20], "boot_8php.html#a25476eec71fceda237f7dc1d78b0adb8":[5,0,4,98], "boot_8php.html#a27299ecfb9e9a99826f17a1c14c6995f":[5,0,4,90], -"boot_8php.html#a2750985ec445617d7e82ae3098c91e3f":[5,0,4,251], -"boot_8php.html#a285732e7889fa7f333cbe431111e1029":[5,0,4,189], +"boot_8php.html#a2750985ec445617d7e82ae3098c91e3f":[5,0,4,252], +"boot_8php.html#a285732e7889fa7f333cbe431111e1029":[5,0,4,190], "boot_8php.html#a29528a2544373cc19a378f350040c6a1":[5,0,4,81], "boot_8php.html#a2958a2bd5422b85329d7c36c06dbc221":[5,0,4,126], -"boot_8php.html#a29e921c0c72412cc738e44cca6ca1f62":[5,0,4,215], +"boot_8php.html#a29e921c0c72412cc738e44cca6ca1f62":[5,0,4,216], "boot_8php.html#a2af173e4e9836ee7c90757b4793a2be3":[5,0,4,103], -"boot_8php.html#a2b525996e4426bdddbcec277778bde08":[5,0,4,236], -"boot_8php.html#a2c65e925994566a63e6c03c381f1b4a0":[5,0,4,185], +"boot_8php.html#a2b525996e4426bdddbcec277778bde08":[5,0,4,237], +"boot_8php.html#a2c65e925994566a63e6c03c381f1b4a0":[5,0,4,186], "boot_8php.html#a2c8906f1af94a3559a5b4661067bb79d":[5,0,4,123], "boot_8php.html#a2e90096fede6acce16abf0da8cb2febe":[5,0,4,66], "boot_8php.html#a2f8f25b13480c37a5f22511f53da8bab":[5,0,4,71], -"boot_8php.html#a32df13fec0e43281da5979e1f5579aa8":[5,0,4,222], +"boot_8php.html#a32df13fec0e43281da5979e1f5579aa8":[5,0,4,223], "boot_8php.html#a3475ff6c2e575f946ea0ee377e944173":[5,0,4,138], "boot_8php.html#a34c756469ebed32e2fc987bcde62d382":[5,0,4,40], "boot_8php.html#a3515ea6bf77495de89b93e9ccd881c49":[5,0,4,116], "boot_8php.html#a35625dacd2158b9f1f1a8e77f9f081fd":[5,0,4,153], -"boot_8php.html#a36b31575f992a10b5927b76efba9362e":[5,0,4,275], -"boot_8php.html#a38f6c7fe33b5434a24b4314567753dfa":[5,0,4,174], +"boot_8php.html#a36b31575f992a10b5927b76efba9362e":[5,0,4,276], +"boot_8php.html#a38f6c7fe33b5434a24b4314567753dfa":[5,0,4,175], "boot_8php.html#a3ad9cc5d4354be741fa1de12b96e9955":[5,0,4,105], "boot_8php.html#a3b56bfc6a0dd159070e316ddac3b7456":[5,0,4,110], -"boot_8php.html#a3cd42a70c6b3999590e4fd7a1a9096af":[5,0,4,274], -"boot_8php.html#a3d6d4fc5fafcc9156811669158541caf":[5,0,4,213], +"boot_8php.html#a3cd42a70c6b3999590e4fd7a1a9096af":[5,0,4,275], +"boot_8php.html#a3d6d4fc5fafcc9156811669158541caf":[5,0,4,214], "boot_8php.html#a3e0930933fb2c0bf8211cc7ab4e1c3b4":[5,0,4,12], "boot_8php.html#a3e2ea123d29a72012db1241f96280b0e":[5,0,4,58], "boot_8php.html#a3f40aa5bafff8c4eebdc62e5121daf77":[5,0,4,88], "boot_8php.html#a400519fa181591cd6fdbb8f25fbcba0a":[5,0,4,49], "boot_8php.html#a40d885b2cfd736aab4234ae641ca4dfb":[5,0,4,127], -"boot_8php.html#a423505ab8dbd8e39d04ae3fe1374102b":[5,0,4,207], -"boot_8php.html#a43296b1b4398aacbf92a4b2d56bab91e":[5,0,4,184], +"boot_8php.html#a423505ab8dbd8e39d04ae3fe1374102b":[5,0,4,208], +"boot_8php.html#a43296b1b4398aacbf92a4b2d56bab91e":[5,0,4,185], "boot_8php.html#a43c6c7d84d880e9500bd4f8f8ecc5731":[5,0,4,87], -"boot_8php.html#a444ce608ce34efb82ee11852f36e825f":[5,0,4,160], +"boot_8php.html#a444ce608ce34efb82ee11852f36e825f":[5,0,4,161], "boot_8php.html#a44ae1542a805ffd7f826fb511db07374":[5,0,4,148], "boot_8php.html#a44d069c8a1cfcc6d2007c506a17ff28f":[5,0,4,69], "boot_8php.html#a458e19af801bc4b0d1f1ce1a6d9e857e":[5,0,4,154], -"boot_8php.html#a45b12aefab9675baffc7a07a09486db8":[5,0,4,259], -"boot_8php.html#a49f2a70b3b43aa904223a8d19e986a47":[5,0,4,172], +"boot_8php.html#a45b12aefab9675baffc7a07a09486db8":[5,0,4,260], +"boot_8php.html#a49f2a70b3b43aa904223a8d19e986a47":[5,0,4,173], "boot_8php.html#a4a12ce5de39789b0361e308d89925a20":[5,0,4,101], -"boot_8php.html#a4a49b29838ef2c45ab3556b52baec6a4":[5,0,4,230], -"boot_8php.html#a4bfe22e163657690dfb6d5b1d04cb47e":[5,0,4,171], +"boot_8php.html#a4a49b29838ef2c45ab3556b52baec6a4":[5,0,4,231], +"boot_8php.html#a4bfe22e163657690dfb6d5b1d04cb47e":[5,0,4,172], "boot_8php.html#a4c02d88e66852a01bd5a1feecb7c3ce3":[5,0,4,6], -"boot_8php.html#a4edce16cb7f21cdafa1e85bf63d713e6":[5,0,4,204], -"boot_8php.html#a4fefd7486d3b888a05cfd3dc9575f115":[5,0,4,226], -"boot_8php.html#a505410c7edc5f5bb5fa227b98359793e":[5,0,4,196], +"boot_8php.html#a4edce16cb7f21cdafa1e85bf63d713e6":[5,0,4,205], +"boot_8php.html#a4fefd7486d3b888a05cfd3dc9575f115":[5,0,4,227], +"boot_8php.html#a505410c7edc5f5bb5fa227b98359793e":[5,0,4,197], "boot_8php.html#a525ca93ff35d3535d1a2b8ba57876afa":[5,0,4,152], "boot_8php.html#a52b599cd13e152ebc80d7e4413683195":[5,0,4,39], "boot_8php.html#a53e4bdb6f225da55115acb9277f75e53":[5,0,4,80], "boot_8php.html#a5542c5c2806ab8bca04bad53d47b5209":[5,0,4,32], -"boot_8php.html#a56fd673eaa7014150297ce1162502db5":[5,0,4,188], -"boot_8php.html#a57eee7352714c004d36c26dda74af73e":[5,0,4,225], -"boot_8php.html#a5a681a672e007cdc22b43345d71f07c6":[5,0,4,272], +"boot_8php.html#a56fd673eaa7014150297ce1162502db5":[5,0,4,189], +"boot_8php.html#a57eee7352714c004d36c26dda74af73e":[5,0,4,226], +"boot_8php.html#a5a681a672e007cdc22b43345d71f07c6":[5,0,4,273], "boot_8php.html#a5ab6181607a090bcdbaa13b15b85aba1":[5,0,4,19], "boot_8php.html#a5ae728ac966ea1d3525a19e7fec59434":[5,0,4,59], -"boot_8php.html#a5b043b7fdcfd4e8c9c3747574afc6caa":[5,0,4,178], -"boot_8php.html#a5b8484922918946d041e5e0515dbe718":[5,0,4,200], +"boot_8php.html#a5b043b7fdcfd4e8c9c3747574afc6caa":[5,0,4,179], +"boot_8php.html#a5b8484922918946d041e5e0515dbe718":[5,0,4,201], "boot_8php.html#a5c3747e0f505f0d5271dc4c54e3feaf4":[5,0,4,77], -"boot_8php.html#a5df5359090d1f8e898c36d7cf8878ad2":[5,0,4,158], -"boot_8php.html#a5e322a2a2d0f51924c0b2e874988e640":[5,0,4,201], +"boot_8php.html#a5df5359090d1f8e898c36d7cf8878ad2":[5,0,4,159], +"boot_8php.html#a5e322a2a2d0f51924c0b2e874988e640":[5,0,4,202], "boot_8php.html#a623e49c79943f3e7bdb770d021683cf7":[5,0,4,18], "boot_8php.html#a62c832a95e38b1fa23e6cef39521b7d5":[5,0,4,73], -"boot_8php.html#a64617d4655804de2a3c86501ab4fdbfd":[5,0,4,255], -"boot_8php.html#a6626f383c3d2d459f731ab8b4f237d16":[5,0,4,164], +"boot_8php.html#a64617d4655804de2a3c86501ab4fdbfd":[5,0,4,256], +"boot_8php.html#a6626f383c3d2d459f731ab8b4f237d16":[5,0,4,165], "boot_8php.html#a6788e99021ec8ffb0fa94d651f22a322":[5,0,4,136], "boot_8php.html#a68d1d5bc9c7ccb663dc671b48c66df11":[5,0,4,139], "boot_8php.html#a68eebe493e6f729ffd1aeda7a4b11155":[5,0,4,42], "boot_8php.html#a6969947145a139ec374ce098224d8e81":[5,0,4,142], -"boot_8php.html#a69aac276ed82e010dc382b16ab4d59e1":[5,0,4,242], -"boot_8php.html#a6b14a31a8aa9f3452a13383f413bffa2":[5,0,4,229], -"boot_8php.html#a6b31dd451bc6c37fe7c9c766ff385aaf":[5,0,4,223], +"boot_8php.html#a69aac276ed82e010dc382b16ab4d59e1":[5,0,4,243], +"boot_8php.html#a6b14a31a8aa9f3452a13383f413bffa2":[5,0,4,230], +"boot_8php.html#a6b31dd451bc6c37fe7c9c766ff385aaf":[5,0,4,224], "boot_8php.html#a6b9909db6a7ec80ec6fdd40ba74014dd":[5,0,4,99], "boot_8php.html#a6c5e9e293c8242dcb9bc2c3ea2fee2c9":[5,0,4,91], -"boot_8php.html#a6df1102664f64b274810db85197c2755":[5,0,4,211], +"boot_8php.html#a6df1102664f64b274810db85197c2755":[5,0,4,212], "boot_8php.html#a6e57d913634d033b4d5ad72d99fd3e9d":[5,0,4,125], -"boot_8php.html#a6ee7a72d558d1851bbb9e3cdde377932":[5,0,4,205], -"boot_8php.html#a7176c0f9f1c98421b97735d892cf6252":[5,0,4,241], -"boot_8php.html#a718a801b0be6cbaef5e519516da12721":[5,0,4,157], +"boot_8php.html#a6ee7a72d558d1851bbb9e3cdde377932":[5,0,4,206], +"boot_8php.html#a7176c0f9f1c98421b97735d892cf6252":[5,0,4,242], +"boot_8php.html#a718a801b0be6cbaef5e519516da12721":[5,0,4,158], "boot_8php.html#a719c7f3972d5f9268f37a41c76cd4ef6":[5,0,4,27], -"boot_8php.html#a7236b2cdcf59f02a42302e893a99013b":[5,0,4,179], +"boot_8php.html#a7236b2cdcf59f02a42302e893a99013b":[5,0,4,180], "boot_8php.html#a749144d8dd9c1366596a0213c277d050":[5,0,4,129], "boot_8php.html#a74bf27f7564c9a37975e7b37d973dcab":[5,0,4,70], "boot_8php.html#a75a90b0eadd0df510f7e63210733634d":[5,0,4,2], -"boot_8php.html#a75fc600186b13c3b25e661afefb5eac8":[5,0,4,263], +"boot_8php.html#a75fc600186b13c3b25e661afefb5eac8":[5,0,4,264], "boot_8php.html#a768f00b7d66be0daf7ef4eea2e862006":[5,0,4,4], "boot_8php.html#a774f0f792ebfec1e774c5a17bb9d5966":[5,0,4,72], "boot_8php.html#a781916f83fcc8ff1035649afa45f0292":[5,0,4,85], -"boot_8php.html#a78849a1bf8ce8d9804b4cbb502e8f383":[5,0,4,232], -"boot_8php.html#a7a8ba64d089cc0412c59a2eefc6d655c":[5,0,4,111], -"boot_8php.html#a7aa57438db03834aaa0b468bdce773a6":[5,0,4,63], -"boot_8php.html#a7af107fab8d62b9a73801713b774ed30":[5,0,4,128], -"boot_8php.html#a7b8f8ad9dbe82711257d23891ef6b133":[5,0,4,159], -"boot_8php.html#a7bff2278e68a71e524afd1c7c951e1e3":[5,0,4,67], -"boot_8php.html#a7c286add8961fd2d79216314cd4aadd8":[5,0,4,104], -"boot_8php.html#a7c2eb822d50e1554bf5c32861f36342b":[5,0,4,55], -"boot_8php.html#a7ed4581ab66ebcde97f6b3730856b028":[5,0,4,161], -"boot_8php.html#a7f3474fec541e261fc8dff47313c4017":[5,0,4,46] +"boot_8php.html#a78849a1bf8ce8d9804b4cbb502e8f383":[5,0,4,233] }; diff --git a/doc/html/navtreeindex1.js b/doc/html/navtreeindex1.js index 49fa2193d..24e01a7cc 100644 --- a/doc/html/navtreeindex1.js +++ b/doc/html/navtreeindex1.js @@ -1,45 +1,54 @@ var NAVTREEINDEX1 = { +"boot_8php.html#a7a8ba64d089cc0412c59a2eefc6d655c":[5,0,4,111], +"boot_8php.html#a7aa57438db03834aaa0b468bdce773a6":[5,0,4,63], +"boot_8php.html#a7af107fab8d62b9a73801713b774ed30":[5,0,4,128], +"boot_8php.html#a7b8f8ad9dbe82711257d23891ef6b133":[5,0,4,160], +"boot_8php.html#a7bff2278e68a71e524afd1c7c951e1e3":[5,0,4,67], +"boot_8php.html#a7c286add8961fd2d79216314cd4aadd8":[5,0,4,104], +"boot_8php.html#a7c2eb822d50e1554bf5c32861f36342b":[5,0,4,55], +"boot_8php.html#a7ed4581ab66ebcde97f6b3730856b028":[5,0,4,162], +"boot_8php.html#a7f3474fec541e261fc8dff47313c4017":[5,0,4,46], "boot_8php.html#a7f4264232dbb6c3b41f2617deecb1866":[5,0,4,82], "boot_8php.html#a7fc4b291a7cdaa48b38e27344ea183cf":[5,0,4,114], -"boot_8php.html#a8231d115060d41a9c2a677f2c86f10ed":[5,0,4,198], +"boot_8php.html#a8231d115060d41a9c2a677f2c86f10ed":[5,0,4,199], "boot_8php.html#a84057c5bfa1bca5fba8497fe005ee4d8":[5,0,4,50], "boot_8php.html#a845891f82bf6edd7fa2d578b66703112":[5,0,4,108], "boot_8php.html#a84f48897059bbd4a8738d7ee4cec6688":[5,0,4,54], -"boot_8php.html#a852d4036a3bed66af1534d014c4ecde2":[5,0,4,209], +"boot_8php.html#a852d4036a3bed66af1534d014c4ecde2":[5,0,4,210], "boot_8php.html#a8663f32171568489dbb2a01dd00371f8":[5,0,4,121], "boot_8php.html#a87b0f279f8413c7e4d805c5d85f20d34":[5,0,4,113], -"boot_8php.html#a882b666adfe21f035a0f8c02806066d6":[5,0,4,254], -"boot_8php.html#a8892374789fd261eb32a7969d934a14a":[5,0,4,253], -"boot_8php.html#a8905fde0a5b7882bdc083b20d9b34701":[5,0,4,177], +"boot_8php.html#a882b666adfe21f035a0f8c02806066d6":[5,0,4,255], +"boot_8php.html#a8892374789fd261eb32a7969d934a14a":[5,0,4,254], +"boot_8php.html#a8905fde0a5b7882bdc083b20d9b34701":[5,0,4,178], "boot_8php.html#a899d24fd074594ceebbf72e1feff335f":[5,0,4,16], "boot_8php.html#a8a60cc38bb567765fd926fef70205f16":[5,0,4,96], -"boot_8php.html#a8b2af16eaee9e7768a88d0e437877f3b":[5,0,4,206], -"boot_8php.html#a8bb0395933b5e886f086f6a2fb0bfa55":[5,0,4,227], +"boot_8php.html#a8b2af16eaee9e7768a88d0e437877f3b":[5,0,4,207], +"boot_8php.html#a8bb0395933b5e886f086f6a2fb0bfa55":[5,0,4,228], "boot_8php.html#a8c9dce0ef27b35397e29298eb966f7f7":[5,0,4,124], "boot_8php.html#a8da836617174eed9fc2ac8054125354b":[5,0,4,118], -"boot_8php.html#a8df201788c9dd0ca91384e3a14c08bce":[5,0,4,234], -"boot_8php.html#a8fdcc4ffb365a3267bd02ce8a8d466d6":[5,0,4,270], +"boot_8php.html#a8df201788c9dd0ca91384e3a14c08bce":[5,0,4,235], +"boot_8php.html#a8fdcc4ffb365a3267bd02ce8a8d466d6":[5,0,4,271], "boot_8php.html#a9255af5ae9c887520091ea04763c1a88":[5,0,4,30], "boot_8php.html#a926cad0b3d8b9d9ee5da1898fc063ba3":[5,0,4,11], "boot_8php.html#a93823d15ae07548a4c49de88d325cd26":[5,0,4,143], "boot_8php.html#a939de9a99278f4fd7dcd0ee67f243f08":[5,0,4,122], "boot_8php.html#a949116d9a295b214293006c060ca4848":[5,0,4,120], -"boot_8php.html#a9690d73434125ce594a1f5e7c2a4f7c0":[5,0,4,265], -"boot_8php.html#a96ad56755a21e1361dbd7bf93c9e7ff4":[5,0,4,239], +"boot_8php.html#a9690d73434125ce594a1f5e7c2a4f7c0":[5,0,4,266], +"boot_8php.html#a96ad56755a21e1361dbd7bf93c9e7ff4":[5,0,4,240], "boot_8php.html#a97769915c9f14adc4f8ab1ea2cecfd90":[5,0,4,17], -"boot_8php.html#a981d46380f9f23c308bac1f9cb00dc5b":[5,0,4,191], -"boot_8php.html#a99a4a17cb644e7e6826ea07ecaf09777":[5,0,4,228], +"boot_8php.html#a981d46380f9f23c308bac1f9cb00dc5b":[5,0,4,192], +"boot_8php.html#a99a4a17cb644e7e6826ea07ecaf09777":[5,0,4,229], "boot_8php.html#a9c80420e5a063a4a87ce4831f086134d":[5,0,4,45], "boot_8php.html#a9cbab4ee728e9a8b4ce952bae643044e":[5,0,4,5], -"boot_8php.html#a9cc986b4f9dd6558cbb2e25aadbfd964":[5,0,4,220], -"boot_8php.html#a9d01ef178b72b145016cca1393415bc4":[5,0,4,192], -"boot_8php.html#a9ea1290e00c6d40684892047f2c778a9":[5,0,4,268], -"boot_8php.html#a9eeb8989272d5ff804a616898bb13659":[5,0,4,256], -"boot_8php.html#a9ff652e5cb83cd11cbb0350844e7b28f":[5,0,4,219], -"boot_8php.html#aa17a4f9c63f5cbc5c06f1066b6aebc42":[5,0,4,180], +"boot_8php.html#a9cc986b4f9dd6558cbb2e25aadbfd964":[5,0,4,221], +"boot_8php.html#a9d01ef178b72b145016cca1393415bc4":[5,0,4,193], +"boot_8php.html#a9ea1290e00c6d40684892047f2c778a9":[5,0,4,269], +"boot_8php.html#a9eeb8989272d5ff804a616898bb13659":[5,0,4,257], +"boot_8php.html#a9ff652e5cb83cd11cbb0350844e7b28f":[5,0,4,220], +"boot_8php.html#aa17a4f9c63f5cbc5c06f1066b6aebc42":[5,0,4,181], "boot_8php.html#aa1e828bbbcba170265eb2668d8daf42e":[5,0,4,24], -"boot_8php.html#aa275653b9c87abc7391bb8040c1c2de9":[5,0,4,199], +"boot_8php.html#aa275653b9c87abc7391bb8040c1c2de9":[5,0,4,200], "boot_8php.html#aa3425e2de85b08f7041656d3a8502cb6":[5,0,4,41], "boot_8php.html#aa3679df31c8dad1b71816b0322d5baff":[5,0,4,150], "boot_8php.html#aa4221641e5c21db69fa52c426b9017f5":[5,0,4,9], @@ -47,98 +56,99 @@ var NAVTREEINDEX1 = "boot_8php.html#aa589421267f0c2f0d643f727792cce35":[5,0,4,107], "boot_8php.html#aa74438cf71e48e37bf7b440b94243985":[5,0,4,84], "boot_8php.html#aa8a2b61e70900139d1ca28e46f1da49d":[5,0,4,93], -"boot_8php.html#aa9244fc9cc221980c07a20cc534111be":[5,0,4,224], +"boot_8php.html#aa9244fc9cc221980c07a20cc534111be":[5,0,4,225], "boot_8php.html#aad33b494084f729b6ee3b0bc457718a1":[5,0,4,133], -"boot_8php.html#aae6c941bde5fd6fce07e51dba7326ead":[5,0,4,208], +"boot_8php.html#aae6c941bde5fd6fce07e51dba7326ead":[5,0,4,209], "boot_8php.html#aaf9b76832ee5f85e56466af162ba8a14":[5,0,4,64], -"boot_8php.html#ab21fb0f3e6b962419955c6fc7f26734f":[5,0,4,183], +"boot_8php.html#ab21fb0f3e6b962419955c6fc7f26734f":[5,0,4,184], "boot_8php.html#ab28dc518fa90b6f617dd8c564eb4f35f":[5,0,4,112], -"boot_8php.html#ab2d0e8a9b81ee548ef2ce8e4560da2f6":[5,0,4,210], +"boot_8php.html#ab2d0e8a9b81ee548ef2ce8e4560da2f6":[5,0,4,211], "boot_8php.html#ab346a2ece14993861f3e4206befa94f0":[5,0,4,31], -"boot_8php.html#ab3920c2f3cd64802c0b7ff625c3b2ea8":[5,0,4,203], -"boot_8php.html#ab4bc9c50ecc927b92d519e36562b0df0":[5,0,4,231], -"boot_8php.html#ab4bddb41a0cf407178ec5278b950c393":[5,0,4,176], -"boot_8php.html#ab51965fabe54dc031e9a0ce1142ee83e":[5,0,4,214], +"boot_8php.html#ab3920c2f3cd64802c0b7ff625c3b2ea8":[5,0,4,204], +"boot_8php.html#ab4bc9c50ecc927b92d519e36562b0df0":[5,0,4,232], +"boot_8php.html#ab4bddb41a0cf407178ec5278b950c393":[5,0,4,177], +"boot_8php.html#ab51965fabe54dc031e9a0ce1142ee83e":[5,0,4,215], "boot_8php.html#ab54b24cc302e1a42a67a49d788b6b764":[5,0,4,106], "boot_8php.html#ab55b16ae7fc19fafe5afaedd49163bbf":[5,0,4,135], "boot_8php.html#ab5ddbe69d3d03acd06e1fb281488cb78":[5,0,4,52], -"boot_8php.html#ab724491497ab2618b23a01d5da60aec0":[5,0,4,194], +"boot_8php.html#ab724491497ab2618b23a01d5da60aec0":[5,0,4,195], "boot_8php.html#ab79b8b4555cae20d03f8200666d89d63":[5,0,4,7], "boot_8php.html#ab7d65a7e7417825a4db62906bb600729":[5,0,4,95], "boot_8php.html#aba208673515cbb8a55e5fa4a1da99fda":[5,0,4,36], -"boot_8php.html#abbf5ac24eb8aeedb862f618ee0d21e86":[5,0,4,235], +"boot_8php.html#abbf5ac24eb8aeedb862f618ee0d21e86":[5,0,4,236], "boot_8php.html#abc0a90a1a77f5b668aa7e4b57d1776a7":[5,0,4,3], -"boot_8php.html#abd7bb40da9cc073297e49736b338ca07":[5,0,4,260], +"boot_8php.html#abd7bb40da9cc073297e49736b338ca07":[5,0,4,261], "boot_8php.html#abdcdfc873ace4e0902177bad934de0c0":[5,0,4,62], "boot_8php.html#abeb4d86e17cefa8584f1244e2183b0e1":[5,0,4,109], "boot_8php.html#abedd940e664017c61b48c6efa31d0cb8":[5,0,4,94], "boot_8php.html#ac01230c7655e0705b2e99c9bc03c4450":[5,0,4,119], "boot_8php.html#ac17fc8a416ea79e9d5cb4dc9a8ff8c5c":[5,0,4,23], -"boot_8php.html#ac195fc9003298923ea81f144388e24b1":[5,0,4,162], -"boot_8php.html#ac43182e0d8bae7576a30b603774974f8":[5,0,4,233], +"boot_8php.html#ac195fc9003298923ea81f144388e24b1":[5,0,4,163], +"boot_8php.html#ac43182e0d8bae7576a30b603774974f8":[5,0,4,234], "boot_8php.html#ac59a18a4838710d6c2de37aed6b21f03":[5,0,4,92], "boot_8php.html#ac5e74f899f6e98d8e91b14ba1c08bc08":[5,0,4,25], "boot_8php.html#ac608a34f3bc180e7724192e0fd31f9b0":[5,0,4,34], "boot_8php.html#ac8400313df2c831653f9036f71ebd86d":[5,0,4,53], -"boot_8php.html#ac86615ddc0763a00f5311c90e991730c":[5,0,4,266], +"boot_8php.html#ac86615ddc0763a00f5311c90e991730c":[5,0,4,267], "boot_8php.html#ac890557fedc5b5a3b1d996249b1e1a20":[5,0,4,115], "boot_8php.html#ac99fc4d040764eac1736bec6973556fe":[5,0,4,117], -"boot_8php.html#aca08bc4f1554ba877500f6abcc99e1e8":[5,0,4,190], +"boot_8php.html#aca08bc4f1554ba877500f6abcc99e1e8":[5,0,4,191], "boot_8php.html#aca47505b8732177f52bb2d647eb2741c":[5,0,4,33], "boot_8php.html#aca5e42678e178c6b9034610d66666fd7":[5,0,4,13], "boot_8php.html#acc4e0c910af066148b810e5fde55fff1":[5,0,4,8], -"boot_8php.html#acca19aae62e1a6951a856b945de20d67":[5,0,4,165], -"boot_8php.html#accd6f36cc9f40225cbd720e4d12a7c6e":[5,0,4,267], -"boot_8php.html#acd877c405b06b348b37b6f7e62a211e9":[5,0,4,221], -"boot_8php.html#ace83842dbeb84f7ed9ac59a9f57a7c32":[5,0,4,197], +"boot_8php.html#acca19aae62e1a6951a856b945de20d67":[5,0,4,166], +"boot_8php.html#accd6f36cc9f40225cbd720e4d12a7c6e":[5,0,4,268], +"boot_8php.html#acd877c405b06b348b37b6f7e62a211e9":[5,0,4,222], +"boot_8php.html#ace83842dbeb84f7ed9ac59a9f57a7c32":[5,0,4,198], "boot_8php.html#aced60c7285192e80b7c4757e45a7f1e3":[5,0,4,61], "boot_8php.html#ad0876e837cf3fad8a26417e315f6e2c8":[5,0,4,146], -"boot_8php.html#ad11f30a6590d3d77f0c5e1e3909af8f5":[5,0,4,155], +"boot_8php.html#ad11f30a6590d3d77f0c5e1e3909af8f5":[5,0,4,156], "boot_8php.html#ad206598b909e8eb67eb0e0bb5ef69c13":[5,0,4,10], "boot_8php.html#ad302cb26b838898d475f57f61b0fcc9f":[5,0,4,68], "boot_8php.html#ad34c1547020a305915bcc39707744690":[5,0,4,83], "boot_8php.html#ad4c9dc2c8a82e8f52b7404c1655eab44":[5,0,4,28], -"boot_8php.html#ad789aef3cb95fc1eb36be7c4283d0137":[5,0,4,216], -"boot_8php.html#ad8887b49bbb02dd30b4eb9f6c7773c63":[5,0,4,243], -"boot_8php.html#ad88a70ec62e08d590123d3697dfe64d5":[5,0,4,237], +"boot_8php.html#ad789aef3cb95fc1eb36be7c4283d0137":[5,0,4,217], +"boot_8php.html#ad8887b49bbb02dd30b4eb9f6c7773c63":[5,0,4,244], +"boot_8php.html#ad88a70ec62e08d590123d3697dfe64d5":[5,0,4,238], "boot_8php.html#ada72d88ae39a7e3b45baea201cb49a29":[5,0,4,89], "boot_8php.html#adaeb4f590c56326b2dca3b19f31b6272":[5,0,4,130], -"boot_8php.html#adca48aee78465ae3064ca4432c0d87b5":[5,0,4,246], +"boot_8php.html#adca48aee78465ae3064ca4432c0d87b5":[5,0,4,247], "boot_8php.html#add517a0958ac684792c62142a3877f81":[5,0,4,37], "boot_8php.html#adfb2fc7be5a4226c0a8e24131da9d498":[5,0,4,22], -"boot_8php.html#ae37444eaa42705185080ccf3e670cbc2":[5,0,4,252], -"boot_8php.html#ae3cef7b63e25e7bafea3fcf6b99fad0e":[5,0,4,173], +"boot_8php.html#ae37444eaa42705185080ccf3e670cbc2":[5,0,4,253], +"boot_8php.html#ae3cef7b63e25e7bafea3fcf6b99fad0e":[5,0,4,174], "boot_8php.html#ae4861de36017fe399c1839f778bad9f5":[5,0,4,149], -"boot_8php.html#ae94f7c7c0909629a75aed1c41f10bc95":[5,0,4,181], -"boot_8php.html#aea392cb26ed617f3a8cde648385b5df0":[5,0,4,264], +"boot_8php.html#ae94f7c7c0909629a75aed1c41f10bc95":[5,0,4,182], +"boot_8php.html#aea392cb26ed617f3a8cde648385b5df0":[5,0,4,265], "boot_8php.html#aea7fc57a4d8e9dcb42f2601b0b9b761c":[5,0,4,26], -"boot_8php.html#aead84fa27d7516b855220fe004964a45":[5,0,4,257], +"boot_8php.html#aead84fa27d7516b855220fe004964a45":[5,0,4,258], "boot_8php.html#aeb1039302affcbe7e8872c01c08c88f8":[5,0,4,47], -"boot_8php.html#aec36f8fcd4cb14a52934590b3d6666b4":[5,0,4,218], -"boot_8php.html#aecaa1b6945b317ba8f1daf4af2aed8e6":[5,0,4,247], -"boot_8php.html#aed0dfb35f7dd00dc9e4f868ea7f7ff53":[5,0,4,156], +"boot_8php.html#aec36f8fcd4cb14a52934590b3d6666b4":[5,0,4,219], +"boot_8php.html#aecaa1b6945b317ba8f1daf4af2aed8e6":[5,0,4,248], +"boot_8php.html#aed0dfb35f7dd00dc9e4f868ea7f7ff53":[5,0,4,157], "boot_8php.html#aedfb9501ed408278667995524e0d15cf":[5,0,4,97], -"boot_8php.html#aee324eca9de4e0fedf01ab5f92e27c67":[5,0,4,168], -"boot_8php.html#aef4b6c558c68c88c10f13c5a00c20e3d":[5,0,4,182], +"boot_8php.html#aee324eca9de4e0fedf01ab5f92e27c67":[5,0,4,169], +"boot_8php.html#aef4b6c558c68c88c10f13c5a00c20e3d":[5,0,4,183], "boot_8php.html#aefba06f1c0842036329033e7567ecf6d":[5,0,4,132], "boot_8php.html#aefecf8599036df7f1b95d6820e0e2fa4":[5,0,4,29], -"boot_8php.html#af33d1b2e98a1e21af672005525d46dfe":[5,0,4,249], -"boot_8php.html#af3905ea8f8568d0236db13fca40514e3":[5,0,4,175], +"boot_8php.html#af33d1b2e98a1e21af672005525d46dfe":[5,0,4,250], +"boot_8php.html#af3905ea8f8568d0236db13fca40514e3":[5,0,4,176], "boot_8php.html#af3a4271630aabd8be592213f925d6a36":[5,0,4,56], "boot_8php.html#af3bdfc20979c16f15bb9c60446a480f9":[5,0,4,48], "boot_8php.html#af489d0c3166551b93e63a79ff2c9be35":[5,0,4,137], -"boot_8php.html#af6937db5f581d006bf4a5c3d9c7e0461":[5,0,4,195], +"boot_8php.html#af6937db5f581d006bf4a5c3d9c7e0461":[5,0,4,196], +"boot_8php.html#af6b3de425e5849c73370a484c44607a3":[5,0,4,155], "boot_8php.html#af6f6f6f40139f12fc09ec47373b30919":[5,0,4,86], -"boot_8php.html#af86c651547aa8f9e549ee40a09455549":[5,0,4,245], -"boot_8php.html#af8c0cb0744c9a6b5d6d3baafb1f1e71d":[5,0,4,187], -"boot_8php.html#afaf93b7026f784b113b4f8921745891e":[5,0,4,169], -"boot_8php.html#afb97615e985a013799839b68b99018d7":[5,0,4,250], +"boot_8php.html#af86c651547aa8f9e549ee40a09455549":[5,0,4,246], +"boot_8php.html#af8c0cb0744c9a6b5d6d3baafb1f1e71d":[5,0,4,188], +"boot_8php.html#afaf93b7026f784b113b4f8921745891e":[5,0,4,170], +"boot_8php.html#afb97615e985a013799839b68b99018d7":[5,0,4,251], "boot_8php.html#afbb1fe1b2c8c730ec8e08da93b6512c4":[5,0,4,44], "boot_8php.html#afe084c30a1810c10442edb4fbcbc0086":[5,0,4,78], "boot_8php.html#afe63ae69ba55299f813766e54df06ede":[5,0,4,141], "boot_8php.html#afe88b920aa285982edb817a0dd44eb37":[5,0,4,14], -"boot_8php.html#afef254290febac854c85fc698d9483a6":[5,0,4,273], -"boot_8php.html#aff210e8403dd72368522b17fb6e5d4e7":[5,0,4,212], +"boot_8php.html#afef254290febac854c85fc698d9483a6":[5,0,4,274], +"boot_8php.html#aff210e8403dd72368522b17fb6e5d4e7":[5,0,4,213], "cache_8php.html":[5,0,0,12], "channel_8php.html":[5,0,1,10], "channel_8php.html#a9c6a6179e0e626398ebecc6151905ef1":[5,0,1,10,0], @@ -239,15 +249,5 @@ var NAVTREEINDEX1 = "classApp.html#aeb1fe1c8ad9aa639909bd183ce578536":[4,0,5,18], "classApp.html#aeca29fd4f7192ca07369b3c598c36e67":[4,0,5,84], "classApp.html#af17df107f2216ddf5ad2a7e0f2ba2166":[4,0,5,15], -"classApp.html#af5007c42a693afd9c4899c243b2e1363":[4,0,5,49], -"classApp.html#af58db526040829b1c8bd95561b329262":[4,0,5,34], -"classApp.html#af6d39f63fb7116bbeb04e51696f99474":[4,0,5,0], -"classBaseObject.html":[4,0,6], -"classBaseObject.html#ac43f10e69ce80c78e4870636250fc8a2":[4,0,6,0], -"classCache.html":[4,0,7], -"classConversation.html":[4,0,8], -"classConversation.html#a2a96b7a6573ae53db861624659e831cb":[4,0,8,6], -"classConversation.html#a2f12724ef0244e9049fe1bb9641b516d":[4,0,8,19], -"classConversation.html#a41f4a549e6a99f98935c4742addd22c8":[4,0,8,20], -"classConversation.html#a4aab60bb39fa6761b6cacdc8d9da2901":[4,0,8,2] +"classApp.html#af5007c42a693afd9c4899c243b2e1363":[4,0,5,49] }; diff --git a/doc/html/navtreeindex2.js b/doc/html/navtreeindex2.js index 99e602486..fd512a2fc 100644 --- a/doc/html/navtreeindex2.js +++ b/doc/html/navtreeindex2.js @@ -1,5 +1,15 @@ var NAVTREEINDEX2 = { +"classApp.html#af58db526040829b1c8bd95561b329262":[4,0,5,34], +"classApp.html#af6d39f63fb7116bbeb04e51696f99474":[4,0,5,0], +"classBaseObject.html":[4,0,6], +"classBaseObject.html#ac43f10e69ce80c78e4870636250fc8a2":[4,0,6,0], +"classCache.html":[4,0,7], +"classConversation.html":[4,0,8], +"classConversation.html#a2a96b7a6573ae53db861624659e831cb":[4,0,8,6], +"classConversation.html#a2f12724ef0244e9049fe1bb9641b516d":[4,0,8,19], +"classConversation.html#a41f4a549e6a99f98935c4742addd22c8":[4,0,8,20], +"classConversation.html#a4aab60bb39fa6761b6cacdc8d9da2901":[4,0,8,2], "classConversation.html#a4cff75d8c46b517e7133e4d0da6fc1c8":[4,0,8,7], "classConversation.html#a5879199008b96bee7550b576d614e1c1":[4,0,8,10], "classConversation.html#a5b6adbb2fe24f0f53d6c22660dff91b2":[4,0,8,17], @@ -239,15 +249,5 @@ var NAVTREEINDEX2 = "classphoto__gd.html#a1c75304bd15f3b9986f0b315fb59271e":[4,0,20,8], "classphoto__gd.html#a2f2e5900e6d8b1667892ac631b1d4754":[4,0,20,2], "classphoto__gd.html#a33092b889875b68bfb1c97ff123012d9":[4,0,20,6], -"classphoto__gd.html#a44cedef376044018702d9355ddc813ce":[4,0,20,3], -"classphoto__gd.html#a724703ecf71b1f1d04a80e86c76db6b1":[4,0,20,1], -"classphoto__gd.html#a77f87730b11093b76980c541159df37d":[4,0,20,7], -"classphoto__gd.html#a86757ba021fd80d1a5cf8c2f766a8484":[4,0,20,4], -"classphoto__gd.html#ab2232d775c8bacf66773a03308105f0c":[4,0,20,0], -"classphoto__imagick.html":[4,0,21], -"classphoto__imagick.html#a27596faca6108d9d563674d1b654a0b7":[4,0,21,10], -"classphoto__imagick.html#a2c9168f110ccd6c264095d766615dfa8":[4,0,21,7], -"classphoto__imagick.html#a2f33a03a89497a2b2768e29736d4a8a4":[4,0,21,0], -"classphoto__imagick.html#a3047c68bb4de7f66c2893fe451db2b66":[4,0,21,2], -"classphoto__imagick.html#a70adbef31128c0ac8cbc5dcf34cdb019":[4,0,21,6] +"classphoto__gd.html#a44cedef376044018702d9355ddc813ce":[4,0,20,3] }; diff --git a/doc/html/navtreeindex3.js b/doc/html/navtreeindex3.js index 9816afbf7..517ae9bab 100644 --- a/doc/html/navtreeindex3.js +++ b/doc/html/navtreeindex3.js @@ -1,5 +1,15 @@ var NAVTREEINDEX3 = { +"classphoto__gd.html#a724703ecf71b1f1d04a80e86c76db6b1":[4,0,20,1], +"classphoto__gd.html#a77f87730b11093b76980c541159df37d":[4,0,20,7], +"classphoto__gd.html#a86757ba021fd80d1a5cf8c2f766a8484":[4,0,20,4], +"classphoto__gd.html#ab2232d775c8bacf66773a03308105f0c":[4,0,20,0], +"classphoto__imagick.html":[4,0,21], +"classphoto__imagick.html#a27596faca6108d9d563674d1b654a0b7":[4,0,21,10], +"classphoto__imagick.html#a2c9168f110ccd6c264095d766615dfa8":[4,0,21,7], +"classphoto__imagick.html#a2f33a03a89497a2b2768e29736d4a8a4":[4,0,21,0], +"classphoto__imagick.html#a3047c68bb4de7f66c2893fe451db2b66":[4,0,21,2], +"classphoto__imagick.html#a70adbef31128c0ac8cbc5dcf34cdb019":[4,0,21,6], "classphoto__imagick.html#a9df5738a4a18e76dd304c440e96f045f":[4,0,21,8], "classphoto__imagick.html#ad07288e0eb3922cb08cc9d33a163decc":[4,0,21,5], "classphoto__imagick.html#aef020d929f66f4370e33fc158c8eebd4":[4,0,21,4], @@ -15,10 +25,10 @@ var NAVTREEINDEX3 = "comanche_8php.html":[5,0,0,17], "comanche_8php.html#a028f004d5b8c23d6367816d899e17cfe":[5,0,0,17,4], "comanche_8php.html#a1a208fdb40dd83d6298caec4290ee922":[5,0,0,17,2], -"comanche_8php.html#a1fe339e1454803aa502ac89379c17f5b":[5,0,0,17,1], "comanche_8php.html#a5718daeda40bf835345fe061e8808cdf":[5,0,0,17,3], "comanche_8php.html#a5a7ab801717d38e91ac910b933973887":[5,0,0,17,0], "comanche_8php.html#a6b0191c1a63db1696a2eb139d90d9e7f":[5,0,0,17,6], +"comanche_8php.html#ad5a44e42231759aba1dda49e0490501e":[5,0,0,17,1], "comanche_8php.html#ae9fe1ce574db3dd0931eada80234f82a":[5,0,0,17,5], "comanche_8php.html#af7150df735e5ff9d467994cd6f769c6e":[5,0,0,17,7], "common_8php.html":[5,0,1,15], @@ -93,9 +103,9 @@ var NAVTREEINDEX3 = "crypto_8php.html#aca7c3a574bfb6c6ef1f2403a56823914":[5,0,0,25,3], "crypto_8php.html#ad5e51fd44cff93cfaa07a37e24a5edec":[5,0,0,25,7], "dark_8php.html":[5,0,3,2,2,1,0], -"darkness_8php.html":[5,0,3,2,0,1,0], -"darknessleftaside_8php.html":[5,0,3,2,0,1,1], -"darknessrightaside_8php.html":[5,0,3,2,0,1,2], +"darkness_8php.html":[5,0,3,2,0,2,0], +"darknessleftaside_8php.html":[5,0,3,2,0,2,1], +"darknessrightaside_8php.html":[5,0,3,2,0,2,2], "datetime_8php.html":[5,0,0,26], "datetime_8php.html#a03900dcf0f9e3c58793a031673a70326":[5,0,0,26,6], "datetime_8php.html#a36d3d6dff8d76b5f295bb3d9c535a5b1":[5,0,0,26,11], @@ -128,7 +138,7 @@ var NAVTREEINDEX3 = "deliver_8php.html":[5,0,0,27], "deliver_8php.html#a397afcb9afecf0c1816b0951189dd346":[5,0,0,27,0], "dir_032dd9e2cfe278a2cfa5eb9547448eb9.html":[5,0,3,2,2,0], -"dir_05f4fba29266e8fd7869afcd6cefb5cb.html":[5,0,3,2,0,1], +"dir_05f4fba29266e8fd7869afcd6cefb5cb.html":[5,0,3,2,0,2], "dir_0eaa4a0adae8ba4811e133c6e594aeee.html":[5,0,2,0], "dir_21bc5169ff11430004758be31dcfc6c4.html":[5,0,0,0], "dir_23ec12649285f9fabf3a6b7380226c28.html":[5,0,2], @@ -153,10 +163,11 @@ var NAVTREEINDEX3 = "dir_aae29906d7bfc07d076125f669c8352e.html":[5,0,0,1], "dir_b2f003339c516cc00c8cadcafbe82f13.html":[5,0,3], "dir_c02447ad39a5307c81c64e880ec9e8d3.html":[5,0,3,2,1,0], -"dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html":[5,0,3,2,0,0], +"dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html":[5,0,3,2,0,1], "dir_d41ce877eb409a4791b288730010abe2.html":[5,0,1], "dir_d44c64559bbebec7f509842c48db8b23.html":[5,0,0], "dir_d520c5cf583201d9437764f209363c22.html":[5,0,3,2,0], +"dir_f19da925ee886ec38f19b0e8c19779bc.html":[5,0,3,2,0,0], "dirprofile_8php.html":[5,0,1,23], "dirprofile_8php.html#a3e1d30d3d93863ff5615f2df4ac7f052":[5,0,1,23,0], "dirsearch_8php.html":[5,0,1,24], @@ -238,16 +249,5 @@ var NAVTREEINDEX3 = "friendica-to-smarty-tpl_8py.html#ad9ef87ccb2c9960501f5e02424a22d80":[5,0,2,5,9], "friendica-to-smarty-tpl_8py.html#ae74419b16516956c66f7db714a93a6ac":[5,0,2,5,7], "friendica-to-smarty-tpl_8py.html#aecf730e0884bb4ddc6c0deb1ef85f8eb":[5,0,2,5,4], -"friendica-to-smarty-tpl_8py.html#af6b2c793958aae2aadc294577431f749":[5,0,2,5,3], -"friendica__smarty_8php.html":[5,0,0,35], -"fsuggest_8php.html":[5,0,1,37], -"fsuggest_8php.html#a61ecfe10ce937ed526614f8fd3de3c7d":[5,0,1,37,1], -"fsuggest_8php.html#aa6c49ed4b50a387f1845f36844dd7998":[5,0,1,37,0], -"full_8php.html":[5,0,3,1,1], -"full_8php.html#a6fac1b4b8cdfde06ea1b7713479e92db":[5,0,3,1,1,0], -"functions.html":[4,3,0], -"functions.html":[4,3,0,0], -"functions_0x5f.html":[4,3,0,1], -"functions_0x61.html":[4,3,0,2], -"functions_0x62.html":[4,3,0,3] +"friendica-to-smarty-tpl_8py.html#af6b2c793958aae2aadc294577431f749":[5,0,2,5,3] }; diff --git a/doc/html/navtreeindex4.js b/doc/html/navtreeindex4.js index 4b882f43c..ed4267c51 100644 --- a/doc/html/navtreeindex4.js +++ b/doc/html/navtreeindex4.js @@ -1,5 +1,16 @@ var NAVTREEINDEX4 = { +"friendica__smarty_8php.html":[5,0,0,35], +"fsuggest_8php.html":[5,0,1,37], +"fsuggest_8php.html#a61ecfe10ce937ed526614f8fd3de3c7d":[5,0,1,37,1], +"fsuggest_8php.html#aa6c49ed4b50a387f1845f36844dd7998":[5,0,1,37,0], +"full_8php.html":[5,0,3,1,1], +"full_8php.html#a6fac1b4b8cdfde06ea1b7713479e92db":[5,0,3,1,1,0], +"functions.html":[4,3,0], +"functions.html":[4,3,0,0], +"functions_0x5f.html":[4,3,0,1], +"functions_0x61.html":[4,3,0,2], +"functions_0x62.html":[4,3,0,3], "functions_0x63.html":[4,3,0,4], "functions_0x64.html":[4,3,0,5], "functions_0x65.html":[4,3,0,6], @@ -16,6 +27,8 @@ var NAVTREEINDEX4 = "functions_0x73.html":[4,3,0,17], "functions_0x74.html":[4,3,0,18], "functions_0x76.html":[4,3,0,19], +"functions_8php.html":[5,0,3,2,0,1,1], +"functions_8php.html#adefe514c95680928b3aae250cbc3c663":[5,0,3,2,0,1,1,0], "functions_func.html":[4,3,1], "functions_func.html":[4,3,1,0], "functions_func_0x61.html":[4,3,1,1], @@ -65,8 +78,8 @@ var NAVTREEINDEX4 = "globals_0x77.html":[5,1,0,24], "globals_0x78.html":[5,1,0,25], "globals_0x7a.html":[5,1,0,26], -"globals_func.html":[5,1,1], "globals_func.html":[5,1,1,0], +"globals_func.html":[5,1,1], "globals_func_0x61.html":[5,1,1,1], "globals_func_0x62.html":[5,1,1,2], "globals_func_0x63.html":[5,1,1,3], @@ -117,7 +130,7 @@ var NAVTREEINDEX4 = "globals_vars_0x7a.html":[5,1,2,21], "gprobe_8php.html":[5,0,0,36], "gprobe_8php.html#adf72cb0a70b5b9d99fdec1cc60e18ed1":[5,0,0,36,0], -"greenthumbnails_8php.html":[5,0,3,2,0,1,3], +"greenthumbnails_8php.html":[5,0,3,2,0,2,3], "help_8php.html":[5,0,1,39], "help_8php.html#a06b2a51aaabed99e53a9b639047c4ce4":[5,0,1,39,1], "help_8php.html#af055e15f600ffa6fbca9386fdf715224":[5,0,1,39,0], @@ -233,21 +246,8 @@ var NAVTREEINDEX4 = "include_2attach_8php.html#ad991208ce939387e2f93a3bce7d09932":[5,0,0,6,1], "include_2attach_8php.html#aeb07968990e66a88c95483ca09a7f909":[5,0,0,6,11], "include_2bookmarks_8php.html":[5,0,0,11], -"include_2bookmarks_8php.html#a88ce7dee6a3dc7465aa9b8eaa45b0087":[5,0,0,11,0], +"include_2bookmarks_8php.html#a743763b0ce83af0bbc8a2f7ac16033aa":[5,0,0,11,1], +"include_2bookmarks_8php.html#aef1cb2968c41c759f2d106e1088ca323":[5,0,0,11,0], "include_2chanman_8php.html":[5,0,0,13], -"include_2chanman_8php.html#a21ba9a5c961e866ff27aee3ee67bf99b":[5,0,0,13,0], -"include_2chat_8php.html":[5,0,0,14], -"include_2chat_8php.html#a1ee1360f7d2549c7549ae07cb5190f0f":[5,0,0,14,3], -"include_2chat_8php.html#a2ba3af6884ecdce95de69262fe599639":[5,0,0,14,1], -"include_2chat_8php.html#a2c95b545e46bfee64faa05ecf0afea91":[5,0,0,14,2], -"include_2chat_8php.html#acdc80dba4eb796c7472b21129b435422":[5,0,0,14,0], -"include_2chat_8php.html#aedcb532a0627b8644001a2fadab4e87a":[5,0,0,14,4], -"include_2config_8php.html":[5,0,0,18], -"include_2config_8php.html#a27559f388c9b9af81c94e48d6889d1d1":[5,0,0,18,7], -"include_2config_8php.html#a549910227348003efc3c05c9105c42da":[5,0,0,18,0], -"include_2config_8php.html#a55bbed9a014c9109c767486834f3ca33":[5,0,0,18,9], -"include_2config_8php.html#a61591371cb18764138655d67dc817ab2":[5,0,0,18,11], -"include_2config_8php.html#a7ad2081c5f812ac4387fd76f3762d941":[5,0,0,18,1], -"include_2config_8php.html#a9c171def547deee16738dc58fdeb4b72":[5,0,0,18,2], -"include_2config_8php.html#aa3dc1d3de2d091ac702e675acd3a085e":[5,0,0,18,6] +"include_2chanman_8php.html#a21ba9a5c961e866ff27aee3ee67bf99b":[5,0,0,13,0] }; diff --git a/doc/html/navtreeindex5.js b/doc/html/navtreeindex5.js index 59be36460..de01d01f2 100644 --- a/doc/html/navtreeindex5.js +++ b/doc/html/navtreeindex5.js @@ -1,5 +1,19 @@ var NAVTREEINDEX5 = { +"include_2chat_8php.html":[5,0,0,14], +"include_2chat_8php.html#a1ee1360f7d2549c7549ae07cb5190f0f":[5,0,0,14,3], +"include_2chat_8php.html#a2ba3af6884ecdce95de69262fe599639":[5,0,0,14,1], +"include_2chat_8php.html#a2c95b545e46bfee64faa05ecf0afea91":[5,0,0,14,2], +"include_2chat_8php.html#acdc80dba4eb796c7472b21129b435422":[5,0,0,14,0], +"include_2chat_8php.html#aedcb532a0627b8644001a2fadab4e87a":[5,0,0,14,4], +"include_2config_8php.html":[5,0,0,18], +"include_2config_8php.html#a27559f388c9b9af81c94e48d6889d1d1":[5,0,0,18,7], +"include_2config_8php.html#a549910227348003efc3c05c9105c42da":[5,0,0,18,0], +"include_2config_8php.html#a55bbed9a014c9109c767486834f3ca33":[5,0,0,18,9], +"include_2config_8php.html#a61591371cb18764138655d67dc817ab2":[5,0,0,18,11], +"include_2config_8php.html#a7ad2081c5f812ac4387fd76f3762d941":[5,0,0,18,1], +"include_2config_8php.html#a9c171def547deee16738dc58fdeb4b72":[5,0,0,18,2], +"include_2config_8php.html#aa3dc1d3de2d091ac702e675acd3a085e":[5,0,0,18,6], "include_2config_8php.html#ac543813a980b3841cc5a277fcd4a24a6":[5,0,0,18,8], "include_2config_8php.html#ad58a4913937179adb13201c2ee3261ad":[5,0,0,18,5], "include_2config_8php.html#ad6da879e4fb5b37d1e161d4e9be5c32a":[5,0,0,18,10], @@ -24,11 +38,11 @@ var NAVTREEINDEX5 = "include_2group_8php.html#abd66a5ea34a07a3422dc2dde6c7b3ecb":[5,0,0,37,3], "include_2group_8php.html#afb802ae2ce73aae4bc36d157f7b6a92f":[5,0,0,37,9], "include_2menu_8php.html":[5,0,0,45], +"include_2menu_8php.html#a03a5deed3908543581c074ce333e9d6a":[5,0,0,45,10], "include_2menu_8php.html#a08a800821721781a8dfffbe31481ff98":[5,0,0,45,1], "include_2menu_8php.html#a32701c4245e78ba9106eef52c08bf33d":[5,0,0,45,9], "include_2menu_8php.html#a3884bda4d85d84ec99447db9403a68d8":[5,0,0,45,3], "include_2menu_8php.html#a47447c01ba8ea04cd74af1d4c5b68fc7":[5,0,0,45,8], -"include_2menu_8php.html#a4d7123b0577fa994770199f9b831da11":[5,0,0,45,10], "include_2menu_8php.html#a68ebbf492470c930f652013656f9071d":[5,0,0,45,7], "include_2menu_8php.html#a6a33c6a3db2a7510b16cc656edaec571":[5,0,0,45,5], "include_2menu_8php.html#a9aa8e0052dd47c1a93f53a983bd4620a":[5,0,0,45,2], @@ -190,13 +204,13 @@ var NAVTREEINDEX5 = "md_config.html":[0], "md_fresh.html":[1], "minimal_8php.html":[5,0,3,1,2], -"minimalisticdarkness_8php.html":[5,0,3,2,0,1,4], -"minimalisticdarkness_8php.html#a04de7b747e4f0a353e0e38cf77c3404f":[5,0,3,2,0,1,4,4], -"minimalisticdarkness_8php.html#a0ac3f5b52212b0af87d513273da03ead":[5,0,3,2,0,1,4,3], -"minimalisticdarkness_8php.html#a5795120b4b324bc4ca83f1e6fdce7d57":[5,0,3,2,0,1,4,5], -"minimalisticdarkness_8php.html#a6e5d97615c6faef5dbffe04b8024ceaf":[5,0,3,2,0,1,4,0], -"minimalisticdarkness_8php.html#a70bb13be8f23ec47839da81e0796f1cb":[5,0,3,2,0,1,4,2], -"minimalisticdarkness_8php.html#a7e6c3d4efde4e9a2de32308081372c6b":[5,0,3,2,0,1,4,1], +"minimalisticdarkness_8php.html":[5,0,3,2,0,2,4], +"minimalisticdarkness_8php.html#a04de7b747e4f0a353e0e38cf77c3404f":[5,0,3,2,0,2,4,4], +"minimalisticdarkness_8php.html#a0ac3f5b52212b0af87d513273da03ead":[5,0,3,2,0,2,4,3], +"minimalisticdarkness_8php.html#a5795120b4b324bc4ca83f1e6fdce7d57":[5,0,3,2,0,2,4,5], +"minimalisticdarkness_8php.html#a6e5d97615c6faef5dbffe04b8024ceaf":[5,0,3,2,0,2,4,0], +"minimalisticdarkness_8php.html#a70bb13be8f23ec47839da81e0796f1cb":[5,0,3,2,0,2,4,2], +"minimalisticdarkness_8php.html#a7e6c3d4efde4e9a2de32308081372c6b":[5,0,3,2,0,2,4,1], "mitem_8php.html":[5,0,1,56], "mitem_8php.html#a6ee694cca4b551a20d7c7a94b5243ec1":[5,0,1,56,2], "mitem_8php.html#a7a31b702ecad18eeb6a38b243ff0037e":[5,0,1,56,0], @@ -235,19 +249,5 @@ var NAVTREEINDEX5 = "mod_2notify_8php.html":[5,0,1,63], "mod_2notify_8php.html#a94f9a6a9d4b5fd704baafff0c34f41ae":[5,0,1,63,1], "mod_2notify_8php.html#acdf3851688ebd6d6a575eb84ef9febe3":[5,0,1,63,0], -"mod_2oembed_8php.html":[5,0,1,64], -"mod_2oembed_8php.html#a9145025aaf057fb5d3f9f7011e5e1014":[5,0,1,64,0], -"mod_2photos_8php.html":[5,0,1,72], -"mod_2photos_8php.html#a062bed4d04d14fee8a53f4c9be673080":[5,0,1,72,2], -"mod_2photos_8php.html#aa87382611a66ec5effdb2d78f13f5812":[5,0,1,72,0], -"mod_2photos_8php.html#ab950295cd77626f5fe65331a87693014":[5,0,1,72,1], -"mod__filestorage_8php.html":[5,0,3,0,0], -"mod__import_8php.html":[5,0,3,1,3], -"mod__import_8php.html#a8db1899eeeb44dabd0904065b63627bb":[5,0,3,1,3,0], -"mood_8php.html":[5,0,1,57], -"mood_8php.html#a721b9b6703b3234a005641c92d409b8f":[5,0,1,57,0], -"mood_8php.html#a7ae136dd7476865b4828136175db5022":[5,0,1,57,1], -"msearch_8php.html":[5,0,1,58], -"msearch_8php.html#ac80d2a6c0a92e79eec7efbbccd74d9a8":[5,0,1,58,0], -"namespaceFriendica.html":[4,0,1] +"mod_2oembed_8php.html":[5,0,1,64] }; diff --git a/doc/html/navtreeindex6.js b/doc/html/navtreeindex6.js index 1493d3b2c..d3cf885ff 100644 --- a/doc/html/navtreeindex6.js +++ b/doc/html/navtreeindex6.js @@ -1,5 +1,20 @@ var NAVTREEINDEX6 = { +"mod_2oembed_8php.html#a9145025aaf057fb5d3f9f7011e5e1014":[5,0,1,64,0], +"mod_2photos_8php.html":[5,0,1,72], +"mod_2photos_8php.html#a062bed4d04d14fee8a53f4c9be673080":[5,0,1,72,2], +"mod_2photos_8php.html#aa87382611a66ec5effdb2d78f13f5812":[5,0,1,72,0], +"mod_2photos_8php.html#ab950295cd77626f5fe65331a87693014":[5,0,1,72,1], +"mod__chanview_8php.html":[5,0,3,2,0,0,0], +"mod__filestorage_8php.html":[5,0,3,0,0], +"mod__import_8php.html":[5,0,3,1,3], +"mod__import_8php.html#a8db1899eeeb44dabd0904065b63627bb":[5,0,3,1,3,0], +"mood_8php.html":[5,0,1,57], +"mood_8php.html#a721b9b6703b3234a005641c92d409b8f":[5,0,1,57,0], +"mood_8php.html#a7ae136dd7476865b4828136175db5022":[5,0,1,57,1], +"msearch_8php.html":[5,0,1,58], +"msearch_8php.html#ac80d2a6c0a92e79eec7efbbccd74d9a8":[5,0,1,58,0], +"namespaceFriendica.html":[4,0,1], "namespaceFriendica.html":[3,0,1], "namespaceacl__selectors.html":[4,0,0], "namespaceacl__selectors.html":[3,0,0], @@ -9,8 +24,8 @@ var NAVTREEINDEX6 = "namespacemembers_func.html":[3,1,1], "namespacemembers_vars.html":[3,1,2], "namespaces.html":[3,0], -"namespaceupdatetpl.html":[4,0,3], "namespaceupdatetpl.html":[3,0,3], +"namespaceupdatetpl.html":[4,0,3], "namespaceutil.html":[4,0,4], "namespaceutil.html":[3,0,4], "nav_8php.html":[5,0,0,47], @@ -35,7 +50,7 @@ var NAVTREEINDEX6 = "oexchange_8php.html":[5,0,1,65], "oexchange_8php.html#a2d8b785cd7d041a4e6274f5af370cf26":[5,0,1,65,0], "oexchange_8php.html#ac8e2e469ddc3db984b0c1b44558aca59":[5,0,1,65,1], -"olddefault_8php.html":[5,0,3,2,0,1,5], +"olddefault_8php.html":[5,0,3,2,0,2,5], "onedirsync_8php.html":[5,0,0,53], "onedirsync_8php.html#a411aedd47c57476099647961e6a86691":[5,0,0,53,0], "onepoll_8php.html":[5,0,0,54], @@ -58,8 +73,8 @@ var NAVTREEINDEX6 = "parse__url_8php.html#a25635549f2c22955d72465f4d2e58993":[5,0,1,70,3], "parse__url_8php.html#a496f4e3836154f6f32b8e805a7160d3a":[5,0,1,70,1], "parse__url_8php.html#aa7dd8f961bea042d62726ed909e4a868":[5,0,1,70,0], -"passion_8php.html":[5,0,3,2,0,1,6], -"passionwide_8php.html":[5,0,3,2,0,1,7], +"passion_8php.html":[5,0,3,2,0,2,6], +"passionwide_8php.html":[5,0,3,2,0,2,7], "permissions_8php.html":[5,0,0,56], "permissions_8php.html#a040fd3d3b8517658b1668ae0cd093972":[5,0,0,56,2], "permissions_8php.html#a0f5bd9f7f4c8fb7ba4b2c1ed048b4dc7":[5,0,0,56,0], @@ -90,7 +105,7 @@ var NAVTREEINDEX6 = "php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864":[5,0,3,1,5,0], "php_8php.html":[5,0,1,73], "php_8php.html#adb7164dfed9a4ecbe2e168e1e78f12f6":[5,0,1,73,0], -"pine_8php.html":[5,0,3,2,0,1,8], +"pine_8php.html":[5,0,3,2,0,2,8], "ping_8php.html":[5,0,1,74], "ping_8php.html#a77217b1b190b4c5d8770867b45f0c0a1":[5,0,1,74,0], "plugin_8php.html":[5,0,0,58], @@ -191,6 +206,9 @@ var NAVTREEINDEX6 = "queue__fn_8php.html#a8fe71e981399bbf5d000a6ca42f57b24":[5,0,0,63,0], "randprof_8php.html":[5,0,1,85], "randprof_8php.html#abf5dba3c608b9304cbf68327cd31b090":[5,0,1,85,0], +"rbmark_8php.html":[5,0,1,86], +"rbmark_8php.html#a43fec4960b50926251574762cc491f76":[5,0,1,86,0], +"rbmark_8php.html#ac5a66aa8599fa5dc702bae396d8d1f8c":[5,0,1,86,1], "redbasic_2php_2style_8php.html":[5,0,3,2,2,0,1], "redbasic_2php_2style_8php.html#a01c151bf47f7da2b979aaa4cb868da4c":[5,0,3,2,2,0,1,1], "redbasic_2php_2style_8php.html#a5bff5012c56e34da6b3b2ed475726b27":[5,0,3,2,2,0,1,0], @@ -200,54 +218,36 @@ var NAVTREEINDEX6 = "redbasic_2php_2style_8php.html#ac98bd8264411bd207a5740d08e81a158":[5,0,3,2,2,0,1,3], "redbasic_2php_2theme_8php.html":[5,0,3,2,2,0,2], "redbasic_2php_2theme_8php.html#af6eb813e9fc7e2d76ac1b82bc5c0ed9b":[5,0,3,2,2,0,2,0], -"redbasic_8php.html":[5,0,3,2,0,1,9], +"redbasic_8php.html":[5,0,3,2,0,2,9], "reddav_8php.html":[5,0,0,64], "reddav_8php.html#a5df0d09893f2e65dc5cf6bbab6cfb266":[5,0,0,64,5], "reddav_8php.html#a9f531641dfb4e43cd88ac1a9ae7e2088":[5,0,0,64,6], "reddav_8php.html#ae92ea0df1993f6a7bcd1b6efa6c1fb66":[5,0,0,64,4], -"register_8php.html":[5,0,1,86], -"register_8php.html#a0e91f57f111407ea8d3223a05022bb2a":[5,0,1,86,0], -"register_8php.html#a51731dcc1917c58a790eb1c0f6132271":[5,0,1,86,2], -"register_8php.html#ae20c0cd40f738d6295de58b9202c83d5":[5,0,1,86,1], -"regmod_8php.html":[5,0,1,87], -"regmod_8php.html#a7953df4e32e63946565e90cdd5d50409":[5,0,1,87,0], -"removeme_8php.html":[5,0,1,88], -"removeme_8php.html#a065a589caa2aa84c60f7073a28f0ad9c":[5,0,1,88,0], -"removeme_8php.html#a7be08738beca44bb98a79e01cdb2ee88":[5,0,1,88,1], -"rmagic_8php.html":[5,0,1,89], -"rmagic_8php.html#a3e28db1e5cfa7e5c2617f90222c1caef":[5,0,1,89,0], -"rmagic_8php.html#a869de069d081b3c4e98b957d06bbf08f":[5,0,1,89,2], -"rmagic_8php.html#a95455edd43f1bff39446a57388cdde16":[5,0,1,89,1], -"rpost_8php.html":[5,0,1,90], -"rpost_8php.html#a8190354d789000806d9879aea276728f":[5,0,1,90,0], -"rsd__xml_8php.html":[5,0,1,91], -"rsd__xml_8php.html#a740cd02fa15e5a53f8547fac73f0ab82":[5,0,1,91,0], -"search_8php.html":[5,0,1,92], -"search_8php.html#ab2568591359edde5b483a6cd9a24b2cc":[5,0,1,92,0], -"search_8php.html#acf19fd30f07f495781ca0d7a0a08b435":[5,0,1,92,1], -"search__ac_8php.html":[5,0,1,93], -"search__ac_8php.html#a14f90c83a3f2be095e9e2992a8d66138":[5,0,1,93,0], +"register_8php.html":[5,0,1,87], +"register_8php.html#a0e91f57f111407ea8d3223a05022bb2a":[5,0,1,87,0], +"register_8php.html#a51731dcc1917c58a790eb1c0f6132271":[5,0,1,87,2], +"register_8php.html#ae20c0cd40f738d6295de58b9202c83d5":[5,0,1,87,1], +"regmod_8php.html":[5,0,1,88], +"regmod_8php.html#a7953df4e32e63946565e90cdd5d50409":[5,0,1,88,0], +"removeme_8php.html":[5,0,1,89], +"removeme_8php.html#a065a589caa2aa84c60f7073a28f0ad9c":[5,0,1,89,0], +"removeme_8php.html#a7be08738beca44bb98a79e01cdb2ee88":[5,0,1,89,1], +"rmagic_8php.html":[5,0,1,90], +"rmagic_8php.html#a3e28db1e5cfa7e5c2617f90222c1caef":[5,0,1,90,0], +"rmagic_8php.html#a869de069d081b3c4e98b957d06bbf08f":[5,0,1,90,2], +"rmagic_8php.html#a95455edd43f1bff39446a57388cdde16":[5,0,1,90,1], +"rpost_8php.html":[5,0,1,91], +"rpost_8php.html#a8190354d789000806d9879aea276728f":[5,0,1,91,0], +"rsd__xml_8php.html":[5,0,1,92], +"rsd__xml_8php.html#a740cd02fa15e5a53f8547fac73f0ab82":[5,0,1,92,0], +"search_8php.html":[5,0,1,93], +"search_8php.html#ab2568591359edde5b483a6cd9a24b2cc":[5,0,1,93,0], +"search_8php.html#acf19fd30f07f495781ca0d7a0a08b435":[5,0,1,93,1], +"search__ac_8php.html":[5,0,1,94], +"search__ac_8php.html#a14f90c83a3f2be095e9e2992a8d66138":[5,0,1,94,0], "security_8php.html":[5,0,0,65], "security_8php.html#a15e0f8f511cc06192db63387f97238b3":[5,0,0,65,11], "security_8php.html#a20f8b9851f23ee8894b8925584ef6821":[5,0,0,65,2], "security_8php.html#a444ac867dfa8c37cf0a7a226412bee28":[5,0,0,65,4], -"security_8php.html#a77ba0d1889a39cf32434c5ce96fe1433":[5,0,0,65,5], -"security_8php.html#a8d23d2597aae380a3341872fe9513380":[5,0,0,65,1], -"security_8php.html#a9355488460ab11d6058656ff919e5cf9":[5,0,0,65,7], -"security_8php.html#a9c6180e82150a5a9af91a1255d096b5c":[5,0,0,65,3], -"security_8php.html#ab3bdd30dc60d9ee72370b866aa4a2d01":[5,0,0,65,9], -"security_8php.html#acd06ef411116115c2f0a92633700db8a":[5,0,0,65,6], -"security_8php.html#adc7bf51e3b8d67bd80e9348f9ab03733":[5,0,0,65,0], -"security_8php.html#ae92c5c1a1cbbc49ddbb8b3265d2db809":[5,0,0,65,10], -"security_8php.html#afa683bc025a1d2fe9065e2f6cd71a22f":[5,0,0,65,8], -"session_8php.html":[5,0,0,66], -"session_8php.html#a26fa1042356d555023cbf15ddd4f8507":[5,0,0,66,4], -"session_8php.html#a4c0ead624f95483e386bc80abf570a8f":[5,0,0,66,0], -"session_8php.html#a5e1c616e02b863d5450317d101366bb7":[5,0,0,66,1], -"session_8php.html#a62e4a6cb26b4bb1b8ddd8277b26090eb":[5,0,0,66,8], -"session_8php.html#a7f0f50576360d9ba52d29364e0b83a8e":[5,0,0,66,5], -"session_8php.html#a96b09cc763572f45280786a7b33feb7e":[5,0,0,66,7], -"session_8php.html#ac4461c1984543d3553e73dba2771568f":[5,0,0,66,6], -"session_8php.html#ac95373f4966862a028033dd2f94d4da1":[5,0,0,66,3], -"session_8php.html#af0100a2642a5268594bbd5742a03d885":[5,0,0,66,9] +"security_8php.html#a77ba0d1889a39cf32434c5ce96fe1433":[5,0,0,65,5] }; diff --git a/doc/html/navtreeindex7.js b/doc/html/navtreeindex7.js index 9ca9e8985..84192f509 100644 --- a/doc/html/navtreeindex7.js +++ b/doc/html/navtreeindex7.js @@ -1,37 +1,55 @@ var NAVTREEINDEX7 = { +"security_8php.html#a8d23d2597aae380a3341872fe9513380":[5,0,0,65,1], +"security_8php.html#a9355488460ab11d6058656ff919e5cf9":[5,0,0,65,7], +"security_8php.html#a9c6180e82150a5a9af91a1255d096b5c":[5,0,0,65,3], +"security_8php.html#ab3bdd30dc60d9ee72370b866aa4a2d01":[5,0,0,65,9], +"security_8php.html#acd06ef411116115c2f0a92633700db8a":[5,0,0,65,6], +"security_8php.html#adc7bf51e3b8d67bd80e9348f9ab03733":[5,0,0,65,0], +"security_8php.html#ae92c5c1a1cbbc49ddbb8b3265d2db809":[5,0,0,65,10], +"security_8php.html#afa683bc025a1d2fe9065e2f6cd71a22f":[5,0,0,65,8], +"session_8php.html":[5,0,0,66], +"session_8php.html#a26fa1042356d555023cbf15ddd4f8507":[5,0,0,66,4], +"session_8php.html#a4c0ead624f95483e386bc80abf570a8f":[5,0,0,66,0], +"session_8php.html#a5e1c616e02b863d5450317d101366bb7":[5,0,0,66,1], +"session_8php.html#a62e4a6cb26b4bb1b8ddd8277b26090eb":[5,0,0,66,8], +"session_8php.html#a7f0f50576360d9ba52d29364e0b83a8e":[5,0,0,66,5], +"session_8php.html#a96b09cc763572f45280786a7b33feb7e":[5,0,0,66,7], +"session_8php.html#ac4461c1984543d3553e73dba2771568f":[5,0,0,66,6], +"session_8php.html#ac95373f4966862a028033dd2f94d4da1":[5,0,0,66,3], +"session_8php.html#af0100a2642a5268594bbd5742a03d885":[5,0,0,66,9], "session_8php.html#af230b86bfff7db66c3bdd7e0bbc24052":[5,0,0,66,2], -"settings_8php.html":[5,0,1,94], -"settings_8php.html#a39abc76ff5459c57e3b957664f273f18":[5,0,1,94,0], -"settings_8php.html#a3a4cde287482fced008583f54ba2a722":[5,0,1,94,1], -"settings_8php.html#aa7ee94d88ac088edb04ccf3a26de3586":[5,0,1,94,2], -"setup_8php.html":[5,0,1,95], -"setup_8php.html#a0c3f3b671381f6dccd924b8ecdfc56c4":[5,0,1,95,2], -"setup_8php.html#a13cf286774149a0a7bd8adb8179cec75":[5,0,1,95,14], -"setup_8php.html#a14d208682a88632290c895d20da6e7d6":[5,0,1,95,5], -"setup_8php.html#a267555abd17290e659b4bf44b885e4e0":[5,0,1,95,13], -"setup_8php.html#a2b375ddc555140236fc500135de99371":[5,0,1,95,10], -"setup_8php.html#a5ad92c0857d1dadd6b60a9a557159c9f":[5,0,1,95,3], -"setup_8php.html#a69a450e06dd3771fb51d3e4b0266a35e":[5,0,1,95,1], -"setup_8php.html#a8652788e8589778c5f81634a9d5b9429":[5,0,1,95,8], -"setup_8php.html#a88247384a96e14516f474d7af6a465c1":[5,0,1,95,12], -"setup_8php.html#aa3bbb111780da70ba35cc23a306f2c76":[5,0,1,95,4], -"setup_8php.html#ab4b71369a25021d59247c917e98d8246":[5,0,1,95,7], -"setup_8php.html#abe405d227ba7232971964a706d4f3bce":[5,0,1,95,11], -"setup_8php.html#ad2e0375a9ab87ebe6e78124ee125054a":[5,0,1,95,9], -"setup_8php.html#addb24714bc2542aa4f4215e98fe48432":[5,0,1,95,16], -"setup_8php.html#ae8e4d9279a61de74d5f39962cb7b6ca1":[5,0,1,95,0], -"setup_8php.html#aea1ebdda58ec938f4e7b31aa5c5f6b58":[5,0,1,95,15], -"setup_8php.html#afd8b0b3ade1507c45325caf377bf459d":[5,0,1,95,6], -"share_8php.html":[5,0,1,96], -"share_8php.html#afeb26046bdd02567ecd29ab5f188b249":[5,0,1,96,0], -"siteinfo_8php.html":[5,0,1,97], -"siteinfo_8php.html#a3efbd0bd6564af19ec0a9ce0294e59d0":[5,0,1,97,1], -"siteinfo_8php.html#a70c09bfb6dd1c86a125a35f62ed53656":[5,0,1,97,0], -"sitelist_8php.html":[5,0,1,98], -"sitelist_8php.html#a665a59bf60f780b40f32c909f4a473b1":[5,0,1,98,0], -"smilies_8php.html":[5,0,1,99], -"smilies_8php.html#ab43b1e9f33a700a830aff14c7b3a617f":[5,0,1,99,0], +"settings_8php.html":[5,0,1,95], +"settings_8php.html#a39abc76ff5459c57e3b957664f273f18":[5,0,1,95,0], +"settings_8php.html#a3a4cde287482fced008583f54ba2a722":[5,0,1,95,1], +"settings_8php.html#aa7ee94d88ac088edb04ccf3a26de3586":[5,0,1,95,2], +"setup_8php.html":[5,0,1,96], +"setup_8php.html#a0c3f3b671381f6dccd924b8ecdfc56c4":[5,0,1,96,2], +"setup_8php.html#a13cf286774149a0a7bd8adb8179cec75":[5,0,1,96,14], +"setup_8php.html#a14d208682a88632290c895d20da6e7d6":[5,0,1,96,5], +"setup_8php.html#a267555abd17290e659b4bf44b885e4e0":[5,0,1,96,13], +"setup_8php.html#a2b375ddc555140236fc500135de99371":[5,0,1,96,10], +"setup_8php.html#a5ad92c0857d1dadd6b60a9a557159c9f":[5,0,1,96,3], +"setup_8php.html#a69a450e06dd3771fb51d3e4b0266a35e":[5,0,1,96,1], +"setup_8php.html#a8652788e8589778c5f81634a9d5b9429":[5,0,1,96,8], +"setup_8php.html#a88247384a96e14516f474d7af6a465c1":[5,0,1,96,12], +"setup_8php.html#aa3bbb111780da70ba35cc23a306f2c76":[5,0,1,96,4], +"setup_8php.html#ab4b71369a25021d59247c917e98d8246":[5,0,1,96,7], +"setup_8php.html#abe405d227ba7232971964a706d4f3bce":[5,0,1,96,11], +"setup_8php.html#ad2e0375a9ab87ebe6e78124ee125054a":[5,0,1,96,9], +"setup_8php.html#addb24714bc2542aa4f4215e98fe48432":[5,0,1,96,16], +"setup_8php.html#ae8e4d9279a61de74d5f39962cb7b6ca1":[5,0,1,96,0], +"setup_8php.html#aea1ebdda58ec938f4e7b31aa5c5f6b58":[5,0,1,96,15], +"setup_8php.html#afd8b0b3ade1507c45325caf377bf459d":[5,0,1,96,6], +"share_8php.html":[5,0,1,97], +"share_8php.html#afeb26046bdd02567ecd29ab5f188b249":[5,0,1,97,0], +"siteinfo_8php.html":[5,0,1,98], +"siteinfo_8php.html#a3efbd0bd6564af19ec0a9ce0294e59d0":[5,0,1,98,1], +"siteinfo_8php.html#a70c09bfb6dd1c86a125a35f62ed53656":[5,0,1,98,0], +"sitelist_8php.html":[5,0,1,99], +"sitelist_8php.html#a665a59bf60f780b40f32c909f4a473b1":[5,0,1,99,0], +"smilies_8php.html":[5,0,1,100], +"smilies_8php.html#ab43b1e9f33a700a830aff14c7b3a617f":[5,0,1,100,0], "socgraph_8php.html":[5,0,0,67], "socgraph_8php.html#a16ac51c505d72987ed8d6d6aed0e8586":[5,0,0,67,0], "socgraph_8php.html#a5ef8bef37161df53718a21e93d02fbd6":[5,0,0,67,6], @@ -42,28 +60,28 @@ var NAVTREEINDEX7 = "socgraph_8php.html#ac343a846241d36cdf046b08f3396cfe9":[5,0,0,67,2], "socgraph_8php.html#af175807406d94407a5e11742a3287746":[5,0,0,67,5], "socgraph_8php.html#af29d056beec10b4e38e5209c92452894":[5,0,0,67,3], -"sources_8php.html":[5,0,1,100], -"sources_8php.html#ac442ccef080ab95772d8929fcafcb4b7":[5,0,1,100,0], -"sources_8php.html#ac73298ff162ce7b2de8dcaf3d3305b1e":[5,0,1,100,1], +"sources_8php.html":[5,0,1,101], +"sources_8php.html#ac442ccef080ab95772d8929fcafcb4b7":[5,0,1,101,0], +"sources_8php.html#ac73298ff162ce7b2de8dcaf3d3305b1e":[5,0,1,101,1], "spam_8php.html":[5,0,0,68], "spam_8php.html#a05861201147b9a538d006f0269255cf9":[5,0,0,68,1], "spam_8php.html#ab8fd81a82c9622cbebb8ceab6b310ca6":[5,0,0,68,0], -"sslify_8php.html":[5,0,1,101], -"sslify_8php.html#a75b11e54a3d1fc83e7d4c0e8b4dab316":[5,0,1,101,0], -"starred_8php.html":[5,0,1,102], -"starred_8php.html#a63024fb418c678e49fd535e3752d349a":[5,0,1,102,0], -"subthread_8php.html":[5,0,1,103], -"subthread_8php.html#a50368f3d825b77996030528e7fbfa3d3":[5,0,1,103,0], -"suggest_8php.html":[5,0,1,104], -"suggest_8php.html#a58748a8235d4523f8333847f3e42dd91":[5,0,1,104,0], -"suggest_8php.html#a696acf1dd8070e479adcc80c63c6718c":[5,0,1,104,1], +"sslify_8php.html":[5,0,1,102], +"sslify_8php.html#a75b11e54a3d1fc83e7d4c0e8b4dab316":[5,0,1,102,0], +"starred_8php.html":[5,0,1,103], +"starred_8php.html#a63024fb418c678e49fd535e3752d349a":[5,0,1,103,0], +"subthread_8php.html":[5,0,1,104], +"subthread_8php.html#a50368f3d825b77996030528e7fbfa3d3":[5,0,1,104,0], +"suggest_8php.html":[5,0,1,105], +"suggest_8php.html#a58748a8235d4523f8333847f3e42dd91":[5,0,1,105,0], +"suggest_8php.html#a696acf1dd8070e479adcc80c63c6718c":[5,0,1,105,1], "system__unavailable_8php.html":[5,0,0,69], "system__unavailable_8php.html#a73751a6bcc17ad3ca503496e2fb020fa":[5,0,0,69,0], -"tagger_8php.html":[5,0,1,105], -"tagger_8php.html#a0e4a3eb177d1684553c547503d67161c":[5,0,1,105,0], -"tagrm_8php.html":[5,0,1,106], -"tagrm_8php.html#a1702f40aa53a2fa93deade1f609abe78":[5,0,1,106,1], -"tagrm_8php.html#adfd4ea5b4d7fc6d9c9e042af5cd7d49a":[5,0,1,106,0], +"tagger_8php.html":[5,0,1,106], +"tagger_8php.html#a0e4a3eb177d1684553c547503d67161c":[5,0,1,106,0], +"tagrm_8php.html":[5,0,1,107], +"tagrm_8php.html#a1702f40aa53a2fa93deade1f609abe78":[5,0,1,107,1], +"tagrm_8php.html#adfd4ea5b4d7fc6d9c9e042af5cd7d49a":[5,0,1,107,0], "taxonomy_8php.html":[5,0,0,70], "taxonomy_8php.html#a03f55ee46c5f496e42f3d29db8d09cce":[5,0,0,70,9], "taxonomy_8php.html#a088371f4bc19155b2291508f5cd63332":[5,0,0,70,0], @@ -175,6 +193,8 @@ var NAVTREEINDEX7 = "text_8php.html#afe18627c4983ee5f7c940a0992818cd5":[5,0,0,72,12], "text_8php.html#afe54312607d92f7ce9593f5760831f80":[5,0,0,72,57], "text_8php.html#afe9f178d264d44a94dc1292aaf0fd585":[5,0,0,72,52], +"theme_2apw_2php_2theme__init_8php.html":[5,0,3,2,0,1,4], +"theme_2apw_2php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864":[5,0,3,2,0,1,4,0], "theme_2blogga_2php_2default_8php.html":[5,0,3,2,1,0,1], "theme_2blogga_2php_2default_8php.html#a1230ab83d4ec9785d8f3a966f33dc5f3":[5,0,3,2,1,0,1,2], "theme_2blogga_2php_2default_8php.html#a720581ae288aa09511670563e4205a4a":[5,0,3,2,1,0,1,0], @@ -185,13 +205,13 @@ var NAVTREEINDEX7 = "theme_2blogga_2view_2theme_2blog_2default_8php.html#a52d9dd070ed541729088395c22502539":[5,0,3,2,1,1,0,0,1,1], "theme_2blogga_2view_2theme_2blog_2default_8php.html#a720581ae288aa09511670563e4205a4a":[5,0,3,2,1,1,0,0,1,0], "theme_2redbasic_2php_2theme__init_8php.html":[5,0,3,2,2,0,3], -"thing_8php.html":[5,0,1,107], -"thing_8php.html#a24a35f1e64029a67fdbea94a776ae04b":[5,0,1,107,0], -"thing_8php.html#a8be23b1d475ec3d9291999221c674c80":[5,0,1,107,1], -"toggle__mobile_8php.html":[5,0,1,108], -"toggle__mobile_8php.html#aca53ade8971802b45c31e722b22c6254":[5,0,1,108,0], -"toggle__safesearch_8php.html":[5,0,1,109], -"toggle__safesearch_8php.html#a23d5cfb2727a266e44993ffbf5595a79":[5,0,1,109,0], +"thing_8php.html":[5,0,1,108], +"thing_8php.html#a24a35f1e64029a67fdbea94a776ae04b":[5,0,1,108,0], +"thing_8php.html#a8be23b1d475ec3d9291999221c674c80":[5,0,1,108,1], +"toggle__mobile_8php.html":[5,0,1,109], +"toggle__mobile_8php.html#aca53ade8971802b45c31e722b22c6254":[5,0,1,109,0], +"toggle__safesearch_8php.html":[5,0,1,110], +"toggle__safesearch_8php.html#a23d5cfb2727a266e44993ffbf5595a79":[5,0,1,110,0], "tpldebug_8php.html":[5,0,2,8], "tpldebug_8php.html#a44778457a6c02554812fbfad19d32ba3":[5,0,2,8,0], "tpldebug_8php.html#a5358407d65f2ca826f96356a6642d149":[5,0,2,8,1], @@ -205,18 +225,18 @@ var NAVTREEINDEX7 = "typohelper_8php.html":[5,0,2,10], "typohelper_8php.html#a7542d95618011800c61773127fa625cf":[5,0,2,10,0], "typohelper_8php.html#ab6fd357fb5b2a3ba8aab9e8b98c6a805":[5,0,2,10,1], -"uexport_8php.html":[5,0,1,110], -"uexport_8php.html#a118920137dedebe0581623a2e57e7b0d":[5,0,1,110,0], -"update__channel_8php.html":[5,0,1,111], -"update__channel_8php.html#aca52a9da500f0db2f0a8666af5bc06ba":[5,0,1,111,0], -"update__community_8php.html":[5,0,1,112], -"update__community_8php.html#abdcc5c4ecebbe0b5fcba2755c69cb3b1":[5,0,1,112,0], -"update__display_8php.html":[5,0,1,113], -"update__display_8php.html#aa36ac524059e209d5d75a03c16206246":[5,0,1,113,0], -"update__network_8php.html":[5,0,1,114], -"update__network_8php.html#a8abf5b9f65af6a27ee2f9d7207ed1b41":[5,0,1,114,0], -"update__search_8php.html":[5,0,1,115], -"update__search_8php.html#ace4c3a23fa7d6922399e27c297a6ba52":[5,0,1,115,0], +"uexport_8php.html":[5,0,1,111], +"uexport_8php.html#a118920137dedebe0581623a2e57e7b0d":[5,0,1,111,0], +"update__channel_8php.html":[5,0,1,112], +"update__channel_8php.html#aca52a9da500f0db2f0a8666af5bc06ba":[5,0,1,112,0], +"update__community_8php.html":[5,0,1,113], +"update__community_8php.html#abdcc5c4ecebbe0b5fcba2755c69cb3b1":[5,0,1,113,0], +"update__display_8php.html":[5,0,1,114], +"update__display_8php.html#aa36ac524059e209d5d75a03c16206246":[5,0,1,114,0], +"update__network_8php.html":[5,0,1,115], +"update__network_8php.html#a8abf5b9f65af6a27ee2f9d7207ed1b41":[5,0,1,115,0], +"update__search_8php.html":[5,0,1,116], +"update__search_8php.html#ace4c3a23fa7d6922399e27c297a6ba52":[5,0,1,116,0], "updatetpl_8py.html":[5,0,2,11], "updatetpl_8py.html#a52a85ffa6b6d63d840b185a133478c12":[5,0,2,11,5], "updatetpl_8py.html#a79c20eb62d568c999b56eb08530355d3":[5,0,2,11,2], @@ -224,30 +244,10 @@ var NAVTREEINDEX7 = "updatetpl_8py.html#ab42dd79af65ee82201fd6f04715f62f6":[5,0,2,11,3], "updatetpl_8py.html#ac9d11279fed403a329a719298feafc4f":[5,0,2,11,0], "updatetpl_8py.html#ae694f5e1f25f8a92a945eb90c432dfe6":[5,0,2,11,4], -"view_2theme_2apw_2php_2config_8php.html":[5,0,3,2,0,0,0], -"view_2theme_2apw_2php_2config_8php.html#a8b51951a70e1c1324be71345a61d70ec":[5,0,3,2,0,0,0,0], -"view_2theme_2apw_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,0,0,0,1], -"view_2theme_2apw_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,0,0,0,2], +"view_2theme_2apw_2php_2config_8php.html":[5,0,3,2,0,1,0], +"view_2theme_2apw_2php_2config_8php.html#a8b51951a70e1c1324be71345a61d70ec":[5,0,3,2,0,1,0,0], +"view_2theme_2apw_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,0,1,0,1], +"view_2theme_2apw_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,0,1,0,2], "view_2theme_2blogga_2php_2config_8php.html":[5,0,3,2,1,0,0], -"view_2theme_2blogga_2php_2config_8php.html#a09cd81013505f83aea0771243a1e4e53":[5,0,3,2,1,0,0,1], -"view_2theme_2blogga_2php_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27":[5,0,3,2,1,0,0,0], -"view_2theme_2blogga_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,1,0,0,3], -"view_2theme_2blogga_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,1,0,0,4], -"view_2theme_2blogga_2php_2config_8php.html#aef2da5582b7cb6b5f63e5ca5d69fd30b":[5,0,3,2,1,0,0,2], -"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html":[5,0,3,2,1,1,0,0,0], -"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#a09cd81013505f83aea0771243a1e4e53":[5,0,3,2,1,1,0,0,0,1], -"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27":[5,0,3,2,1,1,0,0,0,0], -"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,1,1,0,0,0,3], -"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,1,1,0,0,0,4], -"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#aef2da5582b7cb6b5f63e5ca5d69fd30b":[5,0,3,2,1,1,0,0,0,2], -"view_2theme_2redbasic_2php_2config_8php.html":[5,0,3,2,2,0,0], -"view_2theme_2redbasic_2php_2config_8php.html#a8574a41fa9735ee391ba57ab24b93793":[5,0,3,2,2,0,0,0], -"view_2theme_2redbasic_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,2,0,0,1], -"view_2theme_2redbasic_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,2,0,0,2], -"view_8php.html":[5,0,1,116], -"view_8php.html#ac168f6c61a91ba2063f13b441c0ae96e":[5,0,1,116,0], -"viewconnections_8php.html":[5,0,1,117], -"viewconnections_8php.html#a00163d50b17568f7b0e48b1ca9ab7330":[5,0,1,117,1], -"viewconnections_8php.html#ab6c4d983e97b3a8a879567ff76507776":[5,0,1,117,0], -"viewsrc_8php.html":[5,0,1,118] +"view_2theme_2blogga_2php_2config_8php.html#a09cd81013505f83aea0771243a1e4e53":[5,0,3,2,1,0,0,1] }; diff --git a/doc/html/navtreeindex8.js b/doc/html/navtreeindex8.js index e3484b759..76b0fde00 100644 --- a/doc/html/navtreeindex8.js +++ b/doc/html/navtreeindex8.js @@ -1,54 +1,76 @@ var NAVTREEINDEX8 = { -"viewsrc_8php.html#a6eff3d0c1d7d14b335c4edb785cd60a4":[5,0,1,118,0], -"vote_8php.html":[5,0,1,119], -"vote_8php.html#a57a9516ee1b923b224e66dcc47377fb2":[5,0,1,119,2], -"vote_8php.html#a6aa67489bf458ca5e3206e46dac68596":[5,0,1,119,0], -"vote_8php.html#ae0c6610f40afbbc1f4fe6494c51fbab2":[5,0,1,119,1], -"wall__attach_8php.html":[5,0,1,120], -"wall__attach_8php.html#a7385e970e93228d082f0fd7254f6e653":[5,0,1,120,0], -"wall__upload_8php.html":[5,0,1,121], -"wall__upload_8php.html#a7cbe204244cf9e0380ee932263a74d8f":[5,0,1,121,0], -"webfinger_8php.html":[5,0,1,122], -"webfinger_8php.html#a17dd28db6d390194bf9ecb809739d1d3":[5,0,1,122,0], -"webpages_8php.html":[5,0,1,123], -"webpages_8php.html#af3b7397d4abc153e3d2147740ee1a41d":[5,0,1,123,0], -"wfinger_8php.html":[5,0,1,124], -"wfinger_8php.html#ae21e50c8d0a5f3c9be9f43a4e519acd3":[5,0,1,124,0], -"widedarkness_8php.html":[5,0,3,2,0,1,10], +"view_2theme_2blogga_2php_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27":[5,0,3,2,1,0,0,0], +"view_2theme_2blogga_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,1,0,0,3], +"view_2theme_2blogga_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,1,0,0,4], +"view_2theme_2blogga_2php_2config_8php.html#aef2da5582b7cb6b5f63e5ca5d69fd30b":[5,0,3,2,1,0,0,2], +"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html":[5,0,3,2,1,1,0,0,0], +"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#a09cd81013505f83aea0771243a1e4e53":[5,0,3,2,1,1,0,0,0,1], +"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27":[5,0,3,2,1,1,0,0,0,0], +"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,1,1,0,0,0,3], +"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,1,1,0,0,0,4], +"view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#aef2da5582b7cb6b5f63e5ca5d69fd30b":[5,0,3,2,1,1,0,0,0,2], +"view_2theme_2redbasic_2php_2config_8php.html":[5,0,3,2,2,0,0], +"view_2theme_2redbasic_2php_2config_8php.html#a8574a41fa9735ee391ba57ab24b93793":[5,0,3,2,2,0,0,0], +"view_2theme_2redbasic_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,2,2,0,0,1], +"view_2theme_2redbasic_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6":[5,0,3,2,2,0,0,2], +"view_8php.html":[5,0,1,117], +"view_8php.html#ac168f6c61a91ba2063f13b441c0ae96e":[5,0,1,117,0], +"viewconnections_8php.html":[5,0,1,118], +"viewconnections_8php.html#a00163d50b17568f7b0e48b1ca9ab7330":[5,0,1,118,1], +"viewconnections_8php.html#ab6c4d983e97b3a8a879567ff76507776":[5,0,1,118,0], +"viewsrc_8php.html":[5,0,1,119], +"viewsrc_8php.html#a6eff3d0c1d7d14b335c4edb785cd60a4":[5,0,1,119,0], +"vote_8php.html":[5,0,1,120], +"vote_8php.html#a57a9516ee1b923b224e66dcc47377fb2":[5,0,1,120,2], +"vote_8php.html#a6aa67489bf458ca5e3206e46dac68596":[5,0,1,120,0], +"vote_8php.html#ae0c6610f40afbbc1f4fe6494c51fbab2":[5,0,1,120,1], +"wall__attach_8php.html":[5,0,1,121], +"wall__attach_8php.html#a7385e970e93228d082f0fd7254f6e653":[5,0,1,121,0], +"wall__upload_8php.html":[5,0,1,122], +"wall__upload_8php.html#a7cbe204244cf9e0380ee932263a74d8f":[5,0,1,122,0], +"webfinger_8php.html":[5,0,1,123], +"webfinger_8php.html#a17dd28db6d390194bf9ecb809739d1d3":[5,0,1,123,0], +"webpages_8php.html":[5,0,1,124], +"webpages_8php.html#af3b7397d4abc153e3d2147740ee1a41d":[5,0,1,124,0], +"wfinger_8php.html":[5,0,1,125], +"wfinger_8php.html#ae21e50c8d0a5f3c9be9f43a4e519acd3":[5,0,1,125,0], +"widedarkness_8php.html":[5,0,3,2,0,2,10], "widgets_8php.html":[5,0,0,73], -"widgets_8php.html#a08035db02ff6a23260146b4c64153422":[5,0,0,73,8], -"widgets_8php.html#a0d404276fedc59f5038cf5c085028326":[5,0,0,73,20], -"widgets_8php.html#a145ff35319cfa47a9cc07f9425bd674b":[5,0,0,73,5], -"widgets_8php.html#a268b01ce1ab8fe2cb346cb769b9d1091":[5,0,0,73,6], -"widgets_8php.html#a3bdfb81bf9a8ddf219924fa7eaf22013":[5,0,0,73,14], -"widgets_8php.html#a45ea061dabe9a8372e4ca3b9e5714256":[5,0,0,73,15], -"widgets_8php.html#a47c72aac42058ea086c9ef8651c259da":[5,0,0,73,3], -"widgets_8php.html#a5ab3b64496e02cab56429978ad55f1c0":[5,0,0,73,9], -"widgets_8php.html#a6dbc227aac750774284ee39c45f0a200":[5,0,0,73,21], -"widgets_8php.html#a702e2fc0adc9b615999eca18b7311b5e":[5,0,0,73,16], -"widgets_8php.html#a70442dfa079312d9d5e5ee01be51a165":[5,0,0,73,12], +"widgets_8php.html#a08035db02ff6a23260146b4c64153422":[5,0,0,73,9], +"widgets_8php.html#a0d404276fedc59f5038cf5c085028326":[5,0,0,73,22], +"widgets_8php.html#a0e2f5179ed1a73b282dfda7270fcabb3":[5,0,0,73,2], +"widgets_8php.html#a145ff35319cfa47a9cc07f9425bd674b":[5,0,0,73,6], +"widgets_8php.html#a268b01ce1ab8fe2cb346cb769b9d1091":[5,0,0,73,7], +"widgets_8php.html#a3bdfb81bf9a8ddf219924fa7eaf22013":[5,0,0,73,15], +"widgets_8php.html#a45ea061dabe9a8372e4ca3b9e5714256":[5,0,0,73,16], +"widgets_8php.html#a47c72aac42058ea086c9ef8651c259da":[5,0,0,73,4], +"widgets_8php.html#a50b1410238100c8a94c06b0aa63ee3b8":[5,0,0,73,21], +"widgets_8php.html#a5ab3b64496e02cab56429978ad55f1c0":[5,0,0,73,10], +"widgets_8php.html#a6dbc227aac750774284ee39c45f0a200":[5,0,0,73,23], +"widgets_8php.html#a702e2fc0adc9b615999eca18b7311b5e":[5,0,0,73,17], +"widgets_8php.html#a70442dfa079312d9d5e5ee01be51a165":[5,0,0,73,13], "widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65":[5,0,0,73,1], -"widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8":[5,0,0,73,18], -"widgets_8php.html#a95c06bc9be133e89768746302d2ac395":[5,0,0,73,7], -"widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f":[5,0,0,73,4], -"widgets_8php.html#aaa73bcf1702eaadd9dcd253502f55e01":[5,0,0,73,19], -"widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923":[5,0,0,73,17], -"widgets_8php.html#abe03366fd22fd27d683518fa0765da50":[5,0,0,73,23], -"widgets_8php.html#ad1bf7aa69e8d100d95faba17c7bc91cd":[5,0,0,73,11], +"widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8":[5,0,0,73,19], +"widgets_8php.html#a95c06bc9be133e89768746302d2ac395":[5,0,0,73,8], +"widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f":[5,0,0,73,5], +"widgets_8php.html#aaa73bcf1702eaadd9dcd253502f55e01":[5,0,0,73,20], +"widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923":[5,0,0,73,18], +"widgets_8php.html#abe03366fd22fd27d683518fa0765da50":[5,0,0,73,25], +"widgets_8php.html#ad1bf7aa69e8d100d95faba17c7bc91cd":[5,0,0,73,12], "widgets_8php.html#add9b24d3304e529a7975e96122315554":[5,0,0,73,0], -"widgets_8php.html#ade630b19fb4c622b7b2f6f8ef89eefa2":[5,0,0,73,10], -"widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653":[5,0,0,73,22], -"widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b":[5,0,0,73,2], -"widgets_8php.html#afa2e55a78f95667a6da082efac7fec74":[5,0,0,73,13], -"xchan_8php.html":[5,0,1,125], -"xchan_8php.html#a9853348bf1a35c644460221ba75edc2d":[5,0,1,125,0], -"xrd_8php.html":[5,0,1,126], -"xrd_8php.html#aee3cf087968e4a0ff3a87de16eb23270":[5,0,1,126,0], -"xref_8php.html":[5,0,1,127], -"xref_8php.html#a9bee399213b8de8226b0d60834307473":[5,0,1,127,0], -"zfinger_8php.html":[5,0,1,128], -"zfinger_8php.html#a8139b83a22ef98869adc10aa224027a0":[5,0,1,128,0], +"widgets_8php.html#ade630b19fb4c622b7b2f6f8ef89eefa2":[5,0,0,73,11], +"widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653":[5,0,0,73,24], +"widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b":[5,0,0,73,3], +"widgets_8php.html#afa2e55a78f95667a6da082efac7fec74":[5,0,0,73,14], +"xchan_8php.html":[5,0,1,126], +"xchan_8php.html#a9853348bf1a35c644460221ba75edc2d":[5,0,1,126,0], +"xrd_8php.html":[5,0,1,127], +"xrd_8php.html#aee3cf087968e4a0ff3a87de16eb23270":[5,0,1,127,0], +"xref_8php.html":[5,0,1,128], +"xref_8php.html#a9bee399213b8de8226b0d60834307473":[5,0,1,128,0], +"zfinger_8php.html":[5,0,1,129], +"zfinger_8php.html#a8139b83a22ef98869adc10aa224027a0":[5,0,1,129,0], "zot_8php.html":[5,0,0,74], "zot_8php.html#a083aec6c900d244e1bfc1406f9461465":[5,0,0,74,13], "zot_8php.html#a2657e141d62d5f67ad3c87651b585299":[5,0,0,74,7], @@ -78,8 +100,8 @@ var NAVTREEINDEX8 = "zot_8php.html#ae7cec2b417b5858fd4a41070f843d1d7":[5,0,0,74,20], "zot_8php.html#aeea071f17e306fe3d0c488551906bfab":[5,0,0,74,22], "zot_8php.html#aeec89da5b6ff090c63a79de4de884a35":[5,0,0,74,6], -"zotfeed_8php.html":[5,0,1,129], -"zotfeed_8php.html#a24dfc23d366e7f840cf2847d0c1c8eac":[5,0,1,129,0], -"zping_8php.html":[5,0,1,130], -"zping_8php.html#a4d3a6b0b8b04ed6469015823e615ee75":[5,0,1,130,0] +"zotfeed_8php.html":[5,0,1,130], +"zotfeed_8php.html#a24dfc23d366e7f840cf2847d0c1c8eac":[5,0,1,130,0], +"zping_8php.html":[5,0,1,131], +"zping_8php.html#a4d3a6b0b8b04ed6469015823e615ee75":[5,0,1,131,0] }; diff --git a/doc/html/parse__url_8php.html b/doc/html/parse__url_8php.html index 6cf112ea3..69042e2d1 100644 --- a/doc/html/parse__url_8php.html +++ b/doc/html/parse__url_8php.html @@ -112,7 +112,7 @@ $(document).ready(function(){initNavTree('parse__url_8php.html','');}); - + @@ -153,7 +153,7 @@ Functions

    Functions

    if(!function_exists('deletenode')) completeurl ($url, $scheme)
    if(!function_exists('deletenode')) completeurl ($url, $scheme)
     
     parseurl_getsiteinfo ($url)
     
    - + diff --git a/doc/html/php2po_8php.html b/doc/html/php2po_8php.html index 9b1a1a312..0a873aa5b 100644 --- a/doc/html/php2po_8php.html +++ b/doc/html/php2po_8php.html @@ -112,7 +112,7 @@ $(document).ready(function(){initNavTree('php2po_8php.html','');});
    if (!function_exists('deletenode')) completeurl if (!function_exists('deletenode')) completeurl (   $url,
    - + @@ -191,7 +191,7 @@ Variables

    Variables

    if(!class_exists('App')) if($argc!=2) $phpfile = $argv[1]
    if(!class_exists('App')) if($argc!=2) $phpfile = $argv[1]
     
     $pofile = dirname($phpfile)."/messages.po"
     
    - +
    if (!class_exists('App')) if ($argc!=2) $phpfile = $argv[1]if (!class_exists('App')) if ($argc!=2) $phpfile = $argv[1]
    diff --git a/doc/html/php_2theme__init_8php.html b/doc/html/php_2theme__init_8php.html index 2842fa0b7..f28c9e526 100644 --- a/doc/html/php_2theme__init_8php.html +++ b/doc/html/php_2theme__init_8php.html @@ -127,7 +127,7 @@ Variables

    Those who require this feature will know what to do with it. Those who don't, won't. Eventually this functionality needs to be provided by a module such that permissions can be enforced. At the moment it's more of a proof of concept; but sufficient for our immediate needs.

    -

    Referenced by api_call(), api_user(), attach_mkdir(), attach_store(), bbcode(), blocks_content(), bookmark_add(), build_sync_packet(), channel_content(), channel_init(), channel_remove(), chat_content(), chat_init(), chat_post(), chatroom_create(), chatroom_destroy(), cloud_init(), connections_init(), connections_post(), connedit_content(), connedit_init(), connedit_post(), conversation(), design_tools(), directory_run(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), feed_init(), filestorage_content(), fix_attached_file_permissions(), fix_system_urls(), get_feed_for(), get_public_feed(), handle_tag(), home_init(), RedBrowser\htmlActionsPanel(), import_post(), invite_content(), item_photo_menu(), item_post(), item_store(), item_store_update(), items_fetch(), layouts_content(), magic_init(), mail_content(), mail_post(), menu_add_item(), menu_edit_item(), message_content(), mitem_content(), mitem_post(), mood_init(), nav(), network_content(), network_init(), new_contact(), notifier_run(), photo_upload(), photos_albums_list(), photos_content(), photos_create_item(), photos_list_photos(), ping_init(), poke_init(), post_activity_item(), post_to_red_delete_comment(), post_to_red_delete_post(), post_to_red_displayAdminContent(), post_to_red_post(), probe_content(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), profile_init(), profile_photo_init(), profile_photo_post(), profiles_post(), profperm_init(), rpost_content(), send_message(), settings_post(), sources_post(), tagger_content(), thing_init(), uexport_init(), update_remote_id(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), widget_settings_menu(), zot_build_packet(), zot_finger(), and zot_refresh().

    +

    Referenced by api_call(), api_user(), attach_mkdir(), attach_store(), bbcode(), blocks_content(), bookmark_add(), build_sync_packet(), channel_content(), channel_init(), channel_remove(), chat_content(), chat_init(), chat_post(), chatroom_create(), chatroom_destroy(), cloud_init(), connections_init(), connections_post(), connedit_content(), connedit_init(), connedit_post(), conversation(), design_tools(), directory_run(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), feed_init(), filestorage_content(), fix_attached_file_permissions(), fix_system_urls(), get_feed_for(), get_public_feed(), handle_tag(), home_init(), RedBrowser\htmlActionsPanel(), import_post(), invite_content(), item_photo_menu(), item_post(), item_store(), item_store_update(), items_fetch(), layouts_content(), magic_init(), mail_content(), mail_post(), menu_add_item(), menu_edit_item(), message_content(), mitem_content(), mitem_post(), mood_init(), nav(), network_content(), network_init(), new_contact(), notifier_run(), photo_upload(), photos_albums_list(), photos_content(), photos_create_item(), photos_list_photos(), ping_init(), poke_init(), post_activity_item(), post_to_red_delete_comment(), post_to_red_delete_post(), post_to_red_displayAdminContent(), post_to_red_post(), probe_content(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), profile_init(), profile_photo_init(), profile_photo_post(), profiles_post(), profperm_init(), rbmark_content(), rbmark_post(), rpost_content(), send_message(), settings_post(), sources_post(), tagger_content(), thing_init(), uexport_init(), update_remote_id(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), widget_settings_menu(), zot_build_packet(), zot_finger(), and zot_refresh().

    diff --git a/doc/html/plugin_8php.html b/doc/html/plugin_8php.html index 8f23cfee8..546d8d804 100644 --- a/doc/html/plugin_8php.html +++ b/doc/html/plugin_8php.html @@ -290,7 +290,7 @@ Functions
    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), chat_content(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), connedit_content(), construct_page(), contact_block(), conversation(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), dirprofile_init(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), invite_content(), lang_selector(), layouts_content(), login(), lostpass_content(), mail_content(), manage_content(), match_content(), menu_content(), menu_render(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), profile_sidebar(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), search_content(), setup_content(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), widget_affinity(), widget_archive(), widget_chatroom_list(), widget_filer(), widget_follow(), widget_mailmenu(), widget_notes(), widget_savedsearch(), widget_settings_menu(), widget_suggestions(), writepages_widget(), and xrd_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), chat_content(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), connedit_content(), construct_page(), contact_block(), conversation(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), dirprofile_init(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), invite_content(), lang_selector(), layouts_content(), login(), lostpass_content(), mail_content(), manage_content(), match_content(), menu_content(), menu_render(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), profile_sidebar(), profiles_content(), rbmark_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), search_content(), setup_content(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), widget_affinity(), widget_archive(), widget_bookmarkedchats(), widget_chatroom_list(), widget_filer(), widget_follow(), widget_mailmenu(), widget_notes(), widget_savedsearch(), widget_settings_menu(), widget_suggestedchats(), widget_suggestions(), writepages_widget(), and xrd_init().

    diff --git a/doc/html/redbasic_2php_2style_8php.html b/doc/html/redbasic_2php_2style_8php.html index 7233c03f7..f3c85a9e8 100644 --- a/doc/html/redbasic_2php_2style_8php.html +++ b/doc/html/redbasic_2php_2style_8php.html @@ -120,7 +120,7 @@ Variables    $pmenu_reply = intval($reply_photo) - 16 . 'px'   -if($nav_min_opacity===false||$nav_min_opacity=== '') else +if($nav_min_opacity===false||$nav_min_opacity=== '') else    $nav_percent_min_opacity = (int) 100 * $nav_min_opacity   @@ -191,7 +191,7 @@ Variables
    - +
    if ($nav_min_opacity===false||$nav_min_opacity=== '') elseif ($nav_min_opacity===false||$nav_min_opacity=== '') else
    diff --git a/doc/html/search/all_24.js b/doc/html/search/all_24.js index d2a44072d..b40d9eb43 100644 --- a/doc/html/search/all_24.js +++ b/doc/html/search/all_24.js @@ -17,7 +17,7 @@ var searchData= ['_24cached_5fprofile_5fpicdate',['$cached_profile_picdate',['../classApp.html#aab4a685d15a363bb1d7edbbc20bfb94e',1,'App']]], ['_24called_5fapi',['$called_api',['../include_2api_8php.html#aa62b15a6bbb280e86b98132eb214013d',1,'api.php']]], ['_24category',['$category',['../classApp.html#a5cfc098c061b7d765add58fd2ca97445',1,'App']]], - ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()'],['../php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php']]], + ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()'],['../php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php'],['../theme_2apw_2php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php']]], ['_24channel_5fhash',['$channel_hash',['../classRedBasicAuth.html#ad5a3ea4dc4783b242d9dc6e76478b6ef',1,'RedBasicAuth']]], ['_24channel_5fid',['$channel_id',['../classRedBasicAuth.html#a2dab393650d1573e3515969a153e8354',1,'RedBasicAuth']]], ['_24channel_5fname',['$channel_name',['../classRedBasicAuth.html#a438ab125b6ef46581947e35d49cdebac',1,'RedBasicAuth']]], @@ -47,9 +47,11 @@ var searchData= ['_24done',['$done',['../classTemplate.html#abda4c8d049f70553338eae7c905e9d5c',1,'Template']]], ['_24error',['$error',['../classApp.html#ac1a8b2cd40609b231a560201a08852ba',1,'App\$error()'],['../classdba__driver.html#a84675d28c7bd9b7290dd37e66dbd216c',1,'dba_driver\$error()']]], ['_24ext_5fpath',['$ext_path',['../classRedDirectory.html#a0f113244cd85c17848df991001d024f4',1,'RedDirectory']]], + ['_24fext',['$fext',['../apw_2php_2style_8php.html#a404171b8f918c116e45a6421c92f0cc9',1,'style.php']]], ['_24filelist',['$filelist',['../docblox__errorchecker_8php.html#a648a570b0f9f6e0e51b7267647c4b09b',1,'docblox_errorchecker.php']]], ['_24filename',['$filename',['../classFriendicaSmarty.html#a33fabbd4d6eef869df496adf357ae690',1,'FriendicaSmarty']]], ['_24files',['$files',['../extract_8php.html#a9590b15215a21e9b42eb546aeef79704',1,'$files(): extract.php'],['../tpldebug_8php.html#a5358407d65f2ca826f96356a6642d149',1,'$files(): tpldebug.php'],['../typo_8php.html#a9590b15215a21e9b42eb546aeef79704',1,'$files(): typo.php']]], + ['_24fname',['$fname',['../apw_2php_2style_8php.html#ab9e0f70d44ab67f4334f9883631777fc',1,'style.php']]], ['_24folder_5fhash',['$folder_hash',['../classRedDirectory.html#aa10254abf177bb2a0e4a88495725e09b',1,'RedDirectory']]], ['_24force_5fmax_5fitems',['$force_max_items',['../classApp.html#ae3f47830543d0d902f66913def8db66b',1,'App']]], ['_24gc_5fprobability',['$gc_probability',['../session_8php.html#a96b09cc763572f45280786a7b33feb7e',1,'session.php']]], @@ -60,6 +62,7 @@ var searchData= ['_24hooks',['$hooks',['../classApp.html#a3694aa1907aa103a2adbc71f926f0fa0',1,'App']]], ['_24hostname',['$hostname',['../classApp.html#a037049cba88dfc6ff94f4b5b779e3fd3',1,'App']]], ['_24i',['$i',['../docblox__errorchecker_8php.html#a83018d9153d17d91fbcf3bc10158d34f',1,'docblox_errorchecker.php']]], + ['_24iconsize',['$iconsize',['../apw_2php_2style_8php.html#a07adb491994deb72a00a975b431d3e30',1,'style.php']]], ['_24identities',['$identities',['../classApp.html#a7954862f44f606b0ff83d4c74d15e792',1,'App']]], ['_24image',['$image',['../classphoto__driver.html#a7c78b5a01afe61ba3895ac07f4869b55',1,'photo_driver']]], ['_24infile',['$infile',['../php2po_8php.html#a61f8ddeb5557d46ebc546cc355bda214',1,'php2po.php']]], @@ -81,8 +84,10 @@ var searchData= ['_24name',['$name',['../classFriendicaSmartyEngine.html#aaba6a42101bc9ae32e36b7fa2e243f02',1,'FriendicaSmartyEngine\$name()'],['../classRedFile.html#acc48c05cd5a70951cb3c615ad84f03ba',1,'RedFile\$name()'],['../classTemplate.html#a6eb301a51cc94d8b94f4548fbad85eae',1,'Template\$name()']]], ['_24nav_5fpercent_5fmin_5fopacity',['$nav_percent_min_opacity',['../redbasic_2php_2style_8php.html#a01c151bf47f7da2b979aaa4cb868da4c',1,'style.php']]], ['_24nav_5fsel',['$nav_sel',['../classApp.html#a33a8e90b60ec4438f6fbf299d0f6839c',1,'App']]], + ['_24navheight',['$navheight',['../apw_2php_2style_8php.html#a1c8a7c0db8c174239f3909cb931cb872',1,'style.php']]], ['_24needed',['$needed',['../docblox__errorchecker_8php.html#a852004caba0a34390297a079f4aaac73',1,'docblox_errorchecker.php']]], ['_24nodes',['$nodes',['../classTemplate.html#a8f4d17e49f42b876a97364c13fb572d1',1,'Template']]], + ['_24obliquemacro',['$obliquemacro',['../apw_2php_2style_8php.html#a2cad82a3ecadbe58dbc4197de1c63da0',1,'style.php']]], ['_24observer',['$observer',['../classApp.html#a4ffe529fb14389f7fedf5fdc5f722e7f',1,'App\$observer()'],['../classConversation.html#a8748445aa26047ebed5141f3c3cbc244',1,'Conversation\$observer()'],['../classRedBasicAuth.html#aa75dc43b59adc98e38a98517d3fd35d1',1,'RedBasicAuth\$observer()']]], ['_24os_5fpath',['$os_path',['../classRedDirectory.html#a3c148c07ad909985125aa4926d8d0021',1,'RedDirectory']]], ['_24out',['$out',['../php2po_8php.html#a48cb304902320d173a4eaa41543327b9',1,'php2po.php']]], @@ -122,13 +127,16 @@ var searchData= ['_24scheme',['$scheme',['../classApp.html#ad082d63acc078e5bf23825a03bdd6a76',1,'App']]], ['_24search',['$search',['../classTemplate.html#a317d535946dc065c35dd5cd38380e6c6',1,'Template']]], ['_24sectionleft',['$sectionleft',['../minimalisticdarkness_8php.html#a0ac3f5b52212b0af87d513273da03ead',1,'minimalisticdarkness.php']]], + ['_24sectiontop',['$sectiontop',['../apw_2php_2style_8php.html#acb0dedc3212a7c60ab2474768becd79a',1,'style.php']]], ['_24sectionwidth',['$sectionwidth',['../minimalisticdarkness_8php.html#a04de7b747e4f0a353e0e38cf77c3404f',1,'minimalisticdarkness.php']]], ['_24session_5fexists',['$session_exists',['../session_8php.html#a62e4a6cb26b4bb1b8ddd8277b26090eb',1,'session.php']]], ['_24session_5fexpire',['$session_expire',['../session_8php.html#af0100a2642a5268594bbd5742a03d885',1,'session.php']]], + ['_24showlock',['$showlock',['../apw_2php_2style_8php.html#ad401ea1d1ba236f86863b4574f01e425',1,'style.php']]], ['_24sourcename',['$sourcename',['../classApp.html#a13710907ef62554a0b4dd8a5eaa2eb11',1,'App']]], ['_24stack',['$stack',['../classTemplate.html#a6f0efc256688c36110180b501067ff11',1,'Template']]], ['_24str',['$str',['../typohelper_8php.html#a7542d95618011800c61773127fa625cf',1,'typohelper.php']]], ['_24strings',['$strings',['../classApp.html#a5f64620473a9727a48ebe9cf6f335a98',1,'App']]], + ['_24strongmacro',['$strongmacro',['../apw_2php_2style_8php.html#aa58104ba36588bbf082cecbb3910e2ea',1,'style.php']]], ['_24template',['$template',['../classItem.html#a7f7bc059de377319282cb4ef4a828480',1,'Item']]], ['_24template_5fengine_5finstance',['$template_engine_instance',['../classApp.html#a6844aedad10e201b8c3d80cfc9e876d3',1,'App']]], ['_24template_5fengines',['$template_engines',['../classApp.html#a6859a4848a5c0049b4134cc4b34228b6',1,'App']]], @@ -153,5 +161,6 @@ var searchData= ['_24width',['$width',['../classphoto__driver.html#a3e4215890f4a4894bf3799a7d2e0c0b1',1,'photo_driver\$width()'],['../minimalisticdarkness_8php.html#a5795120b4b324bc4ca83f1e6fdce7d57',1,'$width(): minimalisticdarkness.php']]], ['_24writable',['$writable',['../classConversation.html#ae81221251307e315f566a11f921ce0a9',1,'Conversation']]], ['_24wwtop',['$wwtop',['../redbasic_2php_2style_8php.html#a61891d0d3e6894f52410d507b04e565d',1,'style.php']]], + ['_24x',['$x',['../apw_2php_2style_8php.html#af3a16c5f0dd7a74cf9acf6a49fff73a7',1,'style.php']]], ['_24zones',['$zones',['../extract_8php.html#a0cbe524ffc9a496114fd7ba9f423ef44',1,'extract.php']]] ]; diff --git a/doc/html/search/all_62.js b/doc/html/search/all_62.js index e45a44444..30c96dec8 100644 --- a/doc/html/search/all_62.js +++ b/doc/html/search/all_62.js @@ -30,7 +30,7 @@ var searchData= ['blogtheme_5fdisplay_5fitem',['blogtheme_display_item',['../blogga_2view_2theme_2blog_2theme_8php.html#a028ae8e9f2824670dfa76a6651d817e5',1,'theme.php']]], ['blogtheme_5fform',['blogtheme_form',['../view_2theme_2blogga_2php_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27',1,'blogtheme_form(&$a, $headimg, $headimghome): config.php'],['../view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27',1,'blogtheme_form(&$a, $headimg, $headimghome): config.php']]], ['blogtheme_5fimgurl',['blogtheme_imgurl',['../blogga_2view_2theme_2blog_2theme_8php.html#af634a3f721c5e238530d0636d33230ec',1,'theme.php']]], - ['bookmark_5fadd',['bookmark_add',['../include_2bookmarks_8php.html#a88ce7dee6a3dc7465aa9b8eaa45b0087',1,'bookmarks.php']]], + ['bookmark_5fadd',['bookmark_add',['../include_2bookmarks_8php.html#aef1cb2968c41c759f2d106e1088ca323',1,'bookmarks.php']]], ['bookmarks_2ephp',['bookmarks.php',['../mod_2bookmarks_8php.html',1,'']]], ['bookmarks_2ephp',['bookmarks.php',['../include_2bookmarks_8php.html',1,'']]], ['bookmarks_5fcontent',['bookmarks_content',['../mod_2bookmarks_8php.html#a774364b1c8404529581083631703527a',1,'bookmarks.php']]], diff --git a/doc/html/search/all_63.js b/doc/html/search/all_63.js index 85b76b594..4659dc6b6 100644 --- a/doc/html/search/all_63.js +++ b/doc/html/search/all_63.js @@ -79,7 +79,7 @@ var searchData= ['collecturls',['collecturls',['../html2plain_8php.html#ae1c203d0f089d5678d73a6c64a395201',1,'html2plain.php']]], ['comanche_2ephp',['comanche.php',['../comanche_8php.html',1,'']]], ['comanche_5fblock',['comanche_block',['../comanche_8php.html#a5a7ab801717d38e91ac910b933973887',1,'comanche.php']]], - ['comanche_5fmenu',['comanche_menu',['../comanche_8php.html#a1fe339e1454803aa502ac89379c17f5b',1,'comanche.php']]], + ['comanche_5fmenu',['comanche_menu',['../comanche_8php.html#ad5a44e42231759aba1dda49e0490501e',1,'comanche.php']]], ['comanche_5fparser',['comanche_parser',['../comanche_8php.html#a1a208fdb40dd83d6298caec4290ee922',1,'comanche.php']]], ['comanche_5fregion',['comanche_region',['../comanche_8php.html#a5718daeda40bf835345fe061e8808cdf',1,'comanche.php']]], ['comanche_5freplace_5fregion',['comanche_replace_region',['../comanche_8php.html#a028f004d5b8c23d6367816d899e17cfe',1,'comanche.php']]], diff --git a/doc/html/search/all_66.js b/doc/html/search/all_66.js index f9ff7aa3a..663aff8d5 100644 --- a/doc/html/search/all_66.js +++ b/doc/html/search/all_66.js @@ -70,5 +70,6 @@ var searchData= ['fsuggest_5fpost',['fsuggest_post',['../fsuggest_8php.html#a61ecfe10ce937ed526614f8fd3de3c7d',1,'fsuggest.php']]], ['ftosmarty',['fToSmarty',['../namespacefriendica-to-smarty-tpl.html#a89388ea9b2826e8218ed480e917d8105',1,'friendica-to-smarty-tpl']]], ['full_2ephp',['full.php',['../full_8php.html',1,'']]], + ['functions_2ephp',['functions.php',['../functions_8php.html',1,'']]], ['fresh_20_2d_20the_20freaking_20red_20shell',['Fresh - The Freaking REd Shell',['../md_fresh.html',1,'']]] ]; diff --git a/doc/html/search/all_67.js b/doc/html/search/all_67.js index 8901bffa8..d0dd56fdb 100644 --- a/doc/html/search/all_67.js +++ b/doc/html/search/all_67.js @@ -14,6 +14,7 @@ var searchData= ['get_5fbb_5ftag_5fpos',['get_bb_tag_pos',['../bb2diaspora_8php.html#a4c2f8f11b29a06809d9b07782215b1b2',1,'bb2diaspora.php']]], ['get_5fbest_5flanguage',['get_best_language',['../language_8php.html#a980dee1d8715a98ab02e36b59facf8ed',1,'language.php']]], ['get_5fbirthdays',['get_birthdays',['../identity_8php.html#ad2c97627a313d53df1a1c7b4215ddb51',1,'identity.php']]], + ['get_5fbookmark_5flink',['get_bookmark_link',['../include_2bookmarks_8php.html#a743763b0ce83af0bbc8a2f7ac16033aa',1,'bookmarks.php']]], ['get_5fbrowser_5flanguage',['get_browser_language',['../language_8php.html#ace67d6cad57da08d030ad9dc9b8c836e',1,'language.php']]], ['get_5fcapath',['get_capath',['../include_2network_8php.html#a78e89557b2fbd344ad790846d761b0c7',1,'network.php']]], ['get_5fchannel',['get_channel',['../classApp.html#a084e03c77686d8c13390fef3f7428a2b',1,'App']]], @@ -113,8 +114,8 @@ var searchData= ['gravity_5flike',['GRAVITY_LIKE',['../boot_8php.html#a1f5906598e90b5ea2b4245f682be4348',1,'boot.php']]], ['gravity_5fparent',['GRAVITY_PARENT',['../boot_8php.html#a2af173e4e9836ee7c90757b4793a2be3',1,'boot.php']]], ['greenthumbnails_2ephp',['greenthumbnails.php',['../greenthumbnails_8php.html',1,'']]], - ['group_2ephp',['group.php',['../include_2group_8php.html',1,'']]], ['group_2ephp',['group.php',['../mod_2group_8php.html',1,'']]], + ['group_2ephp',['group.php',['../include_2group_8php.html',1,'']]], ['group_5fadd',['group_add',['../include_2group_8php.html#a06ec565d2b64e79044e7c1bf91a2a4ce',1,'group.php']]], ['group_5fadd_5fmember',['group_add_member',['../include_2group_8php.html#a0122ef312df2c5546b1a46b3e6c7b31b',1,'group.php']]], ['group_5fbyname',['group_byname',['../include_2group_8php.html#abd66a5ea34a07a3422dc2dde6c7b3ecb',1,'group.php']]], diff --git a/doc/html/search/all_69.js b/doc/html/search/all_69.js index 3ec2ac6ca..c8df66c16 100644 --- a/doc/html/search/all_69.js +++ b/doc/html/search/all_69.js @@ -4,7 +4,7 @@ var searchData= ['identity_5fbasic_5fexport',['identity_basic_export',['../identity_8php.html#a3570a4eb77332b292d394c4132cb8f03',1,'identity.php']]], ['identity_5fcheck_5fservice_5fclass',['identity_check_service_class',['../identity_8php.html#ac9fcd5c4c371998790b5c55c3d0f4633',1,'identity.php']]], ['ids_5fto_5fquerystr',['ids_to_querystr',['../text_8php.html#a436a8de00c942364c2d0fcfc7e1f4b5a',1,'text.php']]], - ['if',['if',['../php2po_8php.html#a45b05625748f412ec97afcd61cf7980b',1,'if(): php2po.php'],['../php_2default_8php.html#a23bc1996b18e69c1a3ab44536613a762',1,'if(): default.php'],['../full_8php.html#a6fac1b4b8cdfde06ea1b7713479e92db',1,'if(): full.php'],['../apw_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a',1,'if(): style.php']]], + ['if',['if',['../php2po_8php.html#a45b05625748f412ec97afcd61cf7980b',1,'if(): php2po.php'],['../php_2default_8php.html#a23bc1996b18e69c1a3ab44536613a762',1,'if(): default.php'],['../full_8php.html#a6fac1b4b8cdfde06ea1b7713479e92db',1,'if(): full.php'],['../apw_2php_2style_8php.html#aea44f144ed341be483b334a7634c1aec',1,'if(): style.php']]], ['imagestring',['imageString',['../classphoto__driver.html#abc9f73ad90923772d52b9fcc4eb117dd',1,'photo_driver\imageString()'],['../classphoto__gd.html#a0795fc029be382557ae3f6e285f40e00',1,'photo_gd\imageString()'],['../classphoto__imagick.html#a70adbef31128c0ac8cbc5dcf34cdb019',1,'photo_imagick\imageString()']]], ['import_2ephp',['import.php',['../import_8php.html',1,'']]], ['import_5fauthor_5frss',['import_author_rss',['../items_8php.html#a6bee35961f2e32905f20367a9309d627',1,'items.php']]], diff --git a/doc/html/search/all_6d.js b/doc/html/search/all_6d.js index ec6e4bbe9..e57fa32aa 100644 --- a/doc/html/search/all_6d.js +++ b/doc/html/search/all_6d.js @@ -38,11 +38,12 @@ var searchData= ['menu_5fedit_5fitem',['menu_edit_item',['../include_2menu_8php.html#acb66f80ca895a6ccd562b3d9ae7b41aa',1,'menu.php']]], ['menu_5ffetch',['menu_fetch',['../include_2menu_8php.html#a68ebbf492470c930f652013656f9071d',1,'menu.php']]], ['menu_5ffetch_5fid',['menu_fetch_id',['../include_2menu_8php.html#a47447c01ba8ea04cd74af1d4c5b68fc7',1,'menu.php']]], + ['menu_5fitem_5fchatroom',['MENU_ITEM_CHATROOM',['../boot_8php.html#af6b3de425e5849c73370a484c44607a3',1,'boot.php']]], ['menu_5fitem_5fnewwin',['MENU_ITEM_NEWWIN',['../boot_8php.html#ad11f30a6590d3d77f0c5e1e3909af8f5',1,'boot.php']]], ['menu_5fitem_5fzid',['MENU_ITEM_ZID',['../boot_8php.html#aed0dfb35f7dd00dc9e4f868ea7f7ff53',1,'boot.php']]], ['menu_5flist',['menu_list',['../include_2menu_8php.html#a32701c4245e78ba9106eef52c08bf33d',1,'menu.php']]], ['menu_5fpost',['menu_post',['../mod_2menu_8php.html#aaa491ef173868fe002aece4632bcf393',1,'menu.php']]], - ['menu_5frender',['menu_render',['../include_2menu_8php.html#a4d7123b0577fa994770199f9b831da11',1,'menu.php']]], + ['menu_5frender',['menu_render',['../include_2menu_8php.html#a03a5deed3908543581c074ce333e9d6a',1,'menu.php']]], ['menu_5fsystem',['MENU_SYSTEM',['../boot_8php.html#a718a801b0be6cbaef5e519516da12721',1,'boot.php']]], ['message_2ephp',['message.php',['../include_2message_8php.html',1,'']]], ['message_2ephp',['message.php',['../mod_2message_8php.html',1,'']]], @@ -56,6 +57,7 @@ var searchData= ['mitem_5fcontent',['mitem_content',['../mitem_8php.html#a7a31b702ecad18eeb6a38b243ff0037e',1,'mitem.php']]], ['mitem_5finit',['mitem_init',['../mitem_8php.html#a9627cd857cafdf04e4fc0ae48c8e8518',1,'mitem.php']]], ['mitem_5fpost',['mitem_post',['../mitem_8php.html#a6ee694cca4b551a20d7c7a94b5243ec1',1,'mitem.php']]], + ['mod_5fchanview_2ephp',['mod_chanview.php',['../mod__chanview_8php.html',1,'']]], ['mod_5ffilestorage_2ephp',['mod_filestorage.php',['../mod__filestorage_8php.html',1,'']]], ['mod_5fimport_2ephp',['mod_import.php',['../mod__import_8php.html',1,'']]], ['mood_2ephp',['mood.php',['../mood_8php.html',1,'']]], diff --git a/doc/html/search/all_72.js b/doc/html/search/all_72.js index 376618126..f738d3be8 100644 --- a/doc/html/search/all_72.js +++ b/doc/html/search/all_72.js @@ -6,6 +6,9 @@ var searchData= ['random_5fstring_5ftext',['RANDOM_STRING_TEXT',['../text_8php.html#a2ffd79c60cc87cec24ef76447b905187',1,'text.php']]], ['randprof_2ephp',['randprof.php',['../randprof_8php.html',1,'']]], ['randprof_5finit',['randprof_init',['../randprof_8php.html#abf5dba3c608b9304cbf68327cd31b090',1,'randprof.php']]], + ['rbmark_2ephp',['rbmark.php',['../rbmark_8php.html',1,'']]], + ['rbmark_5fcontent',['rbmark_content',['../rbmark_8php.html#a43fec4960b50926251574762cc491f76',1,'rbmark.php']]], + ['rbmark_5fpost',['rbmark_post',['../rbmark_8php.html#ac5a66aa8599fa5dc702bae396d8d1f8c',1,'rbmark.php']]], ['rconnect_5furl',['rconnect_url',['../Contact_8php.html#a2f4f495d53f2a334ab75292af79d3c91',1,'Contact.php']]], ['rdelim',['rdelim',['../namespacefriendica-to-smarty-tpl.html#a8540514fb7c4aa18ad2dffa2a975036b',1,'friendica-to-smarty-tpl']]], ['readme_2emd',['README.md',['../apw_2README_8md.html',1,'']]], diff --git a/doc/html/search/all_73.js b/doc/html/search/all_73.js index 4253ba835..762633b19 100644 --- a/doc/html/search/all_73.js +++ b/doc/html/search/all_73.js @@ -87,6 +87,7 @@ var searchData= ['sources_5fcontent',['sources_content',['../sources_8php.html#ac442ccef080ab95772d8929fcafcb4b7',1,'sources.php']]], ['sources_5fpost',['sources_post',['../sources_8php.html#ac73298ff162ce7b2de8dcaf3d3305b1e',1,'sources.php']]], ['spam_2ephp',['spam.php',['../spam_8php.html',1,'']]], + ['splitfilename',['splitFilename',['../functions_8php.html#adefe514c95680928b3aae250cbc3c663',1,'functions.php']]], ['ssl_5fpolicy_5ffull',['SSL_POLICY_FULL',['../boot_8php.html#a02566ac9d891369a1d3ebb81a15722fc',1,'boot.php']]], ['ssl_5fpolicy_5fnone',['SSL_POLICY_NONE',['../boot_8php.html#af86c651547aa8f9e549ee40a09455549',1,'boot.php']]], ['ssl_5fpolicy_5fselfsign',['SSL_POLICY_SELFSIGN',['../boot_8php.html#adca48aee78465ae3064ca4432c0d87b5',1,'boot.php']]], diff --git a/doc/html/search/all_74.js b/doc/html/search/all_74.js index c61b08f93..49f09c40e 100644 --- a/doc/html/search/all_74.js +++ b/doc/html/search/all_74.js @@ -45,9 +45,10 @@ var searchData= ['theme_5fattachments',['theme_attachments',['../text_8php.html#af9c9ac3f74c82dc60acfa404d0e9dc53',1,'text.php']]], ['theme_5fcontent',['theme_content',['../view_2theme_2apw_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d',1,'theme_content(&$a): config.php'],['../view_2theme_2blogga_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d',1,'theme_content(&$a): config.php'],['../view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d',1,'theme_content(&$a): config.php'],['../view_2theme_2redbasic_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d',1,'theme_content(&$a): config.php']]], ['theme_5finclude',['theme_include',['../plugin_8php.html#a65fedcffbe03562ef844cabee37d34e2',1,'plugin.php']]], - ['theme_5finit_2ephp',['theme_init.php',['../php_2theme__init_8php.html',1,'']]], - ['theme_5finit_2ephp',['theme_init.php',['../theme_2blogga_2php_2theme__init_8php.html',1,'']]], ['theme_5finit_2ephp',['theme_init.php',['../theme_2redbasic_2php_2theme__init_8php.html',1,'']]], + ['theme_5finit_2ephp',['theme_init.php',['../php_2theme__init_8php.html',1,'']]], + ['theme_5finit_2ephp',['theme_init.php',['../theme_2apw_2php_2theme__init_8php.html',1,'']]], + ['theme_5finit_2ephp',['theme_init.php',['../theme_2blogga_2php_2theme__init_8php.html',1,'']]], ['theme_5fpost',['theme_post',['../view_2theme_2apw_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6',1,'theme_post(&$a): config.php'],['../view_2theme_2blogga_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6',1,'theme_post(&$a): config.php'],['../view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6',1,'theme_post(&$a): config.php'],['../view_2theme_2redbasic_2php_2config_8php.html#ad29461920cf03b9ce1428e21eb1f4ba6',1,'theme_post(&$a): config.php']]], ['theme_5fstatus',['theme_status',['../admin_8php.html#ad4f74f33944a98b56d2c8c7601f124a4',1,'admin.php']]], ['thing_2ephp',['thing.php',['../thing_8php.html',1,'']]], diff --git a/doc/html/search/all_77.js b/doc/html/search/all_77.js index 2f2a98361..1f1afe116 100644 --- a/doc/html/search/all_77.js +++ b/doc/html/search/all_77.js @@ -17,6 +17,7 @@ var searchData= ['widedarkness_2ephp',['widedarkness.php',['../widedarkness_8php.html',1,'']]], ['widget_5faffinity',['widget_affinity',['../widgets_8php.html#add9b24d3304e529a7975e96122315554',1,'widgets.php']]], ['widget_5farchive',['widget_archive',['../widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65',1,'widgets.php']]], + ['widget_5fbookmarkedchats',['widget_bookmarkedchats',['../widgets_8php.html#a0e2f5179ed1a73b282dfda7270fcabb3',1,'widgets.php']]], ['widget_5fcategories',['widget_categories',['../widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b',1,'widgets.php']]], ['widget_5fchatroom_5flist',['widget_chatroom_list',['../widgets_8php.html#a47c72aac42058ea086c9ef8651c259da',1,'widgets.php']]], ['widget_5fcollections',['widget_collections',['../widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f',1,'widgets.php']]], @@ -35,6 +36,7 @@ var searchData= ['widget_5fprofile',['widget_profile',['../widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923',1,'widgets.php']]], ['widget_5fsavedsearch',['widget_savedsearch',['../widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8',1,'widgets.php']]], ['widget_5fsettings_5fmenu',['widget_settings_menu',['../widgets_8php.html#aaa73bcf1702eaadd9dcd253502f55e01',1,'widgets.php']]], + ['widget_5fsuggestedchats',['widget_suggestedchats',['../widgets_8php.html#a50b1410238100c8a94c06b0aa63ee3b8',1,'widgets.php']]], ['widget_5fsuggestions',['widget_suggestions',['../widgets_8php.html#a0d404276fedc59f5038cf5c085028326',1,'widgets.php']]], ['widget_5ftagcloud',['widget_tagcloud',['../widgets_8php.html#a6dbc227aac750774284ee39c45f0a200',1,'widgets.php']]], ['widget_5ftagcloud_5fwall',['widget_tagcloud_wall',['../widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653',1,'widgets.php']]], diff --git a/doc/html/search/files_66.js b/doc/html/search/files_66.js index aba1883e1..6def5fb77 100644 --- a/doc/html/search/files_66.js +++ b/doc/html/search/files_66.js @@ -13,5 +13,6 @@ var searchData= ['friendica_2dto_2dsmarty_2dtpl_2epy',['friendica-to-smarty-tpl.py',['../friendica-to-smarty-tpl_8py.html',1,'']]], ['friendica_5fsmarty_2ephp',['friendica_smarty.php',['../friendica__smarty_8php.html',1,'']]], ['fsuggest_2ephp',['fsuggest.php',['../fsuggest_8php.html',1,'']]], - ['full_2ephp',['full.php',['../full_8php.html',1,'']]] + ['full_2ephp',['full.php',['../full_8php.html',1,'']]], + ['functions_2ephp',['functions.php',['../functions_8php.html',1,'']]] ]; diff --git a/doc/html/search/files_6d.js b/doc/html/search/files_6d.js index 7176d95a6..38598f57a 100644 --- a/doc/html/search/files_6d.js +++ b/doc/html/search/files_6d.js @@ -11,6 +11,7 @@ var searchData= ['minimal_2ephp',['minimal.php',['../minimal_8php.html',1,'']]], ['minimalisticdarkness_2ephp',['minimalisticdarkness.php',['../minimalisticdarkness_8php.html',1,'']]], ['mitem_2ephp',['mitem.php',['../mitem_8php.html',1,'']]], + ['mod_5fchanview_2ephp',['mod_chanview.php',['../mod__chanview_8php.html',1,'']]], ['mod_5ffilestorage_2ephp',['mod_filestorage.php',['../mod__filestorage_8php.html',1,'']]], ['mod_5fimport_2ephp',['mod_import.php',['../mod__import_8php.html',1,'']]], ['mood_2ephp',['mood.php',['../mood_8php.html',1,'']]], diff --git a/doc/html/search/files_72.js b/doc/html/search/files_72.js index e6734d438..427670307 100644 --- a/doc/html/search/files_72.js +++ b/doc/html/search/files_72.js @@ -1,6 +1,7 @@ var searchData= [ ['randprof_2ephp',['randprof.php',['../randprof_8php.html',1,'']]], + ['rbmark_2ephp',['rbmark.php',['../rbmark_8php.html',1,'']]], ['readme_2emd',['README.md',['../apw_2README_8md.html',1,'']]], ['readme_2emd',['README.md',['../blogga_2php_2README_8md.html',1,'']]], ['redbasic_2ephp',['redbasic.php',['../redbasic_8php.html',1,'']]], diff --git a/doc/html/search/files_74.js b/doc/html/search/files_74.js index ae0686730..3a46faacf 100644 --- a/doc/html/search/files_74.js +++ b/doc/html/search/files_74.js @@ -5,13 +5,14 @@ var searchData= ['taxonomy_2ephp',['taxonomy.php',['../taxonomy_8php.html',1,'']]], ['template_5fprocessor_2ephp',['template_processor.php',['../template__processor_8php.html',1,'']]], ['text_2ephp',['text.php',['../text_8php.html',1,'']]], - ['theme_2ephp',['theme.php',['../blogga_2view_2theme_2blog_2theme_8php.html',1,'']]], - ['theme_2ephp',['theme.php',['../blogga_2php_2theme_8php.html',1,'']]], - ['theme_2ephp',['theme.php',['../redbasic_2php_2theme_8php.html',1,'']]], ['theme_2ephp',['theme.php',['../apw_2php_2theme_8php.html',1,'']]], - ['theme_5finit_2ephp',['theme_init.php',['../theme_2blogga_2php_2theme__init_8php.html',1,'']]], - ['theme_5finit_2ephp',['theme_init.php',['../php_2theme__init_8php.html',1,'']]], + ['theme_2ephp',['theme.php',['../blogga_2php_2theme_8php.html',1,'']]], + ['theme_2ephp',['theme.php',['../blogga_2view_2theme_2blog_2theme_8php.html',1,'']]], + ['theme_2ephp',['theme.php',['../redbasic_2php_2theme_8php.html',1,'']]], ['theme_5finit_2ephp',['theme_init.php',['../theme_2redbasic_2php_2theme__init_8php.html',1,'']]], + ['theme_5finit_2ephp',['theme_init.php',['../php_2theme__init_8php.html',1,'']]], + ['theme_5finit_2ephp',['theme_init.php',['../theme_2apw_2php_2theme__init_8php.html',1,'']]], + ['theme_5finit_2ephp',['theme_init.php',['../theme_2blogga_2php_2theme__init_8php.html',1,'']]], ['thing_2ephp',['thing.php',['../thing_8php.html',1,'']]], ['toggle_5fmobile_2ephp',['toggle_mobile.php',['../toggle__mobile_8php.html',1,'']]], ['toggle_5fsafesearch_2ephp',['toggle_safesearch.php',['../toggle__safesearch_8php.html',1,'']]], diff --git a/doc/html/search/functions_62.js b/doc/html/search/functions_62.js index ffdeffab1..4331bc195 100644 --- a/doc/html/search/functions_62.js +++ b/doc/html/search/functions_62.js @@ -25,7 +25,7 @@ var searchData= ['blogtheme_5fdisplay_5fitem',['blogtheme_display_item',['../blogga_2view_2theme_2blog_2theme_8php.html#a028ae8e9f2824670dfa76a6651d817e5',1,'theme.php']]], ['blogtheme_5fform',['blogtheme_form',['../view_2theme_2blogga_2php_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27',1,'blogtheme_form(&$a, $headimg, $headimghome): config.php'],['../view_2theme_2blogga_2view_2theme_2blog_2config_8php.html#a8a311a402d3e746ce53fadc38e4b2d27',1,'blogtheme_form(&$a, $headimg, $headimghome): config.php']]], ['blogtheme_5fimgurl',['blogtheme_imgurl',['../blogga_2view_2theme_2blog_2theme_8php.html#af634a3f721c5e238530d0636d33230ec',1,'theme.php']]], - ['bookmark_5fadd',['bookmark_add',['../include_2bookmarks_8php.html#a88ce7dee6a3dc7465aa9b8eaa45b0087',1,'bookmarks.php']]], + ['bookmark_5fadd',['bookmark_add',['../include_2bookmarks_8php.html#aef1cb2968c41c759f2d106e1088ca323',1,'bookmarks.php']]], ['bookmarks_5fcontent',['bookmarks_content',['../mod_2bookmarks_8php.html#a774364b1c8404529581083631703527a',1,'bookmarks.php']]], ['bookmarks_5finit',['bookmarks_init',['../mod_2bookmarks_8php.html#a6b7942f3d27e40f0f47c88704127b9b3',1,'bookmarks.php']]], ['breaklines',['breaklines',['../html2plain_8php.html#a3214912e3d00cf0a948072daccf16740',1,'html2plain.php']]], diff --git a/doc/html/search/functions_63.js b/doc/html/search/functions_63.js index 4feee718e..5d88fb38c 100644 --- a/doc/html/search/functions_63.js +++ b/doc/html/search/functions_63.js @@ -63,7 +63,7 @@ var searchData= ['collect_5frecipients',['collect_recipients',['../items_8php.html#a01e3cf44e082fa9bd06dcde5bf713d70',1,'items.php']]], ['collecturls',['collecturls',['../html2plain_8php.html#ae1c203d0f089d5678d73a6c64a395201',1,'html2plain.php']]], ['comanche_5fblock',['comanche_block',['../comanche_8php.html#a5a7ab801717d38e91ac910b933973887',1,'comanche.php']]], - ['comanche_5fmenu',['comanche_menu',['../comanche_8php.html#a1fe339e1454803aa502ac89379c17f5b',1,'comanche.php']]], + ['comanche_5fmenu',['comanche_menu',['../comanche_8php.html#ad5a44e42231759aba1dda49e0490501e',1,'comanche.php']]], ['comanche_5fparser',['comanche_parser',['../comanche_8php.html#a1a208fdb40dd83d6298caec4290ee922',1,'comanche.php']]], ['comanche_5fregion',['comanche_region',['../comanche_8php.html#a5718daeda40bf835345fe061e8808cdf',1,'comanche.php']]], ['comanche_5freplace_5fregion',['comanche_replace_region',['../comanche_8php.html#a028f004d5b8c23d6367816d899e17cfe',1,'comanche.php']]], diff --git a/doc/html/search/functions_67.js b/doc/html/search/functions_67.js index 7d13c746a..8257daf9c 100644 --- a/doc/html/search/functions_67.js +++ b/doc/html/search/functions_67.js @@ -14,6 +14,7 @@ var searchData= ['get_5fbb_5ftag_5fpos',['get_bb_tag_pos',['../bb2diaspora_8php.html#a4c2f8f11b29a06809d9b07782215b1b2',1,'bb2diaspora.php']]], ['get_5fbest_5flanguage',['get_best_language',['../language_8php.html#a980dee1d8715a98ab02e36b59facf8ed',1,'language.php']]], ['get_5fbirthdays',['get_birthdays',['../identity_8php.html#ad2c97627a313d53df1a1c7b4215ddb51',1,'identity.php']]], + ['get_5fbookmark_5flink',['get_bookmark_link',['../include_2bookmarks_8php.html#a743763b0ce83af0bbc8a2f7ac16033aa',1,'bookmarks.php']]], ['get_5fbrowser_5flanguage',['get_browser_language',['../language_8php.html#ace67d6cad57da08d030ad9dc9b8c836e',1,'language.php']]], ['get_5fcapath',['get_capath',['../include_2network_8php.html#a78e89557b2fbd344ad790846d761b0c7',1,'network.php']]], ['get_5fchannel',['get_channel',['../classApp.html#a084e03c77686d8c13390fef3f7428a2b',1,'App']]], diff --git a/doc/html/search/functions_6d.js b/doc/html/search/functions_6d.js index 1b238fec5..8ad85e543 100644 --- a/doc/html/search/functions_6d.js +++ b/doc/html/search/functions_6d.js @@ -25,7 +25,7 @@ var searchData= ['menu_5ffetch_5fid',['menu_fetch_id',['../include_2menu_8php.html#a47447c01ba8ea04cd74af1d4c5b68fc7',1,'menu.php']]], ['menu_5flist',['menu_list',['../include_2menu_8php.html#a32701c4245e78ba9106eef52c08bf33d',1,'menu.php']]], ['menu_5fpost',['menu_post',['../mod_2menu_8php.html#aaa491ef173868fe002aece4632bcf393',1,'menu.php']]], - ['menu_5frender',['menu_render',['../include_2menu_8php.html#a4d7123b0577fa994770199f9b831da11',1,'menu.php']]], + ['menu_5frender',['menu_render',['../include_2menu_8php.html#a03a5deed3908543581c074ce333e9d6a',1,'menu.php']]], ['message_5fcontent',['message_content',['../mod_2message_8php.html#ac72dfed3ce08fcb331d66b37edc6e15f',1,'message.php']]], ['micropro',['micropro',['../text_8php.html#a2a902f5fdba8646333e997898ac45ea3',1,'text.php']]], ['mimetype_5fselect',['mimetype_select',['../text_8php.html#a1633412120f52bdce5f43e0a127d9293',1,'text.php']]], diff --git a/doc/html/search/functions_72.js b/doc/html/search/functions_72.js index 96cc1c6c3..0dbf26e94 100644 --- a/doc/html/search/functions_72.js +++ b/doc/html/search/functions_72.js @@ -3,6 +3,8 @@ var searchData= ['random_5fprofile',['random_profile',['../Contact_8php.html#a852fa476f0c70bde10a4f2533aec5f71',1,'Contact.php']]], ['random_5fstring',['random_string',['../text_8php.html#a9d6a5ee1290de7a8b483fe78585daade',1,'text.php']]], ['randprof_5finit',['randprof_init',['../randprof_8php.html#abf5dba3c608b9304cbf68327cd31b090',1,'randprof.php']]], + ['rbmark_5fcontent',['rbmark_content',['../rbmark_8php.html#a43fec4960b50926251574762cc491f76',1,'rbmark.php']]], + ['rbmark_5fpost',['rbmark_post',['../rbmark_8php.html#ac5a66aa8599fa5dc702bae396d8d1f8c',1,'rbmark.php']]], ['rconnect_5furl',['rconnect_url',['../Contact_8php.html#a2f4f495d53f2a334ab75292af79d3c91',1,'Contact.php']]], ['rebuild_5ftheme_5ftable',['rebuild_theme_table',['../admin_8php.html#ae46311a3fefc21abc838a26e91789de6',1,'admin.php']]], ['red_5fcomment',['red_comment',['../post__to__red_8php.html#a085c250d4ceff5e4f10052f3d2039823',1,'post_to_red.php']]], diff --git a/doc/html/search/functions_73.js b/doc/html/search/functions_73.js index 1448351cc..9c4468e50 100644 --- a/doc/html/search/functions_73.js +++ b/doc/html/search/functions_73.js @@ -74,6 +74,7 @@ var searchData= ['sort_5fthr_5fcreated_5frev',['sort_thr_created_rev',['../conversation_8php.html#a9cc2a679606da9e535a06433f9f553a0',1,'conversation.php']]], ['sources_5fcontent',['sources_content',['../sources_8php.html#ac442ccef080ab95772d8929fcafcb4b7',1,'sources.php']]], ['sources_5fpost',['sources_post',['../sources_8php.html#ac73298ff162ce7b2de8dcaf3d3305b1e',1,'sources.php']]], + ['splitfilename',['splitFilename',['../functions_8php.html#adefe514c95680928b3aae250cbc3c663',1,'functions.php']]], ['sslify',['sslify',['../text_8php.html#a33bdb5d4bfff2ede7caf61a98ac0a2e9',1,'text.php']]], ['sslify_5finit',['sslify_init',['../sslify_8php.html#a75b11e54a3d1fc83e7d4c0e8b4dab316',1,'sslify.php']]], ['starred_5finit',['starred_init',['../starred_8php.html#a63024fb418c678e49fd535e3752d349a',1,'starred.php']]], diff --git a/doc/html/search/functions_77.js b/doc/html/search/functions_77.js index b7d1c9ca2..8c51d1a69 100644 --- a/doc/html/search/functions_77.js +++ b/doc/html/search/functions_77.js @@ -10,6 +10,7 @@ var searchData= ['what_5fnext',['what_next',['../setup_8php.html#aea1ebdda58ec938f4e7b31aa5c5f6b58',1,'setup.php']]], ['widget_5faffinity',['widget_affinity',['../widgets_8php.html#add9b24d3304e529a7975e96122315554',1,'widgets.php']]], ['widget_5farchive',['widget_archive',['../widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65',1,'widgets.php']]], + ['widget_5fbookmarkedchats',['widget_bookmarkedchats',['../widgets_8php.html#a0e2f5179ed1a73b282dfda7270fcabb3',1,'widgets.php']]], ['widget_5fcategories',['widget_categories',['../widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b',1,'widgets.php']]], ['widget_5fchatroom_5flist',['widget_chatroom_list',['../widgets_8php.html#a47c72aac42058ea086c9ef8651c259da',1,'widgets.php']]], ['widget_5fcollections',['widget_collections',['../widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f',1,'widgets.php']]], @@ -28,6 +29,7 @@ var searchData= ['widget_5fprofile',['widget_profile',['../widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923',1,'widgets.php']]], ['widget_5fsavedsearch',['widget_savedsearch',['../widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8',1,'widgets.php']]], ['widget_5fsettings_5fmenu',['widget_settings_menu',['../widgets_8php.html#aaa73bcf1702eaadd9dcd253502f55e01',1,'widgets.php']]], + ['widget_5fsuggestedchats',['widget_suggestedchats',['../widgets_8php.html#a50b1410238100c8a94c06b0aa63ee3b8',1,'widgets.php']]], ['widget_5fsuggestions',['widget_suggestions',['../widgets_8php.html#a0d404276fedc59f5038cf5c085028326',1,'widgets.php']]], ['widget_5ftagcloud',['widget_tagcloud',['../widgets_8php.html#a6dbc227aac750774284ee39c45f0a200',1,'widgets.php']]], ['widget_5ftagcloud_5fwall',['widget_tagcloud_wall',['../widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653',1,'widgets.php']]], diff --git a/doc/html/search/variables_24.js b/doc/html/search/variables_24.js index d2a44072d..b40d9eb43 100644 --- a/doc/html/search/variables_24.js +++ b/doc/html/search/variables_24.js @@ -17,7 +17,7 @@ var searchData= ['_24cached_5fprofile_5fpicdate',['$cached_profile_picdate',['../classApp.html#aab4a685d15a363bb1d7edbbc20bfb94e',1,'App']]], ['_24called_5fapi',['$called_api',['../include_2api_8php.html#aa62b15a6bbb280e86b98132eb214013d',1,'api.php']]], ['_24category',['$category',['../classApp.html#a5cfc098c061b7d765add58fd2ca97445',1,'App']]], - ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()'],['../php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php']]], + ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()'],['../php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php'],['../theme_2apw_2php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php']]], ['_24channel_5fhash',['$channel_hash',['../classRedBasicAuth.html#ad5a3ea4dc4783b242d9dc6e76478b6ef',1,'RedBasicAuth']]], ['_24channel_5fid',['$channel_id',['../classRedBasicAuth.html#a2dab393650d1573e3515969a153e8354',1,'RedBasicAuth']]], ['_24channel_5fname',['$channel_name',['../classRedBasicAuth.html#a438ab125b6ef46581947e35d49cdebac',1,'RedBasicAuth']]], @@ -47,9 +47,11 @@ var searchData= ['_24done',['$done',['../classTemplate.html#abda4c8d049f70553338eae7c905e9d5c',1,'Template']]], ['_24error',['$error',['../classApp.html#ac1a8b2cd40609b231a560201a08852ba',1,'App\$error()'],['../classdba__driver.html#a84675d28c7bd9b7290dd37e66dbd216c',1,'dba_driver\$error()']]], ['_24ext_5fpath',['$ext_path',['../classRedDirectory.html#a0f113244cd85c17848df991001d024f4',1,'RedDirectory']]], + ['_24fext',['$fext',['../apw_2php_2style_8php.html#a404171b8f918c116e45a6421c92f0cc9',1,'style.php']]], ['_24filelist',['$filelist',['../docblox__errorchecker_8php.html#a648a570b0f9f6e0e51b7267647c4b09b',1,'docblox_errorchecker.php']]], ['_24filename',['$filename',['../classFriendicaSmarty.html#a33fabbd4d6eef869df496adf357ae690',1,'FriendicaSmarty']]], ['_24files',['$files',['../extract_8php.html#a9590b15215a21e9b42eb546aeef79704',1,'$files(): extract.php'],['../tpldebug_8php.html#a5358407d65f2ca826f96356a6642d149',1,'$files(): tpldebug.php'],['../typo_8php.html#a9590b15215a21e9b42eb546aeef79704',1,'$files(): typo.php']]], + ['_24fname',['$fname',['../apw_2php_2style_8php.html#ab9e0f70d44ab67f4334f9883631777fc',1,'style.php']]], ['_24folder_5fhash',['$folder_hash',['../classRedDirectory.html#aa10254abf177bb2a0e4a88495725e09b',1,'RedDirectory']]], ['_24force_5fmax_5fitems',['$force_max_items',['../classApp.html#ae3f47830543d0d902f66913def8db66b',1,'App']]], ['_24gc_5fprobability',['$gc_probability',['../session_8php.html#a96b09cc763572f45280786a7b33feb7e',1,'session.php']]], @@ -60,6 +62,7 @@ var searchData= ['_24hooks',['$hooks',['../classApp.html#a3694aa1907aa103a2adbc71f926f0fa0',1,'App']]], ['_24hostname',['$hostname',['../classApp.html#a037049cba88dfc6ff94f4b5b779e3fd3',1,'App']]], ['_24i',['$i',['../docblox__errorchecker_8php.html#a83018d9153d17d91fbcf3bc10158d34f',1,'docblox_errorchecker.php']]], + ['_24iconsize',['$iconsize',['../apw_2php_2style_8php.html#a07adb491994deb72a00a975b431d3e30',1,'style.php']]], ['_24identities',['$identities',['../classApp.html#a7954862f44f606b0ff83d4c74d15e792',1,'App']]], ['_24image',['$image',['../classphoto__driver.html#a7c78b5a01afe61ba3895ac07f4869b55',1,'photo_driver']]], ['_24infile',['$infile',['../php2po_8php.html#a61f8ddeb5557d46ebc546cc355bda214',1,'php2po.php']]], @@ -81,8 +84,10 @@ var searchData= ['_24name',['$name',['../classFriendicaSmartyEngine.html#aaba6a42101bc9ae32e36b7fa2e243f02',1,'FriendicaSmartyEngine\$name()'],['../classRedFile.html#acc48c05cd5a70951cb3c615ad84f03ba',1,'RedFile\$name()'],['../classTemplate.html#a6eb301a51cc94d8b94f4548fbad85eae',1,'Template\$name()']]], ['_24nav_5fpercent_5fmin_5fopacity',['$nav_percent_min_opacity',['../redbasic_2php_2style_8php.html#a01c151bf47f7da2b979aaa4cb868da4c',1,'style.php']]], ['_24nav_5fsel',['$nav_sel',['../classApp.html#a33a8e90b60ec4438f6fbf299d0f6839c',1,'App']]], + ['_24navheight',['$navheight',['../apw_2php_2style_8php.html#a1c8a7c0db8c174239f3909cb931cb872',1,'style.php']]], ['_24needed',['$needed',['../docblox__errorchecker_8php.html#a852004caba0a34390297a079f4aaac73',1,'docblox_errorchecker.php']]], ['_24nodes',['$nodes',['../classTemplate.html#a8f4d17e49f42b876a97364c13fb572d1',1,'Template']]], + ['_24obliquemacro',['$obliquemacro',['../apw_2php_2style_8php.html#a2cad82a3ecadbe58dbc4197de1c63da0',1,'style.php']]], ['_24observer',['$observer',['../classApp.html#a4ffe529fb14389f7fedf5fdc5f722e7f',1,'App\$observer()'],['../classConversation.html#a8748445aa26047ebed5141f3c3cbc244',1,'Conversation\$observer()'],['../classRedBasicAuth.html#aa75dc43b59adc98e38a98517d3fd35d1',1,'RedBasicAuth\$observer()']]], ['_24os_5fpath',['$os_path',['../classRedDirectory.html#a3c148c07ad909985125aa4926d8d0021',1,'RedDirectory']]], ['_24out',['$out',['../php2po_8php.html#a48cb304902320d173a4eaa41543327b9',1,'php2po.php']]], @@ -122,13 +127,16 @@ var searchData= ['_24scheme',['$scheme',['../classApp.html#ad082d63acc078e5bf23825a03bdd6a76',1,'App']]], ['_24search',['$search',['../classTemplate.html#a317d535946dc065c35dd5cd38380e6c6',1,'Template']]], ['_24sectionleft',['$sectionleft',['../minimalisticdarkness_8php.html#a0ac3f5b52212b0af87d513273da03ead',1,'minimalisticdarkness.php']]], + ['_24sectiontop',['$sectiontop',['../apw_2php_2style_8php.html#acb0dedc3212a7c60ab2474768becd79a',1,'style.php']]], ['_24sectionwidth',['$sectionwidth',['../minimalisticdarkness_8php.html#a04de7b747e4f0a353e0e38cf77c3404f',1,'minimalisticdarkness.php']]], ['_24session_5fexists',['$session_exists',['../session_8php.html#a62e4a6cb26b4bb1b8ddd8277b26090eb',1,'session.php']]], ['_24session_5fexpire',['$session_expire',['../session_8php.html#af0100a2642a5268594bbd5742a03d885',1,'session.php']]], + ['_24showlock',['$showlock',['../apw_2php_2style_8php.html#ad401ea1d1ba236f86863b4574f01e425',1,'style.php']]], ['_24sourcename',['$sourcename',['../classApp.html#a13710907ef62554a0b4dd8a5eaa2eb11',1,'App']]], ['_24stack',['$stack',['../classTemplate.html#a6f0efc256688c36110180b501067ff11',1,'Template']]], ['_24str',['$str',['../typohelper_8php.html#a7542d95618011800c61773127fa625cf',1,'typohelper.php']]], ['_24strings',['$strings',['../classApp.html#a5f64620473a9727a48ebe9cf6f335a98',1,'App']]], + ['_24strongmacro',['$strongmacro',['../apw_2php_2style_8php.html#aa58104ba36588bbf082cecbb3910e2ea',1,'style.php']]], ['_24template',['$template',['../classItem.html#a7f7bc059de377319282cb4ef4a828480',1,'Item']]], ['_24template_5fengine_5finstance',['$template_engine_instance',['../classApp.html#a6844aedad10e201b8c3d80cfc9e876d3',1,'App']]], ['_24template_5fengines',['$template_engines',['../classApp.html#a6859a4848a5c0049b4134cc4b34228b6',1,'App']]], @@ -153,5 +161,6 @@ var searchData= ['_24width',['$width',['../classphoto__driver.html#a3e4215890f4a4894bf3799a7d2e0c0b1',1,'photo_driver\$width()'],['../minimalisticdarkness_8php.html#a5795120b4b324bc4ca83f1e6fdce7d57',1,'$width(): minimalisticdarkness.php']]], ['_24writable',['$writable',['../classConversation.html#ae81221251307e315f566a11f921ce0a9',1,'Conversation']]], ['_24wwtop',['$wwtop',['../redbasic_2php_2style_8php.html#a61891d0d3e6894f52410d507b04e565d',1,'style.php']]], + ['_24x',['$x',['../apw_2php_2style_8php.html#af3a16c5f0dd7a74cf9acf6a49fff73a7',1,'style.php']]], ['_24zones',['$zones',['../extract_8php.html#a0cbe524ffc9a496114fd7ba9f423ef44',1,'extract.php']]] ]; diff --git a/doc/html/search/variables_69.js b/doc/html/search/variables_69.js index 5aa9e0fe6..bcf531cce 100644 --- a/doc/html/search/variables_69.js +++ b/doc/html/search/variables_69.js @@ -1,6 +1,6 @@ var searchData= [ - ['if',['if',['../php2po_8php.html#a45b05625748f412ec97afcd61cf7980b',1,'if(): php2po.php'],['../php_2default_8php.html#a23bc1996b18e69c1a3ab44536613a762',1,'if(): default.php'],['../full_8php.html#a6fac1b4b8cdfde06ea1b7713479e92db',1,'if(): full.php'],['../apw_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a',1,'if(): style.php']]], + ['if',['if',['../php2po_8php.html#a45b05625748f412ec97afcd61cf7980b',1,'if(): php2po.php'],['../php_2default_8php.html#a23bc1996b18e69c1a3ab44536613a762',1,'if(): default.php'],['../full_8php.html#a6fac1b4b8cdfde06ea1b7713479e92db',1,'if(): full.php'],['../apw_2php_2style_8php.html#aea44f144ed341be483b334a7634c1aec',1,'if(): style.php']]], ['item_5fblocked',['ITEM_BLOCKED',['../boot_8php.html#ab28dc518fa90b6f617dd8c564eb4f35f',1,'boot.php']]], ['item_5fbug',['ITEM_BUG',['../boot_8php.html#a87b0f279f8413c7e4d805c5d85f20d34',1,'boot.php']]], ['item_5fbuildblock',['ITEM_BUILDBLOCK',['../boot_8php.html#a7fc4b291a7cdaa48b38e27344ea183cf',1,'boot.php']]], diff --git a/doc/html/search/variables_6d.js b/doc/html/search/variables_6d.js index 68833d773..6453e2e5c 100644 --- a/doc/html/search/variables_6d.js +++ b/doc/html/search/variables_6d.js @@ -9,6 +9,7 @@ var searchData= ['max_5fimage_5flength',['MAX_IMAGE_LENGTH',['../boot_8php.html#a525ca93ff35d3535d1a2b8ba57876afa',1,'boot.php']]], ['max_5flikers',['MAX_LIKERS',['../boot_8php.html#a35625dacd2158b9f1f1a8e77f9f081fd',1,'boot.php']]], ['menu_5fbookmark',['MENU_BOOKMARK',['../boot_8php.html#a458e19af801bc4b0d1f1ce1a6d9e857e',1,'boot.php']]], + ['menu_5fitem_5fchatroom',['MENU_ITEM_CHATROOM',['../boot_8php.html#af6b3de425e5849c73370a484c44607a3',1,'boot.php']]], ['menu_5fitem_5fnewwin',['MENU_ITEM_NEWWIN',['../boot_8php.html#ad11f30a6590d3d77f0c5e1e3909af8f5',1,'boot.php']]], ['menu_5fitem_5fzid',['MENU_ITEM_ZID',['../boot_8php.html#aed0dfb35f7dd00dc9e4f868ea7f7ff53',1,'boot.php']]], ['menu_5fsystem',['MENU_SYSTEM',['../boot_8php.html#a718a801b0be6cbaef5e519516da12721',1,'boot.php']]] diff --git a/doc/html/security_8php.html b/doc/html/security_8php.html index d9f31f484..7940bd75d 100644 --- a/doc/html/security_8php.html +++ b/doc/html/security_8php.html @@ -132,7 +132,7 @@ Functions    check_form_security_token_ForbiddenOnErr ($typename= '', $formname= 'form_security_token')   -if(!function_exists('init_groups_visitor')) stream_perms_api_uids ($perms_min=PERMS_SITE) +if(!function_exists('init_groups_visitor')) stream_perms_api_uids ($perms_min=PERMS_SITE)    stream_perms_xchans ($perms_min=PERMS_SITE)   @@ -426,7 +426,7 @@ Functions
    - + diff --git a/doc/html/text_8php.html b/doc/html/text_8php.html index a26cbae9f..e009b49df 100644 --- a/doc/html/text_8php.html +++ b/doc/html/text_8php.html @@ -131,7 +131,7 @@ Functions - + @@ -688,7 +688,7 @@ Variables
    Returns
    string
    -

    Referenced by admin_page_logs(), chatsvc_post(), connect_post(), create_identity(), events_post(), fsuggest_post(), get_atom_elements(), item_post(), mail_post(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), network_content(), notes_init(), printable(), profiles_post(), thing_init(), and z_input_filter().

    +

    Referenced by admin_page_logs(), bookmark_add(), chatsvc_post(), connect_post(), create_identity(), events_post(), fsuggest_post(), get_atom_elements(), item_post(), mail_post(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), network_content(), notes_init(), poco_load(), printable(), profiles_post(), rbmark_content(), rbmark_post(), thing_init(), and z_input_filter().

    @@ -1274,7 +1274,7 @@ Variables
    if (!function_exists('init_groups_visitor')) stream_perms_api_uids if (!function_exists('init_groups_visitor')) stream_perms_api_uids (   $perms_min = PERMS_SITE)
     
     unxmlify ($s)
     
    if(!function_exists('hex2bin')) paginate (&$a)
    if(!function_exists('hex2bin')) paginate (&$a)
     
     alt_pager (&$a, $i, $more= '', $less= '')
     
    -

    Referenced by RedDirectory\__construct(), RedFile\__construct(), account_remove(), account_verify_password(), Item\add_child(), Conversation\add_thread(), admin_content(), admin_page_hubloc_post(), admin_post(), advanced_profile(), aes_encapsulate(), allowed_public_recips(), api_call(), api_channel_stream(), api_export_basic(), api_favorites(), api_get_user(), api_login(), api_oauth_request_token(), api_statuses_destroy(), api_statuses_mediap(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), attach_mkdir(), avatar_img(), base64url_decode(), blog_install(), blog_uninstall(), bookmark_add(), bookmarks_init(), build_sync_packet(), chanman_remove_everything_from_network(), channel_remove(), chanview_content(), check_config(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), RedDirectory\childExists(), cloud_init(), consume_feed(), conversation(), create_account(), create_identity(), RedDirectory\createDirectory(), RedDirectory\createFile(), cronhooks_run(), datetime_convert(), delete_imported_item(), deliver_run(), detect_language(), directory_content(), directory_run(), dirprofile_init(), downgrade_accounts(), email_send(), encode_item(), expire_run(), feed_init(), fetch_lrdd_template(), filer_content(), filerm_content(), fix_private_photos(), fix_system_urls(), RedFile\get(), get_atom_elements(), get_item_elements(), get_language_name(), Conversation\get_template_data(), RedDirectory\getChild(), RedDirectory\getChildren(), RedDirectory\getDir(), RedDirectory\getName(), RedFile\getName(), group_content(), guess_image_type(), head_set_icon(), http_status_exit(), import_author_rss(), import_author_zot(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), item_expire(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), load_plugin(), local_dir_update(), localize_item(), RedDirectory\log(), RedBasicAuth\log(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_token(), magic_init(), mail_post(), mail_store(), menu_edit(), mini_group_select(), mood_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_keypair(), FKOAuthDataStore\new_request_token(), notes_init(), notification(), notifier_run(), onedirsync_run(), onepoll_run(), openid_content(), parse_url_content(), parse_xml_string(), photo_init(), photo_upload(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_load(), profile_sidebar(), public_recips(), RedFile\put(), dba_mysql\q(), dba_mysqli\q(), q(), queue_run(), RedChannelList(), RedCollectionData(), RedFileData(), register_content(), reload_plugins(), Item\remove_child(), remove_community_tag(), remove_queue_item(), scale_external_images(), search_ac_init(), enotify\send(), send_reg_approval_email(), Conversation\set_mode(), RedFile\setName(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), sync_directories(), tag_deliver(), tagger_content(), tgroup_check(), uninstall_plugin(), unload_plugin(), update_directory_entry(), update_imported_item(), update_queue_time(), RedBasicAuth\validateUserPass(), webfinger(), webfinger_dfrn(), xml2array(), xml_status(), z_fetch_url(), z_post_url(), zfinger_init(), zid_init(), zot_build_packet(), zot_feed(), zot_fetch(), zot_finger(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), zot_register_hub(), and zotfeed_init().

    +

    Referenced by RedDirectory\__construct(), RedFile\__construct(), account_remove(), account_verify_password(), Item\add_child(), Conversation\add_thread(), admin_content(), admin_page_hubloc_post(), admin_post(), advanced_profile(), aes_encapsulate(), allowed_public_recips(), api_call(), api_channel_stream(), api_export_basic(), api_favorites(), api_get_user(), api_login(), api_oauth_request_token(), api_statuses_destroy(), api_statuses_mediap(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), attach_mkdir(), avatar_img(), base64url_decode(), blog_install(), blog_uninstall(), bookmark_add(), bookmarks_init(), build_sync_packet(), chanman_remove_everything_from_network(), channel_remove(), chanview_content(), check_config(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), RedDirectory\childExists(), cloud_init(), consume_feed(), conversation(), create_account(), create_identity(), RedDirectory\createDirectory(), RedDirectory\createFile(), cronhooks_run(), datetime_convert(), delete_imported_item(), deliver_run(), detect_language(), directory_content(), directory_run(), dirprofile_init(), downgrade_accounts(), email_send(), encode_item(), expire_run(), feed_init(), fetch_lrdd_template(), filer_content(), filerm_content(), fix_private_photos(), fix_system_urls(), RedFile\get(), get_atom_elements(), get_item_elements(), get_language_name(), Conversation\get_template_data(), RedDirectory\getChild(), RedDirectory\getChildren(), RedDirectory\getDir(), RedDirectory\getName(), RedFile\getName(), group_content(), guess_image_type(), head_set_icon(), http_status_exit(), import_author_rss(), import_author_zot(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), item_expire(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), load_plugin(), local_dir_update(), localize_item(), RedDirectory\log(), RedBasicAuth\log(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_token(), magic_init(), mail_post(), mail_store(), menu_edit(), mini_group_select(), mood_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_keypair(), FKOAuthDataStore\new_request_token(), notes_init(), notification(), notifier_run(), onedirsync_run(), onepoll_run(), openid_content(), parse_url_content(), parse_xml_string(), photo_init(), photo_upload(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_load(), profile_sidebar(), public_recips(), RedFile\put(), dba_mysql\q(), dba_mysqli\q(), q(), queue_run(), rbmark_post(), RedChannelList(), RedCollectionData(), RedFileData(), register_content(), reload_plugins(), Item\remove_child(), remove_community_tag(), remove_queue_item(), scale_external_images(), search_ac_init(), enotify\send(), send_reg_approval_email(), Conversation\set_mode(), RedFile\setName(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), sync_directories(), tag_deliver(), tagger_content(), tgroup_check(), uninstall_plugin(), unload_plugin(), update_directory_entry(), update_imported_item(), update_queue_time(), RedBasicAuth\validateUserPass(), webfinger(), webfinger_dfrn(), xml2array(), xml_status(), z_fetch_url(), z_post_url(), zfinger_init(), zid_init(), zot_build_packet(), zot_feed(), zot_fetch(), zot_finger(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), zot_register_hub(), and zotfeed_init().

    @@ -1466,7 +1466,7 @@ Variables
    - + @@ -1761,7 +1761,7 @@ Variables
    Returns
    string substituted string
    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), chat_content(), check_config(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), connedit_content(), construct_page(), contact_block(), conversation(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), dirprofile_init(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), invite_content(), lang_selector(), layouts_content(), login(), lostpass_content(), lostpass_post(), mail_content(), manage_content(), match_content(), menu_content(), menu_render(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), profile_sidebar(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), search_content(), send_reg_approval_email(), send_verification_email(), setup_content(), setup_post(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), user_allow(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), widget_affinity(), widget_archive(), widget_chatroom_list(), widget_filer(), widget_follow(), widget_mailmenu(), widget_notes(), widget_savedsearch(), widget_settings_menu(), widget_suggestions(), writepages_widget(), and xrd_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), chat_content(), check_config(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), connedit_content(), construct_page(), contact_block(), conversation(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), dirprofile_init(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), invite_content(), lang_selector(), layouts_content(), login(), lostpass_content(), lostpass_post(), mail_content(), manage_content(), match_content(), menu_content(), menu_render(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), profile_sidebar(), profiles_content(), rbmark_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), search_content(), send_reg_approval_email(), send_verification_email(), setup_content(), setup_post(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), user_allow(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), widget_affinity(), widget_archive(), widget_bookmarkedchats(), widget_chatroom_list(), widget_filer(), widget_follow(), widget_mailmenu(), widget_notes(), widget_savedsearch(), widget_settings_menu(), widget_suggestedchats(), widget_suggestions(), writepages_widget(), and xrd_init().

    diff --git a/doc/html/theme_2blogga_2php_2default_8php.html b/doc/html/theme_2blogga_2php_2default_8php.html index 20528d9fe..91094b71f 100644 --- a/doc/html/theme_2blogga_2php_2default_8php.html +++ b/doc/html/theme_2blogga_2php_2default_8php.html @@ -116,7 +116,7 @@ Variables - +
    if (!function_exists('hex2bin')) paginate if (!function_exists('hex2bin')) paginate ( $a)
     
     $headimghome = get_config('blogtheme', 'headimghome')
     
    if($a->module=='display') $bodyclass =""
    if($a->module=='display') $bodyclass =""
     

    Variable Documentation

    @@ -125,7 +125,7 @@ Variables
    - +
    if ($a->module=='display') $bodyclass =""if ($a->module=='display') $bodyclass =""
    diff --git a/doc/html/theme_2blogga_2view_2theme_2blog_2default_8php.html b/doc/html/theme_2blogga_2view_2theme_2blog_2default_8php.html index 6efad8c6e..9e4f4c901 100644 --- a/doc/html/theme_2blogga_2view_2theme_2blog_2default_8php.html +++ b/doc/html/theme_2blogga_2view_2theme_2blog_2default_8php.html @@ -116,7 +116,7 @@ Variables    $headimghome = get_config('blogtheme', 'headimghome')   -if($a->module=='display') $bodyclass ="" +if($a->module=='display') $bodyclass =""  

    Variable Documentation

    @@ -125,7 +125,7 @@ Variables
    - +
    if ($a->module=='display') $bodyclass =""if ($a->module=='display') $bodyclass =""
    @@ -137,7 +137,7 @@ Variables
    - +
    if (local_user()) $headimg = get_config('blogtheme', 'headimg')if (local_user()) $headimg = get_config('blogtheme', 'headimg')
    diff --git a/doc/html/tpldebug_8php.html b/doc/html/tpldebug_8php.html index b9aeb5405..2045f14e1 100644 --- a/doc/html/tpldebug_8php.html +++ b/doc/html/tpldebug_8php.html @@ -118,7 +118,7 @@ Functions - + @@ -158,7 +158,7 @@ Variables

    Variables

    if($argc > 1) else
    if($argc > 1) else
     
     $files = glob('include/*.php')
     
    - +
    if ($argc > 1) elseif ($argc > 1) else
    diff --git a/doc/html/typo_8php.html b/doc/html/typo_8php.html index 24a480775..394c77b80 100644 --- a/doc/html/typo_8php.html +++ b/doc/html/typo_8php.html @@ -134,7 +134,7 @@ Variables
    -

    Referenced by FriendicaSmarty\__construct(), Item\__construct(), FriendicaSmartyEngine\__construct(), Template\_replcb_if(), Template\_replcb_inc(), _well_known_init(), abook_toggle_flag(), achievements_content(), acl_init(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_hubloc_post(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_page_users_post(), admin_post(), advanced_profile(), allowed_email(), allowed_url(), alt_pager(), api_account_verify_credentials(), api_albums(), api_apply_template(), api_call(), api_content(), api_direct_messages_all(), api_direct_messages_box(), api_direct_messages_conversation(), api_direct_messages_inbox(), api_direct_messages_new(), api_direct_messages_sentbox(), api_favorites(), api_followers_ids(), api_format_as(), api_format_items(), api_friends_ids(), api_get_user(), api_item_get_user(), api_login(), api_photos(), api_post(), api_rss_extra(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_followers(), api_statuses_friends(), api_statuses_home_timeline(), api_statuses_mediap(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_statusnet_config(), api_users_show(), apps_content(), apw_form(), atom_entry(), attribute_contains(), authenticate_success(), avatar_img(), bb_sanitize_style(), bbcode(), best_link_url(), blocks_content(), blog_init(), blogtheme_display_item(), blogtheme_form(), blogtheme_imgurl(), bookmarks_init(), build_sync_packet(), cal(), call_hooks(), categories_widget(), channel_content(), channel_init(), channel_remove(), chanview_content(), chat_content(), chat_init(), chat_post(), chatsvc_content(), chatsvc_init(), chatsvc_post(), check_config(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), clean_urls(), cli_startup(), cli_suggest_run(), cloud_init(), comanche_menu(), comanche_parser(), comanche_replace_region(), comanche_widget(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_clone(), connections_content(), connections_init(), connections_post(), connedit_clone(), connedit_content(), connedit_init(), connedit_post(), construct_page(), contact_block(), contact_select(), conversation(), create_identity(), current_theme(), current_theme_url(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), deliver_run(), directory_content(), directory_init(), dirsearch_init(), display_content(), dlogger(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), ev_compare(), event_store(), events_content(), events_post(), expand_acl(), expand_groups(), fbrowser_content(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), findpeople_widget(), fix_private_photos(), follow_init(), format_event_diaspora(), fsuggest_content(), fsuggest_post(), BaseObject\get_app(), get_app(), get_best_language(), get_birthdays(), Item\get_comment_box(), get_config(), get_custom_nav(), get_events(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_pconfig(), get_plink(), Item\get_template_data(), get_theme_screenshot(), get_xconfig(), gprobe_run(), group_content(), group_post(), group_select(), guess_image_type(), handle_tag(), head_get_icon(), head_remove_css(), head_remove_js(), head_set_icon(), help_content(), home_content(), home_init(), hostxrd_init(), import_channel_photo(), import_post(), import_profile_photo(), info(), insert_hook(), invite_content(), invite_post(), is_site_admin(), item_content(), item_photo_menu(), item_post(), items_fetch(), lang_selector(), layouts_content(), like_content(), like_puller(), link_compare(), load_config(), load_contact_links(), load_database(), load_hooks(), load_pconfig(), load_translation_table(), load_xconfig(), logger(), login(), login_content(), FKOAuth1\loginUser(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_post(), manual_config(), match_content(), message_content(), mitem_content(), mitem_init(), mitem_post(), mood_init(), msearch_post(), nav(), nav_set_selected(), network_content(), network_init(), new_contact(), notice(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), oexchange_content(), oexchange_init(), onedirsync_run(), onepoll_run(), openid_content(), opensearch_init(), page_content(), page_init(), paginate(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), pop_lang(), post_init(), preg_heart(), prepare_body(), probe_content(), proc_run(), profile_activity(), profile_content(), profile_create_sidebar(), profile_init(), profile_load(), profile_photo_init(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_init(), push_lang(), queue_run(), randprof_init(), redbasic_form(), register_content(), regmod_content(), relative_date(), removeme_content(), removeme_post(), replace_macros(), rmagic_post(), rpost_content(), scale_external_images(), search(), search_ac_init(), search_content(), search_init(), searchbox(), send_message(), service_class_allows(), service_class_fetch(), set_config(), Conversation\set_mode(), set_pconfig(), set_xconfig(), settings_init(), settings_post(), setup_content(), setup_post(), share_init(), siteinfo_content(), siteinfo_init(), smilies(), sources_post(), subthread_content(), suggest_content(), t(), tag_deliver(), tagger_content(), tagrm_content(), tagrm_post(), tags_sort(), terminate_friendship(), tgroup_check(), theme_admin(), theme_content(), theme_include(), thing_init(), timezone_cmp(), toggle_mobile_init(), tryzrlvideo(), tt(), uexport_init(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), update_suggestions(), user_allow(), vcard_from_xchan(), viewconnections_content(), viewconnections_init(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_upload_post(), webpages_content(), wfinger_init(), what_next(), widget_archive(), widget_categories(), widget_chatroom_list(), widget_design_tools(), widget_filer(), widget_follow(), widget_fullprofile(), widget_mailmenu(), widget_photo_albums(), widget_profile(), widget_savedsearch(), widget_settings_menu(), widget_tagcloud(), widget_tagcloud_wall(), xrd_init(), z_fetch_url(), z_path(), z_root(), zfinger_init(), zid_init(), zotfeed_init(), and zping_content().

    +

    Referenced by FriendicaSmarty\__construct(), Item\__construct(), FriendicaSmartyEngine\__construct(), Template\_replcb_if(), Template\_replcb_inc(), _well_known_init(), abook_toggle_flag(), achievements_content(), acl_init(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_hubloc_post(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_page_users_post(), admin_post(), advanced_profile(), allowed_email(), allowed_url(), alt_pager(), api_account_verify_credentials(), api_albums(), api_apply_template(), api_call(), api_content(), api_direct_messages_all(), api_direct_messages_box(), api_direct_messages_conversation(), api_direct_messages_inbox(), api_direct_messages_new(), api_direct_messages_sentbox(), api_favorites(), api_followers_ids(), api_format_as(), api_format_items(), api_friends_ids(), api_get_user(), api_item_get_user(), api_login(), api_photos(), api_post(), api_rss_extra(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_followers(), api_statuses_friends(), api_statuses_home_timeline(), api_statuses_mediap(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_statusnet_config(), api_users_show(), apps_content(), apw_form(), atom_entry(), attribute_contains(), authenticate_success(), avatar_img(), bb_sanitize_style(), bbcode(), best_link_url(), blocks_content(), blog_init(), blogtheme_display_item(), blogtheme_form(), blogtheme_imgurl(), bookmarks_init(), build_sync_packet(), cal(), call_hooks(), categories_widget(), channel_content(), channel_init(), channel_remove(), chanview_content(), chat_content(), chat_init(), chat_post(), chatsvc_content(), chatsvc_init(), chatsvc_post(), check_config(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), clean_urls(), cli_startup(), cli_suggest_run(), cloud_init(), comanche_menu(), comanche_parser(), comanche_replace_region(), comanche_widget(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_clone(), connections_content(), connections_init(), connections_post(), connedit_clone(), connedit_content(), connedit_init(), connedit_post(), construct_page(), contact_block(), contact_select(), conversation(), create_identity(), current_theme(), current_theme_url(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), deliver_run(), directory_content(), directory_init(), dirsearch_init(), display_content(), dlogger(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), ev_compare(), event_store(), events_content(), events_post(), expand_acl(), expand_groups(), fbrowser_content(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), findpeople_widget(), fix_private_photos(), follow_init(), format_event_diaspora(), fsuggest_content(), fsuggest_post(), BaseObject\get_app(), get_app(), get_best_language(), get_birthdays(), Item\get_comment_box(), get_config(), get_custom_nav(), get_events(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_pconfig(), get_plink(), Item\get_template_data(), get_theme_screenshot(), get_xconfig(), gprobe_run(), group_content(), group_post(), group_select(), guess_image_type(), handle_tag(), head_get_icon(), head_remove_css(), head_remove_js(), head_set_icon(), help_content(), home_content(), home_init(), hostxrd_init(), import_channel_photo(), import_post(), import_profile_photo(), info(), insert_hook(), invite_content(), invite_post(), is_site_admin(), item_content(), item_photo_menu(), item_post(), items_fetch(), lang_selector(), layouts_content(), like_content(), like_puller(), link_compare(), load_config(), load_contact_links(), load_database(), load_hooks(), load_pconfig(), load_translation_table(), load_xconfig(), logger(), login(), login_content(), FKOAuth1\loginUser(), lostpass_content(), lostpass_post(), magic_init(), mail_content(), mail_post(), manual_config(), match_content(), message_content(), mitem_content(), mitem_init(), mitem_post(), mood_init(), msearch_post(), nav(), nav_set_selected(), network_content(), network_init(), new_contact(), notice(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), oexchange_content(), oexchange_init(), onedirsync_run(), onepoll_run(), openid_content(), opensearch_init(), page_content(), page_init(), paginate(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), pop_lang(), post_init(), preg_heart(), prepare_body(), probe_content(), proc_run(), profile_activity(), profile_content(), profile_create_sidebar(), profile_init(), profile_load(), profile_photo_init(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_init(), push_lang(), queue_run(), randprof_init(), rbmark_content(), rbmark_post(), redbasic_form(), register_content(), regmod_content(), relative_date(), removeme_content(), removeme_post(), replace_macros(), rmagic_post(), rpost_content(), scale_external_images(), search(), search_ac_init(), search_content(), search_init(), searchbox(), send_message(), service_class_allows(), service_class_fetch(), set_config(), Conversation\set_mode(), set_pconfig(), set_xconfig(), settings_init(), settings_post(), setup_content(), setup_post(), share_init(), siteinfo_content(), siteinfo_init(), smilies(), sources_post(), subthread_content(), suggest_content(), t(), tag_deliver(), tagger_content(), tagrm_content(), tagrm_post(), tags_sort(), terminate_friendship(), tgroup_check(), theme_admin(), theme_content(), theme_include(), thing_init(), timezone_cmp(), toggle_mobile_init(), tryzrlvideo(), tt(), uexport_init(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), update_suggestions(), user_allow(), vcard_from_xchan(), viewconnections_content(), viewconnections_init(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_upload_post(), webpages_content(), wfinger_init(), what_next(), widget_archive(), widget_categories(), widget_chatroom_list(), widget_design_tools(), widget_filer(), widget_follow(), widget_fullprofile(), widget_mailmenu(), widget_photo_albums(), widget_profile(), widget_savedsearch(), widget_settings_menu(), widget_tagcloud(), widget_tagcloud_wall(), xrd_init(), z_fetch_url(), z_path(), z_root(), zfinger_init(), zid_init(), zotfeed_init(), and zping_content().

    diff --git a/doc/html/widgets_8php.html b/doc/html/widgets_8php.html index 50582fe01..bb2008bcf 100644 --- a/doc/html/widgets_8php.html +++ b/doc/html/widgets_8php.html @@ -160,6 +160,10 @@ Functions    widget_chatroom_list ($arr)   + widget_bookmarkedchats ($arr) +  + widget_suggestedchats ($arr) + 

    Function Documentation

    @@ -192,6 +196,22 @@ Functions
    +
    +
    + +
    +
    + + + + + + + + +
    widget_bookmarkedchats ( $arr)
    +
    +
    @@ -483,6 +503,22 @@ Functions
    +
    + + +
    +
    + + + + + + + + +
    widget_suggestedchats ( $arr)
    +
    +
    diff --git a/doc/html/widgets_8php.js b/doc/html/widgets_8php.js index 30270e8c7..7e391a078 100644 --- a/doc/html/widgets_8php.js +++ b/doc/html/widgets_8php.js @@ -2,6 +2,7 @@ var widgets_8php = [ [ "widget_affinity", "widgets_8php.html#add9b24d3304e529a7975e96122315554", null ], [ "widget_archive", "widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65", null ], + [ "widget_bookmarkedchats", "widgets_8php.html#a0e2f5179ed1a73b282dfda7270fcabb3", null ], [ "widget_categories", "widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b", null ], [ "widget_chatroom_list", "widgets_8php.html#a47c72aac42058ea086c9ef8651c259da", null ], [ "widget_collections", "widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f", null ], @@ -20,6 +21,7 @@ var widgets_8php = [ "widget_profile", "widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923", null ], [ "widget_savedsearch", "widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8", null ], [ "widget_settings_menu", "widgets_8php.html#aaa73bcf1702eaadd9dcd253502f55e01", null ], + [ "widget_suggestedchats", "widgets_8php.html#a50b1410238100c8a94c06b0aa63ee3b8", null ], [ "widget_suggestions", "widgets_8php.html#a0d404276fedc59f5038cf5c085028326", null ], [ "widget_tagcloud", "widgets_8php.html#a6dbc227aac750774284ee39c45f0a200", null ], [ "widget_tagcloud_wall", "widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653", null ], diff --git a/include/oembed.php b/include/oembed.php index d8671a752..f9e9012d0 100755 --- a/include/oembed.php +++ b/include/oembed.php @@ -99,6 +99,8 @@ function oembed_format_object($j){ $th=120; $tw = $th*$tr; $tpl=get_markup_template('oembed_video.tpl'); + if(strstr($embedurl,'youtu')) + $embedurl = str_replace('http:','https:',$embedurl); $ret.=replace_macros($tpl, array( '$baseurl' => $a->get_baseurl(), '$embedurl'=>$embedurl, diff --git a/util/messages.po b/util/messages.po index 11820f853..88ef6cdeb 100644 --- a/util/messages.po +++ b/util/messages.po @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: 2014-02-21.595\n" +"Project-Id-Version: 2014-02-28.602\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-02-21 00:03-0800\n" +"POT-Creation-Date: 2014-02-28 00:02-0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,7 +22,7 @@ msgid "Categories" msgstr "" #: ../../include/widgets.php:115 ../../include/widgets.php:155 -#: ../../include/Contact.php:107 ../../include/identity.php:632 +#: ../../include/Contact.php:107 ../../include/identity.php:643 #: ../../mod/directory.php:184 ../../mod/match.php:62 #: ../../mod/dirprofile.php:170 ../../mod/suggest.php:51 msgid "Connect" @@ -62,7 +62,8 @@ msgid "Notes" msgstr "" #: ../../include/widgets.php:173 ../../include/text.php:759 -#: ../../include/text.php:773 ../../mod/filer.php:36 +#: ../../include/text.php:773 ../../mod/filer.php:36 ../../mod/rbmark.php:28 +#: ../../mod/rbmark.php:98 msgid "Save" msgstr "" @@ -183,6 +184,14 @@ msgstr "" msgid "Chat Rooms" msgstr "" +#: ../../include/widgets.php:603 +msgid "Bookmarked Chatrooms" +msgstr "" + +#: ../../include/widgets.php:621 +msgid "Suggested Chatrooms" +msgstr "" + #: ../../include/acl_selectors.php:235 msgid "Visible to everybody" msgstr "" @@ -331,7 +340,7 @@ msgstr "" msgid "Create an account" msgstr "" -#: ../../include/nav.php:134 ../../mod/help.php:60 ../../mod/help.php:64 +#: ../../include/nav.php:134 ../../mod/help.php:60 ../../mod/help.php:65 msgid "Help" msgstr "" @@ -1238,7 +1247,7 @@ msgstr "" msgid "Finishes:" msgstr "" -#: ../../include/event.php:40 ../../include/identity.php:683 +#: ../../include/event.php:40 ../../include/identity.php:694 #: ../../include/bb2diaspora.php:455 ../../mod/events.php:462 #: ../../mod/directory.php:157 ../../mod/dirprofile.php:111 msgid "Location:" @@ -1298,95 +1307,103 @@ msgid "show fewer" msgstr "" #: ../../include/js_strings.php:9 -msgid "Password too short" +msgid "+ Show More" msgstr "" #: ../../include/js_strings.php:10 -msgid "Passwords do not match" +msgid "- Show Less" msgstr "" -#: ../../include/js_strings.php:11 ../../mod/photos.php:39 -msgid "everybody" +#: ../../include/js_strings.php:11 +msgid "Password too short" msgstr "" #: ../../include/js_strings.php:12 +msgid "Passwords do not match" +msgstr "" + +#: ../../include/js_strings.php:13 ../../mod/photos.php:39 +msgid "everybody" +msgstr "" + +#: ../../include/js_strings.php:14 msgid "Secret Passphrase" msgstr "" -#: ../../include/js_strings.php:13 +#: ../../include/js_strings.php:15 msgid "Passphrase hint" msgstr "" -#: ../../include/js_strings.php:15 +#: ../../include/js_strings.php:17 msgid "timeago.prefixAgo" msgstr "" -#: ../../include/js_strings.php:16 -msgid "timeago.suffixAgo" -msgstr "" - -#: ../../include/js_strings.php:17 -msgid "ago" -msgstr "" - #: ../../include/js_strings.php:18 -msgid "from now" +msgid "timeago.prefixFromNow" msgstr "" #: ../../include/js_strings.php:19 -msgid "less than a minute" +msgid "ago" msgstr "" #: ../../include/js_strings.php:20 -msgid "about a minute" +msgid "from now" msgstr "" #: ../../include/js_strings.php:21 -#, php-format -msgid "%d minutes" +msgid "less than a minute" msgstr "" #: ../../include/js_strings.php:22 -msgid "about an hour" +msgid "about a minute" msgstr "" #: ../../include/js_strings.php:23 #, php-format -msgid "about %d hours" +msgid "%d minutes" msgstr "" #: ../../include/js_strings.php:24 -msgid "a day" +msgid "about an hour" msgstr "" #: ../../include/js_strings.php:25 #, php-format -msgid "%d days" +msgid "about %d hours" msgstr "" #: ../../include/js_strings.php:26 -msgid "about a month" +msgid "a day" msgstr "" #: ../../include/js_strings.php:27 #, php-format -msgid "%d months" +msgid "%d days" msgstr "" #: ../../include/js_strings.php:28 -msgid "about a year" +msgid "about a month" msgstr "" #: ../../include/js_strings.php:29 #, php-format -msgid "%d years" +msgid "%d months" msgstr "" #: ../../include/js_strings.php:30 -msgid " " +msgid "about a year" msgstr "" #: ../../include/js_strings.php:31 +#, php-format +msgid "%d years" +msgstr "" + +#: ../../include/js_strings.php:32 +msgid " " +msgstr "" + +#: ../../include/js_strings.php:33 msgid "timeago.numbers" msgstr "" @@ -1421,15 +1438,15 @@ msgstr "" #: ../../include/photos.php:15 ../../include/items.php:3575 #: ../../mod/common.php:35 ../../mod/events.php:140 ../../mod/thing.php:247 #: ../../mod/thing.php:263 ../../mod/thing.php:298 ../../mod/invite.php:13 -#: ../../mod/invite.php:104 ../../mod/settings.php:493 ../../mod/menu.php:44 +#: ../../mod/invite.php:104 ../../mod/settings.php:492 ../../mod/menu.php:44 #: ../../mod/webpages.php:40 ../../mod/api.php:26 ../../mod/api.php:31 #: ../../mod/bookmarks.php:46 ../../mod/item.php:182 ../../mod/item.php:190 -#: ../../mod/chat.php:87 ../../mod/chat.php:92 +#: ../../mod/chat.php:89 ../../mod/chat.php:94 #: ../../mod/viewconnections.php:22 ../../mod/viewconnections.php:27 #: ../../mod/delegate.php:6 ../../mod/mitem.php:73 ../../mod/group.php:9 #: ../../mod/viewsrc.php:12 ../../mod/editpost.php:13 #: ../../mod/connedit.php:182 ../../mod/layouts.php:27 -#: ../../mod/layouts.php:42 ../../mod/page.php:30 ../../mod/page.php:80 +#: ../../mod/layouts.php:39 ../../mod/page.php:30 ../../mod/page.php:80 #: ../../mod/network.php:12 ../../mod/profiles.php:152 #: ../../mod/profiles.php:453 ../../mod/sources.php:66 ../../mod/setup.php:200 #: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 @@ -1508,7 +1525,7 @@ msgstr "" msgid "database storage failed." msgstr "" -#: ../../include/bookmarks.php:31 +#: ../../include/bookmarks.php:42 #, php-format msgid "%1$s's bookmarks" msgstr "" @@ -1547,7 +1564,7 @@ msgid "Select" msgstr "" #: ../../include/conversation.php:632 ../../include/ItemObject.php:108 -#: ../../mod/thing.php:236 ../../mod/settings.php:579 ../../mod/group.php:176 +#: ../../mod/thing.php:236 ../../mod/settings.php:578 ../../mod/group.php:176 #: ../../mod/admin.php:746 ../../mod/connedit.php:359 #: ../../mod/filestorage.php:171 ../../mod/photos.php:1044 msgid "Delete" @@ -1850,8 +1867,8 @@ msgstr "" msgid "OK" msgstr "" -#: ../../include/conversation.php:1150 ../../mod/settings.php:517 -#: ../../mod/settings.php:543 ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 +#: ../../include/conversation.php:1150 ../../mod/settings.php:516 +#: ../../mod/settings.php:542 ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 #: ../../mod/editpost.php:152 ../../mod/fbrowser.php:82 #: ../../mod/fbrowser.php:117 msgid "Cancel" @@ -1983,10 +2000,6 @@ msgstr "" msgid "Requested channel is not available." msgstr "" -#: ../../include/identity.php:493 -msgid " Sorry, you don't have the permission to view this profile. " -msgstr "" - #: ../../include/identity.php:528 ../../mod/webpages.php:8 #: ../../mod/connect.php:13 ../../mod/layouts.php:8 #: ../../mod/achievements.php:8 ../../mod/blocks.php:10 @@ -1994,190 +2007,194 @@ msgstr "" msgid "Requested profile is not available." msgstr "" -#: ../../include/identity.php:646 ../../mod/profiles.php:603 +#: ../../include/identity.php:580 +msgid " Sorry, you don't have the permission to view this profile. " +msgstr "" + +#: ../../include/identity.php:657 ../../mod/profiles.php:603 msgid "Change profile photo" msgstr "" -#: ../../include/identity.php:652 +#: ../../include/identity.php:663 msgid "Profiles" msgstr "" -#: ../../include/identity.php:652 +#: ../../include/identity.php:663 msgid "Manage/edit profiles" msgstr "" -#: ../../include/identity.php:653 ../../mod/profiles.php:604 +#: ../../include/identity.php:664 ../../mod/profiles.php:604 msgid "Create New Profile" msgstr "" -#: ../../include/identity.php:656 +#: ../../include/identity.php:667 msgid "Edit Profile" msgstr "" -#: ../../include/identity.php:667 ../../mod/profiles.php:615 +#: ../../include/identity.php:678 ../../mod/profiles.php:615 msgid "Profile Image" msgstr "" -#: ../../include/identity.php:670 ../../mod/profiles.php:618 +#: ../../include/identity.php:681 ../../mod/profiles.php:618 msgid "visible to everybody" msgstr "" -#: ../../include/identity.php:671 ../../mod/profiles.php:619 +#: ../../include/identity.php:682 ../../mod/profiles.php:619 msgid "Edit visibility" msgstr "" -#: ../../include/identity.php:685 ../../include/identity.php:912 +#: ../../include/identity.php:696 ../../include/identity.php:923 #: ../../mod/directory.php:159 msgid "Gender:" msgstr "" -#: ../../include/identity.php:686 ../../include/identity.php:932 +#: ../../include/identity.php:697 ../../include/identity.php:943 #: ../../mod/directory.php:161 msgid "Status:" msgstr "" -#: ../../include/identity.php:687 ../../include/identity.php:943 +#: ../../include/identity.php:698 ../../include/identity.php:954 #: ../../mod/directory.php:163 msgid "Homepage:" msgstr "" -#: ../../include/identity.php:688 ../../mod/dirprofile.php:157 +#: ../../include/identity.php:699 ../../mod/dirprofile.php:157 msgid "Online Now" msgstr "" -#: ../../include/identity.php:756 ../../include/identity.php:836 +#: ../../include/identity.php:767 ../../include/identity.php:847 #: ../../mod/ping.php:262 msgid "g A l F d" msgstr "" -#: ../../include/identity.php:757 ../../include/identity.php:837 +#: ../../include/identity.php:768 ../../include/identity.php:848 msgid "F d" msgstr "" -#: ../../include/identity.php:802 ../../include/identity.php:877 +#: ../../include/identity.php:813 ../../include/identity.php:888 #: ../../mod/ping.php:284 msgid "[today]" msgstr "" -#: ../../include/identity.php:814 +#: ../../include/identity.php:825 msgid "Birthday Reminders" msgstr "" -#: ../../include/identity.php:815 +#: ../../include/identity.php:826 msgid "Birthdays this week:" msgstr "" -#: ../../include/identity.php:870 +#: ../../include/identity.php:881 msgid "[No description]" msgstr "" -#: ../../include/identity.php:888 +#: ../../include/identity.php:899 msgid "Event Reminders" msgstr "" -#: ../../include/identity.php:889 +#: ../../include/identity.php:900 msgid "Events this week:" msgstr "" -#: ../../include/identity.php:902 ../../include/identity.php:986 +#: ../../include/identity.php:913 ../../include/identity.php:997 #: ../../mod/profperm.php:107 msgid "Profile" msgstr "" -#: ../../include/identity.php:910 ../../mod/settings.php:937 +#: ../../include/identity.php:921 ../../mod/settings.php:936 msgid "Full Name:" msgstr "" -#: ../../include/identity.php:917 +#: ../../include/identity.php:928 msgid "j F, Y" msgstr "" -#: ../../include/identity.php:918 +#: ../../include/identity.php:929 msgid "j F" msgstr "" -#: ../../include/identity.php:925 +#: ../../include/identity.php:936 msgid "Birthday:" msgstr "" -#: ../../include/identity.php:929 +#: ../../include/identity.php:940 msgid "Age:" msgstr "" -#: ../../include/identity.php:938 +#: ../../include/identity.php:949 #, php-format msgid "for %1$d %2$s" msgstr "" -#: ../../include/identity.php:941 ../../mod/profiles.php:526 +#: ../../include/identity.php:952 ../../mod/profiles.php:526 msgid "Sexual Preference:" msgstr "" -#: ../../include/identity.php:945 ../../mod/profiles.php:528 +#: ../../include/identity.php:956 ../../mod/profiles.php:528 msgid "Hometown:" msgstr "" -#: ../../include/identity.php:947 +#: ../../include/identity.php:958 msgid "Tags:" msgstr "" -#: ../../include/identity.php:949 ../../mod/profiles.php:529 +#: ../../include/identity.php:960 ../../mod/profiles.php:529 msgid "Political Views:" msgstr "" -#: ../../include/identity.php:951 +#: ../../include/identity.php:962 msgid "Religion:" msgstr "" -#: ../../include/identity.php:953 ../../mod/directory.php:165 +#: ../../include/identity.php:964 ../../mod/directory.php:165 msgid "About:" msgstr "" -#: ../../include/identity.php:955 +#: ../../include/identity.php:966 msgid "Hobbies/Interests:" msgstr "" -#: ../../include/identity.php:957 ../../mod/profiles.php:532 +#: ../../include/identity.php:968 ../../mod/profiles.php:532 msgid "Likes:" msgstr "" -#: ../../include/identity.php:959 ../../mod/profiles.php:533 +#: ../../include/identity.php:970 ../../mod/profiles.php:533 msgid "Dislikes:" msgstr "" -#: ../../include/identity.php:962 +#: ../../include/identity.php:973 msgid "Contact information and Social Networks:" msgstr "" -#: ../../include/identity.php:964 +#: ../../include/identity.php:975 msgid "My other channels:" msgstr "" -#: ../../include/identity.php:966 +#: ../../include/identity.php:977 msgid "Musical interests:" msgstr "" -#: ../../include/identity.php:968 +#: ../../include/identity.php:979 msgid "Books, literature:" msgstr "" -#: ../../include/identity.php:970 +#: ../../include/identity.php:981 msgid "Television:" msgstr "" -#: ../../include/identity.php:972 +#: ../../include/identity.php:983 msgid "Film/dance/culture/entertainment:" msgstr "" -#: ../../include/identity.php:974 +#: ../../include/identity.php:985 msgid "Love/Romance:" msgstr "" -#: ../../include/identity.php:976 +#: ../../include/identity.php:987 msgid "Work/employment:" msgstr "" -#: ../../include/identity.php:978 +#: ../../include/identity.php:989 msgid "School/education:" msgstr "" @@ -2186,9 +2203,9 @@ msgid "Private Message" msgstr "" #: ../../include/ItemObject.php:96 ../../include/page_widgets.php:8 -#: ../../include/menu.php:41 ../../mod/thing.php:235 -#: ../../mod/settings.php:578 ../../mod/menu.php:59 ../../mod/webpages.php:118 -#: ../../mod/editpost.php:112 ../../mod/layouts.php:102 +#: ../../include/menu.php:42 ../../mod/thing.php:235 +#: ../../mod/settings.php:577 ../../mod/menu.php:59 ../../mod/webpages.php:118 +#: ../../mod/editpost.php:112 ../../mod/layouts.php:97 #: ../../mod/editlayout.php:106 ../../mod/blocks.php:93 #: ../../mod/editwebpage.php:144 ../../mod/editblock.php:120 #: ../../mod/filestorage.php:170 @@ -2282,10 +2299,10 @@ msgstr "" #: ../../include/ItemObject.php:548 ../../mod/events.php:469 #: ../../mod/thing.php:283 ../../mod/thing.php:326 ../../mod/invite.php:156 -#: ../../mod/settings.php:516 ../../mod/settings.php:628 -#: ../../mod/settings.php:656 ../../mod/settings.php:680 -#: ../../mod/settings.php:752 ../../mod/settings.php:929 -#: ../../mod/chat.php:162 ../../mod/chat.php:192 ../../mod/connect.php:92 +#: ../../mod/settings.php:515 ../../mod/settings.php:627 +#: ../../mod/settings.php:655 ../../mod/settings.php:679 +#: ../../mod/settings.php:751 ../../mod/settings.php:928 +#: ../../mod/chat.php:174 ../../mod/chat.php:206 ../../mod/connect.php:92 #: ../../mod/group.php:81 ../../mod/admin.php:431 ../../mod/admin.php:739 #: ../../mod/admin.php:879 ../../mod/admin.php:1078 ../../mod/admin.php:1165 #: ../../mod/connedit.php:437 ../../mod/profiles.php:506 @@ -2295,8 +2312,8 @@ msgstr "" #: ../../mod/filestorage.php:131 ../../mod/photos.php:566 #: ../../mod/photos.php:671 ../../mod/photos.php:954 ../../mod/photos.php:994 #: ../../mod/photos.php:1081 ../../mod/mood.php:142 -#: ../../view/theme/redbasic/php/config.php:95 -#: ../../view/theme/apw/php/config.php:231 +#: ../../view/theme/redbasic/php/config.php:97 +#: ../../view/theme/apw/php/config.php:247 #: ../../view/theme/blogga/view/theme/blog/config.php:67 #: ../../view/theme/blogga/php/config.php:67 msgid "Submit" @@ -2631,15 +2648,15 @@ msgstr "" msgid "dislikes" msgstr "" -#: ../../include/auth.php:76 +#: ../../include/auth.php:79 msgid "Logged out." msgstr "" -#: ../../include/auth.php:188 +#: ../../include/auth.php:197 msgid "Failed authentication" msgstr "" -#: ../../include/auth.php:203 ../../mod/openid.php:185 +#: ../../include/auth.php:212 ../../mod/openid.php:186 msgid "Login failed." msgstr "" @@ -2939,7 +2956,7 @@ msgstr "" msgid "Upload New Photos" msgstr "" -#: ../../include/reddav.php:1061 +#: ../../include/reddav.php:1063 msgid "Edit File properties" msgstr "" @@ -3030,13 +3047,13 @@ msgstr "" msgid "Cannot connect to yourself." msgstr "" -#: ../../include/security.php:291 +#: ../../include/security.php:294 msgid "" "The form security token was not correct. This probably happened because the " "form has been opened for too long (>3 hours) before submitting it." msgstr "" -#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:64 +#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:66 #: ../../view/theme/apw/php/config.php:176 msgid "Default" msgstr "" @@ -3138,8 +3155,8 @@ msgstr "" msgid "Permission denied" msgstr "" -#: ../../include/items.php:756 ../../mod/connedit.php:395 -msgid "Unknown" +#: ../../include/items.php:756 +msgid "(Unknown)" msgstr "" #: ../../include/items.php:3513 ../../mod/thing.php:78 ../../mod/admin.php:151 @@ -3410,7 +3427,7 @@ msgstr "" msgid "Key and Secret are required" msgstr "" -#: ../../mod/settings.php:79 ../../mod/settings.php:542 +#: ../../mod/settings.php:79 ../../mod/settings.php:541 msgid "Update" msgstr "" @@ -3442,403 +3459,403 @@ msgstr "" msgid "System failure storing new email. Please try again." msgstr "" -#: ../../mod/settings.php:444 +#: ../../mod/settings.php:443 msgid "Settings updated." msgstr "" -#: ../../mod/settings.php:515 ../../mod/settings.php:541 -#: ../../mod/settings.php:577 +#: ../../mod/settings.php:514 ../../mod/settings.php:540 +#: ../../mod/settings.php:576 msgid "Add application" msgstr "" -#: ../../mod/settings.php:518 ../../mod/settings.php:544 +#: ../../mod/settings.php:517 ../../mod/settings.php:543 msgid "Name" msgstr "" -#: ../../mod/settings.php:518 +#: ../../mod/settings.php:517 msgid "Name of application" msgstr "" -#: ../../mod/settings.php:519 ../../mod/settings.php:545 +#: ../../mod/settings.php:518 ../../mod/settings.php:544 msgid "Consumer Key" msgstr "" -#: ../../mod/settings.php:519 ../../mod/settings.php:520 +#: ../../mod/settings.php:518 ../../mod/settings.php:519 msgid "Automatically generated - change if desired. Max length 20" msgstr "" -#: ../../mod/settings.php:520 ../../mod/settings.php:546 +#: ../../mod/settings.php:519 ../../mod/settings.php:545 msgid "Consumer Secret" msgstr "" -#: ../../mod/settings.php:521 ../../mod/settings.php:547 +#: ../../mod/settings.php:520 ../../mod/settings.php:546 msgid "Redirect" msgstr "" -#: ../../mod/settings.php:521 +#: ../../mod/settings.php:520 msgid "" "Redirect URI - leave blank unless your application specifically requires this" msgstr "" -#: ../../mod/settings.php:522 ../../mod/settings.php:548 +#: ../../mod/settings.php:521 ../../mod/settings.php:547 msgid "Icon url" msgstr "" -#: ../../mod/settings.php:522 +#: ../../mod/settings.php:521 msgid "Optional" msgstr "" -#: ../../mod/settings.php:533 +#: ../../mod/settings.php:532 msgid "You can't edit this application." msgstr "" -#: ../../mod/settings.php:576 +#: ../../mod/settings.php:575 msgid "Connected Apps" msgstr "" -#: ../../mod/settings.php:580 +#: ../../mod/settings.php:579 msgid "Client key starts with" msgstr "" -#: ../../mod/settings.php:581 +#: ../../mod/settings.php:580 msgid "No name" msgstr "" -#: ../../mod/settings.php:582 +#: ../../mod/settings.php:581 msgid "Remove authorization" msgstr "" -#: ../../mod/settings.php:593 +#: ../../mod/settings.php:592 msgid "No feature settings configured" msgstr "" -#: ../../mod/settings.php:601 +#: ../../mod/settings.php:600 msgid "Feature Settings" msgstr "" -#: ../../mod/settings.php:624 +#: ../../mod/settings.php:623 msgid "Account Settings" msgstr "" -#: ../../mod/settings.php:625 +#: ../../mod/settings.php:624 msgid "Password Settings" msgstr "" -#: ../../mod/settings.php:626 +#: ../../mod/settings.php:625 msgid "New Password:" msgstr "" -#: ../../mod/settings.php:627 +#: ../../mod/settings.php:626 msgid "Confirm:" msgstr "" -#: ../../mod/settings.php:627 +#: ../../mod/settings.php:626 msgid "Leave password fields blank unless changing" msgstr "" -#: ../../mod/settings.php:629 ../../mod/settings.php:938 +#: ../../mod/settings.php:628 ../../mod/settings.php:937 msgid "Email Address:" msgstr "" -#: ../../mod/settings.php:630 +#: ../../mod/settings.php:629 msgid "Remove Account" msgstr "" -#: ../../mod/settings.php:631 +#: ../../mod/settings.php:630 msgid "Warning: This action is permanent and cannot be reversed." msgstr "" -#: ../../mod/settings.php:647 +#: ../../mod/settings.php:646 msgid "Off" msgstr "" -#: ../../mod/settings.php:647 +#: ../../mod/settings.php:646 msgid "On" msgstr "" -#: ../../mod/settings.php:654 +#: ../../mod/settings.php:653 msgid "Additional Features" msgstr "" -#: ../../mod/settings.php:679 +#: ../../mod/settings.php:678 msgid "Connector Settings" msgstr "" -#: ../../mod/settings.php:709 ../../mod/admin.php:379 +#: ../../mod/settings.php:708 ../../mod/admin.php:379 msgid "No special theme for mobile devices" msgstr "" -#: ../../mod/settings.php:750 +#: ../../mod/settings.php:749 msgid "Display Settings" msgstr "" -#: ../../mod/settings.php:756 +#: ../../mod/settings.php:755 msgid "Display Theme:" msgstr "" -#: ../../mod/settings.php:757 +#: ../../mod/settings.php:756 msgid "Mobile Theme:" msgstr "" -#: ../../mod/settings.php:758 +#: ../../mod/settings.php:757 msgid "Update browser every xx seconds" msgstr "" -#: ../../mod/settings.php:758 +#: ../../mod/settings.php:757 msgid "Minimum of 10 seconds, no maximum" msgstr "" -#: ../../mod/settings.php:759 +#: ../../mod/settings.php:758 msgid "Maximum number of conversations to load at any time:" msgstr "" -#: ../../mod/settings.php:759 +#: ../../mod/settings.php:758 msgid "Maximum of 100 items" msgstr "" -#: ../../mod/settings.php:760 +#: ../../mod/settings.php:759 msgid "Don't show emoticons" msgstr "" -#: ../../mod/settings.php:761 +#: ../../mod/settings.php:760 msgid "Do not view remote profiles in frames" msgstr "" -#: ../../mod/settings.php:761 +#: ../../mod/settings.php:760 msgid "By default open in a sub-window of your own site" msgstr "" -#: ../../mod/settings.php:796 +#: ../../mod/settings.php:795 msgid "Nobody except yourself" msgstr "" -#: ../../mod/settings.php:797 +#: ../../mod/settings.php:796 msgid "Only those you specifically allow" msgstr "" -#: ../../mod/settings.php:798 +#: ../../mod/settings.php:797 msgid "Anybody in your address book" msgstr "" -#: ../../mod/settings.php:799 +#: ../../mod/settings.php:798 msgid "Anybody on this website" msgstr "" -#: ../../mod/settings.php:800 +#: ../../mod/settings.php:799 msgid "Anybody in this network" msgstr "" -#: ../../mod/settings.php:801 +#: ../../mod/settings.php:800 msgid "Anybody authenticated" msgstr "" -#: ../../mod/settings.php:802 +#: ../../mod/settings.php:801 msgid "Anybody on the internet" msgstr "" -#: ../../mod/settings.php:879 +#: ../../mod/settings.php:878 msgid "Publish your default profile in the network directory" msgstr "" -#: ../../mod/settings.php:879 ../../mod/settings.php:884 -#: ../../mod/settings.php:955 ../../mod/api.php:106 ../../mod/profiles.php:484 +#: ../../mod/settings.php:878 ../../mod/settings.php:883 +#: ../../mod/settings.php:954 ../../mod/api.php:106 ../../mod/profiles.php:484 msgid "No" msgstr "" -#: ../../mod/settings.php:879 ../../mod/settings.php:884 -#: ../../mod/settings.php:955 ../../mod/api.php:105 ../../mod/profiles.php:483 +#: ../../mod/settings.php:878 ../../mod/settings.php:883 +#: ../../mod/settings.php:954 ../../mod/api.php:105 ../../mod/profiles.php:483 msgid "Yes" msgstr "" -#: ../../mod/settings.php:884 +#: ../../mod/settings.php:883 msgid "Allow us to suggest you as a potential friend to new members?" msgstr "" -#: ../../mod/settings.php:888 ../../mod/profile_photo.php:288 +#: ../../mod/settings.php:887 ../../mod/profile_photo.php:288 msgid "or" msgstr "" -#: ../../mod/settings.php:893 +#: ../../mod/settings.php:892 msgid "Your channel address is" msgstr "" -#: ../../mod/settings.php:927 +#: ../../mod/settings.php:926 msgid "Channel Settings" msgstr "" -#: ../../mod/settings.php:936 +#: ../../mod/settings.php:935 msgid "Basic Settings" msgstr "" -#: ../../mod/settings.php:939 +#: ../../mod/settings.php:938 msgid "Your Timezone:" msgstr "" -#: ../../mod/settings.php:940 +#: ../../mod/settings.php:939 msgid "Default Post Location:" msgstr "" -#: ../../mod/settings.php:941 +#: ../../mod/settings.php:940 msgid "Use Browser Location:" msgstr "" -#: ../../mod/settings.php:943 +#: ../../mod/settings.php:942 msgid "Adult Content" msgstr "" -#: ../../mod/settings.php:943 +#: ../../mod/settings.php:942 msgid "" "This channel frequently or regularly publishes adult content. (Please tag " "any adult material and/or nudity with #NSFW)" msgstr "" -#: ../../mod/settings.php:945 +#: ../../mod/settings.php:944 msgid "Security and Privacy Settings" msgstr "" -#: ../../mod/settings.php:947 +#: ../../mod/settings.php:946 msgid "Hide my online presence" msgstr "" -#: ../../mod/settings.php:947 +#: ../../mod/settings.php:946 msgid "Prevents displaying in your profile that you are online" msgstr "" -#: ../../mod/settings.php:949 +#: ../../mod/settings.php:948 msgid "Simple Privacy Settings:" msgstr "" -#: ../../mod/settings.php:950 +#: ../../mod/settings.php:949 msgid "" "Very Public - extremely permissive (should be used with caution)" msgstr "" -#: ../../mod/settings.php:951 +#: ../../mod/settings.php:950 msgid "" "Typical - default public, privacy when desired (similar to social " "network permissions but with improved privacy)" msgstr "" -#: ../../mod/settings.php:952 +#: ../../mod/settings.php:951 msgid "Private - default private, never open or public" msgstr "" -#: ../../mod/settings.php:953 +#: ../../mod/settings.php:952 msgid "Blocked - default blocked to/from everybody" msgstr "" -#: ../../mod/settings.php:955 +#: ../../mod/settings.php:954 msgid "Allow others to tag your posts" msgstr "" -#: ../../mod/settings.php:955 +#: ../../mod/settings.php:954 msgid "" "Often used by the community to retro-actively flag inappropriate content" msgstr "" -#: ../../mod/settings.php:957 +#: ../../mod/settings.php:956 msgid "Advanced Privacy Settings" msgstr "" -#: ../../mod/settings.php:959 +#: ../../mod/settings.php:958 msgid "Maximum Friend Requests/Day:" msgstr "" -#: ../../mod/settings.php:959 +#: ../../mod/settings.php:958 msgid "May reduce spam activity" msgstr "" -#: ../../mod/settings.php:960 +#: ../../mod/settings.php:959 msgid "Default Post Permissions" msgstr "" -#: ../../mod/settings.php:961 ../../mod/mitem.php:134 ../../mod/mitem.php:177 +#: ../../mod/settings.php:960 ../../mod/mitem.php:134 ../../mod/mitem.php:177 msgid "(click to open/close)" msgstr "" -#: ../../mod/settings.php:972 +#: ../../mod/settings.php:971 msgid "Maximum private messages per day from unknown people:" msgstr "" -#: ../../mod/settings.php:972 +#: ../../mod/settings.php:971 msgid "Useful to reduce spamming" msgstr "" -#: ../../mod/settings.php:975 +#: ../../mod/settings.php:974 msgid "Notification Settings" msgstr "" -#: ../../mod/settings.php:976 +#: ../../mod/settings.php:975 msgid "By default post a status message when:" msgstr "" -#: ../../mod/settings.php:977 +#: ../../mod/settings.php:976 msgid "accepting a friend request" msgstr "" -#: ../../mod/settings.php:978 +#: ../../mod/settings.php:977 msgid "joining a forum/community" msgstr "" -#: ../../mod/settings.php:979 +#: ../../mod/settings.php:978 msgid "making an interesting profile change" msgstr "" -#: ../../mod/settings.php:980 +#: ../../mod/settings.php:979 msgid "Send a notification email when:" msgstr "" -#: ../../mod/settings.php:981 +#: ../../mod/settings.php:980 msgid "You receive an introduction" msgstr "" -#: ../../mod/settings.php:982 +#: ../../mod/settings.php:981 msgid "Your introductions are confirmed" msgstr "" -#: ../../mod/settings.php:983 +#: ../../mod/settings.php:982 msgid "Someone writes on your profile wall" msgstr "" -#: ../../mod/settings.php:984 +#: ../../mod/settings.php:983 msgid "Someone writes a followup comment" msgstr "" -#: ../../mod/settings.php:985 +#: ../../mod/settings.php:984 msgid "You receive a private message" msgstr "" -#: ../../mod/settings.php:986 +#: ../../mod/settings.php:985 msgid "You receive a friend suggestion" msgstr "" -#: ../../mod/settings.php:987 +#: ../../mod/settings.php:986 msgid "You are tagged in a post" msgstr "" -#: ../../mod/settings.php:988 +#: ../../mod/settings.php:987 msgid "You are poked/prodded/etc. in a post" msgstr "" -#: ../../mod/settings.php:991 +#: ../../mod/settings.php:990 msgid "Advanced Account/Page Type Settings" msgstr "" -#: ../../mod/settings.php:992 +#: ../../mod/settings.php:991 msgid "Change the behaviour of this account for special situations" msgstr "" -#: ../../mod/settings.php:995 +#: ../../mod/settings.php:994 msgid "" "Please enable expert mode (in Settings > " "Additional features) to adjust!" msgstr "" -#: ../../mod/settings.php:996 +#: ../../mod/settings.php:995 msgid "Miscellaneous Settings" msgstr "" -#: ../../mod/settings.php:998 +#: ../../mod/settings.php:997 msgid "Personal menu to display in your channel pages" msgstr "" @@ -3943,7 +3960,7 @@ msgstr "" msgid "Not found." msgstr "" -#: ../../mod/webpages.php:121 ../../mod/layouts.php:105 +#: ../../mod/webpages.php:121 ../../mod/layouts.php:100 #: ../../mod/blocks.php:96 msgid "View" msgstr "" @@ -4049,31 +4066,39 @@ msgstr "" msgid "%1$s tagged %2$s's %3$s with %4$s" msgstr "" -#: ../../mod/chat.php:18 ../../mod/channel.php:25 +#: ../../mod/chat.php:19 ../../mod/channel.php:25 msgid "You must be logged in to see this page." msgstr "" -#: ../../mod/chat.php:163 +#: ../../mod/chat.php:165 +msgid "Room not found" +msgstr "" + +#: ../../mod/chat.php:175 msgid "Leave Room" msgstr "" -#: ../../mod/chat.php:164 +#: ../../mod/chat.php:176 msgid "I am away right now" msgstr "" -#: ../../mod/chat.php:165 +#: ../../mod/chat.php:177 msgid "I am online" msgstr "" -#: ../../mod/chat.php:189 ../../mod/chat.php:209 +#: ../../mod/chat.php:179 +msgid "Bookmark this room" +msgstr "" + +#: ../../mod/chat.php:203 ../../mod/chat.php:223 msgid "New Chatroom" msgstr "" -#: ../../mod/chat.php:190 +#: ../../mod/chat.php:204 msgid "Chatroom Name" msgstr "" -#: ../../mod/chat.php:205 +#: ../../mod/chat.php:219 #, php-format msgid "%1$s's Chatrooms" msgstr "" @@ -4192,14 +4217,6 @@ msgstr "" msgid "No entries." msgstr "" -#: ../../mod/chatsvc.php:102 -msgid "Away" -msgstr "" - -#: ../../mod/chatsvc.php:106 -msgid "Online" -msgstr "" - #: ../../mod/attach.php:9 msgid "Item not available." msgstr "" @@ -5112,6 +5129,10 @@ msgstr "" msgid "Delete this connection" msgstr "" +#: ../../mod/connedit.php:395 +msgid "Unknown" +msgstr "" + #: ../../mod/connedit.php:405 ../../mod/connedit.php:434 msgid "Approve this connection" msgstr "" @@ -5282,15 +5303,15 @@ msgid "" "Replies/likes to your public posts may still be visible" msgstr "" -#: ../../mod/layouts.php:52 +#: ../../mod/layouts.php:45 msgid "Layout Help" msgstr "" -#: ../../mod/layouts.php:55 +#: ../../mod/layouts.php:48 msgid "Help with this feature" msgstr "" -#: ../../mod/layouts.php:74 +#: ../../mod/layouts.php:69 msgid "Layout Name" msgstr "" @@ -5298,11 +5319,11 @@ msgstr "" msgid "Help:" msgstr "" -#: ../../mod/help.php:68 ../../index.php:223 +#: ../../mod/help.php:69 ../../index.php:223 msgid "Not Found" msgstr "" -#: ../../mod/help.php:71 ../../mod/page.php:83 ../../mod/display.php:100 +#: ../../mod/help.php:72 ../../mod/page.php:83 ../../mod/display.php:100 #: ../../index.php:226 msgid "Page not found." msgstr "" @@ -5619,7 +5640,7 @@ msgid "" "logout and retry." msgstr "" -#: ../../mod/post.php:256 ../../mod/openid.php:70 ../../mod/openid.php:175 +#: ../../mod/post.php:256 ../../mod/openid.php:71 ../../mod/openid.php:176 #, php-format msgid "Welcome %s. Remote authentication successful." msgstr "" @@ -6219,6 +6240,26 @@ msgstr "" msgid "Reset" msgstr "" +#: ../../mod/rbmark.php:88 +msgid "Select a bookmark folder" +msgstr "" + +#: ../../mod/rbmark.php:93 +msgid "Save Bookmark" +msgstr "" + +#: ../../mod/rbmark.php:94 +msgid "URL of bookmark" +msgstr "" + +#: ../../mod/rbmark.php:95 +msgid "Description" +msgstr "" + +#: ../../mod/rbmark.php:99 +msgid "Or enter new bookmark folder name" +msgstr "" + #: ../../mod/import.php:36 msgid "Nothing to import." msgstr "" @@ -6353,6 +6394,14 @@ msgstr "" msgid "invalid target signature" msgstr "" +#: ../../mod/chatsvc.php:102 +msgid "Away" +msgstr "" + +#: ../../mod/chatsvc.php:106 +msgid "Online" +msgstr "" + #: ../../mod/mail.php:33 msgid "Unable to lookup recipient." msgstr "" @@ -7070,109 +7119,113 @@ msgstr "" msgid "posted an event" msgstr "" -#: ../../view/theme/redbasic/php/config.php:76 +#: ../../view/theme/redbasic/php/config.php:78 msgid "Scheme Default" msgstr "" -#: ../../view/theme/redbasic/php/config.php:87 +#: ../../view/theme/redbasic/php/config.php:89 msgid "silver" msgstr "" -#: ../../view/theme/redbasic/php/config.php:98 -#: ../../view/theme/apw/php/config.php:234 +#: ../../view/theme/redbasic/php/config.php:100 +#: ../../view/theme/apw/php/config.php:250 #: ../../view/theme/blogga/view/theme/blog/config.php:69 #: ../../view/theme/blogga/php/config.php:69 msgid "Theme settings" msgstr "" -#: ../../view/theme/redbasic/php/config.php:99 -#: ../../view/theme/apw/php/config.php:235 +#: ../../view/theme/redbasic/php/config.php:101 +#: ../../view/theme/apw/php/config.php:251 msgid "Set scheme" msgstr "" -#: ../../view/theme/redbasic/php/config.php:100 -msgid "Navigation bar colour" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:101 -msgid "link colour" -msgstr "" - #: ../../view/theme/redbasic/php/config.php:102 -msgid "Set font-colour for banner" +msgid "Narrow navbar" msgstr "" #: ../../view/theme/redbasic/php/config.php:103 -msgid "Set the background colour" +msgid "Navigation bar colour" msgstr "" #: ../../view/theme/redbasic/php/config.php:104 -msgid "Set the background image" +msgid "link colour" msgstr "" #: ../../view/theme/redbasic/php/config.php:105 -msgid "Set the background colour of items" +msgid "Set font-colour for banner" msgstr "" #: ../../view/theme/redbasic/php/config.php:106 -msgid "Set the opacity of items" +msgid "Set the background colour" msgstr "" #: ../../view/theme/redbasic/php/config.php:107 -msgid "Set the basic colour for item icons" +msgid "Set the background image" msgstr "" #: ../../view/theme/redbasic/php/config.php:108 -msgid "Set the hover colour for item icons" +msgid "Set the background colour of items" msgstr "" #: ../../view/theme/redbasic/php/config.php:109 -msgid "Set font-size for the entire application" +msgid "Set the opacity of items" msgstr "" #: ../../view/theme/redbasic/php/config.php:110 -#: ../../view/theme/apw/php/config.php:236 -msgid "Set font-size for posts and comments" +msgid "Set the basic colour for item icons" msgstr "" #: ../../view/theme/redbasic/php/config.php:111 -msgid "Set font-colour for posts and comments" +msgid "Set the hover colour for item icons" msgstr "" #: ../../view/theme/redbasic/php/config.php:112 -msgid "Set radius of corners" +msgid "Set font-size for the entire application" msgstr "" #: ../../view/theme/redbasic/php/config.php:113 -msgid "Set shadow depth of photos" +#: ../../view/theme/apw/php/config.php:252 +msgid "Set font-size for posts and comments" msgstr "" #: ../../view/theme/redbasic/php/config.php:114 -msgid "Set maximum width of conversation regions" +msgid "Set font-colour for posts and comments" msgstr "" #: ../../view/theme/redbasic/php/config.php:115 -msgid "Set minimum opacity of nav bar - to hide it" +msgid "Set radius of corners" msgstr "" #: ../../view/theme/redbasic/php/config.php:116 -msgid "Set size of conversation author photo" +msgid "Set shadow depth of photos" msgstr "" #: ../../view/theme/redbasic/php/config.php:117 +msgid "Set maximum width of conversation regions" +msgstr "" + +#: ../../view/theme/redbasic/php/config.php:118 +msgid "Set minimum opacity of nav bar - to hide it" +msgstr "" + +#: ../../view/theme/redbasic/php/config.php:119 +msgid "Set size of conversation author photo" +msgstr "" + +#: ../../view/theme/redbasic/php/config.php:120 msgid "Set size of followup author photos" msgstr "" -#: ../../view/theme/redbasic/php/config.php:118 +#: ../../view/theme/redbasic/php/config.php:121 msgid "Sloppy photo albums" msgstr "" -#: ../../view/theme/redbasic/php/config.php:118 +#: ../../view/theme/redbasic/php/config.php:121 msgid "Are you a clean desk or a messy desk person?" msgstr "" #: ../../view/theme/apw/php/config.php:193 -#: ../../view/theme/apw/php/config.php:211 +#: ../../view/theme/apw/php/config.php:227 msgid "Schema Default" msgstr "" @@ -7184,115 +7237,115 @@ msgstr "" msgid "Monospace" msgstr "" -#: ../../view/theme/apw/php/config.php:237 +#: ../../view/theme/apw/php/config.php:253 msgid "Set font face" msgstr "" -#: ../../view/theme/apw/php/config.php:238 +#: ../../view/theme/apw/php/config.php:254 msgid "Set iconset" msgstr "" -#: ../../view/theme/apw/php/config.php:239 +#: ../../view/theme/apw/php/config.php:255 msgid "Set big shadow size, default 15px 15px 15px" msgstr "" -#: ../../view/theme/apw/php/config.php:240 +#: ../../view/theme/apw/php/config.php:256 msgid "Set small shadow size, default 5px 5px 5px" msgstr "" -#: ../../view/theme/apw/php/config.php:241 +#: ../../view/theme/apw/php/config.php:257 msgid "Set shadow colour, default #000" msgstr "" -#: ../../view/theme/apw/php/config.php:242 +#: ../../view/theme/apw/php/config.php:258 msgid "Set radius size, default 5px" msgstr "" -#: ../../view/theme/apw/php/config.php:243 +#: ../../view/theme/apw/php/config.php:259 msgid "Set line-height for posts and comments" msgstr "" -#: ../../view/theme/apw/php/config.php:244 +#: ../../view/theme/apw/php/config.php:260 msgid "Set background image" msgstr "" -#: ../../view/theme/apw/php/config.php:245 +#: ../../view/theme/apw/php/config.php:261 msgid "Set background colour" msgstr "" -#: ../../view/theme/apw/php/config.php:246 +#: ../../view/theme/apw/php/config.php:262 msgid "Set section background image" msgstr "" -#: ../../view/theme/apw/php/config.php:247 +#: ../../view/theme/apw/php/config.php:263 msgid "Set section background colour" msgstr "" -#: ../../view/theme/apw/php/config.php:248 +#: ../../view/theme/apw/php/config.php:264 msgid "Set colour of items - use hex" msgstr "" -#: ../../view/theme/apw/php/config.php:249 +#: ../../view/theme/apw/php/config.php:265 msgid "Set colour of links - use hex" msgstr "" -#: ../../view/theme/apw/php/config.php:250 +#: ../../view/theme/apw/php/config.php:266 msgid "Set max-width for items. Default 400px" msgstr "" -#: ../../view/theme/apw/php/config.php:251 +#: ../../view/theme/apw/php/config.php:267 msgid "Set min-width for items. Default 240px" msgstr "" -#: ../../view/theme/apw/php/config.php:252 +#: ../../view/theme/apw/php/config.php:268 msgid "Set the generic content wrapper width. Default 48%" msgstr "" -#: ../../view/theme/apw/php/config.php:253 +#: ../../view/theme/apw/php/config.php:269 msgid "Set colour of fonts - use hex" msgstr "" -#: ../../view/theme/apw/php/config.php:254 +#: ../../view/theme/apw/php/config.php:270 msgid "Set background-size element" msgstr "" -#: ../../view/theme/apw/php/config.php:255 +#: ../../view/theme/apw/php/config.php:271 msgid "Item opacity" msgstr "" -#: ../../view/theme/apw/php/config.php:256 +#: ../../view/theme/apw/php/config.php:272 msgid "Display post previews only" msgstr "" -#: ../../view/theme/apw/php/config.php:257 +#: ../../view/theme/apw/php/config.php:273 msgid "Display side bar on channel page" msgstr "" -#: ../../view/theme/apw/php/config.php:258 +#: ../../view/theme/apw/php/config.php:274 msgid "Colour of the navigation bar" msgstr "" -#: ../../view/theme/apw/php/config.php:259 +#: ../../view/theme/apw/php/config.php:275 msgid "Item float" msgstr "" -#: ../../view/theme/apw/php/config.php:260 +#: ../../view/theme/apw/php/config.php:276 msgid "Left offset of the section element" msgstr "" -#: ../../view/theme/apw/php/config.php:261 +#: ../../view/theme/apw/php/config.php:277 msgid "Right offset of the section element" msgstr "" -#: ../../view/theme/apw/php/config.php:262 +#: ../../view/theme/apw/php/config.php:278 msgid "Section width" msgstr "" -#: ../../view/theme/apw/php/config.php:263 +#: ../../view/theme/apw/php/config.php:279 msgid "Left offset of the aside" msgstr "" -#: ../../view/theme/apw/php/config.php:264 +#: ../../view/theme/apw/php/config.php:280 msgid "Right offset of the aside element" msgstr "" @@ -7346,6 +7399,6 @@ msgstr "" msgid "Got Zot?" msgstr "" -#: ../../boot.php:1906 +#: ../../boot.php:1920 msgid "toggle mobile" msgstr "" diff --git a/version.inc b/version.inc index cc429ef06..e1a04d750 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2014-02-27.601 +2014-02-28.602 From 096cc726b73bc9b41cb0353a3144f7992e787863 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 28 Feb 2014 01:30:05 -0800 Subject: [PATCH 048/130] dang - you really have to bludgeon this thing to get youtube to use https --- include/oembed.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/include/oembed.php b/include/oembed.php index f9e9012d0..57631b051 100755 --- a/include/oembed.php +++ b/include/oembed.php @@ -14,6 +14,10 @@ function oembed_fetch_url($embedurl){ $txt = Cache::get($a->videowidth . $embedurl); + if(strstr($txt,'youtu')) { + $txt = str_replace('http:','https:',$txt); + } + // These media files should now be caught in bbcode.php // left here as a fallback in case this is called from another source @@ -99,8 +103,13 @@ function oembed_format_object($j){ $th=120; $tw = $th*$tr; $tpl=get_markup_template('oembed_video.tpl'); - if(strstr($embedurl,'youtu')) + if(strstr($embedurl,'youtu')) { $embedurl = str_replace('http:','https:',$embedurl); + $j->thumbnail_url = str_replace('http:','https:', $j->thumbnail_url); + $jhtml = str_replace('http:','https:', $jhtml); + $j->html = str_replace('http:','https:', $j->html); + + } $ret.=replace_macros($tpl, array( '$baseurl' => $a->get_baseurl(), '$embedurl'=>$embedurl, From 2d487f306dde34651d42e2b73f3ca9962a5dfb1f Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 28 Feb 2014 01:31:08 -0800 Subject: [PATCH 049/130] more doc --- .../dir_f19da925ee886ec38f19b0e8c19779bc.html | 112 ++++++++++++ .../dir_f19da925ee886ec38f19b0e8c19779bc.js | 4 + doc/html/functions_8php.html | 137 +++++++++++++++ doc/html/functions_8php.js | 4 + doc/html/mod__chanview_8php.html | 112 ++++++++++++ doc/html/rbmark_8php.html | 159 ++++++++++++++++++ doc/html/rbmark_8php.js | 5 + .../theme_2apw_2php_2theme__init_8php.html | 134 +++++++++++++++ doc/html/theme_2apw_2php_2theme__init_8php.js | 4 + 9 files changed, 671 insertions(+) create mode 100644 doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.html create mode 100644 doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.js create mode 100644 doc/html/functions_8php.html create mode 100644 doc/html/functions_8php.js create mode 100644 doc/html/mod__chanview_8php.html create mode 100644 doc/html/rbmark_8php.html create mode 100644 doc/html/rbmark_8php.js create mode 100644 doc/html/theme_2apw_2php_2theme__init_8php.html create mode 100644 doc/html/theme_2apw_2php_2theme__init_8php.js diff --git a/doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.html b/doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.html new file mode 100644 index 000000000..9f4fc228c --- /dev/null +++ b/doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/theme/apw/css Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    css Directory Reference
    +
    +
    + + + + +

    +Files

    file  mod_chanview.php
     
    +
    +
    + diff --git a/doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.js b/doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.js new file mode 100644 index 000000000..b453d057e --- /dev/null +++ b/doc/html/dir_f19da925ee886ec38f19b0e8c19779bc.js @@ -0,0 +1,4 @@ +var dir_f19da925ee886ec38f19b0e8c19779bc = +[ + [ "mod_chanview.php", "mod__chanview_8php.html", null ] +]; \ No newline at end of file diff --git a/doc/html/functions_8php.html b/doc/html/functions_8php.html new file mode 100644 index 000000000..38152d89b --- /dev/null +++ b/doc/html/functions_8php.html @@ -0,0 +1,137 @@ + + + + + + +The Red Matrix: view/theme/apw/php/functions.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    functions.php File Reference
    +
    +
    + + + + +

    +Functions

     splitFilename ($filename)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    splitFilename ( $filename)
    +
    + +
    +
    +
    +
    + diff --git a/doc/html/functions_8php.js b/doc/html/functions_8php.js new file mode 100644 index 000000000..d8761014d --- /dev/null +++ b/doc/html/functions_8php.js @@ -0,0 +1,4 @@ +var functions_8php = +[ + [ "splitFilename", "functions_8php.html#adefe514c95680928b3aae250cbc3c663", null ] +]; \ No newline at end of file diff --git a/doc/html/mod__chanview_8php.html b/doc/html/mod__chanview_8php.html new file mode 100644 index 000000000..112b8b61b --- /dev/null +++ b/doc/html/mod__chanview_8php.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/theme/apw/css/mod_chanview.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    mod_chanview.php File Reference
    +
    +
    +
    +
    + diff --git a/doc/html/rbmark_8php.html b/doc/html/rbmark_8php.html new file mode 100644 index 000000000..a0fd5d3da --- /dev/null +++ b/doc/html/rbmark_8php.html @@ -0,0 +1,159 @@ + + + + + + +The Red Matrix: mod/rbmark.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    rbmark.php File Reference
    +
    +
    + + + + + + +

    +Functions

     rbmark_post (&$a)
     
     rbmark_content (&$a)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    rbmark_content ($a)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    rbmark_post ($a)
    +
    +

    remote bookmark

    +

    https://yoursite/rbmark?f=&title=&url=&private=&remote_return=

    +

    This can be called via either GET or POST, use POST for long body content as suhosin often limits GET parameter length

    +

    f= placeholder, often required title= link text url= URL to bookmark ischat=1 if this bookmark is a chatroom private= Don't share this link remote_return= absolute URL to return after posting is finished

    + +
    +
    +
    +
    + diff --git a/doc/html/rbmark_8php.js b/doc/html/rbmark_8php.js new file mode 100644 index 000000000..6e2671ea5 --- /dev/null +++ b/doc/html/rbmark_8php.js @@ -0,0 +1,5 @@ +var rbmark_8php = +[ + [ "rbmark_content", "rbmark_8php.html#a43fec4960b50926251574762cc491f76", null ], + [ "rbmark_post", "rbmark_8php.html#ac5a66aa8599fa5dc702bae396d8d1f8c", null ] +]; \ No newline at end of file diff --git a/doc/html/theme_2apw_2php_2theme__init_8php.html b/doc/html/theme_2apw_2php_2theme__init_8php.html new file mode 100644 index 000000000..9bfbbacb8 --- /dev/null +++ b/doc/html/theme_2apw_2php_2theme__init_8php.html @@ -0,0 +1,134 @@ + + + + + + +The Red Matrix: view/theme/apw/php/theme_init.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    theme_init.php File Reference
    +
    +
    + + + + +

    +Variables

     $channel = get_app()->get_channel()
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    $channel = get_app()->get_channel()
    +
    +

    Those who require this feature will know what to do with it. Those who don't, won't. Eventually this functionality needs to be provided by a module such that permissions can be enforced. At the moment it's more of a proof of concept; but sufficient for our immediate needs.

    + +
    +
    +
    +
    + diff --git a/doc/html/theme_2apw_2php_2theme__init_8php.js b/doc/html/theme_2apw_2php_2theme__init_8php.js new file mode 100644 index 000000000..b15dd05db --- /dev/null +++ b/doc/html/theme_2apw_2php_2theme__init_8php.js @@ -0,0 +1,4 @@ +var theme_2apw_2php_2theme__init_8php = +[ + [ "$channel", "theme_2apw_2php_2theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864", null ] +]; \ No newline at end of file From ed1e975fafb165f8914ad75c46546fb6697882b1 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 28 Feb 2014 01:53:39 -0800 Subject: [PATCH 050/130] It's no longer simply "Red" and the jury is still out on whether or not it's a "project". Most of the time it doesn't seem like one or act like one. It doesn't seem to be anything cohesive that you can put your finger on and everybody involved is mostly doing their own thing and marching to their own drummer. It is however the RedMatrix, whatever that means to you. --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index c9156d67e..f85b21913 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2010-2014 the Red Project +Copyright (c) 2010-2014 RedMatrix All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy From 8ae986b9c6104778efb05ce400a89e64300c8b3e Mon Sep 17 00:00:00 2001 From: zottel Date: Fri, 28 Feb 2014 14:00:50 +0100 Subject: [PATCH 051/130] correct bbcode link in German docs --- doc/de/main.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/de/main.bb b/doc/de/main.bb index e94b2b781..e6fa0eee0 100644 --- a/doc/de/main.bb +++ b/doc/de/main.bb @@ -20,7 +20,7 @@ [zrl=[baseurl]/help/tags_and_mentions]Tags and Mentions[/zrl] [zrl=[baseurl]/help/webpages]Web Pages[/zrl] [zrl=[baseurl]/help/remove_account]Remove Account[/zrl] -[zrl=[baseurl]/help/extra_features]BBcode reference for posts and comments[/zrl] +[zrl=[baseurl]/help/bbcode]BBcode reference for posts and comments[/zrl] [zrl=[baseurl]/help/checking_account_quota_usage]Checking Account Quota Usage[/zrl] [zrl=[baseurl]/help/cloud_desktop_clients]Cloud Desktop Clients[/zrl] From b390336016cb7b0d60251efd719bbecf635c1945 Mon Sep 17 00:00:00 2001 From: marijus Date: Fri, 28 Feb 2014 23:04:38 +0100 Subject: [PATCH 052/130] add hover effect to usermenu caret --- view/css/bootstrap-red.css | 6 ++++++ view/css/conversation.css | 1 - view/theme/redbasic/css/style.css | 11 ++++++++--- view/tpl/nav.tpl | 2 +- 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/view/css/bootstrap-red.css b/view/css/bootstrap-red.css index 45cf76fb6..606e47838 100644 --- a/view/css/bootstrap-red.css +++ b/view/css/bootstrap-red.css @@ -110,3 +110,9 @@ nav .navbar-collapse { } /* nav overrides end */ + +.dropdown-menu img { + width: 32px; + height: 32px; + margin-right: 5px; +} diff --git a/view/css/conversation.css b/view/css/conversation.css index 3396863e7..325303559 100644 --- a/view/css/conversation.css +++ b/view/css/conversation.css @@ -306,7 +306,6 @@ .like-rotator { float: left; margin: 8px; - color: $toolicon_colour; } .wall-item-delete-wrapper { diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 2efe79dcc..c410c61bc 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -2210,6 +2210,14 @@ nav .dropdown-menu { border-bottom-left-radius: $radiuspx; } +#usermenu-caret { + color: #999; +} + +#avatar:hover + #usermenu-caret { + color: #fff; +} + /* bootstrap overrides */ blockquote { font-size: $body_font_size; @@ -2221,8 +2229,5 @@ blockquote { } .dropdown-menu img { - width: 32px; - height: 32px; - margin-right: 5px; border-radius: $radiuspx; } diff --git a/view/tpl/nav.tpl b/view/tpl/nav.tpl index 20600ccd7..7d2ce1b7a 100755 --- a/view/tpl/nav.tpl +++ b/view/tpl/nav.tpl @@ -12,7 +12,7 @@ {{if $userinfo}} - {{$userinfo.name}} + {{$userinfo.name}} {{if $localuser}}