mirror of
https://github.com/Combodo/iTop.git
synced 2026-03-30 06:14:12 +02:00
Compare commits
27 Commits
3.0.0-beta
...
3.0.0-beta
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
007e1ded0d | ||
|
|
5651512f68 | ||
|
|
8c043f137c | ||
|
|
b3cce54ee9 | ||
|
|
e4e4e3b0bf | ||
|
|
1cb3b4bd96 | ||
|
|
97ee6570d2 | ||
|
|
8c8f711fe8 | ||
|
|
f140efd95c | ||
|
|
6b19758654 | ||
|
|
2899c82ef2 | ||
|
|
12c2929f1d | ||
|
|
9d28e43804 | ||
|
|
8e3cc471df | ||
|
|
58e35ea33b | ||
|
|
0b81601699 | ||
|
|
4d3ba6edd0 | ||
|
|
9de014c9cb | ||
|
|
75dbaada72 | ||
|
|
0d4dd0c67b | ||
|
|
fabdef37d2 | ||
|
|
e666631f63 | ||
|
|
280feca863 | ||
|
|
7690e43b39 | ||
|
|
0c66882990 | ||
|
|
7613ac7a9b | ||
|
|
7af10e5197 |
@@ -94,6 +94,8 @@ abstract class cmdbAbstractObject extends CMDBObject implements iDisplay
|
||||
/** @var string */
|
||||
public const ENUM_INPUT_TYPE_RADIO = 'radio';
|
||||
/** @var string */
|
||||
public const ENUM_INPUT_TYPE_CHECKBOX = 'checkbox';
|
||||
/** @var string */
|
||||
public const ENUM_INPUT_TYPE_DROPDOWN_RAW = 'dropdown_raw';
|
||||
/** @var string */
|
||||
public const ENUM_INPUT_TYPE_DROPDOWN_DECORATED = 'dropdown_decorated'; // now with the JQuery Selectize plugin
|
||||
@@ -2894,7 +2896,7 @@ EOF
|
||||
$oPage->add($oAppContext->GetForForm());
|
||||
|
||||
// Hook the cancel button via jQuery so that it can be unhooked easily as well if needed
|
||||
$sDefaultUrl = utils::GetAbsoluteUrlAppRoot().'pages/UI.php?operation=cancel&'.$oAppContext->GetForLink();
|
||||
$sDefaultUrl = utils::GetAbsoluteUrlAppRoot().'pages/UI.php?operation=search_form&class='.$sClass.'&'.$oAppContext->GetForLink();
|
||||
$oPage->add_ready_script("$('#form_{$this->m_iFormId} button.cancel').on('click', function() { BackToDetails('$sClass', $iKey, '$sDefaultUrl', $sJSToken)} );");
|
||||
|
||||
$iFieldsCount = count($aFieldsMap);
|
||||
|
||||
@@ -102,12 +102,20 @@ class DesignerForm
|
||||
$sReturn .= '<fieldset>';
|
||||
$sReturn .= '<legend>'.$sLabel.'</legend>';
|
||||
}
|
||||
/** @var \DesignerFormField $oField */
|
||||
foreach($aFields as $oField) {
|
||||
$aRow = $oField->Render($oP, $sFormId);
|
||||
if ($oField->IsVisible()) {
|
||||
$sValidation = '<span class="prop_apply ibo-prop--apply ibo-button ibo-is-alternative">'.$this->GetValidationArea($oField->GetFieldId()).'</span>';
|
||||
$sField = $aRow['value'].$sValidation;
|
||||
$aDetails[] = array('label' => $aRow['label'], 'value' => $sField);
|
||||
$aDetails[] = array(
|
||||
'label' => $aRow['label'],
|
||||
'value' => $sField,
|
||||
'attcode' => $oField->GetCode(),
|
||||
'attlabel' => $aRow['label'],
|
||||
'inputid' => $this->GetFieldId($oField->GetCode()),
|
||||
'inputtype' => $oField->GetInputType(),
|
||||
);
|
||||
} else {
|
||||
$sHiddenFields .= $aRow['value'];
|
||||
}
|
||||
@@ -707,6 +715,19 @@ class DesignerFormField
|
||||
$this->aWidgetExtraParams = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Important, for now we use constants from the \cmdbAbstractObject class, introducing a coupling that should not exist.
|
||||
* This has been traced under N°4241 and will be discussed during the next modernization batch.
|
||||
*
|
||||
* @return string|null Return the input type of the field
|
||||
* @see \cmdbAbstractObject::ENUM_INPUT_TYPE_XXX
|
||||
* @since 3.0.0
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return cmdbAbstractObject::ENUM_INPUT_TYPE_SINGLE_INPUT;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
@@ -1047,6 +1068,14 @@ class DesignerLongTextField extends DesignerTextField
|
||||
$this->aCSSClasses[] = 'ibo-input-text';
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): string
|
||||
{
|
||||
return cmdbAbstractObject::ENUM_INPUT_TYPE_TEXTAREA;
|
||||
}
|
||||
|
||||
public function Render(WebPage $oP, $sFormId, $sRenderMode='dialog')
|
||||
{
|
||||
$sId = $this->oForm->GetFieldId($this->sCode);
|
||||
@@ -1175,6 +1204,19 @@ class DesignerComboField extends DesignerFormField
|
||||
$this->bAutoApply = true;
|
||||
$this->bSorted = true; // Sorted by default
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
if ($this->bMultipleSelection) {
|
||||
return cmdbAbstractObject::ENUM_INPUT_TYPE_DROPDOWN_MULTIPLE_CHOICES;
|
||||
}
|
||||
else {
|
||||
return cmdbAbstractObject::ENUM_INPUT_TYPE_DROPDOWN_RAW;
|
||||
}
|
||||
}
|
||||
|
||||
public function SetAllowedValues($aAllowedValues)
|
||||
{
|
||||
@@ -1311,6 +1353,14 @@ class DesignerBooleanField extends DesignerFormField
|
||||
$this->bAutoApply = true;
|
||||
$this->aCSSClasses[] = 'ibo-input-checkbox';
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return cmdbAbstractObject::ENUM_INPUT_TYPE_CHECKBOX;
|
||||
}
|
||||
|
||||
public function Render(WebPage $oP, $sFormId, $sRenderMode='dialog')
|
||||
{
|
||||
@@ -1370,6 +1420,14 @@ class DesignerHiddenField extends DesignerFormField
|
||||
{
|
||||
parent::__construct($sCode, $sLabel, $defaultValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function IsVisible()
|
||||
{
|
||||
@@ -1397,6 +1455,14 @@ class DesignerIconSelectionField extends DesignerFormField
|
||||
$this->bAutoApply = true;
|
||||
$this->sUploadUrl = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return cmdbAbstractObject::ENUM_INPUT_TYPE_DROPDOWN_DECORATED;
|
||||
}
|
||||
|
||||
public function SetAllowedValues($aAllowedValues)
|
||||
{
|
||||
@@ -1566,6 +1632,14 @@ class DesignerSortableField extends DesignerFormField
|
||||
parent::__construct($sCode, $sLabel, $defaultValue);
|
||||
$this->aAllowedValues = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function SetAllowedValues($aAllowedValues)
|
||||
{
|
||||
@@ -1605,6 +1679,14 @@ class DesignerFormSelectorField extends DesignerFormField
|
||||
$this->aCSSClasses[] = 'ibo-input-select';
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function IsSorted()
|
||||
{
|
||||
return $this->bSorted;
|
||||
@@ -1790,6 +1872,14 @@ class DesignerSubFormField extends DesignerFormField
|
||||
parent::__construct('', $sLabel, '');
|
||||
$this->oSubForm = $oSubForm;
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function Render(WebPage $oP, $sFormId, $sRenderMode='dialog')
|
||||
{
|
||||
@@ -1834,6 +1924,14 @@ class DesignerStaticTextField extends DesignerFormField
|
||||
parent::__construct($sCode, $sLabel, $defaultValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function GetInputType(): ?string
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function Render(WebPage $oP, $sFormId, $sRenderMode='dialog')
|
||||
{
|
||||
return array('label' => $this->sLabel, 'value' => $this->defaultValue);
|
||||
|
||||
@@ -1125,7 +1125,6 @@ class OQLMenuNode extends MenuNode
|
||||
{
|
||||
$sUsageId = utils::GetSafeId($sUsageId);
|
||||
$oSearch = DBObjectSearch::FromOQL($sOql);
|
||||
//$sIcon = MetaModel::GetClassIcon($oSearch->GetClass(), false);
|
||||
|
||||
if ($bSearchPane) {
|
||||
$aParams = array_merge(['open' => $bSearchOpen, 'table_id' => $sUsageId, 'submit_on_load' => true], $aExtraParams);
|
||||
@@ -1133,6 +1132,16 @@ class OQLMenuNode extends MenuNode
|
||||
$oBlock->Display($oPage, 0);
|
||||
}
|
||||
|
||||
$oPage->add("<div class='sf_results_area' data-target='search_results'>");
|
||||
$oTitle = TitleUIBlockFactory::MakeForPage($sTitle);
|
||||
$oPage->AddUiBlock($oTitle);
|
||||
|
||||
$aParams = array_merge(array('table_id' => $sUsageId), $aExtraParams);
|
||||
$oBlock = new DisplayBlock($oSearch, 'list', false /* Asynchronous */, $aParams);
|
||||
$oBlock->Display($oPage, $sUsageId);
|
||||
|
||||
$oPage->add("</div>");
|
||||
|
||||
if ($bEnableBreadcrumb && ($oPage instanceof iTopWebPage)) {
|
||||
// Breadcrumb
|
||||
//$iCount = $oBlock->GetDisplayedCount();
|
||||
|
||||
@@ -4123,7 +4123,8 @@ class AttributeText extends AttributeString
|
||||
{
|
||||
// Propose a std link to the object
|
||||
$sClassLabel = MetaModel::GetName($sClass);
|
||||
$sReplacement = "<span class=\"wiki_broken_link\">$sClassLabel:$sName" . (!empty($sLabel) ? " ($sLabel)" : "") . "</span>";
|
||||
$sToolTipForHtml = utils::EscapeHtml(Dict::S('Core:UnknownObjectTip'));
|
||||
$sReplacement = "<span class=\"wiki_broken_link ibo-is-broken-hyperlink\" data-tooltip-content=\"$sToolTipForHtml\">$sClassLabel:$sName" . (!empty($sLabel) ? " ($sLabel)" : "") . "</span>";
|
||||
$sText = str_replace($aMatches[0], $sReplacement, $sText);
|
||||
// Later: propose a link to create a new object
|
||||
// Anyhow... there is no easy way to suggest default values based on the given FRIENDLY name
|
||||
|
||||
@@ -229,7 +229,7 @@ class InlineImage extends DBObject
|
||||
*
|
||||
* @param string $sTempId
|
||||
*
|
||||
* @return void
|
||||
* @return bool True if cleaning was successful, false if anything aborted it
|
||||
* @throws \ArchivedObjectException
|
||||
* @throws \CoreCannotSaveObjectException
|
||||
* @throws \CoreException
|
||||
@@ -239,8 +239,19 @@ class InlineImage extends DBObject
|
||||
* @throws \MySQLHasGoneAwayException
|
||||
* @throws \OQLException
|
||||
*/
|
||||
public static function OnFormCancel($sTempId)
|
||||
public static function OnFormCancel($sTempId): bool
|
||||
{
|
||||
// Protection against unfortunate massive delete of inline images when a null temp ID is passed
|
||||
if (strlen($sTempId) === 0) {
|
||||
IssueLog::Trace('OnFormCancel "error" $sTempId is null or empty', LogChannels::INLINE_IMAGE, array(
|
||||
'$sTempId' => $sTempId,
|
||||
'$sUser' => UserRights::GetUser(),
|
||||
'HTTP_REFERER' => @$_SERVER['HTTP_REFERER'],
|
||||
));
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// Delete all "pending" InlineImages for this form
|
||||
$sOQL = 'SELECT InlineImage WHERE temp_id = :temp_id';
|
||||
$oSearch = DBObjectSearch::FromOQL($sOQL);
|
||||
@@ -257,6 +268,8 @@ class InlineImage extends DBObject
|
||||
'$sUser' => UserRights::GetUser(),
|
||||
'HTTP_REFERER' => @$_SERVER['HTTP_REFERER'],
|
||||
));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -5114,7 +5114,7 @@ abstract class MetaModel
|
||||
foreach($aErrors as $sClass => $aMessages)
|
||||
{
|
||||
echo "<p>Wrong declaration for class <b>$sClass</b></p>\n";
|
||||
echo "<ul class=\"treeview\">\n";
|
||||
echo "<ul >\n";
|
||||
$i = 0;
|
||||
foreach($aMessages as $sMsg)
|
||||
{
|
||||
|
||||
@@ -136,6 +136,11 @@ body.ibo-has-fullscreen-descendant {
|
||||
}
|
||||
}
|
||||
|
||||
.ibo-is-broken-hyperlink {
|
||||
text-decoration: line-through;
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
.ibo-is-code {
|
||||
background-color: $ibo-is-code--background-color;
|
||||
padding: $ibo-is-code--padding;
|
||||
|
||||
@@ -134,4 +134,4 @@ button.ui-multiselect {
|
||||
button.ui-multiselect .fas{
|
||||
float:right;
|
||||
padding-left:10px;
|
||||
}
|
||||
}
|
||||
|
||||
183
css/setup.css
183
css/setup.css
@@ -605,7 +605,7 @@ ul.cke_autocomplete_panel, .ibo-quick-create--input.selectize-control.single .se
|
||||
/* NOTE: Those helpers allow to easily use an icon from libs. like FontAwesome or FontCombodo within a CSS rule (eg. ::after) */
|
||||
/* To use it, simply "@extend %fa-regular-base" in a rule and put the desired icon "content: '\f054'" */
|
||||
/******************************************************************************************************************************/
|
||||
.dataTables_scrollHead thead tr th.sorting::after, .ibo-breadcrumbs--item:not(:last-child)::after, .ibo-prop--apply.ui-state-error:after, .ibo-sort-order::after {
|
||||
.dataTables_scrollHead thead tr th.sorting::after, .ibo-breadcrumbs--item:not(:last-child)::after, .ibo-prop--apply.ui-state-error:after, .ibo-sort-order::after, .collapsable-options [data-role="setup-collapsable-options--toggler"]::before, #params_summary div.closed .title::before, #params_summary div:not(.closed) .title::before {
|
||||
font-family: "Font Awesome 5 Free";
|
||||
font-weight: 900;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
@@ -750,7 +750,7 @@ ul.cke_autocomplete_panel, .ibo-quick-create--input.selectize-control.single .se
|
||||
-moz-font-feature-settings: "lnum";
|
||||
font-feature-settings: "lnum";
|
||||
}
|
||||
.ibo-font-ral-nor-250, .ui-dialog-title, .ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message, .ibo-welcome-popup--text {
|
||||
.ibo-font-ral-nor-250, .ui-dialog-title, .ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message, .ibo-welcome-popup--text, #ibo_setup_container .ibo-setup--body .setup-content-title, #ibo_setup_container .ibo-setup--body h2, .setup-end-placeholder a {
|
||||
font-size: 1.5rem;
|
||||
font-family: "Raleway", "sans-serif", "system-ui";
|
||||
font-weight: 400;
|
||||
@@ -1356,6 +1356,10 @@ body.ibo-has-fullscreen-descendant {
|
||||
.dataTables_paginate a.paginate_button:hover, .dataTables_paginate .ibo-quick-create--compartment-results--element > .paginate_button.option:hover, .ibo-dashlet-badge--action-list:hover, .ibo-dashlet-badge--action-list:active:hover, .ibo-field--fullscreen-toggler:hover, .search_form_handler a:hover, .search_form_handler .ibo-quick-create--compartment-results--element > .option:hover, .ibo-navigation-menu--menu-filter-clear:hover, .ibo-navigation-menu--menu-filter-hint-close:hover, .ibo-tab-container--tab-toggler:hover, .ibo-tab-container--extra-tabs-list-toggler:hover, .ibo-activity-panel--load-entries-button:hover, .dataTables_paginate a.paginate_button:active, .ibo-dashlet-badge--action-list:hover:active, .ibo-dashlet-badge--action-list:active, .ibo-field--fullscreen-toggler:active, .search_form_handler a:active, .ibo-navigation-menu--menu-filter-clear:active, .ibo-navigation-menu--menu-filter-hint-close:active, .ibo-tab-container--tab-toggler:active, .ibo-tab-container--extra-tabs-list-toggler:active, .ibo-activity-panel--load-entries-button:active {
|
||||
color: inherit;
|
||||
}
|
||||
.ibo-is-broken-hyperlink {
|
||||
text-decoration: line-through;
|
||||
cursor: help;
|
||||
}
|
||||
.ibo-is-code {
|
||||
background-color: #f2f2f2;
|
||||
padding: 1.25rem 1.5rem;
|
||||
@@ -1364,6 +1368,9 @@ body.ibo-has-fullscreen-descendant {
|
||||
* A single class to handle WYSIWYG generated content, where only HTML tags are available
|
||||
* See https://bulma.io/documentation/elements/content/
|
||||
*/
|
||||
.ibo-is-html-content code {
|
||||
color: initial;
|
||||
}
|
||||
/***********************************************************************/
|
||||
/* Sticky headers */
|
||||
/* */
|
||||
@@ -1419,6 +1426,10 @@ body.ibo-has-fullscreen-descendant {
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
*/
|
||||
/**
|
||||
* customize Bulma content variables
|
||||
* See https://bulma.io/documentation/elements/content/
|
||||
*/
|
||||
/*! bulma.io v0.9.0 | MIT License | github.com/jgthms/bulma */
|
||||
@keyframes spinAround {
|
||||
from {
|
||||
@@ -2964,8 +2975,8 @@ a.box:active {
|
||||
width: 100%;
|
||||
}
|
||||
.content table td, .ibo-is-html-content table td, .content table th, .ibo-is-html-content table th {
|
||||
border: 1px solid #dbdbdb;
|
||||
border-width: 0 0 1px;
|
||||
border: 1px solid black;
|
||||
border-width: 1px;
|
||||
padding: 0.5em 0.75em;
|
||||
vertical-align: top;
|
||||
}
|
||||
@@ -2976,12 +2987,12 @@ a.box:active {
|
||||
text-align: inherit;
|
||||
}
|
||||
.content table thead td, .ibo-is-html-content table thead td, .content table thead th, .ibo-is-html-content table thead th {
|
||||
border-width: 0 0 2px;
|
||||
border-width: 1px;
|
||||
color: #363636;
|
||||
}
|
||||
.content table tfoot td, .ibo-is-html-content table tfoot td, .content table tfoot th, .ibo-is-html-content table tfoot th {
|
||||
border-width: 2px 0 0;
|
||||
color: #363636;
|
||||
border-width: 1px;
|
||||
color: black;
|
||||
}
|
||||
.content table tbody tr:last-child td, .ibo-is-html-content table tbody tr:last-child td, .content table tbody tr:last-child th, .ibo-is-html-content table tbody tr:last-child th {
|
||||
border-bottom-width: 0;
|
||||
@@ -10349,7 +10360,7 @@ a.has-text-danger-dark:hover, .ibo-quick-create--compartment-results--element >
|
||||
padding: 0.9rem !important;
|
||||
box-shadow: 0 0px 3px 2px inset rgba(0, 0, 0, 0.4);
|
||||
border-radius: 3px;
|
||||
white-space: pre-wrap;
|
||||
white-space: pre-line;
|
||||
}
|
||||
/* Mentions in caselogs */
|
||||
/* Note: Mind the "ul", it allows us to have a more precise rule than the original plugin's CSS so we can override it */
|
||||
@@ -10366,14 +10377,19 @@ ul.cke_autocomplete_panel .ibo-vendors-ckeditor--autocomplete-item {
|
||||
ul.cke_autocomplete_panel .ibo-vendors-ckeditor--autocomplete-item-image {
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
/* min-xxx are here to avoid medallion to be horizontally compressed when the title is to long */
|
||||
min-width: 25px;
|
||||
min-height: 25px;
|
||||
background-position: center center;
|
||||
background-size: 100%;
|
||||
border-radius: 100%;
|
||||
margin-right: 0.5rem;
|
||||
background-color: #e1e7ec;
|
||||
background-color: #ebf8ff;
|
||||
border: 1px solid #929fb1;
|
||||
}
|
||||
ul.cke_autocomplete_panel .ibo-vendors-ckeditor--autocomplete-item-title {
|
||||
white-space: nowrap;
|
||||
/* Here we don't want to truncate the text as in an autocomplete we might have similar values and we need the user to see the entire text to be able to differenciate them */
|
||||
color: #3A3A3A;
|
||||
}
|
||||
/*!
|
||||
@@ -10828,6 +10844,9 @@ ul.cke_autocomplete_panel .ibo-vendors-ckeditor--autocomplete-item-title {
|
||||
cursor: default;
|
||||
z-index: 100;
|
||||
}
|
||||
.ui-autocomplete .ui-menu-item {
|
||||
padding: 0;
|
||||
}
|
||||
.ui-autocomplete-input {
|
||||
width: auto;
|
||||
display: inline;
|
||||
@@ -13772,7 +13791,7 @@ img.ibo-navigation-menu--notifications--item--image:not([src=""]) ~ i.ibo-naviga
|
||||
}
|
||||
.ibo-field:not([data-attribute-type="AttributeBlob"]):not([data-attribute-type="AttributeFile"]):not([data-attribute-type="AttributeImage"]):not([data-attribute-type="AttributeCustomFields"]):not(.ibo-input-file-select--container) .ibo-field--value * {
|
||||
word-break: break-word;
|
||||
white-space: pre-wrap;
|
||||
white-space: pre-line;
|
||||
}
|
||||
.ibo-field ~ .ibo-field {
|
||||
margin-top: 16px;
|
||||
@@ -14405,7 +14424,7 @@ img.ibo-navigation-menu--notifications--item--image:not([src=""]) ~ i.ibo-naviga
|
||||
}
|
||||
.search_form_handler .sf_criterion_area .sf_more_criterion > * {
|
||||
background-color: white;
|
||||
color: #dd6c20;
|
||||
color: #37474f;
|
||||
}
|
||||
.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_toggler .sfm_tg_title {
|
||||
margin-right: 7px;
|
||||
@@ -16240,7 +16259,7 @@ input:checked + .ibo-dashboard--slider:after {
|
||||
/* Avoid pre (code snippets) to overflow outside the entry */
|
||||
}
|
||||
.ibo-activity-entry--main-information-content pre {
|
||||
white-space: pre-wrap;
|
||||
white-space: pre-line;
|
||||
/* Avoid table to overflow outside the entry (see N°2127) */
|
||||
}
|
||||
.ibo-activity-entry--main-information-content table {
|
||||
@@ -17139,6 +17158,8 @@ tr.row_added td {
|
||||
*/
|
||||
}
|
||||
#ibo-main-content .ibo-panel.ibo-has-sticky-header {
|
||||
margin-bottom: 200px;
|
||||
/* Add a margin below the panel so the dropdown lists can open without problem (N°4039) */
|
||||
/* Stickable header rules */
|
||||
}
|
||||
#ibo-main-content .ibo-panel.ibo-has-sticky-header > .ibo-sticky-sentinel-top {
|
||||
@@ -17450,10 +17471,9 @@ h3.clickable.open {
|
||||
fieldset {
|
||||
border: none;
|
||||
padding: 0;
|
||||
margin: 30px 0 0 0;
|
||||
margin: 15px 0 0 0;
|
||||
}
|
||||
fieldset > legend {
|
||||
margin-top: 25px;
|
||||
margin-bottom: 7px;
|
||||
padding-bottom: 7px;
|
||||
width: 100%;
|
||||
@@ -17505,14 +17525,11 @@ body {
|
||||
border-bottom: none;
|
||||
border-radius: 3px 3px 0 0;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--header img {
|
||||
#ibo_setup_container .ibo-setup--header .ibo-title--icon {
|
||||
border: 0;
|
||||
vertical-align: middle;
|
||||
margin-right: 20px;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--header h1 {
|
||||
margin-top: 10px;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@@ -17562,10 +17579,10 @@ body {
|
||||
margin-top: 5px;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body .ibo-fieldset, #ibo_setup_container .ibo-setup--body fieldset {
|
||||
margin-top: 25px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body .ibo-fieldset ~ .ibo-fieldset, #ibo_setup_container .ibo-setup--body fieldset ~ .ibo-fieldset, #ibo_setup_container .ibo-setup--body .ibo-fieldset ~ fieldset, #ibo_setup_container .ibo-setup--body fieldset ~ fieldset {
|
||||
margin-top: 25px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body .ibo-field {
|
||||
margin-top: 5px;
|
||||
@@ -17599,6 +17616,19 @@ body {
|
||||
max-height: 400px;
|
||||
overflow: auto;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body .ibo-input, #ibo_setup_container .ibo-setup--body .ui-autocomplete-input, #ibo_setup_container .ibo-setup--body .ui-multiselect, #ibo_setup_container .ibo-setup--body .dataTables_length select, .dataTables_length #ibo_setup_container .ibo-setup--body select, #ibo_setup_container .ibo-setup--body .ui_tpicker_hour_slider > select, #ibo_setup_container .ibo-setup--body .ui_tpicker_minute_slider > select, #ibo_setup_container .ibo-setup--body .ui_tpicker_second_slider > select, #ibo_setup_container .ibo-setup--body .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"], .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content #ibo_setup_container .ibo-setup--body input[type="text"], #ibo_setup_container .ibo-setup--body .search_form_handler .sf_filter .sff_input_wrapper input[type="text"], .search_form_handler .sf_filter .sff_input_wrapper #ibo_setup_container .ibo-setup--body input[type="text"] {
|
||||
width: auto;
|
||||
display: inline-block;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body table td {
|
||||
white-space: nowrap;
|
||||
line-height: 2.5rem;
|
||||
padding-right: 8px;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
#ibo_setup_container .ibo-setup--body .setup-content-title, #ibo_setup_container .ibo-setup--body h2 {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
.ibo-setup--button-bar {
|
||||
margin-top: 16px;
|
||||
}
|
||||
@@ -17611,4 +17641,117 @@ body {
|
||||
.ibo-setup-summary-title {
|
||||
font-size: 1.17rem;
|
||||
}
|
||||
.setup-prefix-toggler--input--container, .setup-tls--input--container, .setup-disk-location--input--container, .setup-backup--input--container {
|
||||
display: flex;
|
||||
line-height: 2.5rem;
|
||||
margin: 1rem 0;
|
||||
}
|
||||
.setup-prefix-toggler--input--container input, .setup-tls--input--container input, .setup-disk-location--input--container input, .setup-backup--input--container input {
|
||||
margin: 0 8px;
|
||||
}
|
||||
.setup-disk-location--input--container input, .setup-backup--input--container input {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.collapsable-options {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
.collapsable-options [data-role="setup-collapsable-options--toggler"]::before {
|
||||
margin-right: 8px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.collapsable-options:not(.setup-is-opened) [data-role="setup-collapsable-options--toggler"]::before {
|
||||
content: '\f078';
|
||||
}
|
||||
.collapsable-options.setup-is-opened [data-role="setup-collapsable-options--toggler"]::before {
|
||||
content: '\f077';
|
||||
}
|
||||
.setup-input--hint--icon {
|
||||
color: #6e7a8a;
|
||||
}
|
||||
.setup-invalid-field--icon {
|
||||
color: #c53030;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.setup-accept-licenses {
|
||||
margin-top: 18px;
|
||||
}
|
||||
.setup-accept-licenses input {
|
||||
margin-right: 8px;
|
||||
}
|
||||
.module-selection-banner {
|
||||
display: flex;
|
||||
}
|
||||
.module-selection-banner > img {
|
||||
margin-right: 12px;
|
||||
}
|
||||
.setup-end-placeholder {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
}
|
||||
.setup-end-placeholder > div {
|
||||
padding: 0px 15px;
|
||||
}
|
||||
.setup-end-placeholder a {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
.setup-end-placeholder a svg {
|
||||
max-height: 150px;
|
||||
margin-bottom: 15px;
|
||||
width: auto;
|
||||
}
|
||||
/* integrityCheck: end (do not remove/edit) */
|
||||
/* Legacy inline stuff */
|
||||
#params_summary {
|
||||
overflow: auto;
|
||||
}
|
||||
#params_summary div {
|
||||
width: 100%;
|
||||
margin-top: 0;
|
||||
padding-top: 0.5em;
|
||||
padding-left: 0;
|
||||
}
|
||||
#params_summary div ul {
|
||||
margin-left: 0;
|
||||
padding-left: 40px;
|
||||
}
|
||||
#params_summary div.closed ul {
|
||||
display: none;
|
||||
}
|
||||
#params_summary div li {
|
||||
list-style: none;
|
||||
width: 100%;
|
||||
margin-left: 0;
|
||||
padding-left: 0em;
|
||||
}
|
||||
.title {
|
||||
padding-left: 20px;
|
||||
font-weight: bold;
|
||||
cursor: pointer;
|
||||
}
|
||||
#params_summary div.closed .title::before {
|
||||
margin-right: 5px;
|
||||
content: '\f078';
|
||||
}
|
||||
#params_summary div:not(.closed) .title::before {
|
||||
margin-right: 5px;
|
||||
content: '\f077';
|
||||
}
|
||||
#progress_content {
|
||||
height: 200px;
|
||||
overflow: auto;
|
||||
text-align: center;
|
||||
}
|
||||
#installation_progress {
|
||||
display: none;
|
||||
}
|
||||
#fresh_content {
|
||||
border: 0;
|
||||
min-height: 300px;
|
||||
min-width: 600px;
|
||||
display: none;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
155
css/setup.scss
155
css/setup.scss
@@ -288,10 +288,9 @@ h3.clickable.open {
|
||||
fieldset {
|
||||
border: none;
|
||||
padding: 0;
|
||||
margin: 30px 0 0 0;
|
||||
margin: 15px 0 0 0;
|
||||
|
||||
> legend {
|
||||
margin-top: 25px;
|
||||
margin-bottom: 7px;
|
||||
padding-bottom: 7px;
|
||||
width: 100%;
|
||||
@@ -367,15 +366,11 @@ body {
|
||||
border-bottom: none;
|
||||
border-radius: $ibo-border-radius-300 $ibo-border-radius-300 0 0;
|
||||
|
||||
img {
|
||||
.ibo-title--icon {
|
||||
border: 0;
|
||||
vertical-align: middle;
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-top: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
.ibo-setup--body {
|
||||
@@ -433,10 +428,10 @@ body {
|
||||
}
|
||||
|
||||
.ibo-fieldset {
|
||||
margin-top: 25px;
|
||||
margin-top: 12px;
|
||||
|
||||
& ~ .ibo-fieldset {
|
||||
margin-top: 25px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -485,6 +480,22 @@ body {
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
.ibo-input{
|
||||
width: auto;
|
||||
display: inline-block;
|
||||
}
|
||||
table {
|
||||
td{
|
||||
white-space: nowrap;
|
||||
line-height: 2.5rem;
|
||||
padding-right: 8px;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
}
|
||||
.setup-content-title, h2{
|
||||
@extend %ibo-font-ral-nor-250;
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -506,4 +517,128 @@ body {
|
||||
font-size: $ibo-font-size-150;
|
||||
}
|
||||
|
||||
/* integrityCheck: end (do not remove/edit) */
|
||||
|
||||
.setup-prefix-toggler--input--container, .setup-tls--input--container, .setup-disk-location--input--container, .setup-backup--input--container {
|
||||
display: flex;
|
||||
line-height: 2.5rem;
|
||||
margin: 1rem 0;
|
||||
input{
|
||||
margin: 0 8px;
|
||||
}
|
||||
}
|
||||
.setup-disk-location--input--container, .setup-backup--input--container{
|
||||
input{
|
||||
flex-grow: 1;
|
||||
}
|
||||
}
|
||||
.collapsable-options{
|
||||
margin-bottom: 18px;
|
||||
[data-role="setup-collapsable-options--toggler"]::before {
|
||||
margin-right: 8px;
|
||||
@extend %fa-solid-base;
|
||||
cursor: pointer;
|
||||
}
|
||||
&:not(.setup-is-opened) [data-role="setup-collapsable-options--toggler"]::before{
|
||||
content: '\f078';
|
||||
}
|
||||
&.setup-is-opened [data-role="setup-collapsable-options--toggler"]::before{
|
||||
content: '\f077';
|
||||
}
|
||||
}
|
||||
.setup-input--hint--icon{
|
||||
color: $ibo-color-grey-700
|
||||
}
|
||||
.setup-invalid-field--icon{
|
||||
color: $ibo-color-red-700;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.setup-accept-licenses{
|
||||
margin-top: 18px;
|
||||
input{
|
||||
margin-right: 8px;
|
||||
}
|
||||
}
|
||||
.module-selection-banner{
|
||||
display: flex;
|
||||
>img{
|
||||
margin-right: 12px;
|
||||
}
|
||||
}
|
||||
.setup-end-placeholder{
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
>div {
|
||||
padding: 0px 15px;
|
||||
}
|
||||
a {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
@extend %ibo-font-ral-nor-250;
|
||||
svg{
|
||||
max-height: 150px;
|
||||
margin-bottom: 15px;
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
/* integrityCheck: end (do not remove/edit) */
|
||||
|
||||
/* Legacy inline stuff */
|
||||
#params_summary {
|
||||
overflow: auto;
|
||||
}
|
||||
#params_summary div {
|
||||
width:100%;
|
||||
margin-top:0;
|
||||
padding-top: 0.5em;
|
||||
padding-left: 0;
|
||||
}
|
||||
#params_summary div ul {
|
||||
margin-left:0;
|
||||
padding-left: 40px;
|
||||
}
|
||||
#params_summary div.closed ul {
|
||||
display:none;
|
||||
}
|
||||
#params_summary div li {
|
||||
list-style: none;
|
||||
width: 100%;
|
||||
margin-left:0;
|
||||
padding-left: 0em;
|
||||
}
|
||||
.title {
|
||||
padding-left: 20px;
|
||||
font-weight: bold;
|
||||
cursor: pointer;
|
||||
}
|
||||
#params_summary div {
|
||||
&.closed .title::before {
|
||||
margin-right: 5px;
|
||||
@extend %fa-solid-base;
|
||||
content: '\f078';
|
||||
}
|
||||
&:not(.closed) .title::before {
|
||||
margin-right: 5px;
|
||||
@extend %fa-solid-base;
|
||||
content: '\f077';
|
||||
}
|
||||
}
|
||||
|
||||
#progress_content {
|
||||
height: 200px;
|
||||
overflow: auto;
|
||||
text-align: center;
|
||||
}
|
||||
#installation_progress {
|
||||
display: none;
|
||||
}
|
||||
#fresh_content{
|
||||
border: 0;
|
||||
min-height: 300px;
|
||||
min-width: 600px;
|
||||
display:none;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
@@ -37,5 +37,5 @@
|
||||
//
|
||||
Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'Class:UserExternal' => 'Externí uživatel',
|
||||
'Class:UserExternal+' => 'Uživatel definovaný mimo iTop',
|
||||
'Class:UserExternal+' => 'Uživatel definovaný mimo '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -22,5 +22,5 @@
|
||||
*/
|
||||
Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'Class:UserExternal' => 'Extern Bruger',
|
||||
'Class:UserExternal+' => 'Bruger udenfor iTop',
|
||||
'Class:UserExternal+' => 'Bruger udenfor '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -24,5 +24,5 @@
|
||||
*/
|
||||
Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:UserExternal' => 'Externer Benutzer',
|
||||
'Class:UserExternal+' => 'Externe authentifizierter iTop-Benutzer',
|
||||
'Class:UserExternal+' => 'Externe authentifizierter '.ITOP_APPLICATION_SHORT.'-Benutzer',
|
||||
));
|
||||
|
||||
@@ -37,5 +37,5 @@
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:UserExternal' => 'External user',
|
||||
'Class:UserExternal+' => 'User authentified outside of iTop',
|
||||
'Class:UserExternal+' => 'User authentified outside of '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -36,5 +36,5 @@
|
||||
//
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
'Class:UserExternal' => 'Usuario Externo',
|
||||
'Class:UserExternal+' => 'Usuario Autenticado fuera de iTop',
|
||||
'Class:UserExternal+' => 'Usuario Autenticado fuera de '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -20,6 +20,6 @@
|
||||
* @license http://opensource.org/licenses/AGPL-3.0
|
||||
*/
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:UserExternal' => 'Utilisateur externe à iTop',
|
||||
'Class:UserExternal+' => 'Utilisateur authentifié à l\'extérieur d\'iTop',
|
||||
'Class:UserExternal' => 'Utilisateur externe à '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserExternal+' => 'Utilisateur authentifié à l\'extérieur de '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -35,5 +35,5 @@
|
||||
//
|
||||
Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:UserExternal' => 'Esterno utente',
|
||||
'Class:UserExternal+' => 'Utente autenticato al di fuori di iTop',
|
||||
'Class:UserExternal+' => 'Utente autenticato al di fuori di '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -13,5 +13,5 @@
|
||||
//
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:UserExternal' => 'Внешний пользователь',
|
||||
'Class:UserExternal+' => 'Пользователь, аутентифицируемый вне iTop',
|
||||
'Class:UserExternal+' => 'Пользователь, аутентифицируемый вне '.ITOP_APPLICATION_SHORT,
|
||||
));
|
||||
|
||||
@@ -36,5 +36,5 @@
|
||||
//
|
||||
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ı',
|
||||
'Class:UserExternal+' => ITOP_APPLICATION_SHORT.' dışında yetki kontrolü yapılan kullanıcı',
|
||||
));
|
||||
|
||||
@@ -35,5 +35,5 @@
|
||||
//
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserExternal' => '外部用户',
|
||||
'Class:UserExternal+' => '用户在iTop 外部验证身份',
|
||||
'Class:UserExternal+' => '用户在 '.ITOP_APPLICATION_SHORT.' 外部验证身份',
|
||||
));
|
||||
|
||||
@@ -36,8 +36,8 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'Class:UserLocal' => 'interní uživatel iTop',
|
||||
'Class:UserLocal+' => 'Uživatel ověřen interně v iTop',
|
||||
'Class:UserLocal' => 'interní uživatel '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal+' => 'Uživatel ověřen interně v '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Heslo',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
* @licence http://opensource.org/licenses/AGPL-3.0
|
||||
*/
|
||||
Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'Class:UserLocal' => 'iTop-Bruger',
|
||||
'Class:UserLocal+' => 'Bruger der godkendes af iTop',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.'-Bruger',
|
||||
'Class:UserLocal+' => 'Bruger der godkendes af '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Password',
|
||||
'Class:UserLocal/Attribute:password+' => 'Brugerens password',
|
||||
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
*
|
||||
*/
|
||||
Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:UserLocal' => 'iTop-Benutzer',
|
||||
'Class:UserLocal+' => 'Benutzer, der von iTop authentifiziert wird',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.'-Benutzer',
|
||||
'Class:UserLocal+' => 'Benutzer, der von '.ITOP_APPLICATION_SHORT.' authentifiziert wird',
|
||||
'Class:UserLocal/Attribute:password' => 'Passwort',
|
||||
'Class:UserLocal/Attribute:password+' => 'Benutzerpasswort',
|
||||
|
||||
@@ -43,5 +43,5 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
|
||||
'Error:UserLocalPasswordValidator:UserPasswordPolicyRegex:ValidationFailed' => 'Das Passwort entspricht nicht dem in den Konfigurationsregeln hinterlegten RegEx-Ausdruck',
|
||||
|
||||
'UserLocal:password:expiration' => 'Die folgenden Felder benötigen eine iTop Erweiterung'
|
||||
'UserLocal:password:expiration' => 'Die folgenden Felder benötigen eine '.ITOP_APPLICATION_SHORT.' Erweiterung'
|
||||
));
|
||||
|
||||
@@ -36,8 +36,8 @@
|
||||
//
|
||||
|
||||
Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:UserLocal' => 'iTop user',
|
||||
'Class:UserLocal+' => 'User authentified by iTop',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.' user',
|
||||
'Class:UserLocal+' => 'User authentified by '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Password',
|
||||
'Class:UserLocal/Attribute:password+' => 'User authentication string',
|
||||
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
'Class:UserLocal' => 'Usuario de iTop',
|
||||
'Class:UserLocal+' => 'Usuario Autenticado vía iTop',
|
||||
'Class:UserLocal' => 'Usuario de '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal+' => 'Usuario Autenticado vía '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Contraseña',
|
||||
'Class:UserLocal/Attribute:password+' => 'Contraseña',
|
||||
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
* @license http://opensource.org/licenses/AGPL-3.0
|
||||
*/
|
||||
Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:UserLocal' => 'Utilisateur iTop',
|
||||
'Class:UserLocal+' => 'Utilisateur authentifié par iTop',
|
||||
'Class:UserLocal' => 'Utilisateur '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal+' => 'Utilisateur authentifié par '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Mot de passe',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
* @license http://opensource.org/licenses/AGPL-3.0
|
||||
*/
|
||||
Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'Class:UserLocal' => 'iTop felhasználó',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.' felhasználó',
|
||||
'Class:UserLocal+' => '',
|
||||
'Class:UserLocal/Attribute:password' => 'Jelszó',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:UserLocal' => 'Utente iTop',
|
||||
'Class:UserLocal+' => 'Utente autenticato da iTop',
|
||||
'Class:UserLocal' => 'Utente '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal+' => 'Utente autenticato da '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Password',
|
||||
'Class:UserLocal/Attribute:password+' => 'user authentication string',
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
* @licence http://opensource.org/licenses/AGPL-3.0
|
||||
*/
|
||||
Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'Class:UserLocal' => 'iTopユーザー',
|
||||
'Class:UserLocal+' => 'iTopローカル認証ユーザー',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.'ユーザー',
|
||||
'Class:UserLocal+' => ITOP_APPLICATION_SHORT.'ローカル認証ユーザー',
|
||||
'Class:UserLocal/Attribute:password' => 'パスワード',
|
||||
'Class:UserLocal/Attribute:password+' => '認証文字列',
|
||||
|
||||
|
||||
@@ -25,10 +25,10 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('NL NL', 'Dutch', 'Nederlands', array(
|
||||
'Class:UserLocal' => 'iTop-gebruiker',
|
||||
'Class:UserLocal+' => 'Gebruiker die aanmeldt met gegevens aangemaakt in het gebruikersbeheer van iTop',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.'-gebruiker',
|
||||
'Class:UserLocal+' => 'Gebruiker die aanmeldt met gegevens aangemaakt in het gebruikersbeheer van '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Wachtwoord',
|
||||
'Class:UserLocal/Attribute:password+' => 'Het wachtwoord waarmee de gebruiker zich aanmeldt bij iTop',
|
||||
'Class:UserLocal/Attribute:password+' => 'Het wachtwoord waarmee de gebruiker zich aanmeldt bij '.ITOP_APPLICATION_SHORT,
|
||||
|
||||
'Class:UserLocal/Attribute:expiration' => 'Wachtwoord verloopt',
|
||||
'Class:UserLocal/Attribute:expiration+' => 'Of het wachtwoord al dan niet verlopen is (vereist een extensie vooraleer dit werkt)',
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:UserLocal' => 'Пользователь iTop',
|
||||
'Class:UserLocal+' => 'Пользователь, аутентифицируемый через iTop',
|
||||
'Class:UserLocal' => 'Пользователь '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal+' => 'Пользователь, аутентифицируемый через '.ITOP_APPLICATION_SHORT,
|
||||
'Class:UserLocal/Attribute:password' => 'Пароль',
|
||||
'Class:UserLocal/Attribute:password+' => 'Строка аутентификации пользователя',
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('SK SK', 'Slovak', 'Slovenčina', array(
|
||||
'Class:UserLocal' => 'iTop užívateľ',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.' užívateľ',
|
||||
'Class:UserLocal+' => '',
|
||||
'Class:UserLocal/Attribute:password' => 'Heslo',
|
||||
'Class:UserLocal/Attribute:password+' => '',
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
// 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' => ITOP_APPLICATION_SHORT.' kullanıcısı',
|
||||
'Class:UserLocal+' => 'Yetki kontorlünü '.ITOP_APPLICATION_SHORT.' tarafından yapılan kullanıcı',
|
||||
'Class:UserLocal/Attribute:password' => 'Şifre',
|
||||
'Class:UserLocal/Attribute:password+' => 'şifre',
|
||||
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
// Class: UserLocal
|
||||
//
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserLocal' => 'iTop 用户',
|
||||
'Class:UserLocal+' => '用户由 iTop 验证身份',
|
||||
'Class:UserLocal' => ITOP_APPLICATION_SHORT.' 用户',
|
||||
'Class:UserLocal+' => '用户由 '.ITOP_APPLICATION_SHORT.' 验证身份',
|
||||
'Class:UserLocal/Attribute:password' => '密码',
|
||||
'Class:UserLocal/Attribute:password+' => '用于验证用户身份的字符串',
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<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>
|
||||
<banner>/images/icons/icons8-apps-tab.svg</banner>
|
||||
<options type="array">
|
||||
<choice>
|
||||
<extension_code>itop-config-mgmt-core</extension_code>
|
||||
@@ -65,7 +65,7 @@
|
||||
<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>
|
||||
<banner>/images/icons/icons8-services.svg</banner>
|
||||
<alternatives type="array">
|
||||
<choice>
|
||||
<extension_code>itop-service-mgmt-enterprise</extension_code>
|
||||
@@ -89,7 +89,7 @@
|
||||
<step>
|
||||
<title>Tickets Management options</title>
|
||||
<description><![CDATA[<h2>Select the type of tickets you want to use in order to respond to user requests and incidents.</h2>]]></description>
|
||||
<banner>./itop-incident-mgmt-itil/images/incident-escalated.png</banner>
|
||||
<banner>/images/icons/icons8-discussion-forum.svg</banner>
|
||||
<alternatives type="array">
|
||||
<choice>
|
||||
<extension_code>itop-ticket-mgmt-simple-ticket</extension_code>
|
||||
@@ -161,7 +161,7 @@
|
||||
<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/images/change.png</banner>
|
||||
<banner>/images/icons/icons8-change.svg</banner>
|
||||
<alternatives type="array">
|
||||
<choice>
|
||||
<extension_code>itop-change-mgmt-simple</extension_code>
|
||||
@@ -192,7 +192,7 @@
|
||||
<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-knownerror-mgmt/images/known-error.png</banner>
|
||||
<banner>/images/icons/icons8-important-book.svg</banner>
|
||||
<options type="array">
|
||||
<choice>
|
||||
<extension_code>itop-kown-error-mgmt</extension_code>
|
||||
|
||||
@@ -40,7 +40,7 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s~~',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -37,7 +37,7 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s~~',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -39,7 +39,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Attachments:Error:FileTooLarge' => 'Die Datei ist zu groß für den Upload: %1$s',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'Die Datei ist leer und kann nicht angehängt werden.
|
||||
Entweder ist die von Ihnen hochdeladene Datei leer,
|
||||
oder melden Sie dem iTop Administrator diesen Fehler, weil eventuell kein ausreichender Speicherplatz zur Verfügung steht',
|
||||
oder melden Sie dem '.ITOP_APPLICATION_SHORT.' Administrator diesen Fehler, weil eventuell kein ausreichender Speicherplatz zur Verfügung steht',
|
||||
'Attachments:Render:Icons' => 'Als Icons anzeigen',
|
||||
'Attachments:Render:Table' => 'Als Liste anzeigen',
|
||||
'UI:Attachments:DropYourFileHint' => 'Dateien in diesem Bereich ablegen...',
|
||||
|
||||
@@ -34,7 +34,7 @@ Dict::Add('EN US', 'English', 'English', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.',
|
||||
'Attachments:Render:Icons' => 'Display as icons',
|
||||
'Attachments:Render:Table' => 'Display as list',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area',
|
||||
|
||||
@@ -37,7 +37,7 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s~~',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -36,7 +36,7 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s~~',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -16,7 +16,7 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Attachments:History_File_Added' => 'Вложение %1$s добавлено.',
|
||||
'Attachments:History_File_Removed' => 'Вложение %1$s удалено.',
|
||||
'Attachments:AddAttachment' => 'Добавить вложение:',
|
||||
'Attachments:UploadNotAllowedOnThisSystem' => 'Загрузка файлов НЕ разрешена в этой системе. За подробностями обратитесь к администратору вашего iTop',
|
||||
'Attachments:UploadNotAllowedOnThisSystem' => 'Загрузка файлов НЕ разрешена в этой системе. За подробностями обратитесь к администратору вашего '.ITOP_APPLICATION_SHORT,
|
||||
'Attachment:Max_Go' => '(Максимальный размер файла: %1$s ГБ)',
|
||||
'Attachment:Max_Mo' => '(Максимальный размер файла: %1$s МБ)',
|
||||
'Attachment:Max_Ko' => '(Максимальный размер файла: %1$s кБ)',
|
||||
@@ -25,7 +25,7 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Attachments:Error:FileTooLarge' => 'Файл слишком велик для загрузки. %1$s',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -37,7 +37,7 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s~~',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -37,7 +37,7 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'Attachments:Error:FileTooLarge' => 'File is too large to be uploaded. %1$s~~',
|
||||
'Attachments:Error:UploadedFileEmpty' => 'The received file is empty and cannot be attached.
|
||||
Either you have pushed an empty file,
|
||||
or ask your iTop administrator if the iTop server disk is full.~~',
|
||||
or ask your '.ITOP_APPLICATION_SHORT.' administrator if the '.ITOP_APPLICATION_SHORT.' server disk is full.~~',
|
||||
'Attachments:Render:Icons' => 'Display as icons~~',
|
||||
'Attachments:Render:Table' => 'Display as list~~',
|
||||
'UI:Attachments:DropYourFileHint' => 'Drop files anywhere in this area~~',
|
||||
|
||||
@@ -31,7 +31,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Attachments:NoAttachment' => '没有附件. ',
|
||||
'Attachments:PreviewNotAvailable' => '该附件类型不支持预览.',
|
||||
'Attachments:Error:FileTooLarge' => '上传的文件过大. %1$s',
|
||||
'Attachments:Error:UploadedFileEmpty' => '收到的文件为空,无法添加. 可能是因为您发送的是空文件,或者咨询 iTop 管理员服务器磁盘是否已满. ',
|
||||
'Attachments:Error:UploadedFileEmpty' => '收到的文件为空,无法添加. 可能是因为您发送的是空文件,或者咨询 '.ITOP_APPLICATION_SHORT.' 管理员服务器磁盘是否已满. ',
|
||||
'Attachments:Render:Icons' => '显示为图标',
|
||||
'Attachments:Render:Table' => '显示为列表',
|
||||
'UI:Attachments:DropYourFileHint' => '将文件拖放到此区域的任意位置',
|
||||
|
||||
@@ -111,6 +111,11 @@ class AttachmentPlugIn implements iApplicationUIExtension, iApplicationObjectExt
|
||||
|
||||
public function OnFormCancel($sTempId)
|
||||
{
|
||||
// Protection against unfortunate massive delete of attachments when a null temp ID is passed
|
||||
if (strlen($sTempId) === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Delete all "pending" attachments for this form
|
||||
$sOQL = 'SELECT Attachment WHERE temp_id = :temp_id';
|
||||
$oSearch = DBObjectSearch::FromOQL($sOQL);
|
||||
|
||||
@@ -170,6 +170,10 @@ JS
|
||||
require_once(dirname(__FILE__).'/dbrestore.class.inc.php');
|
||||
|
||||
$sEnvironment = utils::ReadParam('environment', 'production', false, 'raw_data');
|
||||
$oRestoreMutex = new iTopMutex('restore.'.$sEnvironment);
|
||||
IssueLog::Info("Backup Restore - Acquiring the LOCK 'restore.$sEnvironment'");
|
||||
$oRestoreMutex->Lock();
|
||||
IssueLog::Info('Backup Restore - LOCK acquired, executing...');
|
||||
try
|
||||
{
|
||||
set_time_limit(0);
|
||||
@@ -199,6 +203,7 @@ JS
|
||||
finally
|
||||
{
|
||||
unlink($tokenRealPath);
|
||||
$oRestoreMutex->Unlock();
|
||||
}
|
||||
|
||||
$oPage->output();
|
||||
|
||||
@@ -30,6 +30,9 @@ if (!defined('APPROOT'))
|
||||
}
|
||||
}
|
||||
require_once(APPROOT.'application/application.inc.php');
|
||||
require_once(APPROOT.'application/webpage.class.inc.php');
|
||||
require_once(APPROOT.'application/csvpage.class.inc.php');
|
||||
require_once(APPROOT.'application/clipage.class.inc.php');
|
||||
require_once(APPROOT.'application/ajaxwebpage.class.inc.php');
|
||||
|
||||
require_once(APPROOT.'core/log.class.inc.php');
|
||||
|
||||
@@ -28,8 +28,8 @@ class DBRestore extends DBBackup
|
||||
{
|
||||
parent::__construct($oConfig);
|
||||
|
||||
$this->sDBUser = $this->oConfig->Get('db_user');
|
||||
$this->sDBPwd = $this->oConfig->Get('db_pwd');
|
||||
$this->sDBUser = $oConfig->Get('db_user');
|
||||
$this->sDBPwd = $oConfig->Get('db_pwd');
|
||||
}
|
||||
|
||||
protected function LogInfo($sMsg)
|
||||
@@ -127,88 +127,79 @@ class DBRestore extends DBBackup
|
||||
*/
|
||||
public function RestoreFromCompressedBackup($sFile, $sEnvironment = 'production')
|
||||
{
|
||||
$oRestoreMutex = new iTopMutex('restore.'.$sEnvironment);
|
||||
IssueLog::Info("Backup Restore - Acquiring the LOCK 'restore.$sEnvironment'");
|
||||
$oRestoreMutex->Lock();
|
||||
$this->LogInfo("Starting restore of ".basename($sFile));
|
||||
|
||||
try {
|
||||
IssueLog::Info('Backup Restore - LOCK acquired, executing...');
|
||||
$bReadonlyBefore = SetupUtils::EnterReadOnlyMode(MetaModel::GetConfig());
|
||||
$sNormalizedFile = strtolower(basename($sFile));
|
||||
if (substr($sNormalizedFile, -4) == '.zip')
|
||||
{
|
||||
$this->LogInfo('zip file detected');
|
||||
$oArchive = new ZipArchiveEx();
|
||||
$oArchive->open($sFile);
|
||||
}
|
||||
elseif (substr($sNormalizedFile, -7) == '.tar.gz')
|
||||
{
|
||||
$this->LogInfo('tar.gz file detected');
|
||||
$oArchive = new TarGzArchive($sFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new BackupException('Unsupported format for a backup file: '.$sFile);
|
||||
}
|
||||
|
||||
try {
|
||||
//safe zone for db backup => cron is stopped/ itop in readonly
|
||||
$this->LogInfo("Starting restore of ".basename($sFile));
|
||||
// Load the database
|
||||
//
|
||||
$sDataDir = APPROOT.'data/tmp-backup-'.rand(10000, getrandmax());
|
||||
|
||||
SetupUtils::builddir($sDataDir); // Here is the directory
|
||||
$oArchive->extractTo($sDataDir);
|
||||
|
||||
$sNormalizedFile = strtolower(basename($sFile));
|
||||
if (substr($sNormalizedFile, -4) == '.zip') {
|
||||
$this->LogInfo('zip file detected');
|
||||
$oArchive = new ZipArchiveEx();
|
||||
$oArchive->open($sFile);
|
||||
} elseif (substr($sNormalizedFile, -7) == '.tar.gz') {
|
||||
$this->LogInfo('tar.gz file detected');
|
||||
$oArchive = new TarGzArchive($sFile);
|
||||
} else {
|
||||
throw new BackupException('Unsupported format for a backup file: '.$sFile);
|
||||
}
|
||||
$sDataFile = $sDataDir.'/itop-dump.sql';
|
||||
$this->LoadDatabase($sDataFile);
|
||||
|
||||
// Load the database
|
||||
//
|
||||
$sDataDir = APPROOT.'data/tmp-backup-'.rand(10000, getrandmax());
|
||||
// Update the code
|
||||
//
|
||||
$sDeltaFile = APPROOT.'data/'.$sEnvironment.'.delta.xml';
|
||||
|
||||
SetupUtils::builddir($sDataDir); // Here is the directory
|
||||
$oArchive->extractTo($sDataDir);
|
||||
|
||||
$sDataFile = $sDataDir.'/itop-dump.sql';
|
||||
$this->LoadDatabase($sDataFile);
|
||||
|
||||
// Update the code
|
||||
//
|
||||
$sDeltaFile = APPROOT.'data/'.$sEnvironment.'.delta.xml';
|
||||
|
||||
if (is_file($sDataDir.'/delta.xml')) {
|
||||
// Extract and rename delta.xml => <env>.delta.xml;
|
||||
rename($sDataDir.'/delta.xml', $sDeltaFile);
|
||||
} else {
|
||||
@unlink($sDeltaFile);
|
||||
}
|
||||
if (is_dir(APPROOT.'data/production-modules/')) {
|
||||
try {
|
||||
SetupUtils::rrmdir(APPROOT.'data/production-modules/');
|
||||
} catch (Exception $e) {
|
||||
throw new BackupException("Can't remove production-modules dir", 0, $e);
|
||||
}
|
||||
}
|
||||
if (is_dir($sDataDir.'/production-modules')) {
|
||||
rename($sDataDir.'/production-modules', APPROOT.'data/production-modules/');
|
||||
}
|
||||
|
||||
$sConfigFile = APPROOT.'conf/'.$sEnvironment.'/config-itop.php';
|
||||
@chmod($sConfigFile, 0770); // Allow overwriting the file
|
||||
rename($sDataDir.'/config-itop.php', $sConfigFile);
|
||||
@chmod($sConfigFile, 0440); // Read-only
|
||||
|
||||
try {
|
||||
SetupUtils::rrmdir($sDataDir);
|
||||
} catch (Exception $e) {
|
||||
throw new BackupException("Can't remove data dir", 0, $e);
|
||||
}
|
||||
|
||||
$oEnvironment = new RunTimeEnvironment($sEnvironment);
|
||||
$oEnvironment->CompileFrom($sEnvironment);
|
||||
} finally {
|
||||
if (! $bReadonlyBefore) {
|
||||
SetupUtils::ExitReadOnlyMode();
|
||||
} else {
|
||||
//we are in the scope of main process that needs to handle/keep readonly mode.
|
||||
$this->LogInfo("Keep readonly mode after restore");
|
||||
}
|
||||
if (is_file($sDataDir.'/delta.xml'))
|
||||
{
|
||||
// Extract and rename delta.xml => <env>.delta.xml;
|
||||
rename($sDataDir.'/delta.xml', $sDeltaFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
@unlink($sDeltaFile);
|
||||
}
|
||||
if (is_dir(APPROOT.'data/production-modules/'))
|
||||
{
|
||||
try
|
||||
{
|
||||
SetupUtils::rrmdir(APPROOT.'data/production-modules/');
|
||||
}
|
||||
catch (Exception $e)
|
||||
{
|
||||
throw new BackupException("Can't remove production-modules dir", 0, $e);
|
||||
}
|
||||
}
|
||||
finally
|
||||
if (is_dir($sDataDir.'/production-modules'))
|
||||
{
|
||||
IssueLog::Info('Backup Restore - LOCK released.');
|
||||
$oRestoreMutex->Unlock();
|
||||
rename($sDataDir.'/production-modules', APPROOT.'data/production-modules/');
|
||||
}
|
||||
|
||||
$sConfigFile = APPROOT.'conf/'.$sEnvironment.'/config-itop.php';
|
||||
@chmod($sConfigFile, 0770); // Allow overwriting the file
|
||||
rename($sDataDir.'/config-itop.php', $sConfigFile);
|
||||
@chmod($sConfigFile, 0440); // Read-only
|
||||
|
||||
try
|
||||
{
|
||||
SetupUtils::rrmdir($sDataDir);
|
||||
}
|
||||
catch (Exception $e)
|
||||
{
|
||||
throw new BackupException("Can't remove data dir", 0, $e);
|
||||
}
|
||||
|
||||
$oEnvironment = new RunTimeEnvironment($sEnvironment);
|
||||
$oEnvironment->CompileFrom($sEnvironment);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,8 +29,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'bkp-status-title' => '定时备份',
|
||||
'bkp-status-checks' => '设置与检查',
|
||||
'bkp-mysqldump-ok' => '已找到 mysqldump : %1$s',
|
||||
'bkp-mysqldump-notfound' => 'mysqldump 找不到: %1$s - 请确认它安装在正确的路径, 或者调整iTop 配置文件的选项mysql_bindir.',
|
||||
'bkp-mysqldump-issue' => 'mysqldump 无法运行 (retcode=%1$d): 请确认它安装在正确的路径, 或者调整iTop 配置文件的选项mysql_bindir',
|
||||
'bkp-mysqldump-notfound' => 'mysqldump 找不到: %1$s - 请确认它安装在正确的路径, 或者调整'.ITOP_APPLICATION_SHORT.' 配置文件的选项mysql_bindir.',
|
||||
'bkp-mysqldump-issue' => 'mysqldump 无法运行 (retcode=%1$d): 请确认它安装在正确的路径, 或者调整'.ITOP_APPLICATION_SHORT.' 配置文件的选项mysql_bindir',
|
||||
'bkp-missing-dir' => '目标目录 <code>%1$s</code> 找不到',
|
||||
'bkp-free-disk-space' => '<b>%1$s 空闲</b> 在 <code>%2$s</code>',
|
||||
'bkp-dir-not-writeable' => '%1$s 没有写入权限',
|
||||
|
||||
@@ -1,203 +0,0 @@
|
||||
<?php
|
||||
/**
|
||||
* Copyright (C) 2013-2021 Combodo SARL
|
||||
*
|
||||
* This file is part of iTop.
|
||||
*
|
||||
* iTop is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* iTop 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 Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
*/
|
||||
|
||||
if (!defined('__DIR__')) define('__DIR__', dirname(__FILE__));
|
||||
if (!defined('APPROOT'))
|
||||
{
|
||||
if (file_exists(__DIR__.'/../../approot.inc.php'))
|
||||
{
|
||||
require_once __DIR__.'/../../approot.inc.php'; // When in env-xxxx folder
|
||||
}
|
||||
else
|
||||
{
|
||||
require_once __DIR__.'/../../../approot.inc.php'; // When in datamodels/x.x folder
|
||||
}
|
||||
}
|
||||
require_once(APPROOT.'application/application.inc.php');
|
||||
require_once(APPROOT.'application/ajaxwebpage.class.inc.php');
|
||||
require_once(APPROOT.'core/log.class.inc.php');
|
||||
require_once(APPROOT.'application/startup.inc.php');
|
||||
require_once(dirname(__FILE__).'/dbrestore.class.inc.php');
|
||||
|
||||
class MyDBRestore extends DBRestore
|
||||
{
|
||||
/** @var Page used to send log */
|
||||
protected $oPage;
|
||||
|
||||
protected function LogInfo($sMsg)
|
||||
{
|
||||
$this->oPage->p($sMsg);
|
||||
}
|
||||
|
||||
protected function LogError($sMsg)
|
||||
{
|
||||
$this->oPage->p('Error: '.$sMsg);
|
||||
ToolsLog::Error($sMsg);
|
||||
}
|
||||
|
||||
public function __construct($oPage)
|
||||
{
|
||||
$this->oPage = $oPage;
|
||||
parent::__construct();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Checks if a parameter (possibly empty) was specified when calling this page
|
||||
*/
|
||||
function CheckParam($sParamName)
|
||||
{
|
||||
global $argv;
|
||||
|
||||
if (isset($_REQUEST[$sParamName])) return true; // HTTP parameter either GET or POST
|
||||
if (!is_array($argv)) return false;
|
||||
foreach($argv as $sArg)
|
||||
{
|
||||
if ($sArg == '--'.$sParamName) return true; // Empty command line parameter, long unix style
|
||||
if ($sArg == $sParamName) return true; // Empty command line parameter, Windows style
|
||||
if ($sArg == '-'.$sParamName) return true; // Empty command line parameter, short unix style
|
||||
if (preg_match('/^--'.$sParamName.'=(.*)$/', $sArg, $aMatches)) return true; // Command parameter with a value
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function Usage($oP)
|
||||
{
|
||||
$oP->p('Restore an iTop from a backup file');
|
||||
$oP->p('Parameters:');
|
||||
if (utils::IsModeCLI())
|
||||
{
|
||||
$oP->p('auth_user: login, must be administrator');
|
||||
$oP->p('auth_pwd: ...');
|
||||
}
|
||||
$oP->p('backup_file [optional]: name of the file to store the backup into. Follows the PHP strftime format spec. The following placeholders are available: __HOST__, __DB__, __SUBNAME__');
|
||||
$oP->p('mysql_bindir [optional]: specify the path for mysql executable');
|
||||
|
||||
if (utils::IsModeCLI())
|
||||
{
|
||||
$oP->p('Example: php -q restore.php --auth_user=admin --auth_pwd=myPassw0rd --backup_file=/tmp/backup.zip');
|
||||
$oP->p('Known limitation: the current directory must be the directory of backup.php');
|
||||
}
|
||||
else
|
||||
{
|
||||
$oP->p('Example: .../restore.php?backup_file=/tmp/backup.zip');
|
||||
}
|
||||
}
|
||||
|
||||
function ExitError($oP, $sMessage)
|
||||
{
|
||||
ToolsLog::Error($sMessage);
|
||||
$oP->p($sMessage);
|
||||
$oP->output();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
function ReadMandatoryParam($oP, $sParam)
|
||||
{
|
||||
$sValue = utils::ReadParam($sParam, null, true /* Allow CLI */, 'raw_data');
|
||||
if (is_null($sValue))
|
||||
{
|
||||
ExitError($oP, "ERROR: Missing argument '$sParam'");
|
||||
}
|
||||
return trim($sValue);
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////
|
||||
// Main program
|
||||
|
||||
set_time_limit(0);
|
||||
|
||||
if (utils::IsModeCLI())
|
||||
{
|
||||
$oP = new CLIPage("iTop - iTop Restore");
|
||||
|
||||
SetupUtils::CheckPhpAndExtensionsForCli($oP);
|
||||
}
|
||||
else
|
||||
{
|
||||
$oP = new WebPage("iTop - iTop Restore");
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
utils::UseParamFile();
|
||||
}
|
||||
catch(Exception $e)
|
||||
{
|
||||
ExitError($oP, $e->GetMessage());
|
||||
}
|
||||
|
||||
if (utils::IsModeCLI())
|
||||
{
|
||||
$oP->p(date('Y-m-d H:i:s')." - running backup utility");
|
||||
$sAuthUser = ReadMandatoryParam($oP, 'auth_user');
|
||||
$sAuthPwd = ReadMandatoryParam($oP, 'auth_pwd');
|
||||
$sBackupFile = ReadMandatoryParam($oP, 'backup_file');
|
||||
$bDownloadBackup = false;
|
||||
if (UserRights::CheckCredentials($sAuthUser, $sAuthPwd))
|
||||
{
|
||||
UserRights::Login($sAuthUser); // Login & set the user's language
|
||||
}
|
||||
else
|
||||
{
|
||||
ExitError($oP, "Access restricted or wrong credentials ('$sAuthUser')");
|
||||
}
|
||||
|
||||
if (!is_file($sBackupFile) && is_readable($sBackupFile)){
|
||||
ExitError($oP, "Cannot access backup file ('$sBackupFile')");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
require_once(APPROOT.'application/loginwebpage.class.inc.php');
|
||||
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
|
||||
}
|
||||
|
||||
if (!UserRights::IsAdministrator())
|
||||
{
|
||||
ExitError($oP, "Access restricted to administors");
|
||||
}
|
||||
|
||||
if (CheckParam('?') || CheckParam('h') || CheckParam('help'))
|
||||
{
|
||||
Usage($oP);
|
||||
$oP->output();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
// Interpret strftime specifications (like %Y) and database placeholders
|
||||
$oRestore = new MyDBRestore($oP);
|
||||
$oRestore->SetMySQLBinDir(MetaModel::GetConfig()->GetModuleSetting('itop-backup', 'mysql_bindir', ''));
|
||||
|
||||
$res = false;
|
||||
if (MetaModel::GetConfig()->Get('demo_mode'))
|
||||
{
|
||||
$oP->p("Sorry, iTop is in demonstration mode: the feature is disabled");
|
||||
}
|
||||
else
|
||||
{
|
||||
$sEnvironment = utils::ReadParam('environment', 'production', false, 'raw_data');
|
||||
$oRestore->RestoreFromCompressedBackup($sBackupFile, $sEnvironment);
|
||||
}
|
||||
|
||||
$oP->output();
|
||||
@@ -11,7 +11,7 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
|
||||
'Menu:ConfigEditor' => 'Konfigurace',
|
||||
'config-edit-title' => 'Editor konfiguračního souboru',
|
||||
'config-edit-intro' => 'Při úpravách konfiguračního souboru buďte velice opatrní. Nesprávné nastavení může vést k nedostupnosti iTop',
|
||||
'config-edit-intro' => 'Při úpravách konfiguračního souboru buďte velice opatrní. Nesprávné nastavení může vést k nedostupnosti '.ITOP_APPLICATION_SHORT,
|
||||
'config-apply' => 'Použít',
|
||||
'config-apply-title' => 'Použít (Ctrl+S)',
|
||||
'config-cancel' => 'Zrušit',
|
||||
|
||||
@@ -9,7 +9,7 @@ Dict::Add('FR FR', 'French', 'Français', array(
|
||||
|
||||
'Menu:ConfigEditor' => 'Configuration Générale',
|
||||
'config-edit-title' => 'Editeur du Fichier de Configuration',
|
||||
'config-edit-intro' => 'Attention: une configuration incorrecte peut rendre iTop inopérant pour tous les utilisateurs!',
|
||||
'config-edit-intro' => 'Attention: une configuration incorrecte peut rendre '.ITOP_APPLICATION_SHORT.' inopérant pour tous les utilisateurs!',
|
||||
'config-apply' => 'Enregistrer',
|
||||
'config-apply-title' => 'Enregistrer (Ctrl+S)',
|
||||
'config-cancel' => 'Annuler (restaurer)',
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'iTopUpdate:UI:PageTitle' => 'Anwendungsupgrade',
|
||||
'itop-core-update:UI:SelectUpdateFile' => 'Upgrade-Datei hochladen',
|
||||
'itop-core-update:UI:ConfirmUpdate' => 'Upgrade bestätigen',
|
||||
'itop-core-update:UI:UpdateCoreFiles' => 'Upgrade der iTop-Core-Dateien',
|
||||
'itop-core-update:UI:UpdateCoreFiles' => 'Upgrade der '.ITOP_APPLICATION_SHORT.'-Core-Dateien',
|
||||
'iTopUpdate:UI:MaintenanceModeActive' => 'Die Anwendung läuft im Wartungsmodus, Benutzerzugriffe sind nicht möglich. Führen Sie erneut ein Setup oder Restore der Anwendung aus, um in den normalen Betriebsmodus zurückzukehren.',
|
||||
'itop-core-update:UI:UpdateDone' => 'Upgrade abgeschlossen',
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Wegen geringem verbleibenden Speicherplatz sollte kein Backup mehr erzeugt werden.',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Freier Speicherplatz',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop Speicherplatz',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' Speicherplatz',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Datenbankgröße',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'Maximale Dateigröße für Uploads',
|
||||
|
||||
@@ -94,8 +94,8 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'iTopUpdate:Error:MissingFile' => 'Fehlende Datei: %1$s',
|
||||
'iTopUpdate:Error:CorruptedFile' => 'Datei %1$s ist beschädigt',
|
||||
'iTopUpdate:Error:BadFileFormat' => 'Die Upgradedatei ist keine ZIP-Datei',
|
||||
'iTopUpdate:Error:BadFileContent' => 'Die Upgradedatei ist kein iTop-Paket',
|
||||
'iTopUpdate:Error:BadItopProduct' => 'Die Upgradedatei ist nicht mit dieser iTop-Version kompatibel.',
|
||||
'iTopUpdate:Error:BadFileContent' => 'Die Upgradedatei ist kein '.ITOP_APPLICATION_SHORT.'-Paket',
|
||||
'iTopUpdate:Error:BadItopProduct' => 'Die Upgradedatei ist nicht mit dieser '.ITOP_APPLICATION_SHORT.'-Version kompatibel.',
|
||||
'iTopUpdate:Error:Copy' => 'Fehler, kopieren von \'%1$s\' nach \'%2$s\' nicht möglich',
|
||||
'iTopUpdate:Error:FileNotFound' => 'Datei nicht gefunden',
|
||||
'iTopUpdate:Error:NoFile' => 'Keine Datei angegeben',
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('EN US', 'English', 'English', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'El respaldo no está recomendado por el limitado espacio en el dispositivo',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Espaciolibre en el dispositivo',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'Espacio en diso de iTop',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'Espacio en diso de '.ITOP_APPLICATION_SHORT,
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Espacio en diso de base de datos',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'Máximo tamaño de subida de archivos',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Een backup maken wordt afgeraden doordat er weinig schijfruimte is',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Vrije schijfruimte',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop schijfgebruik',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' schijfgebruik',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database schijfgebruik',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'Maximale bestandsgrootte (upload)',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup não recomendado devido ao espaço em disco limitado',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Espaço em disco disponível',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'Espaço em disco do iTop',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'Espaço em disco do '.ITOP_APPLICATION_SHORT,
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Espaço em disco da base de dados',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'Tamanho máximo de envio de arquivos',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => 'Backup is not recommended due to limited available disk space~~',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => 'Disk free space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop disk space~~',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' disk space~~',
|
||||
'iTopUpdate:UI:DBDiskSpace' => 'Database disk space~~',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => 'File upload max size~~',
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'iTopUpdate:UI:DoBackup:Warning' => '由于磁盘空间不足, 不建议备份',
|
||||
|
||||
'iTopUpdate:UI:DiskFreeSpace' => '磁盘剩余空间',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => 'iTop 的磁盘空间',
|
||||
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.' 的磁盘空间',
|
||||
'iTopUpdate:UI:DBDiskSpace' => '数据库的磁盘空间',
|
||||
'iTopUpdate:UI:FileUploadMaxSize' => '文件上传大小上限',
|
||||
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub',
|
||||
'Menu:iTopHub:Register' => 'Mit dem iTop Hub verbinden',
|
||||
'Menu:iTopHub:Register+' => 'iTop-Instanzen über den iTop Hub updaten',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Zugriff auf die Community-Plattform iTop Hub!</br>Hier finden sie Informationen zu ihren iTop Instanzen, können diese mit personalisierten Tools verwalten und sich Erweiterungen installieren.</br><br/>Durch die Verbindung mit dem iTop Hub, werden Informationen zu Ihrer iTop Instanz zum iTop Hub übertragen.</p>',
|
||||
'Menu:iTopHub:Register+' => ITOP_APPLICATION_SHORT.'-Instanzen über den iTop Hub updaten',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Zugriff auf die Community-Plattform iTop Hub!</br>Hier finden sie Informationen zu ihren '.ITOP_APPLICATION_SHORT.' Instanzen, können diese mit personalisierten Tools verwalten und sich Erweiterungen installieren.</br><br/>Durch die Verbindung mit dem iTop Hub, werden Informationen zu Ihrer '.ITOP_APPLICATION_SHORT.' Instanz zum iTop Hub übertragen.</p>',
|
||||
'Menu:iTopHub:MyExtensions' => 'Installierte Erweiterungen',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Liste der auf ihrer iTop Instanz installierten Erweiterungen',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Liste der auf ihrer '.ITOP_APPLICATION_SHORT.' Instanz installierten Erweiterungen',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Erweiterungen vom iTop Hub beziehen',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Mehr Erweiterungen auf dem iTop Hub entdecken',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Zugriff auf die Community-Plattform iTop Hub!</br>Hier finden sie Informationen zu ihren iTop Instanzen, können diese mit personalisierten Tools verwalten und sich Erweiterungen installieren.</br><br/>Durch die Verbindung mit dem iTop Hub, werden Informationen zu Ihrer iTop Instanz zum iTop Hub übertragen.</p>',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Zugriff auf die Community-Plattform iTop Hub!</br>Hier finden sie Informationen zu ihren '.ITOP_APPLICATION_SHORT.' Instanzen, können diese mit personalisierten Tools verwalten und sich Erweiterungen installieren.</br><br/>Durch die Verbindung mit dem iTop Hub, werden Informationen zu Ihrer '.ITOP_APPLICATION_SHORT.' Instanz zum iTop Hub übertragen.</p>',
|
||||
'iTopHub:GoBtn' => 'Gehe zum iTop Hub',
|
||||
'iTopHub:CloseBtn' => 'Schließen',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Gehe zu www.itophub.io',
|
||||
@@ -46,7 +46,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'iTopHub:Landing:Status' => 'Installationsstatus',
|
||||
'iTopHub:Landing:Install' => 'Erweiterungen werden installiert...',
|
||||
'iTopHub:CompiledOK' => 'Installation erfolgreich',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Fehler während der Installation!<br/>iTop Konfiguration wurde NICHT angepasst.',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Fehler während der Installation!<br/>'.ITOP_APPLICATION_SHORT.' Konfiguration wurde NICHT angepasst.',
|
||||
'iTopHub:FailAuthent' => 'Die Authentifizierung für diese Aktion ist fehlgeschlagen.',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Erweiterungen, die auf dieser Instanz installiert sind',
|
||||
@@ -55,16 +55,16 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Erweiterungen vom iTop Hub',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'Die folgenden Erweiterungen wurden über den iTop Hub installiert:',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'Es gibt keine Erweiterungen dieser Kategorie',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Besuchen Sie den iTop Hub, um Erweiterungen zu finden, die Ihnen helfen, Ihr iTop so zu erweitern, dass es besser zu Ihren Bedürfnissen passt!',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Besuchen Sie den iTop Hub, um Erweiterungen zu finden, die Ihnen helfen, Ihr '.ITOP_APPLICATION_SHORT.' so zu erweitern, dass es besser zu Ihren Bedürfnissen passt!',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Nicht installiert',
|
||||
'iTopHub:GetMoreExtensions' => 'Erweiterungen vom iTop Hub beziehen ...',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Herzlichen Glückwunsch! Die folgenden Erweiterungen wurden vom iTop Hub heruntergeladen und installiert:',
|
||||
'iTopHub:GoBackToITopBtn' => 'Gehe zurück zu iTop',
|
||||
'iTopHub:GoBackToITopBtn' => 'Gehe zurück zu '.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:Uncompressing' => 'Erweiterungen entpacken...',
|
||||
'iTopHub:InstallationWelcome' => 'Installation der Erweiterungen, die vom iTop Hub heruntergeladen wurden.',
|
||||
'iTopHub:DBBackupLabel' => 'Backup der iTop-Instanz',
|
||||
'iTopHub:DBBackupSentence' => 'Vor dem Update ein Backup der iTop Datenbank und der iTop Konfiguration durchführen.',
|
||||
'iTopHub:DBBackupLabel' => 'Backup der '.ITOP_APPLICATION_SHORT.'-Instanz',
|
||||
'iTopHub:DBBackupSentence' => 'Vor dem Update ein Backup der iTop Datenbank und der '.ITOP_APPLICATION_SHORT.' Konfiguration durchführen.',
|
||||
'iTopHub:DeployBtn' => 'Installieren!',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Backup durchführen...',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s ist bereits installiert. Es wird keine Änderung durchgeführt.',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Aktualisierung von Version %1$s auf Version %2$s.',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'DOWNGRADE von Version %1$s auf Version %2$s.',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'Backup der iTop-Instanz...',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'Backup der '.ITOP_APPLICATION_SHORT.'-Instanz...',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation der Erweiterungen',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'Diese Erweiterung kann nicht installiert werden, da Abhängigkeiten nicht erfüllt werden.',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The Erweiterung benötigt folgende(s) Modul(e): %1$s',
|
||||
|
||||
@@ -25,13 +25,13 @@ Dict::Add('EN US', 'English', 'English', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub',
|
||||
'iTopHub:CloseBtn' => 'Close',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io',
|
||||
@@ -47,21 +47,21 @@ Dict::Add('EN US', 'English', 'English', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup',
|
||||
@@ -73,7 +73,7 @@ Dict::Add('EN US', 'English', 'English', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub',
|
||||
'Menu:iTopHub:Register' => 'Conectar a iTop Hub',
|
||||
'Menu:iTopHub:Register+' => 'Ir a iTop Hub para actualizar su instancia de iTop',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Obtenga acceso a la plataforma comunitaria iTop Hub!</br>Encuentre todo el contenido e información que necesite, adminitre sus instancias a través de herramientas personalizadas e instale más extensiones.</br><br/>Mediante la conexión al Hub desde esta página, usted compartirá información acerca de esta instancia de iTop en el Hub.</p>',
|
||||
'Menu:iTopHub:Register+' => 'Ir a iTop Hub para actualizar su instancia de '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:Register:Description' => '<p>Obtenga acceso a la plataforma comunitaria iTop Hub!</br>Encuentre todo el contenido e información que necesite, adminitre sus instancias a través de herramientas personalizadas e instale más extensiones.</br><br/>Mediante la conexión al Hub desde esta página, usted compartirá información acerca de esta instancia de '.ITOP_APPLICATION_SHORT.' en el Hub.</p>',
|
||||
'Menu:iTopHub:MyExtensions' => 'Extensiones instaladas',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Vea la lista de extensiones instalada en esta instancia de iTop',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Vea la lista de extensiones instalada en esta instancia de '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Obtener extensiones de iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Navegue por más extensiones en iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Vea en "iTop Hub’s store", su único lugar para encontrar extensiones de iTop.</br>Encuentre aquellas que le ayuden a personalizar y adaptar iTop a sus procesos.</br><br/>Mediante la conexión al Hub desde esta página, usted compartirá información acerca de esta instancia de iTop en el Hub.</p>',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Vea en "iTop Hub’s store", su único lugar para encontrar extensiones de '.ITOP_APPLICATION_SHORT.'.</br>Encuentre aquellas que le ayuden a personalizar y adaptar '.ITOP_APPLICATION_SHORT.' a sus procesos.</br><br/>Mediante la conexión al Hub desde esta página, usted compartirá información acerca de esta instancia de '.ITOP_APPLICATION_SHORT.' en el Hub.</p>',
|
||||
'iTopHub:GoBtn' => 'Ir a iTop Hub',
|
||||
'iTopHub:CloseBtn' => 'Cerrar',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Ir a www.itophub.io',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
'iTopHub:Landing:Status' => 'Estatus de Instalación',
|
||||
'iTopHub:Landing:Install' => 'Instalando extensiones...',
|
||||
'iTopHub:CompiledOK' => 'Compilación éxitosa.',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detectado durante la instalación!<br/>La configuración de iTop NO fue modificada.',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detectado durante la instalación!<br/>La configuración de '.ITOP_APPLICATION_SHORT.' NO fue modificada.',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensiones instaladas en esta instancia',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensiones instaladas manualmente',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'Las siguientes extensiones fueron instaladas copiandolas manualmente en el directorio %1$s de iTop:',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'Las siguientes extensiones fueron instaladas copiandolas manualmente en el directorio %1$s de '.ITOP_APPLICATION_SHORT.':',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensiones instaladas desde iTop Hub',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'Las siguientes extensiones fueron instaladas de iTop Hub:',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'No hay extensiones en está categoría',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Navegue en iTop Hub para encontrar aquellas que le ayuden a personalizar y adaptar iTop a sus procesos !',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Navegue en iTop Hub para encontrar aquellas que le ayuden a personalizar y adaptar '.ITOP_APPLICATION_SHORT.' a sus procesos !',
|
||||
'iTopHub:ExtensionNotInstalled' => 'No instalada',
|
||||
'iTopHub:GetMoreExtensions' => 'Obtener extensiones de iTop Hub...',
|
||||
|
||||
'iTopHub:LandingWelcome' => '¡Felicidades! Las siguientes extensiones fueron descargadas de iTop Hub e instaladas en su iTop.',
|
||||
'iTopHub:GoBackToITopBtn' => 'Regresar a iTop',
|
||||
'iTopHub:LandingWelcome' => '¡Felicidades! Las siguientes extensiones fueron descargadas de iTop Hub e instaladas en su '.ITOP_APPLICATION_SHORT.'.',
|
||||
'iTopHub:GoBackToITopBtn' => 'Regresar a '.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:Uncompressing' => 'Descomprimiendo extensiones...',
|
||||
'iTopHub:InstallationWelcome' => 'Instalación de las extensiones descargadas de iTop Hub',
|
||||
'iTopHub:DBBackupLabel' => 'Respaldo de Instancia',
|
||||
'iTopHub:DBBackupSentence' => 'Realice un respaldo de la base de datos y configuración de iTop antes de actualizar.',
|
||||
'iTopHub:DBBackupSentence' => 'Realice un respaldo de la base de datos y configuración de '.ITOP_APPLICATION_SHORT.' antes de actualizar.',
|
||||
'iTopHub:DeployBtn' => 'Instalar !',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Respaldo de Instancia...',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s ya está instalada. Nada por cambiar.',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Se <b>actualizará</b> de la versión %1$s a la versión %2$s.',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Se <b>DEGRADARÄ</b> de la versión %1$s a la versión %2$s.',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'Respaldo de Instancia de iTop...',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'Respaldo de Instancia de '.ITOP_APPLICATION_SHORT.'...',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Instalación de extensiones',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'Esta extensión no puede ser instalad porque no cumple con las dependencias.',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'La extensión require el/los módulo(s): %1$s',
|
||||
|
||||
@@ -9,7 +9,7 @@ Dict::Add('FR FR', 'French', 'Français', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub',
|
||||
'Menu:iTopHub:Register' => 'Se connecter à iTop Hub',
|
||||
'Menu:iTopHub:Register+' => 'Connectez-vous à iTop Hub pour enregistrer cette instance d\'iTop',
|
||||
'Menu:iTopHub:Register+' => 'Connectez-vous à iTop Hub pour enregistrer cette instance d\''.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:Register:Description' => '<p>Connectez-vous à la communauté iTop Hub!</br>Trouvez tout le contenu dont vous avez besoin, gérer vos instances d\'iTop depuis un tableau de bord centralisé et déployez de nouvelles extensions.</br><br/>En vous connectant au Hub depuis cette page, vous transmettez au Hub des informations relatives à cette instance d\'iTop.</p>',
|
||||
'Menu:iTopHub:MyExtensions' => 'Extensions déployées',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Voir la liste des extensions déployes sur cette instance',
|
||||
@@ -45,11 +45,11 @@ Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'iTopHub:GetMoreExtensions' => 'Obtenir des extensions depuis iTop Hub...',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Félicitations! Les extensions ci-dessous ont été téléchargées depuis iTop Hub et installées sur cette instance d\'iTop.',
|
||||
'iTopHub:GoBackToITopBtn' => 'Retourner dans iTop',
|
||||
'iTopHub:GoBackToITopBtn' => 'Retourner dans '.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:Uncompressing' => 'Décompression des extensions...',
|
||||
'iTopHub:InstallationWelcome' => 'Installation des extensions téléchargées depuis iTop Hub',
|
||||
'iTopHub:DBBackupLabel' => 'Sauvegarde de l\'instance iTop',
|
||||
'iTopHub:DBBackupSentence' => 'Faire une sauvegarde de la base de données et des paramétrages d\'iTop',
|
||||
'iTopHub:DBBackupLabel' => 'Sauvegarde de l\'instance '.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:DBBackupSentence' => 'Faire une sauvegarde de la base de données et des paramétrages d\''.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:DeployBtn' => 'Déployer !',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Sauvegarde de l\'instance...',
|
||||
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -27,7 +27,7 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
@@ -60,7 +60,7 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
@@ -72,7 +72,7 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -61,7 +61,7 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', array(
|
||||
'iTopHub:GetMoreExtensions' => 'Extensies zoeken op iTop Hub...',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Gefeliciteerd! Deze extensies werden gedownload via iTop Hub en op deze iTop geïnstalleerd.',
|
||||
'iTopHub:GoBackToITopBtn' => 'Terug naar iTop',
|
||||
'iTopHub:GoBackToITopBtn' => 'Terug naar '.ITOP_APPLICATION_SHORT,
|
||||
'iTopHub:Uncompressing' => 'Extensies aan het uitpakken...',
|
||||
'iTopHub:InstallationWelcome' => 'Installatie van extensies via iTop Hub',
|
||||
'iTopHub:DBBackupLabel' => 'Backup van deze omgeving',
|
||||
|
||||
@@ -26,12 +26,12 @@ Dict::Add('PL PL', 'Polish', 'Polski', array(
|
||||
'Menu:iTopHub' => 'iTop Hub',
|
||||
'Menu:iTopHub:Register' => 'Połącz się z iTop Hub',
|
||||
'Menu:iTopHub:Register+' => 'Przejdź do iTop Hub, aby zaktualizować swoją instancję '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:Register:Description' => '<p>Uzyskaj dostęp do swojej platformy społecznościowej iTop Hub!</br>Znajdź wszystkie potrzebne treści i informacje, zarządzaj swoimi instancjami za pomocą spersonalizowanych narzędzi i zainstaluj więcej rozszerzeń.</br><br/>Łącząc się z Centrum z tej strony, będziesz przesyłać informacje o tej instancji iTop do Centrum.</p>',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Uzyskaj dostęp do swojej platformy społecznościowej iTop Hub!</br>Znajdź wszystkie potrzebne treści i informacje, zarządzaj swoimi instancjami za pomocą spersonalizowanych narzędzi i zainstaluj więcej rozszerzeń.</br><br/>Łącząc się z Centrum z tej strony, będziesz przesyłać informacje o tej instancji '.ITOP_APPLICATION_SHORT.' do Centrum.</p>',
|
||||
'Menu:iTopHub:MyExtensions' => 'Wdrożone rozszerzenia',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Zobacz listę rozszerzeń wdrożonych w tej instancji '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Pobierz rozszerzenia z iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Wyszukaj więcej rozszerzeń w iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Zajrzyj do sklepu iTop Hub, jedynego miejsca, w którym można znaleźć wspaniałe rozszerzenia iTop!</br>Znajdź te, które pomogą Ci dostosować i dostosować iTop do Twoich procesów.</br><br/>Łącząc się z Centrum z tej strony, będziesz przesyłać informacje o tej instancji iTop do Centrum.</p>',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Zajrzyj do sklepu iTop Hub, jedynego miejsca, w którym można znaleźć wspaniałe rozszerzenia '.ITOP_APPLICATION_SHORT.'!</br>Znajdź te, które pomogą Ci dostosować i dostosować '.ITOP_APPLICATION_SHORT.' do Twoich procesów.</br><br/>Łącząc się z Centrum z tej strony, będziesz przesyłać informacje o tej instancji '.ITOP_APPLICATION_SHORT.' do Centrum.</p>',
|
||||
'iTopHub:GoBtn' => 'Przejdź do iTop Hub',
|
||||
'iTopHub:CloseBtn' => 'Zamknij',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Idź do www.itophub.io',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -12,13 +12,13 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub',
|
||||
'Menu:iTopHub:Register' => 'Подключение к iTop Hub',
|
||||
'Menu:iTopHub:Register+' => 'Перейдите в iTop Hub, чтобы обновить ваш экземпляр iTop',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Перейдите в iTop Hub, чтобы обновить ваш экземпляр '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Установленные расширения',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Расширения, развернутые на данном экземпляре iTop',
|
||||
'Menu:iTopHub:MyExtensions+' => 'Расширения, развернутые на данном экземпляре '.ITOP_APPLICATION_SHORT,
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Получить расширения из iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Найдите дополнительные расширения на iTop Hub',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -34,25 +34,25 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -60,7 +60,7 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -24,13 +24,13 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
// Dictionary entries go here
|
||||
'Menu:iTopHub' => 'iTop Hub~~',
|
||||
'Menu:iTopHub:Register' => 'Connect to iTop Hub~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your iTop instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:Register+' => 'Go to iTop Hub to update your '.ITOP_APPLICATION_SHORT.' instance~~',
|
||||
'Menu:iTopHub:Register:Description' => '<p>Get access to your community platform iTop Hub!</br>Find all the content and information you need, manage your instances through personalized tools & install more extensions.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:MyExtensions' => 'Deployed extensions~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of iTop~~',
|
||||
'Menu:iTopHub:MyExtensions+' => 'See the list of extensions deployed on this instance of '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'Menu:iTopHub:BrowseExtensions' => 'Get extensions from iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions+' => 'Browse for more extensions on iTop Hub~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful iTop extensions !</br>Find the ones that will help you customize and adapt iTop to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this iTop instance into the Hub.</p>~~',
|
||||
'Menu:iTopHub:BrowseExtensions:Description' => '<p>Look into iTop Hub’s store, your one stop place to find wonderful '.ITOP_APPLICATION_SHORT.' extensions !</br>Find the ones that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes.</br><br/>By connecting to the Hub from this page, you will push information about this '.ITOP_APPLICATION_SHORT.' instance into the Hub.</p>~~',
|
||||
'iTopHub:GoBtn' => 'Go To iTop Hub~~',
|
||||
'iTopHub:CloseBtn' => 'Close~~',
|
||||
'iTopHub:GoBtn:Tooltip' => 'Jump to www.itophub.io~~',
|
||||
@@ -46,25 +46,25 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'iTopHub:Landing:Status' => 'Deployment status~~',
|
||||
'iTopHub:Landing:Install' => 'Deploying extensions...~~',
|
||||
'iTopHub:CompiledOK' => 'Compilation successful.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>iTop configuration has NOT been modified.~~',
|
||||
'iTopHub:ConfigurationSafelyReverted' => 'Error detected during deployment!<br/>'.ITOP_APPLICATION_SHORT.' configuration has NOT been modified.~~',
|
||||
'iTopHub:FailAuthent' => 'Authentication failed for this action.~~',
|
||||
|
||||
'iTopHub:InstalledExtensions' => 'Extensions deployed on this instance~~',
|
||||
'iTopHub:ExtensionCategory:Manual' => 'Extensions deployed manually~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of iTop:~~',
|
||||
'iTopHub:ExtensionCategory:Manual+' => 'The following extensions have been deployed by copying them manually in the %1$s directory of '.ITOP_APPLICATION_SHORT.':~~',
|
||||
'iTopHub:ExtensionCategory:Remote' => 'Extensions deployed from iTop Hub~~',
|
||||
'iTopHub:ExtensionCategory:Remote+' => 'The following extensions have been deployed from iTop Hub:~~',
|
||||
'iTopHub:NoExtensionInThisCategory' => 'There is no extension in this category~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt iTop to your processes !~~',
|
||||
'iTopHub:NoExtensionInThisCategory+' => 'Browse iTop Hub to find the extensions that will help you customize and adapt '.ITOP_APPLICATION_SHORT.' to your processes !~~',
|
||||
'iTopHub:ExtensionNotInstalled' => 'Not installed~~',
|
||||
'iTopHub:GetMoreExtensions' => 'Get extensions from iTop Hub...~~',
|
||||
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your iTop.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to iTop~~',
|
||||
'iTopHub:LandingWelcome' => 'Congratulations! The following extensions were downloaded from iTop Hub and deployed into your '.ITOP_APPLICATION_SHORT.'.~~',
|
||||
'iTopHub:GoBackToITopBtn' => 'Go Back to '.ITOP_APPLICATION_SHORT.'~~',
|
||||
'iTopHub:Uncompressing' => 'Uncompressing extensions...~~',
|
||||
'iTopHub:InstallationWelcome' => 'Installation of the extensions downloaded from iTop Hub~~',
|
||||
'iTopHub:DBBackupLabel' => 'Instance backup~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and iTop configuration before updating~~',
|
||||
'iTopHub:DBBackupSentence' => 'Do a backup of the database and '.ITOP_APPLICATION_SHORT.' configuration before updating~~',
|
||||
'iTopHub:DeployBtn' => 'Deploy !~~',
|
||||
'iTopHub:DatabaseBackupProgress' => 'Instance backup...~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s already installed. Nothing will change.~~',
|
||||
'iTopHub:InstallationEffect:Upgrade' => 'Will be <b>upgraded</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationEffect:Downgrade' => 'Will be <b>DOWNGRADED</b> from version %1$s to version %2$s.~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' Instance backup...~~',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => 'Installation of the extensions~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => 'This extension cannot be installed because of unmet dependencies.~~',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => 'The extension requires the module(s): %1$s~~',
|
||||
|
||||
@@ -72,7 +72,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'iTopHub:InstallationEffect:NoChange' => 'Version: %1$s 已安装. 保持不变.',
|
||||
'iTopHub:InstallationEffect:Upgrade' => '将从 version %1$s <b>升级</b> 到 version %2$s.',
|
||||
'iTopHub:InstallationEffect:Downgrade' => '将从 version %1$s <b>降级</b> 到 version %2$s.',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => 'iTop 本机备份...',
|
||||
'iTopHub:InstallationProgress:DatabaseBackup' => ITOP_APPLICATION_SHORT.' 本机备份...',
|
||||
'iTopHub:InstallationProgress:ExtensionsInstallation' => '安装扩展',
|
||||
'iTopHub:InstallationEffect:MissingDependencies' => '扩展无法安装,因为未知的依赖.',
|
||||
'iTopHub:InstallationEffect:MissingDependencies_Details' => '该扩展依赖模块: %1$s',
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
*/
|
||||
// Portal
|
||||
Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'Page:DefaultTitle' => 'Portal do usuário iTop',
|
||||
'Page:DefaultTitle' => 'Portal do usuário '.ITOP_APPLICATION_SHORT,
|
||||
'Page:PleaseWait' => 'Aguarde...',
|
||||
'Page:Home' => 'Home',
|
||||
'Page:GoPortalHome' => 'Página Inicial',
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
*/
|
||||
// Portal
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Page:DefaultTitle' => 'iTop 用户门户',
|
||||
'Page:DefaultTitle' => ITOP_APPLICATION_SHORT.' 用户门户',
|
||||
'Page:PleaseWait' => '请稍后...',
|
||||
'Page:Home' => '主页',
|
||||
'Page:GoPortalHome' => '主页面',
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
//
|
||||
Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'portal:itop-portal' => 'Standard portal~~', // This is the portal name that will be displayed in portal dispatcher (eg. URL in menus)
|
||||
'Page:DefaultTitle' => 'iTop - Portal do Usuário',
|
||||
'Page:DefaultTitle' => ITOP_APPLICATION_SHORT.' - Portal do Usuário',
|
||||
'Brick:Portal:UserProfile:Title' => 'Meu Perfil',
|
||||
'Brick:Portal:NewRequest:Title' => 'Nova Solicitação',
|
||||
'Brick:Portal:NewRequest:Title+' => '<p>Precisa de ajuda?</p><p>Escolha no Catálogo de Serviços e envie sua solicitação para nossas equipes de suporte.</p>',
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
//
|
||||
Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'portal:itop-portal' => '标准门户', // This is the portal name that will be displayed in portal dispatcher (eg. URL in menus)
|
||||
'Page:DefaultTitle' => 'iTop - 用户门户',
|
||||
'Page:DefaultTitle' => ITOP_APPLICATION_SHORT.' - 用户门户',
|
||||
'Brick:Portal:UserProfile:Title' => '我的资料',
|
||||
'Brick:Portal:NewRequest:Title' => '新建工单',
|
||||
'Brick:Portal:NewRequest:Title+' => '<p>需要帮助?</p><p>选择子服务,然后提交工单给我们的支持团队.</p>',
|
||||
|
||||
@@ -115,8 +115,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserRequest/Attribute:origin/Value:monitoring+' => '监控',
|
||||
'Class:UserRequest/Attribute:origin/Value:phone' => '电话',
|
||||
'Class:UserRequest/Attribute:origin/Value:phone+' => '电话',
|
||||
'Class:UserRequest/Attribute:origin/Value:portal' => 'iTop',
|
||||
'Class:UserRequest/Attribute:origin/Value:portal+' => 'iTop',
|
||||
'Class:UserRequest/Attribute:origin/Value:portal' => ITOP_APPLICATION_SHORT,
|
||||
'Class:UserRequest/Attribute:origin/Value:portal+' => ITOP_APPLICATION_SHORT,
|
||||
'Class:UserRequest/Attribute:approver_id' => '批准人',
|
||||
'Class:UserRequest/Attribute:approver_id+' => '',
|
||||
'Class:UserRequest/Attribute:approver_email' => '邮箱',
|
||||
|
||||
@@ -121,8 +121,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
||||
'Class:UserRequest/Attribute:origin/Value:monitoring+' => '监控',
|
||||
'Class:UserRequest/Attribute:origin/Value:phone' => '电话',
|
||||
'Class:UserRequest/Attribute:origin/Value:phone+' => '电话',
|
||||
'Class:UserRequest/Attribute:origin/Value:portal' => 'iTop',
|
||||
'Class:UserRequest/Attribute:origin/Value:portal+' => 'iTop',
|
||||
'Class:UserRequest/Attribute:origin/Value:portal' => ITOP_APPLICATION_SHORT,
|
||||
'Class:UserRequest/Attribute:origin/Value:portal+' => ITOP_APPLICATION_SHORT,
|
||||
'Class:UserRequest/Attribute:approver_id' => '审核人',
|
||||
'Class:UserRequest/Attribute:approver_id+' => '',
|
||||
'Class:UserRequest/Attribute:approver_email' => '邮箱',
|
||||
|
||||
@@ -64,7 +64,7 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview~~',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization~~',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type~~',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization~~',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization~~',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -54,7 +54,7 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview~~',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization~~',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type~~',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization~~',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization~~',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -63,7 +63,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
||||
'Class:Organization/Attribute:overview' => 'Überblick',
|
||||
'Organization:Overview:FunctionalCIs' => 'CIs dieser Organisation',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'nach Typ',
|
||||
'Organization:Overview:Users' => 'iTop Benutzer innerhalb dieser Organisation',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Benutzer innerhalb dieser Organisation',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -76,7 +76,7 @@ Dict::Add('EN US', 'English', 'English', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -58,7 +58,7 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview~~',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization~~',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type~~',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization~~',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization~~',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -85,7 +85,7 @@ Dict::Add('FR FR', 'French', 'Français', array(
|
||||
'Class:Organization/Attribute:overview' => 'Tableau de bord',
|
||||
'Organization:Overview:FunctionalCIs' => 'Infrastructure de cette organisation',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'par type',
|
||||
'Organization:Overview:Users' => 'Utilisateurs iTop dans cette organisation',
|
||||
'Organization:Overview:Users' => 'Utilisateurs '.ITOP_APPLICATION_SHORT.' dans cette organisation',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -56,7 +56,7 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview~~',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization~~',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type~~',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization~~',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization~~',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -56,7 +56,7 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview~~',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization~~',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type~~',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization~~',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization~~',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -56,7 +56,7 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overview~~',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuration items of this organization~~',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'by type~~',
|
||||
'Organization:Overview:Users' => 'iTop Users within this organization~~',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.' Users within this organization~~',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -63,7 +63,7 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', array(
|
||||
'Class:Organization/Attribute:overview' => 'Overzicht',
|
||||
'Organization:Overview:FunctionalCIs' => 'Configuratie-items van deze organisatie',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'per type',
|
||||
'Organization:Overview:Users' => 'iTop-gebruikers in deze organisatie',
|
||||
'Organization:Overview:Users' => ITOP_APPLICATION_SHORT.'-gebruikers in deze organisatie',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -57,7 +57,7 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
||||
'Class:Organization/Attribute:overview' => 'Visão geral',
|
||||
'Organization:Overview:FunctionalCIs' => 'Itens de configuração desta organização',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'por tipo',
|
||||
'Organization:Overview:Users' => 'Usuários iTop dentro desta organização',
|
||||
'Organization:Overview:Users' => 'Usuários '.ITOP_APPLICATION_SHORT.' dentro desta organização',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
@@ -44,7 +44,7 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
||||
'Class:Organization/Attribute:overview' => 'Обзор',
|
||||
'Organization:Overview:FunctionalCIs' => 'Конфигурационные единицы этой организации',
|
||||
'Organization:Overview:FunctionalCIs:subtitle' => 'по типу',
|
||||
'Organization:Overview:Users' => 'Пользователи iTop этой организации',
|
||||
'Organization:Overview:Users' => 'Пользователи '.ITOP_APPLICATION_SHORT.' этой организации',
|
||||
));
|
||||
|
||||
//
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user