1
0
Fork 0
mirror of https://codeberg.org/Mo8it/AdvLabDB.git synced 2024-11-08 21:21:06 +00:00
AdvLabDB/advlabdb/utils.py

61 lines
1.5 KiB
Python
Raw Normal View History

def navbarItems(activePage):
pages = ["Students", "Assistants", "Experiments", "Appointments", "Groups", "Users"]
items = ""
for page in pages:
active = ""
lowerPage = page.lower().replace(" ", "_")
if lowerPage == activePage:
active = " active"
items += '<a class="nav-link' + active + '" href="' + lowerPage + '">' + page + '</a>'
return items
2021-03-19 15:30:02 +00:00
def makeTable(headerAndDataList, rows):
2021-03-19 17:09:07 +00:00
def cellString(cell):
cell = str(cell)
excludeChars = """<>"'[]"""
for c in excludeChars:
if c in cell:
cell = cell.replace(c, "")
return cell
2021-03-19 17:09:07 +00:00
2021-03-19 15:30:02 +00:00
def td(cell):
2021-03-19 17:09:07 +00:00
return "<td>" + cellString(cell) + "</td>"
2021-03-19 15:30:02 +00:00
def th(cell):
2021-03-19 17:09:07 +00:00
return '<th data-sortable="true">' + cellString(cell) + '</th>'
table = '''<table
data-classes="table table-bordered table-striped"
data-toggle="table"
data-thead-classes="table-dark"
data-search="true"
data-show-toggle="true"
data-show-columns="true"
data-show-export="true"
data-export-types="['json', 'xml', 'csv', 'txt', 'sql', 'pdf']">
<thead>
<tr>'''
2021-03-19 15:30:02 +00:00
for i in headerAndDataList:
table += th(i[0])
2021-03-19 17:09:07 +00:00
table += '''</tr>
</thead>
<tbody>\n'''
2021-03-19 15:30:02 +00:00
for row in rows:
table += '<tr>'
for i in headerAndDataList:
table += td(eval(i[1]))
table += '</tr>\n'
2021-03-19 17:09:07 +00:00
table += '''</tbody>
</table>
<br>
<hr>
<br>'''
2021-03-19 15:30:02 +00:00
return table
def appointmentDate(date):
return date.strftime("%a %d.%m.%Y")