tailbone-harvest/tailbone_harvest/views/harvest/master.py

63 lines
1.8 KiB
Python
Raw Normal View History

# -*- coding: utf-8; -*-
################################################################################
#
# Rattail -- Retail Software Framework
# Copyright © 2010-2022 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/>.
#
################################################################################
"""
Harvest master view
"""
2022-01-29 19:36:17 -06:00
from rattail_harvest.db.model import HarvestTimeEntry
from tailbone.views import MasterView
class HarvestMasterView(MasterView):
"""
Base class for Harvest master views
"""
creatable = False
has_versions = True
2022-01-29 19:36:17 -06:00
model_row_class = HarvestTimeEntry
labels = {
'id': "ID",
'user_id': "User ID",
'client_id': "Client ID",
'project_id': "Project ID",
'task_id': "Task ID",
'invoice_id': "Invoice ID",
}
2022-01-29 19:36:17 -06:00
row_labels = {
'id': "ID",
}
def configure_form(self, f):
super(HarvestMasterView, self).configure_form(f)
f.remove('time_entries')
def configure_row_grid(self, g):
super(HarvestMasterView, self).configure_row_grid(g)
g.set_sort_defaults('spent_date', 'desc')
def row_view_action_url(self, entry, i):
return self.request.route_url('harvest.time_entries.view', uuid=entry.uuid)