Index: include/classes/import/CXmlImport18.php =================================================================== --- include/classes/import/CXmlImport18.php (revision 27175) +++ include/classes/import/CXmlImport18.php (working copy) @@ -300,8 +300,8 @@ $root = $doc->appendChild(new DOMElement('zabbix_export')); $root->setAttributeNode(new DOMAttr('version', '1.0')); - $root->setAttributeNode(new DOMAttr('date', zbx_date2str(S_EXPORT_DATE_ATTRIBUTE_DATE_FORMAT))); - $root->setAttributeNode(new DOMAttr('time', zbx_date2str(S_EXPORT_TIME_ATTRIBUTE_DATE_FORMAT))); + $root->setAttributeNode(new DOMAttr('date', zbx_date2str(_('d.m.y')))); + $root->setAttributeNode(new DOMAttr('time', zbx_date2str(_('H.i')))); return $root; } @@ -388,17 +388,17 @@ foreach(libxml_get_errors() as $error){ switch($error->level){ case LIBXML_ERR_WARNING: - $text .= _('XML file contains errors').'. Warning '.$error->code.': '; + $text .= _s('XML file contains errors. Warning %d: ', $error->code); break; case LIBXML_ERR_ERROR: - $text .= _('XML file contains errors').'. Error '.$error->code.': '; + $text .= _s('XML file contains errors. Error %d: ', $error->code); break; case LIBXML_ERR_FATAL: - $text .= _('XML file contains errors').'. Fatal Error '.$error->code.': '; + $text .= _s('XML file contains errors. Fatal Error %d: ', $error->code); break; } - $text .= trim($error->message) . ' [ Line: '.$error->line.' | Column: '.$error->column.' ]'; + $text .= trim($error->message) . _s(' [ Line: %1$d | Column: %2$d ]', $error->line, $error->column); break; } libxml_clear_errors(); @@ -434,14 +434,14 @@ if($exists && isset($rules['screens']['updateExisting'])){ $db_screens = API::Screen()->get(array('filter' => array('name' => $screen['name']))); - if(empty($db_screens)) throw new Exception(_('No permissions for screen').' "'.$screen['name'].'" import'); + if(empty($db_screens)) throw new Exception(_s('No permissions for screen "%1$s" import', $screen['name'])); $db_screen = reset($db_screens); $screen['screenid'] = $db_screen['screenid']; } else if($exists || !isset($rules['screens']['createMissing'])){ - info('Screen ['.$screen['name'].'] skipped - user rule'); + info(_s('Screen [%1$s] skipped - user rule', $screen['name'])); unset($importScreens[$mnum]); continue; // break if not update exist } @@ -462,7 +462,7 @@ if(is_array($screenitem['resourceid'])){ $db_hostgroups = API::HostGroup()->getObjects($screenitem['resourceid']); if(empty($db_hostgroups)){ - $error = S_CANNOT_FIND_HOSTGROUP.' "'.$nodeCaption.$screenitem['resourceid']['name'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _s('Cannot find hostgroup "%1$s" used in exported screen "%2$s"', $nodeCaption.$screenitem['resourceid']['name'], $screen['name']); throw new Exception($error); } @@ -473,7 +473,7 @@ case SCREEN_RESOURCE_HOST_TRIGGERS: $db_hosts = API::Host()->getObjects($screenitem['resourceid']); if(empty($db_hosts)){ - $error = S_CANNOT_FIND_HOST.' "'.$nodeCaption.$screenitem['resourceid']['host'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _('Cannot find host "%1$s" used in exported screen "%2$s"', $nodeCaption.$screenitem['resourceid']['host'], $screen['name']); throw new Exception($error); } @@ -483,7 +483,7 @@ case SCREEN_RESOURCE_GRAPH: $db_graphs = API::Graph()->getObjects($screenitem['resourceid']); if(empty($db_graphs)){ - $error = S_CANNOT_FIND_GRAPH.' "'.$nodeCaption.$screenitem['resourceid']['host'].':'.$screenitem['resourceid']['name'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _('Cannot find graph "%1$s:%2$s" used in exported screen "%3$s"', $nodeCaption.$screenitem['resourceid']['host'], $screenitem['resourceid']['name'], $screen['name']); throw new Exception($error); } @@ -495,7 +495,7 @@ $db_items = API::Item()->getObjects($screenitem['resourceid']); if(empty($db_items)){ - $error = S_CANNOT_FIND_ITEM.' "'.$nodeCaption.$screenitem['resourceid']['host'].':'.$screenitem['resourceid']['key_'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _('Cannot find item "%1$s:%2$s" used in exported screen "%3$s"', $nodeCaption.$screenitem['resourceid']['host'], $screenitem['resourceid']['key_'], $screen['name']); throw new Exception($error); } @@ -505,7 +505,7 @@ case SCREEN_RESOURCE_MAP: $db_sysmaps = API::Map()->getObjects($screenitem['resourceid']); if(empty($db_sysmaps)){ - $error = S_CANNOT_FIND_MAP.' "'.$nodeCaption.$screenitem['resourceid']['name'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _('Cannot find map "%1$s" used in exported screen "%2$s"', $nodeCaption.$screenitem['resourceid']['name'], $screen['name']); throw new Exception($error); } @@ -515,7 +515,7 @@ case SCREEN_RESOURCE_SCREEN: $db_screens = API::Screen()->get(array('screenids' => $screenitem['resourceid'])); if(empty($db_screens)){ - $error = S_CANNOT_FIND_SCREEN.' "'.$nodeCaption.$screenitem['resourceid']['name'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _('Cannot find screen "%1$s" used in exported screen "%2$s"', $nodeCaption.$screenitem['resourceid']['name'], $screen['name']); throw new Exception($error); } @@ -628,13 +628,13 @@ if($exists && isset($rules['maps']['updateExisting'])){ $db_maps = API::Map()->getObjects(array('name' => $sysmap['name'])); - if(empty($db_maps)) throw new Exception(_('No permissions for map').' ['.$sysmap['name'].'] import'); + if(empty($db_maps)) throw new Exception(_s('No permissions for map [%1$s] import', $sysmap['name'])); $db_map = reset($db_maps); $sysmap['sysmapid'] = $db_map['sysmapid']; } else if($exists || !isset($rules['maps']['createMissing'])){ - info('Map ['.$sysmap['name'].'] skipped - user rule'); + info(_s('Map [%1$s] skipped - user rule', $sysmap['name'])); unset($importMaps[$mnum]); continue; // break if not update updateExisting } @@ -660,7 +660,7 @@ $image = getImageByIdent($sysmap['backgroundid']); if(!$image){ - error(S_CANNOT_FIND_BACKGROUND_IMAGE.' "'.$sysmap['backgroundid']['name'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'); + error(_s('Cannot find background image "%1$s" used in exported screen "%2$s"', $sysmap['backgroundid']['name'], $sysmap['name'])); $sysmap['backgroundid'] = 0; } else{ @@ -689,7 +689,7 @@ case SYSMAP_ELEMENT_TYPE_MAP: $db_sysmaps = API::Map()->getObjects($selement['elementid']); if(empty($db_sysmaps)){ - $error = S_CANNOT_FIND_MAP.' "'.$nodeCaption.$selement['elementid']['name'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'; + $error = _s('Cannot find map "%1$s" used in exported map "%2$s"', $nodeCaption.$selement['elementid']['name'], $sysmap['name']); throw new Exception($error); } @@ -699,7 +699,7 @@ case SYSMAP_ELEMENT_TYPE_HOST_GROUP: $db_hostgroups = API::HostGroup()->getObjects($selement['elementid']); if(empty($db_hostgroups)){ - $error = S_CANNOT_FIND_HOSTGROUP.' "'.$nodeCaption.$selement['elementid']['name'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'; + $error = _s('Cannot find hostgroup "%1$s" used in exported map "%2$s"', $nodeCaption.$selement['elementid']['name'], $sysmap['name']); throw new Exception($error); } @@ -709,7 +709,7 @@ case SYSMAP_ELEMENT_TYPE_HOST: $db_hosts = API::Host()->getObjects($selement['elementid']); if(empty($db_hosts)){ - $error = S_CANNOT_FIND_HOST.' "'.$nodeCaption.$selement['elementid']['host'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'; + $error = _s('Cannot find host "%1$s" used in exported map "%2$s"', $nodeCaption.$selement['elementid']['name'], $sysmap['name']); throw new Exception($error); } @@ -719,7 +719,7 @@ case SYSMAP_ELEMENT_TYPE_TRIGGER: $db_triggers = API::Trigger()->getObjects($selement['elementid']); if(empty($db_triggers)){ - $error = S_CANNOT_FIND_TRIGGER.' "'.$nodeCaption.$selement['elementid']['host'].':'.$selement['elementid']['description'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'; + $error = _s('Cannot find trigger "%1$s:%2$s" used in exported map "%3$s"', $nodeCaption.$selement['elementid']['host'], $selement['elementid']['description'], $sysmap['name']); throw new Exception($error); } @@ -735,7 +735,7 @@ if(isset($selement[$icon])){ $image = getImageByIdent($selement[$icon]); if(!$image){ - $error = S_CANNOT_FIND_IMAGE.' "'.$selement[$icon]['name'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'; + $error = _s('Cannot find image "%1$s" used in exported map "%2$s"', $selement[$icon]['name'], $sysmap['name']); throw new Exception($error); } $selement[$icon] = $image['imageid']; @@ -754,7 +754,7 @@ $db_triggers = API::Trigger()->getObjects($linktrigger['triggerid']); if(empty($db_triggers)){ $nodeCaption = isset($linktrigger['triggerid']['node'])?$linktrigger['triggerid']['node'].':':''; - $error = S_CANNOT_FIND_TRIGGER.' "'.$nodeCaption.$linktrigger['triggerid']['host'].':'.$linktrigger['triggerid']['description'].'" '.S_USED_IN_EXPORTED_MAP_SMALL.' "'.$sysmap['name'].'"'; + $error = _s('Cannot find trigger "%1$s:%2$s" used in exported map "%3$s"', $nodeCaption.$linktrigger['triggerid']['host'], $linktrigger['triggerid']['description'], $sysmap['name']); throw new Exception($error); } @@ -809,11 +809,11 @@ : API::Host()->exists($host_db); if(!$current_host && !isset($rules['hosts']['createMissing'])){ - info('Host ['.$host_db['host'].'] skipped - user rule'); + info(_s('Host [%1$s] skipped - user rule', $host_db['host'])); continue; // break if update nonexist } if($current_host && !isset($rules['hosts']['updateExisting'])){ - info('Host ['.$host_db['host'].'] skipped - user rule'); + info(_s('Host [%1$s] skipped - user rule', $host_db['host'])); continue; // break if not update updateExisting } @@ -913,7 +913,7 @@ $current_host = API::Host()->get($options); if(empty($current_host)){ - throw new Exception('No permission for host ['.$host_db['host'].']'); + throw new Exception(_s('No permission for host [%1$s]', $host_db['host'])); } else{ $current_host = reset($current_host); @@ -974,7 +974,7 @@ ); $current_group = API::HostGroup()->get($options); if(empty($current_group)){ - throw new Exception('No permissions for group '. $group['name']); + throw new Exception(_s('No permissions for group %1$s', $group['name'])); } $host_db['groups'][] = reset($current_group); @@ -1023,18 +1023,18 @@ $current_template = API::Template()->get($options); if(empty($current_template)){ - throw new Exception('No permission for Template ['.$template->nodeValue.']'); + throw new Exception(_s('No permission for Template [%1$s]', $template->nodeValue)); } $current_template = reset($current_template); if(!$current_template && !isset($rules['templates']['createMissing'])){ - info('Template ['.$template->nodeValue.'] skipped - user rule'); + info(_s('Template [%1$s] skipped - user rule', $template->nodeValue)); continue; } if($current_template && !isset($rules['templates']['updateExisting'])){ - info('Template ['.$template->nodeValue.'] skipped - user rule'); + info(_s('Template [%1$s] skipped - user rule', $template->nodeValue)); continue; } @@ -1229,11 +1229,11 @@ $current_item = reset($current_item); if(!$current_item && !isset($rules['items']['createMissing'])){ - info('Item ['.$item_db['key_'].'] skipped - user rule'); + info(_s('Item [%1$s] skipped - user rule', $item_db['key_'])); continue; // break if not update updateExisting } if($current_item && !isset($rules['items']['updateExisting'])){ - info('Item ['.$item_db['key_'].'] skipped - user rule'); + info(_s('Item [%1$s] skipped - user rule', $item_db['key_'])); continue; // break if not update updateExisting } @@ -1378,11 +1378,11 @@ if(!$current_trigger && !isset($rules['triggers']['createMissing'])){ - info('Trigger "'.$trigger_db['description'].'" skipped - user rule'); + info(_s('Trigger "%s" skipped - user rule', $trigger_db['description'])); continue; // break if not update updateExisting } if($current_trigger && !isset($rules['triggers']['updateExisting'])){ - info('Trigger "'.$trigger_db['description'].'" skipped - user rule'); + info(_s('Trigger "%s" skipped - user rule', $trigger_db['description'])); continue; // break if not update updateExisting } @@ -1499,7 +1499,7 @@ )); if(empty($current_graph)){ - throw new Exception('No permission for Graph ['.$graph_db['name'].']'); + throw new Exception(_s('No permission for Graph [%1$s]', $graph_db['name'])); } $current_graph = reset($current_graph); } @@ -1524,11 +1524,11 @@ if($graph_db['ymin_type'] == GRAPH_YAXIS_TYPE_ITEM_VALUE){ $item_data = explode(':', $graph_db['ymin_item_key'], 2); if(count($item_data) < 2){ - throw new APIException(1, 'Incorrect y min item for graph ['.$graph_db['name'].']'); + throw new APIException(1, _s('Incorrect y min item for graph [%1$s]', $graph_db['name'])); } if(!$item = get_item_by_key($item_data[1], $item_data[0])){ - throw new APIException(1, 'Missing item ['.$graph_db['ymin_item_key'].'] for host ['.$host_db['host'].']'); + throw new APIException(1, _s('Missing item [%1$s] for host [%2$s]', $graph_db['ymin_item_key'], $host_db['host'])); } $graph_db['ymin_itemid'] = $item['itemid']; @@ -1537,11 +1537,11 @@ if($graph_db['ymax_type'] == GRAPH_YAXIS_TYPE_ITEM_VALUE){ $item_data = explode(':', $graph_db['ymax_item_key'], 2); if(count($item_data) < 2){ - throw new APIException(1, 'Incorrect y max item for graph ['.$graph_db['name'].']'); + throw new APIException(1, _s('Incorrect y max item for graph [%1$s]', $graph_db['name'])); } if(!$item = get_item_by_key($item_data[1], $item_data[0])){ - throw new APIException(1, 'Missing item ['.$graph_db['ymax_item_key'].'] for host ['.$host_db['host'].']'); + throw new APIException(1, _s('Missing item [%1$s] for host [%2$s]', $graph_db['ymax_item_key'], $host_db['host'])); } $graph_db['ymax_itemid'] = $item['itemid']; @@ -1590,11 +1590,11 @@ $current_screen = reset($current_screen); if(!$current_screen && !isset($rules['screens']['createMissing'])){ - info('Screen ['.$screen['name'].'] skipped - user rule'); + info(_s('Screen [%1$s] skipped - user rule', $screen['name'])); continue; } if($current_screen && !isset($rules['screens']['updateExisting'])){ - info('Screen ['.$screen['name'].'] skipped - user rule'); + info(_s('Screen [%1$s] skipped - user rule', $screen['name'])); continue; } @@ -1611,7 +1611,7 @@ $db_graphs = API::Graph()->getObjects($screenitem['resourceid']); if(empty($db_graphs)){ - $error = S_CANNOT_FIND_GRAPH.' "'.$nodeCaption.$screenitem['resourceid']['host'].':'.$screenitem['resourceid']['name'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _s('Cannot find graph "%1$s:%2$s" used in exported screen "%2$s"', $nodeCaption.$screenitem['resourceid']['host'], $screenitem['resourceid']['name'], $screen['name']); throw new Exception($error); } @@ -1623,7 +1623,7 @@ $db_items = API::Item()->getObjects($screenitem['resourceid']); if(empty($db_items)){ - $error = S_CANNOT_FIND_ITEM.' "'.$nodeCaption.$screenitem['resourceid']['host'].':'.$screenitem['resourceid']['key_'].'" '.S_USED_IN_EXPORTED_SCREEN_SMALL.' "'.$screen['name'].'"'; + $error = _s('Cannot find item "%1$s:%2$s" used in exported screen "%2$s"', $nodeCaption.$screenitem['resourceid']['host'], $screenitem['resourceid']['key_'], $screen['name']); throw new Exception($error); } @@ -1643,7 +1643,7 @@ $screen['screenid'] = $current_screen['screenid']; $result = API::TemplateScreen()->update($screen); - if(!$result) throw new Exception('Cannot update screen'); + if(!$result) throw new Exception(_('Cannot update screen')); info('['.$current_hostname.'] '._s('Screen "%1$s" updated.', $screen['name'])); } Index: include/locales/en_gb.inc.php =================================================================== --- include/locales/en_gb.inc.php (revision 27175) +++ include/locales/en_gb.inc.php (working copy) @@ -33,10 +32,6 @@ // exp_imp.php 'S_ELEMENT'=> _('Element'), -// export.inc.php - 'S_EXPORT_DATE_ATTRIBUTE_DATE_FORMAT'=> _('d.m.y'), - 'S_EXPORT_TIME_ATTRIBUTE_DATE_FORMAT'=> _('H.i'), - // actions.inc.php 'S_HISTORY_OF_ACTIONS_DATE_FORMAT'=> _('d M Y H:i:s'), 'S_EVENT_ACTION_MESSAGES_DATE_FORMAT'=> _('d M Y H:i:s'), @@ -128,15 +123,6 @@ 'S_BOTTOM'=> _('Bottom'), 'S_TOP'=> _('Top'), - 'S_CANNOT_FIND_IMAGE'=> _('Cannot find image'), - 'S_CANNOT_FIND_BACKGROUND_IMAGE'=> _('Cannot find background image'), - 'S_CANNOT_FIND_TRIGGER'=> _('Cannot find trigger'), - 'S_CANNOT_FIND_HOST'=> _('Cannot find host'), - 'S_CANNOT_FIND_HOSTGROUP'=> _('Cannot find hostgroup'), - 'S_CANNOT_FIND_MAP'=> _('Cannot find map'), - 'S_CANNOT_FIND_SCREEN'=> _('Cannot find screen'), - 'S_USED_IN_EXPORTED_MAP_SMALL'=>_('used in exported map'), - 'S_INCORRECT_ELEMENT_MAP_LINK' => _('All links should have "Name" and "URL" specified'), 'S_EACH_URL_SHOULD_HAVE_UNIQUE' => _('Each URL should have a unique name. Please make sure there is only one URL named'), @@ -161,9 +147,6 @@ 'S_WIDTH'=> _('Width'), 'S_HEIGHT'=> _('Height'), 'S_EDIT'=> _('Edit'), - 'S_CANNOT_FIND_GRAPH'=> _('Cannot find graph'), - 'S_CANNOT_FIND_ITEM'=> _('Cannot find item'), - 'S_USED_IN_EXPORTED_SCREEN_SMALL'=>_('used in exported screen'), // screenedit.php 'S_MAP'=> _('Map'),