def hunt_file(hunt, name):
"""Return a path file 'name' within the given hunt.
def hunt_file(hunt, name):
"""Return a path file 'name' within the given hunt.
expanding += [
' <div id="b{}" class="containerTab {}" style="display:none;">\n'.format(i, status),
' <span onclick="this.parentElement.style.display=\'none\'" class="closebtn">x</span>\n',
expanding += [
' <div id="b{}" class="containerTab {}" style="display:none;">\n'.format(i, status),
' <span onclick="this.parentElement.style.display=\'none\'" class="closebtn">x</span>\n',
- ' <h2>{}</h2>\n'.format(link(website + filename_from_name(rnd) + "_round.html", rnd)),
+ ' <h2>{}</h2>\n'.format(link(hunt_file(hunt, filename_from_name(rnd)) + "_round.html", rnd)),
' <table class="sortable">\n',
' <tr>\n',
' <th><u>Puzzle</u></th>\n',
' <table class="sortable">\n',
' <tr>\n',
' <th><u>Puzzle</u></th>\n',
meta = ''
if puzzle['status'] == 'solved':
expanding += [' <tr class=\'solved\';>\n',
meta = ''
if puzzle['status'] == 'solved':
expanding += [' <tr class=\'solved\';>\n',
- ' <td>{}</td>\n'.format(link(website + filename_from_name(puzzle['name']) + ".html", puzzle['name']+meta)),
- ' <td>{}</td>\n'.format(puzzle['solution']),
+ ' <td>{}</td>\n'.format(link(hunt_file(hunt, filename_from_name(puzzle['name'])) + ".html", puzzle['name']+meta)),
+ ' <td>{}</td>\n'.format(", ".join(puzzle['solution']).upper()),
- ' <td><b>{}</b></td>\n'.format(link(website + filename_from_name(puzzle['name']) + ".html", puzzle['name']+meta)),
+ ' <td><b>{}</b></td>\n'.format(link(hunt_file(hunt, filename_from_name(puzzle['name'])) + ".html", puzzle['name']+meta)),
end = ['</body>\n', '</html>\n']
html = start + expanding + columns + end
file = hunt_file(hunt, "index.html")
end = ['</body>\n', '</html>\n']
html = start + expanding + columns + end
file = hunt_file(hunt, "index.html")
' </head>\n',
' <body class="{}">\n'.format(status),
' <h1><b>{}</b></h1>\n'.format(rnd),
' </head>\n',
' <body class="{}">\n'.format(status),
' <h1><b>{}</b></h1>\n'.format(rnd),
- ' <p>{}</p>\n'.format(link(website + "index.html", 'Hunt Overview')),
+ ' <p>{}</p>\n'.format(link(hunt_file(hunt, "index") + ".html", 'Hunt Overview')),
' <td>{}</td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
' <td>{}</td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
- ' <td>{}</td>\n'.format(link(website + filename_from_name(puzzle['name']) + '.html', 'Overview')),
- ' <td>{}</td>\n'.format(puzzle['solution']),
+ ' <td>{}</td>\n'.format(link(hunt_file(hunt, filename_from_name(puzzle['name'])) + ".html", 'Overview')),
+ ' <td>{}</td>\n'.format(", ".join(puzzle['solution']).upper()),
- ' <td>{}</td>\n'.format("".join(puzzle.get('tags',[]))),
+ ' <td>{}</td>\n'.format(", ".join(puzzle.get('tags',[]))),
' </tr>\n']
else:
puzzle_list += [ ' <tr>\n',
' <td><b>{}</b></td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
' </tr>\n']
else:
puzzle_list += [ ' <tr>\n',
' <td><b>{}</b></td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
- ' <td>{}</td>\n'.format(link(website + filename_from_name(puzzle['name']) + '.html', 'Overview')),
+ ' <td>{}</td>\n'.format(link(hunt_file(hunt, filename_from_name(puzzle['name'])) + ".html", 'Overview')),
- ' <td>{}</td>\n'.format(" ".join(puzzle.get('tags',[]))),
+ ' <td>{}</td>\n'.format(", ".join(puzzle.get('tags',[]))),
'</html>\n']
html = start + puzzle_list + end
file = hunt_file(hunt, "{}_round.html".format(filename_from_name(rnd)))
'</html>\n']
html = start + puzzle_list + end
file = hunt_file(hunt, "{}_round.html".format(filename_from_name(rnd)))
' <meta name="viewport" content="width=device-width, initial-scale=1">\n',
' <link rel="stylesheet" href="/individual.css">\n',
' <title>{}</title>\n'.format(name+meta),
' <meta name="viewport" content="width=device-width, initial-scale=1">\n',
' <link rel="stylesheet" href="/individual.css">\n',
' <title>{}</title>\n'.format(name+meta),
- ' <p>{}</p>'.format(link(website + 'index.html', 'Hunt Overview')),
+ ' <p>{}</p>'.format(link(hunt_file(hunt, 'index') + ".html", 'Hunt Overview')),
' <table class="center">\n',
' <tr>\n',
' <td>Round(s): {}</td>\n'.format(" ".join(round_url)), #round page on our site
' <table class="center">\n',
' <tr>\n',
' <td>Round(s): {}</td>\n'.format(" ".join(round_url)), #round page on our site
- ' <td>Tags: {}</td>\n'.format(" ".join(puzzle.get('tags',[]))), #add tags
+ ' <td>Tags: {}</td>\n'.format(", ".join(puzzle.get('tags',[]))), #add tags
- ' <p>{}</p>\n'.format(link(website + "index.html", 'Hunt Overview')),
+ ' <p>{}</p>\n'.format(link(hunt_file(hunt, 'index') + ".html", 'Hunt Overview')),
' <td>{}</td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
' <td>{}</td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
- ' <td>{}</td>\n'.format(link(website + filename_from_name(puzzle['name']) + '.html', 'Overview')),
- ' <td>{}</td>\n'.format(puzzle['solution']),
+ ' <td>{}</td>\n'.format(link(hunt_file(hunt, filename_from_name(puzzle['name'])) + ".html", 'Overview')),
+ ' <td>{}</td>\n'.format(", ".join(puzzle['solution']).upper()),
- ' <td>{}</td>\n'.format("".join(puzzle.get('tags',[]))),
+ ' <td>{}</td>\n'.format(", ".join(puzzle.get('tags',[]))),
' <td>{}</td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
' <td>{}</td>\n'.format(elink(slack_url, puzzle['name']+meta)),
' <td>{}</td>\n'.format(elink(puzzle.get('url',''), 'Puzzle')),
' <td>{}</td>\n'.format(elink(puzzle['sheet_url'], 'Sheet')),
- ' <td>{}</td>\n'.format(link(website + filename_from_name(puzzle['name']) + '.html', 'Overview')),
+ ' <td>{}</td>\n'.format(link(hunt_file(hunt, filename_from_name(puzzle['name'])) + ".html", 'Overview')),
- ' <td>{}</td>\n'.format("".join(puzzle.get('tags',[]))),
+ ' <td>{}</td>\n'.format(", ".join(puzzle.get('tags',[]))),
overview(hunt, puzzles, rounds)
for rnd in rounds:
round_overview(hunt, rnd, puzzles)
overview(hunt, puzzles, rounds)
for rnd in rounds:
round_overview(hunt, rnd, puzzles)
- for puzzle in puzzles:
- puzzle_overview(hunt, puzzle)
- puzzle_lists(hunt, puzzles, "All")
- puzzle_lists(hunt, puzzles, "Solved")
- puzzle_lists(hunt, puzzles, "Unsolved")
+ for puzzle in puzzles:
+ puzzle_overview(hunt, puzzle)
+ puzzle_lists(hunt, puzzles, "All")
+ puzzle_lists(hunt, puzzles, "Solved")
+ puzzle_lists(hunt, puzzles, "Unsolved")
+