|  | @@ -13,9 +13,6 @@
 | 
	
		
			
				|  |  |  function tripal_registration_form($form, &$form_state) {
 | 
	
		
			
				|  |  |    $form_data = unserialize(variable_get('tripal_site_registration', NULL));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  $form_state['details']['funding'] =
 | 
	
		
			
				|  |  | -    isset($form_state['details']['funding']) ? $form_state['details']['funding'] : 1;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |    $form['description'] = [
 | 
	
		
			
				|  |  |      '#title' => 'Why Register your Site?',
 | 
	
		
			
				|  |  |      '#type' => 'item',
 | 
	
	
		
			
				|  | @@ -43,12 +40,35 @@ function tripal_registration_form($form, &$form_state) {
 | 
	
		
			
				|  |  |      '#title' => t('Do not register this site (opt-out).'),
 | 
	
		
			
				|  |  |      '#default_value' => isset($form_data['values']['disable_tripal_reporting']) ? $form_data['values']['disable_tripal_reporting'] : NULL,
 | 
	
		
			
				|  |  |      '#description' => "If you do not want to register your site please check
 | 
	
		
			
				|  |  | -      this box as it will stop the reminder notifications.  You can return later and register at any time.",
 | 
	
		
			
				|  |  | +      this box. You will no longer be notified to register and no details will be submitted.  You can return later and register at any time.",
 | 
	
		
			
				|  |  |      '#ajax' => array(
 | 
	
		
			
				|  |  | -      'callback' => '_tripal_form_disable_reg_callback',
 | 
	
		
			
				|  |  | -      'event' => 'click',
 | 
	
		
			
				|  |  | +      'callback' => 'custom_registration_ajax_disable_reg_callback',
 | 
	
		
			
				|  |  | +      'wrapper' => 'reg-details',
 | 
	
		
			
				|  |  |      ),
 | 
	
		
			
				|  |  |    );
 | 
	
		
			
				|  |  | +  $opt_out = $form_data['values']['disable_tripal_reporting'];
 | 
	
		
			
				|  |  | +  if (array_key_exists('values', $form_state) and
 | 
	
		
			
				|  |  | +      array_key_exists('disable_tripal_reporting', $form_state['values'])){
 | 
	
		
			
				|  |  | +        $opt_out = $form_state['values']['disable_tripal_reporting'] ? TRUE : FALSE;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  if ($opt_out) {
 | 
	
		
			
				|  |  | +    $form['details'] = [
 | 
	
		
			
				|  |  | +        '#type' => 'markup',
 | 
	
		
			
				|  |  | +        '#prefix' => '<div id="reg-details">',
 | 
	
		
			
				|  |  | +        '#suffix' => '</div>',
 | 
	
		
			
				|  |  | +    ];
 | 
	
		
			
				|  |  | +    return $form;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  $form['details'] = [
 | 
	
		
			
				|  |  | +    '#type' => 'fieldset',
 | 
	
		
			
				|  |  | +    '#title' => t('Registration Details'),
 | 
	
		
			
				|  |  | +    '#collapsible' => TRUE,
 | 
	
		
			
				|  |  | +    '#collapsed' => FALSE,
 | 
	
		
			
				|  |  | +    '#disabled' => $opt_out,
 | 
	
		
			
				|  |  | +    '#prefix' => '<div id="reg-details">',
 | 
	
		
			
				|  |  | +    '#suffix' => '</div>',
 | 
	
		
			
				|  |  | +  ];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    $purpose = array(0 => t('Production'), 1 => t('Development'), 2 => t('Experimental'));
 | 
	
		
			
				|  |  |    $form['details']['tripal_reg_site_purpose'] = array(
 | 
	
	
		
			
				|  | @@ -56,10 +76,10 @@ function tripal_registration_form($form, &$form_state) {
 | 
	
		
			
				|  |  |        '#title' => t('Site Status'),
 | 
	
		
			
				|  |  |        '#default_value' => isset($form_data['values']['tripal_reg_site_purpose']) ? $form_data['values']['tripal_reg_site_purpose'] : NULL,
 | 
	
		
			
				|  |  |        '#options' => $purpose,
 | 
	
		
			
				|  |  | -      '#required' => FALSE,
 | 
	
		
			
				|  |  | -      '#description' => t('Please register your site regardless if it is experimental (to explore tripal), 
 | 
	
		
			
				|  |  | -       for development of a future site (or updates to an existing site), or a site currently 
 | 
	
		
			
				|  |  | -       in production. For funding, it is important to know how many sites are active for each category.  If your site changes 
 | 
	
		
			
				|  |  | +      '#required' => TRUE,
 | 
	
		
			
				|  |  | +      '#description' => t('Please register your site regardless if it is experimental (to explore tripal),
 | 
	
		
			
				|  |  | +       for development of a future site (or updates to an existing site), or a site currently
 | 
	
		
			
				|  |  | +       in production. For funding, it is important to know how many sites are active for each category.  If your site changes
 | 
	
		
			
				|  |  |         status, such as from development to production, please remember to return and update the purpose.')
 | 
	
		
			
				|  |  |    );
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -74,7 +94,7 @@ function tripal_registration_form($form, &$form_state) {
 | 
	
		
			
				|  |  |        '#type' => 'textarea',
 | 
	
		
			
				|  |  |        '#title' => t('Description of the site'),
 | 
	
		
			
				|  |  |        '#default_value' => isset($form_data['values']['tripal_reg_site_description']) ? $form_data['values']['tripal_reg_site_description'] : NULL,
 | 
	
		
			
				|  |  | -      '#required' => FALSE,
 | 
	
		
			
				|  |  | +      '#required' => TRUE,
 | 
	
		
			
				|  |  |        '#description' => t('Please provide a brief description of this site.  Consider including
 | 
	
		
			
				|  |  |       details such as its purpose, the primary data types your site provides, and the
 | 
	
		
			
				|  |  |       research community your site serves.')
 | 
	
	
		
			
				|  | @@ -139,76 +159,76 @@ function tripal_registration_form($form, &$form_state) {
 | 
	
		
			
				|  |  |      '#suffix' => '</div>',
 | 
	
		
			
				|  |  |    );
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  $count = count($form_data['values']['funding']);
 | 
	
		
			
				|  |  | -  if ($form_state['details']['funding'] < $count) {
 | 
	
		
			
				|  |  | -    $form_state['details']['funding'] = $form_state['details']['funding'] + $count;
 | 
	
		
			
				|  |  | +  $num_sources = 1;
 | 
	
		
			
				|  |  | +  if (isset($form_data['values']['funding'])) {
 | 
	
		
			
				|  |  | +    $num_sources = count(array_keys($form_data['values']['funding'])) + 1;
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | -  else {
 | 
	
		
			
				|  |  | -    $form_state['details']['funding'] = $form_state['details']['funding'] + 1;
 | 
	
		
			
				|  |  | +  if (array_key_exists('triggering_element', $form_state) and
 | 
	
		
			
				|  |  | +      $form_state['triggering_element']['#name'] == 'add_funding') {
 | 
	
		
			
				|  |  | +    $num_sources++;
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  for ($i = 1; $i <= $form_state['details']['funding']; $i++) {
 | 
	
		
			
				|  |  | -    if ($i === $form_state['details']['funding']) {
 | 
	
		
			
				|  |  | -      $form['details']['funding'][$i] = array(
 | 
	
		
			
				|  |  | -        '#type' => 'fieldset',
 | 
	
		
			
				|  |  | -        '#title' => t("Funding Source $i"),
 | 
	
		
			
				|  |  | -        '#tree' => TRUE,
 | 
	
		
			
				|  |  | -        '#collapsible' => TRUE,
 | 
	
		
			
				|  |  | -        '#collapsed' => FALSE,
 | 
	
		
			
				|  |  | -        '#description' => t('When requesting funds for additional Tripal development,
 | 
	
		
			
				|  |  | -       it is important to report the breadth of of funding sources for Tripal sites.
 | 
	
		
			
				|  |  | -       Please consider sharing this information by providing the granting
 | 
	
		
			
				|  |  | -       agency, and funding periods.')
 | 
	
		
			
				|  |  | -      );
 | 
	
		
			
				|  |  | +  for ($i = 1; $i <= $num_sources; $i++) {
 | 
	
		
			
				|  |  | +    $collapsed = TRUE;
 | 
	
		
			
				|  |  | +    $tripal_reg_site_agency = '';
 | 
	
		
			
				|  |  | +    $tripal_reg_site_grant = '';
 | 
	
		
			
				|  |  | +    $tripal_reg_site_amount = '';
 | 
	
		
			
				|  |  | +    $tripal_reg_site_start = date('Y', time());
 | 
	
		
			
				|  |  | +    $tripal_reg_site_end = date('Y', time());
 | 
	
		
			
				|  |  | +    if ($i == $num_sources) {
 | 
	
		
			
				|  |  | +      $collapsed = FALSE;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    else {
 | 
	
		
			
				|  |  | -      $form['details']['funding'][$i] = array(
 | 
	
		
			
				|  |  | -        '#type' => 'fieldset',
 | 
	
		
			
				|  |  | -        '#title' => t("Funding Source $i"),
 | 
	
		
			
				|  |  | -        '#tree' => TRUE,
 | 
	
		
			
				|  |  | -        '#collapsible' => TRUE,
 | 
	
		
			
				|  |  | -        '#collapsed' => TRUE,
 | 
	
		
			
				|  |  | -        '#description' => t('When requesting funds for additional Tripal development,
 | 
	
		
			
				|  |  | -       it is important to report the breadth of of funding sources for Tripal sites.
 | 
	
		
			
				|  |  | -       Please consider sharing this information by providing the granting
 | 
	
		
			
				|  |  | -       agency, and funding periods.')
 | 
	
		
			
				|  |  | -      );
 | 
	
		
			
				|  |  | +    if ($i < $num_sources) {
 | 
	
		
			
				|  |  | +      $source = $form_data['values']['funding'][$i-1];
 | 
	
		
			
				|  |  | +      $tripal_reg_site_agency = $source['tripal_reg_site_agency'];
 | 
	
		
			
				|  |  | +      $tripal_reg_site_grant = $source['tripal_reg_site_grant'];
 | 
	
		
			
				|  |  | +      $tripal_reg_site_amount = $source['tripal_reg_site_amount'];
 | 
	
		
			
				|  |  | +      $tripal_reg_site_start = $source['funding_period']['tripal_reg_site_start'];
 | 
	
		
			
				|  |  | +      $tripal_reg_site_end = $source['funding_period']['tripal_reg_site_end'];
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | +    $form['details']['funding'][$i] = array(
 | 
	
		
			
				|  |  | +      '#type' => 'fieldset',
 | 
	
		
			
				|  |  | +      '#title' => t("Funding Source %index, %name", ['%index' => $i, '%name' => $tripal_reg_site_agency]),
 | 
	
		
			
				|  |  | +      '#tree' => TRUE,
 | 
	
		
			
				|  |  | +      '#collapsible' => TRUE,
 | 
	
		
			
				|  |  | +      '#collapsed' => $collapsed,
 | 
	
		
			
				|  |  | +      '#description' => t('When requesting funds for additional Tripal development,
 | 
	
		
			
				|  |  | +     it is important to report the breadth of of funding sources for Tripal sites.
 | 
	
		
			
				|  |  | +     Please consider sharing this information by providing the granting
 | 
	
		
			
				|  |  | +     agency, and funding periods.')
 | 
	
		
			
				|  |  | +    );
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      $form['details']['funding'][$i]['tripal_reg_site_agency'] = array(
 | 
	
		
			
				|  |  |        '#type' => 'textfield',
 | 
	
		
			
				|  |  | -      '#default_value' => isset($form_data['values']['funding'][$i]['tripal_reg_site_agency']) ? $form_data['values']['funding'][$i]['tripal_reg_site_agency'] : NULL,
 | 
	
		
			
				|  |  | +        '#default_value' => $tripal_reg_site_agency,
 | 
	
		
			
				|  |  |        '#title' => t('Funding Agency'),
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      $form['details']['funding'][$i]['tripal_reg_site_grant'] = array(
 | 
	
		
			
				|  |  |        '#type' => 'textfield',
 | 
	
		
			
				|  |  | -      '#default_value' => isset($form_data['values']['funding'][$i]['tripal_reg_site_grant']) ? $form_data['values']['funding'][$i]['tripal_reg_site_grant'] : NULL,
 | 
	
		
			
				|  |  | -      '#title' => t('Grant Number'),
 | 
	
		
			
				|  |  | +      '#default_value' => $tripal_reg_site_grant,
 | 
	
		
			
				|  |  | +      '#title' => t('Grant/Award Number'),
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  |      $form['details']['funding'][$i]['tripal_reg_site_amount'] = array(
 | 
	
		
			
				|  |  |        '#type' => 'textfield',
 | 
	
		
			
				|  |  | -      '#default_value' => isset($form_data['values']['funding'][$i]['tripal_reg_site_amount']) ? $form_data['values']['funding'][$i]['tripal_reg_site_amount'] : NULL,
 | 
	
		
			
				|  |  | +        '#default_value' => $tripal_reg_site_amount,
 | 
	
		
			
				|  |  |        '#title' => t('Funding Amount'),
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      $form['details']['funding'][$i]['funding_period'] = array(
 | 
	
		
			
				|  |  |        '#type' => 'fieldset',
 | 
	
		
			
				|  |  |        '#title' => t('Funding Period'),
 | 
	
		
			
				|  |  |        '#tree' => TRUE,
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      $form['details']['funding'][$i]['funding_period']['tripal_reg_site_start'] = array(
 | 
	
		
			
				|  |  |        '#type' => 'date_select',
 | 
	
		
			
				|  |  |        '#title' => t("Start"),
 | 
	
		
			
				|  |  | -      '#default_value' => isset($form_data['values']['funding'][$i]['funding_period']['tripal_reg_site_start']) ? $form_data['values']['funding'][$i]['funding_period']['tripal_reg_site_start'] : date('Y', time()),
 | 
	
		
			
				|  |  | +      '#default_value' => $tripal_reg_site_start,
 | 
	
		
			
				|  |  |        '#date_year_range' => '-20:+20',
 | 
	
		
			
				|  |  |        '#date_format' => 'Y',
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      $form['details']['funding'][$i]['funding_period']['tripal_reg_site_end'] = array(
 | 
	
		
			
				|  |  |        '#type' => 'date_select',
 | 
	
		
			
				|  |  |        '#title' => t('End'),
 | 
	
		
			
				|  |  | -      '#default_value' => isset($form_data['values']['funding'][$i]['funding_period']['tripal_reg_site_end']) ? $form_data['values']['funding'][$i]['funding_period']['tripal_reg_site_end'] : date('Y', time()),
 | 
	
		
			
				|  |  | +      '#default_value' => $tripal_reg_site_end,
 | 
	
		
			
				|  |  |        '#date_year_range' => '-20:+20',
 | 
	
		
			
				|  |  |        '#date_format' => 'Y',
 | 
	
		
			
				|  |  |      );
 | 
	
	
		
			
				|  | @@ -216,39 +236,42 @@ function tripal_registration_form($form, &$form_state) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    $form['details']['funding']['add_funding'] = array(
 | 
	
		
			
				|  |  |      '#type' => 'button',
 | 
	
		
			
				|  |  | +    '#name' => 'add_funding',
 | 
	
		
			
				|  |  |      '#value' => t('Add additional funding sources'),
 | 
	
		
			
				|  |  |      '#href' => '',
 | 
	
		
			
				|  |  | +    '#limit_validation_errors' => [],
 | 
	
		
			
				|  |  |      '#ajax' => array(
 | 
	
		
			
				|  |  |        'callback' => 'custom_registration_ajax_add_funding',
 | 
	
		
			
				|  |  |        'wrapper' => 'funding',
 | 
	
		
			
				|  |  |      ),
 | 
	
		
			
				|  |  |    );
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  // Provide a submit button.
 | 
	
		
			
				|  |  | -  if (!empty($form_data)) {
 | 
	
		
			
				|  |  | -    $form['submit'] = array(
 | 
	
		
			
				|  |  | -      '#type' => 'submit',
 | 
	
		
			
				|  |  | -      '#value' => 'Update registration information',
 | 
	
		
			
				|  |  | -    );
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  else {
 | 
	
		
			
				|  |  | -    $form['submit'] = array(
 | 
	
		
			
				|  |  | -      '#type' => 'submit',
 | 
	
		
			
				|  |  | -      '#value' => 'Register Site',
 | 
	
		
			
				|  |  | -    );
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +  $form['details']['submit'] = array(
 | 
	
		
			
				|  |  | +    '#type' => 'submit',
 | 
	
		
			
				|  |  | +    '#value' => 'Submit',
 | 
	
		
			
				|  |  | +  );
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    return $form;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  function custom_registration_ajax_add_funding($form, $form_state) {
 | 
	
		
			
				|  |  | +  // Save the current state of the registration form.
 | 
	
		
			
				|  |  | +  tripal_registration_form_save_registration_info($form_state);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |    return $form['details']['funding'];
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -function _tripal_form_disable_reg_callback($form, &$form_state) {
 | 
	
		
			
				|  |  | +function custom_registration_ajax_disable_reg_callback($form, &$form_state) {
 | 
	
		
			
				|  |  | +  // Save the current state of the registration form.
 | 
	
		
			
				|  |  | +  tripal_registration_form_save_registration_info($form_state);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  // Turn off the notice to register the site.
 | 
	
		
			
				|  |  |    variable_set('disable_tripal_reporting', TRUE);
 | 
	
		
			
				|  |  | +  if ($form_state['values']['disable_tripal_reporting']) {
 | 
	
		
			
				|  |  | +    drupal_set_message('You have opted-out of registation.');
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  return $form['details'];
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /**
 | 
	
	
		
			
				|  | @@ -261,18 +284,43 @@ function _tripal_form_disable_reg_callback($form, &$form_state) {
 | 
	
		
			
				|  |  |   *   during processing.
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  function tripal_registration_form_validate($form, &$form_state){
 | 
	
		
			
				|  |  | -  $mail_pi = $form_state['values']['principal_investigator_email'];
 | 
	
		
			
				|  |  | -  $mail_sa = $form_state['values']['tripal_reg_site_admin_email'];
 | 
	
		
			
				|  |  | -  if ($form_state['values']['disable_tripal_reporting'] != TRUE) {
 | 
	
		
			
				|  |  | -    if (!empty($mail_pi) && !valid_email_address($mail_pi)) {
 | 
	
		
			
				|  |  | -      form_set_error('[details][principal_investigator][principal_investigator_email]', t('The email address for the principal investigator appears to be invalid.'));
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    if(!empty($mail_sa) && !valid_email_address($mail_sa)) {
 | 
	
		
			
				|  |  | -      form_set_error('[details][site_admin][tripal_reg_site_admin_email]', t("The email address for the site administrator appears to be invalid."));
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +  $mail_pi = array_key_exists('principal_investigator_email', $form_state['values']) ? $form_state['values']['principal_investigator_email'] : '';
 | 
	
		
			
				|  |  | +  $mail_sa = array_key_exists('tripal_reg_site_admin_email', $form_state['values']) ? $form_state['values']['tripal_reg_site_admin_email'] : '';
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  if ($form_state['values']['disable_tripal_reporting']) {
 | 
	
		
			
				|  |  | +    return;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  if (!$mail_pi and !$mail_sa) {
 | 
	
		
			
				|  |  | +    form_set_error('principal_investigator_email', t('Please provide an email address for the principal investigator or the site admin.'));
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  if (!empty($mail_pi) && !valid_email_address($mail_pi)) {
 | 
	
		
			
				|  |  | +    form_set_error('principal_investigator_email', t('The email address for the principal investigator appears to be invalid.'));
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  if(!empty($mail_sa) && !valid_email_address($mail_sa)) {
 | 
	
		
			
				|  |  | +    form_set_error('tripal_reg_site_admin_email', t("The email address for the site administrator appears to be invalid."));
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +/**
 | 
	
		
			
				|  |  | + * Saves the current state of the registration form as a drupal variable.
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +function tripal_registration_form_save_registration_info($form_state) {
 | 
	
		
			
				|  |  | +  // Check for empty funding periods and remove them.
 | 
	
		
			
				|  |  | +  $sources = [];
 | 
	
		
			
				|  |  | +  foreach ($form_state['values']['funding'] as $funding_source) {
 | 
	
		
			
				|  |  | +    if (!empty($funding_source['tripal_reg_site_agency'])) {
 | 
	
		
			
				|  |  | +      $sources[] = $funding_source;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  $form_state['values']['funding'] = $sources;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  // Save the registration details.
 | 
	
		
			
				|  |  | +  $registration = serialize($form_state);
 | 
	
		
			
				|  |  | +  variable_set('tripal_site_registration', $registration);
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  /**
 | 
	
		
			
				|  |  |   * Implements submit from the Form API.
 | 
	
		
			
				|  |  |   *
 | 
	
	
		
			
				|  | @@ -284,20 +332,9 @@ function tripal_registration_form_validate($form, &$form_state){
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  function tripal_registration_form_submit($form, &$form_state) {
 | 
	
		
			
				|  |  |    variable_set('disable_tripal_reporting', TRUE);
 | 
	
		
			
				|  |  | +  tripal_registration_form_save_registration_info($form_state);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  //Check for empty funding periods and remove them.
 | 
	
		
			
				|  |  | -  $j = 1;
 | 
	
		
			
				|  |  | -  foreach ($form_state['values']['funding'] as $funding_source) {
 | 
	
		
			
				|  |  | -    if (!empty($funding_source['tripal_reg_site_agency']) && !empty($funding_source['tripal_reg_site_grant'])) {
 | 
	
		
			
				|  |  | -      $form_state['values']['fundings'][$j] = $funding_source;
 | 
	
		
			
				|  |  | -      $j++;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  $form_state['values']['funding'] = $form_state['values']['fundings'] ?? [];
 | 
	
		
			
				|  |  | -  $registration = serialize($form_state);
 | 
	
		
			
				|  |  | -  variable_set('tripal_site_registration', $registration);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -  //Now send the updated info to the Tripal Site.
 | 
	
		
			
				|  |  | +  // Now send the updated info to the Tripal Site.
 | 
	
		
			
				|  |  |    // Only register with tripal.info if the user has not opt'd out.
 | 
	
		
			
				|  |  |    if ($form_state['values']['disable_tripal_reporting'] == FALSE) {
 | 
	
		
			
				|  |  |      tripal_registration_remote_submit($registration);
 | 
	
	
		
			
				|  | @@ -305,8 +342,8 @@ function tripal_registration_form_submit($form, &$form_state) {
 | 
	
		
			
				|  |  |      drupal_set_message(t('Thank you for registering. You can update your details at any time.'), 'status');
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |    else {
 | 
	
		
			
				|  |  | -    drupal_set_message(t('You are not registered with tripal.info. You can 
 | 
	
		
			
				|  |  | -            change this at any time by unchecking the opt out checkbox and 
 | 
	
		
			
				|  |  | +    drupal_set_message(t('You are not registered with tripal.info. You can
 | 
	
		
			
				|  |  | +            change this at any time by unchecking the opt out checkbox and
 | 
	
		
			
				|  |  |              submitting the form.'), 'status');
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  
 |