function authenticate($processed_data) { if ($processed_data['type'] == 'CONSOLE') { return $processed_data['message']; } if ($this->admin_match('host', $processed_data['host']) != false) { $this->log('admin auth match on host: ' . $processed_data['host']); return $processed_data['message']; } if (($admin = $this->admin_match('nick', $processed_data['nick'])) != false) { $message_parts = explode(' ', $processed_data['message']); array_shift($message_parts); $password = array_shift($message_parts); // first argument should be password if ($admin['password'] != '' && $admin['password'] == $password) { $this->log('admin auth match on USER AND PASSWORD'); return '!admin ' . implode(' ', $message_parts); // returns message stripped of password } } $this->log(Bashful::red() . 'AUTHENTICATION ERROR' . Bashful::unred() . ' BY ' . $processed_data['nick'] . ' (' . $processed_data['host'] . ') IN ' . $processed_data['replyto'] . ': ' . $processed_data['message']); }