boombox_plugin v1.3

This commit is contained in:
.[d]. 2022-07-25 12:17:53 -05:00
parent c728bf8877
commit d04105f51f

@ -10,7 +10,6 @@ from typing import Type
import random
import string
import os
import ipdb
######################################################################################################### THE ASCII LOGO TO BE USED
MOTD="""
_________ _________ _________ ___ ___ _________ _________ ____ ____
@ -84,14 +83,14 @@ class Plugin:
msg+=f"{c[2]}url{c[1]}{c[3]}{url}"
else:
msg+=f"{c[2]}error{c[1]}: {c[3]}{token} is an invalid token"
self.bot.privmsg(target,self.bot.emo(msg))
self.bot.privmsg(target,self.bot.emo(msg))
##################################################################################################### BOOMBOX MAIN 2
@command(permission='view')
def boombox(self, mask, target, args):
"""boombox - usage: ?boombox top, ?boombox last, ?boombox user, ?boombox site, ?boombox all
%%boombox <command>...
"""boombox
%%boombox
"""
command=' '.join(args['<command>']).lower()
command='all' #' '.join(args['<command>']).lower()
###########################################################################
commands=['top','last','user','site','all']
###########################################################################
@ -155,9 +154,8 @@ class Plugin:
# LAST SONGS LAST SONGS LAST SONGS LAST SONGS LAST SONGS LAST SONGS LAST SONGS LAST
msg=f'OLD SONGS ◸{c2}◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸◹◸'
self.bot.privmsg(target,msg)
bbs_data=self.bot.db.getlist('bbs_data')
bbs_data=self.bot.db.getlist('bbs_data')
try:
ipdb.set_trace()
count=0
for i,lastdb in enumerate(bbs_last):
nick=lastdb[0]
@ -196,7 +194,7 @@ class Plugin:
bbs_nicks=self.bot.db.getlist("bbs_nicks")
top_nicks=list(bbs_nicks[0].keys())
top_users_tally=[]; top_users=[]
for _ in [ x for x in bbs_nicks[0] ]:
for _ in [ x for x in bbs_nicks[0] ]:
top_users_tally.append(bbs_nicks[0][_]['tally'])
for _ in [ x for x in bbs_nicks[0] ]:
top_users.append(_)
@ -237,13 +235,13 @@ class Plugin:
self.bot.privmsg(target,msg)
bbs_nicks=self.bot.db.getlist('bbs_nicks')
site_nicks=list(bbs_nicks[0].keys())
site_users_bandcamp=[]; site_users_soundcloud=[];
site_users_youtube=[]; site_users_spotify=[];
for _ in [ x for x in site_nicks ]:
site_users_bandcamp=[]; site_users_soundcloud=[];
site_users_youtube=[]; site_users_spotify=[];
for _ in [ x for x in site_nicks ]:
site_users_bandcamp.append([bbs_nicks[0][_]['bandcamp'],_])
site_users_soundcloud.append([bbs_nicks[0][_]['soundcloud'],_])
site_users_youtube.append([bbs_nicks[0][_]['youtube'],_])
site_users_spotify.append([bbs_nicks[0][_]['spotify'],_])
site_users_spotify.append([bbs_nicks[0][_]['spotify'],_])
site_users_bandcamp.sort(); site_users_bandcamp.reverse()
site_users_soundcloud.sort(); site_users_soundcloud.reverse()
site_users_youtube.sort(); site_users_youtube.reverse()
@ -268,7 +266,7 @@ class Plugin:
soundcloud_top_user_hits=[]
for i,_ in enumerate(bbs_data):
if _['site']=='soundcloud':
soundcloud_top_user_hits.append(f'{_["hits"]},{i}')
soundcloud_top_user_hits.append(f'{_["hits"]},{i}')
soundcloud_top_user_hits.sort()
soundcloud_top_user_hits.reverse()
soundcloud_index=int(soundcloud_top_user_hits[0].split(',')[1])
@ -323,7 +321,7 @@ class Plugin:
for _ in siteorder:
if invertedsites[_]=='soundcloud':
msg=f'{c4}{self.bot.bbs.tailor(site_soundcloud[0].lower(),50)} {c1}{c3}{self.bot.bbs.tailor(site_soundcloud[1].lower(),10)} {c1}{c8}{self.bot.bbs.tailor(site_soundcloud[2].lower(),10)} {c1}{c7}{str(site_soundcloud[3]).zfill(2)}{c1}/{c7}{str(site_soundcloud[4]).zfill(2)} {c6}plays {c1}{c5}?bb {site_soundcloud[5]}'
self.bot.privmsg(target, msg)
self.bot.privmsg(target, msg)
elif invertedsites[_]=='bandcamp':
msg=f'{c4}{self.bot.bbs.tailor(site_bandcamp[0].lower(),50)} {c1}{c3}{self.bot.bbs.tailor(site_bandcamp[1].lower(),10)} {c1}{c8}{self.bot.bbs.tailor(site_bandcamp[2].lower(),10)} {c1}{c7}{str(site_bandcamp[3]).zfill(2)}{c1}/{c7}{str(site_bandcamp[4]).zfill(2)} {c6}plays {c1}{c5}?bb {site_bandcamp[5]}'
self.bot.privmsg(target, msg)
@ -400,7 +398,7 @@ class BOOMBOX_CONFIG:
##################################################################################################### BOOMBOX CONFIG TEXT ALIGNMENTS
def tailor(self,s,n):
if len(s)<=n:
result=s+" "*(n-len(s))
result=s+"."*(n-len(s))
return result
else:
return s[0:n]
@ -637,7 +635,7 @@ class BOOMBOX_CONFIG:
#############################################
print(f'\t\t- creating database{" "*10}{index+1}/{len(self.database_names)} - {self.database_names[index]}')
automation_flag=False
######################################################################## database: 0/5 - bbs_data
######################################################################## database: 0/5 - bbs_data
if database_name==self.database_names[0]:
#############################################################################################
try:
@ -654,7 +652,7 @@ class BOOMBOX_CONFIG:
try:
db=[]
for _ in range(0,self.bot.bbs.ceiling__last_songs):
db.append('')
db.append('')
db.pop()
db.append(["dr1p","soundcloud","fenix flexin - 10 toes ( dr1ph0p m1x )","06660","https://soundcloud.com/vanta_sec/fenix-flexin-10-toes-dr1ph0p-m1x"])
db.reverse()
@ -677,7 +675,7 @@ class BOOMBOX_CONFIG:
########################################################################database: 3/5 - bbs_sites
elif database_name==self.database_names[3]:
#############################################################################################
try:
try:
db=[]
db.append({'soundcloud':1,'youtube':0,'spotify':0,'bandcamp':0})
self.bot.db.setlist(database_name,db)
@ -714,6 +712,6 @@ class BOOMBOX_CONFIG:
else:
status='\t\t- failure'
print(f'{status}: {msg}')
#################################################################################################
#################################################################################################
################################################################################################# EOF
##################################################################################################### EOF
##################################################################################################### EOF