aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/context/en/profiles/help.html35
-rw-r--r--doc/context/en/settings/account/help.html35
-rw-r--r--doc/context/en/settings/channel/help.html35
-rw-r--r--doc/context/en/settings/tokens/help.html23
-rw-r--r--doc/context/en/wiki/help.html2
-rw-r--r--doc/member/AdvancedSearch.md53
-rw-r--r--doc/member/accounts_profiles_channels_basics.bb19
-rw-r--r--doc/member/addons.bb104
-rw-r--r--doc/member/bbcode.html108
-rw-r--r--doc/member/bugs.bb31
-rw-r--r--doc/member/channels.bb39
-rw-r--r--doc/member/checking_account_quota_usage.bb20
-rw-r--r--doc/member/cloud.bb27
-rw-r--r--doc/member/cloud_desktop_clients.bb21
-rw-r--r--doc/member/connecting_to_channels.bb19
-rw-r--r--doc/member/diaspora_compat.bb68
-rw-r--r--doc/member/faq_admins.bb78
-rw-r--r--doc/member/first-post.bb3
-rw-r--r--doc/member/overview.bb26
-rw-r--r--doc/member/permissions.bb82
-rw-r--r--doc/member/profiles.bb37
-rw-r--r--doc/member/registration.bb35
-rw-r--r--doc/member/remove_account.bb27
-rw-r--r--doc/member/roles.md66
-rw-r--r--doc/member/tags_and_mentions.bb69
-rw-r--r--doc/member/toc.html25
-rw-r--r--doc/member/webpages.bb93
-rw-r--r--doc/toc.html2
-rw-r--r--view/js/main.js22
29 files changed, 1192 insertions, 12 deletions
diff --git a/doc/context/en/profiles/help.html b/doc/context/en/profiles/help.html
new file mode 100644
index 000000000..41f00fe64
--- /dev/null
+++ b/doc/context/en/profiles/help.html
@@ -0,0 +1,35 @@
+<dl class="dl-horizontal">
+ <dt>General</dt>
+ <dd>
+ Once you have registered an <i>account</i> at the matrix you have also created a <i>profile</i> and a <i>channel</i>.
+ </dd>
+ <dt>Account</dt>
+ <dd>
+ You have <i>one</i> account. This consists of your email account and your password. With your account you access your
+ profile and your channel.<i>Think of your account as the way you authenticate at one Hubzilla site. It lets you
+ do things, such as creating profiles and channels with which you can connect to other people.</i>
+ </dd>
+ <dt>Profile</dt>
+ <dd>
+ You have surely registered with some other internet services, such as forums or online communities. For all of them
+ you provided some information about yourself, such as date of birth, country, age and the likes. Unlike other
+ services Hubzilla offers you the advantage of creating
+ <i>many more profiles</i>. That way you are able to distinguish between profiles targeted specially at everyone
+ (your public profile), your work mates, your family and your partner.<i>Think of your profile as the basic
+ information about yourself you tell other people.</i>
+ </dd>
+ <dt>Channel</dt>
+ <dd>
+ During the registration you created your first <i>channel</i>. Yes, besides several profiles you are able to have
+ several channels. This might be a bit confusing in the beginning, but let's clear things up. You already have
+ created one channel. You can use this one for the public, to communicate with people about every day life. But
+ perhaps you are an avid book reader and many people are bored by that. So you open a <i>second channel</i> just
+ for the book lovers, where you all can talk about books as much as you like. Obviously this is a new stream of
+ posts, with a new profile (... or new profile<i>s</i> ...) and completely different contacts. Some connections
+ might exist in both channels, but there will be some that are exclusive to only one of both. You yourself just
+ switch between both of them just like you would in real life switch when talking to people you meet on the street
+ or people you meet specially to talk about books. You can even connect to yourself, or better: to your other
+ channel. :)<i>Think of a channel as different spaces dedicated to different topics where you meet with different
+ people.</i>
+ </dd>
+</dl> \ No newline at end of file
diff --git a/doc/context/en/settings/account/help.html b/doc/context/en/settings/account/help.html
new file mode 100644
index 000000000..41f00fe64
--- /dev/null
+++ b/doc/context/en/settings/account/help.html
@@ -0,0 +1,35 @@
+<dl class="dl-horizontal">
+ <dt>General</dt>
+ <dd>
+ Once you have registered an <i>account</i> at the matrix you have also created a <i>profile</i> and a <i>channel</i>.
+ </dd>
+ <dt>Account</dt>
+ <dd>
+ You have <i>one</i> account. This consists of your email account and your password. With your account you access your
+ profile and your channel.<i>Think of your account as the way you authenticate at one Hubzilla site. It lets you
+ do things, such as creating profiles and channels with which you can connect to other people.</i>
+ </dd>
+ <dt>Profile</dt>
+ <dd>
+ You have surely registered with some other internet services, such as forums or online communities. For all of them
+ you provided some information about yourself, such as date of birth, country, age and the likes. Unlike other
+ services Hubzilla offers you the advantage of creating
+ <i>many more profiles</i>. That way you are able to distinguish between profiles targeted specially at everyone
+ (your public profile), your work mates, your family and your partner.<i>Think of your profile as the basic
+ information about yourself you tell other people.</i>
+ </dd>
+ <dt>Channel</dt>
+ <dd>
+ During the registration you created your first <i>channel</i>. Yes, besides several profiles you are able to have
+ several channels. This might be a bit confusing in the beginning, but let's clear things up. You already have
+ created one channel. You can use this one for the public, to communicate with people about every day life. But
+ perhaps you are an avid book reader and many people are bored by that. So you open a <i>second channel</i> just
+ for the book lovers, where you all can talk about books as much as you like. Obviously this is a new stream of
+ posts, with a new profile (... or new profile<i>s</i> ...) and completely different contacts. Some connections
+ might exist in both channels, but there will be some that are exclusive to only one of both. You yourself just
+ switch between both of them just like you would in real life switch when talking to people you meet on the street
+ or people you meet specially to talk about books. You can even connect to yourself, or better: to your other
+ channel. :)<i>Think of a channel as different spaces dedicated to different topics where you meet with different
+ people.</i>
+ </dd>
+</dl> \ No newline at end of file
diff --git a/doc/context/en/settings/channel/help.html b/doc/context/en/settings/channel/help.html
new file mode 100644
index 000000000..41f00fe64
--- /dev/null
+++ b/doc/context/en/settings/channel/help.html
@@ -0,0 +1,35 @@
+<dl class="dl-horizontal">
+ <dt>General</dt>
+ <dd>
+ Once you have registered an <i>account</i> at the matrix you have also created a <i>profile</i> and a <i>channel</i>.
+ </dd>
+ <dt>Account</dt>
+ <dd>
+ You have <i>one</i> account. This consists of your email account and your password. With your account you access your
+ profile and your channel.<i>Think of your account as the way you authenticate at one Hubzilla site. It lets you
+ do things, such as creating profiles and channels with which you can connect to other people.</i>
+ </dd>
+ <dt>Profile</dt>
+ <dd>
+ You have surely registered with some other internet services, such as forums or online communities. For all of them
+ you provided some information about yourself, such as date of birth, country, age and the likes. Unlike other
+ services Hubzilla offers you the advantage of creating
+ <i>many more profiles</i>. That way you are able to distinguish between profiles targeted specially at everyone
+ (your public profile), your work mates, your family and your partner.<i>Think of your profile as the basic
+ information about yourself you tell other people.</i>
+ </dd>
+ <dt>Channel</dt>
+ <dd>
+ During the registration you created your first <i>channel</i>. Yes, besides several profiles you are able to have
+ several channels. This might be a bit confusing in the beginning, but let's clear things up. You already have
+ created one channel. You can use this one for the public, to communicate with people about every day life. But
+ perhaps you are an avid book reader and many people are bored by that. So you open a <i>second channel</i> just
+ for the book lovers, where you all can talk about books as much as you like. Obviously this is a new stream of
+ posts, with a new profile (... or new profile<i>s</i> ...) and completely different contacts. Some connections
+ might exist in both channels, but there will be some that are exclusive to only one of both. You yourself just
+ switch between both of them just like you would in real life switch when talking to people you meet on the street
+ or people you meet specially to talk about books. You can even connect to yourself, or better: to your other
+ channel. :)<i>Think of a channel as different spaces dedicated to different topics where you meet with different
+ people.</i>
+ </dd>
+</dl> \ No newline at end of file
diff --git a/doc/context/en/settings/tokens/help.html b/doc/context/en/settings/tokens/help.html
new file mode 100644
index 000000000..d37a0fd2b
--- /dev/null
+++ b/doc/context/en/settings/tokens/help.html
@@ -0,0 +1,23 @@
+<dl class="dl-horizontal">
+ <dt>Guest Access Tokens</dt>
+ <dd>
+ In order to facilitate sharing of private resources with non-members or members of federation nodes with limited identification discovery, Hubzilla should provide members with a mechanism to create and manage temporary ("throwaway") logins, aka "Zot Access Tokens". These tokens/credentials may be used to authenticate to a hubzilla site for the sole purpose of accessing privileged or access controlled resources (files, photos, posts, webpages, chatrooms, etc.).
+ </dd>
+ <dt>Create a token</dt>
+ <dd>
+ The form to create/edit accepts three parameters, a human readable name, a password or access token, and an
+ optional expiration. Once expired, the access token is no longer valid, may no longer be used, and will be
+ automatically purged from the list of temporary accounts. The password field in the create/edit forms
+ displays the text of the access token and not an obscured password.
+ </dd>
+ <dt>Share a token</dt>
+ <dd>
+ We do not specify mechanisms for sharing these tokens with others. Any communication method may be used. Any tokens you have created are added to the Access Control List selector and may be used anywhere that Access Control Lists are provided.
+
+ <b>Example</b>: A visitor arrives at your site. She has an access token you have provided, and attempts to visit one of your photo albums (which is restricted to be viewed only by yourself and one temporary identity). Permission is denied.
+
+ The visitor now selects "Login" from the menu navigation bar. This presents a login page. She enters the name and password you have provided her, and she can now view the restricted photo album.
+
+ Alternatively, you may share a link to a protected file by adding a parameter "&zat=abc123" to the URL, where the string "abc123" is the access token or password for the temporary login. No further negotiation is required, and the file is presented.
+ </dd>
+</dl> \ No newline at end of file
diff --git a/doc/context/en/wiki/help.html b/doc/context/en/wiki/help.html
index 314a9d60b..a42914c17 100644
--- a/doc/context/en/wiki/help.html
+++ b/doc/context/en/wiki/help.html
@@ -1,7 +1,7 @@
<dl class="dl-horizontal">
<dt>General</dt>
<dd>Each wiki is a collection of pages, composed as Markdown-formatted text files.</dd>
- <dt><a href='#' onclick='contextualHelpFocus("#wiki_list", 1); return false;' title="Click to highlight element...">Wiki List</a></dt>
+ <dt><a href='#' onclick='contextualHelpFocus("#wikis-index", 1); return false;' title="Click to highlight element...">Wiki List</a></dt>
<dd>Wikis owned by the channel <i>that you have permission to view</i> are listed in the side panel.</dd>
<dt><a href='#' onclick='contextualHelpFocus("#wiki-get-history", 0); return false;' title="Click to highlight element...">Page History</a></dt>
<dd>Every revision of a page is saved to allow quick reversion. Click the <b>History</b> tab to view a history of page revisions, including the date and author of each. The revert button will load the selected revision but will not automatically save the page.</dd>
diff --git a/doc/member/AdvancedSearch.md b/doc/member/AdvancedSearch.md
new file mode 100644
index 000000000..a67c1fc1f
--- /dev/null
+++ b/doc/member/AdvancedSearch.md
@@ -0,0 +1,53 @@
+Advanced Directory Search
+=========================
+
+
+Advanced Directory Search is enabled in "Expert Mode" from your Settings => Additional features page.
+
+On the Directory page an option named "Advanced" will apear in the "Find Channels" widget (typically in the sidebar). Clicking "Advanced" will open another search box for entering advanced search requests.
+
+Advanced requests include
+
+* name=xxx
+[Channel name contains xxx]
+
+* address=xxx
+[Channel address (webbie) contains xxx]
+
+* locale=xxx
+[Locale (typically 'city') contains xxx]
+
+* region=xxx
+[Region (state/territory) contains xxx]
+
+* postcode=xxx
+[Postcode or zip code contains xxx]
+
+* country=xxx
+[Country name contains xxx]
+
+* gender=xxx
+[Gender contains xxx]
+
+* marital=xxx
+[Marital status contains xxx]
+
+* sexual=xxx
+[Sexual preference contains xxx]
+
+* keywords=xxx
+[Keywords contain xxx]
+
+There are many reasons why a match may not return what you're looking for, as many channels do not provide detailed information in their default (public) profile, and many of these fields allow free-text input in several languages - and this may be difficult to match precisely. For instance you may have better results finding somebody in the USA with 'country=u' (along with some odd channels from Deutschland and Bulgaria and Australia) because this could be represented in a profile as US, U.S.A, USA, United States, etc...
+
+Future revisions of this tool may try to smooth over some of these difficulties.
+
+Requests may be joined together with 'and', 'or', and 'and not'.
+
+Terms containing spaces must be quoted.
+
+Example:
+
+ name="charlie brown" and country=canada and not gender=female
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/accounts_profiles_channels_basics.bb b/doc/member/accounts_profiles_channels_basics.bb
new file mode 100644
index 000000000..63b13f036
--- /dev/null
+++ b/doc/member/accounts_profiles_channels_basics.bb
@@ -0,0 +1,19 @@
+[size=large][b]Accounts, Profiles and Channels[/b][/size]
+
+Once you have registered an [i]account[/i] at the matrix you have also created a [i]profile[/i] and a [i]channel[/i].
+
+[b]Account[/b]
+You have [i]one[/i] account. This consists of your email account and your password. With your account you access your profile and your channel.
+[i]Think of your account as the way you authenticate at one $Projectname site. It lets you do things, such as creating profiles and channels with which you can connect to other people.[/i]
+
+[b]Profile[/b]
+You have surely registered with some other internet services, such as forums or online communities. For all of them you provided some information about yourself, such as date of birth, country, age and the likes. [observer=1]If you like you can see your profile here: [baseurl]/profile/[observer.webname] and edit it by clicking on the pencil icon next to your avatar image. [/observer]
+Unlike other services $Projectname offers you the advantage of creating [i]many more profiles[/i]. That way you are able to distinguish between profiles targeted specially at everyone (your public profile), your work mates, your family and your partner.
+[i]Think of your profile as the basic information about yourself you tell other people.[/i]
+
+[b]Channel[/b]
+During the registration you created your first [i]channel[/i]. Yes, besides several profiles you are able to have several channels. This might be a bit confusing in the beginning, but let's clear things up. You already have created one channel. You can use this one for the public, to communicate with people about every day life. But perhaps you are an avid book reader and many people are bored by that. So you open a [i]second channel[/i] just for the book lovers, where you all can talk about books as much as you like. Obviously this is a new stream of posts, with a new profile (... or new profile[i]s[/i] ...) and completely different contacts. Some connections might exist in both channels, but there will be some that are exclusive to only one of both. You yourself just switch between both of them just like you would in real life switch when talking to people you meet on the street or people you meet specially to talk about books. You can even connect to yourself, or better: to your other channel. :)
+[i]Think of a channel as different spaces dedicated to different topics where you meet with different people.[/i]
+
+#include doc/macros/main_footer.bb;
+
diff --git a/doc/member/addons.bb b/doc/member/addons.bb
new file mode 100644
index 000000000..b83b3276a
--- /dev/null
+++ b/doc/member/addons.bb
@@ -0,0 +1,104 @@
+[h3]Plugins/Addons[/h3]
+[list=1]
+[*] abcjsplugin - Create musical scores in your posts
+[*] adultphotoflag - prevents nsfw photos from being displayed in public albums
+[*] b2tbtn - provide button to go directly to top of page if you are scrolled a long way down
+[*] bbmath - use complex math expressions in your posts
+[*] bookmarker - replace #^ with bookmark link in posts
+[*] buglink - provide a bug reporting icon in the lower-left corner of every page
+[*] calc - a scientific calculator
+[*] cdav - CalDAV/CardDAV server
+[*] chess - cross domain identity aware interactive chess games
+[*] chords - generate fingering charts and alternatives for every known guitar chord
+[*] custom_home - set a custom page as the hub start page
+[*] dfedfix - fixes some federation issues with Diaspora releases around aug-sep 2015
+[*] diaspora - Diaspora protocol emulator
+[*] diaspost - crosspost to a Diaspora account (different from the Diaspora protocol emulator)
+[*] dirstats - show some interesting statistics generated by the driectory server
+[*] docs - alternate documentation pages
+[*] donate - provides a project donation page
+[*] dwpost - crosspost to Dreamwidth
+[*] embedphotos - tool to embed photos from your albums in a post
+[*] extcron - use an external cron service to run your hub's scheduled tasks
+[*] flattrwidget - provides a "Flattr Us" button
+[*] flip - create upside down text
+[*] fortunate - displays random quote (fortune cookie). Requires setting up a fortune server.
+[*] friendica - Friendica (DFRN) protocol. Under development.
+[*] frphotos - import photo albums from Friendica
+[*] gnusoc - GNU-Social (OStatus) protocol. Under development.
+[*] hexit - headecimal conversion tool
+[*] hubwall - send an admin email to all hub accounts
+[*] ijpost - crosspost to Insanejournal
+[*] irc - connect to IRC chatrooms
+[*] jappixmini - XMPP chat
+[*] jsupload - upload multiple photos to photo albums at once.
+[*] keepout - prevents nearly all use of site when not logged in, more restrictive than 'block public' setting
+[*] ldapauth - login via account on LDAP or Windows Active Directory domain
+[*] libertree - crosspost to Libertree
+[*] likebanner - create a "like us on red#matrix" banner image
+[*] ljpost - crosspost to LiveJournal
+[*] logrot - logfile rotation utility
+[*] mahjongg - Chinese puzzle game
+[*] mailhost - when using multiple channel clones, select one to receive email notifications
+[*] metatag - provide SEO friendly pages
+[*] mayan_places - set location field to a random city in the Mayan world
+[*] morechoice - additional gender/sexual-preference choices for profiles (not safe for work)
+[*] moremoods - Additional mood options
+[*] morepokes - additional poke options (not safe for work)
+[*] msgfooter - provide legal or other text on each outgoing post
+[*] noembed - use noembed.com as an addition to Hubzilla's native oembed functionality (currently broken)
+[*] nofed - prevent "federation" of channel posts, maintains all interaction on your site
+[*] nsabait - add random terrorism related hashtags to your posts
+[*] nsfw - Highly recommended plugin to collpase posts with inappropriate content
+[*] openclipatar - choose a profile photo from hundreds of royalty free images
+[*] openstreetmap - render locations and maps using OpenStreetMap
+[*] piwik - open source website analytics
+[*] planets - set location field to a random planet from Star Wars
+[*] pumpio - crosspost to Pump.io
+[*] qrator - generate QR code images
+[*] rainbowtag - display your tag and category clouds in colours
+[*] randpost - post/reply bot based on and requires fortunate
+[*] redfiles - import file storage from redmatrix
+[*] redphotos - import photo albums from redmatrix
+[*] redred - Crosspost to another Red Matrix or Hubzilla channel
+[*] rtof - Crosspost to Friendica
+[*] sendzid - add 'zid' auth parmaters to all outbound links, not just in-network links
+[*] skeleton - sample addon/plugin to demonstrate plugin development
+[*] smiley_pack - extend the built-in smilie (emoticon) support
+[*] smileybutton - provides a smiley selector on the post window
+[*] startpage - set a personal preferred page to redirect after logging in.
+[*] statistics_json - Diaspora statistics generator
+[*] statusnet - GNU-social and StatusNet crosspost [zrl=[baseurl]/help/addons_gnusocial]Posting To Gnu Social[/zrl]
+[*] std_embeds - allow unfiltered embeds for popular providers like youtube, vimeo and soundcloud
+[*] superblock - Highly recommended - completely block an offensive channel from your stream
+[*] testdrive - Turns your hub into a test drive site with accounts that expire after a trail period.
+[*] tictac - 3D tic-tac-toe
+[*] torch - flashlight app
+[*] tour - feature tour for new members
+[*] twitter - crosspost to Twitter
+[*] upload_limits - discover what server setting (there are a few) may be causing large photo uploads to fail
+[*] visage - show visitors to your channel
+[*] wholikesme - provides a page to display what connections have 'liked' your posts the most
+[*] webRTC - use an external server (mayfirst.org) to negotiate webRTC hookups
+[*] wppost - crosspost to WordPress (or other wordpress XMLRPC service)
+[*] xmpp - XMPP chat based on converse.js
+[/list]
+
+[h3]Addon Repositories[/h3]
+
+We [b]strongly recommend[/b] that authors of addons publish/submit them to the project addon repository. This has several advantages. Project developers can easily fix security flaws and make changes to comply with recent changes in core code. Addons provided in third-party repositories are considered untrusted. If the project core code changes in an incompatible way, there may be no alternative but to physically remove or rename the addon files in order to get your site working again. Often only the plugin/addon author can help you regain control of your website, and project developers are unable to assist you; because by definition your site configuration has been modified in ways that we cannot easily test or verify.
+
+For these reasons we [b]strongly recommend[/b] that you do NOT install addons from third-party repositories.
+
+We also recognise that some developers prefer working on their own and do not wish their code to be mingled with the project repository for a variety of reasons. These developers can ease troubleshooting and debugging by providing a README file in their respective code repository outlining the process for submitting patches and bug fixes. It is also recommended that these projects provide both a 'dev' (development) and 'master' (production) branch which tracks the current project branches of those names. This is because dev and master are often not compatible from the viewpoint of library interfaces. It is also highly recommended that your repository versions are tagged and moved forward within 24 hours of project releases. This is a major inconvenience for everybdy involved, and can present downtime for production sites while this process is being carried out; which is one more reason why we [b]strongly recommend[/b] that addons be submitted to the project addon repository and that you do NOT install such third-party addons.
+
+
+[url=https://github.com/redmatrix/hubzilla-addons]https://github.com/redmatrix/hubzilla-addons[/url] Main project addon repository
+
+[url=https://github.com/23n/red-addons]https://github.com/23n/red-addons[/url] Oliver's repository (mayan_places and flip)
+
+
+
+#include doc/macros/main_footer.bb;
+
+
diff --git a/doc/member/bbcode.html b/doc/member/bbcode.html
new file mode 100644
index 000000000..7a2c969eb
--- /dev/null
+++ b/doc/member/bbcode.html
@@ -0,0 +1,108 @@
+<h3>BBcode reference</h3>
+<div style="font-size: 14px;">
+<br /><br />
+<ul class="listdecimal" style="list-style-type: decimal;">
+<li>[b]bold[/b] - <strong>bold</strong><br />
+<li>[i]italic[/i] - <em>italic</em><br />
+<li>[u]underlined[/u] - <u>underlined</u><br />
+<li>[s]strike[/s] - <strike>strike</strike><br />
+<li>[color=red]red[/color] - <span style="color: red;">red</span><br />
+<li>[url=https://zothub.com]$Projectname[/url] <a href="https://zothub.com">$Projectname</a><br />
+<li>[img]https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg" alt="Image/photo" /><br />
+<li>[img float=left]https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg" style="float:left;" alt="Image/photo" /><br />
+<div style="clear:both;"></div>
+<li>[img float=right]https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg[/img] <img src="https://zothub.com/images/default_profile_photos/rainbow_man/48.jpg" style="float:right;" alt="Image/photo" /><br />
+<div style="clear:both;"></div>
+<li>[code]code[/code] <code>code</code><br />
+<li>[code=xxx]syntax highlighted code[/code] <code>supported languages php, css, mysql, sql, abap, diff, html, perl, ruby, vbscript, avrc, dtd, java, xml, cpp, python, javascript, js, json, sh</code><br />
+<li>[quote]quote[/quote] <blockquote>quote</blockquote><br />
+<li>[quote=Author]Author? Me? No, no, no...[/quote] <br /><strong class="author">Author wrote:</strong><blockquote>Author? Me? No, no, no...</blockquote><br />
+<li> [nobb] may be used to escape bbcode.</ul><br />
+
+<br />You can make lists with:<br />
+<ul class="listbullet" style="list-style-type: circle;">
+<li>[list]<br />
+<li>[list=1]<br />
+<li>[list=i]<br />
+<li>[list=I] <br />
+<li>[list=a]<br />
+<li>[list=A] <br />
+<li>[ul]<br />
+<li>[ol]<br />
+<li>[dl]<br />
+<li>[dl terms="biumlh"] &mdash; where style of the terms can be any combination of:
+ <dl class="bb-dl dl-horizontal">
+ <dt>b</dt><dd>bold</dd>
+ <dt>i</dt><dd>italic</dd>
+ <dt>u</dt><dd>underline</dd>
+ <dt>m</dt><dd>monospace</dd>
+ <dt>l</dt><dd>large</dd>
+ <dt>h</dt><dd>horizontal &mdash; like <em>this</em> defintion list</dd>
+ </dl>
+</li>
+
+</ul>For example:<br />[ul]<br />[*] First list element<br />[*] Second list element<br />[/ul]<br /><br />Will render something like: <br />
+<ul class="listbullet" style="list-style-type: circle;">
+<li> First list element<br />
+<li> Second list element</ul>
+
+or<br /><br />[dl terms="b"]<br />[*= First element term] First element description<br />[*= Second element term] Second element description<br />[/dl]<br /><br />Will render something like: <br /><br />
+<dl class="bb-dl dl-terms-bold">
+<dt> First element term </dt><dd>First element description</dd>
+<dt> Second element term </dt><dd>Second element description</dd>
+</dl><br />
+
+
+<br />There's also:<br />
+<ul class="listloweralpha" style="list-style-type: lower-alpha;">
+<li>[hr]<br />
+<li>[video]video URL[/video]<br />
+<li>[audio]audio URL[/audio]<br />
+<li>[table]<br />
+<li>[th] <br />
+<li>[td]<br />
+<li>[tr]<br />
+<li>[center]<br />
+<li>[font=courier]some text[/font] <span style="font-family: courier;">some text</span><br />
+</ul><br />
+<br />Tables? Yes!<br /><br />[table border=1]<br /> [tr]<br /> [th]Tables now[/th]<br /> [/tr]<br /> [tr]<br /> [td]Have headers[/td]<br /> [/tr]<br />[/table]<br /><br /><table border="1" ><tr><th>Tables now</th></tr><tr><td>Have headers</td></tr></table><br />All sizes, <br />From the [size=xx-small] - <span style="font-size: xx-small;">xx-small</span>.<br />To the [size=xx-large] - <span style="font-size: xx-large;">xx-large</span>.<br />To fit exactly <span style="font-size: 20px;">20px</span> use [size=20].<br /><br />
+
+<p>$Projectname specific codes</p>
+<ul class="listbullet" style="list-style-type: circle;">
+<li>[&amp;copy;] &copy; This works for many HTML entities</li>
+<li>[zrl]https://zothub.com[/zrl] Magic-auth version of [url] tag</li>
+<li>[zmg]https://zothub.com/some/photo.jpg[/zmg] Magic-auth version of [img] tag<br /></li>
+
+<li>[observer=1]Text to display if observer is authenticated in the matrix[/observer]</li>
+<li>[observer=0]Text to display if observer is <strong>not</strong> authenticated in the matrix[/observer]</li>
+<li>[observer.baseurl] website of observer</li>
+<li>[observer.url] channel URL of observer</li>
+<li>[observer.name] name of observer</li>
+<li>[observer.address] address (zot-id) of observer</li>
+<li>[observer.photo] profile photo of observer<br /></li>
+
+<li>[spoiler] for hiding spoilers<br /><br /></li>
+
+<li>[rpost=title]Text to post[/rpost] The observer will be returned to their home hub to enter a post with the specified title and body. Both are optional</li>
+<li>[qr]text to post[/qr] - create a QR code (if the qrator plugin is installed).</li>
+<li>[toc] - create a table of content in a webpage. Please refer to the <a href="http://ndabas.github.io/toc/" target="_blank">original jquery toc</a> to get more explanations.
+ <ul>
+ <li>Optional param: 'data-toc'. If ommited the default is 'body'</li>
+ <li>Optional param: 'data-toc-headings'. If ommited the default is 'h1,h2,h3'</li>
+ <li>Full example: [toc data-toc='div.page-body' data-toc-headings='h1,h2']</li>
+ </ul>
+</li>
+</ul>
+<br />
+<p>These require a suitable map plugin/addon such as openstreetmap or else the result will be blank</p>
+<ul>
+<li>[map] Generate an inline map using the current browser coordinates of the poster, if browser location is enabled<br />
+<li>[map=latitude,longitude] Generate a map using global coordinates.<br />
+<li>[map]Place Name[/map] Generate a map for a given named location. The first matching location is returned. For instance "Sydney" will usually return Sydney, Australia and not Sydney, Nova Scotia, Canada unless the more precise location is specified. It is highly recommended to use the post preview utility to ensure you have the correct location before submitting the post.<br />
+</ul>
+
+#include doc/macros/main_footer.bb;
+</div>
+
+
+
diff --git a/doc/member/bugs.bb b/doc/member/bugs.bb
new file mode 100644
index 000000000..f50337648
--- /dev/null
+++ b/doc/member/bugs.bb
@@ -0,0 +1,31 @@
+[h2]Bugs, Issues, and things that go bump in the night...[/h2]
+[h3]Something went wrong! Who is charge of fixing it?[/h3]
+
+[b]Hubzilla Community Server[/b]
+
+Hubzilla Community Server is open source software which is maintained by "the community" - essentially unpaid volunteers.
+
+The first thing you need to do is talk to your hub administrator - the person who runs and manages your site. They are in the unique position of having access to the internal software and database and [b]logfiles[/b] and will need to be involved in fixing your problem. Other people "on the net" can't really help with this. The first thing the hub administrator needs to do is look at their logs and/or try to reproduce the problem. So try to be as helpful and courteous as possible in helping them look into the problem.
+
+To find your hub administrator (if you don't know who they are) please look at [url=[baseurl]/siteinfo]this page[/url]. If they have not provided any contact info on that page or provided an "Impressum" there, see [url=[baseurl]/siteinfo/json]this site info summary[/url] under the heading "admin:".
+
+[h3]I'm a hub administrator; what do I do?[/h3]
+
+The software instructions which provide this server are open source and are available for your inspection. If an error message was reported, often one can do a search on the source files for that error message and find out what triggered it. With this information and the site logfiles it may be possible to figure out the sequence of events leading to the error. There could also be other sites involved, and the problem may not even be on your site but elsewhere in the network. Try to pin down the communication endpoints (hubs or sites) involved in the problem and contact the administrator of that site or those sites. Please try and provide an event time of when things went wrong so it can be found in the logs. Work with the other administrator(s) to try and find the cause of the problem. Logfiles are your friend. When something happens in the software that we didn't expect, it is nearly always logged.
+
+[h3]The white screen of death[/h3]
+
+If you get a blank white screen when doing something, this is almost always a code or syntax error. There are instructions in your .htconfig.php file for enabling syntax logging. We recommend all sites use this. With syntax logging enabled repeat the sequence which led to the error and it should log the offending line of code. Hopefully you will be able to fix the problem with this information. When you do, please submit the fix "upstream" so that we can share the fix with the rest of the project members and other communities. This is a key benefit of using open source software - we share with each other and everybody benefits.
+
+[h3]I'm stumped. I can't figure out what is wrong.[/h3]
+
+At this point it might be worthwhile discussing the issue on one of the online forums. There may be several of these and some may be more suited to your spoken language. As a last resort, try "Channel One", which is in English.
+
+If the community developers can't help you right away, understand that they are volunteers and may have a lot of other work and demands on their time. At this point you need to file a bug report. You will need an account on github.com to do this. So register, and then visit https://github.com/redmatrix/hubzilla/issues
+. Create an issue here and provide all the same information that you provided online. Don't leave out anything.
+
+Then you wait. If it's a high profile issue, it may get fixed quickly. But nobody is in charge of fixing bugs. If it lingers without resolution, please spend some more time investigating the problem. Ask about anything you don't understand related to the behaviour. You will learn more about how the software works and quite possibly figure out why it isn't working now. Ultimately it is somebody in the community who is going to fix this and you are a member of the community; and this is how the open source process works.
+
+
+Other developers working to fix the problem may need to find out more, so do your homework and document what is happening and everything you've tried. Don't say "I did xyz and it didn't work." That doesn't tell us anything. Tell us precisely what steps you took and what you expected the result to be, and precisely what happened as a result. If there were any error messages, don't say "there was an error message". Tell us exactly what the message said. Tell us what version you're running and any other details that may be unique about your site configuration.
+ \ No newline at end of file
diff --git a/doc/member/channels.bb b/doc/member/channels.bb
new file mode 100644
index 000000000..eca8dd0e6
--- /dev/null
+++ b/doc/member/channels.bb
@@ -0,0 +1,39 @@
+[h2]Channels[/h2]
+
+[h3]What are channels?[/h3]
+
+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 &quot;Me&quot;.
+
+The most important features for a channel that represents &quot;me&quot; are:
+[ul]
+[*]Secure and private &quot;spam free&quot; communications
+
+[*]Identity and &quot;single-signon&quot; across the entire network
+
+[*]Privacy controls and permissions which extend to the entire network
+
+[*]Directory services (like a phone book)
+[/ul]
+In short, a channel that represents yourself is &quot;me, on the internet&quot;.
+
+[h3]Creating channels[/h3]
+
+You will be required to create your first channel as part of the sign up process. You can also create additonal channels from the &quot;Select channel&quot; 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 &quot;webbie&quot;. 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 &quot;llamas-are_kewl.123&quot;. &quot;llamasarecool&quot; 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=1][observer.url][/observer][observer=0]example.com/channel/username[/observer] you will find your channel &quot;stream&quot;. This is where your recent activity will appear, in reverse chronological order. If you post in the box marked &quot;share&quot;, 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 &quot;About&quot; tab contains your &quot;profile&quot;, the photos page contain photo albums, and the events page contains events share by both yourself and your contacts.
+
+[h3]The grid, permissions and delegation[/h3]
+
+The &quot;Grid&quot; page contains all recent posts from across $Projectname network, 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 &quot;Can write to my &quot;public&quot; file storage&quot; than a personal account. For more information, see the [zrl=[baseurl]/help/roles]permissions section[/zrl].
+
+You can also delegate control of your channels' posts and connections, but not its configurations, to another channel. That is done by editing a connection and assigning it the permission to administer your channel's resources.
+
+#include doc/macros/main_footer.bb;
+
+
diff --git a/doc/member/checking_account_quota_usage.bb b/doc/member/checking_account_quota_usage.bb
new file mode 100644
index 000000000..ca7e070ad
--- /dev/null
+++ b/doc/member/checking_account_quota_usage.bb
@@ -0,0 +1,20 @@
+[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]Check file storage quota levels[/b]
+Visit the following URL in your browser:
+[observer=1][observer.baseurl]/filestorage/[observer.webname][/observer]
+[observer=0]example.com/filestorage/username[/observer]
+
+[b]Check uploaded photos storage quota levels[/b]
+[observer=1][observer.baseurl]/photos/[observer.webname][/observer]
+[observer=0]example.com/photos/username[/observer]
+
+Example:
+[observer=1][observer.baseurl]/filestorage/[observer.webname][/observer]
+[observer=0]example.com/filestorage/username[/observer]
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/cloud.bb b/doc/member/cloud.bb
new file mode 100644
index 000000000..2ad22806b
--- /dev/null
+++ b/doc/member/cloud.bb
@@ -0,0 +1,27 @@
+[b]Personal Cloud Storage[/b]
+
+$Projectname 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]/cloud/{{username}}&quot; replacing {{username}} with the nickname you provided during channel creation.
+
+[b]Web Access[/b]
+
+Your files are visible on the web at the location &quot;cloud/{{username}}&quot; 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 &quot;filestorage/{{username}}&quot;; 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 &quot;personal&quot; or &quot;private&quot; 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 &quot;family&quot; and &quot;friends&quot; with permission granted to appropriate privacy groups.
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/cloud_desktop_clients.bb b/doc/member/cloud_desktop_clients.bb
new file mode 100644
index 000000000..2f099527f
--- /dev/null
+++ b/doc/member/cloud_desktop_clients.bb
@@ -0,0 +1,21 @@
+[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]
+
+
+[b]Server Notes[/b]
+
+Note: There have been reported issues with clients that use "chunked transfer encoding", which includes Apple iOS services, and also the "AnyClient" and "CyberDuck" tools. These work fine for downloads, but uploads often end up with files of zero size. This is caused by an incorrect implemention of chunked encoding in some current FCGI (fast-cgi) implementations. Apache running with PHP as a module does not have these issues, but when running under FCGI you may need to use alternative clients or use the web uploader. At the time of this writing the issue has been open and no updates provided for at least a year. If you encounter zero size files with other clients, please check the client notes; as there are occasional configuration issues which can also produce these symptoms.
+
+#include doc/macros/cloud_footer.bb;
diff --git a/doc/member/connecting_to_channels.bb b/doc/member/connecting_to_channels.bb
new file mode 100644
index 000000000..291323f75
--- /dev/null
+++ b/doc/member/connecting_to_channels.bb
@@ -0,0 +1,19 @@
+[b]Connecting To Channels[/b]
+
+Connections in $Projectname 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 &quot;Can send me their channel stream and posts&quot; permission to &quot;Anybody in this network&quot; 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 $Projectname 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 $Projectname 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 &quot;connect&quot;. 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, &quot;Full Sharing&quot; 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 &quot;Submit&quot;.
+
+You may also connect with any channel by visiting the &quot;Connections&quot; page of your site or the Directory and typing their &quot;webbie&quot; into the &quot;Add New Connection&quot; 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 &quot;bob@example.com&quot;. The process is the same as connecting via the &quot;Connect&quot; button - you will then be taken to the connection editor to set permissions.
+
+[b]Premium Channels[/b]
+
+Some channels are designated &quot;Premium Channels&quot; 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.
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/diaspora_compat.bb b/doc/member/diaspora_compat.bb
new file mode 100644
index 000000000..f27a63b9d
--- /dev/null
+++ b/doc/member/diaspora_compat.bb
@@ -0,0 +1,68 @@
+[h3]Diaspora Compatibility[/h3]
+
+The Diaspora Protocol addon allows a site to communicate using the Diaspora protocol, which allows communications and connections to be made with Diaspora members (and also Friendica members, since that network also provides the Diaspora Protocol).
+
+This addon is available in the 'basic' and 'standard' server configurations. It is not available with and the plugin is disabled completely when you are using the 'pro' server configuration. The reason for this is that the Diaspora protocol is not very sophisticated and many $projectname features do not work well with it.
+
+Members will have to be aware of limitations of the protocol or limit their own activities to those which are compatible with Diaspora. The 'pro' server configuration is free from these limitations and you may use all of the project features and abilities without regard for how they translate to other networks. Many features are unique to $Projectname and are supported by the &quot;Zot&quot; protocol, which is our native communications language between servers/hubs.
+
+If you are using a configuration which allows direct Diaspora communications you should be aware of the limitations presented here.
+
+[ul]
+[*]Private mail retraction (unsend) is not possible for Diaspora connections.
+
+[*]Private posts and their associated comments are sent in plaintext email notifications in Diaspora and Friendica. This is a major privacy issue and affects any private communications you have where *any* member of the conversation is on another network. Be aware of it.
+
+[*]Access control only works on posts and comments. Diaspora members will get permission denied trying to access any other access controlled hubzilla objects such as files, photos, webpages, chatrooms, etc. In the case of private photos that are linked to posts, they will see a "prohibited sign" instead of the photo. Diaspora has no concept of private media and provides an illusion of photo privacy by using obscured URLs rather than protecting the photo from snooping by unauthorised viewers.
+
+There is no workaround except to make your media resources public (to everybody on the internet).
+
+
+[*]Edited posts will not be delivered. Diaspora members will see the original post/comment without edits. There is no mechanism in the protocol to update an existing post. We cannot delete it and submit another invisibly because the message-id will change and we need to keep the same message-id on our own network. The only workaround is to delete the post/comment and do it over. (If this is a post, this will delete any existing likes/comments). We may eventually provide a way to delete the out of date copy only from Diaspora and keep it intact on networks that can handle edits.
+
+[*]Nomadic identity ($projectname 'standard' only) will not work with Diaspora. We may eventually provide an **option** which will allow you to "start sharing" from all of your clones when you make the first connection. The Diaspora person does not have to accept this, but it will allow your communications to continue if they accept this connection. Without this option, if you go to another server from where you made the connection originally or you make the connection before creating the clone, you will need to connect with them again from the new location.
+
+[*]Post expiration is not supported on Diaspora. We may provide you an option to not send expiring posts to that network. In the future this may be provided with a remote delete request.
+
+[*]End-to-end encryption is not supported. We will translate these posts into a lock icon, which can never be unlocked from the Diaspora side.
+
+[*]Message verification will eventually be supported.
+
+[*]Multiple profiles are not supported. Diaspora members can only see your default profile.
+
+[*]Birthday events will not appear in Diaspora. Other events will be translated and sent as a post, but all times will either be in the origination channel's timezone or in GMT. We do not know the recipient's timezone because Diaspora doesn't have this concept.
+
+[*]We currently allow tags to be hijacked by default. An option is provided to allow you to prevent the other end of the network from hijacking your tags and point them at its own resources.
+
+[*]Community tags will not work. We will send a tagging activity as a comment. It won't do anything.
+
+[*]Privacy tags (@!somebody) will not be available to Diaspora members. These tags may have to be stripped or obscured to prevent them from being hijacked - which could result in privacy issues.
+
+[*]Plus-tagged hubzilla forums should work from Diaspora.
+
+
+[*]You cannot use Diaspora channels as channel sources.
+
+
+[*]Dislikes of posts will be converted to comments and you will have the option to send these as comments or not send them to Diaspora (which does not provide dislike). Currently they are not sent.
+
+[*]We will do the same for both likes and dislikes of [b][i]comments[/i][/b]. They can either be sent as comments or you will have the ability to prevent them from being transmitted to Diaspora. Currently they are not sent.
+
+[*]Emojis are currently untranslated.
+
+[*]"observer tags" will be converted to empty text.
+
+
+[*]Embedded apps will be translated into links.
+
+
+[*]Embedded page design elements (work in progress) will be either stripped or converted to an error message.
+
+[*]Diaspora members will not appear in the directory.
+
+
+[*]There are differences in oembed compatibility between the networks. Some embedded resources will turn into a link on one side or the other.
+
+[/ul]
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/faq_admins.bb b/doc/member/faq_admins.bb
new file mode 100644
index 000000000..0b54a41de
--- /dev/null
+++ b/doc/member/faq_admins.bb
@@ -0,0 +1,78 @@
+[size=large][b]$Projectname FAQ[/b][/size]
+
+[toc]
+
+[h3]Is there a way to change the Admin account?[/h3]
+[h3]Is there a way to have multiple administrators?[/h3]
+Yes, but it's a bit messy at the moment as it is not yet exposed in the UI. To make an account an administrative account,
+one needs to add 4096 to the account_roles entry in the account table of the database. Likewise, to remove administrative permissions,
+one must subtract 4096 from the account roles.
+
+[h3]I can log in, but there are no posts or webpages[/h3]
+
+Most likely, your item table has crashed. Run the MySQL command [code]repair table item;[/code]
+
+[h3]Login doesn't work, immediately after login, the page reloads and I'm logged out[/h3]
+
+Most likely, your session table has crashed. Run the MySQL command [code]repair table session;[/code]
+
+[h3]When I switch theme, I sometimes get elements of one theme superimposed on top of the other[/h3]
+
+a) store/[data]/smarty3 isn't writeable by the webserver. Make it so.
+
+b) You're using Midori, or with certain themes, Konqueror in KHTML mode.
+
+[b]My network tab won't load, it appears to be caused by a photo or video[/h3]
+
+Your PHP memory limit is too low. Increase the size of the memory_limit directive in your php.ini
+
+Contrary to popular belief, the number of users on a hub doesn't make any difference to the required memory limit, rather, the content
+of an individuals matrix counts. Streams with lots of photos and video require more memory than streams with lots of text.
+
+[h3]I have no communication with anybody[/h3]
+
+You're listening on port 443, but do not have a valid SSL certificate. Note this applies even if your baseurl is http.
+Don't listen on port 443 if you cannot use it. It is strongly recommended to solve this problem by installing a browser
+valid SSL certificate rather than disabling port 443.
+
+[h3]How do I update a non-Git install?[/h3]
+1) Backup .htconfig.php
+2) Backup everything in store/
+3) Backup any custom changes in mod/site/ and view/site
+3) Delete your existing installation
+4) Upload the new version.
+5) Upload the new version of themes and addons.
+6) Restore everything backed up earlier.
+
+[h3]What do I need to do when moving my hub to a different server[/h3]
+
+1) Git clone on the new server. Repeat the process for any custom themes, and addons.
+2) Rsync .htconfig.php
+3) Rsync everything in store/
+4) Rsync everything in mod/site/ and view/site (these will only exist if you have custom modules)
+5) Dump and restore DB.
+
+[h3]How do I reinstall an existing hub on the same server?[/h3]
+
+1) [code]git reset --hard HEAD[/code] will reset all files to their upstream defaults. This will not reset any local files that do not also exist upstream. Eg, if you have local changes to mod/channel.php, this will reset them - but will not reset any changes in mod/site/channel.php
+2) If you absolutely must reinstall - for example, if you need to upgrade operating system - follow the steps for moving to a different server, but instead of using rsync, backup and restore some other way.
+
+Do not reinstall a hub with a fresh database and fresh .htconfig.php unless as a very last resort. Creating a temporary account and ask for help via a support channel for non-trivial reinstalls is preferable to reinstalling fresh.
+
+[h3]How do I set the default homepage for logged out viewers?[/h3]
+
+Use the custom_home addon available in the main addons repository.
+
+[h3]What do the different directory mode settings mean?[/h3]
+[code]// Configure how we communicate with directory servers.
+// DIRECTORY_MODE_NORMAL = directory client, we will find a directory (all of your member's queries will be directed elsewhere)
+// DIRECTORY_MODE_SECONDARY = caching directory or mirror (keeps in sync with realm primary [adds significant cron execution time])
+// DIRECTORY_MODE_PRIMARY = main directory server (you do not want this unless you are operating your own realm. one per realm.)
+// DIRECTORY_MODE_STANDALONE = "off the grid" or private directory services (only local site members in directory)
+[/code]
+- The default is NORMAL. This off-loads most directory services to a different server. The server used is the config:system/directory_server. This setting MAY be updated by the code to one of the project secondaries if the current server is unreachable. You should either be in control of this other server, or should trust it to use this setting.
+- SECONDARY. This allows your local site to act as a directory server without exposing your member's queries to another server. It requires extra processing time during the cron polling, and is not recommended to be run on a shared web host.
+- PRIMARY. This allows you to run a completely separate 'Network' of directory servers with your own Realm. By default, all servers are on the RED_GLOBAL realm unless the config:system/directory_realm setting is overridden. [i]Do not use this unless you have your own directory_realm.[/i]
+- STANDALONE. This is like primary, except it's a 'Network' all on it's own without talking to any other servers. Use this if you have only one server and want to be segregated from the Red#Matrix directory listings.
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/first-post.bb b/doc/member/first-post.bb
new file mode 100644
index 000000000..cf6ed5b49
--- /dev/null
+++ b/doc/member/first-post.bb
@@ -0,0 +1,3 @@
+[size=large]Your first posting[/size]
+
+... to be written ...
diff --git a/doc/member/overview.bb b/doc/member/overview.bb
new file mode 100644
index 000000000..0dc71aa96
--- /dev/null
+++ b/doc/member/overview.bb
@@ -0,0 +1,26 @@
+[h2]Documentation for hub members[/h2]
+While many features and capabilities of Hubzilla are familiar to people who have used social networking sites and blogging software, there are also quite a few new concepts and features that most people have not encountered before. Some of the new ideas are related to the [b]decentralized[/b] nature of the grid; others are associated with the advanced [b]permissions system[/b] that is necessary to protect your data privacy. The purpose of this guide is to help you understand how to create, configure, and use your nomadic identity.
+[h3]Getting started[/h3]
+[zrl=[baseurl]/help/registration]Account Registration[/zrl]
+[zrl=[baseurl]/help/accounts_profiles_channels_basics]You at $Projectname: accounts, profiles and channels in short[/zrl]
+[zrl=[baseurl]/help/profiles]Profiles[/zrl]
+[zrl=[baseurl]/help/channels]Channels[/zrl]
+[zrl=[baseurl]/help/roles]Permission roles and Channel types[/zrl]
+[zrl=[baseurl]/help/first-post]Your first posting[/zrl]
+[zrl=[baseurl]/help/connecting_to_channels]Connecting To Other Channels[/zrl]
+[zrl=[baseurl]/help/permissions]Permissions And Encryption: You Are In Control[/zrl]
+[zrl=[baseurl]/help/cloud]Cloud Storage[/zrl]
+[zrl=[baseurl]/help/remove_account]Remove Channel or Account[/zrl]
+[h3]Members help[/h3]
+[zrl=[baseurl]/help/tags_and_mentions]Tags and Mentions[/zrl]
+[zrl=[baseurl]/help/webpages]Web Pages[/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]
+[zrl=[baseurl]/help/AdvancedSearch]Advanced Directory Search[/zrl]
+[zrl=[baseurl]/help/addons]Help With Addons[/zrl]
+[zrl=[baseurl]/help/diaspora_compat]Diaspora Communications Compatibility (Diaspora and Friendica)[/zrl]
+[zrl=[baseurl]/help/faq_members]FAQ For Members[/zrl]
+[zrl=[baseurl]/help/bugs]Bugs, Issues, and things that go bump in the night...[/zrl]
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/permissions.bb b/doc/member/permissions.bb
new file mode 100644
index 000000000..0721c763d
--- /dev/null
+++ b/doc/member/permissions.bb
@@ -0,0 +1,82 @@
+[h1]Permissions[/h1]
+Permissions in $Projectname are more complete than you may be used to. This allows us to define more fine graded relationships than the black and white &quot;this person is my friend, so they can do everything&quot; or &quot;this person is not my friend, so they can't do anything&quot; permissions you may find elsewhere.
+
+[b]Permission Roles[/b]
+
+When you create a channel we allow you to select different 'roles' for that channel. These create an entire family of permissions and privacy settings that are appropriate for that role. Typical roles are "Social - mostly public", "Social - mostly private", "Forum - public" and many others. These bring a level of simplicity to managing permissions. Just choose a role and appropriate permissions are automatically applied. You can also choose 'Custom/Expert mode' and change any individual permission setting in any way you desire.
+
+
+[b]Default Permission Limits[/b]
+
+There are a large number of individual permissions. These control everything from the ability to view your stream to the ability to chat with you. Every permission has a limit. The scope of these permissions varies from &quot;Only me&quot; to &quot;Everybody on the internet&quot; - though some scopes may not be available for some permissions. The limit applies to any published thing you create which has no privacy or access control. For example if you publish a photo and didn't select a specific audience with permission to view it, we apply the limit. These limits apply to everything within that permission rule, so you cannot apply a limit to one photo. The limit applies to all your photos. If all your photos are visible to everybody on the internet and you reduce the limit only to friends, [b]all[/b] of your photos will now be visible only to friends.
+
+[b]Access Control[/b]
+
+Access Control is the preferred method of managing privacy in [i]most[/i] cases, rather than using permission limits. This creates lists of either connections or privacy groups (or both) and uses the access list to decide if a permission is allowed. An access list is attached to everything you publish. Unlike permission limits, if you change the access control list on a single photo, it doesn't affect any of your other photos. You can use privacy groups and a "default access control list" to create and automate the management of access control lists to provide any level of privacy you desire on anything you publish.
+
+We highly recommend that you use the "typical social network" settings when you create your first channel, as it allows others to communicate with you and help you out if you have difficulty. You will find that these settings allow you as much privacy as you desire - when you desire it; but also allow you to communicate in public if you choose to. You are free to use much more private settings once you have learned your way around.
+
+
+[dl terms="l"]
+[*= The scopes of permissions are:]
+[dl terms="i"]
+ [*= Nobody Except Yourself ] This is self explanatory. Only you will be allowed access.
+
+ [*= 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.
+
+ [*= 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.
+
+ [*= Anybody On This Hub ] Anybody with a channel on the same hub/website as you will have permission approved. Anybody who is registered at a different hub will have this permission denied.
+
+ [*= Anybody in this network ] Anybody in $Projectname will have this permission approved. Even complete strangers. However, anybody not logged in/authenticated will have this permission denied.
+
+ [*= Anybody authenticated ] This is similar to "anybody in this network" except that it can include anybody who can authenticate by any means - and therefore [i]may[/i] include visitors from other networks.
+
+ [*= Anybody on the internet ] Completely public. This permission will be approved for anybody at all.
+[/dl]
+[*= The individual permissions are:]
+[dl terms="i"]
+ [*= Can view my &quot;public&quot; stream and posts. ] This permision determines who can view your channel &quot;stream&quot; that is, the non-private posts that appear on the &quot;home&quot; tab when you're logged in.
+
+ [*= Can view my &quot;public&quot; channel profile. ] This permission determines who can view your channel's profile. This refers to the &quot;about&quot; tab
+
+ [*= Can view my &quot;public&quot; photo albums. ] This permission determines who can view your photo albums. Individual photographs may still be posted to a more private audience.
+
+ [*= Can view my &quot;public&quot; address book. ] This permission determines who can view your contacts. These are the connections displayed in the &quot;View connections&quot; section.
+
+ [*= Can view my &quot;public&quot; file storage. ] This permission determines who can view your public files stored in your cloud.
+
+ [*= Can view my &quot;public&quot; pages. ] This permission determines who can view your public web pages.
+
+ [*= Can send me their channel stream and posts. ] 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 &quot;anyone in my address book&quot; at a minimum. A personal notes channel would probably want to choose &quot;nobody except myself&quot;. Setting this to &quot;Anybody in the network&quot; will show you posts from complete strangers, which is a good form of discovery.
+
+ [*= Can post on my channel page (&quot;wall&quot;). ] This permission determines who can write to your wall when clicking through to your channel.
+
+ [*= Can comment on my posts. ] This permission determines who can comment on posts you create. Normally, you would want this to match your &quot;can view my public stream and posts&quot; permission
+
+ [*= Can send me private mail messages. ] This determines who can send you private messages (zotmail).
+
+ [*= Can post photos to my photo albums. ] 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.
+
+ [*= Can forward to all my channel contacts via post tags. ] 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.
+
+ [*= Can chat with me (when available). ] This determines who can join the public chat rooms created by your channel.
+
+ [*= Can write to my &quot;public&quot; file storage. ] This determines who can upload files to your public file storage, or 'cloud'.
+
+ [*= Can edit my &quot;public&quot; pages. ] This determines who can edit your webpages. This is useful for wikis or sites with multiple editors.
+
+ [*= Can administer my channel resources. ] This determines who can have full control of your channel. This should normally be set to &quot;nobody except myself&quot;.
+[/dl][/dl]
+[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 &quot;only those I specifically allow&quot;, 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 &quot;Extra Features&quot; 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.
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/profiles.bb b/doc/member/profiles.bb
new file mode 100644
index 000000000..513bf5fed
--- /dev/null
+++ b/doc/member/profiles.bb
@@ -0,0 +1,37 @@
+[b]Profiles[/b]
+
+$Projectname has unlimited profiles. You may use different profiles to show different &quot;sides of yourself&quot; 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 &quot;sides&quot; of each channel. For example, your default public profile might say &quot;Hello, I'm Fred, and I like laughing&quot;. You may show your close friends a profile that adds &quot;and I also enjoy dwarf tossing&quot;.
+
+You always have a profile known as your &quot;default&quot; or &quot;public&quot; 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...
+
+[ul][*]Your real name or at least a nickname everybody knows
+[*]A photo of you
+[*]Your location on the planet, at least to a country level.[/ul]
+
+In addition, if you'd like to meet people that share some general interests with you, please take a moment and add some &quot;Keywords&quot; to your profile. Such as &quot;music, linux, photography&quot; or whatever. You can add as many keywords as you like.
+
+To create an alternate profile, first go to [zrl=[baseurl]/settings/features]Settings &gt; Additional Features[/zrl] and enable &quot;Multiple Profiles&quot; there, otherwise you won't have the ability to use more than just your default profile.
+
+Then select &quot;Edit Profiles&quot; from the menu of your $Projectname site. 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 &quot;clone&quot; 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 &quot;Clone this profile&quot; there.
+
+In the list of your profiles, you can also choose the contacts who can see a specific profile. Just click on &quot;Edit visibility&quot; 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 &quot;Settings&quot; 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. Currently, only the name field and the keywords are searched. You may also include such 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.
+
+On your Connnections page and in the directory there is a link to &quot;Suggestions&quot; or &quot;Channel Suggestions&quot;, 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.
+
+See Also
+
+[zrl=[baseurl]/help/AdvancedSearch]Advanced Searching[/zrl]
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/registration.bb b/doc/member/registration.bb
new file mode 100644
index 000000000..f656eeaa6
--- /dev/null
+++ b/doc/member/registration.bb
@@ -0,0 +1,35 @@
+[size=large][b]Registration[/b][/size]
+
+Not all $Projectname sites allow open registration. If registration is allowed, you will see a &quot;Register&quot; 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 $Projectname 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 activate your account, to (optionally) send email notifications for incoming messages or items, [i]and to recover lost passwords[/i].
+
+[b]Password[/b]
+
+Enter a password of your choice, and repeat it in the second box to ensure it was typed correctly. As $Projectname 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 [zrl=[baseurl]/help/TermsOfService]Terms of Service[/zrl]. 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 &quot;Add a channel&quot; 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 &quot;choose a short nickname&quot; box is similar to a &quot;username&quot; 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/accounts_profiles_channels_basics]The Basics about Identities within $Projectname[/zrl]
+[zrl=[baseurl]/help/accounts]Accounts[/zrl]
+[zrl=[baseurl]/help/profiles]Profiles[/zrl]
+[zrl=[baseurl]/help/permissions]Permissions[/zrl]
+[zrl=[baseurl]/help/remove_account]Remove Account[/zrl]
+
+#include doc/macros/main_footer.bb;
+
diff --git a/doc/member/remove_account.bb b/doc/member/remove_account.bb
new file mode 100644
index 000000000..704f0b94c
--- /dev/null
+++ b/doc/member/remove_account.bb
@@ -0,0 +1,27 @@
+[b]Remove Channel or Account[/b]
+
+[b]Remove Channel[/b]
+
+Go to the bottom of your channel settings page or 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 hubs this only removes by default the channel instance which exists on this hub.
+
+[b]Remove Account[/b]
+
+Go to the bottom of your account settings page or visit the URL:
+
+ [baseurl]/removeaccount
+
+You will need to confirm your password and the account you are currently logged into will be removed.
+
+This is irreversible.
+
+All your channels will be deleted. If you have identity clones on other hubs this only removes by default the channels instances which exists on this hub.
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/roles.md b/doc/member/roles.md
new file mode 100644
index 000000000..a7608ff90
--- /dev/null
+++ b/doc/member/roles.md
@@ -0,0 +1,66 @@
+Account Permission Roles
+========================
+
+
+##Social
+
+**Mostly Public**
+
+The channel is a typical social networking profile. By default posts and published items are public, but one can over-ride this when creating the item and restrict it. You are listed in the directory. Your online presence and connections are visible to others.
+
+
+**Restricted**
+
+By default all posts and published items are sent to your 'Friends' privacy group and not made public. New friends are added to this privacy group. You can over-ride this and create a public post or published item if you desire. You are listed in the directory. Your online presence (for chat) and your connections (friends) are visible to your profile viewers.
+
+**Private**
+
+By default all posts and published items are sent to your 'Friends' privacy group. New friends are added to this privacy group. You can over-ride this and create a public post or public item if you desire. You are NOT listed in the directory. Only your connections can see your other connections. Your online presence is hidden.
+
+
+##Forum
+
+**Mostly Public**
+
+The channel is a typical forum. By default posts and published items are public. Members may post by @mention+ or wall-to-wall post. Posting photos and other published items is blocked. The channel is visible in the directory. Members are added automatically.
+
+
+**Restricted**
+
+By default all posts and published items are sent to the channel's 'Friends' privacy group. New friends are added to this privacy group. Members may post by @mention+ or wall-to-wall post, but posts and replies may also be seen by other receipients of the top-level post who are not members. The channel is visible in the directory. Members must be manually added by the forum owner.
+
+**Private**
+
+By default all posts and published items are sent to your 'Friends' privacy group. New friends are added to this privacy group. The owner can over-ride this and create a public post or public item if desired. Members cannot. You are NOT listed in the directory. Only your connections can see your other connections. Your online presence is hidden. Members must be manually added by the forum owner. Posting by @mention+ is disabled. Posts can only be made via wall-to-wall posts, and sent to members of the 'Friends' privacy group. They are not publicly visible.
+
+
+##Feed
+
+
+**Public**
+
+Similiar to Social - Mostly Public, but tailored for RSS feed sources. Items may be freely republished and sourced. Online presence is meaningless, therefore hidden. New connections are automatically approved.
+
+
+**Restricted**
+
+Not listed in directory. Online presence is meaningless, therefore hidden. Feed is published only to members of the 'Friends' privacy group. New connections are automatically added to this privacy group. Members must be manually approved by the channel owner.
+
+
+##Special
+
+**Celebrity/Soapbox**
+
+Listed in directory. Communications are by default public. Online presence is hidden. No commenting or feedback of any form is allowed, though connections have the ability to "like" your profile.
+
+
+**Group Repository**
+
+A public forum which allows members to post files/photos/webpages.
+
+
+##Custom/Expert Mode
+
+Set all the privacy and permissions manually to suit your specific needs.
+
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/tags_and_mentions.bb b/doc/member/tags_and_mentions.bb
new file mode 100644
index 000000000..29dfe0fbe
--- /dev/null
+++ b/doc/member/tags_and_mentions.bb
@@ -0,0 +1,69 @@
+[b]Tags And Mentions[/b]
+
+Like many other platforms, Red uses a special notation inside messages to indicate &quot;tags&quot; or contextual links to other entities.
+
+[b]Mentions[/b]
+
+Channels are tagged by simply preceding their name with the @ character.
+
+[code]
+@Jack
+[/code]
+
+When you start to mention somebody, it will create an auto-complete box to select from your immediate connections. Select one as appropriate.
+
+If the person mentioned is in the list of recipients for the post, they will receive a tag notification.
+
+
+[b]Deliverable Mentions[/b]
+
+Some connections in the mention auto-complete box behave differently than others. If you mention a channel which provides "re-delivery of mentions" it will also send the post to all of that channel's default delivery connections. This is how one posts to "forums". The auto-complete box will provide two entries for these channels, one will mention just the channel. The other will invoke re-delivery and be listed as the channel's "network".
+
+[code]
+@Gardening - mention the Gardening forum
+[/code]
+
+[code]
+@Gardening+ - mention the Gardening Forum and also post to the Gardening "network" (e.g. all the forum members; if you have permission to do so)
+[/code]
+
+
+
+[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 privacy groups 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 only include them. You can have more than one privacy tag, for instance @!bob and @!linda will send the post only to Bob and Linda. This mechanism over-rides the privacy selector.
+
+You may also tag privacy groups which are "public". When you create or edit a privacy group, there is a checkbox to allow the group members to be seen by others. If this box is checked for a group and you tag (for instance) @!Friends - the post will be restricted to the Friends group. Check that the group is public before doing this - as there is no way to take back a post except to delete it. The group name will appear in the post and will alert members of that group that they are members of it.
+
+
+[b]Mentions and Comments[/b]
+
+The above mechanisms only apply to "top-level" posts you create. Mentioning a channel with any of the above mechanisms has no effect in comments, except that the mentioned channel may receive a notification if they were already included as a recipient in the conversation.
+
+
+
+
+[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.
+
+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].
+
+
+[b]Spaces in Tags and Mentions[/b]
+
+Where possible please use the auto-complete window to select tag and mention recipients, because it will generate a coded tag which uniquely identifies one channel. Names are sometimes ambiguous. However, you can "manually" tag a channel by matching the channel name or address.
+
+[code]
+@Robert Johnson
+[/code]
+
+will tag Robert Johnson, but we can only match one space. If the name was "Blind Lemon Jefferson" it won't be found unless you enclose the entire name in double quotes or change the spaces to underscores.
+
+[code]
+@"Blind Lemon Jefferson"
+@Blind_Lemon_Jefferson
+[/code]
+
+are both equivalent.
+#include doc/macros/main_footer.bb;
diff --git a/doc/member/toc.html b/doc/member/toc.html
new file mode 100644
index 000000000..6963c5ba9
--- /dev/null
+++ b/doc/member/toc.html
@@ -0,0 +1,25 @@
+<h3>Member Guide</h3>
+<ul>
+<li><a href="/help/member/overview">Overview</a></li>
+<li><a href="/help/member/registration">Account Registration</a></li>
+<li><a href="/help/member/accounts_profiles_channels_basics">Accounts, profiles and channels in short</a></li>
+<li><a href="/help/member/profiles">Profiles</a></li>
+<li><a href="/help/member/channels">Channels</a></li>
+<li><a href="/help/member/roles">Permission roles and Channel types</a></li>
+<li><a href="/help/member/connecting_to_channels">Connecting To Other Channels</a></li>
+<li><a href="/help/member/permissions">Permissions And Encryption: You Are In Control</a></li>
+<li><a href="/help/member/cloud">Cloud Storage</a></li>
+<li><a href="/help/member/remove_account">Remove Channel or Account</a></li>
+
+<li><a href="/help/member/tags_and_mentions">Tags and Mentions</a></li>
+<li><a href="/help/member/webpages">Web Pages</a></li>
+<li><a href="/help/member/bbcode">BBcode reference for posts and comments</a></li>
+<li><a href="/help/member/checking_account_quota_usage">Checking Account Quota Usage</a></li>
+<li><a href="/help/member/cloud_desktop_clients">Cloud Desktop Clients</a></li>
+<li><a href="/help/member/AdvancedSearch">Advanced Directory Search</a></li>
+<li><a href="/help/member/addons">Help With Addons</a></li>
+<li><a href="/help/member/diaspora_compat">Diaspora Communications Compatibility (Diaspora and Friendica)</a></li>
+<li><a href="/help/member/faq_members">FAQ For Members</a></li>
+<li><a href="/help/member/bugs">Bugs, Issues, and things that go bump in the night...</a></li>
+
+</ul>
diff --git a/doc/member/webpages.bb b/doc/member/webpages.bb
new file mode 100644
index 000000000..2b909dc63
--- /dev/null
+++ b/doc/member/webpages.bb
@@ -0,0 +1,93 @@
+[b]Creating Web Pages[/b]
+
+Hubzilla 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 &quot;Webpages&quot;. Clicking this link will take you to the webpage editor.
+Pages will be accessible at mydomain/page/username/pagelinktitle
+
+The &quot;page link title&quot; box allows a user to specify the &quot;pagelinktitle&quot; 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 &quot;edit&quot; link. Clicking this will take you to an editor, similar to that of the post editor, where you can make changes to your webpages.
+
+See also:
+
+[zrl=[baseurl]/help/webpage-element-import]Webpage element import tool[/zrl]
+
+[b]Using Blocks[/b]
+
+Blocks can be parts of webpages. The basic HTML of a block looks like this
+[code]
+ <div>
+ Block Content
+ </div>
+
+[/code]
+
+If a block has text/html content type it can also contain menu elements. Sample content of
+[code]
+ <p>HTML block content</p>
+ [menu]menuname[/menu]
+
+[/code]
+will produce HTML like this
+[code]
+ <div>
+ <p>HTML block content</p>
+ <div>
+ <ul>
+ <li><a href="#">Link 1</a></li>
+ <li><a href="#">Link 2</a></li>
+ <li><a href="#">Link 3</a></li>
+ </ul>
+ </div>
+ </div>
+
+[/code]
+
+Via the $content macro a block can also contain the actual webpage content. For this create a block with only
+[code]
+ $content
+
+[/code]as content.
+
+To make a block appear in the webpage it must be defined in the page layout inside a region.
+[code]
+ [region=aside]
+ [block]blockname[/block]
+ [/region]
+
+[/code]
+
+The block appearance can be manipulated in the page layout.
+
+Custom classes can be assigned
+[code]
+ [region=aside]
+ [block=myclass]blockname[/block]
+ [/region]
+
+[/code]
+will produce this HTML
+[code]
+ <div class="myclass">
+ Block Content
+ </div>
+
+[/code]
+
+Via the wrap variable a block can be stripped off its wrapping <div></div> tag
+[code]
+ [region=aside]
+ [block][var=wrap]none[/var]blockname[/block]
+ [/region]
+
+[/code]
+will produce this HTML
+[code]
+ Block Content
+
+[/code]
+
+
+#include doc/macros/main_footer.bb;
+
diff --git a/doc/toc.html b/doc/toc.html
index ac21959cf..90f0cbaeb 100644
--- a/doc/toc.html
+++ b/doc/toc.html
@@ -1,6 +1,6 @@
<ul>
<li><a href="help/general">Project/Site Information</a></li>
-<li><a href="help/members">For Members</a></li>
+<li><a href="help/member/overview">For Members</a></li>
<li><a href="help/admins">For Administrators</a></li>
<li><a href="help/develop">For Developers</a></li>
</ul>
diff --git a/view/js/main.js b/view/js/main.js
index 96adf0be3..e78725931 100644
--- a/view/js/main.js
+++ b/view/js/main.js
@@ -444,16 +444,18 @@ function contextualHelp() {
}
function contextualHelpFocus(target, openSidePanel) {
- if (openSidePanel) {
- $("main").addClass('region_1-on'); // Open the side panel to highlight element
- }
- else {
- $("main").removeClass('region_1-on');
- }
- $('html,body').animate({ scrollTop: $(target).offset().top - $('nav').outerHeight(true) - $('#contextual-help-content').outerHeight(true)}, 'slow');
- for (i = 0; i < 3; i++) {
- $(target).fadeTo('slow', 0.1).fadeTo('slow', 1.0);
- }
+ if($(target).length) {
+ if (openSidePanel) {
+ $("main").addClass('region_1-on'); // Open the side panel to highlight element
+ }
+ else {
+ $("main").removeClass('region_1-on');
+ }
+ $('html,body').animate({ scrollTop: $(target).offset().top - $('nav').outerHeight(true) - $('#contextual-help-content').outerHeight(true)}, 'slow');
+ for (i = 0; i < 3; i++) {
+ $(target).fadeTo('slow', 0.1).fadeTo('slow', 1.0);
+ }
+ }
}
function updatePageItems(mode, data) {