dolibarr 24.0.0-beta
product_lang_extrafields.php
Go to the documentation of this file.
1<?php
2/* Copyright (C) 2001-2002 Rodolphe Quiedeville <rodolphe@quiedeville.org>
3 * Copyright (C) 2003 Jean-Louis Bergamo <jlb@j1b.org>
4 * Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
5 * Copyright (C) 2012 Regis Houssin <regis.houssin@inodbox.com>
6 * Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
7 * Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
8 * Copyright (C) 2026 Frédéric France <frederic.france@free.fr>
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 3 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program. If not, see <https://www.gnu.org/licenses/>.
22 */
23
30// Load Dolibarr environment
31require '../../main.inc.php';
32
40require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
41require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
42
43// Load translation files required by the page
44$langs->loadLangs(array('admin', 'products'));
45
46$extrafields = new ExtraFields($db);
47$form = new Form($db);
48
49// List of supported format
50$tmptype2label = ExtraFields::$type2label;
51$type2label = array('');
52foreach ($tmptype2label as $key => $val) {
53 $type2label[$key] = $langs->transnoentitiesnoconv($val);
54}
55
56$action = GETPOST('action', 'aZ09');
57$attrname = GETPOST('attrname', 'alpha');
58$elementtype = 'product_lang'; // Must be the $table_element of the class that manage extrafield
59
60if (!$user->admin) {
62}
63
64
65/*
66 * Actions
67 */
68
69require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php';
70
71
72
73/*
74 * View
75 */
76
77$textobject = $langs->transnoentitiesnoconv("Product");
78
79$help_url = '';
80$page_name = "ProductLangExtrafieldsSetup";
81
82llxHeader('', $langs->trans($page_name), $help_url);
83
84
85$linkback = '<a href="'.DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans("BackToModuleList").'</a>';
86print load_fiche_titre($langs->trans($page_name), $linkback, 'title_setup');
87
88
90
91print dol_get_fiche_head($head, 'translationAttributes', $langs->trans($page_name), -1, 'product');
92
93require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php';
94
95print dol_get_fiche_end();
96
97
98// Buttons
99if ($action != 'create' && $action != 'edit') {
100 print '<div class="tabsAction">';
101 print '<a class="butAction reposition" href="'.$_SERVER["PHP_SELF"].'?action=create">'.$langs->trans("NewAttribute").'</a>';
102 print "</div>";
103}
104
105
106/*
107 * Creation of an optional field
108 */
109if ($action == 'create') {
110 print '<br><div id="newattrib"></div>';
111 print load_fiche_titre($langs->trans('NewAttribute'));
112
113 require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_add.tpl.php';
114}
115
116/*
117 * Edition of an optional field
118 */
119if ($action == 'edit' && !empty($attrname)) {
120 print "<br>";
121 print load_fiche_titre($langs->trans("FieldEdition", $attrname));
122
123 require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_edit.tpl.php';
124}
125
126// End of page
127llxFooter();
128$db->close();
llxFooter($comment='', $zone='private', $disabledoutputofmessages=0)
Empty footer.
Definition wrapper.php:91
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader($head='', $title='', $help_url='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $morecssonbody='', $replacemainareaby='', $disablenofollow=0, $disablenoindex=0)
Empty header.
Definition wrapper.php:73
Class to manage standard extra fields.
Class to manage generation of HTML components Only common components must be here.
if(!isModEnabled('ai')||!getDolGlobalString('AI_ASSISTANT_ENABLED')) global $db
API class for accounts.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0, $morecssdiv='')
Show tabs of a record.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
load_fiche_titre($title, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='', $morecssonpicto='widthpictotitle')
Load a title with picto.
product_admin_prepare_head()
Return array head with list of tabs to view object information.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.