diff --git a/htdocs/core/modules/printing/printgcp.modules.php b/htdocs/core/modules/printing/printgcp.modules.php
index 069762dde23..599a6645222 100644
--- a/htdocs/core/modules/printing/printgcp.modules.php
+++ b/htdocs/core/modules/printing/printgcp.modules.php
@@ -369,7 +369,8 @@ class printing_printgcp extends PrintingDriver
*/
function list_jobs()
{
- global $conf, $db, $bc;
+ global $conf, $db, $langs, $bc;
+
$error = 0;
$html = '';
// Token storage
@@ -432,20 +433,31 @@ class printing_printgcp extends PrintingDriver
$var = True;
$jobs = $responsedata['jobs'];
//$html .= '
'.print_r($jobs['0'],true).'
';
- foreach ($jobs as $value )
+ if (is_array($jobs))
{
- $var = !$var;
- $html .= '';
- $html .= '| '.$value['id'].' | ';
- $html .= ''.$value['ownerId'].' | ';
- $html .= ''.$value['printerName'].' | ';
- $html .= ''.$value['title'].' | ';
- $html .= ''.$value['status'].' | ';
- $html .= ' | ';
- $html .= '
';
+ foreach ($jobs as $value)
+ {
+ $var = !$var;
+ $html .= '';
+ $html .= '| '.$value['id'].' | ';
+ $html .= ''.$value['ownerId'].' | ';
+ $html .= ''.$value['printerName'].' | ';
+ $html .= ''.$value['title'].' | ';
+ $html .= ''.$value['status'].' | ';
+ $html .= ' | ';
+ $html .= '
';
+ }
+ }
+ else
+ {
+ $html .= '';
+ $html .= '| '.$langs->trans("None").' | ';
+ $html .= '
';
}
$html .= '';
+
$this->resprint = $html;
+
return $error;
}
diff --git a/htdocs/langs/en_US/printing.lang b/htdocs/langs/en_US/printing.lang
index 2e05349cfc8..a4f9fe09e04 100644
--- a/htdocs/langs/en_US/printing.lang
+++ b/htdocs/langs/en_US/printing.lang
@@ -81,5 +81,6 @@ STATE_IPP_none=None
MEDIA_IPP_stationery=Stationery
MEDIA_IPP_thermal=Thermal
IPP_COLOR_print-black=BW Printer
+DirectPrintingJobsDesc=This page lists printing jobs found for available printers.
GoogleAuthNotConfigured=Google OAuth setup not done. Enable module OAuth and set a Google ID/Secret.
GoogleAuthConfigured=Google OAuth credentials found.
\ No newline at end of file
diff --git a/htdocs/printing/index.php b/htdocs/printing/index.php
index 1a1b038d47f..d263c60db8d 100644
--- a/htdocs/printing/index.php
+++ b/htdocs/printing/index.php
@@ -29,19 +29,25 @@ llxHeader("",$langs->trans("Printing"));
print load_fiche_titre($langs->trans("Printing"));
+print $langs->trans("DirectPrintingJobsDesc").'
';
+
// List Jobs from printing modules
$object = new PrintingDriver($db);
$result = $object->listDrivers($db, 10);
-foreach ($result as $driver) {
+foreach ($result as $driver)
+{
require_once DOL_DOCUMENT_ROOT.'/core/modules/printing/'.$driver.'.modules.php';
$classname = 'printing_'.$driver;
$langs->load($driver);
$printer = new $classname($db);
- if ($conf->global->{$printer->active}) {
+ if ($conf->global->{$printer->active})
+ {
//$printer->list_jobs('commande');
- if ($printer->list_jobs()==0) {
- print $printer->resprint;
- } else {
+ $result = $printer->list_jobs();
+ print $printer->resprint;
+
+ if ($result > 0)
+ {
setEventMessages($printer->error, $printer->errors, 'errors');
}
}