From f4a14b9216a01e08ba544c843e4f36a6c6dacfc9 Mon Sep 17 00:00:00 2001 From: laurentheirendt <laurent.heirendt@uni.lu> Date: Tue, 18 Jan 2022 08:12:55 +0100 Subject: [PATCH] WIP: generate index script --- .ci/generateIndex.py | 45 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/.ci/generateIndex.py b/.ci/generateIndex.py index ca411536..568096b6 100644 --- a/.ci/generateIndex.py +++ b/.ci/generateIndex.py @@ -148,7 +148,10 @@ index += '\n<div class="index-box-container">\n' whiteList = '' localIndexArr = [[]] * len(sections) +orderArr = [[]] * len(sections) for folder in cardDirs: + # FolderFlag gets set to true at the first iteration + folderFlag = True # check if folder exists if path.isdir(folder): @@ -163,12 +166,12 @@ for folder in cardDirs: # get the index of the section indexS = sections.index(d) + maxOrder = 0 #print(indexS) if len(localIndexArr[indexS]) == 0: localIndexArr[indexS] = ["\n"] - orderArr = [] # walk through the folders with all the cards for root, dirs, files in os.walk(folder+"/"+d): for file in files: @@ -200,9 +203,38 @@ for folder in cardDirs: # define the header for each card header = "---\n" + + + print(orderArr) + if len(order) > 0: header += "order: " + str(order) + "\n" - orderArr.append(int(order)) + # append the order of the card + # find the maximum of existing orders + + if folderFlag: + if len(orderArr[indexS]) > 0: + maxOrder = max(orderArr[indexS]) + else: + maxOrder = 0 + # 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] + print("tmp") + print(tmp) + tmp.append(maxOrder + int(order)) + orderArr[indexS] = tmp + print(tmp) + else: + orderArr[indexS] = [] + + print(orderArr) + print("maxOrder: " + str(maxOrder)) + print("folderFlag: " + str(folderFlag)) + print("indexS: " + str(indexS)) + + header += "layout: page\n" header += "permalink: " + permalink + "\n" header += "shortcut: " + root_handbook(shortcut) + "\n" @@ -259,10 +291,15 @@ for folder in cardDirs: print(" + New header added.") print("-----------------------") - if len(orderArr) > 0: + if len(orderArr[indexS]) > 0: + print("here") + print(localIndexArr[indexS]) + print(orderArr[indexS]) X = localIndexArr[indexS][1:] - Y = orderArr + Y = orderArr[indexS] localIndexArr[indexS] = [x for _, x in sorted(zip(Y, X))] + + print(localIndexArr[indexS]) else: # join all subcategories to the index localIndexArr[indexS] = natsorted(localIndexArr[indexS]) -- GitLab