                                                                                                                                                                                
                                                                                                                                                                                
PK       ! 'ŸèSD8  D8    mod_k2_content.xmlnu bS€Å        <?xml version="1.0" encoding="utf-8"?>
<extension type="module" client="site" version="2.5" method="upgrade">
    <name>K2 Content</name>
    <author>JoomlaWorks</author>
    <creationDate>(see K2 component)</creationDate>
    <copyright>Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved.</copyright>
    <authorEmail>please-use-the-contact-form@joomlaworks.net</authorEmail>
    <authorUrl>https://www.joomlaworks.net</authorUrl>
    <version>(see K2 component)</version>
    <license>https://gnu.org/licenses/gpl.html</license>
    <description>K2_MOD_K2_CONTENT_DESCRIPTION</description>
    <files>
        <filename module="mod_k2_content">mod_k2_content.php</filename>
        <filename>helper.php</filename>
        <folder>tmpl</folder>
    </files>
    <config>
        <fields name="params">
            <fieldset name="basic" addfieldpath="/administrator/components/com_k2/elements/">
                <field name="moduleclass_sfx" type="text" default="" label="K2_MODULE_CLASS_SUFFIX" description="K2_MODULE_CLASS_SUFFIX_DESCRIPTION"/>
                <field name="getTemplate" type="moduletemplate" modulename="mod_k2_content" default="Default" label="K2_SELECT_SUBTEMPLATE" description="K2_THIS_MODULE_UTILIZES_ONTHEFLY_MVC_TEMPLATE_OVERRIDES_WHAT_THIS_MEANS_IS_THAT_YOU_CAN_CREATE_A_NEW_SUBTEMPLATE_FOLDER_FOR_THIS_MODULE_WITHIN_YOUR_JOOMLA_TEMPLATES_HTMLMOD_K2_CONTENT_FOLDER_THE_MODULE_WILL_THEN_PICKUP_THE_NEW_SUBTEMPLATE_AUTOMAGICALLY_WITHOUT_YOU_EDITING_ANY_XML_FILE_OR_DOING_ANY_OTHER_NONDESIGNER_WORK"/>
                <field name="source" type="list" default="filter" label="K2_SOURCE" description="">
                    <option value="filter">K2_RETRIEVE_ITEMS_FROM_CATEGORIES</option>
                    <option value="specific">K2_SELECT_SPECIFIC_ITEMS</option>
                </field>
                <field name="" type="header" default="K2_RETRIEVE_ITEMS_FROM_CATEGORIES" label="" description=""/>
                <field name="catfilter" type="radio" default="0" label="K2_CATEGORY_FILTER" description="" class="btn-group btn-group-yesno-reverse">
                    <option value="0">K2_ALL</option>
                    <option value="1">K2_SELECT</option>
                </field>
                <field name="category_id" type="categoriesmultiple" default="" label="K2_SELECT_ONE_OR_MORE_CATEGORIES" description="K2_SELECT_ONE_ORE_MORE_CATEGORIES_FOR_WHICH_YOU_WANT_TO_FILTER_AN_ITEMS_LIST_SELECT_NONE_TO_FETCH_ITEMS_FROM_ALL_CATEGORIES"/>
                <field name="getChildren" type="radio" default="0" label="K2_FETCH_ITEMS_FROM_CHILDREN_CATEGORIES" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_NO</option>
                    <option value="1">K2_YES</option>
                </field>
                <field name="tags" type="k2tags" label="K2_TAGS"/>
                <field name="users" type="k2users" label="K2_USERS"/>
                <field name="itemCount" type="text" size="4" default="5" label="K2_ITEM_COUNT" description=""/>
                <field name="itemsOrdering" type="list" default="" label="K2_ITEM_ORDERING" description="">
                    <option value="">K2_DEFAULT</option>
                    <option value="date">K2_OLDEST_FIRST</option>
                    <option value="rdate">K2_MOST_RECENT_FIRST</option>
                    <option value="publishUp">K2_RECENTLY_PUBLISHED</option>
                    <option value="alpha">K2_TITLE_ALPHABETICAL</option>
                    <option value="ralpha">K2_TITLE_REVERSEALPHABETICAL</option>
                    <option value="order">K2_ORDERING</option>
                    <option value="rorder">K2_ORDERING_REVERSE</option>
                    <option value="hits">K2_MOST_POPULAR</option>
                    <option value="best">K2_HIGHEST_RATED</option>
                    <option value="comments">K2_MOST_COMMENTED</option>
                    <option value="modified">K2_LATEST_MODIFIED</option>
                    <option value="rand">K2_RANDOM_ORDERING</option>
                </field>
                <field name="FeaturedItems" type="list" default="1" label="K2_FEATURED_ITEMS" description="">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                    <option value="2">K2_SHOW_ONLY_FEATURED_ITEMS</option>
                </field>
                <field name="popularityRange" type="list" default="" label="K2_TIME_RANGE_IF_ORDERING_IS_SET_TO_MOST_POPULAR_OR_MOST_COMMENTED" description="K2_TIME_RANGE_IF_ORDERING_IS_SET_TO_MOST_POPULAR_OR_MOST_COMMENTED_DESC">
                    <option value="">K2_ALL_TIME</option>
                    <option value="today">K2_TODAY</option>
                    <option value="1">K2_1_DAY</option>
                    <option value="3">K2_3_DAYS</option>
                    <option value="7">K2_1_WEEK</option>
                    <option value="15">K2_2_WEEKS</option>
                    <option value="30">K2_1_MONTH</option>
                    <option value="90">K2_3_MONTHS</option>
                    <option value="180">K2_6_MONTHS</option>
                </field>
                <field name="videosOnly" type="radio" default="0" label="K2_FETCH_ONLY_ITEMS_WITH_VIDEOS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_NO</option>
                    <option value="1">K2_YES</option>
                </field>
                <field name="" type="header" default="K2_SELECT_SPECIFIC_ITEMS" label="" description=""/>
                <field name="items" type="k2modalselector" scope="items" default="" label="K2_ITEM_SELECTOR" description=""/>
                <field name="" type="header" default="K2_ITEM_VIEW_OPTIONS_COMMON_FOR_EITHER_SOURCE" label="" description=""/>
                <field name="itemTitle" type="radio" default="1" label="K2_TITLE" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemAuthor" type="radio" default="1" label="K2_USER_AUTHOR" description="K2_MOD_K2_CONTENT_USER_AUTHOR_DESC" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemAuthorAvatar" type="radio" default="1" label="K2_USER_AVATAR" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemAuthorAvatarWidthSelect" type="list" default="custom" label="K2_USER_AVATAR_WIDTH" description="">
                    <option value="inherit">K2_INHERIT_FROM_COMPONENT_PARAMETERS</option>
                    <option value="custom">K2_USE_CUSTOM_WIDTH</option>
                </field>
                <field name="itemAuthorAvatarWidth" type="text" default="50" size="4" label="K2_CUSTOM_WIDTH_FOR_USER_AVATAR_IN_PX" description=""/>
                <field name="userDescription" type="radio" default="1" label="K2_USER_DESCRIPTION" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemIntroText" type="radio" default="1" label="K2_INTROTEXT" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemIntroTextWordLimit" type="text" size="4" default="" label="K2_INTROTEXT_WORD_LIMIT" description="K2_LEAVE_BLANK_TO_DISABLE_IF_YOU_ENABLE_THIS_OPTION_ALL_HTML_TAGS_FROM_THE_TEXT_WILL_BE_CLEANED_UP_TO_MAKE_SURE_THE_HTML_STRUCTURE_OF_THE_SITE_DOES_NOT_BRAKE"/>
                <field name="itemImage" type="radio" default="1" label="K2_IMAGE" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemImgSize" type="list" default="Small" label="K2_IMAGE_SIZE" description="">
                    <option value="XSmall">K2_XSMALL</option>
                    <option value="Small">K2_SMALL</option>
                    <option value="Medium">K2_MEDIUM</option>
                    <option value="Large">K2_LARGE</option>
                    <option value="XLarge">K2_XLARGE</option>
                </field>
                <field name="itemVideo" type="radio" default="1" label="K2_VIDEO" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemVideoCaption" type="radio" default="1" label="K2_MEDIA_CAPTION" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemVideoCredits" type="radio" default="1" label="K2_MEDIA_CREDITS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemAttachments" type="radio" default="1" label="K2_ATTACHMENTS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemTags" type="radio" default="1" label="K2_TAGS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemCategory" type="radio" default="1" label="K2_CATEGORY" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemDateCreated" type="radio" default="1" label="K2_CREATED_DATE_AND_TIME" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemHits" type="radio" default="1" label="K2_HITS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemReadMore" type="radio" default="1" label="K2_READ_MORE_LINK" description="K2_THIS_OPTION_IS_NOT_APPLICABLE_FOR_AN_ITEM_IN_WHICH_THE_FULLTEXT_BLOCK_IS_EMPTY" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemExtraFields" type="radio" default="0" label="K2_EXTRA_FIELDS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemCommentsCounter" type="radio" default="1" label="K2_COMMENTS_COUNTER_AND_ANCHOR_LINK" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="" type="header" default="K2_OTHER_OPTIONS" label="" description=""/>
                <field name="feed" type="radio" default="1" label="K2_AUTOGENERATED_RSS_FEED_ICON" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemPreText" type="textarea" default="" label="K2_DESCRIPTION_TEXT_AT_THE_TOP_OPTIONAL" description="" cols="40" rows="4" filter="raw"/>
                <field name="itemCustomLink" type="radio" default="0" label="K2_CUSTOM_LINK_AT_THE_BOTTOM" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_HIDE</option>
                    <option value="1">K2_SHOW</option>
                </field>
                <field name="itemCustomLinkTitle" type="text" default="" label="K2_CUSTOM_LINK_TITLE" description="K2_CUSTOM_LINK_TITLE_DESC"/>
                <field name="itemCustomLinkURL" type="text" default="http://" label="K2_CUSTOM_LINK_URL" description="K2_CUSTOM_LINK_URL_DESC"/>
                <field name="itemCustomLinkMenuItem" type="menuitem" default="" label="K2_OR_SELECT_A_MENU_ITEM" description=""/>
            </fieldset>
            <fieldset name="advanced">
                <field name="K2Plugins" type="radio" default="1" label="K2_ENABLE_K2_PLUGINS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_NO</option>
                    <option value="1">K2_YES</option>
                </field>
                <field name="JPlugins" type="radio" default="1" label="K2_ENABLE_JOOMLA_CONTENT_PLUGINS" description="" class="btn-group btn-group-yesno">
                    <option value="0">K2_NO</option>
                    <option value="1">K2_YES</option>
                </field>
                <field name="cache" type="list" default="1" label="K2_CACHING" description="K2_SELECT_WHETHER_TO_CACHE_THE_CONTENT_OF_THIS_MODULE">
                    <option value="1">K2_USE_GLOBAL</option>
                    <option value="0">K2_NO_CACHING</option>
                </field>
                <field name="cache_time" type="text" default="" label="K2_CACHE_TIME" description="K2_THE_TIME_IN_SECONDS_BEFORE_THE_MODULE_IS_RECACHED"/>
                <field name="cachemode" type="hidden" default="static">
                    <option value="static"></option>
                </field>
            </fieldset>
        </fields>
    </config>
</extension>PK       ! jP+ÝW	  W	    mod_k2_content.phpnu bS€Å        <?php
/**
 * @version    2.11 (rolling release)
 * @package    K2
 * @author     JoomlaWorks https://www.joomlaworks.net
 * @copyright  Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved.
 * @license    GNU/GPL: https://gnu.org/licenses/gpl.html
 */

// no direct access
defined('_JEXEC') or die;

if (K2_JVERSION != '15') {
    $language = JFactory::getLanguage();
    $language->load('com_k2.dates', JPATH_ADMINISTRATOR, null, true);
}

require_once(dirname(__FILE__).'/helper.php');

// Params
$moduleclass_sfx = $params->get('moduleclass_sfx', '');
$getTemplate = $params->get('getTemplate', 'Default');
$itemAuthorAvatarWidthSelect = $params->get('itemAuthorAvatarWidthSelect', 'custom');
$itemAuthorAvatarWidth = $params->get('itemAuthorAvatarWidth', 50);
$itemCustomLinkTitle = $params->get('itemCustomLinkTitle', '');
$itemCustomLinkURL = trim($params->get('itemCustomLinkURL'));
$itemCustomLinkMenuItem = $params->get('itemCustomLinkMenuItem');

if ($itemCustomLinkURL && $itemCustomLinkURL!='http://' && $itemCustomLinkURL!='https://') {
    if ($itemCustomLinkTitle=='') {
        if (strpos($itemCustomLinkURL, '://')!==false) {
            $linkParts = explode('://', $itemCustomLinkURL);
            $itemCustomLinkURL = $linkParts[1];
        }
        $itemCustomLinkTitle = $itemCustomLinkURL;
    }
} elseif ($itemCustomLinkMenuItem) {
    $menu = JMenu::getInstance('site');
    $menuLink = $menu->getItem($itemCustomLinkMenuItem);
    if (!empty($menuLink)) {
        if (!$itemCustomLinkTitle) {
            $itemCustomLinkTitle = (K2_JVERSION != '15') ? $menuLink->title : $menuLink->name;
        }
        $itemCustomLinkURL = JRoute::_('index.php?&Itemid='.$menuLink->id);
    } else {
        $itemCustomLinkTitle = '';
        $itemCustomLinkURL = '';
    }
}

// Make params backwards compatible
$params->set('itemCustomLinkTitle', $itemCustomLinkTitle);
$params->set('itemCustomLinkURL', $itemCustomLinkURL);

// Get component params
$componentParams = JComponentHelper::getParams('com_k2');

// User avatar
if ($itemAuthorAvatarWidthSelect == 'inherit') {
    $avatarWidth = $componentParams->get('userImageWidth');
} else {
    $avatarWidth = $itemAuthorAvatarWidth;
}

$items = modK2ContentHelper::getItems($params);

if (is_array($items) && count($items)) {
    require(JModuleHelper::getLayoutPath('mod_k2_content', $getTemplate.'/default'));
}
PK       ! É#o,   ,   
  index.htmlnu bS€Å        <html><body bgcolor="#FFFFFF"></body></html>PK       ! w ²ÿhg  hg  
  helper.phpnu bS€Å        <?php
/**
 * @version    2.11 (rolling release)
 * @package    K2
 * @author     JoomlaWorks https://www.joomlaworks.net
 * @copyright  Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved.
 * @license    GNU/GPL: https://gnu.org/licenses/gpl.html
 */

// no direct access
defined('_JEXEC') or die;

require_once(JPATH_SITE.'/components/com_k2/helpers/route.php');
require_once(JPATH_SITE.'/components/com_k2/helpers/utilities.php');

class modK2ContentHelper
{
    public static function getItems(&$params, $format = 'html')
    {
        jimport('joomla.filesystem.file');

        $app = JFactory::getApplication();
        $db = JFactory::getDbo();

        $jnow = JFactory::getDate();
        $now = (K2_JVERSION != '15') ? $jnow->toSql() : $jnow->toMySQL();
        $nullDate = $db->getNullDate();

        $componentParams = JComponentHelper::getParams('com_k2');

        $limit = $params->get('itemCount', 5);
        $cid = $params->get('category_id', null);
        $ordering = $params->get('itemsOrdering', '');
        $limitstart = JRequest::getInt('limitstart');

        // Get ACL
        $user = JFactory::getUser();
        if (K2_JVERSION != '15') {
            $userLevels = array_unique($user->getAuthorisedViewLevels());
            $aclCheck = 'IN('.implode(',', $userLevels).')';
        } else {
            $aid = $user->get('aid');
            $aclCheck = '<= '.$user->get('aid');
        }

        // Get language on Joomla 2.5+
        $languageFilter = '';
        if (K2_JVERSION != '15') {
            if ($app->getLanguageFilter()) {
                $languageTag = JFactory::getLanguage()->getTag();
                $languageFilter = $db->Quote($languageTag).", ".$db->Quote('*');
            }
        }

        // Sources (prepare the DB query)
        if ($params->get('source') == 'specific') {
            $specificItems = (array) $params->get('items');
            if (count($specificItems) == 0) {
                return;
            }
            $ids = implode(',', $specificItems);
            $items = [];
            $query = "/* Frontend / mod_k2_content */ SELECT i.*, c.name AS categoryname, c.id AS categoryid, c.alias AS categoryalias, c.params AS categoryparams
                    FROM #__k2_items AS i
                    INNER JOIN #__k2_categories AS c ON c.id = i.catid
                    WHERE i.published = 1
                        AND i.access {$aclCheck}
                        AND i.trash = 0
                        AND c.published = 1
                        AND c.access {$aclCheck}
                        AND c.trash = 0
                        AND (i.publish_up = ".$db->Quote($nullDate)." OR i.publish_up <= ".$db->Quote($now).")
                        AND (i.publish_down = ".$db->Quote($nullDate)." OR i.publish_down >= ".$db->Quote($now).")
                        AND i.id IN({$ids})";

            if ($languageFilter) {
                $query .= " AND i.language IN({$languageFilter}) AND c.language IN({$languageFilter})";
            }
            $query .= " ORDER BY FIELD(i.id,{$ids})";
            // TO DO: Set limit for specific items - $db->setQuery($query, 0, $limit);
            $db->setQuery($query);
            $items = $db->loadObjectList();
        } else {
            $query = "/* Frontend / mod_k2_content */ SELECT i.*,";

            if ($ordering == 'modified') {
                $query .= " CASE WHEN i.modified = 0 THEN i.created ELSE i.modified END AS lastChanged,";
            }

            $query .= " c.name AS categoryname, c.id AS categoryid, c.alias AS categoryalias, c.params AS categoryparams";

            if ($ordering == 'best') {
                $query .= ", (r.rating_sum/r.rating_count) AS rating";
            }

            if ($ordering == 'comments') {
                $query .= ", COUNT(comments.id) AS numOfComments";
            }

            $query .= " FROM #__k2_items AS i INNER JOIN #__k2_categories AS c ON c.id = i.catid";

            if ($ordering == 'best') {
                $query .= " LEFT JOIN #__k2_rating AS r ON r.itemID = i.id";
            }

            if ($ordering == 'comments') {
                $query .= " LEFT JOIN #__k2_comments AS comments ON comments.itemID = i.id";
            }

            $tagsFilter = $params->get('tags');
            if ($tagsFilter && is_array($tagsFilter) && count($tagsFilter)) {
                $query .= " INNER JOIN #__k2_tags_xref tags_xref ON tags_xref.itemID = i.id";
            }

            $query .= " WHERE i.published = 1
                AND i.access {$aclCheck}
                AND i.trash = 0
                AND c.published = 1
                AND c.access {$aclCheck}
                AND c.trash = 0
                AND (i.publish_up = ".$db->Quote($nullDate)." OR i.publish_up <= ".$db->Quote($now).")
                AND (i.publish_down = ".$db->Quote($nullDate)." OR i.publish_down >= ".$db->Quote($now).")";

            if ($params->get('catfilter') && !is_null($cid)) {
                if ($params->get('getChildren')) {
                    $itemListModel = K2Model::getInstance('Itemlist', 'K2Model');
                    $categories = $itemListModel->getCategoryTree($cid);
                    sort($categories);
                    $sql = @implode(',', $categories);
                    $query .= " AND i.catid IN({$sql})";
                } else {
                    if (is_array($cid)) {
                        sort($cid);
                        $query .= " AND i.catid IN(".implode(',', $cid).")";
                    } else {
                        $query .= " AND i.catid = ".(int) $cid;
                    }
                }
            }

            $tagsFilter = $params->get('tags');
            if ($tagsFilter && is_array($tagsFilter) && count($tagsFilter)) {
                $query .= " AND tags_xref.tagID IN(".implode(',', $tagsFilter).")";
            }

            $usersFilter = $params->get('users');
            if ($usersFilter && is_array($usersFilter) && count($usersFilter)) {
                $query .= " AND i.created_by IN(".implode(',', $usersFilter).") AND i.created_by_alias = ''";
            }

            if ($params->get('FeaturedItems') == '0') {
                $query .= " AND i.featured != 1";
            }

            if ($params->get('FeaturedItems') == '2') {
                $query .= " AND i.featured = 1";
            }

            if ($params->get('videosOnly')) {
                $query .= " AND (i.video IS NOT NULL AND i.video!='')";
            }

            if ($languageFilter) {
                $query .= " AND i.language IN({$languageFilter}) AND c.language IN({$languageFilter})";
            }

            if ($ordering == 'comments') {
                $query .= " AND comments.published = 1";
            }

            switch ($ordering) {

                case 'date':
                    $orderby = 'i.created ASC';
                    break;

                case 'rdate':
                    $orderby = 'i.created DESC';
                    break;

                case 'alpha':
                    $orderby = 'i.title';
                    break;

                case 'ralpha':
                    $orderby = 'i.title DESC';
                    break;

                case 'order':
                    if ($params->get('FeaturedItems') == '2') {
                        $orderby = 'i.featured_ordering';
                    } else {
                        $orderby = 'i.ordering';
                    }
                    break;

                case 'rorder':
                    if ($params->get('FeaturedItems') == '2') {
                        $orderby = 'i.featured_ordering DESC';
                    } else {
                        $orderby = 'i.ordering DESC';
                    }
                    break;

                case 'hits':
                    if ($params->get('popularityRange')) {
                        if ($params->get('popularityRange') == 'today') {
                            $date = (K2_JVERSION != '15') ? $jnow->format('%Y-%m-%d').' 00:00:00' : $jnow->toFormat('%Y-%m-%d').' 00:00:00';
                            $query .= " AND i.publish_up > '{$date}'";
                        } else {
                            $query .= " AND i.created > DATE_SUB('{$now}', INTERVAL ".$params->get('popularityRange')." DAY)";
                        }
                    }
                    $orderby = 'i.hits DESC';
                    break;

                case 'rand':
                    $orderby = 'RAND()';
                    break;

                case 'best':
                    $orderby = 'rating DESC';
                    break;

                case 'comments':
                    if ($params->get('popularityRange')) {
                        $query .= " AND i.created > DATE_SUB('{$now}', INTERVAL ".$params->get('popularityRange')." DAY)";
                    }
                    $orderby = 'numOfComments DESC';
                    break;

                case 'modified':
                    $orderby = 'lastChanged DESC';
                    break;

                case 'publishUp':
                    $orderby = 'i.publish_up DESC';
                    break;

                default:
                    $orderby = 'i.id DESC';
                    break;
            }

            if ($tagsFilter && is_array($tagsFilter) && count($tagsFilter)) {
                $query .= ' GROUP BY i.id';
            }

            $query .= ' ORDER BY '.$orderby;

            $db->setQuery($query, 0, $limit);
            $items = $db->loadObjectList();
        }

        // Render the query results
        $model = K2Model::getInstance('Item', 'K2Model');

        // Import plugins
        if ($params->get('JPlugins', 1)) {
            JPluginHelper::importPlugin('content');
        }
        if ($params->get('K2Plugins', 1)) {
            JPluginHelper::importPlugin('k2');
        }
        $dispatcher = JDispatcher::getInstance();

        if (count($items)) {
            foreach ($items as $item) {

                // Item (read more...) link
                $item->link = urldecode(JRoute::_(K2HelperRoute::getItemRoute($item->id.':'.urlencode($item->alias), $item->catid.':'.urlencode($item->categoryalias))));

                // Category link
                if ($params->get('itemCategory')) {
                    $item->categoryLink = urldecode(JRoute::_(K2HelperRoute::getCategoryRoute($item->catid.':'.urlencode($item->categoryalias))));
                }

                // Title cleanup
                $item->title = JFilterOutput::ampReplace($item->title);

                // Manipulate tag rendering in the feed URL
                if (JRequest::getCmd('format') == 'feed') {
                    $tagsForFeed = array();
                    $tags = $model->getItemTags($item->id);
                    if (is_array($tags) && count($tags)) {
                        foreach ($tags as $tag) {
                            $tagsForFeed[] = '#'.str_replace(' ', '_', $tag->name);
                        }
                    }
                    if (JRequest::getBool('tagsontitle', false) && is_array($tagsForFeed) && count($tagsForFeed)) {
                        // Limit no. of rendered tags in the title (if set)
                        $tagLimit = JRequest::getInt('taglimit', 0);
                        if ($tagLimit && $tagLimit < count($tagsForFeed)) {
                            $tagsForFeed = array_slice($tagsForFeed, 0, $tagLimit);
                        }
                        // Append tags to the title
                        $item->title = html_entity_decode($item->title.' '.implode(' ', $tagsForFeed));
                    }
                }

                // Tags
                if ($params->get('itemTags')) {
                    $tags = $model->getItemTags($item->id);
                    for ($i = 0; $i < count($tags); $i++) {
                        $tags[$i]->link = JRoute::_(K2HelperRoute::getTagRoute($tags[$i]->name));
                    }
                    $item->tags = $tags;
                }

                // Introtext
                $item->text = '';
                if ($params->get('itemIntroText')) {
                    // Word limit
                    if ($params->get('itemIntroTextWordLimit')) {
                        $item->text .= K2HelperUtilities::wordLimit($item->introtext, $params->get('itemIntroTextWordLimit'));
                    } else {
                        $item->text .= $item->introtext;
                    }
                }

                // Item image
                if ($params->get('itemImage')) {
                    $item->imageXSmall = '';
                    $item->imageSmall = '';
                    $item->imageMedium = '';
                    $item->imageLarge = '';
                    $item->imageXLarge = '';

                    $imageTimestamp = '';
                    $dateModified = ((int) $item->modified) ? $item->modified : '';
                    if ($componentParams->get('imageTimestamp', 1) && $dateModified) {
                        $imageTimestamp = '?t='.strftime("%Y%m%d_%H%M%S", strtotime($dateModified));
                    }

                    $imageFilenamePrefix = md5("Image".$item->id);
                    $imagePathPrefix = JUri::base(true).'/media/k2/items/cache/'.$imageFilenamePrefix;

                    // Check if the "generic" variant exists
                    if (JFile::exists(JPATH_SITE.'/media/k2/items/cache/'.$imageFilenamePrefix.'_Generic.jpg')) {
                        $item->imageGeneric = $imagePathPrefix.'_Generic.jpg'.$imageTimestamp;
                        $item->imageXSmall  = $imagePathPrefix.'_XS.jpg'.$imageTimestamp;
                        $item->imageSmall   = $imagePathPrefix.'_S.jpg'.$imageTimestamp;
                        $item->imageMedium  = $imagePathPrefix.'_M.jpg'.$imageTimestamp;
                        $item->imageLarge   = $imagePathPrefix.'_L.jpg'.$imageTimestamp;
                        $item->imageXLarge  = $imagePathPrefix.'_XL.jpg'.$imageTimestamp;

                        $item->imageProperties = new stdClass();
                        $item->imageProperties->filenamePrefix = $imageFilenamePrefix;
                        $item->imageProperties->pathPrefix = $imagePathPrefix;
                    }

                    // Select the size to use
                    $image = 'image'.$params->get('itemImgSize', 'Small');
                    if (!empty($item->$image)) {
                        $item->image = $item->$image;
                    } else {
                        $item->image = null;
                    }
                }

                // Video
                if ($params->get('itemVideo') && $format != 'feed') {
                    $params->set('vfolder', 'media/k2/videos');
                    $params->set('afolder', 'media/k2/audio');

                    // Create temp object to parse plugins
                    $mediaTempText = new stdClass();
                    $mediaTempText->text = $item->video;
                    if ($params->get('JPlugins', 1)) {
                        if (K2_JVERSION == '15') {
                            $dispatcher->trigger('onPrepareContent', array(
                            &$mediaTempText,
                            &$params,
                            $limitstart
                        ));
                        } else {
                            $dispatcher->trigger('onContentPrepare', array(
                            'mod_k2_content.item-media',
                            &$mediaTempText,
                            &$params,
                            $limitstart
                        ));
                        }
                    }
                    if ($params->get('K2Plugins', 1)) {
                        $dispatcher->trigger('onK2PrepareContent', array(
                        &$mediaTempText,
                        &$params,
                        $limitstart
                    ));
                    }
                    $item->video = $mediaTempText->text;
                }

                // Extra fields
                if ($params->get('itemExtraFields')) {
                    $item->extra_fields = $model->getItemExtraFields($item->extra_fields, $item);

                    // Plugin rendering in extra fields
                    if (is_array($item->extra_fields)) {
                        foreach ($item->extra_fields as $key => $extraField) {
                            if ($extraField->type == 'textarea' || $extraField->type == 'textfield') {
                                // Create temp object to parse plugins
                                $extraFieldTempText = new stdClass();
                                $extraFieldTempText->text = $extraField->value;
                                if ($params->get('JPlugins', 1)) {
                                    if (K2_JVERSION == '15') {
                                        $dispatcher->trigger('onPrepareContent', array(
                                            &$extraFieldTempText,
                                            &$params,
                                            $limitstart
                                        ));
                                    } else {
                                        $dispatcher->trigger('onContentPrepare', array(
                                            'mod_k2_content.item-extrafields',
                                            &$extraFieldTempText,
                                            &$params,
                                            $limitstart
                                        ));
                                    }
                                }
                                if ($params->get('K2Plugins', 1)) {
                                    $dispatcher->trigger('onK2PrepareContent', array(
                                        &$extraFieldTempText,
                                        &$params,
                                        $limitstart
                                    ));
                                }
                                $extraField->value = $extraFieldTempText->text;
                            }
                        }
                    }
                }

                // Attachments
                if ($params->get('itemAttachments')) {
                    $item->attachments = $model->getItemAttachments($item->id);
                }

                // Comments counter
                if ($params->get('itemCommentsCounter')) {
                    $item->numOfComments = $model->countItemComments($item->id);
                }

                // Plugins
                if ($format != 'feed') {
                    $params->set('parsedInModule', 1); // for plugins to know when they are parsed inside this module

                    $item->event = new stdClass();

                    $item->event->BeforeDisplay = '';
                    $item->event->AfterDisplay = '';
                    $item->event->AfterDisplayTitle = '';
                    $item->event->BeforeDisplayContent = '';
                    $item->event->AfterDisplayContent = '';

                    // Joomla Plugins
                    if ($params->get('JPlugins', 1)) {
                        if (K2_JVERSION != '15') {
                            $item->event->BeforeDisplay = '';
                            $item->event->AfterDisplay = '';

                            $results = $dispatcher->trigger('onContentAfterTitle', array('mod_k2_content', &$item, &$params, $limitstart));
                            $item->event->AfterDisplayTitle = trim(implode("\n", $results));

                            $results = $dispatcher->trigger('onContentBeforeDisplay', array('mod_k2_content', &$item, &$params, $limitstart));
                            $item->event->BeforeDisplayContent = trim(implode("\n", $results));

                            $results = $dispatcher->trigger('onContentAfterDisplay', array('mod_k2_content', &$item, &$params, $limitstart));
                            $item->event->AfterDisplayContent = trim(implode("\n", $results));

                            $dispatcher->trigger('onContentPrepare', array('mod_k2_content', &$item, &$params, $limitstart));
                        } else {
                            $results = $dispatcher->trigger('onBeforeDisplay', array(&$item, &$params, $limitstart));
                            $item->event->BeforeDisplay = trim(implode("\n", $results));

                            $results = $dispatcher->trigger('onAfterDisplay', array(&$item, &$params, $limitstart));
                            $item->event->AfterDisplay = trim(implode("\n", $results));

                            $results = $dispatcher->trigger('onAfterDisplayTitle', array(&$item, &$params, $limitstart));
                            $item->event->AfterDisplayTitle = trim(implode("\n", $results));

                            $results = $dispatcher->trigger('onBeforeDisplayContent', array(&$item, &$params, $limitstart));
                            $item->event->BeforeDisplayContent = trim(implode("\n", $results));

                            $results = $dispatcher->trigger('onAfterDisplayContent', array(&$item, &$params, $limitstart));
                            $item->event->AfterDisplayContent = trim(implode("\n", $results));

                            $dispatcher->trigger('onPrepareContent', array(&$item, &$params, $limitstart));
                        }
                    }

                    // Initialize K2 plugin events
                    $item->event->K2BeforeDisplay = '';
                    $item->event->K2AfterDisplay = '';
                    $item->event->K2AfterDisplayTitle = '';
                    $item->event->K2BeforeDisplayContent = '';
                    $item->event->K2AfterDisplayContent = '';
                    $item->event->K2CommentsCounter = '';

                    // K2 Plugins
                    if ($params->get('K2Plugins', 1)) {
                        $results = $dispatcher->trigger('onK2BeforeDisplay', array(&$item, &$params, $limitstart));
                        $item->event->K2BeforeDisplay = trim(implode("\n", $results));

                        $results = $dispatcher->trigger('onK2AfterDisplay', array(&$item, &$params, $limitstart));
                        $item->event->K2AfterDisplay = trim(implode("\n", $results));

                        $results = $dispatcher->trigger('onK2AfterDisplayTitle', array(&$item, &$params, $limitstart));
                        $item->event->K2AfterDisplayTitle = trim(implode("\n", $results));

                        $results = $dispatcher->trigger('onK2BeforeDisplayContent', array(&$item, &$params, $limitstart));
                        $item->event->K2BeforeDisplayContent = trim(implode("\n", $results));

                        $results = $dispatcher->trigger('onK2AfterDisplayContent', array(&$item, &$params, $limitstart));
                        $item->event->K2AfterDisplayContent = trim(implode("\n", $results));

                        $dispatcher->trigger('onK2PrepareContent', array(&$item, &$params, $limitstart));

                        if ($params->get('itemCommentsCounter')) {
                            $results = $dispatcher->trigger('onK2CommentsCounter', array(&$item, &$params, $limitstart));
                            $item->event->K2CommentsCounter = trim(implode("\n", $results));
                        }
                    }
                }

                // Restore the intotext variable after plugins are executed
                $item->introtext = $item->text;

                // Remove the plugin tags
                $item->introtext = preg_replace("#{(.*?)}(.*?){/(.*?)}#s", '', $item->introtext);

                // Author (user)
                if ($params->get('itemAuthor')) {
                    if (!empty($item->created_by_alias)) {
                        $item->author = $item->created_by_alias;
                        $item->authorGender = null;
                        $item->authorDescription = null;
                        if ($params->get('itemAuthorAvatar')) {
                            $item->authorAvatar = K2HelperUtilities::getAvatar('alias');
                        }
                        $item->authorLink = JUri::root(true);
                    } else {
                        $author = JFactory::getUser($item->created_by);
                        $item->author = $author->name;

                        $query = "SELECT `description`, `gender` FROM #__k2_users WHERE userID=".(int)$author->id;
                        $db->setQuery($query, 0, 1);

                        $result = $db->loadObject();
                        if ($result) {
                            $item->authorGender = $result->gender;
                            $item->authorDescription = $result->description;
                        } else {
                            $item->authorGender = null;
                            $item->authorDescription = null;
                        }

                        if ($params->get('itemAuthorAvatar')) {
                            $item->authorAvatar = K2HelperUtilities::getAvatar($author->id, $author->email, $componentParams->get('userImageWidth'));
                        }

                        $item->authorLink = JRoute::_(K2HelperRoute::getUserRoute($item->created_by));
                    }
                }

                // Author (user) avatar
                if ($params->get('itemAuthorAvatar') && !isset($item->authorAvatar)) {
                    if (!empty($item->created_by_alias)) {
                        $item->authorAvatar = K2HelperUtilities::getAvatar('alias');
                        $item->authorLink = JUri::root(true);
                    } else {
                        $jAuthor = JFactory::getUser($item->created_by);
                        $item->authorAvatar = K2HelperUtilities::getAvatar($jAuthor->id, $jAuthor->email, $componentParams->get('userImageWidth'));
                        $item->authorLink = JRoute::_(K2HelperRoute::getUserRoute($item->created_by));
                    }
                }

                // Populate the output array
                $rows[] = $item;
            }

            return $rows;
        }
    }
}

PK       ! ÿêx%  x%    tmpl/Default/default.phpnu bS€Å        <?php
/**
 * @version    2.11 (rolling release)
 * @package    K2
 * @author     JoomlaWorks https://www.joomlaworks.net
 * @copyright  Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved.
 * @license    GNU/GPL: https://gnu.org/licenses/gpl.html
 */

// no direct access
defined('_JEXEC') or die;

?>

<div id="k2ModuleBox<?php echo $module->id; ?>" class="k2ItemsBlock<?php if($params->get('moduleclass_sfx')) echo ' '.$params->get('moduleclass_sfx'); ?>">
    <?php if($params->get('itemPreText')): ?>
    <p class="modulePretext"><?php echo $params->get('itemPreText'); ?></p>
    <?php endif; ?>

    <?php if(isset($items) && count($items)): ?>
    <ul>
        <?php foreach ($items as $key=>$item):  ?>
        <li class="<?php echo ($key%2) ? "odd" : "even"; if(count($items)==$key+1) echo ' lastItem'; ?>">
            <!-- Plugins: BeforeDisplay -->
            <?php echo $item->event->BeforeDisplay; ?>

            <!-- K2 Plugins: K2BeforeDisplay -->
            <?php echo $item->event->K2BeforeDisplay; ?>

            <?php if($params->get('itemAuthorAvatar')): ?>
            <a class="k2Avatar moduleItemAuthorAvatar" rel="author" href="<?php echo $item->authorLink; ?>">
                <img src="<?php echo $item->authorAvatar; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->author); ?>" style="width:<?php echo $avatarWidth; ?>px;height:auto;" />
            </a>
            <?php endif; ?>

            <?php if($params->get('itemTitle')): ?>
            <a class="moduleItemTitle" href="<?php echo $item->link; ?>"><?php echo $item->title; ?></a>
            <?php endif; ?>

            <?php if($params->get('itemAuthor')): ?>
            <div class="moduleItemAuthor">
                <?php echo K2HelperUtilities::writtenBy($item->authorGender); ?>

                <?php if(isset($item->authorLink)): ?>
                <a rel="author" title="<?php echo K2HelperUtilities::cleanHtml($item->author); ?>" href="<?php echo $item->authorLink; ?>">
                    <?php echo $item->author; ?>
                </a>
                <?php else: ?>
                <?php echo $item->author; ?>
                <?php endif; ?>

                <?php if($params->get('userDescription')): ?>
                <?php echo $item->authorDescription; ?>
                <?php endif; ?>
            </div>
            <?php endif; ?>

            <!-- Plugins: AfterDisplayTitle -->
            <?php echo $item->event->AfterDisplayTitle; ?>

            <!-- K2 Plugins: K2AfterDisplayTitle -->
            <?php echo $item->event->K2AfterDisplayTitle; ?>

            <!-- Plugins: BeforeDisplayContent -->
            <?php echo $item->event->BeforeDisplayContent; ?>

            <!-- K2 Plugins: K2BeforeDisplayContent -->
            <?php echo $item->event->K2BeforeDisplayContent; ?>

            <?php if($params->get('itemImage') || $params->get('itemIntroText')): ?>
            <div class="moduleItemIntrotext">
                <?php if($params->get('itemImage') && !empty($item->image)): ?>
                <a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> &quot;<?php echo K2HelperUtilities::cleanHtml($item->title); ?>&quot;">
                    <img src="<?php echo $item->image; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?>" />
                </a>
                <?php endif; ?>

                <?php if($params->get('itemIntroText')): ?>
                <?php echo $item->introtext; ?>
                <?php endif; ?>
            </div>
            <?php endif; ?>

            <?php if($params->get('itemExtraFields') && isset($item->extra_fields) && count($item->extra_fields)): ?>
            <div class="moduleItemExtraFields">
                <b><?php echo JText::_('K2_ADDITIONAL_INFO'); ?></b>
                <ul>
                    <?php foreach ($item->extra_fields as $key => $extraField): ?>
                    <?php if($extraField->value != ''): ?>
                    <li class="<?php echo ($key%2) ? "odd" : "even"; ?> type<?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?> alias<?php echo ucfirst($extraField->alias); ?>">
                        <?php if($extraField->type == 'header'): ?>
                        <h4 class="moduleItemExtraFieldsHeader"><?php echo $extraField->name; ?></h4>
                        <?php else: ?>
                        <span class="moduleItemExtraFieldsLabel"><?php echo $extraField->name; ?></span>
                        <span class="moduleItemExtraFieldsValue"><?php echo $extraField->value; ?></span>
                        <?php endif; ?>
                        <div class="clr"></div>
                    </li>
                    <?php endif; ?>
                    <?php endforeach; ?>
                </ul>
            </div>
            <?php endif; ?>

            <div class="clr"></div>

            <?php if($params->get('itemVideo') && !empty($item->video)): ?>
            <div class="moduleItemVideo">
                <?php echo $item->video; ?>
                <span class="moduleItemVideoCaption"><?php echo $item->video_caption; ?></span>
                <span class="moduleItemVideoCredits"><?php echo $item->video_credits; ?></span>
            </div>
            <?php endif; ?>

            <div class="clr"></div>

            <!-- Plugins: AfterDisplayContent -->
            <?php echo $item->event->AfterDisplayContent; ?>

            <!-- K2 Plugins: K2AfterDisplayContent -->
            <?php echo $item->event->K2AfterDisplayContent; ?>

            <?php if($params->get('itemDateCreated')): ?>
            <span class="moduleItemDateCreated">
                <?php echo JText::_('K2_WRITTEN_ON'); ?> <?php echo JHTML::_('date', $item->created, JText::_('K2_DATE_FORMAT_LC2')); ?>
            </span>
            <?php endif; ?>

            <?php if($params->get('itemCategory')): ?>
            <?php echo JText::_('K2_IN'); ?> <a class="moduleItemCategory" href="<?php echo $item->categoryLink; ?>"><?php echo $item->categoryname; ?></a>
            <?php endif; ?>

            <?php if($params->get('itemTags') && isset($item->tags) && count($item->tags) > 0): ?>
            <div class="moduleItemTags">
                <b><?php echo JText::_('K2_TAGS'); ?>:</b>
                <?php foreach ($item->tags as $tag): ?>
                <a href="<?php echo $tag->link; ?>"><?php echo $tag->name; ?></a>
                <?php endforeach; ?>
            </div>
            <?php endif; ?>

            <?php if($params->get('itemAttachments') && isset($item->attachments) && count($item->attachments)): ?>
            <div class="moduleAttachments">
                <?php foreach ($item->attachments as $attachment): ?>
                <a title="<?php echo K2HelperUtilities::cleanHtml($attachment->titleAttribute); ?>" href="<?php echo $attachment->link; ?>">
                    <?php echo $attachment->title; ?>
                </a>
                <?php endforeach; ?>
            </div>
            <?php endif; ?>

            <?php if($params->get('itemCommentsCounter') && $componentParams->get('comments')): ?>
            <?php if(!empty($item->event->K2CommentsCounter)): ?>
            <!-- K2 Plugins: K2CommentsCounter -->
            <?php echo $item->event->K2CommentsCounter; ?>
            <?php else: ?>
            <?php if($item->numOfComments>0): ?>
            <a class="moduleItemComments" href="<?php echo $item->link.'#itemCommentsAnchor'; ?>">
                <?php echo $item->numOfComments; ?> <?php if($item->numOfComments>1) echo JText::_('K2_COMMENTS'); else echo JText::_('K2_COMMENT'); ?>
            </a>
            <?php else: ?>
            <a class="moduleItemComments" href="<?php echo $item->link.'#itemCommentsAnchor'; ?>">
                <?php echo JText::_('K2_BE_THE_FIRST_TO_COMMENT'); ?>
            </a>
            <?php endif; ?>
            <?php endif; ?>
            <?php endif; ?>

            <?php if($params->get('itemHits')): ?>
            <span class="moduleItemHits">
                <?php echo JText::_('K2_READ'); ?> <?php echo $item->hits; ?> <?php echo JText::_('K2_TIMES'); ?>
            </span>
            <?php endif; ?>

            <?php if($params->get('itemReadMore') && $item->fulltext): ?>
            <a class="moduleItemReadMore" href="<?php echo $item->link; ?>">
                <?php echo JText::_('K2_READ_MORE'); ?>
            </a>
            <?php endif; ?>

            <!-- Plugins: AfterDisplay -->
            <?php echo $item->event->AfterDisplay; ?>

            <!-- K2 Plugins: K2AfterDisplay -->
            <?php echo $item->event->K2AfterDisplay; ?>

            <div class="clr"></div>
        </li>
        <?php endforeach; ?>
        <li class="clearList"></li>
    </ul>
    <?php endif; ?>

    <?php if($params->get('itemCustomLink')): ?>
    <a class="moduleCustomLink" href="<?php echo $itemCustomLinkURL; ?>" title="<?php echo K2HelperUtilities::cleanHtml($itemCustomLinkTitle); ?>">
        <?php echo $itemCustomLinkTitle; ?>
    </a>
    <?php endif; ?>

    <?php if($params->get('feed')): ?>
    <div class="k2FeedIcon">
        <a href="<?php echo JRoute::_('index.php?option=com_k2&view=itemlist&format=feed&moduleID='.$module->id); ?>" title="<?php echo JText::_('K2_SUBSCRIBE_TO_THIS_RSS_FEED'); ?>">
            <i class="icon-feed"></i>
            <span><?php echo JText::_('K2_SUBSCRIBE_TO_THIS_RSS_FEED'); ?></span>
        </a>
        <div class="clr"></div>
    </div>
    <?php endif; ?>
</div>
PK       ! Ä}ËåI&  I&    tmpl/default.phpnu bS€Å        <?php
/**
 * @version    2.11 (rolling release)
 * @package    K2
 * @author     JoomlaWorks https://www.joomlaworks.net
 * @copyright  Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved.
 * @license    GNU/GPL: https://gnu.org/licenses/gpl.html
 */

// no direct access
defined('_JEXEC') or die;

?>

<div id="k2ModuleBox<?php echo $module->id; ?>" class="k2ItemsBlock<?php if($params->get('moduleclass_sfx')) echo ' '.$params->get('moduleclass_sfx'); ?>">
    <?php if($params->get('itemPreText')): ?>
    <p class="modulePretext"><?php echo $params->get('itemPreText'); ?></p>
    <?php endif; ?>

    <?php if(isset($items) && count($items)): ?>
    <ul>
        <?php foreach ($items as $key=>$item):  ?>
        <li class="<?php echo ($key%2) ? "odd" : "even"; if(count($items)==$key+1) echo ' lastItem'; ?>">
            <!-- Plugins: BeforeDisplay -->
            <?php echo $item->event->BeforeDisplay; ?>

            <!-- K2 Plugins: K2BeforeDisplay -->
            <?php echo $item->event->K2BeforeDisplay; ?>

            <?php if($params->get('itemAuthorAvatar')): ?>
            <a class="k2Avatar moduleItemAuthorAvatar" rel="author" href="<?php echo $item->authorLink; ?>">
                <img src="<?php echo $item->authorAvatar; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->author); ?>" style="width:<?php echo $avatarWidth; ?>px;height:auto;" />
            </a>
            <?php endif; ?>

            <?php if($params->get('itemTitle')): ?>
            <a class="moduleItemTitle" href="<?php echo $item->link; ?>"><?php echo $item->title; ?></a>
            <?php endif; ?>

            <?php if($params->get('itemAuthor')): ?>
            <div class="moduleItemAuthor">
                <?php echo K2HelperUtilities::writtenBy($item->authorGender); ?>

                <?php if(isset($item->authorLink)): ?>
                <a rel="author" title="<?php echo K2HelperUtilities::cleanHtml($item->author); ?>" href="<?php echo $item->authorLink; ?>">
                    <?php echo $item->author; ?>
                </a>
                <?php else: ?>
                <?php echo $item->author; ?>
                <?php endif; ?>

                <?php if($params->get('userDescription')): ?>
                <?php echo $item->authorDescription; ?>
                <?php endif; ?>
            </div>
            <?php endif; ?>

            <!-- Plugins: AfterDisplayTitle -->
            <?php echo $item->event->AfterDisplayTitle; ?>

            <!-- K2 Plugins: K2AfterDisplayTitle -->
            <?php echo $item->event->K2AfterDisplayTitle; ?>

            <!-- Plugins: BeforeDisplayContent -->
            <?php echo $item->event->BeforeDisplayContent; ?>

            <!-- K2 Plugins: K2BeforeDisplayContent -->
            <?php echo $item->event->K2BeforeDisplayContent; ?>

            <?php if($params->get('itemImage') || $params->get('itemIntroText')): ?>
            <div class="moduleItemIntrotext">
                <?php if($params->get('itemImage') && !empty($item->image)): ?>
                <a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> &quot;<?php echo K2HelperUtilities::cleanHtml($item->title); ?>&quot;">
                    <img src="<?php echo $item->image; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?>" />
                </a>
                <?php endif; ?>

                <?php if($params->get('itemIntroText')): ?>
                <?php echo $item->introtext; ?>
                <?php endif; ?>
            </div>
            <?php endif; ?>

            <?php if($params->get('itemExtraFields') && isset($item->extra_fields) && count($item->extra_fields)): ?>
            <div class="moduleItemExtraFields">
                <b><?php echo JText::_('K2_ADDITIONAL_INFO'); ?></b>
                <ul>
                    <?php foreach ($item->extra_fields as $key => $extraField): ?>
                    <?php if($extraField->value != ''): ?>
                    <li class="<?php echo ($key%2) ? "odd" : "even"; ?> type<?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?> alias<?php echo ucfirst($extraField->alias); ?>">
                        <?php if($extraField->type == 'header'): ?>
                        <h4 class="moduleItemExtraFieldsHeader"><?php echo $extraField->name; ?></h4>
                        <?php else: ?>
                        <span class="moduleItemExtraFieldsLabel"><?php echo $extraField->name; ?></span>
                        <span class="moduleItemExtraFieldsValue"><?php echo $extraField->value; ?></span>
                        <?php endif; ?>
                        <div class="clr"></div>
                    </li>
                    <?php endif; ?>
                    <?php endforeach; ?>
                </ul>
            </div>
            <?php endif; ?>

            <div class="clr"></div>

            <?php if($params->get('itemVideo') && !empty($item->video)): ?>
            <div class="moduleItemVideo">
                <?php echo $item->video; ?>
                <span class="moduleItemVideoCaption"><?php echo $item->video_caption; ?></span>
                <span class="moduleItemVideoCredits"><?php echo $item->video_credits; ?></span>
            </div>
            <?php endif; ?>

            <div class="clr"></div>

            <!-- Plugins: AfterDisplayContent -->
            <?php echo $item->event->AfterDisplayContent; ?>

            <!-- K2 Plugins: K2AfterDisplayContent -->
            <?php echo $item->event->K2AfterDisplayContent; ?>

            <?php if($params->get('itemDateCreated')): ?>
            <span class="moduleItemDateCreated">
                <?php echo JText::_('K2_WRITTEN_ON'); ?> <?php echo JHTML::_('date', $item->created, JText::_('K2_DATE_FORMAT_LC2')); ?>
            </span>
            <?php endif; ?>

            <?php if($params->get('itemCategory')): ?>
            <?php echo JText::_('K2_IN'); ?> <a class="moduleItemCategory" href="<?php echo $item->categoryLink; ?>"><?php echo $item->categoryname; ?></a>
            <?php endif; ?>

            <?php if($params->get('itemTags') && isset($item->tags) && count($item->tags) > 0): ?>
            <div class="moduleItemTags">
                <b><?php echo JText::_('K2_TAGS'); ?>:</b>
                <?php foreach ($item->tags as $tag): ?>
                <a href="<?php echo $tag->link; ?>"><?php echo $tag->name; ?></a>
                <?php endforeach; ?>
            </div>
            <?php endif; ?>

            <?php if($params->get('itemAttachments') && isset($item->attachments) && count($item->attachments)): ?>
            <div class="moduleAttachments">
                <?php foreach ($item->attachments as $attachment): ?>
                <a title="<?php echo K2HelperUtilities::cleanHtml($attachment->titleAttribute); ?>" href="<?php echo $attachment->link; ?>">
                    <?php echo $attachment->title; ?>
                </a>
                <?php endforeach; ?>
            </div>
            <?php endif; ?>

            <?php if($params->get('itemCommentsCounter') && $componentParams->get('comments')): ?>
            <?php if(!empty($item->event->K2CommentsCounter)): ?>
            <!-- K2 Plugins: K2CommentsCounter -->
            <?php echo $item->event->K2CommentsCounter; ?>
            <?php else: ?>
            <?php if($item->numOfComments>0): ?>
            <a class="moduleItemComments" href="<?php echo $item->link.'#itemCommentsAnchor'; ?>">
                <?php echo $item->numOfComments; ?> <?php if($item->numOfComments>1) echo JText::_('K2_COMMENTS'); else echo JText::_('K2_COMMENT'); ?>
            </a>
            <?php else: ?>
            <a class="moduleItemComments" href="<?php echo $item->link.'#itemCommentsAnchor'; ?>">
                <?php echo JText::_('K2_BE_THE_FIRST_TO_COMMENT'); ?>
            </a>
            <?php endif; ?>
            <?php endif; ?>
            <?php endif; ?>

            <?php if($params->get('itemHits')): ?>
            <span class="moduleItemHits">
                <?php echo JText::_('K2_READ'); ?> <?php echo $item->hits; ?> <?php echo JText::_('K2_TIMES'); ?>
            </span>
            <?php endif; ?>

            <?php if($params->get('itemReadMore') && $item->fulltext): ?>
            <a class="moduleItemReadMore" href="<?php echo $item->link; ?>">
                <?php echo JText::_('K2_READ_MORE'); ?>
            </a>
            <?php endif; ?>

            <!-- Plugins: AfterDisplay -->
            <?php echo $item->event->AfterDisplay; ?>

            <!-- K2 Plugins: K2AfterDisplay -->
            <?php echo $item->event->K2AfterDisplay; ?>

            <div class="clr"></div>
        </li>
        <?php endforeach; ?>
        <li class="clearList"></li>
    </ul>
    <?php endif; ?>

    <?php if($params->get('itemCustomLink')): ?>
    <a class="moduleCustomLink" href="<?php echo $itemCustomLinkURL; ?>" title="<?php echo K2HelperUtilities::cleanHtml($itemCustomLinkTitle); ?>">
        <?php echo $itemCustomLinkTitle; ?>
    </a>
    <?php endif; ?>

    <?php if($params->get('feed')): ?>
    <div class="k2FeedIcon">
        <a href="<?php echo JRoute::_('index.php?option=com_k2&view=itemlist&format=feed&moduleID='.$module->id); ?>" title="<?php echo JText::_('K2_SUBSCRIBE_TO_THIS_RSS_FEED'); ?>">
            <i class="icon-feed"></i>
            <span><?php echo JText::_('K2_SUBSCRIBE_TO_THIS_RSS_FEED'); ?></span>
        </a>
        <div class="clr"></div>
    </div>
    <?php endif; ?>
</div>
PK         ! 'ŸèSD8  D8                  mod_k2_content.xmlnu bS€Å        PK         ! jP+ÝW	  W	              †8  mod_k2_content.phpnu bS€Å        PK         ! É#o,   ,   
            B  index.htmlnu bS€Å        PK         ! w ²ÿhg  hg  
            …B  helper.phpnu bS€Å        PK         ! ÿêx%  x%              'ª  tmpl/Default/default.phpnu bS€Å        PK         ! Ä}ËåI&  I&              çÏ  tmpl/default.phpnu bS€Å        PK      à  pö    