§
   ƒhŽFÖxðlã                   ó~   — d Z ddlZddlZddlZddlZddlmZ ddlmZ ddl	m
Z
 ddl	mZ  G d„ de¦  «        Zdd
„ZdS )uœ   
Dialog "PokraÄ�ovat ve sledovÃ¡nÃ­" - Fullscreen dialog pro naposledy pÅ™ehranÃ© poloÅ¾ky.
DÄ›dÃ­ z AIChatRecommendationDialog a sdÃ­lÃ­ jeho XML grafiku.
é    N)Ú
quote_plus)ÚAIChatRecommendationDialog)Ú	user_data©Úutilsc                   ób   ‡ — e Zd ZdZˆ fd„Zd„ Zˆ fd„Zd„ Zd„ Zd„ Z	ˆ fd„Z
d	„ Zd
„ Zdd„Zˆ xZS )ÚContinueWatchingDialogu  
    Dialog pro naposledy pÅ™ehranÃ© poloÅ¾ky.
    DÄ›dÃ­ vÅ¡echny funkce z AI Chat dialogu, ale pÅ™etÄ›Å¾uje:
    - onInit() - naÄ�Ã­tÃ¡ z historie mÃ­sto AI inference
    - _populate_preview_actions() - upravenÃ© akÄ�nÃ­ tlaÄ�Ã­tka (DalÅ¡Ã­ dÃ­l, Smazat)
    c                 ó|   •—  t          t          | ¦  «        j        ||g|¢R i |¤Ž g | _        d| _        d| _        d S )Nr   Úcontinue_watching)Úsuperr	   Ú__init__Ú_history_itemsÚ_current_item_indexÚ_nav_section_id)ÚselfÚxml_filenameÚ
addon_pathÚargsÚkwargsÚ	__class__s        €úk/Users/chudy/Library/Application Support/Kodi/addons/plugin.video.milionar/wcs/ai/DialogContinueWatching.pyr   zContinueWatchingDialog.__init__   sS   ø€ à4�Õ$ dÑ+Ô+Ô4°\À:Ð_ÐPTÐ_Ð_Ð_ÐX^Ð_Ð_Ð_Ø ˆÔØ#$ˆÔ à2ˆÔÐÐó    c                 óv  — |                       ¦   «          d| _        d| _        t          j        | j        ¦  «        | _        | j        s=t          j        ¦   «          	                    dd¦  «         |  
                    ¦   «          dS |                      dd¦  «         |                      dd¦  «         |                      d	d
¦  «         |                      ¦   «          |                      ¦   «          | j        r|                      d¬¦  «         dS |                      d¦  «         |                      dd¦  «         dS )uL   PÅ™etÃ­Å¾enÃ¡ inicializace - naÄ�te poloÅ¾ky z historie mÃ­sto AI inference.ÚmovieTu   PokraÄ�ovat ve sledovÃ¡nÃ­uo   Historie pÅ™ehrÃ¡vÃ¡nÃ­ je prÃ¡zdnÃ¡.

PÅ™ehrajte nÄ›jakÃ½ film nebo seriÃ¡l z menu a poloÅ¾ka se zde zobrazÃ­.NzWCS.AIChat.TitlezWCS.AIChat.Statusu
   PÅ™ipravenÚAIu<   Vyberte titul z historie nebo si nechte doporuÄ�it podobnÃ©.F)ÚanimatezWCS.AIChat.VisibleéÐ  g      à?)Ú_reset_stateÚ
media_typeÚ_is_showing_historyr   Úload_recently_playedÚaddonr   ÚxbmcguiÚDialogÚokÚcloseÚsetPropertyÚappend_chat_messageÚ_setup_initial_buttonsÚ_populate_from_historyÚ_show_nav_on_initÚ_show_nav_sidebarÚclearPropertyÚ_delayed_focus)r   s    r   ÚonInitzContinueWatchingDialog.onInit$   sS  € ð 	×ÒÑÔÐØ!ˆŒØ#'ˆÔ õ (Ô<¸T¼ZÑHÔHˆÔàÔ"ð 	åŒNÑÔ×ÒØ,ð Dñô ð ð �JŠJ‰LŒLˆLØˆFð 	×ÒÐ+Ð-IÑJÔJÐJØ×ÒÐ,¨lÑ;Ô;Ð;ð 	× Ò  Ð'eÑfÔfÐfð 	×#Ò#Ñ%Ô%Ð%ð 	×#Ò#Ñ%Ô%Ð%ð Ô!ð 	+Ø×"Ò"¨5Ð"Ñ1Ô1Ð1Ð1Ð1ð ×ÒÐ3Ñ4Ô4Ð4Ø×Ò  cÑ*Ô*Ð*Ð*Ð*r   c                 ó’   •— |dk    r|                       d¦  «         dS t          t          | ¦  «                             |¦  «         dS )uM   PÅ™etÃ­Å¾eno - klik na poster zobrazÃ­ preview akce mÃ­sto akÄ�nÃ­ho dialogu.r   éÔ  N)Ú
setFocusIdr   r	   ÚonClick)r   Ú	controlIdr   s     €r   r3   zContinueWatchingDialog.onClickM   sO   ø€ à˜ÒÐð �OŠO˜DÑ!Ô!Ð!Ð!Ð!õ Õ(¨$Ñ/Ô/×7Ò7¸	ÑBÔBÐBÐBÐBr   c                 óL   — dddœdddœdddœg}|                       |¦  «         dS )	u%   NastavÃ­ poÄ�Ã¡teÄ�nÃ­ AI tlaÄ�Ã­tka.u!   DoporuÄ� mi na zÃ¡kladÄ› historieÚrecommend_from_history)ÚlabelÚvalueu   DoporuÄ� podobnÃ© filmyÚrecommend_similar_moviesu   DoporuÄ� podobnÃ© seriÃ¡lyÚrecommend_similar_seriesN)Úupdate_buttons)r   Úbuttonss     r   r)   z-ContinueWatchingDialog._setup_initial_buttonsW   sK   € ð :ÐD\Ð]Ð]Ø/Ð:TÐUÐUØ2Ð=WÐXÐXð
ˆð
 	×Ò˜GÑ$Ô$Ð$Ð$Ð$r   c           
      ó¬  — |                       d¦  «        }|                     ¦   «          | j        D �]s}|                     dd¦  «        }|                     dd¦  «        }|                     dd¦  «        }|                     dd¦  «        }|                     dd¦  «        }|d	k    r•|                     d
¦  «        }|                     d¦  «        }	|                     dd¦  «        }
|}|�P|	�N|› dt	          |¦  «        d›dt	          |	¦  «        d›�}|
r&|
                     d¦  «        s|
d|	› �k    r|d|
› �z  }n|r|› d|› d�n|}t          j        |¬¦  «        }|r|                     d|i¦  «         | 	                    d|rt          |¦  «        nd¦  «         | 	                    d|¦  «         | 	                    d|¦  «         | 	                    d|rt          |¦  «        nd¦  «         |d	k    r˜| 	                    d
t          |                     d
d¦  «        ¦  «        ¦  «         | 	                    dt          |                     dd¦  «        ¦  «        ¦  «         | 	                    d|                     dd¦  «        ¦  «         |                     |¦  «         �Œu|                     ¦   «         dk    r|                      ¦   «          dS dS )u*   NaplnÃ­ poster flow poloÅ¾kami z historie.r   ÚtitleÚ ÚyearÚposterr   r   Útmdb_idÚseriesÚseasonÚepisodeÚepisode_titleNz SÚ02dÚEÚSzEpizoda ú z (ú))r7   r   )Ú
getControlÚresetr   ÚgetÚintÚ
startswithr#   ÚListItemÚsetArtr'   ÚstrÚaddItemÚsizeÚ _update_preview_for_current_item)r   Úlist_controlÚitemr>   r@   rA   r   rB   rD   rE   rF   Údisplay_titleÚ	list_items                r   r*   z-ContinueWatchingDialog._populate_from_history`   s   € à—’ tÑ,Ô,ˆØ×ÒÑÔÐàÔ'ð &	,ñ &	,ˆDØ—H’H˜W bÑ)Ô)ˆEØ—8’8˜F BÑ'Ô'ˆDØ—X’X˜h¨Ñ+Ô+ˆFØŸš ,°Ñ8Ô8ˆJØ—h’h˜y¨"Ñ-Ô-ˆGð ˜XÒ%Ð%ØŸš (Ñ+Ô+�ØŸ(š( 9Ñ-Ô-�Ø $§¢¨¸"Ñ =Ô =�à %�ØÐ%¨'Ð*=Ø',Ð$TÐ$Tµ°F±´Ð$TÐ$TÐ$TÅ#ÀgÁ,Ä,Ð$TÐ$TÐ$T�MØ$ð =¨]×-EÒ-EÀcÑ-JÔ-Jð =È}Ð`tÐkrÐ`tÐ`tÒOtÐOtØ%Ð)<¨]Ð)<Ð)<Ñ<˜øà7;Ð F 5Ð 3Ð 3¨DÐ 3Ð 3Ð 3Ð 3À�åÔ(¨}Ð=Ñ=Ô=ˆIàð 5Ø× Ò  (¨FÐ!3Ñ4Ô4Ð4ð ×!Ò! )¸WÐ-L­S°©\¬\¨\È"ÑMÔMÐMØ×!Ò! ,°
Ñ;Ô;Ð;Ø×!Ò! '¨5Ñ1Ô1Ð1Ø×!Ò! &°tÐ*C­#¨d©)¬)¨)ÀÑDÔDÐDð ˜XÒ%Ð%Ø×%Ò% hµ°D·H²H¸XÀrÑ4JÔ4JÑ0KÔ0KÑLÔLÐLØ×%Ò% iµ°T·X²X¸iÈÑ5LÔ5LÑ1MÔ1MÑNÔNÐNØ×%Ò% o°t·x²xÀÐQSÑ7TÔ7TÑUÔUÐUà× Ò  Ñ+Ô+Ð+Ñ+ð ×ÒÑÔ Ò"Ð"Ø×1Ò1Ñ3Ô3Ð3Ð3Ð3ð #Ð"r   c                 ó:  — 	 |                       d¦  «        }|                     ¦   «          |                       d¦  «        }|                     ¦   «         }t          | dd¦  «        o|dk    o|t	          | j        ¦  «        k     }|r|dk    rd}	n|dv rd	}	nd
}	n|dk    rd}	n	|dv rd}	nd}	|                      |	¦  «        }
|
D ]Ÿ}|                     dt          |¦  «        ¦  «         |                     d|¦  «         |                     d|¦  «         |                     d|¦  «         |                     dt          |¦  «        ¦  «         | 	                    |¦  «         Œ dS # t          $ r-}t          j        d|› �t          j        ¦  «         Y d}~dS d}~ww xY w)uL   PÅ™etÃ­Å¾eno - upravenÃ© akÄ�nÃ­ tlaÄ�Ã­tka pro Continue Watching (Unified).r1   r   r    Fr   r   Ú
hist_movie©rC   ÚtvÚhist_seriesÚ
hist_otherÚai_movieÚ	ai_seriesÚai_colrB   r>   r@   r   Úhistory_indexz@[plugin.video.milionar] ContinueWatching preview actions error: N)rL   rM   ÚgetSelectedPositionÚgetattrÚlenr   Úbuild_action_itemsr'   rS   rT   Ú	ExceptionÚxbmcÚlogÚLOGERROR)r   r   rB   r>   r@   rW   Úposter_listÚcurrent_indexÚis_history_itemÚcontextÚitemsrX   Úes                r   Ú_populate_preview_actionsz0ContinueWatchingDialog._populate_preview_actions‘   s  € ð*	lØŸ?š?¨4Ñ0Ô0ˆLØ×ÒÑ Ô Ð ð Ÿ/š/¨$Ñ/Ô/ˆKØ'×;Ò;Ñ=Ô=ˆMõ & dÐ,AÀ5ÑIÔIð  NÈmÐ_`ÒN`ð  NÐerÕuxÐy}ô  zMñ  vNô  vNò  fNˆOð ð 'Ø Ò(Ð(Ø*�G�GØÐ#3Ð3Ð3Ø+�G�Gà*�G�Gð  Ò(Ð(Ø(�G�GØÐ#3Ð3Ð3Ø)�G�Gà&�Gð ×+Ò+¨GÑ4Ô4ˆEð ð +ð +�Ø× Ò  ­C°©L¬LÑ9Ô9Ð9Ø× Ò  ¨%Ñ0Ô0Ð0Ø× Ò  ¨Ñ.Ô.Ð.Ø× Ò  ¨zÑ:Ô:Ð:Ø× Ò  µ#°mÑ2DÔ2DÑEÔEÐEà×$Ò$ TÑ*Ô*Ð*Ð*ð+ð +øõ ð 	lð 	lð 	lÝŒHÐ[ÐXYÐ[Ð[Õ]aÔ]jÑkÔkÐkÐkÐkÐkÐkÐkÐkøøøøð	løøøs   ‚EE# Å#
FÅ-"FÆFc                 óv  •— 	 |                       d¦  «         |                      d¦  «        }|                     ¦   «         }|sdS |                     d¦  «        }|                     d¦  «        }|                     d¦  «        }|                     d¦  «        }|                     d¦  «        }|                     d	¦  «        }|d
k    r|                      |||¦  «         dS |dk    r|                      |¦  «         dS |dk    r|                      |¦  «         dS |dk    r|                      |¦  «         dS |dk    r|                      |||¦  «         dS t          t          | ¦  «                             ¦   «          dS # t          $ r-}	t          j        d|	› �t          j        ¦  «         Y d}	~	dS d}	~	ww xY w)uF   PÅ™etÃ­Å¾eno - zpracovÃ¡nÃ­ akcÃ­ specifickÃ½ch pro Continue Watching.zWCS.AIPreview.ShowActionsr1   NÚactionrB   r>   r@   r   rd   Únext_episodeÚplay_episodeÚremove_from_historyÚplayÚsimilarz7[plugin.video.milionar] ContinueWatching action error: )r-   rL   ÚgetSelectedItemÚgetPropertyÚ_handle_next_episodeÚ_handle_play_episodeÚ_handle_remove_from_historyÚ_handle_play_movieÚ_handle_similarr   r	   Ú_handle_preview_action_clickri   rj   rk   rl   )r   rW   rX   ru   rB   r>   r@   r   rd   rr   r   s             €r   r‚   z3ContinueWatchingDialog._handle_preview_action_click¿   sú  ø€ ð!	cà×ÒÐ:Ñ;Ô;Ð;àŸ?š?¨4Ñ0Ô0ˆLØ×/Ò/Ñ1Ô1ˆDØð Ø�à×%Ò% hÑ/Ô/ˆFØ×&Ò& yÑ1Ô1ˆGØ×$Ò$ WÑ-Ô-ˆEØ×#Ò# FÑ+Ô+ˆDØ×)Ò)¨,Ñ7Ô7ˆJØ ×,Ò,¨_Ñ=Ô=ˆMà˜Ò'Ð'Ø×)Ò)¨%°¸-ÑHÔHÐHÐHÐHØ˜>Ò)Ð)Ø×)Ò)¨-Ñ8Ô8Ð8Ð8Ð8ØÐ0Ò0Ð0Ø×0Ò0°Ñ?Ô?Ð?Ð?Ð?Ø˜6Ò!Ð!à×'Ò'¨Ñ6Ô6Ð6Ð6Ð6Ø˜9Ò$Ð$à×$Ò$ U¨D°*Ñ=Ô=Ð=Ð=Ð=õ Õ,¨dÑ3Ô3×PÒPÑRÔRÐRÐRÐRøåð 	cð 	cð 	cÝŒHÐRÈqÐRÐRÕTXÔTaÑbÔbÐbÐbÐbÐbÐbÐbÐbøøøøð	cøøøs=   ƒA F ÁBF Ã"F Ã?F ÄF Ä9F Å'F Æ
F8Æ"F3Æ3F8c                 ót  — 	 |                       ¦   «          | j        t          |¦  «                 }|||                     d¦  «        |                     d¦  «        dœ}ddlm} |                     || j        ¦  «         dS # t          $ r-}t          j
        d|› �t          j        ¦  «         Y d}~dS d}~ww xY w)u6   SpustÃ­ pÅ™ehrÃ¡vÃ¡nÃ­ dalÅ¡Ã­ epizody (Next Episode).rD   rE   )rB   Úseries_nameÚcurrent_seasonÚcurrent_episoder   r   z4[plugin.video.milionar] Handler next episode error: N)r&   r   rO   rN   Úwcsr   Úplay_next_episode_with_metadatar"   ri   rj   rk   rl   )r   r>   rB   rd   rX   Úparamsr   rr   s           r   r}   z+ContinueWatchingDialog._handle_next_episodeä   sä   € ð	`à�JŠJ‰LŒLˆLð Ô&¥s¨=Ñ'9Ô'9Ô:ˆDð #Ø$Ø"&§(¢(¨8Ñ"4Ô"4Ø#'§8¢8¨IÑ#6Ô#6ð	ð ˆFð "Ð!Ð!Ð!Ð!Ð!Ø×1Ò1°&¸$¼*ÑEÔEÐEÐEÐEøåð 	`ð 	`ð 	`ÝŒHÐOÈAÐOÐOÕQUÔQ^Ñ_Ô_Ð_Ð_Ð_Ð_Ð_Ð_Ð_øøøøð	`øøøs   ‚A<B  Â 
B7Â
"B2Â2B7c                 ó^  — 	 |dv rd}d|› d|› d�}nd}d|› d|› d�}|                       ¦   «          |                      d	¦  «         |                      d
¦  «         |                      |d|¬¦  «         dS # t          $ r-}t          j        d|› �t
          j        ¦  «         Y d}~dS d}~ww xY w)uC   SpustÃ­ AI doporuÄ�enÃ­ podobnÃ½ch filmÅ¯ nebo seriÃ¡lÅ¯ (Unified).r]   Úsimilar_seru	   SeriÃ¡l 'z' (uf   ) mÄ› nadchl. HledÃ¡m podobnÃ½ seriÃ¡l - mÅ¯Å¾e mÃ­t jinou atmosfÃ©ru, ale aÅ¥ mÄ› to vtÃ¡hne stejnÄ›.Úsimilar_movzFilm 'up   ) mÄ› zaujal. Chci zaÅ¾Ã­t nÄ›co podobnÃ©ho. NemusÃ­ to bÃ½t stejnÃ½ Å¾Ã¡nr, ale aÅ¥ to mÃ¡ podobnou atmosfÃ©ru.i   u   HledÃ¡m podobnÃ©...N©ÚdataÚ	user_textz.[plugin.video.milionar] Similar action error: )Ú_clear_preview_propertiesr2   Ú_start_button_loadingÚstart_ai_with_contextri   rj   rk   rl   )r   r>   r@   r   Úcontext_keyÚinspiration_textrr   s          r   r�   z&ContinueWatchingDialog._handle_similarü   s*  € ð	ZàÐ-Ð-Ð-Ø+�ð $f¨uð  $fð  $f¸ð  $fð  $fð  $fÐ Ð à+�ð $m¨Eð  $mð  $m°dð  $mð  $mð  $mÐ ð ×*Ò*Ñ,Ô,Ð,Ø�OŠO˜DÑ!Ô!Ð!ð ×&Ò&Ð'<Ñ=Ô=Ð=ð ×&Ò& {¸ÐIYÐ&ÑZÔZÐZÐZÐZøåð 	Zð 	Zð 	ZÝŒHÐIÀaÐIÐIÍ4Ì=ÑYÔYÐYÐYÐYÐYÐYÐYÐYøøøøð	Zøøøs   ‚A1A5 Á5
B,Á?"B'Â'B,Úmixedc                 ó@  — |dk    rd„ | j         D ¦   «         }d}d}n'|dk    rd„ | j         D ¦   «         }d}d}n| j         }d	}d
}|s+|                      d|dk    rdn	|dk    rdnd› d�¦  «         dS |                      d¦  «         |                      |||¬¦  «         dS )u8   SpustÃ­ AI doporuÄ�enÃ­ na zÃ¡kladÄ› historie (Unified).r   c                 óD   — g | ]}|                      d ¦  «        dk    ¯|‘ŒS )r   r   ©rN   ©Ú.0Úis     r   ú
<listcomp>zAContinueWatchingDialog._start_ai_from_history.<locals>.<listcomp>  s/   € ÐYÐYÐY˜a¸!¿%º%ÀÑ:MÔ:MÐQXÒ:XÐ:X˜Ð:XÐ:XÐ:Xr   r\   u8   DoporuÄ� mi filmy na zÃ¡kladÄ› mÃ© historie sledovÃ¡nÃ­.rC   c                 óD   — g | ]}|                      d ¦  «        dk    ¯|‘ŒS )r   rC   r˜   r™   s     r   rœ   zAContinueWatchingDialog._start_ai_from_history.<locals>.<listcomp>  s/   € ÐZÐZÐZ˜a¸!¿%º%ÀÑ:MÔ:MÐQYÒ:YÐ:Y˜Ð:YÐ:YÐ:Yr   r_   u;   DoporuÄ� mi seriÃ¡ly na zÃ¡kladÄ› mÃ© historie sledovÃ¡nÃ­.Ú
hist_mixeduC   DoporuÄ� mi filmy a seriÃ¡ly na zÃ¡kladÄ› mÃ© historie sledovÃ¡nÃ­.u   V historii nejsou Å¾Ã¡dnÃ© Úfilmyu   seriÃ¡lyu   poloÅ¾kyú.NzAnalyzuji historii...r�   )r   Úappend_system_messager‘   r’   )r   Úmedia_filterÚfilteredr“   Úuser_msgs        r   Ú_start_ai_from_historyz-ContinueWatchingDialog._start_ai_from_history  s#  € ð ˜7Ò"Ð"ØYÐY 4Ô#6ÐYÑYÔYˆHØ&ˆKØQˆHˆHØ˜XÒ%Ð%ØZÐZ 4Ô#6ÐZÑZÔZˆHØ'ˆKØTˆHˆHàÔ*ˆHØ&ˆKØ\ˆHàð 	Ø×&Ò&ð  (gÐP\Ð`gÒPgÐPgÀWÀWð  |Hð  LTò  |Tð  |TÐmwÐmwð  Zdð  (gð  (gð  (gñ  hô  hð  hØˆFð 	×"Ò"Ð#:Ñ;Ô;Ð;ð 	×"Ò" ;°XÈÐ"ÑRÔRÐRÐRÐRr   )r•   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r/   r3   r)   r*   rs   r‚   r}   r�   r¥   Ú__classcell__)r   s   @r   r	   r	      s  ø€ € € € € ðð ð3ð 3ð 3ð 3ð 3ð&+ð &+ð &+ðRCð Cð Cð Cð Cð%ð %ð %ð/4ð /4ð /4ðb,lð ,lð ,lð\#cð #cð #cð #cð #cðJ`ð `ð `ð0Zð Zð Zð2Sð Sð Sð Sð Sð Sð Sð Sr   r	   Fc                 ó>  — t          j        | ¦  «        }|sGt          j        ¦   «                              |                      d¦  «        dt          j        ¦  «         dS |                      d¦  «        }t          d|dd||¬¦  «        }|                     ¦   «          ~dS )	u+   ZobrazÃ­ dialog PokraÄ�ovat ve sledovÃ¡nÃ­.Únameu   Historie je prÃ¡zdnÃ¡NÚpathz!ai/DialogAIChatRecommendation.xmlÚDefaultÚ1080i)Úshow_nav_sidebarÚnav_position)	r   r!   r#   r$   ÚnotificationÚgetAddonInfoÚNOTIFICATION_INFOr	   ÚdoModal)r"   r°   r±   rq   r   Údialogs         r   Úshow_continue_watching_dialogr·   0  s±   € õ Ô*¨5Ñ1Ô1€EØð ÝŒÑÔ×%Ò%Ø×Ò˜vÑ&Ô&Ø#ÝÔ%ñ	
ô 	
ð 	
ð
 	ˆà×#Ò# FÑ+Ô+€Jõ $Ø+ØØØØ)Ø!ðñ ô €Fð ‡N‚NÑÔÐØˆˆr   )Fr   )r©   rj   r#   Ú	xbmcaddonÚ	threadingÚurllib.parser   Ú!wcs.ai.DialogAIChatRecommendationr   r‡   r   r   Ú	wcs_utilsr	   r·   © r   r   ú<module>r¾      sÝ   ððð ð
 €€€Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ø #Ð #Ð #Ð #Ð #Ð #à HÐ HÐ HÐ HÐ HÐ HØ Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "ð[Sð [Sð [Sð [Sð [SÐ7ñ [Sô [Sð [Sð|ð ð ð ð ð r   