1<?php 2/* Copyright (C) 2007-2017 Laurent Destailleur <eldy@users.sourceforge.net> 3 * Copyright (C) 2020 Gauthier VERDOL <gauthier.verdol@atm-consulting.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/** 20 * \file workstation_note.php 21 * \ingroup workstation 22 * \brief Tab for notes on Workstation 23 */ 24 25// Load Dolibarr environment 26require '../main.inc.php'; 27 28require_once DOL_DOCUMENT_ROOT.'/workstation/class/workstation.class.php'; 29require_once DOL_DOCUMENT_ROOT.'/workstation/lib/workstation_workstation.lib.php'; 30 31// Load translation files required by the page 32$langs->loadLangs(array("workstation", "companies")); 33 34// Get parameters 35$id = GETPOST('id', 'int'); 36$ref = GETPOST('ref', 'alpha'); 37$action = GETPOST('action', 'aZ09'); 38$cancel = GETPOST('cancel', 'aZ09'); 39$backtopage = GETPOST('backtopage', 'alpha'); 40 41// Initialize technical objects 42$object = new Workstation($db); 43$extrafields = new ExtraFields($db); 44$diroutputmassaction = $conf->workstation->dir_output.'/temp/massgeneration/'.$user->id; 45$hookmanager->initHooks(array('workstationnote', 'globalcard')); // Note that conf->hooks_modules contains array 46// Fetch optionals attributes and labels 47$extrafields->fetch_name_optionals_label($object->table_element); 48 49// Security check - Protection if external user 50//if ($user->socid > 0) accessforbidden(); 51//if ($user->socid > 0) $socid = $user->socid; 52//$result = restrictedArea($user, 'workstation', $id); 53 54// Load object 55include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once // Must be include, not include_once. Include fetch and fetch_thirdparty but not fetch_optionals 56if ($id > 0 || !empty($ref)) { 57 $upload_dir = $conf->workstation->multidir_output[$object->entity]."/".$object->id; 58} 59 60$permissionnote = $user->rights->workstation->workstation->write; // Used by the include of actions_setnotes.inc.php 61$permissiontoadd = $user->rights->workstation->workstation->write; // Used by the include of actions_addupdatedelete.inc.php 62 63// Security check 64$isdraft = 0; 65restrictedArea($user, $object->element, $object->id, $object->table_element, 'workstation', 'fk_soc', 'rowid', $isdraft); 66 67 68/* 69 * Actions 70 */ 71 72include DOL_DOCUMENT_ROOT.'/core/actions_setnotes.inc.php'; // Must be include, not include_once 73 74 75/* 76 * View 77 */ 78 79$form = new Form($db); 80 81$help_url = 'EN:Module_Workstation'; 82 83llxHeader('', $langs->trans('Workstation'), $help_url); 84 85if ($id > 0 || !empty($ref)) { 86 $object->fetch_thirdparty(); 87 88 $head = workstationPrepareHead($object); 89 90 print dol_get_fiche_head($head, 'note', $langs->trans("Workstation"), -1, $object->picto); 91 92 // Object card 93 // ------------------------------------------------------------ 94 $linkback = '<a href="'.dol_buildpath('/workstation/workstation_list.php', 1).'?restore_lastsearch_values=1'.(!empty($socid) ? '&socid='.$socid : '').'">'.$langs->trans("BackToList").'</a>'; 95 96 $morehtmlref = '<div class="refidno">'; 97 /* 98 // Ref customer 99 $morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', 0, 1); 100 $morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', null, null, '', 1); 101 // Thirdparty 102 $morehtmlref.='<br>'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : ''); 103 // Project 104 if (! empty($conf->projet->enabled)) 105 { 106 $langs->load("projects"); 107 $morehtmlref.='<br>'.$langs->trans('Project') . ' '; 108 if ($permissiontoadd) 109 { 110 if ($action != 'classify') 111 //$morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> : '; 112 $morehtmlref.=' : '; 113 if ($action == 'classify') { 114 //$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1); 115 $morehtmlref.='<form method="post" action="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'">'; 116 $morehtmlref.='<input type="hidden" name="action" value="classin">'; 117 $morehtmlref.='<input type="hidden" name="token" value="'.newToken().'">'; 118 $morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1); 119 $morehtmlref.='<input type="submit" class="button valignmiddle" value="'.$langs->trans("Modify").'">'; 120 $morehtmlref.='</form>'; 121 } else { 122 $morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1); 123 } 124 } else { 125 if (! empty($object->fk_project)) { 126 $proj = new Project($db); 127 $proj->fetch($object->fk_project); 128 $morehtmlref .= ': '.$proj->getNomUrl(); 129 } else { 130 $morehtmlref .= ''; 131 } 132 } 133 }*/ 134 $morehtmlref .= '</div>'; 135 136 137 dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref); 138 139 140 print '<div class="fichecenter">'; 141 print '<div class="underbanner clearboth"></div>'; 142 143 144 $cssclass = "titlefield"; 145 include DOL_DOCUMENT_ROOT.'/core/tpl/notes.tpl.php'; 146 147 print '</div>'; 148 149 print dol_get_fiche_end(); 150} 151 152// End of page 153llxFooter(); 154$db->close(); 155