public function get_city_links($shortcode)
 {
     $defaults = array('city_list' => 'combinedActiveMLS', 'mls' => '', 'use_columns' => 0, 'number_columns' => 4, 'styles' => 1);
     $approved_mls = \IDX\Widgets\Impress_City_Links_Widget::mls_options($defaults);
     $city_list_options = \IDX\Widgets\Impress_City_Links_Widget::city_list_options($defaults);
     $output = '';
     // MLS
     $output .= "<div class=\"idx-modal-shortcode-field\" data-shortcode=\"{$shortcode}\">";
     $output .= "<label for\"mls\">MLS to use for city links</label>";
     $output .= "<select id=\"mls\" data-short-name=\"mls\">";
     $output .= $approved_mls;
     $output .= "</select>";
     $output .= "</div>";
     // City List
     $output .= "<div class=\"idx-modal-shortcode-field\" data-shortcode=\"{$shortcode}\">";
     $output .= "<label for\"city-list\">Select a city list</label>";
     $output .= "<select id=\"city-list\" data-short-name=\"city_list\">";
     $output .= $city_list_options;
     $output .= "</select>";
     $output .= "</div>";
     // Use Columns
     $output .= "<div class=\"idx-modal-shortcode-field checkbox\" data-shortcode=\"{$shortcode}\">";
     $output .= "<input type=\"checkbox\" id=\"use-columns\" data-short-name=\"use_columns\">";
     $output .= "<label for\"use-columns\">Split links into columns?</label>";
     $output .= "</div>";
     // Number of Columns
     $output .= "<div class=\"idx-modal-shortcode-field\" data-shortcode=\"{$shortcode}\">";
     $output .= "<label for\"number-columns\">Number of columns</label>";
     $output .= "<select id=\"number-columns\" data-short-name=\"number_columns\">";
     $output .= "<option value=\"2\">2</option>";
     $output .= "<option value=\"3\">3</option>";
     $output .= "<option value=\"4\" selected=\"selected\">4</option>";
     $output .= "</select>";
     $output .= "</div>";
     // Default Styles
     $output .= "<div class=\"idx-modal-shortcode-field checkbox\" data-shortcode=\"{$shortcode}\">";
     $output .= "<input type=\"checkbox\" id=\"styles\" data-short-name=\"styles\" checked>";
     $output .= "<label for\"styles\">Default Styles?</label>";
     $output .= "</div>";
     $output .= "<p>Don't have any city lists? Go create some in your <a href=\"http://middleware.idxbroker.com/mgmt/citycountyziplists.php\" target=\"_blank\">IDX dashboard.</a></p>";
     // Styles and Scripts for Preview
     $output .= "<script>(function(){";
     //empty url array so styles can be disabled and enabled as expected
     $output .= "styleSheetUrls = [];";
     $output .= "addStyleSheet(\"" . plugins_url('../assets/css/widgets/impress-city-links.css', dirname(__FILE__)) . "\", \"#styles\");";
     $output .= "return previewTabButton.addEventListener('click', function(){refreshStyles('#styles')});";
     $output .= "})();</script>";
     return $output;
 }