Trying to fix media types

This commit is contained in:
Tris 2020-09-10 21:05:42 +10:00
parent 665694e305
commit 80983fb6b4
5 changed files with 23 additions and 9 deletions

View File

@ -45,6 +45,7 @@ class Project(models.Model):
active = models.BooleanField(default=True) active = models.BooleanField(default=True)
deadline =models.DateField(null=True, blank=True) deadline =models.DateField(null=True, blank=True)
@property
def submissions(self): def submissions(self):
return self.all_submissions.filter(complete=True).order_by('-pk') return self.all_submissions.filter(complete=True).order_by('-pk')

View File

@ -220,4 +220,12 @@ TABLE.horizontal TH {
.dz-clickable { .dz-clickable {
text-align: center; text-align: center;
}
.scrollable {
max-height: 200px;
overflow: auto;
background-color: #EEE;
border: 1px solid var(--border-color);
border-radius: 10px;
padding: 5px;
} }

View File

@ -4,8 +4,9 @@
<div class="narrow"> <div class="narrow">
<h3 class="text-center">Due in {{ project.deadline|timeuntil }}!</h3> <h3 class="text-center">Due in {{ project.deadline|timeuntil }}!</h3>
<p>There have been {{ project.submissions.count }} submissions so far...</p> <p>There have been {{ project.submissions.count }} submissions so far...</p>
<div class="scrollable">
<table> <table>
<tbody> <tbody">
{% for submission in project.submissions %} {% for submission in project.submissions %}
<tr> <tr>
<td>{{ submission.date|timesince }} ago</td> <td>{{ submission.date|timesince }} ago</td>
@ -22,4 +23,5 @@
</tbody> </tbody>
</table> </table>
</div> </div>
</div>
{% endblock %} {% endblock %}

View File

@ -12,7 +12,7 @@
<input type="hidden" name="{{ field }}" value="{{ value }}" /> <input type="hidden" name="{{ field }}" value="{{ value }}" />
{% endfor %} {% endfor %}
<input name="file" type="file" accept="{{ media_type }}/*" id="fallback-file"/> <input name="file" type="file" accept="{{ accept_files }}/*" id="fallback-file"/>
<input type="submit" value="Send" id="fallback-upload"/> <input type="submit" value="Send" id="fallback-upload"/>
</div> </div>
</form> </form>
@ -47,11 +47,14 @@ $('#fallback-file').on('change', function() {
$('#fallback-upload').attr('disabled', false); $('#fallback-upload').attr('disabled', false);
}); });
let fallback = {{ request.GET.fallback|yesno:"true,false,false" }};
Dropzone.options.itemUpload = { Dropzone.options.itemUpload = {
params: dzData['fields'], params: dzData['fields'],
forceFallback: {{ request.GET.fallback|yesno:"true,false,false" }}, forceFallback: fallback,
autoProcessQueue: false, autoProcessQueue: false,
createImageThumbnails: false, createImageThumbnails: false,
//acceptedFiles: acceptFiles,
maxFiles: 1, maxFiles: 1,
addRemoveLinks: true, addRemoveLinks: true,
maxFilesize: 500, maxFilesize: 500,

View File

@ -46,10 +46,10 @@ class ProjectMixin(EnsembleMixin):
return context return context
class S3UploadMixin(ProjectMixin): class S3UploadMixin(ProjectMixin):
media_type = '' accept_files = ''
def get_media_type(self): def get_accept_files(self):
return self.media_type return self.accept_files
def get_cancel_url(self): def get_cancel_url(self):
return self.cancel_url return self.cancel_url
@ -68,7 +68,7 @@ class S3UploadMixin(ProjectMixin):
context['ajax_upload'] = project.presigned_post(key_template) context['ajax_upload'] = project.presigned_post(key_template)
context['success_url'] = success_url context['success_url'] = success_url
context['cancel_url'] = self.get_cancel_url() context['cancel_url'] = self.get_cancel_url()
context['media_type'] = self.media_type context['accept_files'] = self.accept_files
return context return context
class S3CompleteMixin(View): class S3CompleteMixin(View):
@ -181,7 +181,7 @@ class SubmissionDetailView(ProjectMixin, S3CompleteMixin, DetailView):
class SubmissionUploadView(S3UploadMixin, DetailView): class SubmissionUploadView(S3UploadMixin, DetailView):
template_name = 'interface/s3_upload.html' template_name = 'interface/s3_upload.html'
model = models.Submission model = models.Submission
media_type = "video" accept_files = "video/*"
def get_success_url(self): def get_success_url(self):
return resolve_url('submission_detail', **self.kwargs) return resolve_url('submission_detail', **self.kwargs)
@ -217,7 +217,7 @@ class ResourceUploadView(S3UploadMixin, DetailView):
model = models.Resource model = models.Resource
template_name = 'interface/s3_upload.html' template_name = 'interface/s3_upload.html'
def get_media_type(self): def get_accept_files(self):
return self.object.accept() return self.object.accept()
def get_success_url(self): def get_success_url(self):