.. You may want to use the usual include line. Uncomment and adjust the path. .. include:: ../Includes.txt ================== EXT: HOI Community ================== :Author: Kasper Skårhøj :Created: 2002-11-01T00:32:00 :Changed by: Kevin Renskers :Changed: 2006-07-08T20:22:29 :Author: Kevin Renskers :Email: info@dualdot.nl :Info 3: :Info 4: .. _EXT-HOI-Community: EXT: HOI Community ================== Extension Key: **hoicommunity** Copyright 2006-2006, Kevin Renskers, This document is published under the Open Content License available from http://www.opencontent.org/opl.shtml The content of this document is related to TYPO3 \- a GNU/GPL CMS/Framework available from www.typo3.com .. _Table-of-Contents: Table of Contents ----------------- **EXT: HOI Community 1** **Introduction 1** What does it do? 1 Screenshots 2 **Users manual 5** Installation 5 **Administration 6** **Configuration 6** **Known problems 6** **To-Do list 6** **Changelog 6** .. _Introduction: Introduction ------------ .. _What-does-it-do: What does it do? ^^^^^^^^^^^^^^^^ A complete user community, including logging in, creating accounts, sending messages , buddylists, ignorelists and searching users. It has support for different membership levels ('normal', 'VIP' and 'crew'). It's kinda like loginbox\_macmade, sr\_feuser\_register and cwt\_community (and its dependencies) all in one. HOI Community uses templates and locallang.xml files, CSS stylesheets and Typoscript constants for complete control. And did I mention XHTML valid default templates? Features: - **Creating accounts** , with a password-strength checker. - After creating an account an email will be send. The user must activate his account. - **Logging in** into the frontend. - Creating a **profile** with fields such as birthday, location, name, information and an image. A user profile will also show his online status, last time he logged in and the date he created his account. - It uses a nice Javascript calendar for birthday input. No longer a user needs to use textfields in yyyy-mm-dd format. - **Buddylist** : add or remove a user to/from your buddylist. - A list of all **online users** . Users with “VIP” rights, users with admin rights (“Crew”) and buddies will be shown in a different color (done with css). - Administration in the frontend: admin users can edit profiles just as the user himself could do. - Sending **messages** to each other, with support for quotes - Parse strings in messages and profiles for emoticons (or smiley's if you will). - Basic BBCode support in profiles for users in the extraFeatures group (the so-called VIP users). - A list of **all users** , sorted by first letter of their username. - A **welcome view** , showing how many new messages a user has. - A **search** function. - **Ignorelists** : users you add to your ignorelist can no longer send you messages. .. _Screenshots: Screenshots ^^^^^^^^^^^ Here you can see some screenshots from the extension. Keep in mind that the layout is totally configurable, so don't look at the looks too much. The default templates will be modified in a next version. .. _Welcome-view-online-users: Welcome view + online users """"""""""""""""""""""""""" |img-1| On the welcome view you can see how many new messages you have, accompanied by a nice little icon (of course you can change it!). You can also see the online users list here. Buddies, VIP members and Admins have different classes that can be styled with css. .. _Inbox: Inbox """"" |img-2| Just a list of the messages in your inbox. Click on the subject to see the message, click on the delete icon to well... delete the message. .. _Send-message: Send message """""""""""" |img-3| Sending a message is pretty straight forward... .. _View-single-message: View single message """"""""""""""""""" |img-4| The message view... If you reply, the original messages will be included within [quote] tags, and re: will be added to the subject. .. _Buddylists: Buddylists """""""""" |img-5| The buddylist is just a shortcut to quickly send messages to people, like any friend or buddylist in any messenger. .. _Userlist: Userlist """""""" |img-6| A list of all users in the community, sorted by first letter of the username. The online status is showed for all users. .. _View-profile: View profile """""""""""" |img-7| Profiles! In this example you can see the BBCode in action. Profiles have some standard fields, a picture and a large information area. On all profiles the user's online status is showed. When viewing someone else's profile you will also see links to send a message and add the user to your buddylist (or remove him from it if he already is on it). .. _Edit-profile: Edit profile """""""""""" |img-8| Editing your profile. You can see that we use a Javascript calendar to enter birthdates. .. _Register: Register """""""" |img-9| Creating an account. Here you can see the password-strength checker. The submit button is disabled until you enter at least a 'medium' password. .. _Users-manual: Users manual ------------ .. _Installation: Installation ^^^^^^^^^^^^ Install the extensions with the Extension Manager. HOI Community does not have any dependencies so you don't have to worry about that. Create a page structure somewhat similar to this: |img-10| .. _Set-access-and-insert-plugins: Set access and insert plugins: """""""""""""""""""""""""""""" - HOI Community: Set the page-access to accessible to all. Insert the hoicommunity plugin 3 times, with the following values selected in the Flexform: login, welcome and online users. Set the access on the welcome and online users view to 'show on any login'. - Subpages for the HOI Community page: - Create account: Set the page to 'not in menu'. Insert the plugin with the value set to register. - Inbox: Set the page access to 'show on any login'. Insert the plugin with the value set to messages. - Buddylist: Set the page access to 'show on any login'. Insert the plugin with the value set to buddylist. - Ignorelist: Set the page access to 'show on any login'. Insert the plugin with the value set to ignore - Profile: Set the page access to 'show on any login'. Insert the plugin with the value set to profile. - Userlist: Set the page access to 'show on any login'. Insert the plugin with the value set to userlist. - Change password: Set the page access to 'show on any login'. Insert the plugin with the value set to change password. - Administration: Set the page access to the crew-group only! Insert the plugin with the value set to administration .. _Sysfolders: Sysfolders """""""""" Create two sysfolders (they don't have to be in the same level as the HOI Community extension). One will contain all the users, messages, buddylists and so on. The other one will contain the emoticons. You could use just one sysfolder but I advice against it: with a lot of members and messages, the first sysfolder can get long and slow to load. Editing an emoticon is easier when they are on their own sysfolder. You can choose to edit the 'General Record Storage page' value on the HOI Community page and set it to the user's sysfolder (recommended!), or you can use the 'starting page' value on every instance of the plugin. Needless to say the first option is quicker :) .. _Usergroups: Usergroups """""""""" You must create at least one usergroup in the user's sysfolder: all users will be a member of this group. It is also very wise to create an extra group: admins. All users that are a member of this group can edit all profiles, and in the future ban them, etc. If you want to use a special VIP group, you should create that one now too. .. _Create-an-extension-template: Create an extension template """""""""""""""""""""""""""" Create an extension template on the 'HOI Community' page (or whatever you called it) and go to the Constant editor. Choose the HOI Community plugin and fill in all configuration vars. You **must** fill in the PID and UID values! .. _Administration: Administration -------------- See the Users manual section about how to install this extension, and the Configuration section for the Typoscript constants that are used. .. _Configuration: Configuration ------------- All vars can be found in the Constant editor. If there is need for it, an explanation of them could be inserted here at some point in time. .. _Known-problems: Known problems -------------- Not 100% finished yet, see To-Do list. .. _To-Do-list: To-Do list ---------- - Make it possible to delete your own account - Make a photoalbum for every user that is in the extraFeatures group. - I am thinking about making a blog page for every user (or only every user in the extraFeatures group) instead of just the information field. - Make it possible for an admin user to change someone's usergroup. - Make it possible for an admin to ban a user - Instead of just an inbox, let users create their own folders too. The database and the extension are already setup for this. - Maybe also save sent messages? With a maximum of X messages? - Requests..? Let me know! .. _Changelog: Changelog --------- See the Changelog file that comes with the extension. |img-11| EXT: HOI Community - 6 .. ######CUTTER_MARK_IMAGES###### .. |img-1| image:: img-1.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics1 .. :name: graphics1 .. :width: 610 .. |img-2| image:: img-2.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics2 .. :name: graphics2 .. :width: 610 .. |img-3| image:: img-3.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics4 .. :name: graphics4 .. :width: 610 .. |img-4| image:: img-4.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics3 .. :name: graphics3 .. :width: 610 .. |img-5| image:: img-5.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics5 .. :name: graphics5 .. :width: 610 .. |img-6| image:: img-6.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics6 .. :name: graphics6 .. :width: 610 .. |img-7| image:: img-7.jpeg .. :align: left .. :border: 0 .. :height: 379 .. :id: graphics7 .. :name: graphics7 .. :width: 626 .. |img-8| image:: img-8.jpeg .. :align: left .. :border: 0 .. :height: 458 .. :id: graphics8 .. :name: graphics8 .. :width: 618 .. |img-9| image:: img-9.jpeg .. :align: left .. :border: 0 .. :height: 204 .. :id: graphics9 .. :name: graphics9 .. :width: 610 .. |img-10| image:: img-10.jpeg .. :align: left .. :border: 0 .. :height: 114 .. :id: graphics10 .. :name: graphics10 .. :width: 157 .. |img-11| image:: img-11.png .. :align: left .. :border: 0 .. :height: 32 .. :id: Graphic1 .. :name: Graphic1 .. :width: 102