Beispiel #1
0
 function init()
 {
     //mantisgraph_autoload();
     spl_autoload_register(array('MantisGraphPlugin', 'autoload'));
     $t_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR;
     set_include_path(get_include_path() . PATH_SEPARATOR . $t_path);
 }
 function init()
 {
     // Get path to core folder
     $t_core_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR;
     // Include constants
     require_once $t_core_path . 'constant_api.php';
 }
Beispiel #3
0
 function init()
 {
     spl_autoload_register(array('MantisKanbanPlugin', 'autoload'));
     $t_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR;
     set_include_path(get_include_path() . PATH_SEPARATOR . $t_path);
     // register our custom tables
     #$GLOBALS['g_db_table']['mantis_team_user_table']    = '%db_table_prefix%_team_user%db_table_suffix%';
     #$GLOBALS['g_db_table']['mantis_team_table']         = '%db_table_prefix%_team%db_table_suffix%';
 }
 function init()
 {
     $this->plugin_path = 'plugins' . DIRECTORY_SEPARATOR . plugin_get_current() . DIRECTORY_SEPARATOR;
     // plugin events - view the README.txt file to know where these
     // events have to be called
     event_declare('EVENT_GROUP_ACCESS_HAS_BUG_LEVEL', EVENT_TYPE_CHAIN);
     plugin_event_hook('EVENT_GROUP_ACCESS_HAS_BUG_LEVEL', 'group_access_has_bug_level');
     event_declare('EVENT_GROUP_PROJECT_GET_ALL_USER_ROWS', EVENT_TYPE_CHAIN);
     plugin_event_hook('EVENT_GROUP_PROJECT_GET_ALL_USER_ROWS', 'group_project_get_all_user_rows');
 }
Beispiel #5
0
 /**
  * Create the resource link to load the chosen library.
  */
 function resources($p_event)
 {
     $markup = '';
     $plugin_path = config_get_global('path') . 'plugins/' . plugin_get_current();
     $style = $plugin_path . '/lib/chosen.min.css';
     $script = $plugin_path . '/js/chosen_for_mantisbt.js';
     $chosen_script = $plugin_path . '/lib/chosen.jquery.min.js';
     $markup .= '<link rel="stylesheet" type="text/css" href="' . $style . '" />';
     $markup .= '<script type="text/javascript" src="' . $chosen_script . '"></script>';
     $markup .= '<script type="text/javascript" src="' . $script . '"></script>';
     return $markup;
 }
} else {
    define("AGILEMANTIS_END_FIELD", 'end');
    define("AGILEMANTIS_COMMIT_FIELD", 'commit');
}
// URL to agileMantis plugin
define("AGILEMANTIS_PLUGIN_URL", config_get_global('path') . 'plugins/' . plugin_get_current() . '/');
// Path to agileMantis plugin folder
define("AGILEMANTIS_PLUGIN_URI", config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR);
// Path to agileMantis core folder
define("AGILEMANTIS_CORE_URI", AGILEMANTIS_PLUGIN_URI . 'core' . DIRECTORY_SEPARATOR);
// Path to agileMantis libs folder
define("AGILEMANTIS_PLUGIN_CLASS_URI", AGILEMANTIS_PLUGIN_URI . 'libs' . DIRECTORY_SEPARATOR);
// Path to agileMantisExpert license
define("AGILEMANTIS_LICENSE_PATH", config_get_global('plugin_path') . 'agileMantisExpert' . DIRECTORY_SEPARATOR . 'license' . DIRECTORY_SEPARATOR . 'license.txt');
// URL to agileMantis remote interface
define("AGILEMANTIS_SCHNITTSTELLEN_URL", 'plugins/' . plugin_get_current() . '/core/schnittstelle.php');
// URL to agileMantis Source Forge website
define("AGILEMANTIS_DEMO_VERSION_HOST", 'agilemantis.sourceforge.net');
// URL to agileMantisExpert order website
define("AGILEMANTIS_ORDER_PAGE_URL", 'http://wp12122798.server-he.de/');
// URL to agileMantisExpert plugin download
define("AGILEMANTIS_EXPERT_DOWNLOAD_LINK", 'http://www.gadiv.de/media/content/produkte/open_source/agilemantis/agileMantisExpert.zip');
// Load agileMantis common Functions
require_once AGILEMANTIS_PLUGIN_CLASS_URI . 'class_commonlib.php';
global $agilemantis_commonlib;
$agilemantis_commonlib = new gadiv_commonlib();
// Load agileMantis User Functions
require_once AGILEMANTIS_PLUGIN_CLASS_URI . 'class_agileuser.php';
global $agilemantis_au;
$agilemantis_au = new gadiv_agileuser();
// Load agileMantis Team Functions
Beispiel #7
0
/**
 * Allows a plugin page to require a plugin-specific API
 * @param string $p_file     The API to be included.
 * @param string $p_basename Plugin's basename (defaults to current plugin).
 * @return void
 */
function plugin_require_api($p_file, $p_basename = null)
{
    if (is_null($p_basename)) {
        $t_current = plugin_get_current();
    } else {
        $t_current = $p_basename;
    }
    $t_path = config_get_global('plugin_path') . $t_current . '/';
    require_once $t_path . $p_file;
}
<?php

define('STORYBOARD_PLUGIN_URL', config_get_global('path') . 'plugins/' . plugin_get_current() . '/');
define('STORYBOARD_PLUGIN_URI', config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR);
define('STORYBOARD_CORE_URI', STORYBOARD_PLUGIN_URI . 'core/');
define('STORYBOARD_FILES_URI', STORYBOARD_PLUGIN_URL . 'files/');
define('PLUGINS_STORYBOARD_THRESHOLD_LEVEL_DEFAULT', ADMINISTRATOR);
define('PLUGINS_STORYBOARD_MAX_TOOLTIP_CONTENT_LENGTH', 250);
 /**
  * EmailReporting initialization function.
  */
 function init()
 {
     $t_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'core_pear' . DIRECTORY_SEPARATOR;
     if (is_dir($t_path)) {
         set_include_path(get_include_path() . PATH_SEPARATOR . $t_path);
     }
 }
echo plugin_lang_get('show_graph');
?>
"/>
					</td>
				</tr>
			</table>
		</form>
<?php 
# build the graphs if both an interval and graph type are selected
if (0 != $f_type && $f_interval > 0 && gpc_get('show', '') != '') {
    $t_width = plugin_config_get('window_width');
    $t_summary = $f_type % 2 != 0;
    $t_body = (int) ($f_type / 2);
    $f_start = $t_period->get_start_formatted();
    $f_end = $t_period->get_end_formatted();
    if ($t_body == 1 || $t_body == 3) {
        if ($f_show_as_table) {
            include config_get_global('plugin_path') . plugin_get_current() . '/pages/bug_graph_bystatus.php';
        } else {
            echo '<br /><img src="' . plugin_page('bug_graph_bystatus.php') . '&amp;width=600&amp;interval=' . $f_interval . '&amp;start_date=' . $f_start . '&amp;end_date=' . $f_end . '&amp;summary=' . $t_summary . '&amp;show_table=0" alt="Bug Graph" />';
        }
    }
    if ($t_body == 2 || $t_body == 3) {
        if ($f_show_as_table) {
            include config_get_global('plugin_path') . plugin_get_current() . '/pages/bug_graph_bycategory.php';
        } else {
            echo '<br /><img src="' . plugin_page('bug_graph_bycategory.php') . '&amp;width=600&amp;interval=' . $f_interval . '&amp;start_date=' . $f_start . '&amp;end_date=' . $f_end . '&amp;summary=' . $t_summary . '&amp;show_table=0" alt="Bug Graph" />';
        }
    }
}
html_page_bottom();
                    <label v-bind:class="{'finished': task.finished}">
                        <input v-on:change="toggleFinished(task)" v-model="task.finished" v-bind:disabled="readOnly" type="checkbox">
                        <span>{{ task.description }}</span>
                    </label>
                    <a v-on:click="changeDescription(task, $event)" v-if="!readOnly" href="#"><img alt="Edit" title="<?php 
echo plugin_lang_get('edit_task');
?>
" class="edit-icon" src="images/update.png"></a>
                    <a v-on:click="deleteTask(task, $event)" v-if="!readOnly" href="#"><img alt="X" title="<?php 
echo plugin_lang_get('delete_task');
?>
" class="delete-icon" src="images/delete.png"></a>
                </li>
            </ul>
            <input v-on:keydown.enter="insertTask" v-model="newTask.description" v-if="!readOnly" type="text" class="<?php 
echo plugin_get_current();
?>
-add-new" placeholder="<?php 
echo plugin_lang_get('add_new_task');
?>
" size="40" maxlength="120" />
        </form>
        <script type="text/javascript" src="<?php 
echo plugin_file('todolists.js');
?>
"></script>
        <script type="text/javascript">
        ToDoList.$set('readOnly', <?php 
echo !access_has_global_level(plugin_config_get('manage_threshold')) ? 'true' : 'false';
?>
);
Beispiel #12
0
#######
auth_reauthenticate();
html_page_top1(lang_get('plugin_mite_title'));
html_page_top2();
# build config arrays for convenient access to necessary elements
#################################################################
$a_configParams['api_key'] = array('name' => Mantis2mitePlugin::DB_FIELD_API_KEY, 'value' => current_user_get_field(Mantis2mitePlugin::DB_FIELD_API_KEY), 'label' => lang_get('plugin_mite_api_key'), 'type' => 'text', 'readonly' => '', 'cssClass' => '', 'help' => '');
if ($a_configParams['api_key']['value']) {
    $a_configParams['api_key']['value'] = Mantis2mitePlugin::decodeValue($a_configParams['api_key']['value']);
}
$a_configParams['account_name'] = array('name' => Mantis2mitePlugin::DB_FIELD_ACCOUNT_NAME, 'value' => current_user_get_field(Mantis2mitePlugin::DB_FIELD_ACCOUNT_NAME), 'label' => lang_get('plugin_mite_account_name'), 'type' => 'text', 'readonly' => '', 'cssClass' => '', 'help' => '');
if ($a_configParams['account_name']['value']) {
    $a_configParams['account_name']['value'] = Mantis2mitePlugin::decodeValue($a_configParams['account_name']['value']);
}
# get the path to this plugin
$s_pluginDirPath = helper_mantis_url("plugins/" . plugin_get_current() . "/");
# get connection status
$b_miteConnectionVerified = current_user_get_field(Mantis2mitePlugin::DB_FIELD_CONNECT_VERIFIED);
# add options if the connection was verified
############################################
if ($b_miteConnectionVerified) {
    $s_miteConnectionStatus = sprintf(lang_get('plugin_mite_connection_verified'), current_user_get_field(Mantis2mitePlugin::DB_FIELD_CONNECT_LAST_UPDATED));
    $s_connectionStatusCssClass = 'plugin_mite_positive_connection_status';
    $a_configParams['account_name']['readonly'] = $a_configParams['api_key']['readonly'] = " readonly='readonly'";
    $a_configParams['account_name']['cssClass'] = $a_configParams['api_key']['cssClass'] = " class='readonly'";
    $a_configParams['api_key']['type'] = "password";
    $b_visibleBtnUnbindConnection = $b_visibleLinkChangeApiKey = $b_visibleLinkChangeAccountName = true;
    $s_bgUserAccountDataCssClass = 'mite_user_account_active';
} else {
    $s_miteConnectionStatus = lang_get('plugin_mite_connection_unverified');
    $s_connectionStatusCssClass = 'plugin_mite_negative_connection_status';
<?php

define('SPECMANAGEMENT_PLUGIN_URL', config_get_global('path') . 'plugins/' . plugin_get_current() . '/');
define('SPECMANAGEMENT_PLUGIN_URI', config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR);
define('SPECMANAGEMENT_CORE_URI', SPECMANAGEMENT_PLUGIN_URI . 'core/');
define('SPECMANAGEMENT_FILES_URI', SPECMANAGEMENT_PLUGIN_URI . 'files/');
define('PLUGINS_SPECMANAGEMENT_THRESHOLD_LEVEL_DEFAULT', ADMINISTRATOR);
define('PLUGINS_SPECMANAGEMENT_READ_LEVEL_DEFAULT', REPORTER);
define('PLUGINS_SPECMANAGEMENT_WRITE_LEVEL_DEFAULT', DEVELOPER);
define('PLUGINS_SPECMANAGEMENT_COLUMN_AMOUNT', 1);
define('PLUGINS_SPECMANAGEMENT_MAX_COLUMNS', 10);
define('PLUGINS_SPECMANAGEMENT_COLUMN_STAT_DEFAULT', 50);
define('PLUGINS_SPECMANAGEMENT_RES_OPEN', 10);
define('PLUGINS_SPECMANAGEMENT_RES_FIXED', 20);
define('PLUGINS_SPECMANAGEMENT_RES_REOPENED', 30);
define('PLUGINS_SPECMANAGEMENT_RES_UNABLETOREPRODUCE', 40);
define('PLUGINS_SPECMANAGEMENT_RES_NOTFIXABLE', 50);
define('PLUGINS_SPECMANAGEMENT_RES_DUPLICATE', 60);
define('PLUGINS_SPECMANAGEMENT_RES_NOCHANGEREQUIRED', 70);
define('PLUGINS_SPECMANAGEMENT_RES_SUSPENDED', 80);
define('PLUGINS_SPECMANAGEMENT_RES_WONTFIX', 90);
define('PLUGINS_SPECMANAGEMENT_STAT_NEW', 10);
define('PLUGINS_SPECMANAGEMENT_STAT_FEEDBACK', 20);
define('PLUGINS_SPECMANAGEMENT_STAT_ACHKNOWLEDGED', 30);
define('PLUGINS_SPECMANAGEMENT_STAT_CONFIRMED', 40);
define('PLUGINS_SPECMANAGEMENT_STAT_ASSIGNED', 50);
define('PLUGINS_SPECMANAGEMENT_STAT_RESOLVED', 80);
define('PLUGINS_SPECMANAGEMENT_STAT_CLOSED', 90);
Beispiel #14
0
if (user_get_access_level($t_current_user_id) < plugin_config_get('upload_threshold_level', PLUGINS_RELEASEMGT_UPLOAD_THRESHOLD_LEVEL_DEFAULT)) {
    access_denied();
}
for ($i = 0; $i < $t_file_count; $i++) {
    $t_file_error[$i] = isset($t_file[$i]['error']) ? $t_file[$i]['error'] : 0;
    $t_file_id[$i] = plugins_releasemgt_file_add($t_file[$i]['tmp_name'], $t_file[$i]['name'], $t_file[$i]['type'], $t_project_id, $t_version, $t_description[$i], $t_file_error[$i]);
}
$t_redirect_url = plugin_page('releases', true);
if (plugin_config_get('notification_enable', PLUGINS_RELEASEMGT_NOTIFICATION_ENABLE_DEFAULT) == ON) {
    $t_subject = plugin_config_get('email_subject', PLUGINS_RELEASEMGT_EMAIL_SUBJECT_DEFAULT);
    $t_subject_replace = array('*P' => '*p', '*C' => '*c', '*V' => '*v', '*p' => project_get_name($t_project_id), '*v' => version_get_field($t_version, 'version'), '*c' => $t_file_count, '**' => '*');
    foreach ($t_subject_replace as $t_key => $t_value) {
        $t_subject = str_replace($t_key, $t_value, $t_subject);
    }
    $t_selected = plugin_config_get('email_template', PLUGINS_RELEASEMGT_EMAIL_TEMPLATE_DEFAULT);
    $t_template_dir = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'templates' . DIRECTORY_SEPARATOR . $t_selected . DIRECTORY_SEPARATOR;
    $t_template = array();
    $t_template['files'] = array();
    $t_template['files_count'] = $t_file_count;
    for ($i = 0; $i < $t_file_count; $i++) {
        $t_template['files'][$i] = array();
        $t_template['files'][$i]['file_name'] = $t_file[$i]['name'];
        $t_template['files'][$i]['file_description'] = $t_description;
        $t_template['files'][$i]['file_html_description'] = string_display_links($t_description);
        $t_template['files'][$i]['file_url'] = config_get('path') . plugin_page('download', true) . '&id=' . $t_file_id[$i];
        $t_template['files'][$i]['file_size'] = number_format($t_file[$i]['size']);
        $t_template['files'][$i]['file_date'] = date(config_get('normal_date_format'), plugins_releasemgt_file_get_field($t_file_id[$i], 'date_added'));
    }
    $t_template['project_id'] = $t_project_id;
    $t_template['project_name'] = project_get_name($t_project_id);
    $t_template['version_id'] = $t_version;
<?php

/**
 * @param  string $class
 * @return void
 */
spl_autoload_register(function ($class) {
    // project-specific namespace prefix
    $prefix = plugin_get_current() . '\\';
    // base directory for the namespace prefix
    $base_dir = __DIR__ . '/src/';
    // does the class use the namespace prefix?
    $len = strlen($prefix);
    if (strncmp($prefix, $class, $len) !== 0) {
        // no, move to the next registered autoloader
        return;
    }
    // get the relative class name
    $relative_class = substr($class, $len);
    // replace the namespace prefix with the base directory, replace namespace
    // separators with directory separators in the relative class name, append
    // with .php
    $file = $base_dir . str_replace('\\', '/', $relative_class) . '.php';
    // if the file exists, require it
    if (file_exists($file)) {
        require $file;
    }
});
<?php

// URL to RelationshipColumnView plugin
define('BACKGROUNDIMAGEVIEW_PLUGIN_URL', config_get_global('path') . 'plugins/' . plugin_get_current() . '/');
// Path to RelationshipColumnView plugin folder
define('BACKGROUNDIMAGEVIEW_PLUGIN_URI', config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR);
// Path to RelationshipColumnView core folder
define('BACKGROUNDIMAGEVIEW_CORE_URI', BACKGROUNDIMAGEVIEW_PLUGIN_URI . 'core' . DIRECTORY_SEPARATOR);
// Default treshold level
define('PLUGINS_BACKGROUNDIMAGEVIEW_THRESHOLD_LEVEL_DEFAULT', ADMINISTRATOR);
 /**
  * Will be executed, if the user hits the install link on the plugin
  * overview page and before schema()
  */
 function install()
 {
     $t_plugin_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR;
     // Install site key
     plugin_config_set('gadiv_sitekey', md5(uniqid(rand(), true)));
     $this->installConfigurationParams();
     // Create custom fields
     $this->create_custom_field('ProductBacklog', array('possible_values' => '', 'type' => '6'));
     // List
     $this->create_custom_field('Sprint', array('possible_values' => '', 'type' => '6'));
     // List
     $this->create_custom_field('Storypoints', array('possible_values' => '', 'type' => '1'));
     // Number
     $this->create_custom_field('BusinessValue', array('possible_values' => '', 'type' => '0'));
     // Text
     $this->create_custom_field('RankingOrder', array('possible_values' => '', 'type' => '1'));
     // Number
     $this->create_custom_field('Presentable', array('possible_values' => '1|2|3', 'type' => '6'));
     // List
     $this->create_custom_field('Technical', array('possible_values' => 'Ja', 'type' => '5'));
     // Checkbox
     $this->create_custom_field('InReleaseDocu', array('possible_values' => 'Ja', 'type' => '5'));
     // Checkbox
     $this->create_custom_field('PlannedWork', array('possible_values' => '', 'type' => '1'));
     // Number
     $this->create_custom_field('PlannedWorkUnit', array('possible_values' => '0|1|2|3', 'type' => '0', 'filter_by' => '0'));
     // Text
     // If old tables exists, that where not created by ADODB, the setting 'plugin_agileMantis_schema'
     // needs to be set to the last block of the schema that was created without ADODB.
     // e.g. if the last table created without ADODB was 'gadiv_teams', the plugin_agileMantis_schema
     // needs to be set to the corresponding schema block. Only the blocks after that will be executed.
     if (plugin_config_get('schema', -1) == -1) {
         if (db_is_mysql()) {
             if ($this->getDBVersion() == '2.0.0') {
                 // Version 2.0. is installed, set block to #21
                 plugin_config_set('schema', 21);
             } else {
                 if (db_field_exists('expert', 'gadiv_additional_user_fields')) {
                     // Version 1.3 is installed, set block to #14
                     plugin_config_set('schema', 14);
                 } else {
                     if (db_table_exists('gadiv_sprints')) {
                         // Version < 1.3 is installed, set block to #13
                         plugin_config_set('schema', 13);
                     }
                 }
             }
         } else {
             if (db_is_mssql()) {
                 plugin_config_set('schema', -1);
             }
         }
     }
     return TRUE;
 }
Beispiel #18
0
 public function addTimeEntryRow_bugDetail($c_eventName, $i_bugId)
 {
     # don't add the time entry row, if
     # - the user can't see time entries of others AND
     # - has no verified connection to a MITE account
     # if the user has no verified connection to a MITE account but
     # is able to see time entries of other users, he should see them
     ##################################################
     if (current_user_get_field('access_level') < plugin_config_get('mite_timetracks_visible_threshold_level') && !current_user_get_field(Mantis2mitePlugin::DB_FIELD_CONNECT_VERIFIED)) {
         return;
     }
     /*
      * @local
      */
     $s_output = "\n  \t\t\t<tr " . helper_alternate_class() . ">\n\t  \t\t\t<td class='category'>\n\t  \t\t<!-- NO SCRIPT MESSAGE -->\t\n\t  \t\t\t<noscript>\n\t  \t\t\t\t<div class='plugin_mite_text_if_no_javascript'>" . lang_get('plugin_mite_no_javascript_enabled') . "\n  \t\t\t\t\t</div>\n  \t\t\t\t</noscript>\n\t  \t\t\t<div class='plugin_mite_hide_if_no_javascript'>" . lang_get('plugin_mite_time_entries') . "\n  \t\t\t\t\t<span class='plugin_mite_link_to_settings'>\n  \t\t\t\t\t\t[ <a href='" . helper_mantis_url("plugin.php?page=" . plugin_get_current() . "/user_account") . "'>" . lang_get('plugin_mite_link_to_settings') . "</a> ]\n  \t\t\t\t\t</span>\n  \t\t\t\t</div><!-- plugin_mite_text_hide_if_no_javascript -->\t\n  \t\t\t\t</td>\n\t  \t\t\t<td colspan='5' class='plugin_mite_time_entries'>\n\t  \t\t\t<div class='plugin_mite_hide_if_no_javascript'>";
     if (current_user_get_field(Mantis2mitePlugin::DB_FIELD_CONNECT_VERIFIED)) {
         $s_output .= "\t\t\n  \t\t\t\t\t<form id='plugin_mite_frm_new_time_entry'>\n  \t\t\t\t\t\t<div id='plugin_mite_show_new_time_entry_form'>\n\t  \t\t\t\t\t\t<a name='addTimeEntry' href='#addTimeEntry' title='[ctrl-t]' accesskey='t' class='addTimeEntry'>" . lang_get('plugin_mite_show_new_time_entry_form') . "\t\n\t  \t\t\t\t\t\t</a>\n\t  \t\t\t\t\t</div>\n  \t\t\t\t\t\t<div id='plugin_mite_new_time_entry'>\n\t  \t\t\t\t\t</div><!-- plugin_mite_new_time_entry -->\n\t  \t\t\t\t\t<input type='hidden' name='plugin_mite_current_bug' value='" . $i_bugId . "' />\n  \t\t\t\t\t\t<input type='hidden' name='plugin_mite_current_project' \n  \t\t\t\t\t\t   \t   value='" . bug_get_field($i_bugId, 'project_id') . "' />\n  \t\t\t\t\t</form>";
     }
     $s_output .= "\n\t  \t\t<div id='plugin_mite_time_entries'></div>\n\t\n  \t\t\t<input type='hidden' id='plugin_mite_current_bug' value='" . $i_bugId . "' />\n\t  \t\t<input type='hidden' id='plugin_mite_current_project' \n\t  \t\t\t   value='" . bug_get_field($i_bugId, 'project_id') . "' />\n  \t\t\n\t\t\t<div id='plugin_mite_messages'>\n\t\t\t\t<div>\n\t\t\t\t\t<a class='closeBtn' href='#'>" . lang_get('plugin_mite_msg_close_message') . "</a>\n\t\t\t\t\t<p></p>\n\t\t\t\t</div>\n  \t\t\t\t<input type='hidden' \n  \t\t\t\t\t   value='" . helper_mantis_url("plugins/" . plugin_get_current() . "/") . "' \n  \t\t\t\t\t   id='plugin_mite_path' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_error_adding_time_entry_fnf' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_error_adding_time_entry_fnf') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_error_adding_time_entry' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_error_adding_time_entry') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_success_adding_time_entry' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_success_adding_time_entry') . "' />\t   \n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_error_loading_time_entries_fnf' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_error_loading_time_entries_fnf') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_missing_time_entry_hours' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_missing_time_entry_hours') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_adding_new_time_entry' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_adding_new_time_entry') . "' />\n\t\t\t\t<input type='hidden' id='plugin_mite_loading_time_entries' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_loading_time_entries') . "' />\n\t\t\t\t<input type='hidden' id='plugin_mite_show_new_time_entry_form' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_show_new_time_entry_form') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_confirm_deleting_time_entry' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_confirm_deleting_time_entry') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_error_deleting_time_entry_fnf' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_error_deleting_time_entry_fnf') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_msg_success_deleting_time_entry' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_success_deleting_time_entry') . "' />\n\t\t\t\t<input type='hidden' id='plugin_mite_msg_error_invalid_date' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_msg_error_invalid_date') . "' />\n  \t\t\t\t<input type='hidden' id='plugin_mite_deleting_time_entry' \n  \t\t\t\t\t   value='" . lang_get('plugin_mite_deleting_time_entry') . "' />  \t\t\t\t\t\t   \n  \t\t\t\t\t   \n  \t\t\t</div><!-- plugin_mite_messages -->\n  \t\t\t</div><!-- plugin_mite_hide_if_no_javascript -->\n  \t\t</td>\n  \t\t</tr>";
     echo $s_output;
 }
Beispiel #19
0
/**
 * Retrieves an internationalized string
 * This function will return one of (in order of preference):
 *  1. The string in the current user's preferred language (if defined)
 *  2. The string in English
 * @param string $p_string
 * @param string $p_lang
 * @return string
 */
function lang_get($p_string, $p_lang = null)
{
    global $g_lang_strings;
    # If no specific language is requested, we'll
    #  try to determine the language from the users
    #  preferences
    $t_lang = $p_lang;
    if (null === $t_lang) {
        $t_lang = lang_get_current();
    }
    // Now we'll make sure that the requested language is loaded
    lang_ensure_loaded($t_lang);
    if (lang_exists($p_string, $t_lang)) {
        return $g_lang_strings[$t_lang][$p_string];
    } else {
        $t_plugin_current = plugin_get_current();
        if (!is_null($t_plugin_current)) {
            lang_load($t_lang, config_get('plugin_path') . $t_plugin_current . DIRECTORY_SEPARATOR . 'lang' . DIRECTORY_SEPARATOR);
            if (lang_exists($p_string, $t_lang)) {
                return $g_lang_strings[$t_lang][$p_string];
            }
        }
        if ($t_lang == 'english') {
            error_parameters($p_string);
            trigger_error(ERROR_LANG_STRING_NOT_FOUND, WARNING);
            return '';
        } else {
            # if string is not found in a language other than english, then retry using the english language.
            return lang_get($p_string, 'english');
        }
    }
}
Beispiel #20
0
echo plugin_lang_get('show_graph');
?>
"/>
					</td>
				</tr>
			</table>
		</form>
<?php 
// build the graphs if both an interval and graph type are selected
if (0 != $f_type && $f_interval > 0 && gpc_get('show', '') != '') {
    $t_width = plugin_config_get('window_width');
    $t_summary = $f_type % 2 != 0;
    $t_body = (int) ($f_type / 2);
    $f_start = $t_period->get_start_formatted();
    $f_end = $t_period->get_end_formatted();
    if ($t_body == 1 || $t_body == 3) {
        if ($f_show_as_table) {
            include config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'pages' . DIRECTORY_SEPARATOR . 'bug_graph_bystatus.php';
        } else {
            echo '<br /><img src="' . plugin_page('bug_graph_bystatus.php') . '&amp;width=600&amp;interval=' . $f_interval . '&amp;start_date=' . $f_start . '&amp;end_date=' . $f_end . '&amp;summary=' . $t_summary . '&amp;show_table=0" alt="Bug Graph" />';
        }
    }
    if ($t_body == 2 || $t_body == 3) {
        if ($f_show_as_table) {
            include config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'pages' . DIRECTORY_SEPARATOR . 'bug_graph_bycategory.php';
        } else {
            echo '<br /><img src="' . plugin_page('bug_graph_bycategory.php') . '&amp;width=600&amp;interval=' . $f_interval . '&amp;start_date=' . $f_start . '&amp;end_date=' . $f_end . '&amp;summary=' . $t_summary . '&amp;show_table=0" alt="Bug Graph" />';
        }
    }
}
html_page_bottom();
Beispiel #21
0
/**
 * Allows a plugin to declare a 'child plugin' that
 * can be loaded from the same parent directory.
 * @param string Child plugin basename.
 */
function plugin_child($p_child)
{
    $t_basename = plugin_get_current();
    $t_plugin = plugin_register($t_basename, false, $p_child);
    if (!is_null($t_plugin)) {
        plugin_init($p_child);
    }
    return $t_plugin;
}
Beispiel #22
0
 function init()
 {
     //mantisgraph_autoload();
     $t_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR;
     set_include_path(get_include_path() . PATH_SEPARATOR . $t_path);
 }
auth_reauthenticate();
access_ensure_global_level(config_get('manage_plugin_threshold'));
html_page_top(plugin_lang_get('plugin_title'));
print_manage_menu();
plugin_require_api('core/config_api.php');
$t_this_page = 'manage_config';
ERP_print_menu($t_this_page);
?>

<br />
<table align="center" class="width75" cellspacing="1">

<tr>
	<td class="left">
<?php 
$t_link1 = helper_mantis_url('plugins/' . plugin_get_current() . '/scripts/bug_report_mail.php');
$t_link2 = plugin_page('bug_report_mail');
echo plugin_lang_get('jobsetup') . '<hr />' . '<ol><li><a href="' . $t_link1 . '">' . $t_link1 . '</a></li>' . '<li><a href="' . $t_link2 . '">' . $t_link2 . '</a></li></ol>';
?>
	</td>
</tr>

</table>
<br />

<?php 
if (!extension_loaded('mbstring')) {
    ?>
<table align="center" class="width50" cellspacing="1">

<tr>
<?php

define('RELATIONSHIPCOLUMNVIEW_CORE_FOLDER', 'core');
// URL to RelationshipColumnView plugin
define('RELATIONSHIPCOLUMNVIEW_PLUGIN_URL', config_get_global('path') . 'plugins' . DIRECTORY_SEPARATOR . plugin_get_current() . DIRECTORY_SEPARATOR);
// URL to RelationshipColumnView plugin/core
define('RELATIONSHIPCOLUMNVIEW_CORE_RELATIVE_URL', 'plugins' . DIRECTORY_SEPARATOR . plugin_get_current() . DIRECTORY_SEPARATOR . RELATIONSHIPCOLUMNVIEW_CORE_FOLDER . DIRECTORY_SEPARATOR);
// Path to RelationshipColumnView plugin folder
define('RELATIONSHIPCOLUMNVIEW_PLUGIN_URI', config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR);
// Path to RelationshipColumnView core folder
define('RELATIONSHIPCOLUMNVIEW_CORE_URI', RELATIONSHIPCOLUMNVIEW_PLUGIN_URI . RELATIONSHIPCOLUMNVIEW_CORE_FOLDER . DIRECTORY_SEPARATOR);
// Default treshold level
define('PLUGINS_RELATIONSHIPCOLUMNVIEW_THRESHOLD_LEVEL_DEFAULT', ADMINISTRATOR);
define("MAX_TOOLTIP_CONTENT_LENGTH", 160);
 function init()
 {
     $t_core_path = config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR;
     require_once $t_core_path . 'specmanagement_constant_api.php';
 }
<?php

// URL to UserProjectView plugin
define('USERPROJECTVIEW_PLUGIN_URL', config_get_global('path') . 'plugins/' . plugin_get_current() . '/');
// Path to UserProjectView plugin folder
define('USERPROJECTVIEW_PLUGIN_URI', config_get_global('plugin_path') . plugin_get_current() . DIRECTORY_SEPARATOR);
// Path to UserProjectView core folder
define('USERPROJECTVIEW_CORE_URI', USERPROJECTVIEW_PLUGIN_URI . 'core' . DIRECTORY_SEPARATOR);
define('PLUGINS_USERPROJECTVIEW_THRESHOLD_LEVEL_DEFAULT', ADMINISTRATOR);
define('PLUGINS_USERPROJECTVIEW_MAX_COLUMNS', 20);
define('PLUGINS_USERPROJECTVIEW_COLUMN_STAT_DEFAULT', 50);
define('PLUGINS_USERPROJECTVIEW_COLUMN_IAMTHRESHOLD', 5);
define('PLUGINS_USERPROJECTVIEW_COLUMN_IAGTHRESHOLD', 30);
define('PLUGINS_USERPROJECTVIEW_COLUMN_CSTATIGN', OFF);
define('PLUGINS_USERPROJECTVIEW_COLUMN_AMOUNT', 3);
define('PLUGINS_USERPROJECTVIEW_IAUHBGCOLOR', '#E67C7C');
define('PLUGINS_USERPROJECTVIEW_URIUHBGCOLOR', '#E67C7C');
define('PLUGINS_USERPROJECTVIEW_NUIHBGCOLOR', '#FCBDBD');
define('PLUGINS_USERPROJECTVIEW_ZIHBGCOLOR', '#F8FFCC');
define('PLUGINS_USERPROJECTVIEW_TAMHBGCOLOR', '#FAD785');
define('USERPROJECTVIEW_FEEDBACK_STATUS', 20);
define('USERPROJECTVIEW_ASSIGNED_STATUS', 50);
define('USERPROJECTVIEW_RESOLVED_STATUS', 80);
define('USERPROJECTVIEW_CLOSED_STATUS', 90);
Beispiel #27
0
/**
 * Retrieves an internationalized string
 * This function will return one of (in order of preference):
 *  1. The string in the current user's preferred language (if defined)
 *  2. The string in English
 * @param string $p_string
 * @param string $p_lang
 * @param bool $p_error default: true - error if string not found
 * @return string
 */
function lang_get($p_string, $p_lang = null, $p_error = true)
{
    global $g_lang_strings;
    # If no specific language is requested, we'll
    #  try to determine the language from the users
    #  preferences
    $t_lang = $p_lang;
    if (null === $t_lang) {
        $t_lang = lang_get_current();
    }
    // Now we'll make sure that the requested language is loaded
    lang_ensure_loaded($t_lang);
    // Step 1 - see if language string exists in requested language
    if (lang_exists($p_string, $t_lang)) {
        return $g_lang_strings[$t_lang][$p_string];
    } else {
        // Language string doesn't exist in requested language
        // Step 2 - See if language string exists in current plugin
        $t_plugin_current = plugin_get_current();
        if (!is_null($t_plugin_current)) {
            // Step 3 - Plugin exists: load language file
            lang_load($t_lang, config_get('plugin_path') . $t_plugin_current . DIRECTORY_SEPARATOR . 'lang' . DIRECTORY_SEPARATOR);
            if (lang_exists($p_string, $t_lang)) {
                return $g_lang_strings[$t_lang][$p_string];
            }
            // Step 4 - Localised language entry didn't exist - fallback to english for plugin
            lang_load('english', config_get('plugin_path') . $t_plugin_current . DIRECTORY_SEPARATOR . 'lang' . DIRECTORY_SEPARATOR);
            if (lang_exists($p_string, $t_lang)) {
                return $g_lang_strings[$t_lang][$p_string];
            }
        }
        // Step 5 - string didn't exist, try fall back to english:
        if ($t_lang == 'english') {
            if ($p_error) {
                error_parameters($p_string);
                trigger_error(ERROR_LANG_STRING_NOT_FOUND, WARNING);
            }
            return '';
        } else {
            // if string is not found in a language other than english, then retry using the english language.
            return lang_get($p_string, 'english');
        }
    }
}
Beispiel #28
0
 /**
  * init function
  */
 function init()
 {
     spl_autoload_register(array('MantisGraphPlugin', 'autoload'));
     $t_path = config_get_global('plugin_path') . plugin_get_current() . '/core/';
     set_include_path(get_include_path() . PATH_SEPARATOR . $t_path);
 }
Beispiel #29
0
/**
 * Retrieves an internationalized string
 * This function will return one of (in order of preference):
 *  1. The string in the current user's preferred language (if defined)
 *  2. The string in English
 * @param string $p_string
 * @param string $p_lang
 * @return string
 */
function lang_get($p_string, $p_lang = null)
{
    global $g_lang_strings;
    # If no specific language is requested, we'll
    #  try to determine the language from the users
    #  preferences
    $t_lang = $p_lang;
    if (null === $t_lang) {
        $t_lang = lang_get_current();
    }
    // Now we'll make sure that the requested language is loaded
    lang_ensure_loaded($t_lang);
    # note in the current implementation we always return the same value
    #  because we don't have a concept of falling back on a language.  The
    #  language files actually *contain* English strings if none has been
    #  defined in the correct language
    # @todo thraxisp - not sure if this is still true. Strings from last language loaded
    #      may still be in memeory if a new language is loaded.
    if (lang_exists($p_string, $t_lang)) {
        return $g_lang_strings[$t_lang][$p_string];
    } else {
        $t_plugin_current = plugin_get_current();
        if (!is_null($t_plugin_current)) {
            lang_load($t_lang, config_get('plugin_path') . $t_plugin_current . DIRECTORY_SEPARATOR . 'lang' . DIRECTORY_SEPARATOR);
            if (lang_exists($p_string, $t_lang)) {
                return $g_lang_strings[$t_lang][$p_string];
            }
        }
        if ($t_lang == 'english') {
            error_parameters($p_string);
            trigger_error(ERROR_LANG_STRING_NOT_FOUND, WARNING);
            return '';
        } else {
            # if string is not found in a language other than english, then retry using the english language.
            return lang_get($p_string, 'english');
        }
    }
}
Beispiel #30
0
function ERP_output_config_option($p_name, $p_type, $p_def_value = NULL, $p_function_name = NULL, $p_function_parameter = NULL)
{
    // $p_def_value has special purposes when it contains certain values. See below
    if ($p_def_value === NULL && !is_blank($p_name) && !in_array($p_type, array('empty', 'header', 'submit'), TRUE)) {
        $t_value = plugin_config_get($p_name);
    } elseif (is_array($p_def_value) && (!in_array($p_type, array('dropdown_multiselect', 'dropdown_multiselect_any', 'custom'), TRUE) || in_array($p_type, array('dropdown_multiselect', 'dropdown_multiselect_any', 'custom'), TRUE) && (count($p_def_value) === 0 || array_values($p_def_value) !== $p_def_value))) {
        $t_value = isset($p_def_value[$p_name]) ? $p_def_value[$p_name] : NULL;
    } else {
        $t_value = $p_def_value;
    }
    // incase we are used from within another plugin, we need to modify its name
    if (plugin_get_current() !== 'EmailReporting') {
        $t_input_name = 'plugin_content[' . plugin_get_current() . '][' . $p_name . ']';
    } else {
        $t_input_name = $p_name;
    }
    $t_input_name = string_attribute($t_input_name);
    if (strcasecmp($t_input_name, 'username') === 0 || strcasecmp($t_input_name, 'password') === 0) {
        trigger_error(plugin_lang_get('input_name_not_allowed'), ERROR);
    }
    $t_function_name = 'ERP_custom_function_' . $p_function_name;
    switch ($p_type) {
        case 'empty':
        case 'header':
            echo '
<tr>
	<td class="form-title" ' . (is_blank($t_value) ? 'width="100%" colspan="3"' : 'width="60%"') . '>
		' . (!is_blank($p_name) ? ($p_type === 'header' ? plugin_lang_get('plugin_title') . ': ' : NULL) . plugin_lang_get($p_name) : '&nbsp;') . '
	</td>';
            if (!is_blank($t_value)) {
                echo '<td class="right" width="40%" colspan="2"><a href="' . plugin_page($t_value) . '">' . plugin_lang_get($t_value) . '</a></td>';
            }
            echo '</tr>';
            break;
        case 'hidden':
            echo '<input type="hidden" name="' . $t_input_name . '" value="' . string_attribute($t_value) . '"/>';
            break;
        case 'radio_buttons':
            echo '<tr ' . helper_alternate_class() . '><td class="center" width="100%" colspan="3">';
            if (function_exists($t_function_name)) {
                $t_function_name($t_input_name, $t_value, $p_function_parameter);
            } else {
                echo '<span class="negative">' . plugin_lang_get('function_not_found', 'EmailReporting') . ': ' . $t_function_name . '</span>';
            }
            echo '</td></tr>';
            break;
        case 'submit':
            echo '<tr><td class="center" width="100%" colspan="3"><input ' . helper_get_tab_index() . ' type="submit" class="button" value="' . plugin_lang_get($p_name) . '" /></td></tr>';
            break;
        case 'boolean':
        case 'directory_string':
        case 'disabled':
        case 'integer':
        case 'string':
        case 'string_multiline':
        case 'string_multiline_array':
        case 'string_password':
        case 'dropdown':
        case 'dropdown_any':
        case 'dropdown_multiselect':
        case 'dropdown_multiselect_any':
            echo '<tr ' . helper_alternate_class() . '><td class="category" width="60%">';
            ERP_print_documentation_link($p_name);
            echo '</td>';
            switch ($p_type) {
                case 'boolean':
                    echo '<td class="center" width="20%"><label><input ' . helper_get_tab_index() . ' type="radio" name="' . $t_input_name . '" value="' . ON . '" ';
                    check_checked((int) $t_value, ON);
                    echo '/>' . lang_get('yes') . '</label></td>';
                    echo '<td class="center" width="20%"><label><input ' . helper_get_tab_index() . ' type="radio" name="' . $t_input_name . '" value="' . OFF . '" ';
                    // NULL can also be interpreted as 0. But in this case NULL means no option chosen
                    if ($t_value !== NULL) {
                        check_checked((int) $t_value, OFF);
                    }
                    echo '/>' . lang_get('no') . '</label></td>';
                    break;
                case 'directory_string':
                    $t_dir = $t_value;
                    if (is_dir($t_dir)) {
                        $t_result_is_dir_color = 'positive';
                        $t_result_is_dir_text = plugin_lang_get('directory_exists', 'EmailReporting');
                        if (is_writable($t_dir)) {
                            $t_result_is_writable_color = 'positive';
                            $t_result_is_writable_text = plugin_lang_get('directory_writable', 'EmailReporting');
                        } else {
                            $t_result_is_writable_color = 'negative';
                            $t_result_is_writable_text = plugin_lang_get('directory_unwritable', 'EmailReporting');
                        }
                    } else {
                        $t_result_is_dir_color = 'negative';
                        $t_result_is_dir_text = plugin_lang_get('directory_unavailable', 'EmailReporting');
                        $t_result_is_writable_color = NULL;
                        $t_result_is_writable_text = NULL;
                    }
                    echo '
	<td class="center" width="20%">
		<input ' . helper_get_tab_index() . ' type="text" size="30" maxlength="200" name="' . $t_input_name . '" value="' . string_attribute($t_dir) . '"/>
	</td>
	<td class="center" width="20%">
		<span class="' . $t_result_is_dir_color . '">' . $t_result_is_dir_text . '</span><br /><span class="' . $t_result_is_writable_color . '">' . $t_result_is_writable_text . '</span>
	</td>';
                    break;
                case 'disabled':
                    echo '<td class="center" width="40%" colspan="2">' . plugin_lang_get('disabled');
                    ERP_output_config_option($t_input_name, 'hidden', $t_value);
                    echo '</td>';
                    break;
                case 'integer':
                case 'string':
                    echo '<td class="center" width="40%" colspan="2"><input ' . helper_get_tab_index() . ' type="text" size="50" maxlength="100" name="' . $t_input_name . '" value="' . string_attribute($t_value) . '"/></td>';
                    break;
                case 'string_multiline':
                case 'string_multiline_array':
                    echo '<td class="center" width="40%" colspan="2"><textarea ' . helper_get_tab_index() . ' cols="40" rows="6" name="' . $t_input_name . '">';
                    if (is_array($t_value)) {
                        if ($p_type === 'string_multiline_array') {
                            $t_string_array = var_export($t_value, TRUE);
                            $t_string_array = array_map('trim', explode("\n", $t_string_array));
                            // remove the array opening and closing character
                            array_shift($t_string_array);
                            array_pop($t_string_array);
                            $t_string_array = implode("\n", $t_string_array);
                        } else {
                            $t_string_array = implode("\n", $t_value);
                        }
                        echo string_textarea($t_string_array);
                    } else {
                        echo string_textarea($t_value);
                    }
                    echo '</textarea></td>';
                    break;
                case 'string_password':
                    echo '<td class="center" width="40%" colspan="2"><input ' . helper_get_tab_index() . ' type="password" size="50" maxlength="50" name="' . $t_input_name . '" value="' . string_attribute(base64_decode($t_value)) . '"/></td>';
                    break;
                case 'dropdown':
                case 'dropdown_any':
                case 'dropdown_multiselect':
                case 'dropdown_multiselect_any':
                    echo '<td class="center" width="40%" colspan="2"><select ' . helper_get_tab_index() . ' name="' . $t_input_name . (in_array($p_type, array('dropdown_multiselect', 'dropdown_multiselect_any'), TRUE) ? '[]" multiple size="6' : NULL) . '">';
                    if (function_exists($t_function_name)) {
                        if (in_array($p_type, array('dropdown_any', 'dropdown_multiselect_any'), TRUE)) {
                            echo '<option value="' . META_FILTER_ANY . '"';
                            check_selected((array) $t_value, META_FILTER_ANY);
                            echo '>[' . lang_get('any') . ']</option>';
                        }
                        $t_function_name($t_value, $p_function_parameter);
                    } else {
                        echo '<option class="negative">' . plugin_lang_get('function_not_found', 'EmailReporting') . ': ' . $t_function_name . '</option>';
                    }
                    echo '</select></td>';
                    break;
                default:
                    echo '<tr><td colspan="3">' . plugin_lang_get('unknown_setting', 'EmailReporting') . $p_name . ' -> level 2</td></tr>';
            }
            echo '</tr>';
            break;
        case 'custom':
            if (function_exists($t_function_name)) {
                $t_function_name($p_name, $t_value, $p_function_parameter);
            } else {
                echo '<option class="negative">' . plugin_lang_get('function_not_found', 'EmailReporting') . ': ' . $t_function_name . '</option>';
            }
            break;
        default:
            echo '<tr><td colspan="3">' . plugin_lang_get('unknown_setting', 'EmailReporting') . $p_name . ' -> level 1</td></tr>';
    }
}