1841
trabis
Re: Forms problem
  • 2007/12/29 2:37

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


Hi Edwinspie,
You only need 2 lines of code!

Open file liaise/include/form_render.php

Add around line 104:

$form_output->addElement(new XoopsFormHidden("ID"$ID));
//add this line
$form_output->addElement(new XoopsFormHidden("URL"$_SERVER['HTTP_REFERER']));
//end


Then open liaise/include/form_execute.php

Replace around line 276

//replace the original line for this one
$xoopsMailer->assign("MSG"$_POST['URL']."n".implode("n"$msg));
//end

if( count($err) < ){
    if( !
$xoopsMailer->send(true) ){
        
$err[] = $xoopsMailer->getErrors();
    }
}


Then just add a link to the liaise form under a product page.

I was needing this to, thanks for the sugestion!



1842
trabis
Re: How to make Submenu in a new block
  • 2007/12/29 0:08

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


I´ve just done a module with two blocks:
main menu block (does not show sub menu)
sub menu block (show related submenus if any)

Download 'userblocks' here:
http://www.xuups.com/userblocks.rar



1843
trabis
Re: How to make Submenu in a new block
  • 2007/12/28 14:07

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


I supose you have to clone(this is the hard part) that block and then remove from the template the menu and leave only the submenu.

Maybe there is another way, create a custom block that picks up the smarty vars of the other block. I´m not shure here.

Anyway, later I´ll give it a try!



1844
trabis
Re: mylinks admin submission auto approve
  • 2007/12/28 13:52

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


Hello sarahmx,
I supose you have autoaprove disable for users so, to enable autoaprove for the admin of the site:

in submit.php line 85
change to this:
if ( $xoopsModuleConfig['autoapprove'] == || $xoopsUser->isAdmin()) {
        
// RMV-FIXME: shouldn't this be 'APPROVE' or something (also in mydl)?
        
$status $xoopsModuleConfig['autoapprove'];
    } else {
        
$status 0;
    }


I have not tried but should work.



1845
trabis
Re: HOWTO: Accessing (Missing) PHP Variables in Theme/Smarty Templates
  • 2007/12/27 19:14

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


I tend to avoid hacking the core because it makes upgrades and updates of XOOPS core much harder to deal with.


I just thought you were a "core developer", that's why I said it. I did not mean 'hack it', I mean 'core it'.




1846
trabis
Re: HOWTO: Accessing (Missing) PHP Variables in Theme/Smarty Templates
  • 2007/12/24 18:51

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


It´s very good to know how to use php inside a smarty template but I miss the point.
You should do those DEFINE´s inside of common.php or something to get <{$smarty.const.DEFINES}> availiable in all templates.

Thanks!



1847
trabis
Re: Signed member in the comments?
  • 2007/12/24 18:29

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


System config options are set during install in install/makedata.php

Adding new options to system is up to the core team.

For now, if you don´t want to attached signatures in your comments, then you´d better not apply the patch.



1848
trabis
Re: Signed member in the comments?
  • 2007/12/24 16:19

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


Hello,
It's simple to do and it should be implemented in the next version of Xoops.

Just replace your root/class/commentrenderer.php with this content:

<?php
// $Id: commentrenderer.php 2 2005-11-02 18:23:29Z skalpa $
//  ------------------------------------------------------------------------ //
//                XOOPS - PHP Content Management System                      //
//                    Copyright (c) 2000 XOOPS.org                           //
//                       <https://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 //
//  ------------------------------------------------------------------------ //
// Author: Kazumi Ono (AKA onokazu)                                          //
// URL: https://xoops.org/ http://www.xoopscube.jp/  http://www.myweb.ne.jp/  //
// Project: The XOOPS Project (https://xoops.org/)                        //
// ------------------------------------------------------------------------- //
/**
 * Display comments
 *
 * @package        kernel
 * @subpackage    comment
 *
 * @author        Kazumi Ono     <onokazu@xoops.org>
 * @copyright    (c) 2000-2003 The XOOPS Project - www.xoops.org
 */
class XoopsCommentRenderer {

    
/**#@+
     * @access    private
     */
    
var $_tpl;
    var 
$_comments null;
    var 
$_useIcons true;
    var 
$_doIconCheck false;
    var 
$_memberHandler;
    var 
$_statusText;
    
/**#@-*/

    /**
     * Constructor
     * 
     * @param   object  &$tpl   
     * @param   boolean $use_icons
     * @param   boolean $do_iconcheck
     **/
    
function XoopsCommentRenderer(&$tpl$use_icons true$do_iconcheck false)
    {
        
$this->_tpl =& $tpl;
        
$this->_useIcons $use_icons;
        
$this->_doIconCheck $do_iconcheck;
        
$this->_memberHandler =& xoops_gethandler('member');
        
$this->_statusText = array(XOOPS_COMMENT_PENDING => '<span style="text-decoration: none; font-weight: bold; color: #00ff00;">'._CM_PENDING.'</span>'XOOPS_COMMENT_ACTIVE => '<span style="text-decoration: none; font-weight: bold; color: #ff0000;">'._CM_ACTIVE.'</span>'XOOPS_COMMENT_HIDDEN => '<span style="text-decoration: none; font-weight: bold; color: #0000ff;">'._CM_HIDDEN.'</span>');
    }

    
/**
     * Access the only instance of this class
     * 
     * @param   object  $tpl        reference to a {@link Smarty} object
     * @param   boolean $use_icons
     * @param   boolean $do_iconcheck
     * @return 
     **/
    
function &instance(&$tpl$use_icons true$do_iconcheck false)
    {
        static 
$instance;
        if (!isset(
$instance)) {
            
$instance = new XoopsCommentRenderer($tpl$use_icons$do_iconcheck);
        }
        return 
$instance;
    }

    
/**
     * Accessor
     * 
     * @param   object  &$comments_arr  array of {@link XoopsComment} objects
     **/
    
function setComments(&$comments_arr)
    {
        if (isset(
$this->_comments)) {
            unset(
$this->_comments);
        }
        
$this->_comments =& $comments_arr;
    }

    
/**
     * Render the comments in flat view
     * 
     * @param boolean $admin_view
     **/
    
function renderFlatView($admin_view false)
    {
        
$count count($this->_comments);
        for (
$i 0$i $count$i++) {
            if (
false != $this->_useIcons) {
                
$title $this->_getTitleIcon($this->_comments[$i]->getVar('com_icon')).'&nbsp;'.$this->_comments[$i]->getVar('com_title');
            } else {
                
$title $this->_comments[$i]->getVar('com_title');
            }
            
$poster $this->_getPosterArray($this->_comments[$i]->getVar('com_uid'));
            if (
false != $admin_view) {
                
$text $this->_getText($this->_comments[$i]->getVar('com_text'),$this->_comments[$i]->getVar('com_pid')).'<div style="text-align:right; margin-top: 2px; margin-bottom: 0px; margin-right: 2px;">'._CM_STATUS.': '.$this->_statusText[$this->_comments[$i]->getVar('com_status')].'<br />IP: <span style="font-weight: bold;">'.$this->_comments[$i]->getVar('com_ip').'</span></div>';
            } else {
                
// hide comments that are not active
                
if (XOOPS_COMMENT_ACTIVE != $this->_comments[$i]->getVar('com_status')) {
                    continue;
                } else {
                    
$text $this->_getText($this->_comments[$i]->getVar('com_text'),$this->_comments[$i]->getVar('com_pid'));
                }
            }
            
$this->_tpl->append('comments', array('id' => $this->_comments[$i]->getVar('com_id'), 'title' => $title'text' => $text'date_posted' => formatTimestamp($this->_comments[$i]->getVar('com_created'), 'm'), 'date_modified' => formatTimestamp($this->_comments[$i]->getVar('com_modified'), 'm'), 'poster' => $poster));
        }
    }

    
/**
     * Render the comments in thread view
     * 
     * This method calls itself recursively
     * 
     * @param integer $comment_id   Should be "0" when called by client
     * @param boolean $admin_view
     * @param boolean $show_nav
     **/
    
function renderThreadView($comment_id 0$admin_view false$show_nav true)
    {
        include_once 
XOOPS_ROOT_PATH.'/class/tree.php';
        
// construct comment tree
        
$xot = new XoopsObjectTree($this->_comments'com_id''com_pid''com_rootid');
        
$tree =& $xot->getTree();

        if (
false != $this->_useIcons) {
            
$title $this->_getTitleIcon($tree[$comment_id]['obj']->getVar('com_icon')).'&nbsp;'.$tree[$comment_id]['obj']->getVar('com_title');
        } else {
            
$title $tree[$comment_id]['obj']->getVar('com_title');
        }
        if (
false != $show_nav && $tree[$comment_id]['obj']->getVar('com_pid') != 0) {
            
$this->_tpl->assign('lang_top'_CM_TOP);
            
$this->_tpl->assign('lang_parent'_CM_PARENT);
            
$this->_tpl->assign('show_threadnav'true);
        } else {
            
$this->_tpl->assign('show_threadnav'false);
        }
        if (
false != $admin_view) {
            
// admins can see all
            
$text $this->_getText($tree[$comment_id]['obj']->getVar('com_text'),$tree[$comment_id]['obj']->getVar('com_pid')).'<div style="text-align:right; margin-top: 2px; margin-bottom: 0px; margin-right: 2px;">'._CM_STATUS.': '.$this->_statusText[$tree[$comment_id]['obj']->getVar('com_status')].'<br />IP: <span style="font-weight: bold;">'.$tree[$comment_id]['obj']->getVar('com_ip').'</span></div>';
        } else {
            
// hide comments that are not active
            
if (XOOPS_COMMENT_ACTIVE != $tree[$comment_id]['obj']->getVar('com_status')) {
                
// if there are any child comments, display them as root comments
                
if (isset($tree[$comment_id]['child']) && !empty($tree[$comment_id]['child'])) {
                    foreach (
$tree[$comment_id]['child'] as $child_id) {
                        
$this->renderThreadView($child_id$admin_viewfalse);
                    }
                }
                return;
            } else {
                
$text $this->_getText($tree[$comment_id]['obj']->getVar('com_text'),$tree[$comment_id]['obj']->getVar('com_pid'));
            }
        }
        
$replies = array();
        
$this->_renderThreadReplies($tree$comment_id$replies'&nbsp;&nbsp;'$admin_view);
        
$show_replies = (count($replies) > 0) ? true false;
        
$this->_tpl->append('comments', array('pid' => $tree[$comment_id]['obj']->getVar('com_pid'), 'id' => $tree[$comment_id]['obj']->getVar('com_id'), 'itemid' => $tree[$comment_id]['obj']->getVar('com_itemid'), 'rootid' => $tree[$comment_id]['obj']->getVar('com_rootid'), 'title' => $title'text' => $text'date_posted' => formatTimestamp($tree[$comment_id]['obj']->getVar('com_created'), 'm'), 'date_modified' => formatTimestamp($tree[$comment_id]['obj']->getVar('com_modified'), 'm'), 'poster' => $this->_getPosterArray($tree[$comment_id]['obj']->getVar('com_uid')), 'replies' => $replies'show_replies' => $show_replies));
    }

    
/**
     * Render replies to a thread
     * 
     * @param   array   &$thread
     * @param   int     $key
     * @param   array   $replies
     * @param   string  $prefix
     * @param   bool    $admin_view
     * @param   integer $depth
     * @param   string  $current_prefix
     * 
     * @access    private
     **/
    
function _renderThreadReplies(&$thread$key, &$replies$prefix$admin_view$depth 0$current_prefix '')
    {
        if (
$depth 0) {
            if (
false != $this->_useIcons) {
                
$title $this->_getTitleIcon($thread[$key]['obj']->getVar('com_icon')).'&nbsp;'.$thread[$key]['obj']->getVar('com_title');
            } else {
                
$title $thread[$key]['obj']->getVar('com_title');
            }
            
$title = (false != $admin_view) ? $title.' '.$this->_statusText[$thread[$key]['obj']->getVar('com_status')] : $title;
            
$replies[] = array('id' => $key'prefix' => $current_prefix'date_posted' => formatTimestamp($thread[$key]['obj']->getVar('com_created'), 'm'), 'title' => $title'root_id' => $thread[$key]['obj']->getVar('com_rootid'), 'status' => $this->_statusText[$thread[$key]['obj']->getVar('com_status')], 'poster' => $this->_getPosterName($thread[$key]['obj']->getVar('com_uid')));
            
$current_prefix .= $prefix;
        }
        if (isset(
$thread[$key]['child']) && !empty($thread[$key]['child'])) {
            
$depth++;
            foreach (
$thread[$key]['child'] as $childkey) {
                if (!
$admin_view && $thread[$childkey]['obj']->getVar('com_status') != XOOPS_COMMENT_ACTIVE) {
                    
// skip this comment if it is not active and continue on processing its child comments instead
                    
if (isset($thread[$childkey]['child']) && !empty($thread[$childkey]['child'])) {
                        foreach (
$thread[$childkey]['child'] as $childchildkey) {
                            
$this->_renderThreadReplies($thread$childchildkey$replies$prefix$admin_view$depth);
                        }
                    }
                } else {
                    
$this->_renderThreadReplies($thread$childkey$replies$prefix$admin_view$depth$current_prefix);
                }
            }
        }
    }

    
/**
     * Render comments in nested view
     * 
     * Danger: Recursive!
     * 
     * @param integer $comment_id   Always "0" when called by client.
     * @param boolean $admin_view
     **/
    
function renderNestView($comment_id 0$admin_view false)
    {
        include_once 
XOOPS_ROOT_PATH.'/class/tree.php';
        
$xot = new XoopsObjectTree($this->_comments'com_id''com_pid''com_rootid');
        
$tree =& $xot->getTree();
        if (
false != $this->_useIcons) {
            
$title $this->_getTitleIcon($tree[$comment_id]['obj']->getVar('com_icon')).'&nbsp;'.$tree[$comment_id]['obj']->getVar('com_title');
        } else {
            
$title $tree[$comment_id]['obj']->getVar('com_title');
        }
        if (
false != $admin_view) {
            
$text $this->_getText($tree[$comment_id]['obj']->getVar('com_text'),$tree[$comment_id]['obj']->getVar('com_pid')).'<div style="text-align:right; margin-top: 2px; margin-bottom: 0px; margin-right: 2px;">'._CM_STATUS.': '.$this->_statusText[$tree[$comment_id]['obj']->getVar('com_status')].'<br />IP: <span style="font-weight: bold;">'.$tree[$comment_id]['obj']->getVar('com_ip').'</span></div>';
        } else {
            
// skip this comment if it is not active and continue on processing its child comments instead
            
if (XOOPS_COMMENT_ACTIVE != $tree[$comment_id]['obj']->getVar('com_status')) {
                
// if there are any child comments, display them as root comments
                
if (isset($tree[$comment_id]['child']) && !empty($tree[$comment_id]['child'])) {
                    foreach (
$tree[$comment_id]['child'] as $child_id) {
                        
$this->renderNestView($child_id$admin_view);
                    }
                }
                return;
            } else {
                
$text $this->_getText($tree[$comment_id]['obj']->getVar('com_text'),$tree[$comment_id]['obj']->getVar('com_pid'));
            }
        }
        
$replies = array();
        
$this->_renderNestReplies($tree$comment_id$replies25$admin_view);
        
$this->_tpl->append('comments', array('pid' => $tree[$comment_id]['obj']->getVar('com_pid'), 'id' => $tree[$comment_id]['obj']->getVar('com_id'), 'itemid' => $tree[$comment_id]['obj']->getVar('com_itemid'), 'rootid' => $tree[$comment_id]['obj']->getVar('com_rootid'), 'title' => $title'text' => $text'date_posted' => formatTimestamp($tree[$comment_id]['obj']->getVar('com_created'), 'm'), 'date_modified' => formatTimestamp($tree[$comment_id]['obj']->getVar('com_modified'), 'm'), 'poster' => $this->_getPosterArray($tree[$comment_id]['obj']->getVar('com_uid')), 'replies' => $replies));
    }

    
/**
     * Render replies in nested view
     * 
     * @param   array   $thread
     * @param   int     $key
     * @param   array   $replies
     * @param   string  $prefix
     * @param   bool    $admin_view
     * @param   integer $depth
     * 
     * @access    private 
     **/
    
function _renderNestReplies(&$thread$key, &$replies$prefix$admin_view$depth 0)
    {
        if (
$depth 0) {
            if (
false != $this->_useIcons) {
                
$title $this->_getTitleIcon($thread[$key]['obj']->getVar('com_icon')).'&nbsp;'.$thread[$key]['obj']->getVar('com_title');
            } else {
                
$title $thread[$key]['obj']->getVar('com_title');
            }
            
$text = (false != $admin_view) ? $this->_getText($thread[$key]['obj']->getVar('com_text'),$thread[$key]['obj']->getVar('com_pid')).'<div style="text-align:right; margin-top: 2px; margin-right: 2px;">'._CM_STATUS.': '.$this->_statusText[$thread[$key]['obj']->getVar('com_status')].'<br />IP: <span style="font-weight: bold;">'.$thread[$key]['obj']->getVar('com_ip').'</span></div>' $this->_getText($thread[$key]['obj']->getVar('com_text'),$thread[$key]['obj']->getVar('com_pid'));
            
$replies[] = array('id' => $key'prefix' => $prefix'pid' => $thread[$key]['obj']->getVar('com_pid'), 'itemid' => $thread[$key]['obj']->getVar('com_itemid'), 'rootid' => $thread[$key]['obj']->getVar('com_rootid'), 'title' => $title'text' => $text'date_posted' => formatTimestamp($thread[$key]['obj']->getVar('com_created'), 'm'), 'date_modified' => formatTimestamp($thread[$key]['obj']->getVar('com_modified'), 'm'), 'poster' => $this->_getPosterArray($thread[$key]['obj']->getVar('com_uid')));

            
$prefix $prefix 25;
        }
        if (isset(
$thread[$key]['child']) && !empty($thread[$key]['child'])) {
            
$depth++;
            foreach (
$thread[$key]['child'] as $childkey) {
                if (!
$admin_view && $thread[$childkey]['obj']->getVar('com_status') != XOOPS_COMMENT_ACTIVE) {
                    
// skip this comment if it is not active and continue on processing its child comments instead
                    
if (isset($thread[$childkey]['child']) && !empty($thread[$childkey]['child'])) {
                        foreach (
$thread[$childkey]['child'] as $childchildkey) {
                            
$this->_renderNestReplies($thread$childchildkey$replies$prefix$admin_view$depth);
                        }
                    }
                } else {
                    
$this->_renderNestReplies($thread$childkey$replies$prefix$admin_view$depth);
                }
            }
        }
    }


    
/**
     * Get the name of the poster
     * 
     * @param   int $poster_id
     * @return  string
     * 
     * @access    private
     **/
    
function _getPosterName($poster_id)
    {
        
$poster['id'] = intval($poster_id);
        if (
$poster['id'] > 0) {
            
$com_poster =& $this->_memberHandler->getUser($poster_id);
            if (
is_object($com_poster)) {
                
$poster['uname'] = '<a href="'.XOOPS_URL.'/userinfo.php?uid='.$poster['id'].'">'.$com_poster->getVar('uname').'</a>';
                return 
$poster;
            }
        }
        
$poster['id'] = 0// to cope with deleted user accounts
        
$poster['uname'] = $GLOBALS['xoopsConfig']['anonymous'];
        return 
$poster;
    }

    
/**
     * Get an array with info about the poster
     * 
     * @param   int $poster_id
     * @return  array
     * 
     * @access    private
     **/
    
function _getPosterArray($poster_id)
    {
        
$poster['id'] = intval($poster_id);
        if (
$poster['id'] > 0) {
            
$com_poster =& $this->_memberHandler->getUser($poster['id']);
            if (
is_object($com_poster)) {
                
$poster['uname'] = '<a href="'.XOOPS_URL.'/userinfo.php?uid='.$poster['id'].'">'.$com_poster->getVar('uname').'</a>';
                
$poster_rank $com_poster->rank();
                
$poster['rank_image'] = ($poster_rank['image'] != '') ? $poster_rank['image'] : 'blank.gif'
                
$poster['rank_title'] = $poster_rank['title'];
                
$poster['avatar'] = $com_poster->getVar('user_avatar');
                
$poster['regdate'] = formatTimestamp($com_poster->getVar('user_regdate'), 's');
                
$poster['from'] = $com_poster->getVar('user_from');
                
$poster['postnum'] = $com_poster->getVar('posts');
                
$poster['status'] = $com_poster->isOnline() ? _CM_ONLINE '';
                return 
$poster;
            }
        }
        
$poster['id'] = 0// to cope with deleted user accounts
        
$poster['uname'] = $GLOBALS['xoopsConfig']['anonymous'];
        
$poster['rank_title'] = '';
        
$poster['avatar'] = 'blank.gif';
        
$poster['regdate'] = '';
        
$poster['from'] = '';
        
$poster['postnum'] = 0;
        
$poster['status'] = '';
        return 
$poster;
    }

    
/**
     * Get the IMG tag for the title icon
     * 
     * @param   string  $icon_image
     * @return  string  HTML IMG tag
     * 
     * @access    private
     **/
    
function _getTitleIcon($icon_image)
    {
        
$icon_image htmlspecialcharstrim$icon_image ) );
        if (
$icon_image != '') {
            if (
false != $this->_doIconCheck) {
                if (!
file_exists(XOOPS_URL.'/images/subject/'.$icon_image)) {
                    return 
'<img src="'.XOOPS_URL.'/images/icons/no_posticon.gif" alt="" />';
                } else {
                    return 
'<img src="'.XOOPS_URL.'/images/subject/'.$icon_image.'" alt="" />';
                }
            } else {
                return 
'<img src="'.XOOPS_URL.'/images/subject/'.$icon_image.'" alt="" />';
            }
        }
        return 
'<img src="'.XOOPS_URL.'/images/icons/no_posticon.gif" alt="" />';
    }
    
    
/**
     * Get Text with Signature
     *
     * @param   string  $text
     * @param   int  $uid
     * @return  string
     *
     * @access    private
     **/
    
function _getText($text=''$uid=0)
    {
        global 
$xoopsConfig$xoopsUser;
        if ( 
$uid != ) {
            
$poster = new XoopsUser($uid);
            if ( !
$poster->isActive() ) {
                
$poster 0;
            }
        } else {
            
$poster 0;
        }

        if ( 
$poster ) {
            if ( 
$poster->getVar("attachsig") ) {
                
$text .= "<p><br />_________________<br />"$poster->user_sig()."</p>";
            }
        }
        return 
$text;
    }

}
?>


I´ve just added an extra function to add user signature to comments in case user is using it.
It will work in all comments of all modules that use the system comments.

There is no need to touch anything else.

Of corse, please backup first and give some feedback here.



1849
trabis
Re: How can I edit the Home content?
  • 2007/12/24 1:58

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


I don´t know why you don´t use a custom block for that.
Anyway, you can rename your index.php to index2.php for example and create a new one.
Paste this content:
<?php
include "mainfile.php";

$xoopsOption['show_cblock'] =0//Change to 1 to show your center blocks
include "header.php";

echo
"<div>Hello World</div>";//Use this line to echo your html

include "footer.php";
}
?>



1850
trabis
Re: Problem with Tag module and XoopsTube
  • 2007/12/24 1:39

  • trabis

  • Core Developer

  • Posts: 2269

  • Since: 2006/9/1 1


Hello,
I did not tested it but you can try something like this:
function news_tag_iteminfo(&$items)
{
    if(empty(
$items) || !is_array($items)){
        return 
false;
    }

    global 
$xoopsDB;
    
$myts =& MyTextSanitizer::getInstance();

    
$items_id = array();

    foreach(
array_keys($items) as $cat_id){
        
// Some handling here to build the link upon catid
            // If catid is not used, just skip it
        
foreach(array_keys($items[$cat_id]) as $item_id){
            
// In article, the item_id is "art_id"
            
$items_id[] = intval($item_id);
        }
    }

    foreach(
array_keys($items) as $cat_id){
        foreach(
array_keys($items[$cat_id]) as $item_id){
            
$sql "SELECT l.lid, l.title as ltitle, l.date, l.cid, l.submitter, l.screenshot, l.hits, l.comments, l.description, c.title as ctitle FROM ".$xoopsDB->prefix("xoopstube_videos")." l, ".$xoopsDB->prefix("xoopstube_cat")." c WHERE l.lid=".$itemid." AND l.cid=c.cid AND l.status>0 ORDER BY l.date DESC";
            
$result $xoopsDB->query($sql);
            
$row $xoopsDB->fetchArray($result);
            
$items[$cat_id][$item_id] = array(
                
"title"        => $row['ltitle'],
                
"uid"        => $row['submitter'],
                
"link"        => "singlevideo.php?lid=$item_id",
                
"time"        => $row['date'],
                
//"tags"        => tag_parse_tag($item_obj->getVar("item_tags", "n")), // optional
                
"content"    => $myts->makeTareaData4Show$row['description'], ),
            );
        }
    }

}




TopTop
« 1 ... 182 183 184 (185) 186 187 188 ... 190 »



Login

Who's Online

262 user(s) are online (140 user(s) are browsing Support Forums)


Members: 0


Guests: 262


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Mar 31
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Latest GitHub Commits