Jambook
Jambook is a feature rich open source Joomla guestbook component with spam protection, email address cloaking, flood protection, double posting checks and the ability to use Joomla wysiwyg editor, even for guests!
Requirements
- Joomla 1.0.x
- PHP 4.3.0 or above
- MySQL 3.23.x or MySQL 4.0.x
- TrueType support in PHP required for CAPTCHA image
License
This component is released under the GNU General Public License, a copy of this license should be included in the zip file and available for reading from the administrator page once the component has been installed.
Installation
Just install the component as according to the Joomla documentation.
Information
If you have any bugs to report, or want to make a feature suggestion, or just want to inform me of your site running this component you can write about it on the forums at my Joomla site which you can find at this address: http://www.jxdevelopment.com/
All components and modules I've released are available from that site so if you are looking for more Joomla extensions, feel free to visit.
If you like this component you can encourage the development by donating a few dollars to me via PayPal on the address
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it
About the name
The name Jambook is derived from the Swahili word "jambo", which means "hello", and the English word "book".
Usage
Once installed you will have a new menu option called Jambook under the component menu in the administrator page of Joomla. From this menu you can List items, Approve new items, administer the component, read information, change the configuration etc.
Frontend Usage Information
The main page of Jambook shows a list of the guestbook entries. How this list is sorted, how many entries are shown per page, where the entry field is shown etc are all changeable in the Jambook configuration available from Joomla Administrator.
Search
Jambook has a built in search function to allow users to enter a text string to find all entries containing that string. If any entries are found they will show in a list similar to the normal guestbook entry list. If you want the main Joomla search page to search Jambook entries as well you will need the Jambook Searchbot, which can be downloaded separately.
Write guestbook entry
The guestbook entry form will either be shown above or below the guestbook entries, or on a separate page, depending on the 'Entry Form Placement' configuration option under the Posting configuration page of Jambook. The administrator can choose whether a preview page will be shown prior to saving the entry, and if a thank you email should be sent when the entry has been entered. It is also possible for the administrator to receive a notification of all entries entered.
Administrator Usage Information
When clicking on the main Jambook menu item in the Joomla Administrator Component menu a control page listing a description of each of the administration pages, as well as some information about the component. Below is a detailed description of each of these pages. This page reads the latest Jambook version from a central server on the internet.
Guestbook Entries
On this page all guestbook entries are listed and can be modified by the administrator. This is the page where entries can be approved by publishing them and it is also possible to edit entries and create new entries. This list works in the same way as the normal Joomla content editing list. To edit a guestbook entry, click on its title or mark the checkbox and click on the "Edit" icon. Click on the "New" icon to add a new guestbook entry. Several entries can be published, unpublished or deleted at the same time by marking the checkboxes next to them and clicking on the appropriate icon. To mark all checkboxes on the current page, click on the checkbox in the header field.
Add/Edit Guestbook Entries
The forms to Add and Edit a guestbook entry works in the same way, when a guestbook entry is edited all fields will be pre-filled with the values of that posting.
The fields are the same as when writing an entry from the frontend, except that there is a tab for publishing parameters. It is possible to publish entries, set a specific time the entry will be published or unpublished, and it is also possible to change the date when the entry was posted.
When editing a guestbook entry, it will be checked out and no other user will be able to edit it until it has been saved or the cancel icon has been clicked.
Template Manager
This shows a list of the available template files in the currently selected template set. To edit the contents of a template file, just click on the name of the item. It is not possible to add or remove template files, as they are used internally by the component.
Description of template files
- show
- The look when viewing a single guestbook entry.
- list
- How the list of entries will look.
- listempty
- What should be shown if there are no entries in the guestbook.
- listitem
- This file is called for each entry when showing the guestbook.
- edititem
- The look of the guestbook entry form.
- thankyou
- The page that is shown when an entry has been posted.
- search
- The search page.
- error
- The look of error messages.
- preview
- The preview screen when posting an entry from the frontend.
Edit template
When clicking on a template in the template list a page with a large text field is shown where the contents of the template file can be edited. If the template file is writeable a green "Writeable" text is shown above the field, if the system won't be able to save the template a red "Unwriteable" text is shown above the field instead. If the latter is shown you need to change the file permissions on the file shown to be able to save this template file from the administrator page. Click on the 'Save' button to save the template, or 'Cancel' to discard any changes.
Configuration
These are a few simple configuration options to change the behavior of the component.
Settings
General viewing settings for the component, defining how entries are listed etc.
- Days Kept
- Number of days after which guestbook entries are automatically deleted from database (be careful please! Enter 0 for not at all)
- Days New
- Number of days guestbook entries are considered new.
- Days Published
- Number of days guestbook entries are shown (enter 0 for no limit).
- Sort Order
- Sort order of entries in lists.
- Entries Per Page
- Number of guestbook entries to show on each page in lists.
- Date Format
- Date format, leave empty to use language default (uses strftime() syntax).
- Show Username
- Set to 'Yes' to show username instead of real name on entries.
- Selected Template
- Select which template set to use
- Cloak Email
- Cloak email address added to entries.
Posting
These settings change the behavior when posting guestbook entries.
- Entry Form Placement
- Placement of entry form on guestbook.
- Use Preview Page
- Use preview page when posting before entry is saved.
- Allow Guest Names
- Allow guests to enter a name when writing entries.
- Posting Restriction
- Restrict who can write in guestbook to this access level.
- Auto Approve
- Automatically approve posted guestbook entries.
- Edit Hours
- Registered users are allowed to edit their own entries for this many hours.
- Flood Protection
- Flood protection, enter number of seconds that must pass before another entry can be made from the same IP address.
- No Double Postings
- Disallow double posting of two entries with the same title and entry content.
- Wysiwyg Editor
- Use the default html editor for Joomla! on frontend?.
- Initialize Editor
- Initialize WYSIWYG HTML editor for non-registered users?
- Editor Width
- Width of HTML editor window in pixels
- Editor Height
- Height of HTML editor window in pixels
Email
Email specific configuration options.
- Mail From Address
- Email address automatic emails should be sent from
- Mail From Name
- Name automatic emails should be sent from
- Admin Email Address
- Administrator email address to send emails to (leave empty to use super admin email).
- Admin Email Name
- Administrator name used in emails.
- Send Thankyou Email
- Send thank you email to author when guestbook entry is posted.
- Notify Admin
- Send an email to admin when entries are posted.
Spam
Spam protection configuration options.
- Use CAPTCHA
- Use CAPTCHA image. Show a picture with a random string of characters that the user must enter to save the guestbook entry.
- Spam Treatment
- How to treat entries marked as spam, according to the settings below.
- URL = Spam
- Treat entries containing url tag/link as spam.
- Image = Spam
- Treat entries containing image tag as spam.
- Only Smileys
- Treat entries as spam if they only contain smileys.
- Forbidden Words
- Treat entries containing these forbidden words as spam (each word should be on a line of it's own).
- Banned IP
- Treat entries from the following IP addresses as spam (each address should be on a line of it's own).
- Smiley List
- List of smileys to check for, separated by space.
Imports
Settings for the import functionality.
- Publish Entries
- Set to "Yes" if you want entries imported to be published in Jambook.
- Max URL Length
- Maximum length of link titles, if the title of a link is longer than this the title is shortened
- Convert BBCode
- Convert BBCode into html in entries before they are saved to the Jambook database. Since Jambook uses wysiwyg editors, the BBCode isn't necessary
Jambook Information
This page shows information about the component, these usage instructions, license information etc.
Import Entries
To make the transition to Jambook easier it is possible to import entries from other guestbook components. Select the desired guestbook and click on the button to begin the import. If you want more guestbooks to be supported, contact me with information on the table structure and some sample data and I will try to write an importer for it.
AkoBook
This import was written for AkoBook v3.42, but should also work for AkoBook Plus.
Templates
This component includes a template system for the html output of frontend pages. Two different sets of templates are included with the component and it's possible to switch between these from the component configuration. Each template file can also be changed via the component Administration. It's only possible to edit the content of template files in the currently selected template set.
The template files are normal HTML files, but also uses functionality similar to Joomla Mambots to make it possible to show where dynamic data should be placed.
Availableable Template Mambots
- {jxtvalue=XXX}
- Prints the content of the variable XXX. All job database fields are added as variables, as well as some other useful values. The available variables available are different for each template file.
- {jxtlang=XXX}
- Prints the language string XXX. This can be any language string available in Joomla and the component.
- {jxtshowif=XXX} Any content {/jxtshowif}
- Only shows the content between opening and closing mambots if variable XXX contains a value.
- {jxtshowifnot=XXX} Any content {/jxtshowifnot}
- Shows the content if the variable XXX doesn't contain a value.
N.B. The jxtshowif and jxtshowifnot template mambots can't be nested, as it will only work from the opening mambot to the first occurence of closing mambot.
Please look at the content of the provided template files for more information on how to use this template system.
It's also possible to get configuration values, by adding "config_" in front of key name of the configuration value.
About the Author
This component was initially developed by Olle Johansson.
Find more Joomla components, modules and mambots on Olle Johanssons development site Joomla at the Yardr.
Credits
First of all I'd like to thank all of the Joomla Core Developers for giving away so much of their time to develop the best CMS there is to be found on the net.
Those who have contributed with code or language translations need an extra special thanks. These are: Martin Ackerfors for Swedish translation, Vipyammer (www.vipyammer.nl) for Dutch translation, Andreas Binczyk for German (informal) translation.
I'd also like to thank all of those who develop components, modules, templates etc for Joomla &em; it's great to have such a wealth of addons to choose from.
I'm also using a CAPTCHA system created by Julien Pachet and the font Dustismo created by Dustin Norlander.
Flag icons provided by famfamfam.com.
Disclaimer
The creator of this component, Olle Johansson, is not responsible for the security of the data saved by this component and is not responsible for anything that occurs through the use of this component. The component is used entirely at your own risk.
|