dolibarr  16.0.5
selectobject.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) 2017 Laurent Destailleur <eldy@users.sourceforge.net>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program. If not, see <https://www.gnu.org/licenses/>.
16  */
17 
23 if (!defined('NOTOKENRENEWAL')) {
24  define('NOTOKENRENEWAL', 1); // Disables token renewal
25 }
26 if (!defined('NOREQUIREMENU')) {
27  define('NOREQUIREMENU', '1');
28 }
29 if (!defined('NOREQUIREHTML')) {
30  define('NOREQUIREHTML', '1');
31 }
32 if (!defined('NOREQUIREAJAX')) {
33  define('NOREQUIREAJAX', '1');
34 }
35 if (!defined('NOREQUIRESOC')) {
36  define('NOREQUIRESOC', '1');
37 }
38 if (!defined('NOCSRFCHECK')) {
39  define('NOCSRFCHECK', '1');
40 }
41 
42 require '../../main.inc.php';
43 
44 $objectdesc = GETPOST('objectdesc', 'alpha');
45 $htmlname = GETPOST('htmlname', 'aZ09');
46 $outjson = (GETPOST('outjson', 'int') ? GETPOST('outjson', 'int') : 0);
47 $id = GETPOST('id', 'int');
48 
49 
50 /*
51  * View
52  */
53 
54 //print '<!-- Ajax page called with url '.dol_escape_htmltag($_SERVER["PHP_SELF"]).'?'.dol_escape_htmltag($_SERVER["QUERY_STRING"]).' -->'."\n";
55 //print_r($_GET);
56 
57 require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php';
58 $form = new Form($db);
59 
60 //$langs->load("companies");
61 
62 top_httphead();
63 
64 if (empty($htmlname)) {
65  return;
66 }
67 
68 
69 $InfoFieldList = explode(":", $objectdesc);
70 $classname = $InfoFieldList[0];
71 $classpath = $InfoFieldList[1];
72 if (!empty($classpath)) {
73  dol_include_once($classpath);
74  if ($classname && class_exists($classname)) {
75  $objecttmp = new $classname($db);
76  }
77 }
78 if (!is_object($objecttmp)) {
79  dol_syslog('Error bad param objectdesc', LOG_WARNING);
80  print 'Error bad param objectdesc';
81 }
82 
83 // When used from jQuery, the search term is added as GET param "term".
84 $searchkey = (($id && GETPOST($id, 'alpha')) ? GETPOST($id, 'alpha') : (($htmlname && GETPOST($htmlname, 'alpha')) ? GETPOST($htmlname, 'alpha') : ''));
85 
86 // Add a security test to avoid to get content of all tables
87 restrictedArea($user, $objecttmp->element, $id);
88 
89 $arrayresult = $form->selectForFormsList($objecttmp, $htmlname, '', 0, $searchkey, '', '', '', 0, 1);
90 
91 $db->close();
92 
93 if ($outjson) {
94  print json_encode($arrayresult);
95 }
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
dol_include_once
if(!function_exists('dol_getprefix')) dol_include_once($relpath, $classname='')
Make an include_once using default root and alternate root if it fails.
Definition: functions.lib.php:1033
$form
if($cancel &&! $id) if($action=='add' &&! $cancel) if($action=='delete') if($id) $form
Actions.
Definition: card.php:142
top_httphead
if(!defined('NOREQUIREMENU')) if(!function_exists("llxHeader")) top_httphead($contenttype='text/html', $forcenocache=0)
Show HTTP header.
Definition: main.inc.php:1407
dol_syslog
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
Definition: functions.lib.php:1603
Form
Class to manage generation of HTML components Only common components must be here.
Definition: html.form.class.php:52