Using this way generates an empty windows if the poster is anonymous, better is to create link inside the viewtopic in the if else
$pm_link= "<a href="javascript:openWithSelfMain('".XOOPS_URL."/pmlite.php?send2=1&to_userid=".$eachposter->getVar('uid')."', 'pmlite', 450, 380);"><img src="".XOOPS_URL."/images/icons/pm.gif" alt="".sprintf(_SENDPMTO,$eachposter->getVar('uname'))."" /></a>";
$posterarr = array('poster_uid' => $eachposter->getVar('uid'), 'poster_uname' => '<a href="'.XOOPS_URL.'/userinfo.php?uid='.$eachposter->getVar('uid').'">'.$eachposter->getVar('uname').'</a>', 'poster_avatar' => $eachposter->getVar('user_avatar'), 'poster_from' => $eachposter->getVar('user_from'), 'poster_regdate' => formatTimestamp($eachposter->getVar('user_regdate'), 's'), 'poster_postnum' => $RPG .$RPG_HP .$RPG_MP .$RPG_EXP, 'poster_sendpmtext' => sprintf(_SENDPMTO,$eachposter->getVar('uname')), 'poster_rank_title' => $poster_rank['title'], 'poster_rank_image' => $poster_rank['image'], 'poster_groups' => GetGroupsNames($eachposter->getVar('uid')), 'poster_status' => $poster_status,
'user_pmlink' => $pm_link,'poster_group' => _MD_GROUP);
if ( 1 == $forumdata['allow_sig'] && $eachpost->attachsig() == 1 && $eachposter->attachsig() == 1 ) {
$myts =& MytextSanitizer::getInstance();
$post_text .= '<p><br />----------------<br />'. $myts->makeTareaData4Show($eachposter->getVar('user_sig', 'N'), 0, 1, 1).'</p>';
}
} else {
$posterarr = array('poster_uid' =>0, 'poster_uname' => $xoopsConfig['anonymous'], 'poster_avatar' => '', 'poster_from' => '', 'poster_regdate' => '', 'poster_postnum' => '', 'poster_sendpmtext' => '', 'poster_rank_title' => '', 'poster_rank_image' => '');
}
} else {
$posterarr = array('poster_uid' =>0, 'poster_uname' => $xoopsConfig['anonymous'], 'poster_avatar' => '', 'poster_from' => '', 'poster_regdate' => '', 'poster_postnum' => '', 'poster_sendpmtext' => '', 'poster_rank_title' => '', 'poster_rank_image' => '');
}
$posticon = $eachpost->icon();
This allowes showing the pm button if it is a user and doesn`t display the button when it is a anonymous.