create_exercise.html 4.64 KB
{% load widget_tweaks i18n static %}
<!--MODAL CREATE EXERCISE-->
<div class="modal fade" id="createExercisesModal" tabindex="-1" role="dialog" aria-labelledby="createExercise">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
        <h4 class="modal-title" id="createExercise">{% trans 'Create a New Material' %}</h4>
      </div>
      <div class="modal-body">
        <!-- Card -->
        <form class="form-horizontal" method="post" id="form-exercise" enctype="multipart/form-data">
          {% csrf_token %}
          {% if messages %}
          {% for message in messages %}
          <div class="alert alert-{{ message.tags }} alert-dismissible" role="alert">
            <button type="button" class="close" data-dismiss="alert" aria-label="Close">
              <span aria-hidden="true">&times;</span>
            </button>
            <p>{{ message }}</p>
          </div>
          {% endfor %}
          {% endif %}
          <fieldset>
            {% for field in form %}
            <div class="form-group is-empy{% if form.has_error %} has-error {% endif %} is-fileinput">
              <div class="col-md-12">
                {% if field.field.required %}
                <label for="{{ field.auto_id }}" class="control-label">{{ field.label }}<span>*</span></label>
                {% else %}
                <label for="{{ field.auto_id }}" class=" control-label">{{ field.label }}</label>
                {% endif %}
                {% if field.auto_id == 'id_file' %}
                {% render_field field class='form-control input-sm' %}
                <div class="input-group">
                  <input type="text" readonly="" class="form-control" placeholder="{% trans 'Choose your file...' %}">
                  <span class="input-group-btn input-group-sm">
                    <button type="button" class="btn btn-fab btn-fab-mini">
                      <i class="material-icons">attach_file</i>
                    </button>
                  </span>
                </div>
                {% else %}
                  {% render_field field class='form-control input-sm' %}
                  <span id="helpBlock" class="help-block">{{ field.help_text }}</span>
                {% endif %}
                </div>

              {% if field.errors %}
              <div class="alert alert-danger alert-dismissible clearfix" role="alert">
                <button type="button" class="close" data-dismiss="alert" aria-label="Close">
                  <span aria-hidden="true">&times;</span>
                </button>
                <ul>
                  {% for error in field.errors %}
                  <li>{{ error }}</li>
                  {% endfor %}
                </ul>
              </div>
              {% endif %}
            </div>
            {% endfor %}

            <div class="form-group">
              <div class="col-md-12 text-center">
                <p><b>{% trans 'The file size shouldnt exceed 10MB' %}</b></p>
              </div>
            </div>

            <div class="form-group">
              <div class="col-md-12">
               <button type="button" class="btn btn-default btn-raised" data-dismiss="modal">{% trans "Close" %}</button>
               <button class="btn btn-raised btn-primary" type="submit">{% trans 'Submit' %}</button>
             </div>
           </div>
         </fieldset>
       </form>
       <!-- .end Card -->
     </div>
   </div>
 </div>
</div>
<!-- EndModal -->
<script type="text/javascript">
  $("#form-exercise").submit(function(event) {
    $("#createExercisesModal").modal("hide");
    var data = new FormData($('#form-exercise').get(0));
    $.ajax({
      url: "{% url 'course:exercise:create_exercise' topic.slug %}",
      type: $("#form-exercise").attr('method'),
      data: data,
      cache: false,
      processData: false,
      contentType: false,
      success: function(data) {
        $('#createExercisesModal').modal('hide');
        $('#list-topic{{ topic.id }}-exercises').append(data);
        $('#list-topic{{ topic.id }}-exercises-edit').append(data);
        alertify.success('Exercise successfully created!')
        setTimeout(function () { location.reload(1); }, 1000);
      },
      error: function(data){
        $('#requisicoes_ajax').empty();
        $('#requisicoes_ajax').append(data.responseText);
        $('#createExercisesModal').modal('show');
        alertify.alert('Invalid exercise, insert a valid one!');
        $('div.modal-backdrop.fade.in').remove();

      }
    });
    event.preventDefault();
  });
</script>