fix: add basic wutta view for users

just proving concepts still at this point..nothing reliable
This commit is contained in:
Lance Edgar 2024-08-22 19:40:21 -05:00
parent 29531c83c4
commit cea3e4b927
3 changed files with 67 additions and 2 deletions

View file

@ -642,7 +642,11 @@
% if request.is_root or not request.user.prevent_password_change:
${h.link_to("Change Password", url('change_password'), class_='navbar-item')}
% endif
${h.link_to("Edit Preferences", url('my.preferences'), class_='navbar-item')}
% try:
## nb. does not exist yet for wuttaweb
${h.link_to("Edit Preferences", url('my.preferences'), class_='navbar-item')}
% except:
% endtry
${h.link_to("Logout", url('logout'), class_='navbar-item')}
</div>
</div>

View file

@ -801,4 +801,8 @@ def defaults(config, **kwargs):
def includeme(config):
defaults(config)
wutta_config = config.registry.settings['wutta_config']
if wutta_config.get_bool('tailbone.use_wutta_views', default=False, usedb=False):
config.include('tailbone.views.wutta.users')
else:
defaults(config)

View file

@ -0,0 +1,57 @@
# -*- coding: utf-8; -*-
################################################################################
#
# Rattail -- Retail Software Framework
# Copyright © 2010-2024 Lance Edgar
#
# This file is part of Rattail.
#
# Rattail 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.
#
# Rattail 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
# Rattail. If not, see <http://www.gnu.org/licenses/>.
#
################################################################################
"""
User Views
"""
from wuttaweb.views import users as wutta
from tailbone.views import users as tailbone
from tailbone.db import Session
from rattail.db.model import User
from tailbone.grids import Grid
class UserView(wutta.UserView):
"""
This is the first attempt at blending newer Wutta views with
legacy Tailbone config.
So, this is a Wutta-based view but it should be included by a
Tailbone app configurator.
"""
model_class = User
Session = Session
# TODO: must use older grid for now, to render filters correctly
def make_grid(self, **kwargs):
""" """
return Grid(self.request, **kwargs)
def defaults(config, **kwargs):
kwargs.setdefault('UserView', UserView)
tailbone.defaults(config, **kwargs)
def includeme(config):
defaults(config)