Пример #1
0
function load_canned_messages($locale, $groupid)
{
    global $mysqlprefix;
    $link = connect();
    $query = "select id, vcvalue from {$mysqlprefix}chatresponses " . "where locale = '" . $locale . "' AND (" . ($groupid ? "groupid = {$groupid}" : "groupid is NULL OR groupid = 0") . ") order by vcvalue";
    $result = select_multi_assoc($query, $link);
    if (!$groupid && count($result) == 0) {
        foreach (explode("\n", getstring_('chat.predefined_answers', $locale)) as $answer) {
            $result[] = array('id' => '', 'vcvalue' => $answer);
        }
        if (count($result) > 0) {
            $updatequery = "insert into {$mysqlprefix}chatresponses (vcvalue,locale,groupid) values ";
            for ($i = 0; $i < count($result); $i++) {
                if ($i > 0) {
                    $updatequery .= ", ";
                }
                $updatequery .= "('" . mysql_real_escape_string($result[$i]['vcvalue'], $link) . "','{$locale}', NULL)";
            }
            perform_query($updatequery, $link);
            $result = select_multi_assoc($query, $link);
        }
    }
    mysql_close($link);
    return $result;
}
Пример #2
0
function getlocalforJS($text, $params)
{
    global $current_locale, $webim_encoding;
    $string = myiconv($webim_encoding, getoutputenc(), getstring_($text, $current_locale));
    $string = str_replace("\"", "\\\"", str_replace("\n", "\\n", $string));
    for ($i = 0; $i < count($params); $i++) {
        $string = str_replace("{" . $i . "}", $params[$i], $string);
    }
    return $string;
}
Пример #3
0
function reopen_thread($threadid)
{
    global $state_queue, $state_loading, $state_waiting, $state_chatting, $state_closed, $state_left, $kind_events;
    $link = connect();
    $thread = thread_by_id_($threadid, $link);
    if (!$thread) {
        return FALSE;
    }
    if ($thread['istate'] == $state_closed || $thread['istate'] == $state_left) {
        return FALSE;
    }
    if ($thread['istate'] != $state_chatting && $thread['istate'] != $state_queue && $thread['istate'] != $state_loading) {
        commit_thread($threadid, array("istate" => $state_waiting, "nextagent" => 0), $link);
    }
    post_message_($thread['threadid'], $kind_events, getstring_("chat.status.user.reopenedthread", $thread['locale']), $link);
    mysql_close($link);
    return $thread;
}
Пример #4
0
function getlocalforJS($text, $params)
{
    global $current_locale, $mibew_encoding;
    $string = myiconv($mibew_encoding, getoutputenc(), getstring_($text, $current_locale, true));
    $string = str_replace("\"", "\\\"", str_replace("\n", "\\n", $string));
    for ($i = 0; $i < count($params); $i++) {
        $string = str_replace("{" . $i . "}", $params[$i], $string);
    }
    return sanitize_string($string, 'low', 'moderate');
}