当前位置: 首页>>代码示例>>PHP>>正文


PHP VBX_User::get方法代码示例

本文整理汇总了PHP中VBX_User::get方法的典型用法代码示例。如果您正苦于以下问题:PHP VBX_User::get方法的具体用法?PHP VBX_User::get怎么用?PHP VBX_User::get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在VBX_User的用法示例。


在下文中一共展示了VBX_User::get方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: get

 /**
  * Get a DialList object try
  * Pass in a VBX_User or VBX_Group object to begin
  *
  * @param object users_or_group
  * @return object DialList
  */
 public static function get($users_or_group)
 {
     $users = array();
     $class = 'DialList';
     switch (true) {
         case is_array($users_or_group):
             if (current($users_or_group) instanceof VBX_User) {
                 // list of users, set as users list and continue
                 $users = $users_or_group;
             } else {
                 // list of user ids, populate list
                 $users = VBX_User::get_users($users_or_group);
             }
             break;
         case $users_or_group instanceof VBX_Group:
             if (!empty($users_or_group->users)) {
                 foreach ($users_or_group->users as $user) {
                     array_push($users, VBX_User::get($user->user_id));
                 }
             }
             break;
         case $users_or_group instanceof VBX_User:
             $class = 'DialListUser';
             // individual user, add to list and continue
             array_push($users, $users_or_group);
             break;
     }
     return new $class($users);
 }
开发者ID:rhyselsmore,项目名称:OpenVBX,代码行数:36,代码来源:DialList.php

示例2: init_browserphone_data

 protected function init_browserphone_data($callerid_numbers)
 {
     // defaults
     $browserphone = array('call_using' => 'browser', 'caller_id' => '(000) 000-0000', 'number_options' => array(), 'call_using_options' => array('browser' => array('title' => 'Your Computer', 'data' => array())), 'devices' => array());
     $default_caller_id = false;
     if (is_array($callerid_numbers) && !empty($callerid_numbers)) {
         $numbered = $named = array();
         $default_caller_id = current($callerid_numbers)->phone;
         foreach ($callerid_numbers as $number) {
             if (normalize_phone_to_E164($number->phone) != normalize_phone_to_E164($number->name)) {
                 $named[$number->phone] = $number->name;
             } else {
                 $numbered[$number->phone] = $number->phone;
             }
         }
         ksort($numbered);
         asort($named);
         $browserphone['number_options'] = $named + $numbered;
     }
     $user = VBX_User::get(array('id' => $this->session->userdata('user_id')));
     // User preferences
     $browserphone['caller_id'] = $user->setting('browserphone_caller_id', $default_caller_id);
     $browserphone['call_using'] = $user->setting('browserphone_call_using', 'browser');
     // Wether the user has an active device to use
     if (count($user->devices)) {
         foreach ($user->devices as $device) {
             if (strpos($device->value, 'client:') !== false) {
                 continue;
             }
             $browserphone['call_using_options']['device:' . $device->id] = array('title' => 'Device: ' . $device->name, 'data' => (object) array('number' => format_phone($device->value), 'name' => $device->name));
         }
     }
     return $browserphone;
 }
开发者ID:wiserweb,项目名称:OpenVBX,代码行数:34,代码来源:iframe.php

示例3: reset

 public function reset()
 {
     $this->template->write('title', 'Reset Password');
     $data = array();
     $email = $this->input->post('email');
     if (empty($email)) {
         $data['error'] = $this->session->flashdata('error');
         return $this->respond('', 'reset', $data, 'login-wrapper', 'layout/login');
     }
     $user = VBX_User::get(array('email' => $email, 'is_active' => 1));
     if (empty($user)) {
         $this->session->set_flashdata('error', 'No active account found.');
         redirect('auth/reset');
     }
     if ($user->auth_type == 'google') {
         header('Location: http://www.google.com/support/accounts/bin/answer.py?answer=48598&hl=en&ctx=ch_Login&fpUrl=https%3A%2F%2Fwww.google.com%2Faccounts%2FForgotPasswd%3FfpOnly%3D1%26continue%3Dhttp%253A%252F%252Fwww.google.com%252F%26hl%3Den');
         return;
     } else {
         $emailSent = $user->send_reset_notification();
         if ($emailSent) {
             $this->session->set_flashdata('error', 'To complete the password reset, check your inbox.');
         } else {
             $this->session->set_flashdata('error', 'The email was not sent. Contact your admin.');
         }
         redirect('auth/login');
     }
     redirect('auth/reset');
 }
开发者ID:rhyselsmore,项目名称:OpenVBX,代码行数:28,代码来源:reset.php

示例4: client

 /**
  * Display the popup for making calls with Twilio Client
  *
  * @return void
  */
 public function client()
 {
     $caller_id = $this->input->get('callerid');
     if (empty($caller_id)) {
         // grab user's default device
         $user = VBX_User::get($this->session->userdata['user_id']);
         $devices = $this->vbx_device->get_by_user($this->user_id);
         if (!empty($devices)) {
             $caller_id = $devices[0]->value;
         }
     }
     $client_params = array('callerid' => normalize_phone_to_E164($caller_id), 'application_id' => 'client');
     if ($this->input->get('outgoing')) {
         // functionality for using the "dial" modal to initiate a call
         $to = normalize_phone_to_E164($this->input->get('to'));
         if (empty($to)) {
             $to = htmlspecialchars($this->input->get('to'));
         }
         $client_params = array_merge($client_params, array('to' => $to));
     } elseif ($this->input->get('incoming')) {
         $client_params = array_merge($client_params, array('incoming' => true));
     }
     $client_data = array('client_params' => json_encode($client_params));
     $javascript = $this->load->view('client_js', $client_data, true);
     $this->template->add_js($javascript, 'embed', true);
     $data = array('title' => 'dialer', 'client_params' => $client_params);
     $this->respond('Dialer', 'call', $data, '', 'layout/dialer');
 }
开发者ID:hharrysidhu,项目名称:OpenVBX,代码行数:33,代码来源:message_call.php

示例5: __construct

 public function __construct()
 {
     parent::__construct();
     $this->user = VBX_User::get($this->session->userdata('user_id'));
     if (!$this->user->is_admin) {
         throw new SiteCachesException('Action not allowed to non-administrators');
     }
 }
开发者ID:hharrysidhu,项目名称:OpenVBX,代码行数:8,代码来源:caches.php

示例6: who_called

 public function who_called($number)
 {
     if (preg_match('|^client:|', $number)) {
         $user_id = str_replace('client:', '', $number);
         $user = VBX_User::get(array('id' => $user_id));
         $ret = $user->first_name . ' ' . $user->last_name . ' (client)';
     } else {
         $ret = format_phone($number);
     }
     return $ret;
 }
开发者ID:HighTechTorres,项目名称:TwilioCookbook,代码行数:11,代码来源:call_log.php

示例7: testVoicemailUserSay

 public function testVoicemailUserSay()
 {
     ob_start();
     $this->CI->voice(1, 'f274cd');
     $out = ob_get_clean();
     $xml = simplexml_load_string($out);
     $this->assertInstanceOf('SimpleXMLElement', $xml);
     $user = VBX_User::get($this->user_id);
     // this regex match is cheap, need better reg-fu to match possible
     // language and voice attributes that could appear in any order
     $this->assertRegExp('|(<Say(.*?)>' . $user->voicemail . '</Say>)|', $out);
     $this->assertRegExp('|(<Record transcribeCallback="(.*?)"/>)|', $out);
 }
开发者ID:hharrysidhu,项目名称:OpenVBX,代码行数:13,代码来源:voicemailUserSayTest.php

示例8: setUp

 public function setUp()
 {
     parent::setUp();
     // set the user's voicemail to be a recording
     $this->user = VBX_User::get($this->user_id);
     $this->user->voicemail = $this->upload_prefix . $this->filename;
     $this->user->save();
     $this->setFlow(array('id' => 1, 'user_id' => 1, 'created' => NULL, 'updated' => NULL, 'data' => '{"start":{"name":"Call Start","data":{"next":"start/59c7d7"},"id":"start","type":"standard---start"},"59c7d7":{"name":"Voicemail","data":{"prompt_say":"","prompt_play":"","prompt_mode":"","prompt_tag":"global","number":"","library":"","permissions_id":"' . $this->user_id . '","permissions_type":"user"},"id":"59c7d7","type":"standard---voicemail"}}', 'sms_data' => NULL, 'tenant_id' => 1));
     // set up our request
     $this->setPath('/twiml/applet/voice/1/59c7d7');
     $this->setRequestMethod('POST');
     // prepare the header token for request validation
     $this->setRequestToken();
 }
开发者ID:hharrysidhu,项目名称:OpenVBX,代码行数:14,代码来源:voicemailUserPlayTest.php

示例9: render

 public function render($data = array())
 {
     $hasValue = empty($this->mode) ? false : true;
     $this->load =& load_class('Loader');
     $this->load->model('vbx_audio_file');
     $this->load->model('vbx_device');
     // Get a list of all previously recorded items so we can populate the library
     $ci =& get_instance();
     $ci->db->where('url IS NOT NULL');
     $ci->db->where('tag', $this->tag);
     $ci->db->where('tenant_id', $ci->tenant->id);
     $ci->db->from('audio_files');
     $ci->db->order_by('created DESC');
     $results = $ci->db->get()->result();
     foreach ($results as $i => $result) {
         $results[$i] = new VBX_Audio_File($result);
     }
     // Pre-fill the record text field with the the first device phone number we
     // find for the current user that is active.
     $ci =& get_instance();
     $user = VBX_User::get($ci->session->userdata('user_id'));
     $user_phone = '';
     if (count($user->devices)) {
         foreach ($user->devices as $device) {
             if ($device->is_active) {
                 $user_phone = format_phone($device->value);
                 break;
             }
         }
     }
     // set the caller id for recording via the phone
     $caller_id = '';
     $ci->load->model('vbx_incoming_numbers');
     try {
         $numbers = $ci->vbx_incoming_numbers->get_numbers(false);
         foreach ($numbers as $number) {
             // find the first number that has voice enabled
             // yes, this is a rather paranoid check
             if (isset($number->capabilities->voice) && $number->capabilities->voice > 0) {
                 $caller_id = normalize_phone_to_E164($number->phone);
                 break;
             }
         }
     } catch (VBX_IncomingNumberException $e) {
         // fail silently, for better or worse
         error_log($e->getMessage());
     }
     $data = array_merge(array('name' => $this->name, 'hasValue' => $hasValue, 'mode' => $this->mode, 'say' => $this->say_value, 'play' => $this->play_value, 'tag' => $this->tag, 'library' => $results, 'first_device_phone_number' => $user_phone, 'caller_id' => $caller_id), $data);
     return parent::render($data);
 }
开发者ID:ryanlarrabure,项目名称:OpenVBX,代码行数:50,代码来源:AudioSpeechPickerWidget.php

示例10: dialDevice

 /**
  * Add a device to the Dialer
  *
  * @param VBX_Device $device 
  * @return bool
  */
 public function dialDevice($device)
 {
     $dialed = false;
     if ($device->is_active) {
         $user = VBX_User::get($device->user_id);
         $call_opts = array('url' => site_url('twiml/whisper?name=' . urlencode($user->first_name)));
         $dial = new Dial(NULL, array('action' => current_url(), 'callerId' => $this->callerId));
         if (strpos($device->value, 'client:') !== false) {
             $dial->addClient(str_replace('client:', '', $device->value), $call_opts);
         } else {
             $dial->addNumber($device->value, $call_opts);
         }
         $this->response->append($dial);
         $dialed = true;
     }
     return $dialed;
 }
开发者ID:JeffaCubed,项目名称:OpenVBX,代码行数:23,代码来源:TwimlDial.php

示例11: testUserDialClient

 public function testUserDialClient()
 {
     $this->setFlowVar('data', '{"start":{"name":"Call Start","data":{"next":"start/4a7eed"},"id":"start","type":"standard---start"},"4a7eed":{"name":"Dial","data":{"dial-whom-selector":"user-or-group","dial-whom-user-or-group_id":"' . $this->dial_user_id . '","dial-whom-user-or-group_type":"user","dial-whom-number":"","callerId":"","no-answer-action":"voicemail","no-answer-group-voicemail_say":"","no-answer-group-voicemail_play":"","no-answer-group-voicemail_mode":"","no-answer-group-voicemail_tag":"global","no-answer-group-voicemail_caller_id":"+14158774003","number":"","library":"","no-answer-redirect":"","no-answer-redirect-number":"start/4a7eed/e18b35","version":"3"},"id":"4a7eed","type":"standard---dial"},"e18b35":{"name":"Hangup","data":{},"id":"e18b35","type":"standard---hangup"}}');
     $user = VBX_User::get($this->dial_user_id);
     $user->online = 1;
     $user->save();
     ob_start();
     $this->CI->voice('1', '4a7eed');
     $out = ob_get_clean();
     // test valid xml
     $xml = simplexml_load_string($out);
     $this->assertInstanceOf('SimpleXMLElement', $xml);
     // test valid user number item
     $user_name = $user->first_name;
     $user_phone = $user->devices[0]->value;
     $regexp = '|<Number url="(.*?)/twiml/whisper\\?name=' . $user_name . '">\\' . $user_phone . '</Number>|';
     $this->assertRegExp($regexp, $out);
     // test valid user client item
     $regexp2 = '|<Client url="(.*?)/twiml/whisper\\?name=' . $user_name . '">' . $user->id . '</Client>|';
     $this->assertRegExp($regexp2, $out);
 }
开发者ID:hharrysidhu,项目名称:OpenVBX,代码行数:21,代码来源:dialUserTest.php

示例12: save_greeting

 private function save_greeting()
 {
     $data['json'] = array('error' => false, 'message' => '');
     $user = VBX_User::get($this->user_id);
     $user->voicemail = $this->input->post('voicemail');
     try {
         $user->save();
     } catch (VBX_UserException $e) {
         $data['json'] = array('error' => true, 'message' => $e->getMessage());
     }
     return $data;
 }
开发者ID:JeffaCubed,项目名称:OpenVBX,代码行数:12,代码来源:voicemail.php

示例13: client_status

 public function client_status()
 {
     $data = array('json' => array('error' => true, 'message' => 'Invalid Request'));
     if ($this->input->post('clientstatus')) {
         $online = $this->input->post('online') == 1;
         $user = VBX_User::get($this->session->userdata('user_id'));
         try {
             $user->setting_set('online', $online);
             $data['json'] = array('error' => false, 'message' => 'status updated', 'client_status' => $online ? 'online' : 'offline');
         } catch (VBX_UserException $e) {
             $data['json'] = array('error' => true, 'message' => $e->getMessage());
         }
     }
     $this->respond('', null, $data);
 }
开发者ID:wiserweb,项目名称:OpenVBX,代码行数:15,代码来源:account.php

示例14: getUserGroupPickerValue

 public static function getUserGroupPickerValue($name = 'userGroupPicker')
 {
     $ci =& get_instance();
     $ci->load->model('vbx_user');
     $ci->load->model('vbx_group');
     $owner_id = self::getValue($name . '_id');
     $owner_type = self::getValue($name . '_type');
     $owner = null;
     switch ($owner_type) {
         case 'group':
             $owner = VBX_Group::get(array('id' => $owner_id));
             break;
         case 'user':
             $owner = VBX_User::get($owner_id);
             break;
     }
     return $owner;
 }
开发者ID:howethomas,项目名称:OpenVBX,代码行数:18,代码来源:AppletInstance.php

示例15: __construct

 public function __construct()
 {
     parent::__construct();
     $this->config_check();
     $this->config->load('openvbx');
     // check for required configuration values
     $this->load->database();
     $this->load->library('ErrorMessages');
     // deprecated in 1.2
     $this->load->model('vbx_rest_access');
     $this->load->model('vbx_message');
     // When we're in testing mode, allow access to set Hiccup configuration
     $this->testing_mode = !empty($_REQUEST['vbx_testing_key']) ? $_REQUEST['vbx_testing_key'] == $this->config->item('testing-key') : false;
     $this->config->set_item('sess_cookie_name', $this->tenant->id . '-' . $this->config->item('sess_cookie_name'));
     $this->load->library('session');
     $keys = array('base_url', 'salt');
     foreach ($keys as $key) {
         $item[$key] = $this->config->item($key);
         if (empty($item[$key])) {
             redirect('install');
         }
     }
     /* Rest API Authentication - one time pass only */
     $singlepass = $this->input->cookie('singlepass');
     if (!empty($singlepass)) {
         $ra = new VBX_Rest_Access();
         $user_id = $ra->auth_key($singlepass);
         unset($_COOKIE['singlepass']);
         if ($user_id) {
             $this->session->set_userdata('user_id', $user_id);
             $this->session->set_userdata('loggedin', true);
             $this->session->set_userdata('signature', VBX_User::signature($user_id));
         }
     }
     $user_id = $this->session->userdata('user_id');
     // Signature check
     if (!empty($user_id)) {
         $signature = $this->session->userdata('signature');
         if (!VBX_User::check_signature($user_id, $signature)) {
             $this->session->set_flashdata('error', 'Your session has expired');
             $this->session->set_userdata('loggedin', false);
         }
     }
     if ($this->response_type == 'json') {
         $this->attempt_digest_auth();
     }
     if (!$this->session->userdata('loggedin') && $this->response_type != 'json') {
         $redirect = site_url($this->uri->uri_string());
         if (!empty($_COOKIE['last_known_url'])) {
             $redirect = $_COOKIE['last_known_url'];
             set_last_known_url('', time() - 3600);
         }
         return redirect('auth/login?redirect=' . urlencode($redirect));
     }
     $this->user_id = $this->session->userdata('user_id');
     $this->set_request_method();
     /* Mark the user as seen */
     if (!empty($this->user_id)) {
         try {
             $user = VBX_User::get($this->user_id);
             $user->setting_set('last_seen', new MY_ModelLiteral('UTC_TIMESTAMP()'));
         } catch (VBX_UserException $e) {
             /* Handle this gracefully, but report the error. */
             error_log($e->getMessage());
         }
         $this->connect_check();
         /* Check for first run */
         if ($this->session->userdata('is_admin') && $this->uri->segment(1) != 'welcome') {
             $this->welcome_check();
         }
         /* Check for updates if an admin */
         if ($this->session->userdata('is_admin') && $this->uri->segment(1) != "upgrade") {
             $this->upgrade_check();
         }
     }
 }
开发者ID:hharrysidhu,项目名称:OpenVBX,代码行数:76,代码来源:User_Controller.php


注:本文中的VBX_User::get方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。