Overview

Bible Study is a Joomla!® 1.5 and 2.5 component written by a team of webservants to further the teaching of God's Word. The component displays information about your church's Bible Studies or sermons in a wide variety of ways. JBS is flexible, customizable, and powerful. Easy to configure templates give you the maximum amount of choices. Show only what you want in whatever way you want.
Embed YouTube videos, play audio, show study notes - even create your own html display pages. You can have multiple locations, series, podcasting, and sharing with social media sites. Please see the example pages for just some of what Bible Study can do for your church - and the best part is the component is completely free. Support is top notch, and also free. Bottom line: we want to help you spread the gospel.
Want to help out developing Joomla Bible Study? Just request to join the project.
Configuration - First Steps
Congratulations! You've installed Joomla Bible Study. Now it's time to configure. If this is a fresh installation, we've put in some sample data in these screens that you can edit or delete as you wish. Here are the steps to a basic configuration:
Server
The first step is to set up a server record. This isn't really a server, just a web address to where your media files are located. Go to the JBS admin and click on the Servers tab. Then click "New" on the buttons at the top right.
Here is what the screen looks like:

The Server Name is just whatever name you want to use. Server URL is the web address to the main site. It should look like www.CalvaryChapelNewberg.net (no http) or whatever your server address is. Don't put in a trailing slash, you do that in the server folder record. For my church, I store media files on a server other than where my main website is. The .net actually goes to a different place than my main website of www.CalvaryChapelNewberg.org. So you see, you can have your media files anywhere you can point a url to (or embed, as we'll see later when working with Media Files).
Click Save and Close when you are done. You should see your server on the list.

Next, click on the Folder tab and let's move to the next step
Folders

Click on the Server Folders tab in your JBS admin and click New. Here is what the screen should look like as I enter in a folder record. Again, you are not actually creating a folder, just a pointer to one that you have already created as part of where you put your media files. Notice the forward slashes at the beginning and end. This is important so don't leave it out. Another note, if you are just going to embed video or use a source like Vimeo, you probably won't have a server or folder record. These are for files that exist on a server you have access to place files on via ftp, etc. Click Save and Close and you'll see it on the list.

Next, click on Locations above
Locations
You may have only one location (as I do) but if you have multiple locations and want to seperate your studies that way, you can enter in a name here and choose it later on when you save your study. You can even set up menu items that only go to a particular location.

As you've probably guessed by now, click Save & Close and you'll see it on the list. Now let's add a message type if you want.
Message Types
A message type can be anything you want it to be. It's just another way of splitting up your sermons. For me, I have two types, Sunday and Wednesday. You could also have Holidays, Guests - it's up to you. Simple go to the Message Type tab and click new, then enter in some text and hit Save and Close.

After you've taken these steps, look for the Setting Up Teachers article.
How to Upgrade JBS to Joomla 2.5
So you've finally decided to upgrade your website from Joomla! 1.5 to 2.5 and you want to know the best way to get Joomla! Bible Study working? Here's your answer - and it's not really that hard!
You have a couple of options. First, download the JBS migration component for Joomla! 1.5. Find it here: http://www.joomlabiblestudy.org/downloads/joomla-bible-study-migration-for-15.html. Install it and go to the administration screen:
Template - Study Details
Here is a screenshot of the study details template tab with some annotations:

Template Custom Codes
In order to provide you with maximum options for how your various views appear, we created customisable templates for each view. Each operates the same way, except the codes you use differ between the views. Think of the custom template like your own html code. Create tags, divs, anything you like. Couple your html with dynamic content from the component by using codes in double brackets like {{studydate}}. Here is a list of the codes you might use:
Study List (this is actual code so you can also see what is being looked up):
$label = str_replace('{{teacher}}', $row->teachername, $label);
$label = str_replace('{{title}}', $row->studytitle, $label);
$label = str_replace('{{date}}', getStudydate($params, $row->studydate), $label);
$label = str_replace('{{studyintro}}', $row->studyintro, $label);
$label = str_replace('{{scripture}}', getScripture($params, $row, 0, 1), $label);
$label = str_replace('{{topics}}', $row->topic_text, $label);
$label = str_replace('{{url}}', JRoute::_('index.php?option=com_biblestudy&view=studydetails&id=' . $row->id . '&t=' . $template->id), $label);
$label = str_replace('{{mediatime}}', getDuration($params, $row), $label);
$label = str_replace('{{thumbnail}}', '<img src="' . $image->path . '" width="' . $image->width . '" height="' . $image->height . '" id="bsms_studyThumbnail" />', $label);
$label = str_replace('{{seriestext}}', $row->series_text, $label);
$label = str_replace('{{messagetype}}', $row->message_type, $label);
$label = str_replace('{{bookname}}', $row->bookname, $label);
$label = str_replace('{{topics}}', $row->topic_text, $label);
$label = str_replace('{{hits}}', $row->hits, $label);
$label = str_replace('{{location}}', $row->location_text, $label);
$label = str_replace('{{plays}}', $row->totalplays, $label);
$label = str_replace('{{downloads}}
$label = str_replace('{{media}}', $mediaTable, $label);
Study Details:
$label = str_replace('{{teacher}}', $row->teachername, $label);
$label = str_replace('{{title}}', $row->studytitle, $label);
$label = str_replace('{{date}}', getStudydate($params, $row->studydate), $label);
$label = str_replace('{{studyintro}}', $row->studyintro, $label);
$label = str_replace('{{scripture}}', getScripture($params, $row, 0, 1), $label);
$label = str_replace('{{topics}}', $row->topic_text, $label);
$label = str_replace('{{mediatime}}', getDuration($params, $row), $label);
$label = str_replace('{{thumbnail}}', '<img src="' . $image->path . '" width="' . $image->width . '" height="' . $image->height . '" id="bsms_studyThumbnail" />', $label);
$label = str_replace('{{seriestext}}', $row->stext, $label);
$label = str_replace('{{messagetype}}', $row->message_type, $label);
$label = str_replace('{{bookname}}', $row->bname, $label);
$label = str_replace('{{studytext}}', $row->studytext, $label);
$label = str_replace('{{hits}}', $row->hits, $label);
$label = str_replace('{{location}}', $row->location_text, $label);
//Passage
$link = '<strong><a class="heading" href="javascript:ReverseDisplay(\'bsms_scripture\')">>>' . JText::_('JBS_CMN_SHOW_HIDE_SCRIPTURE') . '<<</a>';
$link .= '<div id="bsms_scripture" style="display:none;"></strong>';
$response = getPassage($params, $row);
$link .= $response;
$link .= '</div>';
$label = str_replace('{{scripturelink}}', $link, $label);
$label = str_replace('{{plays}}', $row->totalplays, $label);
$label = str_replace('{{downloads}}', $row->totaldownloads, $label);
$mediaTable = $Media->getMediaTable($row, $params, $admin_params);
$label = str_replace('{{media}}', $mediaTable, $label);
Teacher:
$label = $params->get('teacher_templatecode');
$label = str_replace('{{teacher}}', $row->teachername, $label);
$label = str_replace('{{title}}', $row->title, $label);
$label = str_replace('{{phone}}', $row->phone, $label);
$label = str_replace('{{website}}', '<A href="' .$row->website .'">Website</a>', $label);
$label = str_replace('{{information}}', $row->information, $label);
$label = str_replace('{{image}}', '<img src="'. $imagelarge->path.'" width="'.$imagelarge->width.'" height="'.$imagelarge->height.'" />', $label);
$label = str_replace('{{short}}', $row->short, $label);
$label = str_replace('{{thumbnail}}', '<img src="'. $imagesmall->path.'" width="'.$imagesmall->width.'" height="'.$imagesmall->height.'" />', $label);
$label = str_replace('{{url}}', JRoute::_('index.php?option=com_biblestudy&view=teacherdisplay&id='.$row->id .'&t='.$template), $label);
Series:
$label = $params->get('series_detailcode');
$label = str_replace('{{teacher}}', $row->teachername, $label);
$label = str_replace('{{teachertitle}}', $row->teachertitle, $label);
$label = str_replace('{{description}}', $row->description, $label);
$label = str_replace('{{title}}', $row->series_text, $label);
$label = str_replace('{{thumbnail}}', '<img src="'. $image->path .'" width="' .$image->width .'" height="' . $image->height . '" />', $label);
$label = str_replace('{{plays}}', $row->totalplays, $label);
$label = str_replace('{{downloads}}', $row->totaldownloads, $label);
Template - ToolTips
A tooltip is a hover box that shows up when the user hovers over one of the items in your list. You choose what items have a tooltip and what items show up in that tooltip. Below is a screen shot of what one looks like.

