Another year is about to end... So we have to update these damn copyright information :P
[PHP-P10.git] / Bots / PulseBot.class.php
index 63d3e4a0269f5c042c2f68b4327b3bfd41c469ab..b9a5e6a180544e5798a047be20fb0c47bb24329a 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /******************************* PHP-P10 v2 *****************************
- * Copyright (C) 2011  Philipp Kreil (pk910)                            *
+ * Copyright (C) 2011-2012  Philipp Kreil (pk910)                       *
  *                                                                      *
  * This program is free software: you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
@@ -48,7 +48,7 @@ class {$_NAME} extends Bot {
                } else {
                        $this->pulsebot = $old;
                }
-               BotLoader::registerDB($this, "PulseBot");
+               BotLoader::registerDB($this, "pulsebot");
                ModCMD::bind($this, BIND_CHANMSG, "recive_privmsg");
                ModCMD::bind($this, BIND_JOIN, "recive_join");
                ModCMD::bind($this, BIND_QUIT, "recive_quit");
@@ -90,12 +90,12 @@ class {$_NAME} extends Bot {
                        return $ustats;
                }
                $stats = $this->getStats();
-               $users = $stats->TeamStats->Members;
+               $users = $stats->TeamStats->Members->Member;
                foreach ($users as $user) {
                        if(strtolower($user->MemberName) == strtolower($name)) {
                                $xmlstr = file_get_contents("http://whatpulse.org/api/user.php?UserID=".$user->MemberUserID);
                                $ustats = new SimpleXMLElement($xmlstr);
-                               $this->cache["ustats_".strtolower($name)] = $stats;
+                               $this->cache["ustats_".strtolower($name)] = $ustats;
                                $this->cache["ustats_".strtolower($name)."_time"] = time();
                                return $ustats;
                        }
@@ -122,7 +122,7 @@ class {$_NAME} extends Bot {
                                        $pulseUserName = $exp[1];
                                        $stats = $this->getStats();
                                        $pulseUser = null;
-                                       $users = $stats->TeamStats->Members;
+                                       $users = $stats->TeamStats->Members->Member;
                                        foreach ($users as $puser) {
                                                if(strtolower($puser->MemberName) == strtolower($pulseUserName)) {
                                                        $pulseUser = $puser;
@@ -145,8 +145,8 @@ class {$_NAME} extends Bot {
                                        if(!array_key_exists("users", $this->db)) {
                                                $this->db['users'] = array();
                                        }
-                                       $this->db['users'][$auth] = $pulseUser->MemberName;
-                                       $this->uplink->notice($this->pulsebot, $user, "WhatPulse user '".$pulseUserName."' added (Keys: ".$pulseUser->MemberKeys.", Clicks: ".$pulseUser->MemberClicks.").");
+                                       $this->db['users'][$auth] = strval($pulseUser->MemberName);
+                                       $this->uplink->notice($this->pulsebot, $user, "WhatPulse user '".$pulseUserName."' added (Keys: ".number_format(floatval($pulseUser->MemberKeys),0,',','.').", Clicks: ".number_format(floatval($pulseUser->MemberClicks),0,',','.').").");
                                }
                                break;
                        case ".deluser":
@@ -170,7 +170,7 @@ class {$_NAME} extends Bot {
                                $table = new Table(5);
                                $table->add("User", "Keys", "Clicks", "Miles", "IRC");
                                $stats = $this->getStats();
-                               $users = $stats->TeamStats->Members;
+                               $users = $stats->TeamStats->Members->Member;
                                if(!array_key_exists("users", $this->db)) {
                                        $this->db['users'] = array();
                                }
@@ -182,7 +182,7 @@ class {$_NAME} extends Bot {
                                                        break;
                                                }
                                        }
-                                       $table->add($puser->MemberName, $puser->MemberKeys, $puser->MemberClicks, $puser->MemberMiles, $ircUserName);
+                                       $table->add($puser->MemberName, number_format(floatval($puser->MemberKeys),0,',','.'), number_format(floatval($puser->MemberClicks),0,',','.'), number_format(floatval($puser->MemberMiles),2,',','.'), $ircUserName);
                                }
                                $lines = $table->end();
                                foreach($lines as $line) {
@@ -207,7 +207,7 @@ class {$_NAME} extends Bot {
                                $pulseUser = null;
                                if($pulseUserName) {
                                        $stats = $this->getStats();
-                                       $users = $stats->TeamStats->Members;
+                                       $users = $stats->TeamStats->Members->Member;
                                        foreach ($users as $puser) {
                                                if(strtolower($puser->MemberName) == strtolower($pulseUserName)) {
                                                        $pulseUser = $puser;
@@ -220,8 +220,9 @@ class {$_NAME} extends Bot {
                                        break;
                                }
                                $ustats = $this->getUserStats($pulseUser->MemberName);
-                               $message = "User \002".$pulseUser->MemberName."\002 has \002".$pulseUser->MemberKeys."\002 keys (".$ustats->AvKPS." per second), \002".$pulseUser->MemberClicks."\002 clicks (".$ustats->AvCPS." per second) and ".$pulseUser->MemberMiles." miles.\n";
-                               $message .= "Last Pulse: ".$ustats->LastPulse;
+                               $message = array();
+                               $message[] = "User \002".$pulseUser->MemberName."\002 has \002".number_format(floatval($pulseUser->MemberKeys),0,',','.')."\002 keys (".number_format(floatval($ustats->AvKPS),2,',','.')." per second), \002".number_format(floatval($pulseUser->MemberClicks),0,',','.')."\002 clicks (".number_format(floatval($ustats->AvCPS),2,',','.')." per second) and ".number_format(floatval($pulseUser->MemberMiles),2,',','.')." miles.";
+                               $message[] = "Last Pulse: ".$ustats->LastPulse;
                                if(count($exp) > 1) {
                                        foreach($message as $line) {
                                                $this->uplink->privmsg($this->pulsebot, $channel, $line);
@@ -248,7 +249,7 @@ class {$_NAME} extends Bot {
                $pulseUser = null;
                if($pulseUserName) {
                        $stats = $this->getStats();
-                       $users = $stats->TeamStats->Members;
+                       $users = $stats->TeamStats->Members->Member;
                        foreach ($users as $puser) {
                                if(strtolower($puser->MemberName) == strtolower($pulseUserName)) {
                                        $pulseUser = $puser;
@@ -258,7 +259,7 @@ class {$_NAME} extends Bot {
                }
                if($pulseUser) {
                        $this->uplink->mode($this->pulsebot, $channel, "+v ".$user->getNumeric());
-                       $this->uplink->privmsg($this->pulsebot, $channel, "WhatPulse User \002".$pulseUser->MemberName."\002 (\002".$pulseUser->MemberKeys."\002 keys and \002".$pulseUser->MemberClicks."\002 clicks) has joined the channel.");
+                       $this->uplink->privmsg($this->pulsebot, $channel, "WhatPulse User \002".$pulseUser->MemberName."\002 (\002".number_format(floatval($pulseUser->MemberKeys),0,',','.')."\002 keys and \002".number_format(floatval($pulseUser->MemberClicks),0,',','.')."\002 clicks) has joined the channel.");
                }
        }