. * --------------------------------------------------------------------- */ // Current version of GLPI define('GLPI_VERSION', '9.5.2.66'); if (substr(GLPI_VERSION, -4) === '-dev') { //for dev version define('GLPI_PREVER', str_replace('-dev', '', GLPI_VERSION)); define( 'GLPI_SCHEMA_VERSION', GLPI_PREVER . '@' . sha1_file(GLPI_ROOT . '/install/mysql/glpi-empty.sql') ); } else { //for stable version define("GLPI_SCHEMA_VERSION", '9.5.2'); } define('GLPI_MIN_PHP', '7.2.0'); // Must also be changed in top of index.php define('GLPI_YEAR', '2020'); //Define a global recipient address for email notifications //define('GLPI_FORCE_MAIL', 'me@localhost'); // rights define("READ", 1); define("UPDATE", 2); define("CREATE", 4); define("DELETE", 8); define("PURGE", 16); define("ALLSTANDARDRIGHT", 31); define("READNOTE", 32); define("UPDATENOTE", 64); define("UNLOCK", 128); // dictionnaries $CFG_GLPI['languages'] = [ //Code Name in native lang LANG FILE jquery tinymce english name standard plural number 'ar_SA' => ['العَرَبِيَّةُ', 'ar_SA.mo', 'ar', 'ar', 'arabic', 103], 'en_GB' => ['English', 'en_GB.mo', 'en-GB', 'en', 'english', 2], 'fr_FR' => ['Français', 'fr_FR.mo', 'fr', 'fr', 'french', 2] ]; $DEFAULT_PLURAL_NUMBER = 2; // Init to store glpi itemtype / tables link $CFG_GLPI['glpitables'] = []; define("NOT_AVAILABLE", 'N/A'); // key used to crypt passwords in DB for external access : proxy / smtp / ldap / mailcollectors // This key is not used to crypt user's passwords // If you hav to define passwords again define("GLPIKEY", "GLPI£i'snarss'ç"); // TIMES define("MINUTE_TIMESTAMP", 60); define("HOUR_TIMESTAMP", 3600); define("DAY_TIMESTAMP", 86400); define("WEEK_TIMESTAMP", 604800); define("MONTH_TIMESTAMP", 2592000); //Management modes define("MANAGEMENT_UNITARY", 0); define("MANAGEMENT_GLOBAL", 1); //Mail send methods define("MAIL_MAIL", 0); define("MAIL_SMTP", 1); define("MAIL_SMTPSSL", 2); define("MAIL_SMTPTLS", 3); // MESSAGE TYPE define("INFO", 0); define("ERROR", 1); define("WARNING", 2); // ACTIONS_ERROR define("ERROR_NOT_FOUND", 1); define("ERROR_RIGHT", 2); define("ERROR_COMPAT", 3); define("ERROR_ON_ACTION", 4); define("ERROR_ALREADY_DEFINED", 5); // For plugins $PLUGIN_HOOKS = []; $CFG_GLPI_PLUGINS = []; $LANG = []; $CFG_GLPI["unicity_types"] = ['Budget', 'Computer', 'Contact', 'Contract', 'Infocom', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Supplier','User', 'Certicate', 'Rack', 'Enclosure', 'PDU', 'Cluster', 'Item_DeviceSimcard']; $CFG_GLPI["state_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'SoftwareLicense', 'Certificate', 'Enclosure', 'PDU', 'Line', 'Rack', 'SoftwareVersion', 'Cluster', 'Contract', 'Appliance']; $CFG_GLPI["asset_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'SoftwareLicense', 'Certificate']; $CFG_GLPI["project_asset_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'DeviceMotherboard', 'DeviceProcessor', 'DeviceMemory', 'DeviceHardDrive', 'DeviceNetworkCard', 'DeviceDrive', 'DeviceControl', 'DeviceGraphicCard', 'DeviceSoundCard', 'DevicePci', 'DeviceCase', 'DevicePowerSupply', 'DeviceGeneric', 'DeviceBattery', 'DeviceFirmware', 'Certificate']; $CFG_GLPI["document_types"] = ['Budget', 'CartridgeItem', 'Change', 'Computer', 'ConsumableItem', 'Contact', 'Contract', 'Document', 'Entity', 'KnowbaseItem', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Problem', 'Project', 'ProjectTask', 'Reminder', 'Software', 'Line', 'SoftwareLicense', 'Supplier', 'Ticket','User', 'Certificate', 'Cluster', 'ITILFollowup', 'ITILSolution', 'ChangeTask', 'ProblemTask', 'TicketTask', 'Appliance']; $CFG_GLPI["consumables_types"] = ['Group', 'User']; $CFG_GLPI["report_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Project', 'Software', 'SoftwareLicense', 'Certificate']; $CFG_GLPI["directconnect_types"] = ['Monitor', 'Peripheral', 'Phone', 'Printer']; $CFG_GLPI["infocom_types"] = ['Cartridge', 'CartridgeItem', 'Computer', 'Consumable', 'ConsumableItem', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Line', 'Certificate', 'Domain', 'Appliance', 'Item_DeviceSimcard']; $CFG_GLPI["reservation_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software']; $CFG_GLPI["linkuser_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Certificate', 'Appliance', 'Item_DeviceSimcard']; $CFG_GLPI["linkgroup_types"] = ['Computer', 'Consumable', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Certificate', 'Appliance', 'Item_DeviceSimcard']; $CFG_GLPI["linkuser_tech_types"] = ['Computer', 'ConsumableItem', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Certificate', 'Appliance']; $CFG_GLPI["linkgroup_tech_types"] = ['Computer', 'ConsumableItem', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Certificate', 'Appliance']; $CFG_GLPI["location_types"] = ['Budget', 'CartridgeItem', 'ConsumableItem', 'Computer', 'Monitor', 'Netpoint', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Ticket', 'User', 'Certificate', 'Item_DeviceSimcard']; $CFG_GLPI["ticket_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Certificate', 'Line', 'DCRoom', 'Rack', 'Enclosure', 'Cluster', 'PDU', 'Domain', 'DomainRecord', 'Appliance', 'Item_DeviceSimcard', 'PassiveDCEquipment']; $CFG_GLPI["link_types"] = ['Budget', 'CartridgeItem', 'Computer', 'ConsumableItem', 'Contact', 'Contract', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'Supplier', 'User', 'Certificate', 'Cluster', 'DCRoom']; $CFG_GLPI["dictionnary_types"] = ['ComputerModel', 'ComputerType', 'Manufacturer', 'MonitorModel', 'MonitorType', 'NetworkEquipmentModel', 'NetworkEquipmentType', 'OperatingSystem', 'OperatingSystemServicePack', 'OperatingSystemVersion', 'PeripheralModel', 'PeripheralType', 'PhoneModel', 'PhoneType', 'Printer', 'PrinterModel', 'PrinterType', 'Software', 'OperatingSystemArchitecture', 'OperatingSystemKernel', 'OperatingSystemKernelVersion', 'OperatingSystemEdition']; $CFG_GLPI["helpdesk_visible_types"] = ['Software', 'Appliance']; $CFG_GLPI["networkport_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Enclosure', 'PDU', 'Cluster']; // Warning : the order is used for displaying different NetworkPort types ! Keep it ! $CFG_GLPI['networkport_instantiations'] = ['NetworkPortEthernet', 'NetworkPortWifi' , 'NetworkPortAggregate', 'NetworkPortAlias', 'NetworkPortDialup', 'NetworkPortLocal', 'NetworkPortFiberchannel']; $CFG_GLPI['device_types'] = ['DeviceMotherboard', 'DeviceFirmware', 'DeviceProcessor', 'DeviceMemory', 'DeviceHardDrive', 'DeviceNetworkCard', 'DeviceDrive', 'DeviceBattery', 'DeviceGraphicCard', 'DeviceSoundCard', 'DeviceControl', 'DevicePci', 'DeviceCase', 'DevicePowerSupply', 'DeviceGeneric', 'DeviceSimcard', 'DeviceSensor']; $CFG_GLPI['itemdevices'] = []; foreach ($CFG_GLPI['device_types'] as $dtype) { $CFG_GLPI['location_types'][] = 'Item_' . $dtype; $CFG_GLPI["itemdevices"][] = 'Item_' . $dtype; } $CFG_GLPI["itemdevices_types"] = ['Computer', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Enclosure']; $CFG_GLPI["itemdevices_itemaffinity"] = ['Computer']; $CFG_GLPI["itemdevicememory_types"] = ['Computer', 'NetworkEquipment', 'Peripheral', 'Printer']; $CFG_GLPI["itemdevicepowersupply_types"] = ['Computer', 'NetworkEquipment', 'Enclosure']; $CFG_GLPI["itemdevicenetworkcard_types"] = ['Computer', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer']; $CFG_GLPI['itemdeviceharddrive_types'] = ['Computer', 'Peripheral', 'NetworkEquipment', 'Printer', 'Phone']; $CFG_GLPI['itemdevicebattery_types'] = ['Computer', 'Peripheral', 'Phone', 'Printer']; $CFG_GLPI['itemdevicefirmware_types'] = ['Computer', 'Peripheral', 'Phone', 'NetworkEquipment', 'Printer']; $CFG_GLPI['itemdevicesimcard_types'] = ['Computer', 'Peripheral', 'Phone', 'NetworkEquipment', 'Printer']; $CFG_GLPI['itemdevicegeneric_types'] = ['*']; $CFG_GLPI['itemdevicepci_types'] = ['*']; $CFG_GLPI['itemdevicesensor_types'] = ['Computer', 'Peripheral']; $CFG_GLPI['itemdeviceprocessor_types'] = ['Computer']; $CFG_GLPI['itemdevicesoundcard_types'] = ['Computer']; $CFG_GLPI['itemdevicegraphiccard_types'] = ['Computer']; $CFG_GLPI['itemdevicemotherboard_types'] = ['Computer']; $CFG_GLPI["notificationtemplates_types"] = ['CartridgeItem', 'Change', 'ConsumableItem', 'Contract', 'CronTask', 'DBConnection', 'FieldUnicity', 'Infocom', 'MailCollector', 'ObjectLock', 'PlanningRecall', 'Problem', 'Project', 'ProjectTask', 'Reservation', 'SoftwareLicense', 'Ticket', 'User', 'SavedSearch_Alert', 'Certificate', 'Glpi\\Marketplace\\Controller', 'Domain']; $CFG_GLPI["contract_types"] = array_merge(['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Project', 'Line', 'Software', 'SoftwareLicense', 'Certificate', 'DCRoom', 'Rack', 'Enclosure', 'Cluster', 'PDU', 'Appliance'], $CFG_GLPI['itemdevices']); $CFG_GLPI["union_search_type"] = ['ReservationItem' => "reservation_types", 'AllAssets' => "asset_types"]; $CFG_GLPI["systeminformations_types"] = ['AuthLDAP', 'DBConnection', 'MailCollector', 'Plugin']; $CFG_GLPI["rulecollections_types"] = ['RuleImportEntityCollection', 'RuleImportComputerCollection', 'RuleMailCollectorCollection', 'RuleRightCollection', 'RuleSoftwareCategoryCollection', 'RuleTicketCollection', 'RuleAssetCollection']; // Items which can planned something $CFG_GLPI['planning_types'] = ['ChangeTask', 'ProblemTask', 'Reminder', 'TicketTask', 'ProjectTask', 'PlanningExternalEvent']; $CFG_GLPI['planning_add_types'] = ['PlanningExternalEvent']; // supported components send by caldav server // - VTODO: All possible planning events of GLPI with a status of TODO/DONE, // You can generaly retrieve them in the todo tab of your caldav client // - VJOURNAL: Glpi Reminders/Tasks with "Information" status and **not planned**, you can retrieve them in the notes tab // - VEVENT: all **planned** events without todo/done status, displayed in the calendar of your client // The two first entry fallback on VEVENT if they are disabled (and they are planned, other are not displayed) $CFG_GLPI['caldav_supported_components'] = ['VEVENT', 'VJOURNAL']; $CFG_GLPI["globalsearch_types"] = ['Computer', 'Contact', 'Contract', 'Document', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'SoftwareLicense', 'Ticket', 'Problem', 'Change', 'User', 'Group', 'Project', 'Supplier', 'Budget', 'Certificate', 'Line', 'Datacenter', 'DCRoom', 'Enclosure', 'PDU', 'Rack', 'Cluster', 'Domain']; // New config options which can be missing during migration $CFG_GLPI["number_format"] = 0; $CFG_GLPI["decimal_number"] = 2; // Default debug options : may be locally overriden $CFG_GLPI["debug_sql"] = $CFG_GLPI["debug_vars"] = $CFG_GLPI["debug_lang"] = 1; // User Prefs fields which override $CFG_GLPI config $CFG_GLPI['user_pref_field'] = ['backcreated', 'csv_delimiter', 'date_format', 'default_requesttypes_id', 'display_count_on_home', 'duedatecritical_color', 'duedatecritical_less', 'duedatecritical_unit', 'duedateok_color', 'duedatewarning_color', 'duedatewarning_less', 'duedatewarning_unit', 'followup_private', 'is_ids_visible', 'keep_devices_when_purging_item', 'language', 'list_limit', 'lock_autolock_mode', 'lock_directunlock_notification', 'names_format', 'notification_to_myself', 'number_format', 'pdffont', 'priority_1', 'priority_2', 'priority_3', 'priority_4', 'priority_5', 'priority_6', 'refresh_views', 'set_default_tech', 'set_default_requester', 'show_count_on_tabs', 'show_jobs_at_login', 'task_private', 'task_state', 'use_flat_dropdowntree', 'layout', 'palette', 'highcontrast_css', 'default_dashboard_central', 'default_dashboard_assets', 'default_dashboard_helpdesk', 'default_dashboard_mini_ticket']; $CFG_GLPI['layout_excluded_pages'] = ["profile.form.php", "knowbaseitem.php", "knowbaseitem.form.php", "bookmark.php", "displaypreference.form.php", "central.php", "preference.php", "config.form.php", "common.tabs.php", "transfer.form.php", "entity.form.php", "queuednotification.form.php"]; $CFG_GLPI['lock_lockable_objects'] = ['Budget', 'Change', 'Contact', 'Contract', 'Document', 'CartridgeItem', 'Computer', 'ConsumableItem', 'Entity', 'Group', 'KnowbaseItem', 'Line', 'Link', 'Monitor', 'NetworkEquipment', 'NetworkName', 'Peripheral', 'Phone', 'Printer', 'Problem', 'Profile', 'Project', 'Reminder', 'RSSFeed', 'Software', 'Supplier', 'Ticket', 'User', 'SoftwareLicense', 'Certificate']; $CFG_GLPI['inventory_lockable_objects'] = ['Computer_Item', 'Item_SoftwareLicense', 'Item_SoftwareVersion', 'Item_Disk', 'ComputerVirtualMachine', 'NetworkPort', 'NetworkName', 'IPAddress']; $CFG_GLPI["kb_types"] = ['Budget', 'Change', 'Computer', 'Contract', 'Entity', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Problem', 'Project', 'Software', 'SoftwareLicense', 'Supplier', 'Ticket', 'Certificate', 'Appliance']; $CFG_GLPI["certificate_types"] = ['Computer', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'SoftwareLicense', 'User', 'Domain']; $CFG_GLPI["rackable_types"] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Enclosure', 'PDU', 'PassiveDCEquipment']; $CFG_GLPI["cluster_types"] = ['Computer', 'NetworkEquipment']; $CFG_GLPI['operatingsystem_types'] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer']; $CFG_GLPI['software_types'] = $CFG_GLPI['operatingsystem_types']; $CFG_GLPI['kanban_types'] = ['Project']; $CFG_GLPI['domain_types'] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'Appliance', 'Certificate']; $CFG_GLPI['appliance_types'] = ['Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer', 'Software', 'Cluster']; $CFG_GLPI['appliance_relation_types'] = ['Location', 'Network', 'Domain']; $dashboard_libs = [ 'dashboard', 'gridstack', 'charts', 'clipboard', 'sortable' ]; $CFG_GLPI['javascript'] = [ 'central' => [ 'central' => array_merge([ 'fullcalendar', 'planning', 'tinymce', ], $dashboard_libs) ], 'assets' => [ 'dashboard' => $dashboard_libs, 'rack' => ['gridstack', 'rack'] ], 'helpdesk' => [ 'dashboard' => $dashboard_libs, 'planning' => ['clipboard', 'fullcalendar', 'tinymce', 'planning'], 'ticket' => array_merge(['rateit', 'tinymce', 'photoswipe'], $dashboard_libs), 'problem' => ['tinymce', 'photoswipe'], 'change' => ['tinymce', 'photoswipe'], 'stat' => ['charts'] ], 'tools' => [ 'project' => ['gantt', 'kanban', 'tinymce'], 'knowbaseitem' => ['tinymce', 'jstree'], 'knowbaseitemtranslation' => ['tinymce'], 'reminder' => ['tinymce'], 'remindertranslation' => ['tinymce'], ], 'management' => [ 'datacenter' => [ 'dcroom' => ['gridstack', 'rack'] ] ], 'config' => [ 'commondropdown' => [ 'ITILFollowupTemplate' => ['tinymce'], 'ProjectTaskTemplate' => ['tinymce'], 'SolutionTemplate' => ['tinymce'], 'TaskTemplate' => ['tinymce'], ], 'notification' => [ 'notificationtemplate' => ['tinymce'] ], 'plugin'=> [ 'marketplace' => ['marketplace'] ] ], 'admin' => ['clipboard'], 'preference' => ['clipboard'], 'self-service' => ['tinymce', 'photoswipe'] ]; //Maximum time, in miliseconds a saved search should not exeed //so we count it on display (using automatic mode). $CFG_GLPI['max_time_for_count'] = 200; /** * Impact itemtypes enabled by default */ $CFG_GLPI["default_impact_asset_types"] = [ Appliance::getType() => "pics/impact/appliance.png", Cluster::getType() => "pics/impact/cluster.png", Computer::getType() => "pics/impact/computer.png", Datacenter::getType() => "pics/impact/datacenter.png", DCRoom::getType() => "pics/impact/dcroom.png", Domain::getType() => "pics/impact/domain.png", Enclosure::getType() => "pics/impact/enclosure.png", Monitor::getType() => "pics/impact/monitor.png", NetworkEquipment::getType() => "pics/impact/networkequipment.png", PDU::getType() => "pics/impact/pdu.png", Peripheral::getType() => "pics/impact/peripheral.png", Phone::getType() => "pics/impact/phone.png", Printer::getType() => "pics/impact/printer.png", Rack::getType() => "pics/impact/rack.png", Software::getType() => "pics/impact/software.png", ]; /** * All possible impact itemtypes: default + extra itemtypes that can be * added in GLPI configuration */ $CFG_GLPI["impact_asset_types"] = $CFG_GLPI["default_impact_asset_types"] + [ AuthLDAP::getType() => "pics/impact/authldap.png", CartridgeItem::getType() => "pics/impact/cartridgeitem.png", Contract::getType() => "pics/impact/contract.png", CronTask::getType() => "pics/impact/crontask.png", DeviceSimcard::getType() => "pics/impact/devicesimcard.png", Entity::getType() => "pics/impact/entity.png", Group::getType() => "pics/impact/group.png", ITILCategory::getType() => "pics/impact/itilcategory.png", Line::getType() => "pics/impact/line.png", Location::getType() => "pics/impact/location.png", MailCollector::getType() => "pics/impact/mailcollector.png", Notification::getType() => "pics/impact/notification.png", Profile::getType() => "pics/impact/profile.png", Project::getType() => "pics/impact/project.png", Rack::getType() => "pics/impact/rack.png", SLM::getType() => "pics/impact/slm.png", SoftwareLicense::getType() => "pics/impact/softwarelicense.png", Supplier::getType() => "pics/impact/supplier.png", User::getType() => "pics/impact/user.png", ];