This repository has been archived on 2026-10-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
tannleichen/tannlegen.py
T
2017-03-14 02:38:17 +01:00

118 lines
3.2 KiB
Python
Executable File

#!/usr/bin/env python
#coding: utf-8
import sys
import urwid
import random
import tweetorator
import slackorator
import os
import logging
import datetime
from time import sleep
from alphabet import *
from asciigriser import gris
logging.basicConfig(format='[%(asctime)s] %(levelname)s: %(message)s', filename='tannlegen.log', level=logging.DEBUG)
__version__ = "0.21" #Dan-Mikkel slang inn flere prompts.
header = "tannlegen"#Max 10 bokstaver!
slogan = "Norges frieste tannlegestol"
#Random bullshittery som kanskje dukker opp
n = random.randint(0,100)
if (n == 55):
header = "sos"
slogan = "Jeg er fanget i Tannlegestolen! Kontakt Stryret!"
if (n == 69):
header = "Sexy"
slogan = "Virru værra med meg hjem inatt?"
if (n == 0):
slogan = "videreutvikles av Dan-Mikkel"
if (n == 1):
header = "tt"
slogan = "Tappetårnet er sexy!"
if (n == 2):
header = "Storebror"
slogan = "Politihøyskolen ser deg, ikke tiss utenfor!"
#Ting som MÅ dukke opp avhengig av tid
d = datetime.datetime.today();
if ((d.day == 23 or d.day == 25) and d.month == 2):
header = "stiffi"
slogan = "15 år med RESPEKT og MORO!"
c = map(lambda x: ord(x)-ord('a'),header.lower())
s = ""
for i in range(rows):
for j in c:
s+= alphabet[j][i]
s+= "\n"
s+="\n "
s+=slogan
asciiheader = s
palette = [
('header', 'white', 'dark red'),
('inside', '', 'dark green'),
('outside', '', 'dark green'),
('statusbar', 'white', 'dark red'),
('err', 'black', 'dark red'),
('suc', 'black', 'dark green')]
def get_edit_box(prompt=None):
prompts = [u"What's happening?",
u"How are you feeling?",
u"What's going on?",
u"How are you doing?",
u"How's it going?",
u"Skriv navnet ditt her og vi melder deg inn i SOS Rasisme",
u"Er du innover eller utover?"]
if not prompt:
prompt = random.choice(prompts)
prompt = prompt + ":\n"
return urwid.Edit(prompt)
def exit_on_q(key):
if key in ('q', 'Q'):
raise urwid.ExitMainLoop()
class ConfessionBox(urwid.Filler):
def keypress(self, size, key):
#"""
if key == 'f12':
statusbar.base_widget.set_text([('err', u"test err "),('suc', u"test suc")])
#"""
if key != 'enter':
return super(ConfessionBox, self).keypress(size, key)
text = self.original_widget.get_edit_text()
tweetorator.post_confession(text)
#slackorator.post_confession(text)
self.original_widget = get_edit_box()
outside = urwid.AttrMap(urwid.Divider(), 'outside')
inside = urwid.AttrMap(urwid.Divider(), 'inside')
text = urwid.AttrMap(urwid.Text(asciiheader, align='center'), 'header')
pile = urwid.Pile([])
for item in [outside, inside, text, inside, outside]:
pile.contents.append((item, pile.options()))
edit = get_edit_box()
bf = ConfessionBox(edit, valign='top')
statusbar = urwid.AttrMap(urwid.Text(u"Status bar of epic failure"), 'statusbar')
frame = urwid.Frame(bf, pile, statusbar)
loop = urwid.MainLoop(frame, palette, unhandled_input=exit_on_q)
loop.widget = frame
try:
loop.run()
except:
logging.error("GREPTHISLINE: Random error in loop:%s" %sys.exc_info()[0])