Initial load of data model 2.0
SVN:trunk[2283]
47
datamodels/2.x/authent-external/de.dict.authent-external.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:UserExternal' => 'Externer Benutzer',
|
||||
'Class:UserExternal+' => 'Benutzer außerhalb von iTop',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
47
datamodels/2.x/authent-external/en.dict.authent-external.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:UserExternal' => 'External user',
|
||||
'Class:UserExternal+' => 'User authentified outside of iTop',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
28
datamodels/2.x/authent-external/fr.dict.authent-external.php
Executable file
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:UserExternal' => 'Utilisateur externe à iTop',
|
||||
'Class:UserExternal+' => 'Utilisateur authentifié à l\'extérieur d\'iTop',
|
||||
));
|
||||
?>
|
||||
25
datamodels/2.x/authent-external/hu.dict.authent-external.php
Executable file
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'Class:UserExternal' => 'Külső felhasználó',
|
||||
'Class:UserExternal+' => '',
|
||||
));
|
||||
?>
|
||||
47
datamodels/2.x/authent-external/it.dict.authent-external.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:UserExternal' => 'Esterno utente',
|
||||
'Class:UserExternal+' => 'Utente autenticato al di fuori di iTop',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
48
datamodels/2.x/authent-external/ja.dict.authent-external.php
Executable file
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Hirofumi Kosaka <kosaka@rworks.jp>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:UserExternal' => '外部ユーザー', # 'External user',
|
||||
'Class:UserExternal+' => '外部認証ユーザー', # 'User authentified outside of iTop',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
89
datamodels/2.x/authent-external/model.authent-external.php
Executable file
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Authent External
|
||||
* User authentication Module, for authentication outside of the iTop application
|
||||
* for example using a .htaccess file. The web server is in charge of authentifying the users
|
||||
* and providing the name (= 'login') of the authentified user in the $_SERVER['REMOTE_USER']
|
||||
* variable that is passed to PHP. iTop will not make any attempt to authentify such users.
|
||||
* Similarly once inside iTop, there is no way for the users to change their password or
|
||||
* log off from the iTop application, this has to be handled outside of iTop.
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
|
||||
class UserExternal extends User
|
||||
{
|
||||
public static function Init()
|
||||
{
|
||||
$aParams = array
|
||||
(
|
||||
"category" => "addon/authentication",
|
||||
"key_type" => "autoincrement",
|
||||
"name_attcode" => "login",
|
||||
"state_attcode" => "",
|
||||
"reconc_keys" => array('login'),
|
||||
"db_table" => "",
|
||||
"db_key_field" => "id",
|
||||
"db_finalclass_field" => "",
|
||||
"display_template" => "",
|
||||
);
|
||||
MetaModel::Init_Params($aParams);
|
||||
MetaModel::Init_InheritAttributes();
|
||||
|
||||
// Display lists
|
||||
MetaModel::Init_SetZListItems('details', array('contactid', 'first_name', 'email', 'login', 'language', 'profile_list', 'allowed_org_list')); // Attributes to be displayed for the complete details
|
||||
MetaModel::Init_SetZListItems('list', array('first_name', 'last_name', 'login')); // Attributes to be displayed for a list
|
||||
// Search criteria
|
||||
MetaModel::Init_SetZListItems('standard_search', array('login', 'contactid')); // Criteria of the std search form
|
||||
MetaModel::Init_SetZListItems('advanced_search', array('login', 'contactid')); // Criteria of the advanced search form
|
||||
}
|
||||
|
||||
/**
|
||||
* Check the user's password... always return true. Actually the password
|
||||
* is not even passed to this function, we trust the web server for authentifiying
|
||||
* the users
|
||||
*/
|
||||
public function CheckCredentials($sPassword)
|
||||
{
|
||||
// External authentication: for iTop it's always Ok
|
||||
return true;
|
||||
}
|
||||
|
||||
public function TrustWebServerContext()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function CanChangePassword()
|
||||
{
|
||||
// External authentication: iTop has no way to change a user's password
|
||||
return false;
|
||||
}
|
||||
|
||||
public function ChangePassword($sOldPassword, $sNewPassword)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
65
datamodels/2.x/authent-external/module.authent-external.php
Executable file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Authent External
|
||||
* Module definition file for the "External Authentication" module
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
SetupWebPage::AddModule(
|
||||
__FILE__, // Path to the current file, all other file names are relative to the directory containing this file
|
||||
'authent-external/1.0.0',
|
||||
array(
|
||||
// Identification
|
||||
//
|
||||
'label' => 'External user authentication',
|
||||
'category' => 'authentication',
|
||||
|
||||
// Setup
|
||||
//
|
||||
'dependencies' => array(
|
||||
),
|
||||
'mandatory' => false,
|
||||
'visible' => true,
|
||||
|
||||
// Components
|
||||
//
|
||||
'datamodel' => array(
|
||||
'model.authent-external.php',
|
||||
),
|
||||
'data.struct' => array(
|
||||
//'data.struct.authent-ldap.xml',
|
||||
),
|
||||
'data.sample' => array(
|
||||
//'data.sample.authent-ldap.xml',
|
||||
),
|
||||
|
||||
// Documentation
|
||||
//
|
||||
'doc.manual_setup' => '',
|
||||
'doc.more_information' => '',
|
||||
|
||||
// Default settings
|
||||
//
|
||||
'settings' => array(),
|
||||
)
|
||||
);
|
||||
?>
|
||||
25
datamodels/2.x/authent-external/pt_br.dict.authent-external.php
Executable file
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'Class:UserExternal' => 'Usuário externo',
|
||||
'Class:UserExternal+' => '',
|
||||
));
|
||||
?>
|
||||
43
datamodels/2.x/authent-external/ru.dict.authent-external.php
Executable file
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Vladimir Shilov <shilow@ukr.net>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:UserExternal' => 'Внешний пользователь',
|
||||
'Class:UserExternal+' => 'Пользователь аутентифицированный вне iTop',
|
||||
));
|
||||
|
||||
?>
|
||||
46
datamodels/2.x/authent-external/tr.dict.authent-external.php
Executable file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Izzet Sirin <izzet.sirin@htr.com.tr>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:UserExternal' => 'Harici kullanıcı',
|
||||
'Class:UserExternal+' => 'iTop dışında yetki kontrolü yapılan kullanıcı',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
45
datamodels/2.x/authent-external/zh.dict.authent-external.php
Executable file
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Robert Deng <denglx@gmail.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserExternal
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserExternal' => '外部用户',
|
||||
'Class:UserExternal+' => '用户在 iTop 外部验证身份',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
50
datamodels/2.x/authent-ldap/de.dict.authent-ldap.php
Executable file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Stephan Rosenke <stephan.rosenke@itomig.de>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:UserLDAP' => 'LDAP-Benutzer',
|
||||
'Class:UserLDAP+' => 'Benutzer, der über LDAP authentifiziert wird',
|
||||
'Class:UserLDAP/Attribute:password' => 'Passwort',
|
||||
'Class:UserLDAP/Attribute:password+' => 'Benutzerpasswort',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
49
datamodels/2.x/authent-ldap/en.dict.authent-ldap.php
Executable file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:UserLDAP' => 'LDAP user',
|
||||
'Class:UserLDAP+' => 'User authentified by LDAP',
|
||||
'Class:UserLDAP/Attribute:password' => 'Password',
|
||||
'Class:UserLDAP/Attribute:password+' => 'user authentication string',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
30
datamodels/2.x/authent-ldap/fr.dict.authent-ldap.php
Executable file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:UserLDAP' => 'Utilisateur LDAP',
|
||||
'Class:UserLDAP+' => 'Utilisateur authentifié par un serveur LDAP',
|
||||
'Class:UserLDAP/Attribute:password' => 'Mot de passe LDAP',
|
||||
'Class:UserLDAP/Attribute:password+' => '',
|
||||
));
|
||||
?>
|
||||
27
datamodels/2.x/authent-ldap/hu.dict.authent-ldap.php
Executable file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'Class:UserLDAP' => 'LDAP felhasználó',
|
||||
'Class:UserLDAP+' => '',
|
||||
'Class:UserLDAP/Attribute:password' => 'Jelszó',
|
||||
'Class:UserLDAP/Attribute:password+' => '',
|
||||
));
|
||||
?>
|
||||
49
datamodels/2.x/authent-ldap/it.dict.authent-ldap.php
Executable file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:UserLDAP' => 'Utente LDAP',
|
||||
'Class:UserLDAP+' => 'Utente autenticato da LDAP',
|
||||
'Class:UserLDAP/Attribute:password' => 'Password',
|
||||
'Class:UserLDAP/Attribute:password+' => 'user authentication string',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
50
datamodels/2.x/authent-ldap/ja.dict.authent-ldap.php
Executable file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Hirofumi Kosaka <kosaka@rworks.jp>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:UserLDAP' => 'LDAP ユーザー', # 'LDAP user',
|
||||
'Class:UserLDAP+' => 'LDAP認証ユーザー', # 'User authentified by LDAP',
|
||||
'Class:UserLDAP/Attribute:password' => 'パスワード', # 'Password',
|
||||
'Class:UserLDAP/Attribute:password+' => '認証文字列', # 'user authentication string',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
188
datamodels/2.x/authent-ldap/model.authent-ldap.php
Executable file
@@ -0,0 +1,188 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Authent LDAP
|
||||
* User authentication Module, no password at all!
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
|
||||
class UserLDAP extends UserInternal
|
||||
{
|
||||
public static function Init()
|
||||
{
|
||||
$aParams = array
|
||||
(
|
||||
"category" => "addon/authentication",
|
||||
"key_type" => "autoincrement",
|
||||
"name_attcode" => "login",
|
||||
"state_attcode" => "",
|
||||
"reconc_keys" => array('login'),
|
||||
"db_table" => "",
|
||||
"db_key_field" => "id",
|
||||
"db_finalclass_field" => "",
|
||||
"display_template" => "",
|
||||
);
|
||||
MetaModel::Init_Params($aParams);
|
||||
MetaModel::Init_InheritAttributes();
|
||||
|
||||
// Display lists
|
||||
MetaModel::Init_SetZListItems('details', array('contactid', 'first_name', 'email', 'login', 'language', 'profile_list', 'allowed_org_list')); // Attributes to be displayed for the complete details
|
||||
MetaModel::Init_SetZListItems('list', array('first_name', 'last_name', 'login')); // Attributes to be displayed for a list
|
||||
// Search criteria
|
||||
MetaModel::Init_SetZListItems('standard_search', array('login', 'contactid')); // Criteria of the std search form
|
||||
MetaModel::Init_SetZListItems('advanced_search', array('login', 'contactid')); // Criteria of the advanced search form
|
||||
}
|
||||
|
||||
/**
|
||||
* Check the user's password against the LDAP server
|
||||
* Algorithm:
|
||||
* 1) Connect to the LDAP server, using a predefined account (or anonymously)
|
||||
* 2) Search for the specified user, based on a specific search query/pattern
|
||||
* 3) If exactly one user is found, continue, otherwise return false (wrong user or wrong query configured)
|
||||
* 3) Bind again to LDAP using the DN of the found user and the password
|
||||
* 4) If the bind is successful return true, otherwise return false (wrong password)
|
||||
* @param string $sPassword The user's password to validate against the LDAP server
|
||||
* @return boolean True if the password is Ok, false otherwise
|
||||
*/
|
||||
public function CheckCredentials($sPassword)
|
||||
{
|
||||
$sLDAPHost = MetaModel::GetModuleSetting('authent-ldap', 'host', 'localhost');
|
||||
$iLDAPPort = MetaModel::GetModuleSetting('authent-ldap', 'port', 389);
|
||||
|
||||
$sDefaultLDAPUser = MetaModel::GetModuleSetting('authent-ldap', 'default_user', '');
|
||||
$sDefaultLDAPPwd = MetaModel::GetModuleSetting('authent-ldap', 'default_pwd', '');
|
||||
|
||||
|
||||
$hDS = @ldap_connect($sLDAPHost, $iLDAPPort);
|
||||
if ($hDS === false)
|
||||
{
|
||||
$this->LogMessage("ldap_authentication: can not connect to the LDAP server '$sLDAPHost' (port: $iLDAPPort). Check the configuration file config-itop.php.");
|
||||
return false;
|
||||
}
|
||||
$aOptions = MetaModel::GetModuleSetting('authent-ldap', 'options', array());
|
||||
foreach($aOptions as $name => $value)
|
||||
{
|
||||
ldap_set_option($hDS, $name, $value);
|
||||
}
|
||||
|
||||
if ($bind = @ldap_bind($hDS, $sDefaultLDAPUser, $sDefaultLDAPPwd))
|
||||
{
|
||||
// Search for the person, using the specified query expression
|
||||
$sLDAPUserQuery = MetaModel::GetModuleSetting('authent-ldap', 'user_query', '');
|
||||
$sBaseDN = MetaModel::GetModuleSetting('authent-ldap', 'base_dn', '');
|
||||
|
||||
$sLogin = $this->Get('login');
|
||||
$iContactId = $this->Get('contactid');
|
||||
$sFirstName = '';
|
||||
$sLastName = '';
|
||||
$sEMail = '';
|
||||
if ($iContactId > 0)
|
||||
{
|
||||
$oPerson = MetaModel::GetObject('Person', $iContactId);
|
||||
if (is_object($oPerson))
|
||||
{
|
||||
$sFirstName = $oPerson->Get('first_name');
|
||||
$sLastName = $oPerson->Get('name');
|
||||
$sEMail = $oPerson->Get('email');
|
||||
}
|
||||
}
|
||||
// %1$s => login
|
||||
// %2$s => first name
|
||||
// %3$s => last name
|
||||
// %4$s => email
|
||||
$sQuery = sprintf($sLDAPUserQuery, $sLogin, $sFirstName, $sLastName, $sEMail);
|
||||
$hSearchResult = @ldap_search($hDS, $sBaseDN, $sQuery);
|
||||
|
||||
$iCountEntries = ($hSearchResult !== false) ? @ldap_count_entries($hDS, $hSearchResult) : 0;
|
||||
switch($iCountEntries)
|
||||
{
|
||||
case 1:
|
||||
// Exactly one entry found, let's check the password by trying to bind with this user
|
||||
$aEntry = ldap_get_entries($hDS, $hSearchResult);
|
||||
$sUserDN = $aEntry[0]['dn'];
|
||||
$bUserBind = @ldap_bind($hDS, $sUserDN, $sPassword);
|
||||
if (($bUserBind !== false) && !empty($sPassword))
|
||||
{
|
||||
ldap_unbind($hDS);
|
||||
return true; // Password Ok
|
||||
}
|
||||
$this->LogMessage("ldap_authentication: wrong password for user: '$sUserDN'.");
|
||||
return false; // Wrong password
|
||||
break;
|
||||
|
||||
case 0:
|
||||
// User not found...
|
||||
$this->LogMessage("ldap_authentication: no entry found with the query '$sQuery', base_dn = '$sBaseDN'. User not found in LDAP.");
|
||||
break;
|
||||
|
||||
default:
|
||||
// More than one entry... maybe the query is not specific enough...
|
||||
$this->LogMessage("ldap_authentication: several (".ldap_count_entries($hDS, $hSearchResult).") entries match the query '$sQuery', base_dn = '$sBaseDN', check that the query defined in config-itop.php is specific enough.");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Trace: invalid default user for LDAP initial binding
|
||||
$this->LogMessage("ldap_authentication: can not bind to the LDAP server '$sLDAPHost' (port: $iLDAPPort), user='$sDefaultLDAPUser', pwd='$sDefaultLDAPPwd'. Error: '".ldap_error($hDS)."'. Check the configuration file config-itop.php.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function TrustWebServerContext()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public function CanChangePassword()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public function ChangePassword($sOldPassword, $sNewPassword)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
protected function LogMessage($sMessage, $aData = array())
|
||||
{
|
||||
if (MetaModel::IsLogEnabledIssue())
|
||||
{
|
||||
if (MetaModel::IsValidClass('EventIssue'))
|
||||
{
|
||||
$oLog = new EventIssue();
|
||||
|
||||
$oLog->Set('message', $sMessage);
|
||||
$oLog->Set('userinfo', '');
|
||||
$oLog->Set('issue', 'LDAP Authentication');
|
||||
$oLog->Set('impact', 'User login rejected');
|
||||
$oLog->Set('data', $aData);
|
||||
$oLog->DBInsertNoReload();
|
||||
}
|
||||
|
||||
IssueLog::Error($sMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
65
datamodels/2.x/authent-ldap/module.authent-ldap.php
Executable file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
|
||||
// Until we develop a mean to adress this within the setup, let's check that this instance
|
||||
// of PHP has the php_ldap extension
|
||||
//
|
||||
if (function_exists('ldap_connect'))
|
||||
{
|
||||
|
||||
SetupWebPage::AddModule(
|
||||
__FILE__, // Path to the current file, all other file names are relative to the directory containing this file
|
||||
'authent-ldap/1.0.0',
|
||||
array(
|
||||
// Identification
|
||||
//
|
||||
'label' => 'User authentication based on LDAP',
|
||||
'category' => 'authentication',
|
||||
|
||||
// Setup
|
||||
//
|
||||
'dependencies' => array(
|
||||
),
|
||||
'mandatory' => false,
|
||||
'visible' => true,
|
||||
|
||||
// Components
|
||||
//
|
||||
'datamodel' => array(
|
||||
'model.authent-ldap.php',
|
||||
),
|
||||
'data.struct' => array(
|
||||
//'data.struct.authent-ldap.xml',
|
||||
),
|
||||
'data.sample' => array(
|
||||
//'data.sample.authent-ldap.xml',
|
||||
),
|
||||
|
||||
// Documentation
|
||||
//
|
||||
'doc.manual_setup' => '',
|
||||
'doc.more_information' => '',
|
||||
|
||||
// Default settings
|
||||
//
|
||||
'settings' => array(
|
||||
'host' => 'localhost', // host or IP address of your LDAP server
|
||||
'port' => 389, // LDAP port (std: 389)
|
||||
'default_user' => '', // User and password used for initial "Anonymous" bind to LDAP
|
||||
'default_pwd' => '', // Leave both blank, if anonymous (read-only) bind is allowed
|
||||
'base_dn' => 'dc=yourcompany,dc=com', // Base DN for User queries, adjust it to your LDAP schema
|
||||
'user_query' => '(&(uid=%1$s)(inetuserstatus=ACTIVE))', // Query used to retrieve each user %1$s => iTop login
|
||||
// For Windows AD use (samaccountname=%1$s) or (userprincipalname=%1$s)
|
||||
|
||||
// Some extra LDAP options, refer to: http://www.php.net/manual/en/function.ldap-set-option.php for more info
|
||||
'options' => array(
|
||||
LDAP_OPT_PROTOCOL_VERSION => 3,
|
||||
LDAP_OPT_REFERRALS => 0,
|
||||
),
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
} // if (function_exists('ldap_connect'))
|
||||
|
||||
?>
|
||||
27
datamodels/2.x/authent-ldap/pt_br.dict.authent-ldap.php
Executable file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'Class:UserLDAP' => 'Usuário externo',
|
||||
'Class:UserLDAP+' => '',
|
||||
'Class:UserLDAP/Attribute:password' => 'Senha',
|
||||
'Class:UserLDAP/Attribute:password+' => '',
|
||||
));
|
||||
?>
|
||||
45
datamodels/2.x/authent-ldap/ru.dict.authent-ldap.php
Executable file
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Vladimir Shilov <shilow@ukr.net>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:UserLDAP' => 'Пользователь LDAP',
|
||||
'Class:UserLDAP+' => 'Пользователь аутентифицированный в LDAP',
|
||||
'Class:UserLDAP/Attribute:password' => 'Пароль',
|
||||
'Class:UserLDAP/Attribute:password+' => 'строка аутентификации пользователя',
|
||||
));
|
||||
|
||||
?>
|
||||
47
datamodels/2.x/authent-ldap/tr.dict.authent-ldap.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Izzet Sirin <izzet.sirin@htr.com.tr>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:UserLDAP' => 'LDAP kullanıcısı',
|
||||
'Class:UserLDAP+' => 'Yetki kontrolü LDAP tarafından yapılan',
|
||||
'Class:UserLDAP/Attribute:password' => 'Şifre',
|
||||
'Class:UserLDAP/Attribute:password+' => 'şifre',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
47
datamodels/2.x/authent-ldap/zh.dict.authent-ldap.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Robert Deng <denglx@gmail.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLDAP
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserLDAP' => 'LDAP 用户',
|
||||
'Class:UserLDAP+' => '用户由 LDAP 鉴别身份',
|
||||
'Class:UserLDAP/Attribute:password' => '密码',
|
||||
'Class:UserLDAP/Attribute:password+' => '用户身份验证串',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
50
datamodels/2.x/authent-local/de.dict.authent-local.php
Executable file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Stephan Rosenke <stephan.rosenke@itomig.de>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:UserLocal' => 'iTop-Benutzer',
|
||||
'Class:UserLocal+' => 'Benutzer von iTop authentifiziert',
|
||||
'Class:UserLocal/Attribute:password' => 'Passwort',
|
||||
'Class:UserLocal/Attribute:password+' => 'Benutzerpasswort',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
49
datamodels/2.x/authent-local/en.dict.authent-local.php
Executable file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:UserLocal' => 'iTop user',
|
||||
'Class:UserLocal+' => 'User authentified by iTop',
|
||||
'Class:UserLocal/Attribute:password' => 'Password',
|
||||
'Class:UserLocal/Attribute:password+' => 'user authentication string',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
30
datamodels/2.x/authent-local/fr.dict.authent-local.php
Executable file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:UserLocal' => 'Utilisateur iTop',
|
||||
'Class:UserLocal+' => 'Utilisateur authentifié par iTop',
|
||||
'Class:UserLocal/Attribute:password' => 'Mot de passe',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
));
|
||||
?>
|
||||
27
datamodels/2.x/authent-local/hu.dict.authent-local.php
Executable file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'Class:UserLocal' => 'iTop felhasználó',
|
||||
'Class:UserLocal+' => '',
|
||||
'Class:UserLocal/Attribute:password' => 'Jelszó',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
));
|
||||
?>
|
||||
49
datamodels/2.x/authent-local/it.dict.authent-local.php
Executable file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:UserLocal' => 'Utente iTop',
|
||||
'Class:UserLocal+' => 'Utente autenticato da iTop',
|
||||
'Class:UserLocal/Attribute:password' => 'Password',
|
||||
'Class:UserLocal/Attribute:password+' => 'user authentication string',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
50
datamodels/2.x/authent-local/ja.dict.authent-local.php
Executable file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Hirofumi Kosaka <kosaka@rworks.jp>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'Class:UserLocal' => 'iTopユーザー', // 'iTop user',
|
||||
'Class:UserLocal+' => 'iTopローカル認証ユーザー', // 'User authentified by iTop',
|
||||
'Class:UserLocal/Attribute:password' => 'パスワード', // 'Password',
|
||||
'Class:UserLocal/Attribute:password+' => '認証文字列', // 'user authentication string',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
101
datamodels/2.x/authent-local/model.authent-local.php
Executable file
@@ -0,0 +1,101 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Authent Local
|
||||
* User authentication Module, password stored in the local database
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
|
||||
class UserLocal extends UserInternal
|
||||
{
|
||||
public static function Init()
|
||||
{
|
||||
$aParams = array
|
||||
(
|
||||
"category" => "addon/authentication",
|
||||
"key_type" => "autoincrement",
|
||||
"name_attcode" => "login",
|
||||
"state_attcode" => "",
|
||||
"reconc_keys" => array('login'),
|
||||
"db_table" => "priv_user_local",
|
||||
"db_key_field" => "id",
|
||||
"db_finalclass_field" => "",
|
||||
"display_template" => "",
|
||||
);
|
||||
MetaModel::Init_Params($aParams);
|
||||
MetaModel::Init_InheritAttributes();
|
||||
|
||||
MetaModel::Init_AddAttribute(new AttributeOneWayPassword("password", array("allowed_values"=>null, "sql"=>"pwd", "default_value"=>null, "is_null_allowed"=>false, "depends_on"=>array())));
|
||||
|
||||
// Display lists
|
||||
MetaModel::Init_SetZListItems('details', array('contactid', 'first_name', 'email', 'login', 'password', 'language', 'profile_list', 'allowed_org_list')); // Attributes to be displayed for the complete details
|
||||
MetaModel::Init_SetZListItems('list', array('first_name', 'last_name', 'login')); // Attributes to be displayed for a list
|
||||
// Search criteria
|
||||
MetaModel::Init_SetZListItems('standard_search', array('login', 'contactid')); // Criteria of the std search form
|
||||
MetaModel::Init_SetZListItems('advanced_search', array('login', 'contactid')); // Criteria of the advanced search form
|
||||
}
|
||||
|
||||
public function CheckCredentials($sPassword)
|
||||
{
|
||||
$oPassword = $this->Get('password'); // ormPassword object
|
||||
// Cannot compare directly the values since they are hashed, so
|
||||
// Let's ask the password to compare the hashed values
|
||||
if ($oPassword->CheckPassword($sPassword))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public function TrustWebServerContext()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function CanChangePassword()
|
||||
{
|
||||
// For now everyone can change their password..
|
||||
return true;
|
||||
}
|
||||
|
||||
public function ChangePassword($sOldPassword, $sNewPassword)
|
||||
{
|
||||
$oPassword = $this->Get('password'); // ormPassword object
|
||||
// Cannot compare directly the values since they are hashed, so
|
||||
// Let's ask the password to compare the hashed values
|
||||
if ($oPassword->CheckPassword($sOldPassword))
|
||||
{
|
||||
$this->Set('password', $sNewPassword);
|
||||
$oChange = MetaModel::NewObject("CMDBChange");
|
||||
$oChange->Set("date", time());
|
||||
$sUserString = CMDBChange::GetCurrentUserName();
|
||||
$oChange->Set("userinfo", $sUserString);
|
||||
$oChange->DBInsert();
|
||||
$this->DBUpdateTracked($oChange, true);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
44
datamodels/2.x/authent-local/module.authent-local.php
Executable file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
|
||||
SetupWebPage::AddModule(
|
||||
__FILE__, // Path to the current file, all other file names are relative to the directory containing this file
|
||||
'authent-local/1.0.0',
|
||||
array(
|
||||
// Identification
|
||||
//
|
||||
'label' => 'User authentication based on the local DB',
|
||||
'category' => 'authentication',
|
||||
|
||||
// Setup
|
||||
//
|
||||
'dependencies' => array(
|
||||
),
|
||||
'mandatory' => true,
|
||||
'visible' => true,
|
||||
|
||||
// Components
|
||||
//
|
||||
'datamodel' => array(
|
||||
'model.authent-local.php',
|
||||
),
|
||||
'data.struct' => array(
|
||||
//'data.struct.authent-local.xml',
|
||||
),
|
||||
'data.sample' => array(
|
||||
//'data.sample.authent-local.xml',
|
||||
),
|
||||
|
||||
// Documentation
|
||||
//
|
||||
'doc.manual_setup' => '',
|
||||
'doc.more_information' => '',
|
||||
|
||||
// Default settings
|
||||
//
|
||||
'settings' => array(
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
||||
27
datamodels/2.x/authent-local/pt_br.dict.authent-local.php
Executable file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'Class:UserLocal' => 'Usuário local',
|
||||
'Class:UserLocal+' => '',
|
||||
'Class:UserLocal/Attribute:password' => 'Senha',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
));
|
||||
?>
|
||||
45
datamodels/2.x/authent-local/ru.dict.authent-local.php
Executable file
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Vladimir Shilov <shilow@ukr.net>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:UserLocal' => 'Пользователь iTop',
|
||||
'Class:UserLocal+' => 'Пользователь аутентифицированный iTop',
|
||||
'Class:UserLocal/Attribute:password' => 'Пароль',
|
||||
'Class:UserLocal/Attribute:password+' => 'строка аутентификации пользователя',
|
||||
));
|
||||
|
||||
?>
|
||||
47
datamodels/2.x/authent-local/tr.dict.authent-local.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Izzet Sirin <izzet.sirin@htr.com.tr>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:UserLocal' => 'iTop kullanıcısı',
|
||||
'Class:UserLocal+' => 'Yetki kontorlünü iTop tarafından yapılan kullanıcı',
|
||||
'Class:UserLocal/Attribute:password' => 'Şifre',
|
||||
'Class:UserLocal/Attribute:password+' => 'şifre',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
47
datamodels/2.x/authent-local/zh.dict.authent-local.php
Executable file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Robert Deng <denglx@gmail.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
//
|
||||
// Class: UserLocal
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserLocal' => 'iTop 用户',
|
||||
'Class:UserLocal+' => '用户由 iTop 验证身份',
|
||||
'Class:UserLocal/Attribute:password' => '密码',
|
||||
'Class:UserLocal/Attribute:password+' => '用户身份验证串',
|
||||
));
|
||||
|
||||
|
||||
|
||||
?>
|
||||
144
datamodels/2.x/installation.xml
Executable file
@@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<installation>
|
||||
<steps type="array">
|
||||
<step>
|
||||
<title>Configuration Management options</title>
|
||||
<description><![CDATA[<h2>The options below allow you to configure the type of elements that are to be managed inside iTop.</h2>]]></description>
|
||||
<banner>/images/modules.png</banner>
|
||||
<options type="array">
|
||||
<choice>
|
||||
<title>Configuration Management Base</title>
|
||||
<description>This module is always installed, it contains all the base objects that are mandatory in the iTop CMDB: Organizations, Locations, Teams, Persons, etc.</description>
|
||||
<modules type="array">
|
||||
<module>itop-config-mgmt</module>
|
||||
<module>itop-attachments</module>
|
||||
<module>itop-profiles-itil</module>
|
||||
<module>itop-welcome-itil</module>
|
||||
</modules>
|
||||
<mandatory>true</mandatory>
|
||||
</choice>
|
||||
</options>
|
||||
</step>
|
||||
<step>
|
||||
<title>Service Management options</title>
|
||||
<description><![CDATA[<h2>Select the choice that best describes the relationships between the services and the IT infrastructure in your IT environment.</h2>]]></description>
|
||||
<banner>./wizard_icons/service.png</banner>
|
||||
<alternatives type="array">
|
||||
<choice>
|
||||
<title>Service Management for Enterprises</title>
|
||||
<description>Select this option if the IT delivers services based on a shared infrastructure. For example if different organizations within your company subscribe to services (like Mail and Print services) delivered by a single shared backend.</description>
|
||||
<modules type="array">
|
||||
<module>itop-service-mgmt</module>
|
||||
</modules>
|
||||
<default>true</default>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>Service Management for Service Providers</title>
|
||||
<description>Select this option if the IT manages the infrastructure of independent customers. This is the most flexible model, since the services can be delivered with a mix of shared and customer specific infrastructure devices.</description>
|
||||
<modules type="array">
|
||||
<module>itop-service-mgmt-provider</module>
|
||||
</modules>
|
||||
</choice>
|
||||
</alternatives>
|
||||
</step>
|
||||
<step>
|
||||
<title>Tickets Management options</title>
|
||||
<description>Select the type of tickets you want to use in order to respond to user requests and incidents.</description>
|
||||
<banner></banner>
|
||||
<alternatives type="array">
|
||||
<choice>
|
||||
<title>Simple Ticket Management</title>
|
||||
<description>Select this option to use one single type of tickets for all kind of requests.</description>
|
||||
<modules type="array">
|
||||
<module>itop-tickets</module>
|
||||
<module>itop-request-mgmt</module>
|
||||
</modules>
|
||||
<default>true</default>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>ITIL Compliant Tickets Management</title>
|
||||
<description>Select this option to have different types of ticket for managing user requests and incidents. Each type of ticket has a specific life cycle and specific fields</description>
|
||||
<modules type="array">
|
||||
<module>itop-tickets</module>
|
||||
</modules>
|
||||
<sub_options>
|
||||
<options type="array">
|
||||
<choice>
|
||||
<title>User Request Management</title>
|
||||
<description>Manage User Request tickets in iTop</description>
|
||||
<modules type="array">
|
||||
<module>itop-request-mgmt-itil</module>
|
||||
</modules>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>Incident Management</title>
|
||||
<description>Manage Incidents tickets in iTop</description>
|
||||
<modules type="array">
|
||||
<module>itop-incident-mgmt-itil</module>
|
||||
</modules>
|
||||
</choice>
|
||||
</options>
|
||||
</sub_options>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>None</title>
|
||||
<description>Don't manage incidents in iTop</description>
|
||||
<modules type="array">
|
||||
</modules>
|
||||
</choice>
|
||||
</alternatives>
|
||||
</step>
|
||||
<step>
|
||||
<title>Change Management options</title>
|
||||
<description><![CDATA[<h2>Select the type of tickets you want to use in order to manage changes to the IT infrastructure.</h2>]]></description>
|
||||
<banner>./itop-change-mgmt-1.0.0/images/change.png</banner>
|
||||
<alternatives type="array">
|
||||
<choice>
|
||||
<title>Simple Change Management</title>
|
||||
<description>Select this option to use one type of ticket for all kind of changes.</description>
|
||||
<modules type="array">
|
||||
<module>itop-change-mgmt</module>
|
||||
</modules>
|
||||
<default>true</default>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>ITIL Change Management</title>
|
||||
<description>Select this option to use Normal/Routine/Emergency change tickets.</description>
|
||||
<modules type="array">
|
||||
<module>itop-change-mgmt-itil</module>
|
||||
</modules>
|
||||
<default>false</default>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>None</title>
|
||||
<description>Don't manage changes in iTop</description>
|
||||
<modules type="array">
|
||||
</modules>
|
||||
</choice>
|
||||
</alternatives>
|
||||
</step>
|
||||
<step>
|
||||
<title>Additional ITIL tickets</title>
|
||||
<description><![CDATA[<h2>Pick from the list below the additional ITIl processes that are to be implemented in iTop.</h2>]]></description>
|
||||
<banner>./itop-change-mgmt-1.0.0/images/change.png</banner>
|
||||
<options type="array">
|
||||
<choice>
|
||||
<title>Known Errors Management</title>
|
||||
<description>Select this option to track "Known Errors" in iTop.</description>
|
||||
<modules type="array">
|
||||
<module>itop-knownerror-mgmt</module>
|
||||
</modules>
|
||||
<default>false</default>
|
||||
</choice>
|
||||
<choice>
|
||||
<title>Problem Management</title>
|
||||
<description>Select this option track "Problems" in iTop.</description>
|
||||
<modules type="array">
|
||||
<module>itop-problem-mgmt</module>
|
||||
</modules>
|
||||
<default>false</default>
|
||||
</choice>
|
||||
</options>
|
||||
</step>
|
||||
</steps>
|
||||
</installation>
|
||||
109
datamodels/2.x/itop-attachments/ajax.attachment.php
Executable file
@@ -0,0 +1,109 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Handles various ajax requests
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
require_once('../../approot.inc.php');
|
||||
require_once(APPROOT.'/application/application.inc.php');
|
||||
require_once(APPROOT.'/application/webpage.class.inc.php');
|
||||
require_once(APPROOT.'/application/ajaxwebpage.class.inc.php');
|
||||
|
||||
try
|
||||
{
|
||||
require_once(APPROOT.'/application/startup.inc.php');
|
||||
// require_once(APPROOT.'/application/user.preferences.class.inc.php');
|
||||
|
||||
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
|
||||
LoginWebPage::DoLogin(false /* bMustBeAdmin */, true /* IsAllowedToPortalUsers */); // Check user rights and prompt if needed
|
||||
|
||||
$oPage = new ajax_page("");
|
||||
$oPage->no_cache();
|
||||
|
||||
$sOperation = utils::ReadParam('operation', '');
|
||||
|
||||
switch($sOperation)
|
||||
{
|
||||
case 'add':
|
||||
$aResult = array(
|
||||
'error' => '',
|
||||
'att_id' => 0,
|
||||
'msg' => ''
|
||||
);
|
||||
$sObjClass = stripslashes(utils::ReadParam('obj_class', '', false, 'class'));
|
||||
$sTempId = utils::ReadParam('temp_id', '');
|
||||
if (empty($sObjClass))
|
||||
{
|
||||
$aResult['error'] = "Missing argument 'obj_class'";
|
||||
}
|
||||
elseif (empty($sTempId))
|
||||
{
|
||||
$aResult['error'] = "Missing argument 'temp_id'";
|
||||
}
|
||||
else
|
||||
{
|
||||
try
|
||||
{
|
||||
$oDoc = utils::ReadPostedDocument('file');
|
||||
$oAttachment = MetaModel::NewObject('Attachment');
|
||||
$oAttachment->Set('expire', time() + 3600); // one hour...
|
||||
$oAttachment->Set('temp_id', $sTempId);
|
||||
$oAttachment->Set('item_class', $sObjClass);
|
||||
$oAttachment->SetDefaultOrgId();
|
||||
$oAttachment->Set('contents', $oDoc);
|
||||
$iAttId = $oAttachment->DBInsert();
|
||||
|
||||
$aResult['msg'] = $oDoc->GetFileName();
|
||||
$aResult['icon'] = utils::GetAbsoluteUrlAppRoot().AttachmentPlugIn::GetFileIcon($oDoc->GetFileName());
|
||||
$aResult['att_id'] = $iAttId;
|
||||
}
|
||||
catch (FileUploadException $e)
|
||||
{
|
||||
$aResult['error'] = $e->GetMessage();
|
||||
}
|
||||
}
|
||||
$oPage->add(json_encode($aResult));
|
||||
break;
|
||||
|
||||
case 'remove':
|
||||
$iAttachmentId = utils::ReadParam('att_id', '');
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE id = :id");
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('id' => $iAttachmentId));
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$oAttachment->DBDelete();
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
$oPage->p("Missing argument 'operation'");
|
||||
}
|
||||
|
||||
$oPage->output();
|
||||
}
|
||||
catch (Exception $e)
|
||||
{
|
||||
// note: transform to cope with XSS attacks
|
||||
echo htmlentities($e->GetMessage(), ENT_QUOTES, 'utf-8');
|
||||
IssueLog::Error($e->getMessage());
|
||||
}
|
||||
?>
|
||||
191
datamodels/2.x/itop-attachments/ajaxfileupload.js
Executable file
@@ -0,0 +1,191 @@
|
||||
|
||||
jQuery.extend(
|
||||
{
|
||||
createUploadIframe: function(id, uri)
|
||||
{
|
||||
//create frame
|
||||
var frameId = 'jUploadFrame' + id;
|
||||
var iframeHtml = '<iframe id="' + frameId + '" name="' + frameId + '" style="position:absolute; top:-9999px; left:-9999px"';
|
||||
if(window.ActiveXObject)
|
||||
{
|
||||
if(typeof uri== 'boolean')
|
||||
{
|
||||
iframeHtml += ' src="' + 'javascript:false' + '"';
|
||||
}
|
||||
else if(typeof uri== 'string')
|
||||
{
|
||||
iframeHtml += ' src="' + uri + '"';
|
||||
}
|
||||
}
|
||||
iframeHtml += ' />';
|
||||
jQuery(iframeHtml).appendTo(document.body);
|
||||
|
||||
return jQuery('#' + frameId).get(0);
|
||||
},
|
||||
createUploadForm: function(id, fileElementId)
|
||||
{
|
||||
//create form
|
||||
var formId = 'jUploadForm' + id;
|
||||
var fileId = 'jUploadFile' + id;
|
||||
var form = jQuery('<form action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');
|
||||
var oldElement = jQuery('#' + fileElementId);
|
||||
var newElement = jQuery(oldElement).clone();
|
||||
jQuery(oldElement).attr('id', fileId);
|
||||
jQuery(oldElement).before(newElement);
|
||||
jQuery(oldElement).appendTo(form);
|
||||
//set attributes
|
||||
jQuery(form).css('position', 'absolute');
|
||||
jQuery(form).css('top', '-1200px');
|
||||
jQuery(form).css('left', '-1200px');
|
||||
jQuery(form).appendTo('body');
|
||||
return form;
|
||||
},
|
||||
|
||||
ajaxFileUpload: function(s) {
|
||||
// TODO introduce global settings, allowing the client to modify them for all requests, not only timeout
|
||||
s = jQuery.extend({}, jQuery.ajaxSettings, s);
|
||||
var id = new Date().getTime();
|
||||
var form = jQuery.createUploadForm(id, s.fileElementId);
|
||||
var io = jQuery.createUploadIframe(id, s.secureuri);
|
||||
var frameId = 'jUploadFrame' + id;
|
||||
var formId = 'jUploadForm' + id;
|
||||
// Watch for a new set of requests
|
||||
if ( s.global && ! jQuery.active++ )
|
||||
{
|
||||
jQuery.event.trigger( "ajaxStart" );
|
||||
}
|
||||
var requestDone = false;
|
||||
// Create the request object
|
||||
var xml = {};
|
||||
if ( s.global )
|
||||
jQuery.event.trigger("ajaxSend", [xml, s]);
|
||||
// Wait for a response to come back
|
||||
var uploadCallback = function(isTimeout)
|
||||
{
|
||||
var io = document.getElementById(frameId);
|
||||
try
|
||||
{
|
||||
if(io.contentWindow)
|
||||
{
|
||||
xml.responseText = io.contentWindow.document.body?io.contentWindow.document.body.innerHTML:null;
|
||||
xml.responseXML = io.contentWindow.document.XMLDocument?io.contentWindow.document.XMLDocument:io.contentWindow.document;
|
||||
|
||||
}else if(io.contentDocument)
|
||||
{
|
||||
xml.responseText = io.contentDocument.document.body?io.contentDocument.document.body.innerHTML:null;
|
||||
xml.responseXML = io.contentDocument.document.XMLDocument?io.contentDocument.document.XMLDocument:io.contentDocument.document;
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
jQuery.handleError(s, xml, null, e);
|
||||
}
|
||||
if ( xml || isTimeout == "timeout")
|
||||
{
|
||||
requestDone = true;
|
||||
var status;
|
||||
try {
|
||||
status = isTimeout != "timeout" ? "success" : "error";
|
||||
// Make sure that the request was successful or notmodified
|
||||
if ( status != "error" )
|
||||
{
|
||||
// process the data (runs the xml through httpData regardless of callback)
|
||||
var data = jQuery.uploadHttpData( xml, s.dataType );
|
||||
// If a local callback was specified, fire it and pass it the data
|
||||
if ( s.success )
|
||||
s.success( data, status );
|
||||
|
||||
// Fire the global callback
|
||||
if( s.global )
|
||||
jQuery.event.trigger( "ajaxSuccess", [xml, s] );
|
||||
} else
|
||||
jQuery.handleError(s, xml, status);
|
||||
} catch(e)
|
||||
{
|
||||
status = "error";
|
||||
jQuery.handleError(s, xml, status, e);
|
||||
}
|
||||
|
||||
// The request was completed
|
||||
if( s.global )
|
||||
jQuery.event.trigger( "ajaxComplete", [xml, s] );
|
||||
|
||||
// Handle the global AJAX counter
|
||||
if ( s.global && ! --jQuery.active )
|
||||
jQuery.event.trigger( "ajaxStop" );
|
||||
|
||||
// Process result
|
||||
if ( s.complete )
|
||||
s.complete(xml, status);
|
||||
|
||||
jQuery(io).unbind();
|
||||
|
||||
setTimeout(function()
|
||||
{ try
|
||||
{
|
||||
jQuery(io).remove();
|
||||
jQuery(form).remove();
|
||||
|
||||
} catch(e)
|
||||
{
|
||||
jQuery.handleError(s, xml, null, e);
|
||||
}
|
||||
|
||||
}, 100)
|
||||
|
||||
xml = null
|
||||
|
||||
}
|
||||
}
|
||||
// Timeout checker
|
||||
if ( s.timeout > 0 )
|
||||
{
|
||||
setTimeout(function(){
|
||||
// Check to see if the request is still happening
|
||||
if( !requestDone ) uploadCallback( "timeout" );
|
||||
}, s.timeout);
|
||||
}
|
||||
try
|
||||
{
|
||||
|
||||
var form = jQuery('#' + formId);
|
||||
jQuery(form).attr('action', s.url);
|
||||
jQuery(form).attr('method', 'POST');
|
||||
jQuery(form).attr('target', frameId);
|
||||
if(form.encoding)
|
||||
{
|
||||
jQuery(form).attr('encoding', 'multipart/form-data');
|
||||
}
|
||||
else
|
||||
{
|
||||
jQuery(form).attr('enctype', 'multipart/form-data');
|
||||
}
|
||||
jQuery(form).submit();
|
||||
|
||||
} catch(e)
|
||||
{
|
||||
jQuery.handleError(s, xml, null, e);
|
||||
}
|
||||
|
||||
jQuery('#' + frameId).load(uploadCallback );
|
||||
return {abort: function () {}};
|
||||
|
||||
},
|
||||
|
||||
uploadHttpData: function( r, type ) {
|
||||
var data = !type;
|
||||
data = type == "xml" || data ? r.responseXML : r.responseText;
|
||||
// If the type is "script", eval it in global context
|
||||
if ( type == "script" )
|
||||
jQuery.globalEval( data );
|
||||
// Get the JavaScript object, if JSON is used.
|
||||
if ( type == "json" )
|
||||
eval( "data = " + data );
|
||||
// evaluate scripts within html
|
||||
if ( type == "html" )
|
||||
jQuery("<div>").html(data).evalScripts();
|
||||
|
||||
return data;
|
||||
}
|
||||
})
|
||||
|
||||
200
datamodels/2.x/itop-attachments/datamodel.itop-attachments.xml
Executable file
@@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<classes>
|
||||
<class id="Attachment" _delta="define">
|
||||
<parent>DBObject</parent>
|
||||
<properties>
|
||||
<comment><![CDATA[/**
|
||||
* Module attachments
|
||||
*
|
||||
* A quick and easy way to upload and attach files to *any* (see Configuration below) object in the CMBD in one click
|
||||
*
|
||||
* Configuration: the list of classes for which the "Attachments" tab is visible is defined via the module's 'allowed_classes'
|
||||
* configuration parameter. By default the tab is active for all kind of Tickets.
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/]]></comment>
|
||||
<category>addon,bizmodel</category>
|
||||
<abstract>false</abstract>
|
||||
<key_type>autoincrement</key_type>
|
||||
<db_table>attachment</db_table>
|
||||
<db_key_field>id</db_key_field>
|
||||
<db_final_class_field></db_final_class_field>
|
||||
<naming>
|
||||
<format>%1$s %2$s</format>
|
||||
<attributes>
|
||||
<attribute id="item_class"/>
|
||||
<attribute id="temp_id"/>
|
||||
</attributes>
|
||||
</naming>
|
||||
<display_template></display_template>
|
||||
<icon></icon>
|
||||
<reconciliation>
|
||||
<attributes>
|
||||
<attribute id=""/>
|
||||
</attributes>
|
||||
</reconciliation>
|
||||
</properties>
|
||||
<fields>
|
||||
<field id="expire" xsi:type="AttributeDateTime">
|
||||
<sql>expire</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>false</is_null_allowed>
|
||||
</field>
|
||||
<field id="temp_id" xsi:type="AttributeString">
|
||||
<sql>temp_id</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="item_class" xsi:type="AttributeString">
|
||||
<sql>item_class</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>false</is_null_allowed>
|
||||
</field>
|
||||
<field id="item_id" xsi:type="AttributeString">
|
||||
<sql>item_id</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="item_org_id" xsi:type="AttributeInteger">
|
||||
<sql>item_org_id</sql>
|
||||
<default_value>0</default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="contents" xsi:type="AttributeBlob"/>
|
||||
</fields>
|
||||
<methods>
|
||||
<method id="MapContextParam">
|
||||
<comment><![CDATA[/**
|
||||
* Maps the given context parameter name to the appropriate filter/search code for this class
|
||||
* @param string $sContextParam Name of the context parameter, e.g. 'org_id'
|
||||
* @return string Filter code, e.g. 'customer_id'
|
||||
*/]]></comment>
|
||||
<static>true</static>
|
||||
<access>public</access>
|
||||
<type>Overload-ExNihilo</type>
|
||||
<code><![CDATA[ public static function MapContextParam($sContextParam)
|
||||
{
|
||||
if ($sContextParam == 'org_id')
|
||||
{
|
||||
return 'item_org_id';
|
||||
}
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="SetItem">
|
||||
<comment><![CDATA[/**
|
||||
* Set/Update all of the '_item' fields
|
||||
* @param object $oItem Container item
|
||||
* @return void
|
||||
*/]]></comment>
|
||||
<static>false</static>
|
||||
<access>public</access>
|
||||
<type>Overload-ExNihilo</type>
|
||||
<code><![CDATA[ public function SetItem($oItem, $bUpdateOnChange = false)
|
||||
{
|
||||
$sClass = get_class($oItem);
|
||||
$iItemId = $oItem->GetKey();
|
||||
|
||||
$this->Set('item_class', $sClass);
|
||||
$this->Set('item_id', $iItemId);
|
||||
|
||||
$aCallSpec = array($sClass, 'MapContextParam');
|
||||
if (is_callable($aCallSpec))
|
||||
{
|
||||
$sAttCode = call_user_func($aCallSpec, 'org_id'); // Returns null when there is no mapping for this parameter
|
||||
if (MetaModel::IsValidAttCode($sClass, $sAttCode))
|
||||
{
|
||||
$iOrgId = $oItem->Get($sAttCode);
|
||||
if ($iOrgId > 0)
|
||||
{
|
||||
if ($iOrgId != $this->Get('item_org_id'))
|
||||
{
|
||||
$this->Set('item_org_id', $iOrgId);
|
||||
if ($bUpdateOnChange)
|
||||
{
|
||||
$this->DBUpdate();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="SetDefaultOrgId">
|
||||
<comment>/**
|
||||
* Give a default value for item_org_id (if relevant...)
|
||||
* @return void
|
||||
*/</comment>
|
||||
<static>false</static>
|
||||
<access>public</access>
|
||||
<type>Overload-ExNihilo</type>
|
||||
<code><![CDATA[ public function SetDefaultOrgId()
|
||||
{
|
||||
// First check that the organization CAN be fetched from the target class
|
||||
//
|
||||
$sClass = $this->Get('item_class');
|
||||
$aCallSpec = array($sClass, 'MapContextParam');
|
||||
if (is_callable($aCallSpec))
|
||||
{
|
||||
$sAttCode = call_user_func($aCallSpec, 'org_id'); // Returns null when there is no mapping for this parameter
|
||||
if (MetaModel::IsValidAttCode($sClass, $sAttCode))
|
||||
{
|
||||
// Second: check that the organization CAN be fetched from the current user
|
||||
//
|
||||
if (MetaModel::IsValidClass('Person'))
|
||||
{
|
||||
$aCallSpec = array($sClass, 'MapContextParam');
|
||||
if (is_callable($aCallSpec))
|
||||
{
|
||||
$sAttCode = call_user_func($aCallSpec, 'org_id'); // Returns null when there is no mapping for this parameter
|
||||
if (MetaModel::IsValidAttCode($sClass, $sAttCode))
|
||||
{
|
||||
// OK - try it
|
||||
//
|
||||
$oCurrentPerson = MetaModel::GetObject('Person', UserRights::GetContactId(), false);
|
||||
if ($oCurrentPerson)
|
||||
{
|
||||
$this->Set('item_org_id', $oCurrentPerson->Get($sAttCode));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}]]></code>
|
||||
</method>
|
||||
</methods>
|
||||
<presentation>
|
||||
<details>
|
||||
<items>
|
||||
<item>temp_id</item>
|
||||
<item>item_class</item>
|
||||
<item>item_id</item>
|
||||
<item>item_org_id</item>
|
||||
</items>
|
||||
</details>
|
||||
<search>
|
||||
<items>
|
||||
<item>temp_id</item>
|
||||
<item>item_class</item>
|
||||
<item>item_id</item>
|
||||
</items>
|
||||
</search>
|
||||
<list>
|
||||
<items>
|
||||
<item>temp_id</item>
|
||||
<item>item_class</item>
|
||||
<item>item_id</item>
|
||||
</items>
|
||||
</list>
|
||||
</presentation>
|
||||
</class>
|
||||
</classes>
|
||||
</itop_design>
|
||||
41
datamodels/2.x/itop-attachments/de.dict.attachments.php
Executable file
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Stephan Rosenke <stephan.rosenke@itomig.de>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Attachments:TabTitle_Count' => 'Attachments (%1$d)',
|
||||
'Attachments:EmptyTabTitle' => 'Attachments',
|
||||
'Attachments:FieldsetTitle' => 'Attachments',
|
||||
'Attachments:DeleteBtn' => 'Löschen',
|
||||
'Attachments:History_File_Added' => 'Attachment %1$s hinzugefügt.',
|
||||
'Attachments:History_File_Removed' => 'Attachment %1$s entfernt.',
|
||||
'Attachments:AddAttachment' => 'Attachment hinzufügen: ',
|
||||
'Attachments:UploadNotAllowedOnThisSystem' => 'Datei-Upload auf diesem System NICHT erlaubt.',
|
||||
'Attachment:Max_Go' => '(Maximale Datei-Größe: %1$s Go)',
|
||||
'Attachment:Max_Mo' => '(Maximale Datei-Größe: %1$s Mo)',
|
||||
'Attachment:Max_Ko' => '(Maximale Datei-Größe: %1$s Ko)',
|
||||
'Attachments:NoAttachment' => 'Kein Attachment.',
|
||||
));
|
||||
?>
|
||||
40
datamodels/2.x/itop-attachments/en.dict.attachments.php
Executable file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Attachments:TabTitle_Count' => 'Attachments (%1$d)',
|
||||
'Attachments:EmptyTabTitle' => 'Attachments',
|
||||
'Attachments:FieldsetTitle' => 'Attachments',
|
||||
'Attachments:DeleteBtn' => 'Delete',
|
||||
'Attachments:History_File_Added' => 'Attachment %1$s added.',
|
||||
'Attachments:History_File_Removed' => 'Attachment %1$s removed.',
|
||||
'Attachments:AddAttachment' => 'Add attachment: ',
|
||||
'Attachments:UploadNotAllowedOnThisSystem' => 'File upload in NOT allowed on this system.',
|
||||
'Attachment:Max_Go' => '(Maximum file size: %1$s Go)',
|
||||
'Attachment:Max_Mo' => '(Maximum file size: %1$s Mo)',
|
||||
'Attachment:Max_Ko' => '(Maximum file size: %1$s Ko)',
|
||||
'Attachments:NoAttachment' => 'No attachment. ',
|
||||
));
|
||||
?>
|
||||
40
datamodels/2.x/itop-attachments/fr.dict.attachments.php
Executable file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Attachments:TabTitle_Count' => 'Pièces jointes (%1$d)',
|
||||
'Attachments:EmptyTabTitle' => 'Pièces jointes',
|
||||
'Attachments:FieldsetTitle' => 'Pièces jointes',
|
||||
'Attachments:DeleteBtn' => 'Supprimer',
|
||||
'Attachments:History_File_Added' => 'Ajout de la pièce jointe: %1$s.',
|
||||
'Attachments:History_File_Removed' => 'Suppression de la pièce jointe: %1$s.',
|
||||
'Attachments:AddAttachment' => 'Ajouter une pièce jointe: ',
|
||||
'Attachments:UploadNotAllowedOnThisSystem' => 'Le téléchargement de fichiers est interdit sur ce système.',
|
||||
'Attachment:Max_Go' => '(Taille de fichier max.: %1$s Gb)',
|
||||
'Attachment:Max_Mo' => '(Taille de fichier max.: %1$s Mb)',
|
||||
'Attachment:Max_Ko' => '(Taille de fichier max.: %1$s Kb)',
|
||||
'Attachments:NoAttachment' => 'Aucune pièce jointe.',
|
||||
));
|
||||
?>
|
||||
BIN
datamodels/2.x/itop-attachments/icons/doc.png
Executable file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
datamodels/2.x/itop-attachments/icons/document.png
Executable file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
datamodels/2.x/itop-attachments/icons/html.png
Executable file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
datamodels/2.x/itop-attachments/icons/image.png
Executable file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
datamodels/2.x/itop-attachments/icons/odp.png
Executable file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
datamodels/2.x/itop-attachments/icons/ods.png
Executable file
|
After Width: | Height: | Size: 5.0 KiB |
BIN
datamodels/2.x/itop-attachments/icons/odt.png
Executable file
|
After Width: | Height: | Size: 4.9 KiB |
BIN
datamodels/2.x/itop-attachments/icons/pdf.png
Executable file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
datamodels/2.x/itop-attachments/icons/ppt.png
Executable file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
datamodels/2.x/itop-attachments/icons/rtf.png
Executable file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
datamodels/2.x/itop-attachments/icons/txt.png
Executable file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
datamodels/2.x/itop-attachments/icons/xls.png
Executable file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
datamodels/2.x/itop-attachments/icons/zip.png
Executable file
|
After Width: | Height: | Size: 11 KiB |
560
datamodels/2.x/itop-attachments/main.attachments.php
Executable file
@@ -0,0 +1,560 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
class AttachmentPlugIn implements iApplicationUIExtension, iApplicationObjectExtension
|
||||
{
|
||||
public function OnDisplayProperties($oObject, WebPage $oPage, $bEditMode = false)
|
||||
{
|
||||
if ($this->GetAttachmentsPosition() == 'properties')
|
||||
{
|
||||
$this->DisplayAttachments($oObject, $oPage, $bEditMode);
|
||||
}
|
||||
}
|
||||
|
||||
public function OnDisplayRelations($oObject, WebPage $oPage, $bEditMode = false)
|
||||
{
|
||||
if ($this->GetAttachmentsPosition() == 'relations')
|
||||
{
|
||||
$this->DisplayAttachments($oObject, $oPage, $bEditMode);
|
||||
}
|
||||
}
|
||||
|
||||
public function OnFormSubmit($oObject, $sFormPrefix = '')
|
||||
{
|
||||
if ($this->IsTargetObject($oObject))
|
||||
{
|
||||
// For new objects attachments are processed in OnDBInsert
|
||||
if (!$oObject->IsNew())
|
||||
{
|
||||
self::UpdateAttachments($oObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected function GetMaxUpload()
|
||||
{
|
||||
$iMaxUpload = ini_get('upload_max_filesize');
|
||||
if (!$iMaxUpload)
|
||||
{
|
||||
$sRet = Dict::S('Attachments:UploadNotAllowedOnThisSystem');
|
||||
}
|
||||
else
|
||||
{
|
||||
$iMaxUpload = utils::ConvertToBytes($iMaxUpload);
|
||||
if ($iMaxUpload > 1024*1024*1024)
|
||||
{
|
||||
$sRet = Dict::Format('Attachment:Max_Go', sprintf('%0.2f', $iMaxUpload/(1024*1024*1024)));
|
||||
}
|
||||
else if ($iMaxUpload > 1024*1024)
|
||||
{
|
||||
$sRet = Dict::Format('Attachment:Max_Mo', sprintf('%0.2f', $iMaxUpload/(1024*1024)));
|
||||
}
|
||||
else
|
||||
{
|
||||
$sRet = Dict::Format('Attachment:Max_Ko', sprintf('%0.2f', $iMaxUpload/(1024)));
|
||||
}
|
||||
}
|
||||
return $sRet;
|
||||
}
|
||||
|
||||
public function OnFormCancel($sTempId)
|
||||
{
|
||||
// Delete all "pending" attachments for this form
|
||||
$sOQL = 'SELECT Attachment WHERE temp_id = :temp_id';
|
||||
$oSearch = DBObjectSearch::FromOQL($sOQL);
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('temp_id' => $sTempId));
|
||||
while($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$oAttachment->DBDelete();
|
||||
// Pending attachment, don't mention it in the history
|
||||
}
|
||||
}
|
||||
|
||||
public function EnumUsedAttributes($oObject)
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
public function GetIcon($oObject)
|
||||
{
|
||||
return '';
|
||||
}
|
||||
|
||||
public function GetHilightClass($oObject)
|
||||
{
|
||||
// Possible return values are:
|
||||
// HILIGHT_CLASS_CRITICAL, HILIGHT_CLASS_WARNING, HILIGHT_CLASS_OK, HILIGHT_CLASS_NONE
|
||||
return HILIGHT_CLASS_NONE;
|
||||
}
|
||||
|
||||
public function EnumAllowedActions(DBObjectSet $oSet)
|
||||
{
|
||||
// No action
|
||||
return array();
|
||||
}
|
||||
|
||||
public function OnIsModified($oObject)
|
||||
{
|
||||
if ($this->IsTargetObject($oObject))
|
||||
{
|
||||
$aAttachmentIds = utils::ReadParam('attachments', array());
|
||||
$aRemovedAttachmentIds = utils::ReadParam('removed_attachments', array());
|
||||
if ( (count($aAttachmentIds) > 0) || (count($aRemovedAttachmentIds) > 0) )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public function OnCheckToWrite($oObject)
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
public function OnCheckToDelete($oObject)
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
public function OnDBUpdate($oObject, $oChange = null)
|
||||
{
|
||||
if ($this->IsTargetObject($oObject))
|
||||
{
|
||||
// Get all current attachments
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE item_class = :class AND item_id = :item_id");
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('class' => get_class($oObject), 'item_id' => $oObject->GetKey()));
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$oAttachment->SetItem($oObject, true /*updateonchange*/);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function OnDBInsert($oObject, $oChange = null)
|
||||
{
|
||||
if ($this->IsTargetObject($oObject))
|
||||
{
|
||||
self::UpdateAttachments($oObject, $oChange);
|
||||
}
|
||||
}
|
||||
|
||||
public function OnDBDelete($oObject, $oChange = null)
|
||||
{
|
||||
if ($this->IsTargetObject($oObject))
|
||||
{
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE item_class = :class AND item_id = :item_id");
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('class' => get_class($oObject), 'item_id' => $oObject->GetKey()));
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$oAttachment->DBDelete();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Plug-ins specific functions
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
protected function IsTargetObject($oObject)
|
||||
{
|
||||
$aAllowedClasses = MetaModel::GetModuleSetting('itop-attachments', 'allowed_classes', array('Ticket'));
|
||||
foreach($aAllowedClasses as $sAllowedClass)
|
||||
{
|
||||
if ($oObject instanceof $sAllowedClass)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
protected function GetAttachmentsPosition()
|
||||
{
|
||||
return MetaModel::GetModuleSetting('itop-attachments', 'position', 'relations');
|
||||
}
|
||||
|
||||
var $m_bDeleteEnabled = true;
|
||||
|
||||
public function EnableDelete($bEnabled)
|
||||
{
|
||||
$this->m_bDeleteEnabled = $bEnabled;
|
||||
}
|
||||
|
||||
public function DisplayAttachments($oObject, WebPage $oPage, $bEditMode = false)
|
||||
{
|
||||
// Exit here if the class is not allowed
|
||||
if (!$this->IsTargetObject($oObject)) return;
|
||||
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE item_class = :class AND item_id = :item_id");
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('class' => get_class($oObject), 'item_id' => $oObject->GetKey()));
|
||||
if ($this->GetAttachmentsPosition() == 'relations')
|
||||
{
|
||||
$sTitle = ($oSet->Count() > 0)? Dict::Format('Attachments:TabTitle_Count', $oSet->Count()) : Dict::S('Attachments:EmptyTabTitle');
|
||||
$oPage->SetCurrentTab($sTitle);
|
||||
}
|
||||
$oPage->add_style(
|
||||
<<<EOF
|
||||
.attachment {
|
||||
display: inline-block;
|
||||
text-align:center;
|
||||
float:left;
|
||||
padding:5px;
|
||||
}
|
||||
.attachment:hover {
|
||||
background-color: #e0e0e0;
|
||||
}
|
||||
.attachment img {
|
||||
border: 0;
|
||||
}
|
||||
.attachment a {
|
||||
text-decoration: none;
|
||||
color: #1C94C4;
|
||||
}
|
||||
.btn_hidden {
|
||||
display: none;
|
||||
}
|
||||
EOF
|
||||
);
|
||||
$oPage->add('<fieldset>');
|
||||
$oPage->add('<legend>'.Dict::S('Attachments:FieldsetTitle').'</legend>');
|
||||
|
||||
if ($bEditMode)
|
||||
{
|
||||
$sIsDeleteEnabled = $this->m_bDeleteEnabled ? 'true' : 'false';
|
||||
$iTransactionId = $oPage->GetTransactionId();
|
||||
$oPage->add_linked_script(utils::GetAbsoluteUrlModulesRoot().'itop-attachments/ajaxfileupload.js');
|
||||
$sClass = get_class($oObject);
|
||||
$sTempId = session_id().'_'.$iTransactionId;
|
||||
$sDeleteBtn = Dict::S('Attachments:DeleteBtn');
|
||||
$oPage->add_script(
|
||||
<<<EOF
|
||||
function RemoveNewAttachment(att_id)
|
||||
{
|
||||
$('#attachment_'+att_id).attr('name', 'removed_attachments[]');
|
||||
$('#display_attachment_'+att_id).hide();
|
||||
$('#attachment_plugin').trigger('remove_attachment', [att_id]);
|
||||
return false; // Do not submit the form !
|
||||
}
|
||||
function ajaxFileUpload()
|
||||
{
|
||||
//starting setting some animation when the ajax starts and completes
|
||||
$("#attachment_loading").ajaxStart(function(){
|
||||
$(this).show();
|
||||
}).ajaxComplete(function(){
|
||||
$(this).hide();
|
||||
});
|
||||
|
||||
/*
|
||||
prepareing ajax file upload
|
||||
url: the url of script file handling the uploaded files
|
||||
fileElementId: the file type of input element id and it will be the index of \$_FILES Array()
|
||||
dataType: it support json, xml
|
||||
secureuri:use secure protocol
|
||||
success: call back function when the ajax complete
|
||||
error: callback function when the ajax failed
|
||||
|
||||
*/
|
||||
$.ajaxFileUpload
|
||||
(
|
||||
{
|
||||
url: GetAbsoluteUrlModulesRoot()+'itop-attachments/ajax.attachment.php?obj_class={$sClass}&temp_id={$sTempId}&operation=add',
|
||||
secureuri:false,
|
||||
fileElementId:'file',
|
||||
dataType: 'json',
|
||||
success: function (data, status)
|
||||
{
|
||||
if(typeof(data.error) != 'undefined')
|
||||
{
|
||||
if(data.error != '')
|
||||
{
|
||||
alert(data.error);
|
||||
}
|
||||
else
|
||||
{
|
||||
var sDownloadLink = GetAbsoluteUrlAppRoot()+'pages/ajax.render.php/?operation=download_document&class=Attachment&id='+data.att_id+'&field=contents';
|
||||
$('#attachments').append('<div class="attachment" id="display_attachment_'+data.att_id+'"><a href="'+sDownloadLink+'"><img src="'+data.icon+'"><br/>'+data.msg+'<input id="attachment_'+data.att_id+'" type="hidden" name="attachments[]" value="'+data.att_id+'"/></a><br/><input type="button" class="btn_hidden" value="{$sDeleteBtn}" onClick="RemoveNewAttachment('+data.att_id+');"/></div>');
|
||||
if($sIsDeleteEnabled)
|
||||
{
|
||||
$('#display_attachment_'+data.att_id).hover( function() { $(this).children(':button').toggleClass('btn_hidden'); } );
|
||||
}
|
||||
$('#attachment_plugin').trigger('add_attachment', [data.att_id, data.msg]);
|
||||
|
||||
//alert(data.msg);
|
||||
}
|
||||
}
|
||||
},
|
||||
error: function (data, status, e)
|
||||
{
|
||||
alert(e);
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
EOF
|
||||
);
|
||||
$oPage->add('<span id="attachments">');
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$iAttId = $oAttachment->GetKey();
|
||||
$oDoc = $oAttachment->Get('contents');
|
||||
$sFileName = $oDoc->GetFileName();
|
||||
$sIcon = utils::GetAbsoluteUrlAppRoot().AttachmentPlugIn::GetFileIcon($sFileName);
|
||||
$sDownloadLink = utils::GetAbsoluteUrlAppRoot().'pages/ajax.render.php/?operation=download_document&class=Attachment&id='.$iAttId.'&field=contents';
|
||||
$oPage->add('<div class="attachment" id="attachment_'.$iAttId.'"><a href="'.$sDownloadLink.'"><img src="'.$sIcon.'"><br/>'.$sFileName.'<input type="hidden" name="attachments[]" value="'.$iAttId.'"/></a><br/> <input id="btn_remove_'.$iAttId.'" type="button" class="btn_hidden" value="Delete" onClick="$(\'#attachment_'.$iAttId.'\').remove();"/> </div>');
|
||||
}
|
||||
|
||||
// Suggested attachments are listed here but treated as temporary
|
||||
$aDefault = utils::ReadParam('default', array(), false, 'raw_data');
|
||||
if (array_key_exists('suggested_attachments', $aDefault))
|
||||
{
|
||||
$sSuggestedAttachements = $aDefault['suggested_attachments'];
|
||||
if (is_array($sSuggestedAttachements))
|
||||
{
|
||||
$sSuggestedAttachements = implode(',', $sSuggestedAttachements);
|
||||
}
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE id IN($sSuggestedAttachements)");
|
||||
$oSet = new DBObjectSet($oSearch, array());
|
||||
if ($oSet->Count() > 0)
|
||||
{
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
// Mark the attachments as temporary attachments for the current object/form
|
||||
$oAttachment->Set('temp_id', $sTempId);
|
||||
$oAttachment->DBUpdate();
|
||||
// Display them
|
||||
$iAttId = $oAttachment->GetKey();
|
||||
$oDoc = $oAttachment->Get('contents');
|
||||
$sFileName = $oDoc->GetFileName();
|
||||
$sIcon = utils::GetAbsoluteUrlAppRoot().AttachmentPlugIn::GetFileIcon($sFileName);
|
||||
$sDownloadLink = utils::GetAbsoluteUrlAppRoot().'pages/ajax.render.php/?operation=download_document&class=Attachment&id='.$iAttId.'&field=contents';
|
||||
$oPage->add('<div class="attachment" id="display_attachment_'.$iAttId.'"><a href="'.$sDownloadLink.'"><img src="'.$sIcon.'"><br/>'.$sFileName.'<input type="hidden" name="attachments[]" value="'.$iAttId.'"/></a><br/> <input id="btn_remove_'.$iAttId.'" type="button" class="btn_hidden" value="Delete" onClick="RemoveNewAttachment('.$iAttId.');"/> </div>');
|
||||
$oPage->add_ready_script("$('#attachment_plugin').trigger('add_attachment', [$iAttId, '".addslashes($sFileName)."']);");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$oPage->add('</span>');
|
||||
$oPage->add('<div style="clear:both"></div>');
|
||||
$sMaxUpload = $this->GetMaxUpload();
|
||||
$oPage->p(Dict::S('Attachments:AddAttachment').'<input type="file" name="file" id="file" onChange="ajaxFileUpload();"><span style="display:none;" id="attachment_loading"> <img src="../images/indicator.gif"></span> '.$sMaxUpload);
|
||||
$oPage->p('<span style="display:none;" id="attachment_loading">Loading, please wait...</span>');
|
||||
$oPage->p('<input type="hidden" id="attachment_plugin"/>');
|
||||
$oPage->add('</fieldset>');
|
||||
if ($this->m_bDeleteEnabled)
|
||||
{
|
||||
$oPage->add_ready_script('$(".attachment").hover( function() {$(this).children(":button").toggleClass("btn_hidden"); } );');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$oPage->add('<span id="attachments">');
|
||||
if ($oSet->Count() == 0)
|
||||
{
|
||||
$oPage->add(Dict::S('Attachments:NoAttachment'));
|
||||
}
|
||||
else
|
||||
{
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$iAttId = $oAttachment->GetKey();
|
||||
$oDoc = $oAttachment->Get('contents');
|
||||
$sFileName = $oDoc->GetFileName();
|
||||
$sIcon = utils::GetAbsoluteUrlAppRoot().AttachmentPlugIn::GetFileIcon($sFileName);
|
||||
$sDownloadLink = utils::GetAbsoluteUrlAppRoot().'pages/ajax.render.php/?operation=download_document&class=Attachment&id='.$iAttId.'&field=contents';
|
||||
$oPage->add('<div class="attachment" id="attachment_'.$iAttId.'"><a href="'.$sDownloadLink.'"><img src="'.$sIcon.'"><br/>'.$sFileName.'</a><input type="hidden" name="attachments[]" value="'.$iAttId.'"/><br/> </div>');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected static function UpdateAttachments($oObject, $oChange = null)
|
||||
{
|
||||
$iTransactionId = utils::ReadParam('transaction_id', null);
|
||||
if (!is_null($iTransactionId))
|
||||
{
|
||||
$aActions = array();
|
||||
$aAttachmentIds = utils::ReadParam('attachments', array());
|
||||
|
||||
// Get all current attachments
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE item_class = :class AND item_id = :item_id");
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('class' => get_class($oObject), 'item_id' => $oObject->GetKey()));
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
// Remove attachments that are no longer attached to the current object
|
||||
if (!in_array($oAttachment->GetKey(), $aAttachmentIds))
|
||||
{
|
||||
$oAttachment->DBDelete();
|
||||
$aActions[] = self::GetActionDescription($oAttachment, false /* false => deletion */);
|
||||
}
|
||||
}
|
||||
|
||||
// Attach new (temporary) attachements
|
||||
$sTempId = session_id().'_'.$iTransactionId;
|
||||
// The object is being created from a form, check if there are pending attachments
|
||||
// for this object, but deleting the "new" ones that were already removed from the form
|
||||
$aRemovedAttachmentIds = utils::ReadParam('removed_attachments', array());
|
||||
$sOQL = 'SELECT Attachment WHERE temp_id = :temp_id';
|
||||
$oSearch = DBObjectSearch::FromOQL($sOQL);
|
||||
foreach($aAttachmentIds as $iAttachmentId)
|
||||
{
|
||||
$oSet = new DBObjectSet($oSearch, array(), array('temp_id' => $sTempId));
|
||||
while($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
if (in_array($oAttachment->GetKey(),$aRemovedAttachmentIds))
|
||||
{
|
||||
$oAttachment->DBDelete();
|
||||
// temporary attachment removed, don't even mention it in the history
|
||||
}
|
||||
else
|
||||
{
|
||||
$oAttachment->SetItem($oObject);
|
||||
$oAttachment->Set('temp_id', '');
|
||||
$oAttachment->DBUpdate();
|
||||
// temporary attachment confirmed, list it in the history
|
||||
$aActions[] = self::GetActionDescription($oAttachment, true /* true => creation */);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (count($aActions) > 0)
|
||||
{
|
||||
if ($oChange == null)
|
||||
{
|
||||
// Let's create a change if non is supplied
|
||||
$oChange = MetaModel::NewObject("CMDBChange");
|
||||
$oChange->Set("date", time());
|
||||
$sUserString = CMDBChange::GetCurrentUserName();
|
||||
$oChange->Set("userinfo", $sUserString);
|
||||
$iChangeId = $oChange->DBInsert();
|
||||
}
|
||||
foreach($aActions as $sActionDescription)
|
||||
{
|
||||
self::RecordHistory($oChange, $oObject, $sActionDescription);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////
|
||||
public static function GetFileIcon($sFileName)
|
||||
{
|
||||
$aPathParts = pathinfo($sFileName);
|
||||
switch($aPathParts['extension'])
|
||||
{
|
||||
case 'doc':
|
||||
case 'docx':
|
||||
$sIcon = 'doc.png';
|
||||
break;
|
||||
|
||||
case 'xls':
|
||||
case 'xlsx':
|
||||
$sIcon = 'xls.png';
|
||||
break;
|
||||
|
||||
case 'ppt':
|
||||
case 'pptx':
|
||||
$sIcon = 'ppt.png';
|
||||
break;
|
||||
|
||||
case 'pdf':
|
||||
$sIcon = 'pdf.png';
|
||||
break;
|
||||
|
||||
case 'txt':
|
||||
case 'text':
|
||||
$sIcon = 'txt.png';
|
||||
break;
|
||||
|
||||
case 'rtf':
|
||||
$sIcon = 'rtf.png';
|
||||
break;
|
||||
|
||||
case 'odt':
|
||||
$sIcon = 'odt.png';
|
||||
break;
|
||||
|
||||
case 'ods':
|
||||
$sIcon = 'ods.png';
|
||||
break;
|
||||
|
||||
case 'odp':
|
||||
$sIcon = 'odp.png';
|
||||
break;
|
||||
|
||||
case 'html':
|
||||
case 'htm':
|
||||
$sIcon = 'html.png';
|
||||
break;
|
||||
|
||||
case 'png':
|
||||
case 'gif':
|
||||
case 'jpg':
|
||||
case 'jpeg':
|
||||
case 'tiff':
|
||||
case 'tif':
|
||||
case 'bmp':
|
||||
$sIcon = 'image.png';
|
||||
|
||||
break;
|
||||
case 'zip':
|
||||
case 'gz':
|
||||
case 'tgz':
|
||||
case 'rar':
|
||||
$sIcon = 'zip.png';
|
||||
break;
|
||||
|
||||
default:
|
||||
$sIcon = 'document.png';
|
||||
break;
|
||||
}
|
||||
|
||||
return 'env-'.utils::GetCurrentEnvironment()."/itop-attachments/icons/$sIcon";
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
private static function RecordHistory(CMDBChange $oChange, $oTargetObject, $sDescription)
|
||||
{
|
||||
$oMyChangeOp = MetaModel::NewObject("CMDBChangeOpPlugin");
|
||||
$oMyChangeOp->Set("change", $oChange->GetKey());
|
||||
$oMyChangeOp->Set("objclass", get_class($oTargetObject));
|
||||
$oMyChangeOp->Set("objkey", $oTargetObject->GetKey());
|
||||
$oMyChangeOp->Set("description", $sDescription);
|
||||
$iId = $oMyChangeOp->DBInsertNoReload();
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
private static function GetActionDescription($oAttachment, $bCreate = true)
|
||||
{
|
||||
$oBlob = $oAttachment->Get('contents');
|
||||
$sFileName = $oBlob->GetFileName();
|
||||
if ($bCreate)
|
||||
{
|
||||
$sDescription = Dict::Format('Attachments:History_File_Added', $sFileName);
|
||||
}
|
||||
else
|
||||
{
|
||||
$sDescription = Dict::Format('Attachments:History_File_Removed', $sFileName);
|
||||
}
|
||||
return $sDescription;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
128
datamodels/2.x/itop-attachments/module.attachments.php
Executable file
@@ -0,0 +1,128 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
SetupWebPage::AddModule(
|
||||
__FILE__, // Path to the current file, all other file names are relative to the directory containing this file
|
||||
'itop-attachments/1.0.0',
|
||||
array(
|
||||
// Identification
|
||||
//
|
||||
'label' => 'Tickets attachments',
|
||||
'category' => 'business',
|
||||
|
||||
// Setup
|
||||
//
|
||||
'dependencies' => array(
|
||||
|
||||
),
|
||||
'mandatory' => false,
|
||||
'visible' => true,
|
||||
'installer' => 'AttachmentInstaller',
|
||||
|
||||
// Components
|
||||
//
|
||||
'datamodel' => array(
|
||||
'model.itop-attachments.php',
|
||||
'main.attachments.php',
|
||||
),
|
||||
'webservice' => array(
|
||||
|
||||
),
|
||||
'dictionary' => array(
|
||||
'en.dict.attachments.php',
|
||||
'fr.dict.attachments.php',
|
||||
),
|
||||
'data.struct' => array(
|
||||
// add your 'structure' definition XML files here,
|
||||
),
|
||||
'data.sample' => array(
|
||||
// add your sample data XML files here,
|
||||
),
|
||||
|
||||
// Documentation
|
||||
//
|
||||
'doc.manual_setup' => '', // hyperlink to manual setup documentation, if any
|
||||
'doc.more_information' => '', // hyperlink to more information, if any
|
||||
|
||||
// Default settings
|
||||
//
|
||||
'settings' => array(
|
||||
'allowed_classes' => array('Ticket'), // List of classes for which to manage "Attachments"
|
||||
'position' => 'relations', // Where to display the attachments: relations | properties
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
if (!class_exists('AttachmentInstaller'))
|
||||
{
|
||||
// Module installation handler
|
||||
//
|
||||
class AttachmentInstaller extends ModuleInstallerAPI
|
||||
{
|
||||
public static function BeforeWritingConfig(Config $oConfiguration)
|
||||
{
|
||||
// If you want to override/force some configuration values, do it here
|
||||
return $oConfiguration;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handler called before creating or upgrading the database schema
|
||||
* @param $oConfiguration Config The new configuration of the application
|
||||
* @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install)
|
||||
* @param $sCurrentVersion string Current version number of the module
|
||||
*/
|
||||
public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion)
|
||||
{
|
||||
// If you want to migrate data from one format to another, do it here
|
||||
}
|
||||
|
||||
/**
|
||||
* Handler called after the creation/update of the database schema
|
||||
* @param $oConfiguration Config The new configuration of the application
|
||||
* @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install)
|
||||
* @param $sCurrentVersion string Current version number of the module
|
||||
*/
|
||||
public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion)
|
||||
{
|
||||
// For each record having item_org_id unset,
|
||||
// get the org_id from the container object
|
||||
//
|
||||
// Prerequisite: change null into 0 (workaround to the fact that we cannot use IS NULL in OQL)
|
||||
SetupPage::log_info("Initializing attachment/item_org_id - null to zero");
|
||||
$sTableName = MetaModel::DBGetTable('Attachment');
|
||||
$sRepair = "UPDATE `$sTableName` SET `item_org_id` = 0 WHERE `item_org_id` IS NULL";
|
||||
CMDBSource::Query($sRepair);
|
||||
|
||||
SetupPage::log_info("Initializing attachment/item_org_id - zero to the container");
|
||||
$oSearch = DBObjectSearch::FromOQL("SELECT Attachment WHERE item_org_id = 0");
|
||||
$oSet = new DBObjectSet($oSearch);
|
||||
$iUpdated = 0;
|
||||
while ($oAttachment = $oSet->Fetch())
|
||||
{
|
||||
$oContainer = MetaModel::GetObject($oAttachment->Get('item_class'), $oAttachment->Get('item_id'), false /* must be found */, true /* allow all data */);
|
||||
if ($oContainer)
|
||||
{
|
||||
$oAttachment->SetItem($oContainer, true /*updateonchange*/);
|
||||
$iUpdated++;
|
||||
}
|
||||
}
|
||||
|
||||
SetupPage::log_info("Initializing attachment/item_org_id - $iUpdated records have been adjusted");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
4747
datamodels/2.x/itop-change-mgmt-itil/datamodel.itop-change-mgmt-itil.xml
Executable file
304
datamodels/2.x/itop-change-mgmt-itil/de.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,304 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Stephan Rosenke <stephan.rosenke@itomig.de>
|
||||
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:RoutineChange' => 'Routine Change',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Validieren',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reject' => 'Ablehnen',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Zuweisen',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Wiedereröffnen',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Planen',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_approve' => 'Genehmigen',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Umplanen',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove' => 'Nicht genehmigen',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Implementieren',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Überwachen',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Abschließen',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange' => 'Normaler Change',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Datum der Bewilligung',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Kommentar zur Bewilligung',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Validieren',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Ablehnen',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Zuweisen',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Wiedereröffnen',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Planen',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Bestätigen',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Umplanen',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Bestätigen zurücknehmen',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Implementieren',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Überwachen',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Abschließen',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
'Class:EmergencyChange' => 'Emergency Change',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Validieren',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Ablehnen',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Zuweisen',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Wiedereröffnen',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Planen',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Bestätigen',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Umplanen',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Bestätigen zurücknehmen',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Implementieren',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Überwachen',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Abschließen',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
'Menu:ChangeManagement' => 'Change Management',
|
||||
'Menu:Change:Overview' => 'Übersicht',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Neuer Change',
|
||||
'Menu:NewChange+' => 'Ein neues Change Ticket erstellen',
|
||||
'Menu:SearchChanges' => 'Nach Changes suchen',
|
||||
'Menu:SearchChanges+' => 'Nach Change Tickets suchen',
|
||||
'Menu:Change:Shortcuts' => 'Shortcuts',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Changes, die auf Bestätigung warten',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Changes, die auf Genehmigung warten',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Offene Changes',
|
||||
'Menu:Changes+' => 'Alle Offene Changes',
|
||||
'Menu:MyChanges' => 'An mich zugewiesene Changes',
|
||||
'Menu:MyChanges+' => 'An mich zugewiesene Changes (als Bearbeiter)',
|
||||
'Class:Change' => 'Change',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Geplanter Start',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Status',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Neu',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Validiert',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Abgelehnt',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Zugewiesen',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Geplant und angesetzt',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Genehmigt',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Nicht genehmigt',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Implementiert',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Überwacht',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Geschlossen',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Ursache',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Antragsteller',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Antragsteller',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Kunde',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Kunde',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'Arbeitsgruppe',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'Arbeitsgruppe',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Erstellt',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Letzte Aktualisierung',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Enddatum',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Geschlossen',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Auswirkung',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Bearbeiter',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Bearbeiter',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Bearbeiter',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Aufsichts-Team',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Aufsichts-Team',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Aufsicht',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Aufsicht',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Manager-Team',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Manager-Team',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Manager',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Manager',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Ausfall',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Ja',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'Nein',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'Anfrage',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Fallback-Plan',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Validieren',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Ablehnen',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Zuweisen',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Wiedereröffnen',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Planen',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Bestätigen',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Umplanen',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Ablehnen',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Implementieren',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Überwachen',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Abschließen',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Neu',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Zugewiesen',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Geplant und angesetzt',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Bestätigt',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Implementiert',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'Überwachen',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Geschlossen',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:ApprovedChange' => 'Bewilligte Changes',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Datum der Bewilligung',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Kommentar zur Bewilligung',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Validieren',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Ablehnen',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Zuweisen',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Wiedereröffnen',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Planen',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Bestätigen',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Umplanen',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Bestätigen zurücknehmen',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Implementieren',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Überwachen',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Abschließen',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Neu',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Validiert',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Abgelehnt',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Zugewiesen',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Geplant und angesetzt',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Bestätigt',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'Nicht bestätigt',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Implementiert',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'Überwachen',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Geschlossen',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Neu',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Validiert',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Abgelehnt',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Zugewiesen',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Geplant und angesetzt',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Bestätigt',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'Nicht bestätigt',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Implementiert',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'Überwachen',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Geschlossen',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
));
|
||||
?>
|
||||
290
datamodels/2.x/itop-change-mgmt-itil/en.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,290 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Menu:ChangeManagement' => 'Change management',
|
||||
'Menu:Change:Overview' => 'Overview',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'New Change',
|
||||
'Menu:NewChange+' => 'Create a new Change ticket',
|
||||
'Menu:SearchChanges' => 'Search for Changes',
|
||||
'Menu:SearchChanges+' => 'Search for Change tickets',
|
||||
'Menu:Change:Shortcuts' => 'Shortcuts',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Changes awaiting acceptance',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Changes awaiting approval',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Opened changes',
|
||||
'Menu:Changes+' => 'All Opened Changes',
|
||||
'Menu:MyChanges' => 'Changes assigned to me',
|
||||
'Menu:MyChanges+' => 'Changes assigned to me (as Agent)',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:Change' => 'Change',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:status' => 'Status',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'New',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Validated',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rejected',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Assigned',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Planned and scheduled',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Approved',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Not approved',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Implemented',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Monitored',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Closed',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Reason',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Requestor',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Requestor email',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Creation date',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Impact',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Supervisor team',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Supervisor team name',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Supervisor email',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Manager team',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Manager team name',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Manager',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Manager email',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Outage',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'No',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Yes',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Fallback plan',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Attribute:parent_id' => 'Parent change',
|
||||
'Class:Change/Attribute:parent_id+' => '',
|
||||
'Class:Change/Attribute:parent_name' => 'Parent change Ref',
|
||||
'Class:Change/Attribute:parent_name+' => '',
|
||||
'Class:Change/Attribute:related_request_list' => 'Related requests',
|
||||
'Class:Change/Attribute:related_request_list+' => '',
|
||||
'Class:Change/Attribute:related_problems_list' => 'Related problems',
|
||||
'Class:Change/Attribute:related_problems_list+' => '',
|
||||
'Class:Change/Attribute:child_changes_list' => 'Child changes',
|
||||
'Class:Change/Attribute:child_changes_list+' => '',
|
||||
'Class:Change/Attribute:parent_id_friendlyname' => 'Parent friendly name',
|
||||
'Class:Change/Attribute:parent_id_friendlyname+' => '',
|
||||
'Class:Change/Attribute:parent_id_finalclass_recall' => 'Change type',
|
||||
'Class:Change/Attribute:parent_id_finalclass_recall+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Validate',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Reject',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Assign',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Reopen',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Plan',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Approve',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Replan',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Reject',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Implement',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Finish',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:RoutineChange' => 'Routine Change',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Validate',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reject' => 'Reject',
|
||||
'Class:RoutineChange/Stimulus:ev_reject+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Assign',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Reopen',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Plan',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_approve' => 'Approve',
|
||||
'Class:RoutineChange/Stimulus:ev_approve+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Replan',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove' => 'Do Not Approve',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Implement',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Finish',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:ApprovedChange' => 'Approved Changes',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Approval Date',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Approval comment',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Validate',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Reject',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Assign',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Reopen',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Plan',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Approve',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Replan',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Reject approval',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Implement',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Finish',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:NormalChange' => 'Normal Change',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Acceptance date',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Acceptance comment',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Validate',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Reject',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Assign',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Reopen',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Plan',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Approve',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Replan',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Reject approval',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Implement',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Finish',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:EmergencyChange' => 'Emergency Change',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Validate',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Reject',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Assign',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Reopen',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Plan',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Approve',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Replan',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Reject approval',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Implement',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Finish',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
?>
|
||||
341
datamodels/2.x/itop-change-mgmt-itil/es_cr.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,341 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', array(
|
||||
'Menu:ChangeManagement' => 'Gestión del cambio',
|
||||
'Menu:Change:Overview' => 'Visión General',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Cambios esperando ser aceptados',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Cambios esperando ser aprovados',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Cambios abiertos',
|
||||
'Menu:Changes+' => 'Todos los Cambios abiertos',
|
||||
'Menu:MyChanges' => 'Cambios asignados a mí',
|
||||
'Menu:MyChanges+' => 'Cambios asignados a mí (como Agente)',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', array(
|
||||
'Class:Change' => 'Cambio',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Inicio planificado',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Estado',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Nuevo',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Validado',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rechazado',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Asignado',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Planificado y calendarizado',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Aprobado',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'No aprobado',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Monitoreado',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Cerrado',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Razón',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Solicitante',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Solicitante',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Cliente',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Cliente',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'Grupo de trabajo',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'Grupo de trabajo',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Creado',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Última actualización',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Fecha de finalización',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Cerrado',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Impacto',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Agente',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Agent',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Agente',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Equipo supervisor',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Equipo supervisor',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Director de equipo',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Director de equipo',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Director',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Director',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Falla',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Si',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'No',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'Solicitud',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Plan de emergencia',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Validado',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Rechazado',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Asignar',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Planificar',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Aprobar',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Replanificar',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Rechazar',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', array(
|
||||
'Class:RoutineChange' => 'Routine Change',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Nuevo',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Asignado',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Planificado y calendarizado',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Aprobado',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'Monitoreado',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Cerrado',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Validado',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Asignado',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Planificar',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Replanificar',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', array(
|
||||
'Class:ApprovedChange' => 'Modificaciones aprobadas',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Fecha de aprobación',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Comentario de aprobación',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Validado',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Rechazado',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Asignado',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Planificar',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Aprobar',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Replanificar',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Aprobación rechazada',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', array(
|
||||
'Class:NormalChange' => 'Modificación Normal',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Nuevo',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Validado',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Rejected',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Asignado',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Planificado y calendarizado',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Aprobado',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'No aprobado',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'Monitoreado',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Cerrado',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Fecha de aceptación',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Comentario de aceptación',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Validado',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Rechazado',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Asignado',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Planificar',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Aprobar',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Replanificar',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Aprobación rechazada',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', array(
|
||||
'Class:EmergencyChange' => 'Modificación de Emergencia',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Nuevo',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Validado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Rejected',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Asignado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Planificado y calendarizado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Aprobado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'No aprobado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'Monitoreado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Cerrado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Validado',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Rechazado',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Asignado',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Planificar',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Aprobar',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Replanificar',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Aprobación rechazada',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Monitor',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
?>
|
||||
280
datamodels/2.x/itop-change-mgmt-itil/fr.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,280 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:Change' => 'Ticket de changement',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:status' => 'Etat',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Nouveau',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Validé',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rejeté',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Assigné',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Programmé',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Approuvé',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Non approuvé',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Effectué',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'En cours de suivi',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Fermé',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Raison',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Demandeur',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Email Demandeur',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Date de création',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Impact',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Equipe de supervision',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Nom Equipe de supervision',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Superviseur',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Email Superviseur',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Equipe responsable',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Nom Equipe responsable',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Responsable',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Email Responsable',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Interruption de service',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'Non',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Oui',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Plan de secours',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Attribute:parent_id' => 'Changement parent',
|
||||
'Class:Change/Attribute:parent_id+' => '',
|
||||
'Class:Change/Attribute:parent_name' => 'Ref changement parent',
|
||||
'Class:Change/Attribute:parent_name+' => '',
|
||||
'Class:Change/Attribute:related_request_list' => 'Requêtes liées',
|
||||
'Class:Change/Attribute:related_request_list+' => '',
|
||||
'Class:Change/Attribute:related_problems_list' => 'Problèmes liés',
|
||||
'Class:Change/Attribute:related_problems_list+' => '',
|
||||
'Class:Change/Attribute:child_changes_list' => 'Changements fils',
|
||||
'Class:Change/Attribute:child_changes_list+' => '',
|
||||
'Class:Change/Attribute:parent_id_friendlyname' => 'Nom commun du changement parent',
|
||||
'Class:Change/Attribute:parent_id_friendlyname+' => '',
|
||||
'Class:Change/Attribute:parent_id_finalclass_recall' => 'Type de changement',
|
||||
'Class:Change/Attribute:parent_id_finalclass_recall+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Valider',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Rejeter',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Assigner',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Réouvrir',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Plannifier',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Approuver',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Replannifier',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Ne pas approuver',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Marquer comme effectué',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Marquer comme suivi',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Fermer',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:RoutineChange' => 'Ticket de Changement de Routine',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Valider',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reject' => 'Refuser',
|
||||
'Class:RoutineChange/Stimulus:ev_reject+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Assigner',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Réouvrir',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Plannifier',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_approve' => 'Approver',
|
||||
'Class:RoutineChange/Stimulus:ev_approve+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Replannifier',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove' => 'Ne pas approver',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Marquer comme effectué',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Marquer comme suivi',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Fermer',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:ApprovedChange' => 'Changements pré-approuvés',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Date d\'approbation',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Commentaire sur l\'approbation',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Valider',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Rejeter',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Assigner',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Réouvrir',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Plannifier',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Approuver',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Replannifier',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Ne pas approuver',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Marquer comme effectué',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Marquer comme suivi',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Fermer',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:NormalChange' => 'Ticket de Changement',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Date d\'acceptation',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Commentaire sur l\'acceptation',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Valider',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Rejeter',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Assigner',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Réouvrir',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Plannifier',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Approuver',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Replannifier',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Ne pas approuver',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Marquer comme effectué',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Marquer comme suivi',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Fermer',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:EmergencyChange' => 'Ticket de Changement d\'Urgence',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Valider',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Rejeter',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Assigner',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Réouvrir',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Plannifier',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Approuver',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Replannifier',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Ne pas approuver',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Marquer comme effectué',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Marquer comme suivi',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Fermer',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
|
||||
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Menu:ChangeManagement' => 'Gestion des changements',
|
||||
'Menu:Change:Overview' => 'Vue d\'ensemble',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Nouveau changement',
|
||||
'Menu:NewChange+' => 'Créer un nouveau ticket de changement',
|
||||
'Menu:SearchChanges' => 'Rechercher des changements',
|
||||
'Menu:SearchChanges+' => 'Rechercher parmi les tickets de changement',
|
||||
'Menu:Change:Shortcuts' => 'Raccourcis',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Tickets en attente d\'acceptance',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Tickets en attente d\'approbation',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Tickets ouverts',
|
||||
'Menu:Changes+' => 'Tickets de changement ouverts',
|
||||
'Menu:MyChanges' => 'Mes tickets',
|
||||
'Menu:MyChanges+' => 'Tickets de changement qui me sont assignés',
|
||||
|
||||
));
|
||||
?>
|
||||
299
datamodels/2.x/itop-change-mgmt-itil/hu.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,299 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'Class:RoutineChange' => 'Szokásos változás',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Ellenőrzés',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reject' => 'Visszautasítás',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Hozzárenedelés',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Újranyitás',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Tervezés',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_approve' => 'Jóváhagyás',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Újratervezés',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove' => 'Visszautasítás',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Végrehajtás',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Felügyelet',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Befejezés',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange' => 'Normál változás',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Elfogadás dátuma',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Megjegyzés az elfogadáshoz',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Ellenőrzés',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Visszautasítás',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Hozzárenedelés',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Újranyitás',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Tervezés',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Jóváhagyás',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Újratervezés',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Jóváhagyás visszautasítás',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Végrehajtás',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Felügyelet',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Befejezés',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
'Class:EmergencyChange' => 'Sűrgős változtatás',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Ellenőrzés',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Visszautasítás',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Hozzárenedelés',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Újranyitás',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Tervezés',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Jóváhagyás',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Újratervezés',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Jóváhagyás visszautasítás',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Végrehajtás',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Felügyelet',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Befejezés',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
'Menu:ChangeManagement' => 'Változás menedzsment',
|
||||
'Menu:Change:Overview' => 'Áttekintő',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Új változás',
|
||||
'Menu:NewChange+' => '',
|
||||
'Menu:SearchChanges' => 'Változás keresés',
|
||||
'Menu:SearchChanges+' => '',
|
||||
'Menu:Change:Shortcuts' => 'Gyorsmenü',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Elfogadásra váró változások',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Jóváhagyásra váró változások',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Nyitott változási igények',
|
||||
'Menu:Changes+' => '',
|
||||
'Menu:MyChanges' => 'Hozzám rendelt változások',
|
||||
'Menu:MyChanges+' => '',
|
||||
'Class:Change' => 'Változás',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Tervezett élesítés dátuma',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Státusz',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Új',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Ellenőrzött',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Visszautasított',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Hozzárendelt',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Tervezett és ütemezett',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Jóváhagyott',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Nem jóváhagyott',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Végrehajtott',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Felügyelet',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Lezárt',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Ok',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Igénylő',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Igénylő e-mail',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Ügyfél',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Ügyfél',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'Munkacsoport',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'Munkacsoport',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Létrehozás dátuma',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Utolsó módosítás időpontja',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Befejezés dátuma',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Lezárt',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Hatás',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Felelős',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Felelős',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Felelős',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Supervisor csoport',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Supervisor csoport',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Menedzser csoport',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Menedzser csoport',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Menedzser',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Menedzser',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Leállás',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Igen',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'Nem',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'Kérés',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Visszatervezés',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Ellenőrzés',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Visszautasítás',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Hozzárenedelés',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Újranyitás',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Tervezés',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Jóváhagyás',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Újratervezés',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Visszautasítás',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Végrehajtás',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Felügyelet',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Befejezés',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Új',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Hozzárendelt',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Tervezett és ütemezett',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Jóváhagyott',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Végrehajtott',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'Felügyelet',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Lezárt',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:ApprovedChange' => 'Jóváhagyott változások',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Jóváhagyás dátuma',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Megjegyzés a jóváhagyáshoz',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Ellenőrzés',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Visszautasítás',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Hozzárenedelés',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Újranyitás',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Tervezés',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Jóváhagyás',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Újratervezés',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Visszautasítés jóváhagyása',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Végrehajtás',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Felügyelet',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Befejezés',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Új',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Ellenőrzött',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Visszautasított',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Hozzárendelt',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Tervezett és ütemezett',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Jóváhagyott',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'Nem jóváhagyott',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Végrehajtott',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'Felügyelet',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Lezárt',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Új',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Ellenőrzött',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Visszautasított',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Hozzárendelt',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Tervezett és ütemezett',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Jóváhagyott',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'Nem jóváhagyott',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Végrehajtott',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'Felügyelet',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Lezárt',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
));
|
||||
?>
|
||||
BIN
datamodels/2.x/itop-change-mgmt-itil/images/change-approved.png
Executable file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
datamodels/2.x/itop-change-mgmt-itil/images/change-closed.png
Executable file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
datamodels/2.x/itop-change-mgmt-itil/images/change-rejected.png
Executable file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
datamodels/2.x/itop-change-mgmt-itil/images/change.png
Executable file
|
After Width: | Height: | Size: 2.4 KiB |
303
datamodels/2.x/itop-change-mgmt-itil/it.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,303 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:RoutineChange' => 'Routine di cambi',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Convalida',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reject' => 'Respingi',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Assegna',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Riapri',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Pianifica',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_approve' => 'Approva',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Ripianifica',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove' => 'Non Approva',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Implementa',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Monitora',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Fine',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange' => 'Cambi normali',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Data di approvazione',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Commento di approvazione',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Convalida',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Rifiuta',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Assegna',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Riapre',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Pianifica',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Approva',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Ripianifica',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Rifiuta l\'approvazione',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Implementa',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Monitora',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Fine',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
'Class:EmergencyChange' => 'Cambi di emergenza',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Convalida',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Rifiuta',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Assegna',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Riapre',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Pianifica',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Approva',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Riapre',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Rifiuta l\'approvazione',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Implementa',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Monitora',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Fine',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
'Menu:ChangeManagement' => 'Gestione dei cambi',
|
||||
'Menu:Change:Overview' => 'Panoramica',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Nuovo cambio',
|
||||
'Menu:NewChange+' => 'Crea un ticket per un nuovo cambio',
|
||||
'Menu:SearchChanges' => 'Cerca per cambi',
|
||||
'Menu:SearchChanges+' => 'Cerca i cambi per tickets',
|
||||
'Menu:Change:Shortcuts' => 'Scorciatoie',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Modifiche in attesa di accettazione',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Modifiche in attesa di approvazione',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Modifiche aperte',
|
||||
'Menu:Changes+' => 'Tutte le Modifiche aperte',
|
||||
'Menu:MyChanges' => 'Modifiche assegnate a me',
|
||||
'Menu:MyChanges+' => 'Modifiche assegnato a me (come Agent)',
|
||||
'Class:Change' => 'Cambio',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Avvio previsto',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Stato',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Nuovo',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Convalidato',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rifiutato',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Assegnato',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Pianificato e programmato',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Approvato',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Non approvato',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Implementato',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Monitorato',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Chiuso',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Motivo',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Richiedente',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Richiedente',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Cliente',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Cliente',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'Gruppo di lavoro',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'Gruppo di lavoro',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Creato',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Ultimo aggiornamento',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Data di fine',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Chiuso',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Impatto',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Agente',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Agente',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Agente',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Supervisore del team',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Supervisore del team',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Supervisore',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Supervisore',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Manager del team',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Manager del team',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Manager',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Manager',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Interruzione',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Si',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'No',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'Richiesta',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Piano alternativo',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Convalida',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Rifiuta',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Assegna',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Riapre',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Pianifica',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Approva',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Ripianifica',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Rifiuta',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Implementa',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Monitora',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Fine',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Nuovo',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Assegnato',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Pianificato e programmato',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Approvato',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Implementato',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'Monitorato',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Chiuso',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:ApprovedChange' => 'Cambi approvati',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Data di approvazione',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Commento di approvazione',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Convalida',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Rifiuta',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Assegna',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Riapre',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Pianifica',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Approvare',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Ripianifica',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Rifiuta l\'approvazione',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Implementa',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Monitora',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Fine',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Nuovo',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Convalidato',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Rifiutato',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Assegnato',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Pianificato e programmato',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Approvato',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'Non approvato',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Implementato',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'Monitorato',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Chiuso',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Nuovo',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Convalidato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Rifiutato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Asseganto',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Pianificato e programmato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Approvato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'Non approvato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Implementato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'Monitorato',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Chiuso',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
));
|
||||
?>
|
||||
348
datamodels/2.x/itop-change-mgmt-itil/ja.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,348 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Hirofumi Kosaka <kosaka@rworks.jp>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Menu:ChangeManagement' => '変更管理', # 'Change management',
|
||||
'Menu:Change:Overview' => '概要', # 'Overview',
|
||||
'Menu:Change:Overview+' => '', # '',
|
||||
'Menu:NewChange' => '新規変更', # 'New Change',
|
||||
'Menu:NewChange+' => '新規変更のチケット作成', # 'Create a new Change ticket',
|
||||
'Menu:SearchChanges' => '変更検索', # 'Search for Changes',
|
||||
'Menu:SearchChanges+' => '変更チケット検索', # 'Search for Change tickets',
|
||||
'Menu:Change:Shortcuts' => 'ショートカット', # 'Shortcuts',
|
||||
'Menu:Change:Shortcuts+' => '', # '',
|
||||
'Menu:WaitingAcceptance' => '受理待ちの変更', # 'Changes awaiting acceptance',
|
||||
'Menu:WaitingAcceptance+' => '', # '',
|
||||
'Menu:WaitingApproval' => '承認待ちの変更', # 'Changes awaiting approval',
|
||||
'Menu:WaitingApproval+' => '', # '',
|
||||
'Menu:Changes' => '担当のいない変更', # 'Opened changes',
|
||||
'Menu:Changes+' => '', # '',
|
||||
'Menu:MyChanges' => '担当している変更', # 'Changes assigned to me',
|
||||
'Menu:MyChanges+' => '担当している変更(エージェント)', # 'Changes assigned to me (as Agent)',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:Change' => '変更', # 'Change',
|
||||
'Class:Change+' => '', # '',
|
||||
'Class:Change/Attribute:start_date' => '開始計画日', # 'Planned startup',
|
||||
'Class:Change/Attribute:start_date+' => '', # '',
|
||||
'Class:Change/Attribute:status' => 'ステータス', # 'Status',
|
||||
'Class:Change/Attribute:status+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:new' => '新規', # 'New',
|
||||
'Class:Change/Attribute:status/Value:new+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:validated' => '受付済', # 'Validated',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => '却下済', # 'Rejected',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => '割当済', # 'Assigned',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => '計画・予定された', # 'Planned and scheduled',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:approved' => '承認済', # 'Approved',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => '未承認', # 'Not approved',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => '実施済み', # 'Implemented',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => '経過観察', # 'Monitored',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '', # '',
|
||||
'Class:Change/Attribute:status/Value:closed' => '完了', # 'Closed',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '', # '',
|
||||
'Class:Change/Attribute:reason' => '理由', # 'Reason',
|
||||
'Class:Change/Attribute:reason+' => '', # '',
|
||||
'Class:Change/Attribute:requestor_id' => '依頼者', # 'Requestor',
|
||||
'Class:Change/Attribute:requestor_id+' => '', # '',
|
||||
'Class:Change/Attribute:requestor_email' => '依頼者', # 'Requestor',
|
||||
'Class:Change/Attribute:requestor_email+' => '', # '',
|
||||
'Class:Change/Attribute:org_id' => '顧客', # 'Customer',
|
||||
'Class:Change/Attribute:org_id+' => '', # '',
|
||||
'Class:Change/Attribute:org_name' => '顧客', # 'Customer',
|
||||
'Class:Change/Attribute:org_name+' => '', # '',
|
||||
'Class:Change/Attribute:workgroup_id' => '作業グループ', # 'Workgroup',
|
||||
'Class:Change/Attribute:workgroup_id+' => '', # '',
|
||||
'Class:Change/Attribute:workgroup_name' => '作業グループ', # 'Workgroup',
|
||||
'Class:Change/Attribute:workgroup_name+' => '', # '',
|
||||
'Class:Change/Attribute:creation_date' => '作成', # 'Created',
|
||||
'Class:Change/Attribute:creation_date+' => '', # '',
|
||||
'Class:Change/Attribute:last_update' => '最終更新', # 'Last update',
|
||||
'Class:Change/Attribute:last_update+' => '', # '',
|
||||
'Class:Change/Attribute:end_date' => '作業終了', # 'End date',
|
||||
'Class:Change/Attribute:end_date+' => '', # '',
|
||||
'Class:Change/Attribute:close_date' => '完了', # 'Closed',
|
||||
'Class:Change/Attribute:close_date+' => '', # '',
|
||||
'Class:Change/Attribute:impact' => '影響', # 'Impact',
|
||||
'Class:Change/Attribute:impact+' => '', # '',
|
||||
'Class:Change/Attribute:agent_id' => 'エージェント', # 'Agent',
|
||||
'Class:Change/Attribute:agent_id+' => '', # '',
|
||||
'Class:Change/Attribute:agent_name' => 'エージェント', # 'Agent',
|
||||
'Class:Change/Attribute:agent_name+' => '', # '',
|
||||
'Class:Change/Attribute:agent_email' => 'エージェント', # 'Agent','Agent', # 'Agent',
|
||||
'Class:Change/Attribute:agent_email+' => '', # '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => '監督者チーム', # 'Supervisor team',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '', # '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => '監督者チーム', # 'Supervisor team',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '', # '',
|
||||
'Class:Change/Attribute:supervisor_id' => '監督者', # 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_id+' => '', # '',
|
||||
'Class:Change/Attribute:supervisor_email' => '監督者', # 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_email+' => '', # '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'マネジャーチーム', # 'Manager team',
|
||||
'Class:Change/Attribute:manager_group_id+' => '', # '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'マネジャーチーム', # 'Manager team',
|
||||
'Class:Change/Attribute:manager_group_name+' => '', # '',
|
||||
'Class:Change/Attribute:manager_id' => 'マネジャー', # 'Manager',
|
||||
'Class:Change/Attribute:manager_id+' => '', # '',
|
||||
'Class:Change/Attribute:manager_email' => 'マネジャー', # 'Manager',
|
||||
'Class:Change/Attribute:manager_email+' => '', # '',
|
||||
'Class:Change/Attribute:outage' => '停止', # 'Outage',
|
||||
'Class:Change/Attribute:outage+' => '', # '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'はい', # 'Yes',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '', # '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'いいえ', # 'No',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '', # '',
|
||||
'Class:Change/Attribute:change_request' => 'リクエスト', # 'Request',
|
||||
'Class:Change/Attribute:change_request+' => '', # '',
|
||||
'Class:Change/Attribute:fallback' => '代替計画', # 'Fallback plan',
|
||||
'Class:Change/Attribute:fallback+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_validate' => '受付', # 'Validate',
|
||||
'Class:Change/Stimulus:ev_validate+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_reject' => '却下', # 'Reject',
|
||||
'Class:Change/Stimulus:ev_reject+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_assign' => '担当割当', # 'Assign',
|
||||
'Class:Change/Stimulus:ev_assign+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_reopen' => '再開', # 'Reopen',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_plan' => '計画', # 'Plan',
|
||||
'Class:Change/Stimulus:ev_plan+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_approve' => '承認', # 'Approve',
|
||||
'Class:Change/Stimulus:ev_approve+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_replan' => '再計画', # 'Replan',
|
||||
'Class:Change/Stimulus:ev_replan+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => '却下', # 'Reject',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_implement' => '実施', # 'Implement',
|
||||
'Class:Change/Stimulus:ev_implement+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_monitor' => '経過観察', # 'Monitor',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '', # '',
|
||||
'Class:Change/Stimulus:ev_finish' => '作業終了', # 'Finish',
|
||||
'Class:Change/Stimulus:ev_finish+' => '', # '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:RoutineChange' => '定期変更', # 'Routine Change',
|
||||
'Class:RoutineChange+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => '新規', # 'New',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => '割当済', # 'Assigned',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => '計画・予定された', # 'Planned and scheduled',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => '承認済', # 'Approved',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => '実施済', # 'Implemented',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => '経過観察中', # 'Monitored',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '', # '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => '完了', # 'Closed',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => '受付', # 'Validate',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => '担当割当', # 'Assign',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => '再開', # 'Reopen',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => '計画', # 'Plan',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => '再計画', # 'Replan',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => '実施', # 'Implement',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => '経過観察', # 'Monitor',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '', # '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => '作業終了', # 'Finish',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '', # '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:ApprovedChange' => '承認済の変更', # 'Approved Changes',
|
||||
'Class:ApprovedChange+' => '', # '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => '承認日', # 'Approval Date',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '', # '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => '承認時のコメント', # 'Approval comment',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => '受付', # 'Validate',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => '却下', # 'Reject',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => '担当割当', # 'Assign',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => '再開', # 'Reopen',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => '計画', # 'Plan',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => '承認', # 'Approve',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => '再計画', # 'Replan',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => '承認の不同意', # 'Reject approval',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => '実施', # 'Implement',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => '経過観察', # 'Monitor',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '', # '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => '作業終了', # 'Finish',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '', # '',
|
||||
));
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:NormalChange' => '通常変更', # 'Normal Change',
|
||||
'Class:NormalChange+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => '新規', # 'New',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => '受付済', # 'Validated',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => '却下済', # 'Rejected',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => '割当済', # 'Assigned',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => '計画・予定された', # 'Planned and scheduled',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => '承認済', # 'Approved',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => '未承認', # 'Not approved',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => '実施済', # 'Implemented',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => '経過観察中', # 'Monitored',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '', # '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => '完了', # 'Closed',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '', # '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => '受理日', # 'Acceptance date',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '', # '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => '受理コメント', # 'Acceptance comment',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => '受付', # 'Validate',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => '却下', # 'Reject',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => '担当割当', # 'Assign',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => '再開', # 'Reopen',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => '計画', # 'Plan',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => '承認', # 'Approve',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => '再計画', # 'Replan',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => '承認の不同意', # 'Reject approval',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => '実施', # 'Implement',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => '経過観察', # 'Monitor',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '', # '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => '作業終了', # 'Finish',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '', # '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array (
|
||||
'Class:EmergencyChange' => '緊急変更', # 'Emergency Change',
|
||||
'Class:EmergencyChange+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => '新規', # 'New',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => '受付済', # 'Validated',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => '却下', # 'Rejected',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => '割当済', # 'Assigned',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => '計画・予定された', # 'Planned and scheduled',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => '承認済み', # 'Approved',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => '未承認', # 'Not approved',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => '実施済', # 'Implemented',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => '経過観察中', # 'Monitored',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '', # '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => '完了', # 'Closed',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => '受付', # 'Validate',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => '却下', # 'Reject',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => '担当割当', # 'Assign',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => '再開', # 'Reopen',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => '計画', # 'Plan',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => '承認', # 'Approve',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => '再計画', # 'Replan',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => '承認の不同意', # 'Reject approval',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => '実施', # 'Implement',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => '経過観察', # 'Monitor',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '', # '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => '作業終了', # 'Finish',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '', # '',
|
||||
));
|
||||
|
||||
?>
|
||||
46
datamodels/2.x/itop-change-mgmt-itil/module.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
|
||||
SetupWebPage::AddModule(
|
||||
__FILE__, // Path to the current file, all other file names are relative to the directory containing this file
|
||||
'itop-change-mgmt-itil/2.0.0',
|
||||
array(
|
||||
// Identification
|
||||
//
|
||||
'label' => 'Change Management ITIL',
|
||||
'category' => 'business',
|
||||
|
||||
// Setup
|
||||
//
|
||||
'dependencies' => array(
|
||||
'itop-config-mgmt/2.0.0',
|
||||
'itop-tickets/2.0.0',
|
||||
),
|
||||
'mandatory' => false,
|
||||
'visible' => true,
|
||||
|
||||
// Components
|
||||
//
|
||||
'datamodel' => array(
|
||||
'model.itop-change-mgmt-itil.php',
|
||||
),
|
||||
'data.struct' => array(
|
||||
//'data.struct.itop-change-mgmt.xml',
|
||||
),
|
||||
'data.sample' => array(
|
||||
//'data.sample.itop-change-mgmt.xml',
|
||||
),
|
||||
|
||||
// Documentation
|
||||
//
|
||||
'doc.manual_setup' => '',
|
||||
'doc.more_information' => '/doc/itop-documentation.htm#ChangeMgmt',
|
||||
|
||||
// Default settings
|
||||
//
|
||||
'settings' => array(
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
||||
22
datamodels/2.x/itop-change-mgmt-itil/overview.html
Executable file
@@ -0,0 +1,22 @@
|
||||
<h1><itopstring>UI:ChangeMgmtMenuOverview:Title</itopstring></h1>
|
||||
<table border="0" padding="5" class="layout" width="100%">
|
||||
<tr>
|
||||
<td class="dashboard">
|
||||
<itopblock BlockClass="DisplayBlock" type="open_flash_chart" parameters="chart_type:bars;group_by:finalclass;chart_title:UI-ChangeManagementOverview-ChangeByType" asynchronous="false" encoding="text/oql">SELECT Change</itopblock>
|
||||
</td>
|
||||
<td class="dashboard">
|
||||
<h2><itopstring>UI-ChangeManagementOverview-ChangeUnassigned</itopstring></h2>
|
||||
<itopblock BlockClass="DisplayBlock" type="list" parameters="dashboard:true" asynchronous="false" encoding="text/oql">SELECT Change WHERE status = 'new'</itopblock>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dashboard">
|
||||
<h2><itopstring>UI-ChangeManagementOverview-ChangeWithOutage</itopstring></h2>
|
||||
<itopblock BlockClass="DisplayBlock" type="list" parameters="dashboard:true" asynchronous="false" encoding="text/oql">SELECT Change WHERE outage = 'yes'</itopblock>
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
304
datamodels/2.x/itop-change-mgmt-itil/pt_br.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,304 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @author Marco Tulio <mtulio@opensolucoes.com.br>
|
||||
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'Class:RoutineChange' => 'Mudança Rotina',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Validado',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reject' => 'Recusar',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Atribuír',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Planejar',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_approve' => 'Aprovar',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Re-planejar',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_notapprove' => 'Não aprovar',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Monitorar',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange' => 'Mudança Normal',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Data aceitação',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Comentário aprovação',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Validar',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Rejeitar',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Atribuír',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Planejar',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Aprovar',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Re-planejar',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Rejeitar aprovação',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Monitorar',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
'Class:EmergencyChange' => 'Mudança Emergência',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Validar',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Rejeitar',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Atribuír',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Planejar',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Aprovar',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Re-planejar',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Rejeitar aprovação',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Monitorar',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
'Menu:ChangeManagement' => 'Gerenciamento Mudanças',
|
||||
'Menu:Change:Overview' => 'Visão geral',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Nova Mudança',
|
||||
'Menu:NewChange+' => 'Nova Mudança',
|
||||
'Menu:SearchChanges' => 'Pesquisa para Mudança',
|
||||
'Menu:SearchChanges+' => 'Pesquisa para Mudança',
|
||||
'Menu:Change:Shortcuts' => 'Atalhos',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Mudanças à espera de aceitação',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Mudanças à espera de aprovação',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Mudanças abertas',
|
||||
'Menu:Changes+' => '',
|
||||
'Menu:MyChanges' => 'Mudanças atribuída a mim',
|
||||
'Menu:MyChanges+' => 'Mudanças atribuída para mim (como Agente)',
|
||||
'Class:Change' => 'Mudança',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Início planejado',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Status',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Novo',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Validado',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rejeitado',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Atribuído',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Planejado e agendado',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Aprovado',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Não aprovado',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Monitorado',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Fechado',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Razão',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Solicitador',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Solicitador',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Cliente',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Cliente',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'Grupo de trabalho',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'Grupo de trabalho',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Criado',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Última atualização',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Data final',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Fechado',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Impacto',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Agente',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Agente',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Agente',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Supervisor equipe',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Supervisor equipe',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Supervisor',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Gerente equipe',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Gerente equipe',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Gerente',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Gerente',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Outage',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Sim',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'Não',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'Solicitação',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Plano de contigência',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Validar',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Rejeitar',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Atribuír',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Planejar',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Aprovar',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Re-planejar',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Rejeitar',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Monitorar',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Nova',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Atribuído',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Planejado e agendado',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Aprovado',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'Monitorado',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Fechado',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:ApprovedChange' => 'Mudanças aprovadas',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Data aprovação',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Comentário aprovação',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Validar',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Rejeitar',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Atribuír',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Re-abrir',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Planejar',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Aprovar',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Re-planejar',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Rejeitar aprovação',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Implementar',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Monitorar',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Finalizar',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Novo',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Validado',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Rejeitado',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Atribuído',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Planejado e agendado',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Aprovado',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'Não aprovado',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'Monitorado',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Fechado',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Novo',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Validado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Rejeitado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Atribuído',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Planejado e agendado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Aprovado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'Não aprovado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Implementado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'Monitorado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Fechado',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
));
|
||||
?>
|
||||
345
datamodels/2.x/itop-change-mgmt-itil/ru.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,345 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Vladimir Shilov <shilow@ukr.net>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Menu:ChangeManagement' => 'Управление изменениями',
|
||||
'Menu:Change:Overview' => 'Обзор',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Новые изменения',
|
||||
'Menu:NewChange+' => 'Создание нового запроса на изменение',
|
||||
'Menu:SearchChanges' => 'Поиск изменений',
|
||||
'Menu:SearchChanges+' => 'Поиск запросов на изменения',
|
||||
'Menu:Change:Shortcuts' => 'Ярлыки',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Изменения ожидающие принятия',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Изменения ожидающие утверждения',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Открытые изменения',
|
||||
'Menu:Changes+' => '',
|
||||
'Menu:MyChanges' => 'Изменения назначенные на меня',
|
||||
'Menu:MyChanges+' => 'Изменения назначенные на меня (как агент)',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:Change' => 'Изменение',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Планируеый запуск',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Статус',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Новый',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Проверен',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Отклонён',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Назначен',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Намечен и запланирован',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Утверждён',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Не утверждём',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Реализован',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'Контролируемый',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Закрыт',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Причина',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'Инициатор запроса',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'Инициатор запроса',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Клиент',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Клиент',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'Рабоча группа',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'Рабочая группа',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Создан',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Последнее обновление',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Дата окончания',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Закрыт',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Воздействие',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Агент',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Агент',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Агент',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Руководитель команды',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Руководитель команды',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Руководитель',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Руководитель',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Менеджер команды',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Менеджер команды',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Менеджер',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Менеджер',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Отключение',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Отключение',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'Нет',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'Запрос',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Резервный план',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Проверка',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Отклонить',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Назначить',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Переоткрыть',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'План',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Утвердить',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Перепланировать',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Отклонить',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Реализовать',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'Наблюдение',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Закончить',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:RoutineChange' => 'Регулярное изменение',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Новое',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Назначено',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Намечено и запланировано',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Утверждено',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Реализовано',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'Контролируемое',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Закрытое',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Проверить',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Назначить',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Переоткрыть',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Планировать',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Перепланировать',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Реализовать',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'Контролировать',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Закончить',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:ApprovedChange' => 'Утверждённые изменения',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Дата утверждения',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Коментарий утверждения',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Проверка',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Отклонение',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Назначение',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Переоткрыть',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'План',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Утвердить',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Перепланировать',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Отклонить утверждение',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Реализовать',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'Контролировать',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Закончить',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:NormalChange' => 'Обычное изменение',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Новое',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Проверено',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Отклонено',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Назначено',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Намечено и запланировано',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Утверждено',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'Не утверждено',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Реализовано',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'Контролируемое',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Закрытое',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Дата принятия',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Коментарий принятия',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Проверить',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Отклонить',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Назначить',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Переоткрыть',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Планировать',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Утвердить',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Перепланировать',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Отклонить утверждение',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Реализовать',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'Контролировать',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Закончить',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:EmergencyChange' => 'Критическое изменение',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Новое',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Проверено',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Отклонено',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Назначено',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Намечено и запланировано',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Утверждено',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'Не утверждено',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Реализовано',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'Контролируемое',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Закрыто',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Проверить',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Отклонить',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Назначить',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Переоткрыть',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Планировать',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Утвердить',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Перепланировать',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Отклонить утверждение',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Реализовать',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'Контролировать',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Закончить',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
?>
|
||||
346
datamodels/2.x/itop-change-mgmt-itil/tr.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,346 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Izzet Sirin <izzet.sirin@htr.com.tr>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Menu:ChangeManagement' => 'Değişiklik Yönetimi',
|
||||
'Menu:Change:Overview' => 'Özet',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Yeni değişiklik',
|
||||
'Menu:NewChange+' => 'Yeni değişiklik isteği yarat',
|
||||
'Menu:SearchChanges' => 'Değişiklik ara',
|
||||
'Menu:SearchChanges+' => 'Değişiklik isteği ara',
|
||||
'Menu:Change:Shortcuts' => 'Kısayollar',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Kabul bekleyen değişiklik talepleri',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Onay bekleyen değişiklik talepleri',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Açık değişiklikler',
|
||||
'Menu:Changes+' => '',
|
||||
'Menu:MyChanges' => 'Bana atanan değişiklik istekleri',
|
||||
'Menu:MyChanges+' => 'Bana atanan değişiklik istekleri',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:Change' => 'Değişiklik',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => 'Planlanan başlama tarihi',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => 'Durumu',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Yeni',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => 'Kontrol edilen',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Reddedilen',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Atanmış',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => 'Planlanan',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Onaylanan',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => 'Onaylanmayan',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => 'Uygulanan',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => 'İzlenen',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Kapanan',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => 'Sebep',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => 'İstek sahibi',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => 'İstek sahibi',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => 'Müşteri',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => 'Müşteri',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => 'İş grubu',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => 'İş grubu',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Yaratıldı',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => 'Son güncelleme',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => 'Bitiş tarihi',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => 'Bitirilme tarihi',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => 'Etkisi',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => 'Yetkili',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => 'Yetkili',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => 'Yetkili',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => 'Supervizör ekip',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => 'Supervizör ekip',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => 'Supervizör',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => 'Supervizör',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => 'Yönetici ekibi',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => 'Yönetici ekibi',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => 'Yönetici',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => 'Yönetici',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => 'Servis kesilmesi',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => 'Evet',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => 'Hayır',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => 'İstek',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => 'Geridönüş planı',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => 'Doğrula',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Ret',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Ata',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Tekrar aç',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Planla',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Onayla',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => 'Tekrar planla',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => 'Ret',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => 'Uygula',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => 'İzle',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Bitir',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:RoutineChange' => 'Sıradan değişiklik',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => 'Yeni',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => 'Atanmış',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => 'Planlanan',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => 'Onaylanan',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => 'Uygulanan',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => 'İzlenen',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => 'Kapatılan',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => 'Doğrulanan',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => 'Atanan',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => 'Tekrar açılan',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => 'Planlanan',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => 'Tekrar planlanan',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => 'Uygula',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => 'İzle',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => 'Bitir',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:ApprovedChange' => 'Onaylanan değişiklik',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => 'Onay tarihi',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => 'Onay yorumu',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => 'Onaylı',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => 'Reddedilen',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => 'Ata',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => 'Tekrar aç',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => 'Planla',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => 'Onayla',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => 'Tekrar planla',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => 'Onayı reddet',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => 'Uygula',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => 'İzle',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => 'Bitir',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:NormalChange' => 'Normal değişiklik',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => 'Yeni',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => 'Doğrulanan',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => 'Reddedilen',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => 'Atanan',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => 'Planlanan',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => 'Onaylanan',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => 'Onaylanmayan',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => 'Uygulanan',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => 'İzlenen',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => 'Kapatılan',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => 'Kabul tarihi',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => 'Kabul yorumu',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => 'Doğrula',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => 'Reddet',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => 'Ata',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => 'Tekrar aç',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => 'Planla',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => 'Onayla',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => 'Tekrar planla',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => 'Onayı reddet',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => 'Uygula',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => 'İzle',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => 'Bitir',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Class:EmergencyChange' => 'Acil değişiklik',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => 'Yeni',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => 'Doğrulanan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => 'Reddedilen',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => 'Atanan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => 'Planan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => 'Onaylanan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => 'Onaylanmayan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => 'Uygulanan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => 'İzlenen',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => 'Kapatılan',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => 'Doğrula',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => 'Reddet',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => 'Ata',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => 'Tekrar aç',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => 'Planla',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => 'Onayla',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => 'Tekrar planla',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => 'Onayı reddet',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => 'Uygula',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => 'İzle',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => 'Bitir',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
?>
|
||||
345
datamodels/2.x/itop-change-mgmt-itil/zh.dict.itop-change-mgmt-itil.php
Executable file
@@ -0,0 +1,345 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Robert Deng <denglx@gmail.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Menu:ChangeManagement' => '变更管理',
|
||||
'Menu:Change:Overview' => '概览',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => '新变更',
|
||||
'Menu:NewChange+' => '创建新变更的单据',
|
||||
'Menu:SearchChanges' => '搜索变更',
|
||||
'Menu:SearchChanges+' => '搜索变更单据',
|
||||
'Menu:Change:Shortcuts' => '快捷方式',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => '等待接受的变更',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => '等待批准的变更',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => '待处理的变更',
|
||||
'Menu:Changes+' => '',
|
||||
'Menu:MyChanges' => '指派给我的变更',
|
||||
'Menu:MyChanges+' => '指派给我的变更 (作为办理人)',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:Change' => '变更',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:start_date' => '计划启动',
|
||||
'Class:Change/Attribute:start_date+' => '',
|
||||
'Class:Change/Attribute:status' => '状态',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => '新',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:validated' => '已生效',
|
||||
'Class:Change/Attribute:status/Value:validated+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => '已拒绝',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => '已指派',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled' => '已计划和安排',
|
||||
'Class:Change/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => '已批准',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:notapproved' => '未批准',
|
||||
'Class:Change/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:Change/Attribute:status/Value:implemented' => '已实施',
|
||||
'Class:Change/Attribute:status/Value:implemented+' => '',
|
||||
'Class:Change/Attribute:status/Value:monitored' => '已监控',
|
||||
'Class:Change/Attribute:status/Value:monitored+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => '已关闭',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:reason' => '原因',
|
||||
'Class:Change/Attribute:reason+' => '',
|
||||
'Class:Change/Attribute:requestor_id' => '申请者',
|
||||
'Class:Change/Attribute:requestor_id+' => '',
|
||||
'Class:Change/Attribute:requestor_email' => '申请者',
|
||||
'Class:Change/Attribute:requestor_email+' => '',
|
||||
'Class:Change/Attribute:org_id' => '客户',
|
||||
'Class:Change/Attribute:org_id+' => '',
|
||||
'Class:Change/Attribute:org_name' => '客户',
|
||||
'Class:Change/Attribute:org_name+' => '',
|
||||
'Class:Change/Attribute:workgroup_id' => '工作组',
|
||||
'Class:Change/Attribute:workgroup_id+' => '',
|
||||
'Class:Change/Attribute:workgroup_name' => '工作组',
|
||||
'Class:Change/Attribute:workgroup_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => '创建',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:last_update' => '最后更新',
|
||||
'Class:Change/Attribute:last_update+' => '',
|
||||
'Class:Change/Attribute:end_date' => '结束',
|
||||
'Class:Change/Attribute:end_date+' => '',
|
||||
'Class:Change/Attribute:close_date' => '关闭',
|
||||
'Class:Change/Attribute:close_date+' => '',
|
||||
'Class:Change/Attribute:impact' => '影响',
|
||||
'Class:Change/Attribute:impact+' => '',
|
||||
'Class:Change/Attribute:agent_id' => '办理人',
|
||||
'Class:Change/Attribute:agent_id+' => '',
|
||||
'Class:Change/Attribute:agent_name' => '办理人',
|
||||
'Class:Change/Attribute:agent_name+' => '',
|
||||
'Class:Change/Attribute:agent_email' => '办理人',
|
||||
'Class:Change/Attribute:agent_email+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_id' => '监督团队',
|
||||
'Class:Change/Attribute:supervisor_group_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_group_name' => '监督团队',
|
||||
'Class:Change/Attribute:supervisor_group_name+' => '',
|
||||
'Class:Change/Attribute:supervisor_id' => '监督者',
|
||||
'Class:Change/Attribute:supervisor_id+' => '',
|
||||
'Class:Change/Attribute:supervisor_email' => '监督者',
|
||||
'Class:Change/Attribute:supervisor_email+' => '',
|
||||
'Class:Change/Attribute:manager_group_id' => '管理团队',
|
||||
'Class:Change/Attribute:manager_group_id+' => '',
|
||||
'Class:Change/Attribute:manager_group_name' => '管理团队',
|
||||
'Class:Change/Attribute:manager_group_name+' => '',
|
||||
'Class:Change/Attribute:manager_id' => '管理人',
|
||||
'Class:Change/Attribute:manager_id+' => '',
|
||||
'Class:Change/Attribute:manager_email' => '管理人',
|
||||
'Class:Change/Attribute:manager_email+' => '',
|
||||
'Class:Change/Attribute:outage' => '停歇',
|
||||
'Class:Change/Attribute:outage+' => '',
|
||||
'Class:Change/Attribute:outage/Value:yes' => '是',
|
||||
'Class:Change/Attribute:outage/Value:yes+' => '',
|
||||
'Class:Change/Attribute:outage/Value:no' => '否',
|
||||
'Class:Change/Attribute:outage/Value:no+' => '',
|
||||
'Class:Change/Attribute:change_request' => '申请',
|
||||
'Class:Change/Attribute:change_request+' => '',
|
||||
'Class:Change/Attribute:fallback' => '回退计划',
|
||||
'Class:Change/Attribute:fallback+' => '',
|
||||
'Class:Change/Stimulus:ev_validate' => '生效',
|
||||
'Class:Change/Stimulus:ev_validate+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => '拒绝',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => '指派',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => '重开',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => '计划',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => '批准',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_replan' => '重新计划',
|
||||
'Class:Change/Stimulus:ev_replan+' => '',
|
||||
'Class:Change/Stimulus:ev_notapprove' => '不批准',
|
||||
'Class:Change/Stimulus:ev_notapprove+' => '',
|
||||
'Class:Change/Stimulus:ev_implement' => '实施',
|
||||
'Class:Change/Stimulus:ev_implement+' => '',
|
||||
'Class:Change/Stimulus:ev_monitor' => '监控',
|
||||
'Class:Change/Stimulus:ev_monitor+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => '完成',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: RoutineChange
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:RoutineChange' => '例行变更',
|
||||
'Class:RoutineChange+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:new' => '新',
|
||||
'Class:RoutineChange/Attribute:status/Value:new+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned' => '已指派',
|
||||
'Class:RoutineChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled' => '已计划和安排',
|
||||
'Class:RoutineChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved' => '已批准',
|
||||
'Class:RoutineChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented' => '已实施',
|
||||
'Class:RoutineChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored' => '已监控',
|
||||
'Class:RoutineChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed' => '已关闭',
|
||||
'Class:RoutineChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_validate' => '生效',
|
||||
'Class:RoutineChange/Stimulus:ev_validate+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_assign' => '指派',
|
||||
'Class:RoutineChange/Stimulus:ev_assign+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen' => '重开',
|
||||
'Class:RoutineChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_plan' => '计划',
|
||||
'Class:RoutineChange/Stimulus:ev_plan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_replan' => '重新计划',
|
||||
'Class:RoutineChange/Stimulus:ev_replan+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_implement' => '实施',
|
||||
'Class:RoutineChange/Stimulus:ev_implement+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor' => '监控',
|
||||
'Class:RoutineChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:RoutineChange/Stimulus:ev_finish' => '完成',
|
||||
'Class:RoutineChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: ApprovedChange
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:ApprovedChange' => '批准的变更',
|
||||
'Class:ApprovedChange+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_date' => '批准日期',
|
||||
'Class:ApprovedChange/Attribute:approval_date+' => '',
|
||||
'Class:ApprovedChange/Attribute:approval_comment' => '批准说明',
|
||||
'Class:ApprovedChange/Attribute:approval_comment+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate' => '生效',
|
||||
'Class:ApprovedChange/Stimulus:ev_validate+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject' => '拒绝',
|
||||
'Class:ApprovedChange/Stimulus:ev_reject+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign' => '指派',
|
||||
'Class:ApprovedChange/Stimulus:ev_assign+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen' => '重开',
|
||||
'Class:ApprovedChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan' => '计划',
|
||||
'Class:ApprovedChange/Stimulus:ev_plan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve' => '批准',
|
||||
'Class:ApprovedChange/Stimulus:ev_approve+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan' => '重新计划',
|
||||
'Class:ApprovedChange/Stimulus:ev_replan+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove' => '拒绝批准',
|
||||
'Class:ApprovedChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement' => '实施',
|
||||
'Class:ApprovedChange/Stimulus:ev_implement+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor' => '监控',
|
||||
'Class:ApprovedChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish' => '完成',
|
||||
'Class:ApprovedChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
//
|
||||
// Class: NormalChange
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:NormalChange' => '正常变更',
|
||||
'Class:NormalChange+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:new' => '新',
|
||||
'Class:NormalChange/Attribute:status/Value:new+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:validated' => '已生效',
|
||||
'Class:NormalChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected' => '已拒绝',
|
||||
'Class:NormalChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned' => '已指派',
|
||||
'Class:NormalChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled' => '已计划和安排',
|
||||
'Class:NormalChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:approved' => '已批准',
|
||||
'Class:NormalChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved' => '不批准',
|
||||
'Class:NormalChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented' => '已实施',
|
||||
'Class:NormalChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored' => '已监控',
|
||||
'Class:NormalChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:NormalChange/Attribute:status/Value:closed' => '已关闭',
|
||||
'Class:NormalChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_date' => '接受日期',
|
||||
'Class:NormalChange/Attribute:acceptance_date+' => '',
|
||||
'Class:NormalChange/Attribute:acceptance_comment' => '接受说明',
|
||||
'Class:NormalChange/Attribute:acceptance_comment+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_validate' => '生效',
|
||||
'Class:NormalChange/Stimulus:ev_validate+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reject' => '拒绝',
|
||||
'Class:NormalChange/Stimulus:ev_reject+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_assign' => '指派',
|
||||
'Class:NormalChange/Stimulus:ev_assign+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_reopen' => '重开',
|
||||
'Class:NormalChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_plan' => '计划',
|
||||
'Class:NormalChange/Stimulus:ev_plan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_approve' => '批准',
|
||||
'Class:NormalChange/Stimulus:ev_approve+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_replan' => '重新计划',
|
||||
'Class:NormalChange/Stimulus:ev_replan+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove' => '拒绝批准',
|
||||
'Class:NormalChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_implement' => '实施',
|
||||
'Class:NormalChange/Stimulus:ev_implement+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_monitor' => '监控',
|
||||
'Class:NormalChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:NormalChange/Stimulus:ev_finish' => '完成',
|
||||
'Class:NormalChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
//
|
||||
// Class: EmergencyChange
|
||||
//
|
||||
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:EmergencyChange' => '紧急变更',
|
||||
'Class:EmergencyChange+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new' => '新',
|
||||
'Class:EmergencyChange/Attribute:status/Value:new+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated' => '已生效',
|
||||
'Class:EmergencyChange/Attribute:status/Value:validated+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected' => '已拒绝',
|
||||
'Class:EmergencyChange/Attribute:status/Value:rejected+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned' => '已指派',
|
||||
'Class:EmergencyChange/Attribute:status/Value:assigned+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled' => '已计划和安排',
|
||||
'Class:EmergencyChange/Attribute:status/Value:plannedscheduled+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved' => '已批准',
|
||||
'Class:EmergencyChange/Attribute:status/Value:approved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved' => '不批准',
|
||||
'Class:EmergencyChange/Attribute:status/Value:notapproved+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented' => '已实施',
|
||||
'Class:EmergencyChange/Attribute:status/Value:implemented+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored' => '已监控',
|
||||
'Class:EmergencyChange/Attribute:status/Value:monitored+' => '',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed' => '已关闭',
|
||||
'Class:EmergencyChange/Attribute:status/Value:closed+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate' => '生效',
|
||||
'Class:EmergencyChange/Stimulus:ev_validate+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject' => '拒绝',
|
||||
'Class:EmergencyChange/Stimulus:ev_reject+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign' => '指派',
|
||||
'Class:EmergencyChange/Stimulus:ev_assign+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen' => '重开',
|
||||
'Class:EmergencyChange/Stimulus:ev_reopen+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan' => '计划',
|
||||
'Class:EmergencyChange/Stimulus:ev_plan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve' => '批准',
|
||||
'Class:EmergencyChange/Stimulus:ev_approve+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan' => '重新计划',
|
||||
'Class:EmergencyChange/Stimulus:ev_replan+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove' => '拒绝批准',
|
||||
'Class:EmergencyChange/Stimulus:ev_notapprove+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement' => '实施',
|
||||
'Class:EmergencyChange/Stimulus:ev_implement+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor' => '监控',
|
||||
'Class:EmergencyChange/Stimulus:ev_monitor+' => '',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish' => '完成',
|
||||
'Class:EmergencyChange/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
?>
|
||||
804
datamodels/2.x/itop-change-mgmt/datamodel.itop-change-mgmt.xml
Executable file
@@ -0,0 +1,804 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<classes>
|
||||
<class id="Change" _delta="define">
|
||||
<parent>Ticket</parent>
|
||||
<properties>
|
||||
<comment><![CDATA[/**
|
||||
* Persistent classes for a CMDB
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/]]></comment>
|
||||
<category>bizmodel,searchable,changemgmt</category>
|
||||
<abstract>false</abstract>
|
||||
<key_type>autoincrement</key_type>
|
||||
<db_table>ticket_change</db_table>
|
||||
<db_key_field>id</db_key_field>
|
||||
<db_final_class_field></db_final_class_field>
|
||||
<naming>
|
||||
<format>%1$s</format>
|
||||
<attributes>
|
||||
<attribute id="ref"/>
|
||||
</attributes>
|
||||
</naming>
|
||||
<display_template></display_template>
|
||||
<icon>images/change.png</icon>
|
||||
<reconciliation>
|
||||
<attributes>
|
||||
<attribute id="ref"/>
|
||||
</attributes>
|
||||
</reconciliation>
|
||||
</properties>
|
||||
<fields>
|
||||
<field id="status" xsi:type="AttributeEnum">
|
||||
<values>
|
||||
<value>new</value>
|
||||
<value>assigned</value>
|
||||
<value>planned</value>
|
||||
<value>approved</value>
|
||||
<value>closed</value>
|
||||
<value>rejected</value>
|
||||
</values>
|
||||
<sql>status</sql>
|
||||
<default_value>new</default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="category" xsi:type="AttributeEnum">
|
||||
<values>
|
||||
<value>hardware</value>
|
||||
<value>software</value>
|
||||
<value>system</value>
|
||||
<value>network</value>
|
||||
<value>application</value>
|
||||
<value>other</value>
|
||||
</values>
|
||||
<sql>category</sql>
|
||||
<default_value>hardware</default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="reject_reason" xsi:type="AttributeText">
|
||||
<sql>reject_reason</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="changemanager_id" xsi:type="AttributeExternalKey">
|
||||
<sql>changemanager_id</sql>
|
||||
<target_class>Person</target_class>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
<on_target_delete>DEL_AUTO</on_target_delete>
|
||||
</field>
|
||||
<field id="changemanager_email" xsi:type="AttributeExternalField">
|
||||
<extkey_attcode>changemanager_id</extkey_attcode>
|
||||
<target_attcode>email</target_attcode>
|
||||
</field>
|
||||
<field id="parent_id" xsi:type="AttributeExternalKey">
|
||||
<filter><![CDATA[SELECT Change WHERE id != :this->id]]></filter>
|
||||
<sql>parent_id</sql>
|
||||
<target_class>Change</target_class>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
<on_target_delete>DEL_MANUAL</on_target_delete>
|
||||
<jointype></jointype>
|
||||
</field>
|
||||
<field id="parent_name" xsi:type="AttributeExternalField">
|
||||
<extkey_attcode>parent_id</extkey_attcode>
|
||||
<target_attcode>ref</target_attcode>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="creation_date" xsi:type="AttributeDateTime">
|
||||
<sql>creation_date</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="approval_date" xsi:type="AttributeDateTime">
|
||||
<sql>approval_date</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="fallback_plan" xsi:type="AttributeText">
|
||||
<sql>fallback_plan</sql>
|
||||
<default_value></default_value>
|
||||
<is_null_allowed>true</is_null_allowed>
|
||||
</field>
|
||||
<field id="related_request_list" xsi:type="AttributeLinkedSet">
|
||||
<linked_class>UserRequest</linked_class>
|
||||
<ext_key_to_me>parent_change_id</ext_key_to_me>
|
||||
<count_min>0</count_min>
|
||||
<count_max>0</count_max>
|
||||
</field>
|
||||
<field id="related_incident_list" xsi:type="AttributeLinkedSet">
|
||||
<linked_class>Incident</linked_class>
|
||||
<ext_key_to_me>parent_change_id</ext_key_to_me>
|
||||
<count_min>0</count_min>
|
||||
<count_max>0</count_max>
|
||||
</field>
|
||||
<field id="related_problems_list" xsi:type="AttributeLinkedSet">
|
||||
<linked_class>Problem</linked_class>
|
||||
<ext_key_to_me>related_change_id</ext_key_to_me>
|
||||
<count_min>0</count_min>
|
||||
<count_max>0</count_max>
|
||||
</field>
|
||||
<field id="child_changes_list" xsi:type="AttributeLinkedSet">
|
||||
<linked_class>Change</linked_class>
|
||||
<ext_key_to_me>parent_id</ext_key_to_me>
|
||||
<count_min>0</count_min>
|
||||
<count_max>0</count_max>
|
||||
</field>
|
||||
</fields>
|
||||
<lifecycle>
|
||||
<attribute>status</attribute>
|
||||
<stimuli>
|
||||
<stimulus id="ev_assign" xsi:type="StimulusUserAction"/>
|
||||
<stimulus id="ev_plan" xsi:type="StimulusUserAction"/>
|
||||
<stimulus id="ev_reject" xsi:type="StimulusUserAction"/>
|
||||
<stimulus id="ev_reopen" xsi:type="StimulusUserAction"/>
|
||||
<stimulus id="ev_approve" xsi:type="StimulusUserAction"/>
|
||||
<stimulus id="ev_finish" xsi:type="StimulusUserAction"/>
|
||||
</stimuli>
|
||||
<states>
|
||||
<state id="new">
|
||||
<flags>
|
||||
<attribute id="ref">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="org_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="title">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="description">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="last_update">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="close_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="reject_reason">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="creation_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="approval_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="caller_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="team_id">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="agent_id">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="changemanager_id">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
</flags>
|
||||
<transitions>
|
||||
<transition>
|
||||
<stimulus>ev_assign</stimulus>
|
||||
<target>assigned</target>
|
||||
<actions/>
|
||||
</transition>
|
||||
</transitions>
|
||||
</state>
|
||||
<state id="assigned">
|
||||
<flags>
|
||||
<attribute id="ref">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="org_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="team_id">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="agent_id">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="title">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="description">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="last_update">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="close_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="reject_reason">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="changemanager_id">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="creation_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="approval_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
</flags>
|
||||
<transitions>
|
||||
<transition>
|
||||
<stimulus>ev_plan</stimulus>
|
||||
<target>planned</target>
|
||||
<actions/>
|
||||
</transition>
|
||||
</transitions>
|
||||
</state>
|
||||
<state id="planned">
|
||||
<flags>
|
||||
<attribute id="ref">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="org_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="title">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="description">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="start_date">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="end_date">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="last_update">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="close_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="reject_reason">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="creation_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="approval_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="fallback_plan">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="caller_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="team_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="agent_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
<attribute id="changemanager_id">
|
||||
<mandatory/>
|
||||
</attribute>
|
||||
</flags>
|
||||
<transitions>
|
||||
<transition>
|
||||
<stimulus>ev_reject</stimulus>
|
||||
<target>rejected</target>
|
||||
<actions/>
|
||||
</transition>
|
||||
<transition>
|
||||
<stimulus>ev_approve</stimulus>
|
||||
<target>approved</target>
|
||||
<actions>
|
||||
<action>
|
||||
<verb>SetApprovalDate</verb>
|
||||
</action>
|
||||
</actions>
|
||||
</transition>
|
||||
</transitions>
|
||||
</state>
|
||||
<state id="rejected">
|
||||
<flags>
|
||||
<attribute id="ref">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="org_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="title">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="description">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="last_update">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="close_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="start_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="end_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="private_log">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="reject_reason">
|
||||
<mandatory/>
|
||||
<must_prompt/>
|
||||
</attribute>
|
||||
<attribute id="creation_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="approval_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="caller_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="team_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="agent_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="changemanager_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="private_log">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="fallback_plan">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="category">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="parent_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
</flags>
|
||||
<transitions>
|
||||
<transition>
|
||||
<stimulus>ev_reopen</stimulus>
|
||||
<target>assigned</target>
|
||||
<actions/>
|
||||
</transition>
|
||||
</transitions>
|
||||
</state>
|
||||
<state id="approved">
|
||||
<flags>
|
||||
<attribute id="ref">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="org_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="title">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="description">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="last_update">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="close_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="start_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="end_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="private_log">
|
||||
<normal/>
|
||||
</attribute>
|
||||
<attribute id="reject_reason">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="creation_date">
|
||||
<hidden/>
|
||||
</attribute>
|
||||
<attribute id="approval_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="caller_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="team_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="agent_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="changemanager_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="fallback_plan">
|
||||
<normal/>
|
||||
</attribute>
|
||||
<attribute id="category">
|
||||
<normal/>
|
||||
</attribute>
|
||||
<attribute id="parent_id">
|
||||
<normal/>
|
||||
</attribute>
|
||||
</flags>
|
||||
<transitions>
|
||||
<transition>
|
||||
<stimulus>ev_finish</stimulus>
|
||||
<target>closed</target>
|
||||
<actions>
|
||||
<action>
|
||||
<verb>SetClosureDate</verb>
|
||||
</action>
|
||||
</actions>
|
||||
</transition>
|
||||
</transitions>
|
||||
</state>
|
||||
<state id="closed">
|
||||
<flags>
|
||||
<attribute id="ref">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="org_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="title">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="description">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="last_update">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="close_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="start_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="end_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="reject_reason">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="creation_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="approval_date">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="caller_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="team_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="agent_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="changemanager_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="private_log">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="fallback_plan">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="category">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
<attribute id="parent_id">
|
||||
<read_only/>
|
||||
</attribute>
|
||||
</flags>
|
||||
<transitions/>
|
||||
</state>
|
||||
</states>
|
||||
</lifecycle>
|
||||
<methods>
|
||||
<method id="SetApprovalDate">
|
||||
<static>false</static>
|
||||
<access>public</access>
|
||||
<type>LifecycleAction</type>
|
||||
<code><![CDATA[ public function SetApprovalDate($sStimulusCode)
|
||||
{
|
||||
$this->Set('approval_date', time());
|
||||
return true;
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="SetClosureDate">
|
||||
<static>false</static>
|
||||
<access>public</access>
|
||||
<type>LifecycleAction</type>
|
||||
<code><![CDATA[ public function SetClosureDate($sStimulusCode)
|
||||
{
|
||||
$this->Set('close_date', time());
|
||||
return true;
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="OnInsert">
|
||||
<static>false</static>
|
||||
<access>protected</access>
|
||||
<type>Overload-DBObject</type>
|
||||
<code><![CDATA[ protected function OnInsert()
|
||||
{
|
||||
$oToNotify = $this->Get('contacts_list');
|
||||
$oToImpact = $this->Get('functionalcis_list');
|
||||
|
||||
$oImpactedInfras = DBObjectSet::FromLinkSet($this, 'functionalcis_list', 'functionalci_id');
|
||||
|
||||
$aComputed = $oImpactedInfras->GetRelatedObjects('impacts', 10);
|
||||
|
||||
if (isset($aComputed['FunctionalCI']) && is_array($aComputed['FunctionalCI']))
|
||||
{
|
||||
foreach($aComputed['FunctionalCI'] as $iKey => $oObject)
|
||||
{
|
||||
$oNewLink = new lnkFunctionalCIToTicket();
|
||||
$oNewLink->Set('functionalci_id', $iKey);
|
||||
$oToImpact->AddObject($oNewLink);
|
||||
}
|
||||
}
|
||||
if (isset($aComputed['Contact']) && is_array($aComputed['Contact']))
|
||||
{
|
||||
foreach($aComputed['Contact'] as $iKey => $oObject)
|
||||
{
|
||||
$oNewLink = new lnkContactToTicket();
|
||||
$oNewLink->Set('contact_id', $iKey);
|
||||
$oNewLink->Set('role', 'contact automatically computed');
|
||||
$oToNotify->AddObject($oNewLink);
|
||||
}
|
||||
}
|
||||
|
||||
$this->Set('creation_date', time());
|
||||
$this->Set('last_update', time());
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="OnUpdate">
|
||||
<static>false</static>
|
||||
<access>protected</access>
|
||||
<type>Overload-DBObject</type>
|
||||
<code><![CDATA[ protected function OnUpdate()
|
||||
{
|
||||
$this->Set('last_update', time());
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="ComputeValues">
|
||||
<static>false</static>
|
||||
<access>public</access>
|
||||
<type>Overload-DBObject</type>
|
||||
<code><![CDATA[ public function ComputeValues()
|
||||
{
|
||||
$sCurrRef = $this->Get('ref');
|
||||
if (strlen($sCurrRef) == 0)
|
||||
{
|
||||
$iKey = $this->GetKey();
|
||||
if ($iKey < 0)
|
||||
{
|
||||
// Object not yet in the Database
|
||||
$iKey = MetaModel::GetNextKey(get_class($this));
|
||||
}
|
||||
$sName = sprintf('C-%06d', $iKey);
|
||||
$this->Set('ref', $sName);
|
||||
}
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="GetIcon">
|
||||
<comment>/**
|
||||
* Get the icon representing this object
|
||||
* @param boolean $bImgTag If true the result is a full IMG tag (or an emtpy string if no icon is defined)
|
||||
* @return string Either the full IMG tag ($bImgTag == true) or just the path to the icon file
|
||||
*/</comment>
|
||||
<static>false</static>
|
||||
<access>public</access>
|
||||
<type>Overload-DBObject</type>
|
||||
<code><![CDATA[ public function GetIcon($bImgTag = true)
|
||||
{
|
||||
$sStatus = $this->Get('status');
|
||||
switch($this->GetState())
|
||||
{
|
||||
case 'approved':
|
||||
case 'implemented':
|
||||
case 'monitored':
|
||||
$sIcon = self::MakeIconFromName('change-approved.png');
|
||||
break;
|
||||
|
||||
case 'rejected':
|
||||
case 'notapproved':
|
||||
$sIcon = self::MakeIconFromName('change-rejected.png');
|
||||
break;
|
||||
|
||||
case 'closed':
|
||||
$sIcon = self::MakeIconFromName('change-closed.png');
|
||||
break;
|
||||
|
||||
default:
|
||||
$sIcon = MetaModel::GetClassIcon(get_class($this), $bImgTag);
|
||||
}
|
||||
return $sIcon;
|
||||
}]]></code>
|
||||
</method>
|
||||
<method id="MakeIconFromName">
|
||||
<static>true</static>
|
||||
<access>protected</access>
|
||||
<type>Overload-DBObject</type>
|
||||
<code><![CDATA[ protected static function MakeIconFromName($sIconName, $bImgTag = true)
|
||||
{
|
||||
$sIcon = '';
|
||||
if ($sIconName != '')
|
||||
{
|
||||
$sPath = '../modules/Sofaxis-change-mgmt/images/'.$sIconName;
|
||||
if ($bImgTag)
|
||||
{
|
||||
$sIcon = "<img src=\"$sPath\" style=\"vertical-align:middle;\"/>";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sIcon = $sPath;
|
||||
}
|
||||
}
|
||||
return $sIcon;
|
||||
}]]></code>
|
||||
</method>
|
||||
</methods>
|
||||
<presentation>
|
||||
<details>
|
||||
<items>
|
||||
<item>functionalcis_list</item>
|
||||
<item>contacts_list</item>
|
||||
<item>workorders_list</item>
|
||||
<item>related_request_list</item>
|
||||
<item>related_incident_list</item>
|
||||
<item>related_problems_list</item>
|
||||
<item>child_changes_list</item>
|
||||
<item id="col:col1">
|
||||
<items>
|
||||
<item id="fieldset:Ticket:baseinfo">
|
||||
<items>
|
||||
<item>ref</item>
|
||||
<item>org_id</item>
|
||||
<item>status</item>
|
||||
<item>title</item>
|
||||
<item>description</item>
|
||||
</items>
|
||||
</item>
|
||||
<item id="fieldset:Ticket:contact">
|
||||
<items>
|
||||
<item>caller_id</item>
|
||||
<item>team_id</item>
|
||||
<item>agent_id</item>
|
||||
<item>changemanager_id</item>
|
||||
</items>
|
||||
</item>
|
||||
</items>
|
||||
</item>
|
||||
<item id="col:col2">
|
||||
<items>
|
||||
<item id="fieldset:Ticket:resolution">
|
||||
<items>
|
||||
<item>category</item>
|
||||
<item>reject_reason</item>
|
||||
<item>fallback_plan</item>
|
||||
</items>
|
||||
</item>
|
||||
<item id="fieldset:Relations">
|
||||
<items>
|
||||
<item>parent_id</item>
|
||||
</items>
|
||||
</item>
|
||||
</items>
|
||||
</item>
|
||||
<item id="col:col3">
|
||||
<items>
|
||||
<item id="fieldset:Ticket:date">
|
||||
<items>
|
||||
<item>creation_date</item>
|
||||
<item>start_date</item>
|
||||
<item>end_date</item>
|
||||
<item>last_update</item>
|
||||
<item>approval_date</item>
|
||||
<item>close_date</item>
|
||||
</items>
|
||||
</item>
|
||||
</items>
|
||||
</item>
|
||||
</items>
|
||||
</details>
|
||||
<search>
|
||||
<items>
|
||||
<item>ref</item>
|
||||
<item>title</item>
|
||||
<item>org_id</item>
|
||||
<item>status</item>
|
||||
<item>start_date</item>
|
||||
<item>end_date</item>
|
||||
<item>creation_date</item>
|
||||
<item>last_update</item>
|
||||
<item>close_date</item>
|
||||
<item>team_id</item>
|
||||
<item>agent_id</item>
|
||||
<item>changemanager_id</item>
|
||||
</items>
|
||||
</search>
|
||||
<list>
|
||||
<items>
|
||||
<item>title</item>
|
||||
<item>org_id</item>
|
||||
<item>start_date</item>
|
||||
<item>end_date</item>
|
||||
<item>status</item>
|
||||
<item>category</item>
|
||||
<item>agent_id</item>
|
||||
</items>
|
||||
</list>
|
||||
</presentation>
|
||||
</class>
|
||||
</classes>
|
||||
<menus>
|
||||
<menu id="ChangeManagement" xsi:type="MenuGroup" _delta="define">
|
||||
<rank>50</rank>
|
||||
</menu>
|
||||
<menu id="Change:Overview" xsi:type="DashboardMenuNode" _delta="define">
|
||||
<rank>0</rank>
|
||||
<parent>ChangeManagement</parent>
|
||||
<definition_file>overview.xml</definition_file>
|
||||
</menu>
|
||||
<menu id="NewChange" xsi:type="NewObjectMenuNode" _delta="define">
|
||||
<rank>1</rank>
|
||||
<parent>ChangeManagement</parent>
|
||||
<class>Change</class>
|
||||
</menu>
|
||||
<menu id="SearchChanges" xsi:type="SearchMenuNode" _delta="define">
|
||||
<rank>2</rank>
|
||||
<parent>ChangeManagement</parent>
|
||||
<class>Change</class>
|
||||
</menu>
|
||||
<menu id="Change:Shortcuts" xsi:type="TemplateMenuNode" _delta="define">
|
||||
<rank>3</rank>
|
||||
<parent>ChangeManagement</parent>
|
||||
<template_file></template_file>
|
||||
</menu>
|
||||
<menu id="MyChanges" xsi:type="OQLMenuNode" _delta="define">
|
||||
<rank>1</rank>
|
||||
<parent>Change:Shortcuts</parent>
|
||||
<oql><![CDATA[SELECT Change WHERE agent_id = :current_contact_id AND status NOT IN ("closed")]]></oql>
|
||||
<do_search></do_search>
|
||||
<auto_reload>fast</auto_reload>
|
||||
</menu>
|
||||
<menu id="Changes" xsi:type="OQLMenuNode" _delta="define">
|
||||
<rank>2</rank>
|
||||
<parent>Change:Shortcuts</parent>
|
||||
<oql><![CDATA[SELECT Change WHERE status != "closed"]]></oql>
|
||||
<do_search>1</do_search>
|
||||
<auto_reload>fast</auto_reload>
|
||||
</menu>
|
||||
<menu id="WaitingApproval" xsi:type="OQLMenuNode" _delta="define">
|
||||
<rank>3</rank>
|
||||
<parent>Change:Shortcuts</parent>
|
||||
<oql><![CDATA[SELECT Change WHERE status IN ("planned")]]></oql>
|
||||
<do_search></do_search>
|
||||
<auto_reload>fast</auto_reload>
|
||||
</menu>
|
||||
</menus>
|
||||
</itop_design>
|
||||
134
datamodels/2.x/itop-change-mgmt/en.dict.itop-change-mgmt.php
Executable file
@@ -0,0 +1,134 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* Localized data
|
||||
*
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Menu:ChangeManagement' => 'Change management',
|
||||
'Menu:Change:Overview' => 'Overview',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'New Change',
|
||||
'Menu:NewChange+' => 'Create a new Change ticket',
|
||||
'Menu:SearchChanges' => 'Search for Changes',
|
||||
'Menu:SearchChanges+' => 'Search for Change tickets',
|
||||
'Menu:Change:Shortcuts' => 'Shortcuts',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingAcceptance' => 'Changes awaiting acceptance',
|
||||
'Menu:WaitingAcceptance+' => '',
|
||||
'Menu:WaitingApproval' => 'Changes awaiting approval',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Opened changes',
|
||||
'Menu:Changes+' => 'All Opened Changes',
|
||||
'Menu:MyChanges' => 'Changes assigned to me',
|
||||
'Menu:MyChanges+' => 'Changes assigned to me (as Agent)',
|
||||
'UI-ChangeManagementOverview-ChangeByCategory-last-7-days' => 'Changes by category for the last 7 days',
|
||||
'UI-ChangeManagementOverview-Last-7-days' => 'Number of changes for the last 7 days',
|
||||
'UI-ChangeManagementOverview-ChangeByDomain-last-7-days' => 'Changes by domain for the last 7 days',
|
||||
'UI-ChangeManagementOverview-ChangeByStatus-last-7-days' => 'Changes by status for the last 7 days',
|
||||
));
|
||||
|
||||
// Dictionnay conventions
|
||||
// Class:<class_name>
|
||||
// Class:<class_name>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>
|
||||
// Class:<class_name>/Attribute:<attribute_code>+
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
|
||||
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>
|
||||
// Class:<class_name>/Stimulus:<stimulus_code>+
|
||||
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:Change' => 'Change',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:status' => 'Status',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'New',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Assigned',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:planned' => 'Planned',
|
||||
'Class:Change/Attribute:status/Value:planned+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rejected',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Approved',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Closed',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:category' => 'Category',
|
||||
'Class:Change/Attribute:category+' => '',
|
||||
'Class:Change/Attribute:category/Value:application' => 'application',
|
||||
'Class:Change/Attribute:category/Value:application+' => 'application',
|
||||
'Class:Change/Attribute:category/Value:hardware' => 'hardware',
|
||||
'Class:Change/Attribute:category/Value:hardware+' => 'hardware',
|
||||
'Class:Change/Attribute:category/Value:network' => 'network',
|
||||
'Class:Change/Attribute:category/Value:network+' => 'network',
|
||||
'Class:Change/Attribute:category/Value:other' => 'other',
|
||||
'Class:Change/Attribute:category/Value:other+' => 'other',
|
||||
'Class:Change/Attribute:category/Value:software' => 'software',
|
||||
'Class:Change/Attribute:category/Value:software+' => 'software',
|
||||
'Class:Change/Attribute:category/Value:system' => 'system',
|
||||
'Class:Change/Attribute:category/Value:system+' => 'system',
|
||||
'Class:Change/Attribute:reject_reason' => 'Reject reason',
|
||||
'Class:Change/Attribute:reject_reason+' => '',
|
||||
'Class:Change/Attribute:changemanager_id' => 'Change manager',
|
||||
'Class:Change/Attribute:changemanager_id+' => '',
|
||||
'Class:Change/Attribute:changemanager_email' => 'Change manager email',
|
||||
'Class:Change/Attribute:changemanager_email+' => '',
|
||||
'Class:Change/Attribute:parent_id' => 'Parent change',
|
||||
'Class:Change/Attribute:parent_id+' => '',
|
||||
'Class:Change/Attribute:parent_name' => 'Parent change ref',
|
||||
'Class:Change/Attribute:parent_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Creation date',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:approval_date' => 'Approval date',
|
||||
'Class:Change/Attribute:approval_date+' => '',
|
||||
'Class:Change/Attribute:fallback_plan' => 'Fallback plan',
|
||||
'Class:Change/Attribute:fallback_plan+' => '',
|
||||
'Class:Change/Attribute:related_request_list' => 'Related requests',
|
||||
'Class:Change/Attribute:related_request_list+' => '',
|
||||
'Class:Change/Attribute:related_incident_list' => 'Related incidents',
|
||||
'Class:Change/Attribute:related_incident_list+' => '',
|
||||
'Class:Change/Attribute:child_changes_list' => 'Child changes',
|
||||
'Class:Change/Attribute:child_changes_list+' => '',
|
||||
'Class:Change/Attribute:parent_id_friendlyname' => 'Parent change friendly name',
|
||||
'Class:Change/Attribute:parent_id_friendlyname+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Assign',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Plan',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Reject',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Reopen',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Approve',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Close',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
?>
|
||||
124
datamodels/2.x/itop-change-mgmt/fr.dict.itop-change-mgmt.php
Executable file
@@ -0,0 +1,124 @@
|
||||
<?php
|
||||
// Copyright (C) 2010 Combodo SARL
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; version 3 of the License.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
/**
|
||||
* @author Erwan Taloc <erwan.taloc@combodo.com>
|
||||
* @author Romain Quetiez <romain.quetiez@combodo.com>
|
||||
* @author Denis Flaven <denis.flaven@combodo.com>
|
||||
* @licence http://www.opensource.org/licenses/gpl-3.0.html LGPL
|
||||
*/
|
||||
|
||||
//
|
||||
// Class: Change
|
||||
//
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:Change' => 'Ticket de changement',
|
||||
'Class:Change+' => '',
|
||||
'Class:Change/Attribute:status' => 'Etat',
|
||||
'Class:Change/Attribute:status+' => '',
|
||||
'Class:Change/Attribute:status/Value:new' => 'Nouveau',
|
||||
'Class:Change/Attribute:status/Value:new+' => '',
|
||||
'Class:Change/Attribute:status/Value:assigned' => 'Assigné',
|
||||
'Class:Change/Attribute:status/Value:assigned+' => '',
|
||||
'Class:Change/Attribute:status/Value:planned' => 'Planifié',
|
||||
'Class:Change/Attribute:status/Value:planned+' => '',
|
||||
'Class:Change/Attribute:status/Value:rejected' => 'Rejeté',
|
||||
'Class:Change/Attribute:status/Value:rejected+' => '',
|
||||
'Class:Change/Attribute:status/Value:approved' => 'Approuvé',
|
||||
'Class:Change/Attribute:status/Value:approved+' => '',
|
||||
'Class:Change/Attribute:status/Value:closed' => 'Fermé',
|
||||
'Class:Change/Attribute:status/Value:closed+' => '',
|
||||
'Class:Change/Attribute:category' => 'Categorie',
|
||||
'Class:Change/Attribute:category+' => '',
|
||||
'Class:Change/Attribute:category/Value:application' => 'application',
|
||||
'Class:Change/Attribute:category/Value:application+' => 'application',
|
||||
'Class:Change/Attribute:category/Value:hardware' => 'Matériel',
|
||||
'Class:Change/Attribute:category/Value:hardware+' => 'Matériel',
|
||||
'Class:Change/Attribute:category/Value:network' => 'Réseau',
|
||||
'Class:Change/Attribute:category/Value:network+' => 'Réseau',
|
||||
'Class:Change/Attribute:category/Value:other' => 'Autre',
|
||||
'Class:Change/Attribute:category/Value:other+' => 'Autre',
|
||||
'Class:Change/Attribute:category/Value:software' => 'Logiciel',
|
||||
'Class:Change/Attribute:category/Value:software+' => 'Logiciel',
|
||||
'Class:Change/Attribute:category/Value:system' => 'système',
|
||||
'Class:Change/Attribute:category/Value:system+' => 'système',
|
||||
'Class:Change/Attribute:reject_reason' => 'Raison du rejet',
|
||||
'Class:Change/Attribute:reject_reason+' => '',
|
||||
'Class:Change/Attribute:changemanager_id' => 'Responsable du changement',
|
||||
'Class:Change/Attribute:changemanager_id+' => '',
|
||||
'Class:Change/Attribute:changemanager_email' => 'Email Responsable du changement',
|
||||
'Class:Change/Attribute:changemanager_email+' => '',
|
||||
'Class:Change/Attribute:parent_id' => 'Changement parent',
|
||||
'Class:Change/Attribute:parent_id+' => '',
|
||||
'Class:Change/Attribute:parent_name' => 'Référence changement parent',
|
||||
'Class:Change/Attribute:parent_name+' => '',
|
||||
'Class:Change/Attribute:creation_date' => 'Date de création',
|
||||
'Class:Change/Attribute:creation_date+' => '',
|
||||
'Class:Change/Attribute:approval_date' => 'Date d\'approbation',
|
||||
'Class:Change/Attribute:approval_date+' => '',
|
||||
'Class:Change/Attribute:fallback_plan' => 'Plan de secours',
|
||||
'Class:Change/Attribute:fallback_plan+' => '',
|
||||
'Class:Change/Attribute:related_request_list' => 'Requêtes liées',
|
||||
'Class:Change/Attribute:related_request_list+' => '',
|
||||
'Class:Change/Attribute:related_incident_list' => 'Incidents liés',
|
||||
'Class:Change/Attribute:related_incident_list+' => '',
|
||||
'Class:Change/Attribute:child_changes_list' => 'Changements fils',
|
||||
'Class:Change/Attribute:child_changes_list+' => '',
|
||||
'Class:Change/Attribute:parent_id_friendlyname' => 'Nom usuel du changement parent',
|
||||
'Class:Change/Attribute:parent_id_friendlyname+' => '',
|
||||
'Class:Change/Stimulus:ev_assign' => 'Assigner',
|
||||
'Class:Change/Stimulus:ev_assign+' => '',
|
||||
'Class:Change/Stimulus:ev_plan' => 'Planifier',
|
||||
'Class:Change/Stimulus:ev_plan+' => '',
|
||||
'Class:Change/Stimulus:ev_reject' => 'Rejeter',
|
||||
'Class:Change/Stimulus:ev_reject+' => '',
|
||||
'Class:Change/Stimulus:ev_reopen' => 'Réouvrir',
|
||||
'Class:Change/Stimulus:ev_reopen+' => '',
|
||||
'Class:Change/Stimulus:ev_approve' => 'Approuver',
|
||||
'Class:Change/Stimulus:ev_approve+' => '',
|
||||
'Class:Change/Stimulus:ev_finish' => 'Fermer',
|
||||
'Class:Change/Stimulus:ev_finish+' => '',
|
||||
));
|
||||
|
||||
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
|
||||
'Menu:ChangeManagement' => 'Gestion des changements',
|
||||
'Menu:Change:Overview' => 'Vue d\'ensemble',
|
||||
'Menu:Change:Overview+' => '',
|
||||
'Menu:NewChange' => 'Nouveau changement',
|
||||
'Menu:NewChange+' => 'Créer un nouveau ticket de changement',
|
||||
'Menu:SearchChanges' => 'Rechercher des changements',
|
||||
'Menu:SearchChanges+' => 'Rechercher parmi les tickets de changement',
|
||||
'Menu:Change:Shortcuts' => 'Raccourcis',
|
||||
'Menu:Change:Shortcuts+' => '',
|
||||
'Menu:WaitingApproval' => 'Changement en attente d\'approbation',
|
||||
'Menu:WaitingApproval+' => '',
|
||||
'Menu:Changes' => 'Changements ouverts',
|
||||
'Menu:Changes+' => 'Tickets de changement ouverts',
|
||||
'Menu:MyChanges' => 'Mes tickets de changement',
|
||||
'Menu:MyChanges+' => 'Tickets de changement qui me sont assignés',
|
||||
'UI-ChangeManagementOverview-ChangeByCategory-last-7-days' => 'Changements par catégorie',
|
||||
'UI-ChangeManagementOverview-Last-7-days' => 'Changements par jour',
|
||||
'UI-ChangeManagementOverview-ChangeByDomain-last-7-days' => 'Changements par domaine',
|
||||
'UI-ChangeManagementOverview-ChangeByStatus-last-7-days' => 'Changements par statut',
|
||||
'UI:ChangeMgmtMenuOverview:Title' => 'Tableau de bord des changements pour les 7 derniers jours',
|
||||
|
||||
|
||||
|
||||
));
|
||||
?>
|
||||
BIN
datamodels/2.x/itop-change-mgmt/images/change-approved.png
Executable file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
datamodels/2.x/itop-change-mgmt/images/change-closed.png
Executable file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
datamodels/2.x/itop-change-mgmt/images/change-rejected.png
Executable file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
datamodels/2.x/itop-change-mgmt/images/change.png
Executable file
|
After Width: | Height: | Size: 2.4 KiB |
95
datamodels/2.x/itop-change-mgmt/module.itop-change-mgmt.php
Executable file
@@ -0,0 +1,95 @@
|
||||
<?php
|
||||
|
||||
|
||||
SetupWebPage::AddModule(
|
||||
__FILE__, // Path to the current file, all other file names are relative to the directory containing this file
|
||||
'itop-change-mgmt/2.0.0',
|
||||
array(
|
||||
// Identification
|
||||
//
|
||||
'label' => 'Change Management',
|
||||
'category' => 'business',
|
||||
|
||||
// Setup
|
||||
//
|
||||
'dependencies' => array(
|
||||
'itop-config-mgmt/2.0.0',
|
||||
'itop-tickets/2.0.0',
|
||||
),
|
||||
'mandatory' => false,
|
||||
'visible' => true,
|
||||
'installer' => 'ChangeManagementInstaller',
|
||||
|
||||
// Components
|
||||
//
|
||||
'datamodel' => array(
|
||||
'model.itop-change-mgmt.php',
|
||||
),
|
||||
'data.struct' => array(
|
||||
//'data.struct.itop-change-mgmt.xml',
|
||||
),
|
||||
'data.sample' => array(
|
||||
//'data.sample.itop-change-mgmt.xml',
|
||||
),
|
||||
|
||||
// Documentation
|
||||
//
|
||||
'doc.manual_setup' => '',
|
||||
'doc.more_information' => '/doc/itop-documentation.htm#ChangeMgmt',
|
||||
|
||||
// Default settings
|
||||
//
|
||||
'settings' => array(
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
// Module installation handler
|
||||
//
|
||||
class ChangeManagementInstaller extends ModuleInstallerAPI
|
||||
{
|
||||
public static function BeforeWritingConfig(Config $oConfiguration)
|
||||
{
|
||||
// If you want to override/force some configuration values, do it here
|
||||
return $oConfiguration;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handler called before creating or upgrading the database schema
|
||||
* @param $oConfiguration Config The new configuration of the application
|
||||
* @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install)
|
||||
* @param $sCurrentVersion string Current version number of the module
|
||||
*/
|
||||
public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion)
|
||||
{
|
||||
// If you want to migrate data from one format to another, do it here
|
||||
}
|
||||
|
||||
/**
|
||||
* Handler called after the creation/update of the database schema
|
||||
* @param $oConfiguration Config The new configuration of the application
|
||||
* @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install)
|
||||
* @param $sCurrentVersion string Current version number of the module
|
||||
*/
|
||||
public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion)
|
||||
{
|
||||
// Bug #464 - start_date was both in Ticket and Change tables
|
||||
//
|
||||
$sSourceTable = 'change';
|
||||
$sSourceKeyField = 'id';
|
||||
|
||||
$sTargetTable = 'ticket';
|
||||
$sTargetKeyField = 'id';
|
||||
|
||||
$sField = 'start_date';
|
||||
|
||||
if (CMDBSource::IsField($sSourceTable, $sField) && CMDBSource::IsField($sTargetTable, $sField) && CMDBSource::IsField($sSourceTable, $sSourceKeyField) && CMDBSource::IsField($sTargetTable, $sTargetKeyField))
|
||||
{
|
||||
SetupWebPage::log_info("Issue #464 - Copying change/start_date into ticket/start_date");
|
||||
$sRepair = "UPDATE `$sTargetTable`, `$sSourceTable` SET `$sTargetTable`.`$sField` = `$sSourceTable`.`$sField` WHERE `$sTargetTable`.`$sField` IS NULL AND`$sTargetTable`.`$sTargetKeyField` = `$sSourceTable`.`$sSourceKeyField`";
|
||||
CMDBSource::Query($sRepair);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
39
datamodels/2.x/itop-change-mgmt/overview.xml
Executable file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0"?>
|
||||
<dashboard xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<layout>DashboardLayoutTwoCols</layout>
|
||||
<title>UI:ChangeMgmtMenuOverview:Title</title>
|
||||
<cells>
|
||||
<cell>
|
||||
<dashlet id="1" xsi:type="DashletGroupByTable">
|
||||
<title>UI-ChangeManagementOverview-ChangeByCategory-last-7-days</title>
|
||||
<query>SELECT Change WHERE start_date > DATE_SUB(NOW(), INTERVAL 7 DAY)</query>
|
||||
<group_by>category</group_by>
|
||||
<style>table</style>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="2" xsi:type="DashletGroupByBars">
|
||||
<title>UI-ChangeManagementOverview-Last-7-days</title>
|
||||
<query>SELECT Change WHERE start_date > DATE_SUB(NOW(), INTERVAL 7 DAY)</query>
|
||||
<group_by>start_date:day_of_month</group_by>
|
||||
<style>bars</style>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="3" xsi:type="DashletGroupByTable">
|
||||
<title>UI-ChangeManagementOverview-ChangeByDomain-last-7-days</title>
|
||||
<query>SELECT Change WHERE start_date > DATE_SUB(NOW(), INTERVAL 7 DAY)</query>
|
||||
<group_by>finalclass</group_by>
|
||||
<style>table</style>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="4" xsi:type="DashletGroupByTable">
|
||||
<title>UI-ChangeManagementOverview-ChangeByStatus-last-7-days</title>
|
||||
<query>SELECT Change WHERE start_date > DATE_SUB(NOW(), INTERVAL 7 DAY)</query>
|
||||
<group_by>status</group_by>
|
||||
<style>table</style>
|
||||
</dashlet>
|
||||
</cell>
|
||||
</cells>
|
||||
</dashboard>
|
||||
140
datamodels/2.x/itop-config-mgmt/cis_menu.xml
Executable file
@@ -0,0 +1,140 @@
|
||||
<?xml version="1.0"?>
|
||||
<dashboard xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<layout>DashboardLayoutOneCol</layout>
|
||||
<title></title>
|
||||
<cells>
|
||||
<cell>
|
||||
<dashlet id="1" xsi:type="DashletHeaderStatic">
|
||||
<title>Menu:ConfigManagement:AllDevices</title>
|
||||
<icon>itop-config-mgmt/images/server.png</icon>
|
||||
<subtitle>Menu_ConfigManagement_AllDevices</subtitle>
|
||||
</dashlet>
|
||||
<dashlet id="2" xsi:type="DashletBadge">
|
||||
<class>Rack</class>
|
||||
</dashlet>
|
||||
<dashlet id="3" xsi:type="DashletBadge">
|
||||
<class>Enclosure</class>
|
||||
</dashlet>
|
||||
<dashlet id="4" xsi:type="DashletBadge">
|
||||
<class>Server</class>
|
||||
</dashlet>
|
||||
<dashlet id="5" xsi:type="DashletBadge">
|
||||
<class>NetworkDevice</class>
|
||||
</dashlet>
|
||||
<dashlet id="6" xsi:type="DashletBadge">
|
||||
<class>StorageSystem</class>
|
||||
</dashlet>
|
||||
<dashlet id="7" xsi:type="DashletBadge">
|
||||
<class>SANSwitch</class>
|
||||
</dashlet>
|
||||
<dashlet id="8" xsi:type="DashletBadge">
|
||||
<class>NAS</class>
|
||||
</dashlet>
|
||||
<dashlet id="9" xsi:type="DashletBadge">
|
||||
<class>TapeLibrary</class>
|
||||
</dashlet>
|
||||
<dashlet id="10" xsi:type="DashletBadge">
|
||||
<class>ElectricalConnection</class>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="11" xsi:type="DashletHeaderStatic">
|
||||
<title>Menu:ConfigManagement:virtualization</title>
|
||||
<icon>itop-config-mgmt/images/application.png</icon>
|
||||
</dashlet>
|
||||
<dashlet id="12" xsi:type="DashletBadge">
|
||||
<class>Farm</class>
|
||||
</dashlet>
|
||||
<dashlet id="13" xsi:type="DashletBadge">
|
||||
<class>Hypervisor</class>
|
||||
</dashlet>
|
||||
<dashlet id="14" xsi:type="DashletBadge">
|
||||
<class>VirtualMachine</class>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="15" xsi:type="DashletHeaderStatic">
|
||||
<title>Menu:ConfigManagement:EndUsers</title>
|
||||
<icon>itop-config-mgmt/images/team.png</icon>
|
||||
</dashlet>
|
||||
<dashlet id="16" xsi:type="DashletBadge">
|
||||
<class>PC</class>
|
||||
</dashlet>
|
||||
<dashlet id="17" xsi:type="DashletBadge">
|
||||
<class>Phone</class>
|
||||
</dashlet>
|
||||
<dashlet id="18" xsi:type="DashletBadge">
|
||||
<class>IpPhone</class>
|
||||
</dashlet>
|
||||
<dashlet id="19" xsi:type="DashletBadge">
|
||||
<class>MobilePhone</class>
|
||||
</dashlet>
|
||||
<dashlet id="20" xsi:type="DashletBadge">
|
||||
<class>Tablet</class>
|
||||
</dashlet>
|
||||
<dashlet id="21" xsi:type="DashletBadge">
|
||||
<class>Printer</class>
|
||||
</dashlet>
|
||||
<dashlet id="22" xsi:type="DashletBadge">
|
||||
<class>Peripheral</class>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="23" xsi:type="DashletHeaderStatic">
|
||||
<title>Menu:ConfigManagement:SWAndApps</title>
|
||||
<icon>itop-config-mgmt/images/application.png</icon>
|
||||
</dashlet>
|
||||
<dashlet id="24" xsi:type="DashletBadge">
|
||||
<class>Middleware</class>
|
||||
</dashlet>
|
||||
<dashlet id="25" xsi:type="DashletBadge">
|
||||
<class>DBserver</class>
|
||||
</dashlet>
|
||||
<dashlet id="26" xsi:type="DashletBadge">
|
||||
<class>Webserver</class>
|
||||
</dashlet>
|
||||
<dashlet id="27" xsi:type="DashletBadge">
|
||||
<class>OtherSoftware</class>
|
||||
</dashlet>
|
||||
<dashlet id="29" xsi:type="DashletBadge">
|
||||
<class>MiddlewareInstance</class>
|
||||
</dashlet>
|
||||
<dashlet id="30" xsi:type="DashletBadge">
|
||||
<class>DatabaseSchema</class>
|
||||
</dashlet>
|
||||
<dashlet id="31" xsi:type="DashletBadge">
|
||||
<class>WebApplication</class>
|
||||
</dashlet>
|
||||
<dashlet id="32" xsi:type="DashletBadge">
|
||||
<class>Patch</class>
|
||||
</dashlet>
|
||||
<dashlet id="33" xsi:type="DashletBadge">
|
||||
<class>Licence</class>
|
||||
</dashlet>
|
||||
</cell>
|
||||
<cell>
|
||||
<dashlet id="34" xsi:type="DashletHeaderStatic">
|
||||
<title>Menu:ConfigManagement:Misc</title>
|
||||
<icon>itop-config-mgmt/images/subnet.png</icon>
|
||||
</dashlet>
|
||||
<dashlet id="35" xsi:type="DashletBadge">
|
||||
<class>NetworkInterface</class>
|
||||
</dashlet>
|
||||
<dashlet id="36" xsi:type="DashletBadge">
|
||||
<class>Subnet</class>
|
||||
</dashlet>
|
||||
<dashlet id="37" xsi:type="DashletBadge">
|
||||
<class>LogicalVolume</class>
|
||||
</dashlet>
|
||||
<dashlet id="38" xsi:type="DashletBadge">
|
||||
<class>BusinessProcess</class>
|
||||
</dashlet>
|
||||
<dashlet id="39" xsi:type="DashletBadge">
|
||||
<class>ApplicationSolution</class>
|
||||
</dashlet>
|
||||
<dashlet id="40" xsi:type="DashletBadge">
|
||||
<class>Group</class>
|
||||
</dashlet>
|
||||
</cell>
|
||||
</cells>
|
||||
</dashboard>
|
||||
24
datamodels/2.x/itop-config-mgmt/contacts_menu.xml
Executable file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0"?>
|
||||
<dashboard xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<layout>DashboardLayoutOneCol</layout>
|
||||
<title></title>
|
||||
<cells>
|
||||
<cell>
|
||||
<dashlet id="1" xsi:type="DashletHeaderDynamic">
|
||||
<title>Menu:Contact</title>
|
||||
<icon>itop-config-mgmt/images/team.png</icon>
|
||||
<subtitle>Menu:Contact:Count</subtitle>
|
||||
<query>SELECT Contact</query>
|
||||
<group_by>status</group_by>
|
||||
<values>active,inactive</values>
|
||||
</dashlet>
|
||||
<dashlet id="2" xsi:type="DashletBadge">
|
||||
<class>Team</class>
|
||||
</dashlet>
|
||||
<dashlet id="3" xsi:type="DashletBadge">
|
||||
<class>Person</class>
|
||||
</dashlet>
|
||||
</cell>
|
||||
</cells>
|
||||
</dashboard>
|
||||
|
||||
35
datamodels/2.x/itop-config-mgmt/data.sample.applications.xml
Executable file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<ApplicationSolution alias="ApplicationSolution" id="27">
|
||||
<name>CRM</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>high</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>active</status>
|
||||
</ApplicationSolution>
|
||||
<ApplicationSolution alias="ApplicationSolution" id="28">
|
||||
<name>ERP</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>active</status>
|
||||
</ApplicationSolution>
|
||||
<ApplicationSolution alias="ApplicationSolution" id="29">
|
||||
<name>itop</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>active</status>
|
||||
</ApplicationSolution>
|
||||
<ApplicationSolution alias="ApplicationSolution" id="30">
|
||||
<name>Sales web site</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>high</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>active</status>
|
||||
</ApplicationSolution>
|
||||
</Set>
|
||||
39
datamodels/2.x/itop-config-mgmt/data.sample.applicationsolutionci.xml
Executable file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="4">
|
||||
<applicationsolution_id>27</applicationsolution_id>
|
||||
<functionalci_id>21</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="3">
|
||||
<applicationsolution_id>27</applicationsolution_id>
|
||||
<functionalci_id>26</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="6">
|
||||
<applicationsolution_id>28</applicationsolution_id>
|
||||
<functionalci_id>20</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="5">
|
||||
<applicationsolution_id>28</applicationsolution_id>
|
||||
<functionalci_id>25</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="1">
|
||||
<applicationsolution_id>29</applicationsolution_id>
|
||||
<functionalci_id>19</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="2">
|
||||
<applicationsolution_id>29</applicationsolution_id>
|
||||
<functionalci_id>22</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="9">
|
||||
<applicationsolution_id>30</applicationsolution_id>
|
||||
<functionalci_id>24</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="7">
|
||||
<applicationsolution_id>30</applicationsolution_id>
|
||||
<functionalci_id>27</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
<lnkApplicationSolutionToFunctionalCI alias="lnkApplicationSolutionToFunctionalCI" id="8">
|
||||
<applicationsolution_id>30</applicationsolution_id>
|
||||
<functionalci_id>28</functionalci_id>
|
||||
</lnkApplicationSolutionToFunctionalCI>
|
||||
</Set>
|
||||
9
datamodels/2.x/itop-config-mgmt/data.sample.brand.xml
Executable file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<Brand alias="Brand" id="10">
|
||||
<name>Cisco</name>
|
||||
</Brand>
|
||||
<Brand alias="Brand" id="1">
|
||||
<name>HP</name>
|
||||
</Brand>
|
||||
</Set>
|
||||
39
datamodels/2.x/itop-config-mgmt/data.sample.contactteam.xml
Executable file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="8">
|
||||
<team_id>16</team_id>
|
||||
<person_id>10</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="7">
|
||||
<team_id>16</team_id>
|
||||
<person_id>15</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="9">
|
||||
<team_id>17</team_id>
|
||||
<person_id>10</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="10">
|
||||
<team_id>17</team_id>
|
||||
<person_id>14</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="11">
|
||||
<team_id>17</team_id>
|
||||
<person_id>8</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="4">
|
||||
<team_id>4</team_id>
|
||||
<person_id>11</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="3">
|
||||
<team_id>4</team_id>
|
||||
<person_id>13</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="5">
|
||||
<team_id>5</team_id>
|
||||
<person_id>12</person_id>
|
||||
</lnkPersonToTeam>
|
||||
<lnkPersonToTeam alias="lnkPersonToTeam" id="6">
|
||||
<team_id>5</team_id>
|
||||
<person_id>9</person_id>
|
||||
</lnkPersonToTeam>
|
||||
</Set>
|
||||
21
datamodels/2.x/itop-config-mgmt/data.sample.contacttype.xml
Executable file
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<ContactType alias="ContactType" id="17">
|
||||
<name>Customer manager</name>
|
||||
</ContactType>
|
||||
<ContactType alias="ContactType" id="12">
|
||||
<name>Helpdesk</name>
|
||||
</ContactType>
|
||||
<ContactType alias="ContactType" id="15">
|
||||
<name>Manager</name>
|
||||
</ContactType>
|
||||
<ContactType alias="ContactType" id="14">
|
||||
<name>Support Agent</name>
|
||||
</ContactType>
|
||||
<ContactType alias="ContactType" id="13">
|
||||
<name>Support level1</name>
|
||||
</ContactType>
|
||||
<ContactType alias="ContactType" id="16">
|
||||
<name>Team leader</name>
|
||||
</ContactType>
|
||||
</Set>
|
||||
27
datamodels/2.x/itop-config-mgmt/data.sample.dbschema.xml
Executable file
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<DatabaseSchema alias="DatabaseSchema" id="19">
|
||||
<name>itop-demo</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<dbserver_id>16</dbserver_id>
|
||||
</DatabaseSchema>
|
||||
<DatabaseSchema alias="DatabaseSchema" id="20">
|
||||
<name>openerpprod</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<dbserver_id>17</dbserver_id>
|
||||
</DatabaseSchema>
|
||||
<DatabaseSchema alias="DatabaseSchema" id="21">
|
||||
<name>sugarcrmprod</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<dbserver_id>18</dbserver_id>
|
||||
</DatabaseSchema>
|
||||
</Set>
|
||||
39
datamodels/2.x/itop-config-mgmt/data.sample.dbserver.xml
Executable file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<DBserver alias="DBserver" id="16">
|
||||
<name>MySQL</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<system_id>13</system_id>
|
||||
<software_id>1</software_id>
|
||||
<softwarelicence_id>0</softwarelicence_id>
|
||||
<path></path>
|
||||
<status></status>
|
||||
</DBserver>
|
||||
<DBserver alias="DBserver" id="17">
|
||||
<name>Oracle</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<system_id>3</system_id>
|
||||
<software_id>2</software_id>
|
||||
<softwarelicence_id>0</softwarelicence_id>
|
||||
<path></path>
|
||||
<status></status>
|
||||
</DBserver>
|
||||
<DBserver alias="DBserver" id="18">
|
||||
<name>Oracle</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<system_id>14</system_id>
|
||||
<software_id>2</software_id>
|
||||
<softwarelicence_id>0</softwarelicence_id>
|
||||
<path></path>
|
||||
<status></status>
|
||||
</DBserver>
|
||||
</Set>
|
||||
19
datamodels/2.x/itop-config-mgmt/data.sample.farm.xml
Executable file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<Farm alias="Farm" id="7">
|
||||
<name>Cluster1</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>production</status>
|
||||
</Farm>
|
||||
<Farm alias="Farm" id="8">
|
||||
<name>Cluster2</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>medium</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>production</status>
|
||||
</Farm>
|
||||
</Set>
|
||||
33
datamodels/2.x/itop-config-mgmt/data.sample.hypervisor.xml
Executable file
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<Hypervisor alias="Hypervisor" id="9">
|
||||
<name>ESX1</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>production</status>
|
||||
<farm_id>7</farm_id>
|
||||
<server_id>2</server_id>
|
||||
</Hypervisor>
|
||||
<Hypervisor alias="Hypervisor" id="10">
|
||||
<name>ESX2</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>production</status>
|
||||
<farm_id>7</farm_id>
|
||||
<server_id>4</server_id>
|
||||
</Hypervisor>
|
||||
<Hypervisor alias="Hypervisor" id="11">
|
||||
<name>ESX3</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<status>production</status>
|
||||
<farm_id>8</farm_id>
|
||||
<server_id>0</server_id>
|
||||
</Hypervisor>
|
||||
</Set>
|
||||
30
datamodels/2.x/itop-config-mgmt/data.sample.locations.xml
Executable file
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<Location alias="Location" id="1">
|
||||
<name>Bordeaux</name>
|
||||
<status>active</status>
|
||||
<org_id>2</org_id>
|
||||
<address></address>
|
||||
<postal_code></postal_code>
|
||||
<city></city>
|
||||
<country></country>
|
||||
</Location>
|
||||
<Location alias="Location" id="2">
|
||||
<name>Grenoble</name>
|
||||
<status>active</status>
|
||||
<org_id>2</org_id>
|
||||
<address>24, rue Lamartine</address>
|
||||
<postal_code>38320</postal_code>
|
||||
<city>Eybens</city>
|
||||
<country>France</country>
|
||||
</Location>
|
||||
<Location alias="Location" id="3">
|
||||
<name>Paris</name>
|
||||
<status>active</status>
|
||||
<org_id>2</org_id>
|
||||
<address>5, rue du Sentier</address>
|
||||
<postal_code>75002</postal_code>
|
||||
<city>Paris</city>
|
||||
<country>France</country>
|
||||
</Location>
|
||||
</Set>
|
||||
18
datamodels/2.x/itop-config-mgmt/data.sample.model.xml
Executable file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<Model alias="Model" id="11">
|
||||
<name>Cisco 6500</name>
|
||||
<brand_id>10</brand_id>
|
||||
<Type>NetworkDevice</Type>
|
||||
</Model>
|
||||
<Model alias="Model" id="4">
|
||||
<name>DL380</name>
|
||||
<brand_id>1</brand_id>
|
||||
<Type>Server</Type>
|
||||
</Model>
|
||||
<Model alias="Model" id="5">
|
||||
<name>Procurve 2450</name>
|
||||
<brand_id>1</brand_id>
|
||||
<Type>NetworkDevice</Type>
|
||||
</Model>
|
||||
</Set>
|
||||
9
datamodels/2.x/itop-config-mgmt/data.sample.networkdevicetype.xml
Executable file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<NetworkDeviceType alias="NetworkDeviceType" id="10">
|
||||
<name>Router</name>
|
||||
</NetworkDeviceType>
|
||||
<NetworkDeviceType alias="NetworkDeviceType" id="11">
|
||||
<name>Switch</name>
|
||||
</NetworkDeviceType>
|
||||
</Set>
|
||||
51
datamodels/2.x/itop-config-mgmt/data.sample.nw-devices.xml
Executable file
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Set>
|
||||
<NetworkDevice alias="NetworkDevice" id="5">
|
||||
<name>Router1</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<serialnumber></serialnumber>
|
||||
<location_id>1</location_id>
|
||||
<status>production</status>
|
||||
<brand_id>10</brand_id>
|
||||
<model_id>0</model_id>
|
||||
<asset_number></asset_number>
|
||||
<purchase_date></purchase_date>
|
||||
<end_of_warranty></end_of_warranty>
|
||||
<rack_id>0</rack_id>
|
||||
<enclosure_id>0</enclosure_id>
|
||||
<nb_u></nb_u>
|
||||
<managementip></managementip>
|
||||
<powerA_id>0</powerA_id>
|
||||
<powerB_id>0</powerB_id>
|
||||
<networkdevicetype_id>10</networkdevicetype_id>
|
||||
<iosversion_id>0</iosversion_id>
|
||||
<ram></ram>
|
||||
</NetworkDevice>
|
||||
<NetworkDevice alias="NetworkDevice" id="6">
|
||||
<name>Switch1</name>
|
||||
<description></description>
|
||||
<org_id>2</org_id>
|
||||
<business_criticity>low</business_criticity>
|
||||
<move2production></move2production>
|
||||
<serialnumber></serialnumber>
|
||||
<location_id>2</location_id>
|
||||
<status>production</status>
|
||||
<brand_id>1</brand_id>
|
||||
<model_id>5</model_id>
|
||||
<asset_number></asset_number>
|
||||
<purchase_date></purchase_date>
|
||||
<end_of_warranty></end_of_warranty>
|
||||
<rack_id>0</rack_id>
|
||||
<enclosure_id>0</enclosure_id>
|
||||
<nb_u></nb_u>
|
||||
<managementip></managementip>
|
||||
<powerA_id>0</powerA_id>
|
||||
<powerB_id>0</powerB_id>
|
||||
<networkdevicetype_id>11</networkdevicetype_id>
|
||||
<iosversion_id>0</iosversion_id>
|
||||
<ram></ram>
|
||||
</NetworkDevice>
|
||||
</Set>
|
||||