dolibarr  16.0.5
image.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) 2017 Oscss-Shop <support@oscss-shop.fr>.
3  * Copyright (C) 2008-2011 Laurent Destailleur <eldy@users.sourceforge.net>
4  * Copyright (C) 2020 Frédéric France <frederic.france@netlogic.fr>
5  *
6  * This program is free software; you can redistribute it and/or modifyion 2.0 (the "License");
7  * it under the terms of the GNU General Public License as published bypliance with the License.
8  * the Free Software Foundation; either version 3 of the License, or
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program. If not, see <https://www.gnu.org/licenses/>.
17  * or see https://www.gnu.org/
18  */
19 
20 if (!defined('NOTOKENRENEWAL')) {
21  define('NOTOKENRENEWAL', 1);
22 }
23 
24 
30 require "../../../main.inc.php";
31 
32 // CORE
33 
34 global $lang, $user, $conf;
35 
36 
37 require_once DOL_DOCUMENT_ROOT.'/admin/dolistore/class/dolistore.class.php';
38 $dolistore = new Dolistore();
39 
40 $id_product = GETPOST('id_product', 'int');
41 $id_image = GETPOST('id_image', 'int');
42 // quality : image resize with this in the URL : "cart_default", "home_default", "large_default", "medium_default", "small_default", "thickbox_default"
43 $quality = GETPOST('quality', 'alpha');
44 
45 try {
46  $url = $conf->global->MAIN_MODULE_DOLISTORE_API_SRV.'/api/images/products/'.$id_product.'/'.$id_image.'/'.$quality;
47  $api = new PrestaShopWebservice(
48  $conf->global->MAIN_MODULE_DOLISTORE_API_SRV,
49  $conf->global->MAIN_MODULE_DOLISTORE_API_KEY,
50  $dolistore->debug_api
51  );
52  //echo $url;
53  $request = $api->executeRequest($url, array(CURLOPT_CUSTOMREQUEST => 'GET'));
54  header('Content-type:image');
55  print $request['response'];
56 } catch (PrestaShopWebserviceException $e) {
57  // Here we are dealing with errors
58  $trace = $e->getTrace();
59  if ($trace[0]['args'][0] == 404) {
60  die('Bad ID');
61  } elseif ($trace[0]['args'][0] == 401) {
62  die('Bad auth key');
63  } else {
64  die('Can not access to '.$conf->global->MAIN_MODULE_DOLISTORE_API_SRV);
65  }
66 }
Dolistore
Class Dolistore.
Definition: dolistore.class.php:28
PrestaShopWebserviceException
Definition: PSWebServiceLibrary.class.php:425
GETPOST
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
Definition: functions.lib.php:484
PrestaShopWebservice
Definition: PSWebServiceLibrary.class.php:32