Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- //Post input from the website
- function isValidJSON($str) {
- json_decode($str);
- return json_last_error() == JSON_ERROR_NONE;
- }
- mail("doradus.webber@gmail.com","Input","debug1");
- $json_params = file_get_contents("php://input");
- mail("doradus.webber@gmail.com","Input","debug2");
- if (strlen($json_params) > 0 && isValidJSON($json_params)) {
- $decoded_params = json_decode($json_params, JSON_UNESCAPED_SLASHES);
- $data = $decoded_params;
- } else {
- $data = "Not valid JSON";
- }
- mail("doradus.webber@gmail.com","Input","debug3");
- function fixLineBreak($var) {
- $n = preg_replace("/\n/m", '\n', $var);
- $r = preg_replace("/\r/m", '', $n);
- return $r;
- }
- mail("doradus.webber@gmail.com","Input","debug4");
- //Timestamp
- date_default_timezone_set('UTC');
- $time1 = date("Y-m-d");
- $time2 = date("H:i:s");
- $time3 = date(v);
- $timestamp = $time1 ."T".$time2.".".$time3."Z";
- mail("doradus.webber@gmail.com","Input","debug5");
- //Find WoW avatar on Warcraft Logs
- include 'simple_html_dom.php';
- $html = file_get_html($data["wlogs"]);
- $img = "//www.warcraftlogs.com/img/common/warcraft-logo.png";
- foreach($html->find('img[id="character-portrait-image"]') as $a) {
- $img = $a->src;
- }
- mail("doradus.webber@gmail.com","Input","debug6");
- //Default embed color
- $color = "42751";
- //Arrays
- $class = array("Rogue"=>"16774505","Priest"=>"16777215","Warrior"=>"13081710","Death Knight"=>"12853051","Demon Hunter"=>"10694857","Hunter"=>"11261043","Druid"=>"16743690","Warlock"=>"9732809","Monk"=>"65430","Mage"=>"6933744","Paladin"=>"16092346","Shaman"=>"28894");
- $team = array("Team 1"=>"<@&209255044405657600>","Team 2"=>"<@&297461885475880962>","Social"=>"<@&297458147197714432>");
- $color = $class[$data["class"]];
- $ping = $team[$data["team"]];
- mail("doradus.webber@gmail.com","Input","debug7");
- //Build JSON
- $discord_json = '{"content":"**'. $data["team"] .'** has received a new application. '. $ping .'","embeds":[{"color":'. $color .',"author":{"name":"'. $data["character"] .', a '. $data["race"] .' '. $data["spec"] .' '. $data["class"] .'","url":"'. $data["wlogs"] .'","icon_url":"https://i.imgur.com/FK8T1nQ.png"},"thumbnail":{"url":"http:'. $img .'"},"timestamp":"'. $timestamp .'","footer":{"icon_url":"https://cdn.discordapp.com/embed/avatars/0.png","text":"Powered by Salty"},"fields":[{"name":"Age:","value":"'. $data["age"] .'","inline":"true"},{"name":"Nationality:","value":"'. $data["nationality"] .'","inline":"true"},{"name":"Artifact level:","value":"'. $data["artifact"] .'"},{"name":"Previous guilds:","value":'. fixLineBreak(json_encode($data["previousguild"], JSON_HEX_QUOT)) .'},{"name":"Experience:","value":'. fixLineBreak(json_encode($data["experience"], JSON_HEX_QUOT)) .'},{"name":"Who am I?","value":'. fixLineBreak(json_encode($data["yourself"], JSON_HEX_QUOT)) .'},{"name":"Extra info:","value":'. fixLineBreak(json_encode($data["extra"], JSON_HEX_QUOT)) .'},{"name":"Contact","value":"'. $data["bnet"] .'"}]}]}';
- //Debug
- mail("doradus.webber@gmail.com","Input",$json_params);
- mail("doradus.webber@gmail.com","Discord",$discord_json);
- //Communicate with Discord
- $url = "https://discordapp.com/api/webhooks/471739278427160576/wCy9EgFUJGFWWKhONZgcQnisegzLiaxT0xWy9cd4dZRmKFBTh5eeYNU77GQB2quqI4r2";
- $content = $discord_json;
- $curl = curl_init($url);
- curl_setopt($curl, CURLOPT_HEADER, false);
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($curl, CURLOPT_HTTPHEADER,
- array("Content-type: application/json"));
- curl_setopt($curl, CURLOPT_POST, true);
- curl_setopt($curl, CURLOPT_POSTFIELDS, $content);
- $json_response = curl_exec($curl);
- $status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
- if ( $status != 201 && $status != 204) {
- mail("foundationeu.applications@gmail.com","Curl Status","Error: call to URL $url failed with status $status, response $json_response, curl_error " . curl_error($curl) . ", curl_errno " . curl_errno($curl) . " \n " . $discord_json);
- die("Error: call to URL $url failed with status $status, response $json_response, curl_error " . curl_error($curl) . ", curl_errno " . curl_errno($curl));
- } else {
- echo "Embed sent successfully";
- }
- curl_close($curl);
- $response = json_decode($json_response, true);
- mail("doradus.webber@gmail.com","Input","debug8");
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement