ticket_extrafields.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?php
  2. /* Copyright (C) 2013-2016 Jean-François FERRY <hello@librethic.io>
  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. /**
  18. * \file admin/ticket_extrafields.php
  19. * \ingroup ticket
  20. * \brief Page to setup extra fields of ticket
  21. */
  22. require '../main.inc.php';
  23. require_once DOL_DOCUMENT_ROOT."/core/lib/ticket.lib.php";
  24. require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
  25. require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
  26. // Load translation files required by the page
  27. $langs->loadLangs(array('ticket', 'admin'));
  28. $extrafields = new ExtraFields($db);
  29. $form = new Form($db);
  30. // List of supported format
  31. $tmptype2label = ExtraFields::$type2label;
  32. $type2label = array('');
  33. foreach ($tmptype2label as $key => $val) {
  34. $type2label[$key] = $langs->trans($val);
  35. }
  36. $action = GETPOST('action', 'aZ09');
  37. $attrname = GETPOST('attrname', 'alpha');
  38. $elementtype = 'ticket'; //Must be the $table_element of the class that manage extrafield
  39. if (!$user->admin) {
  40. accessforbidden();
  41. }
  42. /*
  43. * Actions
  44. */
  45. include DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php';
  46. /*
  47. * View
  48. */
  49. $textobject = $langs->transnoentitiesnoconv("Ticket");
  50. $help_url = "FR:Module_Ticket";
  51. $page_name = "TicketSetup";
  52. llxHeader('', $langs->trans($page_name), $help_url);
  53. $linkback = '<a href="'.DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans("BackToModuleList").'</a>';
  54. print load_fiche_titre($langs->trans("TicketSetup"), $linkback, 'title_setup');
  55. $head = ticketAdminPrepareHead();
  56. print dol_get_fiche_head($head, 'attributes', $langs->trans("Module56000Name"), -1, "ticket");
  57. require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php';
  58. print dol_get_fiche_end();
  59. // Buttons
  60. if ($action != 'create' && $action != 'edit') {
  61. print '<div class="tabsAction">';
  62. print '<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER["PHP_SELF"]."?action=create\">".$langs->trans("NewAttribute").'</a></div>';
  63. print "</div>";
  64. }
  65. // Creation of an optional field
  66. if ($action == 'create') {
  67. print "<br>";
  68. print load_fiche_titre($langs->trans('NewAttribute'));
  69. include DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_add.tpl.php';
  70. }
  71. // Edition of an optional field
  72. if ($action == 'edit' && !empty($attrname)) {
  73. print "<br>";
  74. print load_fiche_titre($langs->trans("FieldEdition", $attrname));
  75. include DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_edit.tpl.php';
  76. }
  77. // End of page
  78. llxFooter();
  79. $db->close();