예제 #1
0
/**
 * Изменить данные привязки аккаунта к телефону.
 * 
 * @param int    $sUid       UID пользователя
 * @param string $sPhone     телефон
 * @param string $sPhoneOnly отправлять восстановление пароля только на телефон - 't' или 'f'
 * @param string $sSafetyMob Входить в финансы только по СМС - 't' или 'f'
 *
 * @return object xajaxResponse
 */
function updateSafetyPhone($sUid = 0, $sPhone = '', $sPhoneOnly = 'f', $sSafetyMob = 'f')
{
    session_start();
    $objResponse = new xajaxResponse();
    if (hasPermissions('users')) {
        require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/users.php';
        require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sbr.php';
        $sPhone = '+' . str_replace('+', '', $sPhone);
        $reqv = sbr_meta::getUserReqvs($sUid);
        if ($reqv[$reqv['form_type']]['mob_phone'] != $sPhone) {
            $nreqv['mob_phone'] = $sPhone;
            $cnt = 0;
            $filter = array('search_phone_exact' => true, 'search_phone' => $nreqv['mob_phone']);
            sbr_meta::searchUsersPhone($cnt, $filter);
            if ($cnt > 0) {
                $res = "Телефон {$sPhone} уже зарегистрирован в системе.";
                $objResponse->assign("safety_phone{$sUid}", 'value', $reqv[$reqv['form_type']]['mob_phone']);
            } else {
                sbr_meta::$reqv_fields[$reqv['form_type']]['mob_phone']['maxlength'] = 15;
                $error = sbr_meta::setUserReqv($sUid, $reqv['rez_type'], $reqv['form_type'], $nreqv);
            }
        }
        $res = users::ChangeSafetyPhone($sUid, $sPhone, $sPhoneOnly);
        $error = sbr_meta::safetyMobPhone($sUid, $sSafetyMob);
        if ($res) {
            $objResponse->alert($res);
            $objResponse->script("\$('safety_phone_show{$sUid}').setStyle('display', '');");
        } else {
            $sChecked = $sPhoneOnly == 't' ? 'true' : 'false';
            $sDisplay = $sPhoneOnly == 't' ? '' : 'none';
            $sSafetyMobDisplay = $sSafetyMob == 't' ? '' : 'none';
            $objResponse->assign("safety_phone_value{$sUid}", 'innerHTML', $sPhone);
            $objResponse->assign("safety_phone_hidden{$sUid}", 'value', $sPhone);
            $objResponse->script("\$('safety_only_phone_show{$sUid}').setStyle('display', '{$sDisplay}');");
            $objResponse->script("\$('is_safety_mob_show{$sUid}').setStyle('display', '{$sSafetyMobDisplay}');");
            $sDisplay = trim($sPhone) ? '' : 'none';
            $objResponse->script("\$('safety_phone_show{$sUid}').setStyle('display', '{$sDisplay}');");
        }
        $objResponse->script("\$('safety_phone_edit{$sUid}').setStyle('display', 'none');");
    }
    return $objResponse;
}
예제 #2
0
         }
         $history_bill[$value['uid']][] = array('ammount' => $value['ammount'], 'op_date' => $value['op_date'], 'comments' => $value['descr'] . ($value['comments'] ? " ({$value['comments']})" : ''));
     }
     $no_more = 1;
     break;
 case 'change_email':
     $res = users::ChangeMail(trim($_POST['uid']), trim($_POST['email']));
     if ($res) {
         $_SESSION['a_alert_msg'] = $res;
     }
     ob_end_clean();
     header('Location: ?type=' . $_POST['s_type'] . '&page=' . $_POST['s_page'] . '&search=' . $_POST['s_search'] . '&searchip=' . $_POST['s_searchip'] . '&action=' . $_POST['s_action'] . '#user_' . $_POST['uid']);
     exit;
     break;
 case 'change_safety_phone':
     $res = users::ChangeSafetyPhone(trim($_POST['uid']), $_POST['safety_phone'], $_POST['safety_only_phone']);
     if ($res) {
         $_SESSION['a_alert_msg'] = $res;
     }
     ob_end_clean();
     header('Location: ?type=' . $_POST['s_type'] . '&page=' . $_POST['s_page'] . '&search=' . $_POST['s_search'] . '&searchip=' . $_POST['s_searchip'] . '&action=' . $_POST['s_action'] . '#user_' . $_POST['uid']);
     exit;
     break;
 case 'change_safety_ip':
     $res = users::ChangeSafetyIP(trim($_POST['uid']), $_POST['safety_ip']);
     if ($res) {
         $_SESSION['a_alert_msg'] = $res;
     }
     ob_end_clean();
     header('Location: ?type=' . $_POST['s_type'] . '&page=' . $_POST['s_page'] . '&search=' . $_POST['s_search'] . '&searchip=' . $_POST['s_searchip'] . '&action=' . $_POST['s_action'] . '#user_' . $_POST['uid']);
     exit;
예제 #3
0
         }
         $history_bill[$value['uid']][] = array("ammount" => $value['ammount'], "op_date" => $value['op_date'], "comments" => $value['descr'] . ($value['comments'] ? " ({$value['comments']})" : ""));
     }
     $no_more = 1;
     break;
 case "change_email":
     $res = users::ChangeMail(trim($_POST["uid"]), trim($_POST["email"]));
     if ($res) {
         $_SESSION['a_alert_msg'] = $res;
     }
     ob_end_clean();
     header('Location: ?type=' . $_POST['s_type'] . '&page=' . $_POST['s_page'] . '&search=' . $_POST['s_search'] . '&searchip=' . $_POST['s_searchip'] . '&action=' . $_POST['s_action'] . '#user_' . $_POST['uid']);
     exit;
     break;
 case "change_safety_phone":
     $res = users::ChangeSafetyPhone(trim($_POST["uid"]), $_POST["safety_phone"], $_POST['safety_only_phone']);
     if ($res) {
         $_SESSION['a_alert_msg'] = $res;
     }
     ob_end_clean();
     header('Location: ?type=' . $_POST['s_type'] . '&page=' . $_POST['s_page'] . '&search=' . $_POST['s_search'] . '&searchip=' . $_POST['s_searchip'] . '&action=' . $_POST['s_action'] . '#user_' . $_POST['uid']);
     exit;
     break;
 case "change_safety_ip":
     $res = users::ChangeSafetyIP(trim($_POST["uid"]), $_POST["safety_ip"]);
     if ($res) {
         $_SESSION['a_alert_msg'] = $res;
     }
     ob_end_clean();
     header('Location: ?type=' . $_POST['s_type'] . '&page=' . $_POST['s_page'] . '&search=' . $_POST['s_search'] . '&searchip=' . $_POST['s_searchip'] . '&action=' . $_POST['s_action'] . '#user_' . $_POST['uid']);
     exit;