initial commit

This commit is contained in:
Pratyush Desai 2022-12-16 15:38:37 +05:30
commit deaf57caf9
Signed by: pratyush
GPG Key ID: DBA5BB7505946FAD
6 changed files with 125 additions and 0 deletions

1
README.md Normal file
View File

@ -0,0 +1 @@
Provides the ability for a user to save media links as a playlist with custom categories.

48
__init__.py Normal file
View File

@ -0,0 +1,48 @@
###
# Copyright (c) 2022, Pratyush Desai
# All rights reserved.
#
#
###
"""
Playlists: Provides the ability for a user to save media links as a playlist with custom categories.
"""
import sys
import supybot
from supybot import world
# Use this for the version of this plugin.
__version__ = ""
# XXX Replace this with an appropriate author or supybot.Author instance.
__author__ = supybot.authors.unknown
# This is a dictionary mapping supybot.Author instances to lists of
# contributions.
__contributors__ = {}
# This is a url where the most recent plugin package can be downloaded.
__url__ = ''
from . import config
from . import plugin
if sys.version_info >= (3, 4):
from importlib import reload
else:
from imp import reload
# In case we're being reloaded.
reload(config)
reload(plugin)
# Add more reloads here if you add third-party modules and want them to be
# reloaded when this plugin is reloaded. Don't forget to import them as well!
if world.testing:
from . import test
Class = plugin.Class
configure = config.configure
# vim:set shiftwidth=4 tabstop=4 expandtab textwidth=79:

33
config.py Normal file
View File

@ -0,0 +1,33 @@
###
# Copyright (c) 2022, Pratyush Desai
# All rights reserved.
#
#
###
from supybot import conf, registry
try:
from supybot.i18n import PluginInternationalization
_ = PluginInternationalization('Playlists')
except:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x: x
def configure(advanced):
# This will be called by supybot to configure this module. advanced is
# a bool that specifies whether the user identified themself as an advanced
# user or not. You should effect your configuration by manipulating the
# registry as appropriate.
from supybot.questions import expect, anything, something, yn
conf.registerPlugin('Playlists', True)
Playlists = conf.registerPlugin('Playlists')
# This is where your configuration variables (if any) should go. For example:
# conf.registerGlobalValue(Playlists, 'someConfigVariableName',
# registry.Boolean(False, _("""Help for someConfigVariableName.""")))
# vim:set shiftwidth=4 tabstop=4 expandtab textwidth=79:

1
local/__init__.py Normal file
View File

@ -0,0 +1 @@
# Stub so local is a module, used for third-party modules

27
plugin.py Normal file
View File

@ -0,0 +1,27 @@
###
# Copyright (c) 2022, Pratyush Desai
# All rights reserved.
#
#
###
from supybot import utils, plugins, ircutils, callbacks
from supybot.commands import *
try:
from supybot.i18n import PluginInternationalization
_ = PluginInternationalization('Playlists')
except ImportError:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x: x
class Playlists(callbacks.Plugin):
"""Provides the ability for a user to save media links as a playlist with custom categories."""
threaded = True
Class = Playlists
# vim:set shiftwidth=4 softtabstop=4 expandtab textwidth=79:

15
test.py Normal file
View File

@ -0,0 +1,15 @@
###
# Copyright (c) 2022, Pratyush Desai
# All rights reserved.
#
#
###
from supybot.test import *
class PlaylistsTestCase(PluginTestCase):
plugins = ('Playlists',)
# vim:set shiftwidth=4 tabstop=4 expandtab textwidth=79: