<php_start_tag>

/**

 * SEF module for Joomla!

 *

 * This is an example file demonstrating how to write own extensions for Artio JoomSEF.

 *

 * @author      $Author: michal $

 * @copyright   ARTIO s.r.o., http://www.artio.cz

 * @package     JoomSEF

 * @version     $Name$, ($Revision: 4994 $, $Date: 2005-11-03 20:50:05 +0100 (??t, 03 XI 2005) $)

 */



// Security check to ensure this file is being included by a parent file.

if (!defined('_VALID_MOS')) die('Direct Access to this location is not allowed.');



/**

 * Note 1: This file shoud be named as com_YOUR-COMPONENT-NAME.php in order to work correctly.

 */



/**

 * Use this to get variables from the original Joomla! URL, such as $task, $page, $id, $catID, ...

 */

extract($vars);



/**

 * Now compose your SEF path.

 * Store the path parts in an array. Further named $fields in this example.

 *

 * To compose the path, you will probably need to call your module funcitons (methods) or connect

 * to the tables used by your module.

 */



// This example loads category title from Joomlaboard forum (in case $catid is defined after export call).

if (isset($catid)) {

    $query = "

		SELECT `name`

		FROM `#__$message_cat_table_suffix`

		WHERE `id` = $catid

		";

    $database->setQuery($query);

    $catTitle = $database->loadResult();

}



// Now category title loaded from DB is added as the first part of the future SEF path.

if (!empty($catTitle)) {

    $title[] = $catTitle;

    // Unset the original URL variable not to interfere anymore.

    unset($vars['catid']);

}



// This example loads message title from Joomlaboard forum (in case $id is defined after export call).

if (isset($id)) {

    $query = "

		SELECT `subject`

		FROM `#__$message_table_suffix`

		WHERE `id` = $id

		";

    $database->setQuery($query);

    $msgTitle = $database->loadResult();

}



// Now message title read from DB is added as the next part of the SEF path.

if (!empty($msgTitle)) {

    $title[] = $msgTitle;

    // Unset the original URL variable not to interfere anymore.

    unset($vars['id']);

}



// ... further parts may be added here ... //



/**

 * Finally, at the end of this file, call JoomSEF::sefGetLocation method to generate and store resulting URL.

 *

 * $string  - original URL which comes automatically (do not change this)

 * $title   - your SEF path (array of single parts)

 * $task    - if not empty (null), the task string will be appended to resulting SEF URL,

 *            e.g. if task=read, the result URL will be your/parts/read(suffix)

 */

if (count($title) > 0) {

    $string = JoomSEF::sefGetLocation($string, $title, $task, (isset($limit) ? @$limit : null), (isset($limitstart) ? @$limitstart : null), (isset($lang) ? @$lang : null));

}



/**

 * And that is all folks!

 */

<php_end_tag>

