mirror of
https://github.com/SpiceBot/SpiceBot.git
synced 2026-11-13 06:59:53 -05:00
commit
e13dc70757
@ -612,6 +612,9 @@ class BotDatabase():
|
|||||||
def alias_nick(self, nick, alias):
|
def alias_nick(self, nick, alias):
|
||||||
return self.db.alias_nick(nick, alias)
|
return self.db.alias_nick(nick, alias)
|
||||||
|
|
||||||
|
def unalias_nick(self, alias):
|
||||||
|
return self.db.unalias_nick(alias)
|
||||||
|
|
||||||
def check_nick_id(self, nick):
|
def check_nick_id(self, nick):
|
||||||
try:
|
try:
|
||||||
self.db.get_nick_id(nick, create=False)
|
self.db.get_nick_id(nick, create=False)
|
||||||
|
|||||||
@ -240,24 +240,27 @@ class BotUsers():
|
|||||||
self.mark_user_offline(nick_id)
|
self.mark_user_offline(nick_id)
|
||||||
|
|
||||||
def nick(self, bot, trigger):
|
def nick(self, bot, trigger):
|
||||||
|
oldnick = trigger.nick
|
||||||
|
old_nick_id = self.whois_ident(oldnick)
|
||||||
newnick = Identifier(trigger)
|
newnick = Identifier(trigger)
|
||||||
if trigger.nick == bot.nick or newnick == bot.nick:
|
if oldnick == bot.nick or newnick == bot.nick:
|
||||||
return
|
return
|
||||||
# alias the nick
|
|
||||||
if not botdb.check_nick_id(newnick):
|
|
||||||
botdb.alias_nick(trigger.nick, newnick)
|
|
||||||
# Identify
|
|
||||||
nick_id = self.whois_ident(newnick)
|
|
||||||
# Verify nick is in the all list
|
# Verify nick is in the all list
|
||||||
self.add_to_all(newnick, nick_id)
|
self.add_to_all(oldnick, old_nick_id)
|
||||||
# Verify nick is in the all list
|
# Verify nick is in the all list
|
||||||
self.add_to_current(newnick, nick_id)
|
self.add_to_current(oldnick, old_nick_id)
|
||||||
# set current nick
|
# set current nick
|
||||||
self.mark_current_nick(newnick, nick_id)
|
self.mark_current_nick(newnick, old_nick_id)
|
||||||
# add joined channel to nick list
|
# add joined channel to nick list
|
||||||
self.add_channel(trigger.sender, nick_id)
|
self.add_channel(trigger.sender, old_nick_id)
|
||||||
# mark user as online
|
# mark user as online
|
||||||
self.mark_user_online(nick_id)
|
self.mark_user_online(old_nick_id)
|
||||||
|
# alias the nick
|
||||||
|
try:
|
||||||
|
botdb.alias_nick(oldnick, newnick)
|
||||||
|
except Exception as e:
|
||||||
|
old_nick_id = e
|
||||||
|
return
|
||||||
|
|
||||||
def mode(self, bot, trigger):
|
def mode(self, bot, trigger):
|
||||||
return
|
return
|
||||||
|
|||||||
15
sopel_modules/SpiceBot_Core_Commands/Users.py
Normal file
15
sopel_modules/SpiceBot_Core_Commands/Users.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# coding=utf8
|
||||||
|
from __future__ import unicode_literals, absolute_import, division, print_function
|
||||||
|
"""
|
||||||
|
This is the SpiceBot Users system.
|
||||||
|
"""
|
||||||
|
import sopel
|
||||||
|
|
||||||
|
import sopel_modules.SpiceBot as SpiceBot
|
||||||
|
|
||||||
|
|
||||||
|
@SpiceBot.prerun('nickname')
|
||||||
|
@sopel.module.nickname_commands('users', 'user')
|
||||||
|
def nickname_comand_users(bot, trigger, botcom):
|
||||||
|
bot.say("WIP")
|
||||||
|
return
|
||||||
@ -9,6 +9,7 @@ This module contains references only for other modules to utilize.
|
|||||||
from .CommandsQuery import *
|
from .CommandsQuery import *
|
||||||
from .Commands import *
|
from .Commands import *
|
||||||
from .Channels import *
|
from .Channels import *
|
||||||
|
from .Users import *
|
||||||
from .Database import *
|
from .Database import *
|
||||||
from .Uptime import *
|
from .Uptime import *
|
||||||
from .Logs import *
|
from .Logs import *
|
||||||
|
|||||||
@ -142,7 +142,7 @@ def bot_channelscan(bot, trigger):
|
|||||||
|
|
||||||
@sopel.module.event(SpiceBot.events.RPL_NAMREPLY)
|
@sopel.module.event(SpiceBot.events.RPL_NAMREPLY)
|
||||||
@sopel.module.rule('(.*)')
|
@sopel.module.rule('(.*)')
|
||||||
def handle_names(bot, trigger):
|
def handle_names_channels(bot, trigger):
|
||||||
SpiceBot.channels.rpl_names(bot, trigger)
|
SpiceBot.channels.rpl_names(bot, trigger)
|
||||||
|
|
||||||
|
|
||||||
@ -150,5 +150,5 @@ def handle_names(bot, trigger):
|
|||||||
@sopel.module.rule('.*')
|
@sopel.module.rule('.*')
|
||||||
@sopel.module.priority('high')
|
@sopel.module.priority('high')
|
||||||
@sopel.module.unblockable
|
@sopel.module.unblockable
|
||||||
def recv_who(bot, trigger):
|
def recv_who_channels(bot, trigger):
|
||||||
SpiceBot.channels.rpl_who(bot, trigger)
|
SpiceBot.channels.rpl_who(bot, trigger)
|
||||||
|
|||||||
@ -52,13 +52,13 @@ def bot_channelscan_users(bot, trigger):
|
|||||||
|
|
||||||
|
|
||||||
@sopel.module.rule('.*')
|
@sopel.module.rule('.*')
|
||||||
def bot_users_chat(bot, trigger):
|
def bot_users_chat_users(bot, trigger):
|
||||||
SpiceBot.users.chat(bot, trigger)
|
SpiceBot.users.chat(bot, trigger)
|
||||||
|
|
||||||
|
|
||||||
@sopel.module.event(SpiceBot.events.RPL_NAMREPLY)
|
@sopel.module.event(SpiceBot.events.RPL_NAMREPLY)
|
||||||
@sopel.module.rule('(.*)')
|
@sopel.module.rule('(.*)')
|
||||||
def handle_names(bot, trigger):
|
def handle_names_users(bot, trigger):
|
||||||
SpiceBot.users.rpl_names(bot, trigger)
|
SpiceBot.users.rpl_names(bot, trigger)
|
||||||
|
|
||||||
|
|
||||||
@ -66,17 +66,17 @@ def handle_names(bot, trigger):
|
|||||||
@sopel.module.rule('.*')
|
@sopel.module.rule('.*')
|
||||||
@sopel.module.priority('high')
|
@sopel.module.priority('high')
|
||||||
@sopel.module.unblockable
|
@sopel.module.unblockable
|
||||||
def recv_who(bot, trigger):
|
def recv_who_users(bot, trigger):
|
||||||
SpiceBot.users.rpl_who(bot, trigger)
|
SpiceBot.users.rpl_who(bot, trigger)
|
||||||
|
|
||||||
|
|
||||||
@sopel.module.event('ACCOUNT')
|
@sopel.module.event('ACCOUNT')
|
||||||
@sopel.module.rule('.*')
|
@sopel.module.rule('.*')
|
||||||
def account_notify(bot, trigger):
|
def account_notify_users(bot, trigger):
|
||||||
SpiceBot.users.account(bot, trigger)
|
SpiceBot.users.account(bot, trigger)
|
||||||
|
|
||||||
|
|
||||||
@sopel.module.event('AWAY')
|
@sopel.module.event('AWAY')
|
||||||
@sopel.module.rule('.*')
|
@sopel.module.rule('.*')
|
||||||
def track_notify(bot, trigger):
|
def track_notify_users(bot, trigger):
|
||||||
SpiceBot.users.track_notify(bot, trigger)
|
SpiceBot.users.track_notify(bot, trigger)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user