├── mantis.png ├── docs ├── bin16.png ├── droit.png ├── task.png ├── boutton.png ├── config.png ├── listTask.png ├── tableau.png ├── btnMantis.png ├── supprimer.png ├── arrowRight16.png ├── headerTicket.png ├── linkToIssue.png ├── linkToProject.png └── README_FR.asciidoc ├── pics ├── bin16.png ├── check24.png ├── cross16.png ├── cross24.png ├── warning24.png ├── arrowRight16.png └── please_wait.gif ├── locales ├── cs_CZ.mo ├── en_GB.mo ├── fr_FR.mo ├── hr_HR.mo ├── pt_BR.mo ├── pt_PT.mo ├── tr_TR.mo ├── mantis.pot ├── en_GB.po ├── hr_HR.po ├── tr_TR.po ├── cs_CZ.po ├── pt_PT.po └── pt_BR.po ├── .gitignore ├── screenshots ├── fr_mantis-configuration.png ├── fr_mantis-popup-creation-issue.png └── fr_mantis-liste-des-issues-liees.png ├── .tx └── config ├── composer.json ├── .github ├── ISSUE_TEMPLATE │ └── config.yml ├── dependabot.yml └── workflows │ ├── autoclose-issues.yml │ └── release.yml ├── SECURITY.md ├── tools └── HEADER ├── front ├── config.form.php ├── mantis.form.php └── userpref.form.php ├── inc ├── structcustomfield.php ├── structaccountdata.php ├── userpref.class.php ├── structissuenotedata.class.php ├── project.class.php ├── profile.class.php └── config.class.php ├── hook.php ├── setup.php ├── README.md ├── mantis.xml └── ajax └── ajax.php /mantis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/mantis.png -------------------------------------------------------------------------------- /docs/bin16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/bin16.png -------------------------------------------------------------------------------- /docs/droit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/droit.png -------------------------------------------------------------------------------- /docs/task.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/task.png -------------------------------------------------------------------------------- /pics/bin16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/bin16.png -------------------------------------------------------------------------------- /docs/boutton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/boutton.png -------------------------------------------------------------------------------- /docs/config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/config.png -------------------------------------------------------------------------------- /docs/listTask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/listTask.png -------------------------------------------------------------------------------- /docs/tableau.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/tableau.png -------------------------------------------------------------------------------- /locales/cs_CZ.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/cs_CZ.mo -------------------------------------------------------------------------------- /locales/en_GB.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/en_GB.mo -------------------------------------------------------------------------------- /locales/fr_FR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/fr_FR.mo -------------------------------------------------------------------------------- /locales/hr_HR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/hr_HR.mo -------------------------------------------------------------------------------- /locales/pt_BR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/pt_BR.mo -------------------------------------------------------------------------------- /locales/pt_PT.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/pt_PT.mo -------------------------------------------------------------------------------- /locales/tr_TR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/locales/tr_TR.mo -------------------------------------------------------------------------------- /pics/check24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/check24.png -------------------------------------------------------------------------------- /pics/cross16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/cross16.png -------------------------------------------------------------------------------- /pics/cross24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/cross24.png -------------------------------------------------------------------------------- /docs/btnMantis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/btnMantis.png -------------------------------------------------------------------------------- /docs/supprimer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/supprimer.png -------------------------------------------------------------------------------- /pics/warning24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/warning24.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .settings/ 2 | .buildpath 3 | .project 4 | dist/ 5 | vendor/ 6 | .gh_token 7 | *.min.* -------------------------------------------------------------------------------- /docs/arrowRight16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/arrowRight16.png -------------------------------------------------------------------------------- /docs/headerTicket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/headerTicket.png -------------------------------------------------------------------------------- /docs/linkToIssue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/linkToIssue.png -------------------------------------------------------------------------------- /docs/linkToProject.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/docs/linkToProject.png -------------------------------------------------------------------------------- /pics/arrowRight16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/arrowRight16.png -------------------------------------------------------------------------------- /pics/please_wait.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/pics/please_wait.gif -------------------------------------------------------------------------------- /screenshots/fr_mantis-configuration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/screenshots/fr_mantis-configuration.png -------------------------------------------------------------------------------- /screenshots/fr_mantis-popup-creation-issue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/screenshots/fr_mantis-popup-creation-issue.png -------------------------------------------------------------------------------- /screenshots/fr_mantis-liste-des-issues-liees.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pluginsGLPI/mantis/HEAD/screenshots/fr_mantis-liste-des-issues-liees.png -------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [main] 2 | host = https://www.transifex.com 3 | 4 | [glpi-plugin-mantisbt.mantis-pot] 5 | file_filter = locales/.po 6 | source_file = locales/mantis.pot 7 | source_lang = en_GB 8 | type = PO 9 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "require": { 3 | "php": "^7.2" 4 | }, 5 | "require-dev": { 6 | "glpi-project/tools": "^0.4" 7 | }, 8 | "config": { 9 | "optimize-autoloader": true, 10 | "platform": { 11 | "php": "7.2.0" 12 | }, 13 | "sort-packages": true 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: "GLPI professional support" 4 | url: "https://services.glpi-network.com" 5 | about: "Get professional support from the editor and a network of local partners." 6 | - name: "Find an official partner" 7 | url: "https://glpi-project.org/partners/" 8 | about: "Get support to deploy GLPI in a professional manner." 9 | - name: "GLPI Community Forum" 10 | url: "https://forum.glpi-project.org" 11 | about: "Ask questions and get help from the community." 12 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | # Ensure GitHub Actions are used in their latest version 4 | - package-ecosystem: "github-actions" 5 | directory: "/" 6 | schedule: 7 | interval: "monthly" 8 | 9 | # Strategy for composer dependencies on develop branch. 10 | - package-ecosystem: "composer" 11 | directory: "/" 12 | schedule: 13 | interval: "monthly" 14 | allow: 15 | - dependency-type: "direct" 16 | open-pull-requests-limit: 100 17 | target-branch: "develop" 18 | versioning-strategy: "lockfile-only" 19 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | **⚠️ Please never use standard issues to report security problems; vulnerabilities are published once a fix release is available. ⚠️** 4 | 5 | ## Reporting a Vulnerability 6 | 7 | If you found a security issue, please contact us by: 8 | 9 | - [our huntr page](https://huntr.dev/repos/pluginsGLPI/mantis/) 10 | - a mail to \[glpi-security AT ow2.org\] 11 | 12 | You should provide us all details about the issue and the way to reproduce it. 13 | You may also provide a script that can be used to check the issue exists. 14 | 15 | Once the report will be handled, and if the issue is not yet fixed (or in progress) 16 | we'll add it to the GitHub security tab, and add you as observer. Meanwhile, 17 | you will reserve a CVE for the issue. 18 | 19 | Thank you for improving the security of GLPI and its plugins. 20 | 21 | ## Supported Versions 22 | 23 | We follow the same version support policy as GLPI. 24 | This means that we provide security patches to versions of the plugin that target a version of GLPI itself maintained from a security point of view. 25 | -------------------------------------------------------------------------------- /tools/HEADER: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------- 2 | Mantis plugin for GLPI 3 | ------------------------------------------------------------------------- 4 | 5 | LICENSE 6 | 7 | This file is part of Mantis. 8 | 9 | Mantis is free software; you can redistribute it and/or modify 10 | it under the terms of the GNU General Public License as published by 11 | the Free Software Foundation; either version 3 of the License, or 12 | (at your option) any later version. 13 | 14 | Mantis is distributed in the hope that it will be useful, 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | GNU General Public License for more details. 18 | 19 | You should have received a copy of the GNU General Public License 20 | along with Mantis. If not, see . 21 | ------------------------------------------------------------------------- 22 | @copyright Copyright (C) 2014-2022 by Mantis plugin team. 23 | @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 24 | @link https://github.com/pluginsGLPI/mantis 25 | ------------------------------------------------------------------------- 26 | -------------------------------------------------------------------------------- /.github/workflows/autoclose-issues.yml: -------------------------------------------------------------------------------- 1 | name: "Close issues" 2 | 3 | on: 4 | issues: 5 | types: ["opened"] 6 | 7 | jobs: 8 | close-issue: 9 | permissions: 10 | issues: "write" 11 | name: "Close issue" 12 | runs-on: "ubuntu-latest" 13 | steps: 14 | - uses: "actions/github-script@v6" 15 | with: 16 | script: | 17 | const issues_url = context.serverUrl + '/' + context.repo.owner + '/' + context.repo.repo + '/issues/new/choose'; 18 | await github.rest.issues.createComment({ 19 | issue_number: context.issue.number, 20 | owner: context.repo.owner, 21 | repo: context.repo.repo, 22 | body: `Issues opened on this repository are not processed. Please follow links proposed in ${issues_url}.` 23 | }); 24 | await github.rest.issues.lock({ 25 | issue_number: context.issue.number, 26 | owner: context.repo.owner, 27 | repo: context.repo.repo, 28 | }); 29 | await github.rest.issues.update({ 30 | issue_number: context.issue.number, 31 | owner: context.repo.owner, 32 | repo: context.repo.repo, 33 | state: "closed", 34 | }); 35 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: "Plugin release" 2 | 3 | on: 4 | push: 5 | tags: 6 | - '*' 7 | 8 | jobs: 9 | create-release: 10 | name: "Create release" 11 | runs-on: "ubuntu-latest" 12 | steps: 13 | - name: "Extract tag name" 14 | run: | 15 | echo "tag_name=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV 16 | - name: "Checkout" 17 | uses: "actions/checkout@v4" 18 | - name: "Build package" 19 | id: "build-package" 20 | uses: "glpi-project/tools/github-actions/build-package@0.6.4" 21 | with: 22 | plugin-version: ${{ env.tag_name }} 23 | - name: "Create release" 24 | id: "create-release" 25 | uses: "actions/create-release@v1" 26 | env: 27 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 28 | with: 29 | tag_name: ${{ env.tag_name }} 30 | release_name: ${{ env.tag_name }} 31 | draft: true 32 | - name: "Attach package to release" 33 | uses: "actions/upload-release-asset@v1" 34 | env: 35 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 36 | with: 37 | upload_url: ${{ steps.create-release.outputs.upload_url }} 38 | asset_path: ${{ steps.build-package.outputs.package-path }} 39 | asset_name: ${{ steps.build-package.outputs.package-basename }} 40 | asset_content_type: " application/x-bzip2" 41 | -------------------------------------------------------------------------------- /front/config.form.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | include ('../../../inc/includes.php'); 32 | 33 | Session::haveRight("config", UPDATE); 34 | 35 | Html::header(PluginMantisConfig::getTypeName(1), 36 | $_SERVER['PHP_SELF'], "plugins", "mantis", "config"); 37 | 38 | if (!isset($_GET["id"])) { 39 | $_GET["id"] = 1; 40 | } 41 | 42 | $PluginMantisConfig = new PluginMantisConfig(); 43 | 44 | if (isset($_POST["update"])) { 45 | $PluginMantisConfig->check($_POST["id"], UPDATE); 46 | $PluginMantisConfig->update($_POST); 47 | Html::back(); 48 | } 49 | 50 | $PluginMantisConfig->showForm($_GET["id"]); 51 | 52 | Html::footer(); -------------------------------------------------------------------------------- /front/mantis.form.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | include ('../../../inc/includes.php'); 32 | 33 | $mantis = new PluginMantisMantis(); 34 | 35 | if (isset($_GET['action']) && $_GET['action'] == 'linkToIssue') { 36 | 37 | Html::popHeader('Mantis', $_SERVER['PHP_SELF']); 38 | $mantis->getFormForLinkGlpiTicketToMantisTicket($_GET['idTicket'], $_GET['itemType']); 39 | Html::popFooter(); 40 | } else if (isset($_GET['action']) && $_GET['action'] == 'linkToProject') { 41 | 42 | Html::popHeader('Mantis', $_SERVER['PHP_SELF']); 43 | $mantis->getFormForLinkGlpiTicketToMantisProject($_GET['idTicket'], $_GET['itemType']); 44 | Html::popFooter(); 45 | } else if (isset($_GET['action']) && $_GET['action'] == 'deleteIssue') { 46 | Html::popHeader('Mantis', $_SERVER['PHP_SELF']); 47 | 48 | $id_link = $_GET['id']; 49 | $id_ticket = $_GET['idTicket']; 50 | $id_mantis = $_GET['idMantis']; 51 | 52 | $mantis->getFormToDelLinkOrIssue($id_link, $id_ticket, $id_mantis, $_GET['itemType']); 53 | Html::popFooter(); 54 | } 55 | -------------------------------------------------------------------------------- /front/userpref.form.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | include ('../../../inc/includes.php'); 32 | 33 | Session::checkRight('plugin_mantis_use', UPDATE); 34 | 35 | if (isset($_POST['update'])) { 36 | 37 | if (isset($_POST['followFollow'])) { 38 | $_POST['followFollow'] = 1; 39 | } else { 40 | $_POST['followFollow'] = 0; 41 | } 42 | 43 | if (isset($_POST['followTitle'])) { 44 | $_POST['followTitle'] = 1; 45 | } else { 46 | $_POST['followTitle'] = 0; 47 | } 48 | 49 | if (isset($_POST['followTask'])) { 50 | $_POST['followTask'] = 1; 51 | } else { 52 | $_POST['followTask'] = 0; 53 | } 54 | 55 | if (isset($_POST['followCategorie'])) { 56 | $_POST['followCategorie'] = 1; 57 | } else { 58 | $_POST['followCategorie'] = 0; 59 | } 60 | 61 | if (isset($_POST['followDescription'])) { 62 | $_POST['followDescription'] = 1; 63 | } else { 64 | $_POST['followDescription'] = 0; 65 | } 66 | 67 | if (isset($_POST['followLinkedItem'])) { 68 | $_POST['followLinkedItem'] = 1; 69 | } else { 70 | $_POST['followLinkedItem'] = 0; 71 | } 72 | 73 | if (isset($_POST['followAttachment'])) { 74 | $_POST['followAttachment'] = 1; 75 | } else { 76 | $_POST['followAttachment'] = 0; 77 | } 78 | 79 | $userpref = new PluginMantisUserpref(); 80 | $userpref->update($_POST); 81 | } 82 | 83 | Html::back(); 84 | -------------------------------------------------------------------------------- /inc/structcustomfield.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | class PluginMantisStructcustomField { 36 | 37 | /** 38 | * The field 39 | * Meta information extracted from the WSDL 40 | * - minOccurs : 0 41 | * 42 | * @var MantisStructObjectRef 43 | */ 44 | public $field; 45 | 46 | /** 47 | * The value 48 | * Meta informations extracted from the WSDL 49 | * - minOccurs : 0 50 | * 51 | * @var string 52 | */ 53 | public $value; 54 | 55 | /** 56 | * Get field value 57 | * 58 | * @return MantisStructObjectRef|null 59 | */ 60 | public function getField() { 61 | return $this->field; 62 | } 63 | 64 | /** 65 | * Set field value 66 | * 67 | * @param MantisStructObjectRef $_field the field 68 | * @return MantisStructObjectRef 69 | */ 70 | public function setField($_field) { 71 | return ($this->field = $_field); 72 | } 73 | 74 | /** 75 | * Get value value 76 | * 77 | * @return string|null 78 | */ 79 | public function getValue() { 80 | return $this->value; 81 | } 82 | 83 | /** 84 | * Set value value 85 | * 86 | * @param string $_value the value 87 | * @return string 88 | */ 89 | public function setValue($_value) { 90 | return ($this->value = $_value); 91 | } 92 | } -------------------------------------------------------------------------------- /hook.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | /** 32 | * Install all necessary elements for the plugin 33 | * 34 | * @return boolean True if success 35 | */ 36 | function plugin_mantis_install() { 37 | 38 | $migration = new Migration(PLUGIN_MANTIS_VERSION); 39 | 40 | // Parse inc directory 41 | foreach (glob(dirname(__FILE__).'/inc/*') as $filepath) { 42 | // Load *.class.php files and get the class name 43 | if (preg_match("/inc.(.+)\.class.php/", $filepath, $matches)) { 44 | $classname = 'PluginMantis' . ucfirst($matches[1]); 45 | include_once($filepath); 46 | // If the install method exists, load it 47 | if (method_exists($classname, 'install')) { 48 | $classname::install($migration); 49 | } 50 | } 51 | } 52 | return true; 53 | } 54 | 55 | /** 56 | * Uninstall previously installed elements of the plugin 57 | * 58 | * @return boolean True if success 59 | */ 60 | function plugin_mantis_uninstall() { 61 | 62 | $migration = new Migration(PLUGIN_MANTIS_VERSION); 63 | 64 | // Parse inc directory 65 | foreach (glob(dirname(__FILE__).'/inc/*') as $filepath) { 66 | // Load *.class.php files and get the class name 67 | if (preg_match("/inc.(.+)\.class.php/", $filepath, $matches)) { 68 | $classname = 'PluginMantis' . ucfirst($matches[1]); 69 | include_once($filepath); 70 | // If the install method exists, load it 71 | if (method_exists($classname, 'uninstall')) { 72 | $classname::uninstall($migration); 73 | } 74 | } 75 | } 76 | return true; 77 | } 78 | 79 | function plugin_mantis_getAddSearchOptions($itemtype) { 80 | $sopt = []; 81 | 82 | if (in_array($itemtype, ['Ticket','Problem','Change'])) { 83 | 84 | $sopt[78963]['table'] = 'glpi_plugin_mantis_mantis'; 85 | $sopt[78963]['field'] = 'id'; 86 | $sopt[78963]['forcegroupby'] = true; 87 | $sopt[78963]['usehaving'] = true; 88 | $sopt[78963]['datatype'] = 'count'; 89 | $sopt[78963]['massiveaction'] = false; 90 | $sopt[78963]['name'] = __('Number of linked MantisBT issues', 'mantis'); 91 | $sopt[78963]['joinparams'] = ['jointype' => "itemtype_item"]; 92 | 93 | } 94 | 95 | return $sopt; 96 | } -------------------------------------------------------------------------------- /setup.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | define("PLUGIN_MANTIS_VERSION", "4.4.1"); 32 | 33 | // Minimal GLPI version, inclusive 34 | define("PLUGIN_MANTIS_MIN_GLPI", "9.5"); 35 | // Maximum GLPI version, exclusive 36 | define("PLUGIN_MANTIS_MAX_GLPI", "9.6"); 37 | 38 | /** 39 | * function to initialize the plugin 40 | * 41 | * @global array $PLUGIN_HOOKS 42 | */ 43 | function plugin_init_mantis() { 44 | global $PLUGIN_HOOKS; 45 | 46 | $PLUGIN_HOOKS['csrf_compliant']['mantis'] = true; 47 | 48 | $PLUGIN_HOOKS['change_profile']['mantis'] = ['PluginMantisProfile', 'changeProfile']; 49 | 50 | $plugin = new Plugin(); 51 | 52 | if (Session::getLoginUserID() && $plugin->isActivated('mantis')) { 53 | 54 | if (Session::haveRight('config', UPDATE)) { 55 | $PLUGIN_HOOKS['config_page']['mantis'] = 'front/config.form.php'; 56 | } 57 | 58 | $PLUGIN_HOOKS['add_javascript']['mantis'] = [ 59 | 'scripts/scriptMantis.js.php' 60 | ]; 61 | 62 | if (Session::haveRight('profile', UPDATE)) { 63 | Plugin::registerClass('PluginMantisProfile', 64 | ['addtabon' => 'Profile']); 65 | } 66 | 67 | Plugin::registerClass('PluginMantisConfig'); 68 | 69 | Plugin::registerClass('PluginMantisMantisws'); 70 | 71 | if (Session::haveRightsOr('plugin_mantis_use', [READ, UPDATE])) { 72 | Plugin::registerClass('PluginMantisMantis', 73 | ['addtabon' => ['Ticket', 'Problem', 'Change']]); 74 | 75 | Plugin::registerClass('PluginMantisUserPref', 76 | ['addtabon' => ['User', 'Preference']]); 77 | } 78 | 79 | $PLUGIN_HOOKS['post_prepareadd']['mantis'] = [ 80 | 'ITILSolution' => ['PluginMantisMantis', 'forceSolutionUserOnSolutionAdd'], 81 | ]; 82 | } 83 | 84 | // Encryption 85 | $PLUGIN_HOOKS['secured_fields']['metabase'] = ['glpi_plugin_mantis_configs.pwd']; 86 | } 87 | 88 | /** 89 | * function to define the version for glpi for plugin 90 | * 91 | * @return array 92 | */ 93 | function plugin_version_mantis() { 94 | 95 | return [ 96 | 'name' => __("MantisBT synchronization", "mantis"), 97 | 'version' => PLUGIN_MANTIS_VERSION, 98 | 'author' => 'TECLIB\'', 99 | 'license' => 'GPLv3', 100 | 'homepage'=>'https://github.com/pluginsGLPI/mantis', 101 | 'requirements' => [ 102 | 'glpi' => [ 103 | 'min' => PLUGIN_MANTIS_MIN_GLPI, 104 | 'max' => PLUGIN_MANTIS_MAX_GLPI, 105 | ], 106 | 'php' => [ 107 | 'exts' => [ 108 | 'soap' => [ 109 | 'required' => true, 110 | ] 111 | ] 112 | ] 113 | ] 114 | ]; 115 | } 116 | 117 | -------------------------------------------------------------------------------- /inc/structaccountdata.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | class PluginMantisStructaccountdata { 36 | 37 | /** 38 | * The id 39 | * Meta information extracted from the WSDL 40 | * - minOccurs : 0 41 | * 42 | * @var integer 43 | */ 44 | public $id; 45 | 46 | /** 47 | * The name 48 | * Meta information extracted from the WSDL 49 | * - minOccurs : 0 50 | * 51 | * @var string 52 | */ 53 | public $name; 54 | 55 | /** 56 | * The real_name 57 | * Meta information extracted from the WSDL 58 | * - minOccurs : 0 59 | * 60 | * @var string 61 | */ 62 | public $real_name; 63 | 64 | /** 65 | * The email 66 | * Meta information extracted from the WSDL 67 | * - minOccurs : 0 68 | * 69 | * @var string 70 | */ 71 | public $email; 72 | 73 | /** 74 | * Constructor method for AccountData 75 | * 76 | * @see parent::__construct() 77 | * @param integer $_id 78 | * @param string $_name 79 | * @param string $_real_name 80 | * @param string $_email 81 | * @return MantisStructAccountData 82 | */ 83 | public function __construct($_id = null, $_name = null, $_real_name = null, $_email = null) { 84 | } 85 | 86 | /** 87 | * Get id value 88 | * 89 | * @return integer|null 90 | */ 91 | public function getId() { 92 | return $this->id; 93 | } 94 | 95 | /** 96 | * Set id value 97 | * 98 | * @param integer $_id the id 99 | * @return integer 100 | */ 101 | public function setId($_id) { 102 | return ($this->id = $_id); 103 | } 104 | 105 | /** 106 | * Get name value 107 | * 108 | * @return string|null 109 | */ 110 | public function getName() { 111 | return $this->name; 112 | } 113 | 114 | /** 115 | * Set name value 116 | * 117 | * @param string $_name the name 118 | * @return string 119 | */ 120 | public function setName($_name) { 121 | return ($this->name = $_name); 122 | } 123 | 124 | /** 125 | * Get real_name value 126 | * 127 | * @return string|null 128 | */ 129 | public function getReal_name() { 130 | return $this->real_name; 131 | } 132 | 133 | /** 134 | * Set real_name value 135 | * 136 | * @param string $_real_name the real_name 137 | * @return string 138 | */ 139 | public function setReal_name($_real_name) { 140 | return ($this->real_name = $_real_name); 141 | } 142 | 143 | /** 144 | * Get email value 145 | * 146 | * @return string|null 147 | */ 148 | public function getEmail() { 149 | return $this->email; 150 | } 151 | 152 | /** 153 | * Set email value 154 | * 155 | * @param string $_email the email 156 | * @return string 157 | */ 158 | public function setEmail($_email) { 159 | return ($this->email = $_email); 160 | } 161 | 162 | /** 163 | * Method returning the class name 164 | * 165 | * @return string __CLASS__ 166 | */ 167 | public function __toString() { 168 | return __CLASS__; 169 | } 170 | } 171 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Synchronisation MantisBT 2 | 3 | ![GLPI Banner](https://user-images.githubusercontent.com/29282308/31666160-8ad74b1a-b34b-11e7-839b-043255af4f58.png) 4 | 5 | [![License GPL 3.0](https://img.shields.io/badge/License-GPL%203.0-blue.svg)](https://github.com/pluginsGLPI/mantis/blob/develop/LICENSE.md) 6 | [![Telegram GLPI](https://img.shields.io/badge/Telegram-GLPI-blue.svg)](https://t.me/glpien) 7 | [![IRC Chat](https://img.shields.io/badge/IRC-%23GLPI-green.svg)](http://webchat.freenode.net/?channels=GLPI) 8 | [![Follow Twitter](https://img.shields.io/badge/Twitter-GLPI%20Project-26A2FA.svg)](https://twitter.com/GLPI_PROJECT) 9 | [![Project Status: Active](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active) 10 | [![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org) 11 | 12 | Extend GLPI with Plugins. 13 | 14 | ## Table of Contents 15 | 16 | * [Synopsis](#synopsis) 17 | * [Build Status](#build-status) 18 | * [Documentation](#documentation) 19 | * [Versioning](#versioning) 20 | * [Contact](#contact) 21 | * [Professional Services](#professional-services) 22 | * [Contribute](#contribute) 23 | * [Copying](#copying) 24 | 25 | ## Synopsis 26 | 27 | This plugin allows to synchronize tickets, problems and changes with the MantisBT tool. 28 | 29 | ### Features 30 | 31 | * Connection via webservices of MantisBT (MantisConnect); 32 | * Creation of a new MantisBT issue from a ticket, problem or GLPi change; 33 | * Link an existing MantisBT issue from a ticket, problem or GLPi change; 34 | * Transmission of information from the GLPi object to the created / linked MantisBT issue; 35 | * Transfer and auto-update attachments of GLPi object to the MantisBT created / linked issue; 36 | * Automatic update of GLPI object (transition to the resolved state) when the MantisBT issue is resolved; 37 | * Management rights for the plugin; 38 | * Configuration management of interconnection. 39 | 40 | ## Build Status 41 | 42 | |**LTS**|**Bleeding Edge**| 43 | |:---:|:---:| 44 | |[![Travis CI build](https://api.travis-ci.org/pluginsGLPI/mantis.svg?branch=master)](https://travis-ci.org/pluginsGLPI/mantis/)|[![Travis CI build](https://api.travis-ci.org/pluginsGLPI/mantis.svg?branch=develop)](https://travis-ci.org/pluginsGLPI/mantis/)| 45 | 46 | ## Documentation 47 | 48 | We maintain a detailed documentation of the project on the website, check the [How-tos](https://pluginsglpi.github.io/mantis/howtos/) and [Development](https://pluginsglpi.github.io/mantis/) section. 49 | 50 | Only available in French in *docs* directory. 51 | 52 | ## Versioning 53 | 54 | In order to provide transparency on our release cycle and to maintain backward compatibility, this project is maintained under [the Semantic Versioning guidelines](http://semver.org/). We are committed to following and complying with the rules, the best we can. 55 | 56 | See [the tags section of our GitHub project](https://github.com/pluginsGLPI/mantis/tags/) for changelogs for each release version. Release announcement posts on [the official Teclib' blog](http://www.teclib-edition.com/en/communities/blog-posts/) contain summaries of the most noteworthy changes made in each release. 57 | 58 | ## Contact 59 | 60 | For notices about major changes and general discussion of development, subscribe to the [/r/glpi](http://www.reddit.com/r/glpi) subreddit. 61 | You can also chat with us via [@glpien on Telegram](https://t.me/glpien). 62 | 63 | ## Professional Services 64 | 65 | The GLPI Network services are available through our [Partner's Network](http://www.teclib-edition.com/en/partners/). We provide special training, bug fixes with editor subscription, contributions for new features, and more. 66 | 67 | Obtain a personalized service experience, associated with benefits and opportunities. 68 | 69 | ## Contribute 70 | 71 | Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our 72 | guidelines for [contributing](https://github.com/pluginsGLPI/mantis/blob/develop/.github/CONTRIBUTING.md) and then check out one of our issues in the [Issues Dashboard](https://github.com/pluginsGLPI/mantis/issues/). 73 | 74 | ## Copying 75 | 76 | * **Name**: [GLPI](http://glpi-project.org/) is a registered trademark of [Teclib'](http://www.teclib-edition.com/en/). 77 | * **Code**: you can redistribute it and/or modify it under the terms of the GNU General Public License ([GPLv3](https://www.gnu.org/licenses/gpl-3.0.en.html)). 78 | * **Documentation**: released under Attribution 4.0 International ([CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)). 79 | -------------------------------------------------------------------------------- /docs/README_FR.asciidoc: -------------------------------------------------------------------------------- 1 | = Documentation pour le plugin MantisBT 2 | 3 | Cette documentation vous permettra de configurer rapidement le plugin MantisBT 4 | 5 | == Prérequis 6 | GLPi version 0.85 min 7 | 8 | == Configuration 9 | 10 | === Configuration du plugin 11 | image::config.png[Configuration du plugin MantisBT] 12 | 13 | IP du serveur Mantis :: 14 | Fait référence à l'adresse IP du Serveur qui heberge votre MantisBT. 15 | Chemin du fichier WSDL :: 16 | Fait référence un chemin du fichier WSDL (par defaut :mantis/api/soap/mantisconnect.php?wsdl. 17 | Login utilisateur MantisBT :: 18 | Login de l'utilisateur MantisBT qui va éffectuer les requêtes. 19 | Password de l'utilisateur MantisBT :: 20 | Password de l'utilisateur MantisBT qui va éffectuer les requêtes. 21 | Champ MantisBT pour le lien vers le ticket Glpi :: 22 | Champ MantisBT qui va accueillir le lien vers le ticket Glpi (informations additionnels ou note). 23 | Champ MantisBT pour les champs Glpi :: 24 | Champ MantisBT qui va accueillir le infos du ticket Glpi (informations additionnels ou note). 25 | Résoudre le ticket Glpi que le statut du ticket Mantis BT est :: 26 | Au choix -> new, confirmed, assigned, resolved, closed. 27 | Une tâche automatique va interroger tous les tickets MantisBT liés à un ticket Glpi. Lorsque 28 | tout les tickets MantisBT ont le statut choisi par l'utilisateur, 29 | la tâche va alors changer le statut du ticket Glpi en "résolu" et intégrer à la solution 30 | l'ensemble des notes de tout les tickets MantisBT. 31 | Tester la connexion :: 32 | Après avoir renseigné l'IP, le chemin du WSDL, le login et le password vous pouver tenter 33 | une connection à votre MantisBT 34 | 35 | 36 | 37 | Lorsque tout les champs sont renseigné et que la connexion fonctionne vous pouvez sauvegarder 38 | votre configuration. 39 | 40 | Le plugin MantisBT est prêt à être utilisé. 41 | 42 | 43 | === Configuration des droits 44 | 45 | La gestion des droit ce fait par profils utilisateurs 46 | 47 | Allez dans Administration -> Profils 48 | 49 | Selectionnez le profil pour qui ont va donner les droits 50 | 51 | 52 | 3 choix s'offre à vous :: 53 | * Aucun droit -> l'utilisateur ne verra pas le nouvel onglet MantisBT dans le ticket Glpi. 54 | * Droit de lecture -> l'utilisateur peut juste voir le tableau qui recense les tickets MantisBT 55 | liés au ticket Glpi. 56 | * Droit d'écriture -> l'utilisateur voit le tableau qui recense les tickets MantisBT liés au 57 | ticket Glpi ainsi que les deux boutons permettant de lier un ticket Glpi à MantisBT. 58 | 59 | image::droit.png[Configuration des droits du plugin MantisBT] 60 | 61 | 62 | 63 | === Configuration de la tâche automatisé 64 | 65 | Allez dans Configuration -> actions automatiques 66 | 67 | 68 | choisissez dans la liste la tâche automatique appelé "mantis". 69 | 70 | 71 | image::listTask.png[Liste des tâches Glpi] 72 | 73 | Vous serez redirigez vers la partie configuration de la tâche automatique du plugin MantisBT 74 | 75 | image::task.png[Configuration du plugin MantisBT] 76 | 77 | 78 | Fréquence d'éxécution :: 79 | Vous pouvez choisir la fréquence à laquelle la tâche va être exécuté. 80 | Statut :: 81 | Programmé ou désactivé. 82 | Mode d'éxécution :: 83 | * GLPI -> Exécuté tant qu'il y a de l'activité sur l'application. 84 | * CLI -> Exécuté même s'il n'y a pas d'activité sur l'application (cf : php-cli). 85 | Plage horaire :: 86 | Fourchette de temps durant laquelle la tâche peut s'éxécuter. 87 | 88 | [NOTE] 89 | =============================== 90 | Vous pouvez égalament éxécuter la tâche de manière manuel grâçe au boutton "éxecuter" 91 | =============================== 92 | 93 | 94 | 95 | == Utilisation du plugin 96 | 97 | Lorsque vous ouvrez un ticket Mantis si vous avez les droits de lecture OU d'écriture 98 | un nouvel onglet est apparut 99 | 100 | image::headerTicket.png[Onglet du ticket Glpi] 101 | 102 | 103 | Selectionnez l'onglet MantisBT, vous verez apparaître deux nouveaux bouton 104 | 105 | image::btnMantis.png[Boutton du plugin MantisBT] 106 | 107 | 108 | 109 | === Lier un ticket Glpi à un ticket MantisBT 110 | image::linkToIssue.png[Lier à un ticket MantisBT] 111 | 112 | 113 | Renseigner l'identifiant du ticket MantisBT et cliquez sur image:boutton.png[] 114 | 115 | 116 | === Créer un ticket MantisBT en liant un ticket Glpi à un projet MantisBT 117 | image::linkToProject.png[Lier à un project MantisBT] 118 | 119 | Nom du projet :: 120 | Renseigner le nom du projet MantisBT auquel vous voulez rattaché le ticket Glpi. 121 | 122 | [NOTE] 123 | =============================== 124 | Cliquez sur la petite loupe pour que le plugin puisse le trouver au sein de votre MantisBT et 125 | ainsi rappatrié les catégories liées au projet. 126 | =============================== 127 | 128 | Catégorie :: 129 | Choisissez la catégorie. 130 | 131 | Titre :: 132 | Titre du ticket MantisBT. 133 | 134 | Description :: 135 | Description du ticket MantisBT. 136 | 137 | Etapes pour reproduire :: 138 | Description des étape pour reproduire le bug. 139 | 140 | Pièce(s) jointe(s) :: 141 | Vous pouvez faire suivre les pièces jointe du ticket Glpi vers le ticket MantisBT en cochant la 142 | case "faire suivre les pièces jointes". 143 | 144 | 145 | 146 | 147 | Cliquez sur image:boutton.png[] pour que le plugin ajoute un nouveau ticket à votre projet 148 | MantisBT. 149 | 150 | [NOTE] 151 | =============================== 152 | 153 | Le champs "titre" et "description" sont des champs obligatoires 154 | 155 | =============================== 156 | 157 | 158 | === Suivi des tickets MantisBT 159 | 160 | Lorsque vous avez lié un ticket Glpi à un ticket MantisBT le lien entre les deux ticket apparait 161 | dans le tableau en dessous des boutons. 162 | 163 | image::tableau.png[tableau recensant les tickets MantisBT liés au ticket Glpi] 164 | 165 | Vous retrouverez dans ce tableau : :: 166 | * le titre du ticket MantisBT 167 | * sa catégorie 168 | * son État dans MantisBT 169 | * sa date d'escalade vers MantisBT 170 | * l'utilisateur qui l'a escaladé. 171 | 172 | [NOTE] 173 | =============================== 174 | 175 | image:arrowRight16.png[] La flèche verte vous permet d'ouvrir le ticket MantisBT. 176 | 177 | image:bin16.png[] La poubelle vous permet de supprimer au choix le lien entre le 178 | ticket Glpi et le ticket Mantis OU le ticket Mantis directement (ce qui implique également la suppression du lien) 179 | 180 | =============================== 181 | 182 | === Suppression du lien ou du ticket MantisBT 183 | image::supprimer.png[supprimer un lien ou un ticket MantisBT] 184 | 185 | Lorsque vous cliquez sur la petite poubelle deux choix s'offre à vous : 186 | 187 | * Supprimer le lien entre le ticket Glpi et le ticket Mantis -> le lien n'apparaitra plus dans 188 | le tableau mais le ticket MantisBT existera toujours 189 | * Supprimer le ticket MantisBT -> le ticket MantisBT sera supprimé ainsi que le lien qui l'uni 190 | au ticket Glpi (ne sera plus visible dans le tableau) -------------------------------------------------------------------------------- /mantis.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | MantisBT synchronization 4 | mantis 5 | stable 6 | https://raw.githubusercontent.com/pluginsGLPI/mantis/master/mantis.png 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Toto je seznam funkcí, které jsou v současnosti k dispozici: 16 |             
  • Propojení prostřednictvím webových služeb MantisBT (MantisConnect);
  • 17 |             
  • Vytváření nových MantisBT požadavků z požadavku, problému nebo změny v GLPi;
  • 18 |             
  • Propojování existujících MantisBT požadavků z požadavku, problému nebo změny v GLPi;
  • 19 |             
  • Přenos informací z GLPi objektu do vytvořeného/propojeného MantisBT požadavku;
  • 20 |             
  • Přenos a automatická aktualizace příloh GLPi objektu do MantisBT vytvořeného/propojeného požadavku;
  • 21 |             
  • Automatická aktualizace GLPi objektu (přechod do stavu vyřešeno) když je vyřešen požadavek v MantisBT;
  • 22 |             
  • Správa oprávnění pro zásuvný modul;
  • 23 |             
  • Správa nastavení propojení.
  • 24 |
]]>
25 | Here is a list of current features: 27 |             
  • Connection via webservices of MantisBT (MantisConnect);
  • 28 |             
  • Creation of a new MantisBT issue from a ticket, problem or GLPi change;
  • 29 |             
  • Link an existing MantisBT issue from a ticket, problem or GLPi change;
  • 30 |             
  • Transmission of information from the GLPi object to the created / linked MantisBT issue;
  • 31 |             
  • Transfer and auto-update attachments of GLPi object to the MantisBT created / linked issue;
  • 32 |             
  • Automatic update of GLPi object (transition to the resolved state) when the MantisBT issue is resolved;
  • 33 |             
  • Management rights for the plugin;
  • 34 |             
  • Configuration management of interconnection.
  • 35 |
]]>
36 | Voici une liste de ses fonctionnalités actuelles : 38 |
  • Connexion via les Webservices de MantisBT (MantisConnect);
  • 39 |
  • Création d'une nouvelle issue MantisBT depuis un ticket, un problème ou un changement GLPi;
  • 40 |
  • Liaison d'une issue MantisBT existante depuis un ticket, un problème ou un changement GLPi;
  • 41 |
  • Transmission des informations de l'objet GLPi vers l'issue MantisBT créée/liéée;
  • 42 |
  • Transfert et mise à jour des pièces jointes de l'objet GLPi vers l'issue MantisBT créée/liéée;
  • 43 |
  • Tâche automatique de mise à jour de l'objet GLPi (passage à l'état résolu) lors que l'issue MantisBT est résolue;
  • 44 |
  • Gestion des droits sur le plugin;
  • 45 |
  • Gestion de la configuration de l'interconnexion.
  • 46 |
]]>
47 |
48 |
49 | https://pluginsglpi.github.io/mantis/ 50 | https://github.com/pluginsGLPI/mantis/releases 51 | https://github.com/pluginsGLPI/mantis/issues 52 | https://raw.githubusercontent.com/pluginsGLPI/mantis/master/README.md 53 | 54 | TECLIB' 55 | 56 | 57 | 58 | 4.4.1 59 | ~9.5.0 60 |  https://github.com/pluginsGLPI/mantis/releases/download/4.4.1/glpi-mantis-4.4.1.tar.bz2 61 | 62 | 63 | 4.4.0 64 | ~9.5.0 65 |  https://github.com/pluginsGLPI/mantis/releases/download/4.4.0/glpi-mantis-4.4.0.tar.bz2 66 | 67 | 68 | 4.3.2 69 | 9.4 70 | 71 | 72 | 4.3.1 73 | 9.4 74 | 75 | 76 | 4.3.0 77 | 9.4 78 | 79 | 80 | 4.2.1 81 | 9.3 82 | 83 | 84 | 4.2.0 85 | 9.3 86 | 87 | 88 | 4.1.0 89 | 9.2 90 | 9.3 91 | 92 | 93 | 4.0.1 94 | 9.2 95 | 96 | 97 | 4.0.0 98 | 9.2 99 | 100 | 101 | 3.0.0 102 | 0.85 103 | 0.90 104 | 9.1 105 | 106 | 107 | 1.0 108 | 0.84 109 | 110 | 111 | 112 | cs_CZ 113 | en_GB 114 | fr_FR 115 | 116 | GPLv3 117 | 118 | 119 | 120 | požadavek 121 | problém 122 | změna 123 | synchronizace 124 | mantisbt 125 | 126 | 127 | ticket 128 | problem 129 | change 130 | synchronization 131 | mantisbt 132 | 133 | 134 | ticket 135 | problème 136 | changement 137 | synchronisation 138 | mantisbt 139 | 140 | 141 | 142 | https://raw.githubusercontent.com/pluginsGLPI/mantis/master/screenshots/fr_mantis-configuration.png 143 | https://raw.githubusercontent.com/pluginsGLPI/mantis/master/screenshots/fr_mantis-liste-des-issues-liees.png 144 | https://raw.githubusercontent.com/pluginsGLPI/mantis/master/screenshots/fr_mantis-popup-creation-issue.png 145 | 146 |
147 | -------------------------------------------------------------------------------- /inc/userpref.class.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | class PluginMantisUserpref extends CommonDBTM { 36 | 37 | /** 38 | * Install this class in GLPI 39 | * 40 | * 41 | */ 42 | static function install($migration) { 43 | global $DB; 44 | 45 | if (!$DB->tableExists("glpi_plugin_mantis_userprefs")) { 46 | $query = "CREATE TABLE `glpi_plugin_mantis_userprefs` ( 47 | `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, 48 | `users_id` int(11) NOT NULL , 49 | `followTask` int(11) NOT NULL default '0', 50 | `followFollow` int(11) NOT NULL default '0', 51 | `followAttachment` int(11) NOT NULL default '0', 52 | `followTitle` int(11) NOT NULL default '0', 53 | `followDescription` int(11) NOT NULL default '0', 54 | `followCategorie` int(11) NOT NULL default '0', 55 | `followLinkedItem` int(11) NOT NULL default '0', 56 | UNIQUE KEY (`users_id`))"; 57 | $DB->query($query) or die($DB->error()); 58 | } 59 | } 60 | 61 | /** 62 | * Define tab name 63 | */ 64 | function getTabNameForItem(CommonGLPI $item, $withtemplate = 0) { 65 | if (in_array($item->getType(), [ 66 | 'User', 67 | 'Preference' 68 | ])) { 69 | return __("MantisBT", "mantis"); 70 | } 71 | return ''; 72 | } 73 | 74 | static function getTypeName($nb = 0) { 75 | return __("MantisBT", "mantis"); 76 | } 77 | 78 | static function canCreate() { 79 | return Session::haveRight('ticket', CREATE); 80 | } 81 | 82 | static function canView() { 83 | return Session::haveRight('ticket', READ); 84 | } 85 | 86 | /** 87 | * Define tab content 88 | */ 89 | static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { 90 | if ($item->getType() == 'User') { 91 | $ID = $item->getField('id'); 92 | } else if ($item->getType() == 'Preference') { 93 | $ID = Session::getLoginUserID(); 94 | } 95 | 96 | $self = new self(); 97 | $self->showForm($ID); 98 | 99 | return true; 100 | } 101 | 102 | /** 103 | * Function to show the form of plugin 104 | * 105 | * @param $item 106 | */ 107 | public function showForm($ID, $options = []) { 108 | if (! $this->getFromDB($ID)) { 109 | $this->fields['users_id'] = $ID; 110 | $this->fields['id'] = $ID; 111 | $this->add($this->fields); 112 | $this->updateInDB($this->fields); 113 | } 114 | 115 | $target = $this->getFormURL(); 116 | if (isset($options['target'])) { 117 | $target = $options['target']; 118 | } 119 | 120 | echo "
"; 121 | echo ""; 122 | echo ""; 123 | 124 | $checked = ($this->fields['followAttachment']) ? "checked" : ""; 125 | echo ""; 126 | echo ""; 127 | echo ""; 130 | 131 | $checked = ($this->fields['followFollow']) ? "checked" : ""; 132 | echo ""; 133 | echo ""; 134 | echo ""; 136 | 137 | $checked = ($this->fields['followTask']) ? "checked" : ""; 138 | echo ""; 139 | echo ""; 140 | echo ""; 142 | 143 | $checked = ($this->fields['followTitle']) ? "checked" : ""; 144 | echo ""; 145 | echo ""; 146 | echo ""; 148 | 149 | $checked = ($this->fields['followDescription']) ? "checked" : ""; 150 | echo ""; 151 | echo ""; 152 | echo ""; 154 | 155 | $checked = ($this->fields['followCategorie']) ? "checked" : ""; 156 | echo ""; 157 | echo ""; 158 | echo ""; 160 | 161 | $checked = ($this->fields['followLinkedItem']) ? "checked" : ""; 162 | echo ""; 163 | echo ""; 164 | echo ""; 166 | 167 | echo ""; 168 | echo ""; 169 | echo ""; 170 | echo ""; 171 | 172 | echo "
" . __("Default checkbox status", "mantis") . "
" . __('Document') . "" 128 | . __("Forward document(s)", "mantis") 129 | . "
" . __('Ticket followup') . "" 135 | . __("Forward ticket followup", "mantis") . "
" . __('Ticket tasks') . "" 141 | . __("Forward ticket tasks", "mantis") . "
" . __('Title') . "" 147 | . __("Forward title", "mantis") . "
" . __('Description') . "" 153 | . __("Forward description", "mantis") . "
" . __('Category') . "" 159 | . __("Forward category", "mantis") . "
" . _n('Linked ticket', 'Linked tickets', 2) . "" 165 | . __("Forward linked tickets", "mantis") . "
"; 173 | Html::closeForm(); 174 | } 175 | 176 | /** 177 | * Uninstall Cron Task from BDD 178 | */ 179 | static function uninstall(Migration $migration) { 180 | global $DB; 181 | 182 | $table = getTableForItemType(__CLASS__); 183 | 184 | if ($DB->tableExists($table)) { 185 | $migration->dropTable($table); 186 | $migration->executeMigration(); 187 | } 188 | } 189 | } 190 | -------------------------------------------------------------------------------- /inc/structissuenotedata.class.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | class PluginMantisStructissuenotedata { 36 | 37 | /** 38 | * The id 39 | * Meta information extracted from the WSDL 40 | * - minOccurs : 0 41 | * 42 | * @var integer 43 | */ 44 | public $id; 45 | 46 | /** 47 | * The reporter 48 | * Meta information extracted from the WSDL 49 | * - minOccurs : 0 50 | * 51 | * @var MantisStructAccountData 52 | */ 53 | public $reporter; 54 | 55 | /** 56 | * The text 57 | * Meta information extracted from the WSDL 58 | * - minOccurs : 0 59 | * 60 | * @var string 61 | */ 62 | public $text; 63 | 64 | /** 65 | * The view_state 66 | * Meta information extracted from the WSDL 67 | * - minOccurs : 0 68 | * 69 | * @var MantisStructObjectRef 70 | */ 71 | public $view_state; 72 | 73 | /** 74 | * The date_submitted 75 | * Meta information extracted from the WSDL 76 | * - minOccurs : 0 77 | * 78 | * @var dateTime 79 | */ 80 | public $date_submitted; 81 | 82 | /** 83 | * The last_modified 84 | * Meta information extracted from the WSDL 85 | * - minOccurs : 0 86 | * 87 | * @var dateTime 88 | */ 89 | public $last_modified; 90 | 91 | /** 92 | * The time_tracking 93 | * Meta information extracted from the WSDL 94 | * - minOccurs : 0 95 | * 96 | * @var integer 97 | */ 98 | public $time_tracking; 99 | 100 | /** 101 | * The note_type 102 | * Meta information extracted from the WSDL 103 | * - minOccurs : 0 104 | * 105 | * @var integer 106 | */ 107 | public $note_type; 108 | 109 | /** 110 | * The note_attr 111 | * Meta information extracted from the WSDL 112 | * - minOccurs : 0 113 | * 114 | * @var string 115 | */ 116 | public $note_attr; 117 | 118 | /** 119 | * Constructor method for IssueNoteData 120 | * 121 | * @see parent::__construct() 122 | * @param integer $_id 123 | * @param MantisStructAccountData $_reporter 124 | * @param string $_text 125 | * @param MantisStructObjectRef $_view_state 126 | * @param dateTime $_date_submitted 127 | * @param dateTime $_last_modified 128 | * @param integer $_time_tracking 129 | * @param integer $_note_type 130 | * @param string $_note_attr 131 | * @return MantisStructIssueNoteData 132 | */ 133 | public function __construct() { 134 | } 135 | 136 | /** 137 | * Get id value 138 | * 139 | * @return integer|null 140 | */ 141 | public function getId() { 142 | return $this->id; 143 | } 144 | 145 | /** 146 | * Set id value 147 | * 148 | * @param integer $_id the id 149 | * @return integer 150 | */ 151 | public function setId($_id) { 152 | return ($this->id = $_id); 153 | } 154 | 155 | /** 156 | * Get reporter value 157 | * 158 | * @return MantisStructAccountData|null 159 | */ 160 | public function getReporter() { 161 | return $this->reporter; 162 | } 163 | 164 | /** 165 | * Set reporter value 166 | * 167 | * @param MantisStructAccountData $_reporter the reporter 168 | * @return MantisStructAccountData 169 | */ 170 | public function setReporter($_reporter) { 171 | return ($this->reporter = $_reporter); 172 | } 173 | 174 | /** 175 | * Get text value 176 | * 177 | * @return string|null 178 | */ 179 | public function getText() { 180 | return $this->text; 181 | } 182 | 183 | /** 184 | * Set text value 185 | * 186 | * @param string $_text the text 187 | * @return string 188 | */ 189 | public function setText($_text) { 190 | return ($this->text = $_text); 191 | } 192 | 193 | /** 194 | * Get view_state value 195 | * 196 | * @return MantisStructObjectRef|null 197 | */ 198 | public function getView_state() { 199 | return $this->view_state; 200 | } 201 | 202 | /** 203 | * Set view_state value 204 | * 205 | * @param MantisStructObjectRef $_view_state the view_state 206 | * @return MantisStructObjectRef 207 | */ 208 | public function setView_state($_view_state) { 209 | return ($this->view_state = $_view_state); 210 | } 211 | 212 | /** 213 | * Get date_submitted value 214 | * 215 | * @return dateTime|null 216 | */ 217 | public function getDate_submitted() { 218 | return $this->date_submitted; 219 | } 220 | 221 | /** 222 | * Set date_submitted value 223 | * 224 | * @param dateTime $_date_submitted the date_submitted 225 | * @return dateTime 226 | */ 227 | public function setDate_submitted($_date_submitted) { 228 | return ($this->date_submitted = $_date_submitted); 229 | } 230 | 231 | /** 232 | * Get last_modified value 233 | * 234 | * @return dateTime|null 235 | */ 236 | public function getLast_modified() { 237 | return $this->last_modified; 238 | } 239 | 240 | /** 241 | * Set last_modified value 242 | * 243 | * @param dateTime $_last_modified the last_modified 244 | * @return dateTime 245 | */ 246 | public function setLast_modified($_last_modified) { 247 | return ($this->last_modified = $_last_modified); 248 | } 249 | 250 | /** 251 | * Get time_tracking value 252 | * 253 | * @return integer|null 254 | */ 255 | public function getTime_tracking() { 256 | return $this->time_tracking; 257 | } 258 | 259 | /** 260 | * Set time_tracking value 261 | * 262 | * @param integer $_time_tracking the time_tracking 263 | * @return integer 264 | */ 265 | public function setTime_tracking($_time_tracking) { 266 | return ($this->time_tracking = $_time_tracking); 267 | } 268 | 269 | /** 270 | * Get note_type value 271 | * 272 | * @return integer|null 273 | */ 274 | public function getNote_type() { 275 | return $this->note_type; 276 | } 277 | 278 | /** 279 | * Set note_type value 280 | * 281 | * @param integer $_note_type the note_type 282 | * @return integer 283 | */ 284 | public function setNote_type($_note_type) { 285 | return ($this->note_type = $_note_type); 286 | } 287 | 288 | /** 289 | * Get note_attr value 290 | * 291 | * @return string|null 292 | */ 293 | public function getNote_attr() { 294 | return $this->note_attr; 295 | } 296 | 297 | /** 298 | * Set note_attr value 299 | * 300 | * @param string $_note_attr the note_attr 301 | * @return string 302 | */ 303 | public function setNote_attr($_note_attr) { 304 | return ($this->note_attr = $_note_attr); 305 | } 306 | 307 | /** 308 | * Method returning the class name 309 | * 310 | * @return string __CLASS__ 311 | */ 312 | public function __toString() { 313 | return __CLASS__; 314 | } 315 | } 316 | -------------------------------------------------------------------------------- /inc/project.class.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | class PluginMantisProject { 36 | 37 | /** 38 | * The id 39 | * Meta information extracted from the WSDL 40 | * - minOccurs : 0 41 | * 42 | * @var integer 43 | */ 44 | public $id; 45 | 46 | /** 47 | * The name 48 | * Meta information extracted from the WSDL 49 | * - minOccurs : 0 50 | * 51 | * @var string 52 | */ 53 | public $name; 54 | 55 | /** 56 | * The status 57 | * Meta information extracted from the WSDL 58 | * - minOccurs : 0 59 | * 60 | * @var MantisStructObjectRef 61 | */ 62 | public $status; 63 | 64 | /** 65 | * The enabled 66 | * Meta information extracted from the WSDL 67 | * - minOccurs : 0 68 | * 69 | * @var boolean 70 | */ 71 | public $enabled; 72 | 73 | /** 74 | * The view_state 75 | * Meta information extracted from the WSDL 76 | * - minOccurs : 0 77 | * 78 | * @var MantisStructObjectRef 79 | */ 80 | public $view_state; 81 | 82 | /** 83 | * The access_min 84 | * Meta information extracted from the WSDL 85 | * - minOccurs : 0 86 | * 87 | * @var MantisStructObjectRef 88 | */ 89 | public $access_min; 90 | 91 | /** 92 | * The file_path 93 | * Meta information extracted from the WSDL 94 | * - minOccurs : 0 95 | * 96 | * @var string 97 | */ 98 | public $file_path; 99 | 100 | /** 101 | * The description 102 | * Meta information extracted from the WSDL 103 | * - minOccurs : 0 104 | * 105 | * @var string 106 | */ 107 | public $description; 108 | 109 | /** 110 | * The subprojects 111 | * Meta information extracted from the WSDL 112 | * - minOccurs : 0 113 | * - from schema : var/wsdltophp.com/storage/wsdls/a80caff3c8dd52f94a68432974b9ab45/wsdl.xml 114 | * 115 | * @var Array 116 | */ 117 | public $subprojects; 118 | 119 | /** 120 | * The inherit_global 121 | * Meta information extracted from the WSDL 122 | * - minOccurs : 0 123 | * 124 | * @var boolean 125 | */ 126 | public $inherit_global; 127 | 128 | /** 129 | * Constructor method for ProjectData 130 | * 131 | * @see parent::__construct() 132 | * @param integer $_id 133 | * @param string $_name 134 | * @param MantisStructObjectRef $_status 135 | * @param boolean $_enabled 136 | * @param MantisStructObjectRef $_view_state 137 | * @param MantisStructObjectRef $_access_min 138 | * @param string $_file_path 139 | * @param string $_description 140 | * @param Array $_subprojects 141 | * @param boolean $_inherit_global 142 | * @return MantisStructProjectData 143 | */ 144 | public function __construct() { 145 | } 146 | 147 | /** 148 | * Get id value 149 | * 150 | * @return integer|null 151 | */ 152 | public function getId() { 153 | return $this->id; 154 | } 155 | 156 | /** 157 | * Set id value 158 | * 159 | * @param integer $_id the id 160 | * @return integer 161 | */ 162 | public function setId($_id) { 163 | return ($this->id = $_id); 164 | } 165 | 166 | /** 167 | * Get name value 168 | * 169 | * @return string|null 170 | */ 171 | public function getName() { 172 | return $this->name; 173 | } 174 | 175 | /** 176 | * Set name value 177 | * 178 | * @param string $_name the name 179 | * @return string 180 | */ 181 | public function setName($_name) { 182 | return ($this->name = $_name); 183 | } 184 | 185 | /** 186 | * Get status value 187 | * 188 | * @return MantisStructObjectRef|null 189 | */ 190 | public function getStatus() { 191 | return $this->status; 192 | } 193 | 194 | /** 195 | * Set status value 196 | * 197 | * @param MantisStructObjectRef $_status the status 198 | * @return MantisStructObjectRef 199 | */ 200 | public function setStatus($_status) { 201 | return ($this->status = $_status); 202 | } 203 | 204 | /** 205 | * Get enabled value 206 | * 207 | * @return boolean|null 208 | */ 209 | public function getEnabled() { 210 | return $this->enabled; 211 | } 212 | 213 | /** 214 | * Set enabled value 215 | * 216 | * @param boolean $_enabled the enabled 217 | * @return boolean 218 | */ 219 | public function setEnabled($_enabled) { 220 | return ($this->enabled = $_enabled); 221 | } 222 | 223 | /** 224 | * Get view_state value 225 | * 226 | * @return MantisStructObjectRef|null 227 | */ 228 | public function getView_state() { 229 | return $this->view_state; 230 | } 231 | 232 | /** 233 | * Set view_state value 234 | * 235 | * @param MantisStructObjectRef $_view_state the view_state 236 | * @return MantisStructObjectRef 237 | */ 238 | public function setView_state($_view_state) { 239 | return ($this->view_state = $_view_state); 240 | } 241 | 242 | /** 243 | * Get access_min value 244 | * 245 | * @return MantisStructObjectRef|null 246 | */ 247 | public function getAccess_min() { 248 | return $this->access_min; 249 | } 250 | 251 | /** 252 | * Set access_min value 253 | * 254 | * @param MantisStructObjectRef $_access_min the access_min 255 | * @return MantisStructObjectRef 256 | */ 257 | public function setAccess_min($_access_min) { 258 | return ($this->access_min = $_access_min); 259 | } 260 | 261 | /** 262 | * Get file_path value 263 | * 264 | * @return string|null 265 | */ 266 | public function getFile_path() { 267 | return $this->file_path; 268 | } 269 | 270 | /** 271 | * Set file_path value 272 | * 273 | * @param string $_file_path the file_path 274 | * @return string 275 | */ 276 | public function setFile_path($_file_path) { 277 | return ($this->file_path = $_file_path); 278 | } 279 | 280 | /** 281 | * Get description value 282 | * 283 | * @return string|null 284 | */ 285 | public function getDescription() { 286 | return $this->description; 287 | } 288 | 289 | /** 290 | * Set description value 291 | * 292 | * @param string $_description the description 293 | * @return string 294 | */ 295 | public function setDescription($_description) { 296 | return ($this->description = $_description); 297 | } 298 | 299 | /** 300 | * Get subprojects value 301 | * 302 | * @return Array|null 303 | */ 304 | public function getSubprojects() { 305 | return $this->subprojects; 306 | } 307 | 308 | /** 309 | * Set subprojects value 310 | * 311 | * @param Array $_subprojects the subprojects 312 | * @return Array 313 | */ 314 | public function setSubprojects($_subprojects) { 315 | return ($this->subprojects = $_subprojects); 316 | } 317 | 318 | /** 319 | * Get inherit_global value 320 | * 321 | * @return boolean|null 322 | */ 323 | public function getInherit_global() { 324 | return $this->inherit_global; 325 | } 326 | 327 | /** 328 | * Set inherit_global value 329 | * 330 | * @param boolean $_inherit_global the inherit_global 331 | * @return boolean 332 | */ 333 | public function setInherit_global($_inherit_global) { 334 | return ($this->inherit_global = $_inherit_global); 335 | } 336 | 337 | /** 338 | * Method returning the class name 339 | * 340 | * @return string __CLASS__ 341 | */ 342 | public function __toString() { 343 | return __CLASS__; 344 | } 345 | } 346 | -------------------------------------------------------------------------------- /inc/profile.class.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | /** 36 | * Class PluginMantisProfile to manage the profiles 37 | */ 38 | class PluginMantisProfile extends CommonDBTM { 39 | 40 | // Necessary rights to edit the rights of this plugin 41 | static $rightname = "profile"; 42 | 43 | /** 44 | * @see CommonGLPI::getTabNameForItem() 45 | **/ 46 | function getTabNameForItem(CommonGLPI $item, $withtemplate = 0) { 47 | 48 | if ($item->getType()=='Profile') { 49 | return PluginMantisMantis::getTypeName(); 50 | } 51 | return ''; 52 | } 53 | 54 | /** 55 | * Describe all possible rights for the plugin 56 | * @return array 57 | **/ 58 | static function getAllRights() { 59 | 60 | $rights = [ 61 | ['itemtype' => 'PluginMantisProfile', 62 | 'label' => __('Use the plugin MantisBT', 'mantis'), 63 | 'field' => 'plugin_mantis_use', 64 | 'rights' => [READ => __('Read'), 65 | UPDATE => __('Update')], 66 | 'default' => 3]]; 67 | return $rights; 68 | } 69 | 70 | /** 71 | * addDefaultProfileInfos 72 | * @param $profiles_id 73 | * @param $rights 74 | **/ 75 | static function addDefaultProfileInfos($profiles_id, $rights) { 76 | $profileRight = new ProfileRight(); 77 | foreach ($rights as $right => $value) { 78 | if (!countElementsInTable('glpi_profilerights', 79 | ['profiles_id' => $profiles_id, 'name' => $right])) { 80 | $myright['profiles_id'] = $profiles_id; 81 | $myright['name'] = $right; 82 | $myright['rights'] = $value; 83 | $profileRight->add($myright); 84 | //Add right to the current session 85 | $_SESSION['glpiactiveprofile'][$right] = $value; 86 | } 87 | } 88 | } 89 | 90 | /** 91 | * @see CommonGLPI::displayTabContentForItem() 92 | **/ 93 | static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { 94 | global $CFG_GLPI; 95 | 96 | if ($item->getType()=='Profile') { 97 | $ID = $item->getID(); 98 | $prof = new self(); 99 | //In case there's no right for this profile, create it 100 | foreach (self::getAllRights() as $right) { 101 | self::addDefaultProfileInfos($ID, [$right['field'] => 0]); 102 | } 103 | $prof->showForm($ID); 104 | } 105 | return true; 106 | } 107 | 108 | 109 | /** 110 | * Show profile form 111 | * 112 | * @param $items_id integer id of the profile 113 | * @param $target value url of target 114 | * 115 | * @return nothing 116 | **/ 117 | function showForm($profiles_id = 0, $openform = true, $closeform = true) { 118 | 119 | echo "
"; 120 | if (($canedit = Session::haveRightsOr(self::$rightname, [CREATE, UPDATE, PURGE])) 121 | && $openform) { 122 | $profile = new Profile(); 123 | echo ""; 124 | } 125 | 126 | $profile = new Profile(); 127 | $profile->getFromDB($profiles_id); 128 | 129 | $profile->displayRightsChoiceMatrix($this->getAllRights(), 130 | ['canedit' => $canedit, 131 | 'default_class' => 'tab_bg_2', 132 | 'title' => __('General')]); 133 | 134 | if ($canedit 135 | && $closeform) { 136 | echo "
"; 137 | echo Html::hidden('id', ['value' => $profiles_id]); 138 | echo Html::submit(_sx('button', 'Save'), ['name' => 'update']); 139 | echo "
\n"; 140 | Html::closeForm(); 141 | } 142 | echo "
"; 143 | } 144 | 145 | /** 146 | * Init profiles 147 | * 148 | **/ 149 | static function translateARight($old_right) { 150 | switch ($old_right) { 151 | case '': 152 | return 0; 153 | case 'r' : 154 | return READ; 155 | case 'w': 156 | return UPDATE + READ; 157 | case '0': 158 | case '1': 159 | return $old_right; 160 | 161 | default : 162 | return 0; 163 | } 164 | } 165 | 166 | /** 167 | * Initialize profiles, and migrate it necessary 168 | */ 169 | static function migrateAllProfiles() { 170 | global $DB; 171 | 172 | foreach ($DB->request("SELECT `id` FROM `glpi_profiles`") as $prof) { 173 | self::migrateOneProfile($prof['id']); 174 | } 175 | } 176 | 177 | /** 178 | * @since 0.85 179 | * Migration rights from old system to the new one for one profile 180 | * @param $profiles_id the profile ID 181 | */ 182 | static function migrateOneProfile($profiles_id) { 183 | global $DB; 184 | 185 | $table = "glpi_plugin_mantis_profiles"; 186 | 187 | if (!$DB->tableExists($table)) { 188 | return true; 189 | } 190 | 191 | foreach ($DB->request($table, "`id`='$profiles_id'") as $profile_data) { 192 | $translatedRight = self::translateARight($profile_data["right"]); 193 | ProfileRight::updateProfileRights($profiles_id, ['plugin_mantis_use' => $translatedRight]); 194 | } 195 | } 196 | 197 | /** 198 | * Change active profile to the $ID one. Update glpiactiveprofile session variable. 199 | * 200 | * @param $ID : ID of the new profile 201 | * 202 | * @return Nothing 203 | **/ 204 | static function changeProfile() { 205 | global $DB; 206 | 207 | foreach ($DB->request("SELECT * 208 | FROM `glpi_profilerights` 209 | WHERE `profiles_id`='".$_SESSION['glpiactiveprofile']['id']."' 210 | AND `name` = 'plugin_mantis_use'") as $prof) { 211 | $_SESSION['glpiactiveprofile'][$prof['name']] = $prof['rights']; 212 | } 213 | } 214 | 215 | /** 216 | * Test if old right name exists (mantis:mantis) 217 | * @return bool 218 | */ 219 | static function oldRightNameExists() { 220 | if (countElementsInTable(ProfileRight::getTable(), ['name' => 'mantis:mantis']) > 0) { 221 | return true; 222 | } 223 | return false; 224 | } 225 | 226 | /** 227 | * Update old right name (mantis:mantis to plugin_mantis_use) 228 | * @return nothing 229 | */ 230 | static function updateOldRightName() { 231 | global $DB; 232 | 233 | $query = "UPDATE ".ProfileRight::getTable()." 234 | SET name = 'plugin_mantis_use 235 | WHERE name = 'mantis:mantis'"; 236 | $DB->query($query); 237 | } 238 | 239 | /** 240 | * Install all necessary profiles for the plugin 241 | * 242 | * @return boolean True if success 243 | */ 244 | static function install(Migration $migration) { 245 | global $DB; 246 | 247 | if (self::oldRightNameExists()) { 248 | self::updateOldRightName(); 249 | } 250 | 251 | if ($DB->tableExists("glpi_plugin_mantis_profiles")) { 252 | self::migrateAllProfiles(); 253 | $migration->dropTable("glpi_plugin_mantis_profiles"); 254 | return true; 255 | } 256 | 257 | // Set default rights 258 | foreach (self::getAllRights() as $right) { 259 | self::addDefaultProfileInfos($_SESSION['glpiactiveprofile']['id'], 260 | [$right['field'] => $right['default']]); 261 | } 262 | 263 | } 264 | 265 | /** 266 | * Uninstall previously installed profiles of the plugin 267 | * 268 | * @return boolean True if success 269 | */ 270 | static function uninstall() { 271 | global $DB; 272 | 273 | foreach (self::getAllRights() as $right) { 274 | $query = "DELETE FROM `glpi_profilerights` 275 | WHERE `name` = '".$right['field']."'"; 276 | $DB->query($query); 277 | 278 | if (isset($_SESSION['glpiactiveprofile'][$right['field']])) { 279 | unset($_SESSION['glpiactiveprofile'][$right['field']]); 280 | } 281 | } 282 | } 283 | } 284 | -------------------------------------------------------------------------------- /locales/mantis.pot: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | #, fuzzy 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: PACKAGE VERSION\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 13 | "Last-Translator: FULL NAME \n" 14 | "Language-Team: LANGUAGE \n" 15 | "Language: \n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=CHARSET\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | 20 | #: hook.php:85 21 | msgid "Number of linked MantisBT issues" 22 | msgstr "" 23 | 24 | #: inc/profile.class.php:57 25 | msgid "Use the plugin MantisBT" 26 | msgstr "" 27 | 28 | #: inc/mantisws.class.php:95 29 | #, php-format 30 | msgid "Error to connect to the web service MantisBT => '%1$s'" 31 | msgstr "" 32 | 33 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 34 | #: inc/mantisws.class.php:187 35 | #, php-format 36 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 37 | msgstr "" 38 | 39 | #: inc/mantisws.class.php:204 40 | #, php-format 41 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 42 | msgstr "" 43 | 44 | #: inc/mantisws.class.php:220 45 | #, php-format 46 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 47 | msgstr "" 48 | 49 | #: inc/mantisws.class.php:248 50 | #, php-format 51 | msgid "error while creating note => '%1$s'" 52 | msgstr "" 53 | 54 | #: inc/mantisws.class.php:269 55 | #, php-format 56 | msgid "WARNING: %1$s already exists" 57 | msgstr "" 58 | 59 | #: inc/mantisws.class.php:272 60 | #, php-format 61 | msgid "error while creating attachment => '%1$s'" 62 | msgstr "" 63 | 64 | #: inc/mantisws.class.php:292 65 | #, php-format 66 | msgid "error while getting attachment => '%1$s'" 67 | msgstr "" 68 | 69 | #: inc/mantisws.class.php:308 70 | #, php-format 71 | msgid "Error creating MantisBT ticket '%1$s'" 72 | msgstr "" 73 | 74 | #: inc/mantisws.class.php:325 75 | #, php-format 76 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 77 | msgstr "" 78 | 79 | #: inc/mantisws.class.php:341 80 | #, php-format 81 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 82 | msgstr "" 83 | 84 | #: inc/mantisws.class.php:362 85 | #, php-format 86 | msgid "" 87 | "Error when checking the existence of the project by his name '%1$s' => " 88 | "'%2$s'" 89 | msgstr "" 90 | 91 | #: inc/mantisws.class.php:378 92 | #, php-format 93 | msgid "Error when deleting note '%1$s' => '%2$s'" 94 | msgstr "" 95 | 96 | #: inc/mantisws.class.php:394 97 | #, php-format 98 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 99 | msgstr "" 100 | 101 | #: inc/mantisws.class.php:408 102 | #, php-format 103 | msgid "Error when getting MantisBT states => '%1$s'" 104 | msgstr "" 105 | 106 | #: inc/mantisws.class.php:417 107 | #, php-format 108 | msgid "Error when updating MantisBT => '%1$s'" 109 | msgstr "" 110 | 111 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 112 | msgid "MantisBT" 113 | msgstr "" 114 | 115 | #: inc/mantis.class.php:183 setup.php:91 116 | msgid "MantisBT synchronization" 117 | msgstr "" 118 | 119 | #: inc/mantis.class.php:195 120 | msgid "Starting update attachments." 121 | msgstr "" 122 | 123 | #: inc/mantis.class.php:214 124 | #, php-format 125 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 126 | msgstr "" 127 | 128 | #: inc/mantis.class.php:241 129 | #, php-format 130 | msgid "Can't load GLPi file [%1$s]." 131 | msgstr "" 132 | 133 | #: inc/mantis.class.php:254 134 | #, php-format 135 | msgid "Can't send GLPi file [%1$s] to MantisBD." 136 | msgstr "" 137 | 138 | #: inc/mantis.class.php:262 139 | #, php-format 140 | msgid "GLPi file [%1$s] doesn't exists." 141 | msgstr "" 142 | 143 | #: inc/mantis.class.php:269 144 | #, php-format 145 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 146 | msgstr "" 147 | 148 | #: inc/mantis.class.php:309 149 | #, php-format 150 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 151 | msgstr "" 152 | 153 | #: inc/mantis.class.php:341 154 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 155 | msgstr "" 156 | 157 | #: inc/mantis.class.php:516 158 | msgid "Plugin configuration is not correct (connection error)." 159 | msgstr "" 160 | 161 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 162 | msgid "Link to an existing MantisBT issue" 163 | msgstr "" 164 | 165 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 166 | msgid "Create a new MantisBT issue" 167 | msgstr "" 168 | 169 | #: inc/mantis.class.php:564 170 | msgid "MantisBT actions" 171 | msgstr "" 172 | 173 | #: inc/mantis.class.php:602 174 | msgid "What do you want to do ?" 175 | msgstr "" 176 | 177 | #: inc/mantis.class.php:606 178 | msgid "Only delete link between GLPi object AND MantisBT issue." 179 | msgstr "" 180 | 181 | #: inc/mantis.class.php:612 182 | msgid "Force delete MantisBT issue (and GLPi object link)." 183 | msgstr "" 184 | 185 | #: inc/mantis.class.php:655 186 | msgid "Link to an existing MantisBT issue." 187 | msgstr "" 188 | 189 | #: inc/mantis.class.php:658 190 | msgid "Id of MantisBT issue" 191 | msgstr "" 192 | 193 | #: inc/mantis.class.php:661 194 | msgid "Click to load issue from MantisBT" 195 | msgstr "" 196 | 197 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 198 | msgid "MantisBT field for GLPi fields" 199 | msgstr "" 200 | 201 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 202 | msgid "MantisBT field for the link URL to the GLPi object" 203 | msgstr "" 204 | 205 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 206 | msgid "Attachments" 207 | msgstr "" 208 | 209 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 210 | msgid "Forward attachments" 211 | msgstr "" 212 | 213 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 214 | msgid "Forward ticket followup" 215 | msgstr "" 216 | 217 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 218 | msgid "Forward ticket tasks" 219 | msgstr "" 220 | 221 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 inc/userpref.class.php:142 222 | msgid "Forward title" 223 | msgstr "" 224 | 225 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 inc/userpref.class.php:148 226 | msgid "Forward description" 227 | msgstr "" 228 | 229 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 inc/userpref.class.php:154 230 | msgid "Forward category" 231 | msgstr "" 232 | 233 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 inc/userpref.class.php:160 234 | msgid "Forward linked tickets" 235 | msgstr "" 236 | 237 | #: inc/mantis.class.php:774 238 | msgid "Exact MantisBT project name" 239 | msgstr "" 240 | 241 | #: inc/mantis.class.php:779 242 | msgid "Click to load project from MantisBT" 243 | msgstr "" 244 | 245 | #: inc/mantis.class.php:822 246 | msgid "Steps to reproduce" 247 | msgstr "" 248 | 249 | #: inc/mantis.class.php:838 250 | msgid "Forward followups" 251 | msgstr "" 252 | 253 | #: inc/mantis.class.php:846 254 | msgid "Forward tasks" 255 | msgstr "" 256 | 257 | #: inc/mantis.class.php:877 258 | msgid "Link" 259 | msgstr "" 260 | 261 | #: inc/mantis.class.php:918 262 | msgid "List of linked MantisBT issues" 263 | msgstr "" 264 | 265 | #: inc/mantis.class.php:965 266 | msgid "Error when loading MantisBT issue" 267 | msgstr "" 268 | 269 | #: inc/mantis.class.php:996 270 | msgid "This GLPi object is not linked to MantisBT" 271 | msgstr "" 272 | 273 | #: inc/mantis.class.php:1002 274 | msgid "Escalation to MantisBT is neutralized by GLPi status" 275 | msgstr "" 276 | 277 | #: inc/issue.class.php:113 inc/issue.class.php:419 278 | msgid "Error creating the note, the process was interrupted" 279 | msgstr "" 280 | 281 | #: inc/issue.class.php:208 282 | msgid "Error when updating MantisBT issue" 283 | msgstr "" 284 | 285 | #: inc/issue.class.php:370 inc/issue.class.php:386 286 | msgid "Error: The process was interrupted" 287 | msgstr "" 288 | 289 | #. TRANS: %1$s is the MantisBT project name 290 | #: inc/issue.class.php:502 inc/issue.class.php:503 291 | #, php-format 292 | msgid "Project '%1$s' does not exist." 293 | msgstr "" 294 | 295 | #: inc/issue.class.php:538 inc/issue.class.php:542 296 | #, php-format 297 | msgid "" 298 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 299 | msgstr "" 300 | 301 | #: inc/issue.class.php:552 inc/issue.class.php:556 302 | #, php-format 303 | msgid "" 304 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 305 | msgstr "" 306 | 307 | #: inc/issue.class.php:563 inc/issue.class.php:567 308 | #, php-format 309 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 310 | msgstr "" 311 | 312 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 313 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 314 | #, php-format 315 | msgid "Title = %1$s
" 316 | msgstr "" 317 | 318 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 319 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 320 | #, php-format 321 | msgid "Description = %1$s
" 322 | msgstr "" 323 | 324 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 325 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 326 | #, php-format 327 | msgid "Category = %1$s
" 328 | msgstr "" 329 | 330 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 331 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 332 | #, php-format 333 | msgid "Link to GLPi object = %1$s
" 334 | msgstr "" 335 | 336 | #: inc/issue.class.php:876 337 | #, php-format 338 | msgid "" 339 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content : " 340 | "%5$s
" 341 | msgstr "" 342 | 343 | #: inc/issue.class.php:884 344 | msgid "No follow-up" 345 | msgstr "" 346 | 347 | #: inc/issue.class.php:919 348 | #, php-format 349 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 350 | msgstr "" 351 | 352 | #: inc/issue.class.php:926 353 | msgid "No task" 354 | msgstr "" 355 | 356 | #: inc/config.class.php:41 357 | msgid "Setup - MantisBT" 358 | msgstr "" 359 | 360 | #: inc/config.class.php:77 361 | msgid "MantisBT server base URL" 362 | msgstr "" 363 | 364 | #: inc/config.class.php:85 365 | msgid "Check SSL" 366 | msgstr "" 367 | 368 | #: inc/config.class.php:94 369 | msgid "Use GLPi proxy configuration" 370 | msgstr "" 371 | 372 | #: inc/config.class.php:103 373 | msgid "Wsdl file path" 374 | msgstr "" 375 | 376 | #: inc/config.class.php:111 377 | msgid "MantisBT user login" 378 | msgstr "" 379 | 380 | #: inc/config.class.php:118 381 | msgid "MantisBT user password" 382 | msgstr "" 383 | 384 | #: inc/config.class.php:125 385 | msgid "Allow assignation" 386 | msgstr "" 387 | 388 | #: inc/config.class.php:133 389 | msgid "" 390 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 391 | msgstr "" 392 | 393 | #: inc/config.class.php:144 394 | msgid "Status of GLPi object after escalation to MantisBT" 395 | msgstr "" 396 | 397 | #: inc/config.class.php:155 398 | msgid "Show option 'Delete the MantisBT issue' " 399 | msgstr "" 400 | 401 | #: inc/config.class.php:163 402 | msgid "Attachment type transfered to MantisBT" 403 | msgstr "" 404 | 405 | #: inc/config.class.php:174 406 | msgid "MantisBT field for GLPI fields" 407 | msgstr "" 408 | 409 | #: inc/config.class.php:193 410 | msgid "Close GLPi ticket when MantisBT issue status is" 411 | msgstr "" 412 | 413 | #: inc/config.class.php:202 414 | msgid "Solution type when MantisBT issue is resolved" 415 | msgstr "" 416 | 417 | #: inc/config.class.php:212 418 | msgid "GLPi user who solves ticket ?" 419 | msgstr "" 420 | 421 | #: inc/config.class.php:224 422 | msgid "Test the connection" 423 | msgstr "" 424 | 425 | #: inc/userpref.class.php:117 426 | msgid "Default checkbox status" 427 | msgstr "" 428 | 429 | #: inc/userpref.class.php:123 430 | msgid "Forward document(s)" 431 | msgstr "" 432 | 433 | #: ajax/ajax.php:122 434 | msgid "Documents for related tickets" 435 | msgstr "" 436 | 437 | #: ajax/ajax.php:167 ajax/ajax.php:209 438 | msgid "MantisBT issue does not exist" 439 | msgstr "" 440 | 441 | #: ajax/ajax.php:174 ajax/ajax.php:215 442 | msgid "This GLPi object is already linked to the selected MantisBT issue" 443 | msgstr "" 444 | 445 | #: ajax/ajax.php:178 ajax/ajax.php:220 446 | msgid "This MantisBT issue is closed" 447 | msgstr "" 448 | 449 | #: ajax/ajax.php:300 ajax/ajax.php:318 450 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 451 | msgstr "" 452 | 453 | #: ajax/ajax.php:321 454 | msgid "Error while deleting the MantisBT issue" 455 | msgstr "" 456 | 457 | #: ajax/ajax.php:324 458 | msgid "The MantisBT issue doesn't exists" 459 | msgstr "" 460 | -------------------------------------------------------------------------------- /inc/config.class.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | if (!defined('GLPI_ROOT')) { 32 | die("Sorry. You can't access directly to this file"); 33 | } 34 | 35 | class PluginMantisConfig extends CommonDBTM { 36 | 37 | static $rightname = 'config'; 38 | 39 | /** 40 | * Display name of itemtype 41 | * 42 | * @return value name of this itemtype 43 | **/ 44 | static function getTypeName($nb = 0) { 45 | 46 | return __('Setup - MantisBT', 'mantis'); 47 | } 48 | 49 | /** 50 | * Prepare input data for updating the item 51 | * 52 | * @param $input data used to update the item 53 | * 54 | * @return the modified $input array 55 | **/ 56 | function prepareInputForUpdate($input) { 57 | 58 | if (isset($input["pwd"]) AND !empty($input["pwd"])) { 59 | $input["pwd"] = Toolbox::sodiumEncrypt(stripslashes($input["pwd"])); 60 | } 61 | return $input; 62 | } 63 | 64 | /** 65 | * Print the config form 66 | * 67 | * @param $ID Integer : ID of the item 68 | * @param $options array 69 | * 70 | * @return Nothing (display) 71 | **/ 72 | function showForm($ID, $options = []) { 73 | 74 | global $CFG_GLPI; 75 | 76 | $options['candel'] = false; 77 | 78 | $this->initForm($ID, $options); 79 | $this->showFormHeader($options); 80 | 81 | echo ""; 82 | echo "" . __("MantisBT server base URL", "mantis") . ""; 83 | echo ""; 85 | echo ""; 86 | echo "ex : http(s)://localhost/mantisbt"; 87 | echo ""; 88 | 89 | echo ""; 90 | echo "" . __("Check SSL", "mantis") . ""; 91 | echo ""; 92 | Dropdown::showYesNo('check_ssl', $this->fields['check_ssl']); 93 | echo ""; 94 | echo ""; 95 | echo ""; 96 | 97 | if (!empty($CFG_GLPI['proxy_name'])) { 98 | echo ""; 99 | echo "" . __("Use GLPi proxy configuration", "mantis") . ""; 100 | echo ""; 101 | Dropdown::showYesNo('use_proxy', $this->fields['use_proxy']); 102 | echo ""; 103 | echo ""; 104 | echo ""; 105 | } 106 | 107 | echo ""; 108 | echo "" . __("Wsdl file path", "mantis") . ""; 109 | echo ""; 111 | echo ""; 112 | echo "ex : api/soap/mantisconnect.php?wsdl"; 113 | echo ""; 114 | 115 | echo ""; 116 | echo "" . __("MantisBT user login", "mantis") . ""; 117 | echo ""; 119 | echo ""; 120 | echo ""; 121 | 122 | echo ""; 123 | echo "" . __("MantisBT user password", "mantis") . ""; 124 | echo ""; 126 | echo ""; 127 | echo ""; 128 | 129 | echo ""; 130 | echo "" . __("Allow assignation", "mantis") . ""; 131 | echo ""; 132 | Dropdown::showYesNo("enable_assign", $this->fields["enable_assign"]); 133 | echo ""; 134 | echo ""; 135 | echo ""; 136 | 137 | echo ""; 138 | echo "" . __("Neutralize the escalation to MantisBT when the status of the GLPi object is", "mantis") . ""; 139 | echo ""; 140 | $p['name'] = 'neutralize_escalation'; 141 | $p['showtype'] = 'normal'; 142 | $p['value'] = $this->fields["neutralize_escalation"]; 143 | Ticket::dropdownStatus($p); 144 | echo ""; 145 | echo ""; 146 | echo ""; 147 | 148 | echo ""; 149 | echo "" . __("Status of GLPi object after escalation to MantisBT", "mantis") . ""; 150 | echo ""; 151 | $p['name'] = 'status_after_escalation'; 152 | $p['showtype'] = 'normal'; 153 | $p['value'] = $this->fields["status_after_escalation"]; 154 | Ticket::dropdownStatus($p); 155 | echo ""; 156 | echo ""; 157 | echo ""; 158 | 159 | echo ""; 160 | echo "" . __("Show option 'Delete the MantisBT issue' ", "mantis") . ""; 161 | echo ""; 162 | Dropdown::showYesNo('show_option_delete', $this->fields["show_option_delete"]); 163 | echo ""; 164 | echo ""; 165 | echo ""; 166 | 167 | echo ""; 168 | echo "" . __("Attachment type transfered to MantisBT", "mantis") . ""; 169 | echo ""; 170 | DocumentCategory::dropdown([ 171 | 'value' => $this->fields["doc_categorie"], 172 | 'name' => 'doc_categorie' 173 | ]); 174 | echo ""; 175 | echo ""; 176 | echo ""; 177 | 178 | echo ""; 179 | echo "" . __("MantisBT field for GLPI fields", "mantis") . ""; 180 | echo ""; 181 | DropDown::showFromArray('champsGlpi', PluginMantisIssue::$champsMantis, 182 | ['value' => $this->fields["champsGlpi"]] 183 | ); 184 | echo ""; 185 | echo ""; 186 | echo ""; 187 | 188 | echo ""; 189 | echo "" . __("MantisBT field for the link URL to the GLPi object", "mantis") . ""; 190 | echo ""; 191 | DropDown::showFromArray('champsUrlGlpi', PluginMantisIssue::$champsMantis, 192 | ['value' => $this->fields["champsUrlGlpi"]]); 193 | echo ""; 194 | echo ""; 195 | echo ""; 196 | 197 | echo ""; 198 | echo "" . __("Close GLPi ticket when MantisBT issue status is", "mantis") . ""; 199 | echo ""; 200 | DropDown::showFromArray('etatMantis', PluginMantisIssue::$state_mantis, 201 | ['value' => $this->fields["etatMantis"]]); 202 | echo ""; 203 | echo ""; 204 | echo ""; 205 | 206 | echo ""; 207 | echo "" . __("Solution type when MantisBT issue is resolved", "mantis") . ""; 208 | echo ""; 209 | SolutionType::dropdown(['value' => $this->fields['solutiontypes_id'], 210 | 'rand' => mt_rand(), 211 | 'entity' => -1]); 212 | echo ""; 213 | echo ""; 214 | echo ""; 215 | 216 | echo ""; 217 | echo "" . __("GLPi user who solves ticket ?", "mantis") . ""; 218 | echo ""; 219 | User::dropdown(['name' => 'users_id', 220 | 'value' => $this->fields["users_id"], 221 | 'entity' => -1, 222 | 'right' => 'all']); 223 | echo ""; 224 | echo ""; 225 | echo ""; 226 | 227 | echo ""; 228 | echo ""; 230 | echo "
"; 231 | echo ""; 232 | 233 | $this->showFormButtons($options); 234 | } 235 | 236 | /** 237 | * Install all necessary tables for the plugin 238 | * 239 | * @return boolean True if success 240 | */ 241 | static function install(Migration $migration) { 242 | global $DB; 243 | 244 | $table = getTableForItemType(__CLASS__); 245 | 246 | if (!$DB->tableExists($table)) { 247 | $query = "CREATE TABLE `".$table."` ( 248 | `id` int(11) NOT NULL AUTO_INCREMENT, 249 | `host` varchar(255) NOT NULL default '', 250 | `url` varchar(255) NOT NULL default '', 251 | `login` varchar(255) NOT NULL default '', 252 | `pwd` varchar(255) NOT NULL default '', 253 | `champsUrlGlpi` varchar(100) NOT NULL default '', 254 | `champsGlpi` varchar(100) NOT NULL default '', 255 | `enable_assign` int(3) NOT NULL default 0, 256 | `neutralize_escalation` int(3) NOT NULL default 0, 257 | `status_after_escalation` int(3) NOT NULL default 0, 258 | `show_option_delete` int(3) NOT NULL default 0, 259 | `doc_categorie` int(3) NOT NULL default 0, 260 | `itemType` varchar(255) NOT NULL default '', 261 | `etatMantis` varchar(100) NOT NULL default '', 262 | `solutiontypes_id` int(11) NOT NULL DEFAULT 0, 263 | `users_id` int(11) NOT NULL DEFAULT 0, 264 | `check_ssl` int(1) NOT NULL DEFAULT 0, 265 | `use_proxy` int(1) NOT NULL DEFAULT 0, 266 | `is_password_sodium_encrypted` int(1) NOT NULL DEFAULT 1, 267 | PRIMARY KEY (`id`) 268 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; 269 | $DB->query($query) or die($DB->error()); 270 | 271 | $query = "INSERT INTO `$table` (id) VALUES (1)"; 272 | $DB->query($query) or die ($DB->error()); 273 | } else { 274 | 275 | if ($DB->fieldExists($table, 'version')) { 276 | $migration->dropField($table, 'version'); 277 | } 278 | 279 | if (!$DB->fieldExists($table, 'solutiontypes_id')) { 280 | $migration->addField($table, "solutiontypes_id", "INT( 11 ) NOT NULL DEFAULT 0"); 281 | } 282 | 283 | if (!$DB->fieldExists($table, 'users_id')) { 284 | $migration->addField($table, "users_id", "INT( 11 ) NOT NULL DEFAULT 0"); 285 | } 286 | 287 | if (!$DB->fieldExists($table, 'check_ssl')) { 288 | $migration->addField($table, "check_ssl", "INT( 1 ) NOT NULL DEFAULT 0"); 289 | } 290 | 291 | if (!$DB->fieldExists($table, 'use_proxy')) { 292 | $migration->addField($table, "use_proxy", "INT( 1 ) NOT NULL DEFAULT 0"); 293 | } 294 | 295 | if (!$DB->fieldExists($table, 'is_password_sodium_encrypted')) { 296 | $config = new self(); 297 | $config->getFromDB(1); 298 | if (!empty($config->fields['pwd'])) { 299 | $migration->addPostQuery( 300 | $DB->buildUpdate( 301 | 'glpi_plugin_mantis_configs', 302 | [ 303 | 'pwd' => Toolbox::sodiumEncrypt(Toolbox::decrypt($config->fields['pwd'])) 304 | ], 305 | [ 306 | 'id' => 1, 307 | ] 308 | ) 309 | ); 310 | } 311 | $migration->addField($table, "is_password_sodium_encrypted", "INT(1) NOT NULL DEFAULT 1"); 312 | } 313 | } 314 | 315 | $migration->executeMigration(); 316 | } 317 | 318 | /** 319 | * Uninstall previously installed table of the plugin 320 | * 321 | * @return boolean True if success 322 | */ 323 | static function uninstall(Migration $migration) { 324 | global $DB; 325 | 326 | $table = getTableForItemType(__CLASS__); 327 | 328 | if ($DB->tableExists($table)) { 329 | $migration->dropTable($table); 330 | $migration->executeMigration(); 331 | } 332 | } 333 | 334 | 335 | } -------------------------------------------------------------------------------- /ajax/ajax.php: -------------------------------------------------------------------------------- 1 | . 24 | * ------------------------------------------------------------------------- 25 | * @copyright Copyright (C) 2014-2022 by Mantis plugin team. 26 | * @license AGPLv3 https://www.gnu.org/licenses/agpl-3.0.html 27 | * @link https://github.com/pluginsGLPI/mantis 28 | * ------------------------------------------------------------------------- 29 | */ 30 | 31 | include ('../../../inc/includes.php'); 32 | 33 | if (isset($_POST['action'])) { 34 | 35 | global $CFG_GLPI; 36 | 37 | $output = ""; 38 | 39 | $web_dir = Plugin::getWebDir('mantis'); 40 | 41 | switch ($_POST['action']) { 42 | 43 | // TEST CONNECTION TO MANTIS 44 | case 'testConnexionMantisWS' : 45 | error_reporting(0); 46 | $ws = new PluginMantisMantisws(); 47 | try { 48 | $res = $ws->testConnectionWS($_POST['host'], 49 | $_POST['url'], 50 | $_POST['login'], 51 | $_POST['pwd']); 52 | if ($res) { 53 | echo ""; 54 | } else { 55 | echo "Access denied"; 56 | } 57 | } catch (Exception $e) { 58 | echo "Error IP or Path"; 59 | } 60 | break; 61 | 62 | // FIND ISSUE BY ID 63 | case 'findIssueById' : 64 | $ws = new PluginMantisMantisws(); 65 | $ws->initializeConnection(); 66 | $res = $ws->existIssueWithId($_POST['id']); 67 | if ($res) { 68 | echo ""; 69 | } else { 70 | echo ""; 71 | } 72 | break; 73 | 74 | // FIND PROJECT BY NAME 75 | case 'findProjectByName' : 76 | $ws = new PluginMantisMantisws(); 77 | $ws->initializeConnection(); 78 | $res = $ws->existProjectWithName($_POST['name']); 79 | if ($res) { 80 | echo ""; 81 | } else { 82 | echo ""; 83 | } 84 | break; 85 | 86 | // GET MANTIS STATE 87 | case 'getStateMantis' : 88 | 89 | $ws = new PluginMantisMantisws(); 90 | $ws->getConnexion($_POST['host'], 91 | $_POST['url'], 92 | $_POST['login'], 93 | Toolbox::sodiumDecrypt($_POST['pwd'])); 94 | $result = $ws->getStateMantis(); 95 | 96 | if (! $result) { 97 | echo false; 98 | } else { 99 | $states = ""; 100 | $i = 0; 101 | foreach ($result as &$state) { 102 | if ($i == 0) { 103 | $states .= $state->name; 104 | } else { 105 | $states .= "," . $state->name; 106 | } 107 | $i ++; 108 | } 109 | echo $states; 110 | } 111 | break; 112 | 113 | // GET ATTACHMENT SENDING 114 | case 'getTicketAttachment' : 115 | 116 | $id_ticket = $_POST['idTicket']; 117 | $itemType = $_POST['itemType']; 118 | 119 | $ticket = new $itemType(); 120 | $ticket->getFromDB($id_ticket); 121 | 122 | $output .= GetOutputForTicket($ticket, $itemType); 123 | 124 | if ($itemType == 'Ticket') { 125 | $tickets = Ticket_Ticket::getLinkedTicketsTo($id_ticket); 126 | if (count($tickets)) { 127 | $output .= "
" . __('Documents for related tickets', 'mantis') . "
"; 128 | foreach ($tickets as $link_ticket) { 129 | $ticketLink = new Ticket(); 130 | $ticketLink->getFromDB($link_ticket['tickets_id']); 131 | $output .= GetOutputForTicket($ticketLink, $itemType); 132 | } 133 | } 134 | } 135 | echo $output; 136 | break; 137 | 138 | // GET CATEGORIE FROM PROJECT MANTIS 139 | case 'getCategoryFromProjectName' : 140 | $ws = new PluginMantisMantisws(); 141 | $ws->initializeConnection(); 142 | $result = $ws->getCategoryFromProjectName($_POST['name']); 143 | if (! $result) { 144 | echo false; 145 | } else { 146 | echo json_encode($result); 147 | } 148 | break; 149 | 150 | // GET ACTOR FROM PROJECT 151 | case 'getActorByProjectname' : 152 | $ws = new PluginMantisMantisws(); 153 | $ws->initializeConnection(); 154 | $result = $ws->getActorFromProjectName($_POST['name']); 155 | if (! $result) { 156 | echo false; 157 | } else { 158 | echo json_encode($result); 159 | } 160 | break; 161 | 162 | case 'getProjectName' : 163 | 164 | $idItem = $_POST['idTicket']; 165 | $id_mantis_issue = $_POST['idMantis']; 166 | $itemType = $_POST['itemType']; 167 | 168 | $ws = new PluginMantisMantisws(); 169 | $ws->initializeConnection(); 170 | 171 | if (! $ws->existIssueWithId($id_mantis_issue)) { 172 | echo "ERROR :" . __("MantisBT issue does not exist", "mantis"); 173 | } else { 174 | 175 | $mantis = new PluginMantisMantis(); 176 | // verify if a link already exists 177 | if ($mantis->IfExistLink($idItem, $id_mantis_issue, $itemType)) { 178 | echo "" 179 | ."ERROR :". __("This GLPi object is already linked to the selected MantisBT issue", "mantis"); 180 | } else { 181 | $result = $ws->getIssueById($id_mantis_issue); 182 | if ($result->status->id == 90) { 183 | echo "ERROR :". __('This MantisBT issue is closed', 'mantis'); 184 | } else { 185 | echo $result->project->name; 186 | } 187 | } 188 | } 189 | break; 190 | 191 | // GET CUSTOM FIELD FROM PROJECT 192 | case 'getCustomFieldByProjectname' : 193 | $ws = new PluginMantisMantisws(); 194 | $ws->initializeConnection(); 195 | $result = $ws->getCustomFieldFromProjectName($_POST['name']); 196 | if (! $result) { 197 | echo false; 198 | } else { 199 | echo json_encode($result); 200 | } 201 | break; 202 | 203 | case 'LinkIssueGlpiToIssueMantis' : 204 | 205 | $id_ticket = $_POST['items_id']; 206 | $id_mantis_issue = $_POST['idMantis']; 207 | $itemType = $_POST['itemtype']; 208 | 209 | $ws = new PluginMantisMantisws(); 210 | $ws->initializeConnection(); 211 | 212 | // verify that the id of the mantis ticket already exists 213 | if (! $ws->existIssueWithId($id_mantis_issue)) { 214 | echo __("MantisBT issue does not exist", "mantis"); 215 | } else { 216 | $mantis = new PluginMantisMantis(); 217 | // on verifie si un lien est deja creé 218 | if ($mantis->IfExistLink($id_ticket, $id_mantis_issue, $itemType)) { 219 | echo "" 220 | . __("This GLPi object is already linked to the selected MantisBT issue", "mantis"); 221 | } else { 222 | 223 | $result = $ws->getIssueById($id_mantis_issue); 224 | if ($result->status->id == 90) { 225 | echo __('This MantisBT issue is closed', 'mantis'); 226 | } else { 227 | 228 | $issue = new PluginMantisIssue(); 229 | $res = $issue->addInfoToIssueMantis($id_ticket, $id_mantis_issue); 230 | 231 | if ($res) { 232 | $mantis->add($_POST); 233 | 234 | $id_ticket = $_POST['items_id']; 235 | $ticket = new Ticket(); 236 | $ticket->getFromDB($id_ticket); 237 | 238 | $conf = new PluginMantisConfig(); 239 | $conf->getFromDB(1); 240 | 241 | if ($_POST['linkedTicket'] == 'true') { 242 | 243 | $tickets = Ticket_Ticket::getLinkedTicketsTo($id_ticket); 244 | 245 | foreach ($tickets as $link_ticket) { 246 | $t = new ticket(); 247 | $t->getFromDB($link_ticket['tickets_id']); 248 | 249 | $mantis1 = new PluginMantisMantis(); 250 | $post['items_id'] = $t->fields['id']; 251 | $post['idMantis'] = $id_mantis_issue; 252 | $post['dateEscalade'] = $_POST['dateEscalade']; 253 | $post['itemtype'] = $_POST['itemType']; 254 | $post['user'] = $_POST['user']; 255 | 256 | $id_mantis[] = $mantis1->add($post); 257 | unset($post); 258 | } 259 | } 260 | 261 | if ($conf->fields['status_after_escalation'] != 0) { 262 | $res = $ticket->update([ 263 | 'id' => $ticket->fields['id'], 264 | 'status' => $conf->fields['status_after_escalation'] 265 | ]); 266 | 267 | if ($_POST['linkedTicket'] == 'true' && $_POST['itemType'] == 'Ticket') { 268 | $tickets = Ticket_Ticket::getLinkedTicketsTo($id_ticket); 269 | 270 | foreach ($tickets as $link_ticket) { 271 | $t = new ticket(); 272 | $t->getFromDB($link_ticket['tickets_id']); 273 | $t->update([ 274 | 'id' => $t->fields['id'], 275 | 'status' => $conf->fields['status_after_escalation'] 276 | ]); 277 | } 278 | } 279 | } 280 | echo true; 281 | } else { 282 | echo $res; 283 | } 284 | } 285 | } 286 | } 287 | break; 288 | 289 | case 'LinkIssueGlpiToProjectMantis' : 290 | $issue = new PluginMantisIssue(); 291 | echo $issue->linkisuetoProjectMantis(); 292 | break; 293 | 294 | case 'deleteLinkMantis' : 295 | 296 | $mantis = new PluginMantisMantis(); 297 | $ws = new PluginMantisMantisws(); 298 | $ws->initializeConnection(); 299 | 300 | $res = $mantis->delete($_POST); 301 | 302 | if ($res) { 303 | echo true; 304 | } else { 305 | echo __("Error while deleting the link between GLPi object and MantisBT issue", "mantis"); 306 | } 307 | break; 308 | 309 | case 'deleteIssueMantisAndLink' : 310 | 311 | $mantis = new PluginMantisMantis(); 312 | $ws = new PluginMantisMantisws(); 313 | $ws->initializeConnection(); 314 | 315 | if ($ws->existIssueWithId($_POST['idMantis'])) { 316 | 317 | if ($del = $ws->deleteIssue($_POST['idMantis'])) { 318 | 319 | $res = $mantis->delete($_POST); 320 | if ($res) { 321 | echo true; 322 | } else { 323 | echo __("Error while deleting the link between GLPi object and MantisBT issue", "mantis"); 324 | } 325 | } else { 326 | echo __("Error while deleting the MantisBT issue", "mantis"); 327 | } 328 | } else { 329 | echo __("The MantisBT issue doesn't exists", "mantis"); 330 | } 331 | break; 332 | 333 | default : 334 | echo 0; 335 | } 336 | } else { 337 | echo 0; 338 | } 339 | 340 | function GetOutputForTicket($ticket, $itemType) { 341 | global $DB; 342 | $conf = new PluginMantisConfig(); 343 | $conf->getFromDB(1); 344 | 345 | if ($conf->fields['doc_categorie'] == 0) { 346 | $res = $DB->query("SELECT `glpi_documents_items`.* 347 | FROM `glpi_documents_items` WHERE `glpi_documents_items`.`itemtype` = '" . $itemType . "' 348 | AND `glpi_documents_items`.`items_id` = '" . Toolbox::cleanInteger($ticket->fields['id']) . "'"); 349 | } else { 350 | $res = $DB->query("SELECT `glpi_documents_items`.* 351 | FROM `glpi_documents_items` ,`glpi_documents` WHERE `glpi_documents`.`id` =`glpi_documents_items`.`documents_id` and `glpi_documents`.`documentcategories_id` = '" . Toolbox::cleanInteger($conf->fields['doc_categorie']) . "' and`glpi_documents_items`.`itemtype` = '" . $itemType . "' 352 | AND `glpi_documents_items`.`items_id` = '" . Toolbox::cleanInteger($ticket->fields['id']) . "'"); 353 | } 354 | 355 | $output = ""; 356 | if ($res->num_rows > 0) { 357 | $output .= "
" . $itemType . " -> " . $ticket->fields['id'] . "
"; 358 | while ($row = $res->fetch_assoc()) { 359 | $doc = new Document(); 360 | $doc->getFromDB($row["documents_id"]); 361 | $output .= "
" . $doc->getDownloadLink('', strlen($doc->fields['filename'])) . "
"; 362 | } 363 | $output .= "
"; 364 | } else { 365 | $output .= "0 document for ticket " . $ticket->fields['id']; 366 | } 367 | 368 | return $output; 369 | } 370 | 371 | -------------------------------------------------------------------------------- /locales/en_GB.po: -------------------------------------------------------------------------------- 1 | # English translations for PACKAGE package. 2 | # Copyright (C) 2020 THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # Automatically generated, 2020. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: PACKAGE VERSION\n" 9 | "Report-Msgid-Bugs-To: \n" 10 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 11 | "PO-Revision-Date: 2020-07-03 19:21+0000\n" 12 | "Last-Translator: Automatically generated\n" 13 | "Language-Team: none\n" 14 | "Language: en_GB\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=ASCII\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | 20 | #: hook.php:85 21 | msgid "Number of linked MantisBT issues" 22 | msgstr "Number of linked MantisBT issues" 23 | 24 | #: inc/profile.class.php:57 25 | msgid "Use the plugin MantisBT" 26 | msgstr "Use the plugin MantisBT" 27 | 28 | #: inc/mantisws.class.php:95 29 | #, php-format 30 | msgid "Error to connect to the web service MantisBT => '%1$s'" 31 | msgstr "Error to connect to the web service MantisBT => '%1$s'" 32 | 33 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 34 | #: inc/mantisws.class.php:187 35 | #, php-format 36 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 37 | msgstr "Error retrieving user of project id '%1$s' => '%2$s'" 38 | 39 | #: inc/mantisws.class.php:204 40 | #, php-format 41 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 42 | msgstr "Error retrieving category from the project id '%1$s' => '%2$s'" 43 | 44 | #: inc/mantisws.class.php:220 45 | #, php-format 46 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 47 | msgstr "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 48 | 49 | #: inc/mantisws.class.php:248 50 | #, php-format 51 | msgid "error while creating note => '%1$s'" 52 | msgstr "error while creating note => '%1$s'" 53 | 54 | #: inc/mantisws.class.php:269 55 | #, php-format 56 | msgid "WARNING: %1$s already exists" 57 | msgstr "WARNING: %1$s already exists" 58 | 59 | #: inc/mantisws.class.php:272 60 | #, php-format 61 | msgid "error while creating attachment => '%1$s'" 62 | msgstr "error while creating attachment => '%1$s'" 63 | 64 | #: inc/mantisws.class.php:292 65 | #, php-format 66 | msgid "error while getting attachment => '%1$s'" 67 | msgstr "error while getting attachment => '%1$s'" 68 | 69 | #: inc/mantisws.class.php:308 70 | #, php-format 71 | msgid "Error creating MantisBT ticket '%1$s'" 72 | msgstr "Error creating MantisBT ticket '%1$s'" 73 | 74 | #: inc/mantisws.class.php:325 75 | #, php-format 76 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 77 | msgstr "Error searching MantisBT ticket '%1$s' => '%2$s'" 78 | 79 | #: inc/mantisws.class.php:341 80 | #, php-format 81 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 82 | msgstr "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 83 | 84 | #: inc/mantisws.class.php:362 85 | #, php-format 86 | msgid "" 87 | "Error when checking the existence of the project by his name '%1$s' => " 88 | "'%2$s'" 89 | msgstr "" 90 | "Error when checking the existence of the project by his name '%1$s' => " 91 | "'%2$s'" 92 | 93 | #: inc/mantisws.class.php:378 94 | #, php-format 95 | msgid "Error when deleting note '%1$s' => '%2$s'" 96 | msgstr "Error when deleting note '%1$s' => '%2$s'" 97 | 98 | #: inc/mantisws.class.php:394 99 | #, php-format 100 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 101 | msgstr "Error when deleting attachment '%1$s' => '%2$s'" 102 | 103 | #: inc/mantisws.class.php:408 104 | #, php-format 105 | msgid "Error when getting MantisBT states => '%1$s'" 106 | msgstr "Error when getting MantisBT states => '%1$s'" 107 | 108 | #: inc/mantisws.class.php:417 109 | #, php-format 110 | msgid "Error when updating MantisBT => '%1$s'" 111 | msgstr "Error when updating MantisBT => '%1$s'" 112 | 113 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 114 | msgid "MantisBT" 115 | msgstr "MantisBT" 116 | 117 | #: inc/mantis.class.php:183 setup.php:91 118 | msgid "MantisBT synchronization" 119 | msgstr "MantisBT synchronization" 120 | 121 | #: inc/mantis.class.php:195 122 | msgid "Starting update attachments." 123 | msgstr "Starting update attachments." 124 | 125 | #: inc/mantis.class.php:214 126 | #, php-format 127 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 128 | msgstr "GLPi object [%1$s:%2$s] is solved or closed." 129 | 130 | #: inc/mantis.class.php:241 131 | #, php-format 132 | msgid "Can't load GLPi file [%1$s]." 133 | msgstr "Can't load GLPi file [%1$s]." 134 | 135 | #: inc/mantis.class.php:254 136 | #, php-format 137 | msgid "Can't send GLPi file [%1$s] to MantisBD." 138 | msgstr "Can't send GLPi file [%1$s] to MantisBD." 139 | 140 | #: inc/mantis.class.php:262 141 | #, php-format 142 | msgid "GLPi file [%1$s] doesn't exists." 143 | msgstr "GLPi file [%1$s] doesn't exists." 144 | 145 | #: inc/mantis.class.php:269 146 | #, php-format 147 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 148 | msgstr "GLPi file [%1$s] already exists in MantisBT issue." 149 | 150 | #: inc/mantis.class.php:309 151 | #, php-format 152 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 153 | msgstr "GLPi object [%1$s:%2$s] is already solved or closed." 154 | 155 | #: inc/mantis.class.php:341 156 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 157 | msgstr "Plugin configuration is not correct (MantisBT status is missing)" 158 | 159 | #: inc/mantis.class.php:516 160 | msgid "Plugin configuration is not correct (connection error)." 161 | msgstr "Plugin configuration is not correct (connection error)." 162 | 163 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 164 | msgid "Link to an existing MantisBT issue" 165 | msgstr "Link to an existing MantisBT issue" 166 | 167 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 168 | msgid "Create a new MantisBT issue" 169 | msgstr "Create a new MantisBT issue" 170 | 171 | #: inc/mantis.class.php:564 172 | msgid "MantisBT actions" 173 | msgstr "MantisBT actions" 174 | 175 | #: inc/mantis.class.php:602 176 | msgid "What do you want to do ?" 177 | msgstr "What do you want to do ?" 178 | 179 | #: inc/mantis.class.php:606 180 | msgid "Only delete link between GLPi object AND MantisBT issue." 181 | msgstr "Only delete link between GLPi object AND MantisBT issue." 182 | 183 | #: inc/mantis.class.php:612 184 | msgid "Force delete MantisBT issue (and GLPi object link)." 185 | msgstr "Force delete MantisBT issue (and GLPi object link)." 186 | 187 | #: inc/mantis.class.php:655 188 | msgid "Link to an existing MantisBT issue." 189 | msgstr "Link to an existing MantisBT issue." 190 | 191 | #: inc/mantis.class.php:658 192 | msgid "Id of MantisBT issue" 193 | msgstr "Id of MantisBT issue" 194 | 195 | #: inc/mantis.class.php:661 196 | msgid "Click to load issue from MantisBT" 197 | msgstr "Click to load issue from MantisBT" 198 | 199 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 200 | msgid "MantisBT field for GLPi fields" 201 | msgstr "MantisBT field for GLPi fields" 202 | 203 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 204 | msgid "MantisBT field for the link URL to the GLPi object" 205 | msgstr "MantisBT field for the link URL to the GLPi object" 206 | 207 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 208 | msgid "Attachments" 209 | msgstr "Attachments" 210 | 211 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 212 | msgid "Forward attachments" 213 | msgstr "Forward attachments" 214 | 215 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 216 | msgid "Forward ticket followup" 217 | msgstr "Forward ticket followup" 218 | 219 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 220 | msgid "Forward ticket tasks" 221 | msgstr "Forward ticket tasks" 222 | 223 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 inc/userpref.class.php:142 224 | msgid "Forward title" 225 | msgstr "Forward title" 226 | 227 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 inc/userpref.class.php:148 228 | msgid "Forward description" 229 | msgstr "Forward description" 230 | 231 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 inc/userpref.class.php:154 232 | msgid "Forward category" 233 | msgstr "Forward category" 234 | 235 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 inc/userpref.class.php:160 236 | msgid "Forward linked tickets" 237 | msgstr "Forward linked tickets" 238 | 239 | #: inc/mantis.class.php:774 240 | msgid "Exact MantisBT project name" 241 | msgstr "Exact MantisBT project name" 242 | 243 | #: inc/mantis.class.php:779 244 | msgid "Click to load project from MantisBT" 245 | msgstr "Click to load project from MantisBT" 246 | 247 | #: inc/mantis.class.php:822 248 | msgid "Steps to reproduce" 249 | msgstr "Steps to reproduce" 250 | 251 | #: inc/mantis.class.php:838 252 | msgid "Forward followups" 253 | msgstr "Forward followups" 254 | 255 | #: inc/mantis.class.php:846 256 | msgid "Forward tasks" 257 | msgstr "Forward tasks" 258 | 259 | #: inc/mantis.class.php:877 260 | msgid "Link" 261 | msgstr "Link" 262 | 263 | #: inc/mantis.class.php:918 264 | msgid "List of linked MantisBT issues" 265 | msgstr "List of linked MantisBT issues" 266 | 267 | #: inc/mantis.class.php:965 268 | msgid "Error when loading MantisBT issue" 269 | msgstr "Error when loading MantisBT issue" 270 | 271 | #: inc/mantis.class.php:996 272 | msgid "This GLPi object is not linked to MantisBT" 273 | msgstr "This GLPi object is not linked to MantisBT" 274 | 275 | #: inc/mantis.class.php:1002 276 | msgid "Escalation to MantisBT is neutralized by GLPi status" 277 | msgstr "Escalation to MantisBT is neutralized by GLPi status" 278 | 279 | #: inc/issue.class.php:113 inc/issue.class.php:419 280 | msgid "Error creating the note, the process was interrupted" 281 | msgstr "Error creating the note, the process was interrupted" 282 | 283 | #: inc/issue.class.php:208 284 | msgid "Error when updating MantisBT issue" 285 | msgstr "Error when updating MantisBT issue" 286 | 287 | #: inc/issue.class.php:370 inc/issue.class.php:386 288 | msgid "Error: The process was interrupted" 289 | msgstr "Error: The process was interrupted" 290 | 291 | #. TRANS: %1$s is the MantisBT project name 292 | #: inc/issue.class.php:502 inc/issue.class.php:503 293 | #, php-format 294 | msgid "Project '%1$s' does not exist." 295 | msgstr "Project '%1$s' does not exist." 296 | 297 | #: inc/issue.class.php:538 inc/issue.class.php:542 298 | #, php-format 299 | msgid "" 300 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 301 | msgstr "" 302 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 303 | 304 | #: inc/issue.class.php:552 inc/issue.class.php:556 305 | #, php-format 306 | msgid "" 307 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 308 | msgstr "" 309 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 310 | 311 | #: inc/issue.class.php:563 inc/issue.class.php:567 312 | #, php-format 313 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 314 | msgstr "Attachment [%1$s] doesn't exists, the process was interrupted." 315 | 316 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 317 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 318 | #, php-format 319 | msgid "Title = %1$s
" 320 | msgstr "Title = %1$s
" 321 | 322 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 323 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 324 | #, php-format 325 | msgid "Description = %1$s
" 326 | msgstr "Description = %1$s
" 327 | 328 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 329 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 330 | #, php-format 331 | msgid "Category = %1$s
" 332 | msgstr "Category = %1$s
" 333 | 334 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 335 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 336 | #, php-format 337 | msgid "Link to GLPi object = %1$s
" 338 | msgstr "Link to GLPi object = %1$s
" 339 | 340 | #: inc/issue.class.php:876 341 | #, php-format 342 | msgid "" 343 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content : " 344 | "%5$s
" 345 | msgstr "" 346 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content : " 347 | "%5$s
" 348 | 349 | #: inc/issue.class.php:884 350 | msgid "No follow-up" 351 | msgstr "No follow-up" 352 | 353 | #: inc/issue.class.php:919 354 | #, php-format 355 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 356 | msgstr "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 357 | 358 | #: inc/issue.class.php:926 359 | msgid "No task" 360 | msgstr "No task" 361 | 362 | #: inc/config.class.php:41 363 | msgid "Setup - MantisBT" 364 | msgstr "Setup - MantisBT" 365 | 366 | #: inc/config.class.php:77 367 | msgid "MantisBT server base URL" 368 | msgstr "MantisBT server base URL" 369 | 370 | #: inc/config.class.php:85 371 | msgid "Check SSL" 372 | msgstr "Check SSL" 373 | 374 | #: inc/config.class.php:94 375 | msgid "Use GLPi proxy configuration" 376 | msgstr "Use GLPi proxy configuration" 377 | 378 | #: inc/config.class.php:103 379 | msgid "Wsdl file path" 380 | msgstr "Wsdl file path" 381 | 382 | #: inc/config.class.php:111 383 | msgid "MantisBT user login" 384 | msgstr "MantisBT user login" 385 | 386 | #: inc/config.class.php:118 387 | msgid "MantisBT user password" 388 | msgstr "MantisBT user password" 389 | 390 | #: inc/config.class.php:125 391 | msgid "Allow assignation" 392 | msgstr "Allow assignation" 393 | 394 | #: inc/config.class.php:133 395 | msgid "" 396 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 397 | msgstr "" 398 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 399 | 400 | #: inc/config.class.php:144 401 | msgid "Status of GLPi object after escalation to MantisBT" 402 | msgstr "Status of GLPi object after escalation to MantisBT" 403 | 404 | #: inc/config.class.php:155 405 | msgid "Show option 'Delete the MantisBT issue' " 406 | msgstr "Show option 'Delete the MantisBT issue' " 407 | 408 | #: inc/config.class.php:163 409 | msgid "Attachment type transfered to MantisBT" 410 | msgstr "Attachment type transfered to MantisBT" 411 | 412 | #: inc/config.class.php:174 413 | msgid "MantisBT field for GLPI fields" 414 | msgstr "MantisBT field for GLPI fields" 415 | 416 | #: inc/config.class.php:193 417 | msgid "Close GLPi ticket when MantisBT issue status is" 418 | msgstr "Close GLPi ticket when MantisBT issue status is" 419 | 420 | #: inc/config.class.php:202 421 | msgid "Solution type when MantisBT issue is resolved" 422 | msgstr "Solution type when MantisBT issue is resolved" 423 | 424 | #: inc/config.class.php:212 425 | msgid "GLPi user who solves ticket ?" 426 | msgstr "GLPi user who solves ticket ?" 427 | 428 | #: inc/config.class.php:224 429 | msgid "Test the connection" 430 | msgstr "Test the connection" 431 | 432 | #: inc/userpref.class.php:117 433 | msgid "Default checkbox status" 434 | msgstr "Default checkbox status" 435 | 436 | #: inc/userpref.class.php:123 437 | msgid "Forward document(s)" 438 | msgstr "Forward document(s)" 439 | 440 | #: ajax/ajax.php:122 441 | msgid "Documents for related tickets" 442 | msgstr "Documents for related tickets" 443 | 444 | #: ajax/ajax.php:167 ajax/ajax.php:209 445 | msgid "MantisBT issue does not exist" 446 | msgstr "MantisBT issue does not exist" 447 | 448 | #: ajax/ajax.php:174 ajax/ajax.php:215 449 | msgid "This GLPi object is already linked to the selected MantisBT issue" 450 | msgstr "This GLPi object is already linked to the selected MantisBT issue" 451 | 452 | #: ajax/ajax.php:178 ajax/ajax.php:220 453 | msgid "This MantisBT issue is closed" 454 | msgstr "This MantisBT issue is closed" 455 | 456 | #: ajax/ajax.php:300 ajax/ajax.php:318 457 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 458 | msgstr "Error while deleting the link between GLPi object and MantisBT issue" 459 | 460 | #: ajax/ajax.php:321 461 | msgid "Error while deleting the MantisBT issue" 462 | msgstr "Error while deleting the MantisBT issue" 463 | 464 | #: ajax/ajax.php:324 465 | msgid "The MantisBT issue doesn't exists" 466 | msgstr "The MantisBT issue doesn't exists" 467 | -------------------------------------------------------------------------------- /locales/hr_HR.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | # Translators: 7 | # milotype , 2020 8 | # 9 | #, fuzzy 10 | msgid "" 11 | msgstr "" 12 | "Project-Id-Version: PACKAGE VERSION\n" 13 | "Report-Msgid-Bugs-To: \n" 14 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 15 | "PO-Revision-Date: 2016-10-05 17:06+0000\n" 16 | "Last-Translator: milotype , 2020\n" 17 | "Language-Team: Croatian (Croatia) (https://www.transifex.com/teclib/teams/28042/hr_HR/)\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Language: hr_HR\n" 22 | "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 23 | 24 | #: hook.php:85 25 | msgid "Number of linked MantisBT issues" 26 | msgstr "Broj povezanih MantisBT problema" 27 | 28 | #: inc/profile.class.php:57 29 | msgid "Use the plugin MantisBT" 30 | msgstr "Koristi dodatak „MantisBT”" 31 | 32 | #: inc/mantisws.class.php:95 33 | #, php-format 34 | msgid "Error to connect to the web service MantisBT => '%1$s'" 35 | msgstr "Greška pri povezivanju na internetsku uslugu MantisBT => „%1$s”" 36 | 37 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 38 | #: inc/mantisws.class.php:187 39 | #, php-format 40 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 41 | msgstr "Greška pri dohvaćanju korisnika projekta ID oznake „%1$s” => „%2$s”" 42 | 43 | #: inc/mantisws.class.php:204 44 | #, php-format 45 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 46 | msgstr "" 47 | "Greška pri dohvaćanju kategorije iz ID oznake projekta „%1$s” => „%2$s”" 48 | 49 | #: inc/mantisws.class.php:220 50 | #, php-format 51 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 52 | msgstr "Greška pri provjeri postojanja MantisBT naloga „%1$s” => „%2$s”" 53 | 54 | #: inc/mantisws.class.php:248 55 | #, php-format 56 | msgid "error while creating note => '%1$s'" 57 | msgstr "greška pri stvaranju bilješke => „%1$s”" 58 | 59 | #: inc/mantisws.class.php:269 60 | #, php-format 61 | msgid "WARNING: %1$s already exists" 62 | msgstr "UPOZORENJE: %1$s već postoji" 63 | 64 | #: inc/mantisws.class.php:272 65 | #, php-format 66 | msgid "error while creating attachment => '%1$s'" 67 | msgstr "greška pri stvaranju privitka => „%1$s”" 68 | 69 | #: inc/mantisws.class.php:292 70 | #, php-format 71 | msgid "error while getting attachment => '%1$s'" 72 | msgstr "greška pri dohvaćanju privitka => „%1$s”" 73 | 74 | #: inc/mantisws.class.php:308 75 | #, php-format 76 | msgid "Error creating MantisBT ticket '%1$s'" 77 | msgstr "Greška pri stvaranju MantisBT naloga „%1$s”" 78 | 79 | #: inc/mantisws.class.php:325 80 | #, php-format 81 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 82 | msgstr "Greška pri traženju MantisBT naloga „%1$s” => „%2$s”" 83 | 84 | #: inc/mantisws.class.php:341 85 | #, php-format 86 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 87 | msgstr "" 88 | "Greška pri dohvaćanju ID oznake projekta pomoću njegovog imena „%1$s” => " 89 | "„%2$s”" 90 | 91 | #: inc/mantisws.class.php:362 92 | #, php-format 93 | msgid "" 94 | "Error when checking the existence of the project by his name '%1$s' => " 95 | "'%2$s'" 96 | msgstr "" 97 | "Greška pri provjeri postojanja projekta prema njegovom imenu „%1$s” => " 98 | "„%2$s”" 99 | 100 | #: inc/mantisws.class.php:378 101 | #, php-format 102 | msgid "Error when deleting note '%1$s' => '%2$s'" 103 | msgstr "Greška pri brisanju bilješke „%1$s” => „%2$s”" 104 | 105 | #: inc/mantisws.class.php:394 106 | #, php-format 107 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 108 | msgstr "Greška pri brisanju privitka „%1$s” => „%2$s”" 109 | 110 | #: inc/mantisws.class.php:408 111 | #, php-format 112 | msgid "Error when getting MantisBT states => '%1$s'" 113 | msgstr "Greška pri dohvaćanju MantisBT stanja => „%1$s”" 114 | 115 | #: inc/mantisws.class.php:417 116 | #, php-format 117 | msgid "Error when updating MantisBT => '%1$s'" 118 | msgstr "Greška pri aktualiziranju MantisBT-a => „%1$s”" 119 | 120 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 121 | msgid "MantisBT" 122 | msgstr "MantisBT" 123 | 124 | #: inc/mantis.class.php:183 setup.php:91 125 | msgid "MantisBT synchronization" 126 | msgstr "MantisBT sinkronizacija" 127 | 128 | #: inc/mantis.class.php:195 129 | msgid "Starting update attachments." 130 | msgstr "Počinje aktualiziranje privitaka." 131 | 132 | #: inc/mantis.class.php:214 133 | #, php-format 134 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 135 | msgstr "GLPI objekt [%1$s:%2$s] je riješen ili zatvoren." 136 | 137 | #: inc/mantis.class.php:241 138 | #, php-format 139 | msgid "Can't load GLPi file [%1$s]." 140 | msgstr "Nije moguće učitati GLPI datoteku [%1$s]." 141 | 142 | #: inc/mantis.class.php:254 143 | #, php-format 144 | msgid "Can't send GLPi file [%1$s] to MantisBD." 145 | msgstr "Nije moguće poslati GLPI datoteku [%1$s] u MantisBD." 146 | 147 | #: inc/mantis.class.php:262 148 | #, php-format 149 | msgid "GLPi file [%1$s] doesn't exists." 150 | msgstr "GLPI datoteka [%1$s] ne postoji." 151 | 152 | #: inc/mantis.class.php:269 153 | #, php-format 154 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 155 | msgstr "GLPI datoteka [%1$s] već postoji u MantisBT problemu." 156 | 157 | #: inc/mantis.class.php:309 158 | #, php-format 159 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 160 | msgstr "GLPI objekt [%1$s:%2$s] je već riješen ili zatvoren." 161 | 162 | #: inc/mantis.class.php:341 163 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 164 | msgstr "Konfiguracija dodatka nije ispravna (nedostaje MantisBT stanje)" 165 | 166 | #: inc/mantis.class.php:516 167 | msgid "Plugin configuration is not correct (connection error)." 168 | msgstr "Konfiguracija dodatka nije ispravna (greška s vezom)" 169 | 170 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 171 | msgid "Link to an existing MantisBT issue" 172 | msgstr "Poveži s postojećim MantisBT problemom" 173 | 174 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 175 | msgid "Create a new MantisBT issue" 176 | msgstr "Stvori novi MantisBT problem" 177 | 178 | #: inc/mantis.class.php:564 179 | msgid "MantisBT actions" 180 | msgstr "MantisBT radnje" 181 | 182 | #: inc/mantis.class.php:602 183 | msgid "What do you want to do ?" 184 | msgstr "Što želiš uraditi?" 185 | 186 | #: inc/mantis.class.php:606 187 | msgid "Only delete link between GLPi object AND MantisBT issue." 188 | msgstr "Izbriši vezu samo između GLPI objekta i MantisBT problema." 189 | 190 | #: inc/mantis.class.php:612 191 | msgid "Force delete MantisBT issue (and GLPi object link)." 192 | msgstr "Prisilno izbriši MantisBT problem (i vezu s GLPI objektom)." 193 | 194 | #: inc/mantis.class.php:655 195 | msgid "Link to an existing MantisBT issue." 196 | msgstr "Poveži s postojećim MantisBT problemom." 197 | 198 | #: inc/mantis.class.php:658 199 | msgid "Id of MantisBT issue" 200 | msgstr "ID oznaka MantisBT problema" 201 | 202 | #: inc/mantis.class.php:661 203 | msgid "Click to load issue from MantisBT" 204 | msgstr "Klilkni za učitavanje problema iz MantisBT-a" 205 | 206 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 207 | msgid "MantisBT field for GLPi fields" 208 | msgstr "MantisBT polje za GLPI polja" 209 | 210 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 211 | msgid "MantisBT field for the link URL to the GLPi object" 212 | msgstr "MantisBT polje za povezivanje URL-a s GLPI objektom" 213 | 214 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 215 | msgid "Attachments" 216 | msgstr "Privitci" 217 | 218 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 219 | msgid "Forward attachments" 220 | msgstr "Proslijedi privitke" 221 | 222 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 223 | msgid "Forward ticket followup" 224 | msgstr "Proslijedi priopćenje naloga" 225 | 226 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 227 | msgid "Forward ticket tasks" 228 | msgstr "Proslijedi zadatke naloga" 229 | 230 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 231 | #: inc/userpref.class.php:142 232 | msgid "Forward title" 233 | msgstr "Proslijedi naslov" 234 | 235 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 236 | #: inc/userpref.class.php:148 237 | msgid "Forward description" 238 | msgstr "Proslijedi opis" 239 | 240 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 241 | #: inc/userpref.class.php:154 242 | msgid "Forward category" 243 | msgstr "Proslijedi kategoriju" 244 | 245 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 246 | #: inc/userpref.class.php:160 247 | msgid "Forward linked tickets" 248 | msgstr "Proslijedi povezane naloge" 249 | 250 | #: inc/mantis.class.php:774 251 | msgid "Exact MantisBT project name" 252 | msgstr "Točno ime MantisBT projekta" 253 | 254 | #: inc/mantis.class.php:779 255 | msgid "Click to load project from MantisBT" 256 | msgstr "Klilkni za učitavanje projekta iz MantisBT-a" 257 | 258 | #: inc/mantis.class.php:822 259 | msgid "Steps to reproduce" 260 | msgstr "Koraci za reproduciranje" 261 | 262 | #: inc/mantis.class.php:838 263 | msgid "Forward followups" 264 | msgstr "Proslijedi priopćenja" 265 | 266 | #: inc/mantis.class.php:846 267 | msgid "Forward tasks" 268 | msgstr "Proslijedi zadatke" 269 | 270 | #: inc/mantis.class.php:877 271 | msgid "Link" 272 | msgstr "Poveznica" 273 | 274 | #: inc/mantis.class.php:918 275 | msgid "List of linked MantisBT issues" 276 | msgstr "Popis povezanih MantisBT problema" 277 | 278 | #: inc/mantis.class.php:965 279 | msgid "Error when loading MantisBT issue" 280 | msgstr "Greška pri učitavanju MantisBT problema" 281 | 282 | #: inc/mantis.class.php:996 283 | msgid "This GLPi object is not linked to MantisBT" 284 | msgstr "Ovaj GLPI objekt nije povezan s MantisBT" 285 | 286 | #: inc/mantis.class.php:1002 287 | msgid "Escalation to MantisBT is neutralized by GLPi status" 288 | msgstr "GLPI stanje neutralizira eskalaciju u MantisBT" 289 | 290 | #: inc/issue.class.php:113 inc/issue.class.php:419 291 | msgid "Error creating the note, the process was interrupted" 292 | msgstr "Greška pri stvaranju bilješke, proces je prekinut." 293 | 294 | #: inc/issue.class.php:208 295 | msgid "Error when updating MantisBT issue" 296 | msgstr "Greška pri aktualiziranju MantisBT problema" 297 | 298 | #: inc/issue.class.php:370 inc/issue.class.php:386 299 | msgid "Error: The process was interrupted" 300 | msgstr "Greška: proces je prekinut" 301 | 302 | #. TRANS: %1$s is the MantisBT project name 303 | #: inc/issue.class.php:502 inc/issue.class.php:503 304 | #, php-format 305 | msgid "Project '%1$s' does not exist." 306 | msgstr "Projekt „%1$s” ne postoji." 307 | 308 | #: inc/issue.class.php:538 inc/issue.class.php:542 309 | #, php-format 310 | msgid "" 311 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 312 | msgstr "Nije moguće učitati privitak [%1$s] u MantisBT, proces je prekinut." 313 | 314 | #: inc/issue.class.php:552 inc/issue.class.php:556 315 | #, php-format 316 | msgid "" 317 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 318 | msgstr "Nije moguće poslati privitak [%1$s] u MantisBT, proces je prekinut." 319 | 320 | #: inc/issue.class.php:563 inc/issue.class.php:567 321 | #, php-format 322 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 323 | msgstr "Privitak [%1$s] ne postoji, proces je prekinut." 324 | 325 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 326 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 327 | #, php-format 328 | msgid "Title = %1$s
" 329 | msgstr "Naslov = %1$s
" 330 | 331 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 332 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 333 | #, php-format 334 | msgid "Description = %1$s
" 335 | msgstr "Opis = %1$s
" 336 | 337 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 338 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 339 | #, php-format 340 | msgid "Category = %1$s
" 341 | msgstr "Kategorija = %1$s
" 342 | 343 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 344 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 345 | #, php-format 346 | msgid "Link to GLPi object = %1$s
" 347 | msgstr "Veza s GLPI objektom = %1$s
" 348 | 349 | #: inc/issue.class.php:876 350 | #, php-format 351 | msgid "" 352 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content :" 353 | " %5$s
" 354 | msgstr "" 355 | "Priopćenje = %1$s -> datum: %2$s, vrsta zahtjeva: %3$s, korisnik: %4$s, " 356 | "sadržaj: %5$s
" 357 | 358 | #: inc/issue.class.php:884 359 | msgid "No follow-up" 360 | msgstr "Nema priopćenja" 361 | 362 | #: inc/issue.class.php:919 363 | #, php-format 364 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 365 | msgstr "Zadatak = %1$s -> datum: %2$s, opis: %3$s, vrijeme: %4$s
" 366 | 367 | #: inc/issue.class.php:926 368 | msgid "No task" 369 | msgstr "Nema zadatka" 370 | 371 | #: inc/config.class.php:41 372 | msgid "Setup - MantisBT" 373 | msgstr "Postavljanje – MantisBT" 374 | 375 | #: inc/config.class.php:77 376 | msgid "MantisBT server base URL" 377 | msgstr "Osnovni URL MantisBT poslužitelja" 378 | 379 | #: inc/config.class.php:85 380 | msgid "Check SSL" 381 | msgstr "Provjeri SSL" 382 | 383 | #: inc/config.class.php:94 384 | msgid "Use GLPi proxy configuration" 385 | msgstr "Koristi konfiguraciju GLPI proxija" 386 | 387 | #: inc/config.class.php:103 388 | msgid "Wsdl file path" 389 | msgstr "Staza Wsdl datoteke" 390 | 391 | #: inc/config.class.php:111 392 | msgid "MantisBT user login" 393 | msgstr "Korisnička prijava za MantisBT" 394 | 395 | #: inc/config.class.php:118 396 | msgid "MantisBT user password" 397 | msgstr "Korisnička lozinka za MantisBT" 398 | 399 | #: inc/config.class.php:125 400 | msgid "Allow assignation" 401 | msgstr "Dozvoli dodijeljivanja" 402 | 403 | #: inc/config.class.php:133 404 | msgid "" 405 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 406 | msgstr "Neutraliziraj eskalaciju u MantisBT kad je stanje GLPI objekta" 407 | 408 | #: inc/config.class.php:144 409 | msgid "Status of GLPi object after escalation to MantisBT" 410 | msgstr "Stanje GLPI objekta nakon eskalacije u MantisBT" 411 | 412 | #: inc/config.class.php:155 413 | msgid "Show option 'Delete the MantisBT issue' " 414 | msgstr "Pokaži opciju „Izbriši MantisBT problem” " 415 | 416 | #: inc/config.class.php:163 417 | msgid "Attachment type transfered to MantisBT" 418 | msgstr "Vrsta privitka prenesena u MantisBT" 419 | 420 | #: inc/config.class.php:174 421 | msgid "MantisBT field for GLPI fields" 422 | msgstr "MantisBT polje za GLPI polja" 423 | 424 | #: inc/config.class.php:193 425 | msgid "Close GLPi ticket when MantisBT issue status is" 426 | msgstr "Zatvori GLPI problem kad je stanje MantisBT problema" 427 | 428 | #: inc/config.class.php:202 429 | msgid "Solution type when MantisBT issue is resolved" 430 | msgstr "Vrsta rješenja kad se MantisBT problem riješi" 431 | 432 | #: inc/config.class.php:212 433 | msgid "GLPi user who solves ticket ?" 434 | msgstr "GLPI korisnik koji rješava nalog?" 435 | 436 | #: inc/config.class.php:224 437 | msgid "Test the connection" 438 | msgstr "Testiraj vezu" 439 | 440 | #: inc/userpref.class.php:117 441 | msgid "Default checkbox status" 442 | msgstr "Standardno stanje potvrdnog okvira" 443 | 444 | #: inc/userpref.class.php:123 445 | msgid "Forward document(s)" 446 | msgstr "Proslijedi dokumente" 447 | 448 | #: ajax/ajax.php:122 449 | msgid "Documents for related tickets" 450 | msgstr "Dokumenti za povezane naloge" 451 | 452 | #: ajax/ajax.php:167 ajax/ajax.php:209 453 | msgid "MantisBT issue does not exist" 454 | msgstr "MantisBT problem ne postoji" 455 | 456 | #: ajax/ajax.php:174 ajax/ajax.php:215 457 | msgid "This GLPi object is already linked to the selected MantisBT issue" 458 | msgstr "Ovaj GLPI objekt je već povezan s odabranim MantisBT problemom" 459 | 460 | #: ajax/ajax.php:178 ajax/ajax.php:220 461 | msgid "This MantisBT issue is closed" 462 | msgstr "MantisBT problem ja zatvoren" 463 | 464 | #: ajax/ajax.php:300 ajax/ajax.php:318 465 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 466 | msgstr "Greška pri brisanju veze između GLPI objekta i MantisBT problema" 467 | 468 | #: ajax/ajax.php:321 469 | msgid "Error while deleting the MantisBT issue" 470 | msgstr "Greška pri brisanju MantisBT problema" 471 | 472 | #: ajax/ajax.php:324 473 | msgid "The MantisBT issue doesn't exists" 474 | msgstr "MantisBT problem ne postoji" 475 | -------------------------------------------------------------------------------- /locales/tr_TR.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | # Translators: 7 | # Kaya Zeren , 2018 8 | # 9 | #, fuzzy 10 | msgid "" 11 | msgstr "" 12 | "Project-Id-Version: PACKAGE VERSION\n" 13 | "Report-Msgid-Bugs-To: \n" 14 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 15 | "PO-Revision-Date: 2016-10-05 17:06+0000\n" 16 | "Last-Translator: Kaya Zeren , 2018\n" 17 | "Language-Team: Turkish (Turkey) (https://www.transifex.com/teclib/teams/28042/tr_TR/)\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Language: tr_TR\n" 22 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 23 | 24 | #: hook.php:85 25 | msgid "Number of linked MantisBT issues" 26 | msgstr "Bağlantılı MantisBT konularının sayısı" 27 | 28 | #: inc/profile.class.php:57 29 | msgid "Use the plugin MantisBT" 30 | msgstr "MantisBT uygulama eki kullanılsın" 31 | 32 | #: inc/mantisws.class.php:95 33 | #, php-format 34 | msgid "Error to connect to the web service MantisBT => '%1$s'" 35 | msgstr "MantisBT => '%1$s' web hizmetine bağlanılırken sorun çıktı" 36 | 37 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 38 | #: inc/mantisws.class.php:187 39 | #, php-format 40 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 41 | msgstr "'%1$s' => '%2$s' proje kodunun kullanıcısı alınırken sorun çıktı" 42 | 43 | #: inc/mantisws.class.php:204 44 | #, php-format 45 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 46 | msgstr "'%1$s' => '%2$s' proje kodunun kategorisi alınırken sorun çıktı" 47 | 48 | #: inc/mantisws.class.php:220 49 | #, php-format 50 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 51 | msgstr "" 52 | "'%1$s' => '%2$s' MantisBT çağrı kaydının varlığı denetlenirken sorun çıktı." 53 | 54 | #: inc/mantisws.class.php:248 55 | #, php-format 56 | msgid "error while creating note => '%1$s'" 57 | msgstr "'%1$s' notu oluşturulurken sorun çıktı" 58 | 59 | #: inc/mantisws.class.php:269 60 | #, php-format 61 | msgid "WARNING: %1$s already exists" 62 | msgstr "UYARI: %1$s zaten var" 63 | 64 | #: inc/mantisws.class.php:272 65 | #, php-format 66 | msgid "error while creating attachment => '%1$s'" 67 | msgstr "'%1$s' ek dosyası oluşturulurken sorun çıktı" 68 | 69 | #: inc/mantisws.class.php:292 70 | #, php-format 71 | msgid "error while getting attachment => '%1$s'" 72 | msgstr "'%1$s' ek dosyası alınırken sorun çıktı" 73 | 74 | #: inc/mantisws.class.php:308 75 | #, php-format 76 | msgid "Error creating MantisBT ticket '%1$s'" 77 | msgstr "'%1$s' MantisBT çağrı kaydı oluşturulurken sorun çıktı" 78 | 79 | #: inc/mantisws.class.php:325 80 | #, php-format 81 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 82 | msgstr "'%1$s' => '%2$s' MantisBT çağrı kaydı aranırken sorun çıktı" 83 | 84 | #: inc/mantisws.class.php:341 85 | #, php-format 86 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 87 | msgstr "'%1$s' => '%2$s' projenin adından kodu alınırken sorun çıktı" 88 | 89 | #: inc/mantisws.class.php:362 90 | #, php-format 91 | msgid "" 92 | "Error when checking the existence of the project by his name '%1$s' => " 93 | "'%2$s'" 94 | msgstr "'%1$s' => '%2$s' projenin adından varlığı denetlenirken sorun çıktı" 95 | 96 | #: inc/mantisws.class.php:378 97 | #, php-format 98 | msgid "Error when deleting note '%1$s' => '%2$s'" 99 | msgstr "'%1$s' => '%2$s' not silinirken sorun çıktı" 100 | 101 | #: inc/mantisws.class.php:394 102 | #, php-format 103 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 104 | msgstr "'%1$s' => '%2$s' ek dosyası silinirken sorun çıktı" 105 | 106 | #: inc/mantisws.class.php:408 107 | #, php-format 108 | msgid "Error when getting MantisBT states => '%1$s'" 109 | msgstr "'%1$s' MantisBT durumları alınırken sorun çıktı" 110 | 111 | #: inc/mantisws.class.php:417 112 | #, php-format 113 | msgid "Error when updating MantisBT => '%1$s'" 114 | msgstr "'%1$s' MantisBT güncellenirken sorun çıktı" 115 | 116 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 117 | msgid "MantisBT" 118 | msgstr "MantisBT" 119 | 120 | #: inc/mantis.class.php:183 setup.php:91 121 | msgid "MantisBT synchronization" 122 | msgstr "MantisBT eşitlemesi" 123 | 124 | #: inc/mantis.class.php:195 125 | msgid "Starting update attachments." 126 | msgstr "Ek dosyalarının güncellenmesine başlanıyor." 127 | 128 | #: inc/mantis.class.php:214 129 | #, php-format 130 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 131 | msgstr "[%1$s:%2$s] GLPI nesnesi çözümlendi ya da kapatıldı." 132 | 133 | #: inc/mantis.class.php:241 134 | #, php-format 135 | msgid "Can't load GLPi file [%1$s]." 136 | msgstr "[%1$s] GLPI dosyası yüklenemedi." 137 | 138 | #: inc/mantis.class.php:254 139 | #, php-format 140 | msgid "Can't send GLPi file [%1$s] to MantisBD." 141 | msgstr "[%1$s] GLPI dosyası MantisBT üzerine gönderilemedi." 142 | 143 | #: inc/mantis.class.php:262 144 | #, php-format 145 | msgid "GLPi file [%1$s] doesn't exists." 146 | msgstr "[%1$s] GLPI dosyası bulunamadı." 147 | 148 | #: inc/mantis.class.php:269 149 | #, php-format 150 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 151 | msgstr "[%1$s] GLPI dosyası MantisBT konusu olarak zaten var." 152 | 153 | #: inc/mantis.class.php:309 154 | #, php-format 155 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 156 | msgstr "[%1$s:%2$s] GLPI nesnesi zaten çözümlenmiş ya da kapatılmış." 157 | 158 | #: inc/mantis.class.php:341 159 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 160 | msgstr "Uygulama eki yapılandırması doğru değil (MantisBT durumu eksik)" 161 | 162 | #: inc/mantis.class.php:516 163 | msgid "Plugin configuration is not correct (connection error)." 164 | msgstr "Uygulama eki yapılandırması doğru değil (bağlantı sorunu)." 165 | 166 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 167 | msgid "Link to an existing MantisBT issue" 168 | msgstr "Varolan bir MantisBT konusuna bağlantı" 169 | 170 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 171 | msgid "Create a new MantisBT issue" 172 | msgstr "Yeni bir MantisBT konusu oluştur" 173 | 174 | #: inc/mantis.class.php:564 175 | msgid "MantisBT actions" 176 | msgstr "MantisBT işlemleri" 177 | 178 | #: inc/mantis.class.php:602 179 | msgid "What do you want to do ?" 180 | msgstr "Ne yapmak istiyorsunuz?" 181 | 182 | #: inc/mantis.class.php:606 183 | msgid "Only delete link between GLPi object AND MantisBT issue." 184 | msgstr "Yalnız GLPI nesnesi VE MantisBT konusu arasındaki bağlantıyı sil." 185 | 186 | #: inc/mantis.class.php:612 187 | msgid "Force delete MantisBT issue (and GLPi object link)." 188 | msgstr "MantisBT konusunu silmeye zorla (ve GLPI nesne bağlantısı)." 189 | 190 | #: inc/mantis.class.php:655 191 | msgid "Link to an existing MantisBT issue." 192 | msgstr "Varolan bir MantisBT konusuna bağlantı." 193 | 194 | #: inc/mantis.class.php:658 195 | msgid "Id of MantisBT issue" 196 | msgstr "MantisBT konusunun kodu" 197 | 198 | #: inc/mantis.class.php:661 199 | msgid "Click to load issue from MantisBT" 200 | msgstr "Konuyu MantisBT üzerinden yüklemek için tıklayın" 201 | 202 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 203 | msgid "MantisBT field for GLPi fields" 204 | msgstr "GLPI alanları için MantisBT alanı" 205 | 206 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 207 | msgid "MantisBT field for the link URL to the GLPi object" 208 | msgstr "GLPI nesnesinin bağlantı adresinin olduğu MantisBT alanı" 209 | 210 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 211 | msgid "Attachments" 212 | msgstr "Ek Dosyaları" 213 | 214 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 215 | msgid "Forward attachments" 216 | msgstr "Ek dosyaları ilet" 217 | 218 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 219 | msgid "Forward ticket followup" 220 | msgstr "Çağrı kaydı takibini ilet" 221 | 222 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 223 | msgid "Forward ticket tasks" 224 | msgstr "Çağrı kaydı görevlerini ilet" 225 | 226 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 227 | #: inc/userpref.class.php:142 228 | msgid "Forward title" 229 | msgstr "Başlığı ilet" 230 | 231 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 232 | #: inc/userpref.class.php:148 233 | msgid "Forward description" 234 | msgstr "Açıklamayı ilet" 235 | 236 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 237 | #: inc/userpref.class.php:154 238 | msgid "Forward category" 239 | msgstr "Kategoriyi ilet" 240 | 241 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 242 | #: inc/userpref.class.php:160 243 | msgid "Forward linked tickets" 244 | msgstr "Bağlantılı çağrı kayıtlarını ilet" 245 | 246 | #: inc/mantis.class.php:774 247 | msgid "Exact MantisBT project name" 248 | msgstr "Tam MantisBT proje adı" 249 | 250 | #: inc/mantis.class.php:779 251 | msgid "Click to load project from MantisBT" 252 | msgstr "Projeyi MantisBT üzerinden yüklemek için tıklayın" 253 | 254 | #: inc/mantis.class.php:822 255 | msgid "Steps to reproduce" 256 | msgstr "Sorunu yeniden oluşturma adımları" 257 | 258 | #: inc/mantis.class.php:838 259 | msgid "Forward followups" 260 | msgstr "Takipleri ilet" 261 | 262 | #: inc/mantis.class.php:846 263 | msgid "Forward tasks" 264 | msgstr "Görevleri ilet" 265 | 266 | #: inc/mantis.class.php:877 267 | msgid "Link" 268 | msgstr "Bağlantı" 269 | 270 | #: inc/mantis.class.php:918 271 | msgid "List of linked MantisBT issues" 272 | msgstr "Bağlantılı MantisBT konularının listesi" 273 | 274 | #: inc/mantis.class.php:965 275 | msgid "Error when loading MantisBT issue" 276 | msgstr "MantisBT konusu yüklenirken sorun çıktı" 277 | 278 | #: inc/mantis.class.php:996 279 | msgid "This GLPi object is not linked to MantisBT" 280 | msgstr "Bu GLPI nesnesi MantisBT ile bağlantılı değil" 281 | 282 | #: inc/mantis.class.php:1002 283 | msgid "Escalation to MantisBT is neutralized by GLPi status" 284 | msgstr "MantisBT yükseltmesi GLPI durumu tarafından nötralize edildi" 285 | 286 | #: inc/issue.class.php:113 inc/issue.class.php:419 287 | msgid "Error creating the note, the process was interrupted" 288 | msgstr "Not oluşturulamadı, işlem tamamlanamadı" 289 | 290 | #: inc/issue.class.php:208 291 | msgid "Error when updating MantisBT issue" 292 | msgstr "MantisBT konusu güncellenirken sorun çıktı" 293 | 294 | #: inc/issue.class.php:370 inc/issue.class.php:386 295 | msgid "Error: The process was interrupted" 296 | msgstr "Hata: İşlem tamamlanamadı" 297 | 298 | #. TRANS: %1$s is the MantisBT project name 299 | #: inc/issue.class.php:502 inc/issue.class.php:503 300 | #, php-format 301 | msgid "Project '%1$s' does not exist." 302 | msgstr "'%1$s' projesi bulunamadı." 303 | 304 | #: inc/issue.class.php:538 inc/issue.class.php:542 305 | #, php-format 306 | msgid "" 307 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 308 | msgstr "[%1$s] ek dosyası MantisBT üzerine yüklenemedi, işlem tamamlanamadı." 309 | 310 | #: inc/issue.class.php:552 inc/issue.class.php:556 311 | #, php-format 312 | msgid "" 313 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 314 | msgstr "" 315 | "[%1$s] ek dosyası MantisBT üzerine gönderilemedi, işlem tamamlanamadı." 316 | 317 | #: inc/issue.class.php:563 inc/issue.class.php:567 318 | #, php-format 319 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 320 | msgstr "[%1$s] ek dosyası bulunamadı, işlem tamamlanamadı." 321 | 322 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 323 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 324 | #, php-format 325 | msgid "Title = %1$s
" 326 | msgstr "Başlık = %1$s
" 327 | 328 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 329 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 330 | #, php-format 331 | msgid "Description = %1$s
" 332 | msgstr "Açıklama = %1$s
" 333 | 334 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 335 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 336 | #, php-format 337 | msgid "Category = %1$s
" 338 | msgstr "Kategori = %1$s
" 339 | 340 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 341 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 342 | #, php-format 343 | msgid "Link to GLPi object = %1$s
" 344 | msgstr "GLPi nesnesi bağlantısı = %1$s
" 345 | 346 | #: inc/issue.class.php:876 347 | #, php-format 348 | msgid "" 349 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content :" 350 | " %5$s
" 351 | msgstr "" 352 | "Takip = %1$s -> Tarih : %2$s, İstek Türü : %3$s, Kullanıcı : %4$s, İçerik : " 353 | "%5$s
" 354 | 355 | #: inc/issue.class.php:884 356 | msgid "No follow-up" 357 | msgstr "Takip yok" 358 | 359 | #: inc/issue.class.php:919 360 | #, php-format 361 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 362 | msgstr "Görev = %1$s -> Tarih : %2$s, Açıklama : %3$s, Saat : %4$s
" 363 | 364 | #: inc/issue.class.php:926 365 | msgid "No task" 366 | msgstr "Görev yok" 367 | 368 | #: inc/config.class.php:41 369 | msgid "Setup - MantisBT" 370 | msgstr "Kurulum - MantisBT" 371 | 372 | #: inc/config.class.php:77 373 | msgid "MantisBT server base URL" 374 | msgstr "MantisBT temel sunucu adresi" 375 | 376 | #: inc/config.class.php:85 377 | msgid "Check SSL" 378 | msgstr "SSL Denetle" 379 | 380 | #: inc/config.class.php:94 381 | msgid "Use GLPi proxy configuration" 382 | msgstr "GLPi vekil sunucu yapılandırması kullanılsın" 383 | 384 | #: inc/config.class.php:103 385 | msgid "Wsdl file path" 386 | msgstr "Wsdl dosya yolu" 387 | 388 | #: inc/config.class.php:111 389 | msgid "MantisBT user login" 390 | msgstr "MantisBT kullanıcı adı" 391 | 392 | #: inc/config.class.php:118 393 | msgid "MantisBT user password" 394 | msgstr "MantisBT kullanıcı parolası" 395 | 396 | #: inc/config.class.php:125 397 | msgid "Allow assignation" 398 | msgstr "Atama yapılabilsin" 399 | 400 | #: inc/config.class.php:133 401 | msgid "" 402 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 403 | msgstr "" 404 | "GLPI nesnesinin durumu şu olduğunda MantisBT yükseltmesini nötralize et" 405 | 406 | #: inc/config.class.php:144 407 | msgid "Status of GLPi object after escalation to MantisBT" 408 | msgstr "MantisBT üzerine yükseltildiğinde GLPI nesnesinin durumu" 409 | 410 | #: inc/config.class.php:155 411 | msgid "Show option 'Delete the MantisBT issue' " 412 | msgstr "'GLPI konusunu sil' seçeneği görüntülensin" 413 | 414 | #: inc/config.class.php:163 415 | msgid "Attachment type transfered to MantisBT" 416 | msgstr "MantisBT üzerine aktarılan ek dosyası türü" 417 | 418 | #: inc/config.class.php:174 419 | msgid "MantisBT field for GLPI fields" 420 | msgstr "GLPI alanları için MantisBT alanı" 421 | 422 | #: inc/config.class.php:193 423 | msgid "Close GLPi ticket when MantisBT issue status is" 424 | msgstr "MantisBT konu durumu şu olduğunda GLPI çağrı kaydı kapatılsın" 425 | 426 | #: inc/config.class.php:202 427 | msgid "Solution type when MantisBT issue is resolved" 428 | msgstr "MantisBT konu durumu çözüldü olduğunda çözüm türü" 429 | 430 | #: inc/config.class.php:212 431 | msgid "GLPi user who solves ticket ?" 432 | msgstr "Destek kaydını çözümleyen GLPi kullanıcısı" 433 | 434 | #: inc/config.class.php:224 435 | msgid "Test the connection" 436 | msgstr "Bağlantıyı sına" 437 | 438 | #: inc/userpref.class.php:117 439 | msgid "Default checkbox status" 440 | msgstr "Varsayılan işaret kutusu durumu" 441 | 442 | #: inc/userpref.class.php:123 443 | msgid "Forward document(s)" 444 | msgstr "Belgeleri ilet" 445 | 446 | #: ajax/ajax.php:122 447 | msgid "Documents for related tickets" 448 | msgstr "İlgili çağrı kayıtları için belgeler" 449 | 450 | #: ajax/ajax.php:167 ajax/ajax.php:209 451 | msgid "MantisBT issue does not exist" 452 | msgstr "MantisBT konusu bulunamadı" 453 | 454 | #: ajax/ajax.php:174 ajax/ajax.php:215 455 | msgid "This GLPi object is already linked to the selected MantisBT issue" 456 | msgstr "Bu GLPI nesnesi zaten seçilmiş MantisBT konusu ile bağlantılı" 457 | 458 | #: ajax/ajax.php:178 ajax/ajax.php:220 459 | msgid "This MantisBT issue is closed" 460 | msgstr "MantisBT konusu kapatılmış" 461 | 462 | #: ajax/ajax.php:300 ajax/ajax.php:318 463 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 464 | msgstr "" 465 | "GLPI nesnesi ile MantisBT konusu arasındaki bağlantı silinirken bir sorun " 466 | "çıktı" 467 | 468 | #: ajax/ajax.php:321 469 | msgid "Error while deleting the MantisBT issue" 470 | msgstr "MantisBT konusu silinirken sorun çıktı" 471 | 472 | #: ajax/ajax.php:324 473 | msgid "The MantisBT issue doesn't exists" 474 | msgstr "MantisBT konusu bulunamadı" 475 | -------------------------------------------------------------------------------- /locales/cs_CZ.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | # Translators: 7 | # Pavel Borecki , 2018 8 | # 9 | #, fuzzy 10 | msgid "" 11 | msgstr "" 12 | "Project-Id-Version: PACKAGE VERSION\n" 13 | "Report-Msgid-Bugs-To: \n" 14 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 15 | "PO-Revision-Date: 2016-10-05 17:06+0000\n" 16 | "Last-Translator: Pavel Borecki , 2018\n" 17 | "Language-Team: Czech (Czech Republic) (https://www.transifex.com/teclib/teams/28042/cs_CZ/)\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Language: cs_CZ\n" 22 | "Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n" 23 | 24 | #: hook.php:85 25 | msgid "Number of linked MantisBT issues" 26 | msgstr "Počet odkazovaných MantisBT hlášení" 27 | 28 | #: inc/profile.class.php:57 29 | msgid "Use the plugin MantisBT" 30 | msgstr "Použít zásuvný modul MantisBT" 31 | 32 | #: inc/mantisws.class.php:95 33 | #, php-format 34 | msgid "Error to connect to the web service MantisBT => '%1$s'" 35 | msgstr "Chyba při připojování k webové službě MantisBT => „%1$s“" 36 | 37 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 38 | #: inc/mantisws.class.php:187 39 | #, php-format 40 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 41 | msgstr "" 42 | "Chyba při získávání uživatele projektu s identifikátorem „%1$s“ => „%2$s“" 43 | 44 | #: inc/mantisws.class.php:204 45 | #, php-format 46 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 47 | msgstr "" 48 | "Chyba při získávání kategorie projektu s identifikátorem „%1$s“ => „%2$s“" 49 | 50 | #: inc/mantisws.class.php:220 51 | #, php-format 52 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 53 | msgstr "Chyba při kontrole existence hlášení v MantisBT „%1$s“ => „%2$s“" 54 | 55 | #: inc/mantisws.class.php:248 56 | #, php-format 57 | msgid "error while creating note => '%1$s'" 58 | msgstr "chyba při vytváření poznámky => „%1$s“" 59 | 60 | #: inc/mantisws.class.php:269 61 | #, php-format 62 | msgid "WARNING: %1$s already exists" 63 | msgstr "VAROVÁNÍ: %1$s už existuje" 64 | 65 | #: inc/mantisws.class.php:272 66 | #, php-format 67 | msgid "error while creating attachment => '%1$s'" 68 | msgstr "chyba při vytváření přílohy => „%1$s“" 69 | 70 | #: inc/mantisws.class.php:292 71 | #, php-format 72 | msgid "error while getting attachment => '%1$s'" 73 | msgstr "chyba při získávání přílohy => „%1$s“" 74 | 75 | #: inc/mantisws.class.php:308 76 | #, php-format 77 | msgid "Error creating MantisBT ticket '%1$s'" 78 | msgstr "Chyba při vytváření požadavku v MantisBT „%1$s“" 79 | 80 | #: inc/mantisws.class.php:325 81 | #, php-format 82 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 83 | msgstr "Chyba při hledání MantisBT požadavku „%1$s“ => „%2$s“" 84 | 85 | #: inc/mantisws.class.php:341 86 | #, php-format 87 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 88 | msgstr "" 89 | "Chyba při získávání identifikátoru projektu pomocí jeho názvu „%1$s“ => " 90 | "„%2$s“" 91 | 92 | #: inc/mantisws.class.php:362 93 | #, php-format 94 | msgid "" 95 | "Error when checking the existence of the project by his name '%1$s' => " 96 | "'%2$s'" 97 | msgstr "" 98 | "Chyba při kontrole existence projektu pomocí jeho názvu „%1$s“ => „%2$s“" 99 | 100 | #: inc/mantisws.class.php:378 101 | #, php-format 102 | msgid "Error when deleting note '%1$s' => '%2$s'" 103 | msgstr "Chyba při mazání poznámky „%1$s“ => „%2$s“" 104 | 105 | #: inc/mantisws.class.php:394 106 | #, php-format 107 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 108 | msgstr "Chyba při mazání přílohy „%1$s“ => „%2$s“" 109 | 110 | #: inc/mantisws.class.php:408 111 | #, php-format 112 | msgid "Error when getting MantisBT states => '%1$s'" 113 | msgstr "Chyba při získávání stavů z MantisBT => „%1$s“" 114 | 115 | #: inc/mantisws.class.php:417 116 | #, php-format 117 | msgid "Error when updating MantisBT => '%1$s'" 118 | msgstr "Chyba při aktualizaci MantisBT => „%1$s“" 119 | 120 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 121 | msgid "MantisBT" 122 | msgstr "MantisBT" 123 | 124 | #: inc/mantis.class.php:183 setup.php:91 125 | msgid "MantisBT synchronization" 126 | msgstr "Synchronizace s MantisBT" 127 | 128 | #: inc/mantis.class.php:195 129 | msgid "Starting update attachments." 130 | msgstr "Zahajuje se aktualizace příloh." 131 | 132 | #: inc/mantis.class.php:214 133 | #, php-format 134 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 135 | msgstr "GLPi objekt [%1$s:%2$s] je vyřešen nebo uzavřen." 136 | 137 | #: inc/mantis.class.php:241 138 | #, php-format 139 | msgid "Can't load GLPi file [%1$s]." 140 | msgstr "Nedaří se načíst GLPi soubor [%1$s]." 141 | 142 | #: inc/mantis.class.php:254 143 | #, php-format 144 | msgid "Can't send GLPi file [%1$s] to MantisBD." 145 | msgstr "Nedaří se poslat GLPi soubor [%1$s] do MantisBT." 146 | 147 | #: inc/mantis.class.php:262 148 | #, php-format 149 | msgid "GLPi file [%1$s] doesn't exists." 150 | msgstr "GLPi soubor [%1$s] neexistuje." 151 | 152 | #: inc/mantis.class.php:269 153 | #, php-format 154 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 155 | msgstr "GLPi soubor [%1$s] už v MantisBT hlášení existuje." 156 | 157 | #: inc/mantis.class.php:309 158 | #, php-format 159 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 160 | msgstr "GLPi objekt [%1$s:%2$s] už je vyřešený nebo uzavřený." 161 | 162 | #: inc/mantis.class.php:341 163 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 164 | msgstr "Nastavení zásuvného modulu není správné (chybí stav v MantisBT)" 165 | 166 | #: inc/mantis.class.php:516 167 | msgid "Plugin configuration is not correct (connection error)." 168 | msgstr "Nastavení zásuvného modulu není správné (chyba spojení)." 169 | 170 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 171 | msgid "Link to an existing MantisBT issue" 172 | msgstr "Propojit s existujícím hlášením v MantisBT" 173 | 174 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 175 | msgid "Create a new MantisBT issue" 176 | msgstr "Vytvořit nové hlášení v MantisBT" 177 | 178 | #: inc/mantis.class.php:564 179 | msgid "MantisBT actions" 180 | msgstr "Akce s MantisBT" 181 | 182 | #: inc/mantis.class.php:602 183 | msgid "What do you want to do ?" 184 | msgstr "Co chcete udělat?" 185 | 186 | #: inc/mantis.class.php:606 187 | msgid "Only delete link between GLPi object AND MantisBT issue." 188 | msgstr "Pouze smazat propojení mezi GLPi objektem a hlášením v MantisBT." 189 | 190 | #: inc/mantis.class.php:612 191 | msgid "Force delete MantisBT issue (and GLPi object link)." 192 | msgstr "Vynutit smazání hlášení v MantisBT (a propojení na GLPi objekt)." 193 | 194 | #: inc/mantis.class.php:655 195 | msgid "Link to an existing MantisBT issue." 196 | msgstr "Propojit s existujícím hlášením v MantisBT." 197 | 198 | #: inc/mantis.class.php:658 199 | msgid "Id of MantisBT issue" 200 | msgstr "Identifikátor hlášení v MantisBT" 201 | 202 | #: inc/mantis.class.php:661 203 | msgid "Click to load issue from MantisBT" 204 | msgstr "Kliknutím načtěte hlášení z MantisBT" 205 | 206 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 207 | msgid "MantisBT field for GLPi fields" 208 | msgstr "Kolonky v MantisBT pro ty z GLPi" 209 | 210 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 211 | msgid "MantisBT field for the link URL to the GLPi object" 212 | msgstr "Kolonka v MantisBT pro URL odkazu na GLPi objekt" 213 | 214 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 215 | msgid "Attachments" 216 | msgstr "Přílohy" 217 | 218 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 219 | msgid "Forward attachments" 220 | msgstr "Přeposlat přílohy" 221 | 222 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 223 | msgid "Forward ticket followup" 224 | msgstr "Přeposlat komunikaci navazující na požadavek" 225 | 226 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 227 | msgid "Forward ticket tasks" 228 | msgstr "Přeposlat úkoly plynoucí z požadavku" 229 | 230 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 231 | #: inc/userpref.class.php:142 232 | msgid "Forward title" 233 | msgstr "Přeposlat nadpis" 234 | 235 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 236 | #: inc/userpref.class.php:148 237 | msgid "Forward description" 238 | msgstr "Přeposlat popis" 239 | 240 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 241 | #: inc/userpref.class.php:154 242 | msgid "Forward category" 243 | msgstr "Přeposlat kategorii" 244 | 245 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 246 | #: inc/userpref.class.php:160 247 | msgid "Forward linked tickets" 248 | msgstr "Přeposlat propojené požadavky" 249 | 250 | #: inc/mantis.class.php:774 251 | msgid "Exact MantisBT project name" 252 | msgstr "Přesný název projektu v MantisBT" 253 | 254 | #: inc/mantis.class.php:779 255 | msgid "Click to load project from MantisBT" 256 | msgstr "Kliknutím načtěte projekt z MantisBT" 257 | 258 | #: inc/mantis.class.php:822 259 | msgid "Steps to reproduce" 260 | msgstr "Kroky vedoucí k zopakování" 261 | 262 | #: inc/mantis.class.php:838 263 | msgid "Forward followups" 264 | msgstr "Přeposlat následnou komunikaci" 265 | 266 | #: inc/mantis.class.php:846 267 | msgid "Forward tasks" 268 | msgstr "Přeposlat úkoly" 269 | 270 | #: inc/mantis.class.php:877 271 | msgid "Link" 272 | msgstr "Odkaz" 273 | 274 | #: inc/mantis.class.php:918 275 | msgid "List of linked MantisBT issues" 276 | msgstr "Seznam odkazovaných hlášení v MantisBT" 277 | 278 | #: inc/mantis.class.php:965 279 | msgid "Error when loading MantisBT issue" 280 | msgstr "Chyba při načítání hlášení z MantisBT" 281 | 282 | #: inc/mantis.class.php:996 283 | msgid "This GLPi object is not linked to MantisBT" 284 | msgstr "Tento GLPi objekt není propojen s MantisBT" 285 | 286 | #: inc/mantis.class.php:1002 287 | msgid "Escalation to MantisBT is neutralized by GLPi status" 288 | msgstr "Eskalace do MantisBT je neutralizována stavem v GLPi" 289 | 290 | #: inc/issue.class.php:113 inc/issue.class.php:419 291 | msgid "Error creating the note, the process was interrupted" 292 | msgstr "Chyba při vytváření poznámky, proces byl přerušen" 293 | 294 | #: inc/issue.class.php:208 295 | msgid "Error when updating MantisBT issue" 296 | msgstr "Chyba při aktualizaci hlášení v MantisBT" 297 | 298 | #: inc/issue.class.php:370 inc/issue.class.php:386 299 | msgid "Error: The process was interrupted" 300 | msgstr "Chyba: proces byl přerušen" 301 | 302 | #. TRANS: %1$s is the MantisBT project name 303 | #: inc/issue.class.php:502 inc/issue.class.php:503 304 | #, php-format 305 | msgid "Project '%1$s' does not exist." 306 | msgstr "Projekt „%1$s“ neexistuje." 307 | 308 | #: inc/issue.class.php:538 inc/issue.class.php:542 309 | #, php-format 310 | msgid "" 311 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 312 | msgstr "Přílohu [%1$s] se nedaří načíst do MantisBT, proces byl přerušen." 313 | 314 | #: inc/issue.class.php:552 inc/issue.class.php:556 315 | #, php-format 316 | msgid "" 317 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 318 | msgstr "Přílohu [%1$s] se nedaří poslat do MantisBT, proces byl přerušen." 319 | 320 | #: inc/issue.class.php:563 inc/issue.class.php:567 321 | #, php-format 322 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 323 | msgstr "Příloha [%1$s] neexistuje, proces byl přerušen." 324 | 325 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 326 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 327 | #, php-format 328 | msgid "Title = %1$s
" 329 | msgstr "Nadpis = %1$s
" 330 | 331 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 332 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 333 | #, php-format 334 | msgid "Description = %1$s
" 335 | msgstr "Popis = %1$s
" 336 | 337 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 338 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 339 | #, php-format 340 | msgid "Category = %1$s
" 341 | msgstr "Kategorie = %1$s
" 342 | 343 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 344 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 345 | #, php-format 346 | msgid "Link to GLPi object = %1$s
" 347 | msgstr "Propojení s GLPi objektem = %1$s
" 348 | 349 | #: inc/issue.class.php:876 350 | #, php-format 351 | msgid "" 352 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content :" 353 | " %5$s
" 354 | msgstr "" 355 | "Následná komunikace = %1$s -> datum: %2$s, typ požadavku: %3$s, uživatel: " 356 | "%4$s, obsah: %5$s
" 357 | 358 | #: inc/issue.class.php:884 359 | msgid "No follow-up" 360 | msgstr "Žádná doplňující komunikace" 361 | 362 | #: inc/issue.class.php:919 363 | #, php-format 364 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 365 | msgstr "Úkol = %1$s -> datum: %2$s, popis: %3$s, čas: %4$s
" 366 | 367 | #: inc/issue.class.php:926 368 | msgid "No task" 369 | msgstr "Žádný úkol" 370 | 371 | #: inc/config.class.php:41 372 | msgid "Setup - MantisBT" 373 | msgstr "Nastavení – MantisBT" 374 | 375 | #: inc/config.class.php:77 376 | msgid "MantisBT server base URL" 377 | msgstr "Základ URL adresy MantisBT serveru" 378 | 379 | #: inc/config.class.php:85 380 | msgid "Check SSL" 381 | msgstr "Kontrolovat SSL" 382 | 383 | #: inc/config.class.php:94 384 | msgid "Use GLPi proxy configuration" 385 | msgstr "Použít nastavení proxy z GLPi" 386 | 387 | #: inc/config.class.php:103 388 | msgid "Wsdl file path" 389 | msgstr "Popis umístění wsdl souboru" 390 | 391 | #: inc/config.class.php:111 392 | msgid "MantisBT user login" 393 | msgstr "Uživatelské jméno pro MantisBT" 394 | 395 | #: inc/config.class.php:118 396 | msgid "MantisBT user password" 397 | msgstr "Heslo k účtu v MantisBT" 398 | 399 | #: inc/config.class.php:125 400 | msgid "Allow assignation" 401 | msgstr "Umožnit přiřazování" 402 | 403 | #: inc/config.class.php:133 404 | msgid "" 405 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 406 | msgstr "Neutralizovat eskalaci do MantisBT pokud stav GLPI objektu je" 407 | 408 | #: inc/config.class.php:144 409 | msgid "Status of GLPi object after escalation to MantisBT" 410 | msgstr "Stav GLPi objektu po eskalaci do MantisBT" 411 | 412 | #: inc/config.class.php:155 413 | msgid "Show option 'Delete the MantisBT issue' " 414 | msgstr "Zobrazovat volbu „Smazat hlášení v MantisBT“" 415 | 416 | #: inc/config.class.php:163 417 | msgid "Attachment type transfered to MantisBT" 418 | msgstr "Typ přílohy přenášené do MantisBT" 419 | 420 | #: inc/config.class.php:174 421 | msgid "MantisBT field for GLPI fields" 422 | msgstr "Kolonky v MantisBT pro kolonky z GLPi" 423 | 424 | #: inc/config.class.php:193 425 | msgid "Close GLPi ticket when MantisBT issue status is" 426 | msgstr "Uzavřít požadavek v GLPi když stav hlášení v MantisBT je" 427 | 428 | #: inc/config.class.php:202 429 | msgid "Solution type when MantisBT issue is resolved" 430 | msgstr "Typ řešení když je hlášení vyřešeno v MantisBT" 431 | 432 | #: inc/config.class.php:212 433 | msgid "GLPi user who solves ticket ?" 434 | msgstr "GLPi uživatel který řeší požadavek?" 435 | 436 | #: inc/config.class.php:224 437 | msgid "Test the connection" 438 | msgstr "Vyzkoušet spojení" 439 | 440 | #: inc/userpref.class.php:117 441 | msgid "Default checkbox status" 442 | msgstr "Výchozí stav zaškrtávací kolonky" 443 | 444 | #: inc/userpref.class.php:123 445 | msgid "Forward document(s)" 446 | msgstr "Přeposlat dokumenty" 447 | 448 | #: ajax/ajax.php:122 449 | msgid "Documents for related tickets" 450 | msgstr "Dokumenty pro související požadavky" 451 | 452 | #: ajax/ajax.php:167 ajax/ajax.php:209 453 | msgid "MantisBT issue does not exist" 454 | msgstr "Hlášení neexistuje v MantisBT" 455 | 456 | #: ajax/ajax.php:174 ajax/ajax.php:215 457 | msgid "This GLPi object is already linked to the selected MantisBT issue" 458 | msgstr "Tento GLPi objekt už je s označeným MantisBT hlášením propojen" 459 | 460 | #: ajax/ajax.php:178 ajax/ajax.php:220 461 | msgid "This MantisBT issue is closed" 462 | msgstr "Toto hlášení je v MantisBT uzavřené" 463 | 464 | #: ajax/ajax.php:300 ajax/ajax.php:318 465 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 466 | msgstr "Chyba při mazání propojení mezi GLPi objektem a MantisBT hlášením" 467 | 468 | #: ajax/ajax.php:321 469 | msgid "Error while deleting the MantisBT issue" 470 | msgstr "Chyba při mazání hlášení v MantisBT" 471 | 472 | #: ajax/ajax.php:324 473 | msgid "The MantisBT issue doesn't exists" 474 | msgstr "Hlášení neexistuje v MantisBT" 475 | -------------------------------------------------------------------------------- /locales/pt_PT.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | # Translators: 7 | # Rui Melo , 2019 8 | # 9 | #, fuzzy 10 | msgid "" 11 | msgstr "" 12 | "Project-Id-Version: PACKAGE VERSION\n" 13 | "Report-Msgid-Bugs-To: \n" 14 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 15 | "PO-Revision-Date: 2016-10-05 17:06+0000\n" 16 | "Last-Translator: Rui Melo , 2019\n" 17 | "Language-Team: Portuguese (Portugal) (https://www.transifex.com/teclib/teams/28042/pt_PT/)\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Language: pt_PT\n" 22 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 23 | 24 | #: hook.php:85 25 | msgid "Number of linked MantisBT issues" 26 | msgstr "Número de incidências relacionadas com MantisBT" 27 | 28 | #: inc/profile.class.php:57 29 | msgid "Use the plugin MantisBT" 30 | msgstr "Usar o plugin MantisBT" 31 | 32 | #: inc/mantisws.class.php:95 33 | #, php-format 34 | msgid "Error to connect to the web service MantisBT => '%1$s'" 35 | msgstr "Erro para conectar ao serviço web MantisBT => '%1$s'" 36 | 37 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 38 | #: inc/mantisws.class.php:187 39 | #, php-format 40 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 41 | msgstr "Erro na recuperação do usuário do projeto id '%1$s' => '%2$s'" 42 | 43 | #: inc/mantisws.class.php:204 44 | #, php-format 45 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 46 | msgstr "Erro na recuperação da categoria do projeto id '%1$s' => ' %2$s'" 47 | 48 | #: inc/mantisws.class.php:220 49 | #, php-format 50 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 51 | msgstr "Erro verificando a existência do chamado no MantisBT '%1$s' => '%2$s'" 52 | 53 | #: inc/mantisws.class.php:248 54 | #, php-format 55 | msgid "error while creating note => '%1$s'" 56 | msgstr "erro na criação da nota => '%1$s'" 57 | 58 | #: inc/mantisws.class.php:269 59 | #, php-format 60 | msgid "WARNING: %1$s already exists" 61 | msgstr "Aviso%1$s já existe" 62 | 63 | #: inc/mantisws.class.php:272 64 | #, php-format 65 | msgid "error while creating attachment => '%1$s'" 66 | msgstr "erro criando anexo => '%1$s'" 67 | 68 | #: inc/mantisws.class.php:292 69 | #, php-format 70 | msgid "error while getting attachment => '%1$s'" 71 | msgstr "erro na captura do anexo => '%1$s'" 72 | 73 | #: inc/mantisws.class.php:308 74 | #, php-format 75 | msgid "Error creating MantisBT ticket '%1$s'" 76 | msgstr "Erro na criação do chamado MantisBT '%1$s'" 77 | 78 | #: inc/mantisws.class.php:325 79 | #, php-format 80 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 81 | msgstr "Erro na procura do chamado MantisBT '%1$s' => '%2$s'" 82 | 83 | #: inc/mantisws.class.php:341 84 | #, php-format 85 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 86 | msgstr "Erro na recuperação da id do projeto pelo seu nome '%1$s' => '%2$s'" 87 | 88 | #: inc/mantisws.class.php:362 89 | #, php-format 90 | msgid "" 91 | "Error when checking the existence of the project by his name '%1$s' => " 92 | "'%2$s'" 93 | msgstr "" 94 | "Erro na verificação de existência de projeto pelo seu nome '%1$s' => '%2$s'" 95 | 96 | #: inc/mantisws.class.php:378 97 | #, php-format 98 | msgid "Error when deleting note '%1$s' => '%2$s'" 99 | msgstr "Erro na exclusão da nota '%1$s' => '%2$s'" 100 | 101 | #: inc/mantisws.class.php:394 102 | #, php-format 103 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 104 | msgstr "Erro na exclusão de anexo '%1$s' => '%2$s'" 105 | 106 | #: inc/mantisws.class.php:408 107 | #, php-format 108 | msgid "Error when getting MantisBT states => '%1$s'" 109 | msgstr "Erro na obtenção dos status do MantisBT => '%1$s'" 110 | 111 | #: inc/mantisws.class.php:417 112 | #, php-format 113 | msgid "Error when updating MantisBT => '%1$s'" 114 | msgstr "Erro na atualização do MantisBT => '%1$s'" 115 | 116 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 117 | msgid "MantisBT" 118 | msgstr "MantisBT" 119 | 120 | #: inc/mantis.class.php:183 setup.php:91 121 | msgid "MantisBT synchronization" 122 | msgstr "Sincronização do MantisBT" 123 | 124 | #: inc/mantis.class.php:195 125 | msgid "Starting update attachments." 126 | msgstr "Inciando atualização de anexos." 127 | 128 | #: inc/mantis.class.php:214 129 | #, php-format 130 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 131 | msgstr "Objeto do GLPI [%1$s:%2$s] está solucionado ou fechado." 132 | 133 | #: inc/mantis.class.php:241 134 | #, php-format 135 | msgid "Can't load GLPi file [%1$s]." 136 | msgstr "Não é possível carregar o arquivo do GLPI [%1$s]." 137 | 138 | #: inc/mantis.class.php:254 139 | #, php-format 140 | msgid "Can't send GLPi file [%1$s] to MantisBD." 141 | msgstr "Não é possível enviar o arquivo do GLPI [%1$s] para o MantisBT." 142 | 143 | #: inc/mantis.class.php:262 144 | #, php-format 145 | msgid "GLPi file [%1$s] doesn't exists." 146 | msgstr "Arquivo do GLPI [%1$s] não existe." 147 | 148 | #: inc/mantis.class.php:269 149 | #, php-format 150 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 151 | msgstr "Arquivo do GLPI [%1$s] já existe em uma incidência do MantisBT." 152 | 153 | #: inc/mantis.class.php:309 154 | #, php-format 155 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 156 | msgstr "Objeto do GLPI [%1$s:%2$s] já está solucionado ou fechado." 157 | 158 | #: inc/mantis.class.php:341 159 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 160 | msgstr "" 161 | "Configuração de plugin não está correta (Status MantisBT está faltando)" 162 | 163 | #: inc/mantis.class.php:516 164 | msgid "Plugin configuration is not correct (connection error)." 165 | msgstr "Configuração de plugin não está correta (erro de conexão)." 166 | 167 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 168 | msgid "Link to an existing MantisBT issue" 169 | msgstr "Relacionar com uma incidência do MantisBT" 170 | 171 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 172 | msgid "Create a new MantisBT issue" 173 | msgstr "Criar nova incidência no MantisBT" 174 | 175 | #: inc/mantis.class.php:564 176 | msgid "MantisBT actions" 177 | msgstr "Ações do MantisBT" 178 | 179 | #: inc/mantis.class.php:602 180 | msgid "What do you want to do ?" 181 | msgstr "O que você quer fazer ?" 182 | 183 | #: inc/mantis.class.php:606 184 | msgid "Only delete link between GLPi object AND MantisBT issue." 185 | msgstr "Apenas excluir o link entre o objeto GLPI E incidência MantisBT." 186 | 187 | #: inc/mantis.class.php:612 188 | msgid "Force delete MantisBT issue (and GLPi object link)." 189 | msgstr "" 190 | "Forçar exclusão de incidência do MantisBT (e relação de objeto do GLPI)." 191 | 192 | #: inc/mantis.class.php:655 193 | msgid "Link to an existing MantisBT issue." 194 | msgstr "Relacionar com uma incidência do MantisBT" 195 | 196 | #: inc/mantis.class.php:658 197 | msgid "Id of MantisBT issue" 198 | msgstr "Id da incidência do MantisBT" 199 | 200 | #: inc/mantis.class.php:661 201 | msgid "Click to load issue from MantisBT" 202 | msgstr "Clique para carregar incidência do MantisBT" 203 | 204 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 205 | msgid "MantisBT field for GLPi fields" 206 | msgstr "Campo do MantisBT para campos do GLPI" 207 | 208 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 209 | msgid "MantisBT field for the link URL to the GLPi object" 210 | msgstr "Campo de URL do MantisBT para objeto do GLPI" 211 | 212 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 213 | msgid "Attachments" 214 | msgstr "Anexos" 215 | 216 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 217 | msgid "Forward attachments" 218 | msgstr "Encaminhar anexos" 219 | 220 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 221 | msgid "Forward ticket followup" 222 | msgstr "Encaminhar acompanhamento de chamado" 223 | 224 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 225 | msgid "Forward ticket tasks" 226 | msgstr "Encaminhar tarefas de chamado" 227 | 228 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 229 | #: inc/userpref.class.php:142 230 | msgid "Forward title" 231 | msgstr "Encaminhar título" 232 | 233 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 234 | #: inc/userpref.class.php:148 235 | msgid "Forward description" 236 | msgstr "Encaminhar descrição" 237 | 238 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 239 | #: inc/userpref.class.php:154 240 | msgid "Forward category" 241 | msgstr "Encaminhar categoria" 242 | 243 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 244 | #: inc/userpref.class.php:160 245 | msgid "Forward linked tickets" 246 | msgstr "Encaminhar chamados relacionados" 247 | 248 | #: inc/mantis.class.php:774 249 | msgid "Exact MantisBT project name" 250 | msgstr "Nome do projeto exato no MantisBT" 251 | 252 | #: inc/mantis.class.php:779 253 | msgid "Click to load project from MantisBT" 254 | msgstr "Clique para carregar o projeto do MantisBT" 255 | 256 | #: inc/mantis.class.php:822 257 | msgid "Steps to reproduce" 258 | msgstr "Passos para reproduzir" 259 | 260 | #: inc/mantis.class.php:838 261 | msgid "Forward followups" 262 | msgstr "Encaminhar acompanhamentos" 263 | 264 | #: inc/mantis.class.php:846 265 | msgid "Forward tasks" 266 | msgstr "Encaminhar tarefas" 267 | 268 | #: inc/mantis.class.php:877 269 | msgid "Link" 270 | msgstr "Relacionar" 271 | 272 | #: inc/mantis.class.php:918 273 | msgid "List of linked MantisBT issues" 274 | msgstr "Lista de incidências do MantisBT relacionadas" 275 | 276 | #: inc/mantis.class.php:965 277 | msgid "Error when loading MantisBT issue" 278 | msgstr "Erro no carregamento de incidência do MantisBT" 279 | 280 | #: inc/mantis.class.php:996 281 | msgid "This GLPi object is not linked to MantisBT" 282 | msgstr "Este objeto do GLPI não está relacionado ao MantisBT" 283 | 284 | #: inc/mantis.class.php:1002 285 | msgid "Escalation to MantisBT is neutralized by GLPi status" 286 | msgstr "Escalonamento para MantisBT está neutralizado pelo status do GLPI" 287 | 288 | #: inc/issue.class.php:113 inc/issue.class.php:419 289 | msgid "Error creating the note, the process was interrupted" 290 | msgstr "Erro na criação de nota, o processo foi interrompido" 291 | 292 | #: inc/issue.class.php:208 293 | msgid "Error when updating MantisBT issue" 294 | msgstr "Erro na atualização da incidência do MantisBT" 295 | 296 | #: inc/issue.class.php:370 inc/issue.class.php:386 297 | msgid "Error: The process was interrupted" 298 | msgstr "Último erro" 299 | 300 | #. TRANS: %1$s is the MantisBT project name 301 | #: inc/issue.class.php:502 inc/issue.class.php:503 302 | #, php-format 303 | msgid "Project '%1$s' does not exist." 304 | msgstr "Projeto '%1$s' não existe." 305 | 306 | #: inc/issue.class.php:538 inc/issue.class.php:542 307 | #, php-format 308 | msgid "" 309 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 310 | msgstr "" 311 | "Não foi possível carregar o anexo [%1$s] para o MantisBT, o processo foi " 312 | "interrompido." 313 | 314 | #: inc/issue.class.php:552 inc/issue.class.php:556 315 | #, php-format 316 | msgid "" 317 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 318 | msgstr "" 319 | "Não foi possível enviar o anexo [%1$s] para o MantisBT, o processo foi " 320 | "interrompido." 321 | 322 | #: inc/issue.class.php:563 inc/issue.class.php:567 323 | #, php-format 324 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 325 | msgstr "Anexo [%1$s] não existe, o processo foi interrompido." 326 | 327 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 328 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 329 | #, php-format 330 | msgid "Title = %1$s
" 331 | msgstr "Título = %1$s
" 332 | 333 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 334 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 335 | #, php-format 336 | msgid "Description = %1$s
" 337 | msgstr "Descrição = %1$s
" 338 | 339 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 340 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 341 | #, php-format 342 | msgid "Category = %1$s
" 343 | msgstr "Categoria = %1$s
" 344 | 345 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 346 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 347 | #, php-format 348 | msgid "Link to GLPi object = %1$s
" 349 | msgstr "Relacionar a objeto do GLPI = %1$s
" 350 | 351 | #: inc/issue.class.php:876 352 | #, php-format 353 | msgid "" 354 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content :" 355 | " %5$s
" 356 | msgstr "" 357 | "Acompanhamentos =%1$s -> date : %2$s, tipo de requisição : %3$s, usuário : " 358 | "%4$s, conteúdo : %5$s
" 359 | 360 | #: inc/issue.class.php:884 361 | msgid "No follow-up" 362 | msgstr "Sem acompanhamento" 363 | 364 | #: inc/issue.class.php:919 365 | #, php-format 366 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 367 | msgstr "Tarefa = %1$s -> : %2$s, descrição : %3$s, tempo : %4$s
" 368 | 369 | #: inc/issue.class.php:926 370 | msgid "No task" 371 | msgstr "Sem tarefas" 372 | 373 | #: inc/config.class.php:41 374 | msgid "Setup - MantisBT" 375 | msgstr "Configuração - MantisBT" 376 | 377 | #: inc/config.class.php:77 378 | msgid "MantisBT server base URL" 379 | msgstr "URL de servidor da base MantisBT" 380 | 381 | #: inc/config.class.php:85 382 | msgid "Check SSL" 383 | msgstr "Verifique o certificado SSL usado" 384 | 385 | #: inc/config.class.php:94 386 | msgid "Use GLPi proxy configuration" 387 | msgstr "Use a configuração de proxy do GLPI" 388 | 389 | #: inc/config.class.php:103 390 | msgid "Wsdl file path" 391 | msgstr "Caminho de arquivo Wsdl" 392 | 393 | #: inc/config.class.php:111 394 | msgid "MantisBT user login" 395 | msgstr "Login de usuário MantisBT" 396 | 397 | #: inc/config.class.php:118 398 | msgid "MantisBT user password" 399 | msgstr "Senha de usuário MantisBT" 400 | 401 | #: inc/config.class.php:125 402 | msgid "Allow assignation" 403 | msgstr "Permitir atribuição" 404 | 405 | #: inc/config.class.php:133 406 | msgid "" 407 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 408 | msgstr "" 409 | "Neutralizar o escalonamento para MantisBT quando o status do objeto do GLPI " 410 | "for" 411 | 412 | #: inc/config.class.php:144 413 | msgid "Status of GLPi object after escalation to MantisBT" 414 | msgstr "Status do objeto do GLPI depois do escalonamento para MantisBT" 415 | 416 | #: inc/config.class.php:155 417 | msgid "Show option 'Delete the MantisBT issue' " 418 | msgstr "Exibir a opção 'Exlcuir incidência em MantisBT'" 419 | 420 | #: inc/config.class.php:163 421 | msgid "Attachment type transfered to MantisBT" 422 | msgstr "Tipo de anexo transferido ao MantisBT" 423 | 424 | #: inc/config.class.php:174 425 | msgid "MantisBT field for GLPI fields" 426 | msgstr "Campos do MantisBT para campos do GLPI" 427 | 428 | #: inc/config.class.php:193 429 | msgid "Close GLPi ticket when MantisBT issue status is" 430 | msgstr "Fechar chamado GLPI quando o status de incidência do MantisBT for" 431 | 432 | #: inc/config.class.php:202 433 | msgid "Solution type when MantisBT issue is resolved" 434 | msgstr "Tipo de solução quando o problema MantisBT é resolvido" 435 | 436 | #: inc/config.class.php:212 437 | msgid "GLPi user who solves ticket ?" 438 | msgstr "Usuário informado ao resolver o objeto GLPI por MantisBT" 439 | 440 | #: inc/config.class.php:224 441 | msgid "Test the connection" 442 | msgstr "Testar conexão" 443 | 444 | #: inc/userpref.class.php:117 445 | msgid "Default checkbox status" 446 | msgstr "Status padrão da caixa de seleção" 447 | 448 | #: inc/userpref.class.php:123 449 | msgid "Forward document(s)" 450 | msgstr "Encaminhar documento(s)" 451 | 452 | #: ajax/ajax.php:122 453 | msgid "Documents for related tickets" 454 | msgstr "Documentos para chamados relacionados" 455 | 456 | #: ajax/ajax.php:167 ajax/ajax.php:209 457 | msgid "MantisBT issue does not exist" 458 | msgstr "Incidência de MantisBT não existe" 459 | 460 | #: ajax/ajax.php:174 ajax/ajax.php:215 461 | msgid "This GLPi object is already linked to the selected MantisBT issue" 462 | msgstr "" 463 | "Este objeto do GLPI já está relacionado a incidência MantisBT selecionada" 464 | 465 | #: ajax/ajax.php:178 ajax/ajax.php:220 466 | msgid "This MantisBT issue is closed" 467 | msgstr "Esta incidência MantisBT está fechada" 468 | 469 | #: ajax/ajax.php:300 ajax/ajax.php:318 470 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 471 | msgstr "Erro na exclusão da relação entre o objeto GLPI e incidência MantisBT" 472 | 473 | #: ajax/ajax.php:321 474 | msgid "Error while deleting the MantisBT issue" 475 | msgstr "Erro na exclusão de incidência MantisBT" 476 | 477 | #: ajax/ajax.php:324 478 | msgid "The MantisBT issue doesn't exists" 479 | msgstr "A incidência MantisBT não existe" 480 | -------------------------------------------------------------------------------- /locales/pt_BR.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | # Translators: 7 | # Arthur Ramos Schaefer , 2017 8 | # Legastelois François , 2018 9 | # Rui Melo , 2019 10 | # 11 | #, fuzzy 12 | msgid "" 13 | msgstr "" 14 | "Project-Id-Version: PACKAGE VERSION\n" 15 | "Report-Msgid-Bugs-To: \n" 16 | "POT-Creation-Date: 2020-07-03 19:21+0000\n" 17 | "PO-Revision-Date: 2016-10-05 17:06+0000\n" 18 | "Last-Translator: Rui Melo , 2019\n" 19 | "Language-Team: Portuguese (Brazil) (https://www.transifex.com/teclib/teams/28042/pt_BR/)\n" 20 | "MIME-Version: 1.0\n" 21 | "Content-Type: text/plain; charset=UTF-8\n" 22 | "Content-Transfer-Encoding: 8bit\n" 23 | "Language: pt_BR\n" 24 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 25 | 26 | #: hook.php:85 27 | msgid "Number of linked MantisBT issues" 28 | msgstr "Número de incidências relacionadas com MantisBT" 29 | 30 | #: inc/profile.class.php:57 31 | msgid "Use the plugin MantisBT" 32 | msgstr "Usar o plugin MantisBT" 33 | 34 | #: inc/mantisws.class.php:95 35 | #, php-format 36 | msgid "Error to connect to the web service MantisBT => '%1$s'" 37 | msgstr "Erro para conectar ao serviço web MantisBT => '%1$s'" 38 | 39 | #: inc/mantisws.class.php:136 inc/mantisws.class.php:164 40 | #: inc/mantisws.class.php:187 41 | #, php-format 42 | msgid "Error retrieving user of project id '%1$s' => '%2$s'" 43 | msgstr "Erro na recuperação do usuário do projeto id '%1$s' => '%2$s'" 44 | 45 | #: inc/mantisws.class.php:204 46 | #, php-format 47 | msgid "Error retrieving category from the project id '%1$s' => '%2$s'" 48 | msgstr "Erro na recuperação da categoria do projeto id '%1$s' => ' %2$s'" 49 | 50 | #: inc/mantisws.class.php:220 51 | #, php-format 52 | msgid "Error when checking existence of the MantisBT ticket '%1$s' => '%2$s'" 53 | msgstr "Erro verificando a existência do chamado no MantisBT '%1$s' => '%2$s'" 54 | 55 | #: inc/mantisws.class.php:248 56 | #, php-format 57 | msgid "error while creating note => '%1$s'" 58 | msgstr "erro na criação da nota => '%1$s'" 59 | 60 | #: inc/mantisws.class.php:269 61 | #, php-format 62 | msgid "WARNING: %1$s already exists" 63 | msgstr "Aviso%1$s já existe" 64 | 65 | #: inc/mantisws.class.php:272 66 | #, php-format 67 | msgid "error while creating attachment => '%1$s'" 68 | msgstr "erro criando anexo => '%1$s'" 69 | 70 | #: inc/mantisws.class.php:292 71 | #, php-format 72 | msgid "error while getting attachment => '%1$s'" 73 | msgstr "erro na captura do anexo => '%1$s'" 74 | 75 | #: inc/mantisws.class.php:308 76 | #, php-format 77 | msgid "Error creating MantisBT ticket '%1$s'" 78 | msgstr "Erro na criação do chamado MantisBT '%1$s'" 79 | 80 | #: inc/mantisws.class.php:325 81 | #, php-format 82 | msgid "Error searching MantisBT ticket '%1$s' => '%2$s'" 83 | msgstr "Erro na procura do chamado MantisBT '%1$s' => '%2$s'" 84 | 85 | #: inc/mantisws.class.php:341 86 | #, php-format 87 | msgid "Error retrieving the id of the project by it's name '%1$s' => '%2$s'" 88 | msgstr "Erro na recuperação da id do projeto pelo seu nome '%1$s' => '%2$s'" 89 | 90 | #: inc/mantisws.class.php:362 91 | #, php-format 92 | msgid "" 93 | "Error when checking the existence of the project by his name '%1$s' => " 94 | "'%2$s'" 95 | msgstr "" 96 | "Erro na verificação de existência de projeto pelo seu nome '%1$s' => '%2$s'" 97 | 98 | #: inc/mantisws.class.php:378 99 | #, php-format 100 | msgid "Error when deleting note '%1$s' => '%2$s'" 101 | msgstr "Erro na exclusão da nota '%1$s' => '%2$s'" 102 | 103 | #: inc/mantisws.class.php:394 104 | #, php-format 105 | msgid "Error when deleting attachment '%1$s' => '%2$s'" 106 | msgstr "Erro na exclusão de anexo '%1$s' => '%2$s'" 107 | 108 | #: inc/mantisws.class.php:408 109 | #, php-format 110 | msgid "Error when getting MantisBT states => '%1$s'" 111 | msgstr "Erro na obtenção dos status do MantisBT => '%1$s'" 112 | 113 | #: inc/mantisws.class.php:417 114 | #, php-format 115 | msgid "Error when updating MantisBT => '%1$s'" 116 | msgstr "Erro na atualização do MantisBT => '%1$s'" 117 | 118 | #: inc/mantis.class.php:39 inc/userpref.class.php:64 inc/userpref.class.php:70 119 | msgid "MantisBT" 120 | msgstr "MantisBT" 121 | 122 | #: inc/mantis.class.php:183 setup.php:91 123 | msgid "MantisBT synchronization" 124 | msgstr "Sincronização do MantisBT" 125 | 126 | #: inc/mantis.class.php:195 127 | msgid "Starting update attachments." 128 | msgstr "Inciando atualização de anexos." 129 | 130 | #: inc/mantis.class.php:214 131 | #, php-format 132 | msgid "GLPi object [%1$s:%2$s] is solved or closed." 133 | msgstr "Objeto do GLPI [%1$s:%2$s] está solucionado ou fechado." 134 | 135 | #: inc/mantis.class.php:241 136 | #, php-format 137 | msgid "Can't load GLPi file [%1$s]." 138 | msgstr "Não é possível carregar o arquivo do GLPI [%1$s]." 139 | 140 | #: inc/mantis.class.php:254 141 | #, php-format 142 | msgid "Can't send GLPi file [%1$s] to MantisBD." 143 | msgstr "Não é possível enviar o arquivo do GLPI [%1$s] para o MantisBT." 144 | 145 | #: inc/mantis.class.php:262 146 | #, php-format 147 | msgid "GLPi file [%1$s] doesn't exists." 148 | msgstr "Arquivo do GLPI [%1$s] não existe." 149 | 150 | #: inc/mantis.class.php:269 151 | #, php-format 152 | msgid "GLPi file [%1$s] already exists in MantisBT issue." 153 | msgstr "Arquivo do GLPI [%1$s] já existe em uma incidência do MantisBT." 154 | 155 | #: inc/mantis.class.php:309 156 | #, php-format 157 | msgid "GLPi object [%1$s:%2$s] is already solved or closed." 158 | msgstr "Objeto do GLPI [%1$s:%2$s] já está solucionado ou fechado." 159 | 160 | #: inc/mantis.class.php:341 161 | msgid "Plugin configuration is not correct (MantisBT status is missing)" 162 | msgstr "" 163 | "Configuração de plugin não está correta (Status MantisBT está faltando)" 164 | 165 | #: inc/mantis.class.php:516 166 | msgid "Plugin configuration is not correct (connection error)." 167 | msgstr "Configuração de plugin não está correta (erro de conexão)." 168 | 169 | #: inc/mantis.class.php:550 inc/mantis.class.php:569 170 | msgid "Link to an existing MantisBT issue" 171 | msgstr "Relacionar com uma incidência do MantisBT" 172 | 173 | #: inc/mantis.class.php:558 inc/mantis.class.php:574 inc/mantis.class.php:771 174 | msgid "Create a new MantisBT issue" 175 | msgstr "Criar nova incidência no MantisBT" 176 | 177 | #: inc/mantis.class.php:564 178 | msgid "MantisBT actions" 179 | msgstr "Ações do MantisBT" 180 | 181 | #: inc/mantis.class.php:602 182 | msgid "What do you want to do ?" 183 | msgstr "O que você quer fazer ?" 184 | 185 | #: inc/mantis.class.php:606 186 | msgid "Only delete link between GLPi object AND MantisBT issue." 187 | msgstr "Apenas excluir o link entre o objeto GLPI E incidência MantisBT." 188 | 189 | #: inc/mantis.class.php:612 190 | msgid "Force delete MantisBT issue (and GLPi object link)." 191 | msgstr "" 192 | "Forçar exclusão de incidência do MantisBT (e relação de objeto do GLPI)." 193 | 194 | #: inc/mantis.class.php:655 195 | msgid "Link to an existing MantisBT issue." 196 | msgstr "Relacionar com uma incidência do MantisBT" 197 | 198 | #: inc/mantis.class.php:658 199 | msgid "Id of MantisBT issue" 200 | msgstr "Id da incidência do MantisBT" 201 | 202 | #: inc/mantis.class.php:661 203 | msgid "Click to load issue from MantisBT" 204 | msgstr "Clique para carregar incidência do MantisBT" 205 | 206 | #: inc/mantis.class.php:666 inc/mantis.class.php:791 207 | msgid "MantisBT field for GLPi fields" 208 | msgstr "Campo do MantisBT para campos do GLPI" 209 | 210 | #: inc/mantis.class.php:673 inc/mantis.class.php:798 inc/config.class.php:184 211 | msgid "MantisBT field for the link URL to the GLPi object" 212 | msgstr "Campo de URL do MantisBT para objeto do GLPI" 213 | 214 | #: inc/mantis.class.php:681 inc/mantis.class.php:827 215 | msgid "Attachments" 216 | msgstr "Anexos" 217 | 218 | #: inc/mantis.class.php:684 inc/mantis.class.php:830 219 | msgid "Forward attachments" 220 | msgstr "Encaminhar anexos" 221 | 222 | #: inc/mantis.class.php:692 inc/userpref.class.php:130 223 | msgid "Forward ticket followup" 224 | msgstr "Encaminhar acompanhamento de chamado" 225 | 226 | #: inc/mantis.class.php:700 inc/userpref.class.php:136 227 | msgid "Forward ticket tasks" 228 | msgstr "Encaminhar tarefas de chamado" 229 | 230 | #: inc/mantis.class.php:707 inc/mantis.class.php:853 231 | #: inc/userpref.class.php:142 232 | msgid "Forward title" 233 | msgstr "Encaminhar título" 234 | 235 | #: inc/mantis.class.php:713 inc/mantis.class.php:859 236 | #: inc/userpref.class.php:148 237 | msgid "Forward description" 238 | msgstr "Encaminhar descrição" 239 | 240 | #: inc/mantis.class.php:719 inc/mantis.class.php:865 241 | #: inc/userpref.class.php:154 242 | msgid "Forward category" 243 | msgstr "Encaminhar categoria" 244 | 245 | #: inc/mantis.class.php:726 inc/mantis.class.php:872 246 | #: inc/userpref.class.php:160 247 | msgid "Forward linked tickets" 248 | msgstr "Encaminhar chamados relacionados" 249 | 250 | #: inc/mantis.class.php:774 251 | msgid "Exact MantisBT project name" 252 | msgstr "Nome do projeto exato no MantisBT" 253 | 254 | #: inc/mantis.class.php:779 255 | msgid "Click to load project from MantisBT" 256 | msgstr "Clique para carregar o projeto do MantisBT" 257 | 258 | #: inc/mantis.class.php:822 259 | msgid "Steps to reproduce" 260 | msgstr "Passos para reproduzir" 261 | 262 | #: inc/mantis.class.php:838 263 | msgid "Forward followups" 264 | msgstr "Encaminhar acompanhamentos" 265 | 266 | #: inc/mantis.class.php:846 267 | msgid "Forward tasks" 268 | msgstr "Encaminhar tarefas" 269 | 270 | #: inc/mantis.class.php:877 271 | msgid "Link" 272 | msgstr "Relacionar" 273 | 274 | #: inc/mantis.class.php:918 275 | msgid "List of linked MantisBT issues" 276 | msgstr "Lista de incidências do MantisBT relacionadas" 277 | 278 | #: inc/mantis.class.php:965 279 | msgid "Error when loading MantisBT issue" 280 | msgstr "Erro no carregamento de incidência do MantisBT" 281 | 282 | #: inc/mantis.class.php:996 283 | msgid "This GLPi object is not linked to MantisBT" 284 | msgstr "Este objeto do GLPI não está relacionado ao MantisBT" 285 | 286 | #: inc/mantis.class.php:1002 287 | msgid "Escalation to MantisBT is neutralized by GLPi status" 288 | msgstr "Escalonamento para MantisBT está neutralizado pelo status do GLPI" 289 | 290 | #: inc/issue.class.php:113 inc/issue.class.php:419 291 | msgid "Error creating the note, the process was interrupted" 292 | msgstr "Erro na criação de nota, o processo foi interrompido" 293 | 294 | #: inc/issue.class.php:208 295 | msgid "Error when updating MantisBT issue" 296 | msgstr "Erro na atualização da incidência do MantisBT" 297 | 298 | #: inc/issue.class.php:370 inc/issue.class.php:386 299 | msgid "Error: The process was interrupted" 300 | msgstr "Erro: O processo foi interrompido" 301 | 302 | #. TRANS: %1$s is the MantisBT project name 303 | #: inc/issue.class.php:502 inc/issue.class.php:503 304 | #, php-format 305 | msgid "Project '%1$s' does not exist." 306 | msgstr "Projeto '%1$s' não existe." 307 | 308 | #: inc/issue.class.php:538 inc/issue.class.php:542 309 | #, php-format 310 | msgid "" 311 | "Can't load the attachment [%1$s] to MantisBT, the process was interrupted." 312 | msgstr "" 313 | "Não foi possível carregar o anexo [%1$s] para o MantisBT, o processo foi " 314 | "interrompido." 315 | 316 | #: inc/issue.class.php:552 inc/issue.class.php:556 317 | #, php-format 318 | msgid "" 319 | "Can't send the attachment [%1$s] to MantisBT, the process was interrupted." 320 | msgstr "" 321 | "Não foi possível enviar o anexo [%1$s] para o MantisBT, o processo foi " 322 | "interrompido." 323 | 324 | #: inc/issue.class.php:563 inc/issue.class.php:567 325 | #, php-format 326 | msgid "Attachment [%1$s] doesn't exists, the process was interrupted." 327 | msgstr "Anexo [%1$s] não existe, o processo foi interrompido." 328 | 329 | #: inc/issue.class.php:583 inc/issue.class.php:622 inc/issue.class.php:663 330 | #: inc/issue.class.php:703 inc/issue.class.php:744 inc/issue.class.php:783 331 | #, php-format 332 | msgid "Title = %1$s
" 333 | msgstr "Título = %1$s
" 334 | 335 | #: inc/issue.class.php:587 inc/issue.class.php:626 inc/issue.class.php:667 336 | #: inc/issue.class.php:707 inc/issue.class.php:748 inc/issue.class.php:787 337 | #, php-format 338 | msgid "Description = %1$s
" 339 | msgstr "Descrição = %1$s
" 340 | 341 | #: inc/issue.class.php:600 inc/issue.class.php:639 inc/issue.class.php:680 342 | #: inc/issue.class.php:720 inc/issue.class.php:761 inc/issue.class.php:800 343 | #, php-format 344 | msgid "Category = %1$s
" 345 | msgstr "Categoria = %1$s
" 346 | 347 | #: inc/issue.class.php:606 inc/issue.class.php:645 inc/issue.class.php:686 348 | #: inc/issue.class.php:726 inc/issue.class.php:767 inc/issue.class.php:806 349 | #, php-format 350 | msgid "Link to GLPi object = %1$s
" 351 | msgstr "Relacionar a objeto do GLPI = %1$s
" 352 | 353 | #: inc/issue.class.php:876 354 | #, php-format 355 | msgid "" 356 | "Followups = %1$s -> date : %2$s, request type : %3$s, user : %4$s, content :" 357 | " %5$s
" 358 | msgstr "" 359 | "Acompanhamentos =%1$s -> date : %2$s, tipo de requisição : %3$s, usuário : " 360 | "%4$s, conteúdo : %5$s
" 361 | 362 | #: inc/issue.class.php:884 363 | msgid "No follow-up" 364 | msgstr "Sem acompanhamento" 365 | 366 | #: inc/issue.class.php:919 367 | #, php-format 368 | msgid "Task = %1$s -> date : %2$s, description : %3$s, time : %4$s
" 369 | msgstr "Tarefa = %1$s -> : %2$s, descrição : %3$s, tempo : %4$s
" 370 | 371 | #: inc/issue.class.php:926 372 | msgid "No task" 373 | msgstr "Sem tarefas" 374 | 375 | #: inc/config.class.php:41 376 | msgid "Setup - MantisBT" 377 | msgstr "Configuração - MantisBT" 378 | 379 | #: inc/config.class.php:77 380 | msgid "MantisBT server base URL" 381 | msgstr "URL de servidor da base MantisBT" 382 | 383 | #: inc/config.class.php:85 384 | msgid "Check SSL" 385 | msgstr "Verifique o certificado SSL usado" 386 | 387 | #: inc/config.class.php:94 388 | msgid "Use GLPi proxy configuration" 389 | msgstr "Use a configuração de proxy do GLPI" 390 | 391 | #: inc/config.class.php:103 392 | msgid "Wsdl file path" 393 | msgstr "Caminho de arquivo Wsdl" 394 | 395 | #: inc/config.class.php:111 396 | msgid "MantisBT user login" 397 | msgstr "Login de usuário MantisBT" 398 | 399 | #: inc/config.class.php:118 400 | msgid "MantisBT user password" 401 | msgstr "Senha de usuário MantisBT" 402 | 403 | #: inc/config.class.php:125 404 | msgid "Allow assignation" 405 | msgstr "Permitir atribuição" 406 | 407 | #: inc/config.class.php:133 408 | msgid "" 409 | "Neutralize the escalation to MantisBT when the status of the GLPi object is" 410 | msgstr "" 411 | "Neutralizar o escalonamento para MantisBT quando o status do objeto do GLPI " 412 | "for" 413 | 414 | #: inc/config.class.php:144 415 | msgid "Status of GLPi object after escalation to MantisBT" 416 | msgstr "Status do objeto do GLPI depois do escalonamento para MantisBT" 417 | 418 | #: inc/config.class.php:155 419 | msgid "Show option 'Delete the MantisBT issue' " 420 | msgstr "Exibir a opção 'Exlcuir incidência em MantisBT'" 421 | 422 | #: inc/config.class.php:163 423 | msgid "Attachment type transfered to MantisBT" 424 | msgstr "Tipo de anexo transferido ao MantisBT" 425 | 426 | #: inc/config.class.php:174 427 | msgid "MantisBT field for GLPI fields" 428 | msgstr "Campos do MantisBT para campos do GLPI" 429 | 430 | #: inc/config.class.php:193 431 | msgid "Close GLPi ticket when MantisBT issue status is" 432 | msgstr "Fechar chamado GLPI quando o status de incidência do MantisBT for" 433 | 434 | #: inc/config.class.php:202 435 | msgid "Solution type when MantisBT issue is resolved" 436 | msgstr "Tipo de solução quando o problema MantisBT é resolvido" 437 | 438 | #: inc/config.class.php:212 439 | msgid "GLPi user who solves ticket ?" 440 | msgstr "Usuário informado ao resolver o objeto GLPI por MantisBT" 441 | 442 | #: inc/config.class.php:224 443 | msgid "Test the connection" 444 | msgstr "Testar conexão" 445 | 446 | #: inc/userpref.class.php:117 447 | msgid "Default checkbox status" 448 | msgstr "Status padrão da caixa de seleção" 449 | 450 | #: inc/userpref.class.php:123 451 | msgid "Forward document(s)" 452 | msgstr "Encaminhar documento(s)" 453 | 454 | #: ajax/ajax.php:122 455 | msgid "Documents for related tickets" 456 | msgstr "Documentos para chamados relacionados" 457 | 458 | #: ajax/ajax.php:167 ajax/ajax.php:209 459 | msgid "MantisBT issue does not exist" 460 | msgstr "Incidência de MantisBT não existe" 461 | 462 | #: ajax/ajax.php:174 ajax/ajax.php:215 463 | msgid "This GLPi object is already linked to the selected MantisBT issue" 464 | msgstr "" 465 | "Este objeto do GLPI já está relacionado a incidência MantisBT selecionada" 466 | 467 | #: ajax/ajax.php:178 ajax/ajax.php:220 468 | msgid "This MantisBT issue is closed" 469 | msgstr "Esta incidência MantisBT está fechada" 470 | 471 | #: ajax/ajax.php:300 ajax/ajax.php:318 472 | msgid "Error while deleting the link between GLPi object and MantisBT issue" 473 | msgstr "Erro na exclusão da relação entre o objeto GLPI e incidência MantisBT" 474 | 475 | #: ajax/ajax.php:321 476 | msgid "Error while deleting the MantisBT issue" 477 | msgstr "Erro na exclusão de incidência MantisBT" 478 | 479 | #: ajax/ajax.php:324 480 | msgid "The MantisBT issue doesn't exists" 481 | msgstr "A incidência MantisBT não existe" 482 | --------------------------------------------------------------------------------