Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Centralized Users: Message Board
#1
Documentation

Screenshots
Main
[Image: main.png]
Forum
[Image: forum.png]
Search (only with i18n search enabled)
[Image: search.png]


----------


NOTE: THE BELOW INFORMATION IS FOR THE OLD VERSION OF CUSERS. Go to this post to see the new version.


----------
Something I've been working on recently and have wanted to do since summer last year. By heavily adapting TutsPlus's 'PHP/MySQL forum from scratch' tutorial to n00dles' DM Matrix XML Database plugin (and building on the tutorial to add more functions), I've managed to put together an alpha for a GetSimple Message Board plugin (as such, it's only in English. Sorry).

How to use:
- Download and install DM Matrix in the /plugins directory
- Download and install the Message Board plugin (link below) in the /plugins directory
- Go to Plugins -> Message Board -> 'click here to set up tables'. The tables will then be created and populated.
- Go to Pages -> Create New Page; create a page with the slug 'forum' and do not give it any page content. Save.
- To access the forum's home page (no content on it), go to yourdomain.com/index.php?id=forum&msgboard. To see the categories, go to yourdomain.com/index.php?id=forum&msgboard&categories.
- Note: to log in with the initially created admin account, the username/password are admin/admin - I will soon add a code that will let users change their password and later call for it with a 'forgotten password?' script.
- To set a user to a forum admin, go to Plugins -> Message Board -> Users -> Edit (on the corresponding record) and change the user's user_level to 2 (0 = member, 1 = moderator, 2 = admin).

Features:
- Can create users who can post in the forum
- Users can register themselves and sign in/signout
- Users can edit their own posts; moderators can edit everyone's posts
- Can edit basic settings of the forum from the GetSimple admin panel (forum name, tagline, css, etc...)
- (In theory) If you're developing a plugin that requires users to sign in, you can use the contents of the 'users' table so that there is only one account needed for each user (e.g. same login allows a user to post in the forum and post a comment on an article, if the article script pulls data from the 'users' table).
- BBCode is activated in posts

To be added
- A simple CAPTCHA system to prevent bots from registering (added in v0.2)
- Avatar and Signature Support (partially added in v0.2)
- A simple, neutral skin as a basic interface for the forum
- Ability for moderators/admins to move topics (added in v0.2)
- Adding 'sections' to group the categories (or perhaps renaming 'categories' to 'forums' and giving each forum its own category). (added in v0.3))
- Order threads by priority (first announcements, then stickies, then latest updated thread) (added in v0.2)
- Pagination in general (especially when displaying posts) (added in v0.3)

Still very much an alpha, so this is really just being posted here for testing purposes to see if it actually works (assuming anyone is interested in trying it out it). If anything, I'm hoping that someone with more knowledge and care of plugin creation might use this as a basis to develop something more solid, as my knowledge of PHP is limited in comparison to the developers here.

Gigantic thanks to n00dles101 for even making this possible with the DM Matrix. I'm honestly surprised that it isn't in Extend yet.
Reply
#2
wow, didn't think anyone was using this... great work.

Just realized the docs on the github page are so out of date.
I'll fix it over the next couple of days...
My Github Repos: Github
Website: DigiMute
Reply
#3
Do you intend to continue the development of its plug? whether to add language files?
Reply
#4
Yep, I'm still working on this. Found a lot of bugs to iron out, and I'm currently adding in more validation rules for posts. As for language files, I am unsure of the best (or easiest) way to allow for it to be translated. It might be easy for the admin panel, but I'm uncertain about the forum itself. I thought perhaps to have a table called 'board_lang' that lets an admin define their own language translations for the key phrases on the forum and to output data from that table for each phrase.
Reply
#5
Updated (v 0.2)

Change log:
- Fixed some validation rules
- Added captcha system
- Admin panel now lets you delete users
- Sorting of topics has been corroborated to be more like a usual message board (Announcements, Stickies, then normal topics)
- You can delete and reset the tables from the admin panel (without having to delete each individual record using DM Matrix's inbuilt database manager - only use this option to reset everything, as all forum data will be lost)
- Moderators can move topics
- Deleting a post will change the topic accordingly: it changes the 'latest post by' details of the topic if it is indeed the latest post in that thread, and deletes the entire thread if it is the first post
- User can define an avatar and signature (yet to output them, but the user can indeed define them)
- Users can change their passwords; if they've forgotten them, they can click a 'forgot password?' link that resets the password to a random string and emails said string to the one associated with the account.

To update from 0.1, delete all of the information from the tables and start afresh, reinstalling MSGBoard.
Reply
#6
when editing a profile of errors
Code:
Notice: Undefined variable: check_email in D:\home\0gs320.ru\www\plugins\msgboard\include\profile.php on line 87
[Денвер: показать возможную причину ошибки]

Some fields are not filled in correctly.

    This email is already registered on the forum.
    You have supplied the wrong password.
as avatars paste?
Reply
#7
Now taken care of, Oleg. Been working on this all week (I actually fixed the problem that you specified the day that you opened the inquiry (I stupidly forgot to rename a variable), but decided not to post an update till I completed more of the plugin).

Updated (v 0.3)

Change log:
- Basic skin added (still need to work on CSS rules to make them friendlier to edit)
- Pagination for topics and categories added
- Admin panel reorganised (still needs further work)
- Admins can ban members
- Mods/Admins can set topic statuses (e.g. Open, Closed, Moderators Only, Admins Only)
- Categories can now be grouped into 'sections'
- Usage of the plugin has been changed: to use, simply create a page with the slug forum and paste the placeholder (% msgboard %). If you decide to change the page slug, you can modify the URL structure of all the pages in the Admin Panel (under the 'Domain' field).
- Also, to have the page title change depending on where you are in the forum, replace the contents of your <title> tags with this:
Code:
<?php
  if(return_page_slug()=='forum') { get_msgboard_title(); }
  else { get_page_clean_title(); echo ' '; get_site_name(); }
?>
- Board statistics added to the main page
- 'msgboard' GET key is no longer used - URLs go directly off of the page slug (e.g. forum&topic=0 instead of forum&msgboard&topic=0
- Avatars and signatures fully supported


To do
- Incorporate more BBCode functionality (as it stands, not all codes are supported, e.g. 'code')
- Integrate a search feature to search for posts (could take a while to do)
- Build a separate 'page comments' plugin that can be integrated with the already existing MSGBoard users
- Continue to improve skinning capabilities

To update from 0.2, delete all of the information from the tables and start afresh, reinstalling MSGBoard (a lot of significant changes have been made, and the incompatibility will likely cause an error).


Attached Files
.zip   MSGBoard_0.3.zip (Size: 182.6 KB / Downloads: 16)
Reply
#8
Updated now to version 1.0. Documentation for the main parts is provided on my site at the top with a few screenshots - what I need are some beta testers to iron out the bugs (because this plugin has gone through Christ knows how many iterations, and I need someone other than myself to spot any errors that have cropped up so that I can fix them).
Reply
#9
Ill try to test this out, looks amazing so far.
NEW: SA Admin Toolbar Plugin | View All My Plugins
- Shawn A aka Tablatronix
Reply
#10
(2013-05-19, 23:10:16)shawn_a Wrote: Ill try to test this out, looks amazing so far.

Warning: require_once(/home/emotivex/public_html/cms/plugins//CUsers/include/tables.class.php) [function.require-once]: failed to open stream: No such file or directory in /home/emotivex/public_html/cms/plugins/CUsersBoard.php on line 105

Fatal error: require_once() [function.require]: Failed opening required '/home/emotivex/public_html/cms/plugins//CUsers/include/tables.class.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/emotivex/public_html/cms/plugins/CUsersBoard.php on line 105
Reply
#11
(2013-05-21, 23:50:00)reticent Wrote:
(2013-05-19, 23:10:16)shawn_a Wrote: Ill try to test this out, looks amazing so far.

Warning: require_once(/home/emotivex/public_html/cms/plugins//CUsers/include/tables.class.php) [function.require-once]: failed to open stream: No such file or directory in /home/emotivex/public_html/cms/plugins/CUsersBoard.php on line 105

Fatal error: require_once() [function.require]: Failed opening required '/home/emotivex/public_html/cms/plugins//CUsers/include/tables.class.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/emotivex/public_html/cms/plugins/CUsersBoard.php on line 105

Have you installed and set up Centralised Users first? That file should exist if you have (I'll check it once I get home).
Reply
#12
this looks the business... great work again...
I'll test it out later when I get a chance....
My Github Repos: Github
Website: DigiMute
Reply
#13
Installed using Wampserver on Win 7 Pro 64bit

Getting error on entering SETUP:

STRICT STANDARDS: NON-STATIC METHOD CUTABLE::CREATETABLE() SHOULD NOT BE CALLED STATICALLY IN C:\WAMP\WWW\GETSIMPLE\PLUGINS\CUSERS\INCLUDE\ADMIN.PHP ON LINE 140


Getting errors when saving SETTINGS:

SCREAM: ERROR SUPPRESSION IGNORED FOR
( ! ) NOTICE: UNDEFINED INDEX: ID IN C:\WAMP\WWW\GETSIMPLE\PLUGINS\CUSERS\INCLUDE\ADMIN.PHP ON LINE 265
CALL STACK


SCREAM: ERROR SUPPRESSION IGNORED FOR
( ! ) STRICT STANDARDS: NON-STATIC METHOD CUTABLE::UPDATERECORD() SHOULD NOT BE CALLED STATICALLY IN C:\WAMP\WWW\GETSIMPLE\PLUGINS\CUSERS\INCLUDE\ADMIN.PHP ON LINE 265
Reply
#14
I thought I would do a test install but I haven't got a forum. Installed three plugins. Went to Setup in CUsers and CUsers message Board. Made a page with slug 'forum'. Elevated myself to administrator. Can't find a board anywhere still. Was there more to set up? Is the board meant to appear on the new blank page?
Reply
#15
(2013-05-23, 20:53:44)wwwcre8r Wrote: Installed using Wampserver on Win 7 Pro 64bit

Getting error on entering SETUP:

STRICT STANDARDS: NON-STATIC METHOD CUTABLE::CREATETABLE() SHOULD NOT BE CALLED STATICALLY IN C:\WAMP\WWW\GETSIMPLE\PLUGINS\CUSERS\INCLUDE\ADMIN.PHP ON LINE 140


Getting errors when saving SETTINGS:

SCREAM: ERROR SUPPRESSION IGNORED FOR
( ! ) NOTICE: UNDEFINED INDEX: ID IN C:\WAMP\WWW\GETSIMPLE\PLUGINS\CUSERS\INCLUDE\ADMIN.PHP ON LINE 265
CALL STACK


SCREAM: ERROR SUPPRESSION IGNORED FOR
( ! ) STRICT STANDARDS: NON-STATIC METHOD CUTABLE::UPDATERECORD() SHOULD NOT BE CALLED STATICALLY IN C:\WAMP\WWW\GETSIMPLE\PLUGINS\CUSERS\INCLUDE\ADMIN.PHP ON LINE 265

The problem is likely due to me not explicitly declaring the createTable method as static, hence the further two problems (which depend on createTable being called). I'm currently going through another re-write of the code across all the CUsers plugins (so the base, message board and comments plugin) to make them integrate with each other better and to make the coding itself easier to manage (and append to). This will all be included in the next update - don't worry, your current CUsers data will not be affected.

@timbow: the initial page should be 'board'. So go to yourdomain.com/index.php?id=board and you should see it.

Thanks for testing the plugin, people. I hope to please with the eventual fixes.
Reply
#16
(2013-05-25, 03:47:01)Angryboy Wrote: @timbow: the initial page should be 'board'. So go to yourdomain.com/index.php?id=board and you should see it.

Thanks for testing the plugin, people. I hope to please with the eventual fixes.

Okay, found the board from the front end now, thanks. Unable to log in to back end at all.

[edit - fixed the broken login, I think it was an issue unrelated to this plugin.]
Reply
#17
Message Board installed at
http://timbowgs.bplaced.net/
Which is some foc space where I have theme demos.

Please log in and use it, even if you have nothing to say.

bplaced.net's servers are painfully slow today but I guess you get what you pay for.
Reply
#18
hmm could you add facebook login for this, and other shared logins ? Or maybe a sign up and approve, but with shared credentials.

How would you suggest I work this in ?

http://www.name.com/blog/general/develop...your-site/
NEW: SA Admin Toolbar Plugin | View All My Plugins
- Shawn A aka Tablatronix
Reply
#19
I shall see. In rewriting the code again and trying to modulate it for easier extension, I've already build custom user fields into the core of the next iteration (will try to release that some time next week). I will look into the PHP SDK files for facebook soon and see what I can do (if possible, what I'd do is simply make it so that logging in with facebook counts you as 'signed in' and uses your facebook name as your 'display name'. How to integrate it with the custom fields I have no idea - it seems like it would need to register a CUsers account with your facebook login details, which seems to negate the purpose of using your facebook login. It might mean that using facebook for your login is done at the expense of using all of the features of the site.

Nevertheless, the modulated approach to writing the plugin will hopefully make this a separate feature that can easily be integrated on top of the existing installation.

Also Timbow: have you placed a registration form anywhere on the site? I'd like to register on your site but I don't see one there. (It's been separated from the message board because with CUsers, the registration form can appear any page that you choose to call the function on).
Reply
#20
(2013-05-26, 19:14:25)Angryboy Wrote: Also Timbow: have you placed a registration form anywhere on the site? I'd like to register on your site but I don't see one there. (It's been separated from the message board because with CUsers, the registration form can appear any page that you choose to call the function on).

Okay, I have made a registration form. That would be why nobody registered I guess. I will look back when I have a bit of time later and see if I can tidy things up.
Reply
#21
It's my fault, really. I should have made that much clearer in the docs and made it easier to implement. The next version will be.
Reply
#22
Posting to say that because I've been doing other things on the week-end that the update will be delayed. However, I can guarantee that the following alterations are going to be a part of it (they are functional in the version I am currently working through):

- Fancy URL support
-- e.g. w/o the urls are /index.php?id=board&category=0&forum=0&topic=0
-- e.g. w/ the urls are /board/0-0-0-your-first-topic/
- Custom User Field support
-- Any custom fields that you define in the (yet to be released) CUsers core can be shown in the forum mini-profile
- Re-done template support
-- Template files have been moved into the current /theme/ folder (under /board/ so they can be editted from the main Theme tab)
-- Template will allow access to any other regular template tags and custom functions you've defined
Reply
#23
Testet but i cant get it to work, in backend i dont have 'click here to set up tables' just blank Big Grin. I wait when its dead simple to use Big Grin
Reply
#24
Rainbow 
"created admin account, the username/password are admin/admin"
I can`t to make this step.
Reply
#25
Changelog 1.01
- Completely rewritten to comply with The Matrix v1.02
- Checks if dependencies exist first rather than producing an ugly 'Class not found' error
- Rudimentary language support for Italian, German and Russian (basically Google Translate copy-pasting)
- The 'static' errors from before should be gone
- All static pages are now gone (FAQs, Rules) since you can create them as just regular pages
- Slug for searching the board is search-board (e.g. go to board/search-board/ to access the search page
- If you are now just using the board, the admin's username password is now cuadmin/password
- CSS rules for basic template are slightly different
- Pretty URLs supported (e.g. if you have them enabled, links go from yoursite/index.php?id=board&topic=your-topic-name to yoursite/board/topic/your-topic-name/)

Documentation is available at the Github Wiki.
Reply




Users browsing this thread: 1 Guest(s)