docs: def stageContent(self, configFiles, dateTimeFormat=None):
          """Parses a JSON configuration file to stage content.
  
          Args:
              configFiles (list): A list of JSON files on disk containing
                  configuration data for staging content.
              dateTimeFormat (str): A valid date formatting directive, as understood
                  by :py:meth:`datetime.datetime.strftime`. Defaults to ``None``, i.e.,
                  ``'%Y-%m-%d %H:%M'``.
  
          """
          results = None
          groups = None
          items = None
          group = None
          content = None
          contentInfo = None
          startTime = None
          orgTools = None
  
  
          if dateTimeFormat is None:
              dateTimeFormat = '%Y-%m-%d %H:%M'
  
  
          scriptStartTime = datetime.datetime.now()
          try:
  
              print ("********************Stage Content Started********************")
  
              print ("Script started at %s" % scriptStartTime.strftime(dateTimeFormat))
  
              if self.securityhandler.valid == False:
                  print ("Login required")
              else:
                  orgTools = orgtools.orgtools(securityinfo=self)
  
                  if orgTools is None:
                      print ("Error creating org tools")
                  else:
  
                      for configFile in configFiles:
  
                          config = common.init_config_json(config_file=configFile)
                          if config is not None:
                              if 'ContentItems' in config:
                                  startTime = datetime.datetime.now()
                                  print ("Processing config %s, starting at: %s" % (configFile,startTime.strftime(dateTimeFormat)))
                                  contentInfo = config['ContentItems']
                                  for cont in contentInfo:
                                      content = cont['Content']
                                      group = cont['ShareToGroup']
  
                                      print ("Sharing content to: %s" % group)
                                      if os.path.isfile(content):
                                          with open(content, 'rb') as csvfile:
                                              items = []
                                              groups = []
                                              for row in csv.DictReader(csvfile,dialect='excel'):
                                                  if cont['Type'] == "Group":
                                                      groups.append(row['id'])
                                                  elif cont['Type'] == "Items":
                                                      items.append(row['id'])
                                              results = orgTools.shareItemsToGroup(shareToGroupName=group,items=items,groups=groups)
  
                                  print ("Config %s completed, time to complete: %s" % (configFile, str(datetime.datetime.now() - startTime)))
                              else:
                                  print ("Config file missing ContentItems section")
                          else:
                              print ("Config %s not found" % configFile)
  
  
          except(TypeError,ValueError,AttributeError) as e:
              print (e)
          except (common.ArcRestHelperError) as e:
              print ("error in function: %s" % e[0]['function'])
              print ("error on line: %s" % e[0]['line'])
              print ("error in file name: %s" % e[0]['filename'])
              print ("with error message: %s" % e[0]['synerror'])
              if 'arcpyError' in e[0]:
                  print ("with arcpy message: %s" % e[0]['arcpyError'])
  
          except Exception as e:
              if (reportToolsInstalled):
                  if isinstance(e,(ReportTools.ReportToolsError,DataPrep.DataPrepError)):
                      print ("error in function: %s" % e[0]['function'])
                      print ("error on line: %s" % e[0]['line'])
                      print ("error in file name: %s" % e[0]['filename'])
                      print ("with error message: %s" % e[0]['synerror'])
                      if 'arcpyError' in e[0]:
                          print ("with arcpy message: %s" % e[0]['arcpyError'])
                  else:
                      line, filename, synerror = trace()
                      print ("error on line: %s" % line)
                      print ("error in file name: %s" % filename)
                      print ("with error message: %s" % synerror)
              else:
                  line, filename, synerror = trace()
                  print ("error on line: %s" % line)
                  print ("error in file name: %s" % filename)
                  print ("with error message: %s" % synerror)
          finally:
              print ("Script complete, time to complete: %s" % str(datetime.datetime.now() - scriptStartTime))
              print ("###############Stage Content Completed#################")
              print ("")
              #if orgTools is not None:
                  #orgTools.dispose()
  
              results = None
              groups = None
              items = None
              group = None
              content = None
              contentInfo = None
              startTime = None
              orgTools = None
  
              del results
              del groups
              del items
              del group
              del content
              del contentInfo
              del startTime
              del orgTools
  
              gc.collect()