Bugfixes.
This commit is contained in:
parent
a3cec5bce0
commit
78f9679f30
@ -91,6 +91,8 @@ class Application(BaseApplication):
|
||||
self.router.add_get("/http-get", self.handle_http_get)
|
||||
self.router.add_get("/http-photo", self.handle_http_photo)
|
||||
self.router.add_get("/rpc.ws", RPCView)
|
||||
self.router.add_view("/channel/{channel}.html", WebView)
|
||||
|
||||
self.add_subapp(
|
||||
"/docs",
|
||||
DocsApplication(path=pathlib.Path(__file__).parent.joinpath("docs")),
|
||||
|
@ -21,7 +21,7 @@ class LoginView(BaseFormView):
|
||||
return await self.render_template("login.html")
|
||||
|
||||
async def submit(self, form):
|
||||
if await form.is_valid():
|
||||
if await form.is_valid:
|
||||
user = await self.services.user.get(username=form['username'], deleted_at=None)
|
||||
await self.services.user.save(user)
|
||||
self.session.update({
|
||||
@ -31,4 +31,4 @@ class LoginView(BaseFormView):
|
||||
"color": user["color"]
|
||||
})
|
||||
return {"redirect_url": "/web.html"}
|
||||
return {"is_valid": False}
|
||||
return {"is_valid": False}
|
||||
|
@ -24,11 +24,50 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
|
||||
from aiohttp import web
|
||||
from snek.system.view import BaseView
|
||||
|
||||
class WebView(BaseView):
|
||||
login_required = True
|
||||
|
||||
async def get(self):
|
||||
return await self.render_template("web.html")
|
||||
|
||||
if self.login_required and not self.session.get("logged_in"):
|
||||
return web.HTTPFound("/")
|
||||
|
||||
if not self.request.match_info.get("channel"):
|
||||
channel = await self.app.services.channel.get(
|
||||
tag="public",deleted_at=None
|
||||
)
|
||||
if not channel:
|
||||
return web.HTTPNotFound()
|
||||
return web.HTTPFound("/channel/{}.html".format(channel["uid"]))
|
||||
else:
|
||||
print(self.request.match_info.get("channel"), flush=True)
|
||||
channel = await self.app.services.channel.get(
|
||||
uid=str(self.request.match_info.get("channel")),deleted_at=None
|
||||
)
|
||||
if not channel:
|
||||
|
||||
name = "#" + str(self.request.match_info.get("channel")).lstrip("#")
|
||||
|
||||
print("TADAAA:",name, flush=True)
|
||||
|
||||
channel = await self.app.services.channel.get(
|
||||
label=name,deleted_at=None
|
||||
)
|
||||
if not channel:
|
||||
print("NOT found!\n",flush=True)
|
||||
return web.HTTPNotFound()
|
||||
channel_member = await self.app.services.channel_member.get(
|
||||
channel_uid=channel["uid"], user_uid=self.session.get("uid"),deleted_at=None,is_banned=False
|
||||
)
|
||||
if not channel_member:
|
||||
return web.HTTPNotFound()
|
||||
|
||||
print("HIER\n",flush=True)
|
||||
user = await self.app.services.user.get(uid=self.session.get("uid"))
|
||||
if not user:
|
||||
return web.HTTPNotFound()
|
||||
|
||||
return await self.render_template("web.html", {"channel": channel_member,"user": user})
|
||||
|
Loading…
Reference in New Issue
Block a user