Index: core/config_api.php
===================================================================
--- core/config_api.php	(revision 994)
+++ core/config_api.php	(working copy)
@@ -164,7 +164,14 @@
 ?>
 <tr <?php echo helper_alternate_class( )?>>
 	<td class="category" width="60%">
-		<?php echo plugin_lang_get( $p_name )?>
+		<?php 
+      $plugin_name = event_signal('EVENT_ERP_GET_EXTRA_FIELD_NAME', $p_name);
+      if ($plugin_name != null)
+        echo $plugin_name;
+      else
+        echo plugin_lang_get( $p_name );
+      
+    ?>
 	</td>
 <?php
 				switch ( $p_type )
@@ -439,7 +446,19 @@
 <?php
 				break;
 
-			default: echo '<tr><td colspan="3">' . plugin_lang_get( 'unknown_setting' ) . $p_name . ' -> level 1</td></tr>';
+			default:
+        $plugin_name = event_signal('EVENT_ERP_GET_EXTRA_FIELD_NAME', $p_name);
+        if ($plugin_name != null)
+        {
+          echo '<tr '.helper_alternate_class( ).'>';
+        	echo '<td class="category" width="60%">'.$plugin_name.'</td>';
+        	echo event_signal('EVENT_ERP_OUTPUT_EXTRA_FIELD_TYPE', array($p_name, $p_type, $t_value));
+        	echo '</tr>';
+        }
+        else
+        {
+          echo '<tr><td colspan="3">' . plugin_lang_get( 'unknown_setting' ) . $p_name . ' -> level 1</td></tr>';
+        }
 		}
 	}
 
Index: core/mail_api.php
===================================================================
--- core/mail_api.php	(revision 994)
+++ core/mail_api.php	(working copy)
@@ -592,6 +592,8 @@
 
 			$t_status = bug_get_field( $t_bug_id, 'status' );
 
+			$t_description = event_signal( 'EVENT_ERP_PROCESS_BUGNOTE_DATA', $t_description, array($p_email, $this->_mailbox) );
+
 			if ( $this->_bug_resolved_status_threshold <= $t_status )
 			{
 				# Reopen issue and add a bug note
@@ -662,6 +664,7 @@
 
 			# Allow plugins to pre-process bug data
 			$t_bug_data = event_signal( 'EVENT_REPORT_BUG_DATA', $t_bug_data );
+			$t_bug_data = event_signal( 'EVENT_ERP_PROCESS_BUG_DATA', $t_bug_data, array($p_email, $this->_mailbox) );
 
 			# Create the bug
 			$t_bug_id = $t_bug_data->create();
Index: EmailReporting.php
===================================================================
--- EmailReporting.php	(revision 995)
+++ EmailReporting.php	(working copy)
@@ -215,6 +215,46 @@
 		}
 	}
 
+	function events() {
+		return array(
+			# Allow other plugins to process bugdata before the bug is added
+			# Parameters are BugData, Email details array, Mailbox data
+			# Result is BugData
+			'EVENT_ERP_PROCESS_BUG_DATA' => EVENT_TYPE_CHAIN,
+
+			# Allow other plugins to process bugnote data before the bug is added
+			# Parameters are bugnote text, Email details array, Mailbox data
+			# Result is bugnote text
+			'EVENT_ERP_PROCESS_BUGNOTE_DATA' => EVENT_TYPE_CHAIN,
+
+      # Allow other plugins to add configuration elements in the form displayed
+      # by manage_mailbox.php in the mailbox_settings_issue section
+      # Parameters are extra fields from other plugins and mailbox data (value of $t_mailbox) 
+      # Result is an array of key/value pairs used as the first two parameters 
+      # in a call to ERP_output_config_options
+			'EVENT_ERP_GET_EXTRA_MAILBOX_SETTINGS_ISSUE_FIELDS' => EVENT_TYPE_CHAIN,
+			
+			# Allow other plugins to add elements in the mailbox data that is saved in the config
+			# Parameters are extra data from other plugins and Mailbox data from manage_mailbox_edit.php
+			# Result is Mailbox data
+			'EVENT_ERP_GET_EXTRA_MAILBOX_DATA' => EVENT_TYPE_CHAIN,
+			
+			# Allow other plugins to give the name for an extra field added via the
+			# EVENT_ERP_GET_EXTRA_MAILBOX_SETTINGS_ISSUE_FIELDS event
+			# Parameter is the name of the extra field
+			# Result is the displayable string as returned by plugin_lang_get 
+			'EVENT_ERP_GET_EXTRA_FIELD_NAME' => EVENT_TYPE_FIRST,
+
+			# Allow other plugins to output the input HTML elements for a specific type
+      # as given for an extra field added via the
+			# EVENT_ERP_GET_EXTRA_MAILBOX_SETTINGS_ISSUE_FIELDS event
+			# Parameters are the name, the type and the value of the extra field 
+			# Result is the HTML code that will be displayed on the right part of the table
+      # and must include the <td></td> tags 
+			'EVENT_ERP_OUTPUT_EXTRA_FIELD_TYPE' => EVENT_TYPE_FIRST,
+		);
+	}
+
 	/**
 	 * EmailReporting plugin hooks.
 	 */
Index: pages/manage_mailbox.php
===================================================================
--- pages/manage_mailbox.php	(revision 994)
+++ pages/manage_mailbox.php	(working copy)
@@ -73,6 +73,14 @@
 ERP_output_config_option( 'mailbox_project_id', 'dropdown_projects', -3, $t_mailbox );
 ERP_output_config_option( 'mailbox_global_category_id', 'dropdown_global_categories', -3, $t_mailbox );
 
+$extra_fields = event_signal('EVENT_ERP_GET_EXTRA_MAILBOX_SETTINGS_ISSUE_FIELDS', null, $t_mailbox);
+
+if (is_array($extra_fields))
+{
+  foreach ($extra_fields as $field_id => $field_type_id)
+    ERP_output_config_option( $field_id, $field_type_id, -3, $t_mailbox );
+}
+
 ERP_output_config_option( $f_mailbox_action . '_mailbox', 'submit' );
 
 ?>
Index: pages/manage_mailbox_edit.php
===================================================================
--- pages/manage_mailbox_edit.php	(revision 994)
+++ pages/manage_mailbox_edit.php	(working copy)
@@ -31,6 +31,11 @@
 
 		$t_mailbox += $t_mailbox_imap;
 	}
+	
+	$t_extra_data = event_signal('EVENT_ERP_GET_EXTRA_MAILBOX_DATA', null, array($t_mailbox));
+	
+	if (is_array($t_extra_data))
+	 $t_mailbox = array_merge($t_mailbox, $t_extra_data);
 }
 
 if ( $f_mailbox_action === 'add' || $f_mailbox_action === 'copy' )
