function gs_user_snom_keys_get($user) { return new GsError('DEPRECATED.'); if (!preg_match('/^[a-z0-9\\-_.]+$/', $user)) { return new GsError('User must be alphanumeric.'); } # connect to db # $db = gs_db_master_connect(); if (!$db) { return new GsError('Could not connect to database.'); } # get user_id # $user_id = (int) $db->executeGetOne('SELECT `id` FROM `users` WHERE `user`=\'' . $db->escape($user) . '\''); if (!$user_id) { return new GsError('Unknown user.'); } # get MAC address of phone # $mac = $db->executeGetOne('SELECT `mac_addr` FROM `phones` WHERE `user_id`=' . $user_id); if (!trim($mac)) { return new GsError('User not logged in at any phone.'); } //$prov = trim( @ file_get_contents( 'http://*****:*****@file_get_contents(GS_PROV_SCHEME . '://' . GS_PROV_HOST . (GS_PROV_PORT ? ':' . GS_PROV_PORT : '') . GS_PROV_PATH . 'snom/settings.php?mac=' . $mac)); if (!$prov) { return new GsError('Failed to get phone settings.'); } $lines = explode("\n", $prov); unset($prov); $keys = array(); foreach ($lines as $line) { $line = trim($line); if (preg_match('/^fkey(\\d+)[^:]*:\\s?(.*)/', $line, $m)) { $keys[(int) $m[1]] = $m[2]; } } unset($lines); kSort($keys); //print_r($keys); return $keys; }
if (!in_array($type, array('gs', 'prv', 'imported', 'gss', 'prvs', 'importeds'), true)) { $type = false; } $page = (int) trim(@$_REQUEST['p']); $entry = (int) trim(@$_REQUEST['e']); $search = trim(@$_REQUEST['s']); $name_search = trim(@$_REQUEST['n']); //$per_page = (int)gs_get_conf('GS_AASTRA_PROV_PB_NUM_RESULTS', 10); $per_page = 4; $db = gs_db_slave_connect(); $tmp = array(15 => array('k' => 'gs', 'v' => gs_get_conf('GS_PB_INTERNAL_TITLE', __("Intern"))), 25 => array('k' => 'prv', 'v' => gs_get_conf('GS_PB_PRIVATE_TITLE', __("Persönlich")))); if (gs_get_conf('GS_PB_IMPORTED_ENABLED')) { $pos = (int) gs_get_conf('GS_PB_IMPORTED_ORDER', 9) * 10; $tmp[$pos] = array('k' => 'imported', 'v' => gs_get_conf('GS_PB_IMPORTED_TITLE', __("Extern"))); } kSort($tmp); foreach ($tmp as $arr) { $typeToTitle[$arr['k']] = $arr['v']; } $url_aastra_pb = GS_PROV_SCHEME . '://' . GS_PROV_HOST . (GS_PROV_PORT ? ':' . GS_PROV_PORT : '') . GS_PROV_PATH . 'aastra/pb.php'; #################################### SEARCH SCREEN { if ($search) { $xml = '<AastraIPPhoneInputScreen type = "string">' . "\n"; $xml .= '<Title>' . __('Suchen') . '</Title>' . "\n"; $xml .= '<Prompt>' . __('Name') . ':</Prompt>' . "\n"; $xml .= '<URL>' . $url_aastra_pb . '?t=' . $type . '</URL>' . "\n"; $xml .= '<Parameter>n</Parameter>' . "\n"; $xml .= '<Default></Default>' . "\n"; $xml .= '<SoftKey index="1">' . "\n"; $xml .= ' <Label>' . __('OK') . '</Label>' . "\n"; $xml .= ' <URI>SoftKey:Submit</URI>' . "\n";
} //echo "};\n"; ?> // ]]> </script> </head> <body style="margin:0; padding:0.5em;"> <iframe id="transport" src="about:blank"></iframe> <iframe id="dummy_iframe" src="about:blank"></iframe> <?php if (!$db) { echo 'Could not connect to database!'; } else { //echo '<div id="ext-self">Eigene Leitung</div>' ,"\n"; kSort($exts_display, SORT_STRING); echo '<div class="extensions-block">', "\n"; $first_digit = null; foreach ($exts_display as $ext => $ext_info) { $new_first_digit = subStr($ext, 0, 1); if ($new_first_digit != $first_digit) { if ($first_digit !== null) { echo '<br class="nofloat" />', "\n"; echo '</div>', "\n"; echo '<div class="extensions-block">', "\n"; } $first_digit = $new_first_digit; //echo '<div class="first-digit">', $first_digit ,'</div>' ,"\n"; } echo '<div class="e e_ukn" id="e', $ext, '">'; echo '<span class="num">', $ext, '</span>';
LIMIT 100'); # PRIVATE phonebook $pb[25] = array('type' => 'prv', 'title' => gs_get_conf('GS_PB_PRIVATE_TITLE', __("Persönlich")), 'query' => 'SELECT `pb`.`lastname` `ln`, `pb`.`firstname` `fn`, `pb`.`number` `ext` FROM `pb_prv` `pb` WHERE `pb`.`user_id`=' . $user_id . ' ORDER BY `pb`.`lastname`, `pb`.`firstname` LIMIT 100'); # IMPORTED phonebook if (gs_get_conf('GS_PB_IMPORTED_ENABLED')) { $pos = (int) gs_get_conf('GS_PB_IMPORTED_ORDER', 9) * 10; $pb[$pos] = array('type' => 'imported', 'title' => gs_get_conf('GS_PB_IMPORTED_TITLE', __("Extern")), 'query' => 'SELECT `lastname` `ln`, `firstname` `fn`, `number` `ext` FROM `pb_ldap` ORDER BY `lastname`, `firstname`'); } kSort($pb); ob_start(); echo '<?', 'xml version="1.0" encoding="utf-8"?', '>', "\n"; echo '<AddressBook>', "\n"; $pb_entrys = 0; foreach ($pb as $arr) { if ($pb_entrys > 100) { break; } $rs = $db->execute($arr['query']); if ($rs && $rs->numRows() !== 0) { while ($r = $rs->fetchRow()) { $lastname = $r['ln']; $firstname = $r['fn']; $number = $r['ext']; echo '<Contact>', "\n";
$formArr['OWNERADDRESS'] = $order->bill_address . $order->bill_address2; $formArr['OWNERZIP'] = $order->bill_zipcode; $formArr['OWNERTOWN'] = $order->bill_city; $formArr['OWNERCTY'] = $order->bill_countrycode; $formArr['OWNERTELNO'] = $order->bill_phone; $formArr['ACCEPTURL'] = $wpcoHtml->retainquery('type=barclaycard', $wpcoHtml->return_url()); $formArr['DECLINEURL'] = $wpcoHtml->fail_url(); $formArr['CANCELURL'] = $wpcoHtml->bill_url(); $formArr['EXCEPTIONURL'] = ""; $sha1 = $this->get_option('barclaycard_shain'); $checkStr = ""; $checkArr = array(); foreach ($formArr as $k => $v) { $checkArr[strToUpper($k)] = $v; } kSort($checkArr); foreach ($checkArr as $k => $v) { if (!empty($v)) { $checkStr .= strToUpper($k) . "=" . $v . $sha1; } } $formArr['SHASIGN'] = sha1($checkStr); ?> <p><img src="<?php echo plugins_url(); ?> /<?php echo $this->extension_name; ?> /images/logo.jpg" alt="barclaycard" /></p>
function _specificXML() { $xml = ''; $xml .= '<Screen>' . "\n"; # Bitmaps ausgeben if ($this->_bitmaps) { kSort($this->_bitmaps); foreach ($this->_bitmaps as $pos => $bitmap) { $xml .= '<DisplayBitmap>' . "\n"; $xml .= '<Bitmap>' . $bitmap['data'] . '</Bitmap>' . "\n"; $xml .= '<X>' . $bitmap['x'] . '</X>' . "\n"; $xml .= '<Y>' . $bitmap['y'] . '</Y>' . "\n"; $xml .= '</DisplayBitmap>' . "\n"; } } # Texte ausgeben if ($this->_strings) { kSort($this->_strings); foreach ($this->_strings as $pos => $string) { $xml .= '<DisplayString'; if ($string['data']) { $xml .= ' ' . $string['data']; } $xml .= '>' . "\n"; $xml .= '<DisplayStr>' . _grandstream_xml_esc($string['text']) . '</DisplayStr>' . "\n"; $xml .= '<X>' . $string['x'] . '</X>' . "\n"; $xml .= '<Y>' . $string['y'] . '</Y>' . "\n"; $xml .= '</DisplayString>' . "\n"; } } $xml .= '</Screen>' . "\n"; return $xml; }
$devices = array(); foreach ($out as $line) { $line = strToUpper($line); if (!preg_match('/([0-9]{1,3})\\.([0-9]{1,3})\\.([0-9]{1,3})\\.([0-9]{1,3})/S', $line, $m)) { continue; } $ip_addr_parts = $m; if (!preg_match('/([0-9A-F]{2}):([0-9A-F]{2}):([0-9A-F]{2}):([0-9A-F]{2}):([0-9A-F]{2}):([0-9A-F]{2})/S', $line, $m)) { continue; } $mac_addr = $m[0]; $devices[$mac_addr]['mac'] = $mac_addr; $devices[$mac_addr]['ip'] = $ip_addr_parts; } unset($out); kSort($devices); $c = 0; foreach ($devices as $mac_addr => $device) { echo '<tr class="', $c % 2 === 0 ? 'odd' : 'even', '" height="25">', "\n"; //echo '<td><code>', $device['mac'] ,'</code></td>' ,"\n"; echo '<td style="vertical-align:middle; padding-top:0.3em;"><small><code>', $device['mac'], '</code></small></td>', "\n"; echo '<td style="vertical-align:middle;">'; for ($i = 1; $i <= 4; ++$i) { $device['ip'][$i] = lTrim($device['ip'][$i], '0'); if ($device['ip'][$i] == '') { $device['ip'][$i] = '0'; } /* echo str_replace(' ', ' ', str_pad($device['ip'][$i], 3, ' ', STR_PAD_LEFT)); if ($i < 4) echo '.'; */