/**
  * Add a source of settings. For all these observers, we notify
  * when to update
  *
  * @param Services_Settings_IContainer $source
  */
 public function addSource(Services_Settings_IContainer $source)
 {
     self::$_sources[] = $source;
     self::$_settings = array_merge(self::$_settings, $source->getAllSettings());
     /*
      * When no specific NNTP header / comments server is entered, we override these with the NZB server
      * header. This allows us to always assume those are entered by the user.
      */
     if (empty(self::$_settings['nntp_hdr']['host']) && !empty(self::$_settings['nntp_nzb'])) {
         self::$_settings['nntp_hdr'] = self::$_settings['nntp_nzb'];
     }
     # if
     # Same for the NNTP upload server
     if (empty(self::$_settings['nntp_post']['host']) && !empty(self::$_settings['nntp_nzb'])) {
         self::$_settings['nntp_post'] = self::$_settings['nntp_nzb'];
     }
     # if
 }