| @@ 178-197 (lines=20) @@ | ||
| 175 | * @param array $package |
|
| 176 | * @return bool |
|
| 177 | */ |
|
| 178 | public function is_available( $package ) { |
|
| 179 | $is_available = "yes" === $this->enabled; |
|
| 180 | ||
| 181 | if ( $is_available && $this->get_valid_postcodes() ) { |
|
| 182 | $is_available = $this->is_valid_postcode( $package['destination']['postcode'], $package['destination']['country'] ); |
|
| 183 | } |
|
| 184 | ||
| 185 | if ( $is_available ) { |
|
| 186 | if ( $this->availability === 'specific' ) { |
|
| 187 | $ship_to_countries = $this->countries; |
|
| 188 | } else { |
|
| 189 | $ship_to_countries = array_keys( WC()->countries->get_shipping_countries() ); |
|
| 190 | } |
|
| 191 | if ( is_array( $ship_to_countries ) && ! in_array( $package['destination']['country'], $ship_to_countries ) ) { |
|
| 192 | $is_available = false; |
|
| 193 | } |
|
| 194 | } |
|
| 195 | ||
| 196 | return apply_filters( 'woocommerce_shipping_' . $this->id . '_is_available', $is_available, $package ); |
|
| 197 | } |
|
| 198 | ||
| 199 | /** |
|
| 200 | * clean function. |
|
| @@ 144-163 (lines=20) @@ | ||
| 141 | * @param array $package |
|
| 142 | * @return bool |
|
| 143 | */ |
|
| 144 | public function is_available( $package ) { |
|
| 145 | $is_available = "yes" === $this->enabled; |
|
| 146 | ||
| 147 | if ( $is_available && $this->get_valid_postcodes() ) { |
|
| 148 | $is_available = $this->is_valid_postcode( $package['destination']['postcode'], $package['destination']['country'] ); |
|
| 149 | } |
|
| 150 | ||
| 151 | if ( $is_available ) { |
|
| 152 | if ( $this->availability === 'specific' ) { |
|
| 153 | $ship_to_countries = $this->countries; |
|
| 154 | } else { |
|
| 155 | $ship_to_countries = array_keys( WC()->countries->get_shipping_countries() ); |
|
| 156 | } |
|
| 157 | if ( is_array( $ship_to_countries ) && ! in_array( $package['destination']['country'], $ship_to_countries ) ) { |
|
| 158 | $is_available = false; |
|
| 159 | } |
|
| 160 | } |
|
| 161 | ||
| 162 | return apply_filters( 'woocommerce_shipping_' . $this->id . '_is_available', $is_available, $package ); |
|
| 163 | } |
|
| 164 | ||
| 165 | /** |
|
| 166 | * Clean code string. |
|