function __construct()
 {
     $this->WP_setting = Participants_Db::$participants_db_options;
     // define the settings sections
     // no need to worry about the namespace, it will be prefixed
     $this->sections = array('pdb-main' => __('General Settings', 'participants-database'), 'pdb-signup' => __('Signup Form Settings', 'participants-database'), 'pdb-record' => __('Record Form Settings', 'participants-database'), 'pdb-list' => __('List Display Settings', 'participants-database'), 'pdb-resend' => __('Resend Link Settings', 'participants-database'), 'pdb-advanced' => __('Advanced Settings', 'participants-database'), 'pdb-css' => __('Custom CSS', 'participants-database'));
     self::$section_description = array('pdb-record' => __('Settings for the [pdb_record] shortcode, which is used to show a user-editable form on the website.', 'participants-database'), 'pdb-list' => __('Settings for the [pdb_list] shortcode, which is used to show a list of records from the database.', 'participants-database'), 'pdb-signup' => __('Settings for the [pdb_signup] shortcode, which is used to show a signup or registration form on the website.', 'participants-database'), 'pdb-resend' => __('Settings for the lost private link resend function.', 'participants-database'), 'pdb-advanced' => __('Settings for special configurations.', 'participants-database'), 'pdb-css' => __('User CSS rules for styling plugin displays.</h4><p>If you\'re new to CSS, try this tutorial to help you get started: <a href="http://www.ostraining.com/blog/wordpress/firebug-wordpress-css/">Use Firebug for Editing WordPress Themes.</a></p>', 'participants-database'));
     // determine the type of text-area elements to use for email body settings
     $this->textarea_type = Participants_Db::$plugin_options['html_email'] == '1' ? 'rich-text' : 'text-area';
     // run the parent class initialization to finish setting up the class
     parent::__construct(__CLASS__, $this->WP_setting, $this->sections);
     $this->submit_button = __('Save Plugin Settings', 'participants-database');
     // define the individual settings
     $this->_define_settings();
     // now that the settings have been defined, finish setting
     // up the plugin settings
     $this->initialize();
 }
              </p>
            </fieldset>

            <fieldset class="widefat inline-controls">
              <p>
                <label style="margin-left:0">
                 <?php 
echo __('Duplicate Record Preference', 'participants-database') . ': ';
$parameters = array('type' => 'dropdown', 'name' => 'match_preference', 'value' => $match_preference, 'options' => array(__('Create a new record with the submission', 'participants-database') => 0, __('Overwrite matching record with new data', 'participants-database') => 1, __('Show a validation error message', 'participants-database') => 2, 'null_select' => false));
PDb_FormElement::print_element($parameters);
?>
                </label>
                <label>
              <?php 
echo __('Duplicate Record Check Field', 'participants-database') . ': ';
$parameters = array('type' => 'dropdown', 'name' => 'match_field', 'value' => $match_field, 'options' => array_merge(PDb_Settings::_get_identifier_columns(), array('Record ID' => 'id')));
PDb_FormElement::print_element($parameters);
?>
            </label>
              </p>
            </fieldset>
          <p><?php 
_e('<strong>Note:</strong> Depending on the "Duplicate Record Preference" setting, imported records are checked against existing records by the field set in the "Duplicate Record Check Field" setting. If a record matching an existing record is imported, one of three things can happen, based on the "Duplicate Record Preference" setting:', 'participants-database');
?>
</p>
          <h4 class="inset" id="match-preferences"><?php 
_e('Current Setting', 'participants-database');
?>
: 
            <?php 
$preferences = array('0' => sprintf(__('%sCreate New%s adds all imported records as new records without checking for a match.', 'participants-database'), '<span class="emphasized">', '</span>', '</span>'), '1' => sprintf(__('%sOverwrite%s an existing record with a matching %s will be updated with the data from the imported record. Blank or missing fields will not overwrite existing data.', 'participants-database'), '<span class="emphasized">', '</span>', '<em class="match-field">' . Participants_Db::$fields[$match_field]->title . '</em>'), '2' => sprintf(__('%sDon&#39;t Import%s does not import the new record if it matches the %s of an existing one.', 'participants-database'), '<span class="emphasized">', '</span>', '<em class="match-field">' . Participants_Db::$fields[$match_field]->title . '</em>'));