J|Comdev Comdev Framework - Common usability shared between extensions  Address Overview The Address feature, as the name suggests, lets you provide the country, region and city for the respective product listing. The advantage with the Address field in Extensions is that after you configure a particular address, it is shared across various components in the Comdev extension. Based on the depth of levels you want, such as the continent as Europe, country as the UK and region as Wales, you can configure the Address tree to have unlimited levels. The Address feature provides multilingual support. This means you can specify different names based on your language preference. For more information, see Languages . Creating A New Address The following image shows the Address Feature screen. To add an address, click Components > Comdev > Address . Click New to create a new address.  Screen 1: New Address screen Let us understand each of the buttons seen on the screen using the following table. New Creates a new Address entry. You must create separate entries for each level of depth that you need. Edit Provides the edit mode to make changes to the existing level or titles created. Publish Publishes the created address entry. Unpublish Removes the entry from the list of published address entries Archive Archives address entries that are not used anymore. Trash Deletes the address entry that is not required anymore. Rebuild Refreshes to incorporate the changes made to the entries in the Address feature. Address Structure The structure of the Address tree is maintained as follows in our example. You can create any structure as per your requirement.   -- -- –  -- – --   Editing address entries If you want to edit existing entries, you can either click the entry from the Address screen or select the check box next to the entry, and then click Edit . After you click the required entry that you need to edit, you can change the configurations based on the options as seen in the following table. Title Custom Address Field Alias URL alias for “SEF/SEO” URL Parent Select the parent address entry Text box Provide a description about the entry. You can format the text using the formatting options in the text box. You can also insert images or links to URLs for more information. Category Image Upload an address image Publishing tab After you have provided the above information, you can provide the publishing information in the Publishing tab as seen in the following image. You can change the values for the given options using the following table. Status Based on the status seen here, the visibility changes as follows: Published - Entries are visible on the front-end.  Unpublished – Entries are invisible in the front-end, but can be published later.  Archived – Older entries that are not ready for deletion yet.  Trashed – Older entries that should be removed. Access Access level for site users is as follows: Public access grant access to everybody. Registered access grants access only to registered and logged in users. Special access only grants access to users specified as “Special”. Language Select the language for the address entry. ID Address ID, which can be used in modules, plugins and menus. Created by User name who created the entry. Created Date Date when the entry was created. Modified by User name who modified the entry. Modified Date Date when the entry was modified. Metadata tab The metadata tab is used to provide metadata information for a particular address entry. The options for this tab can be seen as shown in the following image. You can change the values for the given options using the following table. Meta Description Meta-description for search-engine listings. Meta Keywords Meta Keywords for the search-engine Author Content author metadata. Robots Robots instructions: Use Global Index, Follow No Index, Follow Index, No Follow No Index, No Follow Categories Overview Categories allow the site owner to categorize listings into appropriate sections. Extension categories are independent from the Joomla category system. Nested categories (sub-categories) are supported in Extension. Component comes with a category named "UNCATEGORIZED", which is the default setting. This category holds listing items that are not attached to any category (same function as the default Joomla system). You can create a categories menu link under Menus using information provided here . Ensure that for creating this link you use the Item menu type as Categories . Creating A New Category The following image shows the Category Feature screen.  Screen 1: Adding a new category Let us understand each of the buttons seen on the screen using the following table. New Creates a new Category entry. You must create separate entries for each level of depth that you need. Edit Provides the edit mode to make changes to the existing level or titles created. Publish Publishes the created category entry. Unpublish Removes the entry from the list of published category entries Archive Archives category entries that are not used anymore. Trash Deletes the category entry that is not required anymore. Rebuild Refreshes to incorporate the changes made to the entries in the Category feature. Editing category entries If you want to edit existing entries, you can either click the entry from the Category screen or select the check box next to the entry, and then click  Edit . New Category tab The New Category tab is seen as shown in the following image: Screen 2: New Category tab After you click the required entry that you need to edit, you can change the configurations based on the options as seen in the following table. Title Custom Category Field Alias URL alias for “SEF/SEO” URL Parent Select the parent category entry Text box Provide a description about the entry. You can format the text using the formatting options in the text box. You can also insert images or links to URLs for more information. Toggle editor Toggle between a rich text box with formatting options and plain text box. Category Image Upload a category image Publishing tab After you have provided the above information, you can provide the publishing information in the Publishing as seen in the following image. You can change the values for the given options using the following table.  Status Based on the status seen here, the visibility changes as follows: Published - Entries are visible on the front-end.  Unpublished – Entries are invisible in the front-end, but can be published later.  Archived – Older entries that are not ready for deletion yet.  Trashed – Older entries that should be removed. Access Access level for site users is as follows: Public access grant access to everybody. Registered access grants access only to registered and logged in users. Special access only grants access to users specified as “Special”. Language Select the language for the category entry. ID Category ID, which can be used in modules, plugins and menus. Created by User name who created the entry. Created Date Date when the entry was created. Modified by User name who modified the entry. Modified Date Date when the entry was modified. Metadata tab The metadata tab is used to provide metadata information for a particular category entry. The options for this tab can be seen as shown in the following image. You can change the values for the given options using the following table.  Meta Description Meta-description for search-engine listings. Meta Keywords Meta Keywords for the search-engine Author Content author metadata. Robots Robots instructions: Use Global Index, Follow No Index, Follow Index, No Follow No Index, No Follow Custom Fields Overview Custom fields are a powerful tool to build content. We provide a variety of field types with the ability to outline into groups. Each field can be assigned into a single category or all categories. Creating a Custom Field Creating a custom field involves setting certain options. To create a custom field, click New as shown in the following image. Screen 1: Custom Field screen The following table explains the different options available on the screen. New Creates a new Custom Field. Edit Provides the edit mode to make changes to the existing level or titles created. Publish Publishes the created custom field. Unpublish Removes the entry from the list of published custom fields. Archive Archives custom fields that are not used anymore. Trash Deletes the custom fields that are not required anymore. Options Navigates to the Extension options screen. Editing Custom Fields If you want to edit existing entries, you can either click the entry from the Custom Fields screen or select the checkbox next to the entry, and then click Edit . Custom Field Edit After you click the required entry that you need to edit, you can change the configurations for the fields as shown in the following image. Screen 2: Custom Field Edit tab The following table explains the different options seen on the screen: Custom Field Edit Title Title for the Custom Field.   Alias URL alias for “SEF/SEO” URL.   Order Provide a value from 1 onwards. The lowest value will appear on the top.   Field Required? Enable whether to make the field required.   Category Category where the Custom Field will be published. When you select a custom field for a particular category, it is visible only for that category. While creating a listing if you select the said category and save, the custom field is available only then.   Field Type Set the Field Type for the Custom Field. For more information, see the Field Type Table .   Field Database Type Set the field type, needed for database settings. String - Used for text Decimal - Decimal number e.g. 10.060 Integer - Number e.g. 1232   Field Group There are 5 custom field groups. Custom fields are grouped into groups. It has many advantages, one of them is display purposes. There are few groups available: Items - group displayed on the listings page under the description Item - group displayed on the left-hand side of the slideshow under detailed view. Tabs - special group to create own Tabs in detailed view. Features - special group for featured listings. Paid Items - Paid group displayed on the listings page under the description. Paid Item - Paid group displayed on the left-hand side of the slideshow under detailed view. JomEstate, JomEvents only Location - group displayed under the Location Tab in listing details. Groups are static and cannot be created. Paid groups are related to the membership plans that are applied to custom fields. Paid Items are displayed in the Items list, while the Paid Item is displayed in an Item (detailed) view.   Field Can Be Searched Enable to make the field values searchable. This setting applies only for the Search Module -> Layout Filter.   Field Search Type Provide the type of search option to include: Single Input Field Type Range Input Field Type Range Dropdown Field Type Range Slider Depending on the Field search type you select, the search criteria field will be displayed in the search module – layout side search. This field is functional when the Field Type is selected as Input and Field can be searched set to Yes   Minimum Value When, as an example, the Range Dropdown option is selected, you can select the range between which the options can be selected. For example, for Price range between X and Y, with incremental steps of 2, you can set x value in this field.     Maximum Value Set the Y value for the range in this field.   Steps Define the incremental steps. For example, for increments of x+2, provide the value as 2.   Custom Field Template Custom fields have own templates that can be used and customized. There are 3 templates available: default horizontal horizontal float  horizontal float + icon horizontal no label default no label If you would like to create and customize your own templates, see the Developer Guide .   ID This field is auto - generated. Custom fields values area Add new If the field type is selected to hold multiple values , this button lets you create the multiple values.   Delete Delete the value. Custom Field Values This area lets you create values when the field type requires multiple options to be provided.  For custom fields that can have values, to add multiple values, navigate to the custom fields listing screen. Click the  icon next to the field where you want to add values as shown in the following image. Screen 3: Adding values to custom fields area Here, the Field Type is selected as Checkbox and the Field Database Type has been stated as String. This means the Custom fields value area should provide options that can be seen when editing listing and displayed on the component front page. Hence, the Sample Values are provided in this area as Street, Garage, Underground. The following screen shows the values added at the back end. Click Delete  to delete the entry. Screen 4: Values added to custom field area The following image shows how the field looks on the add listings page. Screen 5: Custom Field as seen on new listing page The custom field is seen on the listings page as shown in the following image: Screen 6: Custom Field as seen on published listing page Field Types With Extension extension, you get several field types that you can create based on your requirement. The following image shows the available field types. Screen 7: Field Types The following table explains the different options seen on the screen. Type Multiple select Multiple Values Description Radio button No Yes Standard radio button with multiple values Checkbox Yes Yes Standard check boxes with multiple values Dropdown No Yes Dropdown (select) field with multiple values Multiple Select Yes Yes Select box with multiple values Input No No Single text box Web Address No No Single text box for URL, it will display as the link in the front page Email No No Single text box for email Text No No Text area Date Time No No Select a date and time from the Calendar icon on screen. Date No No Select a date from the Calendar icon on screen. Editor textarea No No Creates a rich text editor box, it can be combined with Tabs group. Publishing tab After you have provided the above information, you can provide the publishing information in the Publishing tab. You can change the values for the given options using the following table. Status Based on the status seen here, the visibility changes as follows: Published - Entries are visible on the front-end.  Unpublished – Entries are invisible in the front-end, but can be published later.  Archived – Older entries that are not ready for deletion yet.  Trashed – Older entries that should be removed. Language Select the language for the address entry. To create a custom field that applies to a particular language, you need to select the appropriate language from the drop down. For each language that you want it to appear for, create a separate entry. Created Date Date when the entry was created. Start Publishing Date when publishing needs to start in case of limited viewing of the field. Finish Publishing Date when publishing needs to stop in case of limited viewing of the field. Modified Date Date when the entry was modified. Membership Overview Memberships in Extension are required to set user group level based on the monthly/Yearly pay plan the user selects. Using membership plans, you can decide how much to charge a user and how many listings a user can make for a particular membership plan. Membership are well integrated with Joomla groups and have a dependency on each other. Ensure that you have created Joomla groups before creating membership plans. By doing this, you can select groups when creating membership.  Create a new Membership Plan Click Components > Extension > Membership Plans > New to create a new membership plan as shown in the following image: Screen 1: Create new membership plan First membership plan should be a Free (basic plan). When user logs into the Front Admin, he will be assigned to that plan. From that point, User can upgrade his membership to paid plans. Edit Membership Plan If you want to edit existing entries, you can either click the entry from the Membership screen or select the check box next to the entry, and then click  Edit.   The following image shows the Edit Plan screen. Screen 2: Edit Plan screen The following table explains the different options seen. Name Provide a name for the membership plan. Number of Listings Provide the number of listings the users in the plan can create. Group ID Select the Joomla user group ID for the plan. It is recommended that you create your membership under the Registered group. Number of Images Provide the number of images the users in the plan can add. Price Monthly Provide the monthly charge for the plan. Price Annually Provide the annual charge for the plan. Best Value Best value badge, that shows in Front Admin (informative) No of Premium Listings Provide the number of premium listings the users in the plan can create. Attachments Enable to allow users to add attachments to listings. Video Enable to allow users to add Video link to the listings. Custom Fields Enable custom fields for particular plan. Custom field needs to be assign into Paid Groups to be shown here . ID This field is auto generated. Adding paid custom fields to the Membership plans For adding a custom field to the membership plan, the field group needs to be set to Paid item. Click Extension > Custom Fields . Click the field you want to add to the membership plan as a paid item. Change the Field Group to Paid item for the Item view and Paid items for the Items view as shown in the following image: Screen 4: Adding a paid custom field This field needs to be enabled in the membership plan as shown in the following image. Screen 5: Enabling the paid custom field This field can be seen in the front admin under the membership plan as follows: Screen 6: Viewing the paid custom field Membership expiry email configurations Before the membership expires, an email can be sent to a user that informs them about his membership nearing expiration. The setting can be seen in the following image: Screen 3: Configure expiry email field Cron Setting for Membership expiry check Under your hosting panel a link needs to be added that launches a script. This script checks all users’ membership and sends an email if membership is about to expire: curl -sS 'http://yourdomain.com?option=com_jomdirectory&task=expiry.send' or wget -q -O /dev/null 'http://yourdomain.com?option=com_jomdirectory&task=expiry.send' If you are unaware about where the cron setting needs to configured in the hosting panel, contact your hosting support center. Ensure that the script is launched every day at a particular time consistently. Set Single User expiry date and group To set plan expiry and attach a group for each user, do the following: Click Users > User Manager . Click the user for whom you want to set the membership expiry. Click the Additional Options tab. Provide the expiration date in the Plan expiry field. Click the Assigned User Groups tab. Select the check box next to the group you want to attach the user to for a particular membership plan as shown in the following image. Click Save . For more information about membership expiration setting, see Configuration documentation. Reviews Overview Reviews are provided by users and can be seen on the Reviews tab in the listing. Creating Reviews Categories Review categories can be seen on the Reviews tab in the listing to the user when they are adding a review for that listing as seen in the following image. Screen 1: Reviews Category screen Click on category type to edit it: Screen 2: Add a category for review on listing page Creating Reviews Recommended Review recommended can be seen on the listing details Reviews tab in the listing to the user when they are adding a review for that listing as seen in the following image. Screen 3: Reviews Recommended screen Click on category type to edit it: Screen 4: Review Recommended on Listings page Note: If the reviews are not being shown after submission on the listing page, you must enable Approve Reviews option under component Configuration. For more information. See Configuration documentation. Adding a Review for listings After these categories and review recommendation types are added, you can now create a review. To create a review, go to the listings page and click the Reviews tab. Provide the options as seen in the following image: Screen 5: Adding a Review After you provide the information, click Submit Review. The Review can now be seen in the listings page, under the Reviews tab. Editing a review Now, you can view the review and edit it, if required. Click Extension > Listings . The following image shows the Reviews column for the listings. Screen 6: View the Review column Click the Review icon to view all the reviews for a listing. Now click on the review title to edit it: Screen 7: Editing a review Edit the options as given in the following table. Title Edit the title for the review. Alias Edit the alias for the review. Text Editor Edit the description in the editor. Toggle Editor Toggle between rich text and plain text editor. Rates Move the cursor over the circle to edit the given categories. Recommended Select the required recommended for group. User Select the user who created the review. Status Change the status of the review. Published Unpublished Archived Trashed Review on front page After these types are added, when a user is writing a review, the options are seen as follows: Messages Overview Messages related to the Contact form available on each listing. If the user wants to contact Owner of the listing, a copy of the email will be saved under Messages. Additional send email copy to admin can be set under Configuration The messages are always sent to the owner of the listing. The user email address is taken from the User Account settings. The Contact area on the listing page is as seen in the following image. The options are provided as given here: Screen 1: Sending a message on the site Viewing messages Once the user accepts the Terms and Conditions and the Privacy Policy, he clicks Send Email. The email is now available for the owner of the listing to view as seen in the following image: All the messages that are sent through the site from the Extension listings can be seen on backend Messages section. To view a message, hover the mouse pointer over the message as shown in the following image. Screen 2: View the message If you want to archive older messages or any message, select the checkbox next to the message and click Archive .  Messages sent using the contact form are available on the Messages tab for the owner of the listings. You can view the message or delete it based on your requirement. Front Admin Messages To view messages, from Front Admin, click the  Messages tab to see the following screen. MODULES Common Modules for the extensions Live Search Maps Module Overview This is an extra paid module available for Business Package, can be also purchased separately.  This module helps you view all the listings under full view or windowed map To view all the available modules, click Extension  >  Module Manager .  To create a new module, click  New . Select the EXTENSION_NAME Maps module . Provide the information as given in the following sections. Click Save  to save the module. Editing the Maps Module To edit the module, click on the module link or select the checkbox next to the module name, and then click  Edit . The following image shows the module edit screen. Screen 2: Module tab Module tab This tab controls the layout where the search panel is to be displayed on the screen. Screen 3: Module tab Provide the options as per the following table. Layout Select the required layout in the Layout field. The available options are: Maps Wide – layout with the search module on the left side and big map area on the right side, as seen in the following image:   Maps – layout showing items on a map as seen in the following image:   Display limit Limit number of items shown on the map Map width Set width of the map Map height Set height of the map Top margin Set top margin of the map Display Category Display category selection on the left of the wide map layout Display Address Display address selection on the left of the wide map layout Display Keyword Display keywords selection on the left of the wide map layout Position Select the position based on your Joomla Template. Start Publishing Provide a date when the search panel should be published. Finish Publishing Provide a date when the search panel should be unpublished. Access Provide access level for the panel. Guest Public Registered Special Ordering Provide the order in which the side panel should appear. If more than one module is positioned at the same location, you can set the order of appearance in this field. Language Select the language for which you want to display this panel. For each language, you must create a new JomDirectory Search module. Note Provide additional information. Menu Assignment tab This tab controls where the module should be displayed. You can decide if it should be displayed on all pages for the site or just selective pages. Screen 4: Menu Assignment tab Select the required menu for module assignment. The available options are: On all pages No pages Only on the pages selected On all pages except those selected Creating custom category markers When any listing is displayed on the map, it is shown as a pin. This pin icon is as in the default template. To modify this pinned icon as per your category, marker image needs to be placed under module images directory: modules/mod_EXTENSION-NAME_maps/images/markers/... The file name should be same as the category. The spaces need to be replaced with dashes " - " and the " marke r" prefix. So, suppose category name is  Auto Parts , then the file name for the marker should be  marker_auto-parts.png . Slideshow PRO Module Overview This is an extra paid module available for Business Package, can be also purchased separately.  This module showcases the listings in a slideshow format. Users can see the image along with the title of the listing. Slideshow PRO Module upon activation is seen as follows on the pages: Screen 1: Slideshow Module on front page Editing Slideshow Module To edit the module, click on the module link or select the check box next to the module name, and then click  Edit . The following image shows the module edit screen. Screen 2: Module tab Provide the options as per the following table. Count Number of listings for which images need to be shown in the slideshow Number of characters Number of characters from the description that will be shown in the slideshow. Image Format The format for the thumbnail listing image.  1:1 = Image will be unchanged.  4:3 = image will be resized to 4:3 format.  10:9 = Image will be resized to 10:9 format. Featured Enable to show only featured listings. Show Address Enable to show the address of the listing. Show Description Enable to show the description up to the character limit set. Category Select either of the following options. Current Browse (auto) – Automatically displayed based on the category. Selected Below – Listings belonging to only these categories are shown. Choose Category If Selected Below is selected for the above field, select the required category. Sort Options Select how the displayed listings should be sorted by. Latest Most Viewed Alphabetically Updated Most Rated DESC Most Rated ASC Use Listings IDs Enable to make the next set of settings work. IDs CSS Item Styling Provide comma separated IDs in this field. Such as, 21, 22 and so on. Use IDs for the CSS Classes If set to yes, to each Caption, CSS Class ID will be added e.g. .jd-slide-title21 where 21 is ID of the listing. Listing ID can be found under JomEvents Listing View in Table - Column ID. It works best with  Use Listings ID's  setting You can select individual listings and promote them with different captions. If set to No, the default CSS will be used for all captions. Slider Module Tab This tab controls the layout where the map panel is to be displayed on the screen. Screen 3: Slider Module tab Slider Width Slider width in pixels Slider Height Slider height in pixels Slide Delay (seconds) Slideshow delay in seconds Full Width Enable to cover the entire width of the slideshow image. Slide Transition Select from the following options. Random Fade Boxslide Slotzoom-horizontal Slotzoom-vertical Curtain-1 Curtain-2 slideup Slide Navigation Select from the following options. Bullet Thumb None Autoplay Start slider when page loaded  Menu Assignment tab This tab controls where the module should be displayed. You can decide if it should be displayed on all pages for the site or just selective pages. Screen 4: Menu Assignment tab Select the required menu for module assignment. The available options are: On all pages No pages Only on the pages selected On all pages except those selected