#! /usr/bin/env python3
import os
import json
planeInfoPath = 'PlaneInfo'
filePrefix = 'Case'
casePrefix = 'ModelCase'
files = os.listdir(planeInfoPath)
planeInfoJSON = {}
# print (planeInfoPath)
for file in files:  
  filePath = os.path.join(planeInfoPath, file)
  fileLower = file.lower()

  if os.path.isfile(filePath):
    if fileLower.startswith(casePrefix.lower()):
      # Example: ModelCase1.png
      name, fileType = file.split('.')
      caseNum = name[len(casePrefix):]      
      if caseNum not in planeInfoJSON:
        planeInfoJSON[caseNum] = {}
      if casePrefix not in planeInfoJSON[caseNum]:
        planeInfoJSON[caseNum][casePrefix] = {}
      planeInfoJSON[caseNum][casePrefix]['planeInfoPath'] = filePath

    if fileLower.startswith(filePrefix.lower()):
      # Example: Case2.84.PNG
      caseName, modelNum, fileType, fileParts = (file.split('.') + [None])[0:4]

      # fileParts[0] = "Case" + caseNum
      # fileParts[1] = model Number
      # fileParts[2].lower()   = png | vid
      # fileParts[3] = video extension

      caseNum = caseName[len(filePrefix):]
      # print("file:", caseNum, fileParts)    
      if caseNum not in planeInfoJSON:
        planeInfoJSON[caseNum] = {}

      if modelNum not in planeInfoJSON[caseNum]:
        planeInfoJSON[caseNum][modelNum] = {}
        planeInfoJSON[caseNum][modelNum]['videoPath'] = None
        planeInfoJSON[caseNum][modelNum]['planeInfoPath'] = None

      if fileType.lower() == 'vid':
        planeInfoJSON[caseNum][modelNum]['videoPath'] = filePath
      else:
        planeInfoJSON[caseNum][modelNum]['planeInfoPath'] = filePath
      #endif
    #endif
  #endif  
#endfor 
pretty_object = json.dumps(planeInfoJSON, indent=4)
print('var planeInfo =',pretty_object, ';') 
  
  
