CXM_dropzone.anubis 1.22 KB
  Make use of the DropzoneJS library (www.dropzonejs.com) to build highly customizable dropzones that provides drag’n’drop file uploads with image previews

  TODO:
    Complete dropzone options and features binding
    
  Author: Julien Verneuil (06/04/2016)

read tools/basis.anubis

read calexium_lib/web/CXM_making_a_web_site.anubis

public define HTML_Partial_Content
  dropzone
  (
    String dropzone_form_name,
    String dict_default_message,
    String dict_file_too_big,
    String param_name,
    String submit_action_name
  ) =
    with dropzone_form_id = generate_random_string(15),
    partial_content([], sequence([
      literal("
        <script type=\"text/javascript\">
          $(document).ready(function () {
            Dropzone.options." + dropzone_form_id + " = {
                dictDefaultMessage : \"" + dict_default_message + "\",
                dictFileTooBig : \"" + dict_file_too_big + "\",
                paramName : \"" + param_name + "\"
              };
            });
        </script>"),
	      partial(partial_content(
            [js(js_file("js/dropzone.js")), css(css_file("css/dropzone.css"))],
            form(dropzone_form_id, [class("dropzone")], submit_action_name, [], empty)
          ))])).