Portions created by the Initial Developer are Copyright (C) 2008-2020 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ //includes require_once "root.php"; require_once "resources/require.php"; require_once "resources/check_auth.php"; //check permissions if (permission_exists('gswave_view')) { //access granted } else { echo "access denied"; exit; } //add multi-lingual support $language = new text; $text = $language->get(); //verify the id is as uuid then set as a variable if (is_uuid($_GET['id'])) { $extension_uuid = $_GET['id']; } //get the extension(s) if (permission_exists('extension_edit')) { //admin user $sql = "select * from v_extensions "; $sql .= "where domain_uuid = :domain_uuid "; $sql .= "and enabled = 'true' "; $sql .= "order by extension asc "; } else { //normal user $sql = "select e.* "; $sql .= "from v_extensions as e, "; $sql .= "v_extension_users as eu "; $sql .= "where e.extension_uuid = eu.extension_uuid "; $sql .= "and eu.user_uuid = :user_uuid "; $sql .= "and e.domain_uuid = :domain_uuid "; $sql .= "and e.enabled = 'true' "; $sql .= "order by e.extension asc "; $parameters['user_uuid'] = $_SESSION['user']['user_uuid']; } $parameters['domain_uuid'] = $_SESSION['domain_uuid']; $database = new database; $extensions = $database->select($sql, $parameters, 'all'); unset($sql, $parameters); if (is_uuid($extension_uuid) && is_array($extensions) && @sizeof($extensions) != 0) { //loop through get selected extension if (is_array($extensions) && @sizeof($extensions) != 0) { foreach ($extensions as $extension) { if ($extension['extension_uuid'] == $extension_uuid) { $field = $extension; break; } } } //get the username $username = $field['extension']; if (isset($field['number_alias']) && strlen($field['number_alias']) > 0) { $username = $field['number_alias']; } //build the xml $xml = ""; $xml .= ""; $xml .= ""; $xml .= "".$_SESSION['domain_name'].""; //$xml .= "".$_SESSION['domain_name'].""; //$xml .= "".$_SESSION['domain_name'].""; $xml .= "".$_SESSION['domain_name'].":".$_SESSION['provision']['line_sip_port']['numeric'].""; $xml .= "".$_SESSION['domain_name'].":".$_SESSION['provision']['line_sip_port']['numeric'].""; $xml .= "".$username.""; $xml .= "".$username.""; $xml .= "".$field['password'].""; $xml .= "".$username.""; $xml .= "".$username.""; $xml .= "{x+|*x+|*++}"; $xml .= "0"; $xml .= "*97"; $xml .= ""; $xml .= ""; $ldapxml = ""; $ldapxml .= ""; $ldapxml .= "".$_SESSION["ldap"]["qr_server"]["text"]).""; $ldapxml .= "".$_SESSION["ldap"]["qr_port"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_path"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_username"]["text"]).""; $ldapxml .= "".$_SESSION["ldap"]["qr_password"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_filternum"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_filtername"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_ldap_version"]["numeric"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_name_attribute"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_num_attribute"]["text"].""; $ldapxml .= "".$_SESSION["ldap"]["qr_display_name"]["text"].""; $ldapxml .= "" // Use Default settings to set these } //yea i will have to go and recycle this aswell to make it generate the ldap code aswell //debian //apt install qrencode //include the header $document['title'] = $text['title-gswave']; require_once "resources/header.php"; //show the content echo "
\n"; echo "
\n"; echo "
".$text['title-gswave']."
\n"; echo "
\n"; echo " "; echo " "; //echo button::create(['type'=>'button','label'=>'Website','icon'=>'globe','style='margin-left: 15px;','link'=>'http://www.grandstream.com/products/ip-voice-telephony/softphone-app/product/grandstream-wave']); echo "
\n"; echo "
\n"; echo "
\n"; echo $text['title_description-gswave']."\n"; echo "

\n"; echo "
"; echo $text['label-extension']."
\n"; echo "\n"; echo "\n"; echo "
\n"; //stream the file if (is_uuid($extension_uuid)) { $xml = html_entity_decode( $xml, ENT_QUOTES, 'UTF-8' ); require_once 'resources/qr_code/QRErrorCorrectLevel.php'; require_once 'resources/qr_code/QRCode.php'; require_once 'resources/qr_code/QRCodeImage.php'; try { $code = new QRCode (- 1, QRErrorCorrectLevel::H); $code->addData($xml); $code->make(); $img = new QRCodeImage ($code, $width=420, $height=420, $quality=50); $img->draw(); $image = $img->getImage(); $img->finish(); } catch (Exception $error) { echo $error; } } //html image if (is_uuid($extension_uuid)) { echo "\n"; } echo "
\n"; //add the footer require_once "resources/footer.php"; ?>