qrurls/admin.py
changeset 32 82eae853e240
parent 30 d0f56303d8de
child 38 ed2fd40bb3f4
equal deleted inserted replaced
31:4f37d3b31dad 32:82eae853e240
    11         urlfeed = kwargs.get('instance')
    11         urlfeed = kwargs.get('instance')
    12 
    12 
    13         publishing_date = None
    13         publishing_date = None
    14         publishing_time = datetime.time()
    14         publishing_time = datetime.time()
    15         
    15         
    16         if urlfeed :
    16         if urlfeed and isinstance(urlfeed, URL) :
    17             publishing_date = urlfeed.last_item().published.date()
    17             publishing_date = urlfeed.last_item().published.date()
    18             publishing_time = urlfeed.publishing_schedule
    18             publishing_time = urlfeed.publishing_schedule
    19         
    19         
    20         def publishing_schedule (count) :
    20         def publishing_schedule (count) :
    21             if not publishing_date :
    21             if not publishing_date :
    27                 start_date = publishing_date
    27                 start_date = publishing_date
    28                 offset = 1
    28                 offset = 1
    29 
    29 
    30             for days in xrange(offset, count + offset) :
    30             for days in xrange(offset, count + offset) :
    31                 yield datetime.datetime.combine(
    31                 yield datetime.datetime.combine(
    32                         publishing_date + datetime.timedelta(days=days),
    32                         start_date + datetime.timedelta(days=days),
    33                         publishing_time
    33                         publishing_time
    34                 )
    34                 )
    35 
    35 
    36         kwargs.update(initial=[
    36         kwargs.update(initial=[
    37                 dict(published=publish) for publish in publishing_schedule(count=5)
    37                 dict(published=publish) for publish in publishing_schedule(count=5)
    90     fieldsets = (
    90     fieldsets = (
    91         ("Publishing", {
    91         ("Publishing", {
    92             'fields': ('shorturl', 'published', ),
    92             'fields': ('shorturl', 'published', ),
    93         }),
    93         }),
    94         ("Target", {
    94         ("Target", {
    95             'fields': ('url', ),
    95             'fields': ('url', 'image'),
    96         }),
    96         }),
    97     )
    97     )
       
    98     
    98 
    99 
    99 class URLImageAdmin (admin.ModelAdmin) :
   100 class URLImageAdmin (admin.ModelAdmin) :
   100     # hide the "uploaded" field
   101     # hide the "uploaded" field
   101     #fields = ( )
   102     #fields = ( )
   102     readonly_fields = (
   103     readonly_fields = (
   103         'uploaded',
   104         'uploaded',
   104         'image',
   105         'image',
   105     )
   106     )
       
   107     
       
   108     inlines = (URLItemInline, )
   106 
   109 
   107 admin.site.register(URL, URLAdmin)
   110 admin.site.register(URL, URLAdmin)
   108 admin.site.register(URLItem, URLItemAdmin)
   111 admin.site.register(URLItem, URLItemAdmin)
   109 admin.site.register(URLImage)
   112 admin.site.register(URLImage, URLImageAdmin)