Index: upgrades/dbpatches/2.0/postgresql/patch/config.sql =================================================================== --- upgrades/dbpatches/2.0/postgresql/patch/config.sql (revision 22612) +++ upgrades/dbpatches/2.0/postgresql/patch/config.sql (working copy) @@ -17,6 +17,18 @@ ADD severity_name_3 varchar(32) DEFAULT 'Average' NOT NULL, ADD severity_name_4 varchar(32) DEFAULT 'High' NOT NULL, ADD severity_name_5 varchar(32) DEFAULT 'Disaster' NOT NULL, + ADD bugtracker_priority_name_0 varchar(32) DEFAULT 'Not classified' NOT NULL, + ADD bugtracker_priority_name_1 varchar(32) DEFAULT 'Trivial' NOT NULL, + ADD bugtracker_priority_name_2 varchar(32) DEFAULT 'Minor' NOT NULL, + ADD bugtracker_priority_name_3 varchar(32) DEFAULT 'Major' NOT NULL, + ADD bugtracker_priority_name_4 varchar(32) DEFAULT 'Critical' NOT NULL, + ADD bugtracker_priority_name_5 varchar(32) DEFAULT 'Blocker' NOT NULL, + ADD bugtracker_priority_code_0 varchar(32) DEFAULT '0' NOT NULL, + ADD bugtracker_priority_code_1 varchar(32) DEFAULT '5' NOT NULL, + ADD bugtracker_priority_code_2 varchar(32) DEFAULT '4' NOT NULL, + ADD bugtracker_priority_code_3 varchar(32) DEFAULT '3' NOT NULL, + ADD bugtracker_priority_code_4 varchar(32) DEFAULT '2' NOT NULL, + ADD bugtracker_priority_code_5 varchar(32) DEFAULT '1' NOT NULL, ADD ok_period integer DEFAULT '1800' NOT NULL, ADD blink_period integer DEFAULT '1800' NOT NULL, ADD problem_unack_color varchar(6) DEFAULT 'DC0000' NOT NULL, Index: upgrades/dbpatches/2.0/oracle/patch/config.sql =================================================================== --- upgrades/dbpatches/2.0/oracle/patch/config.sql (revision 22612) +++ upgrades/dbpatches/2.0/oracle/patch/config.sql (working copy) @@ -16,6 +16,18 @@ ALTER TABLE config ADD severity_name_3 nvarchar2(32) DEFAULT 'Average'; ALTER TABLE config ADD severity_name_4 nvarchar2(32) DEFAULT 'High'; ALTER TABLE config ADD severity_name_5 nvarchar2(32) DEFAULT 'Disaster'; +ALTER TABLE config ADD bugtracker_priority_name_0 nvarchar2(32) DEFAULT 'Not classified'; +ALTER TABLE config ADD bugtracker_priority_name_1 nvarchar2(32) DEFAULT 'Trivial'; +ALTER TABLE config ADD bugtracker_priority_name_2 nvarchar2(32) DEFAULT 'Minor'; +ALTER TABLE config ADD bugtracker_priority_name_3 nvarchar2(32) DEFAULT 'Major'; +ALTER TABLE config ADD bugtracker_priority_name_4 nvarchar2(32) DEFAULT 'Critical'; +ALTER TABLE config ADD bugtracker_priority_name_5 nvarchar2(32) DEFAULT 'Blocker'; +ALTER TABLE config ADD bugtracker_priority_code_0 nvarchar2(32) DEFAULT '0'; +ALTER TABLE config ADD bugtracker_priority_code_1 nvarchar2(32) DEFAULT '5'; +ALTER TABLE config ADD bugtracker_priority_code_2 nvarchar2(32) DEFAULT '4'; +ALTER TABLE config ADD bugtracker_priority_code_3 nvarchar2(32) DEFAULT '3'; +ALTER TABLE config ADD bugtracker_priority_code_4 nvarchar2(32) DEFAULT '2'; +ALTER TABLE config ADD bugtracker_priority_code_5 nvarchar2(32) DEFAULT '1'; ALTER TABLE config ADD ok_period number(10) DEFAULT '1800' NOT NULL; ALTER TABLE config ADD blink_period number(10) DEFAULT '1800' NOT NULL; ALTER TABLE config ADD problem_unack_color nvarchar2(6) DEFAULT 'DC0000'; Index: upgrades/dbpatches/2.0/mysql/patch/config.sql =================================================================== --- upgrades/dbpatches/2.0/mysql/patch/config.sql (revision 22612) +++ upgrades/dbpatches/2.0/mysql/patch/config.sql (working copy) @@ -16,6 +16,18 @@ ADD severity_name_3 varchar(32) DEFAULT 'Average' NOT NULL, ADD severity_name_4 varchar(32) DEFAULT 'High' NOT NULL, ADD severity_name_5 varchar(32) DEFAULT 'Disaster' NOT NULL, + ADD bugtracker_priority_name_0 varchar(32) DEFAULT 'Not classified' NOT NULL, + ADD bugtracker_priority_name_1 varchar(32) DEFAULT 'Trivial' NOT NULL, + ADD bugtracker_priority_name_2 varchar(32) DEFAULT 'Minor' NOT NULL, + ADD bugtracker_priority_name_3 varchar(32) DEFAULT 'Major' NOT NULL, + ADD bugtracker_priority_name_4 varchar(32) DEFAULT 'Critical' NOT NULL, + ADD bugtracker_priority_name_5 varchar(32) DEFAULT 'Blocker' NOT NULL, + ADD bugtracker_priority_code_0 varchar(32) DEFAULT '0' NOT NULL, + ADD bugtracker_priority_code_1 varchar(32) DEFAULT '5' NOT NULL, + ADD bugtracker_priority_code_2 varchar(32) DEFAULT '4' NOT NULL, + ADD bugtracker_priority_code_3 varchar(32) DEFAULT '3' NOT NULL, + ADD bugtracker_priority_code_4 varchar(32) DEFAULT '2' NOT NULL, + ADD bugtracker_priority_code_5 varchar(32) DEFAULT '1' NOT NULL, ADD ok_period integer DEFAULT '1800' NOT NULL, ADD blink_period integer DEFAULT '1800' NOT NULL, ADD problem_unack_color varchar(6) DEFAULT 'DC0000' NOT NULL, Index: upgrades/dbpatches/2.0/ibm_db2/patch/config.sql =================================================================== --- upgrades/dbpatches/2.0/ibm_db2/patch/config.sql (revision 22612) +++ upgrades/dbpatches/2.0/ibm_db2/patch/config.sql (working copy) @@ -70,6 +70,54 @@ / REORG TABLE config / +ALTER TABLE config ADD bugtracker_priority_name_0 varchar(32) WITH DEFAULT 'Not classified' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_name_1 varchar(32) WITH DEFAULT 'Trivial' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_name_2 varchar(32) WITH DEFAULT 'Minor' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_name_3 varchar(32) WITH DEFAULT 'Major' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_name_4 varchar(32) WITH DEFAULT 'Critical' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_name_5 varchar(32) WITH DEFAULT 'Blocker' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_code_0 varchar(32) WITH DEFAULT '0' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_code_1 varchar(32) WITH DEFAULT '5' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_code_2 varchar(32) WITH DEFAULT '4' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_code_3 varchar(32) WITH DEFAULT '3' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_code_4 varchar(32) WITH DEFAULT '2' NOT NULL +/ +REORG TABLE config +/ +ALTER TABLE config ADD bugtracker_priority_code_5 varchar(32) WITH DEFAULT '1' NOT NULL +/ +REORG TABLE config +/ ALTER TABLE config ADD ok_period integer WITH DEFAULT '1800' NOT NULL / REORG TABLE config Index: include/dbcache.h =================================================================== --- include/dbcache.h (revision 22612) +++ include/dbcache.h (working copy) @@ -229,6 +229,8 @@ #define CONFIG_SNMPTRAP_LOGGING 5 void *DCconfig_get_config_data(void *data, int type); int DCget_trigger_severity_name(unsigned char priority, char **replace_to); +int DCget_trigger_bugtracker_priority_name(unsigned char priority, char **replace_to); +int DCget_trigger_bugtracker_priority_code(unsigned char priority, char **replace_to); void DCrequeue_reachable_item(zbx_uint64_t itemid, unsigned char status, int now); void DCrequeue_unreachable_item(zbx_uint64_t itemid); Index: src/libs/zbxserver/expression.c =================================================================== --- src/libs/zbxserver/expression.c (revision 22612) +++ src/libs/zbxserver/expression.c (working copy) @@ -1640,6 +1640,8 @@ #define MVAR_TRIGGER_NAME "{TRIGGER.NAME}" #define MVAR_TRIGGER_SEVERITY "{TRIGGER.SEVERITY}" #define MVAR_TRIGGER_NSEVERITY "{TRIGGER.NSEVERITY}" +#define MVAR_TRIGGER_BUGTRACKER_PRIORITY "{TRIGGER.BUGTRACKER.PRIORITY}" +#define MVAR_TRIGGER_BUGTRACKER_PRIORITY_CODE "{TRIGGER.BUGTRACKER.PRIORITY.CODE}" #define MVAR_TRIGGER_STATUS "{TRIGGER.STATUS}" #define MVAR_STATUS "{STATUS}" /* deprecated */ #define MVAR_TRIGGER_VALUE "{TRIGGER.VALUE}" @@ -2238,6 +2240,10 @@ else ret = FAIL; } + else if (0 == strcmp(m, MVAR_TRIGGER_BUGTRACKER_PRIORITY)) + ret = DCget_trigger_bugtracker_priority_name(event->trigger.priority, &replace_to); + else if (0 == strcmp(m, MVAR_TRIGGER_BUGTRACKER_PRIORITY_CODE)) + ret = DCget_trigger_bugtracker_priority_code(event->trigger.priority, &replace_to); else if (0 == strcmp(m, MVAR_NODE_ID)) ret = DBget_node_value(&event->trigger, &replace_to, N_functionid, "nodeid"); else if (0 == strcmp(m, MVAR_NODE_NAME)) Index: src/libs/zbxdbcache/dbconfig.c =================================================================== --- src/libs/zbxdbcache/dbconfig.c (revision 22612) +++ src/libs/zbxdbcache/dbconfig.c (working copy) @@ -309,6 +309,8 @@ typedef struct { const char *severity_name[TRIGGER_SEVERITY_COUNT]; + const char *bugtracker_priority_name[TRIGGER_SEVERITY_COUNT]; + const char *bugtracker_priority_code[TRIGGER_SEVERITY_COUNT]; zbx_uint64_t discovery_groupid; int alert_history; int event_history; @@ -648,6 +650,8 @@ #define DEFAULT_EVENT_HISTORY 365 #define DEFAULT_REFRESH_UNSUPPORTED 600 static char *default_severity_names[] = {"Not classified", "Information", "Warning", "Average", "High", "Disaster"}; +static char *default_bugtracker_priority_names[] = {"Not classified", "Trivial", "Minor", "Major", "Critical", "Blocker"}; +static char *default_bugtracker_priority_codes[] = {"0", "5", "4", "3", "2", "1"}; static int DCsync_config(DB_RESULT result) { @@ -678,6 +682,10 @@ for (i = 0; TRIGGER_SEVERITY_COUNT > i; i++) DCstrpool_replace(found, &config->config->severity_name[i], default_severity_names[i]); + for (i = 0; TRIGGER_SEVERITY_COUNT > i; i++) { + DCstrpool_replace(found, &config->config->bugtracker_priority_name[i], default_bugtracker_priority_names[i]); + DCstrpool_replace(found, &config->config->bugtracker_priority_code[i], default_bugtracker_priority_codes[i]); + } } } else @@ -693,6 +701,14 @@ for (i = 0; TRIGGER_SEVERITY_COUNT > i; i++) DCstrpool_replace(found, &config->config->severity_name[i], row[5 + i]); + for (i = 0; TRIGGER_SEVERITY_COUNT > i; i++) { + DCstrpool_replace(found, &config->config->bugtracker_priority_name[i], row[5 + TRIGGER_SEVERITY_COUNT + i]); + } + + for (i = 0; TRIGGER_SEVERITY_COUNT > i; i++) { + DCstrpool_replace(found, &config->config->bugtracker_priority_code[i], row[5 + (TRIGGER_SEVERITY_COUNT*2) + i]); + } + if (NULL != (row = DBfetch(result))) /* config table should have only one record */ zabbix_log(LOG_LEVEL_ERR, "table 'config' has multiple records"); } @@ -2282,7 +2298,11 @@ /* SQL statement must be synced with DCload_config() */ "select alert_history,event_history,refresh_unsupported,discovery_groupid,snmptrap_logging," "severity_name_0,severity_name_1,severity_name_2," - "severity_name_3,severity_name_4,severity_name_5" + "severity_name_3,severity_name_4,severity_name_5," + "bugtracker_priority_name_0,bugtracker_priority_name_1,bugtracker_priority_name_2," + "bugtracker_priority_name_3,bugtracker_priority_name_4,bugtracker_priority_name_5" + "bugtracker_priority_code_0,bugtracker_priority_code_1,bugtracker_priority_code_2," + "bugtracker_priority_code_3,bugtracker_priority_code_4,bugtracker_priority_code_5" " from config" " where 1=1" DB_NODE, @@ -2941,6 +2961,10 @@ "select alert_history,event_history,refresh_unsupported,discovery_groupid,snmptrap_logging," "severity_name_0,severity_name_1,severity_name_2," "severity_name_3,severity_name_4,severity_name_5" + "bugtracker_priority_name_0,bugtracker_priority_name_1,bugtracker_priority_name_2," + "bugtracker_priority_name_3,bugtracker_priority_name_4,bugtracker_priority_name_5" + "bugtracker_priority_code_0,bugtracker_priority_code_1,bugtracker_priority_code_2," + "bugtracker_priority_code_3,bugtracker_priority_code_4,bugtracker_priority_code_5" " from config" " where 1=1" DB_NODE, @@ -3962,6 +3986,66 @@ return SUCCEED; } +/****************************************************************************** + * * + * Function: DCget_trigger_bugtracker_priority_name * + * * + * Purpose: get trigger bugtracker priority name * + * * + * Parameters: trigger - [IN] a trigger data with priority field; * + * TRIGGER_SEVERITY_* * + * replace_to - [OUT] pointer to a buffer that will receive * + * a null-terminated trigger bugtracker priority * + * string. * + * * + * Return value: upon successful completion return SUCCEED * + * otherwise FAIL * + * * + ******************************************************************************/ +int DCget_trigger_bugtracker_priority_name(unsigned char priority, char **replace_to) +{ + if (TRIGGER_SEVERITY_COUNT <= priority) + return FAIL; + + LOCK_CACHE; + + *replace_to = zbx_strdup(*replace_to, config->config->bugtracker_priority_name[priority]); + + UNLOCK_CACHE; + + return SUCCEED; +} + +/****************************************************************************** + * * + * Function: DCget_trigger_bugtracker_priority_code * + * * + * Purpose: get trigger bugtracker priority code * + * * + * Parameters: trigger - [IN] a trigger data with priority field; * + * TRIGGER_SEVERITY_* * + * replace_to - [OUT] pointer to a buffer that will receive * + * a null-terminated trigger bugtracker priority * + * code. * + * * + * Return value: upon successful completion return SUCCEED * + * otherwise FAIL * + * * + ******************************************************************************/ +int DCget_trigger_bugtracker_priority_code(unsigned char priority, char **replace_to) +{ + if (TRIGGER_SEVERITY_COUNT <= priority) + return FAIL; + + LOCK_CACHE; + + *replace_to = zbx_strdup(*replace_to, config->config->bugtracker_priority_code[priority]); + + UNLOCK_CACHE; + + return SUCCEED; +} + void DCrequeue_reachable_item(zbx_uint64_t itemid, unsigned char status, int now) { ZBX_DC_ITEM *dc_item; Index: frontends/php/include/schema.inc.php =================================================================== --- frontends/php/include/schema.inc.php (revision 22612) +++ frontends/php/include/schema.inc.php (working copy) @@ -2288,6 +2288,78 @@ 'length' => 32, 'default' => 'Disaster', ), + 'bugtracker_priority_name_0' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => 'Not classified', + ), + 'bugtracker_priority_name_1' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => 'Trivial', + ), + 'bugtracker_priority_name_2' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => 'Minor', + ), + 'bugtracker_priority_name_3' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => 'Major', + ), + 'bugtracker_priority_name_4' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => 'Critical', + ), + 'bugtracker_priority_name_5' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => 'Blocker', + ), + 'bugtracker_priority_code_0' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => '0', + ), + 'bugtracker_priority_code_1' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => '5', + ), + 'bugtracker_priority_code_2' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => '4', + ), + 'bugtracker_priority_code_3' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => '3', + ), + 'bugtracker_priority_code_4' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => '2', + ), + 'bugtracker_priority_code_5' => array( + 'null' => false, + 'type' => DB::FIELD_TYPE_CHAR, + 'length' => 32, + 'default' => '1', + ), 'ok_period' => array( 'null' => false, 'type' => DB::FIELD_TYPE_INT, Index: frontends/php/include/views/administration.general.triggerSeverity.edit.php =================================================================== --- frontends/php/include/views/administration.general.triggerSeverity.edit.php (revision 22612) +++ frontends/php/include/views/administration.general.triggerSeverity.edit.php (working copy) @@ -27,6 +27,29 @@ $headerDiv->addStyle('width: 16.3em; margin-left: 3px; zoom:1; *display: inline;'); $severityTab->addRow(SPACE, array($headerDiv, _('Colour'))); + +severity_names = ('Not classified','Information','Warning','Average','High','Disaster'); +// bugtracker_priority_names = ('Not classified','Trivial','Minor','Major','Critical','Blocker'); +// bugtracker_priority_codes = ('0','5','4','3','2','1'); + +for ($n = 0; $n < 6; $n++); { + $severityNameTB = new CTextBox("severity_name_$n", $this->data["config"]["severity_name_$n"]); + $severityNameTB->addStyle('width: 15em;'); + $severityNameTB->setAttribute('maxlength', 32); + $severityColorTB = new CColor("severity_color_$n", $this->data["config"]["severity_color_$n"]); + + $bugtrackerPriorityNameTB = new CTextBox("bugtracker_priority_name_$n", $this->data["config"]["bugtracker_priority_name_$n"]); + $bugtrackerPriorityNameTB->addStyle('width: 15em;'); + $bugtrackerPriorityNameTB->setAttribute('maxlength', 32); + + $bugtrackerPriorityCodeTB = new CTextBox("bugtracker_priority_code_$n", $this->data["config"]["bugtracker_priority_code_$n"]); + $bugtrackerPriorityCodeTB->addStyle('width: 15em;'); + $bugtrackerPriorityCodeTB->setAttribute('maxlength', 32); + + $severityTab->addRow(_(severity_names[$n]), array($severityNameTB, SPACE, $severityColorTB, SPACE, $bugtrackerPriorityNameTB, SPACE, $bugtrackerPriorityCodeTB)); +} + +/* $severityNameTB0 = new CTextBox('severity_name_0', $this->data['config']['severity_name_0']); $severityNameTB0->addStyle('width: 15em;'); $severityNameTB0->setAttribute('maxlength', 32); @@ -62,6 +85,7 @@ $severityNameTB5->setAttribute('maxlength', 32); $severityColorTB5 = new CColor('severity_color_5', $this->data['config']['severity_color_5']); $severityTab->addRow(_('Disaster'), array($severityNameTB5, SPACE, $severityColorTB5)); +*/ $severityTab->addRow(SPACE); $severityTab->addInfo(_('Custom severity names affect all locales and require manual translation!')); Index: frontends/php/include/views/js/administration.general.triggerSeverity.js.php =================================================================== --- frontends/php/include/views/js/administration.general.triggerSeverity.js.php (revision 22612) +++ frontends/php/include/views/js/administration.general.triggerSeverity.js.php (working copy) @@ -9,7 +9,7 @@ jQuery("#resetDefaults").click(function(){ - jQuery('#dialog').text(""); + jQuery('#dialog').text(""); var w = jQuery('#dialog').outerWidth()+20; jQuery('#dialog').dialog({ @@ -21,6 +21,18 @@ jQuery('#severity_name_3').val(""); jQuery('#severity_name_4').val(""); jQuery('#severity_name_5').val(""); + jQuery('#bugtracker_priority_name_0').val(""); + jQuery('#bugtracker_priority_name_1').val(""); + jQuery('#bugtracker_priority_name_2').val(""); + jQuery('#bugtracker_priority_name_3').val(""); + jQuery('#bugtracker_priority_name_4').val(""); + jQuery('#bugtracker_priority_name_5').val(""); + jQuery('#bugtracker_priority_code_0').val(""); + jQuery('#bugtracker_priority_code_1').val(""); + jQuery('#bugtracker_priority_code_2').val(""); + jQuery('#bugtracker_priority_code_3').val(""); + jQuery('#bugtracker_priority_code_4').val(""); + jQuery('#bugtracker_priority_code_5').val(""); jQuery('#severity_color_0').val(""); jQuery('#severity_color_0').change(); jQuery('#severity_color_1').val(""); Index: frontends/php/config.php =================================================================== --- frontends/php/config.php (revision 22612) +++ frontends/php/config.php (working copy) @@ -105,16 +105,28 @@ // Trigger severities 'severity_name_0' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_color_0' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_name_0' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_code_0' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_name_1' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_color_1' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_name_1' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_code_1' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_name_2' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_color_2' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_name_2' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_code_2' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_name_3' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_color_3' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_name_3' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_code_3' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_name_4' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_color_4' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_name_4' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_code_4' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_name_5' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), 'severity_color_5' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_name_5' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), + 'bugtracker_priority_code_5' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==12)&&isset({save})'), // Trigger displaying options 'problem_unack_color' => array(T_ZBX_STR, O_OPT, null, null, 'isset({config})&&({config}==13)&&isset({save})'), @@ -680,16 +692,28 @@ $configs = array( 'severity_name_0' => get_request('severity_name_0', _('Not classified')), 'severity_color_0' => get_request('severity_color_0', ''), + 'bugtracker_priority_name_0' => get_request('bugtracker_priority_name_0', _('Not classified')), + 'bugtracker_priority_code_0' => get_request('bugtracker_priority_code_0', _('0')), 'severity_name_1' => get_request('severity_name_1', _('Information')), 'severity_color_1' => get_request('severity_color_1', ''), + 'bugtracker_priority_name_1' => get_request('bugtracker_priority_name_1', _('Trivial')), + 'bugtracker_priority_code_1' => get_request('bugtracker_priority_code_1', _('5')), 'severity_name_2' => get_request('severity_name_2', _('Warning')), 'severity_color_2' => get_request('severity_color_2', ''), + 'bugtracker_priority_name_2' => get_request('bugtracker_priority_name_2', _('Minor')), + 'bugtracker_priority_code_2' => get_request('bugtracker_priority_code_2', _('4')), 'severity_name_3' => get_request('severity_name_3', _('Average')), 'severity_color_3' => get_request('severity_color_3', ''), + 'bugtracker_priority_name_3' => get_request('bugtracker_priority_name_3', _('Major')), + 'bugtracker_priority_code_3' => get_request('bugtracker_priority_code_3', _('3')), 'severity_name_4' => get_request('severity_name_4', _('High')), 'severity_color_4' => get_request('severity_color_4', ''), + 'bugtracker_priority_name_4' => get_request('bugtracker_priority_name_4', _('Critical')), + 'bugtracker_priority_code_4' => get_request('bugtracker_priority_code_4', _('2')), 'severity_name_5' => get_request('severity_name_5', _('Disaster')), 'severity_color_5' => get_request('severity_color_5', ''), + 'bugtracker_priority_name_5' => get_request('bugtracker_priority_name_5', _('Blocker')), + 'bugtracker_priority_code_5' => get_request('bugtracker_priority_code_5', _('1')), ); $result = update_config($configs); @@ -1066,16 +1090,28 @@ if($data['form_refresh']){ $data['config']['severity_name_0'] = get_request('severity_name_0'); $data['config']['severity_color_0'] = get_request('severity_color_0', ''); + $data['config']['bugtracker_priority_name_0'] = get_request('bugtracker_priority_name_0'); + $data['config']['bugtracker_priority_code_0'] = get_request('bugtracker_priority_code_0'); $data['config']['severity_name_1'] = get_request('severity_name_1'); $data['config']['severity_color_1'] = get_request('severity_color_1', ''); + $data['config']['bugtracker_priority_name_1'] = get_request('bugtracker_priority_name_1'); + $data['config']['bugtracker_priority_code_1'] = get_request('bugtracker_priority_code_1'); $data['config']['severity_name_2'] = get_request('severity_name_2'); $data['config']['severity_color_2'] = get_request('severity_color_2', ''); + $data['config']['bugtracker_priority_name_2'] = get_request('bugtracker_priority_name_2'); + $data['config']['bugtracker_priority_code_2'] = get_request('bugtracker_priority_code_2'); $data['config']['severity_name_3'] = get_request('severity_name_3'); $data['config']['severity_color_3'] = get_request('severity_color_3', ''); + $data['config']['bugtracker_priority_name_3'] = get_request('bugtracker_priority_name_3'); + $data['config']['bugtracker_priority_code_3'] = get_request('bugtracker_priority_code_3'); $data['config']['severity_name_4'] = get_request('severity_name_4'); $data['config']['severity_color_4'] = get_request('severity_color_4', ''); + $data['config']['bugtracker_priority_name_4'] = get_request('bugtracker_priority_name_4'); + $data['config']['bugtracker_priority_code_4'] = get_request('bugtracker_priority_code_4'); $data['config']['severity_name_5'] = get_request('severity_name_5'); $data['config']['severity_color_5'] = get_request('severity_color_5', ''); + $data['config']['bugtracker_priority_name_5'] = get_request('bugtracker_priority_name_5'); + $data['config']['bugtracker_priority_code_5'] = get_request('bugtracker_priority_code_5'); } else{ $data['config'] = select_config(false); Index: create/schema/schema.sql =================================================================== --- create/schema/schema.sql (revision 22612) +++ create/schema/schema.sql (working copy) @@ -505,6 +505,18 @@ FIELD |severity_name_3|t_varchar(32) |'Average'|NOT NULL |ZBX_SYNC FIELD |severity_name_4|t_varchar(32) |'High' |NOT NULL |ZBX_SYNC FIELD |severity_name_5|t_varchar(32) |'Disaster'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_name_0|t_varchar(32) |'Not classified'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_name_1|t_varchar(32) |'Trivial'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_name_2|t_varchar(32) |'Minor'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_name_3|t_varchar(32) |'Major'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_name_4|t_varchar(32) |'Critical' |NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_name_5|t_varchar(32) |'Blocker'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_code_0|t_varchar(32) |'0'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_code_1|t_varchar(32) |'5'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_code_2|t_varchar(32) |'4'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_code_3|t_varchar(32) |'3'|NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_code_4|t_varchar(32) |'2' |NOT NULL |ZBX_SYNC +FIELD |bugtracker_priority_code_5|t_varchar(32) |'1'|NOT NULL |ZBX_SYNC FIELD |ok_period |t_integer |'1800' |NOT NULL |ZBX_SYNC FIELD |blink_period |t_integer |'1800' |NOT NULL |ZBX_SYNC FIELD |problem_unack_color|t_varchar(6)|'DC0000'|NOT NULL |ZBX_SYNC Index: create/data/data.sql =================================================================== --- create/data/data.sql (revision 22612) +++ create/data/data.sql (working copy) @@ -12360,4 +12360,4 @@ -- Dumping data for table `config` -- -INSERT INTO config VALUES (1,365,365,600,'1-5,00:00-24:00',7,1,7,100,'css_ob.css',0,'',389,'','','','',1,1,5,50,1000,1,'DBDBDB', 'D6F6FF', 'FFF6A5', 'FFB689', 'FF9999', 'FF3838', 'Not classified', 'Information', 'Warning', 'Average', 'High', 'Disaster', '1800', '1800', 'DC0000', 'DC0000', '00AA00', '00AA00', '1', '1', '1', '1', '1'); +INSERT INTO config VALUES (1,365,365,600,'1-5,00:00-24:00',7,1,7,100,'css_ob.css',0,'',389,'','','','',1,1,5,50,1000,1,'DBDBDB', 'D6F6FF', 'FFF6A5', 'FFB689', 'FF9999', 'FF3838', 'Not classified', 'Information', 'Warning', 'Average', 'High', 'Disaster', 'Not classified', 'Trivial', 'Minor', 'Major', 'Critical', 'Blocker', '0', '5', '4', '3', '2', '1', '1800', '1800', 'DC0000', 'DC0000', '00AA00', '00AA00', '1', '1', '1', '1', '1');