- Category: JConnect News
In Joomla, Module configurations are stored as Module parameters. Typically you only need to use parameters in the module itself. However, sometimes you might need to access them from other places like your component or a plugin. And this can get especially tricky when you have multiple copies of the module.
A live case example for this is SocialAds Modules. In this case we need to know in places other than the module itself what parameters each copy of the SocialAds module is configured with.
This blog will show you how you can do this.
Note: This Blog is purely targeted towards developers!
This is how it is done!
First lets get module id (optional. Only needed if you have multiple copies of same module)
In the case above, we have a SocialAds module that lets you configure the zone from which Ads should be picked up. You can create multiple copies of the module and configure each differently. However we don't run the code for all this in the module for efficiency reasons. Here is how you can get the module id for each module and pass it to your common function. You can use the subsequent code to get the module params.
// Take a module id $moduleId = $module->id; //Pass module id to a function functionName($params, $moduleId);
Get module parameters
jimport( 'joomla.application.module.helper' ); // For example Module_Name is login $module = JModuleHelper::getModule(‘ Modul_Name’ ); echo '
'; print_r( $module ); echo '
- Category: JConnect News
Are you organizing events? Then you need to make sure that you're updated with all the news of one of the most sought after event ticketing system for Joomla. Yes, we're talking about JTicketing!
Let’s look into the details!
Give a personal touch to your emails
Now the Admin can manually select attendees from the attendee list and send personalized emails to them.
Search and Sort the Events better
Filters like have been added for events module so that users will be able to search and sort events with ease based on the Category of the events, Upcoming events and past events.
Note: This feature is currently only for Native Events
Email and SMS reminders to the Attendees
Help your attendees not forget your events by setting
automated reminders to be sent before the Big Day! Multiple
reminders can also be sent at regular intervals. Reminders can be
sent through emails as well as SMSes. Here is a Quick snapshot.
Note: You can use Email Beautifier to give a makeover to these emails.
Cool new Responsive Email Ticket templates
Get rid of the boring old fashioned ticket emails. JTicketing has now introduced some cool new responsive email templates in which your attendees will receive tickets through emails.
You will be able to see all the scheduled events in the calendar module just by hovering over that particular date. After selecting the event you will be redirected to the event details page where you can buy tickets :)
That's not all!
JTicketing introduces a bootstrap 3 frontend with this release!
Backwards compatibility for Bootstrap 2.x
JTicketing will be set to Bootstrap 3 by default after the installation. If you want to use it with conventional Bootstrap 2.x versions you will have to change the integration and follow the setup instructions given.
JTicketing 1.7 now officially supports JA-Events 2. Seamlessly integrated with this awesome new template from JoomlArt.
- Category: JConnect News
Before starting the migration
You need to learn Bootstrap 3 coding standard, what’s new, what’s removed, major class changes.
To know everything, please go through the following guidelines and documentation links.
- Download the latest version bootstrap version from https://getbootstrap.com/ and replace the css and js files with the newest versions or use CDN http://www.bootstrapcdn.com/
- To migrate your html to Bootstrap 3 style, first of all you
have to go through the following documentations
a. Bootstrap 3.x version
b. Guidance on how to upgrade from Bootstrap v2.x to v3.x with emphasis on major changes, what's new, and what's been removed.
c. Bootstrap Upgrader https://code.divshot.com/bootstrap3_upgrader/ orhttps://upgrade-bootstrap.bootply.com/
Well, you might spend a lot of time on the documents which Bootstrap has given, to make your job simple and reduce your work to an extent you will have to use this “search and replace script”
Steps for using the script:
- Open terminal (ALT + CLT + T in Ubuntu)
- Browse to your code directory $ cd /var/www/html/bootstrap2code
- Now execute following search and replace scripts in the terminal one after another
grep "row-fluid" -rl * | xargs sed -i "s/row-fluid/row/g" grep "control-group" -rl * | xargs sed -i "s/control-group/form-group/g"; grep "control-label" -rl * | xargs sed -i "s/control-label/col-lg-2 col-md-2 col-sm-3 col-xs-12 control-label/g"; grep "controls" -rl * | xargs sed -i "s/controls/col-lg-10 col-md-10 col-sm-9 col-xs-12/g"; grep "btn " -rl * | xargs sed -i "s/btn /btn btn-default/g" grep "btn-mini" -rl * | xargs sed -i "s/btn-mini/btn-xm/g"; grep "btn-small" -rl * | xargs sed -i "s/btn-small/btn-sm/g"; grep "btn-large" -rl * | xargs sed -i "s/btn-large/btn-lg/g"; grep "input-prepend" -rl * | xargs sed -i "s/input-prepend/input-group/g"; grep "input-append" -rl * | xargs sed -i "s/input-append/input-group/g"; grep "add-on" -rl * | xargs sed -i "s/add-on/input-group-addon/g"; grep "checkbox.inline" -rl * | xargs sed -i "s/checkbox.inline/checkbox-inline/g"; grep "radio.inline" -rl * | xargs sed -i "s/radio.inline/radio-inline/g"; grep "offset" -rl * | xargs sed -i "s/btn-large/btn-lg/g"; grep "alert-error" -rl * | xargs sed -i "s/alert-error/alert-danger/g"; grep "visible-phone" -rl * | xargs sed -i "s/visible-phone/visible-xs/g"; grep "visible-desktop" -rl * | xargs sed -i "s/visible-desktop/visible-md visible-lg/g"; grep "hidden-phone" -rl * | xargs sed -i "s/hidden-phone/hidden-xm/g"; grep "hidden-phone" -rl * | xargs sed -i "s/hidden-phone/hidden-xs/g"; grep "hidden-tablet" -rl * | xargs sed -i "s/hidden-tablet/hidden-sm/g"; grep "hidden-desktop" -rl * | xargs sed -i "s/hidden-desktop/hidden-md hidden-lg/g"; grep "accordion " -rl * | xargs sed -i "s/accordion /panel-group /g"; grep "accordion-group " -rl * | xargs sed -i "s/accordion-group /panel .panel-default /g"; grep "accordion-heading " -rl * | xargs sed -i "s/accordion-heading /panel-heading /g"; grep "accordion-body " -rl * | xargs sed -i "s/accordion-body /panel-collapse /g"; grep "accordion-inner " -rl * | xargs sed -i "s/accordion-inner /panel-body /g"; grep "img-polaroid" -rl * | xargs sed -i "s/img-polaroid/img-thumbnail/g"; grep "label " -rl * | xargs sed -i "s/label /label label-default /g"; grep "label-important" -rl * | xargs sed -i "s/label-important/label-danger/g"; grep "muted" -rl * | xargs sed -i "s/muted/text-muted/g"; grep "bar" -rl * | xargs sed -i "s/bar/progress-bar/g"; grep "\"form-actions" -rl * | xargs sed -i "s/\"form-actions/\"/g";
Along with above three replacement you have to consider the following changes
Change this (Bootstrap 2.x)
<div class="input-append "> <input type="text" name="jform[percentage]" id="jform_percentage" class="inputbox validate-numeric input-mini required" size="40" required="required" aria-required="true" aria-invalid="false"> <span class="add-on">%</span> </div>
to this (Bootstrap 3.x)
<div class="col-lg-2 col-md-2 col-sm-2 col-xs-12 input-group "> <input type="text" name="jform[percentage]" id="jform_percentage" value="" class="inputbox validate-numeric form-control required invalid" size="40" required="required" aria-required="true" aria-invalid="true"> <div class="input-group-addon">%</div> </div>
This is just a small portion of the entire chunk of work that needs to be done!
We hope, this helps you all to quite an extent in this big migration task
I would also like to share the references using which it was possible for me to write this search and replace script.
Do let us know your views on this. :)
- ^ Quick2Cart (techjoomla.com)
- ^ https://getbootstrap.com/ (www.google.com)
- ^ ttp://www.bootstrapcdn.com/ (www.google.com)
- ^ Bootstrap 3.x version (www.google.com)
- ^ Guidance (www.google.com)
- ^ https://code.divshot.com/bootstrap3_upgrader/ (www.google.com)
- ^ https://upgrade-bootstrap.bootply.com/ (www.google.com)
- ^ https://getbootstrap.com/migration/ (getbootstrap.com)
- ^ https://code.divshot.com/bootstrap3_upgrader/ (code.divshot.com)
- ^ https://upgrade-bootstrap.bootply.com/ (upgrade-bootstrap.bootply.com)
- ^ https://stackoverflow.com/questions/17974998/updating-bootstrap-to-version-3-what-do-i-have-to-do (stackoverflow.com)
- Category: JConnect News
OSYouTube is a very useful Joomla plugin that allows you to embed videos easily. Flexslider is a jQuery plugin to create slideshows.
By using both of these together, plus template overrides, you can create a video slideshow.
In this tutorial, I'll show you how to combine FlexSlider and OSYouTube to display your video embeds inside a slideshow.
Step #1. Download and Install OSYouTube
- Install through Extensions > Manage > Upload and Install
Step #2. Create the content
First, let's create a category. In my example I'm going to call it "Videos":
- Content > Categories > Add new category
Now, let's create articles assigned to the new category:
- Content > Articles > Add new article
- Set a title
- In the body, paste the URL of a YouTube video
- Assign the article to the new category.
- Save when you're done.
Create as many articles you need. Each article should include a single video.
Step #3. Create a template override
- Go to Extensions > Template manager > Templates
- Go to the "Create overrides" tab.
- Click mod_articles_news
- This will create a set of files in /templates/yourtemplate/html/mod_articles_news/
Step #4. Integrate Flexslider 2
- Download Flexslider from the developer's page
- Decompress the zip file
- Look for the jquery.flexslider-min.js file and move that inside your /templates/yourtemplate/js/ folder
- Look for the flexslider.css file and move that inside your templates/yourtemplate/css/ folder
- Look for the fonts folder and move that inside your templates/yourtemplate/css/ folder
Step #5. Customize the override
- Create a new PHP file named slideshow.php
- Save it inside templates/yourtemplate/html/mod_articles_news/
JHtml::_('stylesheet', 'templates/' . $app->getTemplate() . '/css/flexslider.css'); JHtml::_('script', 'templates/' . $app->getTemplate() . '/js/jquery.flexslider-min.js');
This code below executes the jQuery plugin in the elements with the flexslider class and prevents the slideshow from autoplaying.
Note: if your template doesn't use jQuery, add this line before loading flexslider.css:
JHtml::_('script', 'media/jui/js/jquery.min.js'); JHtml::_('script', 'media/jui/js/jquery-noconflict.js');
Step #6. Create a Newsflash module
- Go to Extensions > Module manager > New
- Choose Articles - Newsflash
- Select the category
- In Advanced > Alternative layout choose slideshow
Set the params as in the screenshot below:
Step #7. The end result
Go to the front of your site to check out how it looks, the content will update automatically thanks to the Newsflash module:
About the author
Valentín creates beautiful designs from amongst the tequila plants of Jalisco, Mexico. You can see Valentín's design work all over this site and you can often find him helping members in our support forum.
- Category: JConnect News
On popular demand, we have decided to make JMailAlerts plugins available for individual purchase.
Why the Split?
For instance if someone was using JomSocial/ EasySocial/ CB he had to purchase all the unnecessary plugins since they were all in the same subscription package.
Again same thing while downloading. It was bit harder to find the particular plugin’s latest version.
For the use of one particular plugin users had to pay for the entire subscription.
So, by splitting the plugins, it has become easier to to manage the updates and also people can choose from the plugins to download as per the integration they are using and save on cash!!
Introducing 2 new plugins!
All the paid plugins get a new update!
We have released bug fixes and some minor changes in all paid plugins with v 2.5.5