
    Bh
                     l    d dl mZ d dlmZmZmZmZ d dlmZm	Z	 d dl
mZ d dlmZ d Z G d de      Zy	)
    )Sitemap)OuterRefQQuerySetSubquery)PageContentPageUrl)get_current_site)get_public_languagesc              #   2   K   | D ]  }|E d{     y7 w)z3
    Backport of itertools.chain.from_iterable
    N )	iterablesits     H/home/dcms/DCMS/lib/python3.12/site-packages/cms/sitemaps/cms_sitemap.pyfrom_iterabler   	   s!       s   c                   B    e Zd ZU dZeed<   dZeed<   defdZ	d Z
d Zy	)

CMSSitemapmonthly
changefreqg      ?priorityreturnc           
         t               }t        |j                        }t        j                  j                  |      j                  |dd      j                  d      j                  d      j                  t        t        j                  j                  t        d      t        d            j                  t        d	      t        d 	      z        j                  d
      d d             j                  d      S )N)site_idF)language__inpath__isnullpage__login_required
page__pathpagelanguage)r   r    )redirectchanged_date   content_changed_date)content_changed_date__isnull)r
   r   pkr	   objectsget_for_sitefilterorder_byselect_relatedannotater   r   r   r   values_list)selfsite	languagess      r   itemszCMSSitemap.items   s    8  !(9	 OO((.VUZV[Xl#^F#X%-''..HV4DxXbOc.dVArNQ-==> [0!5&   VV7	
    c                     |j                   S Nr$   r/   page_urls     r   lastmodzCMSSitemap.lastmodC   s    ,,,r3   c                 8    |j                  |j                        S r5   )get_absolute_urlr   r6   s     r   locationzCMSSitemap.locationF   s    (():):;;r3   N)__name__
__module____qualname__r   str__annotations__r   floatr   r2   r8   r;   r   r3   r   r   r      s-    JHe,
x ,
\-<r3   r   N)django.contrib.sitemapsr   django.db.modelsr   r   r   r   
cms.modelsr   r	   	cms.utilsr
   cms.utils.i18nr   r   r   r   r3   r   <module>rG      s(    + < < + & /6< 6<r3   