Skip to content
Snippets Groups Projects
Verified Commit dece49eb authored by Laurent Heirendt's avatar Laurent Heirendt :airplane:
Browse files

draft: ordering of sections

parent c38fe30e
No related branches found
No related tags found
3 merge requests!350[release] Regular merge of develop,!349Draft: [release] Regular merge of develop,!331ordering of cards
Pipeline #52426 passed with warnings
......@@ -161,8 +161,8 @@ index = ''
index += '\n<div class="index-box-container">\n'
whiteList = ''
localIndexArr = [[]] * len(sections)
orderArr = [[]] * len(sections)
localIndexArr = {k: [] for k in range(len(sections))}
orderArr = {k: [] for k in range(len(sections))}
for folder in cardDirs:
# FolderFlag gets set to true at the first iteration
......@@ -182,9 +182,6 @@ for folder in cardDirs:
indexS = sections.index(d)
maxOrder = 0
# reset the ordering array per section
orderArr[indexS] = []
if len(localIndexArr[indexS]) == 0:
localIndexArr[indexS] = ["\n"]
......@@ -220,6 +217,9 @@ for folder in cardDirs:
# define the header for each card
header = "---\n"
#print("orderArr --- ")
#print(orderArr)
if len(order) > 0:
header += "order: " + str(order) + "\n"
# append the order of the card
......@@ -233,12 +233,26 @@ for folder in cardDirs:
# after determining the max order, set the folder flag to False to avoid another entry into the same block of code
folderFlag = False
tmp = orderArr[indexS]
tmp = orderArr[indexS].copy()
tmp.append(maxOrder + int(order))
#print("tmp --- ")
#print(tmp)
#print("")
#print("indexS")
#print(indexS)
#print("orderArr --- ")
#print(orderArr)
#print("orderArr[indexS] --- ")
#print(orderArr[indexS])
orderArr[indexS] = tmp
#print("orderArr --- ")
#print(orderArr)
else:
orderArr[indexS] = []
header += "layout: page\n"
header += "permalink: " + permalink + "\n"
header += "shortcut: " + root_handbook(shortcut) + "\n"
......@@ -294,18 +308,55 @@ for folder in cardDirs:
# output
print(" + New header added.")
print("-----------------------")
# join all subcategories to the index
# if all subcategories have a predefined order
if len(orderArr[indexS]) <= len(localIndexArr[indexS]) and len(orderArr[indexS]) > 0:
X = localIndexArr[indexS][1:]
Y = orderArr[indexS]
localIndexArr[indexS] = [x for _, x in sorted(zip(Y, X))]
# natural sorting otherwise
else:
localIndexArr[indexS] = natsorted(localIndexArr[indexS])
#print("")
#debugging
#print("--- debugging ---")
#print(indexS)
#print("---")
#print(localIndexArr[indexS])
#print("---")
#print(orderArr)
#print("")
# ordering of cards
#print("-- sorting --")
for d in sections:
#print("section: " + d)
indexS = sections.index(d)
#print(indexS)
#print("")
#print("-- order --")
#print(orderArr[indexS])
#print("-- before ordering --")
#print(localIndexArr[indexS])
#print("")
#print(len(orderArr[indexS]))
#print(len(localIndexArr[indexS]))
# join all subcategories to the index
# if all subcategories have a predefined order
if len(orderArr[indexS]) == len(localIndexArr[indexS])-1 and len(orderArr[indexS]) > 0:
print("")
X = localIndexArr[indexS][1:]
Y = orderArr[indexS]
#print("-- X --")
#print(X)
#print("-- Y --")
#print(Y)
localIndexArr[indexS] = [x for _, x in sorted(zip(Y, X))]
# natural sorting otherwise
else:
localIndexArr[indexS] = natsorted(localIndexArr[indexS])
#print("-- after ordering --")
#print(localIndexArr[indexS])
#print("")
print(localIndexArr)
#print(sections)
# determine the index
k = 0
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment