dolibarr  16.0.5
get_attribute_values.php
1 <?php
2 /* Copyright (C) 2016 Marcos GarcĂ­a <marcosgdf@gmail.com>
3  * Copyright (C) 2022 Open-Dsi <support@open-dsi.fr>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 3 of the License, or
8  * (at your option) any later version.
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  */
18 
19 if (!defined('NOTOKENRENEWAL')) {
20  define('NOTOKENRENEWAL', '1');
21 }
22 if (!defined('NOREQUIREMENU')) {
23  define('NOREQUIREMENU', '1');
24 }
25 if (!defined('NOREQUIREHTML')) {
26  define('NOREQUIREHTML', '1');
27 }
28 if (!defined('NOREQUIREAJAX')) {
29  define('NOREQUIREAJAX', '1');
30 }
31 if (!defined('NOREQUIRESOC')) {
32  define('NOREQUIRESOC', '1');
33 }
34 
35 require '../../main.inc.php';
36 require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
37 require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductAttribute.class.php';
38 require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductAttributeValue.class.php';
39 
40 // Security check
41 if (empty($conf->variants->enabled)) {
42  accessforbidden('Module not enabled');
43 }
44 if ($user->socid > 0) { // Protection if external user
46 }
47 $result = restrictedArea($user, 'variants');
48 
49 
50 /*
51  * View
52  */
53 
54 top_httphead('application/json');
55 
56 $id = GETPOST('id', 'int');
57 
58 if (!$id) {
59  print json_encode(array(
60  'error' => 'ID not set'
61  ));
62  exit();
63 }
64 
65 $prodattr = new ProductAttribute($db);
66 
67 if ($prodattr->fetch($id) < 0) {
68  print json_encode(array(
69  'error' => 'Attribute not found'
70  ));
71  exit();
72 }
73 
74 $prodattrval = new ProductAttributeValue($db);
75 
76 $res = $prodattrval->fetchAllByProductAttribute($id, false, 1);
77 
78 if ($res == -1) {
79  print json_encode(array(
80  'error' => 'Internal error'
81  ));
82  exit();
83 }
84 
85 print json_encode($res);
restrictedArea
restrictedArea($user, $features, $objectid=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.
Definition: security.lib.php:234
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
ProductAttributeValue
Class ProductAttributeValue Used to represent a product attribute value.
Definition: ProductAttributeValue.class.php:25
top_httphead
if(!defined('NOREQUIREMENU')) if(!function_exists("llxHeader")) top_httphead($contenttype='text/html', $forcenocache=0)
Show HTTP header.
Definition: main.inc.php:1407
ProductAttribute
Class ProductAttribute Used to represent a product attribute.
Definition: ProductAttribute.class.php:25
accessforbidden
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program Calling this function terminate execution ...
Definition: security.lib.php:933