code: def _prepare_job(request, candidates):
      
      temp_dir = tempfile.mkdtemp()
      inifiles = []
      arch = request.FILES.get('archive')
      if arch is None:
          # move each file to a new temp dir, using the upload file names,
          # not the temporary ones
          for each_file in request.FILES.values():
              new_path = os.path.join(temp_dir, each_file.name)
              shutil.move(each_file.temporary_file_path(), new_path)
              if each_file.name in candidates:
                  inifiles.append(new_path)
          return inifiles
      # else extract the files from the archive into temp_dir
      return readinput.extract_from_zip(arch, candidates)
docs: Creates a temporary directory, move uploaded files there and
      select the job file by looking at the candidate names.
  
      :returns: full path of the job_file