. * or see http://www.gnu.org/ */ /** * \file htdocs/core/class/dolprintipp.class.php * \brief List jobs printed with driver printipp */ /** * Class to manage printIPP */ class dolprintIPP { var $host; var $port; var $userid; /* user login */ var $user; var $password; var $error; var $db; /** * Constructor * * @param DoliDB $db database * @param string $host host of Cups * @param string $port port * @param string $userid userid * @param string $user user * @param string $password password */ function __construct($db,$host,$port,$userid,$user,$password) { $this->db=$db; $this->host=$host; $this->port=$port; $this->userid=$userid; $this->user=$user; $this->password=$password; } /** * List jobs print * * @param string $module module * * @return void */ function list_jobs($module) { global $conf, $db, $bc, $langs; 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); if (! empty($this->user)) $ipp->setAuthentication($this->user,$this->password); // select printer uri for module order, propal,... $sql = 'SELECT rowid,printer_uri,printer_name FROM '.MAIN_DB_PREFIX.'printer_ipp WHERE module="'.$module.'"'; $result = $this->db->query($sql); if ($result) { $obj = $this->db->fetch_object($result); if ($obj) { $ipp->setPrinterURI($obj->printer_uri); } else { // All printers $ipp->setPrinterURI("ipp://localhost:631/printers/"); } } // Getting Jobs try { $ipp->getJobs(false,0,'completed',false); // May return errors if setup not correct } catch(Exception $e) { setEventMessage('[printipp] '.$langs->trans('CoreErrorMessage'), 'errors'); dol_syslog($e->getMessage(), LOG_ERR); } print ''; print ''; print ""; print ""; print ""; print ""; print ""; print ""; print "\n"; $jobs = $ipp->jobs_attributes; $var = true; //print '
'.print_r($jobs,true).'
'; if (is_array($jobs)) { foreach ($jobs as $value) { print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ''; } } print "
IdOwnerPrinterFileStatusCancel
'.$value->job_id->_value0.''.$value->job_originating_user_name->_value0.''.$value->printer_uri->_value0.''.$value->job_name->_value0.''.$value->job_state->_value0.''.$value->job_uri->_value0.'
"; } }