~widelands-dev/widelands-website/trunk

« back to all changes in this revision

Viewing changes to wlmaps/models.py

  • Committer: kaputtnik
  • Date: 2019-07-21 08:18:21 UTC
  • mfrom: (542.2.8 move_maps_minimap)
  • Revision ID: kaputtnik-20190721081821-mjqitcya1qdozbqg
Cleanups for wlmaps: minimaps are stored in wlmaps/minimaps; deleting a maps deletes the corresponding files; Implemented the new value 'needs_version_after'

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
from django.contrib.auth.models import User
6
6
from django.template.defaultfilters import slugify
7
7
from django.urls import reverse
 
8
from django.db.models.signals import pre_delete
 
9
from django.conf import settings
 
10
 
8
11
import datetime
 
12
import os
9
13
try:
10
14
    from notification import models as notification
11
15
except ImportError:
35
39
    uploader = models.ForeignKey(User)
36
40
    nr_downloads = models.PositiveIntegerField(
37
41
        verbose_name='Download count', default=0)
38
 
 
 
42
    wl_version_after = models.PositiveIntegerField(
 
43
        verbose_name='WL version after',
 
44
        null=True,
 
45
        blank=True)
39
46
 
40
47
    class Meta:
41
48
        ordering = ('-pub_date',)
72
79
                              )
73
80
 
74
81
        return map
 
82
 
 
83
    def delete(self, *args, **kwargs):
 
84
        """Delete also corresponding map files."""
 
85
 
 
86
        # For some reason this throws no error if a file didn't exist
 
87
        self.minimap.delete()
 
88
        self.file.delete()
 
89
        super(Map, self).delete(*args, **kwargs)