/**
  * Gets the plugin configuration URL
  *
  * @since 1.6
  * @see SV_WC_Plugin::get_settings_url()()
  * @see SV_WC_Plugin::get_settings_link()
  * @param string $plugin_id optional plugin identifier.  Note that this can be a
  *        sub-identifier for plugins with multiple parallel settings pages
  *        (ie a gateway that supports both credit cards and echecks)
  * @return string plugin settings URL
  */
 public function get_settings_url($plugin_id = null)
 {
     return SV_WC_Plugin_Compatibility::get_general_configuration_url();
 }
 /**
  * Checks if a particular currency is required and not being used and adds a
  * dismissible admin notice if so.  Notice will not be rendered to the admin
  * user once dismissed unless on the plugin settings page, if any
  *
  * @since 2.0
  * @see SV_WC_Payment_Gateway_Plugin::render_admin_notices()
  */
 protected function render_currency_admin_notices()
 {
     // report any currency issues
     if ($this->get_accepted_currencies() && !in_array(get_woocommerce_currency(), $this->get_accepted_currencies())) {
         // we might have a currency issue, go through any gateways provided by this plugin and see which ones (or all) have any unmet currency requirements
         // (gateway classes will already be instantiated, so it's not like this is a huge deal)
         $gateways = array();
         foreach ($this->get_gateways() as $gateway) {
             if ($gateway->is_enabled() && !$gateway->currency_is_accepted()) {
                 $gateways[] = $gateway;
             }
         }
         if (count($gateways) == 0) {
             // no active gateways with unmet currency requirements
             return;
         } elseif (count($gateways) == 1 && count($this->get_gateways()) > 1) {
             // one gateway out of many has a currency issue
             $suffix = '-' . $gateway->get_id();
             $name = $gateway->get_method_title();
             $accepted_currencies = $gateway->get_accepted_currencies();
         } else {
             // multiple gateways have a currency issue
             $suffix = '';
             $name = $this->get_plugin_name();
             $accepted_currencies = $this->get_accepted_currencies();
         }
         if (!$this->is_message_dismissed('accepted-currency' . $suffix) || $this->is_plugin_settings()) {
             $message = sprintf(_n('%s accepts payment in %s only.  <a href="%s">Configure</a> WooCommerce to accept %s to enable this gateway for checkout.', '%s accepts payment in one of %s only.  <a href="%s">Configure</a> WooCommerce to accept one of %s to enable this gateway for checkout.', count($accepted_currencies), '(Plugin) accepts payments in (currency/currencies) only.', $this->text_domain), $name, '<strong>' . implode(', ', $accepted_currencies) . '</strong>', SV_WC_Plugin_Compatibility::get_general_configuration_url(), '<strong>' . implode(', ', $accepted_currencies) . '</strong>');
             $this->add_dismissible_notice($message, 'accepted-currency' . $suffix);
         }
     }
 }