From 33e6654454f20d118e96918873a8a49e8be4a684 Mon Sep 17 00:00:00 2001 From: frederic34 Date: Tue, 12 Mar 2013 01:06:49 +0100 Subject: [PATCH] print ipp --- htdocs/core/class/dolprintipp.class.php | 20 +++++++++++++++ htdocs/printipp/admin/printipp.php | 33 +++++++++++++++++++++++-- 2 files changed, 51 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/dolprintipp.class.php b/htdocs/core/class/dolprintipp.class.php index e4507de19b8..78a2af281f2 100644 --- a/htdocs/core/class/dolprintipp.class.php +++ b/htdocs/core/class/dolprintipp.class.php @@ -104,6 +104,7 @@ class dolprintIPP $ipp->setPrinterURI($conf->global->PRINTIPP_URI_DEFAULT); } } + // Set number of copy $ipp->setCopies($obj->copy); $ipp->setData(DOL_DATA_ROOT.'/'.$module.'/'.$file); $ipp->printJob(); @@ -166,5 +167,24 @@ class dolprintIPP } print ""; } + + /** + * Get printer detail + * + */ + function get_printer_detail($uri) + { + global $conf,$db; + + include_once DOL_DOCUMENT_ROOT.'/includes/printipp/CupsPrintIPP.php'; + $ipp = new CupsPrintIPP(); + $ipp->setLog(DOL_DATA_ROOT.'/printipp.log','file',3); // logging very verbose + $ipp->setHost($this->host); + $ipp->setPort($this->port); + $ipp->setUserName($this->userid); + $ipp->setPrinterURI($uri); + $ipp->getPrinterAttributes(); + return $ipp->printer_attributes; + } } ?> diff --git a/htdocs/printipp/admin/printipp.php b/htdocs/printipp/admin/printipp.php index 34163f125ec..d82196fd3b4 100644 --- a/htdocs/printipp/admin/printipp.php +++ b/htdocs/printipp/admin/printipp.php @@ -145,10 +145,39 @@ if ($mode=='test'&& $user->admin) print ''; $printer = new dolPrintIPP($db,$conf->global->PRINTIPP_HOST,$conf->global->PRINTIPP_PORT,$user->login,$conf->global->PRINTIPP_USER,$conf->global->PRINTIPP_PASSWORD); $var=true; + print '
'; print ''; - print ''; - print print_r($printer->getlist_available_printers(),true); + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + //print ''; + print ''; + print ''; print "\n"; + $list = $printer->getlist_available_printers(); + $var = True; + foreach ($list as $value ) + { + $var=!$var; + $printer_det = $printer->get_printer_detail($value); + print ""; + print ''; + //print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + //print ''; + print ''; + print ''; + print "\n"; + } print '
'.$langs->trans("TestConnect").'UriNameStateState_reasonState_reason1BWColorDeviceMediaSupported
'.$value.'
'.print_r($printer_det,true).'
'.$printer_det->printer_name->_value0.''.$printer_det->printer_state->_value0.''.$printer_det->printer_state_reasons->_value0.''.$printer_det->printer_state_reasons->_value1.''.$printer_det->printer_type->_value2.''.$printer_det->printer_type->_value3.''.$printer_det->device_uri->_value0.''.$printer_det->media_default->_value0.''.$printer_det->media_type_supported->_value1.'
'; }