assign('smUser', $f_user); $refreshurl = 'process.php?folder='.urlencode($folder)."&pag=$pag&refr=true"; $arrow = ($sortorder == 'ASC') ? 'images/arrow_up.gif' : 'images/arrow_down.gif'; $arrow = ' '; $attach_arrow = ""; $subject_arrow = ""; $fromname_arrow = ""; $date_arrow = ""; $size_arrow = ""; $toname_arrow = ""; if ($TLN->mail_protocol == IMAP || !$is_inbox_or_spam) { switch ($sortby) { case 'subject': $subject_arrow = $arrow; break; case 'fromname': $fromname_arrow = $arrow; break; case 'date': $date_arrow = $arrow; break; case 'size': $size_arrow = $arrow; break; case 'toname': $toname_arrow = $arrow; break; } } /* $elapsedtime = (time()-$auth['last-update'])/60; $timeleft = ($TLN->prefs['refresh_time']-$elapsedtime); if ($timeleft > 0) { $refreshMeta = " "; } elseif ($TLN->prefs['refresh_time']) { $TLN->redirectAndExit("$refreshurl"); } */ // Assign metas to smarty, no more bad echos output //$smarty->assign('pageMetas', $pmetas."\n".$refreshMeta); /* load total size */ $totalused = 0; $folders = &$tdb->getFolders(); foreach ($folders as $key => $val) { $totalused += $val['size']; } $smarty->assign('smTotalUsed', ceil($totalused/1024)); $quota_enabled = ($quota_limit) ? 1 : 0; $smarty->assign('smQuotaEnabled', $quota_enabled); $smarty->assign('smQuotaLimit', Telaen::bytes2bkmg($quota_limit)); $usageGraph = Telaen::getUsageGraphic($totalused, $quota_limit); $smarty->assign('smUsageGraph', $usageGraph); $exceeded = (($quota_limit) && ($totalused >= $quota_limit)); // sorting arrays.. $smarty->assign('smAttachArrow', $attach_arrow); $smarty->assign('smSubjectArrow', $subject_arrow); $smarty->assign('smFromArrow', $fromname_arrow); $smarty->assign('smDateArrow', $date_arrow); $smarty->assign('smSizeArrow', $size_arrow); $tdb->getMessages($folder, true, $sortby, $sortorder); $headers = $TLN->mailListMsgs($folder, $start_pos, $end_pos); $nummsg = $folders[$folder]['count']; $newmsgs = $folders[$folder]['unread']; $reg_pp = $TLN->prefs['rpp']; $start_pos = ($pag-1)*$reg_pp; $end_pos = (($start_pos+$reg_pp) > $nummsg) ? $nummsg : $start_pos+$reg_pp; if (($start_pos >= $end_pos) && ($pag != 1)) { $TLN->redirectAndExit("messages.php?folder=$folder&pag=".($pag-1).""); } $jsquota = ($exceeded) ? 'true' : 'false'; eval('$jssource = "' . $commonJS . '";'); $jssource .= " "; if (isset($msg)) { $smarty->assign('smErrorMessage', $msg); } $forms = " "; $smarty->assign('smJS', $jssource); $smarty->assign('smForms', $forms); $smarty->assign('smUserEmail', $auth['email']); $smarty->assign('smFolder', $folder); $messagelist = array(); $index = 0; printf($textout); if ($nummsg > 0) { for ($i = $start_pos;$i<$end_pos;$i++) { $from = $TLN->getNames($headers[$i]['headers']['from'])[0]['name']; $to = $TLN->getNames($headers[$i]['headers']['to'])[0]['name']; $email = $TLN->getNames($headers[$i]['from'])[0]['mail']; $subject = $headers[$i]['subject']; $readlink = "javascript:readmsg($i,'{$headers[$i]['uidl']}')"; $composelink = "newmsg.php?folder=".urlencode($folder)."&nameto=".htmlspecialchars($from)."&mailto=".htmlspecialchars($email); $composelinksent = "newmsg.php?folder=".urlencode($folder)."&nameto=".htmlspecialchars($to)."&mailto=".htmlspecialchars($to); if ($headers[$i]['unread']) { $msg_img = './images/msg_unread.gif'; } elseif ($TLN->isFlagSet($headers[$i], 'answered')) { $msg_img = './images/msg_answered.gif'; } elseif ($TLN->isFlagSet($headers[$i], 'forwarded')) { $msg_img = './images/msg_forwarded.gif'; } else { $msg_img = './images/msg_read.gif'; } $prior = $headers[$i]['headers']['priority']; if ($prior == 0) { $prior = 3; } if ($prior > 3) { $img_prior = ' '; } elseif ($prior < 3) { $img_prior = ' '; } else { $img_prior = ""; } $msg_img = ' '; $checkbox = ''; $attachimg = ($headers[$i]['attach']) ? ' ' : ''; $date = $headers[$i]['date']; $size = $headers[$i]['size']; $messagelist[$index]['read'] = !$headers[$i]['unread']; $messagelist[$index]['readlink'] = $readlink; $messagelist[$index]['composelink'] = $composelink; $messagelist[$index]['composelinksent'] = $composelinksent; $messagelist[$index]['from'] = $from; $messagelist[$index]['to'] = $to; $messagelist[$index]['subject'] = $subject; $messagelist[$index]['date'] = $date; $messagelist[$index]['statusimg'] = $msg_img; $messagelist[$index]['checkbox'] = $checkbox; $messagelist[$index]['attachimg'] = $attachimg; $messagelist[$index]['priorimg'] = $img_prior; $messagelist[$index]['size'] = Telaen::bytes2bkmg($size); $index++; } } $smarty->assign('smNumMessages', $nummsg); $smarty->assign('smNumUnread', $newmsgs); $smarty->assign('smMessageList', $messagelist); $display = extended_name($folder); $smarty->assign('smBoxName', $display); // Ugg. This should be it's own lang[] entry $wlcmessage = $lang['msg_you_have']." $nummsg "; if ($nummsg == 1) { $wlcmessage .= $lang['msg_message'].", "; } else { $wlcmessage .= $lang['msg_messages'].", "; } if ($newmsgs == 0) { $wlcmessage .= $lang['msg_none_unread']." "; } elseif ($newmsgs == 1) { $wlcmessage .= "$newmsgs ".$lang['msg_one_unread']." "; } else { $wlcmessage .= "$newmsgs ".$lang['msg_more_unread']." "; } $wlcmessage .= $lang['msg_in_the_folder']." $display"; $smarty->assign('smWelcomeMessage2', $wlcmessage); // Page navigation $navigation = ''; if ($nummsg > 0) { if ($pag > 1) { $smarty->assign('smFirstLink', "messages.php?folder=".urlencode($folder)."&pag=1"); $smarty->assign('smPreviousLink', "messages.php?folder=".urlencode($folder)."&pag=".($pag-1).""); } $start = $pag - 2; if ($start < 1) { $start = 1; } else { $navigation = ' ... '; } $totPages = ceil($nummsg / $reg_pp); for ($i = $start; $i <= ($pag + 2); $i++) { if ($i > $totPages) { break; } elseif ($pag == $i) { $navigation .= "[$i] "; } else { $navigation .= "$i "; } } if ($i < $totPages) { $navigation .= ' ... '; } if ($end_pos < $nummsg) { $smarty->assign('smNextLink', "messages.php?folder=".urlencode($folder)."&pag=".($pag+1)); $smarty->assign('smLastLink', "messages.php?folder=".urlencode($folder)."&pag=".$totPages); } $navigation .= " ($pag/".$totPages.")"; } $smarty->assign('smNavBar', $navigation); $avalfolders = []; reset($folders); foreach ($folders as $a) { if ($a['name'] != $folder && ($TLN->mail_protocol == IMAP || ($a['name'] != 'inbox'))) { $entry = $TLN->fixPrefix($a['name'], 0); $display = extended_name($entry); $avalfolders[] = array('path' => $entry, 'display' => $display); } } unset($TLN); $smarty->assign('smHaveSpam', $auth['havespam']); $smarty->assign('smAvalFolders', $avalfolders); $smarty->display("$themez/messagelist.tpl");