| Server IP : 46.105.57.169 / Your IP : 216.73.217.35 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/123click/assets/ |
Upload File : |
helper.php 0000604 00000011016 15075050554 0006535 0 ustar 00 <?php
/**
* @package SP Simple Portfolio
* @subpackage mod_spsimpleportfolio
*
* @copyright Copyright (C) 2010 - 2018 JoomShaper. All rights reserved.
* @license GNU General Public License version 2 or later.
*/
defined('_JEXEC') or die;
class ModSpsimpleportfolioHelper {
public static function getItems($params) {
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('a.*, a.id AS spsimpleportfolio_item_id , a.tagids AS spsimpleportfolio_tag_id, a.created AS created_on')
->from($db->quoteName('#__spsimpleportfolio_items', 'a'))
->where($db->quoteName('a.published') . ' = 1');
//has category
if ($params->get('category_id') != '') {
$query->where($db->qn('a.catid')." = ".$db->quote( $params->get('category_id') ));
}
$query->where($db->quoteName('a.access')." IN (" . implode( ',', JFactory::getUser()->getAuthorisedViewLevels() ) . ")")
->order($db->quoteName('a.ordering') . ' ASC')
->setLimit($params->get('limit', 6));
$db->setQuery($query);
$items = $db->loadObjectList();
// Items Model
jimport('joomla.application.component.model');
JModelLegacy::addIncludePath(JPATH_SITE . '/components/com_spsimpleportfolio/models');
$itemsModel = JModelLegacy::getInstance('Items', 'SpsimpleportfolioModel');
$i = 0;
foreach ($items as $key => & $item) {
$tags = $itemsModel->getItemTags($item->tagids);
$newtags = array();
$filter = '';
$groups = array();
foreach ($tags as $tag) {
$newtags[] = $tag->title;
$filter .= ' ' . $tag->alias;
$groups[] .= '"' . $tag->alias . '"';
}
$item->groups = implode(',', $groups);
$item->tags = $newtags;
// Sizes
$square = strtolower($params->get('square', '600x600'));
$tower = strtolower($params->get('tower', '600X800'));
$rectangle = strtolower($params->get('rectangle', '600x400'));
$tower = strtolower($params->get('tower', '600x800'));
$sizes = array(
$rectangle,
$tower,
$square,
$tower,
$rectangle,
$square,
$square,
$rectangle,
$tower,
$square,
$tower,
$rectangle
);
$thumb_type = $params->get('thumbnail_type', 'masonry');
if($thumb_type == 'masonry') {
$item->thumb = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_' . $sizes[$i] . '.' . JFile::getExt($item->image);
} else if($thumb_type == 'rectangular') {
$item->thumb = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_'. $rectangle .'.' . JFile::getExt($item->image);
} else if($thumb_type == 'tower') {
$item->thumb = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_'. $tower .'.' . JFile::getExt($item->image);
} else {
$item->thumb = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_'. $square .'.' . JFile::getExt($item->image);
}
// tower
$popup_image = $params->get('popup_image', 'default');
if($popup_image == 'quare') {
$item->popup_img_url = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_'. $square .'.' . JFile::getExt($item->image);
} else if($popup_image == 'rectangle') {
$item->popup_img_url = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_'. $rectangle .'.' . JFile::getExt($item->image);
} else if($popup_image == 'tower') {
$item->popup_img_url = JURI::base(true) . '/images/spsimpleportfolio/' . $item->alias . '/' . JFile::stripExt(JFile::getName($item->image)) . '_'. $tower .'.' . JFile::getExt($item->image);
} else {
$item->popup_img_url = JURI::base() . $item->image;
}
$item->url = JRoute::_('index.php?option=com_spsimpleportfolio&view=item&id='. $item->id . ':' . $item->alias . self::getItemid());
$i++;
if($i==11) {
$i = 0;
}
}
return $items;
}
public static function getItemid() {
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select($db->quoteName(array('id')));
$query->from($db->quoteName('#__menu'));
$query->where($db->quoteName('link') . ' LIKE '. $db->quote('%option=com_spsimpleportfolio&view=items%'));
$query->where($db->quoteName('published') . ' = '. $db->quote('1'));
$db->setQuery($query);
$result = $db->loadResult();
if($result) {
return '&Itemid=' . $result;
}
return;
}
}
tmpl/default.php 0000604 00000007407 15075050554 0007667 0 ustar 00 <?php
/**
* @package SP Simple Portfolio
* @subpackage mod_spsimpleportfolio
*
* @copyright Copyright (C) 2010 - 2020 JoomShaper. All rights reserved.
* @license GNU General Public License version 2 or later.
*/
defined('_JEXEC') or die;
jimport( 'joomla.filesystem.file' );
$layout_type = $params->get('layout_type', 'default');
?>
<div id="mod-sp-simpleportfolio" class="sp-simpleportfolio sp-simpleportfolio-view-items layout-<?php echo str_replace('_', '-', $layout_type); ?> <?php echo $moduleclass_sfx; ?>">
<?php if($params->get('show_filter', 1)) { ?>
<div class="sp-simpleportfolio-filter">
<ul>
<li class="active" data-group="all"><a href="#"><?php echo JText::_('MOD_SPSIMPLEPORTFOLIO_SHOW_ALL'); ?></a></li>
<?php foreach ($tagList as $filter) { ?>
<li data-group="<?php echo $filter->alias; ?>"><a href="#"><?php echo $filter->title; ?></a></li>
<?php } ?>
</ul>
</div>
<?php } ?>
<?php
//Videos
foreach ($items as $item) {
if($item->video) {
$video = parse_url($item->video);
switch($video['host']) {
case 'youtu.be':
$video_id = trim($video['path'],'/');
$video_src = '//www.youtube.com/embed/' . $video_id;
break;
case 'www.youtube.com':
case 'youtube.com':
parse_str($video['query'], $query);
$video_id = $query['v'];
$video_src = '//www.youtube.com/embed/' . $video_id;
break;
case 'vimeo.com':
case 'www.vimeo.com':
$video_id = trim($video['path'],'/');
$video_src = "//player.vimeo.com/video/" . $video_id;
}
echo '<iframe class="sp-simpleportfolio-lightbox" src="'. $video_src .'" width="500" height="281" id="sp-simpleportfolio-video'.$item->spsimpleportfolio_item_id.'" style="border:none;" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>';
}
}
?>
<div class="sp-simpleportfolio-items sp-simpleportfolio-columns-<?php echo $params->get('columns', 3); ?>">
<?php foreach ($items as $item) { ?>
<div class="sp-simpleportfolio-item" data-groups='[<?php echo $item->groups; ?>]'>
<div class="sp-simpleportfolio-overlay-wrapper clearfix">
<?php if($item->video) { ?>
<span class="sp-simpleportfolio-icon-video"></span>
<?php } ?>
<img class="sp-simpleportfolio-img" src="<?php echo $item->thumb; ?>" alt="<?php echo $item->title; ?>">
<div class="sp-simpleportfolio-overlay">
<div class="sp-vertical-middle">
<div>
<div class="sp-simpleportfolio-btns">
<?php if( $item->video ) { ?>
<a class="btn-zoom" href="#" data-featherlight="#sp-simpleportfolio-video<?php echo $item->id; ?>"><?php echo JText::_('COM_SPSIMPLEPORTFOLIO_WATCH'); ?></a>
<?php } else { ?>
<a class="btn-zoom" href="<?php echo $item->popup_img_url; ?>" data-featherlight="image"><?php echo JText::_('MOD_SPSIMPLEPORTFOLIO_ZOOM'); ?></a>
<?php } ?>
<a class="btn-view" href="<?php echo $item->url; ?>"><?php echo JText::_('MOD_SPSIMPLEPORTFOLIO_VIEW'); ?></a>
</div>
<?php if($layout_type!='default') { ?>
<h3 class="sp-simpleportfolio-title">
<a href="<?php echo $item->url; ?>">
<?php echo $item->title; ?>
</a>
</h3>
<div class="sp-simpleportfolio-tags">
<?php echo implode(', ', $item->tags); ?>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
<?php if($layout_type=='default') { ?>
<div class="sp-simpleportfolio-info">
<h3 class="sp-simpleportfolio-title">
<a href="<?php echo $item->url; ?>">
<?php echo $item->title; ?>
</a>
</h3>
<div class="sp-simpleportfolio-tags">
<?php echo implode(', ', $item->tags); ?>
</div>
</div>
<?php } ?>
</div>
<?php } ?>
</div>
</div>
language/en-GB.mod_spsimpleportfolio.ini 0000604 00000007745 15075050554 0014367 0 ustar 00 ; Admin
MOD_SP_SIMPLEPORTFOLIO="SP SIMPLE PORTFOLIO"
MOD_SPSIMPLEPORTFOLIO_FIELD_LIMIT="Number of Items"
MOD_SPSIMPLEPORTFOLIO_FIELD_LIMIT_DESC="Please enter the number of items to display per page."
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_TYPES="Layout Settings"
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_TYPES_DESC="Select a layout from the list."
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_DEFAULT="Default"
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_GALLERY_SPACE="Gallery style with space"
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_GALLERY_NOSPACE="Gallery style without space"
MOD_SPSIMPLEPORTFOLIO_FIELD_COLUMNS="Columns"
MOD_SPSIMPLEPORTFOLIO_FIELD_COLUMNS_DESC="Select number of columns per row."
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_COLUMNS_2="2 Columns"
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_COLUMNS_3="3 Columns"
MOD_SPSIMPLEPORTFOLIO_FIELD_LAYOUT_COLUMNS_4="4 Columns"
MOD_SPSIMPLEPORTFOLIO_SHOW_FILTER_BUTTONS="Show Filters"
MOD_SPSIMPLEPORTFOLIO_SHOW_FILTER_BUTTONS_DESC="Enable to show filter buttons"
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_SIZE="Thumbnail Size"
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_SIZE_DESC="Select a thumbnail size which will show in the item list."
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_MASONRY="Masonry"
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_SQUARE="Square"
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_RECTANGULAR="Rectangular"
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_TOWER="Tower"
MOD_SPSIMPLEPORTFOLIO_THUMBNAIL_TYPE="Thumbnail Type"
MOD_SPSIMPLEPORTFOLIO_FIELD_POPUP_IMAGE="Popup Size"
MOD_SPSIMPLEPORTFOLIO_FIELD_POPUP_IMAGE_DESC="Select a popup image size from the list (select default for your default uploaded image)."
MOD_SPSIMPLEPORTFOLIO_FIELD_POPUP_IMAGE_DEFAULT="Default"
MOD_SPSIMPLEPORTFOLIO_FIELD_POPUP_IMAGE_SQUARE="Square"
MOD_SPSIMPLEPORTFOLIO_FIELD_POPUP_IMAGE_RECTANGLE="Rectangle"
MOD_SPSIMPLEPORTFOLIO_FIELD_POPUP_IMAGE_TOWER="Tower"
; Frontend
MOD_SPSIMPLEPORTFOLIO_SHOW_ALL="Show All"
MOD_SPSIMPLEPORTFOLIO_ZOOM="Zoom"
MOD_SPSIMPLEPORTFOLIO_WATCH="Watch"
MOD_SPSIMPLEPORTFOLIO_VIEW="View"
; Category
MOD_SPSIMPLEPORTFOLIO_CATEGORY="Select a category"
MOD_SPSIMPLEPORTFOLIO_CATEGORY_DESC=""
MOD_SPSIMPLEPORTFOLIO_CATEGORY_ALL="All Categories"
; FLEX’S ADD (SP Simple Portfolio)
COM_SPSIMPLEPORTFOLIO_SHOW_VIEW_BUTTON="Show “View” button"
COM_SPSIMPLEPORTFOLIO_SHOW_VIEW_BUTTON_DESC="Enables “View” button link to portfolio’s item details."
COM_SPSIMPLEPORTFOLIO_SHOW_ZOOM_BUTTON="Show “Zoom” button"
COM_SPSIMPLEPORTFOLIO_SHOW_ZOOM_BUTTON_DESC="Enables “Zoom” button to open image(s) in popup."
COM_SPSIMPLEPORTFOLIO_SHOW_TAGS="Show “Tags”"
COM_SPSIMPLEPORTFOLIO_SHOW_TAGS_DESC="Enables “Tag(s)” under the tile."
COM_SPSIMPLEPORTFOLIO_FIELD_FILTER_STYLE="Filter Style"
COM_SPSIMPLEPORTFOLIO_FIELD_FILTER_STYLE_DESC="Select Style for Filter from the list"
COM_SPSIMPLEPORTFOLIO_FIELD_FILTER_STYLE_SIMPLE="Simple"
COM_SPSIMPLEPORTFOLIO_FIELD_FILTER_STYLE_FLEX="Flex"
COM_SPPORTFOLIO_SHOW_FILTER_DIVIDER_LABEL="Filter Divider"
COM_SPPORTFOLIO_SHOW_FILTER_DIVIDER_LABEL_DESC="You can use text or icon as divider between filter tabs, for example: “/”, “~” or “{}”. Only for “Simple” filter style."
SPSIMPLEPORTFOLIO_COLUMN_BACKGROUND_COLOR="Column’s Background color"
SPSIMPLEPORTFOLIO_COLUMN_BACKGROUND_COLOR_DESC="Set column’s custom background color, if you don’t want default."
COM_SPPORTFOLIO_FILTER="Portfolio Filter"
COM_SPPORTFOLIO_SHOW_ALL_TXT_LABEL="Custom “Show All” text"
COM_SPPORTFOLIO_SHOW_ALL_TXT_DESC="“Show All” text for first tab/button in filter. Other tabs are dynamically named as tags you’ve created."
COM_SPPORTFOLIO_FILTER_MARGIN_LABEL="Margin between tags (px)"
COM_SPPORTFOLIO_FILTER_MARGIN_DESC="Custom margin (gap) between tags in filter."
COM_SPSIMPLEPORTFOLIO_VIDEO_WIDTH="Video width in lightbox"
COM_SPSIMPLEPORTFOLIO_VIDEO_WIDTH_DESC="Set the custom width (px) of video (iframe) in popup lightbox. Default: 700."
COM_SPSIMPLEPORTFOLIO_VIDEO_HEIGHT="Video height in lightbox"
COM_SPSIMPLEPORTFOLIO_VIDEO_HEIGHT_DESC="Set the custom height (px) of video (iframe) in popup lightbox. Default: 400."