code: def start(cls, ev):
          
          ev.preventDefault()
          ev.stopPropagation()
  
          ViewController.log_view.add("Beginning MARCGenerator request..")
  
          if not ViewController.validate():
              ViewController.urlbox_error.show(
                  "Vyplňte prosím zvýrazněné hodnoty."
              )
              ViewController.log_view.add("Aborting. Not all required data set.")
              return
  
          # make sure, that `url` was filled
          url = ViewController.url.strip()
          if not (url.startswith("http://") or url.startswith("https://")):
              ViewController.urlbox_error.show(
                  "`%s` není validní URL! Zkuste přidat http:// | https://" % url
              )
              return
  
          properties = ViewController.get_all_properties()
          properties["rules"] = RulesViewController.get_dict()
  
          # keep the url_id from hidden input
          if "url_id" in document and document["url_id"].value:
              properties["url_id"] = document["url_id"].value
  
          ViewController.log_view.add(
              "Sending following data: %s" % repr(properties)
          )
  
          make_request(
              url=join(settings.API_PATH, "to_output"),
              data={"data": json.dumps(properties)},
              on_complete=cls.on_complete
          )
docs: Read all data from Views and send them to the backend.