Abstract

Allowing communities to organize naturally is an important part of a healthy community and hence I plan to introduce a group coordinating component which will make Joomla! sites more effective yet simple and easy to use. This component enables users to create and manage their own groups.
Besides,each group can have subscribers wherein they can communicate and collaborate. It aims at coordinating user activities by forming groups and hence builds a go-better community approach to the site.
 
 

Synopsis


At the backend:

  • Ability to create groups by the administrator of the site.
  • Manage the group homepage and supervise the settings for the group like, 
  •  Privacy: Public view or Restricted view.
  •  Listing:  Pulicly Listed Group or not.(Invite Based only)
  • User management: Privilege to add users, delete users and list the users.
  • Approve/ disapprove the request to create group by any user from frontend.
  • Send mails to groups and moderate discussions

At the Frontend: (Group owner)

  • Any registered user of the site can create a group.
  • Manage the group homepage and supervise the settings for the group like, 
  • Privacy: Public view or Restricted view.
  • Listing: Listed or not Listed. 
  • User management: Privilege to add users, delete users and list the users.
  • Group Home Page,language etc
  • Send mails to groups and moderate discussions

For Other users:

  • Registered user of the site who wish to join a group and participate in discussions,write articles.
  • Unregistered users can/cannot view the public events of the group.

Details:

  • Sections: Each group is associated with a section by default at the time when group is created. This remains the same throughout. Each group has just one section each. 
  • Categories: admin/group owner can create categories under the section for different articles, blog posts etc.Category owner is privileged to enable or disable comments by the readers.
  • Articles:Users can write articles or blog entries, the permission to do so can be set by the group owner.
  • Discussion lists: This is more like a forum. A user creates a thread and anyone is free to reply or comment.
  • Different user privileges, like admin, moderator, manager etc. 

 Benefits to end user:

This component given an opportunity to users to group-up based on common interests and develop dynamically. This enables group users to have their own content space, group theme , privacy options in group pages etc. This component would allow a website to have multiple groups, headed by a owner, actively participating members and various events.

Timeline

My time-line to achieve the above are:
Week1:
Create the basic component wherein admin can create group,and add basic group information such as description,group owner.
Week2:
Grouping of users,build user list,add remove users from groups.
Week3:
Automate creation of a section per group and have group articles(categories)
Week 4:
Debugging and improving the work done so far.
Week 5&6:
Extend functionality to Front end and backend for all class of users(Admin,Owner,User)
Develop a configuration menu for the administrator and the group owner.
Week 7:
Joining of groups ,i.e join request approval etc and privacy settings.
Listing of groups
Week 8 & 9:
Create the discussion forums.
Week 10
Other group settings such as language and theme etc
Week 11 & 12:
Putting everything together anc create a consolidated package,