<?php
/**
 * This file is part of
 * pragmaMx - Web Content Management System.
 * Copyright by pragmaMx Developer Team - http://www.pragmamx.org
 *
 * pragmaMx 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 3 of the License, or
 * (at your option) any later version.
 *
 * $Revision: 1.21.2.11.2.9 $
 * $Author: tora60 $
 * $Date: 2009/04/06 17:55:51 $
 *
 * this file based on:
 * php-nuke Web Portal System - http://phpnuke.org/
 * Thatware - http://thatware.org/
 * Part of phpBB integration
 * Copyright (c) 2001 by
 * Richard Tirtadji AKA King Richard (rtirtadji@hotmail.com)
 * Hutdik Hermawan AKA hotFix (hutdik76@hotmail.com)
 * http://www.phpnuke.web.id
 */

defined('mxMainFileLoaded') or die('access denied');
if(!defined("PM_MODNAME")) define("PM_MODNAME",basename(dirname(__FILE__)));
pmxHeader::add_script(PMX_JAVASCRIPT_PATH . 'jquery/jquery.js');

global $user_prefix, $pagetitle, $prefix;
		//Suche by fatdom
		if(isset($_POST['queryString'])) {
			if(strlen($_POST['queryString']) >0) {
				$query = sql_query("SELECT uname FROM ".$user_prefix."_users WHERE uname LIKE '%".mxAddSlashesForSQL($queryString)."%'  LIMIT 5");
				//was haben wir gefunden?
				if($query) {
					while ($result = sql_fetch_object($query)) {
	         		$uname = $result->uname;
					//Userdaten auf Basis der gefundenen Übereinstimmungen
		$userdata = mxGetUserDataFromUsername($uname);
					
	$pic = sql_fetch_array(sql_query("SELECT aid, foto, werist FROM ".$prefix."_avatar WHERE ((aid='$uname')) "));
		
		if (!empty($pic["foto"]))
		{
		$avatarFile = $pic["foto"];
		}else{
		$avatarFile = $pic["werist"];
		}
		
		// Wenn ein Avatar hochgeladen wurde
		if (!empty($avatarFile))
		{
				
		$avatar = $avatarFile;
		}
		else
		{
			$avatar           = "kein_bild.jpg";
		}
		$picpath = MX_PATH_MEMBERAVATAR;
		$bild = "<img src=\"".$picpath."/".$avatar."\" width=\"50px\">";
		
		//Onlinestatus
		$online = mxIsUserOnline($uname);
		if ($online ==true) {
        $online = mxCreateImage('images/online.gif');
    } else {
        $online = mxCreateImage('images/offline.gif');
    }
		
		//Die Ausgabe
		echo '<table   width=\"248\" onClick="fill(\''.$uname.'\');"><tr>
		      <td width=\"52\" rowspan=\"3\">'.$bild.'</td>
		      <td>Nickname:&nbsp;'.$uname.'</td>
	          </tr>
	          <tr>
		      <td>Alter: '.$userdata['user_age'].'</td>
	          </tr>
	          <tr>
		      <td>User ist:'.$online.'</td>
	          </tr>
			  <tr><td colspan=\"2\"><hr></td></tr>
			  </table>';
	         		}
				} 
			} 
			else {
				// Nix machen
			} // Das ist der queryString.
		} //else weil sonst beim Suchergebnis die ganze Webseite auftaucht Klammer befindet sich am Ende des Dokumentes
		else {

?>
<style type="text/css">
	/* SEARCHRESULTS */
.input {
	font-size:14px;
	
}
	/* SEARCHRESULTS */
	.suggestionsBox {
	position: absolute;
	border-width:1px;
	border-color:#919191;
	border-style:solid;
	width:250px;
	background-color:#FEFADE;
	font-size:10px;
	line-height:14px;
	}
	
	.suggestionList {
	margin: 0px;
	padding: 0px;
	
	}
	
	.suggestionList table {
		
		margin: 0px 0px 3px 0px;
		padding: 3px;
		cursor: pointer;
	}
	
	.suggestionList table:hover {
	background-color: #FFFFFF;
	}
	.suggestionList hr {
	background-color: #333333;
	}
</style>
<script type="text/javascript">
	function lookup(inputString) {
		if(inputString.length == 0) {
			// Hide the suggestion box.
			$('#suggestions').hide();
		} else {
			$.post("modules.php?name=<?php echo "".PM_MODNAME."" ?>", {queryString: ""+inputString+""}, function(data){
				if(data.length >0) {
					$('#suggestions').fadeIn();
					$('#autoSuggestionsList').html(data);
				}
			});
		}
	}
	
	function fill(thisValue) {
		$('#inputString').val(thisValue);
		setTimeout("$('#suggestions').fadeOut();", 200);
	}
</script>

<?php
function msgindex($uid)
{
    global $prefix, $user_prefix, $module_name, $url_smiles, $url_icons, $subjectdefaulticon, $url_images, $pagesize;
    global $bgcolor1, $bgcolor2, $bgcolor3, $textcolor1, $textcolor2, $popupwidth, $poptableborder;

    /* Gesamtzahl der PM'S berechnen, fuer Pager */
    $result = sql_query("SELECT COUNT(to_userid) FROM `{$prefix}_priv_msgs` where to_userid = " . intval($uid));
    list($allrows) = sql_fetch_row($result);

    /* Limit fuer Pager berechnen */
    $pagesize = (empty($pagesize) || intval($pagesize) < 5) ? 5 : intval($pagesize);
    $page = (empty($_REQUEST['page']) || intval($_REQUEST['page']) < 1) ? 1 : intval($_REQUEST['page']);
    $maxpages = ceil($allrows / $pagesize);
    if ($page > $maxpages) {
        $page = $maxpages;
    }
    $min = $pagesize * ($page - 1);
    if ($min < 1) {
        $min = 0;
    }

    /* Datensaetze auslesen */
    $result = sql_query("SELECT {$prefix}_priv_msgs.*, UNIX_TIMESTAMP(msg_time) as msgtimestamp, {$user_prefix}_users.uname as fromname
                        FROM {$prefix}_priv_msgs
                        LEFT JOIN {$user_prefix}_users
                        ON {$prefix}_priv_msgs.from_userid = {$user_prefix}_users.uid
                        WHERE to_userid=" . $uid . "
                        ORDER BY msg_time DESC
                        LIMIT " . $min . ", " . $pagesize);
    if (!$result) {
        prvmsgerror(_ERRMSGDATABASE);
    }
    if (!$total_messages = sql_num_rows($result)) {
        $havemessages = 0;
    } else {
        $havemessages = 1;
        pmxHeader::add_script('modules/' . $module_name . '/javascript.js');
        pmxHeader::add_script(PMX_JAVASCRIPT_PATH . 'jquery/jquery.js');
        pmxHeader::add_script(PMX_JAVASCRIPT_PATH . 'jquery/jquery.tooltip.js');

        ?>
<script type="text/javascript">
/* <![CDATA[ */
$(document).ready(function() {
$(".poppi").tooltip({
   showURL: false,
   showBody: " |~| ",
   track: false
})
});
/* ]]> */
</script>

<?php
    }
    $count = 0;
    echo "<form name=\"prvmsg\" method=\"post\" action=\"modules.php?name=" . $module_name . "\">\n";
    echo "<input type=\"hidden\" name=\"name\" value=\"" . $module_name . "\" />\n";
    messagesheader();
    echo "<div style=\"float:left;\"><br />&nbsp;&nbsp;" . mxCreateImage("$url_images/inbox.png", _ESENTPMS) . "<b>&nbsp;&nbsp;" . _PMIN . "</b><br /><br /></div> ";
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"1\" width=\"100%\" bgcolor=\"$bgcolor2\">\n";
    if (!$havemessages) {
        echo "<tr bgcolor=\"$bgcolor3\">\n<td colspan=\"6\" align=\"center\"><br /><br /><br /><b>" . _PMSDONTHAVESOME . "</b><br /><br /><br /></td>\n</tr>\n";
    } else {
        echo "<tr bgcolor=\"$bgcolor2\">\n"
         . "<td colspan=\"5\" bgcolor=\"$bgcolor2\" align=\"left\"><font class=\"content\"><b>&nbsp;&nbsp;" . _EMPFPMS . "</b></font><br /></td></tr>\n";
        echo "<tr bgcolor=\"$bgcolor2\">\n"
         . "<td></td>\n"
         . '<td bgcolor="' . $bgcolor2 . '" align="center">' . mxCreateImage($url_images . '/down.gif', _PMSMSGSTATUS) . '</td>'
         . "<td bgcolor=\"$bgcolor2\" align=\"center\">&nbsp;</td>\n"
         . "<td><font class=\"content\" color=\"$textcolor2\"><b>" . _PMSFROM . "</b></font></td>\n"
         . "<td align=\"center\"><font class=\"content\" color=\"$textcolor2\"><b>" . _PMSSUBJECT . "</b></font></td>\n"
         . "<td align=\"center\"><font class=\"content\" color=\"$textcolor2\"><b>" . _PMSDATE . "</b></font></td>\n"
         . "</tr>\n";
        while ($row = sql_fetch_array($result)) {
            if (empty($row["msg_image"])) $row["msg_image"] = $subjectdefaulticon;
            if (empty($row["fromname"])) $row["fromname"] = "";
            $postedtime = mx_strftime(_PMSTIMESTRING, $row["msgtimestamp"]);
            $row["subject"] = strip_tags($row["subject"]);
            $row["subject"] = msg_smile($row["subject"]);

            $row["msg_text"] = strip_tags($row["msg_text"], "<img><br><hr><b><i>");
            // $row["msg_text"] = str_replace(array('&#41;','&#124;'),array(')','|'),$row["msg_text"]); /// macht mxSecureValue() rückgängig
            $row["msg_text"] = pmPrepDisplay($row["msg_text"]);

            $tooltip = pmValueToText($row["subject"]) . ' |~| ' . pmValueToText($row["msg_text"]);

            echo "<tr><td bgcolor=\"$bgcolor1\" width=\"2%\" align=\"center\"><input type=\"checkbox\" onclick=\"CheckCheckAll();\" name=\"msg_id[$count]\" value=\"" . (int)$row["msg_id"] . "\" style=\"background-color: transparent;\" />";
            echo "</td>\n";
            echo "<td width=\"5%\" align=\"center\" bgcolor=\"$bgcolor1\">";
            if ($row["read_msg"] == 1) {
                echo mxCreateImage($url_images . '/read.gif', _PMSREAD);
            } else {
                echo mxCreateImage($url_images . '/unread.gif', _PMSNOTREAD);
            }
            echo "</td>\n";
            echo '<td bgcolor="' . $bgcolor3 . '" width="5%" align="center"><a href="modules.php?name=' . $module_name . '&amp;op=read&amp;id=' . $row['msg_id'] . '">' . mxCreateImage($url_icons . '/' . $row['msg_image']) . '</a></td>';
            echo "<td bgcolor=\"$bgcolor1\" width=\"15%\"><font class=\"content\" color=\"$textcolor2\">" . mxCreateUserprofileLink($row["fromname"]) . "</font></td>\n";
            echo "<td bgcolor=\"$bgcolor3\"><a href=\"modules.php?name=$module_name&amp;op=read&amp;id=" . $row["msg_id"] . "\" class=\"poppi\" title=\"" . $tooltip . "\"><font class=\"tiny\" color=\"$textcolor2\">" . $row["subject"] . "</font></a></td>\n";
            echo "<td bgcolor=\"$bgcolor1\" align=\"center\" width=\"18%\"><font class=\"tiny\" color=\"$textcolor2\">$postedtime</font></td>\n";
            echo "</tr>\n";
            $count++;
        }

        if ($havemessages) {
            echo "<tr bgcolor=\"$bgcolor2\">\n"

             . "<td bgcolor=\"$bgcolor2\" align=\"center\"><input name=\"allbox\" onclick=\"CheckAll();\" type=\"checkbox\" value=\"" . _PMSCHECKALL . "\" style=\"background-color: transparent;\" /></td>\n"
             . "<td><font class=\"content\" color=\"$textcolor2\">" . _PMALL . "</font></td>\n"
             . "<td></td>\n"
             . "<td></td>\n"
             . "<td></td>\n"
             . "<td align=\"right\"><font class=\"content\" color=\"$textcolor2\">" . _SAVEPMSS . "&nbsp;<a href=\"modules.php?name=$module_name&amp;op=speichern\">" . mxCreateImage("$url_images/disk.png", _SAVEPMS) . "</a>&nbsp;&nbsp;</font></td>\n"
             . "</tr>\n";
        }
    }

    echo "<tr bgcolor=\"$bgcolor2\">\n<td colspan=\"6\">";
    if ($havemessages) {
        echo "&nbsp;" . mxCreateImage("$url_images/arrow_top.gif") . _PMDEL . "&nbsp;<input type=\"image\" src=\"$url_images/email_delete.png\" name=\"delete_messages\" value=\"delete_messages\" style=\"background-color: transparent; border: none;\" alt=\"" . _PMSDELETE . "\" title=\"" . _PMSDELETE . "\">";
        echo "<input type=\"hidden\" name=\"total_messages\" value=\"" . (int)$total_messages . "\" />";
        echo "<input type=\"hidden\" name=\"op\" value=\"delete_messages\"> ";
        echo "<br /><br />&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . mxCreateImage("$url_images/mail_new.png", _PMSPRIVATEMESSAGESEND) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . _PMSPRIVATEMESSAGESEND . "</a> ";
        echo "&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . mxCreateImage("$url_images/outbox.png", _ASENTPMS) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . _ASENTPMS . "</a>";
        echo pm_pager($page, $allrows);
    } else {
        echo "<br /><br />&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . mxCreateImage("$url_images/mail_new.png", _PMSPRIVATEMESSAGESEND) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . _PMSPRIVATEMESSAGESEND . "</a> ";
        echo "&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . mxCreateImage("$url_images/outbox.png", _ASENTPMS) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . _ASENTPMS . "</a><br /><br />";
    }
    echo "</td>\n</tr>\n</table>\n</form>";
}

function messagesheader($modus = 'read')
{
    global $url_images, $module_name, $prefix, $user_prefix, $bgcolor3, $bgcolor2;

    $windowname = md5($GLOBALS['sitename']);
    $modus = ($modus == 'send') ? '' : '&amp;op=sendmsg';

    /* PM Begrenzung */
    $status = mxPmBoxstatus();
    // mxDebugFuncVars($status);
    $getbox = $status['get'];
    $sendbox = $status['send'];

    if ($getbox['limit'] || $sendbox['limit']) {
        pmxHeader::add_style('modules/' . $GLOBALS['module_name'] . '/style/bar.css');
        if ($getbox['box'] >= $getbox['limit']) {
            $getbox['free'] = '<span style="color: red;">' . $getbox['free'] . '</span>';
        }
        if ($sendbox['box'] >= $sendbox['limit']) {
            $sendbox['free'] = '<span style="color: red;">' . $sendbox['free'] . '</span>';
        }
        // Balkenanzeige
        $prozentpninbox = ($getbox['limit']) ? floor($getbox['box'] * 100 / $getbox['limit']) : 0;
        // mit floor() gleich abrunden
        $prozentpnoutbox = ($sendbox['limit']) ? floor($sendbox['box'] * 100 / $sendbox['limit']) : 0;

        switch (true) {
            case $prozentpninbox < 75:
                $makefullA = "background-color: green;";
                break;
            case $prozentpninbox < 90:
                $makefullA = "background-color: orange;";
                break;
            case $prozentpninbox > 100:
                $prozentpninbox = 100; // falls uebervoll, auf 100% stellen
            default:
                $makefullA = "background-color: red;";
        }

        switch (true) {
            case $prozentpnoutbox < 75:
                $makefullB = "background-color: green;";
                break;
            case $prozentpnoutbox < 90:
                $makefullB = "background-color: orange;";
                break;
            case $prozentpnoutbox > 100:
                $prozentpnoutbox = 100; // falls uebervoll, auf 100% stellen
            default:
                $makefullB = "background-color: red;";
        }

        $in = '<div class="gfx"><div class="bar-normal"><div class="bar" style="' . $makefullA . ' width:' . $prozentpninbox . '%;"></div></div></div>
				<div class="value td-r">' . $prozentpninbox . '%</div>';
        $out = '<div class="gfx"><div class="bar-normal"><div class="bar " style="' . $makefullB . ' width:' . $prozentpnoutbox . '%;"></div></div></div>
				<div class="value td-r ">' . $prozentpnoutbox . '%</div>';

        if ($getbox['error']) {
            $in .= '<div class="warning">' . _GETPMBOXVOLL . '</div>';
        }

        if ($sendbox['error']) {
            $out .= '<div class="warning">' . _SENTPMBOXVOLL . '</div>';
        }
        // Ende Balkenanzeige
    }
    /* Ende PM Begrenzung */

    include_once("modules/Your_Account/navbar.php");
    OpenTable();
    nav();
    CloseTable();
    echo '<br />';
    OpenTable();
    echo "
    <div class=\"title\">" . _PMSPRIVATEMESSAGES . "</div>
    <div style=\"float:right; margin-bottom: .5em;\"><button onclick=\"window.open('modules.php?name=" . $module_name . "&amp;file=buddy','$windowname','left=180, top=150, width=240,height=350,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no'); return false;\" title=\"" . _PMSDISCRIBE . "\">" . _PMSTITLE . "</button></div>
    ";

    /* PM Begrenzung */
    if ($getbox['limit'] || $sendbox['limit']) {
        echo "<table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"3\">\n";
        echo "<tr bgcolor=\"$bgcolor2\">\n";
        echo "<th width=\"50%\" class=\"content\">" . _PMNE . "</th>\n";
        echo "<th width=\"50%\" class=\"content\">" . _PMNA . "</th>\n";
        echo "</tr>\n";

        echo "<tr bgcolor=\"$bgcolor3\">\n";
        echo "<td align=\"center\" class=\"content\">" . _PMNOCH . $getbox['free'] . _PMFREI . _PMVON . $getbox['limit'] . "</td>\n";
        echo "<td align=\"center\" class=\"content\">" . _PMNOCH . $sendbox['free'] . _PMFREI . _PMVON . $sendbox['limit'] . "</td>\n";
        echo "</tr>\n";
        // Balkenanzeige
        echo "<tr bgcolor=\"$bgcolor3\" class=\"beispiel-1\" valign=\"top\">\n";
        echo "<td>" . $in . "</td>\n";
        echo "<td>" . $out . "</td>\n";
        echo "</tr>\n";
        // Ende Balkenanzeige
        echo "</table>\n";
    }
    /* Ende PM Begrenzung */
    CloseTable();
    // echo '<br />';
}

function prvmsgerror($error_msg)
{
    global $header, $footer, $bgcolor2, $url_images;
    if (!isset($header)) {
        include("header.php");
    }
    messagesheader();
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
     . "<tr bgcolor=\"$bgcolor2\" align=\"center\"><td><br />";
    echo "<center><font class=\"title\"><b>" . _PMSGERROR . "</b></font><br /><br />";
    OpenTable2();
    echo "<center><br />$error_msg<br /><br /></center>";
    CloseTable2();
    echo "<br /><br />" . _GOBACK . "<br /></center></td></tr></table>";
    include("footer.php");
    die("");
}

function readmessage($id, $uid)
{
    global $prefix, $user_prefix, $module_name, $url_smiles, $url_icons, $url_avatar, $url_images, $blankavatar;
    global $allow_bbcode, $allow_html ;
    global $bgcolor1, $bgcolor2, $bgcolor3, $textcolor1, $textcolor2;
    list($id, $uid) = mxForceInteger($id, $uid); // by AE
    $qry = "SELECT {$prefix}_priv_msgs.*, UNIX_TIMESTAMP(msg_time) as msgtimestamp FROM {$prefix}_priv_msgs WHERE (to_userid=$uid) and (msg_id=$id);";
    $result = sql_query($qry);
    if (!$result) {
        prvmsgerror(_ERRMSGDATABASE);
    }
    $row = sql_fetch_array($result);
    if (!$row["msg_id"]) {
        msgindex($uid);
    } else {
        $posterdata = get_userdata_from_id($row["from_userid"]);
        $postedtime = mx_strftime(_PMSTIMESTRING, $row["msgtimestamp"]);

        $replymsg = pmUndoPrepDisplay($row['msg_text']);
        $replymsg = "[quote][i]" . _ON . " " . $postedtime . ", " . _PMSWROTE . " " . $posterdata['uname'] . ":[/i]\n" . $replymsg . "\n[/quote]\n";

        $row["msg_text"] = pmPrepDisplay($row["msg_text"]);

        $qry = "SELECT msg_id FROM {$prefix}_priv_msgs WHERE to_userid=$uid and msg_time>'" . $row["msg_time"] . "' and msg_id<>'" . $row["msg_id"] . "' and (from_userid is not null) order by msg_time asc LIMIT 0,1";
        list($next) = sql_fetch_row(sql_query($qry));
        $qry = "SELECT msg_id FROM {$prefix}_priv_msgs WHERE to_userid=$uid and msg_time<'" . $row["msg_time"] . "' and msg_id<>'" . $row["msg_id"] . "' and (from_userid is not null) order by msg_time desc LIMIT 0,1";
        list($previous) = sql_fetch_row(sql_query($qry));
        $qry = "UPDATE {$prefix}_priv_msgs SET read_msg=1 WHERE msg_id=" . $row["msg_id"];
        $result = sql_query($qry);
        if (!$result) {
            prvmsgerror(_ERRMSGDATABASE);
        }

        if (empty($posterdata["user_sig"])) {
            $rowspan = "2";
        } else {
            $rowspan = "3";
            $posterdata["user_sig"] = pmPrepDisplay(pmxSigBbCode($posterdata["user_sig"]));
        }

        messagesheader();
        echo "<div style=\"float:left;\"><br />&nbsp;&nbsp;<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/inbox.png", _ESENTPMS) . "</a><b>&nbsp;&nbsp;<a href=\"modules.php?name=$module_name\">" . _PMIN . "</a></b><br /><br /></div> ";
        echo"<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">";
        echo "<tr bgcolor=\"$bgcolor1\"><td colspan=\"2\"><font color=\"$textcolor1\" class=\"content\">"
         . "<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a> &nbsp;";
        if ($previous) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read&amp;id=$previous\">" . mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . "</a> &nbsp;";
        } else {
            echo mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . " &nbsp;";
        }
        if ($next) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read&amp;id=$next\">" . mxCreateImage("$url_images/right.gif", _PMSNEXT) . "</a>";
        } else {
            echo mxCreateImage("$url_images/right.gif", _PMSNEXT);
        }
        echo "</font></td></tr>"
         . "<tr bgcolor=\"$bgcolor2\">"
         . "<td colspan=\"2\"><font class=\"title\" color=\"$textcolor2\">" . _PMSPRIVATEMESSAGE . ": &nbsp;&nbsp;<b><i>" . msg_smile($row["subject"]) . "</i></b></font></td>"
         . "</tr>"
         . "<tr bgcolor=\"$bgcolor3\">\n"
         . "<td valign=\"top\" rowspan=\"" . $rowspan . "\" width=\"20%\">" . _PMSFROM . ": <b>" . mxCreateUserprofileLink($posterdata["uname"]) . "</b><br /><br />\n";

        $isAvatar = mxIsAvatarUploaded($posterdata["uname"], true);
        if ($isAvatar) {
            // Bild ausgeben:
            echo $isAvatar;
        } else if (!empty($posterdata["user_avatar"]) && $posterdata["user_avatar"] != "blank.gif") {
            echo mxCreateImage($url_avatar . '/' . $posterdata['user_avatar'], $posterdata['uname']) . '<br />';
        } else {
            echo mxCreateImage($url_avatar . '/' . $blankavatar, $posterdata['uname']) . '<br />';
        }
        echo get_onlinestatus($posterdata["uname"])
         . "</td>"
         . '<td width="80%" height="10" valign="top">' . mxCreateImage($url_icons . '/' . $row['msg_image']) . '&nbsp;<font class="content">' . _PMSSENT . ': ' . $postedtime . '</font></td></tr>'
         . "<tr bgcolor=\"$bgcolor1\"><td width='80%' height='80' valign='top'>" . $row["msg_text"] . "<br /><br /></td></tr>";

        if (!empty($posterdata["user_sig"])) {
            echo "<tr bgcolor=\"$bgcolor3\"><td width='80%' height='10'><div class=\"tiny\">" . $posterdata["user_sig"] . "</div></td></tr>\n";
        }

        echo "<tr bgcolor=\"$bgcolor2\"><td colspan=\"2\">"
         . "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr>"
         . "<td><a href=\"modules.php?name=$module_name&amp;op=delete&amp;msg_id=" . $row["msg_id"] . "\">" . mxCreateImage("$url_images/email_delete.png", _PMSDELETE) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=delete&amp;msg_id=" . $row["msg_id"] . "\">" . _PMSDELETE . "</a>\n</td>\n"
         . "<td align=\"right\">"
         . "<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a> &nbsp;";
        if ($previous) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read&amp;id=$previous\">" . mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . "</a> &nbsp;";
        } else {
            echo mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . " &nbsp;";
        }
        if ($next) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read&amp;id=$next\">" . mxCreateImage("$url_images/right.gif", _PMSNEXT) . "</a>";
        } else {
            echo mxCreateImage("$url_images/right.gif", _PMSNEXT);
        }
        echo "</td></tr></table>"
         . "</td></tr></table>";
        echo "<form action=\"modules.php?name=" . $module_name . "\" method=\"post\" name=\"pmsubmit\">";
        echo "<input type=\"hidden\" name=\"name\" value=\"" . $module_name . "\" />\n";
        echo "<input type=\"hidden\" name=\"op\" value=\"submit\" />\n";
        echo "<br /><table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
         . "<tr bgcolor=\"$bgcolor2\">"
         . "<td colspan=\"2\"><font class=\"title\" color=\"$textcolor2\"><b>" . $posterdata["uname"] . "&nbsp;" . _PMSREPLY . ":</b></font></td>"
         . "</tr>";
        if (MX_IS_ADMIN) {
            echo "<tr>"
             . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSTOALL1 . ":</b></td>"
             . "<td bgcolor=\"$bgcolor1\"><input type='checkbox' name='to_all' value='1' /> <span class=\"tiny\">" . _PMSTOALL2 . "</span></td>"
             . "</tr>";
        }
        echo "<tr>"
         . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSSUBJECT . ":</b></td>"
         . "<td bgcolor=\"$bgcolor1\"><input type=\"text\" name=\"subject\" value=\"" . mxEntityQuotes(msg_desmile($row["subject"])) . "\" size=\"50\" maxlength=\"100\" /></td>"
         . "</tr>"
         . "<tr valign=\"top\">"
         . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSMESSAGEICON . ":</b></td>"
         . "<td bgcolor=\"$bgcolor1\">" . mxPmGetPictos($row["msg_image"]) . "</td>"
         . "</tr>"
         . "<tr valign=\"top\">"
         . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSMESSAGE . ":</b><br /><br />"
         . "<font class=\"tiny\">";
        if ($allow_html == 1) {
            echo _PMSHTML . ": " . _PMSPMON . "<br />\n";
        } else {
            echo _PMSHTML . ": " . _PMSOFF . "<br />\n";
        }
        if ($allow_bbcode == 1) {
            echo _PMSBBCODELINK . _PMSBBCODE . "</a>: " . _PMSPMON . "<br />\n";
        } else {
            echo _PMSBBCODE . ": " . _PMSOFF . "<br />\n";
        }
        echo "</font></td>"
         . "<td bgcolor=\"$bgcolor1\">"
         . "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr>"
         . "<td><textarea name=\"message\" id=\"message\" rows=\"10\" cols=\"45\">" . htmlspecialchars($replymsg) . "</textarea></td>"
         . "<td>";
        if ($allow_bbcode == 1) {
            printsmilies();
        }
        echo "</td></tr></table>";
        if ($allow_bbcode == 1) {
            putitems();
            echo '
<script type="text/javascript">
/* <![CDATA[ */
    var textbox = getel("message");
    UnbGlobalRegisterKeyHandler(13, 0, 2);
/* ]]> */
</script>
';
        }
        echo "</td></tr>"
         . "<tr valign=\"top\">"
         . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSSAVE . ":</b><br /><br /></td>"
         . "<td bgcolor=\"$bgcolor1\"><input type=\"checkbox\" checked=\"checked\" name=\"notsave\" value=\"1\" style=\"background-color: transparent;\"> <span class=\"tiny\">" . _NOTSAVEPMS . "</span></td></tr>"
         . "<tr><td bgcolor=\"$bgcolor1\" colspan=\"2\" align=\"center\">\n"
         . "<input type=\"hidden\" name=\"to_user\" value=\"" . mxEntityQuotes($posterdata["uname"]) . "\" />"
         . "<input type=\"hidden\" name=\"msg_id\" value=\"" . (int)$row["msg_id"] . "\" />\n"
         . "<input type=\"submit\" name=\"submit\" value=\"" . _PMSSUBMIT . "\" />&nbsp;\n"
         . "<input type=\"reset\" value=\"" . _PMSCLEAR . "\" />\n"
         . "</td></tr>"
         . "</table>"
         . "</form>";
    }
}

function sendmessage($msg_id, $uid, $to_user = "")
{
    global $allow_bbcode, $allow_html;
    global $prefix, $user_prefix, $module_name, $url_smiles, $url_images, $subjectdefaulticon;
    global $bgcolor1, $bgcolor2, $bgcolor3, $textcolor1, $textcolor2;
    $msg_id = intval($msg_id);
    $count = 0;
    $userlistlink = "[&nbsp;<a style=\"cursor: pointer;\" onclick=\"window.open('modules.php?name=$module_name&amp;op=userslist','pmuserslist','left=200, top=200, width=240,height=200,toolbar=no,location=no,directories=no,statusbar=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no'); return false;\">" . _PMSUSERSLIST . "</a>&nbsp;]";
    if ($msg_id) {
        $qry = "SELECT msgs.msg_image, msgs.subject, msgs.to_userid, UNIX_TIMESTAMP(msg_time), msgs.msg_text, fromuser.uname "
         . "FROM {$prefix}_priv_msgs AS msgs LEFT JOIN {$user_prefix}_users AS fromuser ON msgs.from_userid = fromuser.uid "
         . "WHERE ((to_userid=$uid) AND (msg_id=$msg_id) and (from_userid is not null));";
        $result = sql_query($qry);
        if (!$result) {
            prvmsgerror(_ERRMSGDATABASE);
        }
        list($msg_image, $subject, $to_userid, $msg_time, $msg_text, $to_user) = sql_fetch_row($result);
        $msg_time = mx_strftime(_PMSTIMESTRING, $msg_time);
        if (!$msg_image) {
            $msg_image = $subjectdefaulticon;
        }
        $subject = _PMSRE . ": " . msg_desmile($subject);
        $subject = str_replace("" . _PMSRE . ": " . _PMSRE . ": ", _PMSRE . ": ", $subject);
        $msg_text = pmUndoPrepDisplay($msg_text);
        $msg_text = "[quote][i]" . _ON . " " . $msg_time . ", " . _PMSWROTE . " " . $to_user . ":[/i]\n" . $msg_text . "\n[/quote]\n";
    } else {
        if (is_numeric($uid) && empty($to_user)) {
            $qry = "SELECT uid, uname from {$user_prefix}_users where uid=$uid and user_stat=1 and uname<>'" . mxAddSlashesForSQL($GLOBALS['anonymous']) . "';";
            $result = sql_query($qry);
            list($uid, $to_user) = sql_fetch_row($result);
        } else {
            $to_user = (empty($to_user)) ? $uid : $to_user;
        }
        $msg_image = $subjectdefaulticon;
        $subject = "";
        $msg_text = "";
    }
    echo "<form action=\"modules.php?name=" . $module_name . "\" method=\"post\" name=\"pmsubmit\">";
    echo "<input type=\"hidden\" name=\"name\" value=\"" . $module_name . "\" />\n";
    echo "<input type=\"hidden\" name=\"op\" value=\"submit\" />\n";
    messagesheader();
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
     . "<tr bgcolor=\"$bgcolor2\">"
     . "<td colspan=\"2\" align=\"right\"><div style=\"float:left;\"><font color=\"$textcolor2\" class=\"title\"><b>" . _PMSPRIVATEMESSAGESEND . "</b></font></div>"
     . "<div style=\"float:right;\"><a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a></div></td>"
     . "</tr>"
     . "<tr>"
     . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSTO . ":</b></td>"
     . "<td bgcolor=\"$bgcolor1\"><div class=\"input\"><input name=\"to_user\" size=\"30\" maxlength=\"25\" value=\"" . mxEntityQuotes($to_user) . "\" 
	    id=\"inputString\" onkeyup=\"lookup(this.value);\" onblur=\"fill();\"/></div><div><div class=\"suggestionsBox\" id=\"suggestions\" style=\"display: none; \">
					<div class=\"suggestionList\"  id=\"autoSuggestionsList\">
					&nbsp;
				</div></div>Automatische suche durch Namen eingeben...</td>"
     . "</tr>";
    if (MX_IS_ADMIN) {
        echo "<tr>"
         . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSTOALL1 . ":</b></td>"
         . "<td bgcolor=\"$bgcolor1\"><input type='checkbox' name='to_all' value='1' /> <span class=\"tiny\">" . _PMSTOALL2 . "</span></td>"
         . "</tr>";
    }
    echo "<tr>"
     . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSSUBJECT . ":</b></td>"
     . "<td bgcolor=\"$bgcolor1\"><input type=\"text\" name=\"subject\" value=\"" . mxEntityQuotes($subject) . "\" size=\"50\" maxlength=\"100\" /></td>"
     . "</tr>"
     . "<tr valign=\"top\">"
     . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSMESSAGEICON . ":</b></td>"
     . "<td bgcolor=\"$bgcolor1\">" . mxPmGetPictos($msg_image) . "</td>"
     . "</tr>"
     . "<tr valign=\"top\">"
     . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSMESSAGE . ":</b><br /><br />"
     . "<font class=\"tiny\">";
    if ($allow_html == 1) {
        echo _PMSHTML . ": " . _PMSPMON . "<br />\n";
    } else {
        echo _PMSHTML . ": " . _PMSOFF . "<br />\n";
    }
    if ($allow_bbcode == 1) {
        echo _PMSBBCODELINK . _PMSBBCODE . "</a>: " . _PMSPMON . "<br />\n";
    } else {
        echo _PMSBBCODE . ": " . _PMSOFF . "<br />\n";
    }
    echo "</font></td>"
     . "<td bgcolor=\"$bgcolor1\">"
     . "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr>"
     . "<td><textarea name=\"message\" id=\"message\" rows=\"10\" cols=\"45\">" . htmlspecialchars($msg_text) . "</textarea></td>"
     . "<td>";
    if ($allow_bbcode == 1) {
        printsmilies();
    }
    echo "</td></tr></table>";
    if ($allow_bbcode == 1) {
        putitems();
        echo '
<script type="text/javascript">
/* <![CDATA[ */
    var textbox = getel("message");
    UnbGlobalRegisterKeyHandler(13, 0, 2);
/* ]]> */
</script>
    ';
    }
    echo "</td></tr>"
     . "<tr valign=\"top\">"
     . "<td bgcolor=\"$bgcolor3\" width=\"25%\"><b>" . _PMSSAVE . ":</b><br /><br /></td>"
     . "<td bgcolor=\"$bgcolor1\"><input type='checkbox' checked='checked' name='notsave' value='1' style='background-color: transparent;'> <span class='tiny'>" . _NOTSAVEPMS . "</span></td></tr>"
     . "<tr><td bgcolor=\"$bgcolor1\" colspan=\"2\" align=\"center\">\n"
     . "<input type=\"hidden\" name=\"msg_id\" value=\"" . (int)$msg_id . "\" />\n"
     . "<input type=\"submit\" name=\"submit\" value=\"" . _PMSSUBMIT . "\" />&nbsp;\n"
     . "<input type=\"reset\" value=\"" . _PMSCLEAR . "\" />\n"
     . "&nbsp;<input type=\"submit\" name=\"cancel\" value=\"" . _PMSCANCELSEND . "\" />\n"
     . "</td></tr>"
     . "</table>"
     . "</form>"
     . '<br />';
}

function cancelsubmit($msg_id, $uid)
{
    list($msg_id, $uid) = mxForceInteger($msg_id, $uid);
    if ($msg_id) {
        readmessage($msg_id, $uid);
    } else {
        msgindex($uid);
    }
}

function submitmessage($arrpostdata, $uid)
{
    global $prefix, $user_prefix, $module_name, $refresh, $bgcolor2;

    /* Senderdaten */
    $sender = mxGetUserData();

    if (empty($arrpostdata["to_user"]) && empty($arrpostdata["to_all"]) || (!empty($arrpostdata["to_all"]) && !MX_IS_ADMIN)) {
        prvmsgerror(_ERRMSGNOUSER);
    }

    if (empty($arrpostdata["to_all"])) {
        /* Empfaengerdaten */
        $recipient = mxGetUserDataFromUsername($arrpostdata['to_user']);

        /* kein gueltiger Empfaenger */
        if (empty($recipient['uid'])) {
            prvmsgerror(_PMSUSERNOTINDB);
        }
        /* ignore Funktion */
        if (mxPmIsRecipientIgnored($recipient['uid'], $uid)) {
            prvmsgerror($recipient['uname'] . ' ' . _NOMESSAGE);
        }

        /* PM Begrenzung */
        $status = mxPmBoxstatus($recipient['uid']);
        $getbox_recipient = $status['get'];
        if ($getbox_recipient['limit'] && $getbox_recipient['error']) {
            prvmsgerror(_EMPFPMBOXVOLL);
        }
        /* Ende PM Begrenzung */
    }

    /* PM Begrenzung */
    $status = mxPmBoxstatus();
    $sendbox = $status['send'];
    if ($sendbox['limit'] && $sendbox['error']) {
        prvmsgerror(_SENTPMBOXVOLL);
    }
    /* Ende PM Begrenzung */

    $arrpostdata["subject"] = strip_tags($arrpostdata["subject"]);
    if (!($arrpostdata["subject"])) {
        $arrpostdata["subject"] = _PMNOSUBJECT;
    }
    if (!($arrpostdata["message"])) {
        prvmsgerror(_ERRMSGNOMESSAGE);
    }

    $qry1 = "INSERT INTO {$prefix}_priv_msgs (msg_image, subject, from_userid, to_userid, msg_time, msg_text) ";
    if (empty($arrpostdata["to_all"])) {
        $qry1 .= "VALUES ('" . mxAddSlashesForSQL($arrpostdata["image"]) . "', '" . mxAddSlashesForSQL($arrpostdata["subject"]) . "', " . intval($uid) . ", " . intval($recipient['uid']) . ", now(), '" . mxAddSlashesForSQL($arrpostdata["message"]) . "')";
        if (!sql_query($qry1)) {
            prvmsgerror(_ERRMSGNOSUBMIT . ' (1)');
        }

        /* Gesendete PM´S speichern */
        if (!empty($arrpostdata["notsave"])) {
            $newid = sql_insert_id();
            $qry = "INSERT INTO {$prefix}_priv_msgs_send (msg_id, msg_image, subject, from_userid, to_userid, msg_time, msg_text)
                             VALUES (" . intval($newid) . ", '" . mxAddSlashesForSQL($arrpostdata["image"]) . "', '" . mxAddSlashesForSQL($arrpostdata["subject"]) . "', " . intval($uid) . ", " . intval($recipient['uid']) . ", now(), '" . mxAddSlashesForSQL($arrpostdata["message"]) . "')";
            sql_query($qry);
        }
        /* Ende Gesendete PM´S speichern */

    } else {
        if (MX_IS_ADMIN) {
            $i = 0;
            $result = sql_query("select uid from {$user_prefix}_users where user_stat=1");
            while (list($to_userid) = sql_fetch_row($result)) {
                $qry2 = $qry1 . " VALUES ('" . mxAddSlashesForSQL($arrpostdata["image"]) . "', '" . mxAddSlashesForSQL($arrpostdata["subject"]) . "', " . intval($uid) . ", " . intval($to_userid) . ", now(), '" . mxAddSlashesForSQL($arrpostdata["message"]) . "')";
                $result2 = sql_query($qry2);
                if ($result2) $i++;
            }
        }
    }

    /* Email bei neuer PN wenn User offline ist */
    if (empty($arrpostdata["to_all"])) {
        mxPmMailNote($recipient, $sender);
    }
    /* Ende, Email bei neuer PN wenn User offline ist */

    pmxHeader::add('<meta http-equiv="Refresh" content="' . ((isset($i)) ? ($refresh * 4) : $refresh) . ';URL=modules.php?name=' . $module_name . '">');
    messagesheader();
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
     . "<tr bgcolor=\"$bgcolor2\">"
     . "<td><br /><center>" . _PMSMSGPOSTED . " " . ((isset($i)) ? " (" . $i . " User)" : "") . "<br /><a href=\"modules.php?name=$module_name\">" . _PMSRETURNTOPMSG . "</a></center><br /></td>"
     . "</tr></table>";
}

function deletemessage($msg_id, $uid)
{
    global $prefix, $user_prefix, $module_name, $refresh, $bgcolor2, $url_images;
    list($msg_id, $uid) = mxForceInteger($msg_id, $uid);
    $qry = "SELECT msg_time FROM {$prefix}_priv_msgs WHERE (to_userid=$uid) and (msg_id=$msg_id) and (from_userid is not null) LIMIT 0,1";
    list($time) = sql_fetch_row(sql_query($qry));
    $qry = "SELECT msg_id FROM {$prefix}_priv_msgs WHERE (to_userid=$uid) and (msg_time>'$time') and (msg_id<>$msg_id) and (from_userid is not null) order by msg_time asc LIMIT 0,1";
    list($nextid) = sql_fetch_row(sql_query($qry));
    $qry = "DELETE FROM {$prefix}_priv_msgs WHERE (msg_id=$msg_id) AND (to_userid=$uid) or (from_userid is null)";
    if (!sql_query($qry)) {
        prvmsgerror(_ERRMSGNODELETE);
    } else {
        $xrefresh = ($nextid) ? ($refresh * 2) : $refresh;
        pmxHeader::add('<meta http-equiv="Refresh" content="' . $xrefresh . ';URL=modules.php?name=' . $module_name . '">');
        messagesheader();
        echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
         . "<tr bgcolor=\"$bgcolor2\" align=\"center\"><td><br />" . _PMSMSGDELETED . '<br /><br />';
        if ($nextid) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=index\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a> &nbsp; <a href=\"modules.php?name=$module_name&amp;op=read&amp;id=$nextid\">" . mxCreateImage("$url_images/right.gif", _PMSNEXT) . "</a>";
        } else {
            echo "<a href=\"modules.php?name=$module_name\">" . _PMSRETURNTOPMSG . "</a>";
        }
        echo "<br /><br /></td></tr></table>";
    }
}

function deletemessages($arrformvars, $uid)
{
    global $prefix, $refresh, $module_name, $bgcolor2;
    $status = 0;
    $delmess = array();
    if (isset($arrformvars["msg_id"])) {
        foreach ($arrformvars["msg_id"] as $key => $val) {
            $delmess[] = (int)$val;
            $status++;
        }
        if (count($delmess)) {
            $delmess = implode(',', $delmess);
            $del_unread = (empty($GLOBALS['allow_delete_unread'])) ? 'AND (read_msg <> 0)' : '';
            $qry = "DELETE FROM {$prefix}_priv_msgs WHERE (msg_id IN (" . $delmess . ")) AND (to_userid=" . $uid . ") " . $del_unread . " OR (from_userid = 0) OR (msg_text IS NULL) OR (subject IS NULL) OR (msg_text='') OR (subject='')";
            sql_query($qry);
            $qry = "SELECT COUNT(msg_id) FROM {$prefix}_priv_msgs WHERE (to_userid = " . $uid . ") AND msg_id IN (" . $delmess . ")";
            $result = sql_query($qry);
            list($delmess) = sql_fetch_row($result);
            $status = $status - ((int)$delmess);
        }
    }
    pmxHeader::add('<meta http-equiv="Refresh" content="' . $refresh . ';URL=modules.php?name=' . $module_name . '">');
    messagesheader();
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
     . "<tr bgcolor=\"$bgcolor2\" align=\"center\"><td><br />";
    if ($status) {
        echo _PMSMSGDELETED2 . " (" . $status . "x)";
    } else {
        echo _PMSMSGNOTODELETE;
    }
    echo "<br /><br /><a href=\"modules.php?name=$module_name\">" . _PMSRETURNTOPMSG . "</a><br /><br /></td></tr></table>";
}

function pm_pager($page, $allrows, $op = '')
{
    global $module_name, $pagesize;

    /* 5 sollten es schon sein... */
    $pagesize = (empty($pagesize) || intval($pagesize) < 5) ? 5 : intval($pagesize);

    if ($allrows <= $pagesize) {
        return '&nbsp;';
    }

    /* Anzahl aller Seiten */
    $numpages = ceil($allrows / $pagesize);

    $start = 1;
    $end = $numpages + 1;
    if ($numpages > 10) {
        $start = $page - 4;
        if ($start < 1) $start = 1;
        $end = $start + 10;
        if ($end > $numpages) $end = $numpages + 1;
        if ($end == $numpages + 1) $start = $end - 10;
    }

    $link = 'modules.php?name=' . $module_name . (($op == 'sendmsg') ? '&amp;op=sendmsg' : '');

    $out = '<div class="pagination align-center">';

    if ($page <= 1) {
        $out .= '<a class="disabled">&nbsp;&laquo;&nbsp;</a>';
    } else {
        $caption = _GOTOPAGEPREVIOUS . ': ' . ($page - 1) ;
        $backlink = ($page > 1) ? ' href="' . $link . '&amp;page=' . ($page - 1) . '"' : '';
        $out .= '<a' . $backlink . ' title="' . $caption . '">&nbsp;&laquo;&nbsp;</a>';
    }

    if ($start > 1) {
        $out .= '<a href="' . $link . '&amp;page=1" title="' . _GOTOPAGEFIRST . '">1</a>';
        if ($start > 2) $out .= ' .. ';
    }
    for ($i = $start; $i < $end; $i++) {
        if ($i == $page) {
            $out .= '<a class="current">' . $i . '</a>';
        } else {
            $out .= '<a href="' . $link . '&amp;page=' . $i . '" title="' . _GOTOPAGE . ': ' . $i . '">' . $i . '</a>';
        }
    }
    if ($end < $numpages + 1) {
        if ($end < $numpages) $out .= ' .. ';
        $out .= '<a href="' . $link . '&amp;page=' . $numpages . '" title="' . _GOTOPAGELAST . '">' . $numpages . '</a>';
    }

    if ($page >= $numpages) {
        $out .= '<a class="disabled">&nbsp;&raquo;&nbsp;</a>';
    } else {
        $caption = _GOTOPAGENEXT . ': ' . ($page + 1) ;
        $nextlink = ($page < $numpages) ? ' href="' . $link . '&amp;page=' . ($page + 1) . '"' : '';
        $out .= '<a' . $nextlink . ' title="' . $caption . '">&nbsp;&raquo;&nbsp;</a>';
    }

    $out .= '</div>';
    $out = str_replace('</a>', "</a>\n", $out);

    return $out;
}

function sendmsg($uid)
{
    global $prefix, $user_prefix, $module_name, $url_smiles, $url_icons, $subjectdefaulticon, $url_images, $pagesize;
    global $bgcolor1, $bgcolor2, $bgcolor3, $textcolor1, $textcolor2, $popupwidth, $poptableborder;

    $result = sql_query("SELECT COUNT(to_userid) FROM `{$prefix}_priv_msgs_send` where from_userid = " . intval($uid));
    list($allrows) = sql_fetch_row($result);

    /* Limit fuer Pager berechnen */
    $pagesize = (empty($pagesize) || intval($pagesize) < 5) ? 5 : intval($pagesize);
    $page = (empty($_REQUEST['page']) || intval($_REQUEST['page']) < 1) ? 1 : intval($_REQUEST['page']);
    $maxpages = ceil($allrows / $pagesize);
    if ($page > $maxpages) {
        $page = $maxpages;
    }
    $min = $pagesize * ($page - 1);
    if ($min < 1) {
        $min = 0;
    }

    /* Datensaetze auslesen */
    $result = sql_query("SELECT {$prefix}_priv_msgs_send.*, UNIX_TIMESTAMP(msg_time) as msgtimestamp, {$user_prefix}_users.uname as toname
                        FROM {$prefix}_priv_msgs_send
                        LEFT JOIN {$user_prefix}_users
                        ON {$prefix}_priv_msgs_send.to_userid = {$user_prefix}_users.uid
                        WHERE from_userid = " . intval($uid) . "
                        ORDER BY msg_time DESC
                        LIMIT " . $min . ", " . $pagesize);
    if (!$result) {
        prvmsgerror(_ERRMSGDATABASE);
    }
    if (!$total_messages = sql_num_rows($result)) {
        $havemessages = 0;
    } else {
        $havemessages = 1;
        pmxHeader::add_script('modules/' . $module_name . '/javascript.js');
        pmxHeader::add_script(PMX_JAVASCRIPT_PATH . 'jquery/jquery.js');
        pmxHeader::add_script(PMX_JAVASCRIPT_PATH . 'jquery/jquery.tooltip.js');

        ?>
<script type="text/javascript">
/* <![CDATA[ */
$(document).ready(function() {
$(".poppi").tooltip({
   showURL: false,
   showBody: " |~| ",
   track: false
})
});
/* ]]> */
</script>

<?php
    }
    $count = 0;
    echo "<form name=\"prvmsg\" method=\"post\" action=\"modules.php?name=" . $module_name . "\">\n";
    echo "<input type=\"hidden\" name=\"name\" value=\"" . $module_name . "\" />\n";
    messagesheader('send');
    echo "<div style=\"float:left;\"><br />&nbsp;&nbsp;" . mxCreateImage("$url_images/outbox.png", _ESENTPMS) . "<b>&nbsp;&nbsp;" . _PMOUT . "</b><br /><br /></div> ";
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"1\" width=\"100%\" bgcolor=\"$bgcolor2\">\n";
    if (!$havemessages) {
        echo "<tr bgcolor=\"$bgcolor3\">\n<td colspan=\"6\" align=\"center\"><br /><br /><br /><b>" . _SENTPMSDONTHAVESOME . "</b><br /><br /><br /></td>\n</tr>\n";
    } else {
        echo "<tr bgcolor=\"$bgcolor2\">\n"
         . "<td colspan=\"5\" bgcolor=\"$bgcolor2\" align=\"left\"><font class=\"content\"><b>&nbsp;&nbsp;" . _SENTPMS . "</b></font><br /></td></tr>\n";
        echo "<tr bgcolor=\"$bgcolor2\">\n"
         . "<td></td>\n"
         . '<td bgcolor="' . $bgcolor2 . '" align="center">' . mxCreateImage($url_images . '/down.gif', _PMSMSGSTATUS) . '</td>'
         . "<td bgcolor=\"$bgcolor2\" align=\"center\">&nbsp;</td>\n"
         . "<td><font class=\"content\" color=\"$textcolor2\"><b>" . _SENTPMSTO . "</b></font></td>\n"
         . "<td align=\"center\"><font class=\"content\" color=\"$textcolor2\"><b>" . _PMSSUBJECT . "</b></font></td>\n"
         . "<td align=\"center\"><font class=\"content\" color=\"$textcolor2\"><b>" . _PMSDATE . "</b></font></td>\n"
         . "</tr>\n";
        while ($row = sql_fetch_array($result)) {
            // Nachrichten ungelesenen auslesen für "pix" ----->
            $pm_uhrzeit = $row["msg_time"];
            $select1 = "SELECT * FROM {$prefix}_priv_msgs ";
            $where1 = "where msg_time = '$pm_uhrzeit'";
            $result_read_msg = sql_query($select1 . $where1);
            // <----- bis hier
            if (empty($row["msg_image"])) $row["msg_image"] = $subjectdefaulticon;
            if (empty($row["toname"])) $row["toname"] = "";
            $postedtime = mx_strftime(_PMSTIMESTRING, $row["msgtimestamp"]);
            $row["subject"] = strip_tags($row["subject"]);
            $row["subject"] = msg_smile($row["subject"]);

            $row["msg_text"] = strip_tags($row["msg_text"], "<img><br /><hr><b><i>");
            // $row["msg_text"] = str_replace(array('&#41;','&#124;'),array(')','|'),$row["msg_text"]); /// macht mxSecureValue() rückgängig
            $row["msg_text"] = pmPrepDisplay($row["msg_text"]);

            $tooltip = pmValueToText($row["subject"]) . ' |~| ' . pmValueToText($row["msg_text"]);

            echo "<tr><td bgcolor=\"$bgcolor1\" width=\"2%\" align=\"center\"><input type=\"checkbox\" onclick=\"CheckCheckAll();\" name=\"msg_id[$count]\" value=\"" . (int)$row["msg_id"] . "\" style=\"background-color: transparent;\" />";
            echo "</td>\n";
            echo "<td width=\"5%\" align=\"center\" bgcolor=\"$bgcolor1\">";
            // ab hier Abfrage für schon gelesen "pix"---->
            // Eigene Nachrichten auslesen
            $ungelesen = mysql_fetch_array($result_read_msg);

            if ($ungelesen["read_msg"] == 0 && $ungelesen["read_msg"] != "") {
                echo "<img src=\"$url_images/unread.gif\" border=\"0\" alt=\"" . _PMSNOTREAD . "\">";
            } elseif (is_null($ungelesen["read_msg"])) {
                echo "<img src=\"$url_images/cancel.png\" border=\"0\" alt=\"" . _PMSDELETED . "\">";
            } else {
                echo "<img src=\"$url_images/read.gif\" border=\"0\" alt=\"" . _PMSREAD . "\">";
            }
            /*            if ($ungelesen["read_msg"] == "0") {
                echo "<img src=\"$url_images/read.gif\" border=\"0\" alt=\"" . _PMSNOTREAD . "\">";
            } else {
                echo "";
            }*/
            // <----- bis hier
            echo "</td>\n";
            echo '<td bgcolor="' . $bgcolor3 . '" width="5%" align="center"><a href="modules.php?name=' . $module_name . '&amp;op=read_sent&amp;id=' . $row['msg_id'] . '">' . mxCreateImage($url_icons . '/' . $row['msg_image']) . '</a></td>';
            echo "<td bgcolor=\"$bgcolor1\" width=\"15%\"><font class=\"content\" color=\"$textcolor2\">" . mxCreateUserprofileLink($row["toname"]) . "</font></td>\n";
            echo "<td bgcolor=\"$bgcolor3\"><a href=\"modules.php?name=$module_name&amp;op=read_sent&amp;id=" . $row["msg_id"] . "\" class=\"poppi\" title=\"" . $tooltip . "\"><font class=\"tiny\" color=\"$textcolor2\">" . $row["subject"] . "</font></a></td>\n";
            echo "<td bgcolor=\"$bgcolor1\" align=\"center\" width=\"18%\"><font class=\"tiny\" color=\"$textcolor2\">$postedtime</font></td>\n";
            echo "</tr>\n";
            $count++;
        }

        if ($havemessages) {
            echo "<tr bgcolor=\"$bgcolor2\">\n"

             . "<td bgcolor=\"$bgcolor2\" align=\"center\"><input name=\"allbox\" onclick=\"CheckAll();\" type=\"checkbox\" value=\"" . _PMSCHECKALL . "\" style=\"background-color: transparent;\" /></td>\n"
             . "<td><font class=\"content\" color=\"$textcolor2\">" . _PMALL . "</font></td>\n"
             . "<td></td>\n"
             . "<td></td>\n"
             . "<td></td>\n"
             . "<td align=\"right\"><font class=\"content\" color=\"$textcolor2\">" . _SAVEPMSS . "&nbsp;<a href=\"modules.php?name=$module_name&amp;op=speichern\">" . mxCreateImage("$url_images/disk.png", _SAVEPMS) . "</a>&nbsp;&nbsp;</font></td>\n"
             . "</tr>\n";
        }
    }

    echo "<tr bgcolor=\"$bgcolor2\">\n<td colspan=\"6\">";
    if ($havemessages) {
        echo "&nbsp;" . mxCreateImage("$url_images/arrow_top.gif") . _PMDEL . "&nbsp;<input type=\"image\" src=\"$url_images/email_delete.png\" name=\"delete_messages\" value=\"delete_messages\" style=\"background-color: transparent; border: none;\" alt=\"" . _PMSDELETE . "\" title=\"" . _PMSDELETE . "\">";
        echo "<input type=\"hidden\" name=\"total_messages\" value=\"" . (int)$total_messages . "\" />";
        echo "<input type=\"hidden\" name=\"op\" value=\"delete_sent_messages\"> ";
        echo "<br /><br />&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . mxCreateImage("$url_images/mail_new.png", _PMSPRIVATEMESSAGESEND) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . _PMSPRIVATEMESSAGESEND . "</a> ";
        echo "&nbsp;&nbsp;<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/inbox.png", _ESENTPMS) . "</a>&nbsp;<a href=\"modules.php?name=$module_name\">" . _ESENTPMS . "</a>";
        echo pm_pager($page, $allrows, 'sendmsg');
    } else {
        echo "<br /><br />&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . mxCreateImage("$url_images/mail_new.png", _PMSPRIVATEMESSAGESEND) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=send\">" . _PMSPRIVATEMESSAGESEND . "</a> ";
        echo "&nbsp;&nbsp;<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/inbox.png", _ESENTPMS) . "</a>&nbsp;<a href=\"modules.php?name=$module_name\">" . _ESENTPMS . "</a><br /><br />";
    }
    echo "</td>\n</tr>\n</table>\n</form>";
}

function readsentmessage($id, $uid)
{
    global $prefix, $user_prefix, $module_name, $url_smiles, $url_icons, $url_avatar, $url_images, $blankavatar;
    global $allow_bbcode, $allow_html ;
    global $bgcolor1, $bgcolor2, $bgcolor3, $textcolor1, $textcolor2;
    list($id, $uid) = mxForceInteger($id, $uid);
    $qry = "SELECT {$prefix}_priv_msgs_send.*, UNIX_TIMESTAMP(msg_time) as msgtimestamp FROM {$prefix}_priv_msgs_send WHERE (from_userid=$uid) and (msg_id=$id);";
    $result = sql_query($qry);
    if (!$result) {
        prvmsgerror(_ERRMSGDATABASE);
    }
    $row = sql_fetch_array($result);
    if (!$row["msg_id"]) {
        msgindex($uid);
    } else {
        $posterdata = get_userdata_from_id($row["to_userid"]);
        $postedtime = mx_strftime(_PMSTIMESTRING, $row["msgtimestamp"]);

        $replymsg = pmUndoPrepDisplay($row['msg_text']);
        $replymsg = "[quote][i]" . _ON . " " . $postedtime . ", " . _PMSWROTE . " " . $posterdata['uname'] . ":[/i]\n" . $replymsg . "\n[/quote]\n";

        $row["msg_text"] = pmPrepDisplay($row["msg_text"]);

        $qry = "SELECT msg_id FROM {$prefix}_priv_msgs_send WHERE from_userid=$uid and msg_time>'" . $row["msg_time"] . "' and msg_id<>'" . $row["msg_id"] . "' and (from_userid is not null) order by msg_time asc LIMIT 0,1";
        list($next) = sql_fetch_row(sql_query($qry));
        $qry = "SELECT msg_id FROM {$prefix}_priv_msgs_send WHERE from_userid=$uid and msg_time<'" . $row["msg_time"] . "' and msg_id<>'" . $row["msg_id"] . "' and (from_userid is not null) order by msg_time desc LIMIT 0,1";
        list($previous) = sql_fetch_row(sql_query($qry));
        // $qry = "UPDATE {$prefix}_priv_msgs_send SET read_msg=1 WHERE msg_id=" . $row["msg_id"];
        $result = sql_query($qry);
        if (!$result) {
            prvmsgerror(_ERRMSGDATABASE);
        }

        if (empty($posterdata["user_sig"])) {
            $rowspan = "2";
        } else {
            $rowspan = "3";
            $posterdata["user_sig"] = pmPrepDisplay(pmxSigBbCode($posterdata["user_sig"]));
        }

        messagesheader('send');

        echo "<div style=\"float:left;\"><br />&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . mxCreateImage("$url_images/outbox.png", _PMOUT) . "</a><b>&nbsp;&nbsp;<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . _PMOUT . "</a></b><br /><br /></div> ";
        echo"<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">";
        echo "<tr bgcolor=\"$bgcolor1\"><td colspan=\"2\"><font color=\"$textcolor1\" class=\"content\">"
         . "<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a> &nbsp;";
        if ($previous) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read_sent&amp;id=$previous\">" . mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . "</a> &nbsp;";
        } else {
            echo mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . " &nbsp;";
        }
        if ($next) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read_sent&amp;id=$next\">" . mxCreateImage("$url_images/right.gif", _PMSNEXT) . "</a>";
        } else {
            echo mxCreateImage("$url_images/right.gif", _PMSNEXT);
        }
        echo "</font></td></tr>"
         . "<tr bgcolor=\"$bgcolor2\">"
         . "<td colspan=\"2\"><font class=\"title\" color=\"$textcolor2\">" . _PMSPRIVATEMESSAGE . ": &nbsp;&nbsp;<b><i>" . msg_smile($row["subject"]) . "</i></b></font></td>"
         . "</tr>"
         . "<tr bgcolor=\"$bgcolor3\">\n"
         . "<td valign=\"top\" rowspan=\"" . $rowspan . "\" width=\"20%\">" . _SENTPMSTO . ": <b>" . $posterdata["uname"] . "</b><br /><br />\n";

        $isAvatar = mxIsAvatarUploaded($posterdata["uname"], true);
        if ($isAvatar) {
            // Bild ausgeben:
            echo $isAvatar;
        } else if (!empty($posterdata["user_avatar"]) && $posterdata["user_avatar"] != "blank.gif") {
            echo "<img src=\"$url_avatar/" . $posterdata["user_avatar"] . "\" alt=\"" . $posterdata["uname"] . "\"><br />\n";
        } else {
            echo "<img src=\"$url_avatar/$blankavatar\" alt=\"" . $posterdata["uname"] . "\"><br />\n";
        }
        echo "<br /><a href=\"modules.php?name=Userinfo&amp;uname=" . urlencode($posterdata["uname"]) . "\"><img src=\"$url_images/profile.gif\" border=\"0\" alt=\"" . _PMSPROFILE . "\"><font class=\"tiny\">" . _PMSPROFILE . "</font></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />\n"
         . get_onlinestatus($posterdata["uname"])
         . "</td>"
         . "<td width='80%' height='10' valign='top'><img src=\"" . $url_icons . "/" . $row["msg_image"] . "\" alt=\"\">&nbsp;<font class=\"content\">" . _PMSSENT . ": $postedtime</font></td></tr>"
         . "<tr bgcolor=\"$bgcolor1\"><td width='80%' height='80' valign='top'>" . $row["msg_text"] . "<br /><br /></td></tr>";

        if (!empty($posterdata["user_sig"])) {
            echo "<tr bgcolor=\"$bgcolor3\"><td width='80%' height='10'><div class=\"tiny\">" . $posterdata["user_sig"] . "</div></td></tr>\n";
        }

        echo "<tr bgcolor=\"$bgcolor2\"><td colspan=\"2\">"
         . "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr>"
         . "<td><a href=\"modules.php?name=$module_name&amp;op=delete_sent&amp;msg_id=" . $row["msg_id"] . "\">" . mxCreateImage("$url_images/email_delete.png", _PMSDELETE) . "</a>&nbsp;<a href=\"modules.php?name=$module_name&amp;op=delete_sent&amp;msg_id=" . $row["msg_id"] . "\">" . _PMSDELETE . "</a>\n</td>\n"
        // . "<td><a href=\"modules.php?name=$module_name&amp;op=delete_sent&amp;msg_id=" . $row["msg_id"] . "\">" . mxCreateImage("$url_images/email_delete.png", _PMSDELETE) . "</a>\n"
        . "<td align=\"right\">"
         . "<a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a> &nbsp;";
        if ($previous) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read_sent&amp;id=$previous\">" . mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . "</a> &nbsp;";
        } else {
            echo mxCreateImage("$url_images/left.gif", _PMSPREVIOUS) . " &nbsp;";
        }
        if ($next) {
            echo "<a href=\"modules.php?name=$module_name&amp;op=read_sent&amp;id=$next\">" . mxCreateImage("$url_images/right.gif", _PMSNEXT) . "</a>";
        } else {
            echo mxCreateImage("$url_images/right.gif", _PMSNEXT);
        }
        echo "</td></tr></table>"
         . "</td></tr></table>";
    }
}

function deletesentmessage($msg_id, $uid)
{
    global $prefix, $user_prefix, $module_name, $refresh, $bgcolor2, $url_images;
    list($msg_id, $uid) = mxForceInteger($msg_id, $uid);
    $qry = "SELECT msg_time FROM {$prefix}_priv_msgs_send WHERE (from_userid=$uid) and (msg_id=$msg_id) and (from_userid is not null) LIMIT 0,1";
    list($time) = sql_fetch_row(sql_query($qry));
    $qry = "SELECT msg_id FROM {$prefix}_priv_msgs_send WHERE (from_userid=$uid) and (msg_time>'$time') and (msg_id<>$msg_id) and (from_userid is not null) order by msg_time asc LIMIT 0,1";
    list($nextid) = sql_fetch_row(sql_query($qry));
    $qry = "DELETE FROM {$prefix}_priv_msgs_send WHERE (msg_id=$msg_id) AND (from_userid=$uid) or (from_userid is null)";
    if (!sql_query($qry)) {
        prvmsgerror(_ERRMSGNODELETE);
    } else {
        messagesheader($uid, 'send');
        echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
         . "<tr bgcolor=\"$bgcolor2\" align=\"center\"><td><br />" . _PMSMSGDELETED . "<br /><br />";
        if ($nextid) {
            $xrefresh = $refresh * 2;
            pmxHeader::add('<meta http-equiv="Refresh" content="' . $xrefresh . ';URL=modules.php?name=' . $module_name . '&amp;op=read&amp;id=' . $nextid . '">');
            echo "<a href=\"modules.php?name=$module_name&amp;op=index\"><img src=\"$url_images/privatemessages.png\" border=\"0\" alt=\"" . _PMSRETURNTOPMSG . "\"></a> &nbsp; <a href=\"modules.php?name=$module_name&amp;op=read&amp;id=$nextid\"><img src=\"$url_images/right.gif\" border=\"0\" alt=\"" . _PMSNEXT . "\"></a>";
        } else {
            pmxHeader::add('<meta http-equiv="Refresh" content="' . $refresh . ';URL=modules.php?name=' . $module_name . '&amp;op=sendmsg">');
            echo "<a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . _PMSRETURNTOPMSG . "</a>";
        }
        echo "<br /><br /></td></tr></table>";
    }
}

function deletesentmessages($arrformvars, $uid)
{
    global $prefix, $refresh, $module_name, $bgcolor2;
    $status = 0;
    if (isset($arrformvars["msg_id"])) {
        list($uid, $arrformvars["msg_id"]) = mxForceInteger($uid, $arrformvars["msg_id"]);
        while (list($key, $val) = each($arrformvars["msg_id"])) {
            $qry = "DELETE FROM {$prefix}_priv_msgs_send WHERE (msg_id=$val) AND (from_userid=$uid) or (from_userid is null)";
            if (!sql_query($qry)) {
                prvmsgerror(_ERRMSGNODELETE);
            } else {
                $status = 1;
            }
        }
    }

    pmxHeader::add('<meta http-equiv="Refresh" content="' . $refresh . ';URL=modules.php?name=' . $module_name . '&amp;op=sendmsg">');
    messagesheader($uid, 'send');
    echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
     . "<tr bgcolor=\"$bgcolor2\" align=\"center\"><td><br />";
    if ($status) {
        echo _PMSMSGDELETED2;
    } else {
        echo _PMSMSGNOTODELETE;
    }
    echo "<br /><br /><a href=\"modules.php?name=$module_name&amp;op=sendmsg\">" . _PMSRETURNTOPMSG . "</a><br /><br /></td></tr></table>";
}
// PM per E-Mail sichern
function msgsichern($uid)
{
    global $prefix, $user_prefix, $module_name, $url_smiles, $subjectdefaulticon, $url_images;
    global $bgcolor1, $bgcolor2, $bgcolor3, $textcolor1, $textcolor2, $popupwidth, $poptableborder;
    $kopf = "" . _HELLO . ",\n" . _PMEMAIL . PMX_HOME_URL . _YOURMAILPMS . _HPMS . ":\n";
    $linie1 = "--------------------------------------------------------------------------------------------------------------------";
    $linie2 = "************************************************************************************************";
    $nachricht = $kopf;
    $qry = "SELECT subject, from_userid, msg_time, msg_text FROM {$prefix}_priv_msgs WHERE to_userid=" . $uid . " order by msg_time desc";
    $result = sql_query($qry);
    while (list($subject, $from_userid, $msg_time, $msg_text) = sql_fetch_row($result)) {
        $qry2 = "SELECT * FROM {$user_prefix}_users WHERE uid=" . $from_userid;
        $result2 = sql_query($qry2);
        $row = sql_fetch_array($result2);
        $absender = $row["uname"];
        $nachricht .= "$linie2\n";
        $nachricht .= " " . _TOPMS . " $msg_time " . _SPMS . " $absender:\n";
        $nachricht .= "$linie1\n";
        $nachricht .= " $msg_text\n";
    }
    $nachricht .= "$linie2\n";
    $nachricht .= "\n\n" . _AOPMS . ":\n\n";

    $qry4 = "SELECT subject, to_userid, msg_time, msg_text FROM {$prefix}_priv_msgs_send WHERE from_userid=" . $uid . "  order by msg_time desc";
    $result4 = sql_query($qry4);
    while (list($subject, $to_userid, $msg_time, $msg_text) = sql_fetch_row($result4)) {
        $qry5 = "SELECT * FROM {$user_prefix}_users WHERE uid=" . $to_userid;
        $result5 = sql_query($qry5);
        $row5 = sql_fetch_array($result5);
        $empfang = $row5["uname"];
        $nachricht .= "$linie2\n";
        $nachricht .= " " . _TOPMS . " $msg_time " . _ANPMS . " $empfang:\n";
        $nachricht .= "$linie1\n";
        $nachricht .= " $msg_text\n";
    }

    $nachricht .= "$linie2\n";
    $nachricht .= "\n" . _MFGPMS . "\n " . _PMSBOX;
    $qry3 = "SELECT * FROM {$user_prefix}_users WHERE uid=" . $uid;
    $result3 = sql_query($qry3);
    $row2 = sql_fetch_array($result3);
    $email = $row2["email"];
    $absend = $row2["uname"];
    mxmail($email, _PMSSI, $nachricht, $email, "", "", $absend);
    // mxDebugFuncVars($nachricht);
    messagesheader();
    OpenTable();
    echo '<center><b>' . _YOURPMS . '</b></center>';
    echo "<div style=\"float:right;\"><a href=\"modules.php?name=$module_name\">" . mxCreateImage("$url_images/privatemessages.png", _PMSRETURNTOPMSG) . "</a></div> ";
    CloseTable();
}
// PM per E-Mail sichern ende
/**
 * mainprog
 */
if (!MX_IS_USER) {
    header("Location: modules.php?name=Your_Account&op=login");
    exit;
} else {
    $module_name = basename(dirname(__FILE__));
    define('MX_ML_IMAGEPATH', 'modules/' . $module_name . '/images/');
    // Link verwendet in Sprachdateien
    if (!defined("_PMSBBCODELINK")) define("_PMSBBCODELINK", "<a href=\"#\" onclick=\"window.open('modules.php?name=" . $module_name . "&amp;file=bbcode','pmbbcode','left=10, top=10, width=640,height=480,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,copyhistory=0'); return false;\">");

    $userdata = mxGetUserData();

    $_REQUEST["op"] = (empty($_REQUEST["op"])) ? "index" : $_REQUEST["op"];
    $_REQUEST["uname"] = (empty($_REQUEST["uname"])) ? $userdata["uid"] : $_REQUEST["uname"];
    $_REQUEST["to_user"] = (empty($_REQUEST["to_user"])) ? $userdata["uname"] : $_REQUEST["to_user"];

    include_once("modules/" . $module_name . "/config.php");
    include_once("modules/" . $module_name . "/bbfunctions.php"); // PM Begrenzung
    include_once("modules/" . $module_name . "/functions.php");
    mxGetLangfile($module_name);

    if ($_REQUEST["op"] == "userslist") {
        userslist();
        exit;
    }

    $pagetitle = _PMSPRIVATEMESSAGES;
    
	include('header.php');
    echo "\n<!-- beginn $module_name output -->\n";

    if (isset($_REQUEST['mode']) && isset($_REQUEST['u'])) {
        $_REQUEST['op'] = $_REQUEST['mode'];
        $xinfo = mxGetUserDataFromUid($_REQUEST['u']);
        $_REQUEST["to_user"] = $xinfo['uname'];
    }

    switch ($_REQUEST['op']) {
        case "read":
            readmessage($_REQUEST["id"], $userdata["uid"]);
            break;
        case "reply":
            sendmessage($_REQUEST["id"], $userdata["uid"]);
            break;
        case "send":
            sendmessage(0, (isset($_REQUEST["uname"]) ? $_REQUEST["uname"] : ''));
            break;
        case "post":
        case "send_to":
            sendmessage(0, (isset($_REQUEST["uname"]) ? $_REQUEST["uname"] : ''), (isset($_REQUEST["to_user"]) ? $_REQUEST["to_user"] : ''));
            break;
        case "submit":
            if (isset($_REQUEST["submit"])) {
                submitmessage($_REQUEST, $userdata["uid"]);
            } else {
                cancelsubmit($_REQUEST["msg_id"], $userdata["uid"]);
            }
            break;
        case "delete":
            deletemessage($_REQUEST["msg_id"], $userdata["uid"]);
            break;
        case "delete_messages":
            deletemessages($_REQUEST, $userdata["uid"]);
            break;
        case "read_sent":
            readsentmessage($_REQUEST["id"], $userdata["uid"]);
            break;
        case "delete_sent":
            deletesentmessage($_REQUEST["msg_id"], $userdata["uid"]);
            break;
        case "delete_sent_messages":
            deletesentmessages($_REQUEST, $userdata["uid"]);
            break;
        case "sendmsg":
            sendmsg($userdata["uid"]);
            break;
        case "speichern":
            msgsichern($userdata["uid"]);
            break;
        default:
            msgindex($userdata["uid"]);
            break;
    }
    echo "\n<!-- end $module_name output -->\n";
    include('footer.php');
}}

?>