PEAK XOOPS - Re: backend.php & EMLH & string cut description 125byte in englishin japanese

Re: backend.php & EMLH & string cut description 125byte

List posts in the topic

normal Re: backend.php & EMLH & string cut description 125byte

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1
depth:
21
Previous post - Next post | Parent - Children.1 | Posted on 2005/4/18 10:51
domifara  一等兵   Posts: 19
I did as follows for string cut description 125byte
It edits it the language of "description" ahead.
backend.php
'description' => xoops_utf8_encode(htmlspecialchars($story->hometext(), ENT_QUOTES))
to
'description' => xoops_utf8_encode(htmlspecialchars(xoops_substr(easiestml($story->hometext()) , 0 ,125), ENT_QUOTES))

and cache HACK
all lines
<?php
// $Id: backend.php,v 1.12 2003/09/26 07:14:00 okazu Exp $
//  ------------------------------------------------------------------------ //
//                XOOPS - PHP Content Management System                      //
//                    Copyright (c) 2000 XOOPS.org                           //
//                       <http://www.xoops.org/>                             //
//  ------------------------------------------------------------------------ //
//  This program is free software; you can redistribute it and/or modify     //
//  it under the terms of the GNU General Public License as published by     //
//  the Free Software Foundation; either version 2 of the License, or        //
//  (at your option) any later version.                                      //
//                                                                           //
//  You may not change or alter any portion of this comment or credits       //
//  of supporting developers from this source code or any supporting         //
//  source code which is considered copyrighted (c) material of the          //
//  original comment or credit authors.                                      //
//                                                                           //
//  This program is distributed in the hope that it will be useful,          //
//  but WITHOUT ANY WARRANTY; without even the implied warranty of           //
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            //
//  GNU General Public License for more details.                             //
//                                                                           //
//  You should have received a copy of the GNU General Public License        //
//  along with this program; if not, write to the Free Software              //
//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA //
//  ------------------------------------------------------------------------ //
include 'mainfile.php';
//HACK for no error message ,error_reporting off hack by domifara 2005/4/10 
$_rss_old_error_level = error_reporting(0) ;
include_once XOOPS_ROOT_PATH.'/class/template.php';
include_once XOOPS_ROOT_PATH.'/modules/news/class/class.newsstory.php';
if (function_exists('mb_http_output')) {
	mb_http_output('pass');
}
header ('Content-Type:text/xml; charset=utf-8');
$tpl = new XoopsTpl();
if( @is_object( $xoopsUser ) && $xoopsUser->isAdmin(1) ) {
	$tpl->xoops_setCaching(0);
	$tpl->xoops_setCacheTime(0);
} else {
	$tpl->xoops_setCaching(2);
	$tpl->xoops_setCacheTime(3600);
}
//HACK for each lang cache hack by domifara 2005/4/18 
if (function_exists('easiestml') && isset($easiestml_lang)) {
	$backend_cache_lang = $easiestml_lang;
} else {
	$backend_cache_lang = $GLOBALS['xoopsConfig']['language'];
}
//if (!$tpl->is_cached('db:system_rss.html')) {
$xoopsCachedTemplateId = 'backend_'.'|'.md5( __FILE__ . $backend_cache_lang);
if (!$tpl->is_cached('db:system_rss.html' , $xoopsCachedTemplateId)) {
	$sarray = NewsStory::getAllPublished(10, 0);
	if (is_array($sarray)) {
		$tpl->assign('channel_title', xoops_utf8_encode(htmlspecialchars($xoopsConfig['sitename'], ENT_QUOTES)));
		$tpl->assign('channel_link', XOOPS_URL.'/');
		$tpl->assign('channel_desc', xoops_utf8_encode(htmlspecialchars($xoopsConfig['slogan'], ENT_QUOTES)));
		$tpl->assign('channel_lastbuild', formatTimestamp(time(), 'rss'));
		$tpl->assign('channel_webmaster', $xoopsConfig['adminmail']);
		$tpl->assign('channel_editor', $xoopsConfig['adminmail']);
		$tpl->assign('channel_category', 'News');
		$tpl->assign('channel_generator', 'XOOPS');
		$tpl->assign('channel_language', _LANGCODE);
		$tpl->assign('image_url', XOOPS_URL.'/images/logo.gif');
		$dimention = getimagesize(XOOPS_ROOT_PATH.'/images/logo.gif');
		if (empty($dimention[0])) {
			$width = 88;
		} else {
			$width = ($dimention[0] > 144) ? 144 : $dimention[0];
		}
		if (empty($dimention[1])) {
			$height = 31;
		} else {
			$height = ($dimention[1] > 400) ? 400 : $dimention[1];
		}
		$tpl->assign('image_width', $width);
		$tpl->assign('image_height', $height);
		$count = $sarray;
		foreach ($sarray as $story) {
			//HACK for each lang $description 125 byte strings hack by domifara 2005/4/18 
			$description = $story->hometext();
			if (function_exists('easiestml') && isset($easiestml_lang)) {
				$description = easiestml($description);
			}
			$description = xoops_substr($description , 0 ,125) ;
			$tpl->append('items',
					array(
					'title' => xoops_utf8_encode(htmlspecialchars($story->title(),ENT_QUOTES)),
					'link' => XOOPS_URL.'/modules/news/article.php?storyid='.$story->storyid(),
					'guid' => XOOPS_URL.'/modules/news/article.php?storyid='.$story->storyid(),
					'pubdate' => formatTimestamp($story->published(), 'rss'),
					'description' => xoops_utf8_encode(htmlspecialchars($description, ENT_QUOTES))
					)
				);
		}
	}
}
//HACK by domifara
//$tpl->display('db:system_rss.html');
$tpl->display('db:system_rss.html' , $xoopsCachedTemplateId);
// error_reporting off hack by domifara 2004/4/8 
error_reporting($_rss_old_error_level) ;
?>
Votes:12 Average:10.00

Posts tree

  Advanced search


Login
Username or e-mail:

Password:

Remember Me

Lost Password?

Register now!