From 8dba63e38cd6d33d737b797241eb07c88628ed3e Mon Sep 17 00:00:00 2001 From: "Brian S. Stephan" Date: Sun, 15 Jul 2012 20:54:58 -0500 Subject: [PATCH] deleting FactFile, which i intended to do aeons ago --- modules/FactFile.py | 63 --------------------------------------------- 1 file changed, 63 deletions(-) delete mode 100644 modules/FactFile.py diff --git a/modules/FactFile.py b/modules/FactFile.py deleted file mode 100644 index 85aebca..0000000 --- a/modules/FactFile.py +++ /dev/null @@ -1,63 +0,0 @@ -""" -FactFile - display facts from a flat file upon request -Copyright (C) 2010 Brian S. Stephan - -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 -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -""" - -from ConfigParser import NoOptionError -import os -import random -import re - -from extlib import irclib - -from Module import Module - -class FactFile(Module): - - """Return a random fact/quote/whatever from one or more files.""" - - def do(self, connection, event, nick, userhost, what, admin_unlocked): - """Search for a fact, or return a random one.""" - - whats = what.split(' ') - try: - filename = self.config.get(self.__class__.__name__, whats[0]) - - # open file - if os.path.isfile(filename): - # http://www.regexprn.com/2008/11/read-random-line-in-large-file-in.html - with open(filename, 'r') as file: - facts = [] - if len(whats) == 1: - facts = file.readlines() - else: - lines = file.readlines() - for line in lines: - # check if line matches provided regex - if re.search(' '.join(whats[1:]), line, re.IGNORECASE) is not None: - facts.append(line) - if len(facts) > 0: - to_print = facts[random.randint(1, len(facts))-1] - - # return text - return self.reply(connection, event, to_print.rstrip()) - else: - print('filename in config file for \'' + whats[0] + '\' is wrong') - - except NoOptionError: pass - -# vi:tabstop=4:expandtab:autoindent -# kate: indent-mode python;indent-width 4;replace-tabs on;