     jobs = @_jobs.where(name: jobName)
     # otherwise we must start searching the other folders
     if (recursive)
-      for folder in @_folders
-        job = folder.getJobByName(jobName)
-        jobs = jobs.concat(job)
+      for subFolder in @_folders
+        subJobs = subFolder.getJobByName(jobName)
+        jobs = jobs.concat(subJobs)
     jobs
 
   hasJobByName: (jobName, recursive=true) =>

    folderName = @_querystring.unescape(folderName).trim()
    folders = @_folders.where(name: folderName)
    if (recursive)
      for folder in @_folders
        folder = folder.getFolderByName(folderName)
        folders = folder.concat(folder)
    folders

  hasFolderByName: (folderName, recursive=true) =>

        folderPath = @msg.match[1].split("/")
        jobName = folderPath[folderPath.length-1]
        folderPath.splice(folderPath.length-1, 1)
        if (folderPath.length == 1)
          folders = []
          for server in @_serverManager.listServers()
            folders = folders.concat(server.getFolderByName(folderPath[0]))
          if (folders.length > 1)
            @send "There are multiple folders with the name #{folderPath[0]}.  Please use `jenkins list` and an ID instead."
          else if (folders.length == 1)
            jobs = folders[0].getJobByName(jobName)
            if (jobs.length > 1)
              @send "There are multiple jobs with the name #{jobName} in #{folderPath[0]}.  Please use `jenkins list` and an ID instead."
            else if (jobs.length == 1)
              return jobs[0]
            else 
              @send "There are no jobs with the name #{jobName} in #{folderPath[0]}."
          else
            @send "There are no folders with the name #{folderPath[0]}."
			
        else
          # this is for an absolute path to the folder
          folders = []
          for server in @_serverManager.listServers()
            curFolder = server.getFolder()
            for folderName in folderPath
              # this should either be of length 1 or length 0, as there cannot be two subfolders with the same name (in iterative mode)
              nextFolder = curFolder.getFolderByName(folderName, false)
              if (nextFolder.length == 1)
                curFolder = nextFolder[0]
              else
                curFolder = null
                break
            # check if we found a folder
            if (curFolder)
              folders.push(curFolder)
          # now make sure this path is valid for only one folder
          if (folders.length > 1)
            @send "There are multiple folders with the path #{folderPath.join('/')}.  Please use `jenkins list` and an ID instead."
          else if (folders.length == 1)
            jobs = folders[0].getJobByName(jobName)
            if (jobs.length > 1)
              @send "There are multiple jobs with the name #{jobName} in #{folderPath.join('/')}.  Please use `jenkins list` and an ID instead."
            else if (jobs.length == 1)
              return jobs[0]
            else 
              @send "There are no jobs with the name #{jobName} in #{folderPath.join('/')}."
          else
            @send "There are no folders with the path #{folderPath.join('/')}."
      else
        jobName = @msg.match[1].trim()

