docs: def is_replication_enabled(host=None, core_name=None):
      '''
      SLAVE CALL
      Check for errors, and determine if a slave is replicating or not.
  
      host : str (None)
          The solr host to query. __opts__['host'] is default.
      core_name : str (None)
          The name of the solr core if using cores. Leave this blank if you are
          not using cores or if you want to check all cores.
  
      Return : dict<str,obj>::
  
          {'success':boolean, 'data':dict, 'errors':list, 'warnings':list}
  
      CLI Example:
  
      .. code-block:: bash
  
          salt '*' solr.is_replication_enabled music
      '''
      ret = _get_return_dict()
      success = True
      # since only slaves can call this let's check the config:
      if _is_master() and host is None:
          errors = ['Only "slave" minions can run "is_replication_enabled"']
          return ret.update({'success': False, 'errors': errors})
  
      # define a convenience method so we don't duplicate code
      def _checks(ret, success, resp, core):
          if response['success']:
              slave = resp['data']['details']['slave']
              # we need to initialize this to false in case there is an error
              # on the master and we can't get this info.
              enabled = 'false'
              master_url = slave['masterUrl']
              # check for errors on the slave
              if 'ERROR' in slave:
                  success = False
                  err = "{0}: {1} - {2}".format(core, slave['ERROR'], master_url)
                  resp['errors'].append(err)
                  # if there is an error return everything
                  data = slave if core is None else {core: {'data': slave}}
              else:
                  enabled = slave['masterDetails']['master'][
                      'replicationEnabled']
                  # if replication is turned off on the master, or polling is
                  # disabled we need to return false. These may not be errors,
                  # but the purpose of this call is to check to see if the slaves
                  # can replicate.
              if enabled == 'false':
                  resp['warnings'].append("Replication is disabled on master.")
                  success = False
              if slave['isPollingDisabled'] == 'true':
                  success = False
                  resp['warning'].append("Polling is disabled")
              # update the return
              ret = _update_return_dict(ret, success, data,
                                          resp['errors'], resp['warnings'])
          return (ret, success)
  
      if _get_none_or_value(core_name) is None and _check_for_cores():
          for name in __opts__['solr.cores']:
              response = _replication_request('details', host=host,
                                              core_name=name)
              ret, success = _checks(ret, success, response, name)
      else:
          response = _replication_request('details', host=host,
                                          core_name=core_name)
          ret, success = _checks(ret, success, response, core_name)
  
      return ret