function processImage(&$item, $lazyload = 0) { $image_arr = array(); // set $image_arr if (!preg_match_all("/\\<img[^\\>]*>/", $item->introtext, $image_arr)) { return; } foreach ($image_arr[0] as $image) { // $i_info if (!preg_match('#(<img.*)src\\s*=\\s*(["\'])(.*?)\\2(.*\\/?>)#im', $image, $i_info)) { continue; } // replace all image $str = preg_replace("/\\<img[^\\>]*>/", '', $item->introtext); $str = preg_replace("/<div class=\"mosimage\".*<\\/div>/", '', $str); //replace all <p></p> $str = preg_replace("/<p><\\/p>/", '', $str); // trim introtext $item->introtext = trim($str); $imagSource = JPATH_SITE . DS . str_replace('/', DS, $i_info[3]); if (file_exists($imagSource) && is_file($imagSource) || !strpos($i_info[3], 'http:')) { $imgResizeConfig = array('background' => $this->thumbnail_background, 'thumbnail_mode' => $this->thumbnail_mode); YtUtils::getImageResizerHelper($imgResizeConfig); $i_src = YtUtils::resize($i_info[3], $this->width, $this->height, $this->thumbnail_mode); if ($lazyload == 0) { return $i_info[1] . "src=" . $i_info[2] . $i_src . $i_info[2] . $i_info[4]; } else { return $i_info[1] . "src=" . $i_info[2] . JURI::base() . 'templates/' . JFactory::getApplication()->getTemplate() . "/images/white.gif" . $i_info[2] . " data-original=" . $i_info[2] . $i_src . $i_info[2] . $i_info[4]; } } else { return ''; } } }
public function getRootCategories($catIds, $params) { $categories = array(); $query = "\n\t\t\t\tSELECT c.id, c.name as title, c.alias, c.description, c.image as img\n\t\t\t\tFROM #__k2_categories c\n\t\t\t\tWHERE\n\t\t\t\t\tc.published = 1\n\t\t\t\t\tAND c.id IN ({$catIds})\n\t\t\t"; $this->db->setQuery($query); $rows = $this->db->loadObjectList(); // prepare for image resize. $imgResizeConfig = array('background' => $params->item_thumbnail_background, 'thumbnail_mode' => $params->item_thumbnail_mode); YtUtils::getImageResizerHelper($imgResizeConfig); foreach ($rows as $category) { $categories[$category->id] = $category; // category url $category->url = urldecode(JRoute::_(K2HelperRoute::getCategoryRoute($category->id . ':' . urlencode($category->alias)))); // category title truncate $category->title = YtUtils::shorten($category->title, $params->title_max_chars); // $category->image_urls = YtUtils::extractImages(& $category->description); if (!empty($category->img) && file_exists(JPATH_SITE . DS . 'media' . DS . 'k2' . DS . 'categories' . DS . $category->img)) { $category->image_urls = array('media' . DS . 'k2' . DS . 'categories' . DS . $category->img); YtUtils::extractImages($category->description); } else { $category->image_urls = YtUtils::extractImages($category->description); } $category->description = strip_tags($category->description); if ('none' == $params->item_thumbnail_mode) { $category->image = empty($category->image_urls) ? JURI::base() . 'modules/mod_sj_k2_categories_ii/assets/images/nophoto.gif' : $category->image_urls[0]; } else { $category->image = empty($category->image_urls) ? JURI::base() . 'modules/mod_sj_k2_categories_ii/assets/images/nophoto.gif' : $category->image_urls[0]; if (false != $category->image && !YtUtils::isUrl($category->image)) { $imagefile = JPath::find(JPATH_SITE, $category->image); $category->image = YtUtils::resize($imagefile, $params->item_thumbnail_width, $params->item_thumbnail_height, $params->item_thumbnail_mode); if (!$category->image) { $category->image = JURI::base() . 'modules/mod_sj_k2_categories_ii/assets/images/nophoto.gif'; } } } } return $categories; }
if ($images->image_intro_caption) { $img_resize .= 'class="caption" title="' . htmlspecialchars($images->image_intro_caption) . '"'; } $img_resize .= '/>'; } else { $img_resize = $yti->processImage($this->item); } } else { $yti->width = $this->templateParams->get('intro_width', '200'); $yti->height = $this->templateParams->get('intro_height', '200'); if (isset($images->image_intro) and !empty($images->image_intro)) { $this->item->introtext = trim(preg_replace("/\\<img[^\\>]*>/", '', $this->item->introtext)); $this->item->introtext = preg_replace("/<p><\\/p>/", '', $this->item->introtext); $imgResizeConfig = array('background' => $yti->thumbnail_background, 'thumbnail_mode' => $yti->thumbnail_mode); YtUtils::getImageResizerHelper($imgResizeConfig); $src = YtUtils::resize($images->image_intro, $yti->width, $yti->height, $yti->thumbnail_mode); $img_resize = '<img src="' . $src . '" alt="' . htmlspecialchars($images->image_intro_alt) . '"'; if ($images->image_intro_caption) { $img_resize .= 'class="caption" title="' . htmlspecialchars($images->image_intro_caption) . '"'; } $img_resize .= '/>'; } else { $img_resize = $yti->processImage($this->item); } } } if (isset($images->image_intro) and !empty($images->image_intro)) { $imgfloat = empty($images->float_intro) ? '-' . $params->get('float_intro') : '-' . $images->float_intro; } else { $imgfloat = ''; }