Пример #1
0
$remote_addr = @$_SERVER["REMOTE_ADDR"];
$remote_addr_check = $db->executeGetOne("SELECT `current_ip` FROM `users` WHERE `id`='" . $user_id . "'");
if ($remote_addr != $remote_addr_check) {
    _err("Not authorized");
}
$current_dndstate = $db->executeGetOne("SELECT `active` FROM `dnd` WHERE `_user_id`=" . $user_id);
gs_log(GS_LOG_DEBUG, "current_dndstate: " . $current_dndstate . " for user id " . $user_id);
if ($current_dndstate == 'yes') {
    $check = $db->execute("INSERT INTO `dnd`\n\t\t(`_user_id`, `active`) VALUES\n\t\t(" . $user_id . ", 'no') \n\t\tON DUPLICATE KEY UPDATE `active` = 'no'");
    if (!$check) {
        _err('Failed to set new DND state.');
    }
    $xml = "<AastraIPPhoneExecute>\n" . "\t<ExecuteItem URI=\"Led: softkey" . $dnd_softkey . "=off\"/>\n" . "\t<ExecuteItem URI=\"" . $prov_url_aastra . 'settings.php?dynamic=1' . "\"/>\n" . "</AastraIPPhoneExecute>\n";
} else {
    $check = $db->execute("INSERT INTO `dnd`\n\t\t(`_user_id`, `active`) VALUES\n\t\t(" . $user_id . ", 'yes') \n\t\tON DUPLICATE KEY UPDATE `active` = 'yes'");
    if (!$check) {
        _err('Failed to set new DND state.');
    }
    $xml = "<AastraIPPhoneExecute>\n" . "\t<ExecuteItem URI=\"Led: softkey" . $dnd_softkey . "=slowflash\"/>\n" . "\t<ExecuteItem URI=\"" . $prov_url_aastra . 'settings.php?dynamic=1' . "\"/>\n" . "</AastraIPPhoneExecute>\n";
}
if (GS_BUTTONDAEMON_USE == true) {
    $peer = _get_sipuser($user_id);
    $newstate = "off";
    if ($current_dndstate == 'no') {
        $newstate = "on";
    }
    if ($peer) {
        gs_dnd_changed_ui($peer, $newstate);
    }
}
aastra_transmit_str($xml);
Пример #2
0
        _err('Unknown sip user.');
    }
    return $user;
}
if (!gs_get_conf('GS_SNOM_PROV_ENABLED')) {
    gs_log(GS_LOG_DEBUG, "Snom provisioning not enabled");
    snom_textscreen(__('Fehler'), __('Nicht aktiviert'));
}
if (isset($_REQUEST['r'])) {
    $reason = $_REQUEST['r'];
} else {
    $reason = '';
}
$db = gs_db_master_connect();
$user_id = _get_userid();
$sip_user = _get_sipuser($user_id);
// setup i18n stuff
$user = @gs_prov_get_user_info($db, $user_id);
gs_setlang(gs_get_lang_user($db, $user, GS_LANG_FORMAT_GS));
gs_loadtextdomain('gemeinschaft-gui');
gs_settextdomain('gemeinschaft-gui');
$remote_addr = @$_SERVER["REMOTE_ADDR"];
$remote_addr_check = $db->executeGetOne("SELECT `current_ip` FROM `users` WHERE `id`='" . $user_id . "'");
if ($remote_addr != $remote_addr_check) {
    _err("Not authorized");
}
$agent_id = $db->executeGetOne("SELECT `id` FROM `agents` WHERE `user_id`='" . $db->escape($user_id) . "'");
if ($agent_id <= 0) {
    _err(__('Kein Agent'));
}
$rs = $db->execute("SELECT SUM(`paused`) AS `paused`, COUNT(`_queue_id`) AS `q_count` FROM `ast_queue_members` WHERE `_user_id`=" . $user_id);