o
    h                     @   sl   d dl mZ d dlmZ d dlmZ d dlmZmZ d dl	m
Z
mZ G dd dejZG dd	 d	ejZd
S )    )forms)reverse)	mark_safe)gettext_lazyngettext)LocalePagec                       s$   e Zd ZdZg Z fddZ  ZS ))CheckboxSelectMultipleWithDisabledOptionsz*simple_translation/admin/input_option.htmlc                    sL   t  j|i |}|d | jv rd|d d< |S d|d d< d|d d< |S )	NvalueTattrsdisabledzw-bulk#toggledata-actionitemdata-w-bulk-target)supercreate_optiondisabled_values)selfargskwargsoption	__class__ h/var/www/html/ndineBlogger/venv/lib/python3.10/site-packages/wagtail/contrib/simple_translation/forms.pyr      s   z7CheckboxSelectMultipleWithDisabledOptions.create_option)__name__
__module____qualname__option_template_namer   r   __classcell__r   r   r   r   r	   	   s    r	   c                       sj   e Zd ZejeddejdddddZejede	j
 ed	Zejded
dZ fddZ  ZS )SubmitTranslationFormz
Select allFzw-bulk#toggleAllall)r   r   )r   )labelrequiredwidgetLocales)r"   querysetr$   z All child pages will be created.)r#   	help_textc                    s  t  j|i | d}d| _t|tr-|  }|dkr-d}tdd|d|i | jd _	|r7t
 | jd _tjj|jddjd	dd
d}|| jd _t|dk }t|tr| }| rktj jddd
}	n| jddjd	dd
}	tjj|	djddd
}
|
| jd j_|
rtd|jgd}tddt|
}|d7 }|d| d7 }|tddt|
7 }|d7 }t|| jd _t|dkpt|t|
 dk}t|t|
krd| _|rt
 | jd _d S d S )NTr   Fz+Include subtree (%(descendant_count)s page)z,Include subtree (%(descendant_count)s pages)descendant_countinclude_subtree)	inclusive	locale_id)flat)id__inlocales   idz*simple_translation:submit_page_translation)r   z=A locale is disabled because a parent page is not translated.zGSome locales are disabled because some parent pages are not translated.z<br>z	<a href="z">zTranslate the parent page.zTranslate the parent pages.z</a>   
select_all)r   __init__show_submit
isinstancer   get_descendantscountr   fieldsr"   r   HiddenInputr$   r   objectsexcludeget_translationsvalues_listr&   len
get_parentis_rootr!   r   r   r0   r   r'   )r   instancer   r   hide_include_subtreer(   untranslated_localeshide_select_allparentallowed_locale_idsdisabled_localesurlr'   r   r   r   r3   /   s   

zSubmitTranslationForm.__init__)r   r   r   r   BooleanFieldr   CheckboxInputr2   ModelMultipleChoiceFieldr   r:   noner	   r.   r)   r3   r   r   r   r   r   r       s&    r    N)djangor   django.urlsr   django.utils.safestringr   django.utils.translationr   r   wagtail.modelsr   r   CheckboxSelectMultipler	   Formr    r   r   r   r   <module>   s    