Esempio n. 1
0
 def save_them():
     if not list_cats:
         return
     listings = dict([
         (l.category, l)
         for l in Listing.objects.filter(placement=instance.pk)
     ])
     forloop_counter = 0  # used for counting delete checkboxes
     for c, pub in zip(list_cats, publish_from_fields):
         forloop_counter += 1
         delete_listing = self.data.get(
             self.get_part_id('%d-DELETE' % forloop_counter), 'off')
         if delete_listing == 'on':
             # skip following for-cycle body, so the listing will be deleted
             continue
         publish_from = self.get_publish_date(pub)
         if not c in listings:
             # create listing
             l = Listing(placement=instance,
                         category=c,
                         publish_from=publish_from)
             l.save()
         else:
             del listings[c]
             lst = Listing.objects.filter(placement=instance,
                                          category=c)
             if not lst:
                 continue
             l = lst[0]
             # if publish_from differs, modify Listing object
             if l.publish_from != publish_from:
                 l.publish_from = publish_from
                 l.save()
     for l in listings.values():
         l.delete()
Esempio n. 2
0
        def save_listings():
            listings = dict([(l.category, l) for l in Listing.objects.filter(placement=instance.pk)])

            for c in list_cats:
                if not c in listings:
                    # create listing
                    l = Listing(placement=instance, category=c, publish_from=instance.publish_from)
                    l.save()
                else:
                    del listings[c]
            for l in listings.values():
                l.delete()
Esempio n. 3
0
 def save_them():
     if not list_cats:
         return
     listings = dict([(l.category, l) for l in Listing.objects.filter(placement=instance.pk)])
     forloop_counter = 0  # used for counting delete checkboxes
     for c, pub in zip(list_cats, publish_from_fields):
         forloop_counter += 1
         delete_listing = self.data.get(self.get_part_id("%d-DELETE" % forloop_counter), "off")
         if delete_listing == "on":
             # skip following for-cycle body, so the listing will be deleted
             continue
         publish_from = self.get_publish_date(pub)
         if not c in listings:
             # create listing
             l = Listing(placement=instance, category=c, publish_from=publish_from)
             l.save()
         else:
             del listings[c]
             lst = Listing.objects.filter(placement=instance, category=c)
             if not lst:
                 continue
             l = lst[0]
             # if publish_from differs, modify Listing object
             if l.publish_from != publish_from:
                 l.publish_from = publish_from
                 l.save()
     for l in listings.values():
         l.delete()
Esempio n. 4
0
File: redis.py Progetto: Pheox/ella
 def _get_listing(self, publishable, score):
     Listing = get_model('core', 'listing')
     publish_from = from_timestamp(score)
     return Listing(publishable=publishable, category=publishable.category, publish_from=publish_from)
Esempio n. 5
0
 def _get_listing(self, publishable, score):
     Listing = get_model('core', 'listing')
     return Listing(publishable=publishable, category=publishable.category)