public static function CustomTitlePresetsMainAction($action)
 {
     switch ($action) {
         case 'delete':
             if (isset($_GET['id'])) {
                 print "<div id=\"message\" class=\"updated\"><p><strong>";
                 GFontsDB::DeletePreset(intval($_GET['id']));
                 _e('Preset successfully deleted.', self::PLUGIN_SLUG);
                 print "</strong></p></div>";
             }
             if (isset($_GET['ids'])) {
                 foreach ($_GET['ids'] as $id) {
                     GFontsDB::DeletePreset(intval($id));
                 }
                 print "<div id=\"message\" class=\"updated\"><p><strong>";
                 printf(_n('%d preset deleted.', '%d presets deleted.', count($_GET['ids'])), count($_GET['ids']));
                 print "</strong></p></div>";
             }
             break;
         case 'edit':
             wp_enqueue_style('wp-color-picker');
             wp_enqueue_script('wp-color-picker');
             wp_register_script('gf-postedit-colorpicker', PLUGIN_URL . 'js/advedit.js');
             wp_enqueue_script('gf-postedit-colorpicker');
             if (isset($_GET['id'])) {
                 $presetId = intval($_GET['id']);
                 $preset = GFontsDB::GetPresetById($presetId);
             } else {
                 $preset = null;
             }
             print "<div style=\"border: 1px solid #dfdfdf; margin-bottom: 15px;\"><h3>";
             print "<strong>" . __("Preset name", self::PLUGIN_SLUG) . "</strong>&nbsp;";
             if ($preset != null) {
                 print "<input type=\"text\" name=\"gf_preset_title2\" id=\"gf_preset_title2\" value=\"" . $preset->name . "\" /><br/>";
             } else {
                 print "<input type=\"text\" name=\"gf_preset_title\" id=\"gf_preset_title\" value=\"\" /><br/>";
             }
             _e("Is default", self::PLUGIN_SLUG);
             print '&nbsp;&nbsp;<input type="checkbox" name="gf_is_default" id="gf_is_default"';
             if ($preset && $preset->is_default) {
                 print ' checked';
             }
             print '/><br/>';
             print "<strong>" . __("Choose custom title font", self::PLUGIN_SLUG) . "</strong>&nbsp;";
             print "<select name=\"gf_custom_title_font\" id=\"gf_custom_title_font\" style=\"width: 250px;\" class=\"gfadveditable\">";
             $fonts = GFontsDB::GetInstalledFonts();
             $ctf = $preset != null ? $preset->font : "";
             print "<option value=\"\">" . __("Default font", self::PLUGIN_SLUG) . "</option>";
             foreach ($fonts as $font) {
                 $selected = "";
                 if ($ctf == $font->name) {
                     $selected = " selected";
                 }
                 printf("<option value=\"%s\"%s>%s</option>", $font->name, $selected, $font->name);
             }
             $sFonts = self::StandardFonts();
             foreach ($sFonts as $font) {
                 $selected = "";
                 if ($ctf == $font) {
                     $selected = " selected";
                 }
                 printf("<option value=\"%s\"%s>%s</option>", $font, $selected, $font);
             }
             print "</select>";
             $ctfs = $preset != null ? $preset->title_size : "";
             $ctfb = $preset != null ? $preset->title_bold : 0;
             $ctfi = $preset != null ? $preset->title_italic : 0;
             $ctfc = $preset != null ? $preset->title_color : "";
             $ctfu = $preset != null ? $preset->title_underline : 0;
             $ctfsv = $preset != null ? $preset->title_shadow_vertical : 0;
             $ctfsh = $preset != null ? $preset->title_shadow_horizontal : 0;
             $ctfsb = $preset != null ? $preset->title_shadow_blur : 0;
             $ctfsc = $preset != null ? $preset->title_shadow_color : "";
             print "&nbsp;&nbsp;<strong>" . __("Choose custom title color", self::PLUGIN_SLUG) . "</strong>&nbsp;&nbsp;&nbsp;<span style=\"\"><input type=\"text\" name=\"gf_custom_title_font_color\" id=\"gf_custom_title_font_color\" value=\"" . $ctfc . "\" /></span>";
             print "&nbsp;&nbsp;<strong>Choose custom title font size</strong>&nbsp;";
             print "<select name=\"gf_custom_title_font_size\" id=\"gf_custom_title_font_size\" style=\"width: 150px;\" class=\"gfadveditable\">";
             print "<option value=\"\">" . __("Default font", self::PLUGIN_SLUG) . "</option>";
             self::BuildFontSizesAsOptions($ctfs);
             print "</select>";
             print "&nbsp;&nbsp;<input type=\"checkbox\" name=\"gf_custom_title_font_bold\" id=\"gf_custom_title_font_bold\"" . ($ctfb ? " checked" : "") . " class=\"gfadveditable\">&nbsp;<label for=\"gf_title_font_bold\"><strong>Bold</strong></label>";
             print "&nbsp;&nbsp;<input type=\"checkbox\" name=\"gf_custom_title_font_italic\" id=\"gf_custom_title_font_italic\"" . ($ctfi ? " checked" : "") . " class=\"gfadveditable\">&nbsp;<label for=\"gf_title_font_italic\"><em>Italic</em></label>";
             print "&nbsp;&nbsp;<input type=\"checkbox\" name=\"gf_custom_title_font_underline\" id=\"gf_custom_title_font_underline\"" . ($ctfu ? " checked" : "") . " class=\"gfadveditable\">&nbsp;<label for=\"gf_title_font_underline\"><u>Underline</u></label>";
             print "</h3>";
             print "<h3>";
             print "<strong>" . __("Vertical shadow", self::PLUGIN_SLUG) . "</strong>&nbsp;<button class=\"button button-primary\" id=\"gf_title_vshadow_left\" rel=\"gf_custom_title_font_shadow_vertical\">" . __("Left -", self::PLUGIN_SLUG) . "</button>&nbsp;<input type=\"text\" name=\"gf_custom_title_font_shadow_vertical\" id=\"gf_custom_title_font_shadow_vertical\" value=\"" . $ctfsv . "\" style=\"width: 40px;\" class=\"gfadveditable\">&nbsp;<button class=\"button button-primary\" id=\"gf_title_vshadow_right\" rel=\"gf_custom_title_font_shadow_vertical\">" . __("Right +", self::PLUGIN_SLUG) . "</button>";
             print "&nbsp;&nbsp;<strong>" . __("Horizontal shadow", self::PLUGIN_SLUG) . "</strong>&nbsp;<button class=\"button button-primary\" id=\"gf_title_hshadow_left\"  rel=\"gf_custom_title_font_shadow_horizontal\">" . __("Up -", self::PLUGIN_SLUG) . "</button>&nbsp;<input type=\"text\" name=\"gf_custom_title_font_shadow_horizontal\" id=\"gf_custom_title_font_shadow_horizontal\" value=\"" . $ctfsh . "\" style=\"width: 40px;\" class=\"gfadveditable\">&nbsp;<button class=\"button button-primary\" id=\"gf_title_hshadow_right\" rel=\"gf_custom_title_font_shadow_horizontal\">" . __("Down +", self::PLUGIN_SLUG) . "</button>";
             print "&nbsp;&nbsp;<strong>" . __("Blur shadow", self::PLUGIN_SLUG) . "</strong>&nbsp;<button class=\"button button-primary\" id=\"gf_title_bshadow_left\" rel=\"gf_custom_title_font_shadow_blur\" min=\"0\">" . __("Less -", self::PLUGIN_SLUG) . "</button>&nbsp;<input type=\"text\" name=\"gf_custom_title_font_shadow_blur\" id=\"gf_custom_title_font_shadow_blur\" value=\"" . $ctfsb . "\" style=\"width: 40px;\" class=\"gfadveditable\">&nbsp;<button class=\"button button-primary\" id=\"gf_title_bshadow_right\" rel=\"gf_custom_title_font_shadow_blur\">" . __("More +", self::PLUGIN_SLUG) . "</button>";
             print "&nbsp;&nbsp;<strong>" . __("Shadow color", self::PLUGIN_SLUG) . "</strong>&nbsp;&nbsp;&nbsp;<input type=\"text\" name=\"gf_custom_title_font_shadow_color\" id=\"gf_custom_title_font_shadow_color\" value=\"" . $ctfsc . "\" />";
             print "&nbsp;&nbsp;<button class=\"button button-primary\" id=\"gf_remove_post_title_styles\">" . __("Remove title styling", self::PLUGIN_SLUG) . "</button>";
             print "</h3><br/>";
             print "<center><span id=\"gf_title_livepreview\" style=\"" . self::BuildTitleStyles($ctf, $ctfs, $ctfc, $ctfb, $ctfi, $ctfu, $ctfsv, $ctfsh, $ctfsb, $ctfsc) . "\">Example Title</span></center><br/><br/>";
             print "<br/>";
             if ($preset != null) {
                 print "<button class=\"button button-primary\" id=\"gf_update_preset\" style=\"float: left;\">" . __("Save preset", self::PLUGIN_SLUG) . "</button>&nbsp;";
             } else {
                 print "<button class=\"button button-primary\" id=\"btnSavePreset\" style=\"float: left;\">" . __("Save preset", self::PLUGIN_SLUG) . "</button>&nbsp;&nbsp;<img id=\"gfsaver\" src=\"" . PLUGIN_URL . "assets/saver.gif\" style=\"display: none;\">";
             }
             print "<img id=\"gfupdater\" src=\"" . PLUGIN_URL . "assets/saver.gif\" style=\"display: none;\">";
             print "<a class=\"button\" href=\"?page=" . self::PLUGIN_CUSTOM_TITLE_PRESETS . "\" id=\"cancellink\">" . __("Cancel", self::PLUGIN_SLUG) . "</a><br/>";
             print "<br/><br/></div>";
             print "<input type=\"hidden\" name=\"gf_pv_preset\" id=\"gf_pv_preset\" value=\"0\">";
             $presetsAsJSON = array();
             if ($preset != null) {
                 print "<script>";
                 $presets = GFontsDB::LoadTitlePresets();
                 if (count($presets) > 0) {
                     $index = 0;
                     foreach ($presets as $presetObject) {
                         if ($preset->name == $presetObject->name) {
                             $presetsAsJSON[] = json_encode(array('id' => $presetObject->id, 'font' => $presetObject->font, 'title_color' => $presetObject->title_color, 'title_size' => $presetObject->title_size, 'title_bold' => $presetObject->title_bold, 'title_italic' => $presetObject->title_italic, 'title_underline' => $presetObject->title_underline, 'title_shadow_vertical' => $presetObject->title_shadow_vertical, 'title_shadow_horizontal' => $presetObject->title_shadow_horizontal, 'title_shadow_blur' => $presetObject->title_shadow_blur, 'title_shadow_color' => $presetObject->title_shadow_color));
                         }
                     }
                 }
                 print "var presetList = new Array();";
                 print "jQuery(document).ready(function() {";
                 foreach ($presetsAsJSON as $pr) {
                     print "presetList.push(new TPresetOption('" . $pr . "'));";
                 }
                 print "});";
                 print "jQuery('.wp-color-result').css('margin', '0px');";
                 print "</script>";
             }
             break;
         case 'massunstyled':
             print "<div id=\"message\" class=\"updated\"><p><strong>";
             if (isset($_GET['id'])) {
                 $c = GFontsDB::SetTitlePresetForPosts(intval($_GET['id']));
                 printf(_n("%d title changed.", "%d titles changed.", $c), $c);
             } else {
                 _e("Wrong parameters.", self::PLUGIN_SLUG);
             }
             print "</strong></p></div>";
             break;
         case 'mass':
             print "<div id=\"message\" class=\"updated\"><p><strong>";
             if (isset($_GET['id'])) {
                 $c = GFontsDB::SetTitlePresetForPosts(intval($_GET['id']), false);
                 printf(_n("%d title changed.", "%d titles changed.", $c), $c);
             } else {
                 _e("Wrong parameters.", self::PLUGIN_SLUG);
             }
             print "</strong></p></div>";
             break;
         case 'removeall':
             print "<div id=\"message\" class=\"updated\"><p><strong>";
             $c = GFontsDB::RemoveTitlePresetFromPosts();
             printf(_n("%d title changed.", "%d titles changed.", $c), $c);
             print "</strong></p></div>";
             break;
         case 'default':
             print "<div id=\"message\" class=\"updated\"><p><strong>";
             if (isset($_GET['id'])) {
                 $c = GFontsDB::SetTitlePresetDefault(intval($_GET['id']));
                 _e("Preset set as default", self::PLUGIN_SLUG);
             } else {
                 _e("Wrong parameters.", self::PLUGIN_SLUG);
             }
             print "</strong></p></div>";
             break;
     }
 }