コード例 #1
0
 public function execute($parameters, $db)
 {
     $url = "https://twitter.com/eve_kill/status/";
     $storageName = "twitterLatestRepliesID";
     $latest = $db->queryField("SELECT contents FROM zz_storage WHERE locker = '{$storageName}'", "contents", array(), 0);
     if ($latest == null) {
         $latest = 0;
     }
     $maxID = $latest;
     $twitter = Twit::getMessages(25);
     $messages = array();
     foreach ($twitter as $status) {
         $text = (array) $status->text;
         $createdAt = (array) $status->created_at;
         $postedBy = (array) $status->user->name;
         $screenName = (array) $status->user->screen_name;
         $id = (int) $status->id;
         if ($id <= $latest) {
             continue;
         }
         $maxID = max($id, $maxID);
         $message = array("message" => $text[0], "postedAt" => $createdAt[0], "postedBy" => $postedBy[0], "screenName" => $screenName[0], "url" => $url . $id[0]);
         $url = "https://twitter.com/" . $screenName[0] . "/status/" . $id;
         $msg = "|g|@|n|" . $screenName[0] . " (|g|" . $message["postedBy"] . "|n|) |g|/|n| " . date("H:i:s", strtotime($message["postedAt"])) . " |g|/|n| " . Twit::shortenUrl($url) . " |g|/|n| |g|" . $message["message"];
         //$msg = "Twitter: ($id) |g|" . $message["postedBy"] . "|n| (|g|@". $screenName[0] ."|n|) / |g|" . date("Y-m-d H:i:s", strtotime($message["postedAt"])) . " Message:|n| " . $message["message"];
         $messages[$id] = $msg;
     }
     ksort($messages);
     foreach ($messages as $id => $msg) {
         Log::irc($msg, "");
     }
     if (sizeof($twitter)) {
         $db->execute("INSERT INTO zz_storage (contents, locker) VALUES (:contents, :locker) ON DUPLICATE KEY UPDATE contents = :contents", array(":locker" => $storageName, ":contents" => $maxID));
     }
 }
コード例 #2
0
ファイル: Social.php プロジェクト: Covert-Inferno/zKillboard
 public static function beSocial($killID)
 {
     if ($killID < 0) {
         return;
     }
     $ircMin = 5000000000;
     $twitMin = 10000000000;
     // This is an array of characters we like to laugh at :)
     $laugh = array(1633218082, 924610627, 619471207, 268946627, 179004085, 428663616);
     $count = Db::queryField("select count(*) count from zz_social where killID = :killID", "count", array(":killID" => $killID), 0);
     if ($count != 0) {
         return;
     }
     // Get victim info
     $victimInfo = Db::queryRow("select * from zz_participants where killID = :killID and isVictim = 1", array(":killID" => $killID));
     if ($victimInfo == null) {
         return;
     }
     $totalPrice = $victimInfo["total_price"];
     if (!in_array($victimInfo["characterID"], $laugh)) {
         // If in laugh array, skip the checks
         // Check the minimums, min. price and happened in last 12 hours
         if ($totalPrice < $ircMin) {
             return;
         }
     }
     Info::addInfo($victimInfo);
     $url = "https://zkillboard.com/detail/{$killID}/";
     if ($totalPrice >= $twitMin) {
         $url = Twit::shortenUrl($url);
     }
     $message = "|g|" . $victimInfo["shipName"] . "|n| worth |r|" . Util::formatIsk($totalPrice) . " ISK|n| was destroyed! {$url}";
     if (!isset($victimInfo["characterName"])) {
         $victimInfo["characterName"] = $victimInfo["corporationName"];
     }
     if (strlen($victimInfo["characterName"]) < 25) {
         $name = $victimInfo["characterName"];
         if (Util::endsWith($name, "s")) {
             $name .= "'";
         } else {
             $name .= "'s";
         }
         $message = "{$name} {$message}";
     }
     Db::execute("insert into zz_social (killID) values (:killID)", array(":killID" => $killID));
     Log::irc("{$message}");
     $message = Log::stripIRCColors($message);
     if ($totalPrice >= $twitMin) {
         $message .= " #tweetfleet #eveonline";
         $return = Twit::sendMessage($message);
         $twit = "https://twitter.com/eve_kill/status/" . $return->id;
         Log::irc("Message was also tweeted: |g|{$twit}");
     }
 }