Beispiel #1
0
function setupChatViewForOperator($thread, $visitSession, $operator, $viewonly, &$TML)
{
    $TML->assign('thread', $thread);
    $TML->assign('visit_session', $visitSession);
    $TML->assign('first_page', VisitSession::GetInstance()->getFirstPage($visitSession['visitsessionid']));
    $chats = Thread::getInstance()->CountNonEmptyThreads($visitSession['visitorid']);
    $TML->assign('chats_count', max($chats - 1, 0));
    $TML->assign('browser', get_user_agent($visitSession['useragent']));
    $TML->assign('visitor_name', preg_replace('/</', '&lt', $visitSession['visitorname']));
    if ($viewonly) {
        $TML->assign('mode', 'viewonly');
    }
    $historyParams = array('q' => $visitSession['visitorid']);
    $root = WEBIM_ROOT;
    $history = '/operator/history.php';
    $TML->assign('servlet_root', $root);
    $TML->assign('history_servlet', $history);
    $TML->assign('history_params', $historyParams);
    $TML->assign('send_shortcut', "Enter");
    $TML->assign('isOpera95', is_agent_opera95());
    $TML->assign('userAgent', $_SERVER['HTTP_USER_AGENT']);
    $TML->assign('visitor_geodata', GeoIPLookup::getGeoDataByIP($visitSession['ip']));
    $TML->assign('predefined_answers', preparePredefinedAnswers($thread['locale']));
}
Beispiel #2
0
function setupChatViewForVisitor($thread, $level)
{
    $visitSession = VisitSession::GetInstance()->GetVisitSessionById($thread['visitsessionid']);
    $page['agent'] = false;
    $page['visitor'] = true;
    $page['canpost'] = true;
    $nameisset = Resources::Get('chat.default.visitorname') != $visitSession['visitorname'];
    $page['displ1'] = $nameisset ? 'none' : 'inline';
    $page['displ2'] = $nameisset ? 'inline' : 'none';
    $page['level'] = $level;
    $page['ct_chatThreadId'] = $thread['threadid'];
    $page['ct_token'] = $thread['token'];
    $page['ct_visitor_name'] = $visitSession['visitorname'];
    $page['canChangeName'] = Visitor::getInstance()->canVisitorChangeName();
    $page['ct_company_name'] = Settings::Get('company_name');
    $page['ct_company_chatLogoURL'] = Settings::Get('logo');
    $page['webimHost'] = Settings::Get('hosturl');
    $page['send_shortcut'] = 'Enter';
    $params = 'thread=' . $thread['threadid'] . '&token=' . $thread['token'];
    $page['selfLink'] = WEBIM_ROOT . '/client.php?' . $params . '&level=' . $level;
    $page['isOpera95'] = is_agent_opera95();
    $page['displayrate'] = !empty($thread['rate']) ? 'none' : 'inline';
    $page['rateList'] = explode('|', Resources::Get('chat.operator_rates'));
    if (!empty($res)) {
        foreach ($res as $k => $v) {
            $page[$k] = $v;
        }
    }
    $page['viewonly'] = '0';
    return $page;
}
Beispiel #3
0
function setup_chatview_for_operator($thread, $operator)
{
    global $page, $webimroot, $company_logo_link, $company_name, $settings;
    loadsettings();
    $page = array();
    $page['agent'] = true;
    $page['user'] = false;
    $page['canpost'] = $thread['agentId'] == $operator['operatorid'];
    $page['ct.chatThreadId'] = $thread['threadid'];
    $page['ct.token'] = $thread['ltoken'];
    $page['ct.user.name'] = htmlspecialchars(topage(get_user_name($thread['userName'], $thread['remote'], $thread['userid'])));
    $page['chat.title'] = topage($settings['chattitle']);
    setup_logo();
    if ($settings['sendmessagekey'] == 'enter') {
        $page['send_shortcut'] = "Enter";
        $page['ignorectrl'] = 1;
    } else {
        $page['send_shortcut'] = is_mac_opera() ? "&#8984;-Enter" : "Ctrl-Enter";
        $page['ignorectrl'] = 0;
    }
    if ($settings['enablessl'] == "1" && !is_secure_request()) {
        $page['sslLink'] = get_app_location(true, true) . "/operator/agent.php?thread=" . $thread['threadid'] . "&amp;token=" . $thread['ltoken'];
    }
    $page['isOpera95'] = is_agent_opera95();
    $page['neediframesrc'] = needsFramesrc();
    $page['historyParams'] = array("userid" => "" . $thread['userid']);
    $page['historyParamsLink'] = add_params($webimroot . "/operator/userhistory.php", $page['historyParams']);
    $predefinedres = "";
    $canned_messages = load_canned_messages($thread['locale'], $thread['groupid']);
    foreach ($canned_messages as $answer) {
        $predefinedres .= "<option>" . htmlspecialchars(topage($answer['vcvalue'])) . "</option>";
    }
    $page['predefinedAnswers'] = $predefinedres;
    $params = "thread=" . $thread['threadid'] . "&amp;token=" . $thread['ltoken'];
    $page['redirectLink'] = "{$webimroot}/operator/agent.php?" . $params . "&amp;act=redirect";
    $page['namePostfix'] = "";
    $page['frequency'] = $settings['updatefrequency_chat'];
}