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() ? "⌘-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'] . "&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'] . "&token=" . $thread['ltoken']; $page['redirectLink'] = "{$webimroot}/operator/agent.php?" . $params . "&act=redirect"; $page['namePostfix'] = ""; $page['frequency'] = $settings['updatefrequency_chat']; }
require_once '../libs/common.php'; require_once '../libs/operator.php'; if (check_login(false)) { header("Location: {$mibewroot}/operator/"); exit; } $errors = array(); $page = array('formisRemember' => true, 'version' => $version); if (isset($_POST['login']) && isset($_POST['password'])) { $login = getparam('login'); $password = getparam('password'); $remember = isset($_POST['isRemember']) && $_POST['isRemember'] == "on"; $operator = operator_by_login($login); if ($operator && isset($operator['vcpassword']) && check_password_hash($login, $password, $operator['vcpassword'])) { $target = $password == '' ? "{$mibewroot}/operator/operator.php?op=" . intval($operator['operatorid']) : (isset($_SESSION['backpath']) ? $_SESSION['backpath'] : "{$mibewroot}/operator/index.php"); login_operator($operator, $remember, is_secure_request()); header("Location: {$target}"); exit; } else { $errors[] = getlocal("page_login.error"); $page['formlogin'] = $login; } } else { if (isset($_GET['login'])) { $login = getgetparam('login'); if (preg_match("/^(\\w{1,15})\$/", $login)) { $page['formlogin'] = $login; } } } $page['localeLinks'] = get_locale_links("{$mibewroot}/operator/login.php");
* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ require_once '../libs/common.php'; require_once '../libs/chat.php'; require_once '../libs/groups.php'; require_once '../libs/operator.php'; require_once '../libs/pagination.php'; require_once '../libs/expand.php'; $operator = check_login(); loadsettings(); if ($settings['enablessl'] == "1" && $settings['forcessl'] == "1") { if (!is_secure_request()) { $requested = $_SERVER['PHP_SELF']; if ($_SERVER['REQUEST_METHOD'] == 'GET' && $_SERVER['QUERY_STRING']) { header("Location: " . get_app_location(true, true) . "/operator/agent.php?" . $_SERVER['QUERY_STRING']); } else { die("only https connections are handled"); } exit; } } $threadid = verifyparam("thread", "/^\\d{1,10}\$/"); if (!isset($_GET['token'])) { $remote_level = get_remote_level($_SERVER['HTTP_USER_AGENT']); if ($remote_level != "ajaxed") { die("old browser is used, please update it"); }