Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $clientlist = $reg->cache->get('clientlist');
- $grouplist = [];
- foreach ($reg->cache->get('servergrouplist') as $group)
- $grouplist[$group['sgid']] = $group;
- if (empty($clientlist))
- {
- echo '<div class="alert alert-danger" role="alert">Serwer aktualnie jest niedostępny.</div>';
- return;
- }
- if ($reg->client === null)
- {
- echo '<div class="alert alert-danger" role="alert">Aby móc połączyć swoje konto musisz przebywać na serwerze.</div>';
- return;
- }
- if ($reg->isregister === null)
- {
- echo '<div class="alert alert-danger" role="alert">Aby móc połączyć swoje konto musisz najpierw się zarejestrować.</div>';
- return;
- }
- $error = false;
- if (isset($_POST['submit']))
- {
- $reCaptcha = new ReCaptcha($reg->config['recaptcha']['secret']);
- if ($_POST["g-recaptcha-response"])
- {
- $response = $reCaptcha->verifyResponse($_SERVER["REMOTE_ADDR"], $_POST["g-recaptcha-response"]);
- if(!$response->success) $error = 'Wystąpił błąd podczas weryfikacji Captcha.';
- }
- else
- {
- $error = 'Wystąpił błąd podczas weryfikacji Captcha.';
- }
- if($reg->sqlclient['lastgameschange'] + $reg->config['spamprotection']['games'] > time())
- {
- $error = 'Ups.. Musisz odczekać aby ponownie połączyć konto.';
- }
- else
- {
- $name = $_POST['cname'];
- $password = $_POST['pass'];
- $status = new MCPremium();
- $session = $status->Check($name, $password);
- $data = $session->Response();
- if($data['error'])
- {
- switch($data['error'])
- {
- case 'Invalid credentials.':
- $error .= 'Złe dane uwierzytelniające.';
- break;
- case 'Invalid credentials. Invalid username or password.':
- $error .= 'Sprawdź poprawność danych.';
- break;
- }
- }
- else
- {
- foreach($reg->sql->query('SELECT * FROM minecraft')->fetchAll() as $mc)
- {
- if($mc['uuid'] == $data['uuid'])
- {
- $error = 'Określony użytkownik jest już połączony z innym kontem, sprawdź poprawność wpisanej nazwy użytkownika.';
- }
- }
- $sth = $reg->sql->prepare('INSERT INTO minecraft SET dbid = :dbid, premium = :premium, correct_username = :correct_username, uuid = :uuid;');
- if(!$error)
- {
- echo '<div class="alert alert-info" role="alert">Pomyślnie połączono konto.</div>';
- $status = $sth->execute([':dbid' => $reg->client['client_database_id'], ':premium' => $data['premium'], ':correct_username' => $data['correct_username'], ':uuid' => $data['uuid']]);
- $time = $reg->sql->prepare('UPDATE clientinfo SET lastgameschange = :lastgameschange WHERE database_id = :db');
- $time->execute([':lastgameschange' => time(), ':db' => $reg->client['client_database_id']]);
- $ts = ts3init();
- $ts->serverGroupAddClient($reg->config['games']['minecraftgroup'], $reg->client['client_database_id']);
- header("refresh: 2; url=?minecraft");
- return;
- }
- }
- }
- }
- else if(isset($_POST['delete']))
- {
- echo '<div class="alert alert-info" role="alert">Pomyślnie usunięto konto</div>';
- $delete = $reg->sql->prepare('DELETE FROM minecraft WHERE dbid = :dbid;');
- $delete->execute([':dbid' => $reg->client['client_database_id']]);
- $ts = ts3init();
- $ts->setName($reg->client['client_nickname'].' - Strona');
- $ts->serverGroupDeleteClient($reg->config['games']['minecraftgroup'], $reg->client['client_database_id']);
- header("refresh: 1; url=?minecraft");
- return;
- }
- $loader = $reg->sql->prepare('SELECT * FROM minecraft WHERE dbid = ? LIMIT 1;');
- $loader->execute([$reg->client['client_database_id']]);
- $data = $loader->fetch();
- if($error)
- {
- echo '<div class="alert alert-danger" role="alert">'.$error.'</div>';
- header("refresh: 2; url=?minecraft");
- return;
- }
- if(empty($data))
- {
- echo '
- <div class="alert alert-info" role="alert">
- Witaj, <strong>'.$reg->client['client_nickname'].'</strong><br />
- Na tej stronie połączysz swoje konto <strong>Minecraft</strong> z naszym serwerem. <br />
- Jedyne czego od Ciebie wymagamy to podania nazwy i hasła do Twojego konta.<br />
- Gdy to już wykonasz odczekaj około <kbd>60 sekund</kbd> i połączysz swoje konto automatycznie. <br />
- Uwaga! Administracja serwera nie przechowuje informacji są one tylko i wyłącznie potrzebne do połączenia konta.
- </div>
- <form action="?minecraft" method="post">
- <div class="form-group">
- <label for="exampleInput">Nazwa użytkownika:</label>
- <input type="text" name="cname" class="form-control" value="' . getpost('cname', '') . '" />
- </div>
- <div class="form-group">
- <label for="exampleInput">Hasło:</label>
- <input type="password" name="pass" class="form-control" value="' . getpost('pass', '') . '" />
- </div>
- <div class="form-group">
- <div class="g-recaptcha" data-sitekey="'.$reg->config['recaptcha']['sitekey'].'"></div>
- </div>
- <div class="form-group">
- <input type="submit" name="submit" class="form-control" value="Połącz" />
- </div>
- </form>
- ';
- }
- else
- {
- echo '
- <div class="panel panel-default">
- <div class="panel-heading">
- <h4 class="panel-title">
- <a class="accordion-toggle" data-toggle="collapse" data-target="#mc" aria-expanded="true">
- Minecraft
- </a>
- </h4>
- </div>
- <div class="accordion-body collapse in" id="mc" aria-expanded="true">
- <div class="panel-body" style="padding-bottom: 10px;">
- <div class="row">
- <div class="col-md-2 nopadding">
- <img style="cursor: pointer; margin-left: 10px;" rel="tooltip" data-placement="right" title="" class="img-responsive" src="scripts/assets/imagemc.php?u='.$data['correct_username'].'&s=100&v=f">
- </div>
- <div class="col-md-4 padding5">
- <h3 class="nomargin">
- <strong>'.$data['correct_username'].'</strong> <br />
- '.(($data['premium']) ? '<small>Użytkownik premium</small>' : '').'<br />
- </h3>
- </div>
- <div class="col-md-1 padding5">
- <h3 class="nomargin">
- <form action="?minecraft" method="POST">
- <input type="submit" name="delete" class="btn btn-danger" value="Usuń" />
- </form>
- </h3>
- </div>
- </div>
- </div>
- </div>
- </div>
- ';
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement