moved settings

This commit is contained in:
2021-01-01 21:52:55 +00:00
parent 2da853946e
commit 7b0b2e344d
6 changed files with 42 additions and 41 deletions

View File

@@ -5,22 +5,11 @@ from urllib.parse import urljoin
# This is the settings part for the bot logic # This is the settings part for the bot logic
#from misc import post_to_solr #from misc import post_to_solr
from .users import UserManager from .users import UserManager
import settings
env=environ.Env(
CHATFILE=(str,"chats.yaml"),
USERFILE=(str,"users.yaml"),
TARGET=(str,"https://alpha.2020.fet.at"),
URL_HOSTNAME=(str, "bot.2020.fet.at" ),
)
CHATFILE= env('CHATFILE') fet=fet2020postapi(urljoin(settings.TARGET,"api/posts/"))
USERFILE=env('USERFILE')
TARGET=env('TARGET')
URL_HOSTNAME=env('URL_HOSTNAME')
fet=fet2020postapi(urljoin(TARGET,"api/posts/"))
users=UserManager() users=UserManager()

View File

@@ -1,5 +1,5 @@
import yaml import yaml
from . import CHATFILE, TARGET, URL_HOSTNAME
from pytgbot.bot.sync import SyncBot from pytgbot.bot.sync import SyncBot
from pytgbot.api_types.sendable.inline import ( from pytgbot.api_types.sendable.inline import (
InlineQueryResultArticle, InlineQueryResultArticle,
@@ -23,7 +23,7 @@ import logging
logger = logging.getLogger() logger = logging.getLogger()
from misc import SaveFileMapping, SaveFileObject from misc import SaveFileMapping, SaveFileObject
from lxml.html.clean import clean_html, Cleaner from lxml.html.clean import clean_html, Cleaner
import settings
solr = SolrFet2020() solr = SolrFet2020()
@@ -181,10 +181,10 @@ class Chat(BaseChat):
InlineQueryResultArticle( InlineQueryResultArticle(
id=d["url"][0:49], id=d["url"][0:49],
title=d["title"], title=d["title"],
url=urljoin(TARGET, d["url"]), url=urljoin(settings.TARGET, d["url"]),
thumb_url=urljoin(TARGET, d["image"]), thumb_url=urljoin(settings.TARGET, d["image"]),
input_message_content=InputTextMessageContent( input_message_content=InputTextMessageContent(
message_text=urljoin(TARGET, d["url"]) message_text=urljoin(settings.TARGET, d["url"])
), ),
) )
for d in r[0:10] for d in r[0:10]
@@ -259,9 +259,9 @@ class Chat(BaseChat):
u.token = "afwerve" u.token = "afwerve"
u.a = 1 u.a = 1
self.reply_msg( self.reply_msg(
urljoin("https://" + URL_HOSTNAME, "/auth/%s/%s" % (u.id, u.token)) urljoin("https://" + settings.URL_HOSTNAME, "/auth/%s/%s" % (u.id, u.token))
) )
self.send_msg(urljoin("https://", URL_HOSTNAME)) self.send_msg(urljoin("https://", settings.URL_HOSTNAME))
users.to_file() users.to_file()
return True return True
else: else:
@@ -291,7 +291,7 @@ def get_command_from_update(update):
class ChatManager(SaveFileMapping): class ChatManager(SaveFileMapping):
def __init__(self, bot): def __init__(self, bot):
super().__init__(file=CHATFILE) super().__init__(file=settings.CHATFILE)
if not type(bot) is SyncBot: if not type(bot) is SyncBot:
raise TelegramIntegrationException( raise TelegramIntegrationException(
"This ChatManager needs a SyncBot from pytgbot as an argument" "This ChatManager needs a SyncBot from pytgbot as an argument"

View File

@@ -1,6 +1,6 @@
from statemachine import StateMachine, State from statemachine import StateMachine, State
from pytgbot.api_types.sendable.reply_markup import InlineKeyboardButton,InlineKeyboardMarkup from pytgbot.api_types.sendable.reply_markup import InlineKeyboardButton,InlineKeyboardMarkup
from . import fet,TARGET from . import fet
from urllib.parse import urljoin from urllib.parse import urljoin
import logging import logging
logger=logging.getLogger() logger=logging.getLogger()
@@ -125,11 +125,11 @@ class CreatePostWorkflow(TelegramWorkflow):
self.p["post_type"]="N" self.p["post_type"]="N"
self.p["has_agenda"]="False" self.p["has_agenda"]="False"
self.p["public_date"]=datetime.date.today() self.p["public_date"]=datetime.date.today()
self.send("posting to %s" % TARGET) self.send("posting to %s" % settings.TARGET)
r,d=fet.create(self.p) r,d=fet.create(self.p)
logger.info(r) logger.info(r)
if r ==201: if r ==201:
self.send("Eingabe fertig:%s" % str(urljoin(TARGET,"posts/"+d["slug"]))) self.send("Eingabe fertig:%s" % str(urljoin(settings.TARGET,"posts/"+d["slug"])))
else: else:
self.send("Fehler beim posten -- sorry") self.send("Fehler beim posten -- sorry")

View File

@@ -1 +1,20 @@
STUFF="sdf" import environ
STUFF="sdf"
env = environ.Env(
SOLR_HOST=(str, "http://localhost:8980"), TARGET=(str, "https://alpha.2020.fet.at")
)
TARGET=env("TARGET")
SOLR_HOST=env("SOLR_HOST")
env=environ.Env(
CHATFILE=(str,"chats.yaml"),
USERFILE=(str,"users.yaml"),
TARGET=(str,"https://alpha.2020.fet.at"),
URL_HOSTNAME=(str, "bot.2020.fet.at" ),
)
CHATFILE= env('CHATFILE')
USERFILE=env('USERFILE')
TARGET=env('TARGET')
URL_HOSTNAME=env('URL_HOSTNAME')

View File

@@ -1,10 +1,6 @@
from lxml.html.clean import clean_html, Cleaner from lxml.html.clean import clean_html, Cleaner
import environ
import settings
env = environ.Env( import settings
SOLR_HOST=(str, "http://localhost:8980"), TARGET=(str, "https://alpha.2020.fet.at")
)
import pysolr import pysolr
from .convert import post_to_solr, member_to_solr from .convert import post_to_solr, member_to_solr
@@ -13,14 +9,13 @@ from fet2020api import fet2020memberapi, fet2020api
import yaml import yaml
from .solr_to_objects import result_to_object from .solr_to_objects import result_to_object
fet = fet2020api(urljoin(env("TARGET"), "api/posts/"), pk="slug") fet = fet2020api(urljoin(settings.TARGET, "api/posts/"), pk="slug")
fetmember = fet2020memberapi(urljoin(env("TARGET"), "api/members/")) fetmember = fet2020memberapi(urljoin(settings.TARGET, "api/members/"))
class SolrFet2020: class SolrFet2020:
def __init__(self): def __init__(self):
self.solr = pysolr.Solr( self.solr = pysolr.Solr(
urljoin(env("SOLR_HOST"), "/solr/core"), always_commit=True urljoin(settings.SOLR_HOST, "/solr/core"), always_commit=True
) )
def reindex(self): def reindex(self):

View File

@@ -1,18 +1,16 @@
from .utils import fet, fetmember from .utils import fet, fetmember
from .utils import strip_html from .utils import strip_html
from urllib.parse import urljoin,urlparse from urllib.parse import urljoin,urlparse
from . import env import settings
def pull_post(slug, o): def pull_post(slug, o):
#docs = result.docs
highlights =o["highlights"]
post = fet.find_one({"slug": slug}) post = fet.find_one({"slug": slug})
def create_text(p): def create_text(p):
return "<b>" + \ return "<b>" + \
p["title"]+ "</b>: "+ \ p["title"]+ "</b>: "+ \
"(%s) " % p["public_date"] + \ "(%s) " % p["public_date"] + \
urljoin(env('TARGET'), urljoin(settings.TARGET,
p["url"]).rstrip("/")+" "+\ p["url"]).rstrip("/")+" "+\
p["highlights"] p["highlights"]
@@ -23,14 +21,14 @@ def pull_post(slug, o):
post["typ"] = "posts" post["typ"] = "posts"
post["highlights"]=create_highlights(o["highlights"]) post["highlights"]=create_highlights(o["highlights"])
post["text"] = create_text(post) post["text"] = create_text(post)
if post["url"]: post["url"]= urljoin(env('TARGET'),post["url"]).rstrip("/") if post["url"]: post["url"]= urljoin(settings.TARGET,post["url"]).rstrip("/")
if post["imageurl"]:post["image"]=urljoin(env('TARGET'),urlparse(post["imageurl"]).path) if post["imageurl"]:post["image"]=urljoin(settings.TARGET,urlparse(post["imageurl"]).path)
return post return post
def pull_member(id, o): def pull_member(id, o):
member = fetmember.get(id) member = fetmember.get(id)
if not member: return None if not member: return None
member["url"]=urljoin(env('TARGET'), "/member/%s" % id) member["url"]=urljoin(settings.TARGET, "/member/%s" % id)
member["text"]="<b>"+member["firstname"]+" "+member["surname"]+"</b>"+" "+member["url"] member["text"]="<b>"+member["firstname"]+" "+member["surname"]+"</b>"+" "+member["url"]
member["imageurl"]=member["image"] member["imageurl"]=member["image"]
member["title"] =member["firstname"]+" "+member["surname"] member["title"] =member["firstname"]+" "+member["surname"]