/**
  * {@inheritdoc}
  */
 public function submitForm(array &$form, FormStateInterface $form_state)
 {
     $values = $form_state->getValues();
     $entry = array('gid' => $values['gid'], 'title' => $values['title'], 'description' => $values['description'], 'time_zone' => $values['time_zone'], 'parent_gid' => empty($values['parent_gid']) ? NULL : $values['parent_gid']);
     // If logo fid is changed, delete old and set new for permanent status.
     $logo_fid = isset($values['logo_fid'][0]) ? $values['logo_fid'][0] : NULL;
     $old_logo_fid = $values['old_logo_fid'];
     if (!empty($logo_fid) && $logo_fid != $old_logo_fid) {
         // Set old file for removal.
         $file = file_load($old_logo_fid);
         if ($file) {
             \Drupal::service('file.usage')->delete($file, 'ea_groupings', 'group', $values['gid']);
         }
         // Add file permanently.
         $file = file_load($logo_fid);
         if ($file) {
             $file->status = FILE_STATUS_PERMANENT;
             $file->save();
             \Drupal::service('file.usage')->add($file, 'ea_groupings', 'group', $values['gid']);
         }
         // Add new fid to entry.
         $entry['logo_fid'] = $logo_fid;
     }
     // Save the submitted entry.
     $return = EAGroupingsStorage::update($entry);
     if ($return) {
         drupal_set_message(t('Updated @title', array('@title' => $entry['title'])));
     }
 }