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 = new teamspeak;
- 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 = new teamspeak;
- 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 = new teamspeak;
- 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 = new teamspeak;
- 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