} // recording contactee access time $now = time(); if ($uid == $data['uid'] && $now > $data['atime']) { $xoopsDB->queryF("UPDATE " . CCMES . " SET atime={$now} WHERE msgid={$msgid}"); } include XOOPS_ROOT_PATH . "/header.php"; $breadcrumbs = new XoopsBreadcrumbs(_MD_CCENTER_RECEPTION, 'reception.php'); $pass = isset($_GET['p']) ? $_GET['p'] : ''; $add = $pass ? "p=" . urlencode($pass) : ""; $to_uname = XoopsUser::getUnameFromId($data['touid']); $res = $xoopsDB->query("SELECT * FROM " . FORMS . " WHERE formid=" . $data['fidref']); $form = $xoopsDB->fetchArray($res); $items = get_form_attribute($form['defs']); $raws = unserialize_text($data['body']); $values = cc_display_values($raws, $items, $data['msgid'], $add); $data['comment'] = $myts->displayTarea($data['comment']); $isadmin = $uid && $xoopsUser->isAdmin($xoopsModule->getVar('mid')); $title = $data['title']; if ($isadmin) { $breadcrumbs->set($title, "reception.php?form=" . $data['fidref']); } else { $breadcrumbs->set($title, "index.php?form=" . $data['fidref']); } list($lab) = array_keys($raws); $breadcrumbs->set($lab . ': ' . $raws[$lab], ''); $breadcrumbs->assign(); $has_mail = !empty($data['email']); $xoopsTpl->assign(array('subject' => $title, 'sender' => xoops_getLinkedUnameFromId($data['uid']), 'sendto' => $data['touid'] ? xoops_getLinkedUnameFromId($data['touid']) : _MD_CONTACT_NOTYET, 'cdate' => formatTimestamp($data['ctime']), 'mdate' => myTimestamp($data['mtime'], 'l', _MD_TIME_UNIT), 'adate' => myTimestamp($data['atime'], 'l', _MD_TIME_UNIT), 'readit' => $data['atime'] >= $data['mtime'], 'data' => $data, 'items' => $values, 'status' => $msg_status[$data['status']], 'is_eval' => is_cc_evaluate($msgid, $uid, $pass), 'is_mine' => $data['touid'] == $uid, 'is_getmine' => $data['touid'] == 0 && $uid && in_array($data['cgroup'], $xoopsUser->getGroups()), 'own_status' => array_slice($msg_status, 1, $isadmin ? 4 : 3), 'xoops_pagetitle' => htmlspecialchars($xoopsModule->getVar('name') . " | " . $data['title']), 'has_mail' => $has_mail)); include XOOPS_ROOT_PATH . '/include/comment_view.php'; include XOOPS_ROOT_PATH . "/footer.php";
$errors = store_message($items, $form); } elseif ($op == 'confirm') { assign_form_widgets($items, true); } } else { assign_form_widgets($items); } $cust = $form['custom']; $form['items'] =& $items; $action = "index.php?form=" . $form['formid']; if (!empty($form['priuser'])) { $action .= '&uid=' . $form['priuser']['uid']; } $form['action'] = $action; $title = htmlspecialchars($form['title'], ENT_QUOTES); $breadcrumbs->set($title, "index.php?form={$id}"); include XOOPS_ROOT_PATH . "/header.php"; $xoopsTpl->assign('errors', $errors); $xoopsTpl->assign('xoops_pagetitle', $title); $breadcrumbs->assign(); $xoopsOption['template_main'] = render_form($form, $op); if ($cust != _CC_TPL_FULL) { include XOOPS_ROOT_PATH . "/footer.php"; } else { echo $xoopsTpl->fetch('db:' . $xoopsOption['template_main']); } function store_message($items, $form) { global $xoopsUser, $xoopsDB, $xoopsModuleConfig; $uid = is_object($xoopsUser) ? $xoopsUser->getVar('uid') : 0; $store = $form['store'];
$isadmin = $xoopsUser->isAdmin($xoopsModule->getVar('mid')); if ($isadmin) { $cond = "1"; } else { $cond = '(priuid=' . $xoopsUser->getVar('uid') . ' OR cgroup IN (' . join(',', $xoopsUser->getGroups()) . '))'; } if ($id) { $cond .= ' AND formid=' . $id; } $res = $xoopsDB->query("SELECT f.*,count(msgid) nmsg,max(m.mtime) ltime\n FROM " . FORMS . " f LEFT JOIN " . CCMES . " m ON fidref=formid AND status<>" . $xoopsDB->quoteString(_STATUS_DEL) . "\n WHERE {$cond} GROUP BY formid"); if (!$res || $xoopsDB->getRowsNum($res) == 0) { redirect_header('index.php', 3, _NOPERM); exit; } $breadcrumbs = new XoopsBreadcrumbs(); $breadcrumbs->set(_MD_CCENTER_RECEPTION, "reception.php"); if ($xoopsDB->getRowsNum($res) > 1) { include XOOPS_ROOT_PATH . "/header.php"; $xoopsOption['template_main'] = "ccenter_reception.html"; $breadcrumbs->assign(); $forms = array(); $member_handler =& xoops_gethandler('member'); $groups = $member_handler->getGroupList(new Criteria('groupid', XOOPS_GROUP_ANONYMOUS, '!=')); while ($form = $xoopsDB->fetchArray($res)) { $form['title'] = htmlspecialchars($form['title']); $form['ltime'] = $form['ltime'] ? formatTimestamp($form['ltime']) : ""; if ($form['priuid']) { if ($form['priuid'] < 0) { $form['contact'] = '[' . $groups[-$form['priuid']] . ']'; } else { $form['contact'] = xoops_getLinkedUnameFromId($form['priuid']);