public function country_dropdown_options($selected_country = '', $selected_state = '', $escape = false)
{
if ($this->countries) {
foreach ($this->countries as $key => $value) {
if ($states = $this->get_states($key)) {
echo '<optgroup label="' . esc_attr($value) . '">';
foreach ($states as $state_key => $state_value) {
echo '<option value="' . esc_attr($key) . ':' . $state_key . '"';
if ($selected_country == $key && $selected_state == $state_key) {
echo ' selected="selected"';
}
echo '>' . $value . ' — ' . ($escape ? esc_js($state_value) : $state_value) . '</option>';
}
echo '</optgroup>';
} else {
echo '<option';
if ($selected_country == $key && '*' == $selected_state) {
echo ' selected="selected"';
}
echo ' value="' . esc_attr($key) . '">' . ($escape ? esc_js($value) : $value) . '</option>';
}
}
}
}