示例#1
0
文件: pm.php 项目: AroundPBT/PHPBoost
                $expd = false;
                $pm_to = $convers['user_id'];
            }
            $view = false;
            if ($pm['view_status'] == '1') {
                //Le membre a déjà lu le message => échec.
                $view = true;
            }
            //Le destinataire n'a pas lu le message => on peut éditer.
            if ($view === false) {
                $id_first = PersistenceContext::get_querier()->get_column_value(DB_TABLE_PM_MSG, 'MIN(id)', 'WHERE idconvers = :id', array('id' => $pm['idconvers']));
                if ($pm_del > $id_first) {
                    $pm_last_msg = PrivateMsg::delete($pm_to, $pm_del, $pm['idconvers']);
                    AppContext::get_response()->redirect('/user/pm' . url('.php?id=' . $pm['idconvers'], '-0-' . $pm['idconvers'] . '.php', '&') . '#m' . $pm_last_msg);
                } elseif ($pm_del == $id_first) {
                    PrivateMsg::delete_conversation($pm_to, $pm['idconvers'], $expd, PrivateMsg::DEL_PM_CONVERS, PrivateMsg::UPDATE_MBR_PM);
                    AppContext::get_response()->redirect('/user/pm.php');
                }
            } else {
                $controller = new UserErrorController(LangLoader::get_message('error', 'status-messages-common'), $LANG['e_pm_nodel']);
                DispatchManager::redirect($controller);
            }
        } else {
            $error_controller = PHPBoostErrors::unexisting_page();
            DispatchManager::redirect($error_controller);
        }
    } else {
        $error_controller = PHPBoostErrors::unexisting_page();
        DispatchManager::redirect($error_controller);
    }
} elseif (!empty($pm_edit)) {
示例#2
0
        if ($del_convers == 'on') {
            $del_convers = false;
            if ($row['user_id'] == $User->get_attribute('user_id')) {
                $expd = true;
                if ($row['user_convers_status'] == 2) {
                    $del_convers = true;
                }
            } elseif ($row['user_id_dest'] == $User->get_attribute('user_id')) {
                $expd = false;
                if ($row['user_convers_status'] == 1) {
                    $del_convers = true;
                }
            }
            $view_status = $Sql->query("SELECT view_status FROM " . DB_TABLE_PM_MSG . " WHERE id = '" . $row['last_msg_id'] . "'", __LINE__, __FILE__);
            $update_nbr_pm = $view_status == '0' ? true : false;
            $Privatemsg->delete_conversation($User->get_attribute('user_id'), $row['id'], $expd, $del_convers, $update_nbr_pm);
        }
    }
    redirect(HOST . DIR . '/member/pm' . url('.php?pm=' . $User->get_attribute('user_id'), '-' . $User->get_attribute('user_id') . '.php', '&'));
} elseif (!empty($pm_del)) {
    $Session->csrf_get_protect();
    $pm = $Sql->query_array(DB_TABLE_PM_MSG, 'idconvers', 'contents', 'view_status', "WHERE id = '" . $pm_del . "' AND user_id = '" . $User->get_attribute('user_id') . "'", __LINE__, __FILE__);
    if (!empty($pm['idconvers'])) {
        $convers = $Sql->query_array(DB_TABLE_PM_TOPIC, 'title', 'user_id', 'user_id_dest', 'last_msg_id', "WHERE id = '" . $pm['idconvers'] . "'", __LINE__, __FILE__);
        if ($pm_del == $convers['last_msg_id']) {
            if ($convers['user_id'] == $User->get_attribute('user_id')) {
                $expd = true;
                $pm_to = $convers['user_id_dest'];
            } elseif ($convers['user_id_dest'] == $User->get_attribute('user_id')) {
                $expd = false;
                $pm_to = $convers['user_id'];