4-tier follow system explained
Following someone simply means subscribing to person’s posts so you can receive them and read them on your timeline. Followers are the people who follow or subscribe to another person's posts. Friends are simply mutual followers (or in other words people who follow you back).
Mike and Jessica have no relationship (M J)
Mike is Following Jessica (M > J) or in other words Mike is Jessica’s Follower (M > J)
When Mike is logged in he will see posts from Jessica on his wall (home page).
Jessica is Following Mike (M < J) or in other words Mike has Jessica as a Follower (M < J)
When Mike is logged in he can find posts from Jessica on section "All Posts" or by searching. Jessica will see posts from Mike on her wall.
4th tier (friends or mutual followers)
Mike and Jessica are Friends (M <> J) or in other words Mike is Following Jessica and Jessica is Following Mike (M <> J)
Both Mike and Jessica can see each other's posts on their timeline. They can also write to each other's walls but if they broke their friendship all those posts are gone.
Security can be applied to each post, user profiles and groups.
Security on posts can be set as:
- Friends only - only your friends can see this
- Friends & Followers - your friends and your followers can see this
- Everyone - anyone with an account, currently logged in can see this
- Public - anyone can see this including people without an account (this level can be disabled in settings under “Allow public posts“)
Profile Security can be set as:
- Private profile - only friends can see your profile
- Semi-private profile - friends and followers can see your profile
- Open profile - anyone with an account, currently logged in can see your profile
- Public profile - anyone including people without an account (this level can be disabled in settings under “Allow public posts“)
Group Security can be set as:
- Secret Group - only members can see who is in this group and their posts. Membership request must be approved by the Group admin (user who created this Group).
- Private Group - all users can see who is in but only members can see posts. Anyone can join this group.
- Open Group - all users can see who is in, members and posts. Anyone can join this group.
- Public Group - anyone including people without an account can see who is in, members and posts. (this level can be disabled in settings under “Allow public posts“)
Security of Pages: All pages are Public. Anyone including people without an account can see the page.
Admin can assign one of four different user roles to each user.
This is default user role assigned upon registration process. This user can manage only his/her content. Posts shown to this user are filtered through the usual security policy.
This is similar to default 'user' role but you can assign some extras with different application settings. For example, you can allow custom profile background for this role. You can also disable groups and pages features for users but allow for subscribers (and other roles above).
User with this role can see all posts and comments, edit and delete them. This user can also access 'Reviews' section to administer reported content and send a message even to those users who have chosen 'only friends can contact me'.
This user can see and manage everything. Pick very strong password and be careful with this.
Adding more languages
Adding a new language is very simple, all you have to do is to upload one or more language files to the \app\core\languages\ folder. You can download available language files from here: http://www.socialstrap.net/languages/all.zip Interface is currently translated to: English, Spanish, Deutsch, Chinese, Italian, French, Russian, Ukrainian, Turkish, Nederlands, Português Brasil, Srpski, Hrvatski…
Note: Translation file must be encoded with utf8 without BOM so if you are making your own language file please use notepad++ or similar advanced text editor. If you need to use single quote use curly quote instead of straight one (e.g. Attiva l’account instead of Attiva l'account).
Note: RTL (right-to-left) is not fully supported, at the moment there is no RTL layout.
Email templates are located here: app\core\views\emails\
They cannot be translated at the moment but you can edit those templates and add messages on several languages into a single template.
Invitation is an addon so the template is here: addons\invitations\email.phtml
You can have custom static pages on wide page layout like about, privacy or terms. You can add more pages with .phtml extension to this folder \app\core\views\info\ and they will be accessible through unique URL.
example: sample.phtml http://www.example.com/info/page/name/sample
You can also have those pages translated by having separate .phtml files for each language. If translation is not available controller will display .phtml for default language.
example: sample.phtml sample-sr.phtml sample-de.phtml
note: if you want SEO friendly URLs (yournetwork.com/terms) open app/core/Bootstrap.php and search for _initRouter() function. Add this piece of code just before the end of that function: http://pastebin.com/6T14ZSSs