Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /*
- * @ Pirate-Sky Crew :: PHP Decoder v2
- * @ Author: pLa$71k
- * @ Web: http://pirate-sky.com
- * @ Pirate-Sky Crew © 2008 - 2013
- */
- function teamspeak3_config() {
- $configarray = array( 'name' => 'Teamspeak 3', 'description' => 'Teamspeak 3 voip povisioning module', 'version' => '1.0', 'author' => 'whmcsmod.com', 'language' => 'english', 'fields' => array( 'minport' => array( 'FriendlyName' => 'Minimum Port', 'Type' => 'text', 'Size' => '10', 'Description' => 'Minimum port range', 'Default' => '9000' ), 'maxport' => array( 'FriendlyName' => 'Maximum Port', 'Type' => 'text', 'Size' => '10', 'Description' => 'Maximum port range', 'Default' => '9999' ), 'defaultName' => array( 'FriendlyName' => 'Default server name', 'Type' => 'text', 'Size' => '100', 'Description' => 'Default server Name', 'Default' => 'My server' ), 'hostMessage' => array( 'FriendlyName' => 'Host message', 'Type' => 'text', 'Size' => '100', 'Description' => 'Server host message', 'Default' => 'My message' ), 'hostMessageMode' => array( 'FriendlyName' => 'Host message mode', 'Type' => 'dropdown', 'Options' => '0,1,2,3', 'Description' => '0:None, 1: chat, 2: modal, 3: modal/quit' ), 'welcomeMessage' => array( 'FriendlyName' => 'Welcome message', 'Type' => 'text', 'Size' => '100', 'Description' => 'Welcome message', 'Default' => 'welcome' ), 'bannerUrl' => array( 'FriendlyName' => 'Banner URL', 'Type' => 'text', 'Size' => '100', 'Description' => 'Banner url for teamspeak clients' ), 'bannerGfxUrl' => array( 'FriendlyName' => 'Banner GFX URL', 'Type' => 'text', 'Size' => '100', 'Description' => 'Banner graphic url for teamspeak clients' ), 'tooltip' => array( 'FriendlyName' => 'Host button tooltip', 'Type' => 'text', 'Size' => '100', 'Description' => 'Host button tooltip text' ), 'tooltipUrl' => array( 'FriendlyName' => 'Host button URL', 'Type' => 'text', 'Size' => '100', 'Description' => 'Host button URL' ), 'tooltipIcon' => array( 'FriendlyName' => 'Host button icon url', 'Type' => 'text', 'Size' => '100', 'Description' => 'Host button icon (max 24x24 px)' ), 'tslicense' => array( 'FriendlyName' => 'whmcsmod module license', 'Type' => 'text', 'Size' => '50' ) ) );
- return $configarray;
- }
- function teamspeak3_activate() {
- return array( 'status' => 'success', 'description' => 'success' );
- }
- function teamspeak3_deactivate() {
- return array( 'status' => 'success', 'description' => 'success' );
- }
- function teamspeak3_upgrade($vars) {
- }
- function teamspeak3_output($vars) {
- $modulelink = $vars['modulelink'];
- $version = $vars['version'];
- $LANG = $vars['_lang'];
- $servers = array( );
- $serverList = array( );
- $results = teamspeak::checklicense( $vars['tslicense'] );
- if ($results != 1) {
- echo $results;
- return null;
- }
- echo ' <link href=\'../modules/addons/teamspeak3/css/style.css\' rel=\'stylesheet\' type=\'text/css\'>';
- $html = '
- <div class="navbar">
- <div class="navbar-inner">
- <div class="container">
- <ul class="nav">
- <li class="brand">Teamspeak 3</li>
- <li class="active"><a href="?module=teamspeak3&action=listServers">Manage servers</a></li>
- <li><a href="?module=teamspeak3">About</a></li>
- </ul>
- </div>
- </div>
- </div>
- ';
- echo $html;
- echo '<div>';
- $sql = 'select * from tblservers where type=\'teamspeak3\'';
- $query = mysql_query( $sql );
- while ($result = mysql_fetch_assoc( $query )) {
- $serverList[] = $result;
- }
- foreach ($serverList as $server) {
- $command = 'decryptpassword';
- $values = array( 'password2' => $server['password'] );
- $apicall = localAPI( $command, $values );
- $server['password'] = $apicall['password'];
- $servers[] = $server;
- }
- switch ($_GET['action']) {
- case 'listServers': {
- echo '<form method=\'GET\'>
- <TABLE class=\'table table-striped table-bordered table-condensed\'>
- <TR><TH>Name</TH><TH>Ipaddress</TH><TH>Hostname</TH><TH></TH></TR>';
- foreach ($servers as $server) {
- $serverip = explode( ':', $server['ipaddress'] );
- echo '<TR><TD>' . $server['name'] . '</TD><TD>' . $server['ipaddress'] . '</TD><TD>' . $server['hostname'] . '</TD><TD><input type=\'radio\' name=\'tsip\' value=\'' . $server['ipaddress'] . '\' CHECKED></TD></TR>';
- }
- echo '</TABLE>';
- echo '<br><input type=\'submit\' name=\'action\' value=\'Manage\'>';
- echo '<input type=\'hidden\' name=\'module\' value=\'teamspeak3\'>';
- echo '</form>';
- break;
- }
- case 'Manage': {
- $serverip = explode( ':', $_GET['tsip'] );
- foreach ($servers as $v) {
- if ($v['ipaddress'] == $_GET['tsip']) {
- $sv = $v;
- continue;
- }
- }
- $tsconfig = array( 'username' => $sv['username'], 'password' => $sv['password'], 'ipv4' => $serverip[0], 'qport' => $serverip[1] );
- teamspeak;
- $teamspeak = new ( $tsconfig );
- if ($teamspeak->error) {
- echo '<div class=\'errorbox\' width=\'50px\'><strong>Command Error</strong><br />' . $teamspeak->error . '</div>';
- return null;
- }
- if (isset( $_GET['page'] )) {
- $page = $_GET['page'];
- }
- else {
- $page = 0;
- }
- $servers = $teamspeak->getAllServers( $page, 20 );
- $totalTs3 = $servers['total'];
- if ($servers['error']) {
- echo '<div class=\'errorbox\' width=\'50px\'><strong>Command Error</strong><br />' . $servers['error'] . '</div>';
- return null;
- }
- echo '<form method=\'GET\'><TABLE class=\'table table-striped table-bordered table-condensed\'><TR><TH>Hostname</TH><TH>IP</TH><TH>Port</TH><TH>Slots</TH><TH>Status</TH></TR>';
- $cont = 0;
- foreach ($servers['results'] as $server) {
- if ($cont < 20) {
- $status = ($server->virtualserver_status == 'online' ? '<label style=\'color:green\'>online</label>' : '<label style=\'color:red\'>offline</label>');
- echo '<TR><TD>' . $server->virtualserver_name . '</TD><TD>' . $serverip[0] . '</TD><TD>' . $server->virtualserver_port . '</TD><TD>' . $server->virtualserver_maxclients . '</TD><TD>' . $status . '</TD><TD><input type=\'radio\' name=\'tsport\' value=\'' . $server->virtualserver_port . '\' CHECKED></TD></TR>';
- }
- ++$cont;
- }
- echo '</TABLE>';
- echo '
- <div class=\'btn-group\'>
- ';
- $page = 1;
- while ($page <= $totalTs3 / 20) {
- echo '<a class=\'btn\' href=\'?module=teamspeak3&action=Manage&tsip=' . $_GET['tsip'] . '&page=' . $page . '\'>' . $page . '</a>';
- ++$page;
- }
- echo '</div>';
- echo '<input type=\'hidden\' name=\'tsusername\' value=\'' . $_GET['tsusername'] . '\'>';
- echo '<input type=\'hidden\' name=\'tspassword\' value=\'' . $_GET['tspassword'] . '\'>';
- echo '<br><input type=\'submit\' name=\'action\' value=\'Suspend\' class=\'btn btn-warning\'>';
- echo '<input type=\'submit\' name=\'action\' value=\'Unsuspend\' class=\'btn btn-success\'>';
- echo '<input type=\'submit\' name=\'action\' value=\'Delete\' class=\'btn btn-danger\'>';
- echo '<input type=\'hidden\' name=\'tsip\' value=\'' . $_GET['tsip'] . '\'>';
- echo '<input type=\'hidden\' name=\'module\' value=\'teamspeak3\'>';
- echo '</form>';
- break;
- }
- case 'Delete': {
- $serverip = explode( ':', $_GET['tsip'] );
- foreach ($servers as $v) {
- if ($v['ipaddress'] == $_GET['tsip']) {
- $sv = $v;
- continue;
- }
- }
- $tsconfig = array( 'username' => $sv['username'], 'password' => $sv['password'], 'ipv4' => $serverip[0], 'qport' => $serverip[1] );
- teamspeak;
- $teamspeak = new ( $tsconfig );
- if ($teamspeak->error) {
- return $teamspeak->error;
- }
- $port = $_GET['tsport'];
- $response = $teamspeak->delete( $port );
- if (!$response['error']) {
- echo '<div class=\'successbox\' width=\'50px\'><strong>Command Success</strong><br />Virtual server deleted</div>';
- }
- else {
- echo '<div class=\'errorbox\' width=\'50px\'><strong>Command Error</strong><br />' . $response['error'] . '</div>';
- }
- break;
- }
- case 'Suspend': {
- $serverip = explode( ':', $_GET['tsip'] );
- foreach ($servers as $v) {
- if ($v['ipaddress'] == $_GET['tsip']) {
- $sv = $v;
- continue;
- }
- }
- $tsconfig = array( 'username' => $sv['username'], 'password' => $sv['password'], 'ipv4' => $serverip[0], 'qport' => $serverip[1] );
- teamspeak;
- $teamspeak = new ( $tsconfig );
- if ($teamspeak->error) {
- return $teamspeak->error;
- }
- $port = $_GET['tsport'];
- $response = $teamspeak->stop( $port );
- if (!$response['error']) {
- echo '<div class=\'successbox\' width=\'100px\'><strong>Command Success</strong><br />Virtual server disabled</div>';
- }
- else {
- echo '<div class=\'errorbox\' width=\'100px\'><strong>Command Error</strong><br />' . $response['error'] . '</div>';
- }
- break;
- }
- case 'Unsuspend': {
- $serverip = explode( ':', $_GET['tsip'] );
- foreach ($servers as $v) {
- if ($v['ipaddress'] == $_GET['tsip']) {
- $sv = $v;
- continue;
- }
- }
- $tsconfig = array( 'username' => $sv['username'], 'password' => $sv['password'], 'ipv4' => $serverip[0], 'qport' => $serverip[1] );
- teamspeak;
- $teamspeak = new ( $tsconfig );
- if ($teamspeak->error) {
- return $teamspeak->error;
- }
- $port = $_GET['tsport'];
- $response = $teamspeak->start( $port );
- if (!$response['error']) {
- echo '<div class=\'successbox\' width=\'50px\'><strong>Command Success</strong><br />Virtual server enabled</div>';
- }
- else {
- echo '<div class=\'errorbox\' width=\'50px\'><strong>Command Error</strong><br />' . $response['error'] . '</div>';
- }
- break;
- }
- default: {
- echo '<p>' . $LANG['intro'] . '</p>
- <p>' . $LANG['description'] . '</p>
- <p>' . $LANG['documentation'] . '</p>';
- break;
- }
- }
- echo '</div>';
- }
- function teamspeak3_sidebar($vars) {
- $modulelink = $vars['modulelink'];
- $version = $vars['version'];
- $option1 = 'Manage servers';
- $LANG = $vars['_lang'];
- $sidebar = '<img width="75px" height="50px" src="../modules/addons/teamspeak3/images/tslogo.png" class="absmiddle" />
- <ul class="menu">
- <li><a href="?module=teamspeak3&action=listServers">' . $option1 . '</a></li>
- </ul>';
- return $sidebar;
- }
- if (!defined( 'WHMCS' )) {
- exit( 'This file cannot be accessed directly' );
- }
- require_once( '../modules/servers/teamspeak3/libs/teamspeak.php' );
- ?>
Add Comment
Please, Sign In to add comment